From 7b62556227e51995f999ecd40be495029b101e1b Mon Sep 17 00:00:00 2001 From: Javier Casares Date: Tue, 2 Jun 2026 13:41:43 +0000 Subject: [PATCH] v5.0.0 --- LICENSE | 674 ++++ Screenshot_495.png | Bin 0 -> 212552 bytes Screenshot_496.png | Bin 0 -> 227167 bytes assets/admin.css | 1346 +++++++ assets/admin.js | 93 + assets/banner-1544x500.png | Bin 0 -> 53058 bytes assets/banner-772x250.png | Bin 0 -> 21452 bytes assets/icon-128x128.png | Bin 0 -> 8888 bytes assets/icon-256x256.png | Bin 0 -> 20330 bytes assets/icon-apache.svg | 3 + assets/icon-curl.svg | 2 + assets/icon-imagemagick.svg | 1286 +++++++ assets/icon-mariadb.svg | 2 + assets/icon-memcached.svg | 46 + assets/icon-mysql.svg | 2 + assets/icon-nginx.svg | 3 + assets/icon-php.svg | 3 + assets/icon-plugin.svg | 16 + assets/icon-redis.svg | 2 + assets/icon-sqlite.svg | 2 + assets/icon-theme.svg | 11 + assets/icon-wordpress.svg | 9 + assets/icon.svg | 57 + assets/logobug-128.png | Bin 0 -> 8888 bytes assets/logobug-16.png | Bin 0 -> 780 bytes assets/logobug-256.png | Bin 0 -> 20330 bytes assets/logobug-32.png | Bin 0 -> 1684 bytes assets/logobug-512.png | Bin 0 -> 47839 bytes assets/logobug.png | Bin 0 -> 66003 bytes assets/logobug.svg | 57 + assets/screenshot-1.png | Bin 0 -> 26269 bytes assets/screenshot-2.png | Bin 0 -> 70086 bytes assets/screenshot-3.png | Bin 0 -> 41222 bytes changelog.txt | 1038 +++++ class-wpvulnerability-cli.php | 744 ++++ class-wpvulnerability-config-cli.php | 284 ++ languages/messages.mo | Bin 0 -> 49120 bytes languages/wpvulnerability-an.l10n.php | 2 + languages/wpvulnerability-an.mo | Bin 0 -> 40732 bytes languages/wpvulnerability-an.po | 2473 ++++++++++++ languages/wpvulnerability-ar.l10n.php | 2 + languages/wpvulnerability-ar.mo | Bin 0 -> 47186 bytes languages/wpvulnerability-ar.po | 1485 ++++++++ languages/wpvulnerability-ast.l10n.php | 2 + languages/wpvulnerability-ast.mo | Bin 0 -> 40800 bytes languages/wpvulnerability-ast.po | 2196 +++++++++++ languages/wpvulnerability-bn.l10n.php | 2 + languages/wpvulnerability-bn.mo | Bin 0 -> 56456 bytes languages/wpvulnerability-bn.po | 1437 +++++++ languages/wpvulnerability-ca-val.l10n.php | 2 + languages/wpvulnerability-ca-val.mo | Bin 0 -> 41011 bytes languages/wpvulnerability-ca-val.po | 2111 +++++++++++ languages/wpvulnerability-ca.l10n.php | 2 + languages/wpvulnerability-ca.mo | Bin 0 -> 41182 bytes languages/wpvulnerability-ca.po | 2147 +++++++++++ languages/wpvulnerability-de.l10n.php | 2 + languages/wpvulnerability-de.mo | Bin 0 -> 40798 bytes languages/wpvulnerability-de.po | 2193 +++++++++++ languages/wpvulnerability-el.l10n.php | 2 + languages/wpvulnerability-el.mo | Bin 0 -> 51807 bytes languages/wpvulnerability-el.po | 1437 +++++++ languages/wpvulnerability-es-cl.l10n.php | 2 + languages/wpvulnerability-es-cl.mo | Bin 0 -> 41120 bytes languages/wpvulnerability-es-cl.po | 2206 +++++++++++ languages/wpvulnerability-es.l10n.php | 2 + languages/wpvulnerability-es.mo | Bin 0 -> 41117 bytes languages/wpvulnerability-es.po | 2224 +++++++++++ languages/wpvulnerability-eu.l10n.php | 2 + languages/wpvulnerability-eu.mo | Bin 0 -> 39479 bytes languages/wpvulnerability-eu.po | 2198 +++++++++++ languages/wpvulnerability-fr.l10n.php | 2 + languages/wpvulnerability-fr.mo | Bin 0 -> 41670 bytes languages/wpvulnerability-fr.po | 2208 +++++++++++ languages/wpvulnerability-gl.l10n.php | 2 + languages/wpvulnerability-gl.mo | Bin 0 -> 40849 bytes languages/wpvulnerability-gl.po | 2212 +++++++++++ languages/wpvulnerability-hi.l10n.php | 2 + languages/wpvulnerability-hi.mo | Bin 0 -> 56232 bytes languages/wpvulnerability-hi.po | 1437 +++++++ languages/wpvulnerability-id.l10n.php | 2 + languages/wpvulnerability-id.mo | Bin 0 -> 39004 bytes languages/wpvulnerability-id.po | 2184 +++++++++++ languages/wpvulnerability-it.l10n.php | 2 + languages/wpvulnerability-it.mo | Bin 0 -> 39653 bytes languages/wpvulnerability-it.po | 2192 +++++++++++ languages/wpvulnerability-ja.l10n.php | 2 + languages/wpvulnerability-ja.mo | Bin 0 -> 42755 bytes languages/wpvulnerability-ja.po | 2194 +++++++++++ languages/wpvulnerability-nl-be.l10n.php | 2 + languages/wpvulnerability-nl-be.mo | Bin 0 -> 39482 bytes languages/wpvulnerability-nl-be.po | 2213 +++++++++++ languages/wpvulnerability-nl.l10n.php | 2 + languages/wpvulnerability-nl.mo | Bin 0 -> 39427 bytes languages/wpvulnerability-nl.po | 2205 +++++++++++ languages/wpvulnerability-pl.l10n.php | 2 + languages/wpvulnerability-pl.mo | Bin 0 -> 40743 bytes languages/wpvulnerability-pl.po | 2054 ++++++++++ languages/wpvulnerability-pt.l10n.php | 2 + languages/wpvulnerability-pt.mo | Bin 0 -> 40303 bytes languages/wpvulnerability-pt.po | 2474 ++++++++++++ languages/wpvulnerability-ro.l10n.php | 2 + languages/wpvulnerability-ro.mo | Bin 0 -> 40486 bytes languages/wpvulnerability-ro.po | 2486 ++++++++++++ languages/wpvulnerability-ru.l10n.php | 2 + languages/wpvulnerability-ru.mo | Bin 0 -> 49975 bytes languages/wpvulnerability-ru.po | 2226 +++++++++++ languages/wpvulnerability-sw.l10n.php | 2 + languages/wpvulnerability-sw.mo | Bin 0 -> 39502 bytes languages/wpvulnerability-sw.po | 1437 +++++++ languages/wpvulnerability-uk.l10n.php | 2 + languages/wpvulnerability-uk.mo | Bin 0 -> 49120 bytes languages/wpvulnerability-uk.po | 2486 ++++++++++++ languages/wpvulnerability-ur.l10n.php | 2 + languages/wpvulnerability-ur.mo | Bin 0 -> 45473 bytes languages/wpvulnerability-ur.po | 1437 +++++++ languages/wpvulnerability-zh-tw.l10n.php | 2 + languages/wpvulnerability-zh-tw.mo | Bin 0 -> 37442 bytes languages/wpvulnerability-zh-tw.po | 2164 +++++++++++ languages/wpvulnerability.pot | 2473 ++++++++++++ readme.txt | 497 +++ security.txt | 3 + uninstall.php | 39 + wpvulnerability-admin.php | 4024 ++++++++++++++++++++ wpvulnerability-adminms.php | 4221 +++++++++++++++++++++ wpvulnerability-api.php | 644 ++++ wpvulnerability-core.php | 286 ++ wpvulnerability-debug.php | 661 ++++ wpvulnerability-general.php | 2887 ++++++++++++++ wpvulnerability-notifications.php | 973 +++++ wpvulnerability-plugins.php | 791 ++++ wpvulnerability-process.php | 822 ++++ wpvulnerability-run.php | 859 +++++ wpvulnerability-schedule.php | 544 +++ wpvulnerability-sitehealth.php | 491 +++ wpvulnerability-software.php | 269 ++ wpvulnerability-themes.php | 727 ++++ wpvulnerability.php | 138 + 137 files changed, 82799 insertions(+) create mode 100644 LICENSE create mode 100644 Screenshot_495.png create mode 100644 Screenshot_496.png create mode 100644 assets/admin.css create mode 100644 assets/admin.js create mode 100644 assets/banner-1544x500.png create mode 100644 assets/banner-772x250.png create mode 100644 assets/icon-128x128.png create mode 100644 assets/icon-256x256.png create mode 100644 assets/icon-apache.svg create mode 100644 assets/icon-curl.svg create mode 100644 assets/icon-imagemagick.svg create mode 100644 assets/icon-mariadb.svg create mode 100644 assets/icon-memcached.svg create mode 100644 assets/icon-mysql.svg create mode 100644 assets/icon-nginx.svg create mode 100644 assets/icon-php.svg create mode 100644 assets/icon-plugin.svg create mode 100644 assets/icon-redis.svg create mode 100644 assets/icon-sqlite.svg create mode 100644 assets/icon-theme.svg create mode 100644 assets/icon-wordpress.svg create mode 100644 assets/icon.svg create mode 100644 assets/logobug-128.png create mode 100644 assets/logobug-16.png create mode 100644 assets/logobug-256.png create mode 100644 assets/logobug-32.png create mode 100644 assets/logobug-512.png create mode 100644 assets/logobug.png create mode 100644 assets/logobug.svg create mode 100644 assets/screenshot-1.png create mode 100644 assets/screenshot-2.png create mode 100644 assets/screenshot-3.png create mode 100644 changelog.txt create mode 100644 class-wpvulnerability-cli.php create mode 100644 class-wpvulnerability-config-cli.php create mode 100644 languages/messages.mo create mode 100644 languages/wpvulnerability-an.l10n.php create mode 100644 languages/wpvulnerability-an.mo create mode 100644 languages/wpvulnerability-an.po create mode 100644 languages/wpvulnerability-ar.l10n.php create mode 100644 languages/wpvulnerability-ar.mo create mode 100644 languages/wpvulnerability-ar.po create mode 100644 languages/wpvulnerability-ast.l10n.php create mode 100644 languages/wpvulnerability-ast.mo create mode 100644 languages/wpvulnerability-ast.po create mode 100644 languages/wpvulnerability-bn.l10n.php create mode 100644 languages/wpvulnerability-bn.mo create mode 100644 languages/wpvulnerability-bn.po create mode 100644 languages/wpvulnerability-ca-val.l10n.php create mode 100644 languages/wpvulnerability-ca-val.mo create mode 100644 languages/wpvulnerability-ca-val.po create mode 100644 languages/wpvulnerability-ca.l10n.php create mode 100644 languages/wpvulnerability-ca.mo create mode 100644 languages/wpvulnerability-ca.po create mode 100644 languages/wpvulnerability-de.l10n.php create mode 100644 languages/wpvulnerability-de.mo create mode 100644 languages/wpvulnerability-de.po create mode 100644 languages/wpvulnerability-el.l10n.php create mode 100644 languages/wpvulnerability-el.mo create mode 100644 languages/wpvulnerability-el.po create mode 100644 languages/wpvulnerability-es-cl.l10n.php create mode 100644 languages/wpvulnerability-es-cl.mo create mode 100644 languages/wpvulnerability-es-cl.po create mode 100644 languages/wpvulnerability-es.l10n.php create mode 100644 languages/wpvulnerability-es.mo create mode 100644 languages/wpvulnerability-es.po create mode 100644 languages/wpvulnerability-eu.l10n.php create mode 100644 languages/wpvulnerability-eu.mo create mode 100644 languages/wpvulnerability-eu.po create mode 100644 languages/wpvulnerability-fr.l10n.php create mode 100644 languages/wpvulnerability-fr.mo create mode 100644 languages/wpvulnerability-fr.po create mode 100644 languages/wpvulnerability-gl.l10n.php create mode 100644 languages/wpvulnerability-gl.mo create mode 100644 languages/wpvulnerability-gl.po create mode 100644 languages/wpvulnerability-hi.l10n.php create mode 100644 languages/wpvulnerability-hi.mo create mode 100644 languages/wpvulnerability-hi.po create mode 100644 languages/wpvulnerability-id.l10n.php create mode 100644 languages/wpvulnerability-id.mo create mode 100644 languages/wpvulnerability-id.po create mode 100644 languages/wpvulnerability-it.l10n.php create mode 100644 languages/wpvulnerability-it.mo create mode 100644 languages/wpvulnerability-it.po create mode 100644 languages/wpvulnerability-ja.l10n.php create mode 100644 languages/wpvulnerability-ja.mo create mode 100644 languages/wpvulnerability-ja.po create mode 100644 languages/wpvulnerability-nl-be.l10n.php create mode 100644 languages/wpvulnerability-nl-be.mo create mode 100644 languages/wpvulnerability-nl-be.po create mode 100644 languages/wpvulnerability-nl.l10n.php create mode 100644 languages/wpvulnerability-nl.mo create mode 100644 languages/wpvulnerability-nl.po create mode 100644 languages/wpvulnerability-pl.l10n.php create mode 100644 languages/wpvulnerability-pl.mo create mode 100644 languages/wpvulnerability-pl.po create mode 100644 languages/wpvulnerability-pt.l10n.php create mode 100644 languages/wpvulnerability-pt.mo create mode 100644 languages/wpvulnerability-pt.po create mode 100644 languages/wpvulnerability-ro.l10n.php create mode 100644 languages/wpvulnerability-ro.mo create mode 100644 languages/wpvulnerability-ro.po create mode 100644 languages/wpvulnerability-ru.l10n.php create mode 100644 languages/wpvulnerability-ru.mo create mode 100644 languages/wpvulnerability-ru.po create mode 100644 languages/wpvulnerability-sw.l10n.php create mode 100644 languages/wpvulnerability-sw.mo create mode 100644 languages/wpvulnerability-sw.po create mode 100644 languages/wpvulnerability-uk.l10n.php create mode 100644 languages/wpvulnerability-uk.mo create mode 100644 languages/wpvulnerability-uk.po create mode 100644 languages/wpvulnerability-ur.l10n.php create mode 100644 languages/wpvulnerability-ur.mo create mode 100644 languages/wpvulnerability-ur.po create mode 100644 languages/wpvulnerability-zh-tw.l10n.php create mode 100644 languages/wpvulnerability-zh-tw.mo create mode 100644 languages/wpvulnerability-zh-tw.po create mode 100644 languages/wpvulnerability.pot create mode 100644 readme.txt create mode 100644 security.txt create mode 100644 uninstall.php create mode 100644 wpvulnerability-admin.php create mode 100644 wpvulnerability-adminms.php create mode 100644 wpvulnerability-api.php create mode 100644 wpvulnerability-core.php create mode 100644 wpvulnerability-debug.php create mode 100644 wpvulnerability-general.php create mode 100644 wpvulnerability-notifications.php create mode 100644 wpvulnerability-plugins.php create mode 100644 wpvulnerability-process.php create mode 100644 wpvulnerability-run.php create mode 100644 wpvulnerability-schedule.php create mode 100644 wpvulnerability-sitehealth.php create mode 100644 wpvulnerability-software.php create mode 100644 wpvulnerability-themes.php create mode 100644 wpvulnerability.php diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..f288702 --- /dev/null +++ b/LICENSE @@ -0,0 +1,674 @@ + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 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 General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is 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. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +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. + + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + 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 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. Use with the GNU Affero General Public License. + + 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 Affero 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 special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU 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 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 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 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 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 General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + + Copyright (C) + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, your program's commands +might be different; for a GUI interface, you would use an "about box". + + 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 GPL, see +. + + The GNU General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications with +the library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. But first, please read +. diff --git a/Screenshot_495.png b/Screenshot_495.png new file mode 100644 index 0000000000000000000000000000000000000000..346683a919931f495701701fd04828d6c9fb00fc GIT binary patch literal 212552 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 _muLt`r8>)DI8GZj*Fi*vCnEOZ4 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 literal 0 HcmV?d00001 diff --git a/Screenshot_496.png b/Screenshot_496.png new file mode 100644 index 0000000000000000000000000000000000000000..43add5a6c5a716f3d5b177e2ce095519e4ce5760 GIT binary patch literal 227167 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 $*FkXc8ohF%v=C@#G>gL3 zOtQAhtqnkVLw1xgo%dv-qeZ*NE^8nZ|03QnK zTZ4Y$-5w4M)FGKQ)BNqB@{aok^}rB&J}EOarD2uXmpl3lUQ`ivbulvb@^ZH=c@eASH zPt&QK<0H}1#S6<^i$q)JPrB?^TeBe%GDDf`GEeoBcgZ_F6c{ zdYfi6?IHGn@7D2;g2?`FoD=`m$Z>o=0++uOUGx?m!tIxrMz2my1D_=lynOT2r4&~XVtdo^EX z_E`32t?_a_OyP*vr$$IU201rsqdI+3HK6&9NiWBf>GJLZf{HkB8l>v%N#jQWgN#Cl zkdc`R6AKxab4Po4b<#hWrpIkF-H3NN$J4X%GOkSLTkH6b%u`?{3TWY!kaT+mr$f;~ z?$sW0MWqc6PdMB~I~BCVz|s!y7GK2*)#On_v2T(RH$@x&I-pM5l!tLOSY{JwuH##T ziWUXh@<9je1uO(A`?)F@%%MHdsygd91@?Z-LsCuCMw9#OMb#GOZ&F`ZIF|9mo8K8O z3E0fxFb{)lpBGxhj`>9@VJdDl+nV-1iHwM`R!k*3WLu+avZK=Pn{#KMpz=zJF2Im}ykF2pRd2}wjmYXP9m<{Yj10m|;I#C;- zeq*iXg9EBtsjb%0anua%z7|R&x-xt@wtmAt3&KJ?FJ(xui9&6E$#q(l)|m=mb9|yu zt&>1pHHL}rP~KkI1&v6(yr9vT^x$FVgZYEuScCf~`Jf+d( zsWyU^!;8eR$#!%JyQFg-O7caWA5TFBDtFD&%Mz>d$r0C8*JH&=u|WGH!GyyO*GSXU zjVGi1bdX=8sj~~E1Q5Jf+bx5LJLGuZ%^Y&_{;(Xqi`r`ZDP?*vJH_;d+XVFKykkAz z6FT~vy(NC4FJ6a*cF00v^Or}Us;jx+({WB3in$1~>NX0oQTO;0G={jQpnfgZunujR zpFWoPl-5lkd|IG&0oo?eyu5;L0W34`k&$&^&Y7Mux6TWEFJ($!T4^VDwFG}eRGFkQ z9_grSayGH+AX)Gj^}unoF7XYq1vI83M6&c@O{2Q10t*QbISuHlY&@&Onyz4%D{S#h z?a?3sGqHVq=-at%bGol6TJlYFkbCy));XmdqDD>Q@aOJVwh}GzvU3`cUlB;bZtuVSixWh2`SOt z2x0^6*6^6eM|~7S$&gj1O2%ZoLUkG->+UsE z0EbeOX%>)=O_q$ae@Y^8nl~{1Uiya*`R8Wo1JH*HPUq1bM@Mbis##9MP-ql6pYD~4 zd#Vv5wg$R5z4e&^ocAp?fE$|#(@5?O)x3ytNT$?;(W!s9oE1P~-z|8@Cr8TxQj}r9 zQ5SvH4bc!3gk}yHr*B|G9rWSEDWJW!;_|=v!gGM%B9}Y=jTejp!b`tLL=H82&^-1C zAqRn{kH?zp z?fqnfW6B&5mOck(`rQHj{X%zuo-RN_>l>gSC}FL8ekm2qL_Z&CNEiwQfyn!9`#3Uo z@XAuEQuB1Fv^ixcp{DaBl-ynU?MK)C8Nj&!pksjlqY7XbntD12iKgKFa-d)3CE>w2 zJ13@jZ%_$Lk65v_-TyOXQwM{&E=j2z`rxj799@}vi|F8V>b4qrU*sWxMYJF>YYJE*c2?C8y57z2Ww$TBw*?+k3e}rH_ z4@Q($H`t0&�^A7o!3EJkUNnZdNb`20GrPeDGX94!tOIeT1F>%ylt3P;yIP9#Wd#x3g1*Z(OBH%FUV{(ttUCP;YU z#=noke+qB>F*g6-J{rii#@g5>exN@q%Y^?fOdnx|n@t9> zKt^rDdiR1jIAloMEU%F}ME?6^S%jK+WYgFz5-HcJWdF&NvpV#n-x_T#dPGF_0aPWJ zX0x-6t_)n4`BVt>7n=%3Vc=b?_dlk6v+~Q;eE2Eh_swhL*F3n;|LluXz6HAw_60_^JFn5@G2Y_RpvwG?`1%2q>v zt93Kr^JtDoy?+TE+bq5BBj~pcAjr3)2Zf zx>42J_CSam$wWrINXCC<=u1Yu!1w5EoTcoy{Ulg19l5ol?ahc1_4Z zv4~~ng3#MjN36EBuI9<51}kAtx8Bthdu9@!?}S%BU`Z}XcW$LkUGFbi_T`tG6aR+# zovV4*XDHxnW}rQ)=%JP{o&W1Y%Gr}()A+Z4Lut7!3sJWHB9sD#-Nl5N&7o*({I3L@ zHWdGV_-5AkS8_Ifi_g}$L|M=b(UMSd@pmg*cYvne-K_J)zCyZF>-kv!orevdJ$*?is{gHu6|# z$4$R?5NpH@YwQ3*S@yp_(C`aF>*$7^$2d3kPs`bemcPRSg_e$(`==VFu@@~hupL^bWyx02vylXu_KK^B~vUBZgpZhGwah&Is#sT9m z4kX6hEw7ijh_jYF(&S%`Ma~bSeEA~|cbCL=urW|Wp((9mhbnZM+<38YVZN*yO75?= zVCo@|mV8+wmC^0Jt!#kzq!tJF;||x&_V0$(O9I4#+~(OqB+8fUlluPg%;YoOMQ-P( z?V&x>-L3cKdb4bV*{x=I_j4OK3y{=lp5aBt6QIWi_~VS!*C+4ej5cU!;eqvxjEn&_e;R}vLF z2ZNE;K=B49!A{S%lI3tO&xs1fU?${mKxo}8K z0crjMUd_?E(q=?>FQWSLPb^FbZw7g~j}fW&}ak{J}WKhnpv_WQqPp#lWs zVbBqtw~UPfY(!M7Avc(ve87=@3=~6f*!T%6$sd6$=r`Evxj9^pT6F9Ro?g1k_b`a1raw5^;$xa8ti2*Od5glh@6m~C-aK3k( zxC4)QK&E56jA&A*T;>40y1eF=d_>XjX01a-;A1*XTkx$RE4(WW1e_ zDV4}~A;d+HO!=I5qLG|3yYoa&uq-&yq6o!Z%o*(ep|@KLt%~_?*BrF|FG~W46#SRF zGQynx;iJk9*8r9LaNmG1R&oBj`Egz9;TJv(tZ$wA_?*|$2h8C@5FWVTbzPMeg)#eC z;+9UE6OyC8ClL&PbstpJ-ti!K9>d3Ka<z^ zrQB?49AP6FypIdVTzX417)LlPGg$ULdM4xlwJk%8Wc-NY+qMAd;0GP3yRwl2I2B?FOMI$r?i0tLYu2C}SGeJQ3tV65y=Z@blfd zR4bLy^b_WZQm$@I*DI7fbmBR4wcOLd%bI`RK?Q6&&1_p1;rLgG|M!Nu)uUEk>T+u4 zgfh&huKFHR)mRJNH~D*K%`@J11f`>)g1*uS+~d}2o&NWqcW9!At*z^S0E&CqC1!kz z8jnqDPX6#>9Z4ok_XzmZDYuyW2uVU1sT&uF-s`3s<<9ecZywzCr%%{Tdq4135EmNI z=5@~aKf4u|Ghv^9ft;M8b2;U<3ES+vtH;rPg{hyQ%#pLwr)HiPXJb(bo;oXc-HMgr z5)YOwV*EXY7oVIz3%QPB`rnWDrj5%vq_z=vghByinJ6$|yViJPWqAZlCzw*3=h} zxbmflQd{@BD1&29+@XnfG#^0(7OjmxO)7|6qM59je{D~zAYl*Aqqk&NwTJKHXM?<~ z#=}U`jB+BlIcqbU+H*h_bb2LPLlHq7yqd17<<`ALw1o4s7CGB>-}jl5o_n^49I(p{ z9(X$b>%`Xfsrm84GmF86Y_EbTsCS%<8!D7FNR9g0Pht7iMe;Z=U+#HP5D76*b<1MR z&zicAXE?$nbtaS-D#@x?OQpY%f0u2AG?61I}c{J_k7l~ZO8g4(TUnCLcgx~t(?1P>!S0E%)6V^5D|mkji8nC z4CC?}6RpQ6`R2S6l4f>mFd`H``&Q2rNihmolHyD@+ZtOe{tVSw9Q804rL_;f$qNwQ zu#WQZjhl58!&vh#!aq>L9Y186hK{GrRdt58zUKQ#JjV;a+5Dd!@~3C4bNOmGt#exoP}Hgh0`MQgsP$Lx9+Gc=cdlHWc@6+!m^bP zT2*_}mHR>GJW}0@wnF&tutCo6mt3m4AQP94#1OzbCM7?q+iOpXu=X%|6KL<{{r?FvkOmrM%?Zfk6f{O%Cl}2tIc7qawTbQbM^V*uV zou{?TJBQlgWrbufU8m7&-mXS6qE(y>8qv9W@jTDxgQw!v?MsU&HjFLk!5`g6)q4Ay z3<>Z+dZXXz;xil5fnEVlQG&y4O9hc6lf@*gpKmDyRQB@Av(x*&k}Gj3X7_v!`;6DM ze4rOoS=g6XyA-DtZ)*Kj&-_mu2?37C`SR{rTzHX#?*XbH_2G#%Pj9bgyJ#s*AGEo0 zTqk;J)a}aIpEkx_3bvaF*-N&w-;n8>m)h{I!E_GO5I0YpTyCx!;G`Ob(s@;u`jOZC z<-p9$Fw!AJSPPTb>TH9wu~(RXBVkr1Lz#L1iP)InAyxM)Yze0uGyl>yn z#RGLF;XLa`f2lai7bLSxJ)v#U9rV3jDX6Eu=x zmsZ}idJ?J<64iB!*%gT(F&4$%LX%vdhOSbfIW2uDLTRq8iAkzVSB}~qUd~{m(SH;b z#fUhMzvT4PU1KUVa>GC|_-MTL;n6J(ipw3B|5=(C{mn09N5X_N9~^P`(aoSnAJDD-s+3yZkXT3fx-{G}CG=;vRbqLK7ckD* zAaBS#E|OGa7R@+!A>o#EZt0h`weRtYzSIK#<=FHnGDQk)>91(k#fIC|Z2QD>k4y53!(~yx+hnz-uFt3p zFXj)hbU+jb`Q;hRDjtCH`}asgr+fsS;pzR`UweDs<+)F66}AA2Jj$|jEQ*RTyumG< z4(KE4PNl8-?WceE3^c$h9I8q@K5ZZ0bwW3KinTK7hU#8=x0CbFaR()p*;OYt+Ycb! zF#T&IInn~fp;E}+0}+dt-67{uq1B4bK0;FrLm{Z&NIFA!g${9AoUuAnoVbB|Cu*Ro z&4lL^16?}mTmL1rb(@=DI|>0~7IRWZPQ#^&OAQYFZ0wi8Ys`65TMh*T^V&;gr8|8r z_C+Az{kTX6bdEzqqe>U##I~{Wb%amx(Dpt7+TW9IJ!kbA$T&tH5uRM48rN*S)t^?a zlb|xYY&ZIRo%1}M&gfjg&;KOp1l3Pt>o`~&Oq;I9!CQ~$4sJwnAyG8AlKhc9sQY}; z`mo5?Tn|>XZ+P4bam%ESHEDgHI3ew=wpND5;JU0Pu6)Zl8q&p$O5Jy=5qsQ3&ucp( z0#w}li_Q(0iEy8FsV?HMxohrF8X43KHByDO{RS*$PQrpIbE{($k53<**(Gy^e#w@mHk* z*Won{J-1lD>?ZH4Q$1|=TJJTNwi!(|_q{)r&evGhbN;Vut3a{n-Xh~hy+*oSbfE~= zFBGK28vlM1YekFcKBTh{J4h0w_(Dr0g}eV%kI{5h58@TOyZVZ~}m^ z(C>Aj<-KsrP`KNbVGF!6^t{yG{rI=Ux&GBInqBI4+Nzv@akKKX&Xs!P%EJ50H5}~# ze5~i__rQ?H<+rK)X!+#^MH0pE8`vH>%*AvvzuI{0; zKd$htY09hbA9-s1;&$7aGl5Uk)@-H6HN{NLTtuyW{cMBvrNTg;;ng-1E~kb|s1D>< z#q_nIN)J6=r8Ss(7JMxoGOnwX-TCpQ3$Q?hajFfo8uL`M&|@8hh#RPVkxenNn|LYM zGS)q%irqQfa7s?{v&qCGHvWBK+ND#wGuc~t)}if8Eu#u$Xodao=tzH+4UaxOXxInYh^+d zfck*sO|O24Lw32=2j6)T=9ov=6TGUJCnEbpaxCJZ6_qvCjiErJR1}3;JbZ3|tN1F8 zIUEbxURtRytpoGkP{wyI}yhbuokpFs4wyNwIE=JUo6eprzMkQpzeTxsvd<{$6kzpL4Q;12(joc$*X zm);EigZIB5P52Km>u-hYf1uBsc-N+X3<^pEcib z&ixMG@$kQ`2)>1)s@XU#Dy*4@ZS8SwzWeG+48e8avF3#1@^48NIqgLznu69 zf7)uo

!-bf`r5?PQx}H{-s0wZGj5K^5xuc0mBqe^;ViJ9Q;e=J8v&<%Spj3EWWT zxw)S&Vgl24v5XuM-@d-AOZ^|^&MH-?!l4&3Sk>A7?#Bl%$yD84CX@y3hXHBVpIB}F z^gnK)`)ECi`0;Wg@yt74^eaxl(LSO0%Cip{-@&}DnEw)D3?GzXrZFMeZnvbDCri1e zRq*3oeMR~yA7J0(3_Ps#`%8>5rX{#1Mju*mp@iSeC2RpLgbrmth9H;~B!j4P$k(GY z+Oyu}qx6@k8qAHDh6_S7{j#0X$`PZ*Y^`kJ&Y^+#B6at=HhJQe;G*~~lV|LL^3U}{ z*TGvPOe@di<|8nf{hzxLp!R190yt?pw``6ba7>NI)3HV`h#Q~L@9Tf&ZllGtSgFR_ zaF{TsYJ6V;=+$>80JmrYYya8>9Qm{2uzrT&iVrGHfH)QG6&tc8zw3Pc^e1MhTy|MT zUKN&uQmhpQEDoMQ_1fdFP7%vy6Hei2(mqp~w2VPhexe-|5Z5@F<^AXQCr8cih>Tr8 z6TLPefba69l4DJCnU{D1k7CD;FIJ<6Q}NH^z*&6{#zk2^qAzuNz?3b zcalr~@1lMOc<3y{pO;)q2Y{K|9@EM`F7@D%gg+UP;Xg5l54@#hyvHT0$A(Yxc{L|7 zRPs9NRsT))NNT%jf94RoR$8SC;-P_zl@h|h>jhp)E!j6aj2LCaobT+GEZ$Wzyt(7P##ePVt?O|HuHz-@-` z^$rF7a$N<}ms}J$6x#zD(7e=T^+~6M<7oHJX9YE=W#5^wSLN?Pkgc-ng$F^K zfGcZx5r*=4>dB8n6b)NKV-n)v?~W%#SX#o z2YYx|thhigP!{cFd&-vbWg zeZzGieg0-vm%{%MSngZV%$=8}_%+H2-P6C{`R?4Wy!*~1{Vn(!jfYbtMEX5G3|zb6 zI}L1b@E>93i1uF$afjJ|{_p>DqVl(z{6C1JzX2it!Q%Xljrd=jKm4z|9dI%pC_Q*< zb8`lb%H}ZN%C!kW4F~3g_q!(9%NM+X$s?iU9$1{N=b9f^K1R)SdNo{>%+aw1W`-T9 zr-DCQTiT$5pM(_UWN^#MySp?qw@cW2@e?+&|Am0_tGC%sO+A(Kni0g^@tI>AUVzu8 z^dA8xQ$`xB{&BvFSB1L!J(~n-G-KxYs{BdR8}X(VF^X6QL^&N)b-Sq`E;FIrabWFr z_fTjW^fss_RFtvaFXkt%fv^n;#!xGUryFr)r`q>UbuDfUN#Emqhv`A>jS~Pv9jaE= zR{XFEuqgvtGUeA`{`$23L$5Vsr?7$aBEj35_4ix`QIDUjd>y-{bU0&GMXVzTS+EKp z1No|#5I!B-UUm3tN$0yO_&qeY`CXx+>4$DVq}rfBm|bVil|yfLTu@6H-(C)!r{g1# zcFG~TCy7)`8}P2RF!417se_%>&n$F+VByZ$$qq z4!WvD>@DEYf$0S{*NS9eW5XzcymE z*C%*xFf_wZ;*en#L*7zW)Ak@gP8f>|8OrV>CP-Hg2?he<^iwB4&JSG*d2C0bfR6a< z9rHa=od7U?DAlx90s?!|NW!*cTlmv^rmgjl>eBJhGaj?F3%8DNZvb0Bd?BgKfQS!^=t9m>LeY}OO5s;l!qFl_Mo6?+kH7vZ`_PP ziC1F{mD{t4;_lf}hKmVFP^rZqIYHR|s}SzLaFfxqr7mWYdDY)GEThVuedCM975na# zZbsahN~wPwFWWO57XlYHFG?;&fDHiBXbmTKz9udne$y?0m7l}@3auRVlB-OtmJr>{ z)ob(!?w+P+BIvHJt)0^XxH#J{TzV0PWb z5A-UrdQk{H2x97|XLdUhqDj>xdbKtin5=%JyH*ZA``wXtsNSzWj?}h1J8~YtMcrb#GfNx z)A_6%@)*ukc9@vn%09&10*e)#oCL+*w}l_&4=O|2cn_z2!^!au8@P`RXyC7^)izu3 zglh4ZLzC0qhEU>55%)GM@s(ZhY5TqIM%s_-Y*gB+)KdLKOqG+&BlxjULeY^eyp&_gVpuSfq^t@<3@=mR=X^- zIABsD@C30vJ})rJ{7%T9#dyOBUuV>f8+tg{Y00+urGiOh6VQ1d-f;`vT;c%hC83 zHM$?vyPWGaw^ILx%9Wa7Qaqsor&Or`NwCZ+*LW)xHhl~0gTAiOeMRwk}5nqfc z&md!L_0$|VwGYi^=N>9NA&qwDFZSU0`f{CL+Fj7^NV1XOp@Fxghs)yD{8>}*w3@-e zTSnXYv>4?(_`n4mDAvY#J0D4peU9jhd8AS-AHFGS+&;ux*%CIiXak+E3ac+0 zenJwL0eI2Yq~Y0}7rtX};E8Zb`1R??$!U^T;X$>y{Zl&G4r7gyCv0EpaCF=8ng@`o z1I2M?rk{u=O>zgT53N@0wfwD19@o$@k!z`gK`LuKHm)Fmz4jj&CRR8jIr8|Hp&Th=?_ID4eF(IT%7FDK8|P3s`> zoeJ#u$}y>YB&pgEwy!Nd@hF29ToBdA3^l&HWjwmjLyvuuVzracCxI=7eXbd^Q4|CiTAMs}(j$(W%7tZmeHl^s7Vbo!hAy3LJ!b3{- zV(>@2;tlr8t47!JBZ?lmGPIn>IVl7&&>ncG7z5s^0nQ-U*@xft#AEZj{f9nQO%FUK zr+JC$b2?5Lv#l{hn`MD7MHpa^5b z;o18Mkpha~)+6!EA{^SmRiY2KeWfvQIBS?{7(=_;z;+ z%|j7xP8azPeP(;GoqN~7Bmm$K>;WR-4}-dpi)R)pZRd_k@l}hW6FFPNW0nq2T#}Mz zI|~X7-9qK>&Y2ifXip5@FAYINtxO~BjCU32=nLv^J-_Gv1@L;5VoB`V+?9p5c0b7C zvP@h2JQBBQt@pXV&8i=kh22i;r1CNEA?M$4eoseUJO~OQJ47v#z!&c@Xxi11YpKnD zp|yn%!zqcs40`-l<+<93ctR#|PG!wFi}X|rC99A5w%fwXm7(eF1ik$paj!!df@&>$ zVTx@7O9#f#!btGdtVfn(gLktc7apN{{VsO)W||eXrt0ftlPp8)Wf4{pUtYv7O+L`t zLO6_^LqFaJ<+&oa+GZGb<{6W6Fj0=ka!ph!KS=-#vY33&e3Z)A!-TvJL746;u1Jdf zI8KP1C=iX!AH%dyMDZ@MAZIjGXKWH$?ds1}HiiP-8C{yD5vbSt4&$3~F+H}wF}53P z+w5ua(#qb46|?RAjwTAS$bCd9!lJzZeIfaTx*v#vv@zbAaSP2_+cWo5?T`%>pU3Y=HVj#|i<-e|!SAQsqW$U)flQAqCw zJ#St$kf3+@#cTZacX6VV1toYQZ_*#!`AP8I7C^m#0m}`n?teRW5 zg?zZI*!}=r!h-ZIv90ey&sxMYzN{N)QMbDA@A0b?+2&`h`LXFYln ziVJB5&xS;NDdVfAc+gXA)g{m3QoW&7Pjo;V%e$c+6EO>200MN0P_w~ln)4Q85>6p#6 zj?6Ar%X-=lrQ%&gxYKNR7T+$RqCxPr;~l712Cj3~tG0qlx)a@Pptnh&dk(TUyq)g3 zJ{Q}^ll;eKai#Ku&jI3JN)+rPTK`(I*#RJXlZu1ws{U}cB+yWax&MJ>J76>(8)*M5yd83g5vlgdi+uVJy4oV*A z#16#tUfnW$;UhdHCnLf$ZLE2C(kYA$7cd^{qFb{|>YC`Pr+W67nyJP88h_bqFfMS@ zrm!LZ!%q*1+s6+Kz5=cL6h{6ku~aAD>}tHi7^D9JPxSuC7}JuS=7CF?Dt0?vL)Inh zd2HMK>%&L#aQy48a;{W^oX&hRWpF!)u67NvDDPev&d- zT?SV0QObO@T&?{S(mfL6SZM4hgeywh(3*Cz?=cODalWxjjK%m~KNGn0eah+yb&F|=juODQw> zBB)OiZh;vx6}Qo%7yBmbg5@g5(<2s9b5&pVt&6UwMi)&-C%VZPeUwr=UDq}z%?|!o z?b*wHR@WElo2HIo=39XCOBRm19LpM4e9L5ky#vPeW!OxqLKj|}I z9)<11DA7`xPK9)DS|2*k&9-CyO^qjghf-aquJ5TFhr-FZipZO=+kYZM+2PQ4yJ?|+ ziH5-o;n1VSDV>^EcAA<$*L|?{@b;9ro7WxoSFVNjrHV&V(~G1)k6h#AR*$-CZdDyu z0TDYR%%eVxlOYvjazxACNLA=?NU$2Yfx6vX`bg zC6j@SzwmKjE(%dd^>NQ!1q@U8{mpb`4l@=s#osdm9F^d+aSg3E!+u)QkvdD3AaboT0{>y+#8MyEMR7!<6|5bEo2wkkAymLCufNV1-EPoyFnOBkJ)(~$E8)p z1n49B7~E!f=*xu4+OI;`E3-~4$YI_BZvsA)@s?Fv!j7$XZ?GA=t~;;J?Uqzu9X z;M6di`OHyO3-qo>^KIpcS6ZDg@5*$LCH!^qMPX@X%wDGJJ}9xEun3sr&p&UXS4RmO z@J_Iw|9SJPaLa=buF3ib0rN}k5eU9pDt-j+a7N&&Rm(q|a|F`pQU+51iD@1Yw0 zstjY=SN|%!#NXdSuMKo~3k;Qyy;IJ*t#ByR`tIj0d?ARgNZNnxq5eEewlKBPj-lu9Q= zbh(^V61`vJz^w>ux6iO_em4EQ|Jt$iu`DS|_6&O@YW8cw0dJxW!a3HSci*Z=cF1e^ zk&!Bgu82C$7(T^}t7yz#&Ayc&Z?8;xsM;ER#VDB}J1rSmecMfN@J44R#z<8Pf2$0g z=Bqw~<(-A;`3-anGXM1(ksSeR5o-48C>#Z?7 zJNmb)L?t6I61`CP$I`7pa6JmaEc940C@XB`+~U10E@~f9<8Nke^jK{_q-hx(mZgB^ zXTSFDYJFBQDWbBNn{P}M&gB4U=?i8Q^?g#8f3;$DHf;~-0Q0pZ6X?{yNMRt7L3YS% zS>-XS1jm#t{tm52uXmkoM{WdTPJHk>z*MfcgTcx0)=(r*%WhXo$E7ghr?}5c`Lx7Q z#(@y~*y9+KP*Ep{48r^R3AK~kppS`yYTGxv3p7q-?2p^^^UUPePTd}nGDAf64-bhy67BEOrXx^fZe!5mube>cU?zrK zhxXPk6?f5>RJGd0%ulJsk}q?-irMB}A@+MxbsOwGJ`8x4q+*QR-^F&F#mO6j$KcP? zHJmr-GhOnG4|&EID|ab~($Dwu3(eWnPqi%G(QFj`I4MP~HU1P%;u~LjZ0>$0#ij~e z>FJN0>}125Z7))2w5eWSKYb=aR@j)>14iOxvi)R9IOaig!}^LCh&$z~j7}*=OhVEA z2*>al72H+Vtv~C)BaT%=Hu3aW4ch|_#TvJg?hnrSU1Mj&@7}`B+Z{eH{Y5EPQtdY@ zO~^xofqB6@yTdG)sQA|*T|^&7JcNhg+ilHh7B5_iGKnt2-@wfuGtllrw=>}log;wH z6JsO=`1vUP8T@-0@AH^_CW1115@#-+9l@pIR~6|vA7%uX9+s{bHMo+p@b&tP#Frsv zqPuFTtTPycDBJ@A0U}JjtidoCZA&PbixD`_b}Zjwu{_qoGM#X+kj{>6N8Nh8en0ac ztT~{bQcv_)ZHzmLkuK#(Vn1|jgiSO!_l840Z^DVc+TF7JG(ZOC-M6K1;M+*G!dUSU z;)mG>#x{00%10jbFrt zcr>^&->$=jkQ1$tqzLs_ef*L;D(8P%99$Fx8b2=}zMh{m{*Wo$1qqt^GhuYz^vmNY z3z9cSrGr`=Ts2vE&Proz6aBDR09wQd-koB zMG|+}Hb|L+b@&YL*d(;W8ZthWu(c8_mDt#Q@I-6gL+kEu30Y#hFIoPsY)z}cb+bm9 zAD2p(2qn~V_GrMY(3J$rSL+iZZcJSe(7q;ObEf%jTku9CSv79qByspwrDcHnNLcEp zJNQ0_e#+-0mT1CSvM3*D>tuIyNV;3qB{CSjeyO_5e0;gT>OWjR(44mPSy3@O_Ep@C z#^bp#7YvFY2gcgK!c}&Z=;DmlDqEnie$Vgg}DZ+WV@~R2A)Oj6t1x)^3NV zc9b>A_$Z$$Ib#}Jue3qoU)jjNx^w`#aN@xcS%&1Zc4TK)3#-S*-=kYPbgnq5dNM+8 zICAjdUJ?eoveMoC_=YYyz?@UvaSnVPYvVU)^x8mR&~JGqBDRa5JsA9B9?~iqKLkQk z-B$_c3*fJ&C=Qxzh6<Z{CtybM5NWUA!`d8_xVWOK6h zv%t>}huo-cXUda66)MnqlZ%7#g=+)2nDV_chfgY&w7R76@^09TGD*%SpU@WAj}@6* zYg(PcCAG)n?}|0@^d#93;UX1`!ocUtW(Kb_23*>YA9kO=7~y8;Rj+wN(~8Q|rm}iJ z4d(v%-t(L22i7Ya!aVc%e8uN76YGN&WlV7Fkg4ir0XC>#^PQKCwF=Zps!!wI`SBHK zO<-VFwp!lQ=e_}DH)(ZaPrupBc-XOLrTF+7ch~HZ%CP5Bp=nq8kH4PZ1lAw?#5`6O z?c}EYd-3vemDAJH6eccsGQJ26r*Qyvc<5E2%arn8O`~g5>n(m`1mVuUeRYSR@`sErV59f96D)5gK=y<@X&4;bGY=6h8BA-qu1 z;ORW6GFRxOIBY9BmOk~+K5J(iu{leu2#~UK>pXfLenIItaCy|d?TN#&pV+I5Q(QcD zn!dD5&av7dlF|3#I7Q6IFmf*;DpP==!9L!ctN2F7xajL5m8A-%Z{{}>jzl=7bY4={ z?a@@fS=RXyKRn%5h#5B@0 z_Snu2h?-jRn;t7l48(}Jat>DFM_z=qW+RIw-{5Wx`hD)&EhjPP?5e;z7ZbY%FD~?Q zaffj8L* z-l*bZrDNym0b@g*`(8qZ3}-`3b9l18QTNu&m+q|uj~UqPXVtN4miuN0Xy;@?b>L(q zE&^fS=Su!G4r$$_Hc?4D6w5P-3PJ-=$w{2_=}_gcT$1Y7+`HUkwtqWL@G)9u_r{Qk z9qSmSI5Y2&vdHf1TiXjDc+Jh$G&`bbYE0E|AWi3l{KhtvX14rQzQEOPzCjDUUiJ+c zYVXdPH6Gpr$>alu*VhaBJYow2X~XzEWI-g-0)+!$$nHN)@d`o!%nJ2WgD_s z`>}C?VD%Pwe~1HsKt?k4PBHguKOSi-cj0r9bwk~-SBn#6c;Dt#Nxc-gpLjS%)qQ2B zIl!|XW%c~39-^C_YO&rQVlcj(o(Pl3G{=G!6ne39hjGzlv)ROp=_=4NNx+*Gq>ysX z?x?;EVMiHE5+FnnvO;p1%3TWui7}p)(l`uv+OpLNnowf;cHd&CA};o3c9C%~EXZ=D z+j75AaYZ0Jk)x{nIJB%Y*33U(tdqbr6uN$hr8;{Y9O4d^SwbrkUr0PEai9;Wt6xH9 zEMU)ajLl}749WcgR+9&j1XkBj(p!Q ziwj2=kJgJ))q#8aWx*9~X)|L^8G1SwI_xe#ru*#?D18@&{w*`X0Oh;-^-7x6*+e!E zEE#LjP;SjsRwYLe5U17EE4%`T0Z;->T6ywy_1o)hZ<(#*MY>2IH2=vnKZRb)dY8-x zdl6L87tq+P><(dzui$-BZ?<6(D#aQ0Cg%=e0NSkQJRtNocFk{7zymNcwuSZ5CzbU! zwAclpeEEB@E^9}Cs?`bYyOwD%Xm4hkUY(A+^*(f2irEa@`186 zY6U6Rb*xz}oy^^AGOPMdT%*%V0aBTee%petBbSU3(5-Rt!~h`DvX=6ZavH zj(H+zCv7Io7X4 z#K!S}7-LC_XO-9lMz?NxSA|{+b&xE)Sek8_et||5(7uwhBEK}djxoO>Pv3ad*R`M4J2%8o__*)#Lha+)IC64OU@LOvk+?mB zW1;Uk6|Ee(rCp+)64jzTjfyr}@hZSl^&~STmF2sU6Z+Ur@8AL7<(>z_l>jzj`pCTk z;@w8yW<%5Xk2lwcCF~AHsP}+nPdDEn?Q!rj*_JRJONQ^g62d9cSePtA=!+`P&-+1! zE4Ag|H%kX*DuI!ti+zpIGPs*|pesXAReEXGx+oC&UAOb<;Ux+zr%YW4{t+65e;g5dhgye>flW zE!{zPk<^|J)3SIbI=Q9r!erP4KpaS1zN%NMEd{XK3zht~)PQ5PfStS|`-cw|n$ikj zJ|*P_NS~Nyy6u&d*}Ddg4U-!S9|c&Vum)~VKW$Lg8!6ZLX=wYU;lf>?P077^8)oSy zxcYBm3E!<87EqnBGMcYmKHXW}vBeC%bX;Z)!+#~U{ZS$=d1gwl=ENQlxn{e6jdCUIQ)TwokWcvRbN7hGh~k(x6$;zX+duy|7lPFK9^7wGCNQyh8;~?;v6%bO^Sdm z9^bmH-~_Tv`>`@yq3VgYdZ*SS6YXDCt+2JZphSR85k2Y6jzr>bU&wK(m2w4I+ zV1jD<>U~#G%y3J1ln8=;LIMXNUv)8$ceU4&q7J}E`x27s#hvuTaavhL)ee`a_aBM(iR%8tpn(bxmdLceFV57PVA6cgte;H6^1^1RX z-ej*lGXVWi%shej4s%}dg#-6chHxG$Nk|54RX~)M_3NI5ve~B18a7Nt>#}fnLvp^+ zS(}~5j`s04ScG;^QHe$27sq=ct>({D#|En`$3Avu>y1ElR$6nfbBe-7qpF7J@GQ`!D&`gX^nX|OXYsPMUhB-2>HX?fI0K=@2-Wp+8$NDZxvr08SFPsm8il{Z+K zz(Ej5^5v2j%;{llNY(?wbz(CV9%mo0nP*XJ7ap=T#rPY?i&Sf2WGDiFquWU37WnzX zp~O+k(iY-&n&DIfUl|rCk7}##g4J8S33+L-hd6EV>tZqQJyd&-gSFsZh#9jageVgK z33K|N<~}K)co~6I^RzF(W0~7DNtQ+qk7#g@<%@G|1MfIENDE=`J{fOly*4jTW3_&#h_CW3!L-s|GZVdR9uP;6 zk@MnBjo!$2^B})3*rF$^#&12}jA1eN1(U7cZCYx?vCV2`NtX8=xK|xNsF%5M+B$Y&1$cV2xl<%0robA z=!cAL8sIC3?anjT;W*=WIS)s-z!36_xC2ANZ`sS}?C?&R)mN*Xt~r)w0=^mMptOnW z0ZW>Fsf-`{sM{6mG5(@<3Zt0zI8S8Vc5zX?}Ci)WhstBI!voVjWMFeonSb5pd1cp8KPPf%> zptp~0Ox+M2~us>uR6bd>%j6?x#@g+uY26cBUL>oWqj(gj)W3 zu;&RcX(y|{spSp7YvunhK{-_&=$3Ws-Ca=gvSR0&;BT!o>VGNu|DCt~KUJ|)ul|LZ z(4E-0q9V&(c>P#Fea(}VVFDz2RDIv3-hEE}SNS$3Rp5&-i5u=DMkDkDd6>AD9?R$n z%N-={4e!wMtOM)Csk4!y(*Ln7j6_ zjp~`T(C*DYhBwlh>AO0jZw~`=Yv_9q)+vCEX`StBS63v~YuXae0T1BF52ejmK{#ct ztDp!=-n;p&^`W3``4uXcZ2+3t646YyuuR2^Q6KJ}*1UkTu64Q1jf9`8TnEjDT_uxf&X=N<=S)P9?DS3j{KMvw8PrGDZY33D@S$*6)_Uzk9+hv|dt zs`&oD{{0aEr8A+V!tY8-Od$cb!6?UHA52$(GUn0=3(8ds0wxn5L<{-k#`;E)m1Vs8 zNmBwi(0A7h6anM4WyFy|4?v^|K(q#5f+j!SJvx*)&O-kVZJ+d2JsR`}M?$a*q<~2W z%MDH5Pqh@4F`sZ-698EF)<2&sj!hj&YD-E~IP1Ff=Y=UYscSbJ23k+MGGliShkl=%ZuX zupl|6>cA7bPtXD!33nx^DYf5D!|J2A&EVf0?D2odQg-0KD1n{w;iJ#&ULUD<8QZq-w=pz;JOoCx_pI2s3 z>EIi&7m}HmGahjSy_+Eb${l?UJK8|V8QDO}TtQ*LmG?n{F|9E%i?mC*F`jt@v{Me` zuoyWV-ugg18pyEINC*lUx3->2H_mx!dM5w`yX>Nx9z_@*487f@NqHk`YcU9O=S3Wz zO?U_ z%XcKSPw<1(fXI&@&Oxd)JonwaHI=y@RNeo(x6I!(vVX9LASJ+dyTS=MtyaT%GFH^O z*H!fihAz1fH%&CF(|e@p88TIw^huv~U*h`A)u%0yqgwU;>YT2|QsXh?Bz5S~USZ@? z53VI6Rlhm&AP#+^)3ws9a(XE;Ux8OSF0;91`r?vTPEV*o)rbSUYF4)xP0 zp7`j<-W2>4MzOVWtfThCEt}08BgH9#s$!@~xf^@@bb=^O{gJOS`DUAnVzbbdWTqB^ z$PPqn9i8%@Rzty(e5$S;b-c~@CW8*2$uBENnfp|B*!A*XXJ=Mi0kKvZ~J$K7-t%7LE z$FaPSzVoZA4^Z?DxQaYJ7~BlPy(#yue_hN@IWdX!!1^%NA4LGIdN4NJvaz_Wa|ED6 z{9fRSeeOMzx~=s|VMZ+HtDU?0C*Hhjbtv~yn7h}G&&*-JiO&V@5RWu~VQOXn)B(_r zs-AhZq}U3lS<9h0?rC9H^yU?tqmAho!q>YjFV>J z=ekgIeRXi=vv061lfj~zN)1s0UchmkPDo7$M zx$e~x+21Lij=2z2T|EhVFQ{%Lg(n(5y4$uP@)O=`=tbymC7De2FOA`CMuQOTl8b(+ zMu#yum2Fpf*U*&n)i-b90F3Fb>d*!NU;d4jVaEX<4bEFn17NV>40j>de8RE{$mzY* z+&sqxxThl$^=z}=_KiwT`Ug;LdM)Xjq0OZT1&_A(#ZNnAd(I3^Mb3?D2lv9C2TMw7 zO&?e6mh*eUebk<`&NSePnl5a@;;)H!4WBf|IQUj*&z(u_L3Xgo^lX~&4^xxbszstu zC~6vi|5w7?Y|ih2K(F3|VP+Wi<&{ckfF}iaUy^Q|z9vBL?B8HeFgd z^xpdbw>;juRSR8fB@&TaR7oZW_nRs_@U%nEhr7I8c)qxciXKi(x_LUTRiY1l_N_8w zHO6>@wu#yAxd`9WX71@moNp_WRz?PXO^*yrow8W!o$Eel8(t?-4(yoBdIjYyFh$dD z(0*QwN;nF){)o=9Pv?Q6Qe|5NLZR*b4D;sFyl<_Nq4w=YgIz$;cN#(Th4jj+^U zt*CHOY1-HE^mBLNv+?M?`>n$EU>CbYykT21+!E*xtVkWpnFu*J@z!!~(sWYj37+yopv8(0O_l`MsPiQ{fI0E``FgeHjQ=Asd8|N!H#bW&6>M^Y;A@2X$4=) zCdPRkK^$>cykFgM`B9^kP(2Rl=pBi%;7Jeg^`zWA?1k+(qpmAoz|n5TGKe@8^k?o{&mc<>=n9t z@X7va9pI8vcMAuflTy7O6SGunx&Rw%tnj8$s)e$9{BvbHGQ0$g43%|naezLNZAXR1 zD=D+$*BqL;_p!UGEhtcoN3=vBtP;r%a8ur~YF%qY`CF-zKpkq}8Zl&T_hV6K216Iu zO*xg?=HGzJ$Rw-&TEtaA^ptcwI+9976HOj_UXX>JJNb0a(U}FUp>@t>!s@a`c}0sS zIa`_v_8#(ddE(T*f?#51Wm4_dka8__sFqVU z8G1&~-aZ*IG0Q6ArTF3}TH2-D%NYo~=~Dk4DdaFXe7AU*NGq%CUoxaPM}1cM&XmdY zF-=Ba%M$gqAahS8F&;$|`jWK(crIPrt8iByb)B4L4_-5=?lr!-9Nx`06QSC4bSU8w zMm<4T3}eA_D(ozYB)mb9-rgD2H{M&Rp~~HBzPYcz7ATH=O!X(%CGFXj9t3TrZ-U^R z=oX#AyUvocw@$LWjXz_ij|@&rpHx!T9Z7(ELO$-Q_*VaV!FjgooY)-I+0tNX!IPDb z#|&-fPP@1-JvNgVw#;&rA_4>@+>w^Drg7!gDHDsPR|{d$;o#m5q_VCn(e&1ng+3oy znY)fZaK-=pya8MmMW01kF1(5ra~}RYT;`Ff4>=-|aHr5AXLIMu<$txmQhld)ux35N zSWOW}5;5*L4uHT_W|~f==M%>*9_X#!Hx=CBH@&DGWONW`^qWNcT}0Eo5UO5wpt|~t}M^*Xc0{AYdh-MCK*6a-stiAAMRW^j+9ia z`RF3r7ZLdIGd4j5N?+Ls@c>98^rhXDH{Ti&8AqNwJG(j_$f#9Hjlm;txghFVU(;xz zZo!>o*B}>lKuAzV2J}nzNL>Jk=2lHZ-~&U4=r!w1OmIkxfR>qMEP_iB-Yr&tpxr5g zl1flke>Amuf5Kj~AnV-03YpT_!kHSZ@O4?|Ln#A>!U z#dp<=@WhyY;iido5Elrc4F55`v}Nc{@tRE%UefBA&H5?$2wc+svLxTs;-xo=eM zoN*d=)oQ>v{O(UA^Z&@w0wa(3yE(D>10s5LU8J5TK-TCL(mNJILmXO*DBGT9!zPB5 z#Tm8I<|BcRw?titXAIdr4_AMchxiU|vlrK!Ih@`)2a)dPt@h%`&86yej99UQgC&+L z()R2`qDU7c+DnEK)21)RVX<@b(nCk5f~SpuJ#wH+(Z?r6G3U|7Zy$w!7w$x5v3T)(svm~%t=l*eiUneS{Hu|!QnGr2?@;J* zmD}!6K;dp+H;(l6fl25ap@{*8TnX8{rhkrG2hrJgMtVfDw0GOk6BIVLn(mjxl^mBZ zf|3Gowc&>)89nUmG?T$zRIt`@!Dr9!Yzo%b0&@<66Vnx=T)M-77 zXaq`}-iuzy+gP{0+12MTSP<%{reko@99 zpHe^r+t9|9x*%AcGgKW4pfinc_i(o;bX2F!vp+|;Yq+1ATaBY%3^6olx3TCfjtvF{MBTL7Cd6pw$K zbd@swLSx4psxmS)f8*ExW7heK>IugBuPod(tA_(A3)2{iGAs+jmIsIyvb>k7@DHM4Wu`(o$I%yGC}L{pCn=&)mSIeBi~p%aZ`^45+sqKe1;1 z-EKLdbC1o7gM)dhKm-Ju@xWpA!+a2MLgpLtc=GO8Kl*+G^i5ljSR8TA(~W$+ifV?e z2~WzFR((!{iS|+|^|0m+E$Q*o{!Mfr*YqRLYDUoQhJ!`8E^r@|08|;XzMjaS13bZm z(xdLhj~^~AoHd{KET|_!iC0i;=O5reA})mZr<`;rsL%?m$gZQ-sMW=Nj|d3jC5N5?v(% z=gG~~YK9MGsdi9x($gwL`Y9+O0}E|-*9RXUnT*Hz_wb=-6WJ1vy5l8ENkAh1fiDCw ziOJYANXW1z?ea>)v@|9dqwdQh{diAtSO0-( z`wv%ye~#pOL{5zCD;#(%L@9Oab2W(8H`qzT)y9iTPC7dq5=22)t|&D7f2-BRZ*H%Q zICV5>c>0n)W~<^v-9W1NVhE0Fm1kDrwXtb(ZNKI?=vdN-aJ^ z7S(=Y2Ei7788@IWcVun!A-S*De66Ae=zAx!D9&xSR(SH3jZ+G#^((zAmYuU0p#0$m z_OJ{s_Qu7>jtv?F3luZ}6c9c6@KItRx-ttvQ&-}b5n+6|xvg?)W!E+szuhPp3k^}d zh9rAKKf0Ob1aRI-fRuPD%J8AUWRY5IKEb+*1uqWufWQv1zvx#^--{x=!^8y19o+ih z8kKOTVp4 z*ecSPfYTHGx=^L16KX>(i>ykbnh0TTOSBt@8)plp5uzCGeDPE*eTGW4=qs9;vunAyJX5+taQ!<=$NNr6wD`r5*9uOjZwB|HPNc+piZX53 z+?9vy6d&~>r!q5Ig)i!lMB2iy5n^xWWNZ!rn7o+$gMg z5n<|LUOwxU$KfYIP+#nhN@n46G@s%47~o%TjHnCst!#RCP#>gUP~=^dinMidfGZyJ zJ;L41N+?SkEtl|-vs?{BDRCDC@ldzX3e4iVN|USl8CLkx`+kkxK;~ikw9@^L7@nm3 zSSPN?s`E^MDl_zI4$m5oAGvxbfV+y%w~sd`yWLh#g(5f~r63a%!H$V1jd}Y`wC40E zFZUpv2^L1?&^1isJPR3^B_&tv>%?yQRJV9Wg`%3X`8Npn)aCCva%`ZHg@n!Xjh z*HeIJa3WL8l4STL8}C5X)gnU`eo4I8s4C^~vtuBYGPS@d*-lXe$sR zeW6gDx$I^sDP*U!sn2}VTf=QNezM{Slr4zQ`v6|@qe$V=w>>AFCrh=uN1tDGJ>92{ zQY*t26f5J@>99@xO=__zyo(f4R1B|hM(qied@WNRPIIZILyu4Tol~ z(cbJAQZx!Q4}2Wml1%EWofQ?v3Gjrc8x;CE}M{hj)Q2w1b1X z!wWHIo@@w?2x2{a2uo+08i=p>uB*6+-}MGkpc^iZwP8P-+S z&446fp}0aqR!0cI!HQx9Eu1e^i11y2J^MWBT0Ye!Eu}$NQdH5LX)Ys67n>p~pk4$c zexn=6wi;u8{pOeq%A2fNXKHXr?Xvr_7`%`3nkBOoh^z2zk;l@P@)N0PmExvE#qQ4y zKFa)(zTHPnrICR;3V?^}=t}|lxGGM~U?R7BC#6ZVffG4^?Fntyn=V|tK)sJgM5~R5PZ$mM5R~(vp%cFyXnPT*k@+f{}u_8lGyh2BgE4G~GQIFv%R~ z;ge~Y<*3q5tZRJTzQMqB@!2F`?~qkvyFCwDDSNYulrc80tj5cNCa5d2NK8GyoLXz> z`*K0CJ+{{J96CQ7YVei!QJlW9R(5=494^f~TM~iNDDLT&Xwx!_$#0PeQ@MqAZ>Tk0 z%+VwB)wpzxh_bZmO+FTXIlu$s_}XtZ=}3q1ZCJZr+UJSxVA(FmB%WajkP_w(?WI?8 ziuw6Nh*cp9vbfi81FW!%LJk)DmY*=fRnFzA{CeEy`RmV=Xw1(PhF!ZXv1!?DW3}n* zp7E7x2CEjV)z_qSErzs}Emz!BzF`+?J3~En6uicEQZ|)hZY#+=d~kmrsYWw35N+8o z+alC%lj)0IE$!0F@)eoAL21?=yX3av5bi_=t|sIpV<=rKg6H~_cGSsa~iR@w@aqoO-!{sQN|JLq_nZV-QHh z?g5k4q4?4|`ibhTw1-}(=9EWW9dDfveH>?2zv|{2xD$NmIw4zXE|}B!xY;;s>SOg$ z6)s!Zz;mk|jO8}p6?0RiU?SjTI9GnqL1o@>-87Wn<{eujh@oEEMCZhL-Ex8n$4gzP z+O=JFseHI3=r1)5fl2VB7?DW_=EX(XsIG4X14k8Ki*St(l7#R;Hh8@CUk*5)cxEv2 zm(-i(PY&&OpHTy>YL^q;mQR)?U^Udk7+8v8DInV?YsWNmpL=_LDJ?18^zIQ7$yU`V zY{+leEcth@a@DuVfkZgLt?%R4U^nMW$XdyXF63LK;I9r!qLmBs>2d^A#L>)!BfrTZ z6h4!COk6*&a269Rz185^lW?Z&kR$2jD5qnEz*wcAwOcYveRLg9W1YFyp3-bmIA+xKKbVi3Ma#pi9Khr|~H(m%&Xr+ACZpuN?%4Z0NaCDJf^vgOe=%}q_% zgw7Sr7~o`)q#rJAKua_cH1sa6$=U$ghV|_9OOG#%gF^hYKiAFO7`Vn(1&tLtMTRruB3U|~lXzy`Z z$q+6Ww=Ue~M(UC;`J#Kd zQzvMUhw*hw8E!w$`g#}wL7_$68kCdOK*4 zC^*7b78ivQQ4?Qg#tv>Y+?&uK)iV+QTp_XggGJ%IRc|rEvg8^1rB!z|XNKn5hN@DB zScfhvwkM9oU+o;h?_9Q3`A2hrh9UG=H_Ma3yGZ-}G)Fikd#VdIPbjpF zIVEUMvz4_$(xT8*(+0hQA7a3o1O5UP*L4aLN)v6r-+Q~}nzT9T;&{q!jSqqKh4wPt zhko>v0iAcr*=$A5MQGm6p<@T#>a?e_pB5@dum& z{t<9r{r&^}s2w8I>S?ZRD+>4lu1`O@cK$vni4FZw*zBzS-UBL_NNc4tE$>}Vwbd5h z9M;*avY%y2+AFv^o}QutPmI(98}p64PXT{P!SZT|Y)jPJfA`v=A=eSEO-gb} zdt^-FAE^%datb;1tRe7*eVaC82&25lVRPF~y`{q)UOe|SbLiA+Q@JQY%nj^K0)KU> z)KD&qc8xM%YH~0kictRV?345)e|?x~U66iHh#XnYosD;oMbR?hfXJ;hW9Z9vu+752 zmp988`Tvdk5_&$4D1A|Tywp~6sn3eC^d)wVIWkIIiwNSqjw>J5MHi6wqrLSujKzF= zG{0bPw0-I2H=BVfV`|23)sW~2m`7s%mDdc zKq)`;oJYZW+!0D(N0y}2?Qampe+ue%HqheZn#)5^yHCd{yN};j9><77?V2N4nL~mcrH*dh+d&%j<_dX>grdsg^2QrN(B&>e1lW5Q zJB`Ht>2(L3T<}Q%yNUkEE-P30g-4sZv3O7ex&@56*Zqp-N*V8C}OJti4>ME8nSP|oCtykA8S`idKg-9Pkt=vqVYSd+wdH&V#3)3e|=7XG` z#~;mQ)oI4CvLl1&S36H%b8Rqj=AJuxb@P{W@AgVkIjGpPy`h@B9amgU<9Rza*VMcv zc*0Onzhy3|j6kq=6VgldNIEHY)eo`kf5wZE|0iAmD9=RQ${BiGuQ+$_BOZ6E0!+rj zlsG%mxnf=4vLyG;2D-{U+TUELN>jjUOxh7q{Zu!}ZQBDs^#_`7&Fjjw{b+HKmb~Oi zn^Q}J_7gADAxQ!DooM`VEU)his0!TH-XL5!SrC*)SwK`a@gE=!1gfLGx=EqoE94v< zn!XAOi@6;~-g@)WIG(-+T1Q?z;~{2$;F+nYD(Y)mG$Hm(q6_Dz+ntXVz$tr|j$8xL z{3}_roRZ{dn%0>Jd1GoFuVJZn(?c;o`-!_2t!ohDp!)O~Xs4DbqSc?8aAkJ*IJ(&- z@wIwdHM@m+*)+4GavNXFwr&{olH}Y&k$v$cQwjg)msc!wsGcm_!)J@ z+z(hox3(meSKbLPdP)w#`QMP%ExI-|3FXWWHa3v7GV?&B zgYT+GpCt*jHe>|*;<*Gn@{_E5S82eAUQDO8o`-#E8glcrtweXLi6E;KKC|LH$TgM+ zmBir+3tsq!gM`9TuHA_Eya2W;PL5_?GdL=%V8*!&C=ffpL|hsi!%e7a>9zubE|waZ}1b0K)qWM)qc2$;#k<${Q#*B_J`s?fmL!%Lp-a!GgGicmk zB{zrT%v!v9u4{D0pAr+-8J$60yO1`+u-nhmJ2;d_P_ZD@trw>hS9{jvN&;_pK|4@5 zrqM+{nU2t)-p-wJxR!R$cb;QSsT>JxH%>>VJG%i5{`+&%M@gQ7muXHMt{%jJF3VCe z8hy!eqUh-?u`6X6j$~MGx?Iv&i0*h)xOFex!kk=b+9f4si3WRJ6I{>J2#IoG;#jvb3jRzx?;2?)HcFPl5a^n;M`va^<}V?1j|>jC2h~ z*ynUcO2C>yYhqCERK=4HM-U}HPXnyE`|UFb zG2Wk8Q0;IywvhE^RElBBKlsZoqfTvpmJV0O6{{>QhLAn4IY$Pa5`gyG;A!?;=YdhB z9bjB-jduqZi!cQ`P225e-G_m0J{ri?ZHybK&szsKx``nvCl=EQjPHWaE1kw@b>HO$9Gp zP}1eTC18ye`{WANFYUVZ=i6kmN$qC_Ztk6LoT;Y^cAEFp^iD-n2g}upZL;n`sRMKy zPt(T1P*YS>(Tzf^X}2!O=&sfPdvDK~UPdsj+hc=IaS&Y*muClYI+O^e&T@G_1{X>}I=a2KDt$+u(QpDVyR1Ms@r7KW03d_x1$_mW^ z?{kMp_3*&nYkXJGCaN6~`P_E1>aCbg8i~t8EPWJ!B!Ini_0hqMsNxBz1hn7&7e*~e z4nf3t^eTSvc_Mq=PEnO_uEi~98r^ZEuc%l~dN5{*$;UXmfB~S=hZWvAL`p+>;bD?| zIBjou^6-31LE9;TD`pRnLAwimJM#R>i*1*D4m9b_bRXNr1vK>)w)kqX)}&FtEb5Z8 zn#`7_pKiQmu@}W;X@3^^#Hr>9ws;L19*Y4&3G;!z;-RlsBi z*qf4*S{nFoOi9xxkP8)k<4Db!I5|`wrQ!=_gKDQ^c}D?mnxwyfg*$Te*#mdFy>4F( znwjzJ(h&LRf{?qg=mCi8d`aAUC;lvZI;8hA1}lK z9CjiWsI8dtPWOj!e&y4kDWd z$Tv?J6Ipw`QyuK(>2;zIykK_Vac4ok;fvW$w_ZjkUun|Y66Au;Hx+P@((2En*OsKb z0q00OG*dEeDy?1q?NIec{r_0=_~7ax+^i?OnX;G~+2{xin&Zhd3!J6lwz#iS|Fr7f zQOUlnXiYq4myh;7dBp{drUTuG9L`&~Yz~PMd66IFp8Evd*AfiVndmg{%$JRwYOv;| zBitSB#2)TfN0Z`^E}p`>$A>Bhq~WBuk=EN#o%3BG(>w0T%Yp1WO_*b0!ESlW_esh@ zX8^W~or-sBQ7UdPpZw4%$5bo*fvu$^Vz#uYypoe0RE#%PTr&6lglZ|SxWDrQ(RI?z z;-tWKsl2=5#o9NNDL0t%V(3{uB5bR;fcK@+Fx|UCU{L{`Ty&u8cpn(J8X6A6`sNpJ zhC$a2Dh`S-en1sgx<(iQ-=nSyu;=tJZe)<`>_)G~=TZ|B2`={Ad|MfIz1vr}@&-Hv zPVr{f+KHnUH3bD6=c-BGh8p!6_p9vgAbT#fggRAW=#MU}*++Df%vyxUPx!J*ma_C% z#{yXE29@VwR|6C_Unb0Pslbt=Ft14hvJD^dV}H#TpVdxWAe~!RID5Vm%||t4Q-w~b zuD`bZ@2>B+IpRHPMsL7^`dd5Hw8s^hwRKhnt*W={lf@s08 zV-uX}N)fcv?SpyGD;IAkJMpGDVP+$)e>yGx|{k%%=8gE)%6|Cz*?v!+*qLMJe<38TW&@9UDRMX+f^X`gYZ3 z9x~QDu1*ZH*X!kK*Nz|Erw8eCUxSs~hQPkv4xA+Tpf+&Vg7CHpLYMrC>0c7qV*2(vE7S>tf>L8th{L0m|fydP;Aosi3Nm852> zj519TU~~b;aQ0WumtB>ztmxhLcJNfgX~8bP12#_WN8<9qVM*a8VV245F)rmprnZPTBOb?q-JwMo!{1*S>UouYQF@Ao~a6)i7Q1lVl=e(3+f zLi*w5Ve`ui{a?4Wn7*+Nk@GWQc1zX;jJnZ4BeyB`UNn^O9F3B@?5V{Nom_b7w(kr; zlLqVnSn`GwVPs#d{26zjj=S^xAAFLJoVZwTH|&vy@Jgit32okf?lmly=Ev_*E%Iy1&|p|TrJ~TuwZ$n;dMW>u|D(gFt|sc6f!8nwyK@!i`dzno)=+|P{Otn+F$H(|P}+%T88pqiCXX*J8Fx(j5^32_1EhP9Lx1lbb*L>v_~*YpkGkm(#bMYN+e{dPjF( zh$$fWGBR%fA~U&QV2tLTOUlu{%VkcO{JMI!aYVbGs_qFM!EC#>s$PyeLRv?iUx;IV zx^5G}0P>Kk2csyh;)pub!Uh%E11ITxq6O4nVzV0pElh{d5o&@fO9 zO2Gx3FP?gqI)ZZ1QCsW5iIMuhrTcZ@^M#{5G-tu`!?0Qs3hf_d(&!6+twFy-v{(x(JNL5cnBWGd44%u(% zJ^h)!>!4P=51?kh@ZqiWPsq<27+_Z~5BiFrpS4v492}<(O|Jz_Bh+if~&W3u_Zq@W`x}fB23iw33P2- zAb&c9c}!dqRy&=cRZrb8jcFVdwR_`F#=itB*c&S=VL;{`@YYK{xl9}$XLRO% zc4o!2=P7Y2v!Fi%bB*3l2_hW4WgASbtzj`-Kap=p0lBH=BmO6MWDBwS{9clM+QLfF zlZ5$$zr6`*nk+41x&EbJoZcS0oCrGVXK!o{i_X)^*%7*aIpaM6qwBi+U=3E}DThn< zOI1l(fDKS-$-$_uk4=+U`94Wbewv9%v6_yI%%49Cj|xD=r)-qs7I+m?Z3ccasx|$j z*G1{i^uJ3zfE%7-7wcs1m|4vh%_%p@OuhWdMcLVf1yN0{+ls8aUh%ZbI5kn|_@vAc ziQ#WYC#4i@v_R`%qm^u4OPA1KWvlf-0e!=CHi>S?%qH;}&8I4ek>LaHuFs(emO$)$ zv4F44Y4Y@)iIZ>ll!K-sYH33@Lp14BHS5wA`l<=@)4r~~hF15Eu?Pi{x+}j?@6f`Z zi|F06VTCE%EJw$D1x+2*&^=;IquprIXvfEOt;iQm8vcqs;@r{$bx<L4D_fOrh ze(gNf*PfJLui?FZaHhyaZ@cE6WTWK~_l!(cZFT!xHY7piq6{Kt8lbj0k|P3**2yYh zc+S40x{$5$lJHFBVr#)(bvHz3bmM!)f%(OYcMQpGk{%wnQ}Q+~s6?FA>3y`@B9B?{ zPPOSJGbFI-Bgk5MC8pDpR=u{ODLc?5m|S)G;mhYu@)1NQhYy4DPi@2e1bICyBXK*h zP#$<8i_LkjL&8{Hu@>w)p^6@R^7e&G)57hy5j;uG7wPThxPZ3Ye!!it)9c5U0jh&6 z?4zNOks{WaGeb`irrp>jt9|&ek6Ji$uIZ~*<2P;8{gcJ!b4^qG$7049kh#_=pe2R6 zMp`8Zq3ELqZl`kPtuM5xJN3}ZbAFOvQ~mL~x|hosSWI5qx^w^9*XGxO)%l0)cfgh( zKnXp`k@TK%Np|}BQFabzy?CMzeN0ZXccF*0Bk7sTbIX(yeTqR`(>rH53k&l7On=1H zaAVX}7s_kAQh7K&o9Jo%qc2stf5fksdPPRY^I6JX-V8eH4MV`q?>D z2Xr#KZCeuG;JQB`Nm{uo-h#T+s)<)$P_Fb#hb!~+{b0`rYU6B%)9QK&+z_JW!-6gA za<0#4dJ36kevmk|B>2yU-oo!cEazmd6#n?S^_XZjO0#{ZI=a z(a&{qlU;Um2Y{ovz43it6ruA|=eh3Gr8NA|x<3*!4aJU_P6FJ03CC23&W}b`Ijt`L zQ2C-`VODfxV(x38%4Jfl+Y0vNH6QAWf9-TRsdHlJgCLYM{d}D#nT|gM7y%k-_^jVa zyQ@Q9YvElFaR8s~9Z$jENbv7f2w`h4XY2Z|B@w-Q0UvcZ%|7)`W*Rw(-y`>DL2I6u zx6{8{lCc_SDO}(#)2oDBved2;3V5Nh0qp&9%cc{zyxv5%0lKJi1uVcQI=3RO7uprF zy3W>tJhHk8i7i^l-}_3gylx}s_uqeS{AtMgkC_s0(-@<>qQ+z&L<^m2NBjlzxJLKa z4j$l8jm0!QK&%OYzDa5w$!7u3C1_ zRrQ4^%m0e%PDVr(CziSoq)^QtDK^#f1ymRS|I#lBKRg6wGJkf!jsYE3(${Y>Y$Kql z0V@C+xY(+5b(7C}^BlK(d12B*3~%mt2Fw}xpFUy~kW?3By-Q_vh@t0x{~~9mV?hJ0 zJC!7Q=!9088wJLXR%{-KSHL^{53Be;GA627mACT|1Zl<$vy6Kta4{NEHlXpcWA!}; z6YqZ)`BRM{G?JdMI7qX&^iS7|$Mas!eF2eMU6Db<-gw*=#&2m`uDc(KTH?@J90c!{crU^ zD8Z#MyUiECZzrzuK6P?B6!G#Q7f?!Y@OzO>+=7ly4bnqrYK3QKZ}d z?!`9kK2j<3&8|B>rwyEo6f~5nN^8Ipw+lj}okj2F%U?)#Ju&U&44snD`-PGMWv%aT z@!=N)ais&`!n-E%sacNd8vCe7c(C%}9>`ULwYuhQdu8K~9E>Yid&}17Rt}<2*@qf3 ze)-zH+gdior|@PUEw4;Jgyc?Z*5CMk>8-zz8`zFj%Ijrp>jD2>w*8iqA-i5G=QBr* zQ92lY!j^yk0{MUM(+4_-D}5w1;u_- zgzqX;zil5)n377Baexh1+uStU$iJPQ=(`>;1?n&1S68@hn(qYuW4Aq3WwQdfq3xv8 z|Nc8P4GFugYVX0=s5MuTuUvAsD%`8jdW}A#Y8A&)U zr_?n4I*EPaqamEQUJ`?JyR?GI9FPEynT$-dV9 zOKJIY`MKMTbHKEx-`#P$Z~VGi6%kqPE0@E*Kg@w&@THqLr(<}ux8MJp`OCih@B4i% z;=j>4z7Z0?{r3Lv_x}G>s^%Zm7d9Y72f!x)W{E#g5YhzQ47o#`FH%bKB3`#r`KEBH z4WKW!J>Q}BsQ2ZWge7hZ!P=pF)z*yr(jCFzB;ZhfS*WN^>QJ# zI{&bs0|I_^1kYNa+fD`$sX=m z>!WjFd&j3O)?+joIIX-PS;A@!mXXZ1<1ABTv$ z@L%eakSc%jI&kW}&tU{QE|{SI9Ehulg#qHoW%$L_{13sdYg>-Spc_ z4Nw1Dz)Fou;LNpTmEdoO)~pQLIXK_ivEmcpVO(5Zs3C7p>qgWyKuENPgu`v?zg?vJ z^uJBxHu;Eauw6TAzndrD`elbv`Wt9t@*_3eCHC4ZeDwE4ohkpz2)~p^#JWG(_JvJ3 z++LBCu&@8WUG7%HPZZQo@aF$dvQz)q%m3G_%-`vHzGD4rYUWLV7|hHo)3*}< zEUa{)tM#Da&W301)zl~Ofn@j=s>Xmz#MBvgLdTVU_8n$v2kSEXGwMQPWq$m(wIRb$ z_}{UW;sTh2?JBbF328lTP~669?)co& znbVgL)8cfzYmG0aKh>oUXX3Hv$bl+L-*q;SGo?*+s@i34*p+(7Juu^E_VZkX_-0cx z>QleTw+FuUt5iezW=@Ll{;~Z{^Ng69(L0lqn-$Jl8aT!POj5!QvHZweYJJ7H6LiCV zU)agp_;j=T*K}3oR5@GUmD^cAIzjMFt3--pSen7YI&B#V&6MJ>Ck;NCy8890?YH9& zF7Hcn$3Ckc5brfBw1eB;y$U=bX3+DVBR448urI1b;E1x&Z*Kb#pIxYZLeCf0;PdS% zudM%Nt8BBYVnsh#b`tt5KeJpfj2$&_w-48qJqT8L1gBTd%&yY)J^Gpa(tM&@xv7^i zGA^!%Ht)F5pW^Xy-ggf!#k5lo$FWw38T@AD;S*vDX z84HM_-5OEz@fx{uhmWMae!jxYgRv}spPWI_Q9v_IUmgydENq~3Qn#Ac?d*^Ft!F}H zbjOLGTFW#J_Pu@Y67<}7&2YtHw_`C)n}D%EeG?wPYyV4Vgf#yj z_TDq9$+g`YRZvk8(1nUh)8(=tO+Cys(Bp?b_P>~`XQF?CyLI{Y| zK%!Ctgd`w@03iu22_YmokL%t0J?mTUGtL<2&-d+d_78qIFyy(*bKTcHuX)WGfN)Fp zXKZ^kcG~^G!JVKI(ZRE|Dx}%E_HQ5k0IEz<_LdU1=Zq)ncJM`A@3CZ<%|P;FVCIu1 z%k?Y}$D*``GXeB!WTa51gDFbzc|}!w0j&4I9cSV-Ijb@Xu*x9>%k0G zWvfHZzPxCS%2&_DX|3#M*r=M9#@K_=0Vn5E_L0;JKE&H{dg4`@Ls;Zy7I4b&=`8wB zQSm74Uk@lpK=yfmspLiT8^xdTKIpHU_VrvZBNnfOxoUp?n_-Ucc9%@(P~i7hXWu#P zVQh=B_um*?9w^SN!CZM4j;4U&UBI-YC6Cp z_WLJGP#b|K+8$h#*AChNPK;{w@f`R*@be+Q!hSi`UTBU#vB?wtdPNB>b>Qd!+5fAZ z1rXdocOE*nEXE`xTD}!loSx)bb>JQ&UmQdkK71Tp>2~(#2WzE&DVYOot)IWy6xH!B zyzFn`JNbV_1^#=~JOTO{(Q^8PtzwFLsjeDmt*tAG~B(yOxM?w zygS|PnYuE^FZZ4)_-U>V6#DTy?W5*w`y0#?%E6ssVYirXf=pxSK^l>*#Eh4q6O`af zC#WV5Am-%#qHVC_@!ju8jdee>1Tb#0T2T@zG`n2F~}?RHx|8P zFrF#(Hmb%b*Kv=W4ST8ZrGx{aFYIPB8tp67ta@Z+eW1@l?j@G z*}6jlzwCu>1byVh)vG<8UM9d(>e7CR;5Z8aH_UvUEjN%YJ0C9|2Z^2bHRlh{`q+H| z^kTE;PpgWb@7E0(x-9)Y^gvdGzY&4&x09D<_j(2N1fTuHh2a{?zJDLNIGddL~B&wTnbp4kXHx+RZwC?j& z-+Zo4S)3m!&6*f_Jp21N{kU!j$J&2+8}>RPI9QO`V*Tn9GNaZZUtcGpT$g%N^*Vi3 zJ>4L0v?~45hCrvKzf|;l0Q@uNKFyVn8=vZ}|3rOgC>vJ`wdT$1Imf#f3f`tLgUFxj zG$uU{J#JCq=(UyZxZ2*8bfgGvY3KYDODj~reD}P&^3%}y8*QPDKNZ|-H~;f>ThNnc zj2-bg{O2lQsgYAdx)12K0q800YU9+!9K+J{W%D;Q#ii)2gLdn>1k%m5v?nj*>E7S= zGVIAovI@-IUI%Bk7@W*>sPvwl-4Ofigs5oBWb4^bv4eW{tmA?9@u&(O6g}E_^De^3 zxWBE@`1qhA_@FOR!kIffGRr((&oPg2R1O}7W*gqv5Dr#KMi9g0B*7s$Uan6{q9O7U7*hU&x#W1TKfziwYhAsbe1OW626m^dPkq02YCY0v%nqc$u z0xZRD>QC?7nx5nj8%}X}VwG)dA4%(V#1#_< zzHtEvz#=ocCEfTqWn2Be*_Hj{ct#BaZG8NzwiGHspl90eus~UR(yKu?=djLCcIvzg z+Q=~+88*$a_q%od6!^F1VoDlh4?~~s^`-WlSp7`RBA6394;(B}HNOP5pU3%Ih2};F z>HEhNwVohtDy@N=QiAfs6z_V{$RNGwWPx#*c%pietX!i0sj(XuDGjo35nB8SocMML z4-o%-TZGjew6(9*Xnbz~Nf8s-XBa2-n2?c&bqxa{TTB~Dgm-e59aJ%+aZo%KIaZ+2e1fOwO_A_xzdvLYOz`qS@4%PB!*!!xI_5=75 zNGNyza$#mZ+5$}vUEhLpie_!AFZUky|K%_*mqeG^XM9S%zM&IG)Ta@CLM*?=!O*2R z(GH*VqlDiMatZswbKUO0AU$rXxx=;QSiJa)iTaIld-cOZUAoZ^1mQr2(Gb5L z`e5PAMia5R6c*;M0gS43^cRQ%Ir5npeoicXllV2K*@JubT|dwji*^I5Xqz$sN!~qs zG(!J|$N(*f=*k}rk&|MIC$j$#g6@7^DR`c}13c;Y$xm;(;R?C@l|Gs7(sLj9_?@s{ zKQ0b-*fpt^A@TgvD+6x%U+IUg!!M^&-md?^&rbaph}_RidDEtMzkKL_JLX0Jgm|U7 zJwsg-apic73~aHAbYO;SH75Z61&28MoBagUT3{5QscF~%`=sYhb>C016|{5bOx+`{ zJAlKLDi{@;s0DPDmaB`ojVR!OeyF&2Zf4tls`=hXeW=n4^l+k3n+F(8`udENf%t&; z9=oWX#_u(D)lq<}@(w)F`)!MLCMNuNk+;Q^j^gc1(Tiu)^+zgVG|Xo1^|PP+5u9K) zlNqF*-X3`yZ#BijUtfT*ng=EgMK(nR{gUnbRJ0R|U)KYIS!MybF@0zIQoG_7SL6@; zk$a6Z>7nU7&m~|EYs0$lgY} z>6btxS2Tj*eIn$U2mw>`9w7Le~{ z_9%ED`KxZ~6#iv*fYs@D3!d`cy}h^uzA)|gNcx$``41p$Sja<1&)ZwiJFz{7*H}1O zUGA(GBc%JU$GdE7VqhpF))&c4eOJmHGK%9KXi`6*FNX>LRIIvkUTkGM5TWgU+40nC z4YV!d(XZQfcrKf^Iy>JMd((jvh{C|51I<}yRhEqL*HiazenTRc9~F1LRHJi8_VbHg zjU8Y6TVOd!V&^lrTo?w*X}+UP0f?ML{cHNn6o>LTSI@4H=O&kZXc}4WF8mxe5LUOqH@F?6*1Plj#RhMDQY|LS^Hl5ns+5cf3y=SF z;XE=ke1sC8Vx*30q&gZj`MfFm7VO|IY!)0?bzHr0tsuVBeXL)D5?ayX<2ce&F7L(hwvu>pd(u(rfCs#%H6_^$Do6`r*J(F$v7+oA>8kMi_s6U?~?Uny=bG)%m z(2n4Z0Id#sg3Ry`8v&CH-OI2U+ILd@U_tS25S`g?#2ee;QoKcGkCQ zED5FLL=rAHiBhY*;u(=(7fd&$#i1w~fCC9j-JnxNi{>l-?MB>XzQB6Y|Ng@H z?1SGC>glA#vYn5|EBmCVw|R+ruDF8v-Ch=xet|6^2T~KPUCfXGYa&9mcwI)SWT{vH$DVc{xqJQeogF!}@`C(@uMN}LVvn-_l)ppa#r5_)N^&78 zXwi4wLcxh^sVg55Lv*s4wLu!Gxi)@f<}zO{!wLu+57JCQP20gV>bZ-;^Ys1;=-tkC zTu#Kj_1M*WdJ*q)KOEK2kDwD)srxn8#Hg9Tel>7x;15&n82TzL;7lkp0yBGJL(x3F3 zFdzKjc%pexbdSNutLPxxI1Miob=^hGRl+-F9;T#AR@&fQs@%igtK>()v?bC(4^gWe}hdW?+MYT zOY7B)IPxM?(^myLoM!JXVpb&8&lecIM1MhsseA}IshFl#*{ND-8DT*`L)4zr{<*R! z{S1xmFCmY(k*HEhKjm*BDQleS4{}t&K$IUOATo{daMbbIx>d6KBWDC$5E(iT9{YZy zzz;mpG#~bJ4)lIO{n!hSks*VMDaHZJfVmsWW*OD(Nef5N-1x2u*+Pr$IqgqWOuwG{ zCgZa?P-m38UdNp+7wUl#gx;7+ zsyLt5D-fFxW$$1iAm1x7#kd{HqIW@u15^{_A5vY2H%o~%*YC{VEY8hc-mE$QH#`Wwx0UoTOl9Q+Ti(E5MVk* zl-lX_nfNuMtjRbN;zWXhVFk00=Y9yd@rGb4*4@3qyRf9juTLTq3qpg|!UBIOv3j0eE$5tEn z)c`7?mG@7kNK2{?{ruA_zpR0F?|*_&e>LR1{2LDW|6F(YZwXxe&u}!Z|A!#s|ADO( z|NB=50+^4!o)m1Jt1*O+>W?y%?Rq~zr7c3?s@+=w-48S;y6GiGOx=o29OVp z?kjS@-pMovT*qn<7a1BAq$|xcXgxOQ*T}j70|g z+bl#6p+Spv#_Q?*=zG=@y)SUIU#i!;V4#2QfIB~1Qyi)aJ>CU_A$^+No@DqF)dh1Y z;+p;ivF4dS-A@m!HmC#ArcHj$2RNg*9H@3}88KymFNS!H_k$ZPtNrj~TbAE*ZYG!# zCS^GE|k=qdKmK(rQaou-n0^~9m)P_$DlJ1gr5FsELo#COzwJ4 zyVp3reBK3Dnmsf{5G~bLrhYL@KnKZl*1@JaBb>70s#L8x)Q`8(&uOrT^M20RWDHs* zhKA@JV8&f`1KbR%sWTYL_3Ie#J^`n-uZZeK?Y#cII@$ST3TZ<#oM%k@yc&5lp1XZu&cw zai=AzYJ-DFR5kaDrM;Fq%G&P=)1drGC_3{Rw|NOVukP~9x7a$^(4;D=LG(bpLLihi6X?803>#pF!T zj|bdQZ0>Y~ef8vBJ!9q(LZs96%mDj*ZTQh0NmvjxW??)L%gxkrQbH&?riMGn)<#UV zT-|2AN&Bou!HOfWWD{$o68EdZoJa}*Iqf+L^(5>Ach^K*?%2R0^INTJHUX6ygN1KS zfs`}Sr-^@9VkuwLTO%1+pdRfY=Aj5P$?Pyo$&IP`8JPX#7vXG%_(|VJ9BWvqYmti^UfxKhXK9uqS_fD z1G&*Q&3We$vAUDnyAOd86$2$-kRH{l_eqz#cKr6Rz+I zDU)OM%l*tq3Osb7<2|^`y=>o={`cXq8|lCK@jkyX`s%2u))6!?eQrI+NBb_`XRhZ? z|Dy{8w;aGzlJB=Z^#(b7l{}%X_mNX`Mf77xb%goh?Sg;#d{*CWH;glr=z|mv0d$Ip zpstSZczB&*@Ulv+XO=F1jdiuKfn5&%V@<#o=_8Eg49Rj9)*S(@`5?~1^D%v#$W@5V z!aE&S?6w&wDSXPQOO82I7s7QffTGSbGBM9UQQUE@fB6OnP6^I_$Q%`B{%E;%RXel< zU&@J@c%L$z+_rhNa&kUxiN4trC_0>&VWy>BY~al)PJjA#q|w9B(AdhsrrX^?A@P}F z=ve1ZyOHQ#@{*?obatGR2$$MR$;VHCgo|}P-V@|Yn~eTN4*gph2>ErgeDdos1sEAn zWjemJkMtjzpr`QaY3OY)=t?o1&o`29Cce?uQt zS>2N$dkC`G<#}yNNH9rXU$ufLB;He+bh|pPio4SC-GzjubI58bsZAn$h8%0t%797t zm&))LXW;3d^7%VPmy0htsP9nohx~LGGB4DQ_|ro~s+lO(#|6Oy}`m1%1@gXaJm?l>)68+wu`wtEZe;0ZUAcScztR@Lg;&Isma0`Mj@L_|m7R zyyzo|2fhuuPOPtUt!^wAg~(Q@v+y6lQj6H@?T%k{r;LwgH|r($jY>dPOf0!EX1>Tv zYE6eBkjRPO8bkf{viqy^010iS6nPZmp~n07&e#wiB47n1`=)51A9}x89UFNPJ>o&+ zBokEw_KWE!T8T-*7 zJDrO(t4w``05e#I!_-j8knjd~T;#HMBZQd4in}_*iF;=^9w&+qThouUhE=IL^bYqS zzTvAQOs+F-Ap*^vN&|K(=XRBn z-Es1kmIRt0IFJsz%pj$gUwa*YGXj+ly_Q0U7J5+y=B}SsK6LLfL2+y;Nw#Y`*FW8Q_c9y2hXKriaQ&&B*Jx?ZqEqr64m%i zh1y6KupGNlS+m=EjR1=aKP@Eqkt8R^a;x1QJqhi(zH*fY6=tJ_1BPqPmbXPSU5jZ$L)u<6;7CqLO`pF^;ZN!RnV&J z&XSY7@?grPho}FzwDayC_Tw+V?R~R!clQ0)=p9#|9(@=v80@M4`*Xy%E8T}l-*fJ_ z#_i!>yeJxT{796NO6m7`8GOYs%#mjAO@~@=^!ojVsaC9_$3g7&F>eq=(Hjb>a4H9^ z9mD!|{mFbg<*D91O18vg8t{X%HI?BT9dvFLzv9($clw*tJsypkRy5Ok9; zc_O3v^-@Ckb}I|;sBMG8mW87jot~qb9%S{sR`AQ^pJ0SB%_ZKSPl8nF_JmL76x8mM6FB!P$>D#>aztVQTpg`q#M=$Ut^`-g5T^Ud;&@ zE!6q#!Idsq4C8gt@3meAvGu$kPoOi;diGV%y|=QXD~#)tj5}zbraBb0rzf$_)Fz*X z6c68niN|!(imWVqdQe>c{ot;2t_NnZIyKe^8J|o%hD!x|3MqD@F6GbC5uW(bqWAag zhxGstud$TNRlXRCtU{t~v9u!El1aal+0+E6W$i>`sxHhHo_>1l#6 zJ2emDor)T6qZNzg&d*JZkpvSML8xKdRj?(f#LvjtxXH+*g=u_B>_r-6Rwr9~*kTd! zX?;qHX1wfFgEg;a70xwQ+prWpSAS#7Fb&XComH(NiUq3UWf$iCd&jaB6LBn&&BgDX zwB-whl@l-U?u6&-haBtgCS;^>;I5ljxBWyi@&Oh@sD;zVr%#_MA@6)9(kt-ouTnT< z2g{q|0KY|)2sXm6ZM+eFEXA{3tA}>!>N7_&lJE$;<>3^1ZT87bgY`@#kMd^WK}O(V zTUP{nyB#y44L)DIP}1d`+=Wkl{m|Z64Oxdj=SM|_Gkb8h$pZuSlZMhz2-jedpd>6wC9yR@-jO1>9hF3%kDj|rj`jm_EfigCgu@p zCLYunrOYFdl-QBFL4OCxC6M>#4A%$f{pn1l+?5Yr=d4yCTr5$BGh>OcK7#7pS-bq2 zx8KNs?tgbCGl`OR>ulC?7E}c_X1L(i*h7|1lZE*e*t~ zaG-`MGPK6)$}coVnrgp?v<bv$>*q zPk$9ztE7wzZI~t8OWP>b&YYTKjn%WS2dvWi(|R*MZiqWL7w z=QMf>Ih|P_^p#EcO+WtLJnfCS*mPhcSpw%#BQjVUhph0`gnwO<7!90Ir$@Iu!C!i^ zqX-9Ii*3Hs9K;!88k5&f#b5VNw=?WxRU)&9AGX)^E4s;@g&PjgtSFmA{}Q;h0+Jtt z0<~Lz{`uvd(^>%7#-p=e+C}<|W{KD(iQL^6Bo2>>c1le88K){LL~hK(C3_fRjAZ|c zjZm%ryJyGwZV9EurxD)61gAKbU`GUmi=lxjHoR>i9`P?8d6O z_m{?>yDPGZK4_K2D9ef}>$wnh=3QEn2^}X&vNmu|rgqte-M#;8AX&xmv?y`rSy$C5 zm8S?DsqMk4vFD``m_TwaCVUA>6YvO zoiN|Cj@Q?b3wc)@R&acM1g|`Q`?ZY4KLOLyTjWrOG^Wzz%8v@yJ=@2ZU$^M8M{(0- zCxqtOWy1Q>J2%bH_A0_&8|k;Ph;-&kdLaK*-kItp{4Gl_Sue|MPRFPT<~rf|14xY$ zC}E%FdG=Gi{DsW4@JgA|6cMy48=89`Y#JmP!ymwF-Q!>kIg~vORCi8RwUGoT?nS95ykbK*ybr ze?RdG@At5IJ#yZ-_{OAPr61jR*Q#f8%e8SbDy%`a1wVauFdiS<{qS+Qray>2$yksn zptyuqoMtT-%5fEiV1vhguF_ck_dEeJ3b22?VGhoG^JI*L%#q+KmiMio@SBYO$^?o4 z8g8bQjMDGF-|JNiZr}~^65L~obm+Zgbh19f|QL-6HhT2alLHV{{M`Ee@1U#^ z%+TJ1A*A?=XpU?s%2t(O{N8T$D*N4ybEC(p4~}>@O_<(D=M3nFZ{#f}29B8rk?vU@ zrwLT^H#-GgW-|u74h_!cY;-NJsTP}1G8RxMy|axQNHMo(;p zmHy!M+Mv=Bp1wbNqN~#mL5ZBPyh^ZiNN$5n+t25f)qpnoOP0Rlsta~F8IPd!ky%V( zMR#xxw&eng?);*k^G?C*ob)W1XE;L#sSEX8^GyZmkq--+cT% z0bT*E65w>ERIa}2{U#}yyTkeXp=T*6BFt?FUY<{)CarZrX1VKL6HK~6`_>>rK8G^k zkj{_q8JjaT^}T_=7%Kmgc*NV*j`Pepd;FE4%C-e76nrZop}q)-D!c;Yt};%eGp%G2 ztggU_g^TX$uaj=bKaU4}i{A*@6>Z;tUkZG^`ZbseNcUE2H2Tpcx%4h)ihh`{Pma=f zrcsq<_BDQ$6#qn=Xx;lbhfXo2gav`JX%AP%YtU_le{j@$&VDHD4Iiu32 zhTbI%nP!HoPv$Nd#ap^Fvj&dDhRZk_tAbcrUjkcemBv-c2+#aY^<-(gU9<6i>vb9W z!mF(KZv922tOmOkX}!SZ*L}@e$|pjnnFwX_zOWxDTzyvqQXe^p&}Hgr&=Iwun$Ybq zliAcYRNME8u1;77L?;|JoDu@(p1$;C{+{vry~@o~`FosNuI9u1NfK)=?A2tQZr^-H zhT#!UbC4fu=um+1aVa8N9l#s1UW=LYL}SL51$lv1OOl@#XVIcGUhhfWT{-vB-qUO zCa;uCx6g=+3C~s=UGx#W^K!{v*OeDJlJ^SfhvBLSOkLa>S=eFOt{=>|3y3m)0M~r< zJxVOdtQbZr8 z@I_8`H&-g5*RmSS*iS8r#L-@*%aR%$1ko3qguY#0LqUcp&$ta0@pSd>B2Pwtew7w} z?wP#u?MkP>OIgiSKknqTz-#A^1>#4_-Y-><2bGfJCKf$pBX2DJrk?wwM&NG`LeZ~n z`#yB=U3vi5qMUFLvrUYGrFf)~s<969cbtM&2r2m^p=<`ra(enE*nVb)*Dl9w?>PIN zd$x8M<>VAcL00rHQJBuEf~bkv_CPYp@U$V1=QLVv*O2aum(Wvw4mrnFyBDM)2KG;; z)xi8xMQq6l&tHdsOg&Bp<@3i_?L^FSugwZ++QHp>DL#CKG@fY^X?&yIU3jPNKogGG z{CWLovI0$c9a%t-6G$`&APfU=y7!4i!acNsE;8XA)4t^@ECUr8CYbc=Nb#(B&0*Xr z1Wh<|xCV_SkRKPoy%s^)y6|fjdk4B8{Rz{Qqi6g?7Cva> z1hA$C96gyM@@d!U`+s3CApn^qX#RJg#no&yHx8KuN~v;SBxedkhN1edY}fFaEQjR) z|JD7Y)o}lb9d)ebiJ*ku*dIo(@nz5}&Z^V{zB|GFGwKS7L|OdwKw_G9sqj;?KZ(~= zlT{tu&X8F?UA@z&&tUtDHoCh`x1{D_|9qv)W=k7)-vdd8c3$wu}+IR3^b{Y{dF_cHVc2Gc?*@F>tLq(-Vqlszj_Vd6y^LFdbkp5)O3!~^JU*vuQL+P9S{T*Os^L~=16G|qK zo#$CL*9};VW}mhcAEwTgaNtKBdcE6AdFtw0v(_}NUOKSIfxCP;9pdW1OyCRxi&909 z88AHML-TT;MD>T#p@l<&=mjXUWq&*8`wjWo_hQRMk4l2P%VSiX7ns#6#1mga4 zkHx7sBU(AbFRHfKVMB8`4rk&55SP@4_=y1)BskNZFC11<_4Z&}s$;Zyf^b}I z^AKKcWmC{!B=Wx}it^441_w4KHkI$HYMZ*)yI`=K6ON}f8I88;J#~y=WT~7T0ffVz zSZEgT?y*<%S+|d=7_TbouRaaG2MOjqG|54YZGVhhajgZUiqs;_xA$@D0fA; zzL5%4gx+D0P#}xQ`}r)x+h*?i$J5z7%N+%62g3s~lHv1(@8@f?^b_aQWW>g0q}}5u z{m$&=CmQkfUXzP2ZXi8zx|IhAQeQX!^Bo1c5@%msH0<_0J&;s>GXIgbm3{fhVZ!R( z$*T`HpakRro(&^UwU_|1XmUym!1O z8$Zf}0{eS`A4?NFC^npauVte*XxXx2PW_@s=Vf=dji>9YPhYCbCoQ!z3JOl(#ga3X zJpdBge6XORRQ|f}3AalX)uwB{2b11t4cs~#a#}8{5D^|>Z{q;1x?h=aw38d1!iO&gANU``4>Hb-^*)q(kU zaKm6BKxglF?SV??`>%&0_ir!k%bB0=(ZqTNbxDEgzSPZkE~IMz8SK!D`+RO(ZU>7O z+5Nd=E2H9^;)Tma?IU5rtgMVmuRJA3gWsnB`yD6m;m{Yab({T!e~RWl(FZ#_VU50c zd+HJ-iBjuFA|!qKxCgTD3q&71uMe=D%#3;R5nqqxk3YfUTA6sG?*ollM=y-B&lAPY zLg|R2*coS?gZ_p`q>+-{1r%X+>dDCSq{|cZ-2KTDQbR=WMA=*u68dDj-)A zJ)qCyaPj4!hIFY}$v`-23USOcCx!-<@Z+>5Z4cN6-6h(Y(G_s`tHF@88^(s$#*CC)t*JRbLPC!=2~YtO+D>+{b1-+)V=`yXsYb;<9*n)s9@Wr1WPHo!uDa6*|K(9 zNaOIPAv+zZCzwSoQu%KG?#;>e8by#vmUINnZ1v1i#cfzfgcJx&U3FUn}I5WA6 zQjbH$>14)y)n;kf0Ue!Zt;Z8P6^DIQIMT($R=txuhH{!r8tIY)1N^bw3olv&JD{h= zvc2=&I~mF)z9iOef@f@bh2HQRTg_olQq@IRK{b3eko<}tyPt~VzVg#;2}H9sF2Nnf z4;7CA59&AG~R%$h%%n5O}& z9lk-dpAUS~g}?YNe?MHD94E^UEoh16cT5!Wr}I!|3L;;`+ETaNtS8Q$ zYCVJ)W3CqAv+lVVjd^x(A`XvxD0J->kfhA!*&{R>^EqF;PAji4u{%(|d1vfSjb_2n zopYDe3CaQU%?<2~iNXZmCySr+-?lau3Cp|+av2-+lG8XEA{naXg!iRIXdUo+A-mtw zz3btn{LV7olOX02Q*0d~Y(k8Iw%y1Lx^Zv#f!;QRWUqZqa!|Z#@OU&NhU8Hy^_*u4 zrO#`xLvQDe-J8mEK=9cp{iau)P@r`wzKw~GG^&F#TRiKnRzXXdK>b^2q0Ow}HqBSW zuW~Eny9_wd+VeD}2=Wjo0D|tQdw{55twr#CAL0@qfUa1%P`*M+{YG8YXA8KV{P_Nn zHt)laeIxXTd1{rgOW8+!P)_K6#zQVybeH%)PqUxB90Qh_Dc&|&D=3=(a4QO(6{EFj z;Yq`&5FuvUE=r$d^{VqXdl+p`k3&_pmZfZV7*K;81~G9`=B{f5wW_f_y7_B4;f+ys z7Ahm#eRN`LOi)<@@FiY&a4JpX-3S@stGt_`>npBcY3^*|C5-v#E|fgA`0P!l2{WUy z4)5LHxme!u7KY9Iuw;+_8AoQITzpoD6QYy`XV!O+L$?fhfKjHt9=!e(DSA8es4N^p z=ZQl-D)6C_pJ@hvR;>J>bw>3cC)+NP6b!)5kQeSpp$FzyG9uF3+)MfCQ%YzZp$VjT z)X%dWN+i`2)qQz`wPl3cm$A#C!maCP1P1#GUntBUCi`1SOn>1xsO=`C5X$Svym>8O z#BVE)KS+g$gNa4&E=>AF!lRiYG+Jog4|7%GUdFm5Tjal<)U-yE#uBkM{*4?-^$#(h zymH15K9-c2E~Y=;R^z>DEE;|8?oenAZb1`K7QVf(-8JRD!;Im5=X)$yU>3`5t?JOV z_OcUuST*&6j@b>&s=>|>*_~rd{2T3A*FvvK z#}kX`2WDRcG!WX2^YGST#9{qvMqOJD!tw07!M>4-I#@WI)mQ(i0+q42G{;Z=0&^G- zt&2shH(y%s6TiJ8<^DlqOaK1BnC}bxx>E-v9@h*Bs-b4n`!Qj@-+(bDF%cv2>sTKg z^fQ1OH~rPV{P&|9x%QbD7&X=`rnCD?DrffMHhbmLbGQ9>>z{7TfNSFeY$Y0Wa@kf; zAHeTejrwKmN2J2P_NnPfv(tCFWJdg+`KA18tDYnJzgfAjiFZ9&)gr|P@Bi`6Hv`__ zaBJJnb-7FJJBa1Gp$jHQ2f+uUT}vuIzj_Pflsv1=(>h!=>|JcYw8wW*>(EfpWQ)ex zil007qT=NzjH5sItp2L_p0Ud|32&l$m?kkq#tqbC;~EYzR8oYd!-^KD<&iF}=!q|s z{1M9NYeDflcCZ=+h7B)kvhN9JpjaEb{DPnEiBtv%3HOhunzo{ib?U(1d?YmDD}0bZASYtIA-TN46zFO(5F-wyugoqC6xj(fU+q-vq?_E$`v%yK4)K|h| zv49ZS@u+Tp2ZfU*sx(U%u9t4kfy2?yFU2qpC;0q0+a5gnF#Uu)F^D=05Z}_uX|UmbWAVY8faE9Ja{ucmkF-M2fn)bs zaRV?YsIrQ7-fHV&wCl+POtVbAR}5VEG+R{2>oop~ud+V@BWpiqTYn9c8q|^yi2gT#WzX-OmF?($v9=&!0X`t$uN4{7Kty+c)o*Z#Ry;>#w*e z_R8U}qO)62gU7A*q&zMN+;-qES&Y;sK&C`5vk|7ePwI$_(QLI8%sYn#|t&s*{^$(@ieIKY}KIv+DTW3Y@xcu@0PCh|a-ap`V zy2*6c>Vb_1HakK$?>|BbMv5YJHtpK(C7rYK%QOF{7LwM_zQ(^l*uNQvq#@tPu1X-Y%-963TFiJ;q}9aK{)uQOhs!4q*xJ6eYh3HS5J*_A zpmwoe@!Xg^(A*O_3(Io#b%6EDe<84OV=q2d>1hF}TNMD(&X@|pBq5LhZ`MH@)8g(j zR~8>zNgvHqrqruiVhmE2D^`q8#luM|t97eM8T^Vkw<%R+iaias#PnA+BVu2sLoK>r z3O?uXpraDi^I3DnWa_mkN94riU#-EI2w#?&RtqwL#Z**QQrB-YUf5@ z_+th+ElSt7!OS)p|1K!h%4GKpr+2xz&3T1SLs348yTWcj zu#REQ3`gzb-r&sFHB`%B`2=6o`}%`bbkyBAxtlNmNKn_)bYd*yp_Q9Hb%$!#55&GOup^& z;d|^q<%C=}9!2R?aEVgmN>cJpsZGAS>`^fCAFjtY5h4Sesf`b_ZKHyCjJL2?4l#YBPUZ7+N(bf6f0{qqE{> zEFWfHUy2o;F5x$2CnYEe$)_TV&AJ_3Jzf@(@~1IGWvXoqZA5;G66qHjHG> zs*LKcW=6BX?_L&Xz7xpzun8m6>#V)uXP`XYvM?1|V+j2u9*%XQDC(M@;|?h_iSDY z8ER8ss$LK!pGX@v{-Yw@d~85p-%{S`EjVlAoK{kR_Ay3%3dOQx>YBTOV&w9X#*PK$ zfN@mbXQI0Blvr24)jI>qpH=AlJk95G)+P0%-!e$-?~^+YYUYkjcb$-x2>gvo2W|?G6 z%SfLhhC7<+K&-BMP_HqAYy`oxM@H{+o*8BOH{!aS6Uly!#|%k?YxJH);Bnh^6>XT>DkVW>WZrqOGq6m^I5C5G%WW zzY$wOcrQ=~q!O#=y*mb`@(|q|&JZiZ{AdL3P@@{;hmTn~(i5H9XJ$#&uk$mzlx*4E z_lfO#AEk~3N|TIQ1_XoX7B@fV6as3w+9`E0f9lov^^*GL2-Et=ybLesB5Tw|5a5v_CtTb*>XT(GZ*oum zdQ^3pWtvI(!6XTunhnT(U^=}Oj5f}4E+@j1yEv4Z-=?AOKowjKij}L0bUOFwZiY6A z8c|-c#>|40t+T?G`X5liOFXm&e{V(RqW_DzSg;#&KQFBwG<0KuBTx$OG_!N8Lnj1) z*_zz;Adg~q&6v+p)9=9{P4ge%0AE)A%@TzR{f^GQ*bsR`TV33+j+Vna;1c#r$gur= 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 blocks + ================================================== */ + +/* ================================================== + Notifications Panel + ================================================== */ +.wpvulnerability-notifications-panel .wpvulnerability-security-section { + background: #fff; + border: 1px solid #c3c4c7; + border-radius: 4px; + padding: 24px; + margin-bottom: 24px; +} +.wpvulnerability-notifications-panel .wpvulnerability-security-section h3 { + margin-top: 0; + margin-bottom: 20px; + font-size: 16px; + font-weight: 600; + color: #1d2327; + border-bottom: 2px solid #2271b1; + padding-bottom: 8px; +} +.wpvulnerability-notifications-panel .wpvulnerability-intro { + background: #f0f6fc; + border-left: 4px solid #2271b1; + padding: 16px; + margin-bottom: 24px; + border-radius: 2px; +} +.wpvulnerability-notifications-panel .wpvulnerability-intro p { + margin: 0 0 8px 0; + color: #1d2327; + line-height: 1.6; +} +.wpvulnerability-notifications-panel .wpvulnerability-intro p:last-child { + margin-bottom: 0; +} +.wpvulnerability-notifications-panel .wpvulnerability-setting-group { + margin-bottom: 24px; + padding-bottom: 24px; + border-bottom: 1px solid #dcdcde; +} +.wpvulnerability-notifications-panel .wpvulnerability-setting-group:last-child { + margin-bottom: 0; + padding-bottom: 0; + border-bottom: none; +} +.wpvulnerability-notifications-panel .wpvulnerability-setting-label { + display: flex; + align-items: center; + font-size: 14px; + font-weight: 600; + color: #1d2327; + margin-bottom: 8px; +} +.wpvulnerability-notifications-panel .wpvulnerability-setting-icon { + font-size: 20px; + margin-right: 8px; +} +.wpvulnerability-notifications-panel .wpvulnerability-setting-description { + font-size: 13px; + color: #646970; + margin-bottom: 12px; + line-height: 1.5; +} +.wpvulnerability-notifications-panel .wpvulnerability-radio-group label, +.wpvulnerability-notifications-panel .wpvulnerability-checkbox-group label { + display: block; + margin-bottom: 8px; + font-weight: normal; +} +.wpvulnerability-notifications-panel .wpvulnerability-radio-group input[type="radio"], +.wpvulnerability-notifications-panel .wpvulnerability-checkbox-group input[type="checkbox"] { + margin-right: 8px; +} +.wpvulnerability-notifications-panel .wpvulnerability-schedule-controls { + margin-left: 28px; + margin-top: 12px; + padding: 16px; + background: #f6f7f7; + border-radius: 4px; + border: 1px solid #dcdcde; +} +.wpvulnerability-notifications-panel .wpvulnerability-schedule-controls.wpvulnerability-hidden { + display: none; +} +.wpvulnerability-notifications-panel .wpvulnerability-schedule-row { + margin-bottom: 12px; +} +.wpvulnerability-notifications-panel .wpvulnerability-schedule-row:last-child { + margin-bottom: 0; +} +.wpvulnerability-notifications-panel .wpvulnerability-schedule-row label { + display: inline-block; + min-width: 60px; + font-weight: 600; + margin-right: 8px; +} +.wpvulnerability-notifications-panel .wpvulnerability-schedule-row select, +.wpvulnerability-notifications-panel .wpvulnerability-schedule-row input[type="number"] { + min-width: 80px; +} +.wpvulnerability-notifications-panel .wpvulnerability-schedule-row input[type="number"] { + width: 70px; +} +.wpvulnerability-notifications-panel .wpvulnerability-input-full { + width: 100%; + max-width: 600px; +} +.wpvulnerability-notifications-panel .wpvulnerability-input-hint { + display: block; + font-size: 12px; + color: #646970; + margin-top: 6px; +} +.wpvulnerability-notifications-panel .wpvulnerability-input-hint a { + color: #2271b1; + text-decoration: none; +} +.wpvulnerability-notifications-panel .wpvulnerability-input-hint a:hover { + color: #135e96; + text-decoration: underline; +} +.wpvulnerability-notifications-panel .wpvulnerability-channel-inputs { + margin-left: 28px; + margin-top: 8px; +} +.wpvulnerability-notifications-panel .wpvulnerability-channel-inputs.wpvulnerability-hidden { + display: none; +} +.wpvulnerability-notifications-panel .wpvulnerability-info-box { + background: #fff3cd; + border-left: 4px solid #f0c33c; + padding: 12px 16px; + margin-top: 16px; + border-radius: 2px; +} +.wpvulnerability-notifications-panel .wpvulnerability-info-box p { + margin: 0; + color: #1d2327; + font-size: 13px; + line-height: 1.6; +} +.wpvulnerability-notifications-panel .wpvulnerability-save-section { + margin-top: 24px; + padding-top: 20px; + border-top: 1px solid #dcdcde; +} +.wpvulnerability-notifications-panel .wpvulnerability-forced-badge { + display: inline-block; + background: #f0c33c; + color: #1d2327; + font-size: 11px; + padding: 2px 6px; + border-radius: 3px; + font-weight: 600; + margin-left: 8px; +} + +/* ================================================== + Analysis Panel + ================================================== */ +.wpvulnerability-analysis-panel .wpvulnerability-security-section { + background: #fff; + border: 1px solid #c3c4c7; + border-radius: 4px; + padding: 24px; + margin-bottom: 24px; +} +.wpvulnerability-analysis-panel .wpvulnerability-security-section h3 { + margin-top: 0; + margin-bottom: 20px; + font-size: 16px; + font-weight: 600; + color: #1d2327; + border-bottom: 2px solid #2271b1; + padding-bottom: 8px; +} +.wpvulnerability-analysis-panel .wpvulnerability-intro { + background: #f0f6fc; + border-left: 4px solid #2271b1; + padding: 16px; + margin-bottom: 24px; + border-radius: 2px; +} +.wpvulnerability-analysis-panel .wpvulnerability-intro p { + margin: 0 0 8px 0; + color: #1d2327; + line-height: 1.6; +} +.wpvulnerability-analysis-panel .wpvulnerability-intro p:last-child { + margin-bottom: 0; +} +.wpvulnerability-analysis-panel .wpvulnerability-category { + margin-bottom: 32px; +} +.wpvulnerability-analysis-panel .wpvulnerability-category:last-child { + margin-bottom: 0; +} +.wpvulnerability-analysis-panel .wpvulnerability-category-title { + font-size: 15px; + font-weight: 600; + color: #1d2327; + margin-bottom: 16px; + padding-bottom: 8px; + border-bottom: 1px solid #dcdcde; +} +.wpvulnerability-analysis-panel .wpvulnerability-components-grid { + display: grid; + grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); + gap: 16px; +} +.wpvulnerability-analysis-panel .wpvulnerability-component-card { + background: #f6f7f7; + border: 2px solid #dcdcde; + border-radius: 4px; + padding: 16px; + transition: all 0.2s ease; + cursor: pointer; + position: relative; +} +.wpvulnerability-analysis-panel .wpvulnerability-component-card:hover { + border-color: #2271b1; + box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08); +} +.wpvulnerability-analysis-panel .wpvulnerability-component-card.wpvulnerability-checked { + background: #e8f4f8; + border-color: #2271b1; +} +.wpvulnerability-analysis-panel .wpvulnerability-component-card.wpvulnerability-disabled { + opacity: 0.6; + cursor: not-allowed; + background: #f9f9f9; +} +.wpvulnerability-analysis-panel .wpvulnerability-component-card label { + display: flex; + align-items: center; + cursor: pointer; + margin: 0; +} +.wpvulnerability-analysis-panel .wpvulnerability-component-card.wpvulnerability-disabled label { + cursor: not-allowed; +} +.wpvulnerability-analysis-panel .wpvulnerability-component-icon { + font-size: 28px; + margin-right: 12px; + line-height: 1; +} +.wpvulnerability-analysis-panel .wpvulnerability-component-content { + flex: 1; +} +.wpvulnerability-analysis-panel .wpvulnerability-component-label { + font-size: 14px; + font-weight: 600; + color: #1d2327; + display: block; + margin-bottom: 2px; +} +.wpvulnerability-analysis-panel .wpvulnerability-component-status { + font-size: 12px; + color: #646970; +} +.wpvulnerability-analysis-panel .wpvulnerability-component-card input[type="checkbox"] { + margin: 0; + width: 20px; + height: 20px; + flex-shrink: 0; +} +.wpvulnerability-analysis-panel .wpvulnerability-forced-badge { + display: inline-block; + background: #f0c33c; + color: #1d2327; + font-size: 11px; + padding: 2px 6px; + border-radius: 3px; + font-weight: 600; + margin-left: 8px; +} +.wpvulnerability-analysis-panel .wpvulnerability-info-box { + background: #fff3cd; + border-left: 4px solid #f0c33c; + padding: 12px 16px; + margin-top: 20px; + border-radius: 2px; +} +.wpvulnerability-analysis-panel .wpvulnerability-info-box p { + margin: 0; + color: #1d2327; + font-size: 13px; + line-height: 1.6; +} +.wpvulnerability-analysis-panel .wpvulnerability-save-section { + margin-top: 24px; + padding-top: 20px; + border-top: 1px solid #dcdcde; +} +.wpvulnerability-analysis-panel .wpvulnerability-status-badge { + display: inline-block; + padding: 4px 10px; + border-radius: 3px; + font-size: 12px; + font-weight: 500; + line-height: 1.4; +} +.wpvulnerability-analysis-panel .wpvulnerability-status-badge.wpvulnerability-status-active { + background: #d5f5e3; + color: #00771a; + border: 1px solid #b0e6c8; +} +.wpvulnerability-analysis-panel .wpvulnerability-status-badge.wpvulnerability-status-hidden { + background: #fce8e8; + color: #b32d2e; + border: 1px solid #f0b8b8; +} + +/* ================================================== + Logs Panel + ================================================== */ +.wpvulnerability-logs-panel .wpvulnerability-security-section { + background: #fff; + border: 1px solid #c3c4c7; + border-radius: 4px; + padding: 24px; + margin-bottom: 24px; +} +.wpvulnerability-logs-panel .wpvulnerability-security-section h3 { + margin-top: 0; + margin-bottom: 16px; + font-size: 16px; + font-weight: 600; + color: #1d2327; + border-bottom: 2px solid #2271b1; + padding-bottom: 8px; +} +.wpvulnerability-logs-panel .wpvulnerability-stats-row { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); + gap: 16px; + margin-bottom: 24px; +} +.wpvulnerability-logs-panel .wpvulnerability-stat-card { + background: #f6f7f7; + border: 1px solid #dcdcde; + border-radius: 4px; + padding: 16px; + text-align: center; +} +.wpvulnerability-logs-panel .wpvulnerability-stat-card .wpvulnerability-stat-label { + font-size: 12px; + color: #646970; + margin-bottom: 8px; + text-transform: uppercase; + letter-spacing: 0.5px; + font-weight: 500; +} +.wpvulnerability-logs-panel .wpvulnerability-stat-card .wpvulnerability-stat-value { + font-size: 28px; + font-weight: 600; + color: #2271b1; +} +.wpvulnerability-logs-panel .wpvulnerability-config-form { + background: #f6f7f7; + border: 1px solid #dcdcde; + border-radius: 4px; + padding: 20px; +} +.wpvulnerability-logs-panel .wpvulnerability-config-form label { + display: block; + font-weight: 600; + margin-bottom: 8px; + color: #1d2327; +} +.wpvulnerability-logs-panel .wpvulnerability-config-form select { + width: 100%; + max-width: 300px; +} +.wpvulnerability-logs-panel .wpvulnerability-config-form .description { + margin-top: 8px; + font-size: 13px; + color: #646970; +} +.wpvulnerability-logs-panel .wpvulnerability-logs-table { + width: 100%; + border-collapse: separate; + border-spacing: 0; + background: #fff; + border: 1px solid #c3c4c7; + border-radius: 4px; + overflow: hidden; +} +.wpvulnerability-logs-panel .wpvulnerability-logs-table thead { + background: #f6f7f7; +} +.wpvulnerability-logs-panel .wpvulnerability-logs-table th { + padding: 12px 16px; + text-align: left; + font-weight: 600; + color: #1d2327; + border-bottom: 2px solid #c3c4c7; +} +.wpvulnerability-logs-panel .wpvulnerability-logs-table td { + padding: 12px 16px; + border-bottom: 1px solid #dcdcde; +} +.wpvulnerability-logs-panel .wpvulnerability-logs-table tbody tr:hover { + background: #f6f7f7; +} +.wpvulnerability-logs-panel .wpvulnerability-logs-table tbody tr:last-child td { + border-bottom: none; +} +.wpvulnerability-logs-panel .wpvulnerability-log-url { + font-family: 'Courier New', monospace; + font-size: 13px; + color: #2271b1; +} +.wpvulnerability-logs-panel .wpvulnerability-log-date { + color: #646970; + font-size: 13px; +} +.wpvulnerability-logs-panel .wpvulnerability-toolbar { + display: flex; + justify-content: space-between; + align-items: center; + margin-bottom: 16px; + padding: 12px; + background: #f6f7f7; + border: 1px solid #dcdcde; + border-radius: 4px; +} +.wpvulnerability-logs-panel .wpvulnerability-toolbar-left { + display: flex; + align-items: center; + gap: 8px; +} +.wpvulnerability-logs-panel .wpvulnerability-toolbar-right { + display: flex; + align-items: center; +} +/* Pagination for Logs Panel */ +.wpvulnerability-logs-panel .wpvulnerability-pagination { + margin-top: 16px; + text-align: center; +} +.wpvulnerability-logs-panel .wpvulnerability-pagination .page-numbers { + display: inline-flex; + align-items: center; + justify-content: center; + margin: 0; + padding: 0; + list-style: none; + gap: 4px; +} +.wpvulnerability-logs-panel .wpvulnerability-pagination .page-numbers li { + margin: 0; +} +.wpvulnerability-logs-panel .wpvulnerability-pagination .page-numbers a, +.wpvulnerability-logs-panel .wpvulnerability-pagination .page-numbers span { + display: inline-block; + padding: 6px 12px; + background: #fff; + border: 1px solid #c3c4c7; + border-radius: 3px; + color: #2271b1; + text-decoration: none; + transition: all 0.2s ease; + font-size: 13px; + line-height: 1.4; +} +.wpvulnerability-logs-panel .wpvulnerability-pagination .page-numbers a:hover { + background: #f6f7f7; + border-color: #2271b1; +} +.wpvulnerability-logs-panel .wpvulnerability-pagination .page-numbers .current { + background: #2271b1; + color: #fff; + border-color: #2271b1; +} +.wpvulnerability-logs-panel .wpvulnerability-pagination .page-numbers .dots { + border: none; + background: transparent; +} + background: #fff; + border: 1px solid #c3c4c7; + border-radius: 4px; + padding: 24px; +} +.wpvulnerability-logs-panel .wpvulnerability-log-detail h3 { + margin-top: 0; + margin-bottom: 20px; + font-size: 18px; + color: #1d2327; + border-bottom: 2px solid #2271b1; + padding-bottom: 8px; +} +.wpvulnerability-logs-panel .wpvulnerability-log-detail .wpvulnerability-log-meta { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); + gap: 16px; + margin-bottom: 24px; +} +.wpvulnerability-logs-panel .wpvulnerability-log-detail .wpvulnerability-log-meta-item { + background: #f6f7f7; + padding: 12px; + border-radius: 4px; +} +.wpvulnerability-logs-panel .wpvulnerability-log-detail .wpvulnerability-log-meta-label { + font-size: 12px; + color: #646970; + text-transform: uppercase; + letter-spacing: 0.5px; + margin-bottom: 4px; +} +.wpvulnerability-logs-panel .wpvulnerability-log-detail .wpvulnerability-log-meta-value { + font-family: 'Courier New', monospace; + font-size: 13px; + color: #1d2327; + word-break: break-all; +} +.wpvulnerability-logs-panel .wpvulnerability-log-detail pre { + background: #1e1e1e; + color: #d4d4d4; + padding: 16px; + border-radius: 4px; + overflow-x: auto; + font-size: 13px; + line-height: 1.6; +} +.wpvulnerability-logs-panel .wpvulnerability-log-detail pre code { + color: inherit; + background: none; + padding: 0; +} +.wpvulnerability-logs-panel .wpvulnerability-empty-state { + text-align: center; + padding: 60px 20px; + color: #646970; +} +.wpvulnerability-logs-panel .wpvulnerability-empty-state-icon { + font-size: 64px; + margin-bottom: 16px; + opacity: 0.3; +} +.wpvulnerability-logs-panel .wpvulnerability-empty-state h3 { + margin: 0 0 8px 0; + font-size: 18px; + color: #1d2327; +} +.wpvulnerability-logs-panel .wpvulnerability-empty-state p { + margin: 0; + font-size: 14px; +} +.wpvulnerability-logs-panel .wpvulnerability-info-box { + background: #f0f6fc; + border-left: 4px solid #2271b1; + padding: 12px 16px; + margin-bottom: 20px; + border-radius: 2px; +} +.wpvulnerability-logs-panel .wpvulnerability-info-box p { + margin: 0; + color: #1d2327; + font-size: 13px; +} +.wpvulnerability-logs-panel .wpvulnerability-danger-zone { + background: #fef7f1; + border: 1px solid #f0c33c; + border-radius: 4px; + padding: 16px; + margin-top: 24px; +} +.wpvulnerability-logs-panel .wpvulnerability-danger-zone h4 { + margin: 0 0 12px 0; + color: #b32d2e; + font-size: 14px; +} + +/* ================================================== + Tools Panel + ================================================== */ +.wpvulnerability-tools-panel .wpvulnerability-tool-card { + background: #fff; + border: 1px solid #c3c4c7; + border-radius: 4px; + padding: 24px; + margin-bottom: 24px; +} +.wpvulnerability-tools-panel .wpvulnerability-tool-card h3 { + margin-top: 0; + margin-bottom: 16px; + font-size: 16px; + font-weight: 600; + color: #1d2327; + border-bottom: 2px solid #2271b1; + padding-bottom: 8px; + display: flex; + align-items: center; + gap: 8px; +} +.wpvulnerability-tools-panel .wpvulnerability-tool-card h3 .wpvulnerability-tool-icon { + font-size: 20px; +} +.wpvulnerability-tools-panel .wpvulnerability-tool-description { + margin-bottom: 16px; + color: #646970; + line-height: 1.6; +} +.wpvulnerability-tools-panel .wpvulnerability-info-box { + background: #f0f6fc; + border-left: 4px solid #2271b1; + padding: 12px 16px; + margin-bottom: 16px; + border-radius: 2px; +} +.wpvulnerability-tools-panel .wpvulnerability-info-box p { + margin: 0; + color: #1d2327; + font-size: 13px; +} +.wpvulnerability-tools-panel .wpvulnerability-info-box code { + background: #fff; + padding: 2px 6px; + border-radius: 3px; + font-size: 12px; +} +.wpvulnerability-tools-panel .wpvulnerability-cron-table { + width: 100%; + border-collapse: separate; + border-spacing: 0; + background: #fff; + border: 1px solid #c3c4c7; + border-radius: 4px; + overflow: hidden; + margin-bottom: 16px; +} +.wpvulnerability-tools-panel .wpvulnerability-cron-table thead { + background: #f6f7f7; +} +.wpvulnerability-tools-panel .wpvulnerability-cron-table th { + padding: 12px 16px; + text-align: left; + font-weight: 600; + color: #1d2327; + border-bottom: 2px solid #c3c4c7; + font-size: 13px; +} +.wpvulnerability-tools-panel .wpvulnerability-cron-table td { + padding: 12px 16px; + border-bottom: 1px solid #dcdcde; + font-size: 13px; +} +.wpvulnerability-tools-panel .wpvulnerability-cron-table tbody tr:hover { + background: #f6f7f7; +} +.wpvulnerability-tools-panel .wpvulnerability-cron-table tbody tr:last-child td { + border-bottom: none; +} +.wpvulnerability-tools-panel .wpvulnerability-cron-table code { + font-size: 12px; + color: #2271b1; +} +.wpvulnerability-tools-panel .wpvulnerability-status-badge { + display: inline-block; + padding: 3px 8px; + border-radius: 3px; + font-size: 12px; + font-weight: 500; +} +.wpvulnerability-tools-panel .wpvulnerability-status-badge.success { + background: #d5f5e3; + color: #00771a; +} +.wpvulnerability-tools-panel .wpvulnerability-status-badge.warning { + background: #fff3cd; + color: #856404; +} +.wpvulnerability-tools-panel .wpvulnerability-status-badge.error { + background: #ffd8d8; + color: #b32d2e; +} +.wpvulnerability-tools-panel .wpvulnerability-danger-zone { + background: #fef7f1; + border: 1px solid #f0c33c; + border-radius: 4px; + padding: 20px; +} +.wpvulnerability-tools-panel .wpvulnerability-danger-zone h4 { + margin: 0 0 12px 0; + color: #b32d2e; + font-size: 14px; + font-weight: 600; +} +.wpvulnerability-tools-panel .wpvulnerability-unexpected-list { + background: #fff3cd; + border: 1px solid #f0c33c; + border-radius: 4px; + padding: 16px; + margin: 16px 0; +} +.wpvulnerability-tools-panel .wpvulnerability-unexpected-list h4 { + margin: 0 0 12px 0; + color: #856404; + font-size: 14px; +} +.wpvulnerability-tools-panel .wpvulnerability-unexpected-list ul { + margin: 0; + padding-left: 20px; +} +.wpvulnerability-tools-panel .wpvulnerability-unexpected-list li { + margin-bottom: 8px; + color: #646970; +} +.wpvulnerability-tools-panel .wpvulnerability-tool-actions { + margin-top: 16px; +} + +/* ================================================== + About Panel + ================================================== */ +.wpvulnerability-about-panel .wpvulnerability-security-section { + background: #fff; + border: 1px solid #c3c4c7; + border-radius: 4px; + padding: 24px; + margin-bottom: 24px; +} +.wpvulnerability-about-panel .wpvulnerability-security-section h3 { + margin-top: 0; + margin-bottom: 16px; + font-size: 16px; + font-weight: 600; + color: #1d2327; + border-bottom: 2px solid #2271b1; + padding-bottom: 8px; +} +.wpvulnerability-about-panel .wpvulnerability-stats-grid { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); + gap: 20px; + margin-top: 20px; +} +.wpvulnerability-about-panel .wpvulnerability-stat-card { + background: #f6f7f7; + border: 1px solid #dcdcde; + border-radius: 4px; + padding: 16px; + transition: all 0.2s ease; +} +.wpvulnerability-about-panel .wpvulnerability-stat-card:hover { + border-color: #2271b1; + box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08); +} +.wpvulnerability-about-panel .wpvulnerability-stat-card .wpvulnerability-stat-label { + font-size: 13px; + color: #646970; + margin-bottom: 8px; + font-weight: 500; + text-transform: uppercase; + letter-spacing: 0.5px; +} +.wpvulnerability-about-panel .wpvulnerability-stat-card .wpvulnerability-stat-value { + font-size: 24px; + font-weight: 600; + color: #1d2327; + margin-bottom: 4px; +} +.wpvulnerability-about-panel .wpvulnerability-stat-card .wpvulnerability-stat-meta { + font-size: 12px; + color: #787c82; +} +.wpvulnerability-about-panel .wpvulnerability-stat-card.wpvulnerability-no-data { + opacity: 0.6; +} +.wpvulnerability-about-panel .wpvulnerability-stat-card.wpvulnerability-no-data .wpvulnerability-stat-value { + color: #8c8f94; + font-size: 14px; + font-weight: 400; +} +.wpvulnerability-about-panel .wpvulnerability-people-grid { + display: grid; + grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); + gap: 16px; + margin-top: 16px; +} +.wpvulnerability-about-panel .wpvulnerability-person-card { + background: #f6f7f7; + border: 1px solid #dcdcde; + border-radius: 4px; + padding: 16px; + display: flex; + align-items: center; + transition: all 0.2s ease; +} +.wpvulnerability-about-panel .wpvulnerability-person-card:hover { + border-color: #2271b1; + box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08); + transform: translateY(-2px); +} +.wpvulnerability-about-panel .wpvulnerability-person-card img { + width: 48px; + height: 48px; + border-radius: 50%; + margin-right: 12px; + border: 2px solid #fff; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); +} +.wpvulnerability-about-panel .wpvulnerability-person-card a { + font-weight: 500; + color: #2271b1; + text-decoration: none; + font-size: 14px; +} +.wpvulnerability-about-panel .wpvulnerability-person-card a:hover { + color: #135e96; + text-decoration: underline; +} +.wpvulnerability-about-panel .wpvulnerability-info-box { + background: #f0f6fc; + border-left: 4px solid #2271b1; + padding: 12px 16px; + margin-top: 20px; + border-radius: 2px; +} +.wpvulnerability-about-panel .wpvulnerability-info-box p { + margin: 0; + color: #1d2327; + font-size: 13px; + line-height: 1.6; +} +.wpvulnerability-about-panel .wpvulnerability-empty-state { + text-align: center; + padding: 40px 20px; + color: #646970; +} +.wpvulnerability-about-panel .wpvulnerability-empty-state-icon { + font-size: 48px; + margin-bottom: 12px; + opacity: 0.5; +} + +/* ================================================== + Dashboard Widget + ================================================== */ + .wpvuln-status-badge { +display: inline-block; +padding: 8px 14px; +border-radius: 4px; +font-weight: 600; +font-size: 13px; +margin-bottom: 12px; +line-height: 1.4; + } + .wpvuln-status-secure { background: #00a32a; color: #fff; } + .wpvuln-status-warning { background: #dba617; color: #fff; } + .wpvuln-status-critical { background: #d63638; color: #fff; } + .wpvuln-meta { +font-size: 12px; +color: #646970; +margin-bottom: 14px; +padding-bottom: 12px; +border-bottom: 1px solid #f0f0f1; + } + .wpvuln-refresh-btn { +font-size: 12px; +text-decoration: none; +color: #2271b1; + } + .wpvuln-refresh-btn:hover { color: #135e96; } + .wpvuln-section-title { +font-weight: 600; +font-size: 13px; +margin: 16px 0 10px; +padding-bottom: 6px; +border-bottom: 2px solid #f0f0f1; +color: #1d2327; + } + .wpvuln-component { +display: flex; +align-items: center; +padding: 6px 0; +font-size: 13px; +line-height: 1.5; + } + .wpvuln-component img { +margin-right: 8px; +vertical-align: middle; + } + .wpvuln-component-name { +flex: 1; +font-weight: 500; + } + .wpvuln-badge { +display: inline-block; +padding: 2px 8px; +border-radius: 3px; +font-size: 12px; +font-weight: 600; +margin-left: 8px; + } + .wpvuln-badge-secure { background: #d7f3e0; color: #00701a; } + .wpvuln-badge-warning { background: #fcf4db; color: #8a6116; } + .wpvuln-badge-critical { background: #fce2e3; color: #9b1c1f; } + .wpvuln-badge-eol { background: #8a4400; color: #fff; } + .wpvuln-grid { +display: grid; +grid-template-columns: 1fr 1fr; +gap: 8px; +margin: 8px 0; + } + .wpvuln-empty-state { +text-align: center; +padding: 24px 12px; +background: #d7f3e0; +border-radius: 4px; +margin: 12px 0; + } + .wpvuln-empty-state-icon { +font-size: 32px; +line-height: 1; +margin-bottom: 8px; + } + .wpvuln-empty-state-title { +font-weight: 600; +font-size: 14px; +color: #00701a; +margin-bottom: 4px; + } + .wpvuln-empty-state-text { +font-size: 12px; +color: #1d6d2b; + } + .wpvuln-plugin-list { +font-size: 12px; +color: #646970; +margin-left: 24px; +margin-top: 4px; + } + .wpvuln-footer { +margin-top: 16px; +padding-top: 12px; +border-top: 1px solid #dcdcde; +font-size: 13px; + } + +/* ================================================== + Security Panel + ================================================== */ +.wpvulnerability-security-panel h2 { + margin-top: 0; + padding-top: 0; +} +.wpvulnerability-security-section { + background: #fff; + border: 1px solid #c3c4c7; + border-radius: 4px; + padding: 20px; + margin-bottom: 20px; +} +.wpvulnerability-security-section h3 { + margin-top: 0; + border-bottom: 1px solid #c3c4c7; + padding-bottom: 10px; +} +.wpvulnerability-status-grid { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); + gap: 15px; + margin: 15px 0; +} +.wpvulnerability-status-item { + padding: 10px; + background: #f6f7f7; + border-radius: 3px; +} +.wpvulnerability-status-item strong { + display: block; + margin-bottom: 5px; + color: #1d2327; +} +.wpvulnerability-status-badge { + display: inline-block; + padding: 2px 8px; + border-radius: 3px; + font-size: 12px; + font-weight: 600; +} +.wpvulnerability-status-badge.success { + background: #00a32a; + color: #fff; +} +.wpvulnerability-status-badge.warning { + background: #dba617; + color: #fff; +} +.wpvulnerability-status-badge.disabled { + background: #646970; + color: #fff; +} +.wpvulnerability-detection-table { + width: 100%; + border-collapse: collapse; + margin: 15px 0; +} +.wpvulnerability-detection-table th, +.wpvulnerability-detection-table td { + padding: 12px; + text-align: left; + border-bottom: 1px solid #c3c4c7; +} +.wpvulnerability-detection-table th { + background: #f6f7f7; + font-weight: 600; +} +.wpvulnerability-detection-table tr:last-child td { + border-bottom: none; +} +.wpvulnerability-reliability-bar { + display: inline-block; + width: 100px; + height: 18px; + background: #e0e0e0; + border-radius: 3px; + overflow: hidden; + vertical-align: middle; + margin-right: 8px; +} +.wpvulnerability-reliability-fill { + display: block; + height: 100%; + background: linear-gradient(90deg, #00a32a 0%, #4ab866 100%); + transition: width 0.3s ease; +} +.wpvulnerability-reliability-fill.medium { + background: linear-gradient(90deg, #dba617 0%, #f0b849 100%); +} +.wpvulnerability-reliability-fill.low { + background: linear-gradient(90deg, #d63638 0%, #e65054 100%); +} +.wpvulnerability-logs-table { + width: 100%; + border-collapse: collapse; + margin: 15px 0; + font-size: 13px; +} +.wpvulnerability-logs-table th, +.wpvulnerability-logs-table td { + padding: 10px; + text-align: left; + border-bottom: 1px solid #c3c4c7; +} +.wpvulnerability-logs-table th { + background: #f6f7f7; + font-weight: 600; + position: sticky; + top: 0; +} +.wpvulnerability-logs-table code { + background: #f6f7f7; + padding: 2px 6px; + border-radius: 3px; + font-size: 12px; +} +.wpvulnerability-log-output { + max-width: 300px; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} +.wpvulnerability-log-output:hover { + white-space: normal; + word-break: break-all; +} +.wpvulnerability-empty-state { + text-align: center; + padding: 40px; + color: #646970; +} +.wpvulnerability-empty-state-icon { + font-size: 48px; + margin-bottom: 10px; + opacity: 0.3; +} +.wpvulnerability-info-box { + background: #f0f6fc; + border-left: 4px solid #2271b1; + padding: 12px 16px; + margin: 15px 0; +} +.wpvulnerability-info-box p { + margin: 0; +} + +/* ── Vulnerability display components (5.1.0) ──────────────────── */ + +/* Source provider pills — Bootstrap-badge inspired */ +.wpvuln-source-pills { + display: flex; + flex-wrap: wrap; + gap: 4px; + margin: 6px 0 0; +} +.wpvuln-source-pill { + display: inline-block; + padding: .35em .65em; + font-size: .75em; + font-weight: 700; + line-height: 1; + text-align: center; + white-space: nowrap; + vertical-align: baseline; + border-radius: .375rem; + text-decoration: none; +} +.wpvuln-source-pill:hover { + background: #000 !important; + color: #fff !important; + opacity: 1; + text-decoration: none; +} +/* All source pills share the same dark-grey tone */ +.wpvuln-source-wordfence, +.wpvuln-source-patchstack, +.wpvuln-source-cve, +.wpvuln-source-euvd, +.wpvuln-source-jvn, +.wpvuln-source-wpscan, +.wpvuln-source-default { background: #50575e; color: #fff; } + +/* "References:" row — label + pills on the same line */ +.wpvuln-refs-row { + display: flex; + align-items: center; + gap: 6px; + margin-top: 5px; +} +.wpvuln-refs-label { + font-size: 0.8em; + font-weight: 600; + color: #50575e; + white-space: nowrap; + flex-shrink: 0; +} +.wpvuln-refs-row .wpvuln-source-pills { + margin: 0; +} + +/* CVSS score + severity badge */ +.wpvuln-score-badge { + display: inline-block; + padding: 3px 10px; + border-radius: 4px; + font-size: 0.85em; + font-weight: 700; +} +.wpvuln-score-critical { background: #b32d2e; color: #fff; } +.wpvuln-score-high { background: #d54e21; color: #fff; } +.wpvuln-score-medium { background: #f0b429; color: #3d2400; } +.wpvuln-score-low { background: #00771a; color: #fff; } +.wpvuln-score-none { background: #646970; color: #fff; } + +/* Exploitation / automation risk badges */ +.wpvuln-poc-label, +.wpvuln-auto-label { + display: inline-flex; + align-items: center; + gap: 4px; + padding: 3px 8px; + border-radius: 4px; + font-size: 0.78em; + font-weight: 700; + text-transform: uppercase; + letter-spacing: 0.04em; +} +.wpvuln-poc-label { background: #d97706; color: #fff; } /* amber — public exploit */ +.wpvuln-auto-label { background: #6c757d; color: #fff; } /* grey — automatable */ + +/* EPSS exploitation probability badge */ +.wpvuln-epss-badge { + display: inline-block; + padding: 3px 8px; + border-radius: 4px; + background: #f0f0f1; + color: #1d2327; + border: 1px solid #c3c4c7; + font-size: 0.78em; + font-weight: 600; +} + +/* KEV inline label */ +.wpvuln-kev-label { + display: inline-flex; + align-items: center; + gap: 4px; + padding: 3px 8px; + border-radius: 4px; + background: #b32d2e; + color: #fff; + font-size: 0.78em; + font-weight: 700; + text-transform: uppercase; + letter-spacing: 0.04em; +} + +/* Affected version range */ +.wpvuln-versions { + display: inline-block; + font-family: 'Courier New', monospace; + background: #f0f0f1; + border: 1px solid #c3c4c7; + padding: 1px 6px; + border-radius: 3px; + font-size: 0.9em; + white-space: nowrap; + color: #1d2327; +} + +/* Component icon in section headers */ +.wpvuln-component-icon { + width: 16px; + height: 16px; + vertical-align: middle; + margin-right: 4px; + display: inline-block; +} diff --git a/assets/admin.js b/assets/admin.js new file mode 100644 index 0000000..71afe17 --- /dev/null +++ b/assets/admin.js @@ -0,0 +1,93 @@ +/** + * WPvulnerability admin scripts. + * + * @package WPVulnerability + */ + +if ( typeof jQuery !== 'undefined' ) { + jQuery( document ).on( + 'wp-plugin-update-success', + function ( event, args ) { + jQuery( 'tr[data-plugin="' + args.plugin + '"]' ).nextAll( '.wpvulnerability' ).first().remove(); + } + ); +} + +document.addEventListener( + 'DOMContentLoaded', + function () { + var periodRadios = document.querySelectorAll( 'input[name="wpvulnerability-config[period]"]' ); + var dayWrap = document.getElementById( 'wpvulnerability_day_wrap' ); + var timeWrap = document.getElementById( 'wpvulnerability_time_wrap' ); + + if ( ! periodRadios.length || ! dayWrap || ! timeWrap ) { + return; + } + + function toggleFields() { + var checked = document.querySelector( 'input[name="wpvulnerability-config[period]"]:checked' ); + var value = checked ? checked.value : null; + + if ( value === 'daily' ) { + dayWrap.style.display = 'none'; + timeWrap.style.display = ''; + } else if ( value === 'weekly' ) { + dayWrap.style.display = ''; + timeWrap.style.display = ''; + } else { + dayWrap.style.display = 'none'; + timeWrap.style.display = 'none'; + } + } + + toggleFields(); + periodRadios.forEach( + function ( radio ) { + radio.addEventListener( 'change', toggleFields ); + } + ); + + var notifyOptions = [ + { + checkboxSelector: 'input[name="wpvulnerability-config[notify][email]"]', + fieldId: 'wpvulnerability_emails', + }, + { + checkboxSelector: 'input[name="wpvulnerability-config[notify][slack]"]', + fieldId: 'wpvulnerability_slack_webhook', + }, + { + checkboxSelector: 'input[name="wpvulnerability-config[notify][teams]"]', + fieldId: 'wpvulnerability_teams_webhook', + }, + ]; + + function toggleRow( checkbox, row ) { + if ( ! checkbox || ! row ) { + return; + } + + row.style.display = checkbox.checked ? '' : 'none'; + } + + notifyOptions.forEach( + function ( option ) { + var checkbox = document.querySelector( option.checkboxSelector ); + var row = document.getElementById( option.fieldId ); + row = row ? row.closest( 'tr' ) : null; + + toggleRow( checkbox, row ); + + if ( checkbox ) { + checkbox.addEventListener( + 'change', + function () { + toggleRow( checkbox, row ); + } + ); + } + } + ); + + } +); diff --git a/assets/banner-1544x500.png b/assets/banner-1544x500.png new file mode 100644 index 0000000000000000000000000000000000000000..851921d8ec7ebd7d7ca7551c2d105f7d3a2f7597 GIT binary patch literal 53058 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 literal 0 HcmV?d00001 diff --git a/assets/banner-772x250.png b/assets/banner-772x250.png new file mode 100644 index 0000000000000000000000000000000000000000..c73c40bbc0e6f48a8175976fdcb85c41029b71fe GIT binary patch literal 21452 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�Y>PXl&JED@ z0?X?c^;}}H%w@r(Qzr`@3)>H+tmMi7KdO%GlPI!hv48D3%g{rBghaHcC1#zBG(>ED4lq~}Bo~)kAcQ2bO?R2e zh(^6Be;XIOO=B`Jum?1%&-a%q2MGHUU|7mG7u?EV(;`;$l9Y(eWl^*{uJ!$-$_JIo zYot#EIhKc4pmDYgFpe+XF`{abu#7BOr!IIkfofT?gu!)uy^PJD3&iZV3(C;eIN98n2mFHi}-+M{UmJG@A1EU8fw6 zQsUsI!m;hIg2^UVjWpA9f%`94rnt^FK%WEZ^YtR&f%JvhrrWMLqAupfzFq-dkvh*t zP<>4QBrI^D1NhS(YEo}#^R8;cjiLZmYI92#xvgdyXVC?31~*dsMi&vG`%sVTQTex5 z7x|hCoZ8`uW|eI~biQe3$TfvK_hsohrYp5=)@C8=;D+2esz&!-^848zGfIsqQYBun zIyq%qshib`BODq4o=}zV(hn^Hqk$5_;H|F=6%RLG>`ciOhJuFpi}@g*TxlAm!=mn9 z=0Ey8=cP)t_;WqfVFo1brQKk;={{}=AE0GBOfoE9uq|_hp%yL92_lQVFT~KrDNlcI z=MLVcyHO`*@9^lxiJj5=lx@HC^sAT3wlWF7uV)fbeShU9bx3?LZF`&C zl&Afr?FU<`BvBtfkmb5Bk7^E1_}f{h8WPGpnHBmH{6Ur<<93h!235^K6d(Oq~F3IHDPFTG9F-Q7kFrUy>m?*%% z8N-B4QjmE>F(Y!$=pG*b&bm_-wsH)x}#S_=FQGzM6c>=(F5la-u zY#B*c44N#iVL!}~fP!QY8P6p5;)=DjdTeEeHM$?0Y~Wc>)jFBestI7iS{PjSUqqZ) zaoc_%cb;I$2~8SnS26CtQQ=yVm$1%O@2WR)v}h$hUk?@rmQyZAQ}^Qzi~IGV)f?aX z3V3DOFX2euOJMB&Z$~u^q@*?6+hi7uP_eyLi+ob;FeQ*bPoGn@-FW4)M$VOo zfj7V0A~t(Arer~m+Yi=4Dw9r}ZB&Kg7w^o`A8w%M`~Hm|j*PSjobNH2f= z?D7#zrFttwYk(QzJRbgBTIC6V&Z@htr`4fJ!Rx+gYoISfj5FIX(O(jxNr3kCOTq9u z4R%aMInnChw{7_zb^RTqis?TQ6d`y&2BuoIG2URjpzGbW!?_N9)y#t%SZD1SOaVWZ zvOYE=E&<}s6Cc>V>-p;84o5W3+DFZ|2ae~@VVUxzg&6nlcb?1tAo~q79bqN6xpj|JaC-)! zac1n*U;Zr`bDuL4JlmBg3RR3=`||32FxfF|JG1Zqc7R1U4Nd!L0lVC{n7ubGk@$PH zyLy9cKK4B7MgDN+vXZ||i}c}-1BMDq(Ff(~#kkRX{npaI=uEHroR?J){WDc)rz;u0 z+&5aQ?<_332|un$&HD2%Rw^)cVy*nu`?X^s-8+DnZN3}Wv|s-N`;M^KAV|C`764%L z4brv2j|9#m8&+A6&qG_uGw|TngTsXJ zP~%j3hKSnigCwtknXn$0^J6a^eRplaiZz+mVR2;vNbfO}XZVIFGh%4{FXf|+q??N% zqVbI{UWKv%Cmxhrfk!91?0Ik{EY-Jlgci^~g1YRV3o`ttl5HO`$U+JWJ+*np>IPcR zz>Wa%Qub^gGcG{PpYeR2Ao74XmuRCs**$gG#ng_ zIF(tYX{+C0AJ6 z2Q=3CLzsVNokq(ok6~tBf#wqQYrK~!|IwxXE4h4Uq7A;5fFA_;2zDi%l5oc5iC%|` z^Nm-GRYUtm8CC|H#Ut(u*^U;wu5ba?L^ZagPB2R6stkW_)>a@F#c{_TI-XscUeQgo z!p@`^>SR||OdGgB{A2lpKmUzl{tbBjDM)5bv`IEfIkNr*(tV?edW%q(Uvk>p89WTg*50^TRs5VVGzh5{%~nGwCi-<2n(QQ~thVa1SEjr; z0>}wggm!gqjgTc0h#o^}^U;X`XEoNQgEKPOWm~$d+6Ha^1-=AoGxUW|hSb%tOD!!8 zj$nLI{R!$Db(z)sk@zGquOo5<3wKhmull}x4%iq2@b_5dO3~F;kb>Hp2>FG)=Ok)v z_H`zidWrsm?n@l=LvIEyuUycX%(7+QiKa|U8$9<>H^6w_{C$tIl0EtyhtID^F=d(R z6iS7ZcOI$_aRJ!C(#$blm$(o@4LvTv^ zSrD=+AJdwR?|GGFJF96>(mHKmq0jmEhCZkMTf3RW5>%4>Q>lmZk*wJ6UjrKWRq8`R znL!o}J#JXrEsKSm*%gxbXR5_B*#lo)AIRjKjw9C03Ht3BhMXLFL%q}O@+9ruFNxS| zCM`}Ct%>e)pFbag+h-_@n^Q$pJ%?+fm{|d)u=Nx-r%VWQQLp9x>&OEnL*m)&s>{ES zN}P19UfHZWGKXzg(ylu|+J7|^S8f&QfWvgVI6rNq4oe(_uQs>9bu{I>s`ZJTKAK;`pF5Y~c58fL00Z|qNL-KPS)vB--pxpjNTV=`yiPGAWz z{`U>U?27W|n0GE?tE!*m>8_OFEV{vDs#}NL37C=5ilr$aafQ~ejKu}Vr#bA&jCu5{ zRH-eP4*n83QLk?(^VU-Mzic%ggPToMJTt!SZ-lnn1jjhQ!3yZu0tP?S@MauWrJ3vj z5}J{-p28PUq%mc+O=@}C;3pa?MkE^=kZ^YxkYYOhbt@@q1t9=|I& z{{}4%eF3Xarc{*ijl>@g*K+efsB@muPG|D&6TT9W{r1w1m=1PNro^1r#T$LbD%WGw zbO*4M6Y!9*;uskod7gWF?9c!S`OrWkWYL&!Y@qy5!j323H}rS9k|2|!7a$2`M`0WX z{Sp>jpRY4UlzTI!C=pD*)15^c+8k-vv!GT{0c?c>eDS`=H1E(V9KO})4B?|jA@V^5As{%Pay(S&LDmu z<{&4k>dNJDxyhM($Jgl`I#9AKJ7p%^1nDJJDFnP?S7`M)mjc&pI< zh`Wd)zrpo)fq4x>PJ2r~By8E&*m+;x3AVJz#SL=%kTj7Wk2-)N-9tkVbP=!+cn>nn zbFH(+i#`OIvKC~9UJ%%KZH?e)<-NvV>P?C`R#LIhienlQhIu1;Gu6<;JZI0vR#tlI z2i5dE+_BO~^Q*3<0^19`j$C)HiG)xhvc+iCt9!Qu<#hUb1CLmRpq7{$hp);rn4i_wg1*4IO^~^z@;j|==^1poj5AY({UO#lFTCIA3{ga82g0001h=l}q9FaQARU;qF* zm;eA5aGbhPJOBV707*naRCwC$oq2dv)%nLi@104)5_S*}7c4H7%wz;NGG??2?kz4= zL~*5R>#r(c-MZRMtF0?qTNM{7Dxg@QDsF%{FcDjnB$KEpRjkM^NFta?=Dxo_?j5qt z+*vXMqvm~{Jju-5%suyfzvrCyyysnnZ=po5_nl%k=}a?1k7$DujZkMc>iAwyhF|=) z^@V&>AMC3uOA8PNq3kEH4=@PmkJ8&Hl4CLTz-R<)0syQmES5#UR)tN#dR6|1vP#i) z-5;oK>?Ai;@SV0N^6QT_ejaURQTu{(mVwce7|LRfx z3xpMxtFlZ@b4BsA@Rywg*bTDdYOmW687az1z!>0Apc~o-w>aP{7T9VwkN#*xG2B97 zvBU$v)oX3OUZ(E=6Yk(OFj}$*#y|R-4>8|NldkmLhoCsX4a6F1D;pk2i{Fs=H&ET62U=#^O zy(Ampw-giQHHCYkro7bau`08Z08Z2VWRKg0F;3tHpfuTfoGJKd>(OsEfYAlI^fs~y ze%t$31Gkx~vwA+3Ke~eC2k@naOE^>DcPPUXXyVxcAA9|e5uiaaBjD-^UHTZg0>7oa ztIAEL%A8))cmIsA+X)bvQd%Z(2T&I4s4Rf53SR>6qpSoz20jJWqiivobW$|J*x2Zg zMnKVd#Y0^82=oC4D(r>oPl)1T0CQgDnIKvy}IICNr1>??*I|G4Y&v} zItYFgs0Cg}sW9Pf6J6E)uhns<+WLv!X=WooY9@eUHuCVGS8Fbfcm1|YJ#H5=OoWj@ znJUKs!vS}O;K%+pf$0i2^qgM3ad+V0-sKA3B%inp9S__C3`o#1seoUH@(M6lmDjrb zwQ6n3jW8`cfJW`#_D>?|Y3=Xdw||}jsQ-~?kRYRh(}5F#9%+IPU;vkh^8LCCy_1_% zpX&2?Sii9Zh)gLRAn4zKA13LTMBq09uL09d)fc+nS6!b;J1oGpnFvV;5KoF94zB~A z0G_Cu=@osGt|>iElz#w2(gk0Y z4Zt*29_(^o)#{G6MOy){&4kEMdOTA7B`_P9U3ZCRA3-h$E(7*R;~4>dD8i^O&i7u} zYex0LZv+8$Oe!_pE^b8mU90=0)-kIUZdc`zF85V!&sLi>%J#O?zedT*_xE@-{0Z=@ zx{JNH2wVbOt1vVL@MAJW;N@-Sdw<)c=AZgLQIpf1LQa*yhAG}+Lu5M2nQ2am>lAKQ z)rY#=TiuZDc5OMwGgKS7DH@^J-VWBAjr!ZYm)5S%_PxHi$Wvq>mjb^81}6c(?Xvf* zsd{nmC&P7LI|4+mDcwt8F3QL>!2b%kQzR@oL@AxY8Br?`Qm)PbaYt3T|7+JOY;diNLMC198X z__5b-EBd`YvuZN76J)Fd?3i3?h{$6pf?uo3(VgHYm)=iRf2eQ_N=*{*0Y;+o=;pIL z#x5s-+u-LZTKH;J8C^8B>a$LGQzXHY)oV<2jG{FuogWz7xJ#D+`(Wo~lH2xIStGv_ z{7huac+U`l#lWxx;K!s%l@t3u9bTAo0$4}7yhHL+z4fYE-Z|}ekOb#=_7`CZ+N>BR zFd?r|Wkla+!W(l&fUhQd#U=7I$p*atYo)|?xG)hNp=D}q@)OYoHi zdLkSO47F#z^}veCQ1FvoK!Q;M3xIA(4v*$Ul(PrUN!_U=Edn%7DLoI%3Bu9Hqi{hk z_xYt|M-_?~6M&xrBjV^XJAfB~KUao=Z*`DhM*!CWrvhEud~5$e4s*2X1+avx?tTX*ol;v7rVr3|}EN3Jb=eY}*oCthdHmWkb-<DiO{ivzObiKDalADnq=qDOSZ>p&k4ZQ_73Eam7(DB zT=&7|vpj}a#2-z3JYsL1-S64(GZ_7 zzBU2nxm4~lBSFbQf~-I-_p&(PgHjtc@$E4;aV(SJ+heNgt-!hj;K!!;8#bI?Vx&y~H*yl-b@JO+xVg*J>U{Lxy&?zS`ICHm$bQe( zY(u#@Nl03$3pp`u0*IBI!8vF{by~i4im$AE5O7!yzWQ*VzkE<0&H@i9tj2kuPD+aa zkxAYI)rxUT1U?FX$wkmc7N-A0S{Qh;DJ~FS-pvC4tZ4vlPZEqeX5(ok2c$j&h+L8+ zEz1Tqd6fK=y>j^7d*|Z=n~AV z*cXxgfL>VU*^R3Dp{Q)Ad^4D;jiE4yeO;LP^BiReG7ynrSm!4$;0uM1R9RhJ5zJZ^ zu>sG8w{JefGY$BKgT3bb4L>OP^&bDKX>ufhAV(ADtiOfjsZo^&vjlpPh>Qi!1CAz+ zjbB6*;ZvVKun>4!(N`0ly7~NpLg3gO65v>0S^2ceium_0Eh{e+k>i20f#dAiNZJ}+ zMEKn254-_9sjBm;DwcG3DOKe`u`HDZ33Ru;MC52-p`#%vGO6?d;PM3E1I#bFx9XG* z0q;M`Ef|*ozs_J<{S>$l)xTA?IKlIkl@}p03+vD)moisX&uIyoudKWWB3EEp9@AZd zJ^^l4H6N*}SlXfFQJYWqyr^)pgYNb~|9Rn`BqYFBlS|B5miARw`Y=FAy28P=L-miOa%TwOIPm9jcL4mefPZHJeC!T?K!nAD+_MY82RK&@ zxf??k0}o~ae1Ic>w|xG<*_kVY`U0_d!}v4!U=bOaa2Fujdiv1z37KB*a$ohA8G?T` zFcT=wG8jhzSMCPo`zrh1*_2}7DW5+uDU*NRV_r=?)*(?s2U3BPoRq*ZB(^94%*_z| z@xa|UA3iDYp*8*qT)JwG2DrN{0tFfv17L#5+p$_>VGN7-hhv zz_~z?qqRn0uL2m^!({KSO20y-k6S4;l z3b+zDkRH1JR8O~oFNC+ZB7mK5zpFzM#@a4_tzMTQ0lFu6e~qp9BqUZiwA2Ka0!w{m z<-bSd7T}y1p#~Sgm;p*@A7$TSlYw1Kdb$-+wdil!KT7lK7Qc&Jf(n?Ts95=eOhb3( z4l?Z|Qc)A?Oksn%S)*>=6*nPqv#CYyNMM$tzpM%^`L9!F*hC-i^9QEc3h|IM`pnrT zFt29qrm>z{RlEt5!EPdY2oP$!1RR+pWy#_WOoh*4dC|0#cYyC#hJq;vjZ{`F`3N}o z&u5j-_w?h@gZrqlS9i6tHEIi>bKsUDKo3m1YlNX@1iz_VU<&J`fDerVU1=0teCx7` zf28xBm7(Bkw%@|Pu)Lew_F1MjfyK~*0BuLKGAc#@qs2dsZ~z}PV_&@3vE{u$y*)+F zQPt7ufZtNCJB&Uj?}st8C%6rEo48SiL?Z+m>Sf~gEqyZij>=GQjh!xLj@>u)z`b^# zWhxbkz_$nahB8i9c(h5Z0S&cG%%F8zxU%4$eFHmG5@+ zD>^(dY>BF_awA_hZ@IOt1L^+jPA(}JG{2@XHUkVML4hUvt(D#H&uxzT(z0?v1c`A_ zm8yy*nqa@UU%pkkP~kfXpUqz`klM3lLk2%z+qCifp7*U?oyPMXE*5kU@IRXXvR{&{ z*I6xl;wuYuMK}s5v!|o)*w(ZjfLovuk!?PIV1vDfUI|nIZ(Xv#)|pB_SDq2Tgnqw1 zbY%Z|McsP>hXbX+fwnDU51=PdAkc(JozEXw4^|~Iph8ubR#hz7kwr>=034dob=*32 zwFn?>4`kZA7=6@X(Ea5uEZ3xqfKyVi2==i%uT?^%x7Nx=8LsX;!yg0O)rDPap-rBo z_|hAz&kw^Yf`y3G`}~2IfJfBSSE}Az67ArU^pR6d1yS~CsRRyk06(^0&unV<2V7$9 z+kc6bW4}Yv-NgVy;^->7Swx|$GN1!d2*tozz*%C*dp>{Q52`w=svg+Fe2j}b@s#Wc8|^xdc%u#PgD zunvNH+P_<0Wacjc8WT_djleehx7&WURNc$E0C$V<-4RFl|L>i*LaktJy52Wblxx(a zTXXFLFdG@rxLs`wwHeE1OX;y&$9qn3n@u_slOCVqz6{~e6u#} zc9mh}!A&MBu}q*rRaPLZ6V)b6RW(Gc-GB^4I0(y(d;}0!A7NlrbK~~gp}n`jW=jEB zkG1T*1*|}MUtv9HlbEU)A}Znr9W0iY@zKB!u!>VT$&XF9>v3!o?#_YSq&KO_#cH-M zgyAZT{Vi5?lvs@f%d&T%*~m<{8KFl4&`AJ#%g^Fz@}(p``BPv%@E1kjs0uA{8qZNI z@1#$#qHrlKD|fAp$bC&FKgl;;Ad2w0$lp!$%IZ*3#VwYP;A3EJslWU>K>}Ej%_k@5 zKe79^6#>i$#qFz~*fV&mx=3-c?ct6#qz!tjFN-7L1P{FmxS}!?e6<6X#HiOF`0us` z7|=Dp2vBdhFkw{+;J1G+YalEJ7TeLr_wTgKCh6N~ByG@JVQWMq)L9iYW5pD8XEjZ; z0n9j`HD6DC`ynn%fwmDt&!8OI5%61R+MjIRLEgz$!-ZJ0RR_(%!B;E`9&N+Ar>U~E z9RV7sHzVxC%PNT74kzn%L+l5l7PfV6vr)&3OYSmU9H@pgD}Qb~eYHa4mpadEWMeA^ zMcJ;(9qrlthK@MGf4S*)J%M$=R3lMy(TZhDv!x`zx8_UuZr}VOzy_Ba;Js{oS7j*p z#UV!?HBMc|u~e!abeC*WRn$dNo*~An9 z`09$%zsD4}1ld1EcYB~}VLo(pX<2#KpMFO+UhdWIZJj%s{Q>OPDL91Gua;JhABp}p zZQ`3P27%e)nps_XeL34*(7!6Qr}Zb79EY+X-aggF`0s;WsktJiN^MO9J_>d@ z)x40ZiX}VV+{Ay(JhBHULY3kEPriU}H>$4#_&YH-?AM!;L;?@Yr|EWi9rM?HnLq8> zD)l0*XUl}}G5@LbJi^2Q|efxE~Q^q+Y~fFTax$LtmM z450ikA^6tXIW(W1tTGgQf5|#|Gaps~1(v%CDk?)uR^}D_%6>@_dwtS811SGZ2)^~k zf%)`oK7Ziwx$F7P|LS&sTh_V?SZuh5`TT*y^K1q<&`GaT^rIF!fUX1T6MzqJ(6-A; z+<5~2SgZ)wK?^_K{eD4jy1RmPoW9U*+isUNCmies4s_7#>QGs?lK|ZxsBT1Al>mHD zy1UdEmIvVf6w7AB*^27KZ@l3al*IiE_~&Tz{!&&@LSL!?9ulM>$*; z297%BZ%hB6ntmW<2V~Z`Wy}AlR(N>W;kqLcmiqjGl3mrXwa1qXCgy(Ec060Jx2v+E z9RZ3T3U3FNI}{>tqcUa}jr`GK<@x=N!(|Ilj;;&^Keih>iCEUm+{!u?EAL)aD7ac7 z060ZW?*{~Z{=hEjI}yeJt_0u%EFZFqGTTxC0$FzBUfERrJz{Fj^fzxoVE7Xdt zMw{#ACj#G=6YD2>igVHG(z0^H=MUV1mE^fFApr1eMJHBP1lxs~8NXfj0;;#?uygO& zr=s?Swr^He1S6vS2rKDTA_5iy(|rEGpL{vmA*?;Vq!{IdwrhTC0}%5Q6Tswcl(i0p z2zr2=nuAf_O+=moeokU{vaf)PDnr3PR)rFWRhg>4B9T~TVUf?D^&P@R z38wv+{Ay;!mAPFce~Kq;>b1>Z>ZdyPN-`*T%J zLHRTb&0M4CDMNxaDaS@shJrz?9l{3=mmL9AbRh7f_4GfcWMAwGB8g^jg?8!v;t)XJ zXxDMA0}2WxmPoQ=;Gcr!K0VaovNurtl@-CX3sM+2|NCQw6Ui{D$$sqh2q*0MM(xMx z{%>U{xDxOKPQ=~U-XU~&Sry@Og#w4=`%_g7CM7_RY2hYdMgs6-a%tVg-i+3;k|P3Q zr$L*Gl@mCTJdSc=WkqmPrk!Hk@}F9@vSO{xWKaRe4_Z`Ho9X>4L%~h9Qs$I8rYG>6 z&mWlLJ)&GP8~ww(t8y8M!3X8>A#JArxCF4K5PcMgI>ZX@A&~Z##y6_G(Cy}atdwzX z2TlJss9scA5$y0$k8$hrFmNpP@n?$ikqXBSTo|tI=>01zf(@qX#YuJuZs1PCEq^by z@*Sr;{x6|rRC0Upqo&5+rY2JqIy^or_kl5si*aSCA=ovZSeU6=i1xcu8syS7*`nzrlfPM89ltn z5P9ETP7>*EFYURo=H$2o#9{rr#{qm4_BG(L6d!y~M3yE2e?2fJ7vKXJe_8RFX`0_7 zjv~}TW}E2uasj@*Bs^vJfsu{zV}Jkh ziwnIyQ)uVS;Fv?F3e~d8P%xBB6PfGI$}gi$axTiXK+BZx5#T!0)N}j46t2%@8|-Hs z1#SAawHyT8lI*)a8&lGgm~A34_*G_>PkO7xz8ysN7X~hr-cz>YERMV|qVdeS5!`!n?%Lv@#U@Sd{?alz2O-iaW0&)?LzNCN!t2h{8fg#)YQ`}+f?q}6=K|7waipK6w#4A z=T*JAtM6Y`5!|L~o&nrN{G;p-lZ^g@fXPX60MwdMot=b4&QgD|_blM)Byj@^nwrcL z`aBt*X+D3z2P~rbfTsbNR2d3BK&RmI2QIhQ>6nMf7U0;*P_Q!I^`DFxZWJJ|q8#S{ zKET;~E~;@X9h=mjs>zgR6+(`21IlQ_WnAhoX14 z-bCO76d;$T0DdTnnKa#ON`{AR7kSI<^LZl<_%W$d7}@Lb>JK|1&7FKUdief=yp4V6 zlK}iEP`>A)nxsoxN*TN7LegepghtMF%99-PGoe}lpeDSv0G7xw%|cvGwdX_B<^lfIbX zozMwac4h78k_o`oNx(;8@{mO}o3c&-Yhlrus?2c!AGI=6Ke%;*x2zMkY_0nxWmv_j z#0h-hnW#q7a*j>=^y!NWy!{1M07D!cNI_YzN_p?6I+el>fqz`d0U|8H$~Wu;{->&p z81i~eTBoOJht>3Yym}ML1t?7p-~$X4;iawTd53hunDNLTBEtL>z;9CJ!gRsUhyVaR zXH+i&ZgK!WCc{K|Wy`sqL7i}>JMxDQ63e%7SQ79-`OT2mYZhgsSZ3Nl(==~InWN55 z2mr$c7Hl2w>6{7D8u_w-76Bd(;LnL_G~=CDhl1+1PVf{9vKSbd_}F-7>sKk9+-GL^ zgHDJY!9PGO*X>kB{@bd0%#g*k8J}QwD73cs6XAMQ9gDI$3Ha7>0KqNicsh3niNPOb zXID=J{MD*@T1UX|FaZF1KN()5Rso2O4&cY$94PSGmUBGkcf#FnpMSm`2sM z#}9eE=0DlEe^vwQx1Q@61-yv1iR(*ze(;v6PU!n|&9~B4@Y(2+{l)UYPG;WS2|jT0 zp0C$r&3_^5nH9E-_Z%ixaOZ#|;5X;1f$O4X^r8N9-Zj4!qki;o!w|U?<#v)E?6jWt zvo!K^MgV{<=Xi#T@FL2-Nx*MOj)e;U*YBC|``_qMKc?g$f%{W9&u^{pS>V@ZyFEF} zt+M5uk|Bc314gC*eoPur?lP5I`#&50;u|*Vdm17)0#nd7Wpt8n^~MfaT$>Y5<(wwh z*)p!A800Zprg(8aKZwaXlv_;I2mAlCrXkzyYP!xhRHJ&68KKxtt6pzL_+76jt3S>< z@MB7fZ1?$J0E3hG@U=7YD0=ab*K2d;shsodN*l+O7;fYS;P+_jXrN?PM78qo->xQ) z^nWg#wd}yr>wHtqM!hPQN8hT6p!fEk8NNDe+qyBsyMasut|htOemmPf%1u!-dh6bA zyq8nGDCfx^2h6T9fj@nIw&zW;V&wKp5qyAsP^OCTtIcP49#-Xn{?CP1ceG6{bL%&k z%ONZA`fHCb*+<~Vs$7P1xK<+Y*QjzqrnddOBS1|0J{?~4`B|P30)JDhKw>%_vj^~V zfonIP?pdHP-Bh06V{T?a9L=Rv+LT+#81&)AVkOSF2smEb_G{|k&r#(knVjn7Jplmv zJ`>)w{_KOtxz#mZ;BM4D=1grp1Sn8A3FRaM>NlO{c^R0e%ButBh1aGr1GKKOV-q3G zkv>?2(O5ZoPQ*DgN3v(!s4&S?bLQT!zq?CwVDIw$zXP9sSAnNCpXqs3EFZUv03!wP z+jed-@I#az3Pd-J_0+1e7^qNK9#wPI;OA?bk`W+QV96=9)SBamyIqD1!{2xQkpKV! zDoI2^RLa0P3iuvY346CgHm+2_j{?&bZb-+C>uaS1CX>x)dPWJ{p;j`5RKX{Skx5au z1Mh>rkMglyOLqhCd5^talho9)QM=fZy%U&cHt9WfrHz4D`S$liIRGp1axvPbzd8nf z2>4m5-n-ve0syQ(!)v%j&p`PdR*|HRfZyg?ZKrT{>2KgFv@4=D=+3HI8qJV=>4E<) z@S7<5?B0uNce~{?F9@)6Aw13FG7QE6H=>m00(^ij{S1tPR->P2MB{>(MewUtxz$vi zz4z9u?2w*m9F2Ikfb;Nsjlj_U+ zT^J>*#6z?KA1Q&+kQWf4|I&5gi%RX#;^6|ipbYsu5Z zb`s!gB3s9MPB9yq8I8~*+Mt*b>Y`0Le(xo*Uf4G00002673A~9jWyZ?vx z)Anq;pWl6-=fri+xy}-_HI<3*Y4HI70FkPSf-V36M85?BaIw)ZX5JO{|6Td$D$4%tl350{{qO0{|kT0f1ZdM-hhrfGWI+Ez00#p@b^#fK;3;jb(_veTE4%8TzCnErO)|4CxZn+HO=^Vj5JlbQfId&PZ zKpE7IM^<_qe58KMq)JeJf{b*4A9vg|_BeAlsUNw@h-YiuWx-7<7i;3~XFKD@^Yg!6 z^e4_{uWv%8UQdZDd(L@KcCHEFWp)Wwm(hNIWj#%rQ(t2J9*<(K-h$uNk{ zQ)C#%po1BYG#xTeT2 zWY!XiF%vNp&Hm}yckDA#7|cv=4@X1RW4w#1(o8bgKpNDI#JErATeH%f=>BL&iP!uV z1t|9v|00mYiYL~$qa$0!Thh#EfVaYptQ7VfMAJwjn07F@EQPVcY>?nx%na0L>MT0# zlHxWDF3K#>xK0*F2q+}!75LJJin`KzeGBKlH_{vRvW&IhloMiHhvz#X8g`2FdtjTBHA);A18iyMRsE`A~tnG6cy@9Ua7 z5R&m&am*bf2J5sMiMl!|tU42o2&-zLp*-l|S-j?uCbPD*Vyb7}O2Oh}Ku~xAvhv*r z!zm&Mw&@sT5)rE;Cv4#{(7K3J{XoN+n|Z{1THLWILzO4J%;s62rM?MEJqeRC{%LBX zK-%I{v7<<^%r`&49|b_nAWwBSBebuSJtpEGoG>Q*vv}}y)YUk>ix+xn#KXYPnYW`4 za6AkPt9Sk~PX0EhcmrTxz|JxD!$<>=nVW@=8R7q>j3ZMiP-n(JR#N}5&_*!@G*a_` ziYa5}Rwu^Rq(%T0|6r_9Ae8MoI*A`kiHkkIFaR$xP`_8L%H&wb1d1OSQQG&q!=3av zX*JUa##wLVMCCJ>BXmXq)vtklD~2Z3XM^EH^4k^hphI)yYM=d6L}y8A+@L;jaPvm4 z`#XA>^QxK|+v2*GWIWQ@) zz3p2MdM@-rrIxcD^6_M(!k!5Hk%LfG*lZFP_0q7j3t>5^-5wLe#mBYnQ76RV!4c$d zny*h3Uc!57RK5!cdh>%OliDN;CAWoP#Rsp!lUZ>=3|Dj^HlwZKS&>{?jSLSmvvIFY+9n$ehJjy5P%l^qxvTXsc`^JFTTN^G>%QJ0EK7->S$bnVTtD8+WmZ;5 ziSNw>Immz91?Xb*jmS+>+Tvedto}&mRRx_j%skXe39N-8JqE_$GYemdpNVXxhRQ(C zDbMuhabl%R`UV>8hk@T}vXWj$4ehu>H%nY+EARJ53Z;WwDYhi=9)+q2*Eqie_ZU&X zTT~z(B1-4r>wrPd;Z6pe=^=(qJ;(kROejXAjxu&;6=L=N5iNQO18g@2FF*%L_-O+l zmAif>d#n_-t6%lH7l5w6Z)CTX`?bD8Ey(X=qPX!%7?w%A>nc_+4mC(!+W^1?d1@^e zbY#CB?&uSzEjrf87KbBD8N%uNJC!wYAZyvEjA8T(<9w`;O)z zpWh1Me&r{xaeA^?q{kUKZ9iev###z>i(nXHq+G`euDTG-kd5F{-`*r8T%L_H6T58a z6dwj&j(hgKi)QsMg9pBAYU`!hwu~XVag9lpiNgLx(%I!6ShDH=+qi813C4QNBQ3U2 zKwFrD9u8@$!6(S8fyhGAKY(Do43Gpsz6lro)K4P1h=O+Ohi?yLtowWbC%l|~XdBjH zT8r$t&*F{@XC=klFq~J5NyS++Z)0KD4E~+_n>iw7@R5jkYyBI847;YaI>8Gp6dWjn z=hs%!ww*dpgP$EY*e!_~eQ3$4uoR2PdQrBTIO2veEYro>)dLEDf+P=6hgcf!l>+^7 zXl}mwTmG#gW{Mylc&q>|*((Ln!|jQ;CqC#zzM;))SJJ2<~BYRK|*_y%X8 zK=^we7;aI-&}iQ~h`Q3^tgoicX!~3pHIT_1Z1*LIM!Y<~>ITKnCkn8)U(5+HB4glQ za7?%Go*>2tqsRNkmu5znw(A(fz&#e^5Yvvh(iXAR8|?RAnUUF?-H{hLw9eRT6sIlC zhE-ZTJch{$0C9rH!D6Kzn+=cZqZ%Lcz#vtq-KYh;j%lX9f^Yy#*UzK7Ut+)|8JaXq zH;-0wj7Qcod8`hLtu^Ai?AI=Wi9Ij(tszBpo`#4xSI3W#@{Fuf%ua$wjS)Y94Oj3K z(A9gRkCTBFCQY+PZ>6;pkNB3gUx?Co%)MOyhk?Z@A%KjEAD295fayi$x7 zpp3oZN9n{+o#9peyN`DwIzfAr6aTO&;jE!uIP@tkhe^SQ!22#x~KiI_cakoZY(!n^pV%+&h=U0V67i^ug!{zmnFAAXr#B+T*I$WM`Z` zXL|hdu`t*vwohZ*7}CQQJpq;!%JC^37*FA%9>}n=?Z&eiawihDejoeJLiEkO-+YJ2 z&iXr(1l&{G=i!)|EG9G!4qK^=cWV`lmY4eX;S4xwvNc^_^w&nxnItg?&#jTk1Hl~O zu2Fern0?Yt|6UC3P`h}Lxno|RaH_h%RE?S93@f~qjIJ`%wHB+;+Y;aFo3p_)d*(@y zwmFChFB^kk7t!$xJ@H12G1N$wed8J6!|Z@w2TT3LdBkqgM;6lhEF#K%s&Jh(#Uid~ zGJkcfc_+j7BdTz=E$ci}X?tqXn!$!sz6P1CEK{U5qf*@yFUHwQ<$Uk0o{x9$G$-(P z1+5G2$npSubLt!10%8@C{yLdtn1w!n%NaAyr(R03j5D5r-y9pfzonLcn0G#}5BT<^ z$LgCvht9nyJH5;}Ygv@y9vRez0(X-lCcI@p!@AvVt59>SLh32e8{QYB>F5Xm&A9?O zMM_^!(NIo4dC*^XMhCBo1$9Y9+$mi8l_*5G<5t0dL{tkg+x^>+;x}n`^%PlOs2+0S zHotl5&Il~8$22$6KB&JQR1B!a+4j)c$F_MFj`Q$PYOOW5NIM9`Uo36@LKg9|f!vR`h7L#?i;pdJ^&7Ez@J0J^n5mY+PHAVV?L4lF(o@j*V zoVV%`X|w|r6byI}-s1ay_%g;Hn?~%{Ic~9|$$Ck>clCf}#KOD&Iy$f@X+Y3Fydn7l zUKtvba8;+z>U#-{w7)ICj*0!S{<~A(by7GVk|I3&lY(8PXj~kB4-Bsm><0(C1})`$ zRDNjk>e&UX42CzbPuY3(;W}IbP@kS$A_pXH{fPsV|5Q48S1NBATP+F>fbZ|N)3(=i zrsf@n-hQq=#Ar42MRpDgAaTey0fOpb6HI8YcSX zx?z9`--~rUg$=eI(;#{LaCbMNO~Jhl?A@G(QvH_0=(jG#)XIA$dX2E#YkU+t3Uh3kU%#}&x~Y?zN+79sQ!hKE)6A-Y0MT<$i||ND{S^Q`eUu@~ z{U-Tr zmJ#lNuo&iMuruM(Tjzxz?qL;v4 z@-5`oAA+fh-k=2&_OI@5eaaDq4SGY8t0r;i#A3Ck}S0A#lW|2L6STP)Xq% z7=|qy*6v^Is<$>q=PLM-eFcO!f4bAn_g*`sIhGeY0+^I%6g_7m@kNTMo*sydJ)jNK zC(Q8E@X0Dhx(${la4Z7q)y+*9Lew39T-pMK-E!Y)4l#Mt`tinjk!^L&iWgG{n9Mjt z&O@a4!dSFVWo@zfUnwG)`z|Nar$i(__z)Lgefa4W8G`#>6NIXP73h09cm}ygNjq_o zoiJ^=imQpH%XngSCwhmv6*n4w%njm1F+!yQ%1TVxwk?zaDl@B5^AItHZ64{~y@T`+ zj6k%~&cBTbRg$uN)R+`S`||8|v#hI$*a@l1eiB6Xf6X8_o&`3Gedec&WLp5}_7CHfVSVx_J*V0lKD%sK^-KI)IJ(wS*OO91LV z@Q&aeE|ZO{l1j5ab+xi@ZXz#b=6t_Q=F!UMf8%6~*xzraZ*;aox4x_#j}^Sf&SEq) z+ak{;rcY-=S=9xK`Rx&0@!9u)9E)_t2UuUlU1L4{81-0HKa&X5^AY$QS03`gl=}p- zRZkeQW}?qW(9$9`jhKmZ4)4`cc#<$83-5<3SOuT1yVgFzabvO}tbrTK5RFMB_A-w& zuE>;Oyjk)Ak8*J!g{~ivvQLqk9mqXX6GNWT1?90vWZ8zDV5d|*A_)0R`T zak=B<52(owc%U9V`^bsnNn|wkR9-g~TRo^lXpti$CTiLVL2Yz456`krSw{llS`Fh? ztU)zYMnv8CL3OY&7Nf=IW^(An|0qpoNyNxpj4N&!L`=3%Rs0MKS$ew~PjejpY4Wdn zm36D;3mz&_X(B}FSWO3E__r=imL|GdGk95+T`2d+-BP}KEZfl`>&43Gv-2dQ7Tjz* z(l7wm&sec4vd8Lh0%S1l7LI86GGC&4<4>TV<(^m4h{iWfCsxa3)K|AVojtJNhs01iW{}W%hQ!iag zI^rv_wDT|4cRZEnpOBp07l|xFwC9ZLik6R9Y_caT{`Xev^LPn%u#P$>qKeay>J8Dx z9M0K8z!-bSx5lsX<)h%$i112py010jqFrAHofuOW+e+gLQhUOzRI`H4G3YVUWyrq3@4NvcT?M9j1#X*KcH8Sr9K_*)76tlLaC-^2vXD zz9)?oE}i^ns;RHSI4=pZb}K&q7+_I&x+uMLLR`H6c1nAE$Hpp-5)Hh@da?APz%#?mrZH1)R+h4; z>vhcofXBRnA!`Aswt3Cc3NKuyy(CG(;p_ZYPiEL64hVwBxACG1K?EQMF0Y31)iiHK zrB+qRh5n$&NSE*pDEY5ml*P{X9HYHlKp58m&x?W7ff_7-Y`$Tg zn{=6&a0%!mfVqjaQ_=TkMP^=Paz25boTC?#Hm)1-X+(6uuGFHsk0;Yd)rq<|P;Jzc zj8~N^Y)c)|v+*)Hpc6czdGP5ON@<%UM(-q#em0)n-ls76bz+g5xKWHiA;DaaQqT1CmoW$jn=z7^ zmif@QX9r;NHG`OdG;s|+Xs1QG`) z3ZfS#^V0CWhS?f@XNagMz<;lb6;@1jNfP5fA4mT&o}eKqqNWi^*hZdCP)IxhRCu7u$3YDVcf5uNBlUW863NRHtcRT$uPW1MHs+TN{;`#M*x{vQ%vfOte zItdS%M#O3x*8TviG7ZT{4#=|-g&`3N;Y8F4!4`?~OipaCk`I2R(rYM>LK?M7u~NKi zjp&K4-fBZSsEzVj&~_lvk@3ml8?d^o{Tumqq@%Q;DpDta;u8>IdFK z<^1-&oT*;`;d>9yXn2uMJ7q)UVbE2JiAD!b1gJ{?YN6j>OzeJFCwH+8()`0mAvinm zzO;~Qv8T0QqoQJ?q@Gh1SsH!@*&0~fC6-YL1GVc#fMena$`?XU%pTfXB>1`GCjFn3 zbV+3MNF|3fY|}C6$b3M6+L>Li3qX!N?eFLj(v@(MYJ>UJ!ttWC#dR(mtsuUGfg!%A z4dQB5@`ppPw7IwbpVrqj!1#h{eo-v+F*-e+*B2*QwN!R}5C#6eyrvj7z@1x@?IX%9 zoG094qpx=W3+6^2ND8v>Q5-zZ1zq9fE5bNafdxLxJBtRhQHk5cr`>p?aPaSvPp!yu zii_DZfLYc)j-MJZjPhX~R;yJoURbXrda!mw^~!*mf%P_?;vwFzm3utf4=2Ktc4g>q zSDYoJ!{u-tEW!Mkz$J|{)dBBt#Zv;-VL~!1^QSYOpoC}16Xtfc&0h59@$oXe7~6gU zCqY<78Q9$^a#ZEmR*vDOF(|&197%ywFO?$xE#>+z0;G$%^=Gsc|54g{xfOedk`x-4 z60i8AQe7be*ojE1XA;ktn7RNq4O~1#-zP1X@T)Py0QYi`UqH*|r&&|^=DG7!Wkg@c zVy-N$rdYPx&gaL-q*2uY->B<^xwVo&q?z(*nrg;FIMOglQFJm^Eohs%X!uO->4**- z$n?GqntfKn^zDHiGepl|`;iZk1?#QK3W11l`P%#q2$lB{!uW3=MA-HAz!$u86Jy-|@)f?(yGRe$V{J`zsTIbSUnwE@|mMhE;P3H|?t@yQ!!02CA&o+)ZQV zG!=fPe{=e3cT%H0xW()=5ORvTQ0*t-h72MHx}wyZ2vH48-khGVt}A>y{g#D5kFvR6 zOZc#=sy=YK>Kbf=i6n85K7z0sxvTaS8Sj<{NsG+|3}xn5PwCg>8 z-SRA-_IF&VT5EmucNP7Q94MV0@#D-}W<5Uuy2R;jmk=U%7sK&qFm*saMlZ_2P92mD zLHYqY=p{VDwD{_cfo}}khhN#B4GT5xj6WJ~)3J|mDNxk>s&%G%{mO{Jvb7kjwW5x% zvF#pj20+n2*%&-n#FVV@bgA#WNOE;*wo}fQBrHg0K>;+Bd>45v-Hg`e4~)D5;z4>) zuy)39<4%g@%gT!Cf$-NOW?Le*_P*<$TW_EdCJRY+7M6jdjCb#j0>-<08zQ?GaJFzb zDE2HF>pWcBv@UP2Ip=_UOyq#DOdt}N7_o^v!Bd6UJp6MT>mXlRc@gjT^2rmNRK-a8 z>Ggwm(ge@EUGWj13BC1h4mq}#@+mGmi^uKAD>6^2o~CMHuqb}|jd=`~7CJbYi+B7@ z{l?2_thT9>5Z`U|>nip1Nyww79o0iQY30C%>Jps*t~``W!8T?1uz0q5RE@vBXY=gbHU^sNX=)YWwo-k8ibxIc|7daTtb4+IqjP zzpv^qjUy99SL?>!Eo8VJ(Y$MmpL>j3jr=Z7n_{yuOcvTe6gD?V#1hvqLHuaYMM z%-*`CHv0TTa6OOe{V@8SbHkwo-NkZ%O75UD>SS6Lgr{}UNx@F&n1Hxw1p@#2c-D3c zXK5(eJv)F#X1Q)Q%m;nKkVHF6~G*(>v3PwUC4W+ z+~|r`KV4wu9{U~G2@2)ETmgjSvY?9hpr|i;_TsQqKvTKDvd62ZEQr+?p={?M){tp8nlekWGrIj zab1RS?3Puo3YrF`j=AC#r2DM+c^=ng{%s|6pHr~1UMWTh*M)L{x%qp6I`$l9cj85} z&R?ii4Z(uGpMB$iQtx3{KNan~Lde>M&Bv#=^lZ@Pp$579uF*Z3#(ZR5!F`Qy?ob=3w6m<$y`sPygYBy%hhF~14 zWuLfOmTjC0uI_So)!4xSsA}(7AFKdOsK4-Kmn9N9b`H&#-2Zq+(J(37P8eThmIcH% zs#B679W~$U z#xKOD)qQ!$F`4Z6Gln*h_LAsat|+SF^<$A!Xzn-o#y!l8%se4m6U)V32pG;)g?Np3 zL38@f`QL9Scsq7IR^}haV6Ea<4svewcBk2EJ_|KXTmqLKQ$c--iu?Bn9ozN6lvn+3kM}i?myR-=j7+AJv+b!n+xa zA*JDLTwk(B46S{1J6IBIJw~EpV5r4U7ZFiBAPhfaZ-m|Exj28&m%B2*X>E^w*8y?3oasb*fONQMQfcU`&87_2B~J+ zKx;oNOz6%xMKw9tb?03jF49u_FI~lxghiykOEV7=z;MugIu2It1TWxRU_Omf6*s23pp)?Jqy1P>opfLVQZ$u&)D+J6qT_gg6Bbw zq-3*!K@XGLsTJ+xyfT0Pm0`hC(J|aASytM|wOwAUta0Z$Q`6L!B`Pdd=@^HNSeirn z_5p#1RhSCI1v&Kv@q{6P)I^=-VKF|H;{3;&3*HjP+S1;6Rz7Z5Cc76Yr7P`dc+NEf z*JOwo5dK!{twtC&#~9!3}Id6%id(io!1-!c!u)7X1zSFKKek~|A!F(Yho{mG)kOdYS_0zLdnUFAHd zaP7X=_{+LnU5hg8E`<-pv5?RV&RBVlHYSqEsZ0azD#StMv5G7kpzGOby!nhD!RfoX zC@gGJVhN!)U~uRn1X_ z-~;wTkaGIc5V}}9v}4!Iu++=pQyl;&DEJ==V#sv;={6s%XuCc1xqpV@iDOu*QN=HI8|-u}YCkt_b@rHyjIz{Uzo)TvpGo&%L~`dsRcZ#F(D2 zv^wkGgo9hg@iSE8wo`SlGokQqyQ&fYk$##4O{s{fJApOLJ+BC}uA|#*50bP%GH(X2 zPIdvzV=T-ENv7XU#~5Sxn5LU6hyo=xL-69OaHQ0j(g#$mboX$8Q6p`SZSPrY%{|W^ zy~cF+#=9fC6l`5iWsi!~nwgf8Nc~&G_p+Iyv5v<%QFWgss}8%Zia9eBe>9OgD!x#m zL{lxi7{nv?`xyD)3+N|5?VQ1C3=E6$;24>LHerq(_5AZESaL5O@^c>tN?3I0;HM?@ zT>jxbO?+dA+eh=|YxTe*iO{WX{a4uHB3AS~x1UXmqr;G1=XtNk{lCu=~{0OC8wGXP_UKaQjSp1vM3r!V=_6|WZ$pwni6(S580RMrgZl5&^Q_hX3+(c^lEYc zYege-zA;b>bj+^j7l6>kj5klkQE!@USc#BHI#uPL-_3XTYS%NsP8@jaE+o6kA6|zb zAs3}X^6;~roHnjL zia3DlSA71`+xH3mB=rICp8oe1EpI(K_W#_H&{Xtm;)=7;B`@_QU9-C<-8L+x+SL%56KVTUj9h zi(~XUZ9(UgOA|R+;JogMHM-zs7b_i%hVCFr$BDPnE;do>I{1jFMoFLNedksR_Mq|| z*LttHE*s49gb`P*80n8f42CRt;d33-Lt#+I2_Zr%Rq`;$Y^N{m`X*;n6x;X>>LE10 z5;LO<`un1(vI-LOTWJD1(1MKO6u|~%zV3{b$)qxG)ucg`;=%@ny#Sv#17n@&>}Xs6 zYN_3MMO-Ir`u=^adgc8e^P%BInFval?oml6D$G)_=HcYq)(ueuHzQ`scuU2~6P&~7 zRqh+j4gfLYbT2y`2#@N8!VY21V5hc7m>N=^(F6oO5IOr~c-PXJ; z*kj}N=Mv}TjnIpdx;~e6Zl@homoabi2W8W9d&+e(zc_`CKLWs?F{z{!jWCvn&)e~Kc2tA`L5ddZvK-QQAnh@a2MIW zUW?CuD9#E-GhXydXHrs9=AD6}U%Y@;;JP9y$@Rs~>-wAUF9I;h{`Nhutsm|<5}CS$ z;rjF4erar2p}__cfyu@1M5x^bzp|Z-TO-I1yL~a>OhC#hUY~w2wDx)QnjqRz#BO;{%V89UNRQl76+M?~~C-DA$L# z>rQ0H7^KntOo@SkMevku?o$;k8}HZs3S)clw@@b73AcJ)wvfQPIRMUCz?`kI(KNT; z%=~*Uqu1jApYbuS6ut2ktu)gH7hE=P=0vW_%2)xC&{LvKw}Cv#%luScHYvHMV1-$Q zJ*4O`Z~-KO7o?8P%R}pK9DZ~{++C)RzuLFHn@-WH;-SH)qK-4DIs5UqqNdWo>g({y z-{;;PaH^$IrOuv)s^exPeS|&z?b1P~(0f@4v>B@&ifBH5qxq0@g?*?Ff4MG+ZsX0O z0VHJk?F13{!4MrglBjEZF4l&sSg$WPOU@54o8BG@I&P}eqRZ4%a9-M<>n$O8dp`m; zR-;|9U*UyLc-Z9f%Tlz;rziJO5xMNO-RH!ff+?II*HSDgLM5*q27Tm%(3@(J(x| zs^i>#89Osog#l}+m)0vKAx;%8MJtaR$Wl7XS)wYsz`5cw>(`cpAvOarx($}wosn}v zxm3ItvB_KPT9t($~tU7kl-j;+B`I#^m4Lqk&w0 z6H~ou%kvOBkHC8tx+y;NcbWsgRP?nlEfN|AX>?wrua?je^~~-M+ZSKj9TTD^Vb;UJ z_4Q(rz+`8mz6JgR0{8_*V%$DSvu5MP-UiXlY|dtWwdi|u4eFColMc80w|~usKgWKL zWrD#rQ>%(@e8XQJqtSsi$gKO%_4BbU$%4!X^J+}9q#>~=<>^Rz15@*V=MQh0xl;Hx zQkKf#=7iNQMyZDTAAW4RO8d3`+jW*G^cm#2ooGJ}6~RUWW*qlXKRK#B~RWfcAG*)f>m_%h2QB2`vOJ>Q@`0$csD!sH3S(vsi?K&)ii;- zzc~^xWR&r>(Rg;+tWr)SB#AC=OIi8gSS7Tis1(&JY^ORB9E`nN))%mU0Ps97=MmSd z!u8>%DHbSLIMg*|BaohEYP6OfXCrWtgD0YM-zPoS1-k5akn-PUU~WhI^??>my>}~Z zEf+>i3*rzdPm@xcP=CjUcZYzTD6kb)r*+k(5{{MrYDP}81>W_`h?>=cIgvtt5C+5& zg9y!C1uy4H`5u7gus{$?v6>mx4BHrBs~UMC8j+b=*~aw~BBzq%Wf*QnJ2xo_pc z#v^e-O@BTYVaVPXPQV6Q68pmB8m=D*QGoHqJj5?D_z2E1)&3oNudJIyrG@Hq5Iz~p z2P?53($)SY5kIPbdJ8Oi3q|#wHY*)?KQDF4?vX&39I1a_oUyOWJORK((5Q{Bu}1W` zgbv}Pl6$qus%hG6SlSiAua9mqh5l+*q9I?#9??SY(ZlAkex;|s4ZWg5LCsa-_!a)v z_99KZ_#kV;b{_)DWeJTdTsWMJSRz{wVYM(rta9N=_yd+Y=089;{WR-8`oxGE8h3aU zjmmKI&dTHIa*w+?60oQ!dBFiPGeP1|Blykysd-cnFWt}W{yAttx*JxUa zN8A>rVs(Ok2u8(+otg~r|Crm_y(;8k+StaNlcMlgiM~gb=y1@g?>p4?R7{K8eOu^) z&C7Mj^zyb>WcSgZ+Z1o^7Z_DW62K^QBE0q2ZNtg+D1;DhApc*ph4jzm4FN>FVSuv= z@u(E-aP;=$+`-9bd#}f2j9;Au#?Q>Z2Ga8~O`)@$DZWCZ?F*xJ9EQdSNk_UIQ543 zh*FsEx;TJ&LIW6v$#%V&wkd*{t{lOY(Bx;eZc<@3_gE4kRtufTZudCmP2(a9oZG!3 z`8`ZrEa`*<&L_M29|OKwaMW`@MKZ5=T^W~|UdtofsM8IhmTb2xcfU-loqtQawO}VX zn5#nkrB$OBB`qxbOucT`pAVJlv}#d@Wt2T5==24+J#SLmZu-v_ohz@ayZ~A;;c~WL z9@$5`AI9wi{^mc-4ux(CrNw-BH@8cZ{?yJQTs8c}97Fy;F*Z?8z}y+&^>HW3oIW3- zH#HSF8a*C6{@&ft1kiN7^86WuAP96&BuKgq3a%M2L3TqB28kYjZKD0rWqZ(FI%r7* z-LA@M8tnS}rj7X7#bw@??Y0(6%RXAx;NUVeD(=Ls`xzGQ_f~i7;oKBy?2}_z)g#cV zrS^Oc7&l!?jKS#m zio|m}2!N!h%uKaNI?k==_$;ie`1P=JS!ssr(ACi1-31D>*v_4`0vuyxTKBJE7RWj) z%B;iZv)UhYeqE6qCkeBUNWtsTPXwtugXJX=(ND4ZVVk`T{w;Up7~Z9 z<>s-TJ_(FSzjt<-VqolDj8kaYZ_2NgGe?CCBnF0)`twl{kLrI)iOJLb$2d`4*O{%R z0n^bT(5T&xzyAHZ6O+V7=F|6KuGiBFTd4(yDembzy}-UH_JKFWf~v{@BmTRXS}_*I#tvrSah(6&Dp2db%Nxs{6XqUbW!)J&coaI-BI$!op?Jh|66{rRdiSv(Vc%gzK|t(j{;>f(VxCYk`@Wu=1eL51xOx!kiV z_J+vOJl27G%Mmo*0{-!l76QD}q5|nOSfI=*MKP>>k1xWk&V1w4C!AUxeC!Umy<+W4 z$*=A5-YkJz@}BN)xH+nK6Ik^<%-f=?PApnAcw)F{3R{QaR*){;k%!V1)66s#x`+6M z`VKa;Ix?icJoXOauJNl3jKjIAFklF^0MJz}v3!<{b{YDBGuGW(kpFz7>0>yhf1)Y9 zB<#XOgiI;>^H3a|1RZkH*hjp?upb@C0-uT|rHnlruG@#>q1jf!QpA`a7-#&=@2vB6 z?uoQN$^Tfg+FJ912C6zpAlo}v<_rwiap;wsEfhbjJ8lswSo{gNH{H)65hV`J6L^7y zvKIS%@B>7Ft4*Q0ng4a(`;5?3Y+23Ae_W{DA;u$Vj-j?&wHbMrDlSXa;lPgC!lsEQ zn$KD)8z{uLIFif5~#@ zRHH2FwhD`leb?($-+3&}fipeo+=?j(+%9}ocfRG?rYy_;(>+`@5>e{dWyvoFKo|F*L0QyK|W^v8nQas=|0&9$(3^+cL-K{4&i0cTSnMx zbqBf?U$_Vbaqzz$YNJgaQAc|$ft#grNf!rPg}uuqUdIvyNCP&ZvJ4~)tZ;9TvqSd_ zC9IWeZXr$!nIwFb6(c@0$3k#v6*rAO;8z&lCnLHFvzd<#aRZj4wV9DH*rIS- z?p^SOe54RW19q#vbxqm#D6`dDFLB;eV?Tm^@d1Vj}UIo>@w>}@!&eP=aS#ls@SbbOrXI(i!8qWAZ+|wyy zvyYugU>5LbSi!hLhX5Iggv?Rnk7MEYbc6=v=}evwA%V_lCDpwo73Xxy&S3+d2Y2`O z1g}c*tn%Kd0K@bHUo#?i&oP#Qst3aiLlDZ}h4u!@%7cU4wubb!@5BaHzgP?+21oK9 zNP=gLF5HV|$%#+IV3NxOUXRVfgUhSki_=wC$!Hp%4^uF%eL2!VB7UTAy!*l81jZ{` zztosUKoz}LzM&Bf`FRWwodWu?#OFquE*{qsMd@+ia^`g>`&oZ!?CC_LlbP?|SHAU!C z%Yid;hB{Bt%9^f!g0}unKTiO$lC-XnjSb9)k3vLYOnI<%85+*9QoK2_%*w9=MlbKW`xvDH~E6@|^IEBBdx%2b_* zg2D`hf?_xiKCVQ*AQ06<^B2)D=j6SpSN1Zo=nF-pAzkS#`F)9(3u5qUlU(3Qg=zr{ zzmWp(kr%S(ft=g^!)@b+9W2NdEzKe;4Tyomk=ObwkvZz0C;C?*Kf99KjkgEVUM{-- z^OHANd6mNAXtyaOaw>#uHn zOM{+Oep%L)5;~Oa!0lUSt*C~)3ty?T)i5iKILfjsv@|K&U@F^WY_5tQ*?%!Wg3zJ+ z;3-@d-8WG&d`viIPA4Vdg)IF%{M4w?$0T{fyAW#)k5I*~m>}nC4zn{TlVHTUX(w0p1zpY|UcR~>=8 z?|b|b@Wx*{w`oX5`McqV>y=7_|0u2R^iE^@LXE4EkDo3DbLbi;9AmgAE}0zrKi;#& z;~LtWYp76%MNA2DtGazq8v_!CehKS=`AO~1y++M&Y$>#!+mu_2dsUCx@B1f7o%J>6lqui`lXWWQjS7z=bvJFA3Vd`P_&~M)exyay zK#|N;eO;`p%xo)~a@!DcMt>J3@AI8rW{;ckd^%?*TDnA1y*+Hda_DGeIZJI4>Y?+x zyS3AsHq>b0cS{}ZP!;0Z-cUYJIWw`u@WkSH+)bOVqJUae@>YXynHE4mLVr%(4qeLd zNf;!l*Jl0atg9*!@jP{*PJdnk&AEl$V~R-;Ew=KHF8TyKeN*Z-?5 z$p%$HgQ{<8mOvVVc4G)TjteaBu-tnc^7tq1$QOLGcn&69E#1)N2mJs7o@C-UwlN6EB1^?R_Ft5#dJOAVB+Ta5fhOm*S0U&&6j#b^ z3p(5xG+c6??(h7ed=WbNPS;tYw(C)r;+hPp0YiW+9chIl%Ixsnua3$blFT_JjFBQT z^u+o1aa!u`3bVUcL^SCRhuvYDa*)?TPb%`Zb9zgE{2mUEz)c0&hzE|D!hU^2*E@Bc zHhW(?%6+EG#mgwimBx2S&0S7w1gVU}*lhOjVp8>>(%!BmcE+mb6u9UnXvMJ($H7~N zH1nj_H}_(m5-Y>R;&srE`CN~PeYm3kS5`u(wV1LY_ zCv`GS>^i>uz>FD4^&7V3XlRa12FAc{<6awE=6?|3yXk6pSNyC5#)B3>lg&;Fc|03| z;ujg6p^;824Lh~`VroWFYZ3K5P;=5NpFjN``d8&P8!jQtRrE5mFUs7rht%PZXbz=5 zI5y*6S<<*|5+0aQIIfZmD2Ffh-bEXtk8=Eo8k&{W{vAV>Xvwn(Y7Z2P+Hl ztlpe%Rqg2A~<@ z0aEV+Ti7RClt+*xQMM{e4C=ZcMH4;9*-VV zL3kT!q#A@C{|WP*9WArr`5ZgBU^t8uUTse+>Wysf6iOKt8!M4`w1OH&+@t42vZIO(qF7Ib!HSA5Fa}s1$F=c z6IK+HXE^OvssT;jDS55syHm{Zm(t2Tm38;ht=vg;5u;9#;EcPK=HEka3c|mCT`@Y!9M5~;9BOnFtqcSFaA#e0GeJrVB8Wh41t0ND*D^8bH~ z(f!AM(3p{|)ET>j4x3iLT8*BLvLX%e16Tro9guIG=a{0S-cX^-I#1x5G{V2!sGgoF z_%rGNB2J)A(F^D({ZeA^N97jfwx*Lx&vMMsQ6{zMfZ{WO+vuc3UJ~$!6}@om`;GOP z{2m$aLz}QZ9oaCXDZ(E;mM?JEijzuCbIj6FX5gQ2nh19T`Dub*6{Z^W=}do@URhqd za&qwi5$hG;pcLVcZNnCY3x+>k|Da={j(QCK1B=fTxSRGHe3FMB;BBMk$g%IwYwi~g z0HA4d>DCrhD*Px7@JIjKigM|?*6=;sOrPfr3_41izWm8}DR5ioi5>RmrxE`7M%j1l z`widq#`o&AX|$sMZ}04btgP-k{`sAKMTqONyv4mhLNpEc?m{!uAdJ(*Szfe`C?c$A zY--XbZDJ(8CG{oEOsk{OwAyH5Y|>bpCe~R*6s)#ZV3#^E4o!y2-o?fk0TEDP7pyN? z_CDv^KkmKD1^0zr?!Eim-RC#6v%s?qoO93Td%ov6=lp&@+rH1EmC(ma!QsK5Ju>|F z<0{K;+PC}@(H3D8`GNnO*{-VG-Dv4tf%$~LQ&RIt!9Su7Ajb(@XwcGYsfG{#F|Qf~ z_ju3EbuH~t>hCCq9ebMMmCo#TgKNp(+kSvp+!yibx!HW$e-Nq3YfVzKem%Q$mxQi34HarOY zz3#@uXC1b_v$-LE{AAa=L(GEcrABf#eaVy7`oAE>PccnM?*_uFnZhBiXG&L$h zmuBnG<&6`77Splmlui=3miI~wv)WMfZLqRPR|md@l;nQ!<7PYX52 zT025@jXjik_71ITs4=rOz~Vf@pBqnm^k;P~$-U9gkK*;F`038&o#4uAV1lA`+C+Y zSYF?n>7b8-bqqbL>l6ThFy;B(dqtlfvb z=0{vs-A%CB_=r8gJ!HO0Q}i_N9Ydk{oRw+?uaT0kH)qB!g!T4y9T%= z4^?^xdbZZ1E5r7}uVe)PptCtq?VNod_&i{FhQIfz#0!#E*R4%%jgT2dv;Ly^Jj1>V zoP`D$_a}MC2Y68OU#)K|jY*`Ws_neFB2ivZZhvj!FM+Z=!=GEb;C@_J;_x@0QCsf1?yrrG6~Yc}IH;G;uWyAKEcZb>%?yFb>J^rh5KC0TFp;3W;_ z%2;Z~KLHa91b_DLdSHvhEdl=dDUWqTrwBtFd(N3{R%T~8vpaxKlfCa!IQTmSpAS46 zW^5_Fp9@kz{D5N8w!{@myhv`G97-oHHQ@zN85BiGL{gGM~F6<|I91)xCq z00n_|_#U>`KHOe%ZQH#tZspjSW_%O4l-$#Ng@gY$LYLOJcKoVT87ldTy9b*S(;W5_ zV9^KKlRx-#<2`vE0^RjKes^qL>0};CeSPk?5Z_cv6-VI*A1L#k9;LXo=HczPmee|b zQDUaS^_h!g2TlH3*M_Pp9O$Eqwf6YOhdd;vIh zn4jZNKmR~*pS-^*wx#s9i$_J;tVu1&-+6Scq(25aivT~shrq6OX6@DG`o{yy8XEU6 zZ49lT8a53vUOv+RW%?oKd-~TJkJ+@)uJIQp+`dKec(n^2FtZoUxTc8kcS&67J=cu} z_(zQc$c@gGiAKX71pc6a@b~qs8+cmM_dRNx@_0v2nEEC7#@zYxJg=1K$Npy=fRI>F z+tU7vF#Z4cE{azgoNZ>S1%HJ4Ilfys_Y69-#xPqhw zgdfsdlFQ8OnKE;~IIyhYs<$p`m>impQMv<;o9&M}0Dqht2n+a&6O;BWPJGFk{oKqp z0?UdFe@fzh!8xN1{!!@wdfyAIh?~P*Y{tDneSzWc@7Y0My+;p8_QI4W+D9x0LF)Rs z^Cdl>S?6b5K#m(o9d!c|3no4~at>hcqC}O!r!s5%3xT@cE-mio_`1aEZVT4U+WgX} z-2NT40?@l8Sdpj)yBD~)&-NA${@mXRcu8U%&~gOY>z`;3iYfrt&6zLH^Ml!c9{`>O z6CW$C0PJ4UP+lQF8*HV)CBW?5&#TDrOYnrm)v?yXm*|cJpuq9QirMAmD*LP%cLGz3 z4FB=J=>c{K9!Fa5J?&GUEPQsNo@>(rFu>dYqYl8cpl)5^1>p514V6x6Fk>lV8PLG- zwf2g$d^={i2yXQ9Kb_vXW7MDi91{Z2yDYe*VY)N^4p@#pc$c6E@E;!@*opX0!M{n` zI%Pw0e?bJ`nxg_Rkp0g(fV#&EBLMpr$ESkL!#LMq2{3D*&!UJkzbAc*@9VM69lOQ~ z6JtsM0Nz?2cMf-v8Q-C=vSh`BzprP9f$hK+kG9COZR(TBH}cW$BVQZL0ptjRXThW= z@*@EImL#Sk8Zka?(3F|wYfhwZiU|KJf*S&~VaDc;U@Y-4<^-VE4J=R8IM-=cPMitsP_X*5{ZNfNUIGo=BM4w-M(9E=2J6y<`yY0B-<0fOf%e zK)*%o4dnL+o_8voW9n1KUQFq}dd_@$Ujp`T|FaHY@`hstVBfiMOL^fO6Uxk{ft`++ zWpD=Ydq5nh2PS9;7jQ-heh)k)aZ`P3vVAO%|1mEB0B>HLC@VA01-lLSWJuv3sE)cw zS4KXfbg|X_8IgDk=#uEFs(TzKN5ia z#TyqTs>{rl8(bxrNA}cO$l(Vlt4a&Nu2y>d=LGh^iw!?OS!G%P2DAS@1!g%TBYg0C!OMbwmh`jO=8oOb zD2xPP!P3NJXDmdv5;&XO>&QidzgGZij|#wm4xlWv3>X>s4**+))=4~Dzo}z? zG>Ret7#(78LEL&a?*nk<#|l7!ZGR8q*TAOimFW6S z;Vq{f2|yHiiMh1JXAfw@PdT zwxnR^jE%{jXjDW3FlJ-_`H4zrHXYMEOINU+r}VBu-O0ia;3}Z%R5z&o_W_huqy->P z@E-tP0e&fXPOufPJ@uQS^Z1bfMA2{TId8TrckWa(#lYqQjRpzCnWT>;k3UiPAw8>C zo$3aKUqO1yus2`yiNpUc@EWia=n!m|*EX=7zmtD^)}|fN9(^PLQJl0>I4@p>*(sn8 zJL6-*W&$%z#4^G#Q81D8&O=oORC5(j`5`x`{Z}Adm8F*e>P5Vp^flwo%-5U1YZALa zuOMCl_IY@({@IRbdoB`yC`KY)Tb!^8M}?Wn1r@@^8PtMmDo$~8%d6}MK9Ke205XCg zE9c9ug8xBw*h7~yy$|$wS*qL7GwVN+QHA740HP?RICObK4W1VjFk>M5uRy!J*W4LD z-*GtVwb36g>VmNmr#;+$*n3?ju?^w-s14{PZIie>f`9D9{{tyN1Vf@Il9m7f002ov JPDHLkV1gdNn)Cnw literal 0 HcmV?d00001 diff --git a/assets/icon-apache.svg b/assets/icon-apache.svg new file mode 100644 index 0000000..5919ab5 --- /dev/null +++ b/assets/icon-apache.svg @@ -0,0 +1,3 @@ + + +file_type_apache \ No newline at end of file diff --git a/assets/icon-curl.svg b/assets/icon-curl.svg new file mode 100644 index 0000000..6289cef --- /dev/null +++ b/assets/icon-curl.svg @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/assets/icon-imagemagick.svg b/assets/icon-imagemagick.svg new file mode 100644 index 0000000..2aabf32 --- /dev/null +++ b/assets/icon-imagemagick.svg @@ -0,0 +1,1286 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + I + m + a + g + e + M + a + g + i + c + k + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/icon-mariadb.svg b/assets/icon-mariadb.svg new file mode 100644 index 0000000..7ada63a --- /dev/null +++ b/assets/icon-mariadb.svg @@ -0,0 +1,2 @@ + +file_type_mariadb \ No newline at end of file diff --git a/assets/icon-memcached.svg b/assets/icon-memcached.svg new file mode 100644 index 0000000..694a964 --- /dev/null +++ b/assets/icon-memcached.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/assets/icon-mysql.svg b/assets/icon-mysql.svg new file mode 100644 index 0000000..53371d0 --- /dev/null +++ b/assets/icon-mysql.svg @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/assets/icon-nginx.svg b/assets/icon-nginx.svg new file mode 100644 index 0000000..f096d68 --- /dev/null +++ b/assets/icon-nginx.svg @@ -0,0 +1,3 @@ + + +file_type_nginx \ No newline at end of file diff --git a/assets/icon-php.svg b/assets/icon-php.svg new file mode 100644 index 0000000..11a8ef3 --- /dev/null +++ b/assets/icon-php.svg @@ -0,0 +1,3 @@ + + +file_type_php3 \ No newline at end of file diff --git a/assets/icon-plugin.svg b/assets/icon-plugin.svg new file mode 100644 index 0000000..cf745af --- /dev/null +++ b/assets/icon-plugin.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/assets/icon-redis.svg b/assets/icon-redis.svg new file mode 100644 index 0000000..ed31220 --- /dev/null +++ b/assets/icon-redis.svg @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/assets/icon-sqlite.svg b/assets/icon-sqlite.svg new file mode 100644 index 0000000..378298f --- /dev/null +++ b/assets/icon-sqlite.svg @@ -0,0 +1,2 @@ + +file_type_sqlite \ No newline at end of file diff --git a/assets/icon-theme.svg b/assets/icon-theme.svg new file mode 100644 index 0000000..ab7c4a0 --- /dev/null +++ b/assets/icon-theme.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/assets/icon-wordpress.svg b/assets/icon-wordpress.svg new file mode 100644 index 0000000..cb94107 --- /dev/null +++ b/assets/icon-wordpress.svg @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/assets/icon.svg b/assets/icon.svg new file mode 100644 index 0000000..539169e --- /dev/null +++ b/assets/icon.svg @@ -0,0 +1,57 @@ + + + + + + + + + + + + + + + + + + + + + + + Layer 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/assets/logobug-128.png b/assets/logobug-128.png new file mode 100644 index 0000000000000000000000000000000000000000..c81a598ba7c33c9a047847a77b9e2877fd44ba51 GIT binary patch literal 8888 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 KMNUMnLSTY*ZDU~o literal 0 HcmV?d00001 diff --git a/assets/logobug-256.png b/assets/logobug-256.png new file mode 100644 index 0000000000000000000000000000000000000000..483378977a3e44903d7b2d5beec2367a3d60f486 GIT binary patch literal 20330 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 JPDHLkV1gdNn)Cnw literal 0 HcmV?d00001 diff --git a/assets/logobug-32.png b/assets/logobug-32.png new file mode 100644 index 0000000000000000000000000000000000000000..a5e0ac19f60db3991a97b5969ffbedd802e9ffb9 GIT binary patch literal 1684 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 BL_h!l literal 0 HcmV?d00001 diff --git a/assets/logobug.png b/assets/logobug.png new file mode 100644 index 0000000000000000000000000000000000000000..66c05a77e8e4a20aadbdcfc2c45fecc084b652ee GIT binary patch literal 66003 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%0Dn>^I54^YiAzdk&8c8|B!Fd%nseuC9Ny}83UaY( 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 RE(Vy#d#bE~C{wfy{Xch$rA+_; literal 0 HcmV?d00001 diff --git a/assets/logobug.svg b/assets/logobug.svg new file mode 100644 index 0000000..539169e --- /dev/null +++ b/assets/logobug.svg @@ -0,0 +1,57 @@ + + + + + + + + + + + + + + + + + + + + + + + Layer 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/assets/screenshot-1.png b/assets/screenshot-1.png new file mode 100644 index 0000000000000000000000000000000000000000..5e8efce5c84e711eef0f718da7b356b20ca32508 GIT binary patch literal 26269 zcmd422Q*yo`!AYEB!)yAT@b+_f~XUni5fk6bfWj(2}UnNB+-cygdjw(AsC%eqD&CI z_fbc=+xK_=>zuRhJ?ozH`=7J!-D}OV-Z8WHGw*))^FE*QM5(FBJ;bNMzjf=@Lj`&1 z*SBun&bf69hZ^r5@D9<`J2~LbZMWBQuv=w=kJf>~T`MVNsav-y5Cj*dxWE|XEU)Kw z>lWd!o7ZimQ_wuhyK zhqBhh+k(+lqmiglS{$aI@19dVwj+^6yZZ3%D=3x0`4O6-~qP~0pjsO0g<2wEZa&r`vyoc`^@Z@L|+G^YfF~SoJ zm@Z^b2g$+0J_lsVk;JfWEveJEJ-Rev;D05AH}A-s4a4ym;mr5`{lVJ-I7I9>Nzhqn z`u=`a(iKUY!h>e4C33%cZ7-BzA$x~Dez#dn?<7JN|KRRU&7J<55hnBACV#FTW{O6o zhRZF}?Brt}E4aasL3>*{bn)*x!BwE0O;=7P?cUV%cHI_3)Cy@$xncZ65h9=JX_Xn& zQ-8lQ)SRN~Z>6=xo?jX;0h=D9>qto&_zQ9O1J)~^zgV&Czu8shueXHFRBcsFX!^2P zG+sK~t;5DGoQsaX6=4-4n?LomhxVzK-nq(l`8rZU~Q3!)w{!(9NR7_e$r3 zqF1|@4$ZAW4UNP^h4E7ezHLvkGFtqw5~3+tjBeh>Ti2GcYU2EUoo2WJLCQUT$Bjp^ z*q7?IB3`l|9PW@J<^@e-=ZuK4Z4c=CEKqQJzC^Ppce@P6;WAwoFiW}oHMDH^d#V*h>ufn)iQUdfsb|Rkg%;fn6x zEa6pm>CEKzlTqqE3Pr!eakY>hT^;NxzMYDg-_nE+wTN#dyCrFXN5b@? zUs9q1SylX0fqt?y4VeY5V=m2WfqeJweD`EwMxr_NjAVU=C^_%g3^PPmX$xz37r7g3 zk0Qk$G!khj<=!2Th1T!oy^wNLX4`T6BM|=B=(0|4aK?*EiOoNhSc0C`uVq_&1Tjvo z16<|F<|{s1g+K5rx%h3pF!dH{X==51j?#HuL!A}jzb^xop}F?dYJ%OBAY3z&D;Wc4 zR<8I)+%7U@Xt3mw43V6Oqk0lDS4Kny^H!)l;F zXpUs;mWZ}T;UfySTI&YTPPgGU-dp|PcO?g?TsjJuU}}xWMa71}S29g@584dwx)j$} zptUSQd|t!Sxn`X&3ZmFCZeXjTC*hQ_7mrm0#2XP9a}VUl9sg}T-s@LJ5a=Cvf?dqF z^aNg7{kzMC--xNOF0T}o*cvWxjU&i9&p3f=a6o*Ns!J!LXhMzTsABX~jyQw5=pCT} zO=YL!kLnO|1DVnT6|XEsLYx`)&B^N)q9u$QT%tR)h#4m+^`ML+S&1R4jI8h~N^2OD z*wuox75@p4JweKA_awz2dACVm)0F&-Fg(U6Dex0G@q4QOr2&b}zf!r94wDOuG#(=} z36K(qVWgpun*q=N@d1+^gx^Vt@jO0tcQ^GzGMUUu>Lckn!my&_lQR1KOKqKgBqtrd znvvn^_Sedl{o_~Y6@D-CZ@;=D2%2hke|5iqb*+n)H0Ya8=@6Zb@FBl{8KAH-;puBz z!hu?ye=>HCeL~11@s!1@l*O%dbHZ`6e9>;v&3Ey=0Qf!Yv`1o{M3dt*B&D>F5oK)j2Z%eM;nD!lm&XVGkYwfi%F@dx%3?loO(&mjQc^((65)AZlrGM zVjA*Ru;BIT37@{ZX~Y#hxu71RxPXHJqSvP|UT!KeWB|E`76$Td4|+t@qqMq|rjoMCd`2+{gt4Cm!P4 z(CP^=`h;MTI8_42WLS7`VM9b*WLif4Y|1>SUHqe#w^=?ew=HHPL?@xR(qjVLf9)KD^T!C1#M-v7r|{2V=XVX2oy|= zo*#EU*^wXX(Kh>QEAk9q-Hf|}+Zo$Fg8tsuP-95hN*!@IA1mi163Epq-AP5KiiuFX ziFSd$Q0U%%+XU`!X2T2@hxAoxlPt;~+iaLX_m{8H#hDnMFs%DH33BVBnscq=Tw>#N zELN%es(qDf!#kzF9Ek5%Hc5Js9n{~5+|sCy=p(oJ4|K(l7G_fZxTg{nCXrt-4CiJ( z3_%?(a^F)Qx_H-{uhjjGBZ2a>k@#9)Krn~K=wV*X48wE%pSfXBt`-bKtP+xf5-}T2 z3jNX27#o#xU;n{2Pkwq#(TmYqhc1riLowKCJf>+9nD0*xCz{-plj1Sa?!XZw+0LjI zQoL~E+-=@bBQxk@h+yuZA!KzdW5RjPb4%SJZ55WA{E>Z4ZkO*|n18eGT+Kt@t!%3z zaqGPY_&udu@b$MhhE$}7FwzuCr4`BstQmgf`MZq(G-X}DDr6e31Ie{H?P+)s@;SDI zNXFlPef3G8eOXhTx3tk?de6&S&9MqE=!1pA-63S;R_8Up_S05bM3dF!!EDvjN&Eer zsexYx{$n~Zb`1g$vdh%rC}A&kB<^`rI5wWb_J{JJLEVbfF0z@=^E=+gHvI4+VKBZh$Y)58R{t9mKaJgokO?@gPk%Z? zO{7dhS9$Syj9ii(2pS_54dze*b!L@VvcqEI*2;&?<)6~j>Xc>1>iaG-HYU{ToUp#J zwi-+8hs?)(jh+LW&l^j_Y+QygKVQTv zTP$)*J`>WKkZRcEX;CK67A;RTYV^ET_qglH;Ak%);qUOdx05Vg`1{ENP^JlaFw{K7$47T?gV#M zld>}AZ~v!Z!T-_;WL1=l=3g`Yp4jgAu)!-@yDAVn$w$zNmbkx2*b>UE;?S15;@kRm zMN>!1bYNp#S4%JI?2FU<_SqNR=3>$aLb?M*Vi;b%c6TahTrjf@E%#}DitfkrrOjki z5Rw@)CxLqh(f{-Fu4Ufd=_4ia3cLuKc&xw(Q@_>xeTKjFR#{z!bb$dZV!FcwG2$1* zv{3s!MN;5|6x~rE!-FdhkxJ4b$Mn!(W0m$$eb&!IJ3VVb*7xqwr-w3n96sMN0MUzG zLoBoP0tc)+@Yg~sgZTR8R2jG~Zpk6&J5fw>7c?kfgPs3Gcw(sFLqwVLd#G`` zpH{=0CBDUc1uOSsKnk<17HJ!_yFoJN&(xzT0C!0qR8 zadDH?Zmh?<=m?=7mJ73ufuX5<1?HQ-IoW*I0Tf9m5%?&X+qkQMyA@+sPYk0Jq+_%_ zd`fukr$b~K-ms7Nl1A_K`mRONu?-A@vgkbP$&>=a-ZQg8Fm3a%E<8u=MeA&zG?cN+ zo|JOuoy^*-1-Vn)%REq8YqEkVw}5{&zg_{Z+PD7~BYw4L-VT}}Cty{RRL zo!(f2j_4a(*JVjp4tgbuZBmT6QHN|ELw6$CUqMO8Xknbu3bbKbBDtya->u-7+8m2!)bUs_@)Jx=7P8Z4hSd_>3< zMptytJ-;p1ni|`pHOliBtw*(08je5I94yD(lzMJdw5J5B;g^*l#JVoZDrH{aX9aA0 z9lP2!_Gh#ZyoKls>!@dSdXJZgsVVtdz*I^=ItRN(6|N<= z#yUM<&7l*)Dth(Y*SMFM%$L?vZ=%MoOf%4+$pv~Fo^UMnTX}7*J}IU41pGi>jNC9e z?j_P<_SHg6#ag9yAau-bRTJ|yEjTd3((GrV-rDXL(+Fc^%^?c0n3k6Ix+Hz)%y6%; zcCM@5ZS}d;@wX4`rTUHc1Ox=UubaL0om(SbOK3aK3sQlTKc@n~##voXY)73v6O;-e zC3ZBHyJifvaWAkYP@4aJ_$y!%LMBG<4G5 zwT||KxT~y&vc?#`L?az>_9Keh;a47GyBb&xBcCaKM$XQhP<0s7UCkhSuq=KWXIjHv zxQy`Du*^Z$B+)siNCbw_xxa_@Dp8n2}mNggKrLbmnhA%F3K+eSv zJ+IEwt2dL`KxOEH$O)-4cyktie#_DL_LJXdxz{0e9D=yY_^D*9>$P3BnU}4aGJT@JQg8Zma%7}JC7Z;Cg>x$Hs*O!Rw%{jbqvvWmxyk=^YN^r zFXEMf9BvfSeRHC;Zw;Zz@;VkH2Q>}W z@L4hR)P=KHW=g_GQxoVEh3}B!nR;C2SeksVEX4sTq}f+s(mLcKeXCgb>r(D1C!eR5 zjhw+Z)r@2(*hmVb*)kg;#9Du0ZUU3H>q!M=ev=4IEs;R}Jz2?}2(ekK{A=O<<~b;{ zd2D&RXH8w0u9IBRxroc{4uCRU0}}bb__~J8v_YqDNwT~P$q=001c>HKiY(((dhMOL zxbv=itz-brN1K?D4$ytXq`3b+!}qVPyi33eHkTzD$}PBy3=1z9yGnIi-7iGw{54U& zz(xWjVwFT$G)RD6B%Y7scTP?IgVj%ElA}3!b$?Q>E~U7RCo(!ljvCedj$yXflPA?F zCs(}w)g@1>Rq+^?rWp$%?v6G081+GX7Qa?E*xF~Nq4&ohP}Igb z8c`c@_2nDXY>vyDYl;tN+FdxvvZ<@v7kYGU_F}L!fF_yn*&aayi4%(!w>VfKNGRhn zx9T_eXrbQz3AT=g+rDqMsVep~a6m}gVszkg`~?)A(BBgU8s9DHDpOzlUcVSR8R)0; zsHv1A{<7h|%FO6}D-ojh&imnc^}7Uhe}c%k9@5A4>3f|EjD8P#wx>16@wL8Egoa|( zP$AA3vro`aVVq6J@^+hHUvSi_N_QEp>~^@Z@n7~@p%q#!kWK4S2fWzW51fvF&)h9y zXVOEF^3k5sn#d5`c6UAI9D6@6XBE%D*P8jciThJS8WGy$5+ZE1`JVFHpYw=4wRyZh zbE`am4u6_F3S7O?PE~t6doWr37G~XrDHf|Qv3B=S0l}kPI)eD|& zp)bca5yL7Kfy};D);uZhEBbr+s14#oUUf;CS#kZ_|IwM2*Q0CY+Z#KZh(kks)a0T9 z|4|@~GOp@8teh3q2QdUtcLby1kJ^X|haOz?lS zguKSS9>etwNG*&>iDa@?OpEI+DJxQPsO^VK2cay!3~w$b^3=-+WrAc7ETY`L2FH&S zdPNTjk7Zg{9;Gcf{c8sW^7{}X9=h>Q%*V>sNP2q)0YW>G<1SesxaaCbDC|7NHnAU5EZXQ>I6fX^C(N_#?HmI#RU*<`Jn#6 z(u>M$T(dPi!GP~qpRg6ntC`;~R|Y4seOzA|*v9_sOWMj{ zE@uKcJAd&>~`H96nM9*}4W^YQTLxb8<*N?ojob|9)*%t?-vl9Clt6ZCXGBMb{ZmpdEa zkT+&AR68JKJ|8SDI$ZiN!r!U@d*XMel}%l=!!2#UlI%E%zF#^}1*Yl6(#T@R?dX@a zUPzRP@8^|?X0_2AN|gr;Vc~|@i|KuX7JurOflwN;`N(g?iY z-1ia#$tOPI1&hvT@=DdE`9Rti!cLnt(o@-+o6PFF+SnTD>DOOo!tqQArN=h zc9sqKgFt)+F1`3nKR)cs@qT6b=**`aC(5SUUj0&mc1rSiIiygQ$`Srt`upqKRw}j^ z=JtoZZ@;C+0n18wzM%#LZ_VSozEW6fTz&B$o1APWaQ8fcYy>)1$&L^>yQAh~C;r

h2A_+*Y~QXrcJ8uea;`VFUztr;=q|z<|9S1(21ZNI zmecWM_AV*?{dR|%JZT+zuk-{%ITrF(0>*DE-2KeQy8RWF;uKM2$IeRg4Z(HyE#y9Z zunp)5?9<>uJAg2Cxiz>?>202%&U_ivSHpZ@GlFcS)9(#K14% zp-4e*o5dkv(?tid?_L;=7eRj`jTfgO{zzqj^rREw%XxPv=ndS1NFpxU@4m@dxvzPr z;hpa-Lr(kK3*5u*f`@X>+q6E=0i*z&c!by05jMfPV$PgsEeQ-=|BrK~|4-a3sUYK7 zn*BscMG41B-fqg-l~Lc<(lY7nh#0la-P%V-_`8WLAFp_le9ZCVbo}Q=a&9e;dj#(M z2jsH_$Cs8?M4nL<$8mc_POfVCgMGt%jnW4JC@uyAM}Kb0?_QfDM-VH{e3quRknTxO zpiiH4N{=+A1Cy?Datk;eS2LcVU6t{seGN%ql?2LcIHs_gwtT)E6VU@*EH5L;b+rl1 zcJ|kVEE*{Zltj%gaVct#*A}kZ7O5{$$&y2jL}0~N04t00Mti@)E1C1)i%_I^$U(6f zb&_x(gKWGHYLaLnj+ZgDJY8)v!Jda~q2%1U(I>T{r_NsE_2rbC%}{Wp+@Pr%R}nW_ z3EJ}5SVGP-8>g8lfQuzpc@&O09`hloTNxECNQNTqjv37>%QNd*K#Zww4^tDkZUy7r z!&cH6z8yfS^3Juya2>`zovg(z6X0NEcWscbuVL}^+aURn-;g`PhNh9W50(rM6L8#e zEmI18cC?Ua_Ur+yt0Z0i;&dciB8r31!=YQyeo^g^`@llU<!#W}8)jVwYa2o(T^ zz3CEo3)^Y*P@kZn3qE_n)xZ$8_Od$hD`*|&6kR-^mr|btnO6NigyEH@FfeWi+aaTCqwm+EcUXIK`vABGrsWz;nXj z)dzMsGQ-h-e^u2inP-vQ;^>TYyJS)ee>x^j)o*rYalAZvuR5vB2`0Z%MF6hsG<+P- zu}_Rc9>B^e!}u)Zl|e3Cy4*ba@3r1D8d7x65S;h*m6)$5UYm$%;p}Mw&Miy|&G{Rz6&0sQm7lP-z$mQ<3hviw zXTyD#2~5(H=}~Nd8K}p5>onw88f|;QtD24YZGtR7a0hN38$|mbisTfX#nTv{9~Rcq z5og^$Y`{ZO6GOA-53P|;%{8!Plet(3yehUsS)TYrSLum3CX7urDxooUN>*y4G3FHM z^4dS-Sk@O-GB<#Rkl`WNXz|{xK*-{q9D6VvFe}6ySyu=qQquzO;j^EpD5$mP;a-xN0?+{ z84m0|o*q&?cVPk$cD;kmfQrQE3HnQ{d~McIjqto!DVl^9+X@}<4J%M1Lo1cloc6V>Xsl*bEM5aK zj&nEy3SwpMTf1ybTy&wm`Em-dG+n9Vu@xz7P<}H3Ms1o(|3AgdU@$)313BX}=~DPj zjvjHHjso>)#dGaAsza6KOLhCTqB08!f)thHiL1a>B-byvnp|J+xjbToPgdE1@g)c~ zAY_9&9E{*II#rV=oB}x}xZn;73z(-6Emr*rFm0apu;8N2aK_%d*yC3UOY3t(MdJv2 zRt+#IM_SaIN3LOc+Rsstd~IdVme{zG$1uDK8zh7|p(N$6OM3nLgcZ`IxM%FuE#TKj zN~7uy8;Er>%WTj3zkW}|>iac@R`CJ9#GfkK8@!t{q{{Q(MolZCnf)1HVzNx1F zI^0cB=kxlox`CrT#!Y_^(0h(%VGxbH)Eztzh0^Xl4NpA4I4K*Zx?@M{>V^|;C)o>OUB~M z<`Oyo)^YN~W*5rSRn?CIhzNybRlFWCA)cJ`fbmHI+ed<4{={gf-RRI-kIo9?lb>Jx z&i~r4O4XhIbml(^xSfnew0~*KbMe_!X|)tBr1^7?j5#rzKKZjD8ltKFdV|{L9hKtk z6|F~@lOGCLe#WG=%69jE6jVS9z5`rlV`8?WAf#>bPmYM^%n0s%QSkX7U(U4OdG6I! zoAsIyPBJ|W=mAyctK_c1uH}tif!o$9{tb70${l{u{b=bjBxsQ-ROL4RyV|$c$bI!L z$WY)OYb&;$n;Lm!1rs#0_>ewM450bWdiLU=Waq_II?mY41jA}0 zS#AX~$$I0GKMg;tJj{J`& zi<4b``5=emtGT^WV^kQYC=O#ZZg?GDh4uo+;YaTnK^&3~KCe4MMHw|;F^9dg82Q9c zOa9VB#==%46V!9jfA=+hvyp7qBE_;he8QKERellPLY-3jNCA#otXsZt#~}ReH2M4 zr9sSMD??Jop(Gcjx8m@HFTJ05k#BcFIe+rrnXi3WJx>^#V!NhauVJ?o)6!8R#{DlI zRE#3Hcj#ua>ux~)#SWDxB0E+f6KitGd1Br-Bw~sk$gDU?Hhe9iR#d+jJQlr%ZNx5& zHD5N55f#$=tJgzRg$4mNy@m)tpHiJD(8SUCn>rpaRKJe6j;O| z0er^DX~#R?r}Z!GFZAeJ8Wd=gm`S#fxTz_zNW_78mF0gQ3MKJ)LF&6oJaDR=z1 z+TG0YYqPRvguu%KNVu=D8Fr%_{wGqH{|T&8Mn!3DxRId3^e?!m>Bs%wvmYY3gQiLJ zo3DcwOQSunU}e$8jy-bKR`TOn)R}=nJY1QIhePzwu=sVGEEcfVGcmP`XWs=+xw;kg zh3^#hUgE0*w=arvOw!xkT)nCvzA#M+E9y{=`o{n8Wbtt#6lKl9r7dGi&LewW_UbWK z(_znY>$zcv^7 z0?JvI`UXTt;ihDXv-4zmTP}zZgrA<&oAC?!>KA}gCj*|2Rt$7Xk0&j=?uX(7il=xT zqmq1Da7!=#G_NvSLk2aXq_xP`*T}>Sm~`feW>6Tzmvx7)+o!G}CdL=WrH&&L1jI-i zX*hAN+sl-Mb3*w~S_L`Naons5ox-vRj+U%$jRJG=k(=pwDH@-&z##gRR_}FjwM8wh zmdXMaqTyXUO6) zPDT8mFh>Ch{xHn>iN$#f{aJ|6QQEfs#1kRIoYP*eO3 zl-~DOi3&ma5QZFFA75j^cKC{xJwYck@pcS(+G(pJ47CsHZ(#*!QzBy`6+A{A;MB}A z`p|d0s&yVOU*G$pR8-SI>XWvwsiS$0t_-lC$yLFe$dAAY!(-KI`1rMk1asC-w_284 z{65OyF+w2#(8<*y73}qHhX7_zLGX2=e#c_fPk2Zj4&NBMLb;oHnhJM;N(XqRa;<^l z+7#y)L7JaZBKKxPJ>5~>QfNk0Q|#kNdV=qTCDJ-wP1B$2PCoFXBNZBX8Eu}`M6H#8 zPF{6OSI_f?yl@A<-zGD0>~YU~I0Ii;a66hA@dns^-@?q)1oo{OYl1t@rEqDX@$lIK z{`@th6{G-!dzm_?J_R9T$eyi@jk&q8(VkW?9MgNRzge{S#%lX^db@)w8KP1Vn0)HH zJ}bSQ9fFKgWqL-?oX1z69r(mW%5Xkt`S&ATfFA&$?it<4j~cIoA{BwfM3OeF^|Gvc z>mNkZJq&jZKPysUrUCF=%D*Iy|Ag!LzdHf5Eo|XZY@Twk{<_*`pPpf#=I+@@BhCk% zi8CRt4hec;{!rcn1}f$25s{;vCzNK7&LuQyj%u`k6%UC@OSrUr9n4RSrph;cdsVJh z2+jF9#>>W6!6=sxlUq3TFsi->y5@I=T2pKpnQGQTpMH8LTp(+G#=nTdNaN z*%a+yroe6tQo*ZtRG5VKBhAb#m~nORJxo*zx;fO7IoMhD#>qckc|OKGRjtaA2;|d& znI_qM1>qKu2vRhc#rDO&{8;-?X(u8sniy6_L<(h`k-srp6)=V=cORvwjPWoa*+Y}w zqT!nQm1Vq=B1VmLvNBZ`pB-msW zms#^Q6{}Y?9N54B2%hR`0t=2zegoqkumRTC;=WcDW8`8mNwqPUH>ia(63STXLIUeP zl4^X;$UZpFy&hHpaOa$rCXQRE)TP!P_0*sBEez>0iMUm?5NZ+)_7t~z~L&O~BMekGb zmBkmZZVyG^dZcl>+v^;xKmyJB463$UDpnA4Wd>pVo6-$cE`W1N8gf3j)) z@4cvyKu)+~oUU;#SfjXa?@!jmbF-mm7mnADVnt2~TV7P-TBU7Xz6W*-M`?intyZ?$ zJ5IFl_C!8=aCUBind1Rno~X9{Wa4|i);Pr`Dtb_Mw%q#EN8NkNQ-unL41T8m zpuBAEPk|N?*SgoKD*j`hakIDrEUH1O>PD~OH!d5$bu>sLB9VyFfIa)fnZ)+;5iKft zwuU3?dG4i^+V(E4rcOU}dIXsOI)9=62I@wb>lD$hwpGvCVl3p<=A&gXuxL8642CHI z4lCN$xzL5}U9;hH_O<#Q#M=HxD`{*&ZqR_zgW}8>(<2t|+zPT^>8s}6zw~wIni!Om zxzDQk%zIWvD*TN5wAE{RCPPr9;AlIf?1za>^!ECPj~{IBu?*N5bxH+E#BS+Rg>e?u z@O*JnWSvR*A@?t!X?EpiH4Hbn2Gl_D7Y0#tj%jiCb(Ezi1UlDRjw~>{C)$jMDvjNynGm1e8Xp_j3>mep=ZkMS-C9&(Y&N% z{kVM38Y;^TQUHB9fj0Hu@aK#&w&Fr##Ao8~M5xYdZu>Ot56UW~H$L?+pc*Yc8rL009=Eu{~%)cyY{?Z`U6vaIs zAT5DHp8>VUr}X9>i^N|G|J!<9jMh(WH(qLL*wKN-kf3=1pE&Vuh>!~zFhWPS* zsMbp31)-1j^zlX~-Pw;)IHS*Yo!U=WhtB*^aAn!3cRvM_Z<#)>0d-cJKM9jB=bnzi zx`e;SLE!a`gl=<$;5lTC;_=8r-@8Vd?9&5ADT>&jW=RdsHqis7EC8NCvn6k$g7iedV#(xri|?QOS*2EIHI=rDMmda1V=jDo@kRMI znyqMjceBEiiz#x8#ZQ8`Kfpl>jFp``8z~8NUMq048*LH{zqrVJ;$f}D4H%t;=dM06 zfQp{{w{XG0PJV(+5b8x;P9bJ2#Ws-|3)6?O$GsDm8@K7R|`6L}% z@x@%_BegkgHkqfE&Q5I?+`#Rtb9#a!&Uw>)hxLkRe=Vc`>Y|DE?R9rQWLoNa!U|#b zHn+nKf0i0YPr#b9c;DP*C_<)A?pySycp0Rs7~h-Mu@^E)YE6MWgxNyt6TO`4aQ>&Q z4gkk$mQUZqM#4AnlgnzBuC@dIR__OA>f3t2UW{k1#+|f}4_IfKKTrd-+9xHaFCb9v z3NJ7v|6}7!K%f#65E7#m#J%$Bfo0j%qtLnZ7$bs$oW77`luaA6`|<1KTGl+db$2qI zXKgtRCFX!Q2%BcO5f{hD8}}nrDdwZRUhPkY)b359o#xNNc1@SBW{R8u=O;k%*OTi=D#_wNjr#^5wu0%id-DoS6ue!2M>{fZR(vDbL%_I&5B$mzluMTSk;$v8f2d2aY3DERvMQ-ES60G@O%pX-lwdQn!j18qOKS?AkI!NXQ3 zZ!r@5ckUnt+7cRks65N=BC>+OKZZEvltZ$?|yMjhP+G07DX zbNi)6<2T1;k7dTN?grhun3MiUvUpAdF0MejeXdL^v)+O}Xrg({j(*E?mCmUVp)q7? zqu1u-?s@&2juSg0Xt906=2w;pTE^{<|E_QK(~rPD$0iNY2P{F}WN0s~Gr3=PVU#Qh z!3j0L;cr4BJ9k*ujDr$04OO-Z{Vb};3ax*=N@jp~3mLedRla}C3DFZDg@)B!ehE$; z5eJ}7!?zbs{%3T+vm6BqaIPb5o#Ce?Docwj1D@c3&Azo}FPd|P%rL1!QLylCs#=m0 z%qY#-1yr1_dRndDg)*oOmG{@+?*o-6!3QoROG6UARY`%0i z7b~1?5I#n$Q7hE>%&>*PhSaE6SKcDCe}(5+18-M9w)YWGtZ&EtdwXRVCPUZ|K_sph zCqbdwVRyZV`fxjn-_P-@aeEvw#)ll8;kDj2Q^%QQJO23n)!NHH+e9*ek><)SEzCIu zhtv?d<7ix!)0?)ugr8Tv;P^iE`O}x(-zAK_r4n7F!l_oz-$nHz&w%YS%V&0>qU`;A!2j2A5fnh6fKGt8KWCv>v4urtIl#`%AwRPC@BX0EAj{qCN=>kb5)-Sd zL?HvTgIp$YERwj4KO;$vjcDTZmlgm_6m`o(+&+JJa~p}Yt|?#b^YzvL*WNjpSVS8u zwKBE(v zPOg>{jOx>WcqF!0Y$g4pnH*&R6nv}HBccy5+H&c%gr}T!K0!TCH3xlg_>iK(Ut1Z% zsq^qF-uC8sFL%O*K7`LZ1&KYlZ>MtpW#%sAEq*dPRShT=E`gDvCDq_p>Tmj#l3+AQ zR{mnaj3mFWRz@hmCydQ*HcF0!LOVF+PAzEa(7Y_aohNO3^K4!mQ-iU4BAH1rQD2L~ zlA>!sn+}r}hUl{T*Jm#KT{Cxy-}3`jg@3ssFYH}UP+pA_3AN`Ii3k_GMlY$zW>5l+%mvMPKZOI#{B)+~;-bRnSW%`8=2&ZGo(6}s$Sh-3* z7!|O{>|XAVoBikvpE8a1a=QK(KcmeHnC`ZD18C~r7dYgZv`enZZx0|IOMJb$j2RXF zf_Gt{RYeyBFZGWmBW-(C{;nrsT#+IzhC*H5iw~2YG6hyxMOOaDe!j(%0^jV)cAEM` zU(&6!d<0l?0IS#9FY@xD!ZH^jR({42BOqGP?BttZMn%g!WV^!JX`Ak!LsOC+l9Jpn z=BRy*q1aDkOhG7SvU20tUsemPeLWPgIt)=ZncNX0C7#Q7nPcJ$jxlBAm0>I^ zi)HE7uxQ62<+AFcjbk@4Z9m($H2nnadv$wk@xhQ=6)0@Am*oNi(={yNozfwWFj%h{ zgx@``10H1{(*MpM%d`p=Hs1Y}kz{bi^PG{B^?(01ztp-9P>E1pA?Qu-CNn;ek>Lsd z33)%(t{2W_aH{QSP%QWIW#60xz+~kIxM(RA?N7R7=v5F_vsk>Sb;nI3r0ZPn`qV5@ zRJOzR-SXjgcXqYcI7+EcPKeTWWrPARaPVdOk4|nlPb*hj*sAAN+tq4JMcydWq}Rl) zN6mJRTUx!IZwNo^oML1`T^u>KzP+cZjiV|S=C*3bXYz-GMeOeTmlO3geW$ zu#$eLfxfAIB!Jontk_qPw`b$;X3VhF`h(JTXDcqr>*UvZlbl-iH5=ElH|awn@vs#Z zj^J~GKu#!S%VEFm2=m_q+>Ed2utO`=#f8pY=k<{(&8x4|eBQQWN@U`*BteIHMqkaj zItVtW7YUk|Vm2|!NmJd)A1w|lYu%-r9}IRJjnufOaBIe7SsgArrDhVTuci)PbXUAR zudH#uOgl?$ev0m*EA;Oxj^?9XMa5mdZ!D4VZ(R{6>@8@d;A_QO*&7QTvY{O_db?EV=vOm=Q z?7$*umo$t168~I65C`|<&oYDCXp1u2n+zP1zD(~aJRXNAkcI90*K0?vW?L?+($sOB zt~G!AYG%qyRp!c@=SJ*UgjGI&%h%+qs(XQc^RbtOV(W;^<=1Y~$~CL(Hfrkvf( zvL%r9nY6!Ar{F4`EAbCbgHl8%#cdy}vT0JE0=D}B^ze8+QX2&UGJ z_{COs$(evlmlj1v8b8sff?3tPuYcJM){dCdppJ+7-LdE$Uy|#Ip!L|GtMLzGSG47= z@z*@leAQG+If)A;+6-;D^qflP=H&aqnjRMVuSB=<8apZGsFjX50yVNbcc?2WH&GtMu1L=WG@Hm)pPZ2Y$xbl&2_GO2Nu<&O>{ zS3NDD?a9#Xye?A*{r{0hPW{!&oc%Xq6<9q zFDQ6d<*qO8ULCYzI@U)ED=bDKq9h_q=8}CPw5uG4}l3Bm+*c(Zt2i zR~V65Kt&*W;~Y^q@xz?2M-&kC*~x@m9hWkln@)SL`nk{Z(BzRFxJu(Ucg_PkPqy8P zYE6?p{-qb!c`u)-dOb`$eg$~G7rc<){Vv{qTmN%^6X?0r51a*|opxfITesey2g3&F zi1M|i=jLW83wO46zXZNG`U|%Ha}YNN>!Z5vjYv5=j~+W79g1x?zLLn)Kyyvo!h$Dp zVH9|!n|I8D{%X;EY=`6{t?`37YJPXT-wEYR4A|t6Wn6RyB?#53cb~tC{F7q#g=vLl zdM_7+^+1{o23blYzkm!8WGV0cJrw$TbTC^!n_$luRC76gl`k z!}-X-P)@DiH%P6J1~kN)%=J%H)Sz#DJJyz<4f+&O?)YA|3aL+`H8V{f;kX;0=Y^3R zDEG@Lc*&hXC652F@%RkDBllyp=UcCRpNi|(Jjj#1q^AoSnHd7*1=Sfc@Fx$aGrYMB zwG5QBS4Sc04?J$98H#_TnRt4AeKQ3eZPNa@3vsFJr02Y|zta+YRC3jLHs5Mb#2GO6tnAF&tUO0@TP6vxbom z?_^6ZXNrA4E)exU8;zgbxV)xy(yBV7bk)-IP!ul~ds%$kzlOoaxU3sA8#h{HNCeUQ zh#9vboKmA(v7KZW$qbkdqASm$Y&)}P?bFZ#g679NFFAVCyh0ju`-nb2by`hNfsj?v zT`g!qb80$CwX~}&0$D$Bc?Pc;BjgaO_{CWDD7L~NZm^*?Lg=T566$^6%;D!1{xZ%a zXQkX7Y4e?tp~A=2(NyN?-$av->mA}iok)_h^d5miq^%M7rXRi%!3GHJ&Yc_^Ux%VI zz-hzPFIAM}zk8jFe(Pa)*Q)lo5?34LjXBp6*JDFGBn+{?)6|?@N|3h}L~xI8zlV{FLfGU3vU4}^ zmm=7T%ICDEAR5_kb<_Z~dDH^4Vgman-}`gM7IUjiyh3s7!k66K&C5;tw*s zSeU45!J8Xrk@JfVBZj#Hoc`_mS5fD+i%jh zRR=B6>0`Z_hqKIp-lL?9^x?SR%Q{vCl#^-&pxul9rxl6+v1tw66-mN0-0bJY4}}&U zGX!ANG3%qO)qt}+KOjj1{D1X!o>5J0`xduLM5P3fDgsA}kzNG^jr86Gl_pK4i-5F{ z91x@vP$2XcL5hH=5PGBrfzXi}dKD?5gihX$=iYbUedB((=iE15K4y&M!ybF@^XbCZkar-?_kuk;7)`8zMOgw2Is9amyqqGZ5W0f#YOWuxnjR|go9w^s|Ga$jni=e|O!7h9@9jsb zQ@xWt6*ZpkE&K43^{dnuYYW^__!FK4mOi+Ji5PHd6I-Mk96^P|q z>Or4}1C>#kJ!F@q@==#Y#p4;p+;Vr_)Jc%I`i@GwNblnshGCZq-943W9YGko*8@y| zI|@Xx{!(`7HpKYD*Nmg#jH%CE3YsgZ`1l;sV2NeM2(kq}7)_h~@mdn}H*Mt_ZqqvG zkh$vn90-#gZ_i3qlom_66VH#**k{t4sv5=K&55%%%^sUM3+IW>o6$?|#XN22efF!7 zW}89>1`E2JhTSFO=@3O<(@6a?j;3rBPW;28fRl}!RfSN ze0LPl!*bw?$HiKD;)oLrnX7fjG7~wpQMc2T4A4K(0c==0WaEv2F27T(TasSDcCAiDbd-=9 z5kfm$XS&X?Dz|lK7T6q$RKB?P6+MH3mMq|K%&yRR9+ge~oDP#so*(CIVthzD_IBg9 zsDVt=4a+}~rtU6fex4;83^xxSBG3N5|%UrRR4=b$VaD%@raM#Z0YHf50aGHihR zFyB9Rhm$;msM(ka;%{hReHeL_cVyQ+3eHIpzOBffF`kh3v@7CKaOFHfWlhs*l=s80k)nG3;T*0RvM}Ti zzC#tp3wRI2YMY_kaIxb17cSt)1 zimATqAPJYf7FRA-Vj+gSm2nJChwm@-*X_Cm?s}T7&jiVso#GZ%R(pIQR&%k@^VCl{ z>o8NjM$u*r+m4LTWz3zHLBB1`zT1I8gA+TbrJCU`k%lY5s3m zZr2+>G>v~tOCRG2rvI6;C;R;++wTM8Kc3EXZLAMy_lAQz;AF)ci(>VROMLhbJh}4A|xcmFc|e@5L~PFdVi&uXBGGYfq7u;hre=^ zC16*zpoxTG$^PQ`nXzK*19tk3DnSr_h*U2E?5bXvCF*B=nv%OhO` zc97`4HQ|;V_iccHwSWTJ8>+4}7bu{C1uc(=E^o4a z$-y~9Km2D;V>T5~^VN0#-39)6lqF6P&Dj^ist6eTi+M!>RgjAep)#2^#B zQ}HD`R-Nj_$Fzwt%g8^oGG7CzDl{buEVKSz`N7V5UtWdRi3D;XG3Zu!<>Wf&!g>zSv0`5-W zRi=oy5@FVKmnEC938Rx6b}+05sC--S>)`2q>x0RV(i}%V*g@y1%*tV5Kwg=B#Kp(! z@$I1GXRC&Mwe#h3@LM1nm$cs%s`=35EEZ;Or^~PV@r@tduX}GDrX>2i+;T|P*^?wl zq|1k$F41aAxN1(s^Bk2X zPiWjXInV6wi3srac$$nY2V;cBezoIRYZY;B%j66?wpgeD#Fk~A|OeHI^P?er%>E668|N~rTtk3uPwc~ zaiY%Z#bm(f2E3W`ArRuI_GjW`LD*tdE;9jB7dh_tK8xJ*klCY6JZm!@B)P{sn*+Ln z%B%A})`1e#TjMF9oa4VS2bD_z+a7r4}0PE0K#T+XQ0C4!pME@gm`w zX1vJ3Gf5w0;<%I|(4*|lLvw|n?ATUuDoZ~`Dy*4oQ0}bJJq#|l6&Gz%q;RC&jy-9U zFZc9;jGVO4eci2`&VYYJlYQXgewQlXf@Smj*JgdMFY|uE6rU?uJ*K)hsHKeAATAn- zGVQVPW-ds-?ZG(6o`cCzzp5S3o2ryvUksKuoSUqZFtJIguMWAqc1$t z92a#JE9iY;hog$YK{P=ItYI>!a-sIBDlC%7YpY<*uvysFc39zVQ}V36CMD>x<(6YQ z#PAUBMnQS2=QV(&GDdRnJlCK&z~it~D>TI1H;g3@d(R4TMsyaophpwJ7Uzmy?_c#E z5YHYS4}T_fZlH7XqW#r#zJ+M~rSpeO4Yuyr->u%!=8_85pdVYR)`GIT7X?i#DO_-S z`hhK#+AvQ0Za*jjeJ7IO{F|&`31mS+WFzkuNMsbFJo@vVD`a(SNVJ0DXpn%CwO_qo z?l~JX)6V$qyRF+=|EkVIx%I&MX4QxIiA&ofw;25ko@7pBB{4s@W!m?%ADS90U4d=Q zR17PUeOe${pWsJ_kEC)RBxMT)-(!i>fXbL<)ALmrJhMIWc4G)SJH$JN9nOemF}bs^ zaHc39a#12t)$U^8^T=Nkg~HZ@=}v7U*#4~;0RR~A`bUEY4maAn{3>QS1=!V3))vI? zqRPa3+#ia{3JEm$r_*`Tt9$_-Fez=Nt`a`XUvAdUs=ar<16RQhG}&Si>MZzO zD>=vqyFU;g-`z_l@xZt`R6hj47gvzX0jD9xyOL&9rM+v3!O!^VsHkh9;o$;iPkanB z8J=(ojWv|;%#@$i<{jkllu6j~Kl7!gn88RNSIp+pPPvC`LCR@tCWQ69Uf{Z#Ag<4< z^k>n8vhGm4#*-x3y{Ru>*TL*>F{N2#yCqIO8!YLr0L-f$p@K ztbdCwd7f3-Q^KK(&((fF>JU%-S>!u^IDO>-F+_24YpN0M!d?yi_vOs8O6)HOBl2D}Azl2w3g@fV2&t@H zcW|*|%I}9D0-;l%UVONFv5L6`0|5-IV2RD=DWp{VADtdbX(_mzO zXN#T7Ph2TKLy-g)zG08}XjbW#0#l^&}O%oOv1q}Hj$|JZZe<#6h) zviEeFfqeO-pgf6W>J6Xrdr*mx{=vp}XaFqV09W^ag}@KSgPe!a$CqpX4`d}HHCeAQ zN99AwXqdo&owrMuBXj9fCO8IhxrGCE-ZFJ0P#nJv|F-qvmd9nD1VjiQ3c;q)h~lVM zRNUY`M#=3@9tnTnlcZP|UVno8Ta+&NQKM(^%FR?qu1{FCv(ZvXP9klq_Pi&tvIUoQx|5%M6e^JgPP_+viHoTC4&RvSL z6i=qhxLUtvoKBS!a{Pq_L5fKCo@_=DpJIQ8bxApGI#!5SN-)9Cem>$B+tDO6rO2Si zlb7IgFPCFn&qN`cgCp-D>K{G7c{HTe)IOCiI`ZudF}p4kIad1x4-Xp~;I6aWWYx3l zGiMvFdr9dY3j;YH!fC=W*oeE!?=u&w6ti(A>2xb8;m4BVqIoZcUJsxq!&(e3x~3zi zF1cFyZ^9+a>t+XEZZ6_Nx?PDqdi%t;;_H1}XanRleElmJP#!*6Hma~j3f0VA?<;{V zzLK^`Zn!zoZJ%;K4m3<0+_+0wg-}sE$o?Eg?3Qk{T^KEx8-`% zzj1@kwNg}-6wB|=Vh@CikGxNCTrmpiCBqi(cp$6{92g~b&@Zqa%=TjX(_F!$f(cec z>?2;=x9Zs5Gc~qRW!HIsThJJbcXiC_4pEkdkB^=L(7@$@zlJ-Ul|C9TY0&=c#j?cN zQqp9(hD97K6Q*cqkLn&!8HcqXr$(DU;W=TyL?!Z3v zi95aH-~tr}eenhbZ`cOio@U@x=zlm~ra|x47XP%ul@d_Oq_Ik_A4~Q`FPQ&>5e)nv zj9_)iB}!;*qDF^eFF=cL1F!6N|MvQ@h{A^`HJ~0 zGGuy*G2QPp(!yJOyH;;1iQdUR@=9wuHEHTR7{jt8d{wxfW|uIRYOQ!fQ-$ZO z#9=*SAov)rX0<>~2lSK%t`mxDr|IX=*z4EQN@ig+O# zaAj)8;fKr}q;1$kU02OWllZ6 zVl>+>{C;cDG3JV~&2Y;KJS>4rvBRK$rCJkk;i?{gX$JDqYB6HsTo@Tp0}d|(;7-%+ zw!P8O_S`4kcx^k2>|3Ym@O%B6eJOfdHPtiJ#WeRRq#)n_T=*SZm|W9?z91-hww(gw zY0K}ON?mr%ixuyvc6?O&)tP&etvyC1=x$@vBTscj`mQCt9CS&ZNSsmE zt*9AIWH8WE27Jc~L3f4i!;i6)g0Z!!s;NrK`1Ie)yyIV9<_Tg2(N{My({$Mq`r?-b z;2K)9b+tEQr>(=4m$mt6FL{}R0j|H80~^K?!i;MY?UU4R{~}nO=5aKFJi9Uwm14v~ zj8L#Co*gT!B2{+VP_u=F8YX4jvUvL(sP1aolLBgkyd1bK;|GCMWwdlwCXGo=cDfh` zg;RJT`1VhAcLBSM(-Kn6N8CE9@Q>T^(A`EhA)Ysa=M3UH#0-M8vU)}h{fGS*=RBup zoby4T(%#WtT%0!e)4>aBY#6QaV1YJ?vFR5bVrmZ!%=4icyoAg$TGk|)riTx^XlDMg zX>Z+RP5ZTH7a}t!#uVP`)LOJXV(BnDx^)gKeWjL3>mKT?FuE^Leeq|GkgKi=vUiEU z_(9-3&m!r}!hqwfh4bl@>Z1Su1^+)5-XBV40Uai8njui5g99rHAAcYM#IGm11Syeg z?_X8Xoa(9^Dhg(k1C_p_HXjeCb> z8E`Qd9vxrR9T&pf3L>z1LaNo;*>;0%&f958AE8_7y`(aB)FOl^DGL>ivnjz|$vugT zf^>~MpsM`d8URwJuAnU<-B=I2V>C()t#D`5b@sg8Mrp5{p8x7h+beG-&9w2_dOTk0 zk;;Cl`srT06|uJ@)ml(1U+{^Wq&7c0L_2hB2za{yb~|(&=&RaB3cTx%V&BxNmdYYA zmSTIeh8$vG;hzBDnlOF1qF}8ZrZXY zwzB;olp-Q)jNsRN4VYia_IS-?o9U^R-?ymME-YNgXEsU^jKV80$(~u;bwFydWIOkPS)x8AeWRecZgIsENQJtjM z-Yho5F|A~phb>}}-;GUe+_$qZ0v`_~)cN{*fG+5n2+k5G;kK`y9i^|k0yt2Gcn_Nh zUJ+2=iR@s4#7Xsj2i2Hw8hLikKZthLP#~mZRp<54pYBEN8y;})+OGD=KILIM{-q$J z{vOV`GXkT${mDaSxL)AOIQ!ppgBG>)CGU>$zT1yzRLGczrK~L481NE&!SrVex%a3b zwV+`LYhRO=m}FLk)Ifot8t_bs0U+{k%I{COYv!_9+f)1R`h|OQc}BQ0RITS+nJaIZ zmt_JLYK2}y`wUz}I=gN5M8If8&H>o-bNnx^Zy*hA4N*aXM$kY@id+m=e!vs)&`}WsSEKPAr ie?N;QPG^REe$0(AvAaI<4REB)33X*1rDEvg!2bdU6UxT` literal 0 HcmV?d00001 diff --git a/assets/screenshot-2.png b/assets/screenshot-2.png new file mode 100644 index 0000000000000000000000000000000000000000..43ede84fda4a41f1512eac6473c6b2754261a9f3 GIT binary patch literal 70086 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

fe{GmUOc@S2EJNC%R{# zO~h}eKIAhu1{4)W?uDwML<|VeipKt9rqIV(xgb$`iE%%MXP_~+RO)E+=nCc%H{6m5 z4Kjwto2%i!D8Y#z1?K2zm;UiM%pf~9_EklH!0L(s=c@_NPx5rzJUeCRrzybkBil~x zU=la=>+nMZIO^l60)uwJ%I4ySxR$MVc4l)gavt!#UKD@I1{923YXXH!x?hKn<)+B< zGua&CM?dH?Jl*f;FYe2By)0?`L${~PYW^4Hf2EV%e=QRJ%l+|j@l*r8&{=n%ms!1=H}fWmu2q5dwu1ngBJgoF7&pM09qy5bB@ zXMI282dCSy_xx2aTDlH6<7}-;9a}>^Vz1wZf90__$GI@Sz{%zS-ln3zu=k+|-#+v_yK79xly;EUgQg_v-ffRJDyaUq%L> zlxF3(;q}QO)fkrcyJXe$A)W`Ou}!*UjoA!guGD2b0G8aoRlZi$Yw+7jz8JbzM2!gA z6xv*RS9c2#AUdy{68WV{{CPiFm;a^~c$%#Q;*!QlzH7?i1qFxVkwIdfkT`Npqknf7=KQ)x?n5sfTj{mjj_PGF_ zYMt(rP|t5@m$#Z62K}}t;1l&4*OE_$Q4slVJ>!X>T-SB?rJQ%5rYu^1qVXo|R*jA9 zaG0|DEFSrjG{HAtT!Yy9H?1#j!-}ar^<5SXKgg%-$vuUXH)e>VkkkO@tbkK}$l|Ap z+$0D$%$jgH8vl$Suu1h`%Z4PDK}g71Z?Vnd%BwoN-pDhYj3;@zod%fcKa_g;1lY%3 zu=BCVxq$r5pH^eaP;Cl2(Rdqdn$`F8r;32@NrvgD^hj$NrR5*ywcOAM`1+0Dw3k-T zh7!X$mvacp{4he9onZ^3441MuMC-n9<=+^6bi={d`594ftn=j8?poJA>ztXmjG8B2 ztvc;W2bHj^u`+xGWvy@Tm9l^zMtH-QW9)1TKqg$iA73PlF@ekw)twpGRh=nZ^F*R! zKfUa^x$(~D5P)NH&F?s};-{{d0h4p(^AXt(KsFlqqwjys%NoB6xRZakt7&Ve(FnJu zY$%)X@)=KHmCyl_pjKJFwQ-_DWC5lF)~Ah@ZEz`roX}#>%~$ zfY{Y9VR?P^KoN=i&?k9Te+))-Oj(qi$W2vFjT4#T5;_{NF^`o|J>SqM~1|Dh8cp z{=9BL-P#`H3hpfVX;Wd03MUBq+od@f?en#kdr6be1-OPA%YBaDisrnGigWax1~1XU z9ROjG8k3eNTbP{t!_n7_(OLZcy3}W55=xiVA2!MQ=|l2n!w& zaAUA^sw|WVxiUQq$RR-{h-1!lx*2@c7+t+i&leTJ~o$1P5qJg`_{c8PqvHnp` z+~?qp#KXV!@wa}Hizu#o0uHstYx>A-jh=lYn{rc0cMjf*VM2*f*`k|Xe>bfKn%6!J zxpbkvprPg9YnwGs_Nzl^@c^yP^O%8Va2hKGT2pO}xv{6v@&vcgMs^ui2vLXL9#+77 zhP;dvA~dS~vV4%R2L?xVAJ0uK z{x;WRMlQY(0UTg(v5$s>_%Ey;dlmk*bNyKbB>4Leo19YZdF0%D#==2n-Makp@N!p% zd=LcXJxZ=-1qASC)UlTGs<3(%3X^8&|AY381Pdd1hR%NgX2Linu62Nk)JAH)K4bjt zqb4h0T?X4NZ(Av_`{?W@;9+fdfid}naujy;#+7UK8q4lhKIi^VwD|pBG1+~&Hhj(C zP8SiSkiF$;9cq7%oy!ZIZ#W!{~P&gf`e))}|N&b5V4IM*PFAN1WkLE9v2Un?Z#6L9$h?ho=oYtGQMke{r(8&VP* z{cjPUUkgJ;(V`MF(EbsrZ2S;><+%V|lGXh`XHS)l*G=oG#7O_2uZtO<Cb$$F zEc?ojxhQ)C-PO!+jwOf2;@+5aUnl|kHb_5*B*T^|?6b%J;b7LjhCX9Vz60*r6IfmT zKnv&F?LMByPCu)czx{ErydCKAP~0ykM2H8;cYy{517$hS<&6%264Em6(q}V%4e0!- zC=Jg4rIX{YwUAhx-wua6;=I3y_qB0&3Jfe|+&p%nzPvb{VUnx_8X68fi@Jy$3X*-l zhxaYaRH1y$RhA!|dDp(j%cgWQQ%3ZoA6(|fWq85~*>zUm&{co=i!(;Qwx8v5_Mva3 zV`~5Psy9F#8F>xu%sl1xnnSX*;)5p03-uUGoqxY5$@B1Ghp#s!Qd9aCP;z_fTA-05 zt!9tz+KL1FXm|xZ0Ww5Zq9FqEbKm{dV8@Y9hNuT2!@Dcg9}zCV^&EzW;nvf9^BL4PT}GypBL_vMDj8>WwvIHy1o2d^)-EHC@xvd`K{f%KSfL%OnjQL1!{H3cvU~b~ki08af(W4Ov z_W%OF@^a`2{;D~5*Z+uKA0Rj)lrh;wALvubU_&>+-f{(W@PD~~Tt0tu3B&MW%kM3D zfdlw`H@*}6K4Tqg!~6MN@2;SCc!nQ;OhaluS)ZE~8s6TvG>ciMAX?eTZ!|!m z>o9txEWZR5R2s-TjSgyJn_gW|#tmJZhTTfa>XQty9i%rE0E3V1h?I52sG0#MvBd~_ zfwdL5DQP1`sh({P2l`xk#Qx)$v)$4>d>_MOjdP*DWS5LVHX}iKYYO;BiG`jG?F6sv z$v~5myG>k0PJBwCH5gKo#|lk1_nO$6o7j&+kfV+{)lyNRaE^7(_j32M?RNr7TH@JT zuL4REB}MJFQ`A@8oEMy=<1b$buy{v6wig8KH&0I*T_NCdqL7LfCuQ z<>&K9Hk4Eq+sA$FwUl(lG7|`+ae@=b} zTX&s6QQLh-7S@)WCf_3}d5WFVAefL3@VM`jeCpeR)afF`Wda96su;@VfA|ar_WE)= z>;&D`7}Yx!2{kmM!VI2%SZyDYK7>OP{iFbqJWTU^5c%14I|+A)4cyAV?BrX%7JXQnhAv61mD>?^rPW= zu2s5wrW9Gce`8`)r0^bFwA4oeU+>Z-+=k)kJY@~%b{p0Z9yjnSsWUF(2_?hdi>Nm9 zV1;xXWd+fPO;>rO9MTgl#!x!%&*7f15|ko}_nb#Lxi;on zezPVV81tz0%9w#;Y{0PLqV3pEeHUl?uZV!sBNzLw8Kz5A%7Ihy{uHQu;7swkm+ELu zNpI=mAH35e)M*FFnFk7CE}NQ1R6?!9P4r98MiTpDvL-@Z`@&;60Ju-5JU2 zrn+>R7D|$IOejUZpFX&oFw#sQ{+JOzar0{yj1zG}D<&QRT1DYTz(+3oWA%!>MYwXw zHkubpXIoyig%sUVzF{tCVtH0RtWO#5Q)Y)6mQ?|iIOqR|baPUk{0e-MOr9A`*lMugTw7~L(2F<0Bh~3}_WW_M2$p(lvBi@$g{pARo z6?pG^Cng?h-O)M2#C&vF6U%3n7WSQ=_OG4aZMWGS-xnBJOyBm znwcBlb$B1Sz_HI`;#^*d+r&9~R_0LF$quOP#23gC(%EhhV){?;_BPX^lz;R%9DoD5 z%2mlP)?WbXbZ4+*KpldRM!6)r7{{?>E;`RfgNGG>YNg{nk_W8tG5qJs=9{~arL1Nu zWZ0v;@#BaPH$kHGBrHvVynR7XndJW#=)adoxX1l)>nw<$&DZ4re6_H2K)k)IwodV_ znC|?-(UxGRH3yqMJ#))oh~qynC9s6wJJA8b~R0Tl@f;(dYw zD3u!Q<}kIOPU|E?viFcT-I;;JLx=*~f9?sT00ibSJfI(yZgBpx-JH5)8lW1Os0q&j z7R+B{^LtZeI=>d7NrJ;VoTqB;IrJCUD{}CVM;h=IULZdUP3xm|kz=JE_ko>;bQ?Ht zep?B4tHBpyOXG{yr4{?_h!#^_jpiVxYHY#nyTB9JS~6-~yn|3vk?d zlxfEG2_whmg~E8C`%8KRP`C#|)`Nphh?k@vxn|`X8|R{2IQ(t)^X0zTmN4)e0Lb~4 zP!d9cY)EFweDllfBh-eGe=8?q7+)b-yOEIYgE6F#ietSp{$Q~m7@|~m`*vMSF@^f^ z5{!|X(FGg5YzgLpaAX$|t$y~p?(Fbz;+{`=3AU`!2QDGSu90~GGY@n*SaoqnAK8Y# zWV>{hd5pi5zH`#Xv^=Tx;ms2Er&zC+KVof47@s^NGB-}ZAkbA7Ie|!ZSF;x*;7s}5 z;ZGptX2Sy&ao#+kgT5JKR+zU%_JFcB)*O`9kkXZI)+Wd~myW{jSnW0S2B3HRqy)|RCBHs+cB2>j#jTUI57SN76c?Z#hJCPDJOL$%>G zZM7LoK>Ng6(+>7Ta&v_tVb3DEd;NK@o38?k)g|hIT`%Wuw3$g-V5)R%#u1*C?bd9O ze)vDs1leS-j+`M9l|ZeOG{V8nPJskys8^vwiEV=YIH33gNB}FiDC|327+w%A0}gsJ z8eep_yI{!az5?uX2xC7hdE~U3NFq(Qx!9jv_6mB#eRVmNFL3Q8iZRNCHxLvC6Bi-; znK=7pESNaK@A#|EaglE`rwljbEm2ik;Mn{0;>tk~EVqwKv2-8(bE@PNc}>Ck+Y?h> zowTvfeEhaf7RB!t9u-aV&nOVf@&7{Q^X4x7V@F)d+>MuiiNY(_Klr?)g^N5D6prO? zkQL{|aW9v|lRw_87H)RFg%8lV7XSIWyATpivV#YWd7Gztc%M4vc??I-YBw+86G0eK z7K-YX0mBY3nz`KdII4FW_mau#pqM;#Chi9XMU{P(2=GH?D5@*mUxR{oVgX+;lKr)sDzW$GyDx>4Il`8g@5ro5v(^cF_4Q3$Z?!6gt`2(3wt#*{;SGYHY40Q zsP=8=p;AH%Or2h!;PIa`)SxnVx)dr(2m{Aen$;^^8tTu+%oTEMc%<*S??xtBCzsE< zTClZmP&~=^V2{aUD+C^s2fc832iEd2E*KksnWO4$7?FW2uSZriuBpdj&WR6Oh(#*# zgNFJM7Xl^S-wp=Wp!TX^@9^dxsSlTxVmg&xCA{BVm;IEvF?iVDNvemJ}qnt?aO8Fod zC?7<2d&np$cuowkLB;}+%mZU7fT5qBn|^NnK%RBOY^~{Gw{KjMsq2GIIJ<5vNqGs; zo&ku1_N5X0vWKt|L$U*TOrDJ^1dulaL3M0`jBd+qZreb}N-->o&xUp$WvKHJvn6Mx zaA|h2(Uenkj24kBO3&-%=F>Co6P>5&N&d4X@7scgDl{lrR)AhPp{B+6%)QOKIPMebmi>8HdHgH&96NiFVhW3&2Z-q+U)O|3(T~NL+|S zMxwp*?g4UCi^(IL$S2^S@IYNjDu28RdeCyG$L5R@I@OzzGLuG{2C7Dl;#wach}|U% z4+-M0nK*Y15Wmm59`F3D`L@>dQB%U}fndrYFRxEw=ykv!@Cn-Vg{tT{(9hn_OnKuw zOWb$ypq=E8PtRODUCyL?SG3Q_uRVx%QN@B)F0w+)*?u_Oqy$vi8~@8Nl-QlF8)`|m zd&6l2UkuAGBd7aMftwn3{r-a{oXH#jZ&sr8-Pa-2K-WH8# zs`kA={M!QJWW;6>x{AXN7t|1To4%|KMs6N9yL@x+w=pIO zyyh|vun+!X45a?wqijv<6IY*=1$GV}k)1msE8tQB(y3;(FM!%U9?~eP`H7M7{QVKN zQ&7$~XA3%WQz^zB<+ZWWZ{@T1tN)Dwy8fw~?cE4tL!fm_UMl|NkK(kM6&(^72w|iS z%s;Dst2XAQ|5C;fw~JQ-bE9rQ^LD^CuvUkv8cU$?^_x>!R&?BU_-VUiIr^S} zrL*yjPT@-Unk?u|qJ->%QT{3LR?7NUfj44acgn0JEqBqWnRnKKn+;^Z-RaprGgum& zcmH;CZ^N$b65BT98fms}VO%Fk(jz0<1N_pA0g}-b*Ye*hCLqj&cK`ekjrg8Ij$?1EbwK3TdMomXMXo5m#K(Z2688|FxTlDHW+Sv z5{5<+F^yhMPM9==fjPWa#XcUYPJU#6GaH41`c5bDVB4S!E+{6hUHwmVxbifJU9xA> zpqzc88>dVzplph;n~%E|2*$pdSDozo*slTzbGK4>&z|g(B~@~|$o8sXpZMz;K>}BH z?q|U{7lQ}Q>G8*zj(a7oVyyz`{*-fR9bN7$iLBxDDWp)nM($h#JrD_w$W;wswjy z)Dj?W1%&FPfN5@DlP2;F=SS#<%P`nLEIjg&0e$~5@!`lkg_dv!%F@mX>*$Lb%_yn2 z@AAmbq3+9MY66f_m$t%yUhtz5q7D!OkS+ms^-HBO!P=MJM{csscz14R9vmdS80PGp za^S<1p~gzLH~JbxZEoVS)L0C(w|07`CWtym?3AFp#@zNJQ>rGbb~| z6!!LeK#L6`+QQ}}(D-d|Dfwv6__Thc<>15bqDQ;m(0wKFfdCozEY7>p(m^{h8{>uz zaWjNSysAm|vxq-|LMRsx1D<$#u(FnaBb*GCG4V^1Voh3&;wRGxZ0R$%lQO3~)fxUO zN&?WOv|?CZm8BN84X99dg7S)PZ@B?!{_;WI zXCl+Cv~nu>n}~^-%Lly z;NK1dItHibZn(#X&o!s#mc-xTu0+9(vUmrpDFG3IgT7kF8+W3Xw~;@d+lq+4RDT(! zB4QTCza2ah2KEjTQHUKgHeBDk?-i2^+ZYFi~lCDhBU>qo3D5_`~^w+pgSnu zKQ|I_i2?q{rwB3)Fw~k97`#7RKd(IbQaMxHq~WYiv7br+#bY-xy23FE29y3~NL5Xs z=Ll}_xy^{p8Zb6v9PRI3K7+pLLVD;4G?m&GffIyI;#cu%=7?Cjn`-Yp2IM0BN;=d){EdcT2uy3((_A^54R0(+4)Yw1BXu9K+sP;w}q? z_Y>oB*|#Si-%c_xG;-u_F-&9ad>On4$JAUfg+?0cFbfAxUhZpcVBY;r? zyyte7xc$72dvD={$^S*(n};=hu6w^-yKC9HT6I@fwaU~%#SscBkttbL1(B(WGAGd@ zDuxgx21r7ZcC{6)43$x3NEHMXLS#rHkPusy$QYRtNFWqLh!8>~Aqkn!6YSpW-TS@X z>%8Y&>;2~({*g<T~d7GvWB_xo* zW(b@)z`_cW7(cGc8Gkl%=w$n6Hxf=uxA9(0(^(!zI|E*y9$bx2<_??;m;8wBZrk6C z9^|e+3rUnLWLAnID@ye=-26ijaqaSTH)0)Gsq@|Vg5`+o;D1D1A^#C^-7fr}A}*hK z5OLw;|638)(f<;0N&nwRT)%I#UsDbMrb1l>dtK{CE0O42aF4h&gs+z}{Y&M#9 zX|^|%m~CIW(_>VBvzns5B)eTu+|5*JM6n9-BBN@cVg15B@BhY4n-g7^3p%{urpVd~ zbw=iz7rf`pAWA#aHGTUPl*X9Q5=-T@gTi}KosT_|0*D(hh{r(Oqv#JM?*8bKPf@x@ z@15co|CVace!Y#GfNRX^o7Xn0rjYqg)T_j0AgwFn-BV8gE!+}B&3rfXpV3wbc=S8p zMm#Xzb`APqS2y?@2yjIGJp<%i{||&)|NnaAf1?S9>_@ah%Stapk1y9ThK)W>q9$_e za5aBs*}@C)o^z(+e*Ml3X={*tfI)k;G%y`_zVtWZ*N<*_^@)*Aisj4R9?cz?L1RP^ zK@p^;?A#pwI|vy+F2;dk*gF3RBesyKH6D>i3vNK5lKlu!08+;K5StBeVMZYXOV3YC zo6gG-6X9$<`mIpW_oJ!rrT*!V#AP+yR+qCxUW8;JT?sG852g+zTc4WMNmSe(nX8-E zKIc|E-1VaytaDi9PI1~I>a)!%g@akiYJg=SN*7zwkR3N!TuDZjepsYQ{LPmYtM1eF zhwn%^xRiGQ|8K917cX4~Ze8~gPw|cQArgahn?kvNi%LMW2|Qj*Y^aYXkCp9tzSuI} zVSG)uV`xM_vwhc3J)JGI&5BH)jzZmB)F^#1 zOu<5HjA)US0Oy2?F^Urs$~*l(NN!C^EKISSM=#L=ddRvTOSf<%atF%~1} z=ntmL_l|v6>EKCnKb{CLpI`;OlvXLjmXoTB>2D4^@1{FNy({~ zz4?M9Uhw%_WD~&lD1%&3q=nW`*{e}9BU+&+_4qL$Xsuf9Wl(LwI}p)t^5~GPJG;Mw zq;#cJ5OL3$B8CTp+YnBe>$$k_n*}&tV1Dmr22*7VPv0Z0L0{+dprCTnH0-Q7K6)jy zPK|$*s5Ql*&UKYiTa!rP$aNePj{{jk4aQwhB1uM?#ijZCN{gwRAh~3u7`=N!^_4HU z3tW=dB*^pV@lBQQ7&dk-LA*LmHgty$PTc@V99SF(erSyTVXQ`?sq`AOcslxcP^$PI=b zFXZ9o2k^7-guD`=SksLPra^0XvABC^LE}FO3L?R((-MLC(l30u^uj$E@CK;uiHJEn zwR7r6#K0AA%`iCS91|v1%mDztdr@!i(D`sDVYS{wRSMh1v$8x9KuN zEoL(#GWYOkhqX+m*p?k^+BaEL%A)(Zx;L?)1dXaUh)5d2&eBhV`P*nG|5`rX06imG z(@^o|KtK6Yr-QJOVb~j8?)9%(G?wM`C+*fOgGXoE`eJ zeBjW!lNjy_ngOo}<4qV} zGETsV%iwk=+iG;AOd|VIoB*}IP{ps@q$g%1bC|SAN2hn&5N5env>-20e2FRG^mWO5 zYGhfsp;(M$sZbfr>p+wMh#e_IJA&#`a6E$vVVPX8?bUqH+4h$YTm-W3&zs&Qn%^iW zr<5*vU2E#^I9X61X<Fe0<7mZBagF>L zt~6y<%`8T*k;_RbC3b)Wu?WATJKHE@(4#Ec+r|Be;M(5PeaP@h!`JCx1SrE4bfJK3 z!YQfa97+ZwiT=K_E#sn}jt)Od>>0!!Mw<%-GP)E&5i5I!#dl<{{TSV4P}ni0NXEXR z*{2-D&Y|v~5cp18KJ!mEYxd0;WM+9nzjG-7Ki&83Nqp!?Z6wLO4H;TNAn=p6=5Bn~ zn@4oAOXk0u8u$3c#nI$4qHw7bgJIu>Kfaxk?O}A8=51EZWf>ODjqEpNmWwL*o_jr| z#5`AJkfOV&bnnNryH%3&!$s6Mmz`X;*-?p#mgD0r1`wC+6rxIzX_;fxtj3VqD1?g8 zZ}08Xnd(bNOfNU_XV7aCy)CVams$Zr0+K9|E_@wWYgyn7*RT1gt3W=emo+*W6nCN1 z-Wc=UOtaEwUe6ltYj*yqt6O{*eV-qpu<+vYYT>22abKtn6`d!X-f>m2wHzCBPNZv; zAmWtlAJvJWf{Hv@^(+_xj~uTzjx+s&jklR!xFcP}9$mI+xDV7iR;>7<7?MUBnucYE z`ym7|13m+wVqqCkwDJ_>>Vr3c{(Gsd<-^jA#0uIvf6E$;a@B$TFmr9jZ{$br-A#NG zR=9I8Wwl0u(#GJam5(~+0PWCld)%qsF*|g$B)VGIetDPMygtr~6yhb3rfAA)VN5K! z7N901kE;@wG=DQ4Pg#$psXOAS0K;?TBD=k~ntwV2`bPe1@Tbj+9VSl>m*Eqea6y>i z=9{Zgqt{0c~a-Upe<&u_4w=9jlm zl`lfby~--RrCGb-eddCs!|pj70*Z>>#-Y)m*7@ys{{qn0%}!9!o>gA%Bm|n2_jvAz z_E|*RA&A~>)pF{vECK7=)f(P*xqSHwcOxi;FD%0@7K`e&PAvVk2e~|>4@r%K;GA@Q zND|x~n^PxoxkJk5uh8gGMGK{v9-#wkxEU7y#`#Py4A$+eDlm^~wgKLcj}nFZ>0Z5} zfVov}KkSyXCnxL|zdMQZJqOmh`=_^fX{!k!nK_l3D|ImLu#8pp4pGd4nM;v2Y!zU4E@qI=O_A&~!CoIKt zGK2G;Jh~R#fhy41&mFNDvG(Ixn!P@8t`8IzXXXpBD=cr_;rsT=$-SvuH03>1p$iSxeB*!}NE)e^x;*^0K+B)X0EW zQE1H+l28$k;e;!o>C961d!?CXd{~{K?d8~!r zRxlE0-wK>NunNVeJ>j(~MuSrX=CQ;%n2zE{(D>@dC;O@eKb^PB$-hbF#8#uR){UP! zWyK<&K4wXp>Li=~#(^$^s+=wNX*==c2Pg(kGGb_H)Vu%mtXSuY7~I5_jJ!u{_+$?( zQfZELQfFdT^YWrdyQv_X|Lv{L(j5JY%W3+GHkWv9?=I3hCgwIR?xt*vsPFzO4~2QH zBW!o4M7T{<4MO5fpS2~28<8PuH9dYm5fPMHAsloz0=uy*&s*`id9_f_qPhf2?|RumOzOr~stONS$!u`iu1nDs&RxASX) zV%&qoZnYA98D#zO3X&V$UFb_0_HGt7^Au<7#r!?(zmCY~N`EF5bWJ=GaW^ln8Y7SN z&`Vmoq%&Fk#Z3>~{oOFx4cX?Bs|Y0VDPthjPuWTY7$IhYa1*aE`<5lKMkw-$l|rhi z39~Qqeq^$ENN1u}uK0U*a&HqNL0Ipn>);oUrw|F_Hyd_|;a%b_dAvMYEMvC;n`mgT zF>fI)cVdSE?TZ@m4KyN5Wj<$ZQtd>M~n zZq9D(JKtkKIK*P31wt2kK{lu|u2ts@ntnfR+xdfem+dc~bOqM2gPoi>p2^)A zZ!ugl1y}03|6Wh$Ts!J*aQCQ<(%)pVI>LC>+aw*348257@ zmYl;XW~9W0wJEpLSIuA(+k)|J#sme8KP-BchoXUIety%tpg~~RZn`;}cYv0|Baw25 zIeOFUqQQExBHRyBxI3|~-8zfikr!27(&$VKHIB4F%Z0#~oLf-EHr||8Hxd&DP{9VZVava9k9>FzTl=l(+~5h2C>qGA%J4#q$Q_T^>N6 zzRYlW;8!!Q_ec=aSpt@lOUawb+c$0YAl(8aL&9(&y{UZac!L7r(vh);;Wx5L+=^#ESI_|KJZq_wi!ftgr zHAPT8JvQ4+r|VGc3Ero>Yal6jlRv|gE$`MB2|l5Fx!+~y}_f`NtD+WsX*bZvKE6ODedctRhE>~46|g`t&L4GR99lho1zPz3ko z7nlM#v<5Rfxgp5byRU2F^r$Cz3TxRADJ(G%<>P%w1HQ+!p1wmeF+nXRcRWt15 z%wy&`wV6w(TN0-e&hlM^SIDq9T(j|p0BNV(L?Ml3FoAB9s=*)jiSK)#yB~Dnp)@}J zh&DAUR&&laJvPM5;O9`=qV*%*1)6#LNd+h8dJ=>cOzki+hh;n;x{;Onp&y}^^hIm(zJuzaH;a1Ru zBR3o9{CnK`Iq4#2P(>kx##E=1IiVNKrlT2UeMnJ-l_2ier0d&ms+Vr)3e77?@Rf^Z zwWB*GzK}=nw8K6&#)W+<>ztrAVRz-BziI-T^6f5=jx8a*&Oz7GyfN^5+7D<6D^bI@ z8`pDM7jLV>xQG~91An+fh^Wj16=}ZQ$UxNUsEu#OZKb&ck>N(F)Z2oyIEP0}Uw=MT z@}0js<=vf%pZGk58lrx)!kq_5!5i8abG-b?K!9vghIc=b@vJ<>EcZ15rxzg{eB)9~ zUg<5+@+OISh({OjXK*9?UOLzs$=hp_gNb#THGkDD5Lc5o@|b_QlcQyp#3szJe2Z9s zfA7iEjXgj=V7TvgRdSK(-skY#MZcL~g|@OPcaYVdOfo!{#gdXsA{-!;4>OtB+ZA+w zkQ}-P4@V&`J9hMR`astt*iig6A74-XBzW8$UbU?0Fjx{fZ z&QK8vylxfhrGqIlj*Z)r3{%h@#5VFR!H`xKB+eHWG0*k9?SLEPD!Fh1V{T9i+h#=< z^eu1@n;bQnhfM?YDATF#52ZJ`^C;3Pd6rzPENx#AhdPjp1ZeIb@SV>ai@A|v`LHow z=lV0*kPzX*MND9=(V$XYSaY6=6dcpFWYTHc2DWYr?1zqV#ud@FE${ulxzl!i>$kUM zHgaL;Lg(1!H=}3vd=lu$=%xQ!U}}Fa8Cw z-&*?X{#WfzoEeziK<k_yyBEi~zr9Crq=1Hrv6B#54$e#3g1lif)#?4ueU)m><{KrF z-aigy-!5;N9|S!tLjK6O#(IN`B9@eA?)Deipn5Bg5e_qGQ(jBt}`R{Gdn%HOv| zA6Cx$#Dy93y5%Q60lNRyH-D6@+`u&&7caU6P5+o66T$~6NnTceUpzGQ#c(%}>eyfV zq!X~hmVfD;f9WyuU-rm7ZJ-AMv$+8D(Cp-b;%Q6y_~hBN986bB3$7miZ%GtKE_Q>P zw>;W@8=()MRoTU(%RGgX?h*A)6JE=2rNbUJ2CNIid&=!&q*etDRM&^|Jhu9Y!9el} zsmf8&dpbuu3^dOz-Y9wWT6}`|ulC;rcJ1JjGXL4k#E*voOyQ_!NWsN(S5T0OiXmjs zli}I(B{8`u_mAGUzxK)Bz~I>U><9jCeMX@xWvcepxz#GQXybAv^xx!NHpN1DU2aBJ zG`X&v9n2NQVZ!|c7it{amX+QXk4M6hG}V~prwhcosoNgXnPof9<_^!zT4anB%nE=?iynTm~x z{6%_#jD|cS74n!=ElOd@>Dc_I-P|5C^5Y6MT?+ILppWc#m_=J#2k6&DXCf;8ePDCc zeh4QnluxrsS0%wWxFbCig#|I6b$(LcbnQNY7^|$?@_YdGm6+J+``JnldOa>bJyqH4 zJ9Qy(S{n9hd4fLj1_fnhN5?)}p11o~gOzLlkH+-r67`yZe@<1_waaJ{S`l|LXzq@6& z<%;}FA2E9m+T>NvZp)a=l%;$X6kjn4Bg6jKa|HHz7z$jz%;5Vb#~dVE7FMzv$xMW;nksuxqJ52t6`NzbbkbiD$D*d#qo4U{M%5 zeTg*mbwLpnvJYP)uOYoCI7@>nw37xPRFAE*F-Fz#Ez&>8N6R#ZvecQV6K}_5K3G%2 z7-rP{<@Qa%LVq+Bg`i+_k%m)nWg5iTXF2$yo~5F$|Wl(!oK zgH9X&&L4M5@!`c@5HduG3;@Rm;1Nn{>GIo&URLPmvx%=r)YLpi<`jva4sak@SYMBr z4HYF-1)C>kJ6*x*{d)5)9KbQml@4 z%%?<%muW9gX6=C&C_LVLK>s9;N_Pfp_U475R_w0ufxqC7V+iW{&50e%Bb=mf6w5JP zK;uphbl{A*{n|B8TkC@I;c%^-3K%XKg#UQ2%f&b05p#*}rPzCmd} zdRC$JXVc%EEl<{;5Tod8zWIh0(#jaBcM#WK(uSezUa;@HqxdH-p_l>}tXp?%(mTlK zUJxuu@+0?8ERpcQpr@tnHBhlNhEAet3BunC55-toFDW<0sS3T`F2Z(l&i{gukiE=E z@C{vEZD%B~HT4^2oW7T?1E#|r&8SSyAEWDSflMZ{)TzX8fIG2u<@V4i*|k;z(089$ z$YuM@xXK9WGeP2xOn*ii>DH;9b&2FQf>0|OrVB4PE$_B=+e%6X7c&1ThC$5U#K z{G-$9%#85seI7W~yno7X$)H!LkB@T6w}l@278n=q*0Jly>*H%BC;#Zw3x9NKEbyf| zDe;)z@_O?fSDu=?+jaAIiS!M$Gl(ObriE3=??T0i-45v-M#~hu77pA*?H%x~Y*`;E z`GfVff0g}V|C9R7{>pcr1c4&JY20?`sb*JKw6@zy*jO>!B~C zezkrccx^jEi__-jgd5B4fT5G|tW^W+>C^#RQ+2PnMzgl#1@oTWDKO=2sWor$p1=D* zg*~9{-2vjzt}euSG}19EleCx{XK1;bxk`j(dApUC4ki(_&L`WBtDR5DmFFkc{9vni zWWY&KyIB zXJ1zMU&udm;MIZQBM0x?`f2lrfAQY7?Yk#An+_d2mH5&3w>O8j43k%^N=|sVgEr^F z98>Okp_e@2V?OUsEfLelPQlV0Oqc7TTd;JFPDG?)RsQ;lt4nT6zho2pM!Bk%bocTX z*)R;45n%vM@Mvw2grw8*e@pO(S&gM<)nQ(T$X`^KZl-?yGUs~uYvqok0Hl!Ha0~@N z3NZkrVExGsQh>b$De&E)8R8B}_19vAYvJCH`dy?}_L0&s>en&Aj8Gp6vk*^TW^a~C zZr2X_4wvQ5j&tBry};3Ey*^)*)#~b2gT64nuFleNitL|t`6fQ@ZhS(jstLFes?GY2 zs`QZgRjN8@8W>4fumwa80CxF5=HEkR4*CgzTi-V|A-}(MfHe2&i~Bm8%gmSRj`s}arxMwp+mM-E{Jp{mv`P7+XBuIMRhmW zwbZpo!&hX+BuAe4qNu=+5NcL@MX<4hS?+6xQLl>@aCI7xv%`gg!igXOd3|MQsR-MO(6qO#Q!})Cy|Ten|jW_EAe&Xz4Fd2ly0KAP(qv6Px-)WD)F&CYh-29 z;sQcI55dU?%rx)Bzy*6IgF(*9LoWj!hg zlE{F0pf_gM<%7jum%Tsxg)Yv?j;BKI5!ho@v#7K^UjX;O%-;?`Flm)uJ0iS7S`CA} zX_6P5*32}ET%aJ3LJKyz#0#Ymi_%Jgk;sgo5K6JpyIWf=3@kn2#BB~@IK;$p z{b7UFX0Le*zM(Y9bnc|ClV3uOAab0WEQM*=9f9XfqHFIbMR@c}55=^%#YvK}pl-&&y1wl0SXcTP&h2zO4m}^-O>{kaf9l>YmY4V2(i+AK8RXjbdtoly$Bnd3#U{R z_Z(FD?~k=x0#ZPUTjCVfq@5P#H&T)uyFIQNZy(YQ&suY5lX}l7v=zpRult%@zQ31n zbBRz@w*SD#y|#Qqy*M6$uC?cYak8UnJ<#0#De3cFtRmbOP??gI|U=I@fk`{pSz zSzV&#*Lk3$k4pI_xPPmUf`5HHL<|GfDhrz)356PXh4}NtLMiD;<9b43 zUM}l(YzjOo7lpE9c&$YCowk3{@0q@|g%HI`6%4vmv&hmFr3F8p%UDg?XrT)=9 zbiFw8A)Oi#j)Kbjnu_ZCHQfu@9Zz!M17!L+X2s*Y&o_mOtNSyBXgB(U?vk`o#wd59 zFqT*4Kd{0?{;4nl<|9CWV(@o(;M5b{NdN$}q*l?cj~#Z5?iw$xKxDp2lin?ba%UP# zZx9mJ!ljU?#DDyHy*nF{Q?dA&=mZ1dez>y@VN*yKwhjy3g<7wyeGm57Vxx)XE{)#| z660vnd}E5#59+qxrmOc6N&XX@99D@}x7P2Tp|)Use~aL}2I?cJL|+(&VJsOwD^kn3 z?Xd9R>CbKt*0nR|YiPmNG2+^tRB%lasdK-ObzdCkjN)bum03IF+h-=`-!c=toWI|a z5Z$G1?!IPcCQuNn&bIq-3$#SKMNQo1r0V_N$<*J_Y9HPaASS3g)BBd0FbRR=vu{xF zUKqd2Uwi{OnfU6i$*mxydTX!(5J%`@ls}anEMyo}kgKV?(7zM4 z-3@>TlAkk`RqfQ;&{H}gS(<6lMkk3y;p5i~oxaL&s4#Ev{Hmo!k%MMY^ukT}ELr@y zMJkKuR6sKqze_4`+2CHnxoko3$G@PSDBBZ`mERHSj3No~iz2&4pH$ml%ZlW(G6C!M z;$}{k*&84Bc4*7T@WoyX)yg#XU5}fvD^fyNs(J#yVZ2G+mtNc3Rv+pV7)S0bsgaAx zLBs(q$73e11mg-u_RJrflC~#E0&J`#Ju@qOF@A+9*#i;5vMbv}%`&z2Hc@E%>z(l@ zyTT>c8lAR(^tGS}a+M||R@rcE0T#YZeV25*0ZDP&Bf2jn?SAXPH#*-4zstGNJMF5P z^=5`A2k^T0o$7ulkE{0|z9Qtut>>dM{Ww{(`15)67t&XXjWlGC*P+hQMn}-s@?YuQ zI!3!nR?r@+(kQ%4jp_xp{Bi|M*e##dhu|$``mgq;y}Z&wa1v6JgDKq zS| zwi14I`nhJLz&KArM3|jlws0Z-6ob#>vm2CpQM`#c^M+*4W!TeI(V*lWYBHXiY^ZRd zSVCO^5ka3ixGN~nv~w%sOr<0^&jM_%!N=*v?__?IWrKR>-5`sDfFl_Q(V(o9Vxy?4W{n6 zZCVt#1xR1|lFNWV`1JhEBH%BluGbFDtk0IbD}YLyt11qP(o^i+GY32rALTRh({G>e zuNj#AA#3a9SnhGx(l?iTV53_*%Q8dO{aJ>x3gHFDq)%&$*n@`-sb*To_)CwAj2y%_ z35DM(oJtb1C_c%687QwV?E&Nv*!lf29Ks=g2>rK9o#-wgaeI;A#Ih5T zU=+i>7N}Ej@~FkGPJQQVkhHEl!}xZpMBwgDXm*FUl=U2Ca?3i zUaN>I;rCE^;p4Bh{nhY-^rXQQhz@tR69h2pHtyK6AyyvbpJ+++y^Fe#pE=^+|C;yv zm*F0Uh5kQZL$2}ek6<3_p!pSdRHnn5J1W@a{6?fSHF@pPj{6Mf4%FfEw`BNZL=EvS zW1gtWD%KI78zGeSOh?4$rfO82G9JGU4*Z^~t{*bL} zC@KsN%5Fi6Pd+?1lq*<>^-pi>Pfb1ksEm6)QyJf!pUzQCMVIeAPA*^Ux+ZwY77#Y= z+)*1zFS+k*s(2~YwqiKYK#TLEYxRlJLUOJ>sK`jUtG|H;C1-jDyMxujhUT5~Ns)Wr z2J(K6y~TgAC(H8pQQ7Mf)%S{i-v$x1-U#cgP$xMMdr}q^IYi_R*P{NThYpn*j~AYJ zGga2;l2sM1Wpq0`VUk>956u=_aHVzq`FeI!_+MrCzJd6~{B)Y))xKgyX&mK5nERbQ zh@E%CK7X!6b6w|J^N>^sWG0s5mPd1p^9-9QTOSub7IiEyc(l5abd5A&^ePb!$%5Mk z;scb8yg~cc|BeW(Iy=3=RYchPvK$=APtvSVc%MFo84IlHGowxb8s z*K{p7a3u-iQeI^4?u|7K@!@S{_qohawOm`lzAj=QsbFS(+qOKjz`8ncMV!)z{zoU~ zrY!ns@{5MDvQN-s!HvgkFPjgpOY+|MGE5??DuvafQM3T`TpD9p`#f5GMK46KnG4^ZRFAml2S5D0t-OoxX;WGji8g?d4G8RPB$# zcb-6V%h`i9OI@xj?2DfLRqy=X7we0UvOU~$%?^S*wedfTME~o~WdB8uR}1V~s4mmjCJCdb6&T32+c#tpyTT|%Qat=0&kDZ}4DUhRXpwK} zUoy1j?KEcInxIDb2uzh_2{D2FONXROi|WHTiC3LRnpPwsIXT@WWvMF5i5%)1rw_rT z%$*vieTsCPz_)ET&C8l*$P0;Sm)U`kbvVxzq%4~!mn1qj9`gL!^@BNCDF}Vgp(UMT zJqafcV`pS zd4Ze4dzd)ls+a{><=jR|%5ilH*Tl;Gj_dBnSsE&9dZupi?=XI{EP@jL%x?Q=s(Uuy zrtmR-?rpnXO%9UTmfX^p+%@77qqz^~d3VlqnwP-srAA}OI*fQSM||0=Z6%iGP6+PZ zwH>&-l0zJ9i$b&Le5AVxgmbQcT?5=>A#&{0-&Ci|OB?&PeTQ{`=IJ+1G+zn7Rp-}X ze1qlwXxBguevW4)wHoqW_f2C)o}I_~rfX_T4_CB`e{_*HFIaz9mQ}l6ynL`4CU3~) z)AL|#D@O8iMloYf{oZ3oQ#(1HT4XX4F%^DY!a$T;{m!FbzCIhIXqIki?s-hIj-?U1 zs6cTE&zEG;Ql-os6ZBk#v6PvHZx3DIJY!uNy0WxH#@-a=AF{j0;=xJ*++%}HrNBLQ zJ~YpTL$OR`yo+SPjk{o!jB#L!!)$%x zTJ%DR!LI^ec|7H>=CeEVxXyZ^*w8PWt3G=<^s*nVMIB|kYh*V9^N-ll($@O(1rJdk zMIY08?~`Qo<3%K`asd|iU~a4=t>u{bRlB&=sHqZ)ttA1nUc5UGoy_{x#a%ImUd_>! z?TT~9#ic7T?Jj}9!pJ&f7zjWU4Xy6!^Td~Y>;q?*KTP|8l`BnSm01=I!{AVey2a2Lv_5sbDDnPt z{-e_0ic6OanK-<*y$!lPC)^Ks$HIkyP#&K$I`J63?*U}i{hfCnI~qumx2pzm=9OPt07#93?OmsxURrhHR;*seJZ832A;zZ^h9`9HvGvEq4?%67?c4?Kh z{Ds6^0q?xE(tC!!h8Sk@{}7A|V1f{M2RSuR5@OoomEXQit*ZXoY`SSDyS> zuPLM=j*dq81oEELmn`8pX;v@{7SWBu7;@h?v1CvnuLb=--kzE~hm&P6gn=jWIMwaY z9Zl8pDHBj|K8^!pAllgIhCF0Kj%Z3ImOfA{J%-4yZzgmgr&+owIHga4LTR^#Rw2Ff zx%XjCis6sZ$F*ibbSDZ2tYg{J-J#_e)VS_)y9&!4yN^yB{b#ptq6-_dt+6672QvKc z2_wd(t#=u1b=+fdJf)C9v6(G1Q6a>`7bc_%X$!^TX-Ys;?2MJxG}mW1n;htH`E=unJn(sq zjxa=}*5kJAJ{Q~Z_r7bAKp>e;`4pf2?&}S_g$+9028DIO*qvfYbO_Gj_V9xwqwX4+ z0f(R2=Zopz7u=PJGbHs_G(zc&l;a%jpaZAX+@fswsaqpIj~w*TqjT)Gv2^fxFO3@H z3w}e1v6boo;q?W=?(QQ}DeunQL5yDsD`-fTtr(zo+dp)YrXsJ#hoI!^1#0W8_sY81F=F!od8Dz=bzizmB+bW2Ouvt^elB}QV#yy7jD~8@d!B= zhXpr)GRG2Ob60ceK?Ep+>^x?KIsv z3$_)w#}Z`$=<6N#c70J%Ggd-qdadm$#d0vx`>SR$h`V=FpDq&C@(&jN{k8CglDk2JP1ixDAtp~%6AFIg;GI*l9mtG{tE*W%s(U3Z;Sl68T-r2%YUpuv_FPgmtMtWC_%Yvrsp_} zvY)iUF;2W)(XQyi83}|;GKTQxb~zyO+{oY$cjo<62h-%2n<4td@W@ zRo+WzXZrVA6Qg^H2AMYHh*OLcu8-e~QSkXpp2>@%_j^vngr<{dZVkgYl2|Ym3(j)2 z1rAo$dI*&araASL9loo_*_C3;YR$CtOvGf+F)s2MUyfYra+YnZk62A z?Deso?KNeD=oNXH?d7QlGj8r{x;|L|$QHbKc!Pn-}y((wVRJL|0i#XhW;?gp_K+5CEn4=C zB_0gXQmoS%K3+SJ_1(O~?GL&d8adjWkrJCrDDtrCh7vLU&5%xTDYU9uD0W$!)RT6L z+L)UL(?6($SZT%x64`07!-qCFWIYjJjIr`#@aXxc=X2{MEwr?_cKD1O-jS9R7pqhh zN%I&I2ia2h1_xNKI+hYLFEZ{B3n_Ul<2IPS3s}Jtig|t*PD~OS?C*zIK?mfstxh`X6aXr!W~@5`u2Kn zP15K>oQQiFT$x*(9dby`tE=iSr<@?yQY$^Wd53K6r%boW^W%Y>V{ygxtp5G;z|@b$ zSv_E0G)gv!y|vZAHdftg^<#h-QQze~6#EfJBi9}7p+$8!qjeL1>bi7ZyDx{Rsz}Tc z{PKwwT#G{7gHZ5JMI5}AqnYmG4|Y?cwlJGvhTD>*oDS$r&hs)uL#&)N`?D|*yPv`q zp$uO3WP3=8SO2QlR)a5w`*^muj=fS`dRFz(S#SM#ZR5a#VAVLnU1lgvB^9_~n7ZJ! z@d~x==8~EUC1k)OTYs$qB2i$YtAAVA{OY?3R=#C(L4l3YlM zlr04Ui4)oBHA>ka@S0{QD9ozRnP|FFa()*hC$Ww5xLhN5r}5#U0Rn9ox2)~{yr4`5 zvgB&DP=#)(KoErjp;-^CHI=C%T#Z#HeE2h}%X6B}m6Y|Bm*BO)DWH3fUrUP+CGzvS z0OB26a9Eftz^gP3^(eN$|3ShKFf25W^xi6cO=2pRdX>obvsPkAy#omn(^zjFsnX}f z3ukTjL)<~OB@3gXGY-+EjC)~VN_qNbYf@lF1x%50_07wlElIQQg-)@ z&?)Bt&FyJB6hWbR7g6Os-D3nZdy0CmZ-Fhqb;wK!mEMIYrH7%#e`_V5H!f%uDpdEE z_7ekA_qN#Z|#~@DRIGtM+C_ge0 zHxVJvR+bU;F~FUdCo5FyP-yKHsT`@!auI_rj>F^I&$Q4v4S^=$g)%b~@9H7H_L zjCNg9?mx!JNV1WbG(C2zWVoE%ho<_bS)cOrJuNp!HFC!3F|ZJG$c0*=)MeOZII4Yp z9)q*hI9fsNDSvme`z2MwXzx2R`TnX(2vyKi;=B>yY@nF2Ir0_x{Hhks_5k#{w2pwqr(# zEnx3YCW6%fcT(WqoV&a3B&studv*Xd>uL!|1RlVs96Bd}lEN3hHb**fyvGvXt_VMw zvk(LtyPs#Pc?$j9k+l6I_32Z54dhX4y_wM7H}PU{6(V=M?f+`-OQ4#(*0pWx)ni+= z4s`-SD}xq+IzgF|Q$-XJQgA@VXb}~e3dod@5*1iA#pY`7?)?(WE^6mZY{qA?a@AJHm9-b!1Xm-_W z1qJ?Md%$WE>V+bX`IXYvBhj%L#kLf~y|!Rv-zbRO@Yyp$sq^fXO&PcldhRJoIh>_W zzp7KggK?XL&6brJ;$}7~Y%`^8lDmt&dvg$aZlJl5X<#-%g1UFbRUSg%fSP6mQRa!4nZN3D?R7Ka5YWv*mn57K2zPQNe= za3I0y$Yq9nNny{qA_t_V3}J$P(bh<6vYCtAyG0WkR05HjxDr5WiYsIdD8AgqeIxoB z6m_C)4TB6ayj#Xyz^6np6mzZ3YRp_g!o#KkIBuc+wrChOvUl)X^#Z1vJgt?Z=$Ib% z*;w0`^Q4XDyYGSQd6TY*11Ap)Tj96lHfDI`VupI|MVN2?1d>>S!-gCg7pgASYY76;PT6Axe`uFhnLZc6tK*$AwD+K3Ktn1ySIV zy)bjcje7X!ooh(Vk}Yy0rD^2vl&1eylK1bYi}yeMSMtVZx~hAu2aQo*GKnEvs2~;C z*WvU~=vF^EdL>EBlWPSciV#LmS)59YgV9j3*4$JmNvy&Hm00ozmDmQzHb~|DD*57@ z!c_4K`RnL-Z~fm@V%yQO23u=OMSP1m-gt9QA*#}u!>ZikJJypt3_dqKCq}(K1Ut}2 zw7x}^MgT0UvE3MCzfT?YtJR-6gHQ3I&s`=y&OxU4((OdJm8aKUm7Jt+F!{h_iUC!E zo_^X*n!N_w?ymn~{$mWx+kc0EP^;^FZZ{j^PTel_p2ZN7` z_wO$ZZ{5|5uLBY6(fAp9?CSR)?+$(Z+ngU&{z!U}+4?T(l^T5_TZ+8jiz60OL#-w` z0w~!5UaymY|7v{GlK;~z{rh+S>vJJBv#J-*r)Ott-Yvcv#q;eemR}SO+9Z2Nb+zzd z?3kY#;aL-4N?c7iMz$jc7rW4z2=ihD!X9~zF$7@%H0M&|#o5h9_`x?2WcR@RAEjMI z(18vs5Jy@_IUX`@7wk^Fypb+tGs8&@dUbd?@qEA+xM$4pyq$EgdW|?6-4$Q^RKLN z1M9-nHun~o<~|drgx$D7@}2y|N$U=6J;=pthj~e8X?>`RV8mq*0xf3zMC)wU%!5ZwJ-k)_0sOW5ey^~C&` zsK4WE8e<9+R(Q^> zn$yx(*2{9@Ttp6s`Fn)yb4_(p$;zlEuUvZ7*j$4pTW)ypYnj~#PQh7dB){xfQJ1#c zP!;a;r^74ioB<>$BIoR`(Npkp7UKM<$nPtg7-mrttINjw$!Jm~(6QNhF2I^Glho_U z>vgiOWZDY%exT)jYYJA<*A_p8;k@^Q-pp8cM}2j)FB+cekBrUnPRKbKPq2FT#$p`0 zTJ`CGuv(aA@?Pel+--84{a-B+hggWdCik#2^bH@RV@DwASj*`M2cqd^FgPD~6OdK~ z`|GE&NM-jBcc#hH6^~0haiv7`NdkM)iyLv7@~JNRyQ1O>FlFhiWe7%FB&*W z#8X3kgeO#~f1*(LK`=G}vOVRu>XbQWVcW|*!MRq|c%Q)4GfcW$&5*8p!YS(lc6Hr@ zs7^^}lsL-rMR%kh_XtFFs()CAfv8T8ttSHosyOR7;{t|yzhusWaL2f=#~^Og*mpXT z)Hr2FKK)lGGEd8XK>e8HP)v)1%xp*s&l#X?TB;U|miXNw4B&O>Uu)7(Uz(oaECB4y z)v&M$TABk*bAig5eQ$w+jK;N?io(wS<_S@q&>()4615A+o#rGk?ah+1vPLFDt{9E? zUyRY1k3C`I5?EnU+6^C`8&>{ke*XgtJ4wh^9PtAl2@N4Ve~?F(3dln+T3Vb=o#^)} zWCx;NU=ffuZdkz431&q4J`7eheZ`=@XR%5U?7gkR`j6Q}-;nIrIjwqGqO@LDT@^1L z?6D`$P%m=+T4v|Dwj0+Y4T>gbVN&KhEF|&pZg}6<@j#u~HEC5VZ` zkY?=ozQ1Y4Vja=#glh2M6Q|FpEP@N)N)bE-(2UK>PPXS+Y2txqtP7i+*VPth)Qq)X zmtR>NPINE+pcy;aUN-qd>wC>uTL|g`G-IV5{>OZVSJ-PhLVW((B~r4F6ax}P_+ll1#$c(iOW81jT581v~ST#ZB0i6{Xtb zm!2P2Eo22yQ{T+pHMEVQ*y8)tbl^?}5$wAGQS0TTr?Vk2CXy`H-?MV&Ploth<@`;2 zHpT`r0sFUy;|>p5HP7%BgXfjz0h^GHKD^P$=%B_rX;XQZiyM9RXT*Jlx`s_+L&$^r zd2%mH*u4(Wl#Q!}0w_GMGi`8(zcl_D1qx8T_L0%A8@a7ZngQ7D$0J?j_HHu41GoCU z`sE1VBO4npdHVkwDR9=3h?#F2w8vA}>qzcD53Zie3!%Y#cto0?yS7m9JZKFfOf6af^V4(LT*obg*e)txSl9 zg3J(M0ff?|=#9n>w?P3g_v~aMM%VD}3^R+azi@|&-sASCwa2qhW={sWw3M;Smlj)$ z0;`rFlpnn+!knnHqDDPqS}i{uz*to8wj9j2>M9Y*4{-g7ujOzJ_Iz72fG2{fIS%bN z|Hv@#;;GzE)E*zOgjG^pQ~h)HCIpr7_Esv!doB*@d`haRu))dEyk9&Yziox02ibSf z7g2g?Vw`sT^>kYZ7o?>?Y`hNIECY6=k~~T1!zH`cS}vwNp8Eo@o-UN{eRIvfcvHiy z!qcZ_xa%o_l{lYsGv3GSh?EW6@MtxdX2)1Zd7fWYEiBYqI`!v<+T@%% zxc20|ZK+cV&NXMC_cKGT~eedm~at{Hh7OU2@0R-{;Y9J7c zmqj+zibP9G5!o-qTaf+@{7qRAKG-=wnDGiX08R5um$TvQ;i8-Am;7dUa+QE|?pZ7l zeU3l)jdQ4VQ`$i?hNiT!oI0lWk6fVlH6O}ONZh-}Qi4S@-jC6bn; zqi3CRTlPT zUgZjE9DeBs>oO0`qQ@~G*iU2sW^~{FBkI-I@7E5%78-y0f9nm`Og7kKlhx%}xNm6- zUFOFpmNOzJe9SS@Qw#S=S$(ACS%i~hI7qD+(X^UiZkCz&I{WQ!?hce63D!OOi|r=7_X2(Pupth;<}ZAK2mM} z6@OvwZ0}*op48sDpTfx8_}TLqkiNJoYd$*nS(ZKF7sg{HMzDUWW?kG&V*iFL;U5z} zYna^jXwEYXSTC>dK&$2M)Hdibf+x|ZWUQ`M(GSVG`9`G)SEVo= z*u?@~&eJ`R5A~1c0Ud}~8EyXK%>8$lo7_+X5$CBbyzxt>CykkJ=W&GnY{qVUhKSI2( z*=xqB>_iQi9)Aggyo&QcY%FF#QQ3&vSGl5|MYic$X1!I0Xr3O7nZ6g(-pvlA=Lf(e z&NZ#|Z|xGfg%oHun^XMgZ0>&L+La}kG*5Vb1D=Jd5nao4gA*olsTwINRB_MTzgQ-9 zPNm_ZgNdkS)2xv|U; zZ4R6;u8DQEf7VV-l{mB0lCq1!Y(95o^&@tq%4;q{hXxDr={z*nk3*$)(Kq2wcuQ3o z)#E#RDmr79!s(nlWkA&nblO#RVQN^g59C;;T>3?&EALw64qSg3b3aO_)E?Ii@+_(v z<06Z#6}gH6@y)u*uFg8jo>+54n1*_Zk=?2}pLSwGw5Q4Bj6m2xm}qS2W9K2(PtQ}G zC>Zk)li`cpO|^emvl)SrjyhAt1GWb~_>My}`v<4%?Q>^_R%=4X!i(hhmD+BQ6t@hY zB=%s-_z5$nic&|j#KP0#R@KQ!r{h72rb9LBA`r2rC)-xmCQ;^kY3L*`v};f5rHp7- zfF`X8K@9n);*J;*x^uPShwt&Z6LivHqj-cZWRB9La~h)d5=z214>kO}p5PYiBeml! zRrLnL?BNGacH>QG4!qmL_!5WFFFfPBV^hS;u9SvqOq8WyU|C!YHz{vsb5oe7i>@=l zABdPSVyncu2yj7FMcS!rR7n*sl`S=avWh1>;c#lTH zus;XI{HpeIs=Upzvgdr0SF#dsEzH$@Yq6OhI$FvmgBB=yA^0#z+__7vaDCN-XQs&3zc%}h>o&{xs7XWm6OYWGAR!S(U6 zBlV-IUQ_$CWn^1SLaKL2d!tQn_>kRu0Q39K7J>cN zI$K&%4l|3rDOV`1QjgEPqF)`t9xQcb=IEOo2%)?VmaZSmHevb>c+W@_=qs){^TF9v zycdHRGj-UBsW8<*&oG92sT8ju=MhEfc$1*;9ucic)HB;uZ&!`Ox?R^L+LSnVLp_^` z>~8KNf+EK%>`?MSo6En5^(uuj2l_S92(Imy0lO3^;BQ2&4yYW(bE2_&?;`!n1I;|;?!zhJUgbfg~o**8_ z=rjj8=NRK=6v>P6&dPSHEiTB5bD+GmD)0T45MVA7V@4qD(;BR&$YgbeoJvd z;+df2FPXHLs!!o0uFr^$Ejspr^h05CVw#*nkOlVQ%M*iFT+s#m!pbWf;@k@XaUxB0aEYhOu`3iB&i) z9N*2?G!3&GG|s-X#69Gd&Ew%F@d34LE{ea4k%WWip#Z%{ra{x2qK!IRi7GuPSsx6x zH&dvHj%B2^WQpmGnAxDNPiHIgUViL~zv+^x_5^+!1kf~k-ayH|57F_S81otVqaQ!l zv*nM7Jo4ZtS3uE<^|7tr}vhk5W{uZW1q~r5|!9(faJ?bSWH~UUPmP!Im5}u@=e65z-y4XkqcO zDHj!xw*5VbKAs&4Y1_jW-{7a}fz16nmvBhiUJ@Gp&5ZSmRRzaQplDWEnm9#!;yNf8 zwEeb2mC;qw#hJQ!j}Qyu8`=(FGqw&~Y6sp@sF%j+15NzK(T}@|#6g`8GUisWU}28{ zVaU0IYP)^mpr(BY%Qg7kg&R;|d$-slK^*#NrP1y7kk(<3?R4AxF1$YAZpKL;>DvSI z;6md^vF4JjRG+ZlLocF2(4S9boTHohDt);o8AoDH#1Nwonem@Mo&v6m zBPTkQpA2P3cedEW zqmGI9a|?~}Qyge3yepk`g8lJVykncMN!~6Kt8wl01((=K5K?Q?Cx{Yh?G>IGtLsGb zczu$APK41p78Q^Sc808X?msmsD)p|)L~_bF88x*)`6>bzXtJQEj`TL_8ot&{3VWE9 zw9u?k>@gS1R_mH2OV(6*x_@`lgTJE@BX+;mSZPX%rvlnjYOSpsf%Q~YvX#~TGEcV-MZ@&cZ`3|6wgvE7h{!(Ynyz&F zEz=*2S?0Mm!ow^?UEi(F=U~$s!%P0=Tp{tk=$d%y<5ohMo0Tq1+zN&&6I7&pw3bNK z=&j-Rd78x=Y{Rx+E;7N~oxR}eP!RD+uA#&53SL7DjGW@=i<0Nn@K4-_EWV)KPOUrh-+U}Fj^+u9vGCmRmskK zoY+OgOhj!~jbUl3rm|V&7DoK%CGA$en5I^GDJoDlilUL)t#f6wjI-05tlG_XS%bRVg>-ioCihJ^0<`hvuV)LT)*$k>w_qr0{^ohqL3rr>2Xlc7=Mv(q2r<^yLTt^1gu%66;|#9{?n_pKgGd&a&k zK3=Ifk zSV{&erY|>~jCy#!;YutDHUAqIh?l9g6+JN?GZ~&&GA4raRxGo(+sE6F8n|)k1TY!v zEhQ)&Ig5cmiKGX!xuz_L<8@9vZ^M+8;b?KQ%yec@W)eME!VHYIn2Av_I9bi^*Mk4y9Xrrn#L`_+*`e1;G}KQ$q?T?7bfY(W<5 z0-Y&HxurEb#z4!?Ld^U+5cGPz-WZ(PmuhWd;`zg3Z-zzeB$Ci;vU>dHi1(?&Cl4J@ zMezAOj}mP`0kH530|nHsf!0Y-ra>9V1f;UWTD@jviK&;#VyG^@X6#}9`5meU5jSFX z%cdxfSX7MLX^sQ^C%aw*F9IiR!4`Q$J}nsL-6OF*l3J`Ta5qewFCnTT4yqXZ4#hMZ0>sKw{(yli)H@>mY$d@41qFNCF{NV=4AzgQ_C%(Dq`m z=1Cv;tn7W(KpFcsY9GmDmOB4^>z-o>+dPw!ON046?8vzgP)<4NlLpsR>+Ym7_df^t z^R_jIO77~};w=iep(kA#(TUZyyt-5xy3pi`=wzC$3vcU5x~24Rz!Ry}!Vy^g=B@VZ zzt~n2Vq26aO+w+Z0j}ivd8ylZVKsbpYH*rcsluk~`c9{ye7-PZ+I2B;w7q$OcNB=v zY+uc-lP5Sci6TLQ3|&FR_Mx|1o;#Z{C`v-+l4-uRZoh|M@Q+9>B-?#}?m3?f;+DBqmroM}q4brYTrW z^)y{0F(l@g7Rdf|b=%*+-dF))CZ6sObKSfguGQF+$OfSyQJqd-Ot*5f6LzWo-ha^3 zxD)(Npe^U=?D!$!0+p4$a>G?I5idg~2 z$o7F7*kg|sI_iIEyI6f_f>hA)U~W3i0eVDj*VC?RbC4QJEVfm(owz`H%dDIkKdntu z3+d`C5>h{m+oKcU0m*b$kMUv%CbXft@B4{*9^LI_O1*y0W9;5!u{Iz-FDTyaHU^u7)0Kwj2Isjb_|=SW>%GZex7Z8Bb~0DmLRgQ3Zf5v*6ebjNsu}-VWc_AK9y2lZ#88c_ct5qPq2?; zd|sx;>+7?Vr@ae9ccdQqVrhNxC0u1cdcj-uthc}xT>H(P@1%44yK=ajA`ES!`<#K~ zqUX)OOm2<4w=IHMmt^`00*e-+a$p#Of9+-PZ-wLPDG4xqu6;E41?poT7DH zZ@>JzFFK;Lcm-QjAM=UrIkG|B$V8AryLcvb9FCG5wjC$q=qUqCTxJf-#|0>cU%p_}8%ITH#IY?gb2vND(WMQj0XF_N|Fd zAG#B7h{eG4eX-hB)!5f?FBI`c|HV_AWlE1yrn_PEOED3JxpVVdZNY%FAB^vtcU?S=BV8 zmpgGsdxoN*yuYApQC1e^NHhme;hKkhbnsKn<{{14O;~mJLwI#sDxcZ0D2o{~pJ;Ba z)k!{T8%As3_#Vku{R?&TMNE9UQ{>?~8+uL#YceHd5ynbvd|pS~o95Q<%z4&I_l%r( zSPpLU5N})dA3mM2bIRT-#f5i{w8yX1R^PYRueiGH=6c#>F)g{fU^6S;`%BQdI=}Gug%OwW&MTU{2@tPndY# zhOHCM5iK~FhukV+sVdk@-BQL|4~Ez2@xC0W5O+uKw+!^yz#CR6wt?qRDkX*vw zGGE|eaN4VWW_6Bx|5+%YeA(V$t_E}H;33$dH_Ridu}#+dwZaGPS3)=IXm>l_?yFa% z`eS)nnlE%?de>NUa}4uIFR>Tqd0yaT%2a7vcJ@@UkA?ULD5Z(p_eeCS*E>@bs5;T; zOelNai4C2;QDiObNsM&Yc6R%kWyNlb=%>WI^1H74 zVrS2J*Fz@`#Sa^2a*G+S0`B=R^U{j_;$-4w&wU%;$iWUis{^v+kY zr$-WIH$GV(=M=6f$HL&y!Z()|{sCWZsTCenzdEkT;|b5n15RBhOz=zqS1~sMr6Kv6 zTLcoT^$GhitM6MYJ|5KkjSB;C1D$tRAiI$H-Npxb*hrik#%N zZ8hnwW^^BQf?#4_zbcRc68~>C_Hji|e7js$q-OhIzdWtCYun(|&RUnuxczn+e1ZQ-{?UKoUNQ-PD?{|ngl~2-PE`P=eGg8RKFu^}4aU6mk|p2# zJUM7V-XP$jHdsrrdYJ(ga`*hFMts1MCAU3c-qOpy?X?%<{+DkV2LfX6{aL8E(SO&o e#moH%4XaTdxuiv#nW;I{sF?~=re;=VmU~i=TB4GXJ4;i|xS>|=OEP6; zj7%=A8F@&ig;VbAIQ1&ind7y?K^y(tb{nB_MJZ$CI7Je>>|xieqp+6@5L_BTzVtiaiy6<(20lnXQ~$wH~L)N_T#P_ zySko*OTXK`vNr68DD5N6OpEYe41TJ67xBlbtNV7uzB-~iby6oQE+rreA3@D4MB;2X z=_GM_q!@%>^V20s0K5W7(-YAGSe4>hE>=p{hZ#HPn53%?pyiyu(OH4m9KtU z_&i;;68P6uRljbbemSiEYxPsp*PDMo*ZafodS7q&X(jW|wXna=80bO2RrOQo_y0qU z9P0;5ogqUCV=RAYl71ceS8rUyNP2Rr#X!B5vC1cqHLC#J;7drc!0GFQ*x2>7R@EoT zbtEtBp{fL{l-CERd4K<{^SfzcEtqQ5VlMh)EzEoS@56e34{{J=YXH>gGl6}8Cx2^d zW2a{_F+JJ>til84#=1`aJ@TlEs#|(p1g&feJR4>7>kOBoVht90EIO5Z7gh0md!{eM zBUF+%WkRb2LW%6<*GZX} zt~!b9ei^j=)NP}V6QGXUFjd$VYEi6GRTJM~FHCMaF?YU92UZMnob^6;5A;S1Z}Q&$ zh%8(|iD5f5yIVZ;0cJ0TfF6=7H}fRFeO(W|V_`D_oR6#9nGoUGa-AhZht4|Q3vSdi zkm%=4dx6gQZlgA=fo~|mzRU^@z%@(zq7>wBi^R5Z<6&GSU z#YiMh#f(MuHqqgtDy?=A{B#ly#$POLJ~6wR67(dOMIg^&ldX7Cau{*XMO* z)3*)5?%xI6aqxxG4MmE%=o7cgBRQdyr3KVkao@LaTK--fhj(jt}Xz+BdC_qz;(K=72H>O(lA zEe}AQwX-hn1UKyQiWx<@Hf-1Jd!Vq1kjSB`RJ#@#lHvSp`##s!u%N$JL1xrDmi}Mc z@fGL)gFElx!hCK_@CpkUXp~#12A_yva<6(i zND>_lUfRwV$WeUMWmR-NVeXEF{|CK0egTS@oVJp{TGnV}9FvctIdMLucoD%A`5VNX z`=w3wVNtu0d^T3!H1zkh zKiEC>y#rOyz^`g2A+=z%DhF&4>x^yG;96L9w`UR&VLw|Rk4Q^koz2_1H_8vxySg!! z)w5I1}rrI9ySS@3VPV02y);a-^B8k|??WGiput2<5N`%CpEhX0j5FR z(2$IZg499Zf$)dnNYNHjHBm0IN>>&hXJj+pPSSf{>!c8CkGUDUB5pTj*xq6AT1A3@ zV_G&6aW|!v8-S0<7Z2Fl+6caP(rPgb(8iG zGQuWU_m9w>Ev(xpzlcnObW}}dSifcRT&!PqigzhEHq83)%tnMAPc$wmCU7~wP@;OA zgxR7N+8=^S!7U2}Ngx#-;UXbqOtGaWHA`%8k&)(QR#&y|ZEMI+dpUga8`gJa?cN+)Dz0GpeCM;kg0<4_SSVoNPg8nv;wp&{L$;@-w&=fS%Pu09_2Abcqq z!Szk=m;!O&nsjhjfjO5s#h5H9JH6kF-WN#pGZ@|X#LtJ;&{7Gdj43;8X>F1M4}BRqDZY!{jv)gp`St}@HHV&)fr^k;;v^D};i z*PvTnc%R|tAb4=tIt1D34YO*{T4KaDV#sQPdBNrqBT^{ex;S=y_n%bq^B=4@ovIo_ zoPXF{W89;Q05aSoyt;B&Io_K#V$331jo1%xv@nSl@^*09k}=rT!?Ynt~@|_QaGL zXX3X3GN36~uGNZ7VWGXBGsa8pM9o-2|jrU+3b`nbGn)UT0d}@jbFg zf&7Vl(_rFT&b++FrJiu^X(pz2RyorD9xs7~Q5xQ0-lT^08Ge$SQ_Bi_r@v}`6C)$X zV!C;!%F297e{kQ_;w0KduEL=&uIfj^2fVO^WN1=ZnFky&9eGPqThVu~zgqH}Qco;T zMEZGBUOS`9z-yQyv#HYo1~lu6azwoyt^b~IytyM8Jyl?(f0gZ(iVnS0`RB;B2Hh{KbyH|VJw{Uu&=9^74ox=;uSSK&i4K(E z8tnkmUGgKeXWisxjyO1el_xV<^{2xRL!kb$@}d)%&HTkgE_+!CjeqR?*xsU@k+xVn z-=9W>vi?0{&oUB8wqf)%<1*O|Xn@s^k7J2XOYG}3TYB2P-qJK@My>BgrEbLzWsmL| zx1i);pG{9i#hS8xtpei0R3%a68>T}{xN)K< zVpGrgr3E#yD(I>qJi~-oDfefSlPEC@GDC`p)B1P(#2H@9iuUrty=<8yXnbDV_2*Em z-XO?TaO8x~{NCgvqlWHRDQqqhh+-gP+uZ4oE-daHZP-{mif#&m1EW)O=@h$7eDK1!DV9VUHzSLmO@B3nT5AfkpgWUg zwJqws860}vw8`7|^O$a)C_*3Cb7Lx_>G)b~K!Bg4ISZ_EuPDxB9}1dUU&?+Y9}gRQGv z_oM+yG<8b;!16>24fT*P6mXh0d~7O}ammKY{ml4=9dP+`z7wpMSDaPg&#Iusl-+~% zaBt7}%ab{m#%xtXr%e$ExLVcWzc1hCOXST+Ytk)}ol!HKeBb9z_lwFAlZH{DKc{!% zNuB`_ihfH5gD-qe(t=|H3{4pqaM|KpVS{s`Y*CohpnHIefRld~_eD+Bd07KopOc-5 zC9xkw@2dC_Jz}z8fP6+bG_KeYt)T^NJ zj`!%ygHdFiPcX%V(<77(bl;PvV$ZkBy}N#3i7uAsc%5=3*0?cukWA^Lys4mfQ>P{7 zDFpw}Q70gtkegmSSvoyPa38VQ=%!YD5!kxBRdUxVM8ISGrxHqegve_0RTaP46wQJ2 zb15+jN4;bY5y*nc9oh+Y{rU5@)F0*ehhc{>U{8DbOHqPDbbCM_f zbr53N!Fp$~`C9k0{?yoAEn|v@IfgmeW(74c zWUnP%AY3m*v_c2~yy~t%+Rx8sw6!O=Pt@*qXDavcNIbE6X~wIuay@egAP%#wf!9OP z-~X_0O&+qk-llptd?k^so=Eb{2f>fuEoCyQm<-@V_&gx?%$r+WI=5dV8?(z3+-CFJ zna91&g>#6AY@GaD* zM51aFGrWtOb}stW-(d9Ie;?vLzLh%f_tppF<0B-K6g3o<-b$@tF|g+Ws#b76S}Z_C zN+K?;{suilA-1i?u&v}Y1w*3w7bUQ{kBk*-IJAc#o*wY3Kbe7nIL6B zH0Qqf&l5w+A;BbuBl8b2RqX(Da+(X^c$NaEX|Le1)Q&kO?oMwtSwg6&XyMM7rbrvS zb;1MRj`hDM*h@?)!i|4(6wZ}d(4&i8b-Z?6?TlaV>v=YinAx7=R(0s?sJNI{Yzz~l z_Q@)M`QKjYASumljriu)XWX5}|ne=b2?%Ue~j{;r^D7Y}J&gH!YErT6iV zZ)Et3mTbfMGFs&}Ku_6wctefW3#0GMl9LD~(62W~9c8lN$>JC-tANE)_*VB*DMazi z6vheH(p5F(lH;F2zUH0(JPCU6FD54HsBLEkk*sG*8O|ku3-wZ(PG2druf!=b));`j2(Zioj;BD;7} zRtJ%ux@h+B_N)toX?&u!f>9D7Z9tvbLwk_@TLHfs=eNXbzjAm+#mOZ_r03s zQ~xXh&QpRK8c!D`0v8HbSN(!pv``AwfUaC9oc(^SnmwHVF}V8mzFv(cy@exx{;-+4 zP|&c__(!S=Zu*gKcYUz8_WG9^_ifvK;D+IMO}*bad})4S4fN;%oVl8yo3H*)KuPtSOCF6)8f20kH*Gs5d$WGiXfj-2>LpxLV&_xKw&x;%YI(v=@2MF(DQW;?JA`la75w@xm7` z1e(Xqsh~KSu&wk}!~r*|ul4nuUHd?NjY5uKsDYf16DT;O&GDmcV6x3gQ38S-)y>&k z51#v+QLruA6&F^Z%7%`9hL%-~W=qxcFknvIIx;r-o2f8x$vfkEh)Qg0O>lEDrw+-* z*G(g05R#!1i6(Dfre3_X71C#~493QZc01kZWnlRLK|svd3Tx-p-$N&$@9Z>TVQXQP zv1zb!_%gLfOQ72iVrDktKJl7;%* z(UzyEb%0KI5$Gj^X`haJVdKcLenxmZHcE0J!cH70gc#Y~7u@b>Bc?m>GNHXCR$?_I zmfRYHw|gan@!H@`GX>+@4cY(#jOqkVD@jxRia_z!FMGD`B>XsisvViq?e#Iek^o~L=c!c-9L6G`j~kyYNh=Bjz+rm zpr;)PEwwWuuvTC0iLy~%alj)Ppy#SMkQtpdEO(p9sp;bRUfK=;6}hwcaovpNt(<&& z!TkCO(dSmvW7He(m$$g3($DfWD_*c2k7*r~*`9wK7I*vMH4|{H?6W*wHwh?z51+Gi zWMQY+OYU*kLXTcp_6)WH_;IzpepkW4yA8Ldt$VA`=r9Tz|LJ$xJF+YA!^NaqohlHC zI1C?R9G$qf-fsU8WsXx#NOMHLU7CndTK0pQABS18NYIHBB+32!Dvs}|Rzv0|^eJN| zXYCgOi?%i?jW@YWJeoCG;-M3K>%)<^V0}|n@y$GzeoE6_^huqFoxmM22gJ4%$&b#u z(3f{~VKQI*r_7$ZF@80{#k%MLDg0)Rtm^p`{k`?Ogz{r?>KVuR>^^vVr^m0w z(4E-RKjkIfm6@F8#6aK5ZW$wcoZqTx&J)X@ou{pXeg`e9du%oavE4d&X?#@#*=I6^ zXv4BBpW91Pz3K@vqf%>Ai}D}g>61e>GV2+0#Y0xY8%EpG#8KEELUfRXDNsz7xQ*Ok zClWmk%i&yZKM{|cVbgI`19dk-dJ=D*)Nq9EBxdP(ur5#FA@W3-#LySF?7?Q+sgwXo_E>EhPX%MQlZQ4TD`srS4(#)#MgDenfEQwe|*h4$~KJ$~5 zK7kR3lzAAmC`uqTh^CIht9qk=yNtu-eE%-C)H|g5IL?t9Pm)A9Bg;Xo8E^9eY z-l4OR`6k&z zPYeAk(g%8C6er5oIUJ08lf}&ZZs)RRvceff=On|+PQP_)J2eaCOd;q*m;rYrZnj;b zyZws|*^P%K-!yjz>R{1(hPB4O8XL7~@W72}KhIOuZ2MKuPaW7%&xyuWMeWbPY~|YL zs$HW?|Al3s2ZHqdRzpM8VV?QRG{ipwA8w}Vs6E#CZ)dTGZk!F_uKsVdZ2wUsspk0q z@+G{h)J7R+{ME|F|I@7Of3z=OMY?zRdT`N;@QHx~Uu0r!jZxkTb#zZkR{RB*^kByf!YwNO;a4fZVh@H+93QbPfz)|jZtxf z7Yr&lfSP?=P~Wv*TOuxvt&9J71m&}6x@D3) z)Bxp_S5&&H4?on9qPayp1Ci6}bpvEC+itzOs#mWkZqy_jSa&88`|N1M9@1jvB&e#o%)%)kzyxF;Gb@I5=T*vF(v`GSB!N)VvgPn@^Pfh|CBDTCYP zB@2iZr6bx`^gjgURG|5sx!`EPIvNa;jcAnhxiL5PR|j4Z70Te)& z)$R~{U*ps`t6u4aXh+*cs913pZb38nxjy8w^5BgQI{JYWs~^BRai~){T3=1|)1X#( zXVIE5Ut26y6c#?`{I89)<$sTn<~SZCA2@FPIBqW-y|Eut9n`%Ny6{4Oe08hD9xS`e~VpzZnshgFI|KO$Maa7isr{AmHRy zw%jf9b`8za&oko+1{1!!K+WO&0KiS;S)AqeK(R=V{je{HY_Jya`x0IazDguFD zEzll33V0bk<;M*;DStNnq6e|vY}{MX7OSHAKcc-5>uNU7wIVR`aqqE`^$y!N%Obij z$kzq?WRRd`kPOeV8B)=yt{xOGRW&XL41McH{uN z#%}763;K!b3jeOU*6_9jneVw4lq>DtycoyNGpE_rTvv)(j_-nNm%7|Lx+E?6?%e4Y z=ePboUUDjrodo1L7rpfX029{14w}5az0o6aSt4=#_h2_{2Rt+7Q^2TpY=t z`&(WBY|zj16MEKX+rcA?)+OC-@`N5mw-T`!{Waq5pF}m&+ofxMgQub6o0|ge{dSuceQX`9rEY*9b z@K0FTZ*m3=*%-9=5V#^YvlM%;nC55c=bP~fg$QqdTP;JGR&~f99cRy-oO4}pG0gsx z7Jctd>xz)EAHG_2gTE~LP;^}W2|sZ597T{c6Mi2JkZpf54ZypBXx5z3eX}Uk8MATQ z4Gy--j>6Zldo+0j>F`0?ibPCXcK0D~D{EvpRER3rsOpH{A}OKqtjcF|Qmxg}%Y3U2 zUGoy45A?J;Jt_tsuKUI1W;eG?kP}5A54U*hL|9df*vinPL|78=z~VlWn$5r;(Dw=? zub}wn>f1H`1nzsdv`=e2Ovo_aw)^htM567hyUo4M^nlq{f0V$jQtLhV;hS4$(mFRw70@6-ZLZx1^{45}@+ZrYH;k>m{mFtaUf!W(I(&9^PK>XVQ-hKAW1pn|!99r^ z%_XE86@h#38;iG}ddAx0bO7x{bOi&Jz;X^%RY`y(+K#R#!F4_D)xx>Zasz;$s!`ya zE}uvAkFBJIZE9@wVe%(astmH~eM#_`DULGDr&-gotReAZT}b-ed)N9kgft^cpx=7W zIFJ(_#T5xOMjI__hzt5T-AvEPhErln6zpReG9W`E z8RLIQlhW6mnUFV~qyyp`njOEk0B}xDn_K+QyceoC zySd#WnMGLgco4yAP^+98_}j#rYbdIxYwZHwZ|}HIamem}Xnb*3?o>vp`f$uGy-K%6 zD#T-2VGIt~9JhK4^+xs=H2E%rcttxLv0TyiEDQo+B3QBHyVqUlvHYP~`_>m(x!66P zO6M(mDSLI29OU=ShEG6`e!eyljS;L#+ud}-)`B`svRm}Dr|#DU?0-v*{iAYZI!@5C zGdVZF5SpbHtlSW7d)Kaq&Y)%y2`UQAn0ln z>Wz~(jcgyT)m{thUIleg^=poCfP-aBgE6Rv1_H+d6%#I{<%dTWu=EGZGRHn3UxrOfX8q)_LFdm z=R5^~j19u{aQ)O%#!$44^2!Hd`kWcxxvIS1lyHP%53Fjc zKFP}M2O+WMRO=@34m%x<#});}14m2sPRS=GQ`LMQJFlOE8t%;?1QHL4oYS)yO`@$c z1){0#ciBr08G4ldFw;9>ofAKEgx{qi@ATww)oNMyGB&Ouyepa2)52BrnU|__HDRNS zHO)tW+wYh7*B&#udV6yz-G^nt$Do@th-Sl~{w>kd@(@im5p-?oGmlFLpex%KSxi)o zST%pA9`;YIK*!hFkMvR~ApMACk-y+xXi6_gjtCcTv!ChZJf?;v&*!h6wa+o3PA}_! ziygT2%RGzRd!`AqDx68k8GPuiKCjV(ya+W@Y`LI1{YEp9xa9XQEOalv6}6|z@L$jg z{|^>Aap{Zq?dpKcd=(o1S?>Ga8sLAts^h!<&SHHUdMj#!zS|eRLqq&w1Um6s4*9A4 zPP7ujAV_ntUp`BeqmW-0%94sX)BM99TD}dV&>v@HxpZMnmvmk76TcA=27i9@OtfEq zE3NwY?Y3oqm45$x{!66b!;NpHvkozP791~)O9#J|o^G+zSL+%LjeXldF&zB~YWw=4 zuSCNZuGzuWEk^Hu{n~W!V(8J2Exq5dzcjW${}-v}@$2>T!GZtFX`7&pm^n6p)v$l{ zw^kk2!rlP}xWCZax7ZOJH>xs3@*7u4oy4lJv+%o$CZsy84HAv5m0MH$ai*cZ(?^jgi$#|eif^YC$EkNA(I1Z(c`B&u*A zWla>g!RGSLv@O)zYvVsYu$Y(!@S+RXCceX~S%^y(UN{8-D{LHes~J#E4+`#l`azX@ z4eCm~90L^pND+&?4oVRd$`2OGan9?7h`^tFGOOPkzWCs^l}$ z=}5B0T)!mzEA60=7R+NH$N6}G=8Me!jXl*>yqS&X*d3rQ?W)e4Ez0VGddCz|~A~;1=k(d68d~eC#HUREL(nJVH0ds{=A0sMUtmZqzbJlF+o? z0)oA>M|$G^;HT2m1T9!V;zE=JJy%=;0Gz(LESl5ejoEXTA9DAu+d<{*}5n*cRkE1&9hNE?%0%%%+HkiMk&#EpkMG0Z2(nu#2b`CnbX5= zL`U}gri{*r)r6|F)3-;Rn#;Uql2Up2k`V`w%Tl?&ek;H^4!;ALr0lz)$6H2h0^)BD z=FPjwvFLKQtRwKj*Agb;5P+U{5-$$U>o3-G2_A|9>X|)LgY&qS289QA=a?1ci^Z8jRjnlD2goyQ1}r z=UP6OxqPva)`cYVrd+YqI!g7b9&tuWk5yBM<{Mv0BZxv-ualrSf)pkb2A?bp98{0< z!z9t^hMIlWa!4v~%9UlqRCE2#?!W~|9^=v_?V#7K4 zLu?Y_fWl~z2c`M~`i*ETntGB_8zsX)fZ2*!2Gc zNyBc3s_ol{Nubu2t&b)cD;qaIaqLQ9VYyC*eI*wT%I*-a+>s!c0<-%Sd|hy`Y%(GQ z7VIu%(uoBQ{+cmt#l-Aa!?GLSx(+5=9L51p9{zkj^jF~*oqra)`xx#4crl-H z#Ag2bZ!ESPnde5$ew9I7@)h1*RUE*X*y;P7{i=?80h(KK`)gl)Gc5mH6Qi;3o3YX8 zUHjE)XcYcc3Vq$u+`Ga8{n5kdHD#{#Uw`5m%Js*#|7FSk8=~L;3=iO+ACv#5_Ue)t zI`NTbA=qRWr{bI$W)Hg3?J4oIBWgVVhV2YtHcrc!)`G2==kcGV7L%L6ijFop`*TZ| zBpNTDV?^Nx8o)oc139-#+=hni<2Dw$LimoX!u{N<4fdw-G6)iJ7k$B=XvT&+WJ|NK6 zs2ZMV&JD#$28J1JQ?bUKBj10<7`-zqk>2!wcFtutdXWu{j7e*3*|dw^6o;kNB@K;p zP%adHRl+7bvlZ1ix8~Y?C+Uu`uMO_O&lJ`f-nyn|yQ)?E;PSC{0v*YcACIN{s`tG& ztuF=WGbb5vdpxpZ4Cw`k^1R=|v6WraftEEBt@|9XAIc@sWd)zg!`pMFnc?xDgtd)t z8KszA7IK=R0Opq}F{AbJvZZC*_oIoK3xf)8dxn1OpCRIj1|(#UA%vkEwCKZ0n|NS$ z_|++G!t?>j_0l%06pOy|&-P`c?!z|jjPun&E8NMPnkHvzm4aGaJ@ET_`E6wgFK?i(fEak0Wae;v(jxZb!QL>eiIXG8A>4x+!pxfH9zx$y zoHeCO*j}<)ifCkTuyMF90`!35Nfz?*;>P1yPDDlyBQsMOG|nc9T$yq`MeZR|8R24w z7R;5`wW&UU->(e0*Z=l?4a1pULd8!_!JQJh??J#ZQmh%CqR)NSC<(ln{%Wd5CLeut zys@sjy(J>)u^obY(&c%Mi(xDzTaT^SFUh(Em-F6u$n+T2zCQ{L$5UZ_C2e;jj}0Wy zDPE-!;o0tCU9nPYsfg`gRLUKG=D&nTum;FQn>2j=uj+Lj+aBgAHQrly;9=@E?Chrq z`3o=Xg|XjHBWlJG?Fqxo5HqC%VYD^8NgZ=2GG&6v{f0&fmY9BE{D^NK4%ry0xL0%J zT>WnHGjI~2fh;y=aK!@u?gtaLG$=Exw{UUlHsw_@Fq7*nOh-y!9rO}wt3dy921xg= z9V^YNhi%X1D%>D`A=pMC>4JQ!p*_Cf`dLw8h!3ReAaoZaap>)RICp&8b85wzdNSCx z)G7{zx6zZIx^7c8~hC>rx1jWw=XLO)Qx=YA?}Lf6S?D{DQQHxthW1oM4xgL6<=5! zlReEvW=YCzsv9gcE<|WT%@8M4J*cJkQ$H3%yKc5M5B>5u3(%i*vUhY%V<6~WTiL)< zC-O)G%g~QsOxBXie4gDkjS%cTm+2@Sd!a=?(%S z4#3}11$khf7Kpb>5L>zfr2P@))LI`WQaOD^BfUSs+`0CRd|)>-6r%AH?YBhYbN$9q zt6hCHlLE5nQ>vSF?uG9!-Yv+Utu*+c1*psGYpZO)jJUST+lbwmE8$7_fVY;u!Sau$ zfP=em+pvF+U!_43X0qY5{;quOj!3KDr%+(!gW7b_n4)Q*IyE4j*Oyj(sN&+XXU{0Y z+3e@?YMZ52>2>%|`8uvm-ld?+74}g^m;K?^5J3Qo$NkV-qQo4nw@RKRB16zeJ4mig zxwGNvulDVxP}-V(8IPmSuu7Vkeq2ox=lHP9^zs8f296bD1XDT+ZGQQV;>97Ggz?^1 z%rHX%9|y@8%L75Km$gG#*Z7cj3wc=Ze`yVH!7Zal?0@*k^IO_UCh=7i~8{F3e)r^TQAnoreW?0tYIri#8X;E z0wO1heP=jn&I%ITc0;hefZ)bujPADugh6g|-!ifmeYns=cav9vB}gfW6tyyW`A9V#ec^OHq9ZSkRj;5Kh)H9SQbF8L&SWw6S4>qy48A6yjB)*Fb!RL;{ z0|gee67lKIO$m85CoAF<7bu3^7s->-LPG%mg=Jk%R($wNF`M>|Ya8ITDK+{bxr!j( z{~CEA2q95aS7@RDqoji%iy(M6-TWTJk6&-yu8gzQ&EbTkKOPk~lBW%!E6@I(q6vFy zqq zQ2HcB-l*bUT6yTXquY0<-#jF~gbGh{_w9@lD=4BtqTumPg7cY2 z&!7x8Y6B2A=%hif_(H!g@y(}3x?8B7sd2H}cGHxA(xzT)qx@*ZQN0zvzUTCn!c}l& z7v&T#sm8=HdHGiPDdVL3d&GzJ9HlM=osi^L%eR&L#D=Y7;q#7>Nr$jo?e0WaZBPOpWRecp*!o=FDX-nZS-nW#}h85H2t4B)0tsr zO>c~Udl|D*&HaPtvvJhfrJRZ8-ic$f26YuThuTo3Z6|@AlDjn5TU#RNBif^0WVhJ{ zMP%OoY~YNgiKGf2_cn-DYfk;j6;`KI>cY&489qCxTQ&FSe8)FXinL+;xN=RH`8n>A zvo2S{)#P|YI(LD!{Bx}KrZG%m!1obeUJ2|0W5(1uY^C<${m#lGu=B)3k#tAg%Qf@e zI&0b2KJcTIpUB9&29Y<ij=uW+@ux@^Y%!!jA_dI)wx z0+IXdlFiqlalF|vQ5_}N7viZmb}SZTVg0!hYNYkurZDX!;FcBoz_D!#^U4X4RTA(8 zwTv5PrVdO9$#a%!rs|*;C2(M&j_P!^LbrE#bgJ!m?~gjyju29XpxXOx^s4a-#*1T(lslOZ)!+p-70y0RASFQaL%qrBumB zIEPcKV%2YiAe6JLM6(@?3MLpeC2YH8zAs>64FnrYRL7C#BT37lWzg-^+qto^l4+TO zR-f~*DWS?>Sw8!6L+|NC^O*(3a4Gr#?li6`cX?_~09MXHs{?5_4&RW?b@Cw0LEh4Q ztIlA$%8ZtLMgfYMR<_AUB+5x)*Ehv=^|pGVM!iOE*UXNL$r<0>(^)27*6!+c&_UVF z-UieGFWI#u%~`e%3m9zLYeDVIC?l(k47Z8ZFqfQ0wA0mg3}C;I~#hr{BwUbLqrZTyk|@w8BV;n*_w?OIz8JSFI*$l%Merj}(^4`o!3 zxb-{6mXCT9oiXw3FWNMbSey)`ht?l5c{8W|aGi4)pJ1}dRD7kPLNsfdF)v$<=qz=G zE_PWEk}G9zc9W-$=U8-8PYSWWMDc`$+gG?AwybeCx4P(6^CYvMVCxjQpjofpUa^p% zIyQDfXSaA+XKTG+LSYNL7Qo;MZbB!X8txF+m2dq1#zLUt7yJs%FRD+2yX1dC0_Xqi z0~7ywa^_FRL?S}j!yd%SQYaKT526A@V%L;t)w=YU$$cj z#>4zbT!fUzt^o}-UO|!v7eYWE8fx``;x??1GT2bSwNN!vHmO(ll7LHzF`B?`9bnuU zE&r{@=ZPZOjNw-A0Q0#gS521qn}`=PX|uAUTFyx5QJIN+CIZKfezx|Btfh7_W|*#Jx(xJ5(;JB z-_!G@6LvL+fnqO}65FSkfy^m*sy|-&^-ZpYzD>@btwR^#9{)mw{N}%vdXKjx$waQ^ z{`28|)k`Zg1^)iKUO&r?=Xu=Cg_@%i-4^T5cg=sRojwn9EaLd$5yIqSZ{f>Qb86X7 z!mY>gzjOl+hwfFsuH_75g_8w!xMn#2Li<*65PO#idYt!ZS%5rlzJjaBCBUA!HFnT* z>u()uvUM9;wPYaQ80PcA@x9x#hP5FOLafoK03|I!C~C}hO_t4S zVMjgcWhR^E+y680k`P)(JB%}#$+&;`(&MLzs@%$@x2NKWMf+U0zJtK0T!82Y`oP_QDLA=|&PkTA@z~#_z zW}Hc1F#mllKUxL!C~=U)F565s+~eX4J!*ZRUekqzug^au-q2@uvL1Qod;;rpHX=x& ze(4eNwW0l$jZUO6)_DR9PkbNAEOK^51JsZB&hC=z87n0L27ge$dx0?8W2c|mw`JeZ zzM-6_s-%%1^HBJnZspQ$6ROh!S@nU(!? z_0DQkCi(I5arVXrzw!yxDxnQ02JY@BtBjPX`PzIy5l<$<-JtHlUe~1UR<_Do;#+Dr#+UxUw!Dab zhy)>QCH&qr`KPX_u=Esr_4Ch`f;G1&j!Y(f-Igf`t%N2gdb3<*uDwW_%I>1T^q?Kq zjIHp$+$loFQ+oa&wfjQf_5ig<-#s}~ucMXW@0aFwWr)&a^K=ARY0WW8&{NfAk6S}v zuuAmvNqVRX3XyfHYR5~IhVH`+)X31(Gxf*wNa!jaQs4g%y{?u#}a}H#~ zTMcga+&}jE&=J1Kt@Ax1`Ni%!cf7nA-XR{9(!2`V3iav*Qx$}k5v0->?uKt*)lelS zhlH{=6R9||(|4L05{oUu4EEQ`y_?;n=b#sxYs1^Uo1zI$N9gz>5okO&to(k3I^)gR z_J=*r(e=?4%46u+8b8bYa$?%)=P#VeIaDZ8_l=bZehB#{K5upg@J12whC7W;s|Ud7 z(H6=_QNT#mwL8YyL%BY2ksYLMmg}&isa_l9HRN*3z6$reYS~WtbGaKO9kh)VS-vI@ zn_6Wd7sw^TR9F&Xt?|OYO<{Tdp-0o5}n}MkFUQwoMA)}Yg1TUvM@W*qJF7% z)W_vfz}ej2Wcf!yB{R8x>#E%RT94*c3TRdQ?t|V#_!3C9=Va$Y`-hgGb_EA#6v7*m zr*NFsRhFNYemqf>!5g+2Cn`}`MK1HOf%LI&UqyR!S9&1d?s12234TtBFO*zP<3!m6 zI|0+sG$Dg@!Chj}8>^+A>f>S&wWa%`0fFM%U5RTHlu&jsE#Jh#4ItM$5tQ^zu&?ra zUM;6yD10+ZCC=Jk^uf9}I+4UP`Hy1(U~6jpq09^;#<_u>tt27OY-1}&)HZ$jGpW=> z@?$Jtk;&#UA2K5Ot-w@jsT~-q5?UaiqMc#gctPM0CXAtY9}zT89Aglv)IFPcqiFH` zqP(wHS&-mc^j_hjv#QQ0Y@Mnq|MM`nIAl28xDO=Eeh#ZnalBa-3w*CQ#5g};ljMSZ z)`PtgDi3Y;qu!P$^@~Hcm^M0#NA1lYjG^1JSJ_RWH?G ze=au*2i3iYK~12+3d_79hUJDfMW>)9T}LggRjcn%9)zizOzQdHJy(;X4)*o*Y#lPaY&I&Lio~W> z=!z5X`g3*kMar)5!jo(pc!;+V%DDQ0k`*6 zcL>iK!1PDqMm7?6|Dt{_2ua;Wo?t}Sp|KI@`3*bqJ?J-{J8WmKme(hzEnP)4b}x7cJtiUq~^Q;7_-^)UT{S2aDcxMB{ZG2Gb#Dvr+$tyEhMO>g?J_+uFCbuLCM7$doz&S{aIn z5Qd~x1Q7udWelVe5g|Z?G$2Egw%P(hNR?5hsEB|JF^mRCQY#P{Q>Fw6kV*&vLO=*f zNJ7GIYv1pj-?`2|=X__l&UOCJwfD}w*Lt33uXW$|@{D|dB;)v657?j8FwiBue5;Mg z^@(YJ^A%Q^I0%Cjh7ivY?EqV?=Pq@*q)>$;deaGyF*|FB2K#E>JaP1s8>82~>Nax` zCph`~xJe#t*Rd_sesQCbVq1?YPyR9Z9Hn6D8TnN2ILQYNCgL)kc(e^sVB?-G>Th2; zc%3S@T=54fwxZ5~c23$Ebf=q&?zX_OEk0BM2GD65!$u^?r<83w0; zCqU?aS`&TIATJ9))B2pOiib2mw6`p3k%`CzRaLqql0$*UKVTG=|C6?lb+v!|dyU^W z-WllC_+@Y-y6D{{lBy#JfgLB97|OlgFXA>sTV~O06m20WE-JBo=FS2AyR7du2~WlY z`=oxu)j`k%t`{|6bi+>m$lAOkT%o$quGButc6FlTCj$T}_N_SH^-&xr~R{^VC+JkuM#(e1`Y(_*KB=68x zShCnX(yt52bEPnGF39@eqofuoN>0Lo_(jE~EAzjJZ!0(>;@rF~Ag27;>*36${UpP+Ca?jB4$_8c^E+a&8Xr!II$v}$d6bu`6G*c}^)ImTtpk z$+}Xym4UXJ`|C%sEY>IhUP5F16==L8A|<5EUe@KAwm2IwQSsLcR@m()p;1oOz_I!7 zW*>aPYp~=m_4Z?*N?LP++kGdnK?JJAY8OssJ%P9OcvSkFeyfo`O74X2s|R(SHoYI zC$EiP-{Njklke|Dn|x*!fAj4eSEbr3Jv&bH#JS{!DEd}2Zs@g@f)g49L6D=KC2T!(+6XPras*SfV5 z1@>irbdE%LZR= zvekqs*}3AFC|8>H#PyS}*&fok+?@7n|5@bW-U?|clB z`V6b`&Z5(!eb6M_r0-w2AW)sT)j_5y{TTUFemx$ZfAucV289eOoX6{G_-j@XL|QrR zc_WLh=Nr|oroHIHEIHiA_bVfWrhUv6;lqwASxxI@i29qQOF<$Sci!496uA;{rtVy) zK8q2z`^z#VS0a}FpgK51t#2O?!0H=AZ^3zFx5N@s1ygs&^)noeeWc23Y@>5YJ$;zj zd4wXsEFfM&vY_D>sX&!2>F$H=YYW-(jBbBThwm4*9(SCCwm65wjUJ_r5_)7K!Se^f z>Zr-1&qww#6x+Tz%$a=^wibk6fSvqpYPqBu-)q0oI;KgoN{-tS$JVbipXeYTAxjdn z{Gc!uKlixWx#|6eRkkS1x?9?<|LCubVbzd4EczJnRB3Dq4p&nZ?lDE~3N*^bac$&O zmDQTixD+<*yA`WCekOQ(nUWwYjHf3}vzu)#m5RJEtBlL=dR$lZfqrY{PnoF4W$_n# z8fpTlbZqcFZva+7yOdY7y#aBm4gZzcrW~6`;o2_h4VcbT} zNe*uHqFsCBj3pFb3v%-9GOVR40#%T>Xz}L0#^{v0x}CXD5vPl5#7NrRC|Y6V^Ir&~ z2*^Nm7=0k#BH*d+1V@fMHJz{YVJnc`Xpc4d`>!UE)S#Ve}9v}OA5{3@seg2WHsWCr!#PUrAyT|o;Kpx z$`c3zTt)DhSD7tvp1OqQlQw1z)GlGFkbU7|uFxtA)fk&4I`mFOh)bXG%8Uc`gL!y> zD1ofqw!$onWuxyDuhb`6^|Ty|L_VNnoCw^&XI_e`8{;VZyjmyAAE!5x1b3E@VX)o@ zEJr^T#ti!n%_@SRE{GG4VAGZ6 z%8wutvPy6-iCp%x6rZ|Y$bNoeHg*Jah!Zz!OWf; zr)gg0xl*=K&Ks8=ZCnd7VszBlzO9nYoYORMMycnq*^h_CvcmHQ!@J zwAvt{1=fWpaxyp$sM{U1Sk5Z}zerg*ZMTuo&ClQ#5Z%fML5rgXCP^hT zk_?mYD-5jQJM(7wL9b}? zxy%Mn`w(P%NKD-fV=CKfHnuSbz{;t5J@#!Z-7b=`jm(hGH9 zg&nKMs!Y$#C~xvH4&!WP&j?2(f19tWHI1i!lAK|k_0DUuBVW|(ab%f%putqmGpZ=K zWw3dqiK2uBB_es<#Hi2275^$HRURx&>f3Y)vz03Bj`B3yLJdfS@L(t8BF;v(2GB;B zXL_bcEhB3A1V?xiAAV_oiN2GAa*F3C4i0e2(63_1{0P*=D?z029*+V1o6c*vu$xrf z2CUm98rZ2$@V25DRa^Bi3^8PsoY9CRSGBV0iS{AliuLdlXt8R!(^9yUa*I<-;tg&1 zWUjS^RuSe7Gvh2UG2IEtr6U}(YD_?oG2Qn4NRvoCFc#G=UOmY#?ml6}soY9Ss$1tT z%NNo=?ik&-cwn}FpI{=$HG0b?E_m5XN#bfHQ7*PkbB;yVrtGv~mRRS%0f>hsb_(z3 zhCdpPY*scnd264F-Q1N~KbhYdvSRx-kwL{ye==l4>pbCXbpg88o0GKkdUU(1sIdL8 zKNNh^YncJ{v{|)V4>d=d!&USZ_!i1T&^3|OsXQUcvSoh2@*2t>9qU4`wYDXHxT^*GpenK2q-7MS6!j>=Tiy5`z`4Ed6_adgR_ZIv?;jkch}gE9o6 zOCMMvO~sqJi6a>Aq$UH!h@_S>5S>qO!!Nl1gHj9wyInZ zw4BC$ug=Bf$LiLCI=k#zZwA!%PJE+$w0~t+o-a(qk0z1`Xc%7q9LlLSJ^adCWE~e>j8%tf60`&>_ z@y{mXdy2OG#O=Su$d$;R8^)L}Io!qpve_78W%iR*uj`-2oSfYMn)>YoO6u0N>2rN- zx6IHE3Y=wIK2tUQx_JTgH|*W>FJn$hRJAEKeghKoU(r8fw-0Fj-=HaKGfr7sS5FBy zM4E&z6%Mxl)#XS?_nD(#E79VRr}VpUAgFR;c^aeIl*gAs5|e?xj~rF!aKob`UqgG| zwz@r*quEtfJNIs9DzSf{<;`D#+t(8QNJ0Z2w#+nj-R-tz#BPbll2?;AyVFC-+x^d%hPjXYL7laP^CfnYymnk}rG)0cMD!<+Mevk;?h~0VL zNltJ@VRTvvL8^50;Fx4}(=Iu9IhJSB+jUqTR4OMtk{%U8TO$uG`>@z%x%kS1A8)D_!<=7FnSnEQ0iF~zK2CNg`*Q{n&Qs=R6p zT}C^MP+f(FWi3b{6yvC6>eMR}q_DP@M)y*U+@jAyNDS)prLxSUqg9S@rMpl&wg%g- zMd0D5Yl1*no=E<*oL|U)NqHfFB}*HGNutO2vSLKKL_VfBflLYBry9L&Qa3%;zZ`KE zx!j1b>(l*8oahiFq-(kBF;BU0=_|;97+eYy;Y|$2YDu7AQrr?NX6<5!+92CUy55Yc+C-V?-;!}$s9Qy@m{zdD1sgZotEFn0fEK1BSw#l zr>PUCAA-PeWpH6K8Rg#Q61!`*$xJ!a5@obN3kmA_rs#qUB=r;8g7D;+3C^t=E`=T2 zuUzT}k=nu*q+*1){pO5+whDq6EGt1=HC<>~GHn{wI)R-c6aH;fa<@vh0K-SEQ8m*) z?1hH43sh^;iLuCI!bxB96pFsC$`8DtHeO!qx^)`9mb_}J@|2yhnkyJqz+4@)QVfO2 z+!NU2@q|hqMueDc!$Ft5SoxexW>eO=mwa|L2@24OWAXQ${DdprVj&bNt9^F~CZ;rC z7Dh1(>hD?kP+PsSc%B5a%tSr#PevxTqxyu;#o`S*W|Z{`Hy!Tug}q-5G3Q)0?_8F3 z@h<>1p!~jE+w1pVb4&uA_V#wyj-A1Pk}jcc?GtSGu>69t`lak#&r>n~S8w4Ag=*eU z0^DP&!BJ@b%gFdL7 zsm(M?z+IgEjZara8oAwNu|S1>yl%S|%m7JSVqhY>6evx39xFp$7XD75j3|=hk_m`8 z34*6L&@rmlW}IAD0WT^g3lOsbKH*-cS^MJZTJoGArHaXCp5<@d*O^DMI*C931&D%i z$f%MOklOCuejuzGiXMAj#*PFA7WzwXkaZfPedK!$PwF5of4en9JYzLwFp|oz-J$2v`{$`{WViEuUEFa!yl6&3hjm~`+vuI9RGr3-8(yS?c zq@fk;%j?Uh=(=-mu8j#L?#SFK)gE{vVZ=&Bi55D1gvC^xPedA~l9S0eZxa2ByyL&! zBa{#D5ZwHxkTpe1&2QGR=c5;KmUtslompY`Xv% z5#ycw#E-!)&P8rIzC@Y|M;HC(N4w>NL~YO4o%bp1&krnihgb%3O#)9#DRC58=wIn@ zIVS^rlrq=fBfO$&rYdCoN%yD^;CxM=fHu95?CF6#wOZ)3XylVsCq+PY`X7A66P?t2 zGX@=UW&mlB`qD(+gcvj(ptLM^v}o=%W?pxTUQf8tqtz5bdcgC}JfvTS1&!Vgh}s*H zDRzK&sqyWqAt9Vrzf`f@0)=;lMyazY;GT{BtGS#DhLTOCuA+`-x#D%4Tt$}0rfI>e z=lzc?HgF(44nE9KiM%nTdsV?=gxM6QpN#a8bE|y}T^VP3Q^cHv=fT26&@aV7al{AM z+HP}uPMb-HZ4!aB-MzEGVCBESIDg-&$t|s8+-FJ;v$x5bo02FZo7Hvse|b@%ozTj*%TZ|s>4B;XmC@D^d)~{X!Iyn zyqS(}F{9BjQ3~BVd2@80|9aYtc+`!maa$C{JLZpe$p=Nlq+wiO^4(6MDgDY+4+n{; zeo&09LEA(Ois0&Ae^9G-0L}X#B0$# z_vn?6MD5Ue7wiagQR`m(PC8VfCa_b}qmj1x_BvCiuW+~f?P%EiI())p(eGWNfvJ7{QrQ#&Xs}4|jN?*L@ zR>_3wN`UKiy00-V)0JdMfbRx{92YPnjksE?lgz@c2#oZ_4e`^%LlKLk<<@6+b^}lcc6yE zV7VKc(^Z%q( z>wn{^u5I3u|1FUx{6i*(uktKh6ar)j5+A&pZP{xZntch;Sas`?L$Z^uU#-_={~9~ET7K4r(8 zkBkWOLjaCNi0faC4ps0TvJohqvT@?_iQA4t6&tE~lhQ=1ywV#|wdFfq3KY90!(o(N;L1W!q%&ddKP`M!=o~q$?Ir?yF8#-ePXPST-7D?LgFRpU zg6;GlfxB1ccs*{HmbM$?hb(%K=FIy}Yh3-0ET~Vu%QU=}nRt_He9?Q3^liCaBognj z>QAXaV@jCtM<1D>uc|*>aHeYWMKB;lJ=R?R@*?ACb4cbWMC_-&+3~JM*L@xXW=IVz z;(2V`l+}xqAD=e|pucKA{My|swf;86>-UgpZ1@WAkoJ0O2p+KPN)>!d;Y5pdzwY?> zVZQpTpvR?^p9S5F^X&E50h z>(CeG2iIGVy>dS71aMrXBJf9r%@WI*#nWxcX5M0Lc{AS4~`@KJ|j5eKmWo`$Kpz+dX%vRkH@QZ@LNjg{CnSKhkLpW zGl%IhBvZsUKP>qj&QGJvCw(8<1If!Mop%dz8$sFoc3Dt2$UiP?|HDqC{*g^t=Ij^V z`$>b#{_@KMH$$E^b{3=&Haq$<>{j)i&S#I^q(2{Pr60@;0jwz_zhXFBE-R}^;~cwx zUQzF-|10UP>wiPKJJPwM5#TWR?F(eLU%sE-`S?^;n{k&$Nc)GeYiGI#;bE2M?7L~( zzQoa7{X1p(;#KFfH>kS$(7p9=p#*D&ecD)q4Z2NGziko>la&$v-9wHa(|8~?LkHpH z5_+kMbnN_DXS}>hGiCPuy(@_{f3ITWz4K%WT-^|xtC_2_3@}MLMmo+K$Mq&P{#x*l z2;`^U|1VMPv^D{YtOaU*f)_c&30T9gaaCIR`N{I08$QHVKZVAVym%foAIYhx~85wK8 z^6+DhP#f8_?#<2bnL_%lb}Hje=}PLXd18v_8)gpquj*?iwY{)vpKo=zif==*xg&}2 zf!JbCx#H>(4h!!qmA&Ae6VV0VuCx1mRTz(umJgK`6P1|9F;{HnC58&8mDt%K8SFC9 zLG9F+#oc%+Buotl7OT%E`}fdqd{1V8^IDzmOriGuvVPq*ok^U2wP1=mqG_Ff<7vBl z{3ow#B+0wx3`&xt))cv~VeQ;`VF~Hnl?uyW(d$>y7uPIMfBm?tZwWkDn0BZZ2|wws zzK%DTlYqTkkZV^lzYV8Aa?MmVf%SgT{ju^MDvQGJ`Zjc`Rm^Okm2l-O$Y(|!1?SGp zwgDz5B>VXB8^DLCo9)vTcyKssw>q^%`QQxH?mBiL)wqZnMv5g>&=bKijQT7g^sy&( zF4Dy|J{_3(@h%EwAy(~m=aR$DkkDa`CSKRV?KDE4?jhETu;fv;K?1p0Wx$PRgtWw{ ztSkXwG`)&HA)l3gVA-Xu9bHYan7Y*SThRcw(?nkeOd1HuS1U=OqEzSmZYp!^aoM(W ze5|m$jRWW03eNuhUoq;I6Dq3at7qf7r-^qOE`Z`eaJe7*h59-t3!FW1i|4(o6F)$9 z)ETYvBi0j>aCe|KgZ^x$DDj5sqjvh{^!?tl*sQtOHNMEs+AFGPfA1@v!oW;%vl3?Q z^o&%w5@*&!xdiRB;0J-)Mk-(+Z;xb~Mzq%4AQgq9=j~cO0Kl%Q0jQ=@iN`~ ztVD1#b1UVW6QcbMQRI3|9~!05-9V~ewJ;y|onQbwtT=2Sc86^8R?P9Ro#|@@tcA;} zrh(KE7p_805ipri+qUJC1VAz7Mq@61&O?#=$o2=-L$UPaX*J%GEFXh zeCp6}hueMh&C zjXr-?6OhxO%s80a^^B88#x5Dh_T_o+`oNuw%nNO_;$R{<=eV*t*W}HAMf(uLer%uI zk7d|@A(n)}jG}|sT`azDZC+n?lB28IqWg6y6aCvQ&s^r|yd|H3?#-UnS*;7#-Iio9 z^7C4~379K2^8qYsNfxNjoV3e}6&VoMPN?qJRdc>WO*bzH8(B##;bvhC1ykDFBJ|>e zJL!JJ;Z1uZq1FA^g#!1YVJswfMAE0-sm&MpvuFydO0v|d@dJ(nUW<=VGA34t=G&Ax ztMiyCo^i_nj_?)?gF*^v8*e|L-$rEeRre#yV!Q3QHjkrw6(HerVO~w|Idbev7!Z+X zE`rJ0S4;@UH`;#?o1C7w)!VrMbPT_?yr1;?*hSF&MybAMk4F`G@A{i6+M(PHttC6$ z`AAdf!h8L50V_F01lqBz@geeckA;R9&I{Mm^mtsO(kBoRz`42yZ_j%wi8Je`;b5gp zw%*DY-A$3B#!rn{I7V;WOJ`2cc3-6%jAl{>76|VVM)9B2r3Z_`@rC2n5wJH&b!>zm zlUIgqcrs?!#n)Z&^M>GJ6rvuwQY~8$j_7TR7}nz)pZ0bPD-o`VS4;~zt8$vMRc2RH zl@UfKr?qZXy4=qcXh>ehVM|tn#rI_|rYH4B!&1b3?H3apLrkN94{Qz#D7CHm2NTaN zanjkEF?lw(mKF3s(@PbiPacvBM0vtLQwT~4>Jok_Px0BiBc1*e``wF5ej5CIAV>S9 z)IQq;#|_7pG>WHAH!1fW%U@4pw0P%(49c4zl@H<42pz`dxkIX3%;E*k<>L|`cX640 zr_|pb>R3z3B!=S$6>-Z_{@O@v9(_pl$~QLn$T1U#QZ+7L@WWuigrs$PtW0sms2X92 zeMJoAV1~1-UMvjh-CT@!ii*KRM;Y*Aqr^XBAXM^3Ydv{<@~8{A6Y+I)&*~+Uru#F7 zoj&YD54z2uBV?0q8>k;Pja;lh*7blqjECfQ@V%d^JEMChfkOJtoq4d6&+KPqC%R5m z*h3kXGG&OhZBAvK8oa z>o2);D({e2p++h=@}A6vPDQC2GcE$G!a??`3uoj)5t|U7Rqd=3(@PG?)}b&$BwGVz zwtArW1}i!87XKvH1@ld}be_2K)+-s;A??*Xm6Vf#z_A~QGvZ*I7D=LghjB}HvQ#Ck z*GK7M&UgD(yNm=QB<(USdB~FHO(UUp;nFT9HIqUe#A&GM_37GHs~nD2+z|Gw$iGY+LY zaK2M-Xq`T63G<@6Or(^hT?57!?4+RjXdWw@q5D%)5H;hbJhYzFtO^433-Sjbp4Gr z2ZZa^ie-+$jNw&Q*SIzw6g9Ix-DjYoZMQk%i_q2D7Zzf^m`*OFcv7? zGrp9KZFFZMlg=+NFVh2DpqF2d_FtDBA|l(2AdF^`ZZd7^SQ-C52&o{IE&VonzgJsW zgl$6FIC$k45VPc!@aw?P+B5M@<3-Qc{DDDdpA-|OI8i^+Z8(88`%|LSTB5?^Epc@O zS+2MFQ*fOk$3`cR^OYJGwj%ClhIlq09_R6;5Rpwp6*DY=ZWGAhuOtiX2uyrHa2|7P z4fBF!+K-~?`b14fPFD~yZozY8DP;_Rs)t<89&afuu@q2$R1Z-f97kNpVJ;Rwb&9S7 z5X&c)3z*F!!BnZ&#nQHmG@`%KMz$)N4q!Pw$>sKKo?PfBm(#zVIommwqzv7ef3cH!bRS@j7=ll+_6qLiD)Y)&TXBNhB7!H#ZmPN&$km+bs`Bc|FsT z+G=%;+{fqDv4QKnVNxAvaeL_}FF$AVf&uY}F6=X)6z~c;*@b1{jNLNzzyHbSwX!Ya zzc+2?LkY*hO3cWCxGUg?$tu(XIq@Cr?bi9FlW=uzcd^Q5YQ?gb*AJa*yBCI*$VSl& zMXX*keCt#U*>fo77y@mj~sJEYkJK&Dc9MUD~g_h0tyu3%PJzq4o%hZJy z)bTomW7n?X;F~bk8!`hT{JN{zx$9ia4H7UGi(SiuFoUxzxI`~XOXecJPxpr5RND&y zzZwDv#zZgb6e#nOB#(Rpgy+AReN}$FXPA$AD<(l+P_Jh<5#ClhoWmlx@;-YWHi=A& zn~GCU-vqubciUXw4PEW|74!CA$sv6s*C2NJTkG|3pN_HUP#DVxwV6galjL(8q=Xhs z{O=xNQ}DSqb8vs~Q{ zVJr(pC$Q_tCmmKwezT=iHISV^j`?HAX3*;U88^DxOT0+ux8`jipY@XtfOphFdMCaF zCUF|kY^2xsu@3h$;Gz)oi+~qevV$oXecUMZmf?xofH$g=C3qj*x?hDau4!of+NHzovCaB zGqJLXi0G)z=tbR8UL`vgW&{qm{RX<-Mbgw))|92R8pTDX6zxwKaPK<7dF+Q@ap$#& zz}8+VAPi2zwW1P2Wi@e6HD1i`Z<*;wCAT9D|m;q}mjmqKMhbYh4CwfjL}MUg!RPH>l7P zO}fldPmi@kjz3>!Tr2aY3k)9GEsc#qWC7Zx?9C_+<#|aENjA;R>Q$E3GD?x0+V$+T ztfu!^m47njJk^D{2-5;<4g3ml-3I5X?&fr)1slZGZ4Li&YhS?H=MS3&vnLij+NUvj zarMn1@-^v(Xrk#>r>@EpJANleS+F7B;dYQ@)*ObZrGSc?mx0)e_s+tVu2&)qIIV{H zt~2Wr$cx0MPJW;FH-)&W3zF2vi^bws8-*5Cct+`;w@Nc5NEL`FJi+{qvMRQIesRHz zpCNOB>g;~R-w9wOa7>?hNs%w+R0+>Pw=|pYXWO%!$a!<`(v|NaoAy!w9H6tNl2BWC zW`u6#L%IukU?AN_{uQ6H$iW&mpvQ-a+^$hjOTBo^k3f!?J-XQ9aR>zxpPWc8qh!qu zMyZ*YYUF7W`f9_F@K($S07;eu00=;^{AKs=ka{!I#;D?mzeFC5PJf?0oeqp~WmXK{ zyR>c+veN1ckDr<7e^NpY$E~%5W)k!1PyYo6X+y!xsC~&~NZbIC$YlS)ri}`3rEEGb zcr)$lFb)<(LzOdiZ?o|7=`+pPKme0aXkIIURMh<3eUV45xJ>*xECN@)6`KOklcG}i zR!y0k5suPn|B!@C1GFJusxMqPA#~fHN}vrK{gV@JvX$c=QMNh{Z^8HH|AUK?bhsBW z&$&_B%G0DQi*4Nz_4Gyh=d1Wl)xG)^+!V*kAwOS$7pwME=7)(Z8)t ztkFl92bi}DXvgZjp~8pWQ>u?q@)44ZJ%~exM&_TN)0pEg4uWpK_R=l+QE;{~qda8x zB5J0oP9z=0nLm>QN(G-o$eEKzqA`Y2gq~vW;u%^|*`OUjXiNI{5Z%@*Z%)WWj&C0S5G7J( z|s{S|lSYh8!K^u#8fvz0{0wxCgll z!%!ETxa@Lkc?Hz1pfJG z!c~r*>UF@J<6^_8C)yKn6!U^1`@ISQ3lW`}U~{0IY!Vq`Fa!y4r4>9~T_1^FdgW|W zP>r8WZp=dF2{<525XqILl7S&oj^1z~ouMgc7XFC?4_uby^B(WW_s)FpJE8prb*@QB)ac*Cutd;Tm~zk(h5j5<6hv^d-JU!aDjB%?jWz0(o5XZZ??;Axz$mniGvqa&2ZJH54qzC%$5@Gc(Ez{j9vyYHnEml z#OOMKcQA?J7M+VV5MxH}SJ{*rWAq&?=wC>r@IaQVuzI7}ZfOW-a^y7+W zlYcDlMtqtwP|Pd{k?Br)R)P%*qoE90s*P3Z{ru*!fS%}TRe9gt9l$iUY=SZLUv{YF zKzhQXw&PvvrjZKMsQfN)=0Z8~b@aW$ZT|k+?!Q-DUpuEn*=$)?2E+tSS%w?IYIL)C zB@dYe2?A5o1atWB9`i$;1)AI6GqV0>EZ$C^?6RUE5x4ap&wX-`-En5JxfQbpH#<*jh*mgHTv z!dHlRE->vr*(Se1-q(*+3?F8eFvAR5L|z7y&%t2Tc)n&N!?vVNZPO0n#j#YTE$>-Z z4Kf_z(PH*;E>gG^%kD3qMwuf>EE>0oH08So@oC(f*rKfvoua!(^tYZc7jz+919=y& zRBh|dxEZ6;D=aV7QW3@@gd9h7Z17C#Vw5K{q&mz%T@WKOD7?-a%g4*kH#rXYPdKf_ zv3u_H1ybv3B@+{d6?4dymVv|)_EN)587RN^McB?zv+vG~ayN%lItt=4|CKax9>1jD z9w6hHsSBxM5z{b&H%!{+5LHftr=O!l+# zrJ!316frfFEJ4ROf|4*I;?EVJ3MT7ZdOu5>&?2-Quq1@7SU*3nmtS8OM#4>=rk`FB z&OP2E;Pqli#k*O*rdb6!n*-y*w%xG(>Gao0785yf$ky^w&FeWN@n7bG~yE4 z06{(6{l#cV2YNM6x(^?g%yRH6@?Lb0gOL>0pw?cuLvnJfP>;r&Jdo<8kQN)V+K7!3C-r@7R0wNTodUWBExfD zP$7&eQCme=VpvG$MLmG|j9%CTF-uty@H6>)0eJ>^7CFax%#%bhY757bF2LaJt*iLa zjsv`u$lVe|rMP#3RaeNbQZ zW|ZeeL*$C2s?OWei`XCLwuDi;V$VA_6@yL^uHW3H)RT3+bPQK1hpt5*+hXhWnCYME zf1~PwBqb`Xs?#NI8fjIgbc)n4?TYfqn-wWFPKwsI_+Tbg@wez8GlYmJst0rzz4zJo zYT=nIXb(B7p~fAwx`NG%9ZghBDCDK_n$mhQHqPEr=SbJ$_ZN0}ZFjp$wF%ByJ*zu) zVM25SB&AHd03`55hV6BBheP2{aS-f*v$Zx0OvE5Ddi?BOJnnU#)Sa!5^qOq|M3X5r zC0Hg|kPd@V3%ym!c5*g}huf9AYC0@I^M?kS=s4_DWJ+n7mHSGN28lNc5)JvOwqYEJ zF6cY^^I5T5U~NJ&Pk715n>O3(cyRowUD)(vF*1!RfLC)Z4g*>aV{3#f=}PznZa)h3 z8Cx^+Yk4N~DJW&I)qYSQVb%Y0h_%4asWRQ69HmlZSAR@4!8y)J15jdKe83m$-wt}Sgt(gh;}l>xLd!bQ zxt67`-CJ*!8F`4c>-F3T&cMnpfoK+vH?7F5g=RHF6tqnd=Y|`-PROt|@-CU619wmP zU9<@!f$rjpOXD+}wh|d(xF%5B&7?Gvdf9R_+3VyMu1+=k;~fj<%yM|hwHrP?+scG| z5A%>O<9&wR_-dgX0L>p&w#1xgML59}R)0<3kC9pxd9dzlkH zDud3b0AI3qmN-SJ&g^<^Z5xBzt(1io%hWjj5DU=KL{CM|DE=~PcmO1(YbZxHbO!$y zvY)R7n0zh-LPG?qSQwp%6<#uw)Og_`G!&=Wb}Npi&4E&|v=BZGd#cA&?{2(PkKJOy zMF2s8AM=1=wtXIlqq=;*f>hDb9Ho(m%7u+LyBX^anjZhFy|~>18!`AA0(lF&9{Cj8 zyK=w$j2_7VDfAWo1v*Ed)zBKfR+1Chh`AF;7~KMq!x#7~<;LY&ig2nS#Vjf+35$$Mvgy@NlS1`Gg%mIShHy7po}kiqZg|nP?hxTz z_bVFdE-!K2rHML0c**!JkKk^}0YpcO2Op^WQjQbU$#^5f9T6yG47AUztl;w?V$yEn z%o^fFY#r&thJux?&2xHzu4*JH47B#zGCIX@5gdHV=q~Of(q`a%w$UgYE~NlXTVT8P z0yBQpw1kq8zBt(em4Dxgi%0G15*_8#_-Q-A+3*wsG(0c!$q%CTo8nAajs1!NV)3XP z$q#5SG1s)_ZE5a|1v;ZGN<^&G`YkpLL|koUy;y21HFaW$HzT1#XGY5{^L~WMsEjn^ zLWF?#;ySd#2W=HvwJ( z=)>5~gY3JycenlNKe=0XyWMVusVx5+;KW>|`O04thW^CPe6{fNSHK9m+u!MCa6jdL z!kk+J2rU+hZ``-4T>)1}|Log-ul{T5`9~4RM*_wF!9nO2u*?z`o{_T2*z5*(p|b0R5B+tScu+*i!8ZSrHwxTCj>hJIJ-V zd92a-F`U5)E9h1Yo;@b_RD|11V9l$9?~qzSzvu?_#U2#TcMamdH51BW)>1>a^a6H^ zQF)cT+R#UWGhGRrHU|`T`Iz`I>{9%|hiAm1kJ;3r+RJ?>JW&H>`rib3@jQ9?(h!TT zMaI-D^YU7RBBu#s`TohDk-qnci^Cb$VcBd0UaQdzXAahNVs%|uLv&BeGThhCVxO{a zhNe#C?*p^*w)pG%+VZAnrOYa)sINk!te9N0JqT6oyw)=W{*R`ynK$w97(@ya?(=|% z4hT=3V#WwJ9mW24tV~u^Hr|I{!ZH^WYro;DbODBxx_Xs-{_LTZ3tvi=lFv?t!bq_@ zX@!k*8*HE#RsuL{h4yt-Ix}TLJGtL~?mb+Z-yn7L6km4-cv{^qIrM`+;Qt+FO1t#; zWF2g0>!asrwbnky@3YvoNA$B#8u|N{Fn~7MSJE}u6)dA1TW;*$dOXiTeTj^7lO88a zsYy|j;4EOj*x=ek3K|FC$-5I>`1;HPQhnybMGG?!cRIygGo84$?1`Hw!uB(x_&!U! z&W$kF9Ix!`Ny(~R9ep*&zPg0q8JLMUQ%i|kfiG!WgO9q(6Bg{sla!^F}bPJ^Sh}A(sI5DCxY^ybVMA{O&h+!u<-YiqKOyeRE z=4us(re1pm9vJnZM8CW8>PxGe={iA;-CyD!oUGRkgeJa)l${@(cq#IaBE>~@`@P6x z29r*zU_}{p8D_M<1NZGWLtfN(#$Aeaz7Ehp2b;?)tk~$c+JY-eqtOZZ$q{Cc)x7Z3 z{fg&C41rbt>WOBLDdurv$j)AL4I(SW*(!G=k<7Z@_Yh-?rmvTijp?_r>>Q3O=B<#4 z5p!y~l$xPyj4N;K$v{*^TuO>AWIb3ZjB_+=E}gL0@i0j%(6npmj>;-0rDo3%j!A8j zTzD2~tk;eJlVZ+SP!8Xztd2n#W}i=I z)*L_u^xh*`pV164@Kbdh3c9$uVjp39F%+=6{qad&(GBV!YtJmWx!R2B3!+_C+1SOW zCsfzm^}jz^SLqeORXuLmk>W8arPi~WsLuKsf7^CA8^|vK$@XidOPEFX={kYtUj6Rc zT~<9|Znb4N5h84giD-+Wk81LmFxC$4^JRny(f2>7bj03lCt~B$eg}%@ZN@^0=+ze& z9r7x7A0>sAC~c}A$dc}6JEyH5-kK1}4rP>EjTarOy%vo3LXsM1z7d{$YtzgYbr$>{ z`W`WMKf1Um6T9Vt=PCO}o;7{ZT<1zPS_IpaCO|BnKn@B+<{rn2iY+BA&bTGYDUdt1 zme4TJbf9HV=SfXZQ;``lTkc0k(FStR@9uynF zGzchb9*_rtPBMQ`jL8s{YI7nr(~AEZ`>c@6(8Nn|{5<)#T1=L)OC1H{a|EuSjj)#i4U?5L0WU9c zMHTq>=qI>CZ5L3EOrdBvvIz(cR8qvZwaJ~ILXkOsYvSLf13Xqu(*ty>ABGl+DsgBZ)+dVDSAk^FujBS zQ}r){t*glfeu*Vre{ruaeWsJw6^#0Kd^XQg2T;Z5x00q;G6nLojWWF^bRgernu&gE zt;Y+2c^lRKkK)e$o6R(h+E7Dc;;m&Rx>LzxGQv z&iy>sbMEi=^OcO+&@*lMvL>({QQH4eJ00!Fi7U;k9k-qXPfjR{U;L zSlmE%PKw%T276Vm$V-{7SIlSg!yzgd&{hYY8d7lNpOSO719_~HiO)KN(uB)%xlz** zeODk&NhzV@oouzs69~RnFHCyog36TWdxs8EF%Wl59SLqV&U#!>!&-)A$UEm0HPlw# zPb4StMUQsiI!iX=ylnYaUjB|npfUJ47c{}cfQrka%mo20bmq~uQIAwbAr&bN zGkZeN<~F;{TDcmpIg*tM;7xk>-bmN?IvcO4m!sXvhWdt>fPC&bs?EkbEwS~KVyFz#FA|~X`e!t#Dhdo90rZ2k9H+$|d88HMzk~ntd^e1kF zWttgtNHjq$%A+_GDIZr0&awlM`ya5D*Y(va5f60^tpQ$bv`@X#Tg zA6g{2H*IBhCb44`Th(}hII;YQYywJV$?nvJ&K`q?(XYUkNskS|CQia@F)Q(iyYR^) zM2#SzR9Kfl6s48yuXM*{xBP@T;Tbd^Ht3_S*?6;~Y}949qqcvnY4zEO$i{ER8b(x# zj>gBnEkOz1jZ?4f%n9E+rCNBX#Fx8{qF%Tho2(n@A;j*H#9|F5irW zdY+?;{%V_XYH2pASl@L|=b_srAjj^gtDm8VCN-xQGTED#4J@=3}X~5>OIgoZK5_AkzZnY>R|_x7Ys%X(8kG#WhDS zD=73Y$KxZxiRs86ejcW_XmAr&@Xdne^~L7W$n(rrui|7jS!AR)=2=wLEd)Y4 z&F}@h=bW@O!;McK^ayywG;|`U#Vp)46~l}o&{E;(a^04mqI|u zQ_JR&aS&=@{Y`%BE-~Al0lrN}4kh{prA|UpbKKp;laLKnLT~`w@7)O{Vu+P1{J1@x za`jr<1^R);=8G=$-i1jpl>T9r=`b$9amh|weF8lyFpchv$aWjcjWsssKevpA70+!> z*+BpCFBu9*oSV(uzAbY+Cippa3)HeT^aH2B4~T9og@@wWkUeOH`QPL$!NgB+biT(W zoMP@)P}#V64DQrc2d3LaJRe5^S-WiA!~foUm!tE0HCrt#P3+->qzNH2nyVdFAMr~2 zU~aZ03<{wz4SSaQqH^cBzZ??_`R@nYqkXT3Dh-SYvS z&&hA_ngv6-Oe4TCsyM3tJK>5h-J*XV%EFfv8ceVge+`A-Y$0P|uoZ2>nFB{YFyRy8 zGanOptdlQPS#2!^Kv!p&r8X~h?s;NxxW^FLG|jhi$1_0Goew~LB?@%#La#` hint if the check fails. Enforces the same access model as the REST API endpoints. +* WP-CLI: all config commands (`hide`, `email`, `cache`, `log-retention`, `period`) now require `manage_options` / `manage_network_options` before modifying any WordPress option. +* REST API permission check now passes strict mode (`true`) to `base64_decode()` when parsing the HTTP Basic Authorization header. Without this flag, PHP silently ignores illegal base64 characters; with it, a malformed or padding-stripped token is immediately rejected and returns an authentication failure instead of decoding unpredictable bytes. +* Debug web server detection (LiteSpeed, OpenLiteSpeed, Caddy) now routes through the `wpvulnerability_safe_shell_exec()` wrapper instead of calling `shell_exec()` directly. This ensures the `WPVULNERABILITY_DISABLE_SHELL_EXEC` constant, the security mode, the command whitelist, and audit logging are respected even when `WP_DEBUG` is enabled. + +**Fixed** + +* Forced test email on a fresh install (no email address configured yet) no longer produces an `E_WARNING` on PHP 7.x or a `TypeError` on PHP 8.x. The fallback now initialises `emails` as an array instead of appending to a potentially empty string. +* `determine_locale()` call in the About tab is now guarded by `function_exists()` instead of a `version_compare()` check, which is more forward-compatible and correctly recognised by static analysis tools. +* `preg_replace()` return values (which can be `null` on error) in the HTML-to-plain-text converter are now handled safely, preventing a potential `TypeError` on corrupt input. +* `DOMDocument::$documentElement` null check added in the HTML-to-plain-text converter; avoids a potential fatal error on malformed or empty HTML fragments. +* JSON-encoded vulnerability count options are validated as strings before being passed to `json_decode()`, preventing potential errors when a WordPress option returns an unexpected type. +* `cron_schedules` callbacks (`wpvulnerability_add_every_week`, `wpvulnerability_add_every_day`) now use `did_action('init')` guard before calling `__()`, eliminating the "Translation loading triggered too early" notice introduced in WordPress 6.7. +* WP-CLI vulnerability commands (`core`, `plugins`, `themes`, `php`, and all software components) now display a clear success message when no vulnerabilities are found, instead of an empty table. +* WP-CLI `config period monthly` now returns a proper error message instead of silently treating the value as `never`. Valid periods are `daily`, `weekly`, and `never`. +* `uninstall.php` created. Plugin data is preserved by default on uninstall; a new "Delete all plugin data on uninstall" checkbox in the Tools settings tab allows opting in to full removal. +* Large vulnerability data options are now stored with `autoload=false`, preventing unnecessary loading of JSON blobs on every WordPress request. + +**Changed** + +* Minimum required PHP version updated from 5.6 to 7.0. The null coalescing operator (`??`) introduced throughout the codebase for improved type safety requires PHP 7.0 or later. PHP 5.6 reached end-of-life in December 2018 and is no longer supported by any currently maintained WordPress version. +* Minimum required WordPress version updated from 4.7 to 5.6. This enables simplification of backward-compatibility code paths and full use of Application Passwords, `wp_timezone()`, `wp_date()`, `determine_locale()`, and `$wpdb->db_server_info()` without version guards. +* Removed `wp_doing_cron()` polyfill — the function has been available since WordPress 4.8 and is guaranteed at the new minimum. +* Application Passwords authentication in the REST API no longer requires a `function_exists('wp_is_application_passwords_available')` guard — Application Passwords are always available at WordPress 5.6. +* Removed fallback code paths for `wp_timezone()` (WordPress 5.3), `wp_date()` (WordPress 5.3), and `determine_locale()` (WordPress 5.0). +* `wpvulnerability_get_vulnerabilities()` now stores the `impact` field in each matched vulnerability array entry, enabling KEV and severity display for all component types. +* `wpvulnerability_get_fresh_vulnerabilities()` (software.php) now stores lifecycle metadata (`name`, `status`, `date_start`, `date_end`) in the software option alongside `vulnerabilities` and `vulnerable`. The transient is explicitly cleared before the refresh to guarantee a fresh API call. +* `wpvulnerability_get_cron_snapshot()` now uses only public WordPress Cron API functions (`wp_next_scheduled()`, `wp_get_schedule()`) instead of the private `_get_cron_array()`. The function iterates over the known plugin hooks (defined in `wpvulnerability_get_plugin_cron_hooks()`) rather than scanning the full cron array. Duplicate-instance detection is no longer performed. +* `wpvulnerability_get_plugin()`, `wpvulnerability_get_theme()`, `wpvulnerability_get_core()`, and `wpvulnerability_get_vulnerabilities()` now store the `uuid` field in each vulnerability entry. + +**Developer** + +* Full PHPStan level 9 compliance achieved across all 17 PHP files: 1,092 pre-existing type errors resolved; analysis now passes clean with zero errors and an empty baseline. +* Added development tooling: `composer.json` with all dev dependencies, `phpstan.neon` (level 9), `phpcs.xml` (WordPress standards), `phpunit.xml.dist`, `bin/deploy.sh`, and `docs/` directory. +* Added 18 PHPUnit plugin header tests verifying consistency between `wpvulnerability.php` and `readme.txt`. +* WordPress API stubs updated to v7.0.0 for PHPStan analysis. Added `johnbillion/wp-compat` extension for WordPress version compatibility analysis. +* Added internal helpers `wpvulnerability_get_component_count()` and `wpvulnerability_get_config()` to centralise typed access to cached vulnerability counts and plugin configuration. +* Fixed 10 WordPress version compatibility findings reported by `wp-compat`: `wp_date()`, `determine_locale()`, `wp_authenticate_application_password()`, `after_core_auto_updates_settings` hook, `site_status_tests` filter, and others. + +**Compatibility** + +* WordPress: 5.6 - 7.1 +* PHP: 7.0 - 8.5 +* WP-CLI: 2.3.0 - 2.12.0 + +**Tests** + +* PHP Coding Standards: 3.13.5 +* WordPress Coding Standards: 3.3.0 +* PHPStan: 2.1.55 (level 9, 0 errors) +* PHPUnit: 9.6.34 (18 tests) +* Plugin Check (PCP): 1.8.0 + += [4.3.2] - 2026-05-20 = + +**Performance** + +* Notification scheduling no longer rewrites the `cron` row in `wp_options` on every WordPress request. The boot-time call to `wpvulnerability_schedule_notification_event()` now checks the current schedule with `wp_get_schedule()` and only clears/reschedules the `wpvulnerability_notification` event when the desired period actually differs from what is already scheduled. This mirrors the idempotent pattern already used by `wpvulnerability_schedule_core_events()` and eliminates 1-2 unnecessary `UPDATE wp_options` queries per page load, reducing lock contention under concurrent load (PHP-FPM workers / bots) and removing the corresponding entries from the MariaDB/MySQL slow query log. + +**Changed** + +* `wpvulnerability_schedule_notification_event( $config )` gained an optional second parameter `$force` (default `true`, backwards compatible). When called with `$force = false`, the function returns early if the current cron schedule for `wpvulnerability_notification` already matches the desired period derived from `$config`. All existing callers (admin save handlers in `wpvulnerability-admin.php` and `wpvulnerability-adminms.php`, the WP-CLI config command in `class-wpvulnerability-config-cli.php`, the update flow in `wpvulnerability-run.php`, and the repair helpers `wpvulnerability_repair_cron_events()` / `wpvulnerability_repair_network_cron_events()`) continue to force an unconditional reschedule, ensuring that hour/minute/day changes still update the next-run timestamp. + +**Compatibility** + +* WordPress: 4.7 - 6.9 +* PHP: 5.6 - 8.5 +* WP-CLI: 2.3.0 - 2.11.0 + +**Tests** + +* PHP Coding Standards: 3.13.5 +* WordPress Coding Standards: 3.3.0 +* Plugin Check (PCP): 1.8.0 + += [4.3.1] - 2026-01-20 = + +**Fixed** + +* Dashboard widget now correctly counts only vulnerabilities from enabled components, excluding disabled ones from settings. +* Status badge calculation (Critical/Warning) now properly considers only enabled components when determining severity level. +* Fixed PHPCS warnings for global variables without plugin prefix in wpvulnerability-admin.php and wpvulnerability-adminms.php. + +**Compatibility** + +* WordPress: 4.7 - 6.9 +* PHP: 5.6 - 8.5 +* WP-CLI: 2.3.0 - 2.11.0 + +**Tests** + +* PHP Coding Standards: 3.13.5 +* WordPress Coding Standards: 3.3.0 +* Plugin Check (PCP): 1.8.0 + += [4.3.0] - 2026-01-19 = + +**Highlights** + +This major release brings a complete redesign of the admin interface, comprehensive debugging tools, enhanced security, and new notification channels. + +* **Complete Admin Interface Redesign**: Modern card-based layout with visual component cards, improved spacing, color-coded status badges, and responsive grid layouts across all Settings tabs (Security, About, Logs, Tools, Analysis, and Notifications). +* **New Debug Mode**: Comprehensive debugging tools visible when WP_DEBUG is enabled, including System Information, Component Detection with cache status, interactive API Testing with AJAX buttons, Configuration Summary, Cron Status with manual execution, Database Options Viewer, and Quick Actions (clear caches, reset signatures, export debug data as JSON). Includes enhanced web server detection for 9 different servers. +* **Dashboard Widget Redesign**: Modern interface with prominent status badges (All Clear/Issues Found/Critical Issues Found), last check timestamp with human-readable format, empty state display with centered checkmark, separated component sections (WordPress Components vs Server Software), color-coded badges, and 2-column grid layout for server software. +* **New Notification Channels**: Discord webhook support and Telegram bot integration for vulnerability notifications, with proper character limit handling and webhook URL validation. +* **Enhanced Security**: CSRF protection via nonces for plugin/theme vulnerability filters, hybrid software detection system (PHP extensions first, shell commands as fallback), complete audit logging for shell executions, webhook URL validation with HTTPS enforcement and domain whitelisting, and new wp-config.php security constants. +* **Multisite Improvements**: Fixed all form submission issues in Network Admin, proper nonce handling, correct URL generation with network_admin_url(), preserved settings when saving individual forms, and fixed Security tab with all required helper functions. +* **Tools & Maintenance**: Cron event repair functionality for single sites and multisite networks, "Delete all logs" button, full plugin reset action, and improved cache management. + +**Added** + +* Tools tab now lists expected WPVulnerability cron events, shows the scheduled instances, and lets administrators repair them on single sites. +* Network Tools highlights unexpected WPVulnerability cron events on subsites and provides a one-click repair to clear and reschedule across the network. +* Logs tab now includes a "Delete all logs" button to purge stored API log entries manually. +* Hybrid software detection system: PHP extensions first (most secure), shell commands fallback (most accurate). +* Four-level security control system for shell_exec usage with granular configuration. +* Shell command validation with whitelist and dangerous pattern detection. +* Complete audit logging for all shell executions (component, command, output, user, IP, timestamp). +* New wp-config.php constants: `WPVULNERABILITY_DISABLE_SHELL_EXEC`, `WPVULNERABILITY_SECURITY_MODE`, `WPVULNERABILITY_SHELL_EXEC_WHITELIST`. +* Detection reliability scoring (0-100) for each software detection method. +* Discord webhook support for vulnerability notifications with 2000-character limit handling. +* Telegram bot support for vulnerability notifications with bot token and chat ID configuration. +* Documentation links for Discord webhook setup (https://support.discord.com/hc/articles/228383668). +* Documentation links for Telegram bot setup (https://core.telegram.org/bots). +* Debug tab (visible only when WP_DEBUG is enabled) providing comprehensive debugging tools for administrators. +* wpvulnerability-debug.php file with 11 helper functions for debug functionality (~18KB). +* Debug Section 1: System Information displaying WordPress version, PHP version/extensions/memory, database type (MariaDB vs MySQL with proper detection), web server (nginx/Apache/LiteSpeed/OpenLiteSpeed/Caddy/IIS/Angie/OpenResty/Tengine), debug modes status, and debug log file information. +* Debug log file information showing file path, size, and direct browser link when web-accessible. +* Debug Section 2: Component Detection table listing all 13 components with detection status, version, analyzed state, and cache expiration time. +* Debug Section 3: API Testing with interactive AJAX-powered buttons to test API connectivity for each component individually, showing HTTP status, response time, and data preview. +* Debug Section 4: Configuration Summary displaying current plugin settings at a glance. +* Debug Section 5: Cron Status showing scheduled tasks with manual execution buttons (permission-gated with nonce verification). +* Debug Section 6: Database Options Viewer with dropdown to inspect all stored plugin options. +* Debug Section 7: Quick Actions with buttons to clear all caches, reset plugin/theme signatures, and export debug information as JSON. +* Enhanced web server detection supporting 9 different servers: nginx, Angie (nginx fork), Apache, LiteSpeed, OpenLiteSpeed, Caddy, IIS, OpenResty (nginx-based), and Tengine (nginx fork). +* Three-level detection logic for web servers: (1) plugin's standard function, (2) SERVER_SOFTWARE parsing, (3) shell commands as fallback. +* Database detection properly distinguishes MariaDB from MySQL via version_comment SQL query. +* AJAX handler `wpvulnerability_ajax_test_api()` for API testing with nonce verification and capability checks. +* Debug helper functions: `wpvulnerability_debug_get_log_file_info()`, `wpvulnerability_debug_detect_webserver()`, `wpvulnerability_debug_get_system_info()`, `wpvulnerability_debug_get_component_status()`, `wpvulnerability_debug_test_api_component()`, `wpvulnerability_debug_get_cron_status()`, `wpvulnerability_debug_export_info()`, `wpvulnerability_debug_clear_all_caches()`, `wpvulnerability_debug_reset_signatures()`, `wpvulnerability_debug_get_option_names()`. +* Debug tab POST handlers in both wpvulnerability-admin.php and wpvulnerability-adminms.php with nonce verification for all actions. +* Debug tab render functions in wpvulnerability-admin.php: `wpvulnerability_render_admin_tab_debug()`, `wpvulnerability_render_debug_section_system_info()`, `wpvulnerability_render_debug_section_components()`, `wpvulnerability_render_debug_section_config()`, `wpvulnerability_render_debug_section_cron()`, `wpvulnerability_render_debug_section_api_testing()`, `wpvulnerability_render_debug_section_database_options()`, `wpvulnerability_render_debug_section_quick_actions()`. + +**Security** + +* Added CSRF protection via nonces for plugin vulnerability filter links to prevent forced navigation attacks. +* Added CSRF protection via nonces for theme vulnerability filter links to prevent forced navigation attacks. +* Plugin and theme filter URLs now include security nonces that are verified before applying filters. +* Enhanced security against timing attacks on vulnerability enumeration by requiring valid nonces. +* Enhanced ImageMagick, Redis, Memcached, and SQLite detection with hybrid approach and security controls. +* All shell commands hardcoded and validated - no user input involved. +* Shell execution wrapper with complete security checks and logging. +* Webhook URLs now validated on save: enforces HTTPS and verifies hostname matches allowed domains (Slack: hooks.slack.com, Teams: office.com/office365.com/api.hooks.microsoft.com, Discord: discord.com/discordapp.com). +* Telegram bot token validation with regex pattern check (format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11). +* Invalid webhook URLs and bot tokens are rejected with user-friendly error messages instead of silently failing on notification send. +* Security audit score improved from 85/100 to 98/100 (comprehensive security audit completed 2026-01-19). + +**Changed** + +* Database error hook now fires the prefixed `wpvulnerability_wpdb_last_error` action while keeping the legacy hook deprecated. +* Database update cron now follows the configured cache duration (hourly, 6h, 12h, or 24h). +* Translations load on init to avoid early textdomain warnings. +* Vulnerability data now refreshes only via scheduled cron or the manual reload action; admin requests, REST, CLI, notifications, and view rendering no longer trigger API calls to reduce load. +* Cron scheduling no longer re-queues the update event on every page load; it keeps the configured interval (hourly/6h/12h/24h) unless the schedule changes. +* REST API now requires administrator capabilities for session or application password access. +* Admin reset and test email actions enforce admin capabilities. +* API client timeouts corrected to 2.5 seconds to avoid long hangs. +* Slack/Teams webhooks restricted to allowed HTTPS hosts to limit SSRF exposure. +* Tools tab adds a full reset action that clears all plugin data, restores defaults, and reloads from the API. +* Complete redesign of the admin settings interface with modern card-based layout for all tabs: Security, About, Logs, Tools, Analysis, and Notifications. +* Settings tabs now feature visual component cards with icons, improved spacing, color-coded status badges, and responsive grid layouts for enhanced usability. +* Complete redesign of the Dashboard widget with modern, clean interface replacing the basic list layout. +* Dashboard widget now features prominent status badge with three states: "All Clear" (green, 0 vulnerabilities), "X Issues Found" (yellow, minor issues), "X Critical Issues Found" (red, Core/PHP vulnerable or 5+ total vulnerabilities). +* Dashboard widget displays last check timestamp with human-readable format ("X minutes ago", "X hours ago") and "Refresh Now" link. +* Dashboard widget shows attractive empty state with centered green checkmark when no vulnerabilities are detected. +* Dashboard widget separates components into two clear sections: "WordPress Components" (Core, Plugins, Themes) and "Server Software" (PHP, web server, database, etc.). +* Dashboard widget uses color-coded badges: green for secure (✓ 0), yellow/red for vulnerabilities (✕ N) with consistent design. +* Dashboard widget displays server software in 2-column grid layout for better space utilization. +* Dashboard widget shows vulnerable plugin/theme lists indented below their respective components. +* Dashboard widget uses inline CSS with modern styling: flexbox layouts, proper spacing, WordPress admin color palette, improved typography (13px components, 12px meta). +* Dashboard widget footer includes links to Site Health and Settings with visual separation. +* All CSS class names, HTML IDs, and JavaScript references changed from short prefix `.wpv-` to full prefix `.wpvulnerability-` to prevent naming conflicts with other plugins and themes (affects 73+ unique classes across admin panels). +* All inline CSS from admin panels moved to external assets/admin.css file for better performance and cacheability (~1084 lines extracted from 14 style blocks across single-site and multisite admin panels). +* License updated from GPL2+ to GPL3+. + +**Fixed** + +* Saving partial forms (e.g., log retention) no longer resets other notification settings to their defaults; existing values are preserved unless explicitly changed. +* Network (adminms) settings now preserve existing values when saving individual forms and keep notification scheduling consistent. +* Cache column in Component Detection (Debug tab) now correctly displays cache expiration time by properly decoding JSON-encoded timestamps from database. +* Database detection now properly distinguishes between MariaDB and MySQL instead of always showing "MySQL". +* Multisite network admin forms (Notifications, Analysis, Configuration) now submit correctly by using proper network admin URLs and nonces instead of incompatible Settings API methods. +* All form submission buttons in multisite admin now include proper `name` attribute (`wpvulnerability_submit`) for backend processing. +* Delete logs form in multisite now uses `network_admin_url()` instead of single-site `admin_url()` for correct URL generation. +* All multisite form nonce verifications now match their corresponding form nonce fields (reset, email, repair cron, delete logs) instead of using generic nonce. +* Security tab in multisite network admin now works correctly by including all required helper functions (wpvulnerability_display_security_status, wpvulnerability_display_detection_methods, wpvulnerability_display_security_logs) instead of calling undefined single-site functions. +* Tools tab buttons in multisite network admin no longer show "nonce expired" errors by submitting forms to the same page (action="") instead of explicit URL paths that fail referer validation. +* Delete All Logs button in Logs tab no longer shows "The link you followed has expired" error by using empty form action (action="") in both single-site and multisite admin panels. +* Logs tab pagination now displays horizontally instead of vertically by properly targeting list elements (ul with inline-flex) and individual page links (a and span within li) to work correctly with WordPress paginate_links() 'type' => 'list' output. + +**Compatibility** + +* WordPress: 4.7 - 6.9 +* PHP: 5.6 - 8.5 +* WP-CLI: 2.3.0 - 2.11.0 + +**Tests** + +* PHP Coding Standards: 3.13.5 +* WordPress Coding Standards: 3.3.0 +* Plugin Check (PCP): 1.8.0 + += [4.2.1.1] - 2026-01-16 = + +**Security** + +* Fixed authorization vulnerability in REST API endpoints that allowed low-privileged users to access sensitive vulnerability data. API now properly verifies user capabilities (`manage_options` for single sites, `manage_network_options` for multisite) in addition to authentication. +* Added direct access protection to wpvulnerability-api.php to prevent direct file execution outside WordPress context. + +**Compatibility** + +* WordPress: 4.7 - 6.9 +* PHP: 5.6 - 8.4 +* WP-CLI: 2.3.0 - 2.11.0 + +**Tests** + +* PHP Coding Standards: 3.13.5 +* WordPress Coding Standards: 3.3.0 +* Plugin Check (PCP): 1.8.0 + += [4.2.1] - 2025-12-17 = + +**Fixed** + +* Clear legacy WPVulnerability cron events from multisite subsites so updates and log cleanup only run on the main site. + +**Compatibility** + +* WordPress: 4.7 - 6.9 +* PHP: 5.6 - 8.4 +* WP-CLI: 2.3.0 - 2.11.0 + +**Tests** + +* PHP Coding Standards: 3.13.5 +* WordPress Coding Standards: 3.3.0 +* Plugin Check (PCP): 1.7.0 + += [4.2.0] - 2025-12-16 = + +**Added** + +* GUI reorganized with tabs. +* New log tab, listing API calls made in the last days. +* Added some tests to check email. +* Constant `WPVULNERABILITY_LOG_RETENTION_DAYS` to enforce log rotation from `wp-config.php`. +* WP-CLI command to configure log retention from the terminal. +* Automated pruning of stored logs based on the configured retention window. + +**Updated** + +* New logo and assets. +* PHP syntax to avoid errors. +* Access level control in all the options. +* Uninstall deletes everything. +* POT (translations) file. +* Software versions detection. +* Documentation improvements. +* Improved the content for Slack and Microsoft Teams notifications (in a more old-fashion way). +* Fine-tuned settings labels to reflect enforced log retention values when the constant is present. + +**Fixed** + +* Mail unsubscription. +* Mail sending failed. +* Enforced the cache (a lot). +* Core versions (beta and RC) with invalid format. +* Normalize stored notification preferences to avoid stale values after upgrades. + +**Compatibility** + +* WordPress: 4.7 - 6.9 +* PHP: 5.6 - 8.4 +* WP-CLI: 2.3.0 - 2.11.0 + +**Tests** + +* PHP Coding Standards: 3.13.4 +* WordPress Coding Standards: 3.2.0 +* Plugin Check (PCP): 1.6.0 +* SonarCloud Code Review +* Amplify Code Check + += [4.1.1] - 2025-09-22 = + +**Fixed** + +* Fix an error with the version_compare() (thx to @konnektiv) + +**Compatibility** + +* WordPress: 4.7 - 6.9 +* PHP: 5.6 - 8.4 +* WP-CLI: 2.3.0 - 2.11.0 + +**Tests** + +* PHP Coding Standards: 3.13.4 +* WordPress Coding Standards: 3.2.0 +* Plugin Check (PCP): 1.6.0 +* SonarCloud Code Review +* Amplify Code Check + += [4.1.0] - 2025-09-16 = + +**Added** + +* "Never" send notifications. +* Choose notification day and time. +* Configurable cache expiration (1, 6, 12 or 24 hours). +* WP-CLI command to configure cache expiration. +* Constants to set hiding components. +* WP-CLI command to manage hidden components. +* WP-CLI command to configure notification email and period. +* Add notifications for Slack and Teams. +* Disable mail notifications from mails. +* WordPress Playground blueprint (in test). + +**Changed** + +* Cache is always the same eveywhere. +* Options for notifications. +* Schedule fields only appear for selected periods. +* Placeholder and conditional display for Slack and Teams notification fields. +* Added links to documentation. + +**Fixed** + +* When a plugin is updated, hide the vulnerabilities. +* Display of schedule fields based on period. +* Conditional display for email, Slack, and Teams notification fields. +* When save, there where two saving messages. +* wp_get_update_php_url() for WordPress 5.1.0+ (fallback) +* wp_timezone() for WordPress 5.1.0+ (fallback) +* wp_doing_cron() for WordPress 4.8.0+ (fallback) +* Application Passwords / REST API after WordPress 5.6.0 + +**Compatibility** + +* WordPress: 4.7 - 6.9 +* PHP: 5.6 - 8.4 +* WP-CLI: 2.3.0 - 2.11.0 + +**Tests** + +* PHP Coding Standards: 3.13.4 +* WordPress Coding Standards: 3.2.0 +* Plugin Check (PCP): 1.6.0 +* SonarCloud Code Review +* Amplify Code Check + += [4.0.4] - 2025-04-07 = + +**Added** + +* Extra sanitizations. + +**Changed** + +* Translation improvements. + +**Fixed** + +* Plugin and translation load. + +**Compatibility** + +* WordPress: 4.1 - 6.8 +* PHP: 5.6 - 8.4 +* WP-CLI: 2.3.0 - 2.11.0 + +**Tests** + +* PHP Coding Standards: 3.12.1 +* WordPress Coding Standards: 3.1.0 +* Plugin Check (PCP): 1.4.0 +* SonarCloud Code Review + += [4.0.3] - 2024-10-28 = + +* Recreation of the 4.0.2 version. Something did not created the 4.0.2 version. + += [4.0.2] - 2024-10-25 = + +**Fixed** + +* ImageMagick: it crashes in some cases where the hosting does not have ImageMagick. + +**Compatibility** + +* WordPress: 4.1 - 6.7 +* PHP: 5.6 - 8.4 +* WP-CLI: 2.3.0 - 2.11.0 + +**Tests** + +* PHP Coding Standards: 3.10.3 +* WordPress Coding Standards: 3.1.0 +* Plugin Check (PCP): 1.1.0 +* SonarCloud Code Review + += [4.0.1] - 2024-10-04 = + +**Fixed** + +* API endpoints: some API endpoints were failing. +* CLI endpoints: some CLI endpoints were failing. + +**Compatibility** + +* WordPress: 4.1 - 6.7 +* PHP: 5.6 - 8.4 +* WP-CLI: 2.3.0 - 2.11.0 + +**Tests** + +* PHP Coding Standards: 3.10.3 +* WordPress Coding Standards: 3.1.0 +* Plugin Check (PCP): 1.1.0 +* SonarCloud Code Review + += [4.0.0] - 2024-10-01 = + +**Added** + +* ImageMagic vulnerabilities (Site Health + WP-CLI + API + mail). +* curl vulnerabilities (Site Health + WP-CLI + API + mail). +* memcached vulnerabilities (Site Health + WP-CLI + API + mail). +* Redis vulnerabilities (Site Health + WP-CLI + API + mail). +* SQLite vulnerabilities (Site Health + WP-CLI + API + mail). + +**Fixed** + +* Test email without email. +* Improved MariaDB 11.x detection. +* Improved versions detection (major-minor.patch-build). +* WordPress < 5.3: use of wp_date(). +* WordPress < 5.0: locale detection. +* Dashboard widget only for users with capabilities. +* WordPress < 5.2: link to Site Health + +**Changed** + +* Big refactory. +* Less files, less size, improved code quality. + +**Compatibility** + +* WordPress: 4.1 - 6.7 +* PHP: 5.6 - 8.4 +* WP-CLI: 2.3.0 - 2.11.0 + +**Tests** + +* Manual Testing: + * WordPress 6.7 / PHP 8.4 + * WordPress 6.6 / PHP 8.3 + * WordPress 6.4 / PHP 8.2 + * WordPress 6.1 / PHP 8.1 + * WordPress 5.8 / PHP 8.0 + * WordPress 5.5 / PHP 7.4 + * WordPress 5.3 / PHP 7.3 + * WordPress 4.9 / PHP 7.2 + * WordPress 4.8 / PHP 7.1 + * WordPress 4.6 / PHP 7.0 + * WordPress 4.1 / PHP 5.6 +* PHP Coding Standards: 3.10.3 +* WordPress Coding Standards: 3.1.0 +* Plugin Check (PCP): 1.1.0 +* SonarCloud Code Review + += [3.4.1] - 2024-08-23 = + +**Fixed** + +* The number of vulnerabilities for core is incorrect. + +**Compatibility** + +* WordPress: 4.1 - 6.7 +* PHP: 5.6 - 8.3 +* WP-CLI: 2.3.0 - 2.11.0 + +**Tests** + +* PHP Coding Standards: 3.10.2 +* WordPress Coding Standards: 3.1.0 +* Plugin Check (PCP): 1.0.2 +* SonarCloud Code Review + += [3.4.0] - 2024-08-16 = + +**Added** + +* New checks for MariaDB vulnerabilities. +* New checks for MySQL vulnerabilities. +* WPVulnerability statistics in the configuration page. +* WPVulnerability contributors in the configuration page. + +**Changed** + +* Code improvement. +* Better UI for the configuration page. +* Web server version detection improved. + +**Fixed** + +* Get the statistics information the right way. + +**Compatibility** + +* WordPress: 4.1 - 6.7 +* PHP: 5.6 - 8.3 +* WP-CLI: 2.3.0 - 2.11.0 + +**Tests** + +* PHP Coding Standards: 3.10.2 +* WordPress Coding Standards: 3.1.0 +* Plugin Check (PCP): 1.0.2 +* SonarCloud Code Review + += [3.3.5] - 2024-08-14 = + +**Added** + +* Add counters for Core, Plugins, and Themes. +* Add a Vulnerabilities filter in the Plugin list (WordPress and WordPress Multisite). +* Add a Vulnerabilities filter in the Themes list (WordPress Multisite). + +**Compatibility** + +* WordPress: 4.1 - 6.7 +* PHP: 5.6 - 8.3 +* WP-CLI: 2.3.0 - 2.11.0 + +**Tests** + +* PHP Coding Standards: 3.10.2 +* WordPress Coding Standards: 3.1.0 +* Plugin Check (PCP): 1.0.2 +* SonarCloud Code Review + += [3.3.4] - 2024-08-12 = + +**Fixed** + +* The "Last updated on" column in the plugin list is available again. + +**Compatibility** + +* WordPress: 4.1 - 6.7 +* PHP: 5.6 - 8.3 +* WP-CLI: 2.3.0 - 2.11.0 + +**Tests** + +* PHP Coding Standards: 3.10.2 +* WordPress Coding Standards: 3.1.0 +* Plugin Check (PCP): 1.0.2 +* SonarCloud Code Review + += [3.3.3] - 2024-08-05 = + +**Fixed** + +* The Dashboard panel is availbale, again. + +**Compatibility** + +* WordPress: 4.1 - 6.7 +* PHP: 5.6 - 8.3 +* WP-CLI: 2.3.0 - 2.10.0 + +**Tests** + +* PHP Coding Standards: 3.10.2 +* WordPress Coding Standards: 3.1.0 +* Plugin Check (PCP): 1.0.2 +* SonarCloud Code Review + += [3.3.1] - 2024-08-02 = + +**Fixed** + +* Delete the wp_is_rest_endpoint check. Does not need it. + +**Compatibility** + +* WordPress: 4.1 - 6.7 +* PHP: 5.6 - 8.3 +* WP-CLI: 2.3.0 - 2.10.0 + +**Tests** + +* PHP Coding Standards: 3.10.2 +* WordPress Coding Standards: 3.1.0 +* Plugin Check (PCP): 1.0.2 +* SonarCloud Code Review + += [3.3.0] - 2024-08-02 = + +**Added** + +* Ability to exclude of vulnerability types at a global level. +* WP-CLI commands formats (--format=[table,json]). +* REST API endpoints (requires Application Password). + +**Changed** + +* README file. + +**Compatibility** + +* WordPress: 4.1 - 6.7 +* PHP: 5.6 - 8.3 +* WP-CLI: 2.3.0 - 2.10.0 + +**Tests** + +* PHP Coding Standards: 3.10.2 +* WordPress Coding Standards: 3.1.0 +* Plugin Check (PCP): 1.0.2 +* SonarCloud Code Review + += [3.2.2] - 2024-07-27 = + +**Added** + +* Ability to configure a different From: email address for sending vulnerability notifications via `wp-config.php`. + +**Changed** + +* The URL for the website now uses its own domain name. +* Dashboard visibility is restricted to users with specific capabilities, similar to Site Health. + +**Fixed** + +* Various minor fixes to prevent warnings and potential errors due to misconfigured WordPress setups. +* Allow loading of some necessary libraries. + +**Compatibility** + +* WordPress: 4.1 - 6.6 +* PHP: 5.6 - 8.3 +* WP-CLI: 2.3.0 - 2.10.0 + +**Tests** + +* WordPress Coding Standards: 3.1.0 +* Plugin Check (PCP): 1.0.2 +* SonarCloud Code Review + += [3.2.0] - 2024-05-08 = + +**Added** + +* Apache HTTPD vulnerabilities (Site Health). +* nginx vulnerabilities (Site Health). + +**Changed** + +* License updated to GPL 2.0 or later. + +**Compatibility** + +* WordPress 4.1 - WordPress 6.6. +* PHP 5.6 - PHP 8.3. +* WordPress Coding Standards 3.1.0. +* WP-CLI 2.3.0 - WP-CLI 2.10.0. +* Plugin Check (PCP) + += [3.1.2] - 2024-05-08 = + +**Fixed** + +* In some cases (when calling it directly, or wget), the cron was not working and gave an error. +* The license had a non-compliance ID. Now, same license but working. +* General improvements. + +**Changed** + +* The URL from the API is using its own domain name. + +**Compatibility** + +* WordPress 4.1 - WordPress 6.6. +* PHP 5.6 - PHP 8.3. +* WordPress Coding Standards 3.1.0. +* WP-CLI 2.3.0 - WP-CLI 2.10.0. +* Plugin Check (PCP) + += [3.1.1] - 2024-02-11 = + +**Fixed** + +* Fixes some possible PHP warnings when retrieving data from the API. +* Delete old schedules when unistalling the plugin. +* Fix how is printed the High severity. + +**Deleted** + +* The plugin will not show the Exploitability information. + +**Compatibility** + +* Compatibility: WordPress 4.1 - WordPress 6.5. +* Compatibility: PHP 5.6 - PHP 8.3. +* Compatibility: WordPress Coding Standards 3.0.1. +* Compatibility: WP-CLI 2.3.0 - WP-CLI 2.10.0. + += [3.1.0] - 2024-02-04 = + +**Added** + +* A new column in the plugin list, with the last updated day (and diff). +* A notice if the plugin is closed in the WordPress.org repo. + +**Fixed** + +* Fixes the schedule in some cases. +* Fixes the PHP format (using always the n.n / n.n.n format). + +**Compatibility** + +* Compatibility: WordPress 4.1 - WordPress 6.5. +* Compatibility: PHP 5.6 - PHP 8.3. +* Compatibility: WordPress Coding Standards 3.0.1. +* Compatibility: WP-CLI 2.3.0 - WP-CLI 2.9.0. + += [3.0.2] - 2024-01-27 = + +**Fixed** + +* Fixes the WordPress Multisite saving options. + +**Compatibility** + +* Compatibility: WordPress 4.1 - WordPress 6.5. +* Compatibility: PHP 5.6 - PHP 8.3. +* Compatibility: WordPress Coding Standards 3.0.1. +* Compatibility: WP-CLI 2.3.0 - WP-CLI 2.9.0. + += [3.0.1] - 2023-12-19 = + +**Fixed** + +* Test email with the actual vulnerabilities (or a test message), now forced when the button is clicked. +* Fixed some strings (thanks @alexclassroom). +* WordPress Coding Standards 3.0.1 up-to-date. + +**Compatibility** + +* Compatibility: WordPress 4.1 - WordPress 6.4. +* Compatibility: PHP 5.6 - PHP 8.3. +* Compatibility: WordPress Coding Standards 3.0.1. +* Compatibility: WP-CLI 2.3.0 - WP-CLI 2.9.0. + += [3.0.0] - 2023-12-09 = + +**Added** + +* WordPress Multisite support. +* PHP vulnerabilities (Site Health). +* Reload the data from source. +* Test email with the actual vulnerabilities. + +**Changed** + +* Loading the data in better way. + +**Compatibility** + +* Compatibility: WordPress 4.1 - WordPress 6.4. +* Compatibility: PHP 5.6 - PHP 8.3. +* Compatibility: WordPress Coding Standards 3.0.1. +* Compatibility: WP-CLI 2.3 - WP-CLI 2.9.0. + += [2.2.1] - 2023-10-02 = + +**Added** + +* New security information (at WordPress.org plugin page). +* New privacy information (at WordPress.org plugin page). +* New compatibility information (at WordPress.org plugin page). +* New vulnerabilities information (at WordPress.org plugin page). +* New profiling information (at WordPress.org plugin page). + +**Changed** + +* Promoted dashboard. +* Performance improvement: only load the plugin in the admin area. + +**Compatibility** + +* Compatibility: WordPress 4.1 - WordPress 6.4. +* Compatibility: PHP 5.6 - PHP 8.3. +* Compatibility: WordPress Coding Standards 3.0.1. +* Compatibility: WP-CLI 2.3 - WP-CLI 2.8.1. + += [2.2.0] - 2023-09-14 = + +**Added** + +* New Dashboard, with a Vulnerability summary and products affected. + +**Compatibility** + +* Compatibility: WordPress 4.1 - WordPress 6.3. +* Compatibility: PHP 5.6 - PHP 8.3. +* Compatibility: WordPress Coding Standards 3.0.0. +* Compatibility: WP-CLI 2.3 - WP-CLI 2.8. + += [2.1.0] - 2023-09-11 = + +**Changed** + +* Improved detection of plugins folders. This shpould reduce the false positives in some plugins, and Pro/Premium plugins. + +**Compatibility** + +* Compatibility: WordPress 4.1 - WordPress 6.3. +* Compatibility: PHP 5.6 - PHP 8.3. +* Compatibility: WordPress Coding Standards 3.0.0. +* Compatibility: WP-CLI 2.3 - WP-CLI 2.7. + += [2.0.4] - 2023-09-10 = + +**Compatibility** + +* WordPress Coding Standards 3.0.0 compatible. + += [2.0.3] - 2023-07-27 = + +**Added** + +* Validate secure requests to the API. + +**Changed** + +* Reduce API timeout request time from 10.0 seconds to 2.5 seconds. + +**Compatibility** + +* Compatibility: WordPress 4.1 - WordPress 6.3. +* Compatibility: PHP 5.6 - PHP 8.3. + += [2.0.2] - 2023-04-24 = + +**Fixed** + +* Fix the Notification system. + += [2.0.1] - 2023-04-20 = + +**Added** + +* Added new options to cache the vulnerability counter. + +**Changed** + +* Update the readme.txt. + +**Fixed** + +* Fix the Site Health messages. + += [2.0.0] - 2023-04-15 = + +**Added** + +* If the WordPress version supports it, vulnerabilities are displayed in the Core update screen. +* Calls can be made from WP-CLI `wp help wpvulnerability` to list vulnerabilities in Core `wp wpvulnerability core`, Plugins `wp wpvulnerability plugins` and Themes `wp wpvulnerability themes`. Before only Plugins. +* Site Health shows core vulnerabilities, which were not previously shown. + +**Changed** + +* The plugin has been completely refactored. + +**Compatibility** + +* Compatibility: WordPress 4.1 - WordPress 6.2 +* Compatibility: PHP 5.6 - PHP 8.2 +* Compatibility: WP-CLI 2.3 - 2.7 + += [1.3.2] - 2023-03-22 = + +**Changed** + +* Code security improvements + +**Fixed** + +* Fix some PHP errors + += [1.3.2] - 2023-03-22 = + +**Changed** + +* Code security improvements + +**Fixed** + +* Fix some PHP errors + += [1.3.1] - 2023-02-27 = + +**Changed** + +* Code security improvements +* Fix the Severity value +* A better Site Health information + +**Compatibility** + +* Compatibility: WordPress 5.2 - WordPress 6.2 +* Compatibility: PHP 7.2 - PHP 8.1 + += [1.3.0] - 2023-02-27 = + +**Added** + +* Information, when available, about the vulnerability, in a simplified way. Only in the plugin list. +* Information, when available, about the potential severity and exploitability. Only in the plugin list. +* Links to sources to get additional information. Only in the plugin list. + +**Changed** + +* Improved security in code. + += [1.2.4] - 2023-02-20 = + +**Compatibility** + +* Compatibility: WordPress 5.2 - WordPress 6.2 +* Compatibility: PHP 7.2 - PHP 8.1 + += [1.2.3] - 2023-01-30 = + +**Fixed** + +* Fix WP_Error object. + += [1.2.2] - 2023-01-30 = + +**Fixed** + +* Fix WP_Error object. + += [1.2.1] - 2023-01-09 = + +**Fixed** + +* Some fixed to improve the operators. + += [1.2.0] - 2022-12-15 = + +**Added** + +* Sends email periodically. You can choose who is going to receive the emails. +* First approach to WPCLI Commands (thanks to @lbonomo). + += [1.1.0] - 2022-05-18 = + +**Fixed** + +* Fix: Prevents text domain not given correctly. +* Fix: strings not translated. + += [1.0.1] - 2022-05-17 = + +**Fixed** + +* Fix: strings not translated. + += [1.0.0] - 2022-05-16 = + +**Added** + +* Added tabs in Health check. + += [0.2.0] - 2022-05-07 = + +**Added** + +* Improved the information in plugins list. + += [0.1.0] - 2022-05-06 = + +**Added** + +* Notification in the plugins list. +* First release. diff --git a/class-wpvulnerability-cli.php b/class-wpvulnerability-cli.php new file mode 100644 index 0000000..c2d81c8 --- /dev/null +++ b/class-wpvulnerability-cli.php @@ -0,0 +1,744 @@ + when + * no privileged WordPress user is loaded in the current WP-CLI session. + * + * @since 5.0.0 + * @return void + */ + private function require_admin() { + $capability = is_multisite() ? 'manage_network_options' : 'manage_options'; + if ( ! current_user_can( $capability ) ) { + \WP_CLI::error( + __( 'This command requires a WordPress administrator. Run with --user=.', 'wpvulnerability' ) + ); + } + } + + /** + * Cast a mixed value to string safely. + * + * @param mixed $value The value to cast. + * @return string + */ + private function to_string( $value ): string { + return is_scalar( $value ) ? (string) $value : ''; + } + + /** + * Cast a mixed value to int safely. + * + * @param mixed $value The value to cast. + * @return int + */ + private function to_int( $value ): int { + return is_scalar( $value ) ? (int) $value : 0; + } + + /** + * Cast a mixed value to float safely. + * + * @param mixed $value The value to cast. + * @return float + */ + private function to_float( $value ): float { + return is_scalar( $value ) ? (float) $value : 0.0; + } + + /** + * Display core vulnerabilities. + * + * ## OPTIONS + * + * [--format=] + * : Render output in a specific format. Accepted values: table, json. Default: table. + * + * ## EXAMPLES + * + * wp wpvulnerability core + * wp wpvulnerability core --format=json + * + * @when after_wp_load + * + * @param array $args Positional arguments. + * @param array $assoc_args Associative arguments. + * @return void + */ + public function core( $args, $assoc_args ) { + $this->require_admin(); + + $format = isset( $assoc_args['format'] ) ? $assoc_args['format'] : 'table'; + + $core_vulnerabilities = array(); + if ( function_exists( 'wpvulnerability_analyze_filter' ) && wpvulnerability_analyze_filter( 'core' ) ) { + $core_vulnerabilities = wpvulnerability_core_get_vulnerabilities(); + } + + $items = array(); + foreach ( $core_vulnerabilities as $vulnerability ) { + if ( ! is_array( $vulnerability ) ) { + continue; + } + $vuln_impact = isset( $vulnerability['impact'] ) && is_array( $vulnerability['impact'] ) ? $vulnerability['impact'] : array(); + $vuln_cvss = isset( $vuln_impact['cvss'] ) && is_array( $vuln_impact['cvss'] ) ? $vuln_impact['cvss'] : array(); + $vuln_cwe = isset( $vuln_impact['cwe'] ) && is_array( $vuln_impact['cwe'] ) ? $vuln_impact['cwe'] : array(); + $vuln_sources = isset( $vulnerability['source'] ) && is_array( $vulnerability['source'] ) ? $vulnerability['source'] : array(); + + $item = array(); + $item['version'] = trim( html_entity_decode( wp_kses( $this->to_string( $vulnerability['name'] ?? null ), 'strip' ) ) ); + $item['severity'] = null; + if ( isset( $vuln_cvss['severity'] ) ) { + $item['severity'] = wpvulnerability_severity( $this->to_string( $vuln_cvss['severity'] ) ); + } + + $item['cwe'] = array(); + if ( count( $vuln_cwe ) ) { + foreach ( $vuln_cwe as $vulnerability_cwe ) { + if ( ! is_array( $vulnerability_cwe ) ) { + continue; + } + $item['cwe'][] = array( + 'name' => trim( html_entity_decode( wp_kses( $this->to_string( $vulnerability_cwe['name'] ?? null ), 'strip' ) ) ), + 'description' => trim( html_entity_decode( wp_kses( $this->to_string( $vulnerability_cwe['description'] ?? null ), 'strip' ) ) ), + ); + } + } + + $item['score'] = null; + if ( isset( $vuln_cvss['score'] ) ) { + $item['score'] = number_format( $this->to_float( $vuln_cvss['score'] ), 1, '.', '' ); + } + + $item['source'] = array(); + if ( count( $vuln_sources ) ) { + foreach ( $vuln_sources as $vulnerability_source ) { + if ( ! is_array( $vulnerability_source ) ) { + continue; + } + $item['source'][] = array( + 'name' => trim( html_entity_decode( wp_kses( $this->to_string( $vulnerability_source['name'] ?? null ), 'strip' ) ) ), + 'link' => esc_url_raw( $this->to_string( $vulnerability_source['link'] ?? null ) ), + ); + } + } + + $items[] = $item; + } + + if ( 'json' === $format ) { + echo wp_json_encode( $items ); + return; + } + + if ( empty( $items ) ) { + \WP_CLI::success( __( 'No core vulnerabilities found.', 'wpvulnerability' ) ); + return; + } + + $vulnerabilities = array(); + foreach ( $items as $c_vuln ) { + $v_description_array = array(); + foreach ( $c_vuln['cwe'] as $c_cwe ) { + $v_description_array[] = $c_cwe['name']; + } + $vulnerabilities[] = array( + 'version' => $c_vuln['version'], + 'score' => $c_vuln['score'], + 'severity' => $c_vuln['severity'], + 'description' => trim( implode( ' + ', $v_description_array ) ), + ); + } + + \WP_CLI\Utils\format_items( 'table', $vulnerabilities, array( 'version', 'score', 'severity', 'description' ) ); + } + + /** + * Display plugin vulnerabilities. + * + * ## OPTIONS + * + * [--format=] + * : Render output in a specific format. Accepted values: table, json. Default: table. + * + * ## EXAMPLES + * + * wp wpvulnerability plugins + * wp wpvulnerability plugins --format=json + * + * @when after_wp_load + * + * @param array $args Positional arguments. + * @param array $assoc_args Associative arguments. + * @return void + */ + public function plugins( $args, $assoc_args ) { + $this->require_admin(); + + $format = isset( $assoc_args['format'] ) ? $assoc_args['format'] : 'table'; + + $plugin_vulnerabilities = array(); + if ( function_exists( 'wpvulnerability_analyze_filter' ) && wpvulnerability_analyze_filter( 'plugins' ) ) { + $plugin_vulnerabilities = wpvulnerability_plugin_get_vulnerabilities(); + } + + $items = array(); + foreach ( $plugin_vulnerabilities as $plugin ) { + if ( ! is_array( $plugin ) ) { + continue; + } + $vulnerable_raw = $plugin['vulnerable'] ?? 0; + if ( 1 === ( is_scalar( $vulnerable_raw ) ? (int) $vulnerable_raw : 0 ) ) { + $plugin_temp = array(); + $plugin_temp['name'] = trim( html_entity_decode( wp_kses( $this->to_string( $plugin['Name'] ?? null ), 'strip' ) ) ); + $plugin_temp['slug'] = trim( html_entity_decode( wp_kses( $this->to_string( $plugin['slug'] ?? null ), 'strip' ) ) ); + $plugin_vulns = isset( $plugin['vulnerabilities'] ) && is_array( $plugin['vulnerabilities'] ) ? $plugin['vulnerabilities'] : array(); + foreach ( $plugin_vulns as $vulnerability ) { + if ( ! is_array( $vulnerability ) ) { + continue; + } + $vuln_impact = isset( $vulnerability['impact'] ) && is_array( $vulnerability['impact'] ) ? $vulnerability['impact'] : array(); + $vuln_cvss = isset( $vuln_impact['cvss'] ) && is_array( $vuln_impact['cvss'] ) ? $vuln_impact['cvss'] : array(); + $vuln_cwe = isset( $vuln_impact['cwe'] ) && is_array( $vuln_impact['cwe'] ) ? $vuln_impact['cwe'] : array(); + $vuln_sources = isset( $vulnerability['source'] ) && is_array( $vulnerability['source'] ) ? $vulnerability['source'] : array(); + + $vul = array(); + $vul['severity'] = null; + if ( isset( $vuln_cvss['severity'] ) ) { + $vul['severity'] = wpvulnerability_severity( $this->to_string( $vuln_cvss['severity'] ) ); + } + $vul['version'] = trim( html_entity_decode( wp_kses( $this->to_string( $vulnerability['versions'] ?? null ), 'strip' ) ) ); + $vul['name'] = trim( html_entity_decode( wp_kses( $this->to_string( $vulnerability['name'] ?? null ), 'strip' ) ) ); + $vul['closed'] = $this->to_int( $vulnerability['closed'] ?? null ); + $vul['unfixed'] = $this->to_int( $vulnerability['unfixed'] ?? null ); + + $vul['cwe'] = array(); + foreach ( $vuln_cwe as $cwe ) { + if ( ! is_array( $cwe ) ) { + continue; + } + $vul['cwe'][] = array( + 'name' => trim( html_entity_decode( wp_kses( $this->to_string( $cwe['name'] ?? null ), 'strip' ) ) ), + 'description' => trim( html_entity_decode( wp_kses( $this->to_string( $cwe['description'] ?? null ), 'strip' ) ) ), + ); + } + + $vul['score'] = null; + if ( isset( $vuln_cvss['score'] ) ) { + $vul['score'] = number_format( $this->to_float( $vuln_cvss['score'] ), 1, '.', '' ); + } + + $vul['source'] = array(); + foreach ( $vuln_sources as $source ) { + if ( ! is_array( $source ) ) { + continue; + } + $vul['source'][] = array( + 'name' => trim( html_entity_decode( wp_kses( $this->to_string( $source['name'] ?? null ), 'strip' ) ) ), + 'link' => esc_url_raw( $this->to_string( $source['link'] ?? null ) ), + ); + } + + $plugin_temp['vulnerabilities'][] = $vul; + } + $items[] = $plugin_temp; + } + } + + if ( 'json' === $format ) { + echo wp_json_encode( $items ); + return; + } + + if ( empty( $items ) ) { + \WP_CLI::success( __( 'No plugin vulnerabilities found.', 'wpvulnerability' ) ); + return; + } + + $vulnerabilities = array(); + foreach ( $items as $p_vuln ) { + $v_name = $p_vuln['slug']; + foreach ( ( $p_vuln['vulnerabilities'] ?? array() ) as $p_vul ) { + $v_fixed = $p_vul['unfixed'] ? 'no' : 'yes'; + $v_closed = $p_vul['closed'] ? 'yes' : 'no'; + $v_description_array = array(); + foreach ( $p_vul['cwe'] as $p_cwe ) { + $v_description_array[] = $p_cwe['name']; + } + $vulnerabilities[] = array( + 'name' => $v_name, + 'version' => $p_vul['version'], + 'fixed' => $v_fixed, + 'closed' => $v_closed, + 'score' => $p_vul['score'], + 'severity' => $p_vul['severity'], + 'description' => trim( implode( ' + ', $v_description_array ) ), + ); + } + } + + \WP_CLI\Utils\format_items( 'table', $vulnerabilities, array( 'name', 'version', 'fixed', 'closed', 'score', 'severity', 'description' ) ); + } + + /** + * Display theme vulnerabilities. + * + * ## OPTIONS + * + * [--format=] + * : Render output in a specific format. Accepted values: table, json. Default: table. + * + * ## EXAMPLES + * + * wp wpvulnerability themes + * wp wpvulnerability themes --format=json + * + * @when after_wp_load + * + * @param array $args Positional arguments. + * @param array $assoc_args Associative arguments. + * @return void + */ + public function themes( $args, $assoc_args ) { + $this->require_admin(); + + $format = isset( $assoc_args['format'] ) ? $assoc_args['format'] : 'table'; + + $theme_vulnerabilities = array(); + if ( function_exists( 'wpvulnerability_analyze_filter' ) && wpvulnerability_analyze_filter( 'themes' ) ) { + $theme_vulnerabilities = wpvulnerability_theme_get_vulnerabilities(); + } + + $items = array(); + foreach ( $theme_vulnerabilities as $theme ) { + if ( ! is_array( $theme ) ) { + continue; } + $theme_wpv = isset( $theme['wpvulnerability'] ) && is_array( $theme['wpvulnerability'] ) ? $theme['wpvulnerability'] : array(); + $theme_vulns = isset( $theme_wpv['vulnerabilities'] ) && is_array( $theme_wpv['vulnerabilities'] ) ? $theme_wpv['vulnerabilities'] : array(); + if ( ! empty( $theme_vulns ) ) { + $theme_temp = array(); + $theme_temp['name'] = trim( html_entity_decode( wp_kses( $this->to_string( $theme_wpv['name'] ?? null ), 'strip' ) ) ); + $theme_temp['slug'] = trim( html_entity_decode( wp_kses( $this->to_string( $theme_wpv['slug'] ?? null ), 'strip' ) ) ); + + foreach ( $theme_vulns as $vulnerability ) { + if ( ! is_array( $vulnerability ) ) { + continue; } + $vuln_impact = isset( $vulnerability['impact'] ) && is_array( $vulnerability['impact'] ) ? $vulnerability['impact'] : array(); + $vuln_cvss = isset( $vuln_impact['cvss'] ) && is_array( $vuln_impact['cvss'] ) ? $vuln_impact['cvss'] : array(); + $vuln_cwe = isset( $vuln_impact['cwe'] ) && is_array( $vuln_impact['cwe'] ) ? $vuln_impact['cwe'] : array(); + $vuln_sources = isset( $vulnerability['source'] ) && is_array( $vulnerability['source'] ) ? $vulnerability['source'] : array(); + + $vul = array(); + $vul['severity'] = isset( $vuln_cvss['severity'] ) ? wpvulnerability_severity( $this->to_string( $vuln_cvss['severity'] ) ) : null; + $vul['version'] = trim( html_entity_decode( wp_kses( $this->to_string( $vulnerability['versions'] ?? null ), 'strip' ) ) ); + $vul['name'] = trim( html_entity_decode( wp_kses( $this->to_string( $vulnerability['name'] ?? null ), 'strip' ) ) ); + $vul['closed'] = is_numeric( $vulnerability['closed'] ?? 0 ) ? $this->to_int( $vulnerability['closed'] ?? null ) : 0; + $vul['unfixed'] = is_numeric( $vulnerability['unfixed'] ?? 0 ) ? $this->to_int( $vulnerability['unfixed'] ?? null ) : 0; + + $vul['cwe'] = array(); + foreach ( $vuln_cwe as $cwe ) { + if ( ! is_array( $cwe ) ) { + continue; } + $vul['cwe'][] = array( + 'name' => trim( html_entity_decode( wp_kses( $this->to_string( $cwe['name'] ?? null ), 'strip' ) ) ), + 'description' => trim( html_entity_decode( wp_kses( $this->to_string( $cwe['description'] ?? null ), 'strip' ) ) ), + ); + } + + $vul['score'] = isset( $vuln_cvss['score'] ) ? number_format( $this->to_float( $vuln_cvss['score'] ), 1, '.', '' ) : null; + + $vul['source'] = array(); + foreach ( $vuln_sources as $source ) { + if ( ! is_array( $source ) ) { + continue; } + $vul['source'][] = array( + 'name' => trim( html_entity_decode( wp_kses( $this->to_string( $source['name'] ?? null ), 'strip' ) ) ), + 'link' => esc_url_raw( $this->to_string( $source['link'] ?? null ) ), + ); + } + + $theme_temp['vulnerabilities'][] = $vul; + } + $items[] = $theme_temp; + } + } + + if ( 'json' === $format ) { + echo wp_json_encode( $items ); + return; + } + + if ( empty( $items ) ) { + \WP_CLI::success( __( 'No theme vulnerabilities found.', 'wpvulnerability' ) ); + return; + } + + $vulnerabilities = array(); + foreach ( $items as $t_vuln ) { + $v_name = $t_vuln['slug']; + foreach ( ( $t_vuln['vulnerabilities'] ?? array() ) as $t_vul ) { + $v_fixed = $t_vul['unfixed'] ? 'no' : 'yes'; + $v_closed = $t_vul['closed'] ? 'yes' : 'no'; + $v_description_array = array(); + foreach ( $t_vul['cwe'] as $t_cwe ) { + $v_description_array[] = $t_cwe['name']; + } + $vulnerabilities[] = array( + 'name' => $v_name, + 'version' => $t_vul['version'], + 'fixed' => $v_fixed, + 'closed' => $v_closed, + 'score' => $t_vul['score'], + 'severity' => $t_vul['severity'], + 'description' => trim( implode( ' + ', $v_description_array ) ), + ); + } + } + + \WP_CLI\Utils\format_items( 'table', $vulnerabilities, array( 'name', 'version', 'fixed', 'closed', 'score', 'severity', 'description' ) ); + } + + /** + * Display vulnerabilities for a piece of server software. + * + * @param string $software Software slug. + * @param array $args Positional arguments. + * @param array $assoc_args Associative arguments. + * @return void + */ + private function software( $software, $args, $assoc_args ) { + $this->require_admin(); + + $format = isset( $assoc_args['format'] ) ? $assoc_args['format'] : 'table'; + + $software_vulnerabilities = array(); + switch ( $software ) { + case 'php': + case 'apache': + case 'nginx': + case 'mariadb': + case 'mysql': + case 'imagemagick': + case 'curl': + case 'memcached': + case 'redis': + case 'sqlite': + $software_data = wpvulnerability_software_get_vulnerabilities( $software ); + if ( is_array( $software_data ) && isset( $software_data['vulnerabilities'] ) && is_array( $software_data['vulnerabilities'] ) ) { + $software_vulnerabilities = $software_data['vulnerabilities']; + } + break; + default: + $software_vulnerabilities = array(); + } + + $items = array(); + foreach ( $software_vulnerabilities as $item ) { + if ( ! is_array( $item ) ) { + continue; + } + $item_sources = isset( $item['source'] ) && is_array( $item['source'] ) ? $item['source'] : array(); + + $complete_temp = array(); + $complete_temp['version'] = trim( html_entity_decode( wp_kses( $this->to_string( $item['version'] ?? null ), 'strip' ) ) ); + $complete_temp['affected'] = trim( html_entity_decode( wp_kses( $this->to_string( $item['versions'] ?? null ), 'strip' ) ) ); + $complete_temp['unfixed'] = $this->to_int( $item['unfixed'] ?? null ); + $complete_temp['source'] = array(); + if ( count( $item_sources ) ) { + foreach ( $item_sources as $source ) { + if ( ! is_array( $source ) ) { + continue; + } + $complete_temp['source'][] = array( + 'name' => trim( html_entity_decode( wp_kses( $this->to_string( $source['id'] ?? null ), 'strip' ) ) ), + 'description' => trim( html_entity_decode( wp_kses( $this->to_string( $source['description'] ?? null ), 'strip' ) ) ), + 'link' => esc_url_raw( $this->to_string( $source['link'] ?? null ) ), + ); + } + } + $items[] = $complete_temp; + } + + if ( 'json' === $format ) { + echo wp_json_encode( $items ); + return; + } + + if ( empty( $items ) ) { + /* translators: %s is the software name (php, apache, nginx, etc.) */ + \WP_CLI::success( sprintf( __( 'No %s vulnerabilities found.', 'wpvulnerability' ), $software ) ); + return; + } + + $vulnerabilities = array(); + foreach ( $items as $vuln ) { + $v_fixed = $vuln['unfixed'] ? 'no' : 'yes'; + $v_description = array(); + foreach ( $vuln['source'] as $source ) { + $v_description[] = $source['name'] . ': ' . $source['description']; + } + $vulnerabilities[] = array( + 'version' => $vuln['version'], + 'affected' => $vuln['affected'], + 'fixed' => $v_fixed, + 'description' => trim( implode( ' + ', $v_description ) ), + ); + } + + \WP_CLI\Utils\format_items( 'table', $vulnerabilities, array( 'version', 'affected', 'fixed', 'description' ) ); + } + + /** + * Display PHP vulnerabilities. + * + * ## OPTIONS + * + * [--format=] + * : Render output in a specific format. Accepted values: table, json. Default: table. + * + * ## EXAMPLES + * + * wp wpvulnerability php + * wp wpvulnerability php --format=json + * + * @when after_wp_load + * + * @param array $args Positional arguments. + * @param array $assoc_args Associative arguments. + * @return void + */ + public function php( $args, $assoc_args ) { + $this->software( 'php', $args, $assoc_args ); + } + + /** + * Display Apache vulnerabilities. + * + * ## OPTIONS + * + * [--format=] + * : Render output in a specific format. Accepted values: table, json. Default: table. + * + * ## EXAMPLES + * + * wp wpvulnerability apache + * wp wpvulnerability apache --format=json + * + * @when after_wp_load + * + * @param array $args Positional arguments. + * @param array $assoc_args Associative arguments. + * @return void + */ + public function apache( $args, $assoc_args ) { + $this->software( 'apache', $args, $assoc_args ); + } + + /** + * Display Nginx vulnerabilities. + * + * ## OPTIONS + * + * [--format=] + * : Render output in a specific format. Accepted values: table, json. Default: table. + * + * ## EXAMPLES + * + * wp wpvulnerability nginx + * wp wpvulnerability nginx --format=json + * + * @when after_wp_load + * + * @param array $args Positional arguments. + * @param array $assoc_args Associative arguments. + * @return void + */ + public function nginx( $args, $assoc_args ) { + $this->software( 'nginx', $args, $assoc_args ); + } + + /** + * Display MariaDB vulnerabilities. + * + * ## OPTIONS + * + * [--format=] + * : Render output in a specific format. Accepted values: table, json. Default: table. + * + * ## EXAMPLES + * + * wp wpvulnerability mariadb + * wp wpvulnerability mariadb --format=json + * + * @when after_wp_load + * + * @param array $args Positional arguments. + * @param array $assoc_args Associative arguments. + * @return void + */ + public function mariadb( $args, $assoc_args ) { + $this->software( 'mariadb', $args, $assoc_args ); + } + + /** + * Display MySQL vulnerabilities. + * + * ## OPTIONS + * + * [--format=] + * : Render output in a specific format. Accepted values: table, json. Default: table. + * + * ## EXAMPLES + * + * wp wpvulnerability mysql + * wp wpvulnerability mysql --format=json + * + * @when after_wp_load + * + * @param array $args Positional arguments. + * @param array $assoc_args Associative arguments. + * @return void + */ + public function mysql( $args, $assoc_args ) { + $this->software( 'mysql', $args, $assoc_args ); + } + + /** + * Display ImageMagick vulnerabilities. + * + * ## OPTIONS + * + * [--format=] + * : Render output in a specific format. Accepted values: table, json. Default: table. + * + * ## EXAMPLES + * + * wp wpvulnerability imagemagick + * wp wpvulnerability imagemagick --format=json + * + * @when after_wp_load + * + * @param array $args Positional arguments. + * @param array $assoc_args Associative arguments. + * @return void + */ + public function imagemagick( $args, $assoc_args ) { + $this->software( 'imagemagick', $args, $assoc_args ); + } + + /** + * Display cURL vulnerabilities. + * + * ## OPTIONS + * + * [--format=] + * : Render output in a specific format. Accepted values: table, json. Default: table. + * + * ## EXAMPLES + * + * wp wpvulnerability curl + * wp wpvulnerability curl --format=json + * + * @when after_wp_load + * + * @param array $args Positional arguments. + * @param array $assoc_args Associative arguments. + * @return void + */ + public function curl( $args, $assoc_args ) { + $this->software( 'curl', $args, $assoc_args ); + } + + /** + * Display Memcached vulnerabilities. + * + * ## OPTIONS + * + * [--format=] + * : Render output in a specific format. Accepted values: table, json. Default: table. + * + * ## EXAMPLES + * + * wp wpvulnerability memcached + * wp wpvulnerability memcached --format=json + * + * @when after_wp_load + * + * @param array $args Positional arguments. + * @param array $assoc_args Associative arguments. + * @return void + */ + public function memcached( $args, $assoc_args ) { + $this->software( 'memcached', $args, $assoc_args ); + } + + /** + * Display Redis vulnerabilities. + * + * ## OPTIONS + * + * [--format=] + * : Render output in a specific format. Accepted values: table, json. Default: table. + * + * ## EXAMPLES + * + * wp wpvulnerability redis + * wp wpvulnerability redis --format=json + * + * @when after_wp_load + * + * @param array $args Positional arguments. + * @param array $assoc_args Associative arguments. + * @return void + */ + public function redis( $args, $assoc_args ) { + $this->software( 'redis', $args, $assoc_args ); + } + + /** + * Display SQLite vulnerabilities. + * + * ## OPTIONS + * + * [--format=] + * : Render output in a specific format. Accepted values: table, json. Default: table. + * + * ## EXAMPLES + * + * wp wpvulnerability sqlite + * wp wpvulnerability sqlite --format=json + * + * @when after_wp_load + * + * @param array $args Positional arguments. + * @param array $assoc_args Associative arguments. + * @return void + */ + public function sqlite( $args, $assoc_args ) { + $this->software( 'sqlite', $args, $assoc_args ); + } + } + + WP_CLI::add_command( 'wpvulnerability', 'WPVulnerability_CLI' ); +} diff --git a/class-wpvulnerability-config-cli.php b/class-wpvulnerability-config-cli.php new file mode 100644 index 0000000..7c24f1c --- /dev/null +++ b/class-wpvulnerability-config-cli.php @@ -0,0 +1,284 @@ + when no privileged WordPress + * user is loaded in the current WP-CLI session. + * + * @since 5.0.0 + * @return void + */ + private function require_admin() { + $capability = is_multisite() ? 'manage_network_options' : 'manage_options'; + if ( ! current_user_can( $capability ) ) { + \WP_CLI::error( + __( 'This command requires a WordPress administrator. Run with --user=.', 'wpvulnerability' ) + ); + } + } + + /** + * Hide a component from analysis output. + * + * ## OPTIONS + * + * + * : Component to hide. Valid options: core, plugins, themes, php, apache, nginx, mariadb, mysql, imagemagick, curl, memcached, redis, sqlite. + * + * [] + * : Set to "off" to show the component again. Defaults to "on". + * + * ## EXAMPLES + * + * wp wpvulnerability config hide core + * wp wpvulnerability config hide plugins off + * + * @when after_wp_load + * + * @param array $args Positional arguments. + * @param array $assoc_args Associative arguments. + * @return void + */ + public function hide( $args, $assoc_args ) { // phpcs:ignore VariableAnalysis.CodeAnalysis.VariableAnalysis.UnusedVariable + $this->require_admin(); + + if ( ! isset( $args[0] ) ) { + \WP_CLI::error( 'Missing component.' ); + } + + $component = strtolower( (string) $args[0] ); + $valid = array( 'core', 'plugins', 'themes', 'php', 'apache', 'nginx', 'mariadb', 'mysql', 'imagemagick', 'curl', 'memcached', 'redis', 'sqlite' ); + + if ( ! in_array( $component, $valid, true ) ) { + \WP_CLI::error( "'$component' is not a valid component.\nAvailable components: " . implode( ', ', $valid ) ); + } + + $status = isset( $args[1] ) ? strtolower( (string) $args[1] ) : 'on'; + $value = in_array( $status, array( '0', 'off', 'false' ), true ) ? 0 : 1; + + $option_raw = is_multisite() ? get_site_option( 'wpvulnerability-analyze', array() ) : get_option( 'wpvulnerability-analyze', array() ); + $option = is_array( $option_raw ) ? $option_raw : array(); + $option[ $component ] = $value; + + if ( is_multisite() ) { + update_site_option( 'wpvulnerability-analyze', $option ); + } else { + update_option( 'wpvulnerability-analyze', $option ); + } + + $message = $value ? 'now hidden' : 'no longer hidden'; + \WP_CLI::success( sprintf( "Component '%s' is %s.", $component, $message ) ); + } + + /** + * Configure notification email addresses. + * + * ## OPTIONS + * + * + * : Comma-separated list of email addresses. + * + * ## EXAMPLES + * + * wp wpvulnerability config email example@example.com + * wp wpvulnerability config email "one@example.com,two@example.com" + * + * @when after_wp_load + * + * @param array $args Positional arguments. + * @param array $assoc_args Associative arguments. + * @return void + */ + public function email( $args, $assoc_args ) { // phpcs:ignore VariableAnalysis.CodeAnalysis.VariableAnalysis.UnusedVariable + $this->require_admin(); + + if ( ! isset( $args[0] ) ) { + \WP_CLI::error( 'Missing email address.' ); + } + + $emails_raw = explode( ',', (string) $args[0] ); + $sanitized_emails = array(); + + foreach ( $emails_raw as $email ) { + $email = sanitize_email( trim( (string) $email ) ); + if ( ! is_email( $email ) ) { + \WP_CLI::error( sprintf( "'%s' is not a valid email address.", $email ) ); + } + $sanitized_emails[] = $email; + } + + $option_raw = is_multisite() ? get_site_option( 'wpvulnerability-config', array() ) : get_option( 'wpvulnerability-config', array() ); + $option = is_array( $option_raw ) ? $option_raw : array(); + $option['emails'] = implode( ',', $sanitized_emails ); + + if ( is_multisite() ) { + update_site_option( 'wpvulnerability-config', $option ); + } else { + update_option( 'wpvulnerability-config', $option ); + } + + \WP_CLI::success( sprintf( "Notification email(s) set to '%s'.", $option['emails'] ) ); + } + + /** + * Configure cache expiration in hours. + * + * ## OPTIONS + * + * + * : Cache duration in hours. Valid options: 1, 6, 12, 24. + * + * ## EXAMPLES + * + * wp wpvulnerability config cache 6 + * + * @when after_wp_load + * + * @param array $args Positional arguments. + * @param array $assoc_args Associative arguments. + * @return void + */ + public function cache( $args, $assoc_args ) { // phpcs:ignore VariableAnalysis.CodeAnalysis.VariableAnalysis.UnusedVariable + $this->require_admin(); + + if ( ! isset( $args[0] ) ) { + \WP_CLI::error( 'Missing cache value.' ); + } + + $cache = (int) $args[0]; + $valid = array( 1, 6, 12, 24 ); + if ( ! in_array( $cache, $valid, true ) ) { + \WP_CLI::error( sprintf( "'%s' is not a valid cache value." . PHP_EOL . 'Available values: %s', $cache, implode( ',', $valid ) ) ); + } + + $option_raw = is_multisite() ? get_site_option( 'wpvulnerability-config', array() ) : get_option( 'wpvulnerability-config', array() ); + $option = is_array( $option_raw ) ? $option_raw : array(); + $option['cache'] = $cache; + + if ( is_multisite() ) { + update_site_option( 'wpvulnerability-config', $option ); + } else { + update_option( 'wpvulnerability-config', $option ); + } + + \WP_CLI::success( sprintf( 'Cache expiration set to %d hour(s).', $cache ) ); + } + + /** + * Configure log retention in days. + * + * ## OPTIONS + * + * + * : Number of days to retain logs. Valid options: 0, 1, 7, 14, 28. Use 0 to disable retention. + * + * ## EXAMPLES + * + * wp wpvulnerability config log-retention 14 + * + * @when after_wp_load + * + * @param array $args Positional arguments. + * @param array $assoc_args Associative arguments. + * @return void + */ + public function log_retention( $args, $assoc_args ) { // phpcs:ignore VariableAnalysis.CodeAnalysis.VariableAnalysis.UnusedVariable + $this->require_admin(); + + if ( ! isset( $args[0] ) ) { + \WP_CLI::error( 'Missing log retention value.' ); + } + + $retention = (int) $args[0]; + $valid = wpvulnerability_get_log_retention_values(); + if ( ! in_array( $retention, $valid, true ) ) { + \WP_CLI::error( sprintf( "'%s' is not a valid log retention value." . PHP_EOL . 'Available values: %s', $retention, implode( ', ', $valid ) ) ); + } + + $option_raw = is_multisite() ? get_site_option( 'wpvulnerability-config', array() ) : get_option( 'wpvulnerability-config', array() ); + $option = is_array( $option_raw ) ? $option_raw : array(); + $option['log_retention'] = $retention; + + if ( is_multisite() ) { + update_site_option( 'wpvulnerability-config', $option ); + } else { + update_option( 'wpvulnerability-config', $option ); + } + + if ( 0 === $retention ) { + \WP_CLI::success( 'Log retention disabled.' ); + return; + } + + \WP_CLI::success( sprintf( 'Log retention set to %d day(s).', $retention ) ); + } + + /** + * Configure notification period. + * + * ## OPTIONS + * + * + * : Notification period. Valid options: daily, weekly, never. + * + * ## EXAMPLES + * + * wp wpvulnerability config period weekly + * + * @when after_wp_load + * + * @param array $args Positional arguments. + * @param array $assoc_args Associative arguments. + * @return void + */ + public function period( $args, $assoc_args ) { // phpcs:ignore VariableAnalysis.CodeAnalysis.VariableAnalysis.UnusedVariable + $this->require_admin(); + + if ( ! isset( $args[0] ) ) { + \WP_CLI::error( 'Missing period.' ); + } + + $period = strtolower( (string) $args[0] ); + $valid = array( 'daily', 'weekly', 'never' ); + + if ( ! in_array( $period, $valid, true ) ) { + \WP_CLI::error( sprintf( "'%s' is not a valid period." . PHP_EOL . 'Available periods: %s', $period, implode( ', ', $valid ) ) ); + } + + $option_raw = is_multisite() ? get_site_option( 'wpvulnerability-config', array() ) : get_option( 'wpvulnerability-config', array() ); + $option = is_array( $option_raw ) ? $option_raw : array(); + $option['period'] = $period; + + if ( is_multisite() ) { + update_site_option( 'wpvulnerability-config', $option ); + } else { + update_option( 'wpvulnerability-config', $option ); + } + + if ( function_exists( 'wpvulnerability_schedule_notification_event' ) ) { + wpvulnerability_schedule_notification_event( $option ); + } + + \WP_CLI::success( sprintf( 'Notification period set to \'%s\'.', $period ) ); + } + } + + WP_CLI::add_command( 'wpvulnerability config', 'WPVulnerability_Config_CLI' ); +} diff --git a/languages/messages.mo b/languages/messages.mo new file mode 100644 index 0000000000000000000000000000000000000000..543b83c79812f9472691485bbbc643955b0659aa GIT binary patch literal 49120 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�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 Dpu}F_ literal 0 HcmV?d00001 diff --git a/languages/wpvulnerability-an.l10n.php b/languages/wpvulnerability-an.l10n.php new file mode 100644 index 0000000..c4a0001 --- /dev/null +++ b/languages/wpvulnerability-an.l10n.php @@ -0,0 +1,2 @@ +'wpvulnerability','plural-forms'=>'nplurals=2; plural=(n != 1);','language'=>'an','project-id-version'=>'WPVulnerability 5.0.0','pot-creation-date'=>'2026-05-27T16:32:22+00:00','po-revision-date'=>'2026-05-27 00:00+0000','messages'=>['WPVulnerability'=>'WPVulnerability','https://www.wpvulnerability.com/plugin/'=>'https://www.wpvulnerability.com/plugin/','Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API.'=>'Recibe información sobre posibles vulnerabilidatz en o tuyo WordPress dende a API de la Base de Datos de Vulnerabilidatz de WordPress.','ROBOTSTXT'=>'ROBOTSTXT','https://www.robotstxt.es/'=>'https://www.robotstxt.es/','This command requires a WordPress administrator. Run with --user=.'=>'Iste comando requiere un administrador de WordPress. Eixecuta-lo con --user=.','No core vulnerabilities found.'=>'No s\'han trobau vulnerabilidatz en o nucleo.','No plugin vulnerabilities found.'=>'No s\'han trobau vulnerabilidatz en os plugins.','No theme vulnerabilities found.'=>'No s\'han trobau vulnerabilidatz en os temas.','No %s vulnerabilities found.'=>'No s\'han trobau vulnerabilidatz en %s.','Data from source has been reloaded.'=>'Os datos d\'a fuent han siu recargaus.','You do not have permission to reload data.'=>'No tiens permiso pa recargar os datos.','Test email has been sent.'=>'S\'ha ninviato o correo electrónico de preba.','Test email has failed. Please, check your email settings.'=>'Ha fallau o correo electrónico de preba. Por favor, compreba a tuya configuración de correo electrónico.','You do not have permission to send test emails.'=>'No tiens permiso pa ninviar correos electrónicos de preba.','WPVulnerability cron events have been repaired.'=>'Os eventos cron de WPVulnerability han siu reparaus.','You do not have permission to repair cron events.'=>'No tiens permiso pa reparar os eventos cron.','All logs have been deleted.'=>'Totz os rexistros han siu esborraus.','You do not have permission to delete logs.'=>'No tiens permiso pa esborrar os rexistros.','Uninstall preference saved.'=>'S\'ha alzau a preferencia de desinstalación.','WPVulnerability has been reset to defaults and reloaded.'=>'WPVulnerability ha siu reestabliu a os valores predeterminaus y recargau.','You do not have permission to reset WPVulnerability.'=>'No tiens permiso pa reestablir WPVulnerability.','All caches have been cleared.'=>'Totas as cachés han siu limpias.','You do not have permission to clear caches.'=>'No tiens permiso pa limpiar as cachés.','Plugin and theme signatures have been reset.'=>'As signaturas de plugins y temas han siu reestablidas.','You do not have permission to reset signatures.'=>'No tiens permiso pa reestablir as signaturas.','You do not have permission to export debug information.'=>'No tiens permiso pa exportar a información de depuración.','Database update has been executed.'=>'S\'ha executau l\'actualización d\'a base de datos.','You do not have permission to run database updates.'=>'No tiens permiso pa executar actualizacions d\'a base de datos.','Notification has been sent.'=>'S\'ha ninviato a notificación.','Notification sending failed.'=>'Ha fallau l\'inviada d\'a notificación.','You do not have permission to send notifications.'=>'No tiens permiso pa ninviar notificacions.','Notifications'=>'Notificacions','Analysis'=>'Anàlisi','Logs'=>'Rexistros','Security'=>'Seguranza','Tools'=>'Ferramientas','Debug'=>'Depuración','About'=>'Sobre','Notification Settings'=>'Configuración de notificacions','Configure how and when you want to receive vulnerability notifications.'=>'Configura cómo y quan quiers recibir notificacions de vulnerabilidatz.','Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software.'=>'Mantient-te informau sobre as vulnerabilidatz de seguranza en a tuya instalación de WordPress, plugins, temas y software d\'o servidor.','Cache Expiration Time'=>'Tiempo d\'espiración d\'a caché','FORCED'=>'FORZAU','How long to cache vulnerability data before refreshing from the API.'=>'Quan tiempo glardar os datos de vulnerabilidatz en caché antes de refrescar dende a API.','%d hour'=>'%d hora' . "\0" . '%d horas','You can force the cache time via wp-config.php constant. Learn more →'=>'Puetz forzar o tiempo d\'a caché per meyo d\'a constante de wp-config.php. Amprene más →','Notification Frequency'=>'Frecuencia de notificacions','Choose how often you want to receive vulnerability notifications.'=>'Tría cuan a seguido quiers recibir notificacions de vulnerabilidatz.','Never - Disable automatic notifications'=>'Nunca - Desactiva as notificacions automaticas','Daily - Receive notifications every day'=>'A diario - Recibe notificacions cada día','Weekly - Receive notifications once a week'=>'Somanal - Recibe notificacions una vegada a la somana','Day:'=>'Día:','Monday'=>'Luns','Tuesday'=>'Martes','Wednesday'=>'Miércols','Thursday'=>'Chueves','Friday'=>'Biernes','Saturday'=>'Sabado','Sunday'=>'Domenge','Time:'=>'Hora:','(24-hour format, server timezone)'=>'(formato de 24 horas, fuso horario d\'o servidor)','Notification Channels'=>'Canals de notificación','Select where you want to receive notifications.'=>'Tría an quiers recibir as notificacions.','Email'=>'Correo electrónico','Email Addresses (separated by commas):'=>'Adrezas de correo electrónico (separadas por comas):','Default:'=>'Per defecto:','Slack'=>'Slack','Slack Webhook URL:'=>'URL d\'o webhook de Slack:','Learn how to create a Slack incoming webhook →'=>'Amprene cómo creyar un webhook entrán de Slack →','Microsoft Teams'=>'Microsoft Teams','Teams Webhook URL:'=>'URL d\'o webhook de Teams:','Learn how to create a Teams incoming webhook →'=>'Amprene cómo creyar un webhook entrán de Teams →','Discord'=>'Discord','Discord Webhook URL:'=>'URL d\'o webhook de Discord:','Learn how to create a Discord webhook →'=>'Amprene cómo creyar un webhook de Discord →','Telegram'=>'Telegram','Telegram Bot Token:'=>'Token d\'o bot de Telegram:','Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Formato: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','Telegram Chat ID:'=>'ID d\'o chat de Telegram:','Learn how to create a Telegram bot and get Chat ID →'=>'Amprene cómo creyar un bot de Telegram y obtener l\'ID d\'o chat →','Save Notification Settings'=>'Alzar a configuración de notificacions','WordPress Components'=>'Components de WordPress','WordPress Core'=>'Nucleo de WordPress','Plugins'=>'Plugins','Themes'=>'Temas','Software & Languages'=>'Software y luenga','PHP'=>'PHP','Web Servers'=>'Servidors web','Apache HTTPD'=>'Apache HTTPD','nginx'=>'nginx','Databases'=>'Bases de datos','MariaDB'=>'MariaDB','MySQL'=>'MySQL','SQLite'=>'SQLite','Additional Tools'=>'Ferramientas adicionáls','ImageMagick'=>'ImageMagick','curl'=>'curl','memcached'=>'memcached','Redis'=>'Redis','Component Analysis Settings'=>'Configuración d\'anàlisi de components','Enable or disable vulnerability analysis for specific components.'=>'Activa u desactiva l\'anàlisi de vulnerabilidatz pa components específicos.','Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red.'=>'Marca os components que quiers AMAGAR d\'os escaneigos y informes de vulnerabilidatz. Os components no marcaus serán analizaus activament. Os components con anàlisi activa se muestran en verde, os components amagaus en royo.','Hidden (forced by constant)'=>'Amagau (forzau per constante)','🔴 Analysis disabled'=>'🔴 Anàlisi desactivau','🟢 Analysis active'=>'🟢 Anàlisi activo','Tip:'=>'Conseyo:','You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →'=>'Puetz forzar a desactivación de components per meyo d\'as constantes de wp-config.php. Amprene más sobre como forzar l\'amagau de comprobacions →','Save Analysis Settings'=>'Alzar a configuración d\'anàlisi','« Previous'=>'« Anterior','Next »'=>'Siguient »','Log entry not found or has been removed.'=>'No s\'ha trobau l\'entrada d\'o rexistro u ha siu eliminada.','Unable to load the requested log entry.'=>'No se puede cargar l\'entrada d\'o rexistro solicitada.','Log Configuration'=>'Configuración d\'os rexistros','Total Logs'=>'Total de rexistros','Retention Period'=>'Periodo de retención','Disabled'=>'Desactivau','%d day'=>'%d día' . "\0" . '%d días','Log Retention Period'=>'Periodo de retención d\'os rexistros','None (Disabled)'=>'Garra (Desactivau)','This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant.'=>'Iste valor ye forzau per a constante WPVULNERABILITY_LOG_RETENTION_DAYS.','Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted.'=>'Tría quan tiempo debe mantener WPVulnerability os rexistros de respuesta d\'a API. Os rexistros más antigos s\'esborran automaticament.','Save Configuration'=>'Alzar a configuración','Log retention is currently disabled.'=>'A retención de rexistros ye desactivada actualment.','API responses are not being saved.'=>'As respuestas d\'a API no se stan alzando.','Log Details'=>'Detalls d\'o rexistro','Date'=>'Calendata','API Endpoint'=>'Endpoint d\'a API','API Response'=>'Respuesta d\'a API','Back to Logs'=>'Tornar a os rexistros','No logs available'=>'No i ha rexistros disponibles','API response logs will appear here once the vulnerability scanner runs.'=>'Os rexistros de respuesta d\'a API amaneixerán aquí una vegada que s\'eixecute l\'escaneigador de vulnerabilidatz.','API Response Logs'=>'Rexistros de respuesta d\'a API','Show:'=>'Amostrar:','Apply'=>'Aplicar','Showing %1$s–%2$s of %3$s'=>'Amostrando %1$s–%2$s de %3$s','Actions'=>'Aicions','View'=>'Veyer','Danger Zone'=>'Zona de periglo','Permanently delete all API response logs. This action cannot be undone.'=>'Esborrar permanentment totz os rexistros de respuesta d\'a API. Ista acción no se puede desfer.','Are you sure you want to delete all logs? This action cannot be undone.'=>'¿Yes seguro que quiers esborrar totz os rexistros? Ista acción no se puede desfer.','Delete All Logs'=>'Esborrar totz os rexistros','Reload Data from API'=>'Recargar datos dende a API','Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information.'=>'Recargar toda a información d\'o Nucleo, Plugins, Temas y atros components dende a API pa tener datos actualizaus. Isto limpiará a caché y obtendrá información actualizada de vulnerabilidatz.','Reload Data'=>'Recargar datos','Test Email Notifications'=>'Probar notificacions per correo electrónico','Send a test email notification with current vulnerability data to verify your email configuration is working correctly.'=>'Ninviar una notificación de preba per correo electrónico con os datos actuáls de vulnerabilidatz pa verificar que a tuya configuración de correo funciona correctament.','From address (configured via constant):'=>'Adreza d\'orixe (configurada per constante):','From address (default):'=>'Adreza d\'orixe (per defecto):','Learn how to customize the email sender address →'=>'Amprene cómo personalizar a adreza d\'o remitent d\'o correo electrónico →','Send Test Email'=>'Ninviar correo electrónico de preba','WP-Cron Status'=>'Estau d\'o WP-Cron','View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly.'=>'Veyer y istiar os eventos programaus en WP-Cron. Compara os programas esperaus con os treballs cron reáls pa asegurar que as tascas automatizadas s\'eixecutan correctament.','No cron data available.'=>'No i ha datos de cron disponibles.','Hook'=>'Gancho','Expected'=>'Esperau','Found'=>'Trobau','Next Run'=>'Siguient eixecución','Status'=>'Estau','Not expected'=>'No esperau','None'=>'Garra','OK'=>'OK','⚠️ Unexpected WPVulnerability Events'=>'⚠️ Eventos inesperados de WPVulnerability','No interval'=>'Sin interval','Next:'=>'Siguient:','Repair Cron Events'=>'Reparar os eventos cron','Uninstall Data'=>'Datos de desinstalación','By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall.'=>'Per defecto, totz os datos d\'o plugin se mantienen quan se\'sborraWPVulnerability. Activa a opción de debaixo solament si quiers que totas as opcions, rexistros y datos en caché s\'esborren permanentment a la desinstalación.','Delete all plugin data on uninstall'=>'Esborrar totz os datos d\'o plugin a la desinstalación','Default: unchecked (data preserved). Check only if you want a clean removal.'=>'Per defecto: no marcau (datos conservaus). Marca solament si quiers una desinstalación limpita.','Save preference'=>'Alzar preferencia','Reset WPVulnerability'=>'Reestablir WPVulnerability','Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API.'=>'Esborrar toda a configuración de WPVulnerability, datos en caché, rexistros y eventos programaus, dimpués restaurar os valores predeterminaus y recargar os datos dende a API.','This action cannot be undone.'=>'Ista acción no se puede desfer.','Are you sure you want to reset all WPVulnerability data? This action cannot be undone.'=>'¿Yes seguro que quiers reestablir totz os datos de WPVulnerability? Ista acción no se puede desfer.','Reset Plugin'=>'Reestablir o plugin','Vulnerability Database Statistics'=>'Estadisticas d\'a base de datos de vulnerabilidatz','%s vulnerability'=>'%s vulnerabilidá' . "\0" . '%s vulnerabilidatz','(%s product)'=>'(%s producto)' . "\0" . '(%s productos)','No data'=>'Sin datos','Database last updated: %s'=>'Base de datos actualizada por zaguer vegada: %s','Intelligence Sources'=>'Fuents d\'intelichencia','Number of vulnerabilities contributed by each intelligence source.'=>'Numero de vulnerabilidatz aportadas per cada fuent d\'intelichencia.','Source'=>'Fuent','Core'=>'Nucleo','Sponsors'=>'Patrocinadors','No sponsor data available.'=>'No i ha datos de patrocinadors disponibles.','Contributors'=>'Colaboradors','No contributor data available.'=>'No i ha datos de colaboradors disponibles.','You do not have sufficient permissions to access this page.'=>'No tiens permisos suficients pa acceder a esta pachina.','WPVulnerability settings'=>'Configuración de WPVulnerability','Configure and save these settings to receive notifications.'=>'Configura y alza ista configuración pa recibir notificacions.','Configure and save these settings to hide vulnerabilities.'=>'Configura y alza ista configuración pa amagar vulnerabilidatz.','Default administrator email'=>'Correo electrónico d\'o administrador per defecto','Read more if you want to force the cache time.'=>'Amprenete más si quiers forzar o tiempo d\'a caché.','Never'=>'Nunca','Daily'=>'A diario','Weekly'=>'Somanalment','Day'=>'Día','Hour'=>'Hora','Minute'=>'Minuto','Read more about how to force the deactivation of an item.'=>'Amprenete más sobre cómo forzar a desactivación d\'un elemento.','Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com'=>'URL d\'o webhook de Slack invalida. Tiene que estar una URL HTTPS valida de hooks.slack.com','Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com'=>'URL d\'o webhook de Microsoft Teams invalida. Tiene que estar una URL HTTPS valida de office.com, office365.com u api.hooks.microsoft.com','Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com'=>'URL d\'o webhook de Discord invalida. Tiene que estar una URL HTTPS valida de discord.com u discordapp.com','Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Formato d\'o token d\'o bot de Telegram invalido. Tiene que ser como: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','All Clear'=>'Tot en orden','%d Critical Issue Found'=>'Trobau %d problema cricial' . "\0" . 'Trobaus %d problemas cricials','%d Issue Found'=>'Trobau %d problema' . "\0" . 'Trobaus %d problemas','Never checked'=>'Nunca comprobau','%d minute ago'=>'fa %d minuto' . "\0" . 'fa %d minutos','%d hour ago'=>'fa %d hora' . "\0" . 'fa %d horas','Last checked: %s'=>'Zaguer comprobau: %s','Refresh Now'=>'Refrescar agora','No vulnerabilities detected'=>'No s\'han detectau vulnerabilidatz','Your site is up to date and secure'=>'O tuyo puesto ye actualizado y seguro','Server Software'=>'Software d\'o servidor','Site Health'=>'Salut d\'o puesto','Settings'=>'Configuración','WPVulnerability Status'=>'Estau de WPVulnerability','Receive vulnerability notifications'=>'Recibir notificacions de vulnerabilidatz','Cache expiration time'=>'Tiempo d\'espiración d\'a caché','How often you want to receive notifications'=>'Cuan a seguido quiers recibir notificacions','Where do you want to receive notifications?'=>'¿An quiers recibir as notificacions?','Email addresses to notify (separated by commas)'=>'Adrezas de correo electrónico a notificar (separadas por comas)','Slack webhook URL'=>'URL d\'o webhook de Slack','Teams webhook URL'=>'URL d\'o webhook de Teams','Vulnerabilities to hide'=>'Vulnerabilidatz pa amagar','What do you want to hide?'=>'¿Qué quiers amagar?','Standard (Hybrid Detection)'=>'Estándar (detección hìbrida)','Strict (Extensions Only)'=>'Estricto (solament extensiones)','Disabled (No Detection)'=>'Desactivau (sin detección)','Security Status'=>'Estau de seguranza','Security Mode'=>'Modo de seguranza','Shell Execution'=>'Eixecución d\'o shell','Enabled'=>'Activau','Audit Logging'=>'Rexistro d\'auditoria','Enabled (%d days)'=>'Activau (%d días)','Total Log Entries'=>'Total d\'entradas en o rexistro','Last Shell Execution'=>'Zaguer eixecución d\'o shell','%s ago'=>'fa %s','Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.'=>'Configura os axustes de seguranza per meyo d\'as constantes de wp-config.php: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.','See security configuration documentation for details.'=>'Mira a documentación d\'a configuración de seguranza pa obtener más detalles.','Memcached'=>'Memcached','Imagick Extension'=>'Extensión Imagick','Redis Extension'=>'Extensión Redis','Memcached Extension'=>'Extensión Memcached','Memcache Extension'=>'Extensión Memcache','SQLite3 Extension'=>'Extensión SQLite3','PDO SQLite'=>'PDO SQLite','Shell Command'=>'Comando d\'o shell','Binary Check'=>'Comprobación binaria','Not Detected'=>'No detectau','Software Detection Methods'=>'Metodos de detección d\'o software','Shows which detection method was used for each software component and the reliability score.'=>'Amuestra qué metodo de detección s\'empleó pa cada component de software y a puntuación de fiabilidá.','Component'=>'Component','Version'=>'Versión','Detection Method'=>'Metodo de detección','Reliability'=>'Fiabilidá','Not detected'=>'No detectau','Shell Execution Audit Logs'=>'Rexistros d\'auditoria d\'eixecución d\'o shell','Complete audit trail of shell command executions for security monitoring.'=>'Rastro completo d\'auditoria d\'as eixecucions de comandos d\'o shell pa o monitoreo de seguranza.','No shell execution logs found.'=>'No s\'han trobau rexistros d\'eixecución d\'o shell.','Logs will appear here when shell commands are executed for software detection.'=>'Os rexistros amaneixerán aquí quan s\'eixecuten comandos d\'o shell pa la detección de software.','Time'=>'Tiempo','Command'=>'Comando','User'=>'Usuario','Output'=>'Salida','Showing the %d most recent log entries.'=>'Amostrando as %d entradas d\'o rexistro más recients.','Invalid nonce.'=>'Nonce invalido.','Insufficient permissions.'=>'Permisos insuficients.','No component specified.'=>'No s\'ha especificau garra component.','Debug Information'=>'Información de depuración','This tab is only visible when WP_DEBUG is enabled. Use with caution.'=>'Ista pestanya solament ye visible quan WP_DEBUG ye activau. Emplegar con precaución.','System Information'=>'Información d\'o sistema','WordPress Version'=>'Versión de WordPress','Multisite'=>'Multisite','Yes'=>'Sí','No'=>'No','Language'=>'Luenga','PHP Version'=>'Versión de PHP','PHP Extensions'=>'Extensiones de PHP','PHP Memory Limit'=>'Límite de memoria de PHP','Database'=>'Base de datos','Web Server'=>'Servidor web','WP_DEBUG'=>'WP_DEBUG','WP_DEBUG_LOG'=>'WP_DEBUG_LOG','Path:'=>'Ruta:','Size: %s'=>'Grandaria: %s','View Log File'=>'Veyer o fichero d\'o rexistro','Log file is not web-accessible (outside wp-content)'=>'O fichero d\'o rexistro no ye accesible per web (fuera de wp-content)','Log file does not exist yet'=>'O fichero d\'o rexistro no existe encara','Plugin Version'=>'Versión d\'o plugin','Component Detection'=>'Detección de components','Version Detected'=>'Versión detectada','Analyzed'=>'Analizau','Cache Status'=>'Estau d\'a caché','Configuration Summary'=>'Resumen d\'a configuración','Cache Duration'=>'Duración d\'a caché','Log Retention'=>'Retención de rexistros','Components Analyzed'=>'Components analizaus','Notification Email'=>'Correo electrónico de notificación','Slack Webhook'=>'Webhook de Slack','Configured & Enabled'=>'Configurau y activau','Configured (Disabled)'=>'Configurau (desactivau)','Not configured'=>'No configurau','Teams Webhook'=>'Webhook de Teams','Discord Webhook'=>'Webhook de Discord','Telegram Bot'=>'Bot de Telegram','Cron Status'=>'Estau d\'o cron','Update Database'=>'Actualizar a base de datos','Next run: %s'=>'Siguient eixecución: %s','Not scheduled'=>'No programau','Send Notification'=>'Ninviar notificación','Run Update Now'=>'Eixecutar l\'actualización agora','Run Notification Now'=>'Eixecutar notificación agora','You do not have permission to run these actions.'=>'No tiens permiso pa eixecutar istos aicions.','API Testing'=>'Preba d\'a API','Test API connectivity for each component. Click a button to send a test request.'=>'Preba a conectividá d\'a API pa cada component. Fé click en un botón pa ninviar una solicitud de preba.','Test %s'=>'Probar %s','Testing...'=>'Probando...','HTTP Code:'=>'Código HTTP:','Response Time:'=>'Tiempo de respuesta:','Response Preview'=>'Previsualización d\'a respuesta','Test'=>'Preba','Error:'=>'Error:','AJAX request failed.'=>'Ha fallau a solicitut AJAX.','You do not have permission to test API connectivity.'=>'No tiens permiso pa probar a conectividá d\'a API.','Database Options Viewer'=>'Visor d\'opcions d\'a base de datos','View the raw data stored in WordPress options.'=>'Veyer os datos brutos alzaus en as opcions de WordPress.','Select an option...'=>'Selecciona una opción...','Option not found or empty.'=>'Opción no trobada u vacía.','Quick Actions'=>'Aicions rapidas','Perform debugging actions. Use with caution.'=>'Eixecutar aicions de depuración. Emplegar con precaución.','Are you sure you want to clear all caches?'=>'¿Yes seguro que quiers limpiar todas as cachés?','Clear All Caches'=>'Limpiar todas as cachés','Are you sure you want to reset signatures?'=>'¿Yes seguro que quiers reestablir as signaturas?','Reset Signatures'=>'Reestablir as signaturas','Export Debug Info'=>'Exportar información de depuración','You do not have permission to perform these actions.'=>'No tiens permiso pa realizar istos aicions.','Settings saved.'=>'Configuración alzada.','WPVulnerability cron events have been repaired across the network.'=>'Os eventos cron de WPVulnerability han siu reparaus en toda a rete.','You do not have permission to access this page.'=>'No tiens permiso pa acceder a esta pachina.','WordPress %1$s has a known vulnerability that may be affecting your installed version.'=>'WordPress %1$s tiene una vulnerabilidá conoixida que puede estar afectando a tuya versión instalada.','Actively exploited'=>'Explotau activament','Public exploit'=>'Exploit público','Automatable'=>'Automatizable','References:'=>'Referencies:','Invalid component specified.'=>'Component especificau invalido.','Version not detected for this component.'=>'No s\'ha detectau a versión pa este component.','API request successful.'=>'Solicitut a l\'API realizata con ixito.','API returned HTTP code %d.'=>'A API ha tornou o código HTTP %d.','WPVulnerability Logs'=>'Rexistros de WPVulnerability','WPVulnerability Log'=>'Rexistro de WPVulnerability','Low'=>'Baixo','Medium'=>'Meyo','High'=>'Alto','Critical'=>'Cricial','WPVulnerability Shell Logs'=>'Rexistros d\'o shell de WPVulnerability','WPVulnerability Shell Log'=>'Rexistro d\'o shell de WPVulnerability','Every week'=>'Cada semana','Every day'=>'Cada día','Invalid request.'=>'Solicitut invalida.','You have unsubscribed from WPVulnerability notifications.'=>'T\'has desuscrito d\'as notificacions de WPVulnerability.','Learn more about the WordPress Vulnerability Database API at %2$s'=>'Amprene más sobre a API de la Base de Datos de Vulnerabilidatz de WordPress en %2$s','Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings.'=>'¿Quiers deixar de recibir istos avisos? Desuscribet-te u cambia a frecuencia d\'o correo electrónico a Nunca en a configuración de WPVulnerability.','No vulnerabilities found'=>'No s\'han trobau vulnerabilidatz','This is likely a test. The site does not have vulnerabilities.'=>'Isto ye probablement una preba. O puesto no tiene vulnerabilidatz.','Core vulnerabilities'=>'Vulnerabilidatz d\'o nucleo','Plugins vulnerabilities'=>'Vulnerabilidatz de plugins','Themes vulnerabilities'=>'Vulnerabilidatz de temas','PHP vulnerabilities'=>'Vulnerabilidatz de PHP','Apache HTTPD vulnerabilities'=>'Vulnerabilidatz de Apache HTTPD','Nginx vulnerabilities'=>'Vulnerabilidatz de Nginx','MariaDB vulnerabilities'=>'Vulnerabilidatz de MariaDB','MySQL vulnerabilities'=>'Vulnerabilidatz de MySQL','ImageMagick vulnerabilities'=>'Vulnerabilidatz de ImageMagick','curl vulnerabilities'=>'Vulnerabilidatz de curl','memcached vulnerabilities'=>'Vulnerabilidatz de memcached','Redis vulnerabilities'=>'Vulnerabilidatz de Redis','SQLite vulnerabilities'=>'Vulnerabilidatz de SQLite','Vulnerability found: %s'=>'Vulnerabilidá trobada: %s','Vulnerability found'=>'Vulnerabilidá trobada','%1$s has a known vulnerability that may be affecting your installed version.'=>'%1$s tiene una vulnerabilidá conoixida que puede estar afectando a tuya versión instalada.','This plugin is closed. Please replace it with another.'=>'Iste plugin ye zarrato. Por favor, remplaza-lo por atro.','This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates.'=>'Ista vulnerabilidá pareix no estar parchiada. Mantient-te pendent d\'as actualizacions proximas d\'o plugin.','It hasn\'t been updated in over a year.'=>'No s\'ha actualizado en más d\'un anyo.','It may no longer be available (closed?).'=>'Puede que ya no siga disponible (¿zarrato?).','Last updated on'=>'Zaguer actualización o','Vulnerabilities (%d)'=>'Vulnerabilidatz (%d)','%s running'=>'%s en marcha','End of Life'=>'Fin de vida','End of life:'=>'Fin de vida:','Supported'=>'Con soporte','Plugin'=>'Plugin','Theme'=>'Tema','End of life: %s'=>'Fin de vida: %s','EOL'=>'EOL','Network Settings'=>'Configuración de rete','Vulnerabilities'=>'Vulnerabilidatz','Every 6 hours'=>'Cada 6 horas','Database updates'=>'Actualizacions d\'a base de datos','Log cleanup'=>'Limpieza de rexistros','Notifications are scheduled, but settings currently disable them. Please review the notifications tab.'=>'As notificacions son programadas, pero a configuración actual as desactiva. Por favor, revisa a pestanya de notificacions.','This event should not be scheduled for this site.'=>'Iste evento no tendría que estar programau pa este puesto.','Not expected for this site.'=>'No esperau pa este puesto.','No instances found.'=>'No s\'han trobau instancias.','Scheduled with an unexpected interval.'=>'Programau con un interval inesperado.','Multiple instances detected.'=>'S\'han detectau multiples instancias.','Scheduled as expected.'=>'Programau como s\'esperaba.','There aren\'t plugins vulnerabilities'=>'No i ha vulnerabilidatz de plugins','Shows possible vulnerabilities that exist in installed plugins.'=>'Amuestra as posibles vulnerabilidatz que existen en os plugins instalaus.','There is %d plugin with vulnerabilities'=>'I ha %d plugin con vulnerabilidatz' . "\0" . 'I ha %d plugins con vulnerabilidatz','We\'ve detected potential vulnerabilities in installed plugins. Please check them and keep them updated.'=>'Hemos detectau posibles vulnerabilidatz en os plugins instalaus. Por favor, compreba-las y mantiene-las actualizadas.','Update plugins'=>'Actualizar plugins','There aren\'t themes vulnerabilities'=>'No i ha vulnerabilidatz de temas','Shows possible vulnerabilities that exist in installed themes.'=>'Amuestra as posibles vulnerabilidatz que existen en os temas instalaus.','There is %d theme with vulnerabilities'=>'I ha %d tema con vulnerabilidatz' . "\0" . 'I ha %d temas con vulnerabilidatz','We\'ve detected potential vulnerabilities in installed themes. Please check them and keep them updated.'=>'Hemos detectau posibles vulnerabilidatz en os temas instalaus. Por favor, compreba-las y mantiene-las actualizadas.','Update themes'=>'Actualizar temas','There aren\'t WordPress vulnerabilities'=>'No i ha vulnerabilidatz de WordPress','Shows possible vulnerabilities existing in the WordPress core.'=>'Amuestra as posibles vulnerabilidatz que existen en o nucleo de WordPress.','There is %d core vulnerability'=>'I ha %d vulnerabilidá d\'o nucleo' . "\0" . 'I ha %d vulnerabilidatz d\'o nucleo','We\'ve detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated.'=>'Hemos detectau posibles vulnerabilidatz en ista instalación de WordPress. Por favor, compreba-las y mantiene a tuya instalación actualizada.','Update WordPress'=>'Actualizar WordPress','Nginx'=>'Nginx','Invalid software type'=>'Tipo de software invalido','Error'=>'Error','The specified software type is not valid.'=>'O tipo de software especificau no ye valido.','There aren\'t %s vulnerabilities'=>'No i ha vulnerabilidatz de %s','Shows possible vulnerabilities existing in %s.'=>'Amuestra as posibles vulnerabilidatz que existen en %s.','There is %1$d %2$s vulnerability'=>'I ha %1$d vulnerabilidá de %2$s' . "\0" . 'I ha %1$d vulnerabilidatz de %2$s','We\'ve detected potential vulnerabilities in %s. Please check them and keep your installation updated.'=>'Hemos detectau posibles vulnerabilidatz en %s. Por favor, compreba-las y mantiene a tuya instalación actualizada.','How to update PHP'=>'Cómo actualizar PHP','WPVulnerability Core'=>'WPVulnerability Core','WPVulnerability Themes'=>'WPVulnerability Themes','WPVulnerability Plugins'=>'WPVulnerability Plugins','WPVulnerability PHP'=>'WPVulnerability PHP','WPVulnerability Apache HTTPD'=>'WPVulnerability Apache HTTPD','WPVulnerability Nginx'=>'WPVulnerability Nginx','WPVulnerability MariaDB'=>'WPVulnerability MariaDB','WPVulnerability MySQL'=>'WPVulnerability MySQL','WPVulnerability ImageMagick'=>'WPVulnerability ImageMagick','WPVulnerability curl'=>'WPVulnerability curl','WPVulnerability memcached'=>'WPVulnerability memcached','WPVulnerability redis'=>'WPVulnerability redis','WPVulnerability sqlite'=>'WPVulnerability sqlite','This theme is closed. Please replace it with another.'=>'Iste tema ye zarrato. Por favor, remplaza-lo por atro.','This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates.'=>'Ista vulnerabilidá pareix no estar parchiada. Mantient-te pendent d\'as actualizacions proximas d\'o tema.','This theme has known vulnerabilities that may be affecting your installed version.'=>'Iste tema tiene vulnerabilidatz conoixidas que pueden estar afectando a tuya versión instalada.']]; \ No newline at end of file diff --git a/languages/wpvulnerability-an.mo b/languages/wpvulnerability-an.mo new file mode 100644 index 0000000000000000000000000000000000000000..b26db6943daf59af471b61fed05479ca9affc579 GIT binary patch literal 40732 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 U@XeT4Gx=17e?hB@+bhBU0F\n" +"Language: an\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Domain: wpvulnerability\n" + +#. Plugin Name of the plugin +#: wpvulnerability.php +#: wpvulnerability-admin.php:1782 +#: wpvulnerability-admin.php:1783 +#: wpvulnerability-adminms.php:1945 +#: wpvulnerability-adminms.php:1946 +#: wpvulnerability-notifications.php:105 +msgid "WPVulnerability" +msgstr "WPVulnerability" + +#. Plugin URI of the plugin +#: wpvulnerability.php +msgid "https://www.wpvulnerability.com/plugin/" +msgstr "https://www.wpvulnerability.com/plugin/" + +#. Description of the plugin +#: wpvulnerability.php +msgid "Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API." +msgstr "Recibe información sobre posibles vulnerabilidatz en o tuyo WordPress dende a API de la Base de Datos de Vulnerabilidatz de WordPress." + +#. Author of the plugin +#: wpvulnerability.php +msgid "ROBOTSTXT" +msgstr "ROBOTSTXT" + +#. Author URI of the plugin +#: wpvulnerability.php +msgid "https://www.robotstxt.es/" +msgstr "https://www.robotstxt.es/" + +#: class-wpvulnerability-cli.php:35 +#: class-wpvulnerability-config-cli.php:32 +msgid "This command requires a WordPress administrator. Run with --user=." +msgstr "Iste comando requiere un administrador de WordPress. Eixecuta-lo con --user=." + +#: class-wpvulnerability-cli.php:156 +msgid "No core vulnerabilities found." +msgstr "No s'han trobau vulnerabilidatz en o nucleo." + +#: class-wpvulnerability-cli.php:275 +msgid "No plugin vulnerabilities found." +msgstr "No s'han trobau vulnerabilidatz en os plugins." + +#: class-wpvulnerability-cli.php:393 +msgid "No theme vulnerabilities found." +msgstr "No s'han trobau vulnerabilidatz en os temas." + +#. translators: %s is the software name (php, apache, nginx, etc.) +#: class-wpvulnerability-cli.php:490 +#, php-format +msgid "No %s vulnerabilities found." +msgstr "No s'han trobau vulnerabilidatz en %s." + +#: wpvulnerability-admin.php:63 +#: wpvulnerability-adminms.php:227 +msgid "Data from source has been reloaded." +msgstr "Os datos d'a fuent han siu recargaus." + +#: wpvulnerability-admin.php:65 +#: wpvulnerability-adminms.php:229 +msgid "You do not have permission to reload data." +msgstr "No tiens permiso pa recargar os datos." + +#: wpvulnerability-admin.php:93 +#: wpvulnerability-adminms.php:255 +msgid "Test email has been sent." +msgstr "S'ha ninviato o correo electrónico de preba." + +#: wpvulnerability-admin.php:95 +#: wpvulnerability-adminms.php:259 +msgid "Test email has failed. Please, check your email settings." +msgstr "Ha fallau o correo electrónico de preba. Por favor, compreba a tuya configuración de correo electrónico." + +#: wpvulnerability-admin.php:98 +#: wpvulnerability-adminms.php:263 +msgid "You do not have permission to send test emails." +msgstr "No tiens permiso pa ninviar correos electrónicos de preba." + +#: wpvulnerability-admin.php:113 +msgid "WPVulnerability cron events have been repaired." +msgstr "Os eventos cron de WPVulnerability han siu reparaus." + +#: wpvulnerability-admin.php:115 +#: wpvulnerability-adminms.php:279 +msgid "You do not have permission to repair cron events." +msgstr "No tiens permiso pa reparar os eventos cron." + +#: wpvulnerability-admin.php:127 +#: wpvulnerability-adminms.php:291 +msgid "All logs have been deleted." +msgstr "Totz os rexistros han siu esborraus." + +#: wpvulnerability-admin.php:129 +#: wpvulnerability-adminms.php:293 +msgid "You do not have permission to delete logs." +msgstr "No tiens permiso pa esborrar os rexistros." + +#: wpvulnerability-admin.php:146 +msgid "Uninstall preference saved." +msgstr "S'ha alzau a preferencia de desinstalación." + +#: wpvulnerability-admin.php:153 +#: wpvulnerability-adminms.php:316 +msgid "WPVulnerability has been reset to defaults and reloaded." +msgstr "WPVulnerability ha siu reestabliu a os valores predeterminaus y recargau." + +#: wpvulnerability-admin.php:155 +#: wpvulnerability-adminms.php:318 +msgid "You do not have permission to reset WPVulnerability." +msgstr "No tiens permiso pa reestablir WPVulnerability." + +#: wpvulnerability-admin.php:170 +#: wpvulnerability-adminms.php:333 +msgid "All caches have been cleared." +msgstr "Totas as cachés han siu limpias." + +#: wpvulnerability-admin.php:172 +#: wpvulnerability-adminms.php:335 +msgid "You do not have permission to clear caches." +msgstr "No tiens permiso pa limpiar as cachés." + +#: wpvulnerability-admin.php:187 +#: wpvulnerability-adminms.php:350 +msgid "Plugin and theme signatures have been reset." +msgstr "As signaturas de plugins y temas han siu reestablidas." + +#: wpvulnerability-admin.php:189 +#: wpvulnerability-adminms.php:352 +msgid "You do not have permission to reset signatures." +msgstr "No tiens permiso pa reestablir as signaturas." + +#: wpvulnerability-admin.php:212 +#: wpvulnerability-adminms.php:375 +msgid "You do not have permission to export debug information." +msgstr "No tiens permiso pa exportar a información de depuración." + +#: wpvulnerability-admin.php:224 +#: wpvulnerability-adminms.php:387 +msgid "Database update has been executed." +msgstr "S'ha executau l'actualización d'a base de datos." + +#: wpvulnerability-admin.php:226 +#: wpvulnerability-adminms.php:389 +msgid "You do not have permission to run database updates." +msgstr "No tiens permiso pa executar actualizacions d'a base de datos." + +#: wpvulnerability-admin.php:247 +#: wpvulnerability-adminms.php:410 +msgid "Notification has been sent." +msgstr "S'ha ninviato a notificación." + +#: wpvulnerability-admin.php:249 +#: wpvulnerability-adminms.php:412 +msgid "Notification sending failed." +msgstr "Ha fallau l'inviada d'a notificación." + +#: wpvulnerability-admin.php:252 +#: wpvulnerability-adminms.php:415 +msgid "You do not have permission to send notifications." +msgstr "No tiens permiso pa ninviar notificacions." + +#: wpvulnerability-admin.php:266 +#: wpvulnerability-adminms.php:539 +#: wpvulnerability-schedule.php:323 +msgid "Notifications" +msgstr "Notificacions" + +#: wpvulnerability-admin.php:269 +#: wpvulnerability-adminms.php:542 +msgid "Analysis" +msgstr "Anàlisi" + +#: wpvulnerability-admin.php:272 +#: wpvulnerability-adminms.php:545 +msgid "Logs" +msgstr "Rexistros" + +#: wpvulnerability-admin.php:275 +#: wpvulnerability-adminms.php:548 +#: wpvulnerability-sitehealth.php:25 +#: wpvulnerability-sitehealth.php:77 +#: wpvulnerability-sitehealth.php:129 +#: wpvulnerability-sitehealth.php:210 +msgid "Security" +msgstr "Seguranza" + +#: wpvulnerability-admin.php:278 +#: wpvulnerability-adminms.php:551 +msgid "Tools" +msgstr "Ferramientas" + +#: wpvulnerability-admin.php:285 +#: wpvulnerability-adminms.php:558 +msgid "Debug" +msgstr "Depuración" + +#: wpvulnerability-admin.php:290 +#: wpvulnerability-adminms.php:563 +msgid "About" +msgstr "Sobre" + +#: wpvulnerability-admin.php:427 +#: wpvulnerability-adminms.php:700 +msgid "Notification Settings" +msgstr "Configuración de notificacions" + +#: wpvulnerability-admin.php:430 +#: wpvulnerability-adminms.php:703 +msgid "Configure how and when you want to receive vulnerability notifications." +msgstr "Configura cómo y quan quiers recibir notificacions de vulnerabilidatz." + +#: wpvulnerability-admin.php:431 +#: wpvulnerability-adminms.php:704 +msgid "Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software." +msgstr "Mantient-te informau sobre as vulnerabilidatz de seguranza en a tuya instalación de WordPress, plugins, temas y software d'o servidor." + +#: wpvulnerability-admin.php:438 +#: wpvulnerability-adminms.php:711 +msgid "Cache Expiration Time" +msgstr "Tiempo d'espiración d'a caché" + +#: wpvulnerability-admin.php:440 +#: wpvulnerability-admin.php:814 +#: wpvulnerability-adminms.php:713 +#: wpvulnerability-adminms.php:1087 +msgid "FORCED" +msgstr "FORZAU" + +#: wpvulnerability-admin.php:444 +#: wpvulnerability-adminms.php:717 +msgid "How long to cache vulnerability data before refreshing from the API." +msgstr "Quan tiempo glardar os datos de vulnerabilidatz en caché antes de refrescar dende a API." + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:453 +#: wpvulnerability-admin.php:1891 +#: wpvulnerability-admin.php:3631 +#: wpvulnerability-adminms.php:726 +#: wpvulnerability-adminms.php:2039 +#: wpvulnerability-adminms.php:3825 +#, php-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d hora" +msgstr[1] "%d horas" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:469 +#: wpvulnerability-adminms.php:742 +#, php-format +msgid "You can force the cache time via wp-config.php constant. Learn more →" +msgstr "Puetz forzar o tiempo d'a caché per meyo d'a constante de wp-config.php. Amprene más →" + +#: wpvulnerability-admin.php:481 +#: wpvulnerability-admin.php:3665 +#: wpvulnerability-adminms.php:754 +#: wpvulnerability-adminms.php:3859 +msgid "Notification Frequency" +msgstr "Frecuencia de notificacions" + +#: wpvulnerability-admin.php:484 +#: wpvulnerability-adminms.php:757 +msgid "Choose how often you want to receive vulnerability notifications." +msgstr "Tría cuan a seguido quiers recibir notificacions de vulnerabilidatz." + +#: wpvulnerability-admin.php:489 +#: wpvulnerability-adminms.php:762 +msgid "Never - Disable automatic notifications" +msgstr "Nunca - Desactiva as notificacions automaticas" + +#: wpvulnerability-admin.php:493 +#: wpvulnerability-adminms.php:766 +msgid "Daily - Receive notifications every day" +msgstr "A diario - Recibe notificacions cada día" + +#: wpvulnerability-admin.php:497 +#: wpvulnerability-adminms.php:770 +msgid "Weekly - Receive notifications once a week" +msgstr "Somanal - Recibe notificacions una vegada a la somana" + +#: wpvulnerability-admin.php:503 +#: wpvulnerability-adminms.php:776 +msgid "Day:" +msgstr "Día:" + +#: wpvulnerability-admin.php:505 +#: wpvulnerability-admin.php:1955 +#: wpvulnerability-adminms.php:778 +#: wpvulnerability-adminms.php:2115 +msgid "Monday" +msgstr "Luns" + +#: wpvulnerability-admin.php:506 +#: wpvulnerability-admin.php:1956 +#: wpvulnerability-adminms.php:779 +#: wpvulnerability-adminms.php:2116 +msgid "Tuesday" +msgstr "Martes" + +#: wpvulnerability-admin.php:507 +#: wpvulnerability-admin.php:1957 +#: wpvulnerability-adminms.php:780 +#: wpvulnerability-adminms.php:2117 +msgid "Wednesday" +msgstr "Miércols" + +#: wpvulnerability-admin.php:508 +#: wpvulnerability-admin.php:1958 +#: wpvulnerability-adminms.php:781 +#: wpvulnerability-adminms.php:2118 +msgid "Thursday" +msgstr "Chueves" + +#: wpvulnerability-admin.php:509 +#: wpvulnerability-admin.php:1959 +#: wpvulnerability-adminms.php:782 +#: wpvulnerability-adminms.php:2119 +msgid "Friday" +msgstr "Biernes" + +#: wpvulnerability-admin.php:510 +#: wpvulnerability-admin.php:1960 +#: wpvulnerability-adminms.php:783 +#: wpvulnerability-adminms.php:2120 +msgid "Saturday" +msgstr "Sabado" + +#: wpvulnerability-admin.php:511 +#: wpvulnerability-admin.php:1961 +#: wpvulnerability-adminms.php:784 +#: wpvulnerability-adminms.php:2121 +msgid "Sunday" +msgstr "Domenge" + +#: wpvulnerability-admin.php:515 +#: wpvulnerability-adminms.php:788 +msgid "Time:" +msgstr "Hora:" + +#: wpvulnerability-admin.php:519 +#: wpvulnerability-adminms.php:792 +msgid "(24-hour format, server timezone)" +msgstr "(formato de 24 horas, fuso horario d'o servidor)" + +#: wpvulnerability-admin.php:528 +#: wpvulnerability-adminms.php:801 +msgid "Notification Channels" +msgstr "Canals de notificación" + +#: wpvulnerability-admin.php:531 +#: wpvulnerability-adminms.php:804 +msgid "Select where you want to receive notifications." +msgstr "Tría an quiers recibir as notificacions." + +#: wpvulnerability-admin.php:536 +#: wpvulnerability-admin.php:2011 +#: wpvulnerability-adminms.php:809 +#: wpvulnerability-adminms.php:2169 +msgid "Email" +msgstr "Correo electrónico" + +#: wpvulnerability-admin.php:539 +#: wpvulnerability-adminms.php:812 +msgid "Email Addresses (separated by commas):" +msgstr "Adrezas de correo electrónico (separadas por comas):" + +#: wpvulnerability-admin.php:541 +#: wpvulnerability-adminms.php:814 +msgid "Default:" +msgstr "Per defecto:" + +#: wpvulnerability-admin.php:546 +#: wpvulnerability-admin.php:2016 +#: wpvulnerability-adminms.php:819 +#: wpvulnerability-adminms.php:2174 +msgid "Slack" +msgstr "Slack" + +#: wpvulnerability-admin.php:549 +#: wpvulnerability-adminms.php:822 +msgid "Slack Webhook URL:" +msgstr "URL d'o webhook de Slack:" + +#. translators: %s: Slack documentation URL +#: wpvulnerability-admin.php:555 +#: wpvulnerability-adminms.php:828 +#, php-format +msgid "Learn how to create a Slack incoming webhook →" +msgstr "Amprene cómo creyar un webhook entrán de Slack →" + +#: wpvulnerability-admin.php:564 +#: wpvulnerability-admin.php:2021 +#: wpvulnerability-adminms.php:837 +#: wpvulnerability-adminms.php:2179 +msgid "Microsoft Teams" +msgstr "Microsoft Teams" + +#: wpvulnerability-admin.php:567 +#: wpvulnerability-adminms.php:840 +msgid "Teams Webhook URL:" +msgstr "URL d'o webhook de Teams:" + +#. translators: %s: Microsoft Teams documentation URL +#: wpvulnerability-admin.php:573 +#: wpvulnerability-adminms.php:846 +#, php-format +msgid "Learn how to create a Teams incoming webhook →" +msgstr "Amprene cómo creyar un webhook entrán de Teams →" + +#: wpvulnerability-admin.php:582 +#: wpvulnerability-adminms.php:855 +msgid "Discord" +msgstr "Discord" + +#: wpvulnerability-admin.php:585 +#: wpvulnerability-adminms.php:858 +msgid "Discord Webhook URL:" +msgstr "URL d'o webhook de Discord:" + +#. translators: %s: Discord documentation URL +#: wpvulnerability-admin.php:591 +#: wpvulnerability-adminms.php:864 +#, php-format +msgid "Learn how to create a Discord webhook →" +msgstr "Amprene cómo creyar un webhook de Discord →" + +#: wpvulnerability-admin.php:600 +#: wpvulnerability-adminms.php:873 +msgid "Telegram" +msgstr "Telegram" + +#: wpvulnerability-admin.php:603 +#: wpvulnerability-adminms.php:876 +msgid "Telegram Bot Token:" +msgstr "Token d'o bot de Telegram:" + +#: wpvulnerability-admin.php:605 +#: wpvulnerability-adminms.php:878 +msgid "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "Formato: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:607 +#: wpvulnerability-adminms.php:880 +msgid "Telegram Chat ID:" +msgstr "ID d'o chat de Telegram:" + +#. translators: %s: Telegram documentation URL +#: wpvulnerability-admin.php:613 +#: wpvulnerability-adminms.php:886 +#, php-format +msgid "Learn how to create a Telegram bot and get Chat ID →" +msgstr "Amprene cómo creyar un bot de Telegram y obtener l'ID d'o chat →" + +#: wpvulnerability-admin.php:623 +#: wpvulnerability-adminms.php:896 +msgid "Save Notification Settings" +msgstr "Alzar a configuración de notificacions" + +#: wpvulnerability-admin.php:700 +#: wpvulnerability-admin.php:2552 +#: wpvulnerability-adminms.php:973 +#: wpvulnerability-adminms.php:2459 +msgid "WordPress Components" +msgstr "Components de WordPress" + +#: wpvulnerability-admin.php:703 +#: wpvulnerability-admin.php:2560 +#: wpvulnerability-adminms.php:976 +#: wpvulnerability-adminms.php:2467 +msgid "WordPress Core" +msgstr "Nucleo de WordPress" + +#: wpvulnerability-admin.php:707 +#: wpvulnerability-admin.php:1472 +#: wpvulnerability-admin.php:1573 +#: wpvulnerability-admin.php:2109 +#: wpvulnerability-admin.php:2571 +#: wpvulnerability-adminms.php:980 +#: wpvulnerability-adminms.php:1744 +#: wpvulnerability-adminms.php:1843 +#: wpvulnerability-adminms.php:2266 +#: wpvulnerability-adminms.php:2478 +msgid "Plugins" +msgstr "Plugins" + +#: wpvulnerability-admin.php:711 +#: wpvulnerability-admin.php:1473 +#: wpvulnerability-admin.php:1574 +#: wpvulnerability-admin.php:2114 +#: wpvulnerability-admin.php:2587 +#: wpvulnerability-adminms.php:984 +#: wpvulnerability-adminms.php:1745 +#: wpvulnerability-adminms.php:1844 +#: wpvulnerability-adminms.php:2271 +#: wpvulnerability-adminms.php:2494 +msgid "Themes" +msgstr "Temas" + +#: wpvulnerability-admin.php:717 +#: wpvulnerability-adminms.php:990 +msgid "Software & Languages" +msgstr "Software y luenga" + +#: wpvulnerability-admin.php:720 +#: wpvulnerability-admin.php:1474 +#: wpvulnerability-admin.php:2119 +#: wpvulnerability-adminms.php:993 +#: wpvulnerability-adminms.php:1746 +#: wpvulnerability-adminms.php:2276 +#: wpvulnerability-sitehealth.php:178 +msgid "PHP" +msgstr "PHP" + +#: wpvulnerability-admin.php:726 +#: wpvulnerability-adminms.php:999 +msgid "Web Servers" +msgstr "Servidors web" + +#: wpvulnerability-admin.php:729 +#: wpvulnerability-admin.php:1475 +#: wpvulnerability-admin.php:2124 +#: wpvulnerability-adminms.php:1002 +#: wpvulnerability-adminms.php:1747 +#: wpvulnerability-adminms.php:2281 +#: wpvulnerability-sitehealth.php:179 +msgid "Apache HTTPD" +msgstr "Apache HTTPD" + +#: wpvulnerability-admin.php:733 +#: wpvulnerability-admin.php:1476 +#: wpvulnerability-admin.php:2129 +#: wpvulnerability-adminms.php:1006 +#: wpvulnerability-adminms.php:1748 +#: wpvulnerability-adminms.php:2286 +msgid "nginx" +msgstr "nginx" + +#: wpvulnerability-admin.php:739 +#: wpvulnerability-adminms.php:1012 +msgid "Databases" +msgstr "Bases de datos" + +#: wpvulnerability-admin.php:742 +#: wpvulnerability-admin.php:1477 +#: wpvulnerability-admin.php:2134 +#: wpvulnerability-adminms.php:1015 +#: wpvulnerability-adminms.php:1749 +#: wpvulnerability-adminms.php:2291 +#: wpvulnerability-sitehealth.php:181 +msgid "MariaDB" +msgstr "MariaDB" + +#: wpvulnerability-admin.php:746 +#: wpvulnerability-admin.php:1478 +#: wpvulnerability-admin.php:2139 +#: wpvulnerability-adminms.php:1019 +#: wpvulnerability-adminms.php:1750 +#: wpvulnerability-adminms.php:2296 +#: wpvulnerability-sitehealth.php:182 +msgid "MySQL" +msgstr "MySQL" + +#: wpvulnerability-admin.php:750 +#: wpvulnerability-admin.php:1483 +#: wpvulnerability-admin.php:2164 +#: wpvulnerability-admin.php:3104 +#: wpvulnerability-adminms.php:1023 +#: wpvulnerability-adminms.php:1755 +#: wpvulnerability-adminms.php:2321 +#: wpvulnerability-adminms.php:3281 +msgid "SQLite" +msgstr "SQLite" + +#: wpvulnerability-admin.php:756 +#: wpvulnerability-adminms.php:1029 +msgid "Additional Tools" +msgstr "Ferramientas adicionáls" + +#: wpvulnerability-admin.php:759 +#: wpvulnerability-admin.php:1479 +#: wpvulnerability-admin.php:2144 +#: wpvulnerability-admin.php:3101 +#: wpvulnerability-adminms.php:1032 +#: wpvulnerability-adminms.php:1751 +#: wpvulnerability-adminms.php:2301 +#: wpvulnerability-adminms.php:3278 +#: wpvulnerability-sitehealth.php:183 +msgid "ImageMagick" +msgstr "ImageMagick" + +#: wpvulnerability-admin.php:763 +#: wpvulnerability-admin.php:1480 +#: wpvulnerability-admin.php:2149 +#: wpvulnerability-adminms.php:1036 +#: wpvulnerability-adminms.php:1752 +#: wpvulnerability-adminms.php:2306 +#: wpvulnerability-sitehealth.php:184 +msgid "curl" +msgstr "curl" + +#: wpvulnerability-admin.php:767 +#: wpvulnerability-admin.php:1481 +#: wpvulnerability-admin.php:2154 +#: wpvulnerability-adminms.php:1040 +#: wpvulnerability-adminms.php:1753 +#: wpvulnerability-adminms.php:2311 +msgid "memcached" +msgstr "memcached" + +#: wpvulnerability-admin.php:771 +#: wpvulnerability-admin.php:1482 +#: wpvulnerability-admin.php:2159 +#: wpvulnerability-admin.php:3102 +#: wpvulnerability-adminms.php:1044 +#: wpvulnerability-adminms.php:1754 +#: wpvulnerability-adminms.php:2316 +#: wpvulnerability-adminms.php:3279 +msgid "Redis" +msgstr "Redis" + +#: wpvulnerability-admin.php:784 +#: wpvulnerability-adminms.php:1057 +msgid "Component Analysis Settings" +msgstr "Configuración d'anàlisi de components" + +#: wpvulnerability-admin.php:787 +#: wpvulnerability-adminms.php:1060 +msgid "Enable or disable vulnerability analysis for specific components." +msgstr "Activa u desactiva l'anàlisi de vulnerabilidatz pa components específicos." + +#: wpvulnerability-admin.php:788 +#: wpvulnerability-adminms.php:1061 +msgid "Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red." +msgstr "Marca os components que quiers AMAGAR d'os escaneigos y informes de vulnerabilidatz. Os components no marcaus serán analizaus activament. Os components con anàlisi activa se muestran en verde, os components amagaus en royo." + +#: wpvulnerability-admin.php:820 +#: wpvulnerability-adminms.php:1093 +msgid "Hidden (forced by constant)" +msgstr "Amagau (forzau per constante)" + +#: wpvulnerability-admin.php:823 +#: wpvulnerability-adminms.php:1096 +msgid "🔴 Analysis disabled" +msgstr "🔴 Anàlisi desactivau" + +#: wpvulnerability-admin.php:826 +#: wpvulnerability-adminms.php:1099 +msgid "🟢 Analysis active" +msgstr "🟢 Anàlisi activo" + +#: wpvulnerability-admin.php:848 +#: wpvulnerability-adminms.php:1121 +msgid "Tip:" +msgstr "Conseyo:" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:852 +#: wpvulnerability-adminms.php:1125 +#, php-format +msgid "You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →" +msgstr "Puetz forzar a desactivación de components per meyo d'as constantes de wp-config.php. Amprene más sobre como forzar l'amagau de comprobacions →" + +#: wpvulnerability-admin.php:860 +#: wpvulnerability-adminms.php:1133 +msgid "Save Analysis Settings" +msgstr "Alzar a configuración d'anàlisi" + +#: wpvulnerability-admin.php:920 +#: wpvulnerability-adminms.php:1193 +msgid "« Previous" +msgstr "« Anterior" + +#: wpvulnerability-admin.php:921 +#: wpvulnerability-adminms.php:1194 +msgid "Next »" +msgstr "Siguient »" + +#: wpvulnerability-admin.php:932 +#: wpvulnerability-adminms.php:1205 +msgid "Log entry not found or has been removed." +msgstr "No s'ha trobau l'entrada d'o rexistro u ha siu eliminada." + +#: wpvulnerability-admin.php:935 +#: wpvulnerability-adminms.php:1208 +msgid "Unable to load the requested log entry." +msgstr "No se puede cargar l'entrada d'o rexistro solicitada." + +#: wpvulnerability-admin.php:945 +#: wpvulnerability-adminms.php:1218 +msgid "Log Configuration" +msgstr "Configuración d'os rexistros" + +#: wpvulnerability-admin.php:950 +#: wpvulnerability-adminms.php:1223 +msgid "Total Logs" +msgstr "Total de rexistros" + +#: wpvulnerability-admin.php:954 +#: wpvulnerability-adminms.php:1227 +msgid "Retention Period" +msgstr "Periodo de retención" + +#: wpvulnerability-admin.php:959 +#: wpvulnerability-admin.php:1301 +#: wpvulnerability-admin.php:3029 +#: wpvulnerability-admin.php:3043 +#: wpvulnerability-admin.php:3475 +#: wpvulnerability-admin.php:3483 +#: wpvulnerability-adminms.php:1232 +#: wpvulnerability-adminms.php:1574 +#: wpvulnerability-adminms.php:3206 +#: wpvulnerability-adminms.php:3220 +#: wpvulnerability-adminms.php:3669 +#: wpvulnerability-adminms.php:3677 +msgid "Disabled" +msgstr "Desactivau" + +#. translators: %d: Number of days. +#. translators: %d: number of days +#: wpvulnerability-admin.php:962 +#: wpvulnerability-admin.php:984 +#: wpvulnerability-admin.php:3641 +#: wpvulnerability-adminms.php:1235 +#: wpvulnerability-adminms.php:1257 +#: wpvulnerability-adminms.php:3835 +#, php-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d día" +msgstr[1] "%d días" + +#: wpvulnerability-admin.php:975 +#: wpvulnerability-adminms.php:1248 +msgid "Log Retention Period" +msgstr "Periodo de retención d'os rexistros" + +#: wpvulnerability-admin.php:981 +#: wpvulnerability-adminms.php:1254 +msgid "None (Disabled)" +msgstr "Garra (Desactivau)" + +#: wpvulnerability-admin.php:1004 +#: wpvulnerability-adminms.php:1277 +msgid "This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant." +msgstr "Iste valor ye forzau per a constante WPVULNERABILITY_LOG_RETENTION_DAYS." + +#: wpvulnerability-admin.php:1009 +#: wpvulnerability-adminms.php:1282 +msgid "Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted." +msgstr "Tría quan tiempo debe mantener WPVulnerability os rexistros de respuesta d'a API. Os rexistros más antigos s'esborran automaticament." + +#: wpvulnerability-admin.php:1013 +#: wpvulnerability-adminms.php:1286 +msgid "Save Configuration" +msgstr "Alzar a configuración" + +#: wpvulnerability-admin.php:1018 +#: wpvulnerability-adminms.php:1291 +msgid "Log retention is currently disabled." +msgstr "A retención de rexistros ye desactivada actualment." + +#: wpvulnerability-admin.php:1018 +#: wpvulnerability-adminms.php:1291 +msgid "API responses are not being saved." +msgstr "As respuestas d'a API no se stan alzando." + +#: wpvulnerability-admin.php:1031 +#: wpvulnerability-adminms.php:1304 +msgid "Log Details" +msgstr "Detalls d'o rexistro" + +#: wpvulnerability-admin.php:1035 +#: wpvulnerability-admin.php:1104 +#: wpvulnerability-adminms.php:1308 +#: wpvulnerability-adminms.php:1377 +msgid "Date" +msgstr "Calendata" + +#: wpvulnerability-admin.php:1039 +#: wpvulnerability-admin.php:1105 +#: wpvulnerability-adminms.php:1312 +#: wpvulnerability-adminms.php:1378 +msgid "API Endpoint" +msgstr "Endpoint d'a API" + +#: wpvulnerability-admin.php:1044 +#: wpvulnerability-adminms.php:1317 +msgid "API Response" +msgstr "Respuesta d'a API" + +#: wpvulnerability-admin.php:1049 +#: wpvulnerability-adminms.php:1322 +msgid "Back to Logs" +msgstr "Tornar a os rexistros" + +#: wpvulnerability-admin.php:1058 +#: wpvulnerability-adminms.php:1331 +msgid "No logs available" +msgstr "No i ha rexistros disponibles" + +#: wpvulnerability-admin.php:1059 +#: wpvulnerability-adminms.php:1332 +msgid "API response logs will appear here once the vulnerability scanner runs." +msgstr "Os rexistros de respuesta d'a API amaneixerán aquí una vegada que s'eixecute l'escaneigador de vulnerabilidatz." + +#: wpvulnerability-admin.php:1063 +#: wpvulnerability-adminms.php:1336 +msgid "API Response Logs" +msgstr "Rexistros de respuesta d'a API" + +#: wpvulnerability-admin.php:1073 +#: wpvulnerability-adminms.php:1346 +msgid "Show:" +msgstr "Amostrar:" + +#: wpvulnerability-admin.php:1082 +#: wpvulnerability-adminms.php:1355 +msgid "Apply" +msgstr "Aplicar" + +#. translators: 1: first item, 2: last item, 3: total items +#: wpvulnerability-admin.php:1090 +#: wpvulnerability-adminms.php:1363 +#, php-format +msgid "Showing %1$s–%2$s of %3$s" +msgstr "Amostrando %1$s–%2$s de %3$s" + +#: wpvulnerability-admin.php:1106 +#: wpvulnerability-adminms.php:1379 +msgid "Actions" +msgstr "Aicions" + +#: wpvulnerability-admin.php:1133 +#: wpvulnerability-admin.php:3957 +#: wpvulnerability-adminms.php:1406 +#: wpvulnerability-adminms.php:4151 +msgid "View" +msgstr "Veyer" + +#: wpvulnerability-admin.php:1150 +#: wpvulnerability-adminms.php:1423 +msgid "Danger Zone" +msgstr "Zona de periglo" + +#: wpvulnerability-admin.php:1152 +#: wpvulnerability-adminms.php:1425 +msgid "Permanently delete all API response logs. This action cannot be undone." +msgstr "Esborrar permanentment totz os rexistros de respuesta d'a API. Ista acción no se puede desfer." + +#: wpvulnerability-admin.php:1154 +#: wpvulnerability-adminms.php:1427 +msgid "Are you sure you want to delete all logs? This action cannot be undone." +msgstr "¿Yes seguro que quiers esborrar totz os rexistros? Ista acción no se puede desfer." + +#: wpvulnerability-admin.php:1157 +#: wpvulnerability-adminms.php:1430 +msgid "Delete All Logs" +msgstr "Esborrar totz os rexistros" + +#: wpvulnerability-admin.php:1201 +#: wpvulnerability-adminms.php:1474 +msgid "Reload Data from API" +msgstr "Recargar datos dende a API" + +#: wpvulnerability-admin.php:1204 +#: wpvulnerability-adminms.php:1477 +msgid "Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information." +msgstr "Recargar toda a información d'o Nucleo, Plugins, Temas y atros components dende a API pa tener datos actualizaus. Isto limpiará a caché y obtendrá información actualizada de vulnerabilidatz." + +#: wpvulnerability-admin.php:1209 +#: wpvulnerability-adminms.php:1482 +msgid "Reload Data" +msgstr "Recargar datos" + +#: wpvulnerability-admin.php:1218 +#: wpvulnerability-adminms.php:1491 +msgid "Test Email Notifications" +msgstr "Probar notificacions per correo electrónico" + +#: wpvulnerability-admin.php:1221 +#: wpvulnerability-adminms.php:1494 +msgid "Send a test email notification with current vulnerability data to verify your email configuration is working correctly." +msgstr "Ninviar una notificación de preba per correo electrónico con os datos actuáls de vulnerabilidatz pa verificar que a tuya configuración de correo funciona correctament." + +#: wpvulnerability-admin.php:1231 +#: wpvulnerability-adminms.php:1504 +msgid "From address (configured via constant):" +msgstr "Adreza d'orixe (configurada per constante):" + +#: wpvulnerability-admin.php:1243 +#: wpvulnerability-adminms.php:1516 +msgid "From address (default):" +msgstr "Adreza d'orixe (per defecto):" + +#: wpvulnerability-admin.php:1252 +#: wpvulnerability-adminms.php:1525 +msgid "Learn how to customize the email sender address →" +msgstr "Amprene cómo personalizar a adreza d'o remitent d'o correo electrónico →" + +#: wpvulnerability-admin.php:1258 +#: wpvulnerability-adminms.php:1531 +msgid "Send Test Email" +msgstr "Ninviar correo electrónico de preba" + +#: wpvulnerability-admin.php:1267 +#: wpvulnerability-adminms.php:1540 +msgid "WP-Cron Status" +msgstr "Estau d'o WP-Cron" + +#: wpvulnerability-admin.php:1270 +#: wpvulnerability-adminms.php:1543 +msgid "View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly." +msgstr "Veyer y istiar os eventos programaus en WP-Cron. Compara os programas esperaus con os treballs cron reáls pa asegurar que as tascas automatizadas s'eixecutan correctament." + +#: wpvulnerability-admin.php:1275 +#: wpvulnerability-adminms.php:1548 +msgid "No cron data available." +msgstr "No i ha datos de cron disponibles." + +#: wpvulnerability-admin.php:1281 +#: wpvulnerability-adminms.php:1554 +msgid "Hook" +msgstr "Gancho" + +#: wpvulnerability-admin.php:1282 +#: wpvulnerability-adminms.php:1555 +msgid "Expected" +msgstr "Esperau" + +#: wpvulnerability-admin.php:1283 +#: wpvulnerability-adminms.php:1556 +msgid "Found" +msgstr "Trobau" + +#: wpvulnerability-admin.php:1284 +#: wpvulnerability-adminms.php:1557 +msgid "Next Run" +msgstr "Siguient eixecución" + +#: wpvulnerability-admin.php:1285 +#: wpvulnerability-admin.php:3236 +#: wpvulnerability-admin.php:3559 +#: wpvulnerability-adminms.php:1558 +#: wpvulnerability-adminms.php:3413 +#: wpvulnerability-adminms.php:3753 +msgid "Status" +msgstr "Estau" + +#: wpvulnerability-admin.php:1299 +#: wpvulnerability-adminms.php:1572 +msgid "Not expected" +msgstr "No esperau" + +#: wpvulnerability-admin.php:1321 +#: wpvulnerability-adminms.php:1594 +#: wpvulnerability-general.php:1871 +#: wpvulnerability-general.php:1872 +msgid "None" +msgstr "Garra" + +#: wpvulnerability-admin.php:1356 +#: wpvulnerability-adminms.php:1629 +msgid "OK" +msgstr "OK" + +#: wpvulnerability-admin.php:1366 +#: wpvulnerability-adminms.php:1639 +msgid "⚠️ Unexpected WPVulnerability Events" +msgstr "⚠️ Eventos inesperados de WPVulnerability" + +#: wpvulnerability-admin.php:1383 +#: wpvulnerability-adminms.php:1656 +msgid "No interval" +msgstr "Sin interval" + +#: wpvulnerability-admin.php:1390 +#: wpvulnerability-adminms.php:1663 +msgid "Next:" +msgstr "Siguient:" + +#: wpvulnerability-admin.php:1400 +#: wpvulnerability-adminms.php:1673 +msgid "Repair Cron Events" +msgstr "Reparar os eventos cron" + +#: wpvulnerability-admin.php:1408 +#: wpvulnerability-adminms.php:1681 +msgid "Uninstall Data" +msgstr "Datos de desinstalación" + +#: wpvulnerability-admin.php:1410 +#: wpvulnerability-adminms.php:1683 +msgid "By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall." +msgstr "Per defecto, totz os datos d'o plugin se mantienen quan se'sborraWPVulnerability. Activa a opción de debaixo solament si quiers que totas as opcions, rexistros y datos en caché s'esborren permanentment a la desinstalación." + +#: wpvulnerability-admin.php:1420 +#: wpvulnerability-adminms.php:1693 +msgid "Delete all plugin data on uninstall" +msgstr "Esborrar totz os datos d'o plugin a la desinstalación" + +#: wpvulnerability-admin.php:1423 +#: wpvulnerability-adminms.php:1696 +msgid "Default: unchecked (data preserved). Check only if you want a clean removal." +msgstr "Per defecto: no marcau (datos conservaus). Marca solament si quiers una desinstalación limpita." + +#: wpvulnerability-admin.php:1425 +#: wpvulnerability-adminms.php:1698 +msgid "Save preference" +msgstr "Alzar preferencia" + +#: wpvulnerability-admin.php:1432 +#: wpvulnerability-adminms.php:1705 +msgid "Reset WPVulnerability" +msgstr "Reestablir WPVulnerability" + +#: wpvulnerability-admin.php:1434 +#: wpvulnerability-adminms.php:1707 +msgid "Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API." +msgstr "Esborrar toda a configuración de WPVulnerability, datos en caché, rexistros y eventos programaus, dimpués restaurar os valores predeterminaus y recargar os datos dende a API." + +#: wpvulnerability-admin.php:1436 +#: wpvulnerability-adminms.php:1709 +msgid "This action cannot be undone." +msgstr "Ista acción no se puede desfer." + +#: wpvulnerability-admin.php:1438 +#: wpvulnerability-adminms.php:1711 +msgid "Are you sure you want to reset all WPVulnerability data? This action cannot be undone." +msgstr "¿Yes seguro que quiers reestablir totz os datos de WPVulnerability? Ista acción no se puede desfer." + +#: wpvulnerability-admin.php:1441 +#: wpvulnerability-adminms.php:1713 +msgid "Reset Plugin" +msgstr "Reestablir o plugin" + +#: wpvulnerability-admin.php:1468 +#: wpvulnerability-adminms.php:1740 +msgid "Vulnerability Database Statistics" +msgstr "Estadisticas d'a base de datos de vulnerabilidatz" + +#. translators: number of vulnerabilities. +#: wpvulnerability-admin.php:1510 +#: wpvulnerability-adminms.php:1782 +#, php-format +msgid "%s vulnerability" +msgid_plural "%s vulnerabilities" +msgstr[0] "%s vulnerabilidá" +msgstr[1] "%s vulnerabilidatz" + +#. translators: number of products. +#: wpvulnerability-admin.php:1520 +#: wpvulnerability-adminms.php:1792 +#, php-format +msgid "(%s product)" +msgid_plural "(%s products)" +msgstr[0] "(%s producto)" +msgstr[1] "(%s productos)" + +#: wpvulnerability-admin.php:1527 +#: wpvulnerability-adminms.php:1799 +msgid "No data" +msgstr "Sin datos" + +#. translators: date of last update. +#: wpvulnerability-admin.php:1544 +#: wpvulnerability-adminms.php:1814 +#, php-format +msgid "Database last updated: %s" +msgstr "Base de datos actualizada por zaguer vegada: %s" + +#: wpvulnerability-admin.php:1566 +#: wpvulnerability-adminms.php:1836 +msgid "Intelligence Sources" +msgstr "Fuents d'intelichencia" + +#: wpvulnerability-admin.php:1567 +#: wpvulnerability-adminms.php:1837 +msgid "Number of vulnerabilities contributed by each intelligence source." +msgstr "Numero de vulnerabilidatz aportadas per cada fuent d'intelichencia." + +#: wpvulnerability-admin.php:1571 +#: wpvulnerability-adminms.php:1841 +msgid "Source" +msgstr "Fuent" + +#: wpvulnerability-admin.php:1572 +#: wpvulnerability-admin.php:2104 +#: wpvulnerability-adminms.php:1842 +#: wpvulnerability-adminms.php:2261 +msgid "Core" +msgstr "Nucleo" + +#: wpvulnerability-admin.php:1603 +#: wpvulnerability-adminms.php:1873 +msgid "Sponsors" +msgstr "Patrocinadors" + +#: wpvulnerability-admin.php:1626 +#: wpvulnerability-adminms.php:1896 +msgid "No sponsor data available." +msgstr "No i ha datos de patrocinadors disponibles." + +#: wpvulnerability-admin.php:1633 +#: wpvulnerability-adminms.php:1903 +msgid "Contributors" +msgstr "Colaboradors" + +#: wpvulnerability-admin.php:1656 +#: wpvulnerability-adminms.php:1926 +msgid "No contributor data available." +msgstr "No i ha datos de colaboradors disponibles." + +#: wpvulnerability-admin.php:1674 +#: wpvulnerability-adminms.php:432 +msgid "You do not have sufficient permissions to access this page." +msgstr "No tiens permisos suficients pa acceder a esta pachina." + +#: wpvulnerability-admin.php:1684 +#: wpvulnerability-adminms.php:441 +msgid "WPVulnerability settings" +msgstr "Configuración de WPVulnerability" + +#: wpvulnerability-admin.php:1801 +#: wpvulnerability-adminms.php:1963 +msgid "Configure and save these settings to receive notifications." +msgstr "Configura y alza ista configuración pa recibir notificacions." + +#: wpvulnerability-admin.php:1814 +#: wpvulnerability-adminms.php:2071 +msgid "Configure and save these settings to hide vulnerabilities." +msgstr "Configura y alza ista configuración pa amagar vulnerabilidatz." + +#: wpvulnerability-admin.php:1845 +#: wpvulnerability-adminms.php:1993 +msgid "Default administrator email" +msgstr "Correo electrónico d'o administrador per defecto" + +#: wpvulnerability-admin.php:1909 +#: wpvulnerability-adminms.php:2057 +msgid "Read more if you want to force the cache time." +msgstr "Amprenete más si quiers forzar o tiempo d'a caché." + +#: wpvulnerability-admin.php:1939 +#: wpvulnerability-adminms.php:2099 +msgid "Never" +msgstr "Nunca" + +#: wpvulnerability-admin.php:1944 +#: wpvulnerability-adminms.php:2104 +msgid "Daily" +msgstr "A diario" + +#: wpvulnerability-admin.php:1949 +#: wpvulnerability-adminms.php:2109 +msgid "Weekly" +msgstr "Somanalment" + +#: wpvulnerability-admin.php:1953 +#: wpvulnerability-adminms.php:2113 +msgid "Day" +msgstr "Día" + +#: wpvulnerability-admin.php:1966 +#: wpvulnerability-adminms.php:2126 +msgid "Hour" +msgstr "Hora" + +#: wpvulnerability-admin.php:1968 +#: wpvulnerability-adminms.php:2128 +msgid "Minute" +msgstr "Minuto" + +#: wpvulnerability-admin.php:2166 +#: wpvulnerability-adminms.php:2323 +msgid "Read more about how to force the deactivation of an item." +msgstr "Amprenete más sobre cómo forzar a desactivación d'un elemento." + +#: wpvulnerability-admin.php:2292 +#: wpvulnerability-adminms.php:2870 +msgid "Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com" +msgstr "URL d'o webhook de Slack invalida. Tiene que estar una URL HTTPS valida de hooks.slack.com" + +#: wpvulnerability-admin.php:2315 +#: wpvulnerability-adminms.php:2893 +msgid "Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com" +msgstr "URL d'o webhook de Microsoft Teams invalida. Tiene que estar una URL HTTPS valida de office.com, office365.com u api.hooks.microsoft.com" + +#: wpvulnerability-admin.php:2338 +#: wpvulnerability-adminms.php:2916 +msgid "Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com" +msgstr "URL d'o webhook de Discord invalida. Tiene que estar una URL HTTPS valida de discord.com u discordapp.com" + +#: wpvulnerability-admin.php:2357 +#: wpvulnerability-adminms.php:2935 +msgid "Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "Formato d'o token d'o bot de Telegram invalido. Tiene que ser como: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:2493 +#: wpvulnerability-adminms.php:2400 +msgid "All Clear" +msgstr "Tot en orden" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2503 +#: wpvulnerability-adminms.php:2410 +#, php-format +msgid "%d Critical Issue Found" +msgid_plural "%d Critical Issues Found" +msgstr[0] "Trobau %d problema cricial" +msgstr[1] "Trobaus %d problemas cricials" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2508 +#: wpvulnerability-adminms.php:2415 +#, php-format +msgid "%d Issue Found" +msgid_plural "%d Issues Found" +msgstr[0] "Trobau %d problema" +msgstr[1] "Trobaus %d problemas" + +#: wpvulnerability-admin.php:2515 +#: wpvulnerability-adminms.php:2422 +msgid "Never checked" +msgstr "Nunca comprobau" + +#. translators: %d: number of minutes +#: wpvulnerability-admin.php:2523 +#: wpvulnerability-adminms.php:2430 +#, php-format +msgid "%d minute ago" +msgid_plural "%d minutes ago" +msgstr[0] "fa %d minuto" +msgstr[1] "fa %d minutos" + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:2527 +#: wpvulnerability-adminms.php:2434 +#, php-format +msgid "%d hour ago" +msgid_plural "%d hours ago" +msgstr[0] "fa %d hora" +msgstr[1] "fa %d horas" + +#. translators: %s: time since last check +#: wpvulnerability-admin.php:2539 +#: wpvulnerability-adminms.php:2446 +#, php-format +msgid "Last checked: %s" +msgstr "Zaguer comprobau: %s" + +#: wpvulnerability-admin.php:2540 +#: wpvulnerability-adminms.php:2447 +msgid "Refresh Now" +msgstr "Refrescar agora" + +#: wpvulnerability-admin.php:2547 +#: wpvulnerability-adminms.php:2454 +msgid "No vulnerabilities detected" +msgstr "No s'han detectau vulnerabilidatz" + +#: wpvulnerability-admin.php:2548 +#: wpvulnerability-adminms.php:2455 +msgid "Your site is up to date and secure" +msgstr "O tuyo puesto ye actualizado y seguro" + +#: wpvulnerability-admin.php:2616 +#: wpvulnerability-adminms.php:2523 +msgid "Server Software" +msgstr "Software d'o servidor" + +#: wpvulnerability-admin.php:2829 +#: wpvulnerability-adminms.php:2736 +msgid "Site Health" +msgstr "Salut d'o puesto" + +#: wpvulnerability-admin.php:2831 +#: wpvulnerability-adminms.php:2738 +#: wpvulnerability-run.php:33 +msgid "Settings" +msgstr "Configuración" + +#: wpvulnerability-admin.php:2846 +#: wpvulnerability-adminms.php:2754 +msgid "WPVulnerability Status" +msgstr "Estau de WPVulnerability" + +#: wpvulnerability-admin.php:2878 +#: wpvulnerability-adminms.php:3052 +msgid "Receive vulnerability notifications" +msgstr "Recibir notificacions de vulnerabilidatz" + +#: wpvulnerability-admin.php:2886 +#: wpvulnerability-adminms.php:3060 +msgid "Cache expiration time" +msgstr "Tiempo d'espiración d'a caché" + +#: wpvulnerability-admin.php:2895 +#: wpvulnerability-adminms.php:3069 +msgid "How often you want to receive notifications" +msgstr "Cuan a seguido quiers recibir notificacions" + +#: wpvulnerability-admin.php:2904 +#: wpvulnerability-adminms.php:3078 +msgid "Where do you want to receive notifications?" +msgstr "¿An quiers recibir as notificacions?" + +#: wpvulnerability-admin.php:2913 +#: wpvulnerability-adminms.php:3087 +msgid "Email addresses to notify (separated by commas)" +msgstr "Adrezas de correo electrónico a notificar (separadas por comas)" + +#: wpvulnerability-admin.php:2922 +#: wpvulnerability-adminms.php:3096 +msgid "Slack webhook URL" +msgstr "URL d'o webhook de Slack" + +#: wpvulnerability-admin.php:2931 +#: wpvulnerability-adminms.php:3105 +msgid "Teams webhook URL" +msgstr "URL d'o webhook de Teams" + +#: wpvulnerability-admin.php:2950 +#: wpvulnerability-adminms.php:3126 +msgid "Vulnerabilities to hide" +msgstr "Vulnerabilidatz pa amagar" + +#: wpvulnerability-admin.php:2958 +#: wpvulnerability-adminms.php:3134 +msgid "What do you want to hide?" +msgstr "¿Qué quiers amagar?" + +#: wpvulnerability-admin.php:3008 +#: wpvulnerability-adminms.php:3185 +msgid "Standard (Hybrid Detection)" +msgstr "Estándar (detección hìbrida)" + +#: wpvulnerability-admin.php:3009 +#: wpvulnerability-adminms.php:3186 +msgid "Strict (Extensions Only)" +msgstr "Estricto (solament extensiones)" + +#: wpvulnerability-admin.php:3010 +#: wpvulnerability-adminms.php:3187 +msgid "Disabled (No Detection)" +msgstr "Desactivau (sin detección)" + +#: wpvulnerability-admin.php:3016 +#: wpvulnerability-adminms.php:3193 +msgid "Security Status" +msgstr "Estau de seguranza" + +#: wpvulnerability-admin.php:3020 +#: wpvulnerability-adminms.php:3197 +msgid "Security Mode" +msgstr "Modo de seguranza" + +#: wpvulnerability-admin.php:3025 +#: wpvulnerability-adminms.php:3202 +msgid "Shell Execution" +msgstr "Eixecución d'o shell" + +#: wpvulnerability-admin.php:3027 +#: wpvulnerability-admin.php:3475 +#: wpvulnerability-admin.php:3483 +#: wpvulnerability-adminms.php:3204 +#: wpvulnerability-adminms.php:3669 +#: wpvulnerability-adminms.php:3677 +msgid "Enabled" +msgstr "Activau" + +#: wpvulnerability-admin.php:3034 +#: wpvulnerability-adminms.php:3211 +msgid "Audit Logging" +msgstr "Rexistro d'auditoria" + +#. translators: %d: number of days +#: wpvulnerability-admin.php:3039 +#: wpvulnerability-adminms.php:3216 +#, php-format +msgid "Enabled (%d days)" +msgstr "Activau (%d días)" + +#: wpvulnerability-admin.php:3048 +#: wpvulnerability-adminms.php:3225 +msgid "Total Log Entries" +msgstr "Total d'entradas en o rexistro" + +#: wpvulnerability-admin.php:3055 +#: wpvulnerability-adminms.php:3232 +msgid "Last Shell Execution" +msgstr "Zaguer eixecución d'o shell" + +#. translators: %s: time ago +#: wpvulnerability-admin.php:3061 +#: wpvulnerability-admin.php:3266 +#: wpvulnerability-adminms.php:3238 +#: wpvulnerability-adminms.php:3441 +#, php-format +msgid "%s ago" +msgstr "fa %s" + +#: wpvulnerability-admin.php:3073 +#: wpvulnerability-adminms.php:3250 +msgid "Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST." +msgstr "Configura os axustes de seguranza per meyo d'as constantes de wp-config.php: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST." + +#. translators: %s: URL to security documentation +#: wpvulnerability-admin.php:3079 +#: wpvulnerability-adminms.php:3256 +#, php-format +msgid "See security configuration documentation for details." +msgstr "Mira a documentación d'a configuración de seguranza pa obtener más detalles." + +#: wpvulnerability-admin.php:3103 +#: wpvulnerability-adminms.php:3280 +msgid "Memcached" +msgstr "Memcached" + +#: wpvulnerability-admin.php:3131 +#: wpvulnerability-adminms.php:3308 +msgid "Imagick Extension" +msgstr "Extensión Imagick" + +#: wpvulnerability-admin.php:3132 +#: wpvulnerability-adminms.php:3309 +msgid "Redis Extension" +msgstr "Extensión Redis" + +#: wpvulnerability-admin.php:3133 +#: wpvulnerability-adminms.php:3310 +msgid "Memcached Extension" +msgstr "Extensión Memcached" + +#: wpvulnerability-admin.php:3134 +#: wpvulnerability-adminms.php:3311 +msgid "Memcache Extension" +msgstr "Extensión Memcache" + +#: wpvulnerability-admin.php:3135 +#: wpvulnerability-adminms.php:3312 +msgid "SQLite3 Extension" +msgstr "Extensión SQLite3" + +#: wpvulnerability-admin.php:3136 +#: wpvulnerability-adminms.php:3313 +msgid "PDO SQLite" +msgstr "PDO SQLite" + +#: wpvulnerability-admin.php:3137 +#: wpvulnerability-adminms.php:3314 +msgid "Shell Command" +msgstr "Comando d'o shell" + +#: wpvulnerability-admin.php:3138 +#: wpvulnerability-adminms.php:3315 +msgid "Binary Check" +msgstr "Comprobación binaria" + +#: wpvulnerability-admin.php:3139 +#: wpvulnerability-adminms.php:3316 +msgid "Not Detected" +msgstr "No detectau" + +#: wpvulnerability-admin.php:3143 +#: wpvulnerability-adminms.php:3320 +msgid "Software Detection Methods" +msgstr "Metodos de detección d'o software" + +#: wpvulnerability-admin.php:3144 +#: wpvulnerability-adminms.php:3321 +msgid "Shows which detection method was used for each software component and the reliability score." +msgstr "Amuestra qué metodo de detección s'empleó pa cada component de software y a puntuación de fiabilidá." + +#: wpvulnerability-admin.php:3149 +#: wpvulnerability-admin.php:3234 +#: wpvulnerability-admin.php:3558 +#: wpvulnerability-adminms.php:3326 +#: wpvulnerability-adminms.php:3411 +#: wpvulnerability-adminms.php:3752 +msgid "Component" +msgstr "Component" + +#: wpvulnerability-admin.php:3150 +#: wpvulnerability-adminms.php:3327 +msgid "Version" +msgstr "Versión" + +#: wpvulnerability-admin.php:3151 +#: wpvulnerability-adminms.php:3328 +msgid "Detection Method" +msgstr "Metodo de detección" + +#: wpvulnerability-admin.php:3152 +#: wpvulnerability-adminms.php:3329 +msgid "Reliability" +msgstr "Fiabilidá" + +#: wpvulnerability-admin.php:3164 +#: wpvulnerability-adminms.php:3341 +msgid "Not detected" +msgstr "No detectau" + +#: wpvulnerability-admin.php:3220 +#: wpvulnerability-adminms.php:3397 +msgid "Shell Execution Audit Logs" +msgstr "Rexistros d'auditoria d'eixecución d'o shell" + +#: wpvulnerability-admin.php:3221 +#: wpvulnerability-adminms.php:3398 +msgid "Complete audit trail of shell command executions for security monitoring." +msgstr "Rastro completo d'auditoria d'as eixecucions de comandos d'o shell pa o monitoreo de seguranza." + +#: wpvulnerability-admin.php:3226 +#: wpvulnerability-adminms.php:3403 +msgid "No shell execution logs found." +msgstr "No s'han trobau rexistros d'eixecución d'o shell." + +#: wpvulnerability-admin.php:3227 +#: wpvulnerability-adminms.php:3404 +msgid "Logs will appear here when shell commands are executed for software detection." +msgstr "Os rexistros amaneixerán aquí quan s'eixecuten comandos d'o shell pa la detección de software." + +#: wpvulnerability-admin.php:3233 +#: wpvulnerability-adminms.php:3410 +msgid "Time" +msgstr "Tiempo" + +#: wpvulnerability-admin.php:3235 +#: wpvulnerability-adminms.php:3412 +msgid "Command" +msgstr "Comando" + +#: wpvulnerability-admin.php:3237 +#: wpvulnerability-adminms.php:3414 +msgid "User" +msgstr "Usuario" + +#: wpvulnerability-admin.php:3238 +#: wpvulnerability-adminms.php:3415 +msgid "Output" +msgstr "Salida" + +#. translators: %d: number of logs shown +#: wpvulnerability-admin.php:3302 +#: wpvulnerability-adminms.php:3477 +#, php-format +msgid "Showing the %d most recent log entries." +msgstr "Amostrando as %d entradas d'o rexistro más recients." + +#: wpvulnerability-admin.php:3320 +#: wpvulnerability-adminms.php:3565 +msgid "Invalid nonce." +msgstr "Nonce invalido." + +#: wpvulnerability-admin.php:3325 +#: wpvulnerability-adminms.php:3570 +msgid "Insufficient permissions." +msgstr "Permisos insuficients." + +#: wpvulnerability-admin.php:3331 +#: wpvulnerability-adminms.php:3576 +msgid "No component specified." +msgstr "No s'ha especificau garra component." + +#: wpvulnerability-admin.php:3366 +#: wpvulnerability-adminms.php:3524 +msgid "Debug Information" +msgstr "Información de depuración" + +#: wpvulnerability-admin.php:3368 +#: wpvulnerability-adminms.php:3526 +msgid "This tab is only visible when WP_DEBUG is enabled. Use with caution." +msgstr "Ista pestanya solament ye visible quan WP_DEBUG ye activau. Emplegar con precaución." + +#: wpvulnerability-admin.php:3429 +#: wpvulnerability-adminms.php:3623 +msgid "System Information" +msgstr "Información d'o sistema" + +#: wpvulnerability-admin.php:3433 +#: wpvulnerability-adminms.php:3627 +msgid "WordPress Version" +msgstr "Versión de WordPress" + +#: wpvulnerability-admin.php:3437 +#: wpvulnerability-adminms.php:3631 +msgid "Multisite" +msgstr "Multisite" + +#: wpvulnerability-admin.php:3438 +#: wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 +#: wpvulnerability-adminms.php:3778 +msgid "Yes" +msgstr "Sí" + +#: wpvulnerability-admin.php:3438 +#: wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 +#: wpvulnerability-adminms.php:3778 +msgid "No" +msgstr "No" + +#: wpvulnerability-admin.php:3441 +#: wpvulnerability-adminms.php:3635 +msgid "Language" +msgstr "Luenga" + +#: wpvulnerability-admin.php:3445 +#: wpvulnerability-adminms.php:3639 +msgid "PHP Version" +msgstr "Versión de PHP" + +#: wpvulnerability-admin.php:3449 +#: wpvulnerability-adminms.php:3643 +msgid "PHP Extensions" +msgstr "Extensiones de PHP" + +#: wpvulnerability-admin.php:3460 +#: wpvulnerability-adminms.php:3654 +msgid "PHP Memory Limit" +msgstr "Límite de memoria de PHP" + +#: wpvulnerability-admin.php:3464 +#: wpvulnerability-adminms.php:3658 +msgid "Database" +msgstr "Base de datos" + +#: wpvulnerability-admin.php:3468 +#: wpvulnerability-adminms.php:3662 +msgid "Web Server" +msgstr "Servidor web" + +#: wpvulnerability-admin.php:3472 +#: wpvulnerability-adminms.php:3666 +msgid "WP_DEBUG" +msgstr "WP_DEBUG" + +#: wpvulnerability-admin.php:3480 +#: wpvulnerability-adminms.php:3674 +msgid "WP_DEBUG_LOG" +msgstr "WP_DEBUG_LOG" + +#: wpvulnerability-admin.php:3490 +#: wpvulnerability-adminms.php:3684 +msgid "Path:" +msgstr "Ruta:" + +#. translators: %s: file size +#: wpvulnerability-admin.php:3499 +#: wpvulnerability-adminms.php:3698 +#, php-format +msgid "Size: %s" +msgstr "Grandaria: %s" + +#: wpvulnerability-admin.php:3510 +#: wpvulnerability-adminms.php:3704 +msgid "View Log File" +msgstr "Veyer o fichero d'o rexistro" + +#: wpvulnerability-admin.php:3516 +#: wpvulnerability-adminms.php:3710 +msgid "Log file is not web-accessible (outside wp-content)" +msgstr "O fichero d'o rexistro no ye accesible per web (fuera de wp-content)" + +#: wpvulnerability-admin.php:3522 +#: wpvulnerability-adminms.php:3716 +msgid "Log file does not exist yet" +msgstr "O fichero d'o rexistro no existe encara" + +#: wpvulnerability-admin.php:3530 +#: wpvulnerability-adminms.php:3724 +msgid "Plugin Version" +msgstr "Versión d'o plugin" + +#: wpvulnerability-admin.php:3554 +#: wpvulnerability-adminms.php:3748 +msgid "Component Detection" +msgstr "Detección de components" + +#: wpvulnerability-admin.php:3560 +#: wpvulnerability-adminms.php:3754 +msgid "Version Detected" +msgstr "Versión detectada" + +#: wpvulnerability-admin.php:3561 +#: wpvulnerability-adminms.php:3755 +msgid "Analyzed" +msgstr "Analizau" + +#: wpvulnerability-admin.php:3562 +#: wpvulnerability-adminms.php:3756 +msgid "Cache Status" +msgstr "Estau d'a caché" + +#: wpvulnerability-admin.php:3622 +#: wpvulnerability-adminms.php:3816 +msgid "Configuration Summary" +msgstr "Resumen d'a configuración" + +#: wpvulnerability-admin.php:3626 +#: wpvulnerability-adminms.php:3820 +msgid "Cache Duration" +msgstr "Duración d'a caché" + +#: wpvulnerability-admin.php:3636 +#: wpvulnerability-adminms.php:3830 +msgid "Log Retention" +msgstr "Retención de rexistros" + +#: wpvulnerability-admin.php:3646 +#: wpvulnerability-adminms.php:3840 +msgid "Components Analyzed" +msgstr "Components analizaus" + +#: wpvulnerability-admin.php:3661 +#: wpvulnerability-adminms.php:3855 +msgid "Notification Email" +msgstr "Correo electrónico de notificación" + +#: wpvulnerability-admin.php:3682 +#: wpvulnerability-adminms.php:3876 +msgid "Slack Webhook" +msgstr "Webhook de Slack" + +#: wpvulnerability-admin.php:3692 +#: wpvulnerability-admin.php:3712 +#: wpvulnerability-admin.php:3732 +#: wpvulnerability-admin.php:3752 +#: wpvulnerability-adminms.php:3886 +#: wpvulnerability-adminms.php:3906 +#: wpvulnerability-adminms.php:3926 +#: wpvulnerability-adminms.php:3946 +msgid "Configured & Enabled" +msgstr "Configurau y activau" + +#: wpvulnerability-admin.php:3694 +#: wpvulnerability-admin.php:3714 +#: wpvulnerability-admin.php:3734 +#: wpvulnerability-admin.php:3754 +#: wpvulnerability-adminms.php:3888 +#: wpvulnerability-adminms.php:3908 +#: wpvulnerability-adminms.php:3928 +#: wpvulnerability-adminms.php:3948 +msgid "Configured (Disabled)" +msgstr "Configurau (desactivau)" + +#: wpvulnerability-admin.php:3696 +#: wpvulnerability-admin.php:3716 +#: wpvulnerability-admin.php:3736 +#: wpvulnerability-admin.php:3756 +#: wpvulnerability-adminms.php:3890 +#: wpvulnerability-adminms.php:3910 +#: wpvulnerability-adminms.php:3930 +#: wpvulnerability-adminms.php:3950 +msgid "Not configured" +msgstr "No configurau" + +#: wpvulnerability-admin.php:3703 +#: wpvulnerability-adminms.php:3897 +msgid "Teams Webhook" +msgstr "Webhook de Teams" + +#: wpvulnerability-admin.php:3723 +#: wpvulnerability-adminms.php:3917 +msgid "Discord Webhook" +msgstr "Webhook de Discord" + +#: wpvulnerability-admin.php:3743 +#: wpvulnerability-adminms.php:3937 +msgid "Telegram Bot" +msgstr "Bot de Telegram" + +#: wpvulnerability-admin.php:3788 +#: wpvulnerability-adminms.php:3982 +msgid "Cron Status" +msgstr "Estau d'o cron" + +#: wpvulnerability-admin.php:3792 +#: wpvulnerability-adminms.php:3986 +msgid "Update Database" +msgstr "Actualizar a base de datos" + +#. translators: %s: date and time +#: wpvulnerability-admin.php:3797 +#: wpvulnerability-admin.php:3810 +#: wpvulnerability-adminms.php:3991 +#: wpvulnerability-adminms.php:4004 +#, php-format +msgid "Next run: %s" +msgstr "Siguient eixecución: %s" + +#: wpvulnerability-admin.php:3800 +#: wpvulnerability-admin.php:3813 +#: wpvulnerability-adminms.php:3994 +#: wpvulnerability-adminms.php:4007 +msgid "Not scheduled" +msgstr "No programau" + +#: wpvulnerability-admin.php:3805 +#: wpvulnerability-adminms.php:3999 +msgid "Send Notification" +msgstr "Ninviar notificación" + +#: wpvulnerability-admin.php:3826 +#: wpvulnerability-adminms.php:4020 +msgid "Run Update Now" +msgstr "Eixecutar l'actualización agora" + +#: wpvulnerability-admin.php:3834 +#: wpvulnerability-adminms.php:4028 +msgid "Run Notification Now" +msgstr "Eixecutar notificación agora" + +#: wpvulnerability-admin.php:3840 +#: wpvulnerability-adminms.php:4034 +msgid "You do not have permission to run these actions." +msgstr "No tiens permiso pa eixecutar istos aicions." + +#: wpvulnerability-admin.php:3859 +#: wpvulnerability-adminms.php:4053 +msgid "API Testing" +msgstr "Preba d'a API" + +#: wpvulnerability-admin.php:3862 +#: wpvulnerability-adminms.php:4056 +msgid "Test API connectivity for each component. Click a button to send a test request." +msgstr "Preba a conectividá d'a API pa cada component. Fé click en un botón pa ninviar una solicitud de preba." + +#. translators: %s: component name +#: wpvulnerability-admin.php:3869 +#: wpvulnerability-adminms.php:4063 +#, php-format +msgid "Test %s" +msgstr "Probar %s" + +#: wpvulnerability-admin.php:3884 +#: wpvulnerability-adminms.php:4078 +msgid "Testing..." +msgstr "Probando..." + +#: wpvulnerability-admin.php:3900 +#: wpvulnerability-adminms.php:4094 +msgid "HTTP Code:" +msgstr "Código HTTP:" + +#: wpvulnerability-admin.php:3901 +#: wpvulnerability-adminms.php:4095 +msgid "Response Time:" +msgstr "Tiempo de respuesta:" + +#: wpvulnerability-admin.php:3903 +#: wpvulnerability-adminms.php:4097 +msgid "Response Preview" +msgstr "Previsualización d'a respuesta" + +#: wpvulnerability-admin.php:3910 +#: wpvulnerability-admin.php:3914 +#: wpvulnerability-adminms.php:4104 +#: wpvulnerability-adminms.php:4108 +msgid "Test" +msgstr "Preba" + +#: wpvulnerability-admin.php:3913 +#: wpvulnerability-adminms.php:4107 +msgid "Error:" +msgstr "Error:" + +#: wpvulnerability-admin.php:3913 +#: wpvulnerability-adminms.php:4107 +msgid "AJAX request failed." +msgstr "Ha fallau a solicitut AJAX." + +#: wpvulnerability-admin.php:3922 +#: wpvulnerability-adminms.php:4116 +msgid "You do not have permission to test API connectivity." +msgstr "No tiens permiso pa probar a conectividá d'a API." + +#: wpvulnerability-admin.php:3943 +#: wpvulnerability-adminms.php:4137 +msgid "Database Options Viewer" +msgstr "Visor d'opcions d'a base de datos" + +#: wpvulnerability-admin.php:3944 +#: wpvulnerability-adminms.php:4138 +msgid "View the raw data stored in WordPress options." +msgstr "Veyer os datos brutos alzaus en as opcions de WordPress." + +#: wpvulnerability-admin.php:3950 +#: wpvulnerability-adminms.php:4144 +msgid "Select an option..." +msgstr "Selecciona una opción..." + +#: wpvulnerability-admin.php:3969 +#: wpvulnerability-adminms.php:4163 +msgid "Option not found or empty." +msgstr "Opción no trobada u vacía." + +#: wpvulnerability-admin.php:3987 +#: wpvulnerability-adminms.php:4182 +msgid "Quick Actions" +msgstr "Aicions rapidas" + +#: wpvulnerability-admin.php:3988 +#: wpvulnerability-adminms.php:4183 +msgid "Perform debugging actions. Use with caution." +msgstr "Eixecutar aicions de depuración. Emplegar con precaución." + +#: wpvulnerability-admin.php:3992 +#: wpvulnerability-adminms.php:4187 +msgid "Are you sure you want to clear all caches?" +msgstr "¿Yes seguro que quiers limpiar todas as cachés?" + +#: wpvulnerability-admin.php:3996 +#: wpvulnerability-adminms.php:4191 +msgid "Clear All Caches" +msgstr "Limpiar todas as cachés" + +#: wpvulnerability-admin.php:4000 +#: wpvulnerability-adminms.php:4195 +msgid "Are you sure you want to reset signatures?" +msgstr "¿Yes seguro que quiers reestablir as signaturas?" + +#: wpvulnerability-admin.php:4004 +#: wpvulnerability-adminms.php:4199 +msgid "Reset Signatures" +msgstr "Reestablir as signaturas" + +#: wpvulnerability-admin.php:4012 +#: wpvulnerability-adminms.php:4207 +msgid "Export Debug Info" +msgstr "Exportar información de depuración" + +#: wpvulnerability-admin.php:4018 +#: wpvulnerability-adminms.php:4213 +msgid "You do not have permission to perform these actions." +msgstr "No tiens permiso pa realizar istos aicions." + +#: wpvulnerability-adminms.php:101 +#: wpvulnerability-adminms.php:199 +msgid "Settings saved." +msgstr "Configuración alzada." + +#: wpvulnerability-adminms.php:277 +msgid "WPVulnerability cron events have been repaired across the network." +msgstr "Os eventos cron de WPVulnerability han siu reparaus en toda a rete." + +#: wpvulnerability-adminms.php:3512 +msgid "You do not have permission to access this page." +msgstr "No tiens permiso pa acceder a esta pachina." + +#. translators: 1: core version +#: wpvulnerability-core.php:33 +#, php-format +msgid "WordPress %1$s has a known vulnerability that may be affecting your installed version." +msgstr "WordPress %1$s tiene una vulnerabilidá conoixida que puede estar afectando a tuya versión instalada." + +#: wpvulnerability-core.php:115 +#: wpvulnerability-plugins.php:207 +#: wpvulnerability-process.php:335 +#: wpvulnerability-process.php:443 +#: wpvulnerability-process.php:529 +#: wpvulnerability-themes.php:173 +#: wpvulnerability-themes.php:469 +msgid "Actively exploited" +msgstr "Explotau activament" + +#: wpvulnerability-core.php:122 +#: wpvulnerability-plugins.php:214 +#: wpvulnerability-process.php:342 +#: wpvulnerability-process.php:450 +#: wpvulnerability-themes.php:180 +#: wpvulnerability-themes.php:476 +msgid "Public exploit" +msgstr "Exploit público" + +#: wpvulnerability-core.php:125 +#: wpvulnerability-plugins.php:217 +#: wpvulnerability-process.php:345 +#: wpvulnerability-process.php:453 +#: wpvulnerability-themes.php:183 +#: wpvulnerability-themes.php:479 +msgid "Automatable" +msgstr "Automatizable" + +#: wpvulnerability-core.php:139 +#: wpvulnerability-plugins.php:245 +#: wpvulnerability-process.php:371 +#: wpvulnerability-process.php:469 +#: wpvulnerability-process.php:544 +#: wpvulnerability-themes.php:211 +#: wpvulnerability-themes.php:503 +msgid "References:" +msgstr "Referencies:" + +#: wpvulnerability-debug.php:399 +msgid "Invalid component specified." +msgstr "Component especificau invalido." + +#: wpvulnerability-debug.php:423 +msgid "Version not detected for this component." +msgstr "No s'ha detectau a versión pa este component." + +#: wpvulnerability-debug.php:453 +msgid "API request successful." +msgstr "Solicitut a l'API realizata con ixito." + +#. translators: %d: HTTP status code +#: wpvulnerability-debug.php:469 +#, php-format +msgid "API returned HTTP code %d." +msgstr "A API ha tornou o código HTTP %d." + +#: wpvulnerability-general.php:355 +msgid "WPVulnerability Logs" +msgstr "Rexistros de WPVulnerability" + +#: wpvulnerability-general.php:356 +msgid "WPVulnerability Log" +msgstr "Rexistro de WPVulnerability" + +#: wpvulnerability-general.php:1873 +#: wpvulnerability-general.php:1874 +msgid "Low" +msgstr "Baixo" + +#: wpvulnerability-general.php:1875 +#: wpvulnerability-general.php:1876 +msgid "Medium" +msgstr "Meyo" + +#: wpvulnerability-general.php:1877 +#: wpvulnerability-general.php:1878 +msgid "High" +msgstr "Alto" + +#: wpvulnerability-general.php:1879 +#: wpvulnerability-general.php:1880 +msgid "Critical" +msgstr "Cricial" + +#: wpvulnerability-general.php:2684 +msgid "WPVulnerability Shell Logs" +msgstr "Rexistros d'o shell de WPVulnerability" + +#: wpvulnerability-general.php:2685 +msgid "WPVulnerability Shell Log" +msgstr "Rexistro d'o shell de WPVulnerability" + +#: wpvulnerability-notifications.php:30 +msgid "Every week" +msgstr "Cada semana" + +#: wpvulnerability-notifications.php:57 +msgid "Every day" +msgstr "Cada día" + +#: wpvulnerability-notifications.php:84 +msgid "Invalid request." +msgstr "Solicitut invalida." + +#: wpvulnerability-notifications.php:104 +msgid "You have unsubscribed from WPVulnerability notifications." +msgstr "T'has desuscrito d'as notificacions de WPVulnerability." + +#. translators: %1$s the website of Database, %2$s database site name. +#: wpvulnerability-notifications.php:289 +#, php-format +msgid "Learn more about the WordPress Vulnerability Database API at %2$s" +msgstr "Amprene más sobre a API de la Base de Datos de Vulnerabilidatz de WordPress en %2$s" + +#. translators: %1$s unsubscribe URL. +#: wpvulnerability-notifications.php:300 +#, php-format +msgid "Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings." +msgstr "¿Quiers deixar de recibir istos avisos? Desuscribet-te u cambia a frecuencia d'o correo electrónico a Nunca en a configuración de WPVulnerability." + +#: wpvulnerability-notifications.php:595 +msgid "No vulnerabilities found" +msgstr "No s'han trobau vulnerabilidatz" + +#: wpvulnerability-notifications.php:596 +msgid "This is likely a test. The site does not have vulnerabilities." +msgstr "Isto ye probablement una preba. O puesto no tiene vulnerabilidatz." + +#: wpvulnerability-notifications.php:601 +msgid "Core vulnerabilities" +msgstr "Vulnerabilidatz d'o nucleo" + +#: wpvulnerability-notifications.php:607 +msgid "Plugins vulnerabilities" +msgstr "Vulnerabilidatz de plugins" + +#: wpvulnerability-notifications.php:613 +msgid "Themes vulnerabilities" +msgstr "Vulnerabilidatz de temas" + +#: wpvulnerability-notifications.php:619 +msgid "PHP vulnerabilities" +msgstr "Vulnerabilidatz de PHP" + +#: wpvulnerability-notifications.php:625 +msgid "Apache HTTPD vulnerabilities" +msgstr "Vulnerabilidatz de Apache HTTPD" + +#: wpvulnerability-notifications.php:631 +msgid "Nginx vulnerabilities" +msgstr "Vulnerabilidatz de Nginx" + +#: wpvulnerability-notifications.php:637 +msgid "MariaDB vulnerabilities" +msgstr "Vulnerabilidatz de MariaDB" + +#: wpvulnerability-notifications.php:643 +msgid "MySQL vulnerabilities" +msgstr "Vulnerabilidatz de MySQL" + +#: wpvulnerability-notifications.php:649 +msgid "ImageMagick vulnerabilities" +msgstr "Vulnerabilidatz de ImageMagick" + +#: wpvulnerability-notifications.php:655 +msgid "curl vulnerabilities" +msgstr "Vulnerabilidatz de curl" + +#: wpvulnerability-notifications.php:661 +msgid "memcached vulnerabilities" +msgstr "Vulnerabilidatz de memcached" + +#: wpvulnerability-notifications.php:667 +msgid "Redis vulnerabilities" +msgstr "Vulnerabilidatz de Redis" + +#: wpvulnerability-notifications.php:673 +msgid "SQLite vulnerabilities" +msgstr "Vulnerabilidatz de SQLite" + +#. translators: Site name. +#: wpvulnerability-notifications.php:696 +#, php-format +msgid "Vulnerability found: %s" +msgstr "Vulnerabilidá trobada: %s" + +#: wpvulnerability-notifications.php:700 +msgid "Vulnerability found" +msgstr "Vulnerabilidá trobada" + +#. translators: 1: Plugin name +#. translators: 1: theme name +#: wpvulnerability-plugins.php:116 +#: wpvulnerability-themes.php:82 +#, php-format +msgid "%1$s has a known vulnerability that may be affecting your installed version." +msgstr "%1$s tiene una vulnerabilidá conoixida que puede estar afectando a tuya versión instalada." + +#: wpvulnerability-plugins.php:230 +#: wpvulnerability-process.php:358 +msgid "This plugin is closed. Please replace it with another." +msgstr "Iste plugin ye zarrato. Por favor, remplaza-lo por atro." + +#: wpvulnerability-plugins.php:233 +#: wpvulnerability-process.php:361 +msgid "This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates." +msgstr "Ista vulnerabilidá pareix no estar parchiada. Mantient-te pendent d'as actualizacions proximas d'o plugin." + +#: wpvulnerability-plugins.php:570 +msgid "It hasn't been updated in over a year." +msgstr "No s'ha actualizado en más d'un anyo." + +#: wpvulnerability-plugins.php:576 +msgid "It may no longer be available (closed?)." +msgstr "Puede que ya no siga disponible (¿zarrato?)." + +#: wpvulnerability-plugins.php:614 +#: wpvulnerability-plugins.php:621 +msgid "Last updated on" +msgstr "Zaguer actualización o" + +#. translators: the number of vulnerabilities. +#: wpvulnerability-plugins.php:764 +#: wpvulnerability-themes.php:704 +#, php-format +msgid "Vulnerabilities (%d)" +msgstr "Vulnerabilidatz (%d)" + +#. translators: %s: software name. +#: wpvulnerability-process.php:601 +#, php-format +msgid "%s running" +msgstr "%s en marcha" + +#: wpvulnerability-process.php:611 +#: wpvulnerability-process.php:792 +msgid "End of Life" +msgstr "Fin de vida" + +#: wpvulnerability-process.php:613 +#: wpvulnerability-process.php:618 +msgid "End of life:" +msgstr "Fin de vida:" + +#: wpvulnerability-process.php:616 +msgid "Supported" +msgstr "Con soporte" + +#: wpvulnerability-process.php:652 +msgid "Plugin" +msgstr "Plugin" + +#: wpvulnerability-process.php:721 +msgid "Theme" +msgstr "Tema" + +#. translators: %s: end-of-life date +#: wpvulnerability-process.php:790 +#, php-format +msgid "End of life: %s" +msgstr "Fin de vida: %s" + +#: wpvulnerability-process.php:795 +msgid "EOL" +msgstr "EOL" + +#: wpvulnerability-run.php:30 +msgid "Network Settings" +msgstr "Configuración de rete" + +#: wpvulnerability-run.php:731 +#: wpvulnerability-run.php:781 +#: wpvulnerability-run.php:791 +#: wpvulnerability-run.php:836 +msgid "Vulnerabilities" +msgstr "Vulnerabilidatz" + +#: wpvulnerability-schedule.php:30 +msgid "Every 6 hours" +msgstr "Cada 6 horas" + +#: wpvulnerability-schedule.php:303 +msgid "Database updates" +msgstr "Actualizacions d'a base de datos" + +#: wpvulnerability-schedule.php:309 +msgid "Log cleanup" +msgstr "Limpieza de rexistros" + +#: wpvulnerability-schedule.php:439 +msgid "Notifications are scheduled, but settings currently disable them. Please review the notifications tab." +msgstr "As notificacions son programadas, pero a configuración actual as desactiva. Por favor, revisa a pestanya de notificacions." + +#: wpvulnerability-schedule.php:442 +msgid "This event should not be scheduled for this site." +msgstr "Iste evento no tendría que estar programau pa este puesto." + +#: wpvulnerability-schedule.php:446 +msgid "Not expected for this site." +msgstr "No esperau pa este puesto." + +#: wpvulnerability-schedule.php:450 +msgid "No instances found." +msgstr "No s'han trobau instancias." + +#: wpvulnerability-schedule.php:456 +msgid "Scheduled with an unexpected interval." +msgstr "Programau con un interval inesperado." + +#: wpvulnerability-schedule.php:460 +msgid "Multiple instances detected." +msgstr "S'han detectau multiples instancias." + +#: wpvulnerability-schedule.php:465 +msgid "Scheduled as expected." +msgstr "Programau como s'esperaba." + +#: wpvulnerability-sitehealth.php:22 +msgid "There aren't plugins vulnerabilities" +msgstr "No i ha vulnerabilidatz de plugins" + +#: wpvulnerability-sitehealth.php:30 +msgid "Shows possible vulnerabilities that exist in installed plugins." +msgstr "Amuestra as posibles vulnerabilidatz que existen en os plugins instalaus." + +#. translators: Number of plugins vulnerabilities. +#: wpvulnerability-sitehealth.php:43 +#, php-format +msgid "There is %d plugin with vulnerabilities" +msgid_plural "There are %d plugins with vulnerabilities" +msgstr[0] "I ha %d plugin con vulnerabilidatz" +msgstr[1] "I ha %d plugins con vulnerabilidatz" + +#: wpvulnerability-sitehealth.php:49 +msgid "We've detected potential vulnerabilities in installed plugins. Please check them and keep them updated." +msgstr "Hemos detectau posibles vulnerabilidatz en os plugins instalaus. Por favor, compreba-las y mantiene-las actualizadas." + +#: wpvulnerability-sitehealth.php:57 +msgid "Update plugins" +msgstr "Actualizar plugins" + +#: wpvulnerability-sitehealth.php:74 +msgid "There aren't themes vulnerabilities" +msgstr "No i ha vulnerabilidatz de temas" + +#: wpvulnerability-sitehealth.php:82 +msgid "Shows possible vulnerabilities that exist in installed themes." +msgstr "Amuestra as posibles vulnerabilidatz que existen en os temas instalaus." + +#. translators: Number of themes vulnerabilities. +#: wpvulnerability-sitehealth.php:95 +#, php-format +msgid "There is %d theme with vulnerabilities" +msgid_plural "There are %d themes with vulnerabilities" +msgstr[0] "I ha %d tema con vulnerabilidatz" +msgstr[1] "I ha %d temas con vulnerabilidatz" + +#: wpvulnerability-sitehealth.php:101 +msgid "We've detected potential vulnerabilities in installed themes. Please check them and keep them updated." +msgstr "Hemos detectau posibles vulnerabilidatz en os temas instalaus. Por favor, compreba-las y mantiene-las actualizadas." + +#: wpvulnerability-sitehealth.php:109 +msgid "Update themes" +msgstr "Actualizar temas" + +#: wpvulnerability-sitehealth.php:126 +msgid "There aren't WordPress vulnerabilities" +msgstr "No i ha vulnerabilidatz de WordPress" + +#: wpvulnerability-sitehealth.php:134 +msgid "Shows possible vulnerabilities existing in the WordPress core." +msgstr "Amuestra as posibles vulnerabilidatz que existen en o nucleo de WordPress." + +#. translators: Number of core vulnerabilities. +#: wpvulnerability-sitehealth.php:147 +#, php-format +msgid "There is %d core vulnerability" +msgid_plural "There are %d core vulnerabilities" +msgstr[0] "I ha %d vulnerabilidá d'o nucleo" +msgstr[1] "I ha %d vulnerabilidatz d'o nucleo" + +#: wpvulnerability-sitehealth.php:153 +msgid "We've detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated." +msgstr "Hemos detectau posibles vulnerabilidatz en ista instalación de WordPress. Por favor, compreba-las y mantiene a tuya instalación actualizada." + +#: wpvulnerability-sitehealth.php:161 +msgid "Update WordPress" +msgstr "Actualizar WordPress" + +#: wpvulnerability-sitehealth.php:180 +msgid "Nginx" +msgstr "Nginx" + +#: wpvulnerability-sitehealth.php:189 +msgid "Invalid software type" +msgstr "Tipo de software invalido" + +#: wpvulnerability-sitehealth.php:192 +msgid "Error" +msgstr "Error" + +#: wpvulnerability-sitehealth.php:197 +msgid "The specified software type is not valid." +msgstr "O tipo de software especificau no ye valido." + +#. translators: name of the software. +#: wpvulnerability-sitehealth.php:207 +#, php-format +msgid "There aren't %s vulnerabilities" +msgstr "No i ha vulnerabilidatz de %s" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:216 +#, php-format +msgid "Shows possible vulnerabilities existing in %s." +msgstr "Amuestra as posibles vulnerabilidatz que existen en %s." + +#. translators: Software and number of vulnerabilities. +#: wpvulnerability-sitehealth.php:229 +#, php-format +msgid "There is %1$d %2$s vulnerability" +msgid_plural "There are %1$d %2$s vulnerabilities" +msgstr[0] "I ha %1$d vulnerabilidá de %2$s" +msgstr[1] "I ha %1$d vulnerabilidatz de %2$s" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:237 +#, php-format +msgid "We've detected potential vulnerabilities in %s. Please check them and keep your installation updated." +msgstr "Hemos detectau posibles vulnerabilidatz en %s. Por favor, compreba-las y mantiene a tuya instalación actualizada." + +#: wpvulnerability-sitehealth.php:246 +msgid "How to update PHP" +msgstr "Cómo actualizar PHP" + +#: wpvulnerability-sitehealth.php:386 +msgid "WPVulnerability Core" +msgstr "WPVulnerability Core" + +#: wpvulnerability-sitehealth.php:394 +msgid "WPVulnerability Themes" +msgstr "WPVulnerability Themes" + +#: wpvulnerability-sitehealth.php:402 +msgid "WPVulnerability Plugins" +msgstr "WPVulnerability Plugins" + +#: wpvulnerability-sitehealth.php:410 +msgid "WPVulnerability PHP" +msgstr "WPVulnerability PHP" + +#: wpvulnerability-sitehealth.php:418 +msgid "WPVulnerability Apache HTTPD" +msgstr "WPVulnerability Apache HTTPD" + +#: wpvulnerability-sitehealth.php:426 +msgid "WPVulnerability Nginx" +msgstr "WPVulnerability Nginx" + +#: wpvulnerability-sitehealth.php:434 +msgid "WPVulnerability MariaDB" +msgstr "WPVulnerability MariaDB" + +#: wpvulnerability-sitehealth.php:442 +msgid "WPVulnerability MySQL" +msgstr "WPVulnerability MySQL" + +#: wpvulnerability-sitehealth.php:450 +msgid "WPVulnerability ImageMagick" +msgstr "WPVulnerability ImageMagick" + +#: wpvulnerability-sitehealth.php:458 +msgid "WPVulnerability curl" +msgstr "WPVulnerability curl" + +#: wpvulnerability-sitehealth.php:466 +msgid "WPVulnerability memcached" +msgstr "WPVulnerability memcached" + +#: wpvulnerability-sitehealth.php:474 +msgid "WPVulnerability redis" +msgstr "WPVulnerability redis" + +#: wpvulnerability-sitehealth.php:482 +msgid "WPVulnerability sqlite" +msgstr "WPVulnerability sqlite" + +#: wpvulnerability-themes.php:196 +#: wpvulnerability-themes.php:492 +msgid "This theme is closed. Please replace it with another." +msgstr "Iste tema ye zarrato. Por favor, remplaza-lo por atro." + +#: wpvulnerability-themes.php:199 +#: wpvulnerability-themes.php:495 +msgid "This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates." +msgstr "Ista vulnerabilidá pareix no estar parchiada. Mantient-te pendent d'as actualizacions proximas d'o tema." + +#: wpvulnerability-themes.php:391 +msgid "This theme has known vulnerabilities that may be affecting your installed version." +msgstr "Iste tema tiene vulnerabilidatz conoixidas que pueden estar afectando a tuya versión instalada." diff --git a/languages/wpvulnerability-ar.l10n.php b/languages/wpvulnerability-ar.l10n.php new file mode 100644 index 0000000..0076122 --- /dev/null +++ b/languages/wpvulnerability-ar.l10n.php @@ -0,0 +1,2 @@ +'wpvulnerability','plural-forms'=>'nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 ? 4 : 5);','language'=>'ar','project-id-version'=>'WPVulnerability 5.0.0','pot-creation-date'=>'2026-05-27T16:32:22+00:00','po-revision-date'=>'2026-05-27 00:00+0000','x-generator'=>'AI Translation','messages'=>['WPVulnerability'=>'WPVulnerability','https://www.wpvulnerability.com/plugin/'=>'https://www.wpvulnerability.com/plugin/','Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API.'=>'احصل على معلومات حول الثغرات الأمنية المحتملة في موقع WordPress الخاص بك من واجهة برمجة تطبيقات قاعدة بيانات ثغرات WordPress.','ROBOTSTXT'=>'ROBOTSTXT','https://www.robotstxt.es/'=>'https://www.robotstxt.es/','This command requires a WordPress administrator. Run with --user=.'=>'يتطلب هذا الأمر مشرف WordPress. قم بالتشغيل مع --user=.','No core vulnerabilities found.'=>'لم يتم العثور على ثغرات أمنية في النواة.','No plugin vulnerabilities found.'=>'لم يتم العثور على ثغرات أمنية في الإضافات.','No theme vulnerabilities found.'=>'لم يتم العثور على ثغرات أمنية في القوالب.','No %s vulnerabilities found.'=>'لم يتم العثور على ثغرات أمنية في %s.','Data from source has been reloaded.'=>'تم إعادة تحميل البيانات من المصدر.','You do not have permission to reload data.'=>'ليس لديك إذن لإعادة تحميل البيانات.','Test email has been sent.'=>'تم إرسال البريد الإلكتروني التجريبي.','Test email has failed. Please, check your email settings.'=>'فشل إرسال البريد الإلكتروني التجريبي. يرجى التحقق من إعدادات البريد الإلكتروني.','You do not have permission to send test emails.'=>'ليس لديك إذن لإرسال رسائل البريد الإلكتروني التجريبية.','WPVulnerability cron events have been repaired.'=>'تم إصلاح أحداث cron في WPVulnerability.','You do not have permission to repair cron events.'=>'ليس لديك إذن لإصلاح أحداث cron.','All logs have been deleted.'=>'تم حذف جميع السجلات.','You do not have permission to delete logs.'=>'ليس لديك إذن لحذف السجلات.','Uninstall preference saved.'=>'تم حفظ تفضيل إلغاء التثبيت.','WPVulnerability has been reset to defaults and reloaded.'=>'تم إعادة تعيين WPVulnerability إلى الإعدادات الافتراضية وإعادة تحميله.','You do not have permission to reset WPVulnerability.'=>'ليس لديك إذن لإعادة تعيين WPVulnerability.','All caches have been cleared.'=>'تم مسح جميع ذاكرات التخزين المؤقت.','You do not have permission to clear caches.'=>'ليس لديك إذن لمسح ذاكرات التخزين المؤقت.','Plugin and theme signatures have been reset.'=>'تم إعادة تعيين توقيعات الإضافات والقوالب.','You do not have permission to reset signatures.'=>'ليس لديك إذن لإعادة تعيين التوقيعات.','You do not have permission to export debug information.'=>'ليس لديك إذن لتصدير معلومات التصحيح.','Database update has been executed.'=>'تم تنفيذ تحديث قاعدة البيانات.','You do not have permission to run database updates.'=>'ليس لديك إذن لتشغيل تحديثات قاعدة البيانات.','Notification has been sent.'=>'تم إرسال الإشعار.','Notification sending failed.'=>'فشل إرسال الإشعار.','You do not have permission to send notifications.'=>'ليس لديك إذن لإرسال الإشعارات.','Notifications'=>'الإشعارات','Analysis'=>'التحليل','Logs'=>'السجلات','Security'=>'الأمان','Tools'=>'الأدوات','Debug'=>'التصحيح','About'=>'حول','Notification Settings'=>'إعدادات الإشعارات','Configure how and when you want to receive vulnerability notifications.'=>'قم بتهيئة كيفية وموعد استقبال إشعارات الثغرات الأمنية.','Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software.'=>'ابقَ على اطلاع بالثغرات الأمنية في تثبيت WordPress والإضافات والقوالب وبرامج الخادم.','Cache Expiration Time'=>'وقت انتهاء صلاحية ذاكرة التخزين المؤقت','FORCED'=>'إجباري','How long to cache vulnerability data before refreshing from the API.'=>'المدة الزمنية لتخزين بيانات الثغرات الأمنية مؤقتًا قبل التحديث من واجهة برمجة التطبيقات.','%d hour'=>'صفر ساعة' . "\0" . 'ساعة واحدة' . "\0" . 'ساعتان' . "\0" . '%d ساعات' . "\0" . '%d ساعة' . "\0" . '%d ساعة','You can force the cache time via wp-config.php constant. Learn more →'=>'يمكنك فرض وقت ذاكرة التخزين المؤقت عبر ثابت wp-config.php. اعرف المزيد →','Notification Frequency'=>'تكرار الإشعارات','Choose how often you want to receive vulnerability notifications.'=>'اختر مدى تكرار استقبال إشعارات الثغرات الأمنية.','Never - Disable automatic notifications'=>'أبدًا - تعطيل الإشعارات التلقائية','Daily - Receive notifications every day'=>'يوميًا - استقبال الإشعارات كل يوم','Weekly - Receive notifications once a week'=>'أسبوعيًا - استقبال الإشعارات مرة في الأسبوع','Day:'=>'اليوم:','Monday'=>'الاثنين','Tuesday'=>'الثلاثاء','Wednesday'=>'الأربعاء','Thursday'=>'الخميس','Friday'=>'الجمعة','Saturday'=>'السبت','Sunday'=>'الأحد','Time:'=>'الوقت:','(24-hour format, server timezone)'=>'(تنسيق 24 ساعة، المنطقة الزمنية للخادم)','Notification Channels'=>'قنوات الإشعارات','Select where you want to receive notifications.'=>'حدد أين تريد استقبال الإشعارات.','Email'=>'البريد الإلكتروني','Email Addresses (separated by commas):'=>'عناوين البريد الإلكتروني (مفصولة بفواصل):','Default:'=>'الافتراضي:','Slack'=>'Slack','Slack Webhook URL:'=>'رابط Slack Webhook:','Learn how to create a Slack incoming webhook →'=>'تعلم كيفية إنشاء webhook وارد لـ Slack →','Microsoft Teams'=>'Microsoft Teams','Teams Webhook URL:'=>'رابط Teams Webhook:','Learn how to create a Teams incoming webhook →'=>'تعلم كيفية إنشاء webhook وارد لـ Teams →','Discord'=>'Discord','Discord Webhook URL:'=>'رابط Discord Webhook:','Learn how to create a Discord webhook →'=>'تعلم كيفية إنشاء webhook لـ Discord →','Telegram'=>'Telegram','Telegram Bot Token:'=>'رمز Telegram Bot:','Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'الصيغة: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','Telegram Chat ID:'=>'معرف Telegram Chat:','Learn how to create a Telegram bot and get Chat ID →'=>'تعلم كيفية إنشاء بوت Telegram والحصول على معرف المحادثة →','Save Notification Settings'=>'حفظ إعدادات الإشعارات','WordPress Components'=>'مكونات WordPress','WordPress Core'=>'WordPress Core','Plugins'=>'الإضافات','Themes'=>'القوالب','Software & Languages'=>'البرامج واللغات','PHP'=>'PHP','Web Servers'=>'خوادم الويب','Apache HTTPD'=>'Apache HTTPD','nginx'=>'nginx','Databases'=>'قواعد البيانات','MariaDB'=>'MariaDB','MySQL'=>'MySQL','SQLite'=>'SQLite','Additional Tools'=>'أدوات إضافية','ImageMagick'=>'ImageMagick','curl'=>'curl','memcached'=>'memcached','Redis'=>'Redis','Component Analysis Settings'=>'إعدادات تحليل المكونات','Enable or disable vulnerability analysis for specific components.'=>'تمكين أو تعطيل تحليل الثغرات الأمنية لمكونات محددة.','Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red.'=>'حدد المكونات التي تريد إخفاءها من فحوصات الثغرات الأمنية والتقارير. سيتم تحليل المكونات غير المحددة بنشاط. تظهر المكونات ذات التحليل النشط باللون الأخضر والمكونات المخفية باللون الأحمر.','Hidden (forced by constant)'=>'مخفي (مفروض بواسطة الثابت)','🔴 Analysis disabled'=>'🔴 التحليل معطل','🟢 Analysis active'=>'🟢 التحليل نشط','Tip:'=>'تلميح:','You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →'=>'يمكنك تعطيل المكونات قسرًا عبر ثوابت wp-config.php. اعرف المزيد حول إخفاء الفحوصات قسرًا →','Save Analysis Settings'=>'حفظ إعدادات التحليل','« Previous'=>'« السابق','Next »'=>'التالي »','Log entry not found or has been removed.'=>'لم يتم العثور على إدخال السجل أو تمت إزالته.','Unable to load the requested log entry.'=>'تعذر تحميل إدخال السجل المطلوب.','Log Configuration'=>'تهيئة السجل','Total Logs'=>'إجمالي السجلات','Retention Period'=>'فترة الاحتفاظ','Disabled'=>'معطل','%d day'=>'صفر أيام' . "\0" . 'يوم واحد' . "\0" . 'يومان' . "\0" . '%d أيام' . "\0" . '%d يومًا' . "\0" . '%d يوم','Log Retention Period'=>'فترة الاحتفاظ بالسجلات','None (Disabled)'=>'لا شيء (معطل)','This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant.'=>'يتم فرض هذه القيمة بواسطة الثابت WPVULNERABILITY_LOG_RETENTION_DAYS.','Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted.'=>'اختر المدة التي يجب أن يحتفظ فيها WPVulnerability بسجلات استجابة واجهة برمجة التطبيقات. يتم حذف السجلات القديمة تلقائيًا.','Save Configuration'=>'حفظ التهيئة','Log retention is currently disabled.'=>'الاحتفاظ بالسجلات معطل حاليًا.','API responses are not being saved.'=>'لا يتم حفظ استجابات واجهة برمجة التطبيقات.','Log Details'=>'تفاصيل السجل','Date'=>'التاريخ','API Endpoint'=>'نقطة نهاية API','API Response'=>'استجابة API','Back to Logs'=>'العودة إلى السجلات','No logs available'=>'لا توجد سجلات متاحة','API response logs will appear here once the vulnerability scanner runs.'=>'ستظهر سجلات استجابة واجهة برمجة التطبيقات هنا بعد تشغيل ماسح الثغرات الأمنية.','API Response Logs'=>'سجلات استجابة API','Show:'=>'عرض:','Apply'=>'تطبيق','Showing %1$s–%2$s of %3$s'=>'عرض %1$s–%2$s من %3$s','Actions'=>'الإجراءات','View'=>'عرض','Danger Zone'=>'منطقة الخطر','Permanently delete all API response logs. This action cannot be undone.'=>'حذف جميع سجلات استجابة واجهة برمجة التطبيقات بشكل دائم. لا يمكن التراجع عن هذا الإجراء.','Are you sure you want to delete all logs? This action cannot be undone.'=>'هل أنت متأكد من رغبتك في حذف جميع السجلات؟ لا يمكن التراجع عن هذا الإجراء.','Delete All Logs'=>'حذف جميع السجلات','Reload Data from API'=>'إعادة تحميل البيانات من API','Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information.'=>'أعد تحميل جميع معلومات النواة والإضافات والقوالب والمكونات الأخرى مباشرةً من واجهة برمجة التطبيقات للحصول على بيانات محدثة. سيؤدي ذلك إلى مسح ذاكرة التخزين المؤقت وجلب معلومات الثغرات الأمنية الحديثة.','Reload Data'=>'إعادة تحميل البيانات','Test Email Notifications'=>'اختبار إشعارات البريد الإلكتروني','Send a test email notification with current vulnerability data to verify your email configuration is working correctly.'=>'أرسل إشعار بريد إلكتروني تجريبي ببيانات الثغرات الأمنية الحالية للتحقق من أن تهيئة بريدك الإلكتروني تعمل بشكل صحيح.','From address (configured via constant):'=>'عنوان المرسل (مهيأ عبر الثابت):','From address (default):'=>'عنوان المرسل (الافتراضي):','Learn how to customize the email sender address →'=>'تعلم كيفية تخصيص عنوان مرسل البريد الإلكتروني →','Send Test Email'=>'إرسال بريد إلكتروني تجريبي','WP-Cron Status'=>'حالة WP-Cron','View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly.'=>'عرض وإدارة أحداث WP-Cron المجدولة. قارن الجداول المتوقعة مع مهام cron الفعلية للتأكد من تشغيل المهام الآلية بشكل صحيح.','No cron data available.'=>'لا تتوفر بيانات cron.','Hook'=>'الخطاف','Expected'=>'متوقع','Found'=>'موجود','Next Run'=>'التشغيل التالي','Status'=>'الحالة','Not expected'=>'غير متوقع','None'=>'لا شيء','OK'=>'موافق','⚠️ Unexpected WPVulnerability Events'=>'⚠️ أحداث WPVulnerability غير متوقعة','No interval'=>'لا توجد فترة','Next:'=>'التالي:','Repair Cron Events'=>'إصلاح أحداث Cron','Uninstall Data'=>'بيانات إلغاء التثبيت','By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall.'=>'بشكل افتراضي، يتم الاحتفاظ بجميع بيانات الإضافة عند حذف WPVulnerability. مكّن الخيار أدناه فقط إذا كنت تريد إزالة جميع الخيارات والسجلات والبيانات المخزنة مؤقتًا بشكل دائم عند إلغاء التثبيت.','Delete all plugin data on uninstall'=>'حذف جميع بيانات الإضافة عند إلغاء التثبيت','Default: unchecked (data preserved). Check only if you want a clean removal.'=>'الافتراضي: غير محدد (البيانات محفوظة). حدد فقط إذا كنت تريد إزالة نظيفة.','Save preference'=>'حفظ التفضيل','Reset WPVulnerability'=>'إعادة تعيين WPVulnerability','Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API.'=>'احذف جميع إعدادات WPVulnerability والبيانات المخزنة مؤقتًا والسجلات والأحداث المجدولة، ثم استعد الإعدادات الافتراضية وأعد تحميل البيانات من واجهة برمجة التطبيقات.','This action cannot be undone.'=>'لا يمكن التراجع عن هذا الإجراء.','Are you sure you want to reset all WPVulnerability data? This action cannot be undone.'=>'هل أنت متأكد من رغبتك في إعادة تعيين جميع بيانات WPVulnerability؟ لا يمكن التراجع عن هذا الإجراء.','Reset Plugin'=>'إعادة تعيين الإضافة','Vulnerability Database Statistics'=>'إحصاءات قاعدة بيانات الثغرات الأمنية','%s vulnerability'=>'صفر ثغرات أمنية' . "\0" . 'ثغرة أمنية واحدة' . "\0" . 'ثغرتان أمنيتان' . "\0" . '%s ثغرات أمنية' . "\0" . '%s ثغرة أمنية' . "\0" . '%s ثغرة أمنية','(%s product)'=>'(صفر منتجات)' . "\0" . '(منتج واحد)' . "\0" . '(منتجان)' . "\0" . '(%s منتجات)' . "\0" . '(%s منتجًا)' . "\0" . '(%s منتج)','No data'=>'لا توجد بيانات','Database last updated: %s'=>'آخر تحديث لقاعدة البيانات: %s','Intelligence Sources'=>'مصادر المعلومات الاستخباراتية','Number of vulnerabilities contributed by each intelligence source.'=>'عدد الثغرات الأمنية التي ساهم بها كل مصدر استخباراتي.','Source'=>'المصدر','Core'=>'Core','Sponsors'=>'الرعاة','No sponsor data available.'=>'لا تتوفر بيانات للرعاة.','Contributors'=>'المساهمون','No contributor data available.'=>'لا تتوفر بيانات للمساهمين.','You do not have sufficient permissions to access this page.'=>'ليس لديك صلاحيات كافية للوصول إلى هذه الصفحة.','WPVulnerability settings'=>'إعدادات WPVulnerability','Configure and save these settings to receive notifications.'=>'هيّئ هذه الإعدادات واحفظها لاستقبال الإشعارات.','Configure and save these settings to hide vulnerabilities.'=>'هيّئ هذه الإعدادات واحفظها لإخفاء الثغرات الأمنية.','Default administrator email'=>'البريد الإلكتروني الافتراضي للمشرف','Read more if you want to force the cache time.'=>'اقرأ المزيد إذا كنت تريد فرض وقت ذاكرة التخزين المؤقت.','Never'=>'أبدًا','Daily'=>'يوميًا','Weekly'=>'أسبوعيًا','Day'=>'اليوم','Hour'=>'الساعة','Minute'=>'الدقيقة','Read more about how to force the deactivation of an item.'=>'اقرأ المزيد حول كيفية فرض تعطيل عنصر ما.','Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com'=>'رابط Slack webhook غير صالح. يجب أن يكون رابط HTTPS صالحًا من hooks.slack.com.','Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com'=>'رابط Microsoft Teams webhook غير صالح. يجب أن يكون رابط HTTPS صالحًا من office.com أو office365.com أو api.hooks.microsoft.com.','Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com'=>'رابط Discord webhook غير صالح. يجب أن يكون رابط HTTPS صالحًا من discord.com أو discordapp.com.','Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'صيغة رمز Telegram bot غير صالحة. يجب أن تكون مثل: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','All Clear'=>'كل شيء على ما يرام','%d Critical Issue Found'=>'لا توجد مشكلات حرجة' . "\0" . 'مشكلة حرجة واحدة' . "\0" . 'مشكلتان حرجتان' . "\0" . '%d مشكلات حرجة' . "\0" . '%d مشكلة حرجة' . "\0" . '%d مشكلة حرجة','%d Issue Found'=>'لا توجد مشكلات' . "\0" . 'مشكلة واحدة' . "\0" . 'مشكلتان' . "\0" . '%d مشكلات' . "\0" . '%d مشكلة' . "\0" . '%d مشكلة','Never checked'=>'لم يتم الفحص أبدًا','%d minute ago'=>'منذ صفر دقائق' . "\0" . 'منذ دقيقة واحدة' . "\0" . 'منذ دقيقتين' . "\0" . 'منذ %d دقائق' . "\0" . 'منذ %d دقيقة' . "\0" . 'منذ %d دقيقة','%d hour ago'=>'منذ صفر ساعات' . "\0" . 'منذ ساعة واحدة' . "\0" . 'منذ ساعتين' . "\0" . 'منذ %d ساعات' . "\0" . 'منذ %d ساعة' . "\0" . 'منذ %d ساعة','Last checked: %s'=>'آخر فحص: %s','Refresh Now'=>'تحديث الآن','No vulnerabilities detected'=>'لم يتم اكتشاف أي ثغرات أمنية','Your site is up to date and secure'=>'موقعك محدث وآمن','Server Software'=>'برامج الخادم','Site Health'=>'صحة الموقع','Settings'=>'الإعدادات','WPVulnerability Status'=>'حالة WPVulnerability','Receive vulnerability notifications'=>'استقبال إشعارات الثغرات الأمنية','Cache expiration time'=>'وقت انتهاء صلاحية ذاكرة التخزين المؤقت','How often you want to receive notifications'=>'مدى تكرار استقبال الإشعارات','Where do you want to receive notifications?'=>'أين تريد استقبال الإشعارات؟','Email addresses to notify (separated by commas)'=>'عناوين البريد الإلكتروني للإشعار (مفصولة بفواصل)','Slack webhook URL'=>'رابط Slack webhook','Teams webhook URL'=>'رابط Teams webhook','Vulnerabilities to hide'=>'الثغرات الأمنية المراد إخفاؤها','What do you want to hide?'=>'ماذا تريد إخفاء؟','Standard (Hybrid Detection)'=>'قياسي (كشف هجين)','Strict (Extensions Only)'=>'صارم (الامتدادات فقط)','Disabled (No Detection)'=>'معطل (لا يوجد كشف)','Security Status'=>'حالة الأمان','Security Mode'=>'وضع الأمان','Shell Execution'=>'تنفيذ Shell','Enabled'=>'مفعّل','Audit Logging'=>'تسجيل المراجعة','Enabled (%d days)'=>'مفعّل (%d أيام)','Total Log Entries'=>'إجمالي إدخالات السجل','Last Shell Execution'=>'آخر تنفيذ لـ Shell','%s ago'=>'منذ %s','Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.'=>'قم بتهيئة إعدادات الأمان عبر ثوابت wp-config.php: WPVULNERABILITY_DISABLE_SHELL_EXEC وWPVULNERABILITY_SECURITY_MODE وWPVULNERABILITY_SHELL_EXEC_WHITELIST.','See security configuration documentation for details.'=>'راجع وثائق تهيئة الأمان لمزيد من التفاصيل.','Memcached'=>'Memcached','Imagick Extension'=>'امتداد Imagick','Redis Extension'=>'امتداد Redis','Memcached Extension'=>'امتداد Memcached','Memcache Extension'=>'امتداد Memcache','SQLite3 Extension'=>'امتداد SQLite3','PDO SQLite'=>'PDO SQLite','Shell Command'=>'أمر Shell','Binary Check'=>'فحص ثنائي','Not Detected'=>'غير مكتشف','Software Detection Methods'=>'طرق اكتشاف البرامج','Shows which detection method was used for each software component and the reliability score.'=>'يُظهر طريقة الاكتشاف المستخدمة لكل مكون برمجي ودرجة الموثوقية.','Component'=>'المكون','Version'=>'الإصدار','Detection Method'=>'طريقة الاكتشاف','Reliability'=>'الموثوقية','Not detected'=>'غير مكتشف','Shell Execution Audit Logs'=>'سجلات مراجعة تنفيذ Shell','Complete audit trail of shell command executions for security monitoring.'=>'سجل مراجعة كامل لتنفيذ أوامر Shell لمراقبة الأمان.','No shell execution logs found.'=>'لم يتم العثور على سجلات تنفيذ shell.','Logs will appear here when shell commands are executed for software detection.'=>'ستظهر السجلات هنا عند تنفيذ أوامر shell لاكتشاف البرامج.','Time'=>'الوقت','Command'=>'الأمر','User'=>'المستخدم','Output'=>'الإخراج','Showing the %d most recent log entries.'=>'عرض أحدث %d إدخال في السجل.','Invalid nonce.'=>'nonce غير صالح.','Insufficient permissions.'=>'صلاحيات غير كافية.','No component specified.'=>'لم يتم تحديد أي مكون.','Debug Information'=>'معلومات التصحيح','This tab is only visible when WP_DEBUG is enabled. Use with caution.'=>'هذا التبويب مرئي فقط عند تمكين WP_DEBUG. استخدم بحذر.','System Information'=>'معلومات النظام','WordPress Version'=>'إصدار WordPress','Multisite'=>'متعدد المواقع','Yes'=>'نعم','No'=>'لا','Language'=>'اللغة','PHP Version'=>'إصدار PHP','PHP Extensions'=>'امتدادات PHP','PHP Memory Limit'=>'حد ذاكرة PHP','Database'=>'قاعدة البيانات','Web Server'=>'خادم الويب','WP_DEBUG'=>'WP_DEBUG','WP_DEBUG_LOG'=>'WP_DEBUG_LOG','Path:'=>'المسار:','Size: %s'=>'الحجم: %s','View Log File'=>'عرض ملف السجل','Log file is not web-accessible (outside wp-content)'=>'ملف السجل غير متاح عبر الويب (خارج wp-content)','Log file does not exist yet'=>'ملف السجل غير موجود بعد','Plugin Version'=>'إصدار الإضافة','Component Detection'=>'اكتشاف المكون','Version Detected'=>'الإصدار المكتشف','Analyzed'=>'محلل','Cache Status'=>'حالة ذاكرة التخزين المؤقت','Configuration Summary'=>'ملخص التهيئة','Cache Duration'=>'مدة ذاكرة التخزين المؤقت','Log Retention'=>'الاحتفاظ بالسجلات','Components Analyzed'=>'المكونات المحللة','Notification Email'=>'بريد الإشعارات الإلكتروني','Slack Webhook'=>'Slack Webhook','Configured & Enabled'=>'مهيأ ومفعّل','Configured (Disabled)'=>'مهيأ (معطل)','Not configured'=>'غير مهيأ','Teams Webhook'=>'Teams Webhook','Discord Webhook'=>'Discord Webhook','Telegram Bot'=>'Telegram Bot','Cron Status'=>'حالة Cron','Update Database'=>'تحديث قاعدة البيانات','Next run: %s'=>'التشغيل التالي: %s','Not scheduled'=>'غير مجدول','Send Notification'=>'إرسال إشعار','Run Update Now'=>'تشغيل التحديث الآن','Run Notification Now'=>'إرسال الإشعار الآن','You do not have permission to run these actions.'=>'ليس لديك إذن لتشغيل هذه الإجراءات.','API Testing'=>'اختبار API','Test API connectivity for each component. Click a button to send a test request.'=>'اختبر اتصال API لكل مكون. انقر على زر لإرسال طلب اختبار.','Test %s'=>'اختبار %s','Testing...'=>'جارٍ الاختبار...','HTTP Code:'=>'كود HTTP:','Response Time:'=>'وقت الاستجابة:','Response Preview'=>'معاينة الاستجابة','Test'=>'اختبار','Error:'=>'خطأ:','AJAX request failed.'=>'فشل طلب AJAX.','You do not have permission to test API connectivity.'=>'ليس لديك إذن لاختبار اتصال API.','Database Options Viewer'=>'عارض خيارات قاعدة البيانات','View the raw data stored in WordPress options.'=>'عرض البيانات الخام المخزنة في خيارات WordPress.','Select an option...'=>'اختر خيارًا...','Option not found or empty.'=>'الخيار غير موجود أو فارغ.','Quick Actions'=>'إجراءات سريعة','Perform debugging actions. Use with caution.'=>'قم بإجراءات التصحيح. استخدم بحذر.','Are you sure you want to clear all caches?'=>'هل أنت متأكد من رغبتك في مسح جميع ذاكرات التخزين المؤقت؟','Clear All Caches'=>'مسح جميع ذاكرات التخزين المؤقت','Are you sure you want to reset signatures?'=>'هل أنت متأكد من رغبتك في إعادة تعيين التوقيعات؟','Reset Signatures'=>'إعادة تعيين التوقيعات','Export Debug Info'=>'تصدير معلومات التصحيح','You do not have permission to perform these actions.'=>'ليس لديك إذن لتنفيذ هذه الإجراءات.','Settings saved.'=>'تم حفظ الإعدادات.','WPVulnerability cron events have been repaired across the network.'=>'تم إصلاح أحداث cron في WPVulnerability عبر الشبكة.','You do not have permission to access this page.'=>'ليس لديك إذن للوصول إلى هذه الصفحة.','WordPress %1$s has a known vulnerability that may be affecting your installed version.'=>'يحتوي WordPress %1$s على ثغرة أمنية معروفة قد تؤثر على الإصدار المثبت لديك.','Actively exploited'=>'يتم استغلاله بنشاط','Public exploit'=>'استغلال عام','Automatable'=>'قابل للأتمتة','References:'=>'المراجع:','Invalid component specified.'=>'تم تحديد مكون غير صالح.','Version not detected for this component.'=>'لم يتم اكتشاف الإصدار لهذا المكون.','API request successful.'=>'نجح طلب API.','API returned HTTP code %d.'=>'أعادت API كود HTTP %d.','WPVulnerability Logs'=>'سجلات WPVulnerability','WPVulnerability Log'=>'سجل WPVulnerability','Low'=>'منخفض','Medium'=>'متوسط','High'=>'مرتفع','Critical'=>'حرج','WPVulnerability Shell Logs'=>'سجلات Shell لـ WPVulnerability','WPVulnerability Shell Log'=>'سجل Shell لـ WPVulnerability','Every week'=>'كل أسبوع','Every day'=>'كل يوم','Invalid request.'=>'طلب غير صالح.','You have unsubscribed from WPVulnerability notifications.'=>'لقد ألغيت اشتراكك من إشعارات WPVulnerability.','Learn more about the WordPress Vulnerability Database API at %2$s'=>'اعرف المزيد عن واجهة برمجة تطبيقات قاعدة بيانات ثغرات WordPress على %2$s','Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings.'=>'هل تريد التوقف عن استقبال هذه التنبيهات؟ إلغاء الاشتراك أو تغيير تكرار البريد الإلكتروني إلى أبدًا في إعدادات WPVulnerability.','No vulnerabilities found'=>'لم يتم العثور على ثغرات أمنية','This is likely a test. The site does not have vulnerabilities.'=>'هذا على الأرجح اختبار. الموقع لا يحتوي على ثغرات أمنية.','Core vulnerabilities'=>'ثغرات النواة','Plugins vulnerabilities'=>'ثغرات الإضافات','Themes vulnerabilities'=>'ثغرات القوالب','PHP vulnerabilities'=>'ثغرات PHP','Apache HTTPD vulnerabilities'=>'ثغرات Apache HTTPD','Nginx vulnerabilities'=>'ثغرات Nginx','MariaDB vulnerabilities'=>'ثغرات MariaDB','MySQL vulnerabilities'=>'ثغرات MySQL','ImageMagick vulnerabilities'=>'ثغرات ImageMagick','curl vulnerabilities'=>'ثغرات curl','memcached vulnerabilities'=>'ثغرات memcached','Redis vulnerabilities'=>'ثغرات Redis','SQLite vulnerabilities'=>'ثغرات SQLite','Vulnerability found: %s'=>'تم اكتشاف ثغرة أمنية: %s','Vulnerability found'=>'تم اكتشاف ثغرة أمنية','%1$s has a known vulnerability that may be affecting your installed version.'=>'يحتوي %1$s على ثغرة أمنية معروفة قد تؤثر على الإصدار المثبت لديك.','This plugin is closed. Please replace it with another.'=>'هذه الإضافة مغلقة. يرجى استبدالها بأخرى.','This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates.'=>'يبدو أن هذه الثغرة الأمنية لم يتم تصحيحها. ترقّب تحديثات الإضافة القادمة.','It hasn\'t been updated in over a year.'=>'لم يتم تحديثه منذ أكثر من عام.','It may no longer be available (closed?).'=>'قد لا يكون متاحًا بعد الآن (مغلق؟).','Last updated on'=>'آخر تحديث في','Vulnerabilities (%d)'=>'الثغرات الأمنية (%d)','%s running'=>'%s يعمل','End of Life'=>'نهاية الدعم','End of life:'=>'نهاية الدعم:','Supported'=>'مدعوم','Plugin'=>'الإضافة','Theme'=>'القالب','End of life: %s'=>'نهاية الدعم: %s','EOL'=>'EOL','Network Settings'=>'إعدادات الشبكة','Vulnerabilities'=>'الثغرات الأمنية','Every 6 hours'=>'كل 6 ساعات','Database updates'=>'تحديثات قاعدة البيانات','Log cleanup'=>'تنظيف السجلات','Notifications are scheduled, but settings currently disable them. Please review the notifications tab.'=>'الإشعارات مجدولة، لكن الإعدادات الحالية تعطلها. يرجى مراجعة تبويب الإشعارات.','This event should not be scheduled for this site.'=>'لا ينبغي جدولة هذا الحدث لهذا الموقع.','Not expected for this site.'=>'غير متوقع لهذا الموقع.','No instances found.'=>'لم يتم العثور على أي نسخ.','Scheduled with an unexpected interval.'=>'مجدول بفترة غير متوقعة.','Multiple instances detected.'=>'تم اكتشاف نسخ متعددة.','Scheduled as expected.'=>'مجدول كما هو متوقع.','There aren\'t plugins vulnerabilities'=>'لا توجد ثغرات أمنية في الإضافات','Shows possible vulnerabilities that exist in installed plugins.'=>'يُظهر الثغرات الأمنية المحتملة الموجودة في الإضافات المثبتة.','There is %d plugin with vulnerabilities'=>'لا توجد إضافات بها ثغرات أمنية' . "\0" . 'توجد إضافة واحدة بها ثغرات أمنية' . "\0" . 'توجد إضافتان بهما ثغرات أمنية' . "\0" . 'توجد %d إضافات بها ثغرات أمنية' . "\0" . 'يوجد %d إضافة بها ثغرات أمنية' . "\0" . 'يوجد %d إضافة بها ثغرات أمنية','We\'ve detected potential vulnerabilities in installed plugins. Please check them and keep them updated.'=>'اكتشفنا ثغرات أمنية محتملة في الإضافات المثبتة. يرجى التحقق منها والحفاظ على تحديثها.','Update plugins'=>'تحديث الإضافات','There aren\'t themes vulnerabilities'=>'لا توجد ثغرات أمنية في القوالب','Shows possible vulnerabilities that exist in installed themes.'=>'يُظهر الثغرات الأمنية المحتملة الموجودة في القوالب المثبتة.','There is %d theme with vulnerabilities'=>'لا توجد قوالب بها ثغرات أمنية' . "\0" . 'يوجد قالب واحد به ثغرات أمنية' . "\0" . 'يوجد قالبان بهما ثغرات أمنية' . "\0" . 'توجد %d قوالب بها ثغرات أمنية' . "\0" . 'يوجد %d قالبًا به ثغرات أمنية' . "\0" . 'يوجد %d قالب به ثغرات أمنية','We\'ve detected potential vulnerabilities in installed themes. Please check them and keep them updated.'=>'اكتشفنا ثغرات أمنية محتملة في القوالب المثبتة. يرجى التحقق منها والحفاظ على تحديثها.','Update themes'=>'تحديث القوالب','There aren\'t WordPress vulnerabilities'=>'لا توجد ثغرات أمنية في WordPress','Shows possible vulnerabilities existing in the WordPress core.'=>'يُظهر الثغرات الأمنية المحتملة الموجودة في نواة WordPress.','There is %d core vulnerability'=>'لا توجد ثغرات أمنية في النواة' . "\0" . 'توجد ثغرة أمنية واحدة في النواة' . "\0" . 'توجد ثغرتان أمنيتان في النواة' . "\0" . 'توجد %d ثغرات أمنية في النواة' . "\0" . 'يوجد %d ثغرة أمنية في النواة' . "\0" . 'يوجد %d ثغرة أمنية في النواة','We\'ve detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated.'=>'اكتشفنا ثغرات أمنية محتملة في تثبيت WordPress هذا. يرجى التحقق منها والحفاظ على تحديث تثبيتك.','Update WordPress'=>'تحديث WordPress','Nginx'=>'Nginx','Invalid software type'=>'نوع برنامج غير صالح','Error'=>'خطأ','The specified software type is not valid.'=>'نوع البرنامج المحدد غير صالح.','There aren\'t %s vulnerabilities'=>'لا توجد ثغرات أمنية في %s','Shows possible vulnerabilities existing in %s.'=>'يُظهر الثغرات الأمنية المحتملة الموجودة في %s.','There is %1$d %2$s vulnerability'=>'لا توجد ثغرات أمنية في %2$s' . "\0" . 'توجد ثغرة أمنية واحدة في %2$s' . "\0" . 'توجد ثغرتان أمنيتان في %2$s' . "\0" . 'توجد %1$d ثغرات أمنية في %2$s' . "\0" . 'يوجد %1$d ثغرة أمنية في %2$s' . "\0" . 'يوجد %1$d ثغرة أمنية في %2$s','We\'ve detected potential vulnerabilities in %s. Please check them and keep your installation updated.'=>'اكتشفنا ثغرات أمنية محتملة في %s. يرجى التحقق منها والحفاظ على تحديث تثبيتك.','How to update PHP'=>'كيفية تحديث PHP','WPVulnerability Core'=>'WPVulnerability Core','WPVulnerability Themes'=>'WPVulnerability Themes','WPVulnerability Plugins'=>'WPVulnerability Plugins','WPVulnerability PHP'=>'WPVulnerability PHP','WPVulnerability Apache HTTPD'=>'WPVulnerability Apache HTTPD','WPVulnerability Nginx'=>'WPVulnerability Nginx','WPVulnerability MariaDB'=>'WPVulnerability MariaDB','WPVulnerability MySQL'=>'WPVulnerability MySQL','WPVulnerability ImageMagick'=>'WPVulnerability ImageMagick','WPVulnerability curl'=>'WPVulnerability curl','WPVulnerability memcached'=>'WPVulnerability memcached','WPVulnerability redis'=>'WPVulnerability redis','WPVulnerability sqlite'=>'WPVulnerability sqlite','This theme is closed. Please replace it with another.'=>'هذا القالب مغلق. يرجى استبداله بآخر.','This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates.'=>'يبدو أن هذه الثغرة الأمنية لم يتم تصحيحها. ترقّب تحديثات القالب القادمة.','This theme has known vulnerabilities that may be affecting your installed version.'=>'يحتوي هذا القالب على ثغرات أمنية معروفة قد تؤثر على الإصدار المثبت لديك.']]; \ No newline at end of file diff --git a/languages/wpvulnerability-ar.mo b/languages/wpvulnerability-ar.mo new file mode 100644 index 0000000000000000000000000000000000000000..09dc8ffacf6ad243a3e50e937a2b43eb13f516a5 GIT binary patch literal 47186 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\n" +"Language: ar\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 ? 4 : 5);\n" +"X-Generator: AI Translation\n" +"X-Domain: wpvulnerability\n" + +#. Plugin Name of the plugin +msgid "WPVulnerability" +msgstr "WPVulnerability" + +#. Plugin URI of the plugin +msgid "https://www.wpvulnerability.com/plugin/" +msgstr "https://www.wpvulnerability.com/plugin/" + +#. Description of the plugin +msgid "Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API." +msgstr "احصل على معلومات حول الثغرات الأمنية المحتملة في موقع WordPress الخاص بك من واجهة برمجة تطبيقات قاعدة بيانات ثغرات WordPress." + +#. Author of the plugin +msgid "ROBOTSTXT" +msgstr "ROBOTSTXT" + +#. Author URI of the plugin +msgid "https://www.robotstxt.es/" +msgstr "https://www.robotstxt.es/" + +msgid "This command requires a WordPress administrator. Run with --user=." +msgstr "يتطلب هذا الأمر مشرف WordPress. قم بالتشغيل مع --user=." + +msgid "No core vulnerabilities found." +msgstr "لم يتم العثور على ثغرات أمنية في النواة." + +msgid "No plugin vulnerabilities found." +msgstr "لم يتم العثور على ثغرات أمنية في الإضافات." + +msgid "No theme vulnerabilities found." +msgstr "لم يتم العثور على ثغرات أمنية في القوالب." + +#, php-format +msgid "No %s vulnerabilities found." +msgstr "لم يتم العثور على ثغرات أمنية في %s." + +msgid "Data from source has been reloaded." +msgstr "تم إعادة تحميل البيانات من المصدر." + +msgid "You do not have permission to reload data." +msgstr "ليس لديك إذن لإعادة تحميل البيانات." + +msgid "Test email has been sent." +msgstr "تم إرسال البريد الإلكتروني التجريبي." + +msgid "Test email has failed. Please, check your email settings." +msgstr "فشل إرسال البريد الإلكتروني التجريبي. يرجى التحقق من إعدادات البريد الإلكتروني." + +msgid "You do not have permission to send test emails." +msgstr "ليس لديك إذن لإرسال رسائل البريد الإلكتروني التجريبية." + +msgid "WPVulnerability cron events have been repaired." +msgstr "تم إصلاح أحداث cron في WPVulnerability." + +msgid "You do not have permission to repair cron events." +msgstr "ليس لديك إذن لإصلاح أحداث cron." + +msgid "All logs have been deleted." +msgstr "تم حذف جميع السجلات." + +msgid "You do not have permission to delete logs." +msgstr "ليس لديك إذن لحذف السجلات." + +msgid "Uninstall preference saved." +msgstr "تم حفظ تفضيل إلغاء التثبيت." + +msgid "WPVulnerability has been reset to defaults and reloaded." +msgstr "تم إعادة تعيين WPVulnerability إلى الإعدادات الافتراضية وإعادة تحميله." + +msgid "You do not have permission to reset WPVulnerability." +msgstr "ليس لديك إذن لإعادة تعيين WPVulnerability." + +msgid "All caches have been cleared." +msgstr "تم مسح جميع ذاكرات التخزين المؤقت." + +msgid "You do not have permission to clear caches." +msgstr "ليس لديك إذن لمسح ذاكرات التخزين المؤقت." + +msgid "Plugin and theme signatures have been reset." +msgstr "تم إعادة تعيين توقيعات الإضافات والقوالب." + +msgid "You do not have permission to reset signatures." +msgstr "ليس لديك إذن لإعادة تعيين التوقيعات." + +msgid "You do not have permission to export debug information." +msgstr "ليس لديك إذن لتصدير معلومات التصحيح." + +msgid "Database update has been executed." +msgstr "تم تنفيذ تحديث قاعدة البيانات." + +msgid "You do not have permission to run database updates." +msgstr "ليس لديك إذن لتشغيل تحديثات قاعدة البيانات." + +msgid "Notification has been sent." +msgstr "تم إرسال الإشعار." + +msgid "Notification sending failed." +msgstr "فشل إرسال الإشعار." + +msgid "You do not have permission to send notifications." +msgstr "ليس لديك إذن لإرسال الإشعارات." + +msgid "Notifications" +msgstr "الإشعارات" + +msgid "Analysis" +msgstr "التحليل" + +msgid "Logs" +msgstr "السجلات" + +msgid "Security" +msgstr "الأمان" + +msgid "Tools" +msgstr "الأدوات" + +msgid "Debug" +msgstr "التصحيح" + +msgid "About" +msgstr "حول" + +msgid "Notification Settings" +msgstr "إعدادات الإشعارات" + +msgid "Configure how and when you want to receive vulnerability notifications." +msgstr "قم بتهيئة كيفية وموعد استقبال إشعارات الثغرات الأمنية." + +msgid "Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software." +msgstr "ابقَ على اطلاع بالثغرات الأمنية في تثبيت WordPress والإضافات والقوالب وبرامج الخادم." + +msgid "Cache Expiration Time" +msgstr "وقت انتهاء صلاحية ذاكرة التخزين المؤقت" + +msgid "FORCED" +msgstr "إجباري" + +msgid "How long to cache vulnerability data before refreshing from the API." +msgstr "المدة الزمنية لتخزين بيانات الثغرات الأمنية مؤقتًا قبل التحديث من واجهة برمجة التطبيقات." + +#, php-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "صفر ساعة" +msgstr[1] "ساعة واحدة" +msgstr[2] "ساعتان" +msgstr[3] "%d ساعات" +msgstr[4] "%d ساعة" +msgstr[5] "%d ساعة" + +#, php-format +msgid "You can force the cache time via wp-config.php constant. Learn more →" +msgstr "يمكنك فرض وقت ذاكرة التخزين المؤقت عبر ثابت wp-config.php. اعرف المزيد →" + +msgid "Notification Frequency" +msgstr "تكرار الإشعارات" + +msgid "Choose how often you want to receive vulnerability notifications." +msgstr "اختر مدى تكرار استقبال إشعارات الثغرات الأمنية." + +msgid "Never - Disable automatic notifications" +msgstr "أبدًا - تعطيل الإشعارات التلقائية" + +msgid "Daily - Receive notifications every day" +msgstr "يوميًا - استقبال الإشعارات كل يوم" + +msgid "Weekly - Receive notifications once a week" +msgstr "أسبوعيًا - استقبال الإشعارات مرة في الأسبوع" + +msgid "Day:" +msgstr "اليوم:" + +msgid "Monday" +msgstr "الاثنين" + +msgid "Tuesday" +msgstr "الثلاثاء" + +msgid "Wednesday" +msgstr "الأربعاء" + +msgid "Thursday" +msgstr "الخميس" + +msgid "Friday" +msgstr "الجمعة" + +msgid "Saturday" +msgstr "السبت" + +msgid "Sunday" +msgstr "الأحد" + +msgid "Time:" +msgstr "الوقت:" + +msgid "(24-hour format, server timezone)" +msgstr "(تنسيق 24 ساعة، المنطقة الزمنية للخادم)" + +msgid "Notification Channels" +msgstr "قنوات الإشعارات" + +msgid "Select where you want to receive notifications." +msgstr "حدد أين تريد استقبال الإشعارات." + +msgid "Email" +msgstr "البريد الإلكتروني" + +msgid "Email Addresses (separated by commas):" +msgstr "عناوين البريد الإلكتروني (مفصولة بفواصل):" + +msgid "Default:" +msgstr "الافتراضي:" + +msgid "Slack" +msgstr "Slack" + +msgid "Slack Webhook URL:" +msgstr "رابط Slack Webhook:" + +#, php-format +msgid "Learn how to create a Slack incoming webhook →" +msgstr "تعلم كيفية إنشاء webhook وارد لـ Slack →" + +msgid "Microsoft Teams" +msgstr "Microsoft Teams" + +msgid "Teams Webhook URL:" +msgstr "رابط Teams Webhook:" + +#, php-format +msgid "Learn how to create a Teams incoming webhook →" +msgstr "تعلم كيفية إنشاء webhook وارد لـ Teams →" + +msgid "Discord" +msgstr "Discord" + +msgid "Discord Webhook URL:" +msgstr "رابط Discord Webhook:" + +#, php-format +msgid "Learn how to create a Discord webhook →" +msgstr "تعلم كيفية إنشاء webhook لـ Discord →" + +msgid "Telegram" +msgstr "Telegram" + +msgid "Telegram Bot Token:" +msgstr "رمز Telegram Bot:" + +msgid "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "الصيغة: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +msgid "Telegram Chat ID:" +msgstr "معرف Telegram Chat:" + +#, php-format +msgid "Learn how to create a Telegram bot and get Chat ID →" +msgstr "تعلم كيفية إنشاء بوت Telegram والحصول على معرف المحادثة →" + +msgid "Save Notification Settings" +msgstr "حفظ إعدادات الإشعارات" + +msgid "WordPress Components" +msgstr "مكونات WordPress" + +msgid "WordPress Core" +msgstr "WordPress Core" + +msgid "Plugins" +msgstr "الإضافات" + +msgid "Themes" +msgstr "القوالب" + +msgid "Software & Languages" +msgstr "البرامج واللغات" + +msgid "PHP" +msgstr "PHP" + +msgid "Web Servers" +msgstr "خوادم الويب" + +msgid "Apache HTTPD" +msgstr "Apache HTTPD" + +msgid "nginx" +msgstr "nginx" + +msgid "Databases" +msgstr "قواعد البيانات" + +msgid "MariaDB" +msgstr "MariaDB" + +msgid "MySQL" +msgstr "MySQL" + +msgid "SQLite" +msgstr "SQLite" + +msgid "Additional Tools" +msgstr "أدوات إضافية" + +msgid "ImageMagick" +msgstr "ImageMagick" + +msgid "curl" +msgstr "curl" + +msgid "memcached" +msgstr "memcached" + +msgid "Redis" +msgstr "Redis" + +msgid "Component Analysis Settings" +msgstr "إعدادات تحليل المكونات" + +msgid "Enable or disable vulnerability analysis for specific components." +msgstr "تمكين أو تعطيل تحليل الثغرات الأمنية لمكونات محددة." + +msgid "Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red." +msgstr "حدد المكونات التي تريد إخفاءها من فحوصات الثغرات الأمنية والتقارير. سيتم تحليل المكونات غير المحددة بنشاط. تظهر المكونات ذات التحليل النشط باللون الأخضر والمكونات المخفية باللون الأحمر." + +msgid "Hidden (forced by constant)" +msgstr "مخفي (مفروض بواسطة الثابت)" + +msgid "🔴 Analysis disabled" +msgstr "🔴 التحليل معطل" + +msgid "🟢 Analysis active" +msgstr "🟢 التحليل نشط" + +msgid "Tip:" +msgstr "تلميح:" + +#, php-format +msgid "You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →" +msgstr "يمكنك تعطيل المكونات قسرًا عبر ثوابت wp-config.php. اعرف المزيد حول إخفاء الفحوصات قسرًا →" + +msgid "Save Analysis Settings" +msgstr "حفظ إعدادات التحليل" + +msgid "« Previous" +msgstr "« السابق" + +msgid "Next »" +msgstr "التالي »" + +msgid "Log entry not found or has been removed." +msgstr "لم يتم العثور على إدخال السجل أو تمت إزالته." + +msgid "Unable to load the requested log entry." +msgstr "تعذر تحميل إدخال السجل المطلوب." + +msgid "Log Configuration" +msgstr "تهيئة السجل" + +msgid "Total Logs" +msgstr "إجمالي السجلات" + +msgid "Retention Period" +msgstr "فترة الاحتفاظ" + +msgid "Disabled" +msgstr "معطل" + +#, php-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "صفر أيام" +msgstr[1] "يوم واحد" +msgstr[2] "يومان" +msgstr[3] "%d أيام" +msgstr[4] "%d يومًا" +msgstr[5] "%d يوم" + +msgid "Log Retention Period" +msgstr "فترة الاحتفاظ بالسجلات" + +msgid "None (Disabled)" +msgstr "لا شيء (معطل)" + +msgid "This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant." +msgstr "يتم فرض هذه القيمة بواسطة الثابت WPVULNERABILITY_LOG_RETENTION_DAYS." + +msgid "Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted." +msgstr "اختر المدة التي يجب أن يحتفظ فيها WPVulnerability بسجلات استجابة واجهة برمجة التطبيقات. يتم حذف السجلات القديمة تلقائيًا." + +msgid "Save Configuration" +msgstr "حفظ التهيئة" + +msgid "Log retention is currently disabled." +msgstr "الاحتفاظ بالسجلات معطل حاليًا." + +msgid "API responses are not being saved." +msgstr "لا يتم حفظ استجابات واجهة برمجة التطبيقات." + +msgid "Log Details" +msgstr "تفاصيل السجل" + +msgid "Date" +msgstr "التاريخ" + +msgid "API Endpoint" +msgstr "نقطة نهاية API" + +msgid "API Response" +msgstr "استجابة API" + +msgid "Back to Logs" +msgstr "العودة إلى السجلات" + +msgid "No logs available" +msgstr "لا توجد سجلات متاحة" + +msgid "API response logs will appear here once the vulnerability scanner runs." +msgstr "ستظهر سجلات استجابة واجهة برمجة التطبيقات هنا بعد تشغيل ماسح الثغرات الأمنية." + +msgid "API Response Logs" +msgstr "سجلات استجابة API" + +msgid "Show:" +msgstr "عرض:" + +msgid "Apply" +msgstr "تطبيق" + +#, php-format +msgid "Showing %1$s–%2$s of %3$s" +msgstr "عرض %1$s–%2$s من %3$s" + +msgid "Actions" +msgstr "الإجراءات" + +msgid "View" +msgstr "عرض" + +msgid "Danger Zone" +msgstr "منطقة الخطر" + +msgid "Permanently delete all API response logs. This action cannot be undone." +msgstr "حذف جميع سجلات استجابة واجهة برمجة التطبيقات بشكل دائم. لا يمكن التراجع عن هذا الإجراء." + +msgid "Are you sure you want to delete all logs? This action cannot be undone." +msgstr "هل أنت متأكد من رغبتك في حذف جميع السجلات؟ لا يمكن التراجع عن هذا الإجراء." + +msgid "Delete All Logs" +msgstr "حذف جميع السجلات" + +msgid "Reload Data from API" +msgstr "إعادة تحميل البيانات من API" + +msgid "Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information." +msgstr "أعد تحميل جميع معلومات النواة والإضافات والقوالب والمكونات الأخرى مباشرةً من واجهة برمجة التطبيقات للحصول على بيانات محدثة. سيؤدي ذلك إلى مسح ذاكرة التخزين المؤقت وجلب معلومات الثغرات الأمنية الحديثة." + +msgid "Reload Data" +msgstr "إعادة تحميل البيانات" + +msgid "Test Email Notifications" +msgstr "اختبار إشعارات البريد الإلكتروني" + +msgid "Send a test email notification with current vulnerability data to verify your email configuration is working correctly." +msgstr "أرسل إشعار بريد إلكتروني تجريبي ببيانات الثغرات الأمنية الحالية للتحقق من أن تهيئة بريدك الإلكتروني تعمل بشكل صحيح." + +msgid "From address (configured via constant):" +msgstr "عنوان المرسل (مهيأ عبر الثابت):" + +msgid "From address (default):" +msgstr "عنوان المرسل (الافتراضي):" + +msgid "Learn how to customize the email sender address →" +msgstr "تعلم كيفية تخصيص عنوان مرسل البريد الإلكتروني →" + +msgid "Send Test Email" +msgstr "إرسال بريد إلكتروني تجريبي" + +msgid "WP-Cron Status" +msgstr "حالة WP-Cron" + +msgid "View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly." +msgstr "عرض وإدارة أحداث WP-Cron المجدولة. قارن الجداول المتوقعة مع مهام cron الفعلية للتأكد من تشغيل المهام الآلية بشكل صحيح." + +msgid "No cron data available." +msgstr "لا تتوفر بيانات cron." + +msgid "Hook" +msgstr "الخطاف" + +msgid "Expected" +msgstr "متوقع" + +msgid "Found" +msgstr "موجود" + +msgid "Next Run" +msgstr "التشغيل التالي" + +msgid "Status" +msgstr "الحالة" + +msgid "Not expected" +msgstr "غير متوقع" + +msgid "None" +msgstr "لا شيء" + +msgid "OK" +msgstr "موافق" + +msgid "⚠️ Unexpected WPVulnerability Events" +msgstr "⚠️ أحداث WPVulnerability غير متوقعة" + +msgid "No interval" +msgstr "لا توجد فترة" + +msgid "Next:" +msgstr "التالي:" + +msgid "Repair Cron Events" +msgstr "إصلاح أحداث Cron" + +msgid "Uninstall Data" +msgstr "بيانات إلغاء التثبيت" + +msgid "By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall." +msgstr "بشكل افتراضي، يتم الاحتفاظ بجميع بيانات الإضافة عند حذف WPVulnerability. مكّن الخيار أدناه فقط إذا كنت تريد إزالة جميع الخيارات والسجلات والبيانات المخزنة مؤقتًا بشكل دائم عند إلغاء التثبيت." + +msgid "Delete all plugin data on uninstall" +msgstr "حذف جميع بيانات الإضافة عند إلغاء التثبيت" + +msgid "Default: unchecked (data preserved). Check only if you want a clean removal." +msgstr "الافتراضي: غير محدد (البيانات محفوظة). حدد فقط إذا كنت تريد إزالة نظيفة." + +msgid "Save preference" +msgstr "حفظ التفضيل" + +msgid "Reset WPVulnerability" +msgstr "إعادة تعيين WPVulnerability" + +msgid "Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API." +msgstr "احذف جميع إعدادات WPVulnerability والبيانات المخزنة مؤقتًا والسجلات والأحداث المجدولة، ثم استعد الإعدادات الافتراضية وأعد تحميل البيانات من واجهة برمجة التطبيقات." + +msgid "This action cannot be undone." +msgstr "لا يمكن التراجع عن هذا الإجراء." + +msgid "Are you sure you want to reset all WPVulnerability data? This action cannot be undone." +msgstr "هل أنت متأكد من رغبتك في إعادة تعيين جميع بيانات WPVulnerability؟ لا يمكن التراجع عن هذا الإجراء." + +msgid "Reset Plugin" +msgstr "إعادة تعيين الإضافة" + +msgid "Vulnerability Database Statistics" +msgstr "إحصاءات قاعدة بيانات الثغرات الأمنية" + +#, php-format +msgid "%s vulnerability" +msgid_plural "%s vulnerabilities" +msgstr[0] "صفر ثغرات أمنية" +msgstr[1] "ثغرة أمنية واحدة" +msgstr[2] "ثغرتان أمنيتان" +msgstr[3] "%s ثغرات أمنية" +msgstr[4] "%s ثغرة أمنية" +msgstr[5] "%s ثغرة أمنية" + +#, php-format +msgid "(%s product)" +msgid_plural "(%s products)" +msgstr[0] "(صفر منتجات)" +msgstr[1] "(منتج واحد)" +msgstr[2] "(منتجان)" +msgstr[3] "(%s منتجات)" +msgstr[4] "(%s منتجًا)" +msgstr[5] "(%s منتج)" + +msgid "No data" +msgstr "لا توجد بيانات" + +#, php-format +msgid "Database last updated: %s" +msgstr "آخر تحديث لقاعدة البيانات: %s" + +msgid "Intelligence Sources" +msgstr "مصادر المعلومات الاستخباراتية" + +msgid "Number of vulnerabilities contributed by each intelligence source." +msgstr "عدد الثغرات الأمنية التي ساهم بها كل مصدر استخباراتي." + +msgid "Source" +msgstr "المصدر" + +msgid "Core" +msgstr "Core" + +msgid "Sponsors" +msgstr "الرعاة" + +msgid "No sponsor data available." +msgstr "لا تتوفر بيانات للرعاة." + +msgid "Contributors" +msgstr "المساهمون" + +msgid "No contributor data available." +msgstr "لا تتوفر بيانات للمساهمين." + +msgid "You do not have sufficient permissions to access this page." +msgstr "ليس لديك صلاحيات كافية للوصول إلى هذه الصفحة." + +msgid "WPVulnerability settings" +msgstr "إعدادات WPVulnerability" + +msgid "Configure and save these settings to receive notifications." +msgstr "هيّئ هذه الإعدادات واحفظها لاستقبال الإشعارات." + +msgid "Configure and save these settings to hide vulnerabilities." +msgstr "هيّئ هذه الإعدادات واحفظها لإخفاء الثغرات الأمنية." + +msgid "Default administrator email" +msgstr "البريد الإلكتروني الافتراضي للمشرف" + +msgid "Read more if you want to force the cache time." +msgstr "اقرأ المزيد إذا كنت تريد فرض وقت ذاكرة التخزين المؤقت." + +msgid "Never" +msgstr "أبدًا" + +msgid "Daily" +msgstr "يوميًا" + +msgid "Weekly" +msgstr "أسبوعيًا" + +msgid "Day" +msgstr "اليوم" + +msgid "Hour" +msgstr "الساعة" + +msgid "Minute" +msgstr "الدقيقة" + +msgid "Read more about how to force the deactivation of an item." +msgstr "اقرأ المزيد حول كيفية فرض تعطيل عنصر ما." + +msgid "Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com" +msgstr "رابط Slack webhook غير صالح. يجب أن يكون رابط HTTPS صالحًا من hooks.slack.com." + +msgid "Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com" +msgstr "رابط Microsoft Teams webhook غير صالح. يجب أن يكون رابط HTTPS صالحًا من office.com أو office365.com أو api.hooks.microsoft.com." + +msgid "Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com" +msgstr "رابط Discord webhook غير صالح. يجب أن يكون رابط HTTPS صالحًا من discord.com أو discordapp.com." + +msgid "Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "صيغة رمز Telegram bot غير صالحة. يجب أن تكون مثل: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +msgid "All Clear" +msgstr "كل شيء على ما يرام" + +#, php-format +msgid "%d Critical Issue Found" +msgid_plural "%d Critical Issues Found" +msgstr[0] "لا توجد مشكلات حرجة" +msgstr[1] "مشكلة حرجة واحدة" +msgstr[2] "مشكلتان حرجتان" +msgstr[3] "%d مشكلات حرجة" +msgstr[4] "%d مشكلة حرجة" +msgstr[5] "%d مشكلة حرجة" + +#, php-format +msgid "%d Issue Found" +msgid_plural "%d Issues Found" +msgstr[0] "لا توجد مشكلات" +msgstr[1] "مشكلة واحدة" +msgstr[2] "مشكلتان" +msgstr[3] "%d مشكلات" +msgstr[4] "%d مشكلة" +msgstr[5] "%d مشكلة" + +msgid "Never checked" +msgstr "لم يتم الفحص أبدًا" + +#, php-format +msgid "%d minute ago" +msgid_plural "%d minutes ago" +msgstr[0] "منذ صفر دقائق" +msgstr[1] "منذ دقيقة واحدة" +msgstr[2] "منذ دقيقتين" +msgstr[3] "منذ %d دقائق" +msgstr[4] "منذ %d دقيقة" +msgstr[5] "منذ %d دقيقة" + +#, php-format +msgid "%d hour ago" +msgid_plural "%d hours ago" +msgstr[0] "منذ صفر ساعات" +msgstr[1] "منذ ساعة واحدة" +msgstr[2] "منذ ساعتين" +msgstr[3] "منذ %d ساعات" +msgstr[4] "منذ %d ساعة" +msgstr[5] "منذ %d ساعة" + +#, php-format +msgid "Last checked: %s" +msgstr "آخر فحص: %s" + +msgid "Refresh Now" +msgstr "تحديث الآن" + +msgid "No vulnerabilities detected" +msgstr "لم يتم اكتشاف أي ثغرات أمنية" + +msgid "Your site is up to date and secure" +msgstr "موقعك محدث وآمن" + +msgid "Server Software" +msgstr "برامج الخادم" + +msgid "Site Health" +msgstr "صحة الموقع" + +msgid "Settings" +msgstr "الإعدادات" + +msgid "WPVulnerability Status" +msgstr "حالة WPVulnerability" + +msgid "Receive vulnerability notifications" +msgstr "استقبال إشعارات الثغرات الأمنية" + +msgid "Cache expiration time" +msgstr "وقت انتهاء صلاحية ذاكرة التخزين المؤقت" + +msgid "How often you want to receive notifications" +msgstr "مدى تكرار استقبال الإشعارات" + +msgid "Where do you want to receive notifications?" +msgstr "أين تريد استقبال الإشعارات؟" + +msgid "Email addresses to notify (separated by commas)" +msgstr "عناوين البريد الإلكتروني للإشعار (مفصولة بفواصل)" + +msgid "Slack webhook URL" +msgstr "رابط Slack webhook" + +msgid "Teams webhook URL" +msgstr "رابط Teams webhook" + +msgid "Vulnerabilities to hide" +msgstr "الثغرات الأمنية المراد إخفاؤها" + +msgid "What do you want to hide?" +msgstr "ماذا تريد إخفاء؟" + +msgid "Standard (Hybrid Detection)" +msgstr "قياسي (كشف هجين)" + +msgid "Strict (Extensions Only)" +msgstr "صارم (الامتدادات فقط)" + +msgid "Disabled (No Detection)" +msgstr "معطل (لا يوجد كشف)" + +msgid "Security Status" +msgstr "حالة الأمان" + +msgid "Security Mode" +msgstr "وضع الأمان" + +msgid "Shell Execution" +msgstr "تنفيذ Shell" + +msgid "Enabled" +msgstr "مفعّل" + +msgid "Audit Logging" +msgstr "تسجيل المراجعة" + +#, php-format +msgid "Enabled (%d days)" +msgstr "مفعّل (%d أيام)" + +msgid "Total Log Entries" +msgstr "إجمالي إدخالات السجل" + +msgid "Last Shell Execution" +msgstr "آخر تنفيذ لـ Shell" + +#, php-format +msgid "%s ago" +msgstr "منذ %s" + +msgid "Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST." +msgstr "قم بتهيئة إعدادات الأمان عبر ثوابت wp-config.php: WPVULNERABILITY_DISABLE_SHELL_EXEC وWPVULNERABILITY_SECURITY_MODE وWPVULNERABILITY_SHELL_EXEC_WHITELIST." + +#, php-format +msgid "See security configuration documentation for details." +msgstr "راجع وثائق تهيئة الأمان لمزيد من التفاصيل." + +msgid "Memcached" +msgstr "Memcached" + +msgid "Imagick Extension" +msgstr "امتداد Imagick" + +msgid "Redis Extension" +msgstr "امتداد Redis" + +msgid "Memcached Extension" +msgstr "امتداد Memcached" + +msgid "Memcache Extension" +msgstr "امتداد Memcache" + +msgid "SQLite3 Extension" +msgstr "امتداد SQLite3" + +msgid "PDO SQLite" +msgstr "PDO SQLite" + +msgid "Shell Command" +msgstr "أمر Shell" + +msgid "Binary Check" +msgstr "فحص ثنائي" + +msgid "Not Detected" +msgstr "غير مكتشف" + +msgid "Software Detection Methods" +msgstr "طرق اكتشاف البرامج" + +msgid "Shows which detection method was used for each software component and the reliability score." +msgstr "يُظهر طريقة الاكتشاف المستخدمة لكل مكون برمجي ودرجة الموثوقية." + +msgid "Component" +msgstr "المكون" + +msgid "Version" +msgstr "الإصدار" + +msgid "Detection Method" +msgstr "طريقة الاكتشاف" + +msgid "Reliability" +msgstr "الموثوقية" + +msgid "Not detected" +msgstr "غير مكتشف" + +msgid "Shell Execution Audit Logs" +msgstr "سجلات مراجعة تنفيذ Shell" + +msgid "Complete audit trail of shell command executions for security monitoring." +msgstr "سجل مراجعة كامل لتنفيذ أوامر Shell لمراقبة الأمان." + +msgid "No shell execution logs found." +msgstr "لم يتم العثور على سجلات تنفيذ shell." + +msgid "Logs will appear here when shell commands are executed for software detection." +msgstr "ستظهر السجلات هنا عند تنفيذ أوامر shell لاكتشاف البرامج." + +msgid "Time" +msgstr "الوقت" + +msgid "Command" +msgstr "الأمر" + +msgid "User" +msgstr "المستخدم" + +msgid "Output" +msgstr "الإخراج" + +#, php-format +msgid "Showing the %d most recent log entries." +msgstr "عرض أحدث %d إدخال في السجل." + +msgid "Invalid nonce." +msgstr "nonce غير صالح." + +msgid "Insufficient permissions." +msgstr "صلاحيات غير كافية." + +msgid "No component specified." +msgstr "لم يتم تحديد أي مكون." + +msgid "Debug Information" +msgstr "معلومات التصحيح" + +msgid "This tab is only visible when WP_DEBUG is enabled. Use with caution." +msgstr "هذا التبويب مرئي فقط عند تمكين WP_DEBUG. استخدم بحذر." + +msgid "System Information" +msgstr "معلومات النظام" + +msgid "WordPress Version" +msgstr "إصدار WordPress" + +msgid "Multisite" +msgstr "متعدد المواقع" + +msgid "Yes" +msgstr "نعم" + +msgid "No" +msgstr "لا" + +msgid "Language" +msgstr "اللغة" + +msgid "PHP Version" +msgstr "إصدار PHP" + +msgid "PHP Extensions" +msgstr "امتدادات PHP" + +msgid "PHP Memory Limit" +msgstr "حد ذاكرة PHP" + +msgid "Database" +msgstr "قاعدة البيانات" + +msgid "Web Server" +msgstr "خادم الويب" + +msgid "WP_DEBUG" +msgstr "WP_DEBUG" + +msgid "WP_DEBUG_LOG" +msgstr "WP_DEBUG_LOG" + +msgid "Path:" +msgstr "المسار:" + +#, php-format +msgid "Size: %s" +msgstr "الحجم: %s" + +msgid "View Log File" +msgstr "عرض ملف السجل" + +msgid "Log file is not web-accessible (outside wp-content)" +msgstr "ملف السجل غير متاح عبر الويب (خارج wp-content)" + +msgid "Log file does not exist yet" +msgstr "ملف السجل غير موجود بعد" + +msgid "Plugin Version" +msgstr "إصدار الإضافة" + +msgid "Component Detection" +msgstr "اكتشاف المكون" + +msgid "Version Detected" +msgstr "الإصدار المكتشف" + +msgid "Analyzed" +msgstr "محلل" + +msgid "Cache Status" +msgstr "حالة ذاكرة التخزين المؤقت" + +msgid "Configuration Summary" +msgstr "ملخص التهيئة" + +msgid "Cache Duration" +msgstr "مدة ذاكرة التخزين المؤقت" + +msgid "Log Retention" +msgstr "الاحتفاظ بالسجلات" + +msgid "Components Analyzed" +msgstr "المكونات المحللة" + +msgid "Notification Email" +msgstr "بريد الإشعارات الإلكتروني" + +msgid "Slack Webhook" +msgstr "Slack Webhook" + +msgid "Configured & Enabled" +msgstr "مهيأ ومفعّل" + +msgid "Configured (Disabled)" +msgstr "مهيأ (معطل)" + +msgid "Not configured" +msgstr "غير مهيأ" + +msgid "Teams Webhook" +msgstr "Teams Webhook" + +msgid "Discord Webhook" +msgstr "Discord Webhook" + +msgid "Telegram Bot" +msgstr "Telegram Bot" + +msgid "Cron Status" +msgstr "حالة Cron" + +msgid "Update Database" +msgstr "تحديث قاعدة البيانات" + +#, php-format +msgid "Next run: %s" +msgstr "التشغيل التالي: %s" + +msgid "Not scheduled" +msgstr "غير مجدول" + +msgid "Send Notification" +msgstr "إرسال إشعار" + +msgid "Run Update Now" +msgstr "تشغيل التحديث الآن" + +msgid "Run Notification Now" +msgstr "إرسال الإشعار الآن" + +msgid "You do not have permission to run these actions." +msgstr "ليس لديك إذن لتشغيل هذه الإجراءات." + +msgid "API Testing" +msgstr "اختبار API" + +msgid "Test API connectivity for each component. Click a button to send a test request." +msgstr "اختبر اتصال API لكل مكون. انقر على زر لإرسال طلب اختبار." + +#, php-format +msgid "Test %s" +msgstr "اختبار %s" + +msgid "Testing..." +msgstr "جارٍ الاختبار..." + +msgid "HTTP Code:" +msgstr "كود HTTP:" + +msgid "Response Time:" +msgstr "وقت الاستجابة:" + +msgid "Response Preview" +msgstr "معاينة الاستجابة" + +msgid "Test" +msgstr "اختبار" + +msgid "Error:" +msgstr "خطأ:" + +msgid "AJAX request failed." +msgstr "فشل طلب AJAX." + +msgid "You do not have permission to test API connectivity." +msgstr "ليس لديك إذن لاختبار اتصال API." + +msgid "Database Options Viewer" +msgstr "عارض خيارات قاعدة البيانات" + +msgid "View the raw data stored in WordPress options." +msgstr "عرض البيانات الخام المخزنة في خيارات WordPress." + +msgid "Select an option..." +msgstr "اختر خيارًا..." + +msgid "Option not found or empty." +msgstr "الخيار غير موجود أو فارغ." + +msgid "Quick Actions" +msgstr "إجراءات سريعة" + +msgid "Perform debugging actions. Use with caution." +msgstr "قم بإجراءات التصحيح. استخدم بحذر." + +msgid "Are you sure you want to clear all caches?" +msgstr "هل أنت متأكد من رغبتك في مسح جميع ذاكرات التخزين المؤقت؟" + +msgid "Clear All Caches" +msgstr "مسح جميع ذاكرات التخزين المؤقت" + +msgid "Are you sure you want to reset signatures?" +msgstr "هل أنت متأكد من رغبتك في إعادة تعيين التوقيعات؟" + +msgid "Reset Signatures" +msgstr "إعادة تعيين التوقيعات" + +msgid "Export Debug Info" +msgstr "تصدير معلومات التصحيح" + +msgid "You do not have permission to perform these actions." +msgstr "ليس لديك إذن لتنفيذ هذه الإجراءات." + +msgid "Settings saved." +msgstr "تم حفظ الإعدادات." + +msgid "WPVulnerability cron events have been repaired across the network." +msgstr "تم إصلاح أحداث cron في WPVulnerability عبر الشبكة." + +msgid "You do not have permission to access this page." +msgstr "ليس لديك إذن للوصول إلى هذه الصفحة." + +#, php-format +msgid "WordPress %1$s has a known vulnerability that may be affecting your installed version." +msgstr "يحتوي WordPress %1$s على ثغرة أمنية معروفة قد تؤثر على الإصدار المثبت لديك." + +msgid "Actively exploited" +msgstr "يتم استغلاله بنشاط" + +msgid "Public exploit" +msgstr "استغلال عام" + +msgid "Automatable" +msgstr "قابل للأتمتة" + +msgid "References:" +msgstr "المراجع:" + +msgid "Invalid component specified." +msgstr "تم تحديد مكون غير صالح." + +msgid "Version not detected for this component." +msgstr "لم يتم اكتشاف الإصدار لهذا المكون." + +msgid "API request successful." +msgstr "نجح طلب API." + +#, php-format +msgid "API returned HTTP code %d." +msgstr "أعادت API كود HTTP %d." + +msgid "WPVulnerability Logs" +msgstr "سجلات WPVulnerability" + +msgid "WPVulnerability Log" +msgstr "سجل WPVulnerability" + +msgid "Low" +msgstr "منخفض" + +msgid "Medium" +msgstr "متوسط" + +msgid "High" +msgstr "مرتفع" + +msgid "Critical" +msgstr "حرج" + +msgid "WPVulnerability Shell Logs" +msgstr "سجلات Shell لـ WPVulnerability" + +msgid "WPVulnerability Shell Log" +msgstr "سجل Shell لـ WPVulnerability" + +msgid "Every week" +msgstr "كل أسبوع" + +msgid "Every day" +msgstr "كل يوم" + +msgid "Invalid request." +msgstr "طلب غير صالح." + +msgid "You have unsubscribed from WPVulnerability notifications." +msgstr "لقد ألغيت اشتراكك من إشعارات WPVulnerability." + +#, php-format +msgid "Learn more about the WordPress Vulnerability Database API at %2$s" +msgstr "اعرف المزيد عن واجهة برمجة تطبيقات قاعدة بيانات ثغرات WordPress على %2$s" + +#, php-format +msgid "Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings." +msgstr "هل تريد التوقف عن استقبال هذه التنبيهات؟ إلغاء الاشتراك أو تغيير تكرار البريد الإلكتروني إلى أبدًا في إعدادات WPVulnerability." + +msgid "No vulnerabilities found" +msgstr "لم يتم العثور على ثغرات أمنية" + +msgid "This is likely a test. The site does not have vulnerabilities." +msgstr "هذا على الأرجح اختبار. الموقع لا يحتوي على ثغرات أمنية." + +msgid "Core vulnerabilities" +msgstr "ثغرات النواة" + +msgid "Plugins vulnerabilities" +msgstr "ثغرات الإضافات" + +msgid "Themes vulnerabilities" +msgstr "ثغرات القوالب" + +msgid "PHP vulnerabilities" +msgstr "ثغرات PHP" + +msgid "Apache HTTPD vulnerabilities" +msgstr "ثغرات Apache HTTPD" + +msgid "Nginx vulnerabilities" +msgstr "ثغرات Nginx" + +msgid "MariaDB vulnerabilities" +msgstr "ثغرات MariaDB" + +msgid "MySQL vulnerabilities" +msgstr "ثغرات MySQL" + +msgid "ImageMagick vulnerabilities" +msgstr "ثغرات ImageMagick" + +msgid "curl vulnerabilities" +msgstr "ثغرات curl" + +msgid "memcached vulnerabilities" +msgstr "ثغرات memcached" + +msgid "Redis vulnerabilities" +msgstr "ثغرات Redis" + +msgid "SQLite vulnerabilities" +msgstr "ثغرات SQLite" + +#, php-format +msgid "Vulnerability found: %s" +msgstr "تم اكتشاف ثغرة أمنية: %s" + +msgid "Vulnerability found" +msgstr "تم اكتشاف ثغرة أمنية" + +#, php-format +msgid "%1$s has a known vulnerability that may be affecting your installed version." +msgstr "يحتوي %1$s على ثغرة أمنية معروفة قد تؤثر على الإصدار المثبت لديك." + +msgid "This plugin is closed. Please replace it with another." +msgstr "هذه الإضافة مغلقة. يرجى استبدالها بأخرى." + +msgid "This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates." +msgstr "يبدو أن هذه الثغرة الأمنية لم يتم تصحيحها. ترقّب تحديثات الإضافة القادمة." + +msgid "It hasn't been updated in over a year." +msgstr "لم يتم تحديثه منذ أكثر من عام." + +msgid "It may no longer be available (closed?)." +msgstr "قد لا يكون متاحًا بعد الآن (مغلق؟)." + +msgid "Last updated on" +msgstr "آخر تحديث في" + +#, php-format +msgid "Vulnerabilities (%d)" +msgstr "الثغرات الأمنية (%d)" + +#, php-format +msgid "%s running" +msgstr "%s يعمل" + +msgid "End of Life" +msgstr "نهاية الدعم" + +msgid "End of life:" +msgstr "نهاية الدعم:" + +msgid "Supported" +msgstr "مدعوم" + +msgid "Plugin" +msgstr "الإضافة" + +msgid "Theme" +msgstr "القالب" + +#, php-format +msgid "End of life: %s" +msgstr "نهاية الدعم: %s" + +msgid "EOL" +msgstr "EOL" + +msgid "Network Settings" +msgstr "إعدادات الشبكة" + +msgid "Vulnerabilities" +msgstr "الثغرات الأمنية" + +msgid "Every 6 hours" +msgstr "كل 6 ساعات" + +msgid "Database updates" +msgstr "تحديثات قاعدة البيانات" + +msgid "Log cleanup" +msgstr "تنظيف السجلات" + +msgid "Notifications are scheduled, but settings currently disable them. Please review the notifications tab." +msgstr "الإشعارات مجدولة، لكن الإعدادات الحالية تعطلها. يرجى مراجعة تبويب الإشعارات." + +msgid "This event should not be scheduled for this site." +msgstr "لا ينبغي جدولة هذا الحدث لهذا الموقع." + +msgid "Not expected for this site." +msgstr "غير متوقع لهذا الموقع." + +msgid "No instances found." +msgstr "لم يتم العثور على أي نسخ." + +msgid "Scheduled with an unexpected interval." +msgstr "مجدول بفترة غير متوقعة." + +msgid "Multiple instances detected." +msgstr "تم اكتشاف نسخ متعددة." + +msgid "Scheduled as expected." +msgstr "مجدول كما هو متوقع." + +msgid "There aren't plugins vulnerabilities" +msgstr "لا توجد ثغرات أمنية في الإضافات" + +msgid "Shows possible vulnerabilities that exist in installed plugins." +msgstr "يُظهر الثغرات الأمنية المحتملة الموجودة في الإضافات المثبتة." + +#, php-format +msgid "There is %d plugin with vulnerabilities" +msgid_plural "There are %d plugins with vulnerabilities" +msgstr[0] "لا توجد إضافات بها ثغرات أمنية" +msgstr[1] "توجد إضافة واحدة بها ثغرات أمنية" +msgstr[2] "توجد إضافتان بهما ثغرات أمنية" +msgstr[3] "توجد %d إضافات بها ثغرات أمنية" +msgstr[4] "يوجد %d إضافة بها ثغرات أمنية" +msgstr[5] "يوجد %d إضافة بها ثغرات أمنية" + +msgid "We've detected potential vulnerabilities in installed plugins. Please check them and keep them updated." +msgstr "اكتشفنا ثغرات أمنية محتملة في الإضافات المثبتة. يرجى التحقق منها والحفاظ على تحديثها." + +msgid "Update plugins" +msgstr "تحديث الإضافات" + +msgid "There aren't themes vulnerabilities" +msgstr "لا توجد ثغرات أمنية في القوالب" + +msgid "Shows possible vulnerabilities that exist in installed themes." +msgstr "يُظهر الثغرات الأمنية المحتملة الموجودة في القوالب المثبتة." + +#, php-format +msgid "There is %d theme with vulnerabilities" +msgid_plural "There are %d themes with vulnerabilities" +msgstr[0] "لا توجد قوالب بها ثغرات أمنية" +msgstr[1] "يوجد قالب واحد به ثغرات أمنية" +msgstr[2] "يوجد قالبان بهما ثغرات أمنية" +msgstr[3] "توجد %d قوالب بها ثغرات أمنية" +msgstr[4] "يوجد %d قالبًا به ثغرات أمنية" +msgstr[5] "يوجد %d قالب به ثغرات أمنية" + +msgid "We've detected potential vulnerabilities in installed themes. Please check them and keep them updated." +msgstr "اكتشفنا ثغرات أمنية محتملة في القوالب المثبتة. يرجى التحقق منها والحفاظ على تحديثها." + +msgid "Update themes" +msgstr "تحديث القوالب" + +msgid "There aren't WordPress vulnerabilities" +msgstr "لا توجد ثغرات أمنية في WordPress" + +msgid "Shows possible vulnerabilities existing in the WordPress core." +msgstr "يُظهر الثغرات الأمنية المحتملة الموجودة في نواة WordPress." + +#, php-format +msgid "There is %d core vulnerability" +msgid_plural "There are %d core vulnerabilities" +msgstr[0] "لا توجد ثغرات أمنية في النواة" +msgstr[1] "توجد ثغرة أمنية واحدة في النواة" +msgstr[2] "توجد ثغرتان أمنيتان في النواة" +msgstr[3] "توجد %d ثغرات أمنية في النواة" +msgstr[4] "يوجد %d ثغرة أمنية في النواة" +msgstr[5] "يوجد %d ثغرة أمنية في النواة" + +msgid "We've detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated." +msgstr "اكتشفنا ثغرات أمنية محتملة في تثبيت WordPress هذا. يرجى التحقق منها والحفاظ على تحديث تثبيتك." + +msgid "Update WordPress" +msgstr "تحديث WordPress" + +msgid "Nginx" +msgstr "Nginx" + +msgid "Invalid software type" +msgstr "نوع برنامج غير صالح" + +msgid "Error" +msgstr "خطأ" + +msgid "The specified software type is not valid." +msgstr "نوع البرنامج المحدد غير صالح." + +#, php-format +msgid "There aren't %s vulnerabilities" +msgstr "لا توجد ثغرات أمنية في %s" + +#, php-format +msgid "Shows possible vulnerabilities existing in %s." +msgstr "يُظهر الثغرات الأمنية المحتملة الموجودة في %s." + +#, php-format +msgid "There is %1$d %2$s vulnerability" +msgid_plural "There are %1$d %2$s vulnerabilities" +msgstr[0] "لا توجد ثغرات أمنية في %2$s" +msgstr[1] "توجد ثغرة أمنية واحدة في %2$s" +msgstr[2] "توجد ثغرتان أمنيتان في %2$s" +msgstr[3] "توجد %1$d ثغرات أمنية في %2$s" +msgstr[4] "يوجد %1$d ثغرة أمنية في %2$s" +msgstr[5] "يوجد %1$d ثغرة أمنية في %2$s" + +#, php-format +msgid "We've detected potential vulnerabilities in %s. Please check them and keep your installation updated." +msgstr "اكتشفنا ثغرات أمنية محتملة في %s. يرجى التحقق منها والحفاظ على تحديث تثبيتك." + +msgid "How to update PHP" +msgstr "كيفية تحديث PHP" + +msgid "WPVulnerability Core" +msgstr "WPVulnerability Core" + +msgid "WPVulnerability Themes" +msgstr "WPVulnerability Themes" + +msgid "WPVulnerability Plugins" +msgstr "WPVulnerability Plugins" + +msgid "WPVulnerability PHP" +msgstr "WPVulnerability PHP" + +msgid "WPVulnerability Apache HTTPD" +msgstr "WPVulnerability Apache HTTPD" + +msgid "WPVulnerability Nginx" +msgstr "WPVulnerability Nginx" + +msgid "WPVulnerability MariaDB" +msgstr "WPVulnerability MariaDB" + +msgid "WPVulnerability MySQL" +msgstr "WPVulnerability MySQL" + +msgid "WPVulnerability ImageMagick" +msgstr "WPVulnerability ImageMagick" + +msgid "WPVulnerability curl" +msgstr "WPVulnerability curl" + +msgid "WPVulnerability memcached" +msgstr "WPVulnerability memcached" + +msgid "WPVulnerability redis" +msgstr "WPVulnerability redis" + +msgid "WPVulnerability sqlite" +msgstr "WPVulnerability sqlite" + +msgid "This theme is closed. Please replace it with another." +msgstr "هذا القالب مغلق. يرجى استبداله بآخر." + +msgid "This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates." +msgstr "يبدو أن هذه الثغرة الأمنية لم يتم تصحيحها. ترقّب تحديثات القالب القادمة." + +msgid "This theme has known vulnerabilities that may be affecting your installed version." +msgstr "يحتوي هذا القالب على ثغرات أمنية معروفة قد تؤثر على الإصدار المثبت لديك." diff --git a/languages/wpvulnerability-ast.l10n.php b/languages/wpvulnerability-ast.l10n.php new file mode 100644 index 0000000..db82eeb --- /dev/null +++ b/languages/wpvulnerability-ast.l10n.php @@ -0,0 +1,2 @@ +'wpvulnerability','plural-forms'=>'nplurals=2; plural=(n != 1);','language'=>'ast','project-id-version'=>'WPVulnerability 5.0.0','pot-creation-date'=>'2026-05-27T16:32:22+00:00','po-revision-date'=>'2026-05-27 00:00+0000','messages'=>['WPVulnerability'=>'WPVulnerability','https://www.wpvulnerability.com/plugin/'=>'https://www.wpvulnerability.com/plugin/','Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API.'=>'Recibe información sobre posibles vulnerabilidaes nel to WordPress dende la API de la base de datos de vulnerabilidaes de WordPress.','ROBOTSTXT'=>'ROBOTSTXT','https://www.robotstxt.es/'=>'https://www.robotstxt.es/','This command requires a WordPress administrator. Run with --user=.'=>'Esti comandu precisa d\'un administrador de WordPress. Execútalo con --user=.','No core vulnerabilities found.'=>'Nun s\'atoparon vulnerabilidaes nel nucleu.','No plugin vulnerabilities found.'=>'Nun s\'atoparon vulnerabilidaes en plugins.','No theme vulnerabilities found.'=>'Nun s\'atoparon vulnerabilidaes en temes.','No %s vulnerabilities found.'=>'Nun s\'atoparon vulnerabilidaes de %s.','Data from source has been reloaded.'=>'Los datos de la fonte volvieron a cargase.','You do not have permission to reload data.'=>'Nun tienes permisu pa recargar los datos.','Test email has been sent.'=>'Mandóse\'l correu de prueba.','Test email has failed. Please, check your email settings.'=>'El correu de prueba fallóu. Por favor, comproba la configuración del to correu electrónicu.','You do not have permission to send test emails.'=>'Nun tienes permisu pa mandar correos de prueba.','WPVulnerability cron events have been repaired.'=>'Los eventos cron de WPVulnerability reparáronse.','You do not have permission to repair cron events.'=>'Nun tienes permisu pa reparar eventos cron.','All logs have been deleted.'=>'Desaniciáronse tolos rexistros.','You do not have permission to delete logs.'=>'Nun tienes permisu pa desaniciar rexistros.','Uninstall preference saved.'=>'Preferencia de desinstalación guardada.','WPVulnerability has been reset to defaults and reloaded.'=>'WPVulnerability reestablecióse a los valores predeterminaos y volvió a cargase.','You do not have permission to reset WPVulnerability.'=>'Nun tienes permisu pa reestablecer WPVulnerability.','All caches have been cleared.'=>'Llimpiáronse toles cachés.','You do not have permission to clear caches.'=>'Nun tienes permisu pa llimpiar les cachés.','Plugin and theme signatures have been reset.'=>'Les signatures de plugins y temes reestabliciéronse.','You do not have permission to reset signatures.'=>'Nun tienes permisu pa reestablecer les signatures.','You do not have permission to export debug information.'=>'Nun tienes permisu pa esportar información de depuración.','Database update has been executed.'=>'Executóse l\'actualización de la base de datos.','You do not have permission to run database updates.'=>'Nun tienes permisu pa executar actualizaciones de la base de datos.','Notification has been sent.'=>'Mandóse la notificación.','Notification sending failed.'=>'Fallóu l\'envíu de la notificación.','You do not have permission to send notifications.'=>'Nun tienes permisu pa mandar notificaciones.','Notifications'=>'Notificaciones','Analysis'=>'Análisis','Logs'=>'Rexistros','Security'=>'Seguridá','Tools'=>'Ferramientes','Debug'=>'Depuración','About'=>'Tocante a','Notification Settings'=>'Axustes de notificaciones','Configure how and when you want to receive vulnerability notifications.'=>'Configura cómo y cuándo quieres recibir notificaciones de vulnerabilidaes.','Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software.'=>'Mantente informáu sobre les vulnerabilidaes de seguridá na to instalación de WordPress, plugins, temes y software del sirvidor.','Cache Expiration Time'=>'Tiempu d\'espiración de la caché','FORCED'=>'FORZÁU','How long to cache vulnerability data before refreshing from the API.'=>'Cuántu tiempu guardar en caché los datos de vulnerabilidaes enantes d\'actualizar dende la API.','%d hour'=>'%d hora' . "\0" . '%d hores','You can force the cache time via wp-config.php constant. Learn more →'=>'Pues forzar el tiempu de caché per aciu de la constante de wp-config.php. Saber más →','Notification Frequency'=>'Frecuencia de notificaciones','Choose how often you want to receive vulnerability notifications.'=>'Esbilla con qué frecuencia quieres recibir notificaciones de vulnerabilidaes.','Never - Disable automatic notifications'=>'Nunca - Desactivar les notificaciones automátiques','Daily - Receive notifications every day'=>'Diario - Recibir notificaciones cada día','Weekly - Receive notifications once a week'=>'Semanal - Recibir notificaciones una vez a la selmana','Day:'=>'Día:','Monday'=>'Llunes','Tuesday'=>'Martes','Wednesday'=>'Miércoles','Thursday'=>'Xueves','Friday'=>'Vienres','Saturday'=>'Sábadu','Sunday'=>'Domingu','Time:'=>'Hora:','(24-hour format, server timezone)'=>'(Formatu de 24 hores, fuso horariu del sirvidor)','Notification Channels'=>'Canales de notificación','Select where you want to receive notifications.'=>'Esbilla ónde quieres recibir notificaciones.','Email'=>'Correu electrónicu','Email Addresses (separated by commas):'=>'Direiciones de correu electrónicu (separaes por comes):','Default:'=>'Predetermináu:','Slack'=>'Slack','Slack Webhook URL:'=>'URL del webhook de Slack:','Learn how to create a Slack incoming webhook →'=>'Deprender cómo crear un webhook entrante de Slack →','Microsoft Teams'=>'Microsoft Teams','Teams Webhook URL:'=>'URL del webhook de Teams:','Learn how to create a Teams incoming webhook →'=>'Deprender cómo crear un webhook entrante de Teams →','Discord'=>'Discord','Discord Webhook URL:'=>'URL del webhook de Discord:','Learn how to create a Discord webhook →'=>'Deprender cómo crear un webhook de Discord →','Telegram'=>'Telegram','Telegram Bot Token:'=>'Token del bot de Telegram:','Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Formatu: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','Telegram Chat ID:'=>'ID del chat de Telegram:','Learn how to create a Telegram bot and get Chat ID →'=>'Deprender cómo crear un bot de Telegram y llograr el Chat ID →','Save Notification Settings'=>'Guardar axustes de notificaciones','WordPress Components'=>'Componentes de WordPress','WordPress Core'=>'Nucleu de WordPress','Plugins'=>'Plugins','Themes'=>'Temes','Software & Languages'=>'Software y llingues','PHP'=>'PHP','Web Servers'=>'Sirvidores web','Apache HTTPD'=>'Apache HTTPD','nginx'=>'nginx','Databases'=>'Bases de datos','MariaDB'=>'MariaDB','MySQL'=>'MySQL','SQLite'=>'SQLite','Additional Tools'=>'Ferramientes adicionales','ImageMagick'=>'ImageMagick','curl'=>'curl','memcached'=>'memcached','Redis'=>'Redis','Component Analysis Settings'=>'Axustes del análisis de componentes','Enable or disable vulnerability analysis for specific components.'=>'Activa o desactiva el análisis de vulnerabilidaes pa componentes específicos.','Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red.'=>'Marca los componentes que quieras ANUBRIR de los escáneres y informes de vulnerabilidaes. Los componentes non marcaos analizaránse activamente. Los componentes con análisis activu amúestrense en verde, los anubritos en coloráu.','Hidden (forced by constant)'=>'Anubríu (forzáu por constante)','🔴 Analysis disabled'=>'🔴 Análisis desactiváu','🟢 Analysis active'=>'🟢 Análisis activu','Tip:'=>'Conseyu:','You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →'=>'Pues forzar la desactivación de componentes per aciu de les constantes de wp-config.php. Saber más sobre cómo forzar l\'anubrición de comprobaciones →','Save Analysis Settings'=>'Guardar axustes del análisis','« Previous'=>'« Anterior','Next »'=>'Siguiente »','Log entry not found or has been removed.'=>'Nun s\'atopó l\'entrada del rexistru o foi desaniciada.','Unable to load the requested log entry.'=>'Nun se pudo cargar l\'entrada del rexistru solicitada.','Log Configuration'=>'Configuración de rexistros','Total Logs'=>'Total de rexistros','Retention Period'=>'Periodu de retención','Disabled'=>'Desactiváu','%d day'=>'%d día' . "\0" . '%d díes','Log Retention Period'=>'Periodu de retención de rexistros','None (Disabled)'=>'Nengún (Desactiváu)','This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant.'=>'Esti valor impónlo la constante WPVULNERABILITY_LOG_RETENTION_DAYS.','Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted.'=>'Esbilla cuántu tiempu WPVulnerability ha de guardar los rexistros de respuestes de la API. Los rexistros más vieyes desaniciense automáticamente.','Save Configuration'=>'Guardar configuración','Log retention is currently disabled.'=>'La retención de rexistros ta desactivada nel momentu.','API responses are not being saved.'=>'Les respuestes de la API nun se tan guardando.','Log Details'=>'Detalles del rexistru','Date'=>'Data','API Endpoint'=>'Puntu final de la API','API Response'=>'Respuesta de la API','Back to Logs'=>'Volver a los rexistros','No logs available'=>'Nun hai rexistros disponibles','API response logs will appear here once the vulnerability scanner runs.'=>'Los rexistros de respuestes de la API van apaecere equí una vez que s\'execute l\'escáner de vulnerabilidaes.','API Response Logs'=>'Rexistros de respuestes de la API','Show:'=>'Amosar:','Apply'=>'Aplicar','Showing %1$s–%2$s of %3$s'=>'Amosando %1$s–%2$s de %3$s','Actions'=>'Aiciones','View'=>'Ver','Danger Zone'=>'Zona de peligru','Permanently delete all API response logs. This action cannot be undone.'=>'Desaniciar permanentemente tolos rexistros de respuestes de la API. Esta aición nun se pue desfacer.','Are you sure you want to delete all logs? This action cannot be undone.'=>'¿Tas seguru de que quieres desaniciar tolos rexistros? Esta aición nun se pue desfacer.','Delete All Logs'=>'Desaniciar tolos rexistros','Reload Data from API'=>'Recargar datos dende la API','Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information.'=>'Recarga toda la información del nucleu, plugins, temes y otros componentes directamente dende la API pa tener datos actualizaos. Esto va llimpiar la caché y va llograr información fresca de vulnerabilidaes.','Reload Data'=>'Recargar datos','Test Email Notifications'=>'Probar notificaciones por correu electrónicu','Send a test email notification with current vulnerability data to verify your email configuration is working correctly.'=>'Manda una notificación de correu de prueba colos datos actuales de vulnerabilidaes pa verificar que la configuración del to correu electrónicu funciona correutamente.','From address (configured via constant):'=>'Direición de orixe (configurada per aciu de constante):','From address (default):'=>'Direición de orixe (predeterminada):','Learn how to customize the email sender address →'=>'Deprender cómo personalizar la direición del remitente del correu electrónicu →','Send Test Email'=>'Mandar correu de prueba','WP-Cron Status'=>'Estáu de WP-Cron','View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly.'=>'Ver y xestionar los eventos programaos de WP-Cron. Comparar les programaciones esperaes colos trabayos cron reales pa asegurase de que les tarees automatizaes s\'executen correutamente.','No cron data available.'=>'Nun hai datos de cron disponibles.','Hook'=>'Hook','Expected'=>'Esperáu','Found'=>'Atopáu','Next Run'=>'Próxima execución','Status'=>'Estáu','Not expected'=>'Nun se esperaba','None'=>'Nengún','OK'=>'Correcto','⚠️ Unexpected WPVulnerability Events'=>'⚠️ Eventos inesperaos de WPVulnerability','No interval'=>'Ensin intervalu','Next:'=>'Siguiente:','Repair Cron Events'=>'Reparar eventos cron','Uninstall Data'=>'Datos de desinstalación','By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall.'=>'Por defectu, tolos datos del plugin consérvense cuando se desanicia WPVulnerability. Activa la opción de baxo namás si quieres que toles opciones, rexistros y datos en caché se desanicieen permanentemente al desinstalar.','Delete all plugin data on uninstall'=>'Desaniciar tolos datos del plugin al desinstalar','Default: unchecked (data preserved). Check only if you want a clean removal.'=>'Predetermináu: desmarcáu (datos conservaos). Marca namás si quieres una eliminación llimpia.','Save preference'=>'Guardar preferencia','Reset WPVulnerability'=>'Reestablecer WPVulnerability','Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API.'=>'Desanicia tolos axustes de WPVulnerability, datos en caché, rexistros y eventos programaos, y lluego restaura los valores predeterminaos y recarga datos dende la API.','This action cannot be undone.'=>'Esta aición nun se pue desfacer.','Are you sure you want to reset all WPVulnerability data? This action cannot be undone.'=>'¿Tas seguru de que quieres reestablecer tolos datos de WPVulnerability? Esta aición nun se pue desfacer.','Reset Plugin'=>'Reestablecer plugin','Vulnerability Database Statistics'=>'Estadístiques de la base de datos de vulnerabilidaes','%s vulnerability'=>'%s vulnerabilidá' . "\0" . '%s vulnerabilidaes','(%s product)'=>'(%s productu)' . "\0" . '(%s productos)','No data'=>'Ensin datos','Database last updated: %s'=>'Base de datos actualizada per última vez: %s','Intelligence Sources'=>'Fontes d\'intelixencia','Number of vulnerabilities contributed by each intelligence source.'=>'Númberu de vulnerabilidaes aportaes por cada fonte d\'intelixencia.','Source'=>'Fonte','Core'=>'Nucleu','Sponsors'=>'Patrocinadores','No sponsor data available.'=>'Nun hai datos de patrocinadores disponibles.','Contributors'=>'Collaboradores','No contributor data available.'=>'Nun hai datos de collaboradores disponibles.','You do not have sufficient permissions to access this page.'=>'Nun tienes permisos suficientes pa acceder a esta páxina.','WPVulnerability settings'=>'Axustes de WPVulnerability','Configure and save these settings to receive notifications.'=>'Configura y guarda estos axustes pa recibir notificaciones.','Configure and save these settings to hide vulnerabilities.'=>'Configura y guarda estos axustes pa anubrir vulnerabilidaes.','Default administrator email'=>'Correu electrónicu del administrador por defectu','Read more if you want to force the cache time.'=>'Lleer más si quieres forzar el tiempu de caché.','Never'=>'Nunca','Daily'=>'Diario','Weekly'=>'Semanal','Day'=>'Día','Hour'=>'Hora','Minute'=>'Minutu','Read more about how to force the deactivation of an item.'=>'Lleer más sobre cómo forzar la desactivación d\'un elementu.','Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com'=>'URL de webhook de Slack non válida. Tien de ser una URL HTTPS válida de hooks.slack.com','Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com'=>'URL de webhook de Microsoft Teams non válida. Tien de ser una URL HTTPS válida de office.com, office365.com o api.hooks.microsoft.com','Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com'=>'URL de webhook de Discord non válida. Tien de ser una URL HTTPS válida de discord.com o discordapp.com','Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Formatu del token del bot de Telegram non válidu. Tien de ser como: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','All Clear'=>'Too correcto','%d Critical Issue Found'=>'%d problema crítico atopáu' . "\0" . '%d problemes críticos atopáos','%d Issue Found'=>'%d problema atopáu' . "\0" . '%d problemes atopáos','Never checked'=>'Nunca verificáu','%d minute ago'=>'hai %d minutu' . "\0" . 'hai %d minutos','%d hour ago'=>'hai %d hora' . "\0" . 'hai %d hores','Last checked: %s'=>'Última verificación: %s','Refresh Now'=>'Anovar agora','No vulnerabilities detected'=>'Nun se detectaron vulnerabilidaes','Your site is up to date and secure'=>'El to sitiu ta anovado y seguru','Server Software'=>'Software del sirvidor','Site Health'=>'Salú del sitiu','Settings'=>'Axustes','WPVulnerability Status'=>'Estáu de WPVulnerability','Receive vulnerability notifications'=>'Recibir notificaciones de vulnerabilidaes','Cache expiration time'=>'Tiempu d\'espiración de la caché','How often you want to receive notifications'=>'Con qué frecuencia quieres recibir notificaciones','Where do you want to receive notifications?'=>'¿Ónde quieres recibir notificaciones?','Email addresses to notify (separated by commas)'=>'Direiciones de correu electrónicu pa notificar (separaes por comes)','Slack webhook URL'=>'URL del webhook de Slack','Teams webhook URL'=>'URL del webhook de Teams','Vulnerabilities to hide'=>'Vulnerabilidaes a anubrir','What do you want to hide?'=>'¿Qué quieres anubrir?','Standard (Hybrid Detection)'=>'Estándar (detección híbrida)','Strict (Extensions Only)'=>'Estrictu (namás estensiones)','Disabled (No Detection)'=>'Desactiváu (ensin detección)','Security Status'=>'Estáu de seguridá','Security Mode'=>'Mou de seguridá','Shell Execution'=>'Execución de shell','Enabled'=>'Activáu','Audit Logging'=>'Rexistru d\'auditoría','Enabled (%d days)'=>'Activáu (%d díes)','Total Log Entries'=>'Total d\'entraes de rexistru','Last Shell Execution'=>'Última execución de shell','%s ago'=>'hai %s','Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.'=>'Configura los axustes de seguridá per aciu de les constantes de wp-config.php: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.','See security configuration documentation for details.'=>'Ver la documentación de configuración de seguridá pa más detalles.','Memcached'=>'Memcached','Imagick Extension'=>'Estensión Imagick','Redis Extension'=>'Estensión Redis','Memcached Extension'=>'Estensión Memcached','Memcache Extension'=>'Estensión Memcache','SQLite3 Extension'=>'Estensión SQLite3','PDO SQLite'=>'PDO SQLite','Shell Command'=>'Comandu de shell','Binary Check'=>'Comprobación de binario','Not Detected'=>'Non detectáu','Software Detection Methods'=>'Métodos de detección de software','Shows which detection method was used for each software component and the reliability score.'=>'Amuesa qué métodu de detección s\'usó pa cada componente de software y la puntuación de fiabilidá.','Component'=>'Componente','Version'=>'Versión','Detection Method'=>'Métodu de detección','Reliability'=>'Fiabilidá','Not detected'=>'Non detectáu','Shell Execution Audit Logs'=>'Rexistros d\'auditoría d\'execución de shell','Complete audit trail of shell command executions for security monitoring.'=>'Pista d\'auditoría completa de les execuciones de comandos de shell pa la supervisión de seguridá.','No shell execution logs found.'=>'Nun s\'atoparon rexistros d\'execución de shell.','Logs will appear here when shell commands are executed for software detection.'=>'Los rexistros van apaecere equí cuando se executen comandos de shell pa la detección de software.','Time'=>'Hora','Command'=>'Comandu','User'=>'Usuariu','Output'=>'Salida','Showing the %d most recent log entries.'=>'Amosando les %d entraes de rexistru más recientes.','Invalid nonce.'=>'Nonce non válidu.','Insufficient permissions.'=>'Permisos insuficientes.','No component specified.'=>'Nun s\'especificó nengún componente.','Debug Information'=>'Información de depuración','This tab is only visible when WP_DEBUG is enabled. Use with caution.'=>'Esta llingüeta namás ye visible cuando WP_DEBUG ta activáu. Usar con precaución.','System Information'=>'Información del sistema','WordPress Version'=>'Versión de WordPress','Multisite'=>'Multisitiu','Yes'=>'Sí','No'=>'Non','Language'=>'Llingua','PHP Version'=>'Versión de PHP','PHP Extensions'=>'Estensiones de PHP','PHP Memory Limit'=>'Llímite de memoria de PHP','Database'=>'Base de datos','Web Server'=>'Sirvidor web','WP_DEBUG'=>'WP_DEBUG','WP_DEBUG_LOG'=>'WP_DEBUG_LOG','Path:'=>'Ruta:','Size: %s'=>'Tamañu: %s','View Log File'=>'Ver ficheru de rexistru','Log file is not web-accessible (outside wp-content)'=>'El ficheru de rexistru nun ye accesible dende la web (fuera de wp-content)','Log file does not exist yet'=>'El ficheru de rexistru entá nun esiste','Plugin Version'=>'Versión del plugin','Component Detection'=>'Detección de componentes','Version Detected'=>'Versión detectada','Analyzed'=>'Analizado','Cache Status'=>'Estáu de la caché','Configuration Summary'=>'Resume de la configuración','Cache Duration'=>'Duración de la caché','Log Retention'=>'Retención de rexistros','Components Analyzed'=>'Componentes analizaos','Notification Email'=>'Correu electrónicu de notificación','Slack Webhook'=>'Webhook de Slack','Configured & Enabled'=>'Configuráu y activáu','Configured (Disabled)'=>'Configuráu (desactiváu)','Not configured'=>'Non configuráu','Teams Webhook'=>'Webhook de Teams','Discord Webhook'=>'Webhook de Discord','Telegram Bot'=>'Bot de Telegram','Cron Status'=>'Estáu del cron','Update Database'=>'Anovar base de datos','Next run: %s'=>'Próxima execución: %s','Not scheduled'=>'Non programáu','Send Notification'=>'Mandar notificación','Run Update Now'=>'Executar anovación agora','Run Notification Now'=>'Mandar notificación agora','You do not have permission to run these actions.'=>'Nun tienes permisu pa executar estes aiciones.','API Testing'=>'Prueba de la API','Test API connectivity for each component. Click a button to send a test request.'=>'Probar la conectividá de la API pa cada componente. Fai clic nun botón pa mandar una solicitud de prueba.','Test %s'=>'Probar %s','Testing...'=>'Probando...','HTTP Code:'=>'Códigu HTTP:','Response Time:'=>'Tiempu de respuesta:','Response Preview'=>'Vista previa de la respuesta','Test'=>'Prueba','Error:'=>'Error:','AJAX request failed.'=>'La solicitud AJAX falló.','You do not have permission to test API connectivity.'=>'Nun tienes permisu pa probar la conectividá de la API.','Database Options Viewer'=>'Visor d\'opciones de la base de datos','View the raw data stored in WordPress options.'=>'Ver los datos en bruto almacenaos nes opciones de WordPress.','Select an option...'=>'Esbillar una opción...','Option not found or empty.'=>'Opción nun atopada o balera.','Quick Actions'=>'Aiciones rápides','Perform debugging actions. Use with caution.'=>'Realizar aiciones de depuración. Usar con precaución.','Are you sure you want to clear all caches?'=>'¿Tas seguru de que quieres llimpiar toles cachés?','Clear All Caches'=>'Llimpiar toles cachés','Are you sure you want to reset signatures?'=>'¿Tas seguru de que quieres reestablecer les signatures?','Reset Signatures'=>'Reestablecer signatures','Export Debug Info'=>'Esportar información de depuración','You do not have permission to perform these actions.'=>'Nun tienes permisu pa realizar estes aiciones.','Settings saved.'=>'Axustes guardaos.','WPVulnerability cron events have been repaired across the network.'=>'Los eventos cron de WPVulnerability reparáronse en toda la rede.','You do not have permission to access this page.'=>'Nun tienes permisu pa acceder a esta páxina.','WordPress %1$s has a known vulnerability that may be affecting your installed version.'=>'WordPress %1$s tien una vulnerabilidá conocida que pue tar afeutando a la to versión instalada.','Actively exploited'=>'Explotada activamente','Public exploit'=>'Exploit públicu','Automatable'=>'Automatizable','References:'=>'Referencies:','Invalid component specified.'=>'Componente especificáu non válidu.','Version not detected for this component.'=>'Nun se detectó versión pa esti componente.','API request successful.'=>'Solicitud de la API realizáu con ésitu.','API returned HTTP code %d.'=>'La API devolvió el códigu HTTP %d.','WPVulnerability Logs'=>'Rexistros de WPVulnerability','WPVulnerability Log'=>'Rexistru de WPVulnerability','Low'=>'Baxu','Medium'=>'Mediu','High'=>'Altu','Critical'=>'Crítico','WPVulnerability Shell Logs'=>'Rexistros de shell de WPVulnerability','WPVulnerability Shell Log'=>'Rexistru de shell de WPVulnerability','Every week'=>'Cada selmana','Every day'=>'Cada día','Invalid request.'=>'Solicitud non válida.','You have unsubscribed from WPVulnerability notifications.'=>'Desuscribiste-te de les notificaciones de WPVulnerability.','Learn more about the WordPress Vulnerability Database API at %2$s'=>'Saber más sobre la API de la base de datos de vulnerabilidaes de WordPress en %2$s','Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings.'=>'¿Quieres dexar de recibir estes alertes? Desuscribiete o cambia la frecuencia del correu a Nunca nes axustes de WPVulnerability.','No vulnerabilities found'=>'Nun s\'atoparon vulnerabilidaes','This is likely a test. The site does not have vulnerabilities.'=>'Esto ye probablemente una prueba. El sitiu nun tien vulnerabilidaes.','Core vulnerabilities'=>'Vulnerabilidaes del nucleu','Plugins vulnerabilities'=>'Vulnerabilidaes de plugins','Themes vulnerabilities'=>'Vulnerabilidaes de temes','PHP vulnerabilities'=>'Vulnerabilidaes de PHP','Apache HTTPD vulnerabilities'=>'Vulnerabilidaes d\'Apache HTTPD','Nginx vulnerabilities'=>'Vulnerabilidaes de Nginx','MariaDB vulnerabilities'=>'Vulnerabilidaes de MariaDB','MySQL vulnerabilities'=>'Vulnerabilidaes de MySQL','ImageMagick vulnerabilities'=>'Vulnerabilidaes d\'ImageMagick','curl vulnerabilities'=>'Vulnerabilidaes de curl','memcached vulnerabilities'=>'Vulnerabilidaes de memcached','Redis vulnerabilities'=>'Vulnerabilidaes de Redis','SQLite vulnerabilities'=>'Vulnerabilidaes de SQLite','Vulnerability found: %s'=>'Vulnerabilidá atopada: %s','Vulnerability found'=>'Vulnerabilidá atopada','%1$s has a known vulnerability that may be affecting your installed version.'=>'%1$s tien una vulnerabilidá conocida que pue tar afeutando a la to versión instalada.','This plugin is closed. Please replace it with another.'=>'Esti plugin ta zarráu. Sustitúilu por otru, por favor.','This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates.'=>'Esta vulnerabilidá paez nun tar parcheada. Queda atento a les próximes actualizaciones del plugin.','It hasn\'t been updated in over a year.'=>'Hai más d\'un añu que nun s\'actualiza.','It may no longer be available (closed?).'=>'Pue que yá nun tea disponible (zarráu?).','Last updated on'=>'Última actualización','Vulnerabilities (%d)'=>'Vulnerabilidaes (%d)','%s running'=>'%s en execución','End of Life'=>'Fin de vida','End of life:'=>'Fin de vida:','Supported'=>'Con soporte','Plugin'=>'Plugin','Theme'=>'Tema','End of life: %s'=>'Fin de vida: %s','EOL'=>'FDV','Network Settings'=>'Axustes de la rede','Vulnerabilities'=>'Vulnerabilidaes','Every 6 hours'=>'Cada 6 hores','Database updates'=>'Actualizaciones de la base de datos','Log cleanup'=>'Llimpieza de rexistros','Notifications are scheduled, but settings currently disable them. Please review the notifications tab.'=>'Les notificaciones tan programaes, pero los axustes actuales desactivenles. Por favor, revisa la llingüeta de notificaciones.','This event should not be scheduled for this site.'=>'Esti eventu nun debería tar programáu pa esti sitiu.','Not expected for this site.'=>'Non esperáu pa esti sitiu.','No instances found.'=>'Nun s\'atoparon instancies.','Scheduled with an unexpected interval.'=>'Programáu con un intervalu inesperáu.','Multiple instances detected.'=>'Detectáronse múltiples instancies.','Scheduled as expected.'=>'Programáu como s\'esperaba.','There aren\'t plugins vulnerabilities'=>'Nun hai vulnerabilidaes de plugins','Shows possible vulnerabilities that exist in installed plugins.'=>'Amuesa les posibles vulnerabilidaes qu\'esisten nes plugins installaes.','There is %d plugin with vulnerabilities'=>'Hai %d plugin con vulnerabilidaes' . "\0" . 'Hai %d plugins con vulnerabilidaes','We\'ve detected potential vulnerabilities in installed plugins. Please check them and keep them updated.'=>'Detectamos vulnerabilidaes potenciales nes plugins installaes. Compruébeles y mantén les plugins actualizaes, por favor.','Update plugins'=>'Anovar plugins','There aren\'t themes vulnerabilities'=>'Nun hai vulnerabilidaes de temes','Shows possible vulnerabilities that exist in installed themes.'=>'Amuesa les posibles vulnerabilidaes qu\'esisten nes temes installaes.','There is %d theme with vulnerabilities'=>'Hai %d tema con vulnerabilidaes' . "\0" . 'Hai %d temes con vulnerabilidaes','We\'ve detected potential vulnerabilities in installed themes. Please check them and keep them updated.'=>'Detectamos vulnerabilidaes potenciales nes temes installaes. Compruébeles y mantén les temes actualizaes, por favor.','Update themes'=>'Anovar temes','There aren\'t WordPress vulnerabilities'=>'Nun hai vulnerabilidaes de WordPress','Shows possible vulnerabilities existing in the WordPress core.'=>'Amuesa les posibles vulnerabilidaes esistentes nel nucleu de WordPress.','There is %d core vulnerability'=>'Hai %d vulnerabilidá del nucleu' . "\0" . 'Hai %d vulnerabilidaes del nucleu','We\'ve detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated.'=>'Detectamos vulnerabilidaes potenciales n\'esta instalación de WordPress. Compruébeles y mantén la to instalación actualizada, por favor.','Update WordPress'=>'Anovar WordPress','Nginx'=>'Nginx','Invalid software type'=>'Tipu de software non válidu','Error'=>'Error','The specified software type is not valid.'=>'El tipu de software especificáu nun ye válidu.','There aren\'t %s vulnerabilities'=>'Nun hai vulnerabilidaes de %s','Shows possible vulnerabilities existing in %s.'=>'Amuesa les posibles vulnerabilidaes esistentes en %s.','There is %1$d %2$s vulnerability'=>'Hai %1$d vulnerabilidá de %2$s.' . "\0" . 'Hai %1$d vulnerabilidaes de %2$s.','We\'ve detected potential vulnerabilities in %s. Please check them and keep your installation updated.'=>'Detectamos vulnerabilidaes potenciales en %s. Por favor, compruébeles y mantén actualizada la to instalación.','How to update PHP'=>'Cómo anovar PHP','WPVulnerability Core'=>'WPVulnerability pa\'l nucleu','WPVulnerability Themes'=>'WPVulnerability pa temes','WPVulnerability Plugins'=>'WPVulnerability pa plugins','WPVulnerability PHP'=>'WPVulnerability PHP','WPVulnerability Apache HTTPD'=>'WPVulnerability Apache HTTPD','WPVulnerability Nginx'=>'WPVulnerability Nginx','WPVulnerability MariaDB'=>'WPVulnerability MariaDB','WPVulnerability MySQL'=>'WPVulnerability MySQL','WPVulnerability ImageMagick'=>'WPVulnerability ImageMagick','WPVulnerability curl'=>'WPVulnerability curl','WPVulnerability memcached'=>'WPVulnerability memcached','WPVulnerability redis'=>'WPVulnerability redis','WPVulnerability sqlite'=>'WPVulnerability sqlite','This theme is closed. Please replace it with another.'=>'Esti tema ta zarráu. Sustitúilu por otru, por favor.','This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates.'=>'Esta vulnerabilidá paez nun tar parcheada. Queda atento a les próximes actualizaciones del tema.','This theme has known vulnerabilities that may be affecting your installed version.'=>'Esti tema tien vulnerabilidaes conocíes que pueden tar afeutando a la to versión instalada.']]; \ No newline at end of file diff --git a/languages/wpvulnerability-ast.mo b/languages/wpvulnerability-ast.mo new file mode 100644 index 0000000000000000000000000000000000000000..f0d50ad223154b37988c57a58d9c488207d1e456 GIT binary patch literal 40800 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 literal 0 HcmV?d00001 diff --git a/languages/wpvulnerability-ast.po b/languages/wpvulnerability-ast.po new file mode 100644 index 0000000..48c8f41 --- /dev/null +++ b/languages/wpvulnerability-ast.po @@ -0,0 +1,2196 @@ +# Copyright (C) 2026 ROBOTSTXT +msgid "" +msgstr "" +"Project-Id-Version: WPVulnerability 5.0.0\n" +"POT-Creation-Date: 2026-05-27T16:32:22+00:00\n" +"PO-Revision-Date: 2026-05-27 00:00+0000\n" +"Last-Translator: Automatically generated\n" +"Language-Team: Asturian \n" +"Language: ast\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Domain: wpvulnerability\n" + +#. Plugin Name of the plugin +#: wpvulnerability.php wpvulnerability-admin.php:1782 +#: wpvulnerability-admin.php:1783 wpvulnerability-adminms.php:1945 +#: wpvulnerability-adminms.php:1946 wpvulnerability-notifications.php:105 +msgid "WPVulnerability" +msgstr "WPVulnerability" + +#. Plugin URI of the plugin +#: wpvulnerability.php +msgid "https://www.wpvulnerability.com/plugin/" +msgstr "https://www.wpvulnerability.com/plugin/" + +#. Description of the plugin +#: wpvulnerability.php +msgid "" +"Receive information about possible vulnerabilities in your WordPress from " +"WordPress Vulnerability Database API." +msgstr "" +"Recibe información sobre posibles vulnerabilidaes nel to WordPress dende la " +"API de la base de datos de vulnerabilidaes de WordPress." + +#. Author of the plugin +#: wpvulnerability.php +msgid "ROBOTSTXT" +msgstr "ROBOTSTXT" + +#. Author URI of the plugin +#: wpvulnerability.php +msgid "https://www.robotstxt.es/" +msgstr "https://www.robotstxt.es/" + +#: class-wpvulnerability-cli.php:35 class-wpvulnerability-config-cli.php:32 +msgid "" +"This command requires a WordPress administrator. Run with --" +"user=." +msgstr "" +"Esti comandu precisa d'un administrador de WordPress. Execútalo con --" +"user=." + +#: class-wpvulnerability-cli.php:156 +msgid "No core vulnerabilities found." +msgstr "Nun s'atoparon vulnerabilidaes nel nucleu." + +#: class-wpvulnerability-cli.php:275 +msgid "No plugin vulnerabilities found." +msgstr "Nun s'atoparon vulnerabilidaes en plugins." + +#: class-wpvulnerability-cli.php:393 +msgid "No theme vulnerabilities found." +msgstr "Nun s'atoparon vulnerabilidaes en temes." + +#. translators: %s is the software name (php, apache, nginx, etc.) +#: class-wpvulnerability-cli.php:490 +#, php-format +msgid "No %s vulnerabilities found." +msgstr "Nun s'atoparon vulnerabilidaes de %s." + +#: wpvulnerability-admin.php:63 wpvulnerability-adminms.php:227 +msgid "Data from source has been reloaded." +msgstr "Los datos de la fonte volvieron a cargase." + +#: wpvulnerability-admin.php:65 wpvulnerability-adminms.php:229 +msgid "You do not have permission to reload data." +msgstr "Nun tienes permisu pa recargar los datos." + +#: wpvulnerability-admin.php:93 wpvulnerability-adminms.php:255 +msgid "Test email has been sent." +msgstr "Mandóse'l correu de prueba." + +#: wpvulnerability-admin.php:95 wpvulnerability-adminms.php:259 +msgid "Test email has failed. Please, check your email settings." +msgstr "" +"El correu de prueba fallóu. Por favor, comproba la configuración del to " +"correu electrónicu." + +#: wpvulnerability-admin.php:98 wpvulnerability-adminms.php:263 +msgid "You do not have permission to send test emails." +msgstr "Nun tienes permisu pa mandar correos de prueba." + +#: wpvulnerability-admin.php:113 +msgid "WPVulnerability cron events have been repaired." +msgstr "Los eventos cron de WPVulnerability reparáronse." + +#: wpvulnerability-admin.php:115 wpvulnerability-adminms.php:279 +msgid "You do not have permission to repair cron events." +msgstr "Nun tienes permisu pa reparar eventos cron." + +#: wpvulnerability-admin.php:127 wpvulnerability-adminms.php:291 +msgid "All logs have been deleted." +msgstr "Desaniciáronse tolos rexistros." + +#: wpvulnerability-admin.php:129 wpvulnerability-adminms.php:293 +msgid "You do not have permission to delete logs." +msgstr "Nun tienes permisu pa desaniciar rexistros." + +#: wpvulnerability-admin.php:146 +msgid "Uninstall preference saved." +msgstr "Preferencia de desinstalación guardada." + +#: wpvulnerability-admin.php:153 wpvulnerability-adminms.php:316 +msgid "WPVulnerability has been reset to defaults and reloaded." +msgstr "WPVulnerability reestablecióse a los valores predeterminaos y volvió a cargase." + +#: wpvulnerability-admin.php:155 wpvulnerability-adminms.php:318 +msgid "You do not have permission to reset WPVulnerability." +msgstr "Nun tienes permisu pa reestablecer WPVulnerability." + +#: wpvulnerability-admin.php:170 wpvulnerability-adminms.php:333 +msgid "All caches have been cleared." +msgstr "Llimpiáronse toles cachés." + +#: wpvulnerability-admin.php:172 wpvulnerability-adminms.php:335 +msgid "You do not have permission to clear caches." +msgstr "Nun tienes permisu pa llimpiar les cachés." + +#: wpvulnerability-admin.php:187 wpvulnerability-adminms.php:350 +msgid "Plugin and theme signatures have been reset." +msgstr "Les signatures de plugins y temes reestabliciéronse." + +#: wpvulnerability-admin.php:189 wpvulnerability-adminms.php:352 +msgid "You do not have permission to reset signatures." +msgstr "Nun tienes permisu pa reestablecer les signatures." + +#: wpvulnerability-admin.php:212 wpvulnerability-adminms.php:375 +msgid "You do not have permission to export debug information." +msgstr "Nun tienes permisu pa esportar información de depuración." + +#: wpvulnerability-admin.php:224 wpvulnerability-adminms.php:387 +msgid "Database update has been executed." +msgstr "Executóse l'actualización de la base de datos." + +#: wpvulnerability-admin.php:226 wpvulnerability-adminms.php:389 +msgid "You do not have permission to run database updates." +msgstr "Nun tienes permisu pa executar actualizaciones de la base de datos." + +#: wpvulnerability-admin.php:247 wpvulnerability-adminms.php:410 +msgid "Notification has been sent." +msgstr "Mandóse la notificación." + +#: wpvulnerability-admin.php:249 wpvulnerability-adminms.php:412 +msgid "Notification sending failed." +msgstr "Fallóu l'envíu de la notificación." + +#: wpvulnerability-admin.php:252 wpvulnerability-adminms.php:415 +msgid "You do not have permission to send notifications." +msgstr "Nun tienes permisu pa mandar notificaciones." + +#: wpvulnerability-admin.php:266 wpvulnerability-adminms.php:539 +#: wpvulnerability-schedule.php:323 +msgid "Notifications" +msgstr "Notificaciones" + +#: wpvulnerability-admin.php:269 wpvulnerability-adminms.php:542 +msgid "Analysis" +msgstr "Análisis" + +#: wpvulnerability-admin.php:272 wpvulnerability-adminms.php:545 +msgid "Logs" +msgstr "Rexistros" + +#: wpvulnerability-admin.php:275 wpvulnerability-adminms.php:548 +#: wpvulnerability-sitehealth.php:25 wpvulnerability-sitehealth.php:77 +#: wpvulnerability-sitehealth.php:129 wpvulnerability-sitehealth.php:210 +msgid "Security" +msgstr "Seguridá" + +#: wpvulnerability-admin.php:278 wpvulnerability-adminms.php:551 +msgid "Tools" +msgstr "Ferramientes" + +#: wpvulnerability-admin.php:285 wpvulnerability-adminms.php:558 +msgid "Debug" +msgstr "Depuración" + +#: wpvulnerability-admin.php:290 wpvulnerability-adminms.php:563 +msgid "About" +msgstr "Tocante a" + +#: wpvulnerability-admin.php:427 wpvulnerability-adminms.php:700 +msgid "Notification Settings" +msgstr "Axustes de notificaciones" + +#: wpvulnerability-admin.php:430 wpvulnerability-adminms.php:703 +msgid "Configure how and when you want to receive vulnerability notifications." +msgstr "Configura cómo y cuándo quieres recibir notificaciones de vulnerabilidaes." + +#: wpvulnerability-admin.php:431 wpvulnerability-adminms.php:704 +msgid "" +"Stay informed about security vulnerabilities in your WordPress installation, " +"plugins, themes, and server software." +msgstr "" +"Mantente informáu sobre les vulnerabilidaes de seguridá na to instalación de " +"WordPress, plugins, temes y software del sirvidor." + +#: wpvulnerability-admin.php:438 wpvulnerability-adminms.php:711 +msgid "Cache Expiration Time" +msgstr "Tiempu d'espiración de la caché" + +#: wpvulnerability-admin.php:440 wpvulnerability-admin.php:814 +#: wpvulnerability-adminms.php:713 wpvulnerability-adminms.php:1087 +msgid "FORCED" +msgstr "FORZÁU" + +#: wpvulnerability-admin.php:444 wpvulnerability-adminms.php:717 +msgid "How long to cache vulnerability data before refreshing from the API." +msgstr "Cuántu tiempu guardar en caché los datos de vulnerabilidaes enantes d'actualizar dende la API." + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:453 wpvulnerability-admin.php:1891 +#: wpvulnerability-admin.php:3631 wpvulnerability-adminms.php:726 +#: wpvulnerability-adminms.php:2039 wpvulnerability-adminms.php:3825 +#, php-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d hora" +msgstr[1] "%d hores" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:469 wpvulnerability-adminms.php:742 +#, php-format +msgid "" +"You can force the cache time via wp-config.php constant. Learn more →" +msgstr "" +"Pues forzar el tiempu de caché per aciu de la constante de wp-config.php. Saber más →" + +#: wpvulnerability-admin.php:481 wpvulnerability-admin.php:3665 +#: wpvulnerability-adminms.php:754 wpvulnerability-adminms.php:3859 +msgid "Notification Frequency" +msgstr "Frecuencia de notificaciones" + +#: wpvulnerability-admin.php:484 wpvulnerability-adminms.php:757 +msgid "Choose how often you want to receive vulnerability notifications." +msgstr "Esbilla con qué frecuencia quieres recibir notificaciones de vulnerabilidaes." + +#: wpvulnerability-admin.php:489 wpvulnerability-adminms.php:762 +msgid "Never - Disable automatic notifications" +msgstr "Nunca - Desactivar les notificaciones automátiques" + +#: wpvulnerability-admin.php:493 wpvulnerability-adminms.php:766 +msgid "Daily - Receive notifications every day" +msgstr "Diario - Recibir notificaciones cada día" + +#: wpvulnerability-admin.php:497 wpvulnerability-adminms.php:770 +msgid "Weekly - Receive notifications once a week" +msgstr "Semanal - Recibir notificaciones una vez a la selmana" + +#: wpvulnerability-admin.php:503 wpvulnerability-adminms.php:776 +msgid "Day:" +msgstr "Día:" + +#: wpvulnerability-admin.php:505 wpvulnerability-admin.php:1955 +#: wpvulnerability-adminms.php:778 wpvulnerability-adminms.php:2115 +msgid "Monday" +msgstr "Llunes" + +#: wpvulnerability-admin.php:506 wpvulnerability-admin.php:1956 +#: wpvulnerability-adminms.php:779 wpvulnerability-adminms.php:2116 +msgid "Tuesday" +msgstr "Martes" + +#: wpvulnerability-admin.php:507 wpvulnerability-admin.php:1957 +#: wpvulnerability-adminms.php:780 wpvulnerability-adminms.php:2117 +msgid "Wednesday" +msgstr "Miércoles" + +#: wpvulnerability-admin.php:508 wpvulnerability-admin.php:1958 +#: wpvulnerability-adminms.php:781 wpvulnerability-adminms.php:2118 +msgid "Thursday" +msgstr "Xueves" + +#: wpvulnerability-admin.php:509 wpvulnerability-admin.php:1959 +#: wpvulnerability-adminms.php:782 wpvulnerability-adminms.php:2119 +msgid "Friday" +msgstr "Vienres" + +#: wpvulnerability-admin.php:510 wpvulnerability-admin.php:1960 +#: wpvulnerability-adminms.php:783 wpvulnerability-adminms.php:2120 +msgid "Saturday" +msgstr "Sábadu" + +#: wpvulnerability-admin.php:511 wpvulnerability-admin.php:1961 +#: wpvulnerability-adminms.php:784 wpvulnerability-adminms.php:2121 +msgid "Sunday" +msgstr "Domingu" + +#: wpvulnerability-admin.php:515 wpvulnerability-adminms.php:788 +msgid "Time:" +msgstr "Hora:" + +#: wpvulnerability-admin.php:519 wpvulnerability-adminms.php:792 +msgid "(24-hour format, server timezone)" +msgstr "(Formatu de 24 hores, fuso horariu del sirvidor)" + +#: wpvulnerability-admin.php:528 wpvulnerability-adminms.php:801 +msgid "Notification Channels" +msgstr "Canales de notificación" + +#: wpvulnerability-admin.php:531 wpvulnerability-adminms.php:804 +msgid "Select where you want to receive notifications." +msgstr "Esbilla ónde quieres recibir notificaciones." + +#: wpvulnerability-admin.php:536 wpvulnerability-admin.php:2011 +#: wpvulnerability-adminms.php:809 wpvulnerability-adminms.php:2169 +msgid "Email" +msgstr "Correu electrónicu" + +#: wpvulnerability-admin.php:539 wpvulnerability-adminms.php:812 +msgid "Email Addresses (separated by commas):" +msgstr "Direiciones de correu electrónicu (separaes por comes):" + +#: wpvulnerability-admin.php:541 wpvulnerability-adminms.php:814 +msgid "Default:" +msgstr "Predetermináu:" + +#: wpvulnerability-admin.php:546 wpvulnerability-admin.php:2016 +#: wpvulnerability-adminms.php:819 wpvulnerability-adminms.php:2174 +msgid "Slack" +msgstr "Slack" + +#: wpvulnerability-admin.php:549 wpvulnerability-adminms.php:822 +msgid "Slack Webhook URL:" +msgstr "URL del webhook de Slack:" + +#. translators: %s: Slack documentation URL +#: wpvulnerability-admin.php:555 wpvulnerability-adminms.php:828 +#, php-format +msgid "" +"Learn how to " +"create a Slack incoming webhook →" +msgstr "" +"Deprender cómo " +"crear un webhook entrante de Slack →" + +#: wpvulnerability-admin.php:564 wpvulnerability-admin.php:2021 +#: wpvulnerability-adminms.php:837 wpvulnerability-adminms.php:2179 +msgid "Microsoft Teams" +msgstr "Microsoft Teams" + +#: wpvulnerability-admin.php:567 wpvulnerability-adminms.php:840 +msgid "Teams Webhook URL:" +msgstr "URL del webhook de Teams:" + +#. translators: %s: Microsoft Teams documentation URL +#: wpvulnerability-admin.php:573 wpvulnerability-adminms.php:846 +#, php-format +msgid "" +"Learn how to " +"create a Teams incoming webhook →" +msgstr "" +"Deprender cómo " +"crear un webhook entrante de Teams →" + +#: wpvulnerability-admin.php:582 wpvulnerability-adminms.php:855 +msgid "Discord" +msgstr "Discord" + +#: wpvulnerability-admin.php:585 wpvulnerability-adminms.php:858 +msgid "Discord Webhook URL:" +msgstr "URL del webhook de Discord:" + +#. translators: %s: Discord documentation URL +#: wpvulnerability-admin.php:591 wpvulnerability-adminms.php:864 +#, php-format +msgid "" +"Learn how to " +"create a Discord webhook →" +msgstr "" +"Deprender cómo " +"crear un webhook de Discord →" + +#: wpvulnerability-admin.php:600 wpvulnerability-adminms.php:873 +msgid "Telegram" +msgstr "Telegram" + +#: wpvulnerability-admin.php:603 wpvulnerability-adminms.php:876 +msgid "Telegram Bot Token:" +msgstr "Token del bot de Telegram:" + +#: wpvulnerability-admin.php:605 wpvulnerability-adminms.php:878 +msgid "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "Formatu: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:607 wpvulnerability-adminms.php:880 +msgid "Telegram Chat ID:" +msgstr "ID del chat de Telegram:" + +#. translators: %s: Telegram documentation URL +#: wpvulnerability-admin.php:613 wpvulnerability-adminms.php:886 +#, php-format +msgid "" +"Learn how to " +"create a Telegram bot and get Chat ID →" +msgstr "" +"Deprender cómo " +"crear un bot de Telegram y llograr el Chat ID →" + +#: wpvulnerability-admin.php:623 wpvulnerability-adminms.php:896 +msgid "Save Notification Settings" +msgstr "Guardar axustes de notificaciones" + +#: wpvulnerability-admin.php:700 wpvulnerability-admin.php:2552 +#: wpvulnerability-adminms.php:973 wpvulnerability-adminms.php:2459 +msgid "WordPress Components" +msgstr "Componentes de WordPress" + +#: wpvulnerability-admin.php:703 wpvulnerability-admin.php:2560 +#: wpvulnerability-adminms.php:976 wpvulnerability-adminms.php:2467 +msgid "WordPress Core" +msgstr "Nucleu de WordPress" + +#: wpvulnerability-admin.php:707 wpvulnerability-admin.php:1472 +#: wpvulnerability-admin.php:1573 wpvulnerability-admin.php:2109 +#: wpvulnerability-admin.php:2571 wpvulnerability-adminms.php:980 +#: wpvulnerability-adminms.php:1744 wpvulnerability-adminms.php:1843 +#: wpvulnerability-adminms.php:2266 wpvulnerability-adminms.php:2478 +msgid "Plugins" +msgstr "Plugins" + +#: wpvulnerability-admin.php:711 wpvulnerability-admin.php:1473 +#: wpvulnerability-admin.php:1574 wpvulnerability-admin.php:2114 +#: wpvulnerability-admin.php:2587 wpvulnerability-adminms.php:984 +#: wpvulnerability-adminms.php:1745 wpvulnerability-adminms.php:1844 +#: wpvulnerability-adminms.php:2271 wpvulnerability-adminms.php:2494 +msgid "Themes" +msgstr "Temes" + +#: wpvulnerability-admin.php:717 wpvulnerability-adminms.php:990 +msgid "Software & Languages" +msgstr "Software y llingues" + +#: wpvulnerability-admin.php:720 wpvulnerability-admin.php:1474 +#: wpvulnerability-admin.php:2119 wpvulnerability-adminms.php:993 +#: wpvulnerability-adminms.php:1746 wpvulnerability-adminms.php:2276 +#: wpvulnerability-sitehealth.php:178 +msgid "PHP" +msgstr "PHP" + +#: wpvulnerability-admin.php:726 wpvulnerability-adminms.php:999 +msgid "Web Servers" +msgstr "Sirvidores web" + +#: wpvulnerability-admin.php:729 wpvulnerability-admin.php:1475 +#: wpvulnerability-admin.php:2124 wpvulnerability-adminms.php:1002 +#: wpvulnerability-adminms.php:1747 wpvulnerability-adminms.php:2281 +#: wpvulnerability-sitehealth.php:179 +msgid "Apache HTTPD" +msgstr "Apache HTTPD" + +#: wpvulnerability-admin.php:733 wpvulnerability-admin.php:1476 +#: wpvulnerability-admin.php:2129 wpvulnerability-adminms.php:1006 +#: wpvulnerability-adminms.php:1748 wpvulnerability-adminms.php:2286 +msgid "nginx" +msgstr "nginx" + +#: wpvulnerability-admin.php:739 wpvulnerability-adminms.php:1012 +msgid "Databases" +msgstr "Bases de datos" + +#: wpvulnerability-admin.php:742 wpvulnerability-admin.php:1477 +#: wpvulnerability-admin.php:2134 wpvulnerability-adminms.php:1015 +#: wpvulnerability-adminms.php:1749 wpvulnerability-adminms.php:2291 +#: wpvulnerability-sitehealth.php:181 +msgid "MariaDB" +msgstr "MariaDB" + +#: wpvulnerability-admin.php:746 wpvulnerability-admin.php:1478 +#: wpvulnerability-admin.php:2139 wpvulnerability-adminms.php:1019 +#: wpvulnerability-adminms.php:1750 wpvulnerability-adminms.php:2296 +#: wpvulnerability-sitehealth.php:182 +msgid "MySQL" +msgstr "MySQL" + +#: wpvulnerability-admin.php:750 wpvulnerability-admin.php:1483 +#: wpvulnerability-admin.php:2164 wpvulnerability-admin.php:3104 +#: wpvulnerability-adminms.php:1023 wpvulnerability-adminms.php:1755 +#: wpvulnerability-adminms.php:2321 wpvulnerability-adminms.php:3281 +msgid "SQLite" +msgstr "SQLite" + +#: wpvulnerability-admin.php:756 wpvulnerability-adminms.php:1029 +msgid "Additional Tools" +msgstr "Ferramientes adicionales" + +#: wpvulnerability-admin.php:759 wpvulnerability-admin.php:1479 +#: wpvulnerability-admin.php:2144 wpvulnerability-admin.php:3101 +#: wpvulnerability-adminms.php:1032 wpvulnerability-adminms.php:1751 +#: wpvulnerability-adminms.php:2301 wpvulnerability-adminms.php:3278 +#: wpvulnerability-sitehealth.php:183 +msgid "ImageMagick" +msgstr "ImageMagick" + +#: wpvulnerability-admin.php:763 wpvulnerability-admin.php:1480 +#: wpvulnerability-admin.php:2149 wpvulnerability-adminms.php:1036 +#: wpvulnerability-adminms.php:1752 wpvulnerability-adminms.php:2306 +#: wpvulnerability-sitehealth.php:184 +msgid "curl" +msgstr "curl" + +#: wpvulnerability-admin.php:767 wpvulnerability-admin.php:1481 +#: wpvulnerability-admin.php:2154 wpvulnerability-adminms.php:1040 +#: wpvulnerability-adminms.php:1753 wpvulnerability-adminms.php:2311 +msgid "memcached" +msgstr "memcached" + +#: wpvulnerability-admin.php:771 wpvulnerability-admin.php:1482 +#: wpvulnerability-admin.php:2159 wpvulnerability-admin.php:3102 +#: wpvulnerability-adminms.php:1044 wpvulnerability-adminms.php:1754 +#: wpvulnerability-adminms.php:2316 wpvulnerability-adminms.php:3279 +msgid "Redis" +msgstr "Redis" + +#: wpvulnerability-admin.php:784 wpvulnerability-adminms.php:1057 +msgid "Component Analysis Settings" +msgstr "Axustes del análisis de componentes" + +#: wpvulnerability-admin.php:787 wpvulnerability-adminms.php:1060 +msgid "Enable or disable vulnerability analysis for specific components." +msgstr "Activa o desactiva el análisis de vulnerabilidaes pa componentes específicos." + +#: wpvulnerability-admin.php:788 wpvulnerability-adminms.php:1061 +msgid "" +"Check the components you want to HIDE from vulnerability scans and reports. " +"Unchecked components will be actively analyzed. Components with active " +"analysis are shown in green, hidden components in red." +msgstr "" +"Marca los componentes que quieras ANUBRIR de los escáneres y informes de vulnerabilidaes. " +"Los componentes non marcaos analizaránse activamente. Los componentes con análisis " +"activu amúestrense en verde, los anubritos en coloráu." + +#: wpvulnerability-admin.php:820 wpvulnerability-adminms.php:1093 +msgid "Hidden (forced by constant)" +msgstr "Anubríu (forzáu por constante)" + +#: wpvulnerability-admin.php:823 wpvulnerability-adminms.php:1096 +msgid "🔴 Analysis disabled" +msgstr "🔴 Análisis desactiváu" + +#: wpvulnerability-admin.php:826 wpvulnerability-adminms.php:1099 +msgid "🟢 Analysis active" +msgstr "🟢 Análisis activu" + +#: wpvulnerability-admin.php:848 wpvulnerability-adminms.php:1121 +msgid "Tip:" +msgstr "Conseyu:" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:852 wpvulnerability-adminms.php:1125 +#, php-format +msgid "" +"You can force-disable components via wp-config.php constants. Learn more about force-hiding " +"checks →" +msgstr "" +"Pues forzar la desactivación de componentes per aciu de les constantes de wp-config.php. Saber más sobre cómo forzar l'anubrición " +"de comprobaciones →" + +#: wpvulnerability-admin.php:860 wpvulnerability-adminms.php:1133 +msgid "Save Analysis Settings" +msgstr "Guardar axustes del análisis" + +#: wpvulnerability-admin.php:920 wpvulnerability-adminms.php:1193 +msgid "« Previous" +msgstr "« Anterior" + +#: wpvulnerability-admin.php:921 wpvulnerability-adminms.php:1194 +msgid "Next »" +msgstr "Siguiente »" + +#: wpvulnerability-admin.php:932 wpvulnerability-adminms.php:1205 +msgid "Log entry not found or has been removed." +msgstr "Nun s'atopó l'entrada del rexistru o foi desaniciada." + +#: wpvulnerability-admin.php:935 wpvulnerability-adminms.php:1208 +msgid "Unable to load the requested log entry." +msgstr "Nun se pudo cargar l'entrada del rexistru solicitada." + +#: wpvulnerability-admin.php:945 wpvulnerability-adminms.php:1218 +msgid "Log Configuration" +msgstr "Configuración de rexistros" + +#: wpvulnerability-admin.php:950 wpvulnerability-adminms.php:1223 +msgid "Total Logs" +msgstr "Total de rexistros" + +#: wpvulnerability-admin.php:954 wpvulnerability-adminms.php:1227 +msgid "Retention Period" +msgstr "Periodu de retención" + +#: wpvulnerability-admin.php:959 wpvulnerability-admin.php:1301 +#: wpvulnerability-admin.php:3029 wpvulnerability-admin.php:3043 +#: wpvulnerability-admin.php:3475 wpvulnerability-admin.php:3483 +#: wpvulnerability-adminms.php:1232 wpvulnerability-adminms.php:1574 +#: wpvulnerability-adminms.php:3206 wpvulnerability-adminms.php:3220 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Disabled" +msgstr "Desactiváu" + +#. translators: %d: Number of days. +#. translators: %d: number of days +#: wpvulnerability-admin.php:962 wpvulnerability-admin.php:984 +#: wpvulnerability-admin.php:3641 wpvulnerability-adminms.php:1235 +#: wpvulnerability-adminms.php:1257 wpvulnerability-adminms.php:3835 +#, php-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d día" +msgstr[1] "%d díes" + +#: wpvulnerability-admin.php:975 wpvulnerability-adminms.php:1248 +msgid "Log Retention Period" +msgstr "Periodu de retención de rexistros" + +#: wpvulnerability-admin.php:981 wpvulnerability-adminms.php:1254 +msgid "None (Disabled)" +msgstr "Nengún (Desactiváu)" + +#: wpvulnerability-admin.php:1004 wpvulnerability-adminms.php:1277 +msgid "" +"This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant." +msgstr "" +"Esti valor impónlo la constante WPVULNERABILITY_LOG_RETENTION_DAYS." + +#: wpvulnerability-admin.php:1009 wpvulnerability-adminms.php:1282 +msgid "" +"Choose how long WPVulnerability should keep API response logs. Older logs " +"are automatically deleted." +msgstr "" +"Esbilla cuántu tiempu WPVulnerability ha de guardar los rexistros de respuestes de la API. " +"Los rexistros más vieyes desaniciense automáticamente." + +#: wpvulnerability-admin.php:1013 wpvulnerability-adminms.php:1286 +msgid "Save Configuration" +msgstr "Guardar configuración" + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "Log retention is currently disabled." +msgstr "La retención de rexistros ta desactivada nel momentu." + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "API responses are not being saved." +msgstr "Les respuestes de la API nun se tan guardando." + +#: wpvulnerability-admin.php:1031 wpvulnerability-adminms.php:1304 +msgid "Log Details" +msgstr "Detalles del rexistru" + +#: wpvulnerability-admin.php:1035 wpvulnerability-admin.php:1104 +#: wpvulnerability-adminms.php:1308 wpvulnerability-adminms.php:1377 +msgid "Date" +msgstr "Data" + +#: wpvulnerability-admin.php:1039 wpvulnerability-admin.php:1105 +#: wpvulnerability-adminms.php:1312 wpvulnerability-adminms.php:1378 +msgid "API Endpoint" +msgstr "Puntu final de la API" + +#: wpvulnerability-admin.php:1044 wpvulnerability-adminms.php:1317 +msgid "API Response" +msgstr "Respuesta de la API" + +#: wpvulnerability-admin.php:1049 wpvulnerability-adminms.php:1322 +msgid "Back to Logs" +msgstr "Volver a los rexistros" + +#: wpvulnerability-admin.php:1058 wpvulnerability-adminms.php:1331 +msgid "No logs available" +msgstr "Nun hai rexistros disponibles" + +#: wpvulnerability-admin.php:1059 wpvulnerability-adminms.php:1332 +msgid "API response logs will appear here once the vulnerability scanner runs." +msgstr "Los rexistros de respuestes de la API van apaecere equí una vez que s'execute l'escáner de vulnerabilidaes." + +#: wpvulnerability-admin.php:1063 wpvulnerability-adminms.php:1336 +msgid "API Response Logs" +msgstr "Rexistros de respuestes de la API" + +#: wpvulnerability-admin.php:1073 wpvulnerability-adminms.php:1346 +msgid "Show:" +msgstr "Amosar:" + +#: wpvulnerability-admin.php:1082 wpvulnerability-adminms.php:1355 +msgid "Apply" +msgstr "Aplicar" + +#. translators: 1: first item, 2: last item, 3: total items +#: wpvulnerability-admin.php:1090 wpvulnerability-adminms.php:1363 +#, php-format +msgid "Showing %1$s–%2$s of %3$s" +msgstr "Amosando %1$s–%2$s de %3$s" + +#: wpvulnerability-admin.php:1106 wpvulnerability-adminms.php:1379 +msgid "Actions" +msgstr "Aiciones" + +#: wpvulnerability-admin.php:1133 wpvulnerability-admin.php:3957 +#: wpvulnerability-adminms.php:1406 wpvulnerability-adminms.php:4151 +msgid "View" +msgstr "Ver" + +#: wpvulnerability-admin.php:1150 wpvulnerability-adminms.php:1423 +msgid "Danger Zone" +msgstr "Zona de peligru" + +#: wpvulnerability-admin.php:1152 wpvulnerability-adminms.php:1425 +msgid "Permanently delete all API response logs. This action cannot be undone." +msgstr "Desaniciar permanentemente tolos rexistros de respuestes de la API. Esta aición nun se pue desfacer." + +#: wpvulnerability-admin.php:1154 wpvulnerability-adminms.php:1427 +msgid "Are you sure you want to delete all logs? This action cannot be undone." +msgstr "¿Tas seguru de que quieres desaniciar tolos rexistros? Esta aición nun se pue desfacer." + +#: wpvulnerability-admin.php:1157 wpvulnerability-adminms.php:1430 +msgid "Delete All Logs" +msgstr "Desaniciar tolos rexistros" + +#: wpvulnerability-admin.php:1201 wpvulnerability-adminms.php:1474 +msgid "Reload Data from API" +msgstr "Recargar datos dende la API" + +#: wpvulnerability-admin.php:1204 wpvulnerability-adminms.php:1477 +msgid "" +"Reload all Core, Plugins, Themes and other components information directly " +"from the API to have updated data. This will clear the cache and fetch fresh " +"vulnerability information." +msgstr "" +"Recarga toda la información del nucleu, plugins, temes y otros componentes directamente " +"dende la API pa tener datos actualizaos. Esto va llimpiar la caché y va llograr información " +"fresca de vulnerabilidaes." + +#: wpvulnerability-admin.php:1209 wpvulnerability-adminms.php:1482 +msgid "Reload Data" +msgstr "Recargar datos" + +#: wpvulnerability-admin.php:1218 wpvulnerability-adminms.php:1491 +msgid "Test Email Notifications" +msgstr "Probar notificaciones por correu electrónicu" + +#: wpvulnerability-admin.php:1221 wpvulnerability-adminms.php:1494 +msgid "" +"Send a test email notification with current vulnerability data to verify " +"your email configuration is working correctly." +msgstr "" +"Manda una notificación de correu de prueba colos datos actuales de vulnerabilidaes " +"pa verificar que la configuración del to correu electrónicu funciona correutamente." + +#: wpvulnerability-admin.php:1231 wpvulnerability-adminms.php:1504 +msgid "From address (configured via constant):" +msgstr "Direición de orixe (configurada per aciu de constante):" + +#: wpvulnerability-admin.php:1243 wpvulnerability-adminms.php:1516 +msgid "From address (default):" +msgstr "Direición de orixe (predeterminada):" + +#: wpvulnerability-admin.php:1252 wpvulnerability-adminms.php:1525 +msgid "Learn how to customize the email sender address →" +msgstr "Deprender cómo personalizar la direición del remitente del correu electrónicu →" + +#: wpvulnerability-admin.php:1258 wpvulnerability-adminms.php:1531 +msgid "Send Test Email" +msgstr "Mandar correu de prueba" + +#: wpvulnerability-admin.php:1267 wpvulnerability-adminms.php:1540 +msgid "WP-Cron Status" +msgstr "Estáu de WP-Cron" + +#: wpvulnerability-admin.php:1270 wpvulnerability-adminms.php:1543 +msgid "" +"View and manage WP-Cron scheduled events. Compare expected schedules with " +"actual cron jobs to ensure automated tasks are running correctly." +msgstr "" +"Ver y xestionar los eventos programaos de WP-Cron. Comparar les programaciones esperaes " +"colos trabayos cron reales pa asegurase de que les tarees automatizaes s'executen correutamente." + +#: wpvulnerability-admin.php:1275 wpvulnerability-adminms.php:1548 +msgid "No cron data available." +msgstr "Nun hai datos de cron disponibles." + +#: wpvulnerability-admin.php:1281 wpvulnerability-adminms.php:1554 +msgid "Hook" +msgstr "Hook" + +#: wpvulnerability-admin.php:1282 wpvulnerability-adminms.php:1555 +msgid "Expected" +msgstr "Esperáu" + +#: wpvulnerability-admin.php:1283 wpvulnerability-adminms.php:1556 +msgid "Found" +msgstr "Atopáu" + +#: wpvulnerability-admin.php:1284 wpvulnerability-adminms.php:1557 +msgid "Next Run" +msgstr "Próxima execución" + +#: wpvulnerability-admin.php:1285 wpvulnerability-admin.php:3236 +#: wpvulnerability-admin.php:3559 wpvulnerability-adminms.php:1558 +#: wpvulnerability-adminms.php:3413 wpvulnerability-adminms.php:3753 +msgid "Status" +msgstr "Estáu" + +#: wpvulnerability-admin.php:1299 wpvulnerability-adminms.php:1572 +msgid "Not expected" +msgstr "Nun se esperaba" + +#: wpvulnerability-admin.php:1321 wpvulnerability-adminms.php:1594 +#: wpvulnerability-general.php:1871 wpvulnerability-general.php:1872 +msgid "None" +msgstr "Nengún" + +#: wpvulnerability-admin.php:1356 wpvulnerability-adminms.php:1629 +msgid "OK" +msgstr "Correcto" + +#: wpvulnerability-admin.php:1366 wpvulnerability-adminms.php:1639 +msgid "⚠️ Unexpected WPVulnerability Events" +msgstr "⚠️ Eventos inesperaos de WPVulnerability" + +#: wpvulnerability-admin.php:1383 wpvulnerability-adminms.php:1656 +msgid "No interval" +msgstr "Ensin intervalu" + +#: wpvulnerability-admin.php:1390 wpvulnerability-adminms.php:1663 +msgid "Next:" +msgstr "Siguiente:" + +#: wpvulnerability-admin.php:1400 wpvulnerability-adminms.php:1673 +msgid "Repair Cron Events" +msgstr "Reparar eventos cron" + +#: wpvulnerability-admin.php:1408 wpvulnerability-adminms.php:1681 +msgid "Uninstall Data" +msgstr "Datos de desinstalación" + +#: wpvulnerability-admin.php:1410 wpvulnerability-adminms.php:1683 +msgid "" +"By default, all plugin data is preserved when WPVulnerability is deleted. " +"Enable the option below only if you want all options, logs, and cached data " +"permanently removed on uninstall." +msgstr "" +"Por defectu, tolos datos del plugin consérvense cuando se desanicia WPVulnerability. " +"Activa la opción de baxo namás si quieres que toles opciones, rexistros y datos en caché " +"se desanicieen permanentemente al desinstalar." + +#: wpvulnerability-admin.php:1420 wpvulnerability-adminms.php:1693 +msgid "Delete all plugin data on uninstall" +msgstr "Desaniciar tolos datos del plugin al desinstalar" + +#: wpvulnerability-admin.php:1423 wpvulnerability-adminms.php:1696 +msgid "" +"Default: unchecked (data preserved). Check only if you want a clean removal." +msgstr "" +"Predetermináu: desmarcáu (datos conservaos). Marca namás si quieres una eliminación llimpia." + +#: wpvulnerability-admin.php:1425 wpvulnerability-adminms.php:1698 +msgid "Save preference" +msgstr "Guardar preferencia" + +#: wpvulnerability-admin.php:1432 wpvulnerability-adminms.php:1705 +msgid "Reset WPVulnerability" +msgstr "Reestablecer WPVulnerability" + +#: wpvulnerability-admin.php:1434 wpvulnerability-adminms.php:1707 +msgid "" +"Delete all WPVulnerability settings, cached data, logs, and scheduled " +"events, then restore defaults and reload data from the API." +msgstr "" +"Desanicia tolos axustes de WPVulnerability, datos en caché, rexistros y eventos " +"programaos, y lluego restaura los valores predeterminaos y recarga datos dende la API." + +#: wpvulnerability-admin.php:1436 wpvulnerability-adminms.php:1709 +msgid "This action cannot be undone." +msgstr "Esta aición nun se pue desfacer." + +#: wpvulnerability-admin.php:1438 wpvulnerability-adminms.php:1711 +msgid "" +"Are you sure you want to reset all WPVulnerability data? This action cannot " +"be undone." +msgstr "" +"¿Tas seguru de que quieres reestablecer tolos datos de WPVulnerability? Esta aición nun " +"se pue desfacer." + +#: wpvulnerability-admin.php:1441 wpvulnerability-adminms.php:1713 +msgid "Reset Plugin" +msgstr "Reestablecer plugin" + +#: wpvulnerability-admin.php:1468 wpvulnerability-adminms.php:1740 +msgid "Vulnerability Database Statistics" +msgstr "Estadístiques de la base de datos de vulnerabilidaes" + +#. translators: number of vulnerabilities. +#: wpvulnerability-admin.php:1510 wpvulnerability-adminms.php:1782 +#, php-format +msgid "%s vulnerability" +msgid_plural "%s vulnerabilities" +msgstr[0] "%s vulnerabilidá" +msgstr[1] "%s vulnerabilidaes" + +#. translators: number of products. +#: wpvulnerability-admin.php:1520 wpvulnerability-adminms.php:1792 +#, php-format +msgid "(%s product)" +msgid_plural "(%s products)" +msgstr[0] "(%s productu)" +msgstr[1] "(%s productos)" + +#: wpvulnerability-admin.php:1527 wpvulnerability-adminms.php:1799 +msgid "No data" +msgstr "Ensin datos" + +#. translators: date of last update. +#: wpvulnerability-admin.php:1544 wpvulnerability-adminms.php:1814 +#, php-format +msgid "Database last updated: %s" +msgstr "Base de datos actualizada per última vez: %s" + +#: wpvulnerability-admin.php:1566 wpvulnerability-adminms.php:1836 +msgid "Intelligence Sources" +msgstr "Fontes d'intelixencia" + +#: wpvulnerability-admin.php:1567 wpvulnerability-adminms.php:1837 +msgid "Number of vulnerabilities contributed by each intelligence source." +msgstr "Númberu de vulnerabilidaes aportaes por cada fonte d'intelixencia." + +#: wpvulnerability-admin.php:1571 wpvulnerability-adminms.php:1841 +msgid "Source" +msgstr "Fonte" + +#: wpvulnerability-admin.php:1572 wpvulnerability-admin.php:2104 +#: wpvulnerability-adminms.php:1842 wpvulnerability-adminms.php:2261 +msgid "Core" +msgstr "Nucleu" + +#: wpvulnerability-admin.php:1603 wpvulnerability-adminms.php:1873 +msgid "Sponsors" +msgstr "Patrocinadores" + +#: wpvulnerability-admin.php:1626 wpvulnerability-adminms.php:1896 +msgid "No sponsor data available." +msgstr "Nun hai datos de patrocinadores disponibles." + +#: wpvulnerability-admin.php:1633 wpvulnerability-adminms.php:1903 +msgid "Contributors" +msgstr "Collaboradores" + +#: wpvulnerability-admin.php:1656 wpvulnerability-adminms.php:1926 +msgid "No contributor data available." +msgstr "Nun hai datos de collaboradores disponibles." + +#: wpvulnerability-admin.php:1674 wpvulnerability-adminms.php:432 +msgid "You do not have sufficient permissions to access this page." +msgstr "Nun tienes permisos suficientes pa acceder a esta páxina." + +#: wpvulnerability-admin.php:1684 wpvulnerability-adminms.php:441 +msgid "WPVulnerability settings" +msgstr "Axustes de WPVulnerability" + +#: wpvulnerability-admin.php:1801 wpvulnerability-adminms.php:1963 +msgid "Configure and save these settings to receive notifications." +msgstr "Configura y guarda estos axustes pa recibir notificaciones." + +#: wpvulnerability-admin.php:1814 wpvulnerability-adminms.php:2071 +msgid "Configure and save these settings to hide vulnerabilities." +msgstr "Configura y guarda estos axustes pa anubrir vulnerabilidaes." + +#: wpvulnerability-admin.php:1845 wpvulnerability-adminms.php:1993 +msgid "Default administrator email" +msgstr "Correu electrónicu del administrador por defectu" + +#: wpvulnerability-admin.php:1909 wpvulnerability-adminms.php:2057 +msgid "Read more if you want to force the cache time." +msgstr "Lleer más si quieres forzar el tiempu de caché." + +#: wpvulnerability-admin.php:1939 wpvulnerability-adminms.php:2099 +msgid "Never" +msgstr "Nunca" + +#: wpvulnerability-admin.php:1944 wpvulnerability-adminms.php:2104 +msgid "Daily" +msgstr "Diario" + +#: wpvulnerability-admin.php:1949 wpvulnerability-adminms.php:2109 +msgid "Weekly" +msgstr "Semanal" + +#: wpvulnerability-admin.php:1953 wpvulnerability-adminms.php:2113 +msgid "Day" +msgstr "Día" + +#: wpvulnerability-admin.php:1966 wpvulnerability-adminms.php:2126 +msgid "Hour" +msgstr "Hora" + +#: wpvulnerability-admin.php:1968 wpvulnerability-adminms.php:2128 +msgid "Minute" +msgstr "Minutu" + +#: wpvulnerability-admin.php:2166 wpvulnerability-adminms.php:2323 +msgid "Read more about how to force the deactivation of an item." +msgstr "Lleer más sobre cómo forzar la desactivación d'un elementu." + +#: wpvulnerability-admin.php:2292 wpvulnerability-adminms.php:2870 +msgid "" +"Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com" +msgstr "" +"URL de webhook de Slack non válida. Tien de ser una URL HTTPS válida de hooks.slack.com" + +#: wpvulnerability-admin.php:2315 wpvulnerability-adminms.php:2893 +msgid "" +"Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office." +"com, office365.com, or api.hooks.microsoft.com" +msgstr "" +"URL de webhook de Microsoft Teams non válida. Tien de ser una URL HTTPS válida de office." +"com, office365.com o api.hooks.microsoft.com" + +#: wpvulnerability-admin.php:2338 wpvulnerability-adminms.php:2916 +msgid "" +"Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or " +"discordapp.com" +msgstr "" +"URL de webhook de Discord non válida. Tien de ser una URL HTTPS válida de discord.com o " +"discordapp.com" + +#: wpvulnerability-admin.php:2357 wpvulnerability-adminms.php:2935 +msgid "" +"Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-" +"zyx57W2v1u123ew11" +msgstr "" +"Formatu del token del bot de Telegram non válidu. Tien de ser como: 123456:ABC-DEF1234ghIkl-" +"zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:2493 wpvulnerability-adminms.php:2400 +msgid "All Clear" +msgstr "Too correcto" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2503 wpvulnerability-adminms.php:2410 +#, php-format +msgid "%d Critical Issue Found" +msgid_plural "%d Critical Issues Found" +msgstr[0] "%d problema crítico atopáu" +msgstr[1] "%d problemes críticos atopáos" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2508 wpvulnerability-adminms.php:2415 +#, php-format +msgid "%d Issue Found" +msgid_plural "%d Issues Found" +msgstr[0] "%d problema atopáu" +msgstr[1] "%d problemes atopáos" + +#: wpvulnerability-admin.php:2515 wpvulnerability-adminms.php:2422 +msgid "Never checked" +msgstr "Nunca verificáu" + +#. translators: %d: number of minutes +#: wpvulnerability-admin.php:2523 wpvulnerability-adminms.php:2430 +#, php-format +msgid "%d minute ago" +msgid_plural "%d minutes ago" +msgstr[0] "hai %d minutu" +msgstr[1] "hai %d minutos" + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:2527 wpvulnerability-adminms.php:2434 +#, php-format +msgid "%d hour ago" +msgid_plural "%d hours ago" +msgstr[0] "hai %d hora" +msgstr[1] "hai %d hores" + +#. translators: %s: time since last check +#: wpvulnerability-admin.php:2539 wpvulnerability-adminms.php:2446 +#, php-format +msgid "Last checked: %s" +msgstr "Última verificación: %s" + +#: wpvulnerability-admin.php:2540 wpvulnerability-adminms.php:2447 +msgid "Refresh Now" +msgstr "Anovar agora" + +#: wpvulnerability-admin.php:2547 wpvulnerability-adminms.php:2454 +msgid "No vulnerabilities detected" +msgstr "Nun se detectaron vulnerabilidaes" + +#: wpvulnerability-admin.php:2548 wpvulnerability-adminms.php:2455 +msgid "Your site is up to date and secure" +msgstr "El to sitiu ta anovado y seguru" + +#: wpvulnerability-admin.php:2616 wpvulnerability-adminms.php:2523 +msgid "Server Software" +msgstr "Software del sirvidor" + +#: wpvulnerability-admin.php:2829 wpvulnerability-adminms.php:2736 +msgid "Site Health" +msgstr "Salú del sitiu" + +#: wpvulnerability-admin.php:2831 wpvulnerability-adminms.php:2738 +#: wpvulnerability-run.php:33 +msgid "Settings" +msgstr "Axustes" + +#: wpvulnerability-admin.php:2846 wpvulnerability-adminms.php:2754 +msgid "WPVulnerability Status" +msgstr "Estáu de WPVulnerability" + +#: wpvulnerability-admin.php:2878 wpvulnerability-adminms.php:3052 +msgid "Receive vulnerability notifications" +msgstr "Recibir notificaciones de vulnerabilidaes" + +#: wpvulnerability-admin.php:2886 wpvulnerability-adminms.php:3060 +msgid "Cache expiration time" +msgstr "Tiempu d'espiración de la caché" + +#: wpvulnerability-admin.php:2895 wpvulnerability-adminms.php:3069 +msgid "How often you want to receive notifications" +msgstr "Con qué frecuencia quieres recibir notificaciones" + +#: wpvulnerability-admin.php:2904 wpvulnerability-adminms.php:3078 +msgid "Where do you want to receive notifications?" +msgstr "¿Ónde quieres recibir notificaciones?" + +#: wpvulnerability-admin.php:2913 wpvulnerability-adminms.php:3087 +msgid "Email addresses to notify (separated by commas)" +msgstr "Direiciones de correu electrónicu pa notificar (separaes por comes)" + +#: wpvulnerability-admin.php:2922 wpvulnerability-adminms.php:3096 +msgid "Slack webhook URL" +msgstr "URL del webhook de Slack" + +#: wpvulnerability-admin.php:2931 wpvulnerability-adminms.php:3105 +msgid "Teams webhook URL" +msgstr "URL del webhook de Teams" + +#: wpvulnerability-admin.php:2950 wpvulnerability-adminms.php:3126 +msgid "Vulnerabilities to hide" +msgstr "Vulnerabilidaes a anubrir" + +#: wpvulnerability-admin.php:2958 wpvulnerability-adminms.php:3134 +msgid "What do you want to hide?" +msgstr "¿Qué quieres anubrir?" + +#: wpvulnerability-admin.php:3008 wpvulnerability-adminms.php:3185 +msgid "Standard (Hybrid Detection)" +msgstr "Estándar (detección híbrida)" + +#: wpvulnerability-admin.php:3009 wpvulnerability-adminms.php:3186 +msgid "Strict (Extensions Only)" +msgstr "Estrictu (namás estensiones)" + +#: wpvulnerability-admin.php:3010 wpvulnerability-adminms.php:3187 +msgid "Disabled (No Detection)" +msgstr "Desactiváu (ensin detección)" + +#: wpvulnerability-admin.php:3016 wpvulnerability-adminms.php:3193 +msgid "Security Status" +msgstr "Estáu de seguridá" + +#: wpvulnerability-admin.php:3020 wpvulnerability-adminms.php:3197 +msgid "Security Mode" +msgstr "Mou de seguridá" + +#: wpvulnerability-admin.php:3025 wpvulnerability-adminms.php:3202 +msgid "Shell Execution" +msgstr "Execución de shell" + +#: wpvulnerability-admin.php:3027 wpvulnerability-admin.php:3475 +#: wpvulnerability-admin.php:3483 wpvulnerability-adminms.php:3204 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Enabled" +msgstr "Activáu" + +#: wpvulnerability-admin.php:3034 wpvulnerability-adminms.php:3211 +msgid "Audit Logging" +msgstr "Rexistru d'auditoría" + +#. translators: %d: number of days +#: wpvulnerability-admin.php:3039 wpvulnerability-adminms.php:3216 +#, php-format +msgid "Enabled (%d days)" +msgstr "Activáu (%d díes)" + +#: wpvulnerability-admin.php:3048 wpvulnerability-adminms.php:3225 +msgid "Total Log Entries" +msgstr "Total d'entraes de rexistru" + +#: wpvulnerability-admin.php:3055 wpvulnerability-adminms.php:3232 +msgid "Last Shell Execution" +msgstr "Última execución de shell" + +#. translators: %s: time ago +#: wpvulnerability-admin.php:3061 wpvulnerability-admin.php:3266 +#: wpvulnerability-adminms.php:3238 wpvulnerability-adminms.php:3441 +#, php-format +msgid "%s ago" +msgstr "hai %s" + +#: wpvulnerability-admin.php:3073 wpvulnerability-adminms.php:3250 +msgid "" +"Configure security settings via wp-config.php constants: " +"WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, " +"WPVULNERABILITY_SHELL_EXEC_WHITELIST." +msgstr "" +"Configura los axustes de seguridá per aciu de les constantes de wp-config.php: " +"WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, " +"WPVULNERABILITY_SHELL_EXEC_WHITELIST." + +#. translators: %s: URL to security documentation +#: wpvulnerability-admin.php:3079 wpvulnerability-adminms.php:3256 +#, php-format +msgid "" +"See security " +"configuration documentation for details." +msgstr "" +"Ver la documentación de " +"configuración de seguridá pa más detalles." + +#: wpvulnerability-admin.php:3103 wpvulnerability-adminms.php:3280 +msgid "Memcached" +msgstr "Memcached" + +#: wpvulnerability-admin.php:3131 wpvulnerability-adminms.php:3308 +msgid "Imagick Extension" +msgstr "Estensión Imagick" + +#: wpvulnerability-admin.php:3132 wpvulnerability-adminms.php:3309 +msgid "Redis Extension" +msgstr "Estensión Redis" + +#: wpvulnerability-admin.php:3133 wpvulnerability-adminms.php:3310 +msgid "Memcached Extension" +msgstr "Estensión Memcached" + +#: wpvulnerability-admin.php:3134 wpvulnerability-adminms.php:3311 +msgid "Memcache Extension" +msgstr "Estensión Memcache" + +#: wpvulnerability-admin.php:3135 wpvulnerability-adminms.php:3312 +msgid "SQLite3 Extension" +msgstr "Estensión SQLite3" + +#: wpvulnerability-admin.php:3136 wpvulnerability-adminms.php:3313 +msgid "PDO SQLite" +msgstr "PDO SQLite" + +#: wpvulnerability-admin.php:3137 wpvulnerability-adminms.php:3314 +msgid "Shell Command" +msgstr "Comandu de shell" + +#: wpvulnerability-admin.php:3138 wpvulnerability-adminms.php:3315 +msgid "Binary Check" +msgstr "Comprobación de binario" + +#: wpvulnerability-admin.php:3139 wpvulnerability-adminms.php:3316 +msgid "Not Detected" +msgstr "Non detectáu" + +#: wpvulnerability-admin.php:3143 wpvulnerability-adminms.php:3320 +msgid "Software Detection Methods" +msgstr "Métodos de detección de software" + +#: wpvulnerability-admin.php:3144 wpvulnerability-adminms.php:3321 +msgid "" +"Shows which detection method was used for each software component and the " +"reliability score." +msgstr "" +"Amuesa qué métodu de detección s'usó pa cada componente de software y la " +"puntuación de fiabilidá." + +#: wpvulnerability-admin.php:3149 wpvulnerability-admin.php:3234 +#: wpvulnerability-admin.php:3558 wpvulnerability-adminms.php:3326 +#: wpvulnerability-adminms.php:3411 wpvulnerability-adminms.php:3752 +msgid "Component" +msgstr "Componente" + +#: wpvulnerability-admin.php:3150 wpvulnerability-adminms.php:3327 +msgid "Version" +msgstr "Versión" + +#: wpvulnerability-admin.php:3151 wpvulnerability-adminms.php:3328 +msgid "Detection Method" +msgstr "Métodu de detección" + +#: wpvulnerability-admin.php:3152 wpvulnerability-adminms.php:3329 +msgid "Reliability" +msgstr "Fiabilidá" + +#: wpvulnerability-admin.php:3164 wpvulnerability-adminms.php:3341 +msgid "Not detected" +msgstr "Non detectáu" + +#: wpvulnerability-admin.php:3220 wpvulnerability-adminms.php:3397 +msgid "Shell Execution Audit Logs" +msgstr "Rexistros d'auditoría d'execución de shell" + +#: wpvulnerability-admin.php:3221 wpvulnerability-adminms.php:3398 +msgid "" +"Complete audit trail of shell command executions for security monitoring." +msgstr "" +"Pista d'auditoría completa de les execuciones de comandos de shell pa la supervisión de seguridá." + +#: wpvulnerability-admin.php:3226 wpvulnerability-adminms.php:3403 +msgid "No shell execution logs found." +msgstr "Nun s'atoparon rexistros d'execución de shell." + +#: wpvulnerability-admin.php:3227 wpvulnerability-adminms.php:3404 +msgid "" +"Logs will appear here when shell commands are executed for software " +"detection." +msgstr "" +"Los rexistros van apaecere equí cuando se executen comandos de shell pa la " +"detección de software." + +#: wpvulnerability-admin.php:3233 wpvulnerability-adminms.php:3410 +msgid "Time" +msgstr "Hora" + +#: wpvulnerability-admin.php:3235 wpvulnerability-adminms.php:3412 +msgid "Command" +msgstr "Comandu" + +#: wpvulnerability-admin.php:3237 wpvulnerability-adminms.php:3414 +msgid "User" +msgstr "Usuariu" + +#: wpvulnerability-admin.php:3238 wpvulnerability-adminms.php:3415 +msgid "Output" +msgstr "Salida" + +#. translators: %d: number of logs shown +#: wpvulnerability-admin.php:3302 wpvulnerability-adminms.php:3477 +#, php-format +msgid "Showing the %d most recent log entries." +msgstr "Amosando les %d entraes de rexistru más recientes." + +#: wpvulnerability-admin.php:3320 wpvulnerability-adminms.php:3565 +msgid "Invalid nonce." +msgstr "Nonce non válidu." + +#: wpvulnerability-admin.php:3325 wpvulnerability-adminms.php:3570 +msgid "Insufficient permissions." +msgstr "Permisos insuficientes." + +#: wpvulnerability-admin.php:3331 wpvulnerability-adminms.php:3576 +msgid "No component specified." +msgstr "Nun s'especificó nengún componente." + +#: wpvulnerability-admin.php:3366 wpvulnerability-adminms.php:3524 +msgid "Debug Information" +msgstr "Información de depuración" + +#: wpvulnerability-admin.php:3368 wpvulnerability-adminms.php:3526 +msgid "This tab is only visible when WP_DEBUG is enabled. Use with caution." +msgstr "Esta llingüeta namás ye visible cuando WP_DEBUG ta activáu. Usar con precaución." + +#: wpvulnerability-admin.php:3429 wpvulnerability-adminms.php:3623 +msgid "System Information" +msgstr "Información del sistema" + +#: wpvulnerability-admin.php:3433 wpvulnerability-adminms.php:3627 +msgid "WordPress Version" +msgstr "Versión de WordPress" + +#: wpvulnerability-admin.php:3437 wpvulnerability-adminms.php:3631 +msgid "Multisite" +msgstr "Multisitiu" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "Yes" +msgstr "Sí" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "No" +msgstr "Non" + +#: wpvulnerability-admin.php:3441 wpvulnerability-adminms.php:3635 +msgid "Language" +msgstr "Llingua" + +#: wpvulnerability-admin.php:3445 wpvulnerability-adminms.php:3639 +msgid "PHP Version" +msgstr "Versión de PHP" + +#: wpvulnerability-admin.php:3449 wpvulnerability-adminms.php:3643 +msgid "PHP Extensions" +msgstr "Estensiones de PHP" + +#: wpvulnerability-admin.php:3460 wpvulnerability-adminms.php:3654 +msgid "PHP Memory Limit" +msgstr "Llímite de memoria de PHP" + +#: wpvulnerability-admin.php:3464 wpvulnerability-adminms.php:3658 +msgid "Database" +msgstr "Base de datos" + +#: wpvulnerability-admin.php:3468 wpvulnerability-adminms.php:3662 +msgid "Web Server" +msgstr "Sirvidor web" + +#: wpvulnerability-admin.php:3472 wpvulnerability-adminms.php:3666 +msgid "WP_DEBUG" +msgstr "WP_DEBUG" + +#: wpvulnerability-admin.php:3480 wpvulnerability-adminms.php:3674 +msgid "WP_DEBUG_LOG" +msgstr "WP_DEBUG_LOG" + +#: wpvulnerability-admin.php:3490 wpvulnerability-adminms.php:3684 +msgid "Path:" +msgstr "Ruta:" + +#. translators: %s: file size +#: wpvulnerability-admin.php:3499 wpvulnerability-adminms.php:3698 +#, php-format +msgid "Size: %s" +msgstr "Tamañu: %s" + +#: wpvulnerability-admin.php:3510 wpvulnerability-adminms.php:3704 +msgid "View Log File" +msgstr "Ver ficheru de rexistru" + +#: wpvulnerability-admin.php:3516 wpvulnerability-adminms.php:3710 +msgid "Log file is not web-accessible (outside wp-content)" +msgstr "El ficheru de rexistru nun ye accesible dende la web (fuera de wp-content)" + +#: wpvulnerability-admin.php:3522 wpvulnerability-adminms.php:3716 +msgid "Log file does not exist yet" +msgstr "El ficheru de rexistru entá nun esiste" + +#: wpvulnerability-admin.php:3530 wpvulnerability-adminms.php:3724 +msgid "Plugin Version" +msgstr "Versión del plugin" + +#: wpvulnerability-admin.php:3554 wpvulnerability-adminms.php:3748 +msgid "Component Detection" +msgstr "Detección de componentes" + +#: wpvulnerability-admin.php:3560 wpvulnerability-adminms.php:3754 +msgid "Version Detected" +msgstr "Versión detectada" + +#: wpvulnerability-admin.php:3561 wpvulnerability-adminms.php:3755 +msgid "Analyzed" +msgstr "Analizado" + +#: wpvulnerability-admin.php:3562 wpvulnerability-adminms.php:3756 +msgid "Cache Status" +msgstr "Estáu de la caché" + +#: wpvulnerability-admin.php:3622 wpvulnerability-adminms.php:3816 +msgid "Configuration Summary" +msgstr "Resume de la configuración" + +#: wpvulnerability-admin.php:3626 wpvulnerability-adminms.php:3820 +msgid "Cache Duration" +msgstr "Duración de la caché" + +#: wpvulnerability-admin.php:3636 wpvulnerability-adminms.php:3830 +msgid "Log Retention" +msgstr "Retención de rexistros" + +#: wpvulnerability-admin.php:3646 wpvulnerability-adminms.php:3840 +msgid "Components Analyzed" +msgstr "Componentes analizaos" + +#: wpvulnerability-admin.php:3661 wpvulnerability-adminms.php:3855 +msgid "Notification Email" +msgstr "Correu electrónicu de notificación" + +#: wpvulnerability-admin.php:3682 wpvulnerability-adminms.php:3876 +msgid "Slack Webhook" +msgstr "Webhook de Slack" + +#: wpvulnerability-admin.php:3692 wpvulnerability-admin.php:3712 +#: wpvulnerability-admin.php:3732 wpvulnerability-admin.php:3752 +#: wpvulnerability-adminms.php:3886 wpvulnerability-adminms.php:3906 +#: wpvulnerability-adminms.php:3926 wpvulnerability-adminms.php:3946 +msgid "Configured & Enabled" +msgstr "Configuráu y activáu" + +#: wpvulnerability-admin.php:3694 wpvulnerability-admin.php:3714 +#: wpvulnerability-admin.php:3734 wpvulnerability-admin.php:3754 +#: wpvulnerability-adminms.php:3888 wpvulnerability-adminms.php:3908 +#: wpvulnerability-adminms.php:3928 wpvulnerability-adminms.php:3948 +msgid "Configured (Disabled)" +msgstr "Configuráu (desactiváu)" + +#: wpvulnerability-admin.php:3696 wpvulnerability-admin.php:3716 +#: wpvulnerability-admin.php:3736 wpvulnerability-admin.php:3756 +#: wpvulnerability-adminms.php:3890 wpvulnerability-adminms.php:3910 +#: wpvulnerability-adminms.php:3930 wpvulnerability-adminms.php:3950 +msgid "Not configured" +msgstr "Non configuráu" + +#: wpvulnerability-admin.php:3703 wpvulnerability-adminms.php:3897 +msgid "Teams Webhook" +msgstr "Webhook de Teams" + +#: wpvulnerability-admin.php:3723 wpvulnerability-adminms.php:3917 +msgid "Discord Webhook" +msgstr "Webhook de Discord" + +#: wpvulnerability-admin.php:3743 wpvulnerability-adminms.php:3937 +msgid "Telegram Bot" +msgstr "Bot de Telegram" + +#: wpvulnerability-admin.php:3788 wpvulnerability-adminms.php:3982 +msgid "Cron Status" +msgstr "Estáu del cron" + +#: wpvulnerability-admin.php:3792 wpvulnerability-adminms.php:3986 +msgid "Update Database" +msgstr "Anovar base de datos" + +#. translators: %s: date and time +#: wpvulnerability-admin.php:3797 wpvulnerability-admin.php:3810 +#: wpvulnerability-adminms.php:3991 wpvulnerability-adminms.php:4004 +#, php-format +msgid "Next run: %s" +msgstr "Próxima execución: %s" + +#: wpvulnerability-admin.php:3800 wpvulnerability-admin.php:3813 +#: wpvulnerability-adminms.php:3994 wpvulnerability-adminms.php:4007 +msgid "Not scheduled" +msgstr "Non programáu" + +#: wpvulnerability-admin.php:3805 wpvulnerability-adminms.php:3999 +msgid "Send Notification" +msgstr "Mandar notificación" + +#: wpvulnerability-admin.php:3826 wpvulnerability-adminms.php:4020 +msgid "Run Update Now" +msgstr "Executar anovación agora" + +#: wpvulnerability-admin.php:3834 wpvulnerability-adminms.php:4028 +msgid "Run Notification Now" +msgstr "Mandar notificación agora" + +#: wpvulnerability-admin.php:3840 wpvulnerability-adminms.php:4034 +msgid "You do not have permission to run these actions." +msgstr "Nun tienes permisu pa executar estes aiciones." + +#: wpvulnerability-admin.php:3859 wpvulnerability-adminms.php:4053 +msgid "API Testing" +msgstr "Prueba de la API" + +#: wpvulnerability-admin.php:3862 wpvulnerability-adminms.php:4056 +msgid "" +"Test API connectivity for each component. Click a button to send a test " +"request." +msgstr "" +"Probar la conectividá de la API pa cada componente. Fai clic nun botón pa mandar una " +"solicitud de prueba." + +#. translators: %s: component name +#: wpvulnerability-admin.php:3869 wpvulnerability-adminms.php:4063 +#, php-format +msgid "Test %s" +msgstr "Probar %s" + +#: wpvulnerability-admin.php:3884 wpvulnerability-adminms.php:4078 +msgid "Testing..." +msgstr "Probando..." + +#: wpvulnerability-admin.php:3900 wpvulnerability-adminms.php:4094 +msgid "HTTP Code:" +msgstr "Códigu HTTP:" + +#: wpvulnerability-admin.php:3901 wpvulnerability-adminms.php:4095 +msgid "Response Time:" +msgstr "Tiempu de respuesta:" + +#: wpvulnerability-admin.php:3903 wpvulnerability-adminms.php:4097 +msgid "Response Preview" +msgstr "Vista previa de la respuesta" + +#: wpvulnerability-admin.php:3910 wpvulnerability-admin.php:3914 +#: wpvulnerability-adminms.php:4104 wpvulnerability-adminms.php:4108 +msgid "Test" +msgstr "Prueba" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "Error:" +msgstr "Error:" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "AJAX request failed." +msgstr "La solicitud AJAX falló." + +#: wpvulnerability-admin.php:3922 wpvulnerability-adminms.php:4116 +msgid "You do not have permission to test API connectivity." +msgstr "Nun tienes permisu pa probar la conectividá de la API." + +#: wpvulnerability-admin.php:3943 wpvulnerability-adminms.php:4137 +msgid "Database Options Viewer" +msgstr "Visor d'opciones de la base de datos" + +#: wpvulnerability-admin.php:3944 wpvulnerability-adminms.php:4138 +msgid "View the raw data stored in WordPress options." +msgstr "Ver los datos en bruto almacenaos nes opciones de WordPress." + +#: wpvulnerability-admin.php:3950 wpvulnerability-adminms.php:4144 +msgid "Select an option..." +msgstr "Esbillar una opción..." + +#: wpvulnerability-admin.php:3969 wpvulnerability-adminms.php:4163 +msgid "Option not found or empty." +msgstr "Opción nun atopada o balera." + +#: wpvulnerability-admin.php:3987 wpvulnerability-adminms.php:4182 +msgid "Quick Actions" +msgstr "Aiciones rápides" + +#: wpvulnerability-admin.php:3988 wpvulnerability-adminms.php:4183 +msgid "Perform debugging actions. Use with caution." +msgstr "Realizar aiciones de depuración. Usar con precaución." + +#: wpvulnerability-admin.php:3992 wpvulnerability-adminms.php:4187 +msgid "Are you sure you want to clear all caches?" +msgstr "¿Tas seguru de que quieres llimpiar toles cachés?" + +#: wpvulnerability-admin.php:3996 wpvulnerability-adminms.php:4191 +msgid "Clear All Caches" +msgstr "Llimpiar toles cachés" + +#: wpvulnerability-admin.php:4000 wpvulnerability-adminms.php:4195 +msgid "Are you sure you want to reset signatures?" +msgstr "¿Tas seguru de que quieres reestablecer les signatures?" + +#: wpvulnerability-admin.php:4004 wpvulnerability-adminms.php:4199 +msgid "Reset Signatures" +msgstr "Reestablecer signatures" + +#: wpvulnerability-admin.php:4012 wpvulnerability-adminms.php:4207 +msgid "Export Debug Info" +msgstr "Esportar información de depuración" + +#: wpvulnerability-admin.php:4018 wpvulnerability-adminms.php:4213 +msgid "You do not have permission to perform these actions." +msgstr "Nun tienes permisu pa realizar estes aiciones." + +#: wpvulnerability-adminms.php:101 wpvulnerability-adminms.php:199 +msgid "Settings saved." +msgstr "Axustes guardaos." + +#: wpvulnerability-adminms.php:277 +msgid "WPVulnerability cron events have been repaired across the network." +msgstr "Los eventos cron de WPVulnerability reparáronse en toda la rede." + +#: wpvulnerability-adminms.php:3512 +msgid "You do not have permission to access this page." +msgstr "Nun tienes permisu pa acceder a esta páxina." + +#. translators: 1: core version +#: wpvulnerability-core.php:33 +#, php-format +msgid "" +"WordPress %1$s has a known vulnerability that may be affecting your " +"installed version." +msgstr "" +"WordPress %1$s tien una vulnerabilidá conocida que pue tar afeutando a la " +"to versión instalada." + +#: wpvulnerability-core.php:115 wpvulnerability-plugins.php:207 +#: wpvulnerability-process.php:335 wpvulnerability-process.php:443 +#: wpvulnerability-process.php:529 wpvulnerability-themes.php:173 +#: wpvulnerability-themes.php:469 +msgid "Actively exploited" +msgstr "Explotada activamente" + +#: wpvulnerability-core.php:122 wpvulnerability-plugins.php:214 +#: wpvulnerability-process.php:342 wpvulnerability-process.php:450 +#: wpvulnerability-themes.php:180 wpvulnerability-themes.php:476 +msgid "Public exploit" +msgstr "Exploit públicu" + +#: wpvulnerability-core.php:125 wpvulnerability-plugins.php:217 +#: wpvulnerability-process.php:345 wpvulnerability-process.php:453 +#: wpvulnerability-themes.php:183 wpvulnerability-themes.php:479 +msgid "Automatable" +msgstr "Automatizable" + +#: wpvulnerability-core.php:139 wpvulnerability-plugins.php:245 +#: wpvulnerability-process.php:371 wpvulnerability-process.php:469 +#: wpvulnerability-process.php:544 wpvulnerability-themes.php:211 +#: wpvulnerability-themes.php:503 +msgid "References:" +msgstr "Referencies:" + +#: wpvulnerability-debug.php:399 +msgid "Invalid component specified." +msgstr "Componente especificáu non válidu." + +#: wpvulnerability-debug.php:423 +msgid "Version not detected for this component." +msgstr "Nun se detectó versión pa esti componente." + +#: wpvulnerability-debug.php:453 +msgid "API request successful." +msgstr "Solicitud de la API realizáu con ésitu." + +#. translators: %d: HTTP status code +#: wpvulnerability-debug.php:469 +#, php-format +msgid "API returned HTTP code %d." +msgstr "La API devolvió el códigu HTTP %d." + +#: wpvulnerability-general.php:355 +msgid "WPVulnerability Logs" +msgstr "Rexistros de WPVulnerability" + +#: wpvulnerability-general.php:356 +msgid "WPVulnerability Log" +msgstr "Rexistru de WPVulnerability" + +#: wpvulnerability-general.php:1873 wpvulnerability-general.php:1874 +msgid "Low" +msgstr "Baxu" + +#: wpvulnerability-general.php:1875 wpvulnerability-general.php:1876 +msgid "Medium" +msgstr "Mediu" + +#: wpvulnerability-general.php:1877 wpvulnerability-general.php:1878 +msgid "High" +msgstr "Altu" + +#: wpvulnerability-general.php:1879 wpvulnerability-general.php:1880 +msgid "Critical" +msgstr "Crítico" + +#: wpvulnerability-general.php:2684 +msgid "WPVulnerability Shell Logs" +msgstr "Rexistros de shell de WPVulnerability" + +#: wpvulnerability-general.php:2685 +msgid "WPVulnerability Shell Log" +msgstr "Rexistru de shell de WPVulnerability" + +#: wpvulnerability-notifications.php:30 +msgid "Every week" +msgstr "Cada selmana" + +#: wpvulnerability-notifications.php:57 +msgid "Every day" +msgstr "Cada día" + +#: wpvulnerability-notifications.php:84 +msgid "Invalid request." +msgstr "Solicitud non válida." + +#: wpvulnerability-notifications.php:104 +msgid "You have unsubscribed from WPVulnerability notifications." +msgstr "Desuscribiste-te de les notificaciones de WPVulnerability." + +#. translators: %1$s the website of Database, %2$s database site name. +#: wpvulnerability-notifications.php:289 +#, php-format +msgid "" +"Learn more about the WordPress Vulnerability Database API at %2$s" +msgstr "" +"Saber más sobre la API de la base de datos de vulnerabilidaes de WordPress en %2$s" + +#. translators: %1$s unsubscribe URL. +#: wpvulnerability-notifications.php:300 +#, php-format +msgid "" +"Want to stop receiving these alerts? Unsubscribe or " +"change the email frequency to Never in the WPVulnerability " +"settings." +msgstr "" +"¿Quieres dexar de recibir estes alertes? Desuscribiete o " +"cambia la frecuencia del correu a Nunca nes axustes de WPVulnerability." + +#: wpvulnerability-notifications.php:595 +msgid "No vulnerabilities found" +msgstr "Nun s'atoparon vulnerabilidaes" + +#: wpvulnerability-notifications.php:596 +msgid "This is likely a test. The site does not have vulnerabilities." +msgstr "Esto ye probablemente una prueba. El sitiu nun tien vulnerabilidaes." + +#: wpvulnerability-notifications.php:601 +msgid "Core vulnerabilities" +msgstr "Vulnerabilidaes del nucleu" + +#: wpvulnerability-notifications.php:607 +msgid "Plugins vulnerabilities" +msgstr "Vulnerabilidaes de plugins" + +#: wpvulnerability-notifications.php:613 +msgid "Themes vulnerabilities" +msgstr "Vulnerabilidaes de temes" + +#: wpvulnerability-notifications.php:619 +msgid "PHP vulnerabilities" +msgstr "Vulnerabilidaes de PHP" + +#: wpvulnerability-notifications.php:625 +msgid "Apache HTTPD vulnerabilities" +msgstr "Vulnerabilidaes d'Apache HTTPD" + +#: wpvulnerability-notifications.php:631 +msgid "Nginx vulnerabilities" +msgstr "Vulnerabilidaes de Nginx" + +#: wpvulnerability-notifications.php:637 +msgid "MariaDB vulnerabilities" +msgstr "Vulnerabilidaes de MariaDB" + +#: wpvulnerability-notifications.php:643 +msgid "MySQL vulnerabilities" +msgstr "Vulnerabilidaes de MySQL" + +#: wpvulnerability-notifications.php:649 +msgid "ImageMagick vulnerabilities" +msgstr "Vulnerabilidaes d'ImageMagick" + +#: wpvulnerability-notifications.php:655 +msgid "curl vulnerabilities" +msgstr "Vulnerabilidaes de curl" + +#: wpvulnerability-notifications.php:661 +msgid "memcached vulnerabilities" +msgstr "Vulnerabilidaes de memcached" + +#: wpvulnerability-notifications.php:667 +msgid "Redis vulnerabilities" +msgstr "Vulnerabilidaes de Redis" + +#: wpvulnerability-notifications.php:673 +msgid "SQLite vulnerabilities" +msgstr "Vulnerabilidaes de SQLite" + +#. translators: Site name. +#: wpvulnerability-notifications.php:696 +#, php-format +msgid "Vulnerability found: %s" +msgstr "Vulnerabilidá atopada: %s" + +#: wpvulnerability-notifications.php:700 +msgid "Vulnerability found" +msgstr "Vulnerabilidá atopada" + +#. translators: 1: Plugin name +#. translators: 1: theme name +#: wpvulnerability-plugins.php:116 wpvulnerability-themes.php:82 +#, php-format +msgid "" +"%1$s has a known vulnerability that may be affecting your installed version." +msgstr "" +"%1$s tien una vulnerabilidá conocida que pue tar afeutando a la to versión instalada." + +#: wpvulnerability-plugins.php:230 wpvulnerability-process.php:358 +msgid "This plugin is closed. Please replace it with another." +msgstr "Esti plugin ta zarráu. Sustitúilu por otru, por favor." + +#: wpvulnerability-plugins.php:233 wpvulnerability-process.php:361 +msgid "" +"This vulnerability appears to be unpatched. Stay tuned for upcoming plugin " +"updates." +msgstr "" +"Esta vulnerabilidá paez nun tar parcheada. Queda atento a les próximes " +"actualizaciones del plugin." + +#: wpvulnerability-plugins.php:570 +msgid "It hasn't been updated in over a year." +msgstr "Hai más d'un añu que nun s'actualiza." + +#: wpvulnerability-plugins.php:576 +msgid "It may no longer be available (closed?)." +msgstr "Pue que yá nun tea disponible (zarráu?)." + +#: wpvulnerability-plugins.php:614 wpvulnerability-plugins.php:621 +msgid "Last updated on" +msgstr "Última actualización" + +#. translators: the number of vulnerabilities. +#: wpvulnerability-plugins.php:764 wpvulnerability-themes.php:704 +#, php-format +msgid "Vulnerabilities (%d)" +msgstr "Vulnerabilidaes (%d)" + +#. translators: %s: software name. +#: wpvulnerability-process.php:601 +#, php-format +msgid "%s running" +msgstr "%s en execución" + +#: wpvulnerability-process.php:611 wpvulnerability-process.php:792 +msgid "End of Life" +msgstr "Fin de vida" + +#: wpvulnerability-process.php:613 wpvulnerability-process.php:618 +msgid "End of life:" +msgstr "Fin de vida:" + +#: wpvulnerability-process.php:616 +msgid "Supported" +msgstr "Con soporte" + +#: wpvulnerability-process.php:652 +msgid "Plugin" +msgstr "Plugin" + +#: wpvulnerability-process.php:721 +msgid "Theme" +msgstr "Tema" + +#. translators: %s: end-of-life date +#: wpvulnerability-process.php:790 +#, php-format +msgid "End of life: %s" +msgstr "Fin de vida: %s" + +#: wpvulnerability-process.php:795 +msgid "EOL" +msgstr "FDV" + +#: wpvulnerability-run.php:30 +msgid "Network Settings" +msgstr "Axustes de la rede" + +#: wpvulnerability-run.php:731 wpvulnerability-run.php:781 +#: wpvulnerability-run.php:791 wpvulnerability-run.php:836 +msgid "Vulnerabilities" +msgstr "Vulnerabilidaes" + +#: wpvulnerability-schedule.php:30 +msgid "Every 6 hours" +msgstr "Cada 6 hores" + +#: wpvulnerability-schedule.php:303 +msgid "Database updates" +msgstr "Actualizaciones de la base de datos" + +#: wpvulnerability-schedule.php:309 +msgid "Log cleanup" +msgstr "Llimpieza de rexistros" + +#: wpvulnerability-schedule.php:439 +msgid "" +"Notifications are scheduled, but settings currently disable them. Please " +"review the notifications tab." +msgstr "" +"Les notificaciones tan programaes, pero los axustes actuales desactivenles. Por favor, " +"revisa la llingüeta de notificaciones." + +#: wpvulnerability-schedule.php:442 +msgid "This event should not be scheduled for this site." +msgstr "Esti eventu nun debería tar programáu pa esti sitiu." + +#: wpvulnerability-schedule.php:446 +msgid "Not expected for this site." +msgstr "Non esperáu pa esti sitiu." + +#: wpvulnerability-schedule.php:450 +msgid "No instances found." +msgstr "Nun s'atoparon instancies." + +#: wpvulnerability-schedule.php:456 +msgid "Scheduled with an unexpected interval." +msgstr "Programáu con un intervalu inesperáu." + +#: wpvulnerability-schedule.php:460 +msgid "Multiple instances detected." +msgstr "Detectáronse múltiples instancies." + +#: wpvulnerability-schedule.php:465 +msgid "Scheduled as expected." +msgstr "Programáu como s'esperaba." + +#: wpvulnerability-sitehealth.php:22 +msgid "There aren't plugins vulnerabilities" +msgstr "Nun hai vulnerabilidaes de plugins" + +#: wpvulnerability-sitehealth.php:30 +msgid "Shows possible vulnerabilities that exist in installed plugins." +msgstr "Amuesa les posibles vulnerabilidaes qu'esisten nes plugins installaes." + +#. translators: Number of plugins vulnerabilities. +#: wpvulnerability-sitehealth.php:43 +#, php-format +msgid "There is %d plugin with vulnerabilities" +msgid_plural "There are %d plugins with vulnerabilities" +msgstr[0] "Hai %d plugin con vulnerabilidaes" +msgstr[1] "Hai %d plugins con vulnerabilidaes" + +#: wpvulnerability-sitehealth.php:49 +msgid "" +"We've detected potential vulnerabilities in installed plugins. Please check " +"them and keep them updated." +msgstr "" +"Detectamos vulnerabilidaes potenciales nes plugins installaes. Compruébeles y " +"mantén les plugins actualizaes, por favor." + +#: wpvulnerability-sitehealth.php:57 +msgid "Update plugins" +msgstr "Anovar plugins" + +#: wpvulnerability-sitehealth.php:74 +msgid "There aren't themes vulnerabilities" +msgstr "Nun hai vulnerabilidaes de temes" + +#: wpvulnerability-sitehealth.php:82 +msgid "Shows possible vulnerabilities that exist in installed themes." +msgstr "Amuesa les posibles vulnerabilidaes qu'esisten nes temes installaes." + +#. translators: Number of themes vulnerabilities. +#: wpvulnerability-sitehealth.php:95 +#, php-format +msgid "There is %d theme with vulnerabilities" +msgid_plural "There are %d themes with vulnerabilities" +msgstr[0] "Hai %d tema con vulnerabilidaes" +msgstr[1] "Hai %d temes con vulnerabilidaes" + +#: wpvulnerability-sitehealth.php:101 +msgid "" +"We've detected potential vulnerabilities in installed themes. Please check " +"them and keep them updated." +msgstr "" +"Detectamos vulnerabilidaes potenciales nes temes installaes. Compruébeles y " +"mantén les temes actualizaes, por favor." + +#: wpvulnerability-sitehealth.php:109 +msgid "Update themes" +msgstr "Anovar temes" + +#: wpvulnerability-sitehealth.php:126 +msgid "There aren't WordPress vulnerabilities" +msgstr "Nun hai vulnerabilidaes de WordPress" + +#: wpvulnerability-sitehealth.php:134 +msgid "Shows possible vulnerabilities existing in the WordPress core." +msgstr "Amuesa les posibles vulnerabilidaes esistentes nel nucleu de WordPress." + +#. translators: Number of core vulnerabilities. +#: wpvulnerability-sitehealth.php:147 +#, php-format +msgid "There is %d core vulnerability" +msgid_plural "There are %d core vulnerabilities" +msgstr[0] "Hai %d vulnerabilidá del nucleu" +msgstr[1] "Hai %d vulnerabilidaes del nucleu" + +#: wpvulnerability-sitehealth.php:153 +msgid "" +"We've detected potential vulnerabilities in this WordPress installation. " +"Please check them and keep your installation updated." +msgstr "" +"Detectamos vulnerabilidaes potenciales n'esta instalación de WordPress. " +"Compruébeles y mantén la to instalación actualizada, por favor." + +#: wpvulnerability-sitehealth.php:161 +msgid "Update WordPress" +msgstr "Anovar WordPress" + +#: wpvulnerability-sitehealth.php:180 +msgid "Nginx" +msgstr "Nginx" + +#: wpvulnerability-sitehealth.php:189 +msgid "Invalid software type" +msgstr "Tipu de software non válidu" + +#: wpvulnerability-sitehealth.php:192 +msgid "Error" +msgstr "Error" + +#: wpvulnerability-sitehealth.php:197 +msgid "The specified software type is not valid." +msgstr "El tipu de software especificáu nun ye válidu." + +#. translators: name of the software. +#: wpvulnerability-sitehealth.php:207 +#, php-format +msgid "There aren't %s vulnerabilities" +msgstr "Nun hai vulnerabilidaes de %s" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:216 +#, php-format +msgid "Shows possible vulnerabilities existing in %s." +msgstr "Amuesa les posibles vulnerabilidaes esistentes en %s." + +#. translators: Software and number of vulnerabilities. +#: wpvulnerability-sitehealth.php:229 +#, php-format +msgid "There is %1$d %2$s vulnerability" +msgid_plural "There are %1$d %2$s vulnerabilities" +msgstr[0] "Hai %1$d vulnerabilidá de %2$s." +msgstr[1] "Hai %1$d vulnerabilidaes de %2$s." + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:237 +#, php-format +msgid "" +"We've detected potential vulnerabilities in %s. Please check them and keep " +"your installation updated." +msgstr "" +"Detectamos vulnerabilidaes potenciales en %s. Por favor, compruébeles y mantén " +"actualizada la to instalación." + +#: wpvulnerability-sitehealth.php:246 +msgid "How to update PHP" +msgstr "Cómo anovar PHP" + +#: wpvulnerability-sitehealth.php:386 +msgid "WPVulnerability Core" +msgstr "WPVulnerability pa'l nucleu" + +#: wpvulnerability-sitehealth.php:394 +msgid "WPVulnerability Themes" +msgstr "WPVulnerability pa temes" + +#: wpvulnerability-sitehealth.php:402 +msgid "WPVulnerability Plugins" +msgstr "WPVulnerability pa plugins" + +#: wpvulnerability-sitehealth.php:410 +msgid "WPVulnerability PHP" +msgstr "WPVulnerability PHP" + +#: wpvulnerability-sitehealth.php:418 +msgid "WPVulnerability Apache HTTPD" +msgstr "WPVulnerability Apache HTTPD" + +#: wpvulnerability-sitehealth.php:426 +msgid "WPVulnerability Nginx" +msgstr "WPVulnerability Nginx" + +#: wpvulnerability-sitehealth.php:434 +msgid "WPVulnerability MariaDB" +msgstr "WPVulnerability MariaDB" + +#: wpvulnerability-sitehealth.php:442 +msgid "WPVulnerability MySQL" +msgstr "WPVulnerability MySQL" + +#: wpvulnerability-sitehealth.php:450 +msgid "WPVulnerability ImageMagick" +msgstr "WPVulnerability ImageMagick" + +#: wpvulnerability-sitehealth.php:458 +msgid "WPVulnerability curl" +msgstr "WPVulnerability curl" + +#: wpvulnerability-sitehealth.php:466 +msgid "WPVulnerability memcached" +msgstr "WPVulnerability memcached" + +#: wpvulnerability-sitehealth.php:474 +msgid "WPVulnerability redis" +msgstr "WPVulnerability redis" + +#: wpvulnerability-sitehealth.php:482 +msgid "WPVulnerability sqlite" +msgstr "WPVulnerability sqlite" + +#: wpvulnerability-themes.php:196 wpvulnerability-themes.php:492 +msgid "This theme is closed. Please replace it with another." +msgstr "Esti tema ta zarráu. Sustitúilu por otru, por favor." + +#: wpvulnerability-themes.php:199 wpvulnerability-themes.php:495 +msgid "" +"This vulnerability appears to be unpatched. Stay tuned for upcoming theme " +"updates." +msgstr "" +"Esta vulnerabilidá paez nun tar parcheada. Queda atento a les próximes " +"actualizaciones del tema." + +#: wpvulnerability-themes.php:391 +msgid "" +"This theme has known vulnerabilities that may be affecting your installed " +"version." +msgstr "" +"Esti tema tien vulnerabilidaes conocíes que pueden tar afeutando a la to versión instalada." diff --git a/languages/wpvulnerability-bn.l10n.php b/languages/wpvulnerability-bn.l10n.php new file mode 100644 index 0000000..4cea6be --- /dev/null +++ b/languages/wpvulnerability-bn.l10n.php @@ -0,0 +1,2 @@ +'wpvulnerability','plural-forms'=>'nplurals=2; plural=(n != 1);','language'=>'bn','project-id-version'=>'WPVulnerability 5.0.0','pot-creation-date'=>'2026-05-27T16:32:22+00:00','po-revision-date'=>'2026-05-27 00:00+0000','x-generator'=>'AI Translation','messages'=>['WPVulnerability'=>'WPVulnerability','https://www.wpvulnerability.com/plugin/'=>'https://www.wpvulnerability.com/plugin/','Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API.'=>'WordPress Vulnerability Database API থেকে আপনার WordPress-এ সম্ভাব্য দুর্বলতা সম্পর্কে তথ্য পান।','ROBOTSTXT'=>'ROBOTSTXT','https://www.robotstxt.es/'=>'https://www.robotstxt.es/','This command requires a WordPress administrator. Run with --user=.'=>'এই কমান্ডের জন্য একজন WordPress প্রশাসক প্রয়োজন। --user= দিয়ে চালান।','No core vulnerabilities found.'=>'কোনো মূল দুর্বলতা পাওয়া যায়নি।','No plugin vulnerabilities found.'=>'কোনো প্লাগইন দুর্বলতা পাওয়া যায়নি।','No theme vulnerabilities found.'=>'কোনো থিম দুর্বলতা পাওয়া যায়নি।','No %s vulnerabilities found.'=>'কোনো %s দুর্বলতা পাওয়া যায়নি।','Data from source has been reloaded.'=>'উৎস থেকে ডেটা পুনরায় লোড করা হয়েছে।','You do not have permission to reload data.'=>'ডেটা পুনরায় লোড করার অনুমতি আপনার নেই।','Test email has been sent.'=>'পরীক্ষামূলক ইমেইল পাঠানো হয়েছে।','Test email has failed. Please, check your email settings.'=>'পরীক্ষামূলক ইমেইল পাঠানো ব্যর্থ হয়েছে। অনুগ্রহ করে আপনার ইমেইল সেটিংস পরীক্ষা করুন।','You do not have permission to send test emails.'=>'পরীক্ষামূলক ইমেইল পাঠানোর অনুমতি আপনার নেই।','WPVulnerability cron events have been repaired.'=>'WPVulnerability cron ইভেন্টগুলি মেরামত করা হয়েছে।','You do not have permission to repair cron events.'=>'cron ইভেন্ট মেরামত করার অনুমতি আপনার নেই।','All logs have been deleted.'=>'সমস্ত লগ মুছে ফেলা হয়েছে।','You do not have permission to delete logs.'=>'লগ মুছে ফেলার অনুমতি আপনার নেই।','Uninstall preference saved.'=>'আনইনস্টল পছন্দ সংরক্ষণ করা হয়েছে।','WPVulnerability has been reset to defaults and reloaded.'=>'WPVulnerability ডিফল্টে পুনরায় সেট করা হয়েছে এবং পুনরায় লোড করা হয়েছে।','You do not have permission to reset WPVulnerability.'=>'WPVulnerability পুনরায় সেট করার অনুমতি আপনার নেই।','All caches have been cleared.'=>'সমস্ত ক্যাশ পরিষ্কার করা হয়েছে।','You do not have permission to clear caches.'=>'ক্যাশ পরিষ্কার করার অনুমতি আপনার নেই।','Plugin and theme signatures have been reset.'=>'প্লাগইন এবং থিম স্বাক্ষর পুনরায় সেট করা হয়েছে।','You do not have permission to reset signatures.'=>'স্বাক্ষর পুনরায় সেট করার অনুমতি আপনার নেই।','You do not have permission to export debug information.'=>'ডিবাগ তথ্য রপ্তানি করার অনুমতি আপনার নেই।','Database update has been executed.'=>'ডেটাবেস আপডেট সম্পাদন করা হয়েছে।','You do not have permission to run database updates.'=>'ডেটাবেস আপডেট চালানোর অনুমতি আপনার নেই।','Notification has been sent.'=>'বিজ্ঞপ্তি পাঠানো হয়েছে।','Notification sending failed.'=>'বিজ্ঞপ্তি পাঠানো ব্যর্থ হয়েছে।','You do not have permission to send notifications.'=>'বিজ্ঞপ্তি পাঠানোর অনুমতি আপনার নেই।','Notifications'=>'বিজ্ঞপ্তি','Analysis'=>'বিশ্লেষণ','Logs'=>'লগ','Security'=>'নিরাপত্তা','Tools'=>'সরঞ্জাম','Debug'=>'ডিবাগ','About'=>'পরিচিতি','Notification Settings'=>'বিজ্ঞপ্তি সেটিংস','Configure how and when you want to receive vulnerability notifications.'=>'কীভাবে এবং কখন দুর্বলতার বিজ্ঞপ্তি পেতে চান তা কনফিগার করুন।','Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software.'=>'আপনার WordPress ইনস্টলেশন, প্লাগইন, থিম এবং সার্ভার সফটওয়্যারের নিরাপত্তা দুর্বলতা সম্পর্কে অবহিত থাকুন।','Cache Expiration Time'=>'ক্যাশ মেয়াদ শেষের সময়','FORCED'=>'বাধ্যতামূলক','How long to cache vulnerability data before refreshing from the API.'=>'API থেকে রিফ্রেশ করার আগে দুর্বলতার ডেটা কতক্ষণ ক্যাশে রাখতে হবে।','%d hour'=>'%d ঘণ্টা' . "\0" . '%d ঘণ্টা','You can force the cache time via wp-config.php constant. Learn more →'=>'আপনি wp-config.php কনস্ট্যান্টের মাধ্যমে ক্যাশ সময় বাধ্য করতে পারেন। আরও জানুন →','Notification Frequency'=>'বিজ্ঞপ্তির পৌনঃপুনিকতা','Choose how often you want to receive vulnerability notifications.'=>'কত ঘন ঘন দুর্বলতার বিজ্ঞপ্তি পেতে চান তা বেছে নিন।','Never - Disable automatic notifications'=>'কখনো না - স্বয়ংক্রিয় বিজ্ঞপ্তি অক্ষম করুন','Daily - Receive notifications every day'=>'দৈনিক - প্রতিদিন বিজ্ঞপ্তি পান','Weekly - Receive notifications once a week'=>'সাপ্তাহিক - সপ্তাহে একবার বিজ্ঞপ্তি পান','Day:'=>'দিন:','Monday'=>'সোমবার','Tuesday'=>'মঙ্গলবার','Wednesday'=>'বুধবার','Thursday'=>'বৃহস্পতিবার','Friday'=>'শুক্রবার','Saturday'=>'শনিবার','Sunday'=>'রবিবার','Time:'=>'সময়:','(24-hour format, server timezone)'=>'(২৪ ঘণ্টার ফরম্যাট, সার্ভার টাইমজোন)','Notification Channels'=>'বিজ্ঞপ্তি চ্যানেল','Select where you want to receive notifications.'=>'কোথায় বিজ্ঞপ্তি পেতে চান তা বেছে নিন।','Email'=>'ইমেইল','Email Addresses (separated by commas):'=>'ইমেইল ঠিকানা (কমা দিয়ে আলাদা করুন):','Default:'=>'ডিফল্ট:','Slack'=>'Slack','Slack Webhook URL:'=>'Slack Webhook URL:','Learn how to create a Slack incoming webhook →'=>'Slack ইনকামিং webhook কীভাবে তৈরি করবেন →','Microsoft Teams'=>'Microsoft Teams','Teams Webhook URL:'=>'Teams Webhook URL:','Learn how to create a Teams incoming webhook →'=>'Teams ইনকামিং webhook কীভাবে তৈরি করবেন →','Discord'=>'Discord','Discord Webhook URL:'=>'Discord Webhook URL:','Learn how to create a Discord webhook →'=>'Discord webhook কীভাবে তৈরি করবেন →','Telegram'=>'Telegram','Telegram Bot Token:'=>'Telegram Bot Token:','Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'ফরম্যাট: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','Telegram Chat ID:'=>'Telegram Chat ID:','Learn how to create a Telegram bot and get Chat ID →'=>'Telegram bot কীভাবে তৈরি করবেন এবং Chat ID পাবেন →','Save Notification Settings'=>'বিজ্ঞপ্তি সেটিংস সংরক্ষণ করুন','WordPress Components'=>'WordPress উপাদান','WordPress Core'=>'WordPress Core','Plugins'=>'প্লাগইন','Themes'=>'থিম','Software & Languages'=>'সফটওয়্যার ও ভাষা','PHP'=>'PHP','Web Servers'=>'ওয়েব সার্ভার','Apache HTTPD'=>'Apache HTTPD','nginx'=>'nginx','Databases'=>'ডেটাবেস','MariaDB'=>'MariaDB','MySQL'=>'MySQL','SQLite'=>'SQLite','Additional Tools'=>'অতিরিক্ত সরঞ্জাম','ImageMagick'=>'ImageMagick','curl'=>'curl','memcached'=>'memcached','Redis'=>'Redis','Component Analysis Settings'=>'উপাদান বিশ্লেষণ সেটিংস','Enable or disable vulnerability analysis for specific components.'=>'নির্দিষ্ট উপাদানগুলির জন্য দুর্বলতা বিশ্লেষণ সক্ষম বা অক্ষম করুন।','Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red.'=>'দুর্বলতা স্ক্যান এবং রিপোর্ট থেকে যে উপাদানগুলি লুকাতে চান তা নির্বাচন করুন। অনির্বাচিত উপাদানগুলি সক্রিয়ভাবে বিশ্লেষণ করা হবে। সক্রিয় বিশ্লেষণ সহ উপাদানগুলি সবুজে এবং লুকানো উপাদানগুলি লালে দেখানো হয়।','Hidden (forced by constant)'=>'লুকানো (কনস্ট্যান্ট দ্বারা বাধ্য)','🔴 Analysis disabled'=>'🔴 বিশ্লেষণ অক্ষম','🟢 Analysis active'=>'🟢 বিশ্লেষণ সক্রিয়','Tip:'=>'পরামর্শ:','You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →'=>'আপনি wp-config.php কনস্ট্যান্টের মাধ্যমে উপাদানগুলি জোরপূর্বক অক্ষম করতে পারেন। জোরপূর্বক লুকানো পরীক্ষা সম্পর্কে আরও জানুন →','Save Analysis Settings'=>'বিশ্লেষণ সেটিংস সংরক্ষণ করুন','« Previous'=>'« পূর্ববর্তী','Next »'=>'পরবর্তী »','Log entry not found or has been removed.'=>'লগ এন্ট্রি পাওয়া যায়নি বা সরানো হয়েছে।','Unable to load the requested log entry.'=>'অনুরোধ করা লগ এন্ট্রি লোড করা সম্ভব হয়নি।','Log Configuration'=>'লগ কনফিগারেশন','Total Logs'=>'মোট লগ','Retention Period'=>'সংরক্ষণ মেয়াদ','Disabled'=>'অক্ষম','%d day'=>'%d দিন' . "\0" . '%d দিন','Log Retention Period'=>'লগ সংরক্ষণ মেয়াদ','None (Disabled)'=>'কোনোটি নয় (অক্ষম)','This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant.'=>'এই মানটি WPVULNERABILITY_LOG_RETENTION_DAYS কনস্ট্যান্ট দ্বারা প্রয়োগ করা হয়।','Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted.'=>'WPVulnerability কতদিন API প্রতিক্রিয়া লগ রাখবে তা বেছে নিন। পুরানো লগ স্বয়ংক্রিয়ভাবে মুছে যায়।','Save Configuration'=>'কনফিগারেশন সংরক্ষণ করুন','Log retention is currently disabled.'=>'লগ সংরক্ষণ বর্তমানে অক্ষম।','API responses are not being saved.'=>'API প্রতিক্রিয়াগুলি সংরক্ষণ হচ্ছে না।','Log Details'=>'লগ বিবরণ','Date'=>'তারিখ','API Endpoint'=>'API এন্ডপয়েন্ট','API Response'=>'API প্রতিক্রিয়া','Back to Logs'=>'লগে ফিরে যান','No logs available'=>'কোনো লগ নেই','API response logs will appear here once the vulnerability scanner runs.'=>'দুর্বলতা স্ক্যানার চলার পরে এখানে API প্রতিক্রিয়া লগ দেখা যাবে।','API Response Logs'=>'API প্রতিক্রিয়া লগ','Show:'=>'দেখান:','Apply'=>'প্রয়োগ করুন','Showing %1$s–%2$s of %3$s'=>'%3$s এর মধ্যে %1$s–%2$s দেখানো হচ্ছে','Actions'=>'কার্যক্রম','View'=>'দেখুন','Danger Zone'=>'বিপদ অঞ্চল','Permanently delete all API response logs. This action cannot be undone.'=>'সমস্ত API প্রতিক্রিয়া লগ স্থায়ীভাবে মুছুন। এই পদক্ষেপ পূর্বাবস্থায় ফেরানো যাবে না।','Are you sure you want to delete all logs? This action cannot be undone.'=>'আপনি কি সমস্ত লগ মুছতে চান? এই পদক্ষেপ পূর্বাবস্থায় ফেরানো যাবে না।','Delete All Logs'=>'সমস্ত লগ মুছুন','Reload Data from API'=>'API থেকে ডেটা পুনরায় লোড করুন','Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information.'=>'আপডেট করা ডেটা পেতে সমস্ত Core, প্লাগইন, থিম এবং অন্যান্য উপাদানের তথ্য সরাসরি API থেকে পুনরায় লোড করুন। এটি ক্যাশ পরিষ্কার করবে এবং নতুন দুর্বলতার তথ্য আনবে।','Reload Data'=>'ডেটা পুনরায় লোড করুন','Test Email Notifications'=>'পরীক্ষামূলক ইমেইল বিজ্ঞপ্তি','Send a test email notification with current vulnerability data to verify your email configuration is working correctly.'=>'আপনার ইমেইল কনফিগারেশন সঠিকভাবে কাজ করছে কিনা যাচাই করতে বর্তমান দুর্বলতার ডেটা সহ একটি পরীক্ষামূলক ইমেইল বিজ্ঞপ্তি পাঠান।','From address (configured via constant):'=>'প্রেরকের ঠিকানা (কনস্ট্যান্টের মাধ্যমে কনফিগার করা):','From address (default):'=>'প্রেরকের ঠিকানা (ডিফল্ট):','Learn how to customize the email sender address →'=>'ইমেইল প্রেরকের ঠিকানা কীভাবে কাস্টমাইজ করবেন →','Send Test Email'=>'পরীক্ষামূলক ইমেইল পাঠান','WP-Cron Status'=>'WP-Cron অবস্থা','View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly.'=>'WP-Cron নির্ধারিত ইভেন্টগুলি দেখুন এবং পরিচালনা করুন। নিশ্চিত করুন যে স্বয়ংক্রিয় কাজগুলি সঠিকভাবে চলছে।','No cron data available.'=>'কোনো cron ডেটা নেই।','Hook'=>'হুক','Expected'=>'প্রত্যাশিত','Found'=>'পাওয়া গেছে','Next Run'=>'পরবর্তী রান','Status'=>'অবস্থা','Not expected'=>'প্রত্যাশিত নয়','None'=>'কোনোটি নয়','OK'=>'ঠিক আছে','⚠️ Unexpected WPVulnerability Events'=>'⚠️ অপ্রত্যাশিত WPVulnerability ইভেন্ট','No interval'=>'কোনো বিরতি নেই','Next:'=>'পরবর্তী:','Repair Cron Events'=>'Cron ইভেন্ট মেরামত করুন','Uninstall Data'=>'আনইনস্টল ডেটা','By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall.'=>'ডিফল্টভাবে, WPVulnerability মুছলে সমস্ত প্লাগইন ডেটা সংরক্ষিত থাকে। নিচের বিকল্পটি শুধুমাত্র তখনই সক্ষম করুন যদি আনইনস্টলের সময় সমস্ত বিকল্প, লগ এবং ক্যাশ করা ডেটা স্থায়ীভাবে মুছে ফেলতে চান।','Delete all plugin data on uninstall'=>'আনইনস্টলের সময় সমস্ত প্লাগইন ডেটা মুছুন','Default: unchecked (data preserved). Check only if you want a clean removal.'=>'ডিফল্ট: অনির্বাচিত (ডেটা সংরক্ষিত)। শুধুমাত্র পরিষ্কার অপসারণ চাইলে চেক করুন।','Save preference'=>'পছন্দ সংরক্ষণ করুন','Reset WPVulnerability'=>'WPVulnerability রিসেট করুন','Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API.'=>'সমস্ত WPVulnerability সেটিংস, ক্যাশ করা ডেটা, লগ এবং নির্ধারিত ইভেন্ট মুছুন, তারপর ডিফল্ট পুনরুদ্ধার করুন এবং API থেকে ডেটা পুনরায় লোড করুন।','This action cannot be undone.'=>'এই পদক্ষেপ পূর্বাবস্থায় ফেরানো যাবে না।','Are you sure you want to reset all WPVulnerability data? This action cannot be undone.'=>'আপনি কি সমস্ত WPVulnerability ডেটা রিসেট করতে চান? এই পদক্ষেপ পূর্বাবস্থায় ফেরানো যাবে না।','Reset Plugin'=>'প্লাগইন রিসেট করুন','Vulnerability Database Statistics'=>'দুর্বলতা ডেটাবেস পরিসংখ্যান','%s vulnerability'=>'%s দুর্বলতা' . "\0" . '%s দুর্বলতা','(%s product)'=>'(%s পণ্য)' . "\0" . '(%s পণ্য)','No data'=>'কোনো ডেটা নেই','Database last updated: %s'=>'ডেটাবেস সর্বশেষ আপডেট: %s','Intelligence Sources'=>'তথ্য উৎস','Number of vulnerabilities contributed by each intelligence source.'=>'প্রতিটি তথ্য উৎস দ্বারা অবদানকৃত দুর্বলতার সংখ্যা।','Source'=>'উৎস','Core'=>'Core','Sponsors'=>'স্পনসর','No sponsor data available.'=>'কোনো স্পনসর ডেটা নেই।','Contributors'=>'অবদানকারী','No contributor data available.'=>'কোনো অবদানকারী ডেটা নেই।','You do not have sufficient permissions to access this page.'=>'এই পাতায় প্রবেশ করার জন্য আপনার যথেষ্ট অনুমতি নেই।','WPVulnerability settings'=>'WPVulnerability সেটিংস','Configure and save these settings to receive notifications.'=>'বিজ্ঞপ্তি পেতে এই সেটিংসগুলি কনফিগার করুন এবং সংরক্ষণ করুন।','Configure and save these settings to hide vulnerabilities.'=>'দুর্বলতাগুলি লুকাতে এই সেটিংসগুলি কনফিগার করুন এবং সংরক্ষণ করুন।','Default administrator email'=>'ডিফল্ট প্রশাসক ইমেইল','Read more if you want to force the cache time.'=>'ক্যাশ সময় বাধ্য করতে চাইলে আরও পড়ুন।','Never'=>'কখনো না','Daily'=>'দৈনিক','Weekly'=>'সাপ্তাহিক','Day'=>'দিন','Hour'=>'ঘণ্টা','Minute'=>'মিনিট','Read more about how to force the deactivation of an item.'=>'কোনো আইটেম জোরপূর্বক নিষ্ক্রিয় করার বিষয়ে আরও পড়ুন।','Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com'=>'অবৈধ Slack webhook URL। hooks.slack.com থেকে একটি বৈধ HTTPS URL হতে হবে।','Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com'=>'অবৈধ Microsoft Teams webhook URL। office.com, office365.com, বা api.hooks.microsoft.com থেকে একটি বৈধ HTTPS URL হতে হবে।','Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com'=>'অবৈধ Discord webhook URL। discord.com বা discordapp.com থেকে একটি বৈধ HTTPS URL হতে হবে।','Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'অবৈধ Telegram bot token ফরম্যাট। এরকম হতে হবে: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','All Clear'=>'সব পরিষ্কার','%d Critical Issue Found'=>'%d গুরুতর সমস্যা পাওয়া গেছে' . "\0" . '%d গুরুতর সমস্যা পাওয়া গেছে','%d Issue Found'=>'%d সমস্যা পাওয়া গেছে' . "\0" . '%d সমস্যা পাওয়া গেছে','Never checked'=>'কখনো পরীক্ষা করা হয়নি','%d minute ago'=>'%d মিনিট আগে' . "\0" . '%d মিনিট আগে','%d hour ago'=>'%d ঘণ্টা আগে' . "\0" . '%d ঘণ্টা আগে','Last checked: %s'=>'সর্বশেষ পরীক্ষা: %s','Refresh Now'=>'এখনই রিফ্রেশ করুন','No vulnerabilities detected'=>'কোনো দুর্বলতা সনাক্ত হয়নি','Your site is up to date and secure'=>'আপনার সাইট আপডেট এবং সুরক্ষিত','Server Software'=>'সার্ভার সফটওয়্যার','Site Health'=>'সাইটের স্বাস্থ্য','Settings'=>'সেটিংস','WPVulnerability Status'=>'WPVulnerability অবস্থা','Receive vulnerability notifications'=>'দুর্বলতার বিজ্ঞপ্তি পান','Cache expiration time'=>'ক্যাশ মেয়াদ শেষের সময়','How often you want to receive notifications'=>'কত ঘন ঘন বিজ্ঞপ্তি পেতে চান','Where do you want to receive notifications?'=>'কোথায় বিজ্ঞপ্তি পেতে চান?','Email addresses to notify (separated by commas)'=>'বিজ্ঞপ্তির জন্য ইমেইল ঠিকানা (কমা দিয়ে আলাদা করুন)','Slack webhook URL'=>'Slack webhook URL','Teams webhook URL'=>'Teams webhook URL','Vulnerabilities to hide'=>'লুকানোর জন্য দুর্বলতা','What do you want to hide?'=>'কী লুকাতে চান?','Standard (Hybrid Detection)'=>'মানক (হাইব্রিড সনাক্তকরণ)','Strict (Extensions Only)'=>'কঠোর (শুধুমাত্র এক্সটেনশন)','Disabled (No Detection)'=>'অক্ষম (কোনো সনাক্তকরণ নেই)','Security Status'=>'নিরাপত্তা অবস্থা','Security Mode'=>'নিরাপত্তা মোড','Shell Execution'=>'Shell নিষ্পাদন','Enabled'=>'সক্ষম','Audit Logging'=>'অডিট লগিং','Enabled (%d days)'=>'সক্ষম (%d দিন)','Total Log Entries'=>'মোট লগ এন্ট্রি','Last Shell Execution'=>'সর্বশেষ Shell নিষ্পাদন','%s ago'=>'%s আগে','Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.'=>'wp-config.php কনস্ট্যান্টের মাধ্যমে নিরাপত্তা সেটিংস কনফিগার করুন: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST।','See security configuration documentation for details.'=>'বিবরণের জন্য নিরাপত্তা কনফিগারেশন ডকুমেন্টেশন দেখুন।','Memcached'=>'Memcached','Imagick Extension'=>'Imagick এক্সটেনশন','Redis Extension'=>'Redis এক্সটেনশন','Memcached Extension'=>'Memcached এক্সটেনশন','Memcache Extension'=>'Memcache এক্সটেনশন','SQLite3 Extension'=>'SQLite3 এক্সটেনশন','PDO SQLite'=>'PDO SQLite','Shell Command'=>'Shell কমান্ড','Binary Check'=>'বাইনারি পরীক্ষা','Not Detected'=>'সনাক্ত হয়নি','Software Detection Methods'=>'সফটওয়্যার সনাক্তকরণ পদ্ধতি','Shows which detection method was used for each software component and the reliability score.'=>'প্রতিটি সফটওয়্যার উপাদানের জন্য কোন সনাক্তকরণ পদ্ধতি ব্যবহার করা হয়েছে এবং নির্ভরযোগ্যতা স্কোর দেখায়।','Component'=>'উপাদান','Version'=>'সংস্করণ','Detection Method'=>'সনাক্তকরণ পদ্ধতি','Reliability'=>'নির্ভরযোগ্যতা','Not detected'=>'সনাক্ত হয়নি','Shell Execution Audit Logs'=>'Shell নিষ্পাদন অডিট লগ','Complete audit trail of shell command executions for security monitoring.'=>'নিরাপত্তা পর্যবেক্ষণের জন্য shell কমান্ড নিষ্পাদনের সম্পূর্ণ অডিট ট্রেইল।','No shell execution logs found.'=>'কোনো shell নিষ্পাদন লগ পাওয়া যায়নি।','Logs will appear here when shell commands are executed for software detection.'=>'সফটওয়্যার সনাক্তকরণের জন্য shell কমান্ড নিষ্পাদিত হলে এখানে লগ দেখা যাবে।','Time'=>'সময়','Command'=>'কমান্ড','User'=>'ব্যবহারকারী','Output'=>'আউটপুট','Showing the %d most recent log entries.'=>'সবচেয়ে সাম্প্রতিক %d টি লগ এন্ট্রি দেখানো হচ্ছে।','Invalid nonce.'=>'অবৈধ nonce।','Insufficient permissions.'=>'অপর্যাপ্ত অনুমতি।','No component specified.'=>'কোনো উপাদান নির্দিষ্ট করা হয়নি।','Debug Information'=>'ডিবাগ তথ্য','This tab is only visible when WP_DEBUG is enabled. Use with caution.'=>'এই ট্যাবটি শুধুমাত্র WP_DEBUG সক্ষম হলে দেখা যায়। সতর্কতার সাথে ব্যবহার করুন।','System Information'=>'সিস্টেম তথ্য','WordPress Version'=>'WordPress সংস্করণ','Multisite'=>'মাল্টিসাইট','Yes'=>'হ্যাঁ','No'=>'না','Language'=>'ভাষা','PHP Version'=>'PHP সংস্করণ','PHP Extensions'=>'PHP এক্সটেনশন','PHP Memory Limit'=>'PHP মেমরি সীমা','Database'=>'ডেটাবেস','Web Server'=>'ওয়েব সার্ভার','WP_DEBUG'=>'WP_DEBUG','WP_DEBUG_LOG'=>'WP_DEBUG_LOG','Path:'=>'পথ:','Size: %s'=>'আকার: %s','View Log File'=>'লগ ফাইল দেখুন','Log file is not web-accessible (outside wp-content)'=>'লগ ফাইল ওয়েব-অ্যাক্সেসযোগ্য নয় (wp-content এর বাইরে)','Log file does not exist yet'=>'লগ ফাইল এখনো নেই','Plugin Version'=>'প্লাগইন সংস্করণ','Component Detection'=>'উপাদান সনাক্তকরণ','Version Detected'=>'সংস্করণ সনাক্ত','Analyzed'=>'বিশ্লেষিত','Cache Status'=>'ক্যাশ অবস্থা','Configuration Summary'=>'কনফিগারেশন সারসংক্ষেপ','Cache Duration'=>'ক্যাশের মেয়াদ','Log Retention'=>'লগ সংরক্ষণ','Components Analyzed'=>'বিশ্লেষিত উপাদান','Notification Email'=>'বিজ্ঞপ্তি ইমেইল','Slack Webhook'=>'Slack Webhook','Configured & Enabled'=>'কনফিগার করা ও সক্ষম','Configured (Disabled)'=>'কনফিগার করা (অক্ষম)','Not configured'=>'কনফিগার করা হয়নি','Teams Webhook'=>'Teams Webhook','Discord Webhook'=>'Discord Webhook','Telegram Bot'=>'Telegram Bot','Cron Status'=>'Cron অবস্থা','Update Database'=>'ডেটাবেস আপডেট করুন','Next run: %s'=>'পরবর্তী রান: %s','Not scheduled'=>'নির্ধারিত নয়','Send Notification'=>'বিজ্ঞপ্তি পাঠান','Run Update Now'=>'এখনই আপডেট চালান','Run Notification Now'=>'এখনই বিজ্ঞপ্তি পাঠান','You do not have permission to run these actions.'=>'এই কার্যক্রমগুলি চালানোর অনুমতি আপনার নেই।','API Testing'=>'API পরীক্ষা','Test API connectivity for each component. Click a button to send a test request.'=>'প্রতিটি উপাদানের জন্য API সংযোগ পরীক্ষা করুন। পরীক্ষামূলক অনুরোধ পাঠাতে একটি বোতামে ক্লিক করুন।','Test %s'=>'%s পরীক্ষা','Testing...'=>'পরীক্ষা করা হচ্ছে...','HTTP Code:'=>'HTTP কোড:','Response Time:'=>'প্রতিক্রিয়া সময়:','Response Preview'=>'প্রতিক্রিয়া পূর্বদর্শন','Test'=>'পরীক্ষা','Error:'=>'ত্রুটি:','AJAX request failed.'=>'AJAX অনুরোধ ব্যর্থ হয়েছে।','You do not have permission to test API connectivity.'=>'API সংযোগ পরীক্ষা করার অনুমতি আপনার নেই।','Database Options Viewer'=>'ডেটাবেস বিকল্প দর্শক','View the raw data stored in WordPress options.'=>'WordPress বিকল্পে সংরক্ষিত র‌্যা ডেটা দেখুন।','Select an option...'=>'একটি বিকল্প নির্বাচন করুন...','Option not found or empty.'=>'বিকল্প পাওয়া যায়নি বা খালি।','Quick Actions'=>'দ্রুত কার্যক্রম','Perform debugging actions. Use with caution.'=>'ডিবাগিং কার্যক্রম সম্পাদন করুন। সতর্কতার সাথে ব্যবহার করুন।','Are you sure you want to clear all caches?'=>'আপনি কি সমস্ত ক্যাশ পরিষ্কার করতে চান?','Clear All Caches'=>'সমস্ত ক্যাশ পরিষ্কার করুন','Are you sure you want to reset signatures?'=>'আপনি কি স্বাক্ষর রিসেট করতে চান?','Reset Signatures'=>'স্বাক্ষর রিসেট করুন','Export Debug Info'=>'ডিবাগ তথ্য রপ্তানি করুন','You do not have permission to perform these actions.'=>'এই কার্যক্রমগুলি সম্পাদন করার অনুমতি আপনার নেই।','Settings saved.'=>'সেটিংস সংরক্ষণ করা হয়েছে।','WPVulnerability cron events have been repaired across the network.'=>'নেটওয়ার্কে WPVulnerability cron ইভেন্টগুলি মেরামত করা হয়েছে।','You do not have permission to access this page.'=>'এই পাতায় প্রবেশ করার অনুমতি আপনার নেই।','WordPress %1$s has a known vulnerability that may be affecting your installed version.'=>'WordPress %1$s-এ একটি পরিচিত দুর্বলতা রয়েছে যা আপনার ইনস্টল করা সংস্করণকে প্রভাবিত করতে পারে।','Actively exploited'=>'সক্রিয়ভাবে শোষিত','Public exploit'=>'পাবলিক এক্সপ্লয়েট','Automatable'=>'স্বয়ংক্রিয়যোগ্য','References:'=>'রেফারেন্স:','Invalid component specified.'=>'অবৈধ উপাদান নির্দিষ্ট করা হয়েছে।','Version not detected for this component.'=>'এই উপাদানের জন্য সংস্করণ সনাক্ত হয়নি।','API request successful.'=>'API অনুরোধ সফল হয়েছে।','API returned HTTP code %d.'=>'API HTTP কোড %d ফেরত দিয়েছে।','WPVulnerability Logs'=>'WPVulnerability লগ','WPVulnerability Log'=>'WPVulnerability লগ','Low'=>'কম','Medium'=>'মাঝারি','High'=>'বেশি','Critical'=>'গুরুতর','WPVulnerability Shell Logs'=>'WPVulnerability Shell লগ','WPVulnerability Shell Log'=>'WPVulnerability Shell লগ','Every week'=>'প্রতি সপ্তাহ','Every day'=>'প্রতিদিন','Invalid request.'=>'অবৈধ অনুরোধ।','You have unsubscribed from WPVulnerability notifications.'=>'আপনি WPVulnerability বিজ্ঞপ্তি থেকে সদস্যতা বাতিল করেছেন।','Learn more about the WordPress Vulnerability Database API at %2$s'=>'WordPress Vulnerability Database API সম্পর্কে আরও জানুন %2$s-এ','Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings.'=>'এই সতর্কতাগুলি পাওয়া বন্ধ করতে চান? সদস্যতা বাতিল করুন অথবা WPVulnerability সেটিংসে ইমেইল কম্পাঙ্ক পরিবর্তন করে কখনো না করুন।','No vulnerabilities found'=>'কোনো দুর্বলতা পাওয়া যায়নি','This is likely a test. The site does not have vulnerabilities.'=>'এটি সম্ভবত একটি পরীক্ষা। সাইটে কোনো দুর্বলতা নেই।','Core vulnerabilities'=>'Core দুর্বলতা','Plugins vulnerabilities'=>'প্লাগইন দুর্বলতা','Themes vulnerabilities'=>'থিম দুর্বলতা','PHP vulnerabilities'=>'PHP দুর্বলতা','Apache HTTPD vulnerabilities'=>'Apache HTTPD দুর্বলতা','Nginx vulnerabilities'=>'Nginx দুর্বলতা','MariaDB vulnerabilities'=>'MariaDB দুর্বলতা','MySQL vulnerabilities'=>'MySQL দুর্বলতা','ImageMagick vulnerabilities'=>'ImageMagick দুর্বলতা','curl vulnerabilities'=>'curl দুর্বলতা','memcached vulnerabilities'=>'memcached দুর্বলতা','Redis vulnerabilities'=>'Redis দুর্বলতা','SQLite vulnerabilities'=>'SQLite দুর্বলতা','Vulnerability found: %s'=>'দুর্বলতা পাওয়া গেছে: %s','Vulnerability found'=>'দুর্বলতা পাওয়া গেছে','%1$s has a known vulnerability that may be affecting your installed version.'=>'%1$s-এ একটি পরিচিত দুর্বলতা রয়েছে যা আপনার ইনস্টল করা সংস্করণকে প্রভাবিত করতে পারে।','This plugin is closed. Please replace it with another.'=>'এই প্লাগইনটি বন্ধ। অনুগ্রহ করে এটি অন্য একটি দিয়ে প্রতিস্থাপন করুন।','This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates.'=>'এই দুর্বলতাটি প্যাচ না করা মনে হচ্ছে। আসন্ন প্লাগইন আপডেটের জন্য অপেক্ষা করুন।','It hasn\'t been updated in over a year.'=>'এটি এক বছরেরও বেশি সময় ধরে আপডেট হয়নি।','It may no longer be available (closed?).'=>'এটি আর পাওয়া নাও যেতে পারে (বন্ধ?)।','Last updated on'=>'সর্বশেষ আপডেট করা হয়েছে','Vulnerabilities (%d)'=>'দুর্বলতা (%d)','%s running'=>'%s চলছে','End of Life'=>'সাপোর্ট শেষ','End of life:'=>'সাপোর্ট শেষ:','Supported'=>'সমর্থিত','Plugin'=>'প্লাগইন','Theme'=>'থিম','End of life: %s'=>'সাপোর্ট শেষ: %s','EOL'=>'EOL','Network Settings'=>'নেটওয়ার্ক সেটিংস','Vulnerabilities'=>'দুর্বলতা','Every 6 hours'=>'প্রতি ৬ ঘণ্টায়','Database updates'=>'ডেটাবেস আপডেট','Log cleanup'=>'লগ পরিষ্কার','Notifications are scheduled, but settings currently disable them. Please review the notifications tab.'=>'বিজ্ঞপ্তিগুলি নির্ধারিত রয়েছে, কিন্তু সেটিংস বর্তমানে সেগুলি অক্ষম করে। অনুগ্রহ করে বিজ্ঞপ্তি ট্যাব পর্যালোচনা করুন।','This event should not be scheduled for this site.'=>'এই ইভেন্টটি এই সাইটের জন্য নির্ধারিত হওয়া উচিত নয়।','Not expected for this site.'=>'এই সাইটের জন্য প্রত্যাশিত নয়।','No instances found.'=>'কোনো ইনস্ট্যান্স পাওয়া যায়নি।','Scheduled with an unexpected interval.'=>'অপ্রত্যাশিত বিরতি দিয়ে নির্ধারিত।','Multiple instances detected.'=>'একাধিক ইনস্ট্যান্স সনাক্ত হয়েছে।','Scheduled as expected.'=>'প্রত্যাশামতো নির্ধারিত।','There aren\'t plugins vulnerabilities'=>'প্লাগইনে কোনো দুর্বলতা নেই','Shows possible vulnerabilities that exist in installed plugins.'=>'ইনস্টল করা প্লাগইনে বিদ্যমান সম্ভাব্য দুর্বলতাগুলি দেখায়।','There is %d plugin with vulnerabilities'=>'দুর্বলতা সহ %d টি প্লাগইন আছে' . "\0" . 'দুর্বলতা সহ %d টি প্লাগইন আছে','We\'ve detected potential vulnerabilities in installed plugins. Please check them and keep them updated.'=>'আমরা ইনস্টল করা প্লাগইনে সম্ভাব্য দুর্বলতা সনাক্ত করেছি। অনুগ্রহ করে সেগুলি পরীক্ষা করুন এবং আপডেট রাখুন।','Update plugins'=>'প্লাগইন আপডেট করুন','There aren\'t themes vulnerabilities'=>'থিমে কোনো দুর্বলতা নেই','Shows possible vulnerabilities that exist in installed themes.'=>'ইনস্টল করা থিমে বিদ্যমান সম্ভাব্য দুর্বলতাগুলি দেখায়।','There is %d theme with vulnerabilities'=>'দুর্বলতা সহ %d টি থিম আছে' . "\0" . 'দুর্বলতা সহ %d টি থিম আছে','We\'ve detected potential vulnerabilities in installed themes. Please check them and keep them updated.'=>'আমরা ইনস্টল করা থিমে সম্ভাব্য দুর্বলতা সনাক্ত করেছি। অনুগ্রহ করে সেগুলি পরীক্ষা করুন এবং আপডেট রাখুন।','Update themes'=>'থিম আপডেট করুন','There aren\'t WordPress vulnerabilities'=>'WordPress-এ কোনো দুর্বলতা নেই','Shows possible vulnerabilities existing in the WordPress core.'=>'WordPress core-এ বিদ্যমান সম্ভাব্য দুর্বলতাগুলি দেখায়।','There is %d core vulnerability'=>'%d টি core দুর্বলতা আছে' . "\0" . '%d টি core দুর্বলতা আছে','We\'ve detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated.'=>'আমরা এই WordPress ইনস্টলেশনে সম্ভাব্য দুর্বলতা সনাক্ত করেছি। অনুগ্রহ করে সেগুলি পরীক্ষা করুন এবং আপনার ইনস্টলেশন আপডেট রাখুন।','Update WordPress'=>'WordPress আপডেট করুন','Nginx'=>'Nginx','Invalid software type'=>'অবৈধ সফটওয়্যার ধরন','Error'=>'ত্রুটি','The specified software type is not valid.'=>'নির্দিষ্ট সফটওয়্যার ধরনটি বৈধ নয়।','There aren\'t %s vulnerabilities'=>'%s-এ কোনো দুর্বলতা নেই','Shows possible vulnerabilities existing in %s.'=>'%s-এ বিদ্যমান সম্ভাব্য দুর্বলতাগুলি দেখায়।','There is %1$d %2$s vulnerability'=>'%2$s-এ %1$d টি দুর্বলতা আছে' . "\0" . '%2$s-এ %1$d টি দুর্বলতা আছে','We\'ve detected potential vulnerabilities in %s. Please check them and keep your installation updated.'=>'আমরা %s-এ সম্ভাব্য দুর্বলতা সনাক্ত করেছি। অনুগ্রহ করে সেগুলি পরীক্ষা করুন এবং আপনার ইনস্টলেশন আপডেট রাখুন।','How to update PHP'=>'PHP কীভাবে আপডেট করবেন','WPVulnerability Core'=>'WPVulnerability Core','WPVulnerability Themes'=>'WPVulnerability Themes','WPVulnerability Plugins'=>'WPVulnerability Plugins','WPVulnerability PHP'=>'WPVulnerability PHP','WPVulnerability Apache HTTPD'=>'WPVulnerability Apache HTTPD','WPVulnerability Nginx'=>'WPVulnerability Nginx','WPVulnerability MariaDB'=>'WPVulnerability MariaDB','WPVulnerability MySQL'=>'WPVulnerability MySQL','WPVulnerability ImageMagick'=>'WPVulnerability ImageMagick','WPVulnerability curl'=>'WPVulnerability curl','WPVulnerability memcached'=>'WPVulnerability memcached','WPVulnerability redis'=>'WPVulnerability redis','WPVulnerability sqlite'=>'WPVulnerability sqlite','This theme is closed. Please replace it with another.'=>'এই থিমটি বন্ধ। অনুগ্রহ করে এটি অন্য একটি দিয়ে প্রতিস্থাপন করুন।','This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates.'=>'এই দুর্বলতাটি প্যাচ না করা মনে হচ্ছে। আসন্ন থিম আপডেটের জন্য অপেক্ষা করুন।','This theme has known vulnerabilities that may be affecting your installed version.'=>'এই থিমে পরিচিত দুর্বলতা রয়েছে যা আপনার ইনস্টল করা সংস্করণকে প্রভাবিত করতে পারে।']]; \ No newline at end of file diff --git a/languages/wpvulnerability-bn.mo b/languages/wpvulnerability-bn.mo new file mode 100644 index 0000000000000000000000000000000000000000..051e1235ca4a26a516c2aa225a71d4f3020d3d32 GIT binary patch literal 56456 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 w04s72SE64Ge()3Y\n" +"Language: bn\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: AI Translation\n" +"X-Domain: wpvulnerability\n" + +#. Plugin Name of the plugin +msgid "WPVulnerability" +msgstr "WPVulnerability" + +#. Plugin URI of the plugin +msgid "https://www.wpvulnerability.com/plugin/" +msgstr "https://www.wpvulnerability.com/plugin/" + +#. Description of the plugin +msgid "Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API." +msgstr "WordPress Vulnerability Database API থেকে আপনার WordPress-এ সম্ভাব্য দুর্বলতা সম্পর্কে তথ্য পান।" + +#. Author of the plugin +msgid "ROBOTSTXT" +msgstr "ROBOTSTXT" + +#. Author URI of the plugin +msgid "https://www.robotstxt.es/" +msgstr "https://www.robotstxt.es/" + +msgid "This command requires a WordPress administrator. Run with --user=." +msgstr "এই কমান্ডের জন্য একজন WordPress প্রশাসক প্রয়োজন। --user= দিয়ে চালান।" + +msgid "No core vulnerabilities found." +msgstr "কোনো মূল দুর্বলতা পাওয়া যায়নি।" + +msgid "No plugin vulnerabilities found." +msgstr "কোনো প্লাগইন দুর্বলতা পাওয়া যায়নি।" + +msgid "No theme vulnerabilities found." +msgstr "কোনো থিম দুর্বলতা পাওয়া যায়নি।" + +#, php-format +msgid "No %s vulnerabilities found." +msgstr "কোনো %s দুর্বলতা পাওয়া যায়নি।" + +msgid "Data from source has been reloaded." +msgstr "উৎস থেকে ডেটা পুনরায় লোড করা হয়েছে।" + +msgid "You do not have permission to reload data." +msgstr "ডেটা পুনরায় লোড করার অনুমতি আপনার নেই।" + +msgid "Test email has been sent." +msgstr "পরীক্ষামূলক ইমেইল পাঠানো হয়েছে।" + +msgid "Test email has failed. Please, check your email settings." +msgstr "পরীক্ষামূলক ইমেইল পাঠানো ব্যর্থ হয়েছে। অনুগ্রহ করে আপনার ইমেইল সেটিংস পরীক্ষা করুন।" + +msgid "You do not have permission to send test emails." +msgstr "পরীক্ষামূলক ইমেইল পাঠানোর অনুমতি আপনার নেই।" + +msgid "WPVulnerability cron events have been repaired." +msgstr "WPVulnerability cron ইভেন্টগুলি মেরামত করা হয়েছে।" + +msgid "You do not have permission to repair cron events." +msgstr "cron ইভেন্ট মেরামত করার অনুমতি আপনার নেই।" + +msgid "All logs have been deleted." +msgstr "সমস্ত লগ মুছে ফেলা হয়েছে।" + +msgid "You do not have permission to delete logs." +msgstr "লগ মুছে ফেলার অনুমতি আপনার নেই।" + +msgid "Uninstall preference saved." +msgstr "আনইনস্টল পছন্দ সংরক্ষণ করা হয়েছে।" + +msgid "WPVulnerability has been reset to defaults and reloaded." +msgstr "WPVulnerability ডিফল্টে পুনরায় সেট করা হয়েছে এবং পুনরায় লোড করা হয়েছে।" + +msgid "You do not have permission to reset WPVulnerability." +msgstr "WPVulnerability পুনরায় সেট করার অনুমতি আপনার নেই।" + +msgid "All caches have been cleared." +msgstr "সমস্ত ক্যাশ পরিষ্কার করা হয়েছে।" + +msgid "You do not have permission to clear caches." +msgstr "ক্যাশ পরিষ্কার করার অনুমতি আপনার নেই।" + +msgid "Plugin and theme signatures have been reset." +msgstr "প্লাগইন এবং থিম স্বাক্ষর পুনরায় সেট করা হয়েছে।" + +msgid "You do not have permission to reset signatures." +msgstr "স্বাক্ষর পুনরায় সেট করার অনুমতি আপনার নেই।" + +msgid "You do not have permission to export debug information." +msgstr "ডিবাগ তথ্য রপ্তানি করার অনুমতি আপনার নেই।" + +msgid "Database update has been executed." +msgstr "ডেটাবেস আপডেট সম্পাদন করা হয়েছে।" + +msgid "You do not have permission to run database updates." +msgstr "ডেটাবেস আপডেট চালানোর অনুমতি আপনার নেই।" + +msgid "Notification has been sent." +msgstr "বিজ্ঞপ্তি পাঠানো হয়েছে।" + +msgid "Notification sending failed." +msgstr "বিজ্ঞপ্তি পাঠানো ব্যর্থ হয়েছে।" + +msgid "You do not have permission to send notifications." +msgstr "বিজ্ঞপ্তি পাঠানোর অনুমতি আপনার নেই।" + +msgid "Notifications" +msgstr "বিজ্ঞপ্তি" + +msgid "Analysis" +msgstr "বিশ্লেষণ" + +msgid "Logs" +msgstr "লগ" + +msgid "Security" +msgstr "নিরাপত্তা" + +msgid "Tools" +msgstr "সরঞ্জাম" + +msgid "Debug" +msgstr "ডিবাগ" + +msgid "About" +msgstr "পরিচিতি" + +msgid "Notification Settings" +msgstr "বিজ্ঞপ্তি সেটিংস" + +msgid "Configure how and when you want to receive vulnerability notifications." +msgstr "কীভাবে এবং কখন দুর্বলতার বিজ্ঞপ্তি পেতে চান তা কনফিগার করুন।" + +msgid "Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software." +msgstr "আপনার WordPress ইনস্টলেশন, প্লাগইন, থিম এবং সার্ভার সফটওয়্যারের নিরাপত্তা দুর্বলতা সম্পর্কে অবহিত থাকুন।" + +msgid "Cache Expiration Time" +msgstr "ক্যাশ মেয়াদ শেষের সময়" + +msgid "FORCED" +msgstr "বাধ্যতামূলক" + +msgid "How long to cache vulnerability data before refreshing from the API." +msgstr "API থেকে রিফ্রেশ করার আগে দুর্বলতার ডেটা কতক্ষণ ক্যাশে রাখতে হবে।" + +#, php-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d ঘণ্টা" +msgstr[1] "%d ঘণ্টা" + +#, php-format +msgid "You can force the cache time via wp-config.php constant. Learn more →" +msgstr "আপনি wp-config.php কনস্ট্যান্টের মাধ্যমে ক্যাশ সময় বাধ্য করতে পারেন। আরও জানুন →" + +msgid "Notification Frequency" +msgstr "বিজ্ঞপ্তির পৌনঃপুনিকতা" + +msgid "Choose how often you want to receive vulnerability notifications." +msgstr "কত ঘন ঘন দুর্বলতার বিজ্ঞপ্তি পেতে চান তা বেছে নিন।" + +msgid "Never - Disable automatic notifications" +msgstr "কখনো না - স্বয়ংক্রিয় বিজ্ঞপ্তি অক্ষম করুন" + +msgid "Daily - Receive notifications every day" +msgstr "দৈনিক - প্রতিদিন বিজ্ঞপ্তি পান" + +msgid "Weekly - Receive notifications once a week" +msgstr "সাপ্তাহিক - সপ্তাহে একবার বিজ্ঞপ্তি পান" + +msgid "Day:" +msgstr "দিন:" + +msgid "Monday" +msgstr "সোমবার" + +msgid "Tuesday" +msgstr "মঙ্গলবার" + +msgid "Wednesday" +msgstr "বুধবার" + +msgid "Thursday" +msgstr "বৃহস্পতিবার" + +msgid "Friday" +msgstr "শুক্রবার" + +msgid "Saturday" +msgstr "শনিবার" + +msgid "Sunday" +msgstr "রবিবার" + +msgid "Time:" +msgstr "সময়:" + +msgid "(24-hour format, server timezone)" +msgstr "(২৪ ঘণ্টার ফরম্যাট, সার্ভার টাইমজোন)" + +msgid "Notification Channels" +msgstr "বিজ্ঞপ্তি চ্যানেল" + +msgid "Select where you want to receive notifications." +msgstr "কোথায় বিজ্ঞপ্তি পেতে চান তা বেছে নিন।" + +msgid "Email" +msgstr "ইমেইল" + +msgid "Email Addresses (separated by commas):" +msgstr "ইমেইল ঠিকানা (কমা দিয়ে আলাদা করুন):" + +msgid "Default:" +msgstr "ডিফল্ট:" + +msgid "Slack" +msgstr "Slack" + +msgid "Slack Webhook URL:" +msgstr "Slack Webhook URL:" + +#, php-format +msgid "Learn how to create a Slack incoming webhook →" +msgstr "Slack ইনকামিং webhook কীভাবে তৈরি করবেন →" + +msgid "Microsoft Teams" +msgstr "Microsoft Teams" + +msgid "Teams Webhook URL:" +msgstr "Teams Webhook URL:" + +#, php-format +msgid "Learn how to create a Teams incoming webhook →" +msgstr "Teams ইনকামিং webhook কীভাবে তৈরি করবেন →" + +msgid "Discord" +msgstr "Discord" + +msgid "Discord Webhook URL:" +msgstr "Discord Webhook URL:" + +#, php-format +msgid "Learn how to create a Discord webhook →" +msgstr "Discord webhook কীভাবে তৈরি করবেন →" + +msgid "Telegram" +msgstr "Telegram" + +msgid "Telegram Bot Token:" +msgstr "Telegram Bot Token:" + +msgid "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "ফরম্যাট: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +msgid "Telegram Chat ID:" +msgstr "Telegram Chat ID:" + +#, php-format +msgid "Learn how to create a Telegram bot and get Chat ID →" +msgstr "Telegram bot কীভাবে তৈরি করবেন এবং Chat ID পাবেন →" + +msgid "Save Notification Settings" +msgstr "বিজ্ঞপ্তি সেটিংস সংরক্ষণ করুন" + +msgid "WordPress Components" +msgstr "WordPress উপাদান" + +msgid "WordPress Core" +msgstr "WordPress Core" + +msgid "Plugins" +msgstr "প্লাগইন" + +msgid "Themes" +msgstr "থিম" + +msgid "Software & Languages" +msgstr "সফটওয়্যার ও ভাষা" + +msgid "PHP" +msgstr "PHP" + +msgid "Web Servers" +msgstr "ওয়েব সার্ভার" + +msgid "Apache HTTPD" +msgstr "Apache HTTPD" + +msgid "nginx" +msgstr "nginx" + +msgid "Databases" +msgstr "ডেটাবেস" + +msgid "MariaDB" +msgstr "MariaDB" + +msgid "MySQL" +msgstr "MySQL" + +msgid "SQLite" +msgstr "SQLite" + +msgid "Additional Tools" +msgstr "অতিরিক্ত সরঞ্জাম" + +msgid "ImageMagick" +msgstr "ImageMagick" + +msgid "curl" +msgstr "curl" + +msgid "memcached" +msgstr "memcached" + +msgid "Redis" +msgstr "Redis" + +msgid "Component Analysis Settings" +msgstr "উপাদান বিশ্লেষণ সেটিংস" + +msgid "Enable or disable vulnerability analysis for specific components." +msgstr "নির্দিষ্ট উপাদানগুলির জন্য দুর্বলতা বিশ্লেষণ সক্ষম বা অক্ষম করুন।" + +msgid "Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red." +msgstr "দুর্বলতা স্ক্যান এবং রিপোর্ট থেকে যে উপাদানগুলি লুকাতে চান তা নির্বাচন করুন। অনির্বাচিত উপাদানগুলি সক্রিয়ভাবে বিশ্লেষণ করা হবে। সক্রিয় বিশ্লেষণ সহ উপাদানগুলি সবুজে এবং লুকানো উপাদানগুলি লালে দেখানো হয়।" + +msgid "Hidden (forced by constant)" +msgstr "লুকানো (কনস্ট্যান্ট দ্বারা বাধ্য)" + +msgid "🔴 Analysis disabled" +msgstr "🔴 বিশ্লেষণ অক্ষম" + +msgid "🟢 Analysis active" +msgstr "🟢 বিশ্লেষণ সক্রিয়" + +msgid "Tip:" +msgstr "পরামর্শ:" + +#, php-format +msgid "You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →" +msgstr "আপনি wp-config.php কনস্ট্যান্টের মাধ্যমে উপাদানগুলি জোরপূর্বক অক্ষম করতে পারেন। জোরপূর্বক লুকানো পরীক্ষা সম্পর্কে আরও জানুন →" + +msgid "Save Analysis Settings" +msgstr "বিশ্লেষণ সেটিংস সংরক্ষণ করুন" + +msgid "« Previous" +msgstr "« পূর্ববর্তী" + +msgid "Next »" +msgstr "পরবর্তী »" + +msgid "Log entry not found or has been removed." +msgstr "লগ এন্ট্রি পাওয়া যায়নি বা সরানো হয়েছে।" + +msgid "Unable to load the requested log entry." +msgstr "অনুরোধ করা লগ এন্ট্রি লোড করা সম্ভব হয়নি।" + +msgid "Log Configuration" +msgstr "লগ কনফিগারেশন" + +msgid "Total Logs" +msgstr "মোট লগ" + +msgid "Retention Period" +msgstr "সংরক্ষণ মেয়াদ" + +msgid "Disabled" +msgstr "অক্ষম" + +#, php-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d দিন" +msgstr[1] "%d দিন" + +msgid "Log Retention Period" +msgstr "লগ সংরক্ষণ মেয়াদ" + +msgid "None (Disabled)" +msgstr "কোনোটি নয় (অক্ষম)" + +msgid "This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant." +msgstr "এই মানটি WPVULNERABILITY_LOG_RETENTION_DAYS কনস্ট্যান্ট দ্বারা প্রয়োগ করা হয়।" + +msgid "Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted." +msgstr "WPVulnerability কতদিন API প্রতিক্রিয়া লগ রাখবে তা বেছে নিন। পুরানো লগ স্বয়ংক্রিয়ভাবে মুছে যায়।" + +msgid "Save Configuration" +msgstr "কনফিগারেশন সংরক্ষণ করুন" + +msgid "Log retention is currently disabled." +msgstr "লগ সংরক্ষণ বর্তমানে অক্ষম।" + +msgid "API responses are not being saved." +msgstr "API প্রতিক্রিয়াগুলি সংরক্ষণ হচ্ছে না।" + +msgid "Log Details" +msgstr "লগ বিবরণ" + +msgid "Date" +msgstr "তারিখ" + +msgid "API Endpoint" +msgstr "API এন্ডপয়েন্ট" + +msgid "API Response" +msgstr "API প্রতিক্রিয়া" + +msgid "Back to Logs" +msgstr "লগে ফিরে যান" + +msgid "No logs available" +msgstr "কোনো লগ নেই" + +msgid "API response logs will appear here once the vulnerability scanner runs." +msgstr "দুর্বলতা স্ক্যানার চলার পরে এখানে API প্রতিক্রিয়া লগ দেখা যাবে।" + +msgid "API Response Logs" +msgstr "API প্রতিক্রিয়া লগ" + +msgid "Show:" +msgstr "দেখান:" + +msgid "Apply" +msgstr "প্রয়োগ করুন" + +#, php-format +msgid "Showing %1$s–%2$s of %3$s" +msgstr "%3$s এর মধ্যে %1$s–%2$s দেখানো হচ্ছে" + +msgid "Actions" +msgstr "কার্যক্রম" + +msgid "View" +msgstr "দেখুন" + +msgid "Danger Zone" +msgstr "বিপদ অঞ্চল" + +msgid "Permanently delete all API response logs. This action cannot be undone." +msgstr "সমস্ত API প্রতিক্রিয়া লগ স্থায়ীভাবে মুছুন। এই পদক্ষেপ পূর্বাবস্থায় ফেরানো যাবে না।" + +msgid "Are you sure you want to delete all logs? This action cannot be undone." +msgstr "আপনি কি সমস্ত লগ মুছতে চান? এই পদক্ষেপ পূর্বাবস্থায় ফেরানো যাবে না।" + +msgid "Delete All Logs" +msgstr "সমস্ত লগ মুছুন" + +msgid "Reload Data from API" +msgstr "API থেকে ডেটা পুনরায় লোড করুন" + +msgid "Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information." +msgstr "আপডেট করা ডেটা পেতে সমস্ত Core, প্লাগইন, থিম এবং অন্যান্য উপাদানের তথ্য সরাসরি API থেকে পুনরায় লোড করুন। এটি ক্যাশ পরিষ্কার করবে এবং নতুন দুর্বলতার তথ্য আনবে।" + +msgid "Reload Data" +msgstr "ডেটা পুনরায় লোড করুন" + +msgid "Test Email Notifications" +msgstr "পরীক্ষামূলক ইমেইল বিজ্ঞপ্তি" + +msgid "Send a test email notification with current vulnerability data to verify your email configuration is working correctly." +msgstr "আপনার ইমেইল কনফিগারেশন সঠিকভাবে কাজ করছে কিনা যাচাই করতে বর্তমান দুর্বলতার ডেটা সহ একটি পরীক্ষামূলক ইমেইল বিজ্ঞপ্তি পাঠান।" + +msgid "From address (configured via constant):" +msgstr "প্রেরকের ঠিকানা (কনস্ট্যান্টের মাধ্যমে কনফিগার করা):" + +msgid "From address (default):" +msgstr "প্রেরকের ঠিকানা (ডিফল্ট):" + +msgid "Learn how to customize the email sender address →" +msgstr "ইমেইল প্রেরকের ঠিকানা কীভাবে কাস্টমাইজ করবেন →" + +msgid "Send Test Email" +msgstr "পরীক্ষামূলক ইমেইল পাঠান" + +msgid "WP-Cron Status" +msgstr "WP-Cron অবস্থা" + +msgid "View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly." +msgstr "WP-Cron নির্ধারিত ইভেন্টগুলি দেখুন এবং পরিচালনা করুন। নিশ্চিত করুন যে স্বয়ংক্রিয় কাজগুলি সঠিকভাবে চলছে।" + +msgid "No cron data available." +msgstr "কোনো cron ডেটা নেই।" + +msgid "Hook" +msgstr "হুক" + +msgid "Expected" +msgstr "প্রত্যাশিত" + +msgid "Found" +msgstr "পাওয়া গেছে" + +msgid "Next Run" +msgstr "পরবর্তী রান" + +msgid "Status" +msgstr "অবস্থা" + +msgid "Not expected" +msgstr "প্রত্যাশিত নয়" + +msgid "None" +msgstr "কোনোটি নয়" + +msgid "OK" +msgstr "ঠিক আছে" + +msgid "⚠️ Unexpected WPVulnerability Events" +msgstr "⚠️ অপ্রত্যাশিত WPVulnerability ইভেন্ট" + +msgid "No interval" +msgstr "কোনো বিরতি নেই" + +msgid "Next:" +msgstr "পরবর্তী:" + +msgid "Repair Cron Events" +msgstr "Cron ইভেন্ট মেরামত করুন" + +msgid "Uninstall Data" +msgstr "আনইনস্টল ডেটা" + +msgid "By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall." +msgstr "ডিফল্টভাবে, WPVulnerability মুছলে সমস্ত প্লাগইন ডেটা সংরক্ষিত থাকে। নিচের বিকল্পটি শুধুমাত্র তখনই সক্ষম করুন যদি আনইনস্টলের সময় সমস্ত বিকল্প, লগ এবং ক্যাশ করা ডেটা স্থায়ীভাবে মুছে ফেলতে চান।" + +msgid "Delete all plugin data on uninstall" +msgstr "আনইনস্টলের সময় সমস্ত প্লাগইন ডেটা মুছুন" + +msgid "Default: unchecked (data preserved). Check only if you want a clean removal." +msgstr "ডিফল্ট: অনির্বাচিত (ডেটা সংরক্ষিত)। শুধুমাত্র পরিষ্কার অপসারণ চাইলে চেক করুন।" + +msgid "Save preference" +msgstr "পছন্দ সংরক্ষণ করুন" + +msgid "Reset WPVulnerability" +msgstr "WPVulnerability রিসেট করুন" + +msgid "Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API." +msgstr "সমস্ত WPVulnerability সেটিংস, ক্যাশ করা ডেটা, লগ এবং নির্ধারিত ইভেন্ট মুছুন, তারপর ডিফল্ট পুনরুদ্ধার করুন এবং API থেকে ডেটা পুনরায় লোড করুন।" + +msgid "This action cannot be undone." +msgstr "এই পদক্ষেপ পূর্বাবস্থায় ফেরানো যাবে না।" + +msgid "Are you sure you want to reset all WPVulnerability data? This action cannot be undone." +msgstr "আপনি কি সমস্ত WPVulnerability ডেটা রিসেট করতে চান? এই পদক্ষেপ পূর্বাবস্থায় ফেরানো যাবে না।" + +msgid "Reset Plugin" +msgstr "প্লাগইন রিসেট করুন" + +msgid "Vulnerability Database Statistics" +msgstr "দুর্বলতা ডেটাবেস পরিসংখ্যান" + +#, php-format +msgid "%s vulnerability" +msgid_plural "%s vulnerabilities" +msgstr[0] "%s দুর্বলতা" +msgstr[1] "%s দুর্বলতা" + +#, php-format +msgid "(%s product)" +msgid_plural "(%s products)" +msgstr[0] "(%s পণ্য)" +msgstr[1] "(%s পণ্য)" + +msgid "No data" +msgstr "কোনো ডেটা নেই" + +#, php-format +msgid "Database last updated: %s" +msgstr "ডেটাবেস সর্বশেষ আপডেট: %s" + +msgid "Intelligence Sources" +msgstr "তথ্য উৎস" + +msgid "Number of vulnerabilities contributed by each intelligence source." +msgstr "প্রতিটি তথ্য উৎস দ্বারা অবদানকৃত দুর্বলতার সংখ্যা।" + +msgid "Source" +msgstr "উৎস" + +msgid "Core" +msgstr "Core" + +msgid "Sponsors" +msgstr "স্পনসর" + +msgid "No sponsor data available." +msgstr "কোনো স্পনসর ডেটা নেই।" + +msgid "Contributors" +msgstr "অবদানকারী" + +msgid "No contributor data available." +msgstr "কোনো অবদানকারী ডেটা নেই।" + +msgid "You do not have sufficient permissions to access this page." +msgstr "এই পাতায় প্রবেশ করার জন্য আপনার যথেষ্ট অনুমতি নেই।" + +msgid "WPVulnerability settings" +msgstr "WPVulnerability সেটিংস" + +msgid "Configure and save these settings to receive notifications." +msgstr "বিজ্ঞপ্তি পেতে এই সেটিংসগুলি কনফিগার করুন এবং সংরক্ষণ করুন।" + +msgid "Configure and save these settings to hide vulnerabilities." +msgstr "দুর্বলতাগুলি লুকাতে এই সেটিংসগুলি কনফিগার করুন এবং সংরক্ষণ করুন।" + +msgid "Default administrator email" +msgstr "ডিফল্ট প্রশাসক ইমেইল" + +msgid "Read more if you want to force the cache time." +msgstr "ক্যাশ সময় বাধ্য করতে চাইলে আরও পড়ুন।" + +msgid "Never" +msgstr "কখনো না" + +msgid "Daily" +msgstr "দৈনিক" + +msgid "Weekly" +msgstr "সাপ্তাহিক" + +msgid "Day" +msgstr "দিন" + +msgid "Hour" +msgstr "ঘণ্টা" + +msgid "Minute" +msgstr "মিনিট" + +msgid "Read more about how to force the deactivation of an item." +msgstr "কোনো আইটেম জোরপূর্বক নিষ্ক্রিয় করার বিষয়ে আরও পড়ুন।" + +msgid "Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com" +msgstr "অবৈধ Slack webhook URL। hooks.slack.com থেকে একটি বৈধ HTTPS URL হতে হবে।" + +msgid "Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com" +msgstr "অবৈধ Microsoft Teams webhook URL। office.com, office365.com, বা api.hooks.microsoft.com থেকে একটি বৈধ HTTPS URL হতে হবে।" + +msgid "Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com" +msgstr "অবৈধ Discord webhook URL। discord.com বা discordapp.com থেকে একটি বৈধ HTTPS URL হতে হবে।" + +msgid "Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "অবৈধ Telegram bot token ফরম্যাট। এরকম হতে হবে: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +msgid "All Clear" +msgstr "সব পরিষ্কার" + +#, php-format +msgid "%d Critical Issue Found" +msgid_plural "%d Critical Issues Found" +msgstr[0] "%d গুরুতর সমস্যা পাওয়া গেছে" +msgstr[1] "%d গুরুতর সমস্যা পাওয়া গেছে" + +#, php-format +msgid "%d Issue Found" +msgid_plural "%d Issues Found" +msgstr[0] "%d সমস্যা পাওয়া গেছে" +msgstr[1] "%d সমস্যা পাওয়া গেছে" + +msgid "Never checked" +msgstr "কখনো পরীক্ষা করা হয়নি" + +#, php-format +msgid "%d minute ago" +msgid_plural "%d minutes ago" +msgstr[0] "%d মিনিট আগে" +msgstr[1] "%d মিনিট আগে" + +#, php-format +msgid "%d hour ago" +msgid_plural "%d hours ago" +msgstr[0] "%d ঘণ্টা আগে" +msgstr[1] "%d ঘণ্টা আগে" + +#, php-format +msgid "Last checked: %s" +msgstr "সর্বশেষ পরীক্ষা: %s" + +msgid "Refresh Now" +msgstr "এখনই রিফ্রেশ করুন" + +msgid "No vulnerabilities detected" +msgstr "কোনো দুর্বলতা সনাক্ত হয়নি" + +msgid "Your site is up to date and secure" +msgstr "আপনার সাইট আপডেট এবং সুরক্ষিত" + +msgid "Server Software" +msgstr "সার্ভার সফটওয়্যার" + +msgid "Site Health" +msgstr "সাইটের স্বাস্থ্য" + +msgid "Settings" +msgstr "সেটিংস" + +msgid "WPVulnerability Status" +msgstr "WPVulnerability অবস্থা" + +msgid "Receive vulnerability notifications" +msgstr "দুর্বলতার বিজ্ঞপ্তি পান" + +msgid "Cache expiration time" +msgstr "ক্যাশ মেয়াদ শেষের সময়" + +msgid "How often you want to receive notifications" +msgstr "কত ঘন ঘন বিজ্ঞপ্তি পেতে চান" + +msgid "Where do you want to receive notifications?" +msgstr "কোথায় বিজ্ঞপ্তি পেতে চান?" + +msgid "Email addresses to notify (separated by commas)" +msgstr "বিজ্ঞপ্তির জন্য ইমেইল ঠিকানা (কমা দিয়ে আলাদা করুন)" + +msgid "Slack webhook URL" +msgstr "Slack webhook URL" + +msgid "Teams webhook URL" +msgstr "Teams webhook URL" + +msgid "Vulnerabilities to hide" +msgstr "লুকানোর জন্য দুর্বলতা" + +msgid "What do you want to hide?" +msgstr "কী লুকাতে চান?" + +msgid "Standard (Hybrid Detection)" +msgstr "মানক (হাইব্রিড সনাক্তকরণ)" + +msgid "Strict (Extensions Only)" +msgstr "কঠোর (শুধুমাত্র এক্সটেনশন)" + +msgid "Disabled (No Detection)" +msgstr "অক্ষম (কোনো সনাক্তকরণ নেই)" + +msgid "Security Status" +msgstr "নিরাপত্তা অবস্থা" + +msgid "Security Mode" +msgstr "নিরাপত্তা মোড" + +msgid "Shell Execution" +msgstr "Shell নিষ্পাদন" + +msgid "Enabled" +msgstr "সক্ষম" + +msgid "Audit Logging" +msgstr "অডিট লগিং" + +#, php-format +msgid "Enabled (%d days)" +msgstr "সক্ষম (%d দিন)" + +msgid "Total Log Entries" +msgstr "মোট লগ এন্ট্রি" + +msgid "Last Shell Execution" +msgstr "সর্বশেষ Shell নিষ্পাদন" + +#, php-format +msgid "%s ago" +msgstr "%s আগে" + +msgid "Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST." +msgstr "wp-config.php কনস্ট্যান্টের মাধ্যমে নিরাপত্তা সেটিংস কনফিগার করুন: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST।" + +#, php-format +msgid "See security configuration documentation for details." +msgstr "বিবরণের জন্য নিরাপত্তা কনফিগারেশন ডকুমেন্টেশন দেখুন।" + +msgid "Memcached" +msgstr "Memcached" + +msgid "Imagick Extension" +msgstr "Imagick এক্সটেনশন" + +msgid "Redis Extension" +msgstr "Redis এক্সটেনশন" + +msgid "Memcached Extension" +msgstr "Memcached এক্সটেনশন" + +msgid "Memcache Extension" +msgstr "Memcache এক্সটেনশন" + +msgid "SQLite3 Extension" +msgstr "SQLite3 এক্সটেনশন" + +msgid "PDO SQLite" +msgstr "PDO SQLite" + +msgid "Shell Command" +msgstr "Shell কমান্ড" + +msgid "Binary Check" +msgstr "বাইনারি পরীক্ষা" + +msgid "Not Detected" +msgstr "সনাক্ত হয়নি" + +msgid "Software Detection Methods" +msgstr "সফটওয়্যার সনাক্তকরণ পদ্ধতি" + +msgid "Shows which detection method was used for each software component and the reliability score." +msgstr "প্রতিটি সফটওয়্যার উপাদানের জন্য কোন সনাক্তকরণ পদ্ধতি ব্যবহার করা হয়েছে এবং নির্ভরযোগ্যতা স্কোর দেখায়।" + +msgid "Component" +msgstr "উপাদান" + +msgid "Version" +msgstr "সংস্করণ" + +msgid "Detection Method" +msgstr "সনাক্তকরণ পদ্ধতি" + +msgid "Reliability" +msgstr "নির্ভরযোগ্যতা" + +msgid "Not detected" +msgstr "সনাক্ত হয়নি" + +msgid "Shell Execution Audit Logs" +msgstr "Shell নিষ্পাদন অডিট লগ" + +msgid "Complete audit trail of shell command executions for security monitoring." +msgstr "নিরাপত্তা পর্যবেক্ষণের জন্য shell কমান্ড নিষ্পাদনের সম্পূর্ণ অডিট ট্রেইল।" + +msgid "No shell execution logs found." +msgstr "কোনো shell নিষ্পাদন লগ পাওয়া যায়নি।" + +msgid "Logs will appear here when shell commands are executed for software detection." +msgstr "সফটওয়্যার সনাক্তকরণের জন্য shell কমান্ড নিষ্পাদিত হলে এখানে লগ দেখা যাবে।" + +msgid "Time" +msgstr "সময়" + +msgid "Command" +msgstr "কমান্ড" + +msgid "User" +msgstr "ব্যবহারকারী" + +msgid "Output" +msgstr "আউটপুট" + +#, php-format +msgid "Showing the %d most recent log entries." +msgstr "সবচেয়ে সাম্প্রতিক %d টি লগ এন্ট্রি দেখানো হচ্ছে।" + +msgid "Invalid nonce." +msgstr "অবৈধ nonce।" + +msgid "Insufficient permissions." +msgstr "অপর্যাপ্ত অনুমতি।" + +msgid "No component specified." +msgstr "কোনো উপাদান নির্দিষ্ট করা হয়নি।" + +msgid "Debug Information" +msgstr "ডিবাগ তথ্য" + +msgid "This tab is only visible when WP_DEBUG is enabled. Use with caution." +msgstr "এই ট্যাবটি শুধুমাত্র WP_DEBUG সক্ষম হলে দেখা যায়। সতর্কতার সাথে ব্যবহার করুন।" + +msgid "System Information" +msgstr "সিস্টেম তথ্য" + +msgid "WordPress Version" +msgstr "WordPress সংস্করণ" + +msgid "Multisite" +msgstr "মাল্টিসাইট" + +msgid "Yes" +msgstr "হ্যাঁ" + +msgid "No" +msgstr "না" + +msgid "Language" +msgstr "ভাষা" + +msgid "PHP Version" +msgstr "PHP সংস্করণ" + +msgid "PHP Extensions" +msgstr "PHP এক্সটেনশন" + +msgid "PHP Memory Limit" +msgstr "PHP মেমরি সীমা" + +msgid "Database" +msgstr "ডেটাবেস" + +msgid "Web Server" +msgstr "ওয়েব সার্ভার" + +msgid "WP_DEBUG" +msgstr "WP_DEBUG" + +msgid "WP_DEBUG_LOG" +msgstr "WP_DEBUG_LOG" + +msgid "Path:" +msgstr "পথ:" + +#, php-format +msgid "Size: %s" +msgstr "আকার: %s" + +msgid "View Log File" +msgstr "লগ ফাইল দেখুন" + +msgid "Log file is not web-accessible (outside wp-content)" +msgstr "লগ ফাইল ওয়েব-অ্যাক্সেসযোগ্য নয় (wp-content এর বাইরে)" + +msgid "Log file does not exist yet" +msgstr "লগ ফাইল এখনো নেই" + +msgid "Plugin Version" +msgstr "প্লাগইন সংস্করণ" + +msgid "Component Detection" +msgstr "উপাদান সনাক্তকরণ" + +msgid "Version Detected" +msgstr "সংস্করণ সনাক্ত" + +msgid "Analyzed" +msgstr "বিশ্লেষিত" + +msgid "Cache Status" +msgstr "ক্যাশ অবস্থা" + +msgid "Configuration Summary" +msgstr "কনফিগারেশন সারসংক্ষেপ" + +msgid "Cache Duration" +msgstr "ক্যাশের মেয়াদ" + +msgid "Log Retention" +msgstr "লগ সংরক্ষণ" + +msgid "Components Analyzed" +msgstr "বিশ্লেষিত উপাদান" + +msgid "Notification Email" +msgstr "বিজ্ঞপ্তি ইমেইল" + +msgid "Slack Webhook" +msgstr "Slack Webhook" + +msgid "Configured & Enabled" +msgstr "কনফিগার করা ও সক্ষম" + +msgid "Configured (Disabled)" +msgstr "কনফিগার করা (অক্ষম)" + +msgid "Not configured" +msgstr "কনফিগার করা হয়নি" + +msgid "Teams Webhook" +msgstr "Teams Webhook" + +msgid "Discord Webhook" +msgstr "Discord Webhook" + +msgid "Telegram Bot" +msgstr "Telegram Bot" + +msgid "Cron Status" +msgstr "Cron অবস্থা" + +msgid "Update Database" +msgstr "ডেটাবেস আপডেট করুন" + +#, php-format +msgid "Next run: %s" +msgstr "পরবর্তী রান: %s" + +msgid "Not scheduled" +msgstr "নির্ধারিত নয়" + +msgid "Send Notification" +msgstr "বিজ্ঞপ্তি পাঠান" + +msgid "Run Update Now" +msgstr "এখনই আপডেট চালান" + +msgid "Run Notification Now" +msgstr "এখনই বিজ্ঞপ্তি পাঠান" + +msgid "You do not have permission to run these actions." +msgstr "এই কার্যক্রমগুলি চালানোর অনুমতি আপনার নেই।" + +msgid "API Testing" +msgstr "API পরীক্ষা" + +msgid "Test API connectivity for each component. Click a button to send a test request." +msgstr "প্রতিটি উপাদানের জন্য API সংযোগ পরীক্ষা করুন। পরীক্ষামূলক অনুরোধ পাঠাতে একটি বোতামে ক্লিক করুন।" + +#, php-format +msgid "Test %s" +msgstr "%s পরীক্ষা" + +msgid "Testing..." +msgstr "পরীক্ষা করা হচ্ছে..." + +msgid "HTTP Code:" +msgstr "HTTP কোড:" + +msgid "Response Time:" +msgstr "প্রতিক্রিয়া সময়:" + +msgid "Response Preview" +msgstr "প্রতিক্রিয়া পূর্বদর্শন" + +msgid "Test" +msgstr "পরীক্ষা" + +msgid "Error:" +msgstr "ত্রুটি:" + +msgid "AJAX request failed." +msgstr "AJAX অনুরোধ ব্যর্থ হয়েছে।" + +msgid "You do not have permission to test API connectivity." +msgstr "API সংযোগ পরীক্ষা করার অনুমতি আপনার নেই।" + +msgid "Database Options Viewer" +msgstr "ডেটাবেস বিকল্প দর্শক" + +msgid "View the raw data stored in WordPress options." +msgstr "WordPress বিকল্পে সংরক্ষিত র‌্যা ডেটা দেখুন।" + +msgid "Select an option..." +msgstr "একটি বিকল্প নির্বাচন করুন..." + +msgid "Option not found or empty." +msgstr "বিকল্প পাওয়া যায়নি বা খালি।" + +msgid "Quick Actions" +msgstr "দ্রুত কার্যক্রম" + +msgid "Perform debugging actions. Use with caution." +msgstr "ডিবাগিং কার্যক্রম সম্পাদন করুন। সতর্কতার সাথে ব্যবহার করুন।" + +msgid "Are you sure you want to clear all caches?" +msgstr "আপনি কি সমস্ত ক্যাশ পরিষ্কার করতে চান?" + +msgid "Clear All Caches" +msgstr "সমস্ত ক্যাশ পরিষ্কার করুন" + +msgid "Are you sure you want to reset signatures?" +msgstr "আপনি কি স্বাক্ষর রিসেট করতে চান?" + +msgid "Reset Signatures" +msgstr "স্বাক্ষর রিসেট করুন" + +msgid "Export Debug Info" +msgstr "ডিবাগ তথ্য রপ্তানি করুন" + +msgid "You do not have permission to perform these actions." +msgstr "এই কার্যক্রমগুলি সম্পাদন করার অনুমতি আপনার নেই।" + +msgid "Settings saved." +msgstr "সেটিংস সংরক্ষণ করা হয়েছে।" + +msgid "WPVulnerability cron events have been repaired across the network." +msgstr "নেটওয়ার্কে WPVulnerability cron ইভেন্টগুলি মেরামত করা হয়েছে।" + +msgid "You do not have permission to access this page." +msgstr "এই পাতায় প্রবেশ করার অনুমতি আপনার নেই।" + +#, php-format +msgid "WordPress %1$s has a known vulnerability that may be affecting your installed version." +msgstr "WordPress %1$s-এ একটি পরিচিত দুর্বলতা রয়েছে যা আপনার ইনস্টল করা সংস্করণকে প্রভাবিত করতে পারে।" + +msgid "Actively exploited" +msgstr "সক্রিয়ভাবে শোষিত" + +msgid "Public exploit" +msgstr "পাবলিক এক্সপ্লয়েট" + +msgid "Automatable" +msgstr "স্বয়ংক্রিয়যোগ্য" + +msgid "References:" +msgstr "রেফারেন্স:" + +msgid "Invalid component specified." +msgstr "অবৈধ উপাদান নির্দিষ্ট করা হয়েছে।" + +msgid "Version not detected for this component." +msgstr "এই উপাদানের জন্য সংস্করণ সনাক্ত হয়নি।" + +msgid "API request successful." +msgstr "API অনুরোধ সফল হয়েছে।" + +#, php-format +msgid "API returned HTTP code %d." +msgstr "API HTTP কোড %d ফেরত দিয়েছে।" + +msgid "WPVulnerability Logs" +msgstr "WPVulnerability লগ" + +msgid "WPVulnerability Log" +msgstr "WPVulnerability লগ" + +msgid "Low" +msgstr "কম" + +msgid "Medium" +msgstr "মাঝারি" + +msgid "High" +msgstr "বেশি" + +msgid "Critical" +msgstr "গুরুতর" + +msgid "WPVulnerability Shell Logs" +msgstr "WPVulnerability Shell লগ" + +msgid "WPVulnerability Shell Log" +msgstr "WPVulnerability Shell লগ" + +msgid "Every week" +msgstr "প্রতি সপ্তাহ" + +msgid "Every day" +msgstr "প্রতিদিন" + +msgid "Invalid request." +msgstr "অবৈধ অনুরোধ।" + +msgid "You have unsubscribed from WPVulnerability notifications." +msgstr "আপনি WPVulnerability বিজ্ঞপ্তি থেকে সদস্যতা বাতিল করেছেন।" + +#, php-format +msgid "Learn more about the WordPress Vulnerability Database API at %2$s" +msgstr "WordPress Vulnerability Database API সম্পর্কে আরও জানুন %2$s-এ" + +#, php-format +msgid "Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings." +msgstr "এই সতর্কতাগুলি পাওয়া বন্ধ করতে চান? সদস্যতা বাতিল করুন অথবা WPVulnerability সেটিংসে ইমেইল কম্পাঙ্ক পরিবর্তন করে কখনো না করুন।" + +msgid "No vulnerabilities found" +msgstr "কোনো দুর্বলতা পাওয়া যায়নি" + +msgid "This is likely a test. The site does not have vulnerabilities." +msgstr "এটি সম্ভবত একটি পরীক্ষা। সাইটে কোনো দুর্বলতা নেই।" + +msgid "Core vulnerabilities" +msgstr "Core দুর্বলতা" + +msgid "Plugins vulnerabilities" +msgstr "প্লাগইন দুর্বলতা" + +msgid "Themes vulnerabilities" +msgstr "থিম দুর্বলতা" + +msgid "PHP vulnerabilities" +msgstr "PHP দুর্বলতা" + +msgid "Apache HTTPD vulnerabilities" +msgstr "Apache HTTPD দুর্বলতা" + +msgid "Nginx vulnerabilities" +msgstr "Nginx দুর্বলতা" + +msgid "MariaDB vulnerabilities" +msgstr "MariaDB দুর্বলতা" + +msgid "MySQL vulnerabilities" +msgstr "MySQL দুর্বলতা" + +msgid "ImageMagick vulnerabilities" +msgstr "ImageMagick দুর্বলতা" + +msgid "curl vulnerabilities" +msgstr "curl দুর্বলতা" + +msgid "memcached vulnerabilities" +msgstr "memcached দুর্বলতা" + +msgid "Redis vulnerabilities" +msgstr "Redis দুর্বলতা" + +msgid "SQLite vulnerabilities" +msgstr "SQLite দুর্বলতা" + +#, php-format +msgid "Vulnerability found: %s" +msgstr "দুর্বলতা পাওয়া গেছে: %s" + +msgid "Vulnerability found" +msgstr "দুর্বলতা পাওয়া গেছে" + +#, php-format +msgid "%1$s has a known vulnerability that may be affecting your installed version." +msgstr "%1$s-এ একটি পরিচিত দুর্বলতা রয়েছে যা আপনার ইনস্টল করা সংস্করণকে প্রভাবিত করতে পারে।" + +msgid "This plugin is closed. Please replace it with another." +msgstr "এই প্লাগইনটি বন্ধ। অনুগ্রহ করে এটি অন্য একটি দিয়ে প্রতিস্থাপন করুন।" + +msgid "This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates." +msgstr "এই দুর্বলতাটি প্যাচ না করা মনে হচ্ছে। আসন্ন প্লাগইন আপডেটের জন্য অপেক্ষা করুন।" + +msgid "It hasn't been updated in over a year." +msgstr "এটি এক বছরেরও বেশি সময় ধরে আপডেট হয়নি।" + +msgid "It may no longer be available (closed?)." +msgstr "এটি আর পাওয়া নাও যেতে পারে (বন্ধ?)।" + +msgid "Last updated on" +msgstr "সর্বশেষ আপডেট করা হয়েছে" + +#, php-format +msgid "Vulnerabilities (%d)" +msgstr "দুর্বলতা (%d)" + +#, php-format +msgid "%s running" +msgstr "%s চলছে" + +msgid "End of Life" +msgstr "সাপোর্ট শেষ" + +msgid "End of life:" +msgstr "সাপোর্ট শেষ:" + +msgid "Supported" +msgstr "সমর্থিত" + +msgid "Plugin" +msgstr "প্লাগইন" + +msgid "Theme" +msgstr "থিম" + +#, php-format +msgid "End of life: %s" +msgstr "সাপোর্ট শেষ: %s" + +msgid "EOL" +msgstr "EOL" + +msgid "Network Settings" +msgstr "নেটওয়ার্ক সেটিংস" + +msgid "Vulnerabilities" +msgstr "দুর্বলতা" + +msgid "Every 6 hours" +msgstr "প্রতি ৬ ঘণ্টায়" + +msgid "Database updates" +msgstr "ডেটাবেস আপডেট" + +msgid "Log cleanup" +msgstr "লগ পরিষ্কার" + +msgid "Notifications are scheduled, but settings currently disable them. Please review the notifications tab." +msgstr "বিজ্ঞপ্তিগুলি নির্ধারিত রয়েছে, কিন্তু সেটিংস বর্তমানে সেগুলি অক্ষম করে। অনুগ্রহ করে বিজ্ঞপ্তি ট্যাব পর্যালোচনা করুন।" + +msgid "This event should not be scheduled for this site." +msgstr "এই ইভেন্টটি এই সাইটের জন্য নির্ধারিত হওয়া উচিত নয়।" + +msgid "Not expected for this site." +msgstr "এই সাইটের জন্য প্রত্যাশিত নয়।" + +msgid "No instances found." +msgstr "কোনো ইনস্ট্যান্স পাওয়া যায়নি।" + +msgid "Scheduled with an unexpected interval." +msgstr "অপ্রত্যাশিত বিরতি দিয়ে নির্ধারিত।" + +msgid "Multiple instances detected." +msgstr "একাধিক ইনস্ট্যান্স সনাক্ত হয়েছে।" + +msgid "Scheduled as expected." +msgstr "প্রত্যাশামতো নির্ধারিত।" + +msgid "There aren't plugins vulnerabilities" +msgstr "প্লাগইনে কোনো দুর্বলতা নেই" + +msgid "Shows possible vulnerabilities that exist in installed plugins." +msgstr "ইনস্টল করা প্লাগইনে বিদ্যমান সম্ভাব্য দুর্বলতাগুলি দেখায়।" + +#, php-format +msgid "There is %d plugin with vulnerabilities" +msgid_plural "There are %d plugins with vulnerabilities" +msgstr[0] "দুর্বলতা সহ %d টি প্লাগইন আছে" +msgstr[1] "দুর্বলতা সহ %d টি প্লাগইন আছে" + +msgid "We've detected potential vulnerabilities in installed plugins. Please check them and keep them updated." +msgstr "আমরা ইনস্টল করা প্লাগইনে সম্ভাব্য দুর্বলতা সনাক্ত করেছি। অনুগ্রহ করে সেগুলি পরীক্ষা করুন এবং আপডেট রাখুন।" + +msgid "Update plugins" +msgstr "প্লাগইন আপডেট করুন" + +msgid "There aren't themes vulnerabilities" +msgstr "থিমে কোনো দুর্বলতা নেই" + +msgid "Shows possible vulnerabilities that exist in installed themes." +msgstr "ইনস্টল করা থিমে বিদ্যমান সম্ভাব্য দুর্বলতাগুলি দেখায়।" + +#, php-format +msgid "There is %d theme with vulnerabilities" +msgid_plural "There are %d themes with vulnerabilities" +msgstr[0] "দুর্বলতা সহ %d টি থিম আছে" +msgstr[1] "দুর্বলতা সহ %d টি থিম আছে" + +msgid "We've detected potential vulnerabilities in installed themes. Please check them and keep them updated." +msgstr "আমরা ইনস্টল করা থিমে সম্ভাব্য দুর্বলতা সনাক্ত করেছি। অনুগ্রহ করে সেগুলি পরীক্ষা করুন এবং আপডেট রাখুন।" + +msgid "Update themes" +msgstr "থিম আপডেট করুন" + +msgid "There aren't WordPress vulnerabilities" +msgstr "WordPress-এ কোনো দুর্বলতা নেই" + +msgid "Shows possible vulnerabilities existing in the WordPress core." +msgstr "WordPress core-এ বিদ্যমান সম্ভাব্য দুর্বলতাগুলি দেখায়।" + +#, php-format +msgid "There is %d core vulnerability" +msgid_plural "There are %d core vulnerabilities" +msgstr[0] "%d টি core দুর্বলতা আছে" +msgstr[1] "%d টি core দুর্বলতা আছে" + +msgid "We've detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated." +msgstr "আমরা এই WordPress ইনস্টলেশনে সম্ভাব্য দুর্বলতা সনাক্ত করেছি। অনুগ্রহ করে সেগুলি পরীক্ষা করুন এবং আপনার ইনস্টলেশন আপডেট রাখুন।" + +msgid "Update WordPress" +msgstr "WordPress আপডেট করুন" + +msgid "Nginx" +msgstr "Nginx" + +msgid "Invalid software type" +msgstr "অবৈধ সফটওয়্যার ধরন" + +msgid "Error" +msgstr "ত্রুটি" + +msgid "The specified software type is not valid." +msgstr "নির্দিষ্ট সফটওয়্যার ধরনটি বৈধ নয়।" + +#, php-format +msgid "There aren't %s vulnerabilities" +msgstr "%s-এ কোনো দুর্বলতা নেই" + +#, php-format +msgid "Shows possible vulnerabilities existing in %s." +msgstr "%s-এ বিদ্যমান সম্ভাব্য দুর্বলতাগুলি দেখায়।" + +#, php-format +msgid "There is %1$d %2$s vulnerability" +msgid_plural "There are %1$d %2$s vulnerabilities" +msgstr[0] "%2$s-এ %1$d টি দুর্বলতা আছে" +msgstr[1] "%2$s-এ %1$d টি দুর্বলতা আছে" + +#, php-format +msgid "We've detected potential vulnerabilities in %s. Please check them and keep your installation updated." +msgstr "আমরা %s-এ সম্ভাব্য দুর্বলতা সনাক্ত করেছি। অনুগ্রহ করে সেগুলি পরীক্ষা করুন এবং আপনার ইনস্টলেশন আপডেট রাখুন।" + +msgid "How to update PHP" +msgstr "PHP কীভাবে আপডেট করবেন" + +msgid "WPVulnerability Core" +msgstr "WPVulnerability Core" + +msgid "WPVulnerability Themes" +msgstr "WPVulnerability Themes" + +msgid "WPVulnerability Plugins" +msgstr "WPVulnerability Plugins" + +msgid "WPVulnerability PHP" +msgstr "WPVulnerability PHP" + +msgid "WPVulnerability Apache HTTPD" +msgstr "WPVulnerability Apache HTTPD" + +msgid "WPVulnerability Nginx" +msgstr "WPVulnerability Nginx" + +msgid "WPVulnerability MariaDB" +msgstr "WPVulnerability MariaDB" + +msgid "WPVulnerability MySQL" +msgstr "WPVulnerability MySQL" + +msgid "WPVulnerability ImageMagick" +msgstr "WPVulnerability ImageMagick" + +msgid "WPVulnerability curl" +msgstr "WPVulnerability curl" + +msgid "WPVulnerability memcached" +msgstr "WPVulnerability memcached" + +msgid "WPVulnerability redis" +msgstr "WPVulnerability redis" + +msgid "WPVulnerability sqlite" +msgstr "WPVulnerability sqlite" + +msgid "This theme is closed. Please replace it with another." +msgstr "এই থিমটি বন্ধ। অনুগ্রহ করে এটি অন্য একটি দিয়ে প্রতিস্থাপন করুন।" + +msgid "This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates." +msgstr "এই দুর্বলতাটি প্যাচ না করা মনে হচ্ছে। আসন্ন থিম আপডেটের জন্য অপেক্ষা করুন।" + +msgid "This theme has known vulnerabilities that may be affecting your installed version." +msgstr "এই থিমে পরিচিত দুর্বলতা রয়েছে যা আপনার ইনস্টল করা সংস্করণকে প্রভাবিত করতে পারে।" diff --git a/languages/wpvulnerability-ca-val.l10n.php b/languages/wpvulnerability-ca-val.l10n.php new file mode 100644 index 0000000..c8c8cdb --- /dev/null +++ b/languages/wpvulnerability-ca-val.l10n.php @@ -0,0 +1,2 @@ +NULL,'plural-forms'=>'nplurals=2; plural=n != 1;','language'=>'ca','project-id-version'=>'Plugins - WPVulnerability - Development (trunk)','pot-creation-date'=>'2026-05-27T16:32:22+00:00','po-revision-date'=>'2024-10-04 12:09:02+0000','x-generator'=>'GlotPress/4.0.3','messages'=>['WPVulnerability'=>'WPVulnerability','https://www.wpvulnerability.com/plugin/'=>'https://www.wpvulnerability.com/plugin/','Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API.'=>'Rep informació sobre les possibles vulnerabilitats del teu WordPress a través de l\'API WordPress Vulnerability Database.','ROBOTSTXT'=>'ROBOTSTXT','https://www.robotstxt.es/'=>'https://www.robotstxt.es/','This command requires a WordPress administrator. Run with --user=.'=>'Esta ordre requereix un administrador de WordPress. Executeu amb --user=.','No core vulnerabilities found.'=>'No s\'han trobat vulnerabilitats al nucli.','No plugin vulnerabilities found.'=>'No s\'han trobat vulnerabilitats a extensions.','No theme vulnerabilities found.'=>'No s\'han trobat vulnerabilitats a temes.','No %s vulnerabilities found.'=>'No s\'han trobat vulnerabilitats a %s.','Data from source has been reloaded.'=>'Les dades de la font s\'han tornat a carregar.','You do not have permission to reload data.'=>'No tens permís per tornar a carregar les dades.','Test email has been sent.'=>'S\'ha enviat un correu electrònic de prova.','Test email has failed. Please, check your email settings.'=>'L\'enviament del correu electrònic de prova ha fallat. Comprova la configuració del correu.','You do not have permission to send test emails.'=>'No tens permís per enviar correus electrònics de prova.','WPVulnerability cron events have been repaired.'=>'Els esdeveniments cron del WPVulnerability s\'han reparat.','You do not have permission to repair cron events.'=>'No tens permís per reparar els esdeveniments cron.','All logs have been deleted.'=>'Tots els registres s\'han eliminat.','You do not have permission to delete logs.'=>'No tens permís per eliminar els registres.','Uninstall preference saved.'=>'S\'ha desat la preferència de desinstal·lació.','WPVulnerability has been reset to defaults and reloaded.'=>'El WPVulnerability s\'ha restablit als valors predeterminats i s\'ha tornat a carregar.','You do not have permission to reset WPVulnerability.'=>'No tens permís per restablir el WPVulnerability.','All caches have been cleared.'=>'Totes les memòries cau s\'han buidat.','You do not have permission to clear caches.'=>'No tens permís per buidar les memòries cau.','Plugin and theme signatures have been reset.'=>'Les signatures d\'extensions i temes s\'han restablit.','You do not have permission to reset signatures.'=>'No tens permís per restablir les signatures.','You do not have permission to export debug information.'=>'No tens permís per exportar la informació de depuració.','Database update has been executed.'=>'L\'actualització de la base de dades s\'ha executat.','You do not have permission to run database updates.'=>'No tens permís per executar actualitzacions de la base de dades.','Notification has been sent.'=>'S\'ha enviat la notificació.','Notification sending failed.'=>'L\'enviament de la notificació ha fallat.','You do not have permission to send notifications.'=>'No tens permís per enviar notificacions.','Notifications'=>'Notificacions','Analysis'=>'Anàlisi','Logs'=>'Registres','Security'=>'Seguretat','Tools'=>'Eines','Debug'=>'Depuració','About'=>'Quant a','Notification Settings'=>'Configuració de notificacions','Configure how and when you want to receive vulnerability notifications.'=>'Configura com i quan vols rebre notificacions de vulnerabilitats.','Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software.'=>'Mantén-te informat sobre les vulnerabilitats de seguretat a la teua instal·lació de WordPress, extensions, temes i programari del servidor.','Cache Expiration Time'=>'Temps de caducitat de la memòria cau','FORCED'=>'FORÇAT','How long to cache vulnerability data before refreshing from the API.'=>'Durant quant de temps s\'han de guardar les dades de vulnerabilitats en la memòria cau abans d\'actualitzar-les des de l\'API.','%d hour'=>'%d hora' . "\0" . '%d hores','You can force the cache time via wp-config.php constant. Learn more →'=>'Pots forçar el temps de memòria cau per mitjà d\'una constant a wp-config.php. Més informació →','Notification Frequency'=>'Freqüència de notificacions','Choose how often you want to receive vulnerability notifications.'=>'Tria amb quina freqüència vols rebre notificacions de vulnerabilitats.','Never - Disable automatic notifications'=>'Mai - Desactiva les notificacions automàtiques','Daily - Receive notifications every day'=>'Diàriament - Rep notificacions cada dia','Weekly - Receive notifications once a week'=>'Setmanalment - Rep notificacions una vegada a la setmana','Day:'=>'Dia:','Monday'=>'Dilluns','Tuesday'=>'Dimarts','Wednesday'=>'Dimecres','Thursday'=>'Dijous','Friday'=>'Divendres','Saturday'=>'Dissabte','Sunday'=>'Diumenge','Time:'=>'Hora:','(24-hour format, server timezone)'=>'(format de 24 hores, zona horària del servidor)','Notification Channels'=>'Canals de notificació','Select where you want to receive notifications.'=>'Selecciona on vols rebre les notificacions.','Email'=>'Correu electrònic','Email Addresses (separated by commas):'=>'Adreces electròniques (separades per comes):','Default:'=>'Predeterminat:','Slack'=>'Slack','Slack Webhook URL:'=>'URL del Webhook de Slack:','Learn how to create a Slack incoming webhook →'=>'Aprén a crear un webhook entrant de Slack →','Microsoft Teams'=>'Microsoft Teams','Teams Webhook URL:'=>'URL del Webhook de Teams:','Learn how to create a Teams incoming webhook →'=>'Aprén a crear un webhook entrant de Teams →','Discord'=>'Discord','Discord Webhook URL:'=>'URL del Webhook de Discord:','Learn how to create a Discord webhook →'=>'Aprén a crear un webhook de Discord →','Telegram'=>'Telegram','Telegram Bot Token:'=>'Token del Bot de Telegram:','Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','Telegram Chat ID:'=>'ID de xat de Telegram:','Learn how to create a Telegram bot and get Chat ID →'=>'Aprén a crear un bot de Telegram i obtindre l\'ID de xat →','Save Notification Settings'=>'Desa la configuració de notificacions','WordPress Components'=>'Components de WordPress','WordPress Core'=>'Nucli de WordPress','Plugins'=>'Extensions','Themes'=>'Temes','Software & Languages'=>'Programari i llenguatges','PHP'=>'PHP','Web Servers'=>'Servidors web','Apache HTTPD'=>'Apache HTTPD','nginx'=>'nginx','Databases'=>'Bases de dades','MariaDB'=>'MariaDB','MySQL'=>'MySQL','SQLite'=>'SQLite','Additional Tools'=>'Eines addicionals','ImageMagick'=>'ImageMagick','curl'=>'curl','memcached'=>'memcached','Redis'=>'Redis','Component Analysis Settings'=>'Configuració de l\'anàlisi de components','Enable or disable vulnerability analysis for specific components.'=>'Activa o desactiva l\'anàlisi de vulnerabilitats per a components específics.','Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red.'=>'Marca els components que vols AMAGAR de les exploracions i informes de vulnerabilitats. Els components no marcats s\'analitzaran activament. Els components amb anàlisi activa es mostren en verd, els components amagats en roig.','Hidden (forced by constant)'=>'Amagat (forçat per constant)','🔴 Analysis disabled'=>'🔴 Anàlisi desactivada','🟢 Analysis active'=>'🟢 Anàlisi activa','Tip:'=>'Consell:','You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →'=>'Pots forçar la desactivació de components per mitjà de constants a wp-config.php. Més informació sobre la desactivació forçada de comprovacions →','Save Analysis Settings'=>'Desa la configuració d\'anàlisi','« Previous'=>'« Anterior','Next »'=>'Següent »','Log entry not found or has been removed.'=>'L\'entrada del registre no s\'ha trobat o s\'ha eliminat.','Unable to load the requested log entry.'=>'No s\'ha pogut carregar l\'entrada del registre sol·licitada.','Log Configuration'=>'Configuració del registre','Total Logs'=>'Total de registres','Retention Period'=>'Període de retenció','Disabled'=>'Desactivat','%d day'=>'%d dia' . "\0" . '%d dies','Log Retention Period'=>'Període de retenció del registre','None (Disabled)'=>'Cap (desactivat)','This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant.'=>'Este valor és imposat per la constant WPVULNERABILITY_LOG_RETENTION_DAYS.','Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted.'=>'Tria durant quant de temps el WPVulnerability ha de conservar els registres de resposta de l\'API. Els registres antics s\'eliminen automàticament.','Save Configuration'=>'Desa la configuració','Log retention is currently disabled.'=>'La retenció de registres està desactivada actualment.','API responses are not being saved.'=>'Les respostes de l\'API no s\'estan desant.','Log Details'=>'Detalls del registre','Date'=>'Data','API Endpoint'=>'Punt final de l\'API','API Response'=>'Resposta de l\'API','Back to Logs'=>'Torna als registres','No logs available'=>'No hi ha registres disponibles','API response logs will appear here once the vulnerability scanner runs.'=>'Els registres de resposta de l\'API apareixeran ací quan s\'execute l\'escàner de vulnerabilitats.','API Response Logs'=>'Registres de resposta de l\'API','Show:'=>'Mostra:','Apply'=>'Aplica','Showing %1$s–%2$s of %3$s'=>'Mostrant %1$s–%2$s de %3$s','Actions'=>'Accions','View'=>'Visualitza','Danger Zone'=>'Zona de perill','Permanently delete all API response logs. This action cannot be undone.'=>'Elimina de manera permanent tots els registres de resposta de l\'API. Esta acció no es pot desfer.','Are you sure you want to delete all logs? This action cannot be undone.'=>'Estàs segur que vols eliminar tots els registres? Esta acció no es pot desfer.','Delete All Logs'=>'Elimina tots els registres','Reload Data from API'=>'Torna a carregar les dades des de l\'API','Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information.'=>'Torna a carregar tota la informació del Nucli, Extensions, Temes i altres components directament des de l\'API per tindre dades actualitzades. Açò buidarà la memòria cau i obtindrà informació actualitzada sobre vulnerabilitats.','Reload Data'=>'Torna a carregar les dades','Test Email Notifications'=>'Prova les notificacions per correu electrònic','Send a test email notification with current vulnerability data to verify your email configuration is working correctly.'=>'Envia una notificació per correu electrònic de prova amb les dades de vulnerabilitats actuals per verificar que la configuració del correu electrònic funciona correctament.','From address (configured via constant):'=>'Adreça del remitent (configurada per constant):','From address (default):'=>'Adreça del remitent (predeterminada):','Learn how to customize the email sender address →'=>'Aprén a personalitzar l\'adreça del remitent del correu electrònic →','Send Test Email'=>'Envia correu electrònic de prova','WP-Cron Status'=>'Estat del WP-Cron','View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly.'=>'Visualitza i gestiona els esdeveniments programats del WP-Cron. Compara les planificacions esperades amb els treballs cron reals per assegurar-te que les tasques automatitzades s\'executen correctament.','No cron data available.'=>'No hi ha dades cron disponibles.','Hook'=>'Ganxo','Expected'=>'Esperat','Found'=>'Trobat','Next Run'=>'Pròxima execució','Status'=>'Estat','Not expected'=>'No esperat','None'=>'Cap','OK'=>'D\'acord','⚠️ Unexpected WPVulnerability Events'=>'⚠️ Esdeveniments WPVulnerability inesperats','No interval'=>'Cap interval','Next:'=>'Pròxim:','Repair Cron Events'=>'Repara els esdeveniments cron','Uninstall Data'=>'Dades de desinstal·lació','By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall.'=>'Per defecte, totes les dades de l\'extensió es conserven quan s\'elimina el WPVulnerability. Activa l\'opció següent només si vols que totes les opcions, els registres i les dades en memòria cau s\'eliminen permanentment en la desinstal·lació.','Delete all plugin data on uninstall'=>'Elimina totes les dades de l\'extensió en la desinstal·lació','Default: unchecked (data preserved). Check only if you want a clean removal.'=>'Predeterminat: sense marcar (dades conservades). Marca-ho només si vols una eliminació neta.','Save preference'=>'Desa la preferència','Reset WPVulnerability'=>'Restablix el WPVulnerability','Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API.'=>'Elimina totes les configuracions del WPVulnerability, les dades en memòria cau, els registres i els esdeveniments programats; després restaura els valors predeterminats i torna a carregar les dades des de l\'API.','This action cannot be undone.'=>'Esta acció no es pot desfer.','Are you sure you want to reset all WPVulnerability data? This action cannot be undone.'=>'Estàs segur que vols restablir totes les dades del WPVulnerability? Esta acció no es pot desfer.','Reset Plugin'=>'Restablix l\'extensió','Vulnerability Database Statistics'=>'Estadístiques de la base de dades de vulnerabilitats','%s vulnerability'=>'%s vulnerabilitat' . "\0" . '%s vulnerabilitats','(%s product)'=>'(%s producte)' . "\0" . '(%s productes)','No data'=>'Sense dades','Database last updated: %s'=>'Base de dades actualitzada per última vegada: %s','Intelligence Sources'=>'Fonts d\'intel·ligència','Number of vulnerabilities contributed by each intelligence source.'=>'Nombre de vulnerabilitats aportades per cada font d\'intel·ligència.','Source'=>'Font','Core'=>'Nucli','Sponsors'=>'Patrocinadors','No sponsor data available.'=>'No hi ha dades de patrocinadors disponibles.','Contributors'=>'Col·laboradors','No contributor data available.'=>'No hi ha dades de col·laboradors disponibles.','You do not have sufficient permissions to access this page.'=>'No tens permisos suficients per accedir a esta pàgina.','WPVulnerability settings'=>'Configuració del WPVulnerability','Configure and save these settings to receive notifications.'=>'Configura i desa estos paràmetres per rebre notificacions.','Configure and save these settings to hide vulnerabilities.'=>'Configura i desa estos paràmetres per amagar les vulnerabilitats.','Default administrator email'=>'Correu electrònic predeterminat de l\'administrador','Read more if you want to force the cache time.'=>'Llig més si vols forçar el temps de memòria cau.','Never'=>'Mai','Daily'=>'Diàriament','Weekly'=>'Setmanalment','Day'=>'Dia','Hour'=>'Hora','Minute'=>'Minut','Read more about how to force the deactivation of an item.'=>'Llig més sobre com forçar la desactivació d\'un element.','Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com'=>'URL de webhook de Slack no vàlida. Ha de ser una URL HTTPS vàlida de hooks.slack.com','Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com'=>'URL de webhook de Microsoft Teams no vàlida. Ha de ser una URL HTTPS vàlida de office.com, office365.com o api.hooks.microsoft.com','Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com'=>'URL de webhook de Discord no vàlida. Ha de ser una URL HTTPS vàlida de discord.com o discordapp.com','Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Format del token del bot de Telegram no vàlid. Ha de ser com: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','All Clear'=>'Tot net','%d Critical Issue Found'=>'%d problema crític trobat' . "\0" . '%d problemes crítics trobats','%d Issue Found'=>'%d problema trobat' . "\0" . '%d problemes trobats','Never checked'=>'Mai s\'ha comprovat','%d minute ago'=>'fa %d minut' . "\0" . 'fa %d minuts','%d hour ago'=>'fa %d hora' . "\0" . 'fa %d hores','Last checked: %s'=>'Última comprovació: %s','Refresh Now'=>'Actualitza ara','No vulnerabilities detected'=>'No s\'han detectat vulnerabilitats','Your site is up to date and secure'=>'El teu lloc està actualitzat i és segur','Server Software'=>'Programari del servidor','Site Health'=>'Salut del lloc','Settings'=>'Configuració','WPVulnerability Status'=>'Estat del WPVulnerability','Receive vulnerability notifications'=>'Rep notificacions de vulnerabilitats','Cache expiration time'=>'Temps de caducitat de la memòria cau','How often you want to receive notifications'=>'Amb quina freqüència vols rebre les notificacions','Where do you want to receive notifications?'=>'On vols rebre les notificacions?','Email addresses to notify (separated by commas)'=>'Adreces electròniques a notificar (separades per comes)','Slack webhook URL'=>'URL de webhook de Slack','Teams webhook URL'=>'URL de webhook de Teams','Vulnerabilities to hide'=>'Vulnerabilitats per amagar','What do you want to hide?'=>'Què vols amagar?','Standard (Hybrid Detection)'=>'Estàndard (detecció híbrida)','Strict (Extensions Only)'=>'Estricte (només extensions)','Disabled (No Detection)'=>'Desactivat (sense detecció)','Security Status'=>'Estat de seguretat','Security Mode'=>'Mode de seguretat','Shell Execution'=>'Execució de shell','Enabled'=>'Activat','Audit Logging'=>'Registre d\'auditoria','Enabled (%d days)'=>'Activat (%d dies)','Total Log Entries'=>'Total d\'entrades del registre','Last Shell Execution'=>'Última execució de shell','%s ago'=>'fa %s','Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.'=>'Configura els paràmetres de seguretat per mitjà de constants a wp-config.php: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.','See security configuration documentation for details.'=>'Consulta la documentació de configuració de seguretat per obtindre més detalls.','Memcached'=>'Memcached','Imagick Extension'=>'Extensió Imagick','Redis Extension'=>'Extensió Redis','Memcached Extension'=>'Extensió Memcached','Memcache Extension'=>'Extensió Memcache','SQLite3 Extension'=>'Extensió SQLite3','PDO SQLite'=>'PDO SQLite','Shell Command'=>'Ordre de shell','Binary Check'=>'Comprovació binària','Not Detected'=>'No detectat','Software Detection Methods'=>'Mètodes de detecció de programari','Shows which detection method was used for each software component and the reliability score.'=>'Mostra quin mètode de detecció s\'ha utilitzat per a cada component de programari i la puntuació de fiabilitat.','Component'=>'Component','Version'=>'Versió','Detection Method'=>'Mètode de detecció','Reliability'=>'Fiabilitat','Not detected'=>'No detectat','Shell Execution Audit Logs'=>'Registres d\'auditoria d\'execució de shell','Complete audit trail of shell command executions for security monitoring.'=>'Registre complet de les execucions d\'ordres de shell per al seguiment de seguretat.','No shell execution logs found.'=>'No s\'han trobat registres d\'execució de shell.','Logs will appear here when shell commands are executed for software detection.'=>'Els registres apareixeran ací quan s\'executen ordres de shell per a la detecció de programari.','Time'=>'Hora','Command'=>'Ordre','User'=>'Usuari','Output'=>'Eixida','Showing the %d most recent log entries.'=>'S\'estan mostrant les %d entrades de registre més recents.','Invalid nonce.'=>'Nonce no vàlid.','Insufficient permissions.'=>'Permisos insuficients.','No component specified.'=>'No s\'ha especificat cap component.','Debug Information'=>'Informació de depuració','This tab is only visible when WP_DEBUG is enabled. Use with caution.'=>'Esta pestanya només és visible quan WP_DEBUG està activat. Usa-la amb precaució.','System Information'=>'Informació del sistema','WordPress Version'=>'Versió del WordPress','Multisite'=>'Multiseu','Yes'=>'Sí','No'=>'No','Language'=>'Idioma','PHP Version'=>'Versió del PHP','PHP Extensions'=>'Extensions del PHP','PHP Memory Limit'=>'Límit de memòria del PHP','Database'=>'Base de dades','Web Server'=>'Servidor web','WP_DEBUG'=>'WP_DEBUG','WP_DEBUG_LOG'=>'WP_DEBUG_LOG','Path:'=>'Camí:','Size: %s'=>'Mida: %s','View Log File'=>'Visualitza el fitxer de registre','Log file is not web-accessible (outside wp-content)'=>'El fitxer de registre no és accessible per web (fora de wp-content)','Log file does not exist yet'=>'El fitxer de registre encara no existix','Plugin Version'=>'Versió de l\'extensió','Component Detection'=>'Detecció de components','Version Detected'=>'Versió detectada','Analyzed'=>'Analitzat','Cache Status'=>'Estat de la memòria cau','Configuration Summary'=>'Resum de la configuració','Cache Duration'=>'Durada de la memòria cau','Log Retention'=>'Retenció del registre','Components Analyzed'=>'Components analitzats','Notification Email'=>'Correu electrònic de notificació','Slack Webhook'=>'Webhook de Slack','Configured & Enabled'=>'Configurat i activat','Configured (Disabled)'=>'Configurat (desactivat)','Not configured'=>'No configurat','Teams Webhook'=>'Webhook de Teams','Discord Webhook'=>'Webhook de Discord','Telegram Bot'=>'Bot de Telegram','Cron Status'=>'Estat del cron','Update Database'=>'Actualitza la base de dades','Next run: %s'=>'Pròxima execució: %s','Not scheduled'=>'No programat','Send Notification'=>'Envia notificació','Run Update Now'=>'Executa l\'actualització ara','Run Notification Now'=>'Envia la notificació ara','You do not have permission to run these actions.'=>'No tens permís per executar estes accions.','API Testing'=>'Proves de l\'API','Test API connectivity for each component. Click a button to send a test request.'=>'Prova la connectivitat de l\'API per a cada component. Fes clic en un botó per enviar una sol·licitud de prova.','Test %s'=>'Prova %s','Testing...'=>'Provant...','HTTP Code:'=>'Codi HTTP:','Response Time:'=>'Temps de resposta:','Response Preview'=>'Previsualització de la resposta','Test'=>'Prova','Error:'=>'Error:','AJAX request failed.'=>'La sol·licitud AJAX ha fallat.','You do not have permission to test API connectivity.'=>'No tens permís per provar la connectivitat de l\'API.','Database Options Viewer'=>'Visualitzador d\'opcions de la base de dades','View the raw data stored in WordPress options.'=>'Visualitza les dades en brut emmagatzemades a les opcions del WordPress.','Select an option...'=>'Selecciona una opció...','Option not found or empty.'=>'Opció no trobada o buida.','Quick Actions'=>'Accions ràpides','Perform debugging actions. Use with caution.'=>'Realitza accions de depuració. Usa-les amb precaució.','Are you sure you want to clear all caches?'=>'Estàs segur que vols buidar totes les memòries cau?','Clear All Caches'=>'Buida totes les memòries cau','Are you sure you want to reset signatures?'=>'Estàs segur que vols restablir les signatures?','Reset Signatures'=>'Restablix les signatures','Export Debug Info'=>'Exporta la informació de depuració','You do not have permission to perform these actions.'=>'No tens permís per realitzar estes accions.','Settings saved.'=>'S\'ha desat la configuració.','WPVulnerability cron events have been repaired across the network.'=>'Els esdeveniments cron del WPVulnerability s\'han reparat a tota la xarxa.','You do not have permission to access this page.'=>'No tens permís per accedir a esta pàgina.','WordPress %1$s has a known vulnerability that may be affecting your installed version.'=>'WordPress %1$s té una vulnerabilitat coneguda que pot afectar la teua versió instal·lada.','Actively exploited'=>'Activament explotada','Public exploit'=>'Explotació pública','Automatable'=>'Automatitzable','References:'=>'Referències:','Invalid component specified.'=>'Component especificat no vàlid.','Version not detected for this component.'=>'No s\'ha detectat la versió d\'este component.','API request successful.'=>'La sol·licitud de l\'API ha tingut èxit.','API returned HTTP code %d.'=>'L\'API ha retornat el codi HTTP %d.','WPVulnerability Logs'=>'Registres de WPVulnerability','WPVulnerability Log'=>'Registre de WPVulnerability','Low'=>'Baixa','Medium'=>'Mitjana','High'=>'Alta','Critical'=>'Crítica','WPVulnerability Shell Logs'=>'Registres de shell de WPVulnerability','WPVulnerability Shell Log'=>'Registre de shell de WPVulnerability','Every week'=>'Cada setmana','Every day'=>'Cada dia','Invalid request.'=>'Sol·licitud no vàlida.','You have unsubscribed from WPVulnerability notifications.'=>'T\'has donat de baixa de les notificacions de WPVulnerability.','Learn more about the WordPress Vulnerability Database API at %2$s'=>'Aprén més sobre l\'API WordPress Vulnerability Database a %2$s','Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings.'=>'Vols deixar de rebre estos avisos? Dona\'t de baixa o canvia la freqüència del correu electrònic a Mai a la configuració del WPVulnerability.','No vulnerabilities found'=>'No s\'han trobat vulnerabilitats','This is likely a test. The site does not have vulnerabilities.'=>'Açò és probablement una prova. El lloc no té vulnerabilitats.','Core vulnerabilities'=>'Vulnerabilitats al nucli del WordPress','Plugins vulnerabilities'=>'Vulnerabilitats a extensions','Themes vulnerabilities'=>'Vulnerabilitats a temes','PHP vulnerabilities'=>'Vulnerabilitats del PHP','Apache HTTPD vulnerabilities'=>'Vulnerabilitats d\'Apache HTTPD','Nginx vulnerabilities'=>'Vulnerabilitats d\'Nginx','MariaDB vulnerabilities'=>'Vulnerabilitats de MariaDB','MySQL vulnerabilities'=>'Vulnerabilitats de MySQL','ImageMagick vulnerabilities'=>'Vulnerabilitats de ImageMagick','curl vulnerabilities'=>'Vulnerabilitats de curl','memcached vulnerabilities'=>'Vulnerabilitats de memcached','Redis vulnerabilities'=>'Vulnerabilitats de Redis','SQLite vulnerabilities'=>'Vulnerabilitats de SQLite','Vulnerability found: %s'=>'Vulnerabilitat trobada: %s','Vulnerability found'=>'S\'ha trobat una vulnerabilitat','%1$s has a known vulnerability that may be affecting your installed version.'=>'%1$s té una vulnerabilitat coneguda que pot afectar la teua versió instal·lada.','This plugin is closed. Please replace it with another.'=>'Esta extensió està clausurada. Reemplaça-la per una altra.','This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates.'=>'Esta vulnerabilitat sembla no estar pegada. Estigues pendent de les pròximes actualitzacions de l\'extensió.','It hasn\'t been updated in over a year.'=>'No s\'ha actualitzat en més d\'un any.','It may no longer be available (closed?).'=>'Potser ja no està disponible (tancat?).','Last updated on'=>'Última actualització el','Vulnerabilities (%d)'=>'Vulnerabilitats (%d)','%s running'=>'%s corrent','End of Life'=>'Fi del cicle de vida','End of life:'=>'Fi del cicle de vida:','Supported'=>'Compatible','Plugin'=>'Extensió','Theme'=>'Tema','End of life: %s'=>'Fi del cicle de vida: %s','EOL'=>'EOL','Network Settings'=>'Paràmetres de xarxa','Vulnerabilities'=>'Vulnerabilitats','Every 6 hours'=>'Cada 6 hores','Database updates'=>'Actualitzacions de la base de dades','Log cleanup'=>'Neteja del registre','Notifications are scheduled, but settings currently disable them. Please review the notifications tab.'=>'Les notificacions estan programades, però la configuració actual les desactiva. Revisa la pestanya de notificacions.','This event should not be scheduled for this site.'=>'Este esdeveniment no hauria d\'estar programat per a este lloc.','Not expected for this site.'=>'No esperat per a este lloc.','No instances found.'=>'No s\'han trobat instàncies.','Scheduled with an unexpected interval.'=>'Programat amb un interval inesperat.','Multiple instances detected.'=>'S\'han detectat diverses instàncies.','Scheduled as expected.'=>'Programat com s\'esperava.','There aren\'t plugins vulnerabilities'=>'No hi ha vulnerabilitats a les extensions','Shows possible vulnerabilities that exist in installed plugins.'=>'Mostra les possibles vulnerabilitats que hi ha a les extensions instal·lades.','There is %d plugin with vulnerabilities'=>'Hi ha %d extensió amb vulnerabilitats' . "\0" . 'Hi ha %d extensions amb vulnerabilitats','We\'ve detected potential vulnerabilities in installed plugins. Please check them and keep them updated.'=>'Hem detectat potencials vulnerabilitats a les extensions instal·lades. Comprova-les i mantén-les actualitzades.','Update plugins'=>'Actualitza les extensions','There aren\'t themes vulnerabilities'=>'No hi ha vulnerabilitats als temes','Shows possible vulnerabilities that exist in installed themes.'=>'Mostra les possibles vulnerabilitats que hi ha als temes instal·lats.','There is %d theme with vulnerabilities'=>'Hi ha %d tema amb vulnerabilitats' . "\0" . 'Hi ha %d temes amb vulnerabilitats','We\'ve detected potential vulnerabilities in installed themes. Please check them and keep them updated.'=>'Hem detectat potencials vulnerabilitats als temes instal·lats. Comprova\'ls i mantén-los actualitzats.','Update themes'=>'Actualitza els temes','There aren\'t WordPress vulnerabilities'=>'No hi ha vulnerabilitats al WordPress','Shows possible vulnerabilities existing in the WordPress core.'=>'Mostra les possibles vulnerabilitats que hi ha al nucli del WordPress.','There is %d core vulnerability'=>'Hi ha %d vulnerabilitat al nucli' . "\0" . 'Hi ha %d vulnerabilitats al nucli','We\'ve detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated.'=>'Hem detectat potencials vulnerabilitats en esta instal·lació de WordPress. Comprova-les i mantén la teua instal·lació actualitzada.','Update WordPress'=>'Actualitza el WordPress','Nginx'=>'Nginx','Invalid software type'=>'Tipus de programari no vàlid','Error'=>'Error','The specified software type is not valid.'=>'El tipus de programari especificat no és vàlid.','There aren\'t %s vulnerabilities'=>'No hi ha vulnerabilitats a %s','Shows possible vulnerabilities existing in %s.'=>'Mostra les possibles vulnerabilitats existents a %s.','There is %1$d %2$s vulnerability'=>'Hi ha %1$d vulnerabilitat %2$s' . "\0" . 'Hi ha %1$d vulnerabilitats %2$s','We\'ve detected potential vulnerabilities in %s. Please check them and keep your installation updated.'=>'Hem detectat potencials vulnerabilitats a %s. Comprova-les i mantén la teua instal·lació actualitzada.','How to update PHP'=>'Com actualitzar el PHP','WPVulnerability Core'=>'WPVulnerability Nucli','WPVulnerability Themes'=>'WPVulnerability Temes','WPVulnerability Plugins'=>'WPVulnerability Extensions','WPVulnerability PHP'=>'WPVulnerability PHP','WPVulnerability Apache HTTPD'=>'WPVulnerability Apache HTTPD','WPVulnerability Nginx'=>'WPVulnerability Nginx','WPVulnerability MariaDB'=>'WPVulnerability MariaDB','WPVulnerability MySQL'=>'WPVulnerability MySQL','WPVulnerability ImageMagick'=>'WPVulnerability ImageMagick','WPVulnerability curl'=>'WPVulnerability curl','WPVulnerability memcached'=>'WPVulnerability memcached','WPVulnerability redis'=>'WPVulnerability redis','WPVulnerability sqlite'=>'WPVulnerability sqlite','This theme is closed. Please replace it with another.'=>'Este tema està clausurat. Reemplaça-lo per un altre.','This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates.'=>'Esta vulnerabilitat sembla no estar pegada. Estigues pendent de les pròximes actualitzacions del tema.','This theme has known vulnerabilities that may be affecting your installed version.'=>'Este tema té vulnerabilitats conegudes que poden afectar la teua versió instal·lada.']]; \ No newline at end of file diff --git a/languages/wpvulnerability-ca-val.mo b/languages/wpvulnerability-ca-val.mo new file mode 100644 index 0000000000000000000000000000000000000000..646e1e926d99333c0a98e7305376ad9787055efe GIT binary patch literal 41011 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 N7xiE8$lbFH{vW5y=sW-b literal 0 HcmV?d00001 diff --git a/languages/wpvulnerability-ca-val.po b/languages/wpvulnerability-ca-val.po new file mode 100644 index 0000000..40db0cc --- /dev/null +++ b/languages/wpvulnerability-ca-val.po @@ -0,0 +1,2111 @@ +msgid "" +msgstr "" +"Project-Id-Version: Plugins - WPVulnerability - Development (trunk)\n" +"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wpvulnerability\n" +"POT-Creation-Date: 2026-05-27T16:32:22+00:00\n" +"PO-Revision-Date: 2024-10-04 12:09:02+0000\n" +"Language: ca\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: GlotPress/4.0.3\n" + +#. Plugin Name of the plugin +#: wpvulnerability.php wpvulnerability-admin.php:1782 +#: wpvulnerability-admin.php:1783 wpvulnerability-adminms.php:1945 +#: wpvulnerability-adminms.php:1946 wpvulnerability-notifications.php:105 +msgid "WPVulnerability" +msgstr "WPVulnerability" + +#. Plugin URI of the plugin +#: wpvulnerability.php +msgid "https://www.wpvulnerability.com/plugin/" +msgstr "https://www.wpvulnerability.com/plugin/" + +#. Description of the plugin +#: wpvulnerability.php +msgid "" +"Receive information about possible vulnerabilities in your WordPress from " +"WordPress Vulnerability Database API." +msgstr "Rep informació sobre les possibles vulnerabilitats del teu WordPress a través de l'API WordPress Vulnerability Database." + +#. Author of the plugin +#: wpvulnerability.php +msgid "ROBOTSTXT" +msgstr "ROBOTSTXT" + +#. Author URI of the plugin +#: wpvulnerability.php +msgid "https://www.robotstxt.es/" +msgstr "https://www.robotstxt.es/" + +#: class-wpvulnerability-cli.php:35 class-wpvulnerability-config-cli.php:32 +msgid "" +"This command requires a WordPress administrator. Run with --" +"user=." +msgstr "Esta ordre requereix un administrador de WordPress. Executeu amb --user=." + +#: class-wpvulnerability-cli.php:156 +msgid "No core vulnerabilities found." +msgstr "No s'han trobat vulnerabilitats al nucli." + +#: class-wpvulnerability-cli.php:275 +msgid "No plugin vulnerabilities found." +msgstr "No s'han trobat vulnerabilitats a extensions." + +#: class-wpvulnerability-cli.php:393 +msgid "No theme vulnerabilities found." +msgstr "No s'han trobat vulnerabilitats a temes." + +#. translators: %s is the software name (php, apache, nginx, etc.) +#: class-wpvulnerability-cli.php:490 +#, php-format +msgid "No %s vulnerabilities found." +msgstr "No s'han trobat vulnerabilitats a %s." + +#: wpvulnerability-admin.php:63 wpvulnerability-adminms.php:227 +msgid "Data from source has been reloaded." +msgstr "Les dades de la font s'han tornat a carregar." + +#: wpvulnerability-admin.php:65 wpvulnerability-adminms.php:229 +msgid "You do not have permission to reload data." +msgstr "No tens permís per tornar a carregar les dades." + +#: wpvulnerability-admin.php:93 wpvulnerability-adminms.php:255 +msgid "Test email has been sent." +msgstr "S'ha enviat un correu electrònic de prova." + +#: wpvulnerability-admin.php:95 wpvulnerability-adminms.php:259 +msgid "Test email has failed. Please, check your email settings." +msgstr "L'enviament del correu electrònic de prova ha fallat. Comprova la configuració del correu." + +#: wpvulnerability-admin.php:98 wpvulnerability-adminms.php:263 +msgid "You do not have permission to send test emails." +msgstr "No tens permís per enviar correus electrònics de prova." + +#: wpvulnerability-admin.php:113 +msgid "WPVulnerability cron events have been repaired." +msgstr "Els esdeveniments cron del WPVulnerability s'han reparat." + +#: wpvulnerability-admin.php:115 wpvulnerability-adminms.php:279 +msgid "You do not have permission to repair cron events." +msgstr "No tens permís per reparar els esdeveniments cron." + +#: wpvulnerability-admin.php:127 wpvulnerability-adminms.php:291 +msgid "All logs have been deleted." +msgstr "Tots els registres s'han eliminat." + +#: wpvulnerability-admin.php:129 wpvulnerability-adminms.php:293 +msgid "You do not have permission to delete logs." +msgstr "No tens permís per eliminar els registres." + +#: wpvulnerability-admin.php:146 +msgid "Uninstall preference saved." +msgstr "S'ha desat la preferència de desinstal·lació." + +#: wpvulnerability-admin.php:153 wpvulnerability-adminms.php:316 +msgid "WPVulnerability has been reset to defaults and reloaded." +msgstr "El WPVulnerability s'ha restablit als valors predeterminats i s'ha tornat a carregar." + +#: wpvulnerability-admin.php:155 wpvulnerability-adminms.php:318 +msgid "You do not have permission to reset WPVulnerability." +msgstr "No tens permís per restablir el WPVulnerability." + +#: wpvulnerability-admin.php:170 wpvulnerability-adminms.php:333 +msgid "All caches have been cleared." +msgstr "Totes les memòries cau s'han buidat." + +#: wpvulnerability-admin.php:172 wpvulnerability-adminms.php:335 +msgid "You do not have permission to clear caches." +msgstr "No tens permís per buidar les memòries cau." + +#: wpvulnerability-admin.php:187 wpvulnerability-adminms.php:350 +msgid "Plugin and theme signatures have been reset." +msgstr "Les signatures d'extensions i temes s'han restablit." + +#: wpvulnerability-admin.php:189 wpvulnerability-adminms.php:352 +msgid "You do not have permission to reset signatures." +msgstr "No tens permís per restablir les signatures." + +#: wpvulnerability-admin.php:212 wpvulnerability-adminms.php:375 +msgid "You do not have permission to export debug information." +msgstr "No tens permís per exportar la informació de depuració." + +#: wpvulnerability-admin.php:224 wpvulnerability-adminms.php:387 +msgid "Database update has been executed." +msgstr "L'actualització de la base de dades s'ha executat." + +#: wpvulnerability-admin.php:226 wpvulnerability-adminms.php:389 +msgid "You do not have permission to run database updates." +msgstr "No tens permís per executar actualitzacions de la base de dades." + +#: wpvulnerability-admin.php:247 wpvulnerability-adminms.php:410 +msgid "Notification has been sent." +msgstr "S'ha enviat la notificació." + +#: wpvulnerability-admin.php:249 wpvulnerability-adminms.php:412 +msgid "Notification sending failed." +msgstr "L'enviament de la notificació ha fallat." + +#: wpvulnerability-admin.php:252 wpvulnerability-adminms.php:415 +msgid "You do not have permission to send notifications." +msgstr "No tens permís per enviar notificacions." + +#: wpvulnerability-admin.php:266 wpvulnerability-adminms.php:539 +#: wpvulnerability-schedule.php:323 +msgid "Notifications" +msgstr "Notificacions" + +#: wpvulnerability-admin.php:269 wpvulnerability-adminms.php:542 +msgid "Analysis" +msgstr "Anàlisi" + +#: wpvulnerability-admin.php:272 wpvulnerability-adminms.php:545 +msgid "Logs" +msgstr "Registres" + +#: wpvulnerability-admin.php:275 wpvulnerability-adminms.php:548 +#: wpvulnerability-sitehealth.php:25 wpvulnerability-sitehealth.php:77 +#: wpvulnerability-sitehealth.php:129 wpvulnerability-sitehealth.php:210 +msgid "Security" +msgstr "Seguretat" + +#: wpvulnerability-admin.php:278 wpvulnerability-adminms.php:551 +msgid "Tools" +msgstr "Eines" + +#: wpvulnerability-admin.php:285 wpvulnerability-adminms.php:558 +msgid "Debug" +msgstr "Depuració" + +#: wpvulnerability-admin.php:290 wpvulnerability-adminms.php:563 +msgid "About" +msgstr "Quant a" + +#: wpvulnerability-admin.php:427 wpvulnerability-adminms.php:700 +msgid "Notification Settings" +msgstr "Configuració de notificacions" + +#: wpvulnerability-admin.php:430 wpvulnerability-adminms.php:703 +msgid "Configure how and when you want to receive vulnerability notifications." +msgstr "Configura com i quan vols rebre notificacions de vulnerabilitats." + +#: wpvulnerability-admin.php:431 wpvulnerability-adminms.php:704 +msgid "" +"Stay informed about security vulnerabilities in your WordPress installation, " +"plugins, themes, and server software." +msgstr "Mantén-te informat sobre les vulnerabilitats de seguretat a la teua instal·lació de WordPress, extensions, temes i programari del servidor." + +#: wpvulnerability-admin.php:438 wpvulnerability-adminms.php:711 +msgid "Cache Expiration Time" +msgstr "Temps de caducitat de la memòria cau" + +#: wpvulnerability-admin.php:440 wpvulnerability-admin.php:814 +#: wpvulnerability-adminms.php:713 wpvulnerability-adminms.php:1087 +msgid "FORCED" +msgstr "FORÇAT" + +#: wpvulnerability-admin.php:444 wpvulnerability-adminms.php:717 +msgid "How long to cache vulnerability data before refreshing from the API." +msgstr "Durant quant de temps s'han de guardar les dades de vulnerabilitats en la memòria cau abans d'actualitzar-les des de l'API." + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:453 wpvulnerability-admin.php:1891 +#: wpvulnerability-admin.php:3631 wpvulnerability-adminms.php:726 +#: wpvulnerability-adminms.php:2039 wpvulnerability-adminms.php:3825 +#, php-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d hora" +msgstr[1] "%d hores" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:469 wpvulnerability-adminms.php:742 +#, php-format +msgid "" +"You can force the cache time via wp-config.php constant. Learn more →" +msgstr "Pots forçar el temps de memòria cau per mitjà d'una constant a wp-config.php. Més informació →" + +#: wpvulnerability-admin.php:481 wpvulnerability-admin.php:3665 +#: wpvulnerability-adminms.php:754 wpvulnerability-adminms.php:3859 +msgid "Notification Frequency" +msgstr "Freqüència de notificacions" + +#: wpvulnerability-admin.php:484 wpvulnerability-adminms.php:757 +msgid "Choose how often you want to receive vulnerability notifications." +msgstr "Tria amb quina freqüència vols rebre notificacions de vulnerabilitats." + +#: wpvulnerability-admin.php:489 wpvulnerability-adminms.php:762 +msgid "Never - Disable automatic notifications" +msgstr "Mai - Desactiva les notificacions automàtiques" + +#: wpvulnerability-admin.php:493 wpvulnerability-adminms.php:766 +msgid "Daily - Receive notifications every day" +msgstr "Diàriament - Rep notificacions cada dia" + +#: wpvulnerability-admin.php:497 wpvulnerability-adminms.php:770 +msgid "Weekly - Receive notifications once a week" +msgstr "Setmanalment - Rep notificacions una vegada a la setmana" + +#: wpvulnerability-admin.php:503 wpvulnerability-adminms.php:776 +msgid "Day:" +msgstr "Dia:" + +#: wpvulnerability-admin.php:505 wpvulnerability-admin.php:1955 +#: wpvulnerability-adminms.php:778 wpvulnerability-adminms.php:2115 +msgid "Monday" +msgstr "Dilluns" + +#: wpvulnerability-admin.php:506 wpvulnerability-admin.php:1956 +#: wpvulnerability-adminms.php:779 wpvulnerability-adminms.php:2116 +msgid "Tuesday" +msgstr "Dimarts" + +#: wpvulnerability-admin.php:507 wpvulnerability-admin.php:1957 +#: wpvulnerability-adminms.php:780 wpvulnerability-adminms.php:2117 +msgid "Wednesday" +msgstr "Dimecres" + +#: wpvulnerability-admin.php:508 wpvulnerability-admin.php:1958 +#: wpvulnerability-adminms.php:781 wpvulnerability-adminms.php:2118 +msgid "Thursday" +msgstr "Dijous" + +#: wpvulnerability-admin.php:509 wpvulnerability-admin.php:1959 +#: wpvulnerability-adminms.php:782 wpvulnerability-adminms.php:2119 +msgid "Friday" +msgstr "Divendres" + +#: wpvulnerability-admin.php:510 wpvulnerability-admin.php:1960 +#: wpvulnerability-adminms.php:783 wpvulnerability-adminms.php:2120 +msgid "Saturday" +msgstr "Dissabte" + +#: wpvulnerability-admin.php:511 wpvulnerability-admin.php:1961 +#: wpvulnerability-adminms.php:784 wpvulnerability-adminms.php:2121 +msgid "Sunday" +msgstr "Diumenge" + +#: wpvulnerability-admin.php:515 wpvulnerability-adminms.php:788 +msgid "Time:" +msgstr "Hora:" + +#: wpvulnerability-admin.php:519 wpvulnerability-adminms.php:792 +msgid "(24-hour format, server timezone)" +msgstr "(format de 24 hores, zona horària del servidor)" + +#: wpvulnerability-admin.php:528 wpvulnerability-adminms.php:801 +msgid "Notification Channels" +msgstr "Canals de notificació" + +#: wpvulnerability-admin.php:531 wpvulnerability-adminms.php:804 +msgid "Select where you want to receive notifications." +msgstr "Selecciona on vols rebre les notificacions." + +#: wpvulnerability-admin.php:536 wpvulnerability-admin.php:2011 +#: wpvulnerability-adminms.php:809 wpvulnerability-adminms.php:2169 +msgid "Email" +msgstr "Correu electrònic" + +#: wpvulnerability-admin.php:539 wpvulnerability-adminms.php:812 +msgid "Email Addresses (separated by commas):" +msgstr "Adreces electròniques (separades per comes):" + +#: wpvulnerability-admin.php:541 wpvulnerability-adminms.php:814 +msgid "Default:" +msgstr "Predeterminat:" + +#: wpvulnerability-admin.php:546 wpvulnerability-admin.php:2016 +#: wpvulnerability-adminms.php:819 wpvulnerability-adminms.php:2174 +msgid "Slack" +msgstr "Slack" + +#: wpvulnerability-admin.php:549 wpvulnerability-adminms.php:822 +msgid "Slack Webhook URL:" +msgstr "URL del Webhook de Slack:" + +#. translators: %s: Slack documentation URL +#: wpvulnerability-admin.php:555 wpvulnerability-adminms.php:828 +#, php-format +msgid "" +"Learn how to " +"create a Slack incoming webhook →" +msgstr "Aprén a crear un webhook entrant de Slack →" + +#: wpvulnerability-admin.php:564 wpvulnerability-admin.php:2021 +#: wpvulnerability-adminms.php:837 wpvulnerability-adminms.php:2179 +msgid "Microsoft Teams" +msgstr "Microsoft Teams" + +#: wpvulnerability-admin.php:567 wpvulnerability-adminms.php:840 +msgid "Teams Webhook URL:" +msgstr "URL del Webhook de Teams:" + +#. translators: %s: Microsoft Teams documentation URL +#: wpvulnerability-admin.php:573 wpvulnerability-adminms.php:846 +#, php-format +msgid "" +"Learn how to " +"create a Teams incoming webhook →" +msgstr "Aprén a crear un webhook entrant de Teams →" + +#: wpvulnerability-admin.php:582 wpvulnerability-adminms.php:855 +msgid "Discord" +msgstr "Discord" + +#: wpvulnerability-admin.php:585 wpvulnerability-adminms.php:858 +msgid "Discord Webhook URL:" +msgstr "URL del Webhook de Discord:" + +#. translators: %s: Discord documentation URL +#: wpvulnerability-admin.php:591 wpvulnerability-adminms.php:864 +#, php-format +msgid "" +"Learn how to " +"create a Discord webhook →" +msgstr "Aprén a crear un webhook de Discord →" + +#: wpvulnerability-admin.php:600 wpvulnerability-adminms.php:873 +msgid "Telegram" +msgstr "Telegram" + +#: wpvulnerability-admin.php:603 wpvulnerability-adminms.php:876 +msgid "Telegram Bot Token:" +msgstr "Token del Bot de Telegram:" + +#: wpvulnerability-admin.php:605 wpvulnerability-adminms.php:878 +msgid "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:607 wpvulnerability-adminms.php:880 +msgid "Telegram Chat ID:" +msgstr "ID de xat de Telegram:" + +#. translators: %s: Telegram documentation URL +#: wpvulnerability-admin.php:613 wpvulnerability-adminms.php:886 +#, php-format +msgid "" +"Learn how to " +"create a Telegram bot and get Chat ID →" +msgstr "Aprén a crear un bot de Telegram i obtindre l'ID de xat →" + +#: wpvulnerability-admin.php:623 wpvulnerability-adminms.php:896 +msgid "Save Notification Settings" +msgstr "Desa la configuració de notificacions" + +#: wpvulnerability-admin.php:700 wpvulnerability-admin.php:2552 +#: wpvulnerability-adminms.php:973 wpvulnerability-adminms.php:2459 +msgid "WordPress Components" +msgstr "Components de WordPress" + +#: wpvulnerability-admin.php:703 wpvulnerability-admin.php:2560 +#: wpvulnerability-adminms.php:976 wpvulnerability-adminms.php:2467 +msgid "WordPress Core" +msgstr "Nucli de WordPress" + +#: wpvulnerability-admin.php:707 wpvulnerability-admin.php:1472 +#: wpvulnerability-admin.php:1573 wpvulnerability-admin.php:2109 +#: wpvulnerability-admin.php:2571 wpvulnerability-adminms.php:980 +#: wpvulnerability-adminms.php:1744 wpvulnerability-adminms.php:1843 +#: wpvulnerability-adminms.php:2266 wpvulnerability-adminms.php:2478 +msgid "Plugins" +msgstr "Extensions" + +#: wpvulnerability-admin.php:711 wpvulnerability-admin.php:1473 +#: wpvulnerability-admin.php:1574 wpvulnerability-admin.php:2114 +#: wpvulnerability-admin.php:2587 wpvulnerability-adminms.php:984 +#: wpvulnerability-adminms.php:1745 wpvulnerability-adminms.php:1844 +#: wpvulnerability-adminms.php:2271 wpvulnerability-adminms.php:2494 +msgid "Themes" +msgstr "Temes" + +#: wpvulnerability-admin.php:717 wpvulnerability-adminms.php:990 +msgid "Software & Languages" +msgstr "Programari i llenguatges" + +#: wpvulnerability-admin.php:720 wpvulnerability-admin.php:1474 +#: wpvulnerability-admin.php:2119 wpvulnerability-adminms.php:993 +#: wpvulnerability-adminms.php:1746 wpvulnerability-adminms.php:2276 +#: wpvulnerability-sitehealth.php:178 +msgid "PHP" +msgstr "PHP" + +#: wpvulnerability-admin.php:726 wpvulnerability-adminms.php:999 +msgid "Web Servers" +msgstr "Servidors web" + +#: wpvulnerability-admin.php:729 wpvulnerability-admin.php:1475 +#: wpvulnerability-admin.php:2124 wpvulnerability-adminms.php:1002 +#: wpvulnerability-adminms.php:1747 wpvulnerability-adminms.php:2281 +#: wpvulnerability-sitehealth.php:179 +msgid "Apache HTTPD" +msgstr "Apache HTTPD" + +#: wpvulnerability-admin.php:733 wpvulnerability-admin.php:1476 +#: wpvulnerability-admin.php:2129 wpvulnerability-adminms.php:1006 +#: wpvulnerability-adminms.php:1748 wpvulnerability-adminms.php:2286 +msgid "nginx" +msgstr "nginx" + +#: wpvulnerability-admin.php:739 wpvulnerability-adminms.php:1012 +msgid "Databases" +msgstr "Bases de dades" + +#: wpvulnerability-admin.php:742 wpvulnerability-admin.php:1477 +#: wpvulnerability-admin.php:2134 wpvulnerability-adminms.php:1015 +#: wpvulnerability-adminms.php:1749 wpvulnerability-adminms.php:2291 +#: wpvulnerability-sitehealth.php:181 +msgid "MariaDB" +msgstr "MariaDB" + +#: wpvulnerability-admin.php:746 wpvulnerability-admin.php:1478 +#: wpvulnerability-admin.php:2139 wpvulnerability-adminms.php:1019 +#: wpvulnerability-adminms.php:1750 wpvulnerability-adminms.php:2296 +#: wpvulnerability-sitehealth.php:182 +msgid "MySQL" +msgstr "MySQL" + +#: wpvulnerability-admin.php:750 wpvulnerability-admin.php:1483 +#: wpvulnerability-admin.php:2164 wpvulnerability-admin.php:3104 +#: wpvulnerability-adminms.php:1023 wpvulnerability-adminms.php:1755 +#: wpvulnerability-adminms.php:2321 wpvulnerability-adminms.php:3281 +msgid "SQLite" +msgstr "SQLite" + +#: wpvulnerability-admin.php:756 wpvulnerability-adminms.php:1029 +msgid "Additional Tools" +msgstr "Eines addicionals" + +#: wpvulnerability-admin.php:759 wpvulnerability-admin.php:1479 +#: wpvulnerability-admin.php:2144 wpvulnerability-admin.php:3101 +#: wpvulnerability-adminms.php:1032 wpvulnerability-adminms.php:1751 +#: wpvulnerability-adminms.php:2301 wpvulnerability-adminms.php:3278 +#: wpvulnerability-sitehealth.php:183 +msgid "ImageMagick" +msgstr "ImageMagick" + +#: wpvulnerability-admin.php:763 wpvulnerability-admin.php:1480 +#: wpvulnerability-admin.php:2149 wpvulnerability-adminms.php:1036 +#: wpvulnerability-adminms.php:1752 wpvulnerability-adminms.php:2306 +#: wpvulnerability-sitehealth.php:184 +msgid "curl" +msgstr "curl" + +#: wpvulnerability-admin.php:767 wpvulnerability-admin.php:1481 +#: wpvulnerability-admin.php:2154 wpvulnerability-adminms.php:1040 +#: wpvulnerability-adminms.php:1753 wpvulnerability-adminms.php:2311 +msgid "memcached" +msgstr "memcached" + +#: wpvulnerability-admin.php:771 wpvulnerability-admin.php:1482 +#: wpvulnerability-admin.php:2159 wpvulnerability-admin.php:3102 +#: wpvulnerability-adminms.php:1044 wpvulnerability-adminms.php:1754 +#: wpvulnerability-adminms.php:2316 wpvulnerability-adminms.php:3279 +msgid "Redis" +msgstr "Redis" + +#: wpvulnerability-admin.php:784 wpvulnerability-adminms.php:1057 +msgid "Component Analysis Settings" +msgstr "Configuració de l'anàlisi de components" + +#: wpvulnerability-admin.php:787 wpvulnerability-adminms.php:1060 +msgid "Enable or disable vulnerability analysis for specific components." +msgstr "Activa o desactiva l'anàlisi de vulnerabilitats per a components específics." + +#: wpvulnerability-admin.php:788 wpvulnerability-adminms.php:1061 +msgid "" +"Check the components you want to HIDE from vulnerability scans and reports. " +"Unchecked components will be actively analyzed. Components with active " +"analysis are shown in green, hidden components in red." +msgstr "Marca els components que vols AMAGAR de les exploracions i informes de vulnerabilitats. Els components no marcats s'analitzaran activament. Els components amb anàlisi activa es mostren en verd, els components amagats en roig." + +#: wpvulnerability-admin.php:820 wpvulnerability-adminms.php:1093 +msgid "Hidden (forced by constant)" +msgstr "Amagat (forçat per constant)" + +#: wpvulnerability-admin.php:823 wpvulnerability-adminms.php:1096 +msgid "🔴 Analysis disabled" +msgstr "🔴 Anàlisi desactivada" + +#: wpvulnerability-admin.php:826 wpvulnerability-adminms.php:1099 +msgid "🟢 Analysis active" +msgstr "🟢 Anàlisi activa" + +#: wpvulnerability-admin.php:848 wpvulnerability-adminms.php:1121 +msgid "Tip:" +msgstr "Consell:" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:852 wpvulnerability-adminms.php:1125 +#, php-format +msgid "" +"You can force-disable components via wp-config.php constants. Learn more about force-hiding " +"checks →" +msgstr "Pots forçar la desactivació de components per mitjà de constants a wp-config.php. Més informació sobre la desactivació forçada de comprovacions →" + +#: wpvulnerability-admin.php:860 wpvulnerability-adminms.php:1133 +msgid "Save Analysis Settings" +msgstr "Desa la configuració d'anàlisi" + +#: wpvulnerability-admin.php:920 wpvulnerability-adminms.php:1193 +msgid "« Previous" +msgstr "« Anterior" + +#: wpvulnerability-admin.php:921 wpvulnerability-adminms.php:1194 +msgid "Next »" +msgstr "Següent »" + +#: wpvulnerability-admin.php:932 wpvulnerability-adminms.php:1205 +msgid "Log entry not found or has been removed." +msgstr "L'entrada del registre no s'ha trobat o s'ha eliminat." + +#: wpvulnerability-admin.php:935 wpvulnerability-adminms.php:1208 +msgid "Unable to load the requested log entry." +msgstr "No s'ha pogut carregar l'entrada del registre sol·licitada." + +#: wpvulnerability-admin.php:945 wpvulnerability-adminms.php:1218 +msgid "Log Configuration" +msgstr "Configuració del registre" + +#: wpvulnerability-admin.php:950 wpvulnerability-adminms.php:1223 +msgid "Total Logs" +msgstr "Total de registres" + +#: wpvulnerability-admin.php:954 wpvulnerability-adminms.php:1227 +msgid "Retention Period" +msgstr "Període de retenció" + +#: wpvulnerability-admin.php:959 wpvulnerability-admin.php:1301 +#: wpvulnerability-admin.php:3029 wpvulnerability-admin.php:3043 +#: wpvulnerability-admin.php:3475 wpvulnerability-admin.php:3483 +#: wpvulnerability-adminms.php:1232 wpvulnerability-adminms.php:1574 +#: wpvulnerability-adminms.php:3206 wpvulnerability-adminms.php:3220 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Disabled" +msgstr "Desactivat" + +#. translators: %d: Number of days. +#. translators: %d: number of days +#: wpvulnerability-admin.php:962 wpvulnerability-admin.php:984 +#: wpvulnerability-admin.php:3641 wpvulnerability-adminms.php:1235 +#: wpvulnerability-adminms.php:1257 wpvulnerability-adminms.php:3835 +#, php-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d dia" +msgstr[1] "%d dies" + +#: wpvulnerability-admin.php:975 wpvulnerability-adminms.php:1248 +msgid "Log Retention Period" +msgstr "Període de retenció del registre" + +#: wpvulnerability-admin.php:981 wpvulnerability-adminms.php:1254 +msgid "None (Disabled)" +msgstr "Cap (desactivat)" + +#: wpvulnerability-admin.php:1004 wpvulnerability-adminms.php:1277 +msgid "" +"This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant." +msgstr "Este valor és imposat per la constant WPVULNERABILITY_LOG_RETENTION_DAYS." + +#: wpvulnerability-admin.php:1009 wpvulnerability-adminms.php:1282 +msgid "" +"Choose how long WPVulnerability should keep API response logs. Older logs " +"are automatically deleted." +msgstr "Tria durant quant de temps el WPVulnerability ha de conservar els registres de resposta de l'API. Els registres antics s'eliminen automàticament." + +#: wpvulnerability-admin.php:1013 wpvulnerability-adminms.php:1286 +msgid "Save Configuration" +msgstr "Desa la configuració" + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "Log retention is currently disabled." +msgstr "La retenció de registres està desactivada actualment." + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "API responses are not being saved." +msgstr "Les respostes de l'API no s'estan desant." + +#: wpvulnerability-admin.php:1031 wpvulnerability-adminms.php:1304 +msgid "Log Details" +msgstr "Detalls del registre" + +#: wpvulnerability-admin.php:1035 wpvulnerability-admin.php:1104 +#: wpvulnerability-adminms.php:1308 wpvulnerability-adminms.php:1377 +msgid "Date" +msgstr "Data" + +#: wpvulnerability-admin.php:1039 wpvulnerability-admin.php:1105 +#: wpvulnerability-adminms.php:1312 wpvulnerability-adminms.php:1378 +msgid "API Endpoint" +msgstr "Punt final de l'API" + +#: wpvulnerability-admin.php:1044 wpvulnerability-adminms.php:1317 +msgid "API Response" +msgstr "Resposta de l'API" + +#: wpvulnerability-admin.php:1049 wpvulnerability-adminms.php:1322 +msgid "Back to Logs" +msgstr "Torna als registres" + +#: wpvulnerability-admin.php:1058 wpvulnerability-adminms.php:1331 +msgid "No logs available" +msgstr "No hi ha registres disponibles" + +#: wpvulnerability-admin.php:1059 wpvulnerability-adminms.php:1332 +msgid "API response logs will appear here once the vulnerability scanner runs." +msgstr "Els registres de resposta de l'API apareixeran ací quan s'execute l'escàner de vulnerabilitats." + +#: wpvulnerability-admin.php:1063 wpvulnerability-adminms.php:1336 +msgid "API Response Logs" +msgstr "Registres de resposta de l'API" + +#: wpvulnerability-admin.php:1073 wpvulnerability-adminms.php:1346 +msgid "Show:" +msgstr "Mostra:" + +#: wpvulnerability-admin.php:1082 wpvulnerability-adminms.php:1355 +msgid "Apply" +msgstr "Aplica" + +#. translators: 1: first item, 2: last item, 3: total items +#: wpvulnerability-admin.php:1090 wpvulnerability-adminms.php:1363 +#, php-format +msgid "Showing %1$s–%2$s of %3$s" +msgstr "Mostrant %1$s–%2$s de %3$s" + +#: wpvulnerability-admin.php:1106 wpvulnerability-adminms.php:1379 +msgid "Actions" +msgstr "Accions" + +#: wpvulnerability-admin.php:1133 wpvulnerability-admin.php:3957 +#: wpvulnerability-adminms.php:1406 wpvulnerability-adminms.php:4151 +msgid "View" +msgstr "Visualitza" + +#: wpvulnerability-admin.php:1150 wpvulnerability-adminms.php:1423 +msgid "Danger Zone" +msgstr "Zona de perill" + +#: wpvulnerability-admin.php:1152 wpvulnerability-adminms.php:1425 +msgid "Permanently delete all API response logs. This action cannot be undone." +msgstr "Elimina de manera permanent tots els registres de resposta de l'API. Esta acció no es pot desfer." + +#: wpvulnerability-admin.php:1154 wpvulnerability-adminms.php:1427 +msgid "Are you sure you want to delete all logs? This action cannot be undone." +msgstr "Estàs segur que vols eliminar tots els registres? Esta acció no es pot desfer." + +#: wpvulnerability-admin.php:1157 wpvulnerability-adminms.php:1430 +msgid "Delete All Logs" +msgstr "Elimina tots els registres" + +#: wpvulnerability-admin.php:1201 wpvulnerability-adminms.php:1474 +msgid "Reload Data from API" +msgstr "Torna a carregar les dades des de l'API" + +#: wpvulnerability-admin.php:1204 wpvulnerability-adminms.php:1477 +msgid "" +"Reload all Core, Plugins, Themes and other components information directly " +"from the API to have updated data. This will clear the cache and fetch fresh " +"vulnerability information." +msgstr "Torna a carregar tota la informació del Nucli, Extensions, Temes i altres components directament des de l'API per tindre dades actualitzades. Açò buidarà la memòria cau i obtindrà informació actualitzada sobre vulnerabilitats." + +#: wpvulnerability-admin.php:1209 wpvulnerability-adminms.php:1482 +msgid "Reload Data" +msgstr "Torna a carregar les dades" + +#: wpvulnerability-admin.php:1218 wpvulnerability-adminms.php:1491 +msgid "Test Email Notifications" +msgstr "Prova les notificacions per correu electrònic" + +#: wpvulnerability-admin.php:1221 wpvulnerability-adminms.php:1494 +msgid "" +"Send a test email notification with current vulnerability data to verify " +"your email configuration is working correctly." +msgstr "Envia una notificació per correu electrònic de prova amb les dades de vulnerabilitats actuals per verificar que la configuració del correu electrònic funciona correctament." + +#: wpvulnerability-admin.php:1231 wpvulnerability-adminms.php:1504 +msgid "From address (configured via constant):" +msgstr "Adreça del remitent (configurada per constant):" + +#: wpvulnerability-admin.php:1243 wpvulnerability-adminms.php:1516 +msgid "From address (default):" +msgstr "Adreça del remitent (predeterminada):" + +#: wpvulnerability-admin.php:1252 wpvulnerability-adminms.php:1525 +msgid "Learn how to customize the email sender address →" +msgstr "Aprén a personalitzar l'adreça del remitent del correu electrònic →" + +#: wpvulnerability-admin.php:1258 wpvulnerability-adminms.php:1531 +msgid "Send Test Email" +msgstr "Envia correu electrònic de prova" + +#: wpvulnerability-admin.php:1267 wpvulnerability-adminms.php:1540 +msgid "WP-Cron Status" +msgstr "Estat del WP-Cron" + +#: wpvulnerability-admin.php:1270 wpvulnerability-adminms.php:1543 +msgid "" +"View and manage WP-Cron scheduled events. Compare expected schedules with " +"actual cron jobs to ensure automated tasks are running correctly." +msgstr "Visualitza i gestiona els esdeveniments programats del WP-Cron. Compara les planificacions esperades amb els treballs cron reals per assegurar-te que les tasques automatitzades s'executen correctament." + +#: wpvulnerability-admin.php:1275 wpvulnerability-adminms.php:1548 +msgid "No cron data available." +msgstr "No hi ha dades cron disponibles." + +#: wpvulnerability-admin.php:1281 wpvulnerability-adminms.php:1554 +msgid "Hook" +msgstr "Ganxo" + +#: wpvulnerability-admin.php:1282 wpvulnerability-adminms.php:1555 +msgid "Expected" +msgstr "Esperat" + +#: wpvulnerability-admin.php:1283 wpvulnerability-adminms.php:1556 +msgid "Found" +msgstr "Trobat" + +#: wpvulnerability-admin.php:1284 wpvulnerability-adminms.php:1557 +msgid "Next Run" +msgstr "Pròxima execució" + +#: wpvulnerability-admin.php:1285 wpvulnerability-admin.php:3236 +#: wpvulnerability-admin.php:3559 wpvulnerability-adminms.php:1558 +#: wpvulnerability-adminms.php:3413 wpvulnerability-adminms.php:3753 +msgid "Status" +msgstr "Estat" + +#: wpvulnerability-admin.php:1299 wpvulnerability-adminms.php:1572 +msgid "Not expected" +msgstr "No esperat" + +#: wpvulnerability-admin.php:1321 wpvulnerability-adminms.php:1594 +#: wpvulnerability-general.php:1871 wpvulnerability-general.php:1872 +msgid "None" +msgstr "Cap" + +#: wpvulnerability-admin.php:1356 wpvulnerability-adminms.php:1629 +msgid "OK" +msgstr "D'acord" + +#: wpvulnerability-admin.php:1366 wpvulnerability-adminms.php:1639 +msgid "⚠️ Unexpected WPVulnerability Events" +msgstr "⚠️ Esdeveniments WPVulnerability inesperats" + +#: wpvulnerability-admin.php:1383 wpvulnerability-adminms.php:1656 +msgid "No interval" +msgstr "Cap interval" + +#: wpvulnerability-admin.php:1390 wpvulnerability-adminms.php:1663 +msgid "Next:" +msgstr "Pròxim:" + +#: wpvulnerability-admin.php:1400 wpvulnerability-adminms.php:1673 +msgid "Repair Cron Events" +msgstr "Repara els esdeveniments cron" + +#: wpvulnerability-admin.php:1408 wpvulnerability-adminms.php:1681 +msgid "Uninstall Data" +msgstr "Dades de desinstal·lació" + +#: wpvulnerability-admin.php:1410 wpvulnerability-adminms.php:1683 +msgid "" +"By default, all plugin data is preserved when WPVulnerability is deleted. " +"Enable the option below only if you want all options, logs, and cached data " +"permanently removed on uninstall." +msgstr "Per defecte, totes les dades de l'extensió es conserven quan s'elimina el WPVulnerability. Activa l'opció següent només si vols que totes les opcions, els registres i les dades en memòria cau s'eliminen permanentment en la desinstal·lació." + +#: wpvulnerability-admin.php:1420 wpvulnerability-adminms.php:1693 +msgid "Delete all plugin data on uninstall" +msgstr "Elimina totes les dades de l'extensió en la desinstal·lació" + +#: wpvulnerability-admin.php:1423 wpvulnerability-adminms.php:1696 +msgid "" +"Default: unchecked (data preserved). Check only if you want a clean removal." +msgstr "Predeterminat: sense marcar (dades conservades). Marca-ho només si vols una eliminació neta." + +#: wpvulnerability-admin.php:1425 wpvulnerability-adminms.php:1698 +msgid "Save preference" +msgstr "Desa la preferència" + +#: wpvulnerability-admin.php:1432 wpvulnerability-adminms.php:1705 +msgid "Reset WPVulnerability" +msgstr "Restablix el WPVulnerability" + +#: wpvulnerability-admin.php:1434 wpvulnerability-adminms.php:1707 +msgid "" +"Delete all WPVulnerability settings, cached data, logs, and scheduled " +"events, then restore defaults and reload data from the API." +msgstr "Elimina totes les configuracions del WPVulnerability, les dades en memòria cau, els registres i els esdeveniments programats; després restaura els valors predeterminats i torna a carregar les dades des de l'API." + +#: wpvulnerability-admin.php:1436 wpvulnerability-adminms.php:1709 +msgid "This action cannot be undone." +msgstr "Esta acció no es pot desfer." + +#: wpvulnerability-admin.php:1438 wpvulnerability-adminms.php:1711 +msgid "" +"Are you sure you want to reset all WPVulnerability data? This action cannot " +"be undone." +msgstr "Estàs segur que vols restablir totes les dades del WPVulnerability? Esta acció no es pot desfer." + +#: wpvulnerability-admin.php:1441 wpvulnerability-adminms.php:1713 +msgid "Reset Plugin" +msgstr "Restablix l'extensió" + +#: wpvulnerability-admin.php:1468 wpvulnerability-adminms.php:1740 +msgid "Vulnerability Database Statistics" +msgstr "Estadístiques de la base de dades de vulnerabilitats" + +#. translators: number of vulnerabilities. +#: wpvulnerability-admin.php:1510 wpvulnerability-adminms.php:1782 +#, php-format +msgid "%s vulnerability" +msgid_plural "%s vulnerabilities" +msgstr[0] "%s vulnerabilitat" +msgstr[1] "%s vulnerabilitats" + +#. translators: number of products. +#: wpvulnerability-admin.php:1520 wpvulnerability-adminms.php:1792 +#, php-format +msgid "(%s product)" +msgid_plural "(%s products)" +msgstr[0] "(%s producte)" +msgstr[1] "(%s productes)" + +#: wpvulnerability-admin.php:1527 wpvulnerability-adminms.php:1799 +msgid "No data" +msgstr "Sense dades" + +#. translators: date of last update. +#: wpvulnerability-admin.php:1544 wpvulnerability-adminms.php:1814 +#, php-format +msgid "Database last updated: %s" +msgstr "Base de dades actualitzada per última vegada: %s" + +#: wpvulnerability-admin.php:1566 wpvulnerability-adminms.php:1836 +msgid "Intelligence Sources" +msgstr "Fonts d'intel·ligència" + +#: wpvulnerability-admin.php:1567 wpvulnerability-adminms.php:1837 +msgid "Number of vulnerabilities contributed by each intelligence source." +msgstr "Nombre de vulnerabilitats aportades per cada font d'intel·ligència." + +#: wpvulnerability-admin.php:1571 wpvulnerability-adminms.php:1841 +msgid "Source" +msgstr "Font" + +#: wpvulnerability-admin.php:1572 wpvulnerability-admin.php:2104 +#: wpvulnerability-adminms.php:1842 wpvulnerability-adminms.php:2261 +msgid "Core" +msgstr "Nucli" + +#: wpvulnerability-admin.php:1603 wpvulnerability-adminms.php:1873 +msgid "Sponsors" +msgstr "Patrocinadors" + +#: wpvulnerability-admin.php:1626 wpvulnerability-adminms.php:1896 +msgid "No sponsor data available." +msgstr "No hi ha dades de patrocinadors disponibles." + +#: wpvulnerability-admin.php:1633 wpvulnerability-adminms.php:1903 +msgid "Contributors" +msgstr "Col·laboradors" + +#: wpvulnerability-admin.php:1656 wpvulnerability-adminms.php:1926 +msgid "No contributor data available." +msgstr "No hi ha dades de col·laboradors disponibles." + +#: wpvulnerability-admin.php:1674 wpvulnerability-adminms.php:432 +msgid "You do not have sufficient permissions to access this page." +msgstr "No tens permisos suficients per accedir a esta pàgina." + +#: wpvulnerability-admin.php:1684 wpvulnerability-adminms.php:441 +msgid "WPVulnerability settings" +msgstr "Configuració del WPVulnerability" + +#: wpvulnerability-admin.php:1801 wpvulnerability-adminms.php:1963 +msgid "Configure and save these settings to receive notifications." +msgstr "Configura i desa estos paràmetres per rebre notificacions." + +#: wpvulnerability-admin.php:1814 wpvulnerability-adminms.php:2071 +msgid "Configure and save these settings to hide vulnerabilities." +msgstr "Configura i desa estos paràmetres per amagar les vulnerabilitats." + +#: wpvulnerability-admin.php:1845 wpvulnerability-adminms.php:1993 +msgid "Default administrator email" +msgstr "Correu electrònic predeterminat de l'administrador" + +#: wpvulnerability-admin.php:1909 wpvulnerability-adminms.php:2057 +msgid "Read more if you want to force the cache time." +msgstr "Llig més si vols forçar el temps de memòria cau." + +#: wpvulnerability-admin.php:1939 wpvulnerability-adminms.php:2099 +msgid "Never" +msgstr "Mai" + +#: wpvulnerability-admin.php:1944 wpvulnerability-adminms.php:2104 +msgid "Daily" +msgstr "Diàriament" + +#: wpvulnerability-admin.php:1949 wpvulnerability-adminms.php:2109 +msgid "Weekly" +msgstr "Setmanalment" + +#: wpvulnerability-admin.php:1953 wpvulnerability-adminms.php:2113 +msgid "Day" +msgstr "Dia" + +#: wpvulnerability-admin.php:1966 wpvulnerability-adminms.php:2126 +msgid "Hour" +msgstr "Hora" + +#: wpvulnerability-admin.php:1968 wpvulnerability-adminms.php:2128 +msgid "Minute" +msgstr "Minut" + +#: wpvulnerability-admin.php:2166 wpvulnerability-adminms.php:2323 +msgid "Read more about how to force the deactivation of an item." +msgstr "Llig més sobre com forçar la desactivació d'un element." + +#: wpvulnerability-admin.php:2292 wpvulnerability-adminms.php:2870 +msgid "" +"Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com" +msgstr "URL de webhook de Slack no vàlida. Ha de ser una URL HTTPS vàlida de hooks.slack.com" + +#: wpvulnerability-admin.php:2315 wpvulnerability-adminms.php:2893 +msgid "" +"Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office." +"com, office365.com, or api.hooks.microsoft.com" +msgstr "URL de webhook de Microsoft Teams no vàlida. Ha de ser una URL HTTPS vàlida de office.com, office365.com o api.hooks.microsoft.com" + +#: wpvulnerability-admin.php:2338 wpvulnerability-adminms.php:2916 +msgid "" +"Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or " +"discordapp.com" +msgstr "URL de webhook de Discord no vàlida. Ha de ser una URL HTTPS vàlida de discord.com o discordapp.com" + +#: wpvulnerability-admin.php:2357 wpvulnerability-adminms.php:2935 +msgid "" +"Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-" +"zyx57W2v1u123ew11" +msgstr "Format del token del bot de Telegram no vàlid. Ha de ser com: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:2493 wpvulnerability-adminms.php:2400 +msgid "All Clear" +msgstr "Tot net" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2503 wpvulnerability-adminms.php:2410 +#, php-format +msgid "%d Critical Issue Found" +msgid_plural "%d Critical Issues Found" +msgstr[0] "%d problema crític trobat" +msgstr[1] "%d problemes crítics trobats" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2508 wpvulnerability-adminms.php:2415 +#, php-format +msgid "%d Issue Found" +msgid_plural "%d Issues Found" +msgstr[0] "%d problema trobat" +msgstr[1] "%d problemes trobats" + +#: wpvulnerability-admin.php:2515 wpvulnerability-adminms.php:2422 +msgid "Never checked" +msgstr "Mai s'ha comprovat" + +#. translators: %d: number of minutes +#: wpvulnerability-admin.php:2523 wpvulnerability-adminms.php:2430 +#, php-format +msgid "%d minute ago" +msgid_plural "%d minutes ago" +msgstr[0] "fa %d minut" +msgstr[1] "fa %d minuts" + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:2527 wpvulnerability-adminms.php:2434 +#, php-format +msgid "%d hour ago" +msgid_plural "%d hours ago" +msgstr[0] "fa %d hora" +msgstr[1] "fa %d hores" + +#. translators: %s: time since last check +#: wpvulnerability-admin.php:2539 wpvulnerability-adminms.php:2446 +#, php-format +msgid "Last checked: %s" +msgstr "Última comprovació: %s" + +#: wpvulnerability-admin.php:2540 wpvulnerability-adminms.php:2447 +msgid "Refresh Now" +msgstr "Actualitza ara" + +#: wpvulnerability-admin.php:2547 wpvulnerability-adminms.php:2454 +msgid "No vulnerabilities detected" +msgstr "No s'han detectat vulnerabilitats" + +#: wpvulnerability-admin.php:2548 wpvulnerability-adminms.php:2455 +msgid "Your site is up to date and secure" +msgstr "El teu lloc està actualitzat i és segur" + +#: wpvulnerability-admin.php:2616 wpvulnerability-adminms.php:2523 +msgid "Server Software" +msgstr "Programari del servidor" + +#: wpvulnerability-admin.php:2829 wpvulnerability-adminms.php:2736 +msgid "Site Health" +msgstr "Salut del lloc" + +#: wpvulnerability-admin.php:2831 wpvulnerability-adminms.php:2738 +#: wpvulnerability-run.php:33 +msgid "Settings" +msgstr "Configuració" + +#: wpvulnerability-admin.php:2846 wpvulnerability-adminms.php:2754 +msgid "WPVulnerability Status" +msgstr "Estat del WPVulnerability" + +#: wpvulnerability-admin.php:2878 wpvulnerability-adminms.php:3052 +msgid "Receive vulnerability notifications" +msgstr "Rep notificacions de vulnerabilitats" + +#: wpvulnerability-admin.php:2886 wpvulnerability-adminms.php:3060 +msgid "Cache expiration time" +msgstr "Temps de caducitat de la memòria cau" + +#: wpvulnerability-admin.php:2895 wpvulnerability-adminms.php:3069 +msgid "How often you want to receive notifications" +msgstr "Amb quina freqüència vols rebre les notificacions" + +#: wpvulnerability-admin.php:2904 wpvulnerability-adminms.php:3078 +msgid "Where do you want to receive notifications?" +msgstr "On vols rebre les notificacions?" + +#: wpvulnerability-admin.php:2913 wpvulnerability-adminms.php:3087 +msgid "Email addresses to notify (separated by commas)" +msgstr "Adreces electròniques a notificar (separades per comes)" + +#: wpvulnerability-admin.php:2922 wpvulnerability-adminms.php:3096 +msgid "Slack webhook URL" +msgstr "URL de webhook de Slack" + +#: wpvulnerability-admin.php:2931 wpvulnerability-adminms.php:3105 +msgid "Teams webhook URL" +msgstr "URL de webhook de Teams" + +#: wpvulnerability-admin.php:2950 wpvulnerability-adminms.php:3126 +msgid "Vulnerabilities to hide" +msgstr "Vulnerabilitats per amagar" + +#: wpvulnerability-admin.php:2958 wpvulnerability-adminms.php:3134 +msgid "What do you want to hide?" +msgstr "Què vols amagar?" + +#: wpvulnerability-admin.php:3008 wpvulnerability-adminms.php:3185 +msgid "Standard (Hybrid Detection)" +msgstr "Estàndard (detecció híbrida)" + +#: wpvulnerability-admin.php:3009 wpvulnerability-adminms.php:3186 +msgid "Strict (Extensions Only)" +msgstr "Estricte (només extensions)" + +#: wpvulnerability-admin.php:3010 wpvulnerability-adminms.php:3187 +msgid "Disabled (No Detection)" +msgstr "Desactivat (sense detecció)" + +#: wpvulnerability-admin.php:3016 wpvulnerability-adminms.php:3193 +msgid "Security Status" +msgstr "Estat de seguretat" + +#: wpvulnerability-admin.php:3020 wpvulnerability-adminms.php:3197 +msgid "Security Mode" +msgstr "Mode de seguretat" + +#: wpvulnerability-admin.php:3025 wpvulnerability-adminms.php:3202 +msgid "Shell Execution" +msgstr "Execució de shell" + +#: wpvulnerability-admin.php:3027 wpvulnerability-admin.php:3475 +#: wpvulnerability-admin.php:3483 wpvulnerability-adminms.php:3204 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Enabled" +msgstr "Activat" + +#: wpvulnerability-admin.php:3034 wpvulnerability-adminms.php:3211 +msgid "Audit Logging" +msgstr "Registre d'auditoria" + +#. translators: %d: number of days +#: wpvulnerability-admin.php:3039 wpvulnerability-adminms.php:3216 +#, php-format +msgid "Enabled (%d days)" +msgstr "Activat (%d dies)" + +#: wpvulnerability-admin.php:3048 wpvulnerability-adminms.php:3225 +msgid "Total Log Entries" +msgstr "Total d'entrades del registre" + +#: wpvulnerability-admin.php:3055 wpvulnerability-adminms.php:3232 +msgid "Last Shell Execution" +msgstr "Última execució de shell" + +#. translators: %s: time ago +#: wpvulnerability-admin.php:3061 wpvulnerability-admin.php:3266 +#: wpvulnerability-adminms.php:3238 wpvulnerability-adminms.php:3441 +#, php-format +msgid "%s ago" +msgstr "fa %s" + +#: wpvulnerability-admin.php:3073 wpvulnerability-adminms.php:3250 +msgid "" +"Configure security settings via wp-config.php constants: " +"WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, " +"WPVULNERABILITY_SHELL_EXEC_WHITELIST." +msgstr "Configura els paràmetres de seguretat per mitjà de constants a wp-config.php: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST." + +#. translators: %s: URL to security documentation +#: wpvulnerability-admin.php:3079 wpvulnerability-adminms.php:3256 +#, php-format +msgid "" +"See security " +"configuration documentation for details." +msgstr "Consulta la documentació de configuració de seguretat per obtindre més detalls." + +#: wpvulnerability-admin.php:3103 wpvulnerability-adminms.php:3280 +msgid "Memcached" +msgstr "Memcached" + +#: wpvulnerability-admin.php:3131 wpvulnerability-adminms.php:3308 +msgid "Imagick Extension" +msgstr "Extensió Imagick" + +#: wpvulnerability-admin.php:3132 wpvulnerability-adminms.php:3309 +msgid "Redis Extension" +msgstr "Extensió Redis" + +#: wpvulnerability-admin.php:3133 wpvulnerability-adminms.php:3310 +msgid "Memcached Extension" +msgstr "Extensió Memcached" + +#: wpvulnerability-admin.php:3134 wpvulnerability-adminms.php:3311 +msgid "Memcache Extension" +msgstr "Extensió Memcache" + +#: wpvulnerability-admin.php:3135 wpvulnerability-adminms.php:3312 +msgid "SQLite3 Extension" +msgstr "Extensió SQLite3" + +#: wpvulnerability-admin.php:3136 wpvulnerability-adminms.php:3313 +msgid "PDO SQLite" +msgstr "PDO SQLite" + +#: wpvulnerability-admin.php:3137 wpvulnerability-adminms.php:3314 +msgid "Shell Command" +msgstr "Ordre de shell" + +#: wpvulnerability-admin.php:3138 wpvulnerability-adminms.php:3315 +msgid "Binary Check" +msgstr "Comprovació binària" + +#: wpvulnerability-admin.php:3139 wpvulnerability-adminms.php:3316 +msgid "Not Detected" +msgstr "No detectat" + +#: wpvulnerability-admin.php:3143 wpvulnerability-adminms.php:3320 +msgid "Software Detection Methods" +msgstr "Mètodes de detecció de programari" + +#: wpvulnerability-admin.php:3144 wpvulnerability-adminms.php:3321 +msgid "" +"Shows which detection method was used for each software component and the " +"reliability score." +msgstr "Mostra quin mètode de detecció s'ha utilitzat per a cada component de programari i la puntuació de fiabilitat." + +#: wpvulnerability-admin.php:3149 wpvulnerability-admin.php:3234 +#: wpvulnerability-admin.php:3558 wpvulnerability-adminms.php:3326 +#: wpvulnerability-adminms.php:3411 wpvulnerability-adminms.php:3752 +msgid "Component" +msgstr "Component" + +#: wpvulnerability-admin.php:3150 wpvulnerability-adminms.php:3327 +msgid "Version" +msgstr "Versió" + +#: wpvulnerability-admin.php:3151 wpvulnerability-adminms.php:3328 +msgid "Detection Method" +msgstr "Mètode de detecció" + +#: wpvulnerability-admin.php:3152 wpvulnerability-adminms.php:3329 +msgid "Reliability" +msgstr "Fiabilitat" + +#: wpvulnerability-admin.php:3164 wpvulnerability-adminms.php:3341 +msgid "Not detected" +msgstr "No detectat" + +#: wpvulnerability-admin.php:3220 wpvulnerability-adminms.php:3397 +msgid "Shell Execution Audit Logs" +msgstr "Registres d'auditoria d'execució de shell" + +#: wpvulnerability-admin.php:3221 wpvulnerability-adminms.php:3398 +msgid "" +"Complete audit trail of shell command executions for security monitoring." +msgstr "Registre complet de les execucions d'ordres de shell per al seguiment de seguretat." + +#: wpvulnerability-admin.php:3226 wpvulnerability-adminms.php:3403 +msgid "No shell execution logs found." +msgstr "No s'han trobat registres d'execució de shell." + +#: wpvulnerability-admin.php:3227 wpvulnerability-adminms.php:3404 +msgid "" +"Logs will appear here when shell commands are executed for software " +"detection." +msgstr "Els registres apareixeran ací quan s'executen ordres de shell per a la detecció de programari." + +#: wpvulnerability-admin.php:3233 wpvulnerability-adminms.php:3410 +msgid "Time" +msgstr "Hora" + +#: wpvulnerability-admin.php:3235 wpvulnerability-adminms.php:3412 +msgid "Command" +msgstr "Ordre" + +#: wpvulnerability-admin.php:3237 wpvulnerability-adminms.php:3414 +msgid "User" +msgstr "Usuari" + +#: wpvulnerability-admin.php:3238 wpvulnerability-adminms.php:3415 +msgid "Output" +msgstr "Eixida" + +#. translators: %d: number of logs shown +#: wpvulnerability-admin.php:3302 wpvulnerability-adminms.php:3477 +#, php-format +msgid "Showing the %d most recent log entries." +msgstr "S'estan mostrant les %d entrades de registre més recents." + +#: wpvulnerability-admin.php:3320 wpvulnerability-adminms.php:3565 +msgid "Invalid nonce." +msgstr "Nonce no vàlid." + +#: wpvulnerability-admin.php:3325 wpvulnerability-adminms.php:3570 +msgid "Insufficient permissions." +msgstr "Permisos insuficients." + +#: wpvulnerability-admin.php:3331 wpvulnerability-adminms.php:3576 +msgid "No component specified." +msgstr "No s'ha especificat cap component." + +#: wpvulnerability-admin.php:3366 wpvulnerability-adminms.php:3524 +msgid "Debug Information" +msgstr "Informació de depuració" + +#: wpvulnerability-admin.php:3368 wpvulnerability-adminms.php:3526 +msgid "This tab is only visible when WP_DEBUG is enabled. Use with caution." +msgstr "Esta pestanya només és visible quan WP_DEBUG està activat. Usa-la amb precaució." + +#: wpvulnerability-admin.php:3429 wpvulnerability-adminms.php:3623 +msgid "System Information" +msgstr "Informació del sistema" + +#: wpvulnerability-admin.php:3433 wpvulnerability-adminms.php:3627 +msgid "WordPress Version" +msgstr "Versió del WordPress" + +#: wpvulnerability-admin.php:3437 wpvulnerability-adminms.php:3631 +msgid "Multisite" +msgstr "Multiseu" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "Yes" +msgstr "Sí" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "No" +msgstr "No" + +#: wpvulnerability-admin.php:3441 wpvulnerability-adminms.php:3635 +msgid "Language" +msgstr "Idioma" + +#: wpvulnerability-admin.php:3445 wpvulnerability-adminms.php:3639 +msgid "PHP Version" +msgstr "Versió del PHP" + +#: wpvulnerability-admin.php:3449 wpvulnerability-adminms.php:3643 +msgid "PHP Extensions" +msgstr "Extensions del PHP" + +#: wpvulnerability-admin.php:3460 wpvulnerability-adminms.php:3654 +msgid "PHP Memory Limit" +msgstr "Límit de memòria del PHP" + +#: wpvulnerability-admin.php:3464 wpvulnerability-adminms.php:3658 +msgid "Database" +msgstr "Base de dades" + +#: wpvulnerability-admin.php:3468 wpvulnerability-adminms.php:3662 +msgid "Web Server" +msgstr "Servidor web" + +#: wpvulnerability-admin.php:3472 wpvulnerability-adminms.php:3666 +msgid "WP_DEBUG" +msgstr "WP_DEBUG" + +#: wpvulnerability-admin.php:3480 wpvulnerability-adminms.php:3674 +msgid "WP_DEBUG_LOG" +msgstr "WP_DEBUG_LOG" + +#: wpvulnerability-admin.php:3490 wpvulnerability-adminms.php:3684 +msgid "Path:" +msgstr "Camí:" + +#. translators: %s: file size +#: wpvulnerability-admin.php:3499 wpvulnerability-adminms.php:3698 +#, php-format +msgid "Size: %s" +msgstr "Mida: %s" + +#: wpvulnerability-admin.php:3510 wpvulnerability-adminms.php:3704 +msgid "View Log File" +msgstr "Visualitza el fitxer de registre" + +#: wpvulnerability-admin.php:3516 wpvulnerability-adminms.php:3710 +msgid "Log file is not web-accessible (outside wp-content)" +msgstr "El fitxer de registre no és accessible per web (fora de wp-content)" + +#: wpvulnerability-admin.php:3522 wpvulnerability-adminms.php:3716 +msgid "Log file does not exist yet" +msgstr "El fitxer de registre encara no existix" + +#: wpvulnerability-admin.php:3530 wpvulnerability-adminms.php:3724 +msgid "Plugin Version" +msgstr "Versió de l'extensió" + +#: wpvulnerability-admin.php:3554 wpvulnerability-adminms.php:3748 +msgid "Component Detection" +msgstr "Detecció de components" + +#: wpvulnerability-admin.php:3560 wpvulnerability-adminms.php:3754 +msgid "Version Detected" +msgstr "Versió detectada" + +#: wpvulnerability-admin.php:3561 wpvulnerability-adminms.php:3755 +msgid "Analyzed" +msgstr "Analitzat" + +#: wpvulnerability-admin.php:3562 wpvulnerability-adminms.php:3756 +msgid "Cache Status" +msgstr "Estat de la memòria cau" + +#: wpvulnerability-admin.php:3622 wpvulnerability-adminms.php:3816 +msgid "Configuration Summary" +msgstr "Resum de la configuració" + +#: wpvulnerability-admin.php:3626 wpvulnerability-adminms.php:3820 +msgid "Cache Duration" +msgstr "Durada de la memòria cau" + +#: wpvulnerability-admin.php:3636 wpvulnerability-adminms.php:3830 +msgid "Log Retention" +msgstr "Retenció del registre" + +#: wpvulnerability-admin.php:3646 wpvulnerability-adminms.php:3840 +msgid "Components Analyzed" +msgstr "Components analitzats" + +#: wpvulnerability-admin.php:3661 wpvulnerability-adminms.php:3855 +msgid "Notification Email" +msgstr "Correu electrònic de notificació" + +#: wpvulnerability-admin.php:3682 wpvulnerability-adminms.php:3876 +msgid "Slack Webhook" +msgstr "Webhook de Slack" + +#: wpvulnerability-admin.php:3692 wpvulnerability-admin.php:3712 +#: wpvulnerability-admin.php:3732 wpvulnerability-admin.php:3752 +#: wpvulnerability-adminms.php:3886 wpvulnerability-adminms.php:3906 +#: wpvulnerability-adminms.php:3926 wpvulnerability-adminms.php:3946 +msgid "Configured & Enabled" +msgstr "Configurat i activat" + +#: wpvulnerability-admin.php:3694 wpvulnerability-admin.php:3714 +#: wpvulnerability-admin.php:3734 wpvulnerability-admin.php:3754 +#: wpvulnerability-adminms.php:3888 wpvulnerability-adminms.php:3908 +#: wpvulnerability-adminms.php:3928 wpvulnerability-adminms.php:3948 +msgid "Configured (Disabled)" +msgstr "Configurat (desactivat)" + +#: wpvulnerability-admin.php:3696 wpvulnerability-admin.php:3716 +#: wpvulnerability-admin.php:3736 wpvulnerability-admin.php:3756 +#: wpvulnerability-adminms.php:3890 wpvulnerability-adminms.php:3910 +#: wpvulnerability-adminms.php:3930 wpvulnerability-adminms.php:3950 +msgid "Not configured" +msgstr "No configurat" + +#: wpvulnerability-admin.php:3703 wpvulnerability-adminms.php:3897 +msgid "Teams Webhook" +msgstr "Webhook de Teams" + +#: wpvulnerability-admin.php:3723 wpvulnerability-adminms.php:3917 +msgid "Discord Webhook" +msgstr "Webhook de Discord" + +#: wpvulnerability-admin.php:3743 wpvulnerability-adminms.php:3937 +msgid "Telegram Bot" +msgstr "Bot de Telegram" + +#: wpvulnerability-admin.php:3788 wpvulnerability-adminms.php:3982 +msgid "Cron Status" +msgstr "Estat del cron" + +#: wpvulnerability-admin.php:3792 wpvulnerability-adminms.php:3986 +msgid "Update Database" +msgstr "Actualitza la base de dades" + +#. translators: %s: date and time +#: wpvulnerability-admin.php:3797 wpvulnerability-admin.php:3810 +#: wpvulnerability-adminms.php:3991 wpvulnerability-adminms.php:4004 +#, php-format +msgid "Next run: %s" +msgstr "Pròxima execució: %s" + +#: wpvulnerability-admin.php:3800 wpvulnerability-admin.php:3813 +#: wpvulnerability-adminms.php:3994 wpvulnerability-adminms.php:4007 +msgid "Not scheduled" +msgstr "No programat" + +#: wpvulnerability-admin.php:3805 wpvulnerability-adminms.php:3999 +msgid "Send Notification" +msgstr "Envia notificació" + +#: wpvulnerability-admin.php:3826 wpvulnerability-adminms.php:4020 +msgid "Run Update Now" +msgstr "Executa l'actualització ara" + +#: wpvulnerability-admin.php:3834 wpvulnerability-adminms.php:4028 +msgid "Run Notification Now" +msgstr "Envia la notificació ara" + +#: wpvulnerability-admin.php:3840 wpvulnerability-adminms.php:4034 +msgid "You do not have permission to run these actions." +msgstr "No tens permís per executar estes accions." + +#: wpvulnerability-admin.php:3859 wpvulnerability-adminms.php:4053 +msgid "API Testing" +msgstr "Proves de l'API" + +#: wpvulnerability-admin.php:3862 wpvulnerability-adminms.php:4056 +msgid "" +"Test API connectivity for each component. Click a button to send a test " +"request." +msgstr "Prova la connectivitat de l'API per a cada component. Fes clic en un botó per enviar una sol·licitud de prova." + +#. translators: %s: component name +#: wpvulnerability-admin.php:3869 wpvulnerability-adminms.php:4063 +#, php-format +msgid "Test %s" +msgstr "Prova %s" + +#: wpvulnerability-admin.php:3884 wpvulnerability-adminms.php:4078 +msgid "Testing..." +msgstr "Provant..." + +#: wpvulnerability-admin.php:3900 wpvulnerability-adminms.php:4094 +msgid "HTTP Code:" +msgstr "Codi HTTP:" + +#: wpvulnerability-admin.php:3901 wpvulnerability-adminms.php:4095 +msgid "Response Time:" +msgstr "Temps de resposta:" + +#: wpvulnerability-admin.php:3903 wpvulnerability-adminms.php:4097 +msgid "Response Preview" +msgstr "Previsualització de la resposta" + +#: wpvulnerability-admin.php:3910 wpvulnerability-admin.php:3914 +#: wpvulnerability-adminms.php:4104 wpvulnerability-adminms.php:4108 +msgid "Test" +msgstr "Prova" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "Error:" +msgstr "Error:" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "AJAX request failed." +msgstr "La sol·licitud AJAX ha fallat." + +#: wpvulnerability-admin.php:3922 wpvulnerability-adminms.php:4116 +msgid "You do not have permission to test API connectivity." +msgstr "No tens permís per provar la connectivitat de l'API." + +#: wpvulnerability-admin.php:3943 wpvulnerability-adminms.php:4137 +msgid "Database Options Viewer" +msgstr "Visualitzador d'opcions de la base de dades" + +#: wpvulnerability-admin.php:3944 wpvulnerability-adminms.php:4138 +msgid "View the raw data stored in WordPress options." +msgstr "Visualitza les dades en brut emmagatzemades a les opcions del WordPress." + +#: wpvulnerability-admin.php:3950 wpvulnerability-adminms.php:4144 +msgid "Select an option..." +msgstr "Selecciona una opció..." + +#: wpvulnerability-admin.php:3969 wpvulnerability-adminms.php:4163 +msgid "Option not found or empty." +msgstr "Opció no trobada o buida." + +#: wpvulnerability-admin.php:3987 wpvulnerability-adminms.php:4182 +msgid "Quick Actions" +msgstr "Accions ràpides" + +#: wpvulnerability-admin.php:3988 wpvulnerability-adminms.php:4183 +msgid "Perform debugging actions. Use with caution." +msgstr "Realitza accions de depuració. Usa-les amb precaució." + +#: wpvulnerability-admin.php:3992 wpvulnerability-adminms.php:4187 +msgid "Are you sure you want to clear all caches?" +msgstr "Estàs segur que vols buidar totes les memòries cau?" + +#: wpvulnerability-admin.php:3996 wpvulnerability-adminms.php:4191 +msgid "Clear All Caches" +msgstr "Buida totes les memòries cau" + +#: wpvulnerability-admin.php:4000 wpvulnerability-adminms.php:4195 +msgid "Are you sure you want to reset signatures?" +msgstr "Estàs segur que vols restablir les signatures?" + +#: wpvulnerability-admin.php:4004 wpvulnerability-adminms.php:4199 +msgid "Reset Signatures" +msgstr "Restablix les signatures" + +#: wpvulnerability-admin.php:4012 wpvulnerability-adminms.php:4207 +msgid "Export Debug Info" +msgstr "Exporta la informació de depuració" + +#: wpvulnerability-admin.php:4018 wpvulnerability-adminms.php:4213 +msgid "You do not have permission to perform these actions." +msgstr "No tens permís per realitzar estes accions." + +#: wpvulnerability-adminms.php:101 wpvulnerability-adminms.php:199 +msgid "Settings saved." +msgstr "S'ha desat la configuració." + +#: wpvulnerability-adminms.php:277 +msgid "WPVulnerability cron events have been repaired across the network." +msgstr "Els esdeveniments cron del WPVulnerability s'han reparat a tota la xarxa." + +#: wpvulnerability-adminms.php:3512 +msgid "You do not have permission to access this page." +msgstr "No tens permís per accedir a esta pàgina." + +#. translators: 1: core version +#: wpvulnerability-core.php:33 +#, php-format +msgid "" +"WordPress %1$s has a known vulnerability that may be affecting your " +"installed version." +msgstr "WordPress %1$s té una vulnerabilitat coneguda que pot afectar la teua versió instal·lada." + +#: wpvulnerability-core.php:115 wpvulnerability-plugins.php:207 +#: wpvulnerability-process.php:335 wpvulnerability-process.php:443 +#: wpvulnerability-process.php:529 wpvulnerability-themes.php:173 +#: wpvulnerability-themes.php:469 +msgid "Actively exploited" +msgstr "Activament explotada" + +#: wpvulnerability-core.php:122 wpvulnerability-plugins.php:214 +#: wpvulnerability-process.php:342 wpvulnerability-process.php:450 +#: wpvulnerability-themes.php:180 wpvulnerability-themes.php:476 +msgid "Public exploit" +msgstr "Explotació pública" + +#: wpvulnerability-core.php:125 wpvulnerability-plugins.php:217 +#: wpvulnerability-process.php:345 wpvulnerability-process.php:453 +#: wpvulnerability-themes.php:183 wpvulnerability-themes.php:479 +msgid "Automatable" +msgstr "Automatitzable" + +#: wpvulnerability-core.php:139 wpvulnerability-plugins.php:245 +#: wpvulnerability-process.php:371 wpvulnerability-process.php:469 +#: wpvulnerability-process.php:544 wpvulnerability-themes.php:211 +#: wpvulnerability-themes.php:503 +msgid "References:" +msgstr "Referències:" + +#: wpvulnerability-debug.php:399 +msgid "Invalid component specified." +msgstr "Component especificat no vàlid." + +#: wpvulnerability-debug.php:423 +msgid "Version not detected for this component." +msgstr "No s'ha detectat la versió d'este component." + +#: wpvulnerability-debug.php:453 +msgid "API request successful." +msgstr "La sol·licitud de l'API ha tingut èxit." + +#. translators: %d: HTTP status code +#: wpvulnerability-debug.php:469 +#, php-format +msgid "API returned HTTP code %d." +msgstr "L'API ha retornat el codi HTTP %d." + +#: wpvulnerability-general.php:355 +msgid "WPVulnerability Logs" +msgstr "Registres de WPVulnerability" + +#: wpvulnerability-general.php:356 +msgid "WPVulnerability Log" +msgstr "Registre de WPVulnerability" + +#: wpvulnerability-general.php:1873 wpvulnerability-general.php:1874 +msgid "Low" +msgstr "Baixa" + +#: wpvulnerability-general.php:1875 wpvulnerability-general.php:1876 +msgid "Medium" +msgstr "Mitjana" + +#: wpvulnerability-general.php:1877 wpvulnerability-general.php:1878 +msgid "High" +msgstr "Alta" + +#: wpvulnerability-general.php:1879 wpvulnerability-general.php:1880 +msgid "Critical" +msgstr "Crítica" + +#: wpvulnerability-general.php:2684 +msgid "WPVulnerability Shell Logs" +msgstr "Registres de shell de WPVulnerability" + +#: wpvulnerability-general.php:2685 +msgid "WPVulnerability Shell Log" +msgstr "Registre de shell de WPVulnerability" + +#: wpvulnerability-notifications.php:30 +msgid "Every week" +msgstr "Cada setmana" + +#: wpvulnerability-notifications.php:57 +msgid "Every day" +msgstr "Cada dia" + +#: wpvulnerability-notifications.php:84 +msgid "Invalid request." +msgstr "Sol·licitud no vàlida." + +#: wpvulnerability-notifications.php:104 +msgid "You have unsubscribed from WPVulnerability notifications." +msgstr "T'has donat de baixa de les notificacions de WPVulnerability." + +#. translators: %1$s the website of Database, %2$s database site name. +#: wpvulnerability-notifications.php:289 +#, php-format +msgid "" +"Learn more about the WordPress Vulnerability Database API at %2$s" +msgstr "Aprén més sobre l'API WordPress Vulnerability Database a %2$s" + +#. translators: %1$s unsubscribe URL. +#: wpvulnerability-notifications.php:300 +#, php-format +msgid "" +"Want to stop receiving these alerts? Unsubscribe or " +"change the email frequency to Never in the WPVulnerability " +"settings." +msgstr "Vols deixar de rebre estos avisos? Dona't de baixa o canvia la freqüència del correu electrònic a Mai a la configuració del WPVulnerability." + +#: wpvulnerability-notifications.php:595 +msgid "No vulnerabilities found" +msgstr "No s'han trobat vulnerabilitats" + +#: wpvulnerability-notifications.php:596 +msgid "This is likely a test. The site does not have vulnerabilities." +msgstr "Açò és probablement una prova. El lloc no té vulnerabilitats." + +#: wpvulnerability-notifications.php:601 +msgid "Core vulnerabilities" +msgstr "Vulnerabilitats al nucli del WordPress" + +#: wpvulnerability-notifications.php:607 +msgid "Plugins vulnerabilities" +msgstr "Vulnerabilitats a extensions" + +#: wpvulnerability-notifications.php:613 +msgid "Themes vulnerabilities" +msgstr "Vulnerabilitats a temes" + +#: wpvulnerability-notifications.php:619 +msgid "PHP vulnerabilities" +msgstr "Vulnerabilitats del PHP" + +#: wpvulnerability-notifications.php:625 +msgid "Apache HTTPD vulnerabilities" +msgstr "Vulnerabilitats d'Apache HTTPD" + +#: wpvulnerability-notifications.php:631 +msgid "Nginx vulnerabilities" +msgstr "Vulnerabilitats d'Nginx" + +#: wpvulnerability-notifications.php:637 +msgid "MariaDB vulnerabilities" +msgstr "Vulnerabilitats de MariaDB" + +#: wpvulnerability-notifications.php:643 +msgid "MySQL vulnerabilities" +msgstr "Vulnerabilitats de MySQL" + +#: wpvulnerability-notifications.php:649 +msgid "ImageMagick vulnerabilities" +msgstr "Vulnerabilitats de ImageMagick" + +#: wpvulnerability-notifications.php:655 +msgid "curl vulnerabilities" +msgstr "Vulnerabilitats de curl" + +#: wpvulnerability-notifications.php:661 +msgid "memcached vulnerabilities" +msgstr "Vulnerabilitats de memcached" + +#: wpvulnerability-notifications.php:667 +msgid "Redis vulnerabilities" +msgstr "Vulnerabilitats de Redis" + +#: wpvulnerability-notifications.php:673 +msgid "SQLite vulnerabilities" +msgstr "Vulnerabilitats de SQLite" + +#. translators: Site name. +#: wpvulnerability-notifications.php:696 +#, php-format +msgid "Vulnerability found: %s" +msgstr "Vulnerabilitat trobada: %s" + +#: wpvulnerability-notifications.php:700 +msgid "Vulnerability found" +msgstr "S'ha trobat una vulnerabilitat" + +#. translators: 1: Plugin name +#. translators: 1: theme name +#: wpvulnerability-plugins.php:116 wpvulnerability-themes.php:82 +#, php-format +msgid "" +"%1$s has a known vulnerability that may be affecting your installed version." +msgstr "%1$s té una vulnerabilitat coneguda que pot afectar la teua versió instal·lada." + +#: wpvulnerability-plugins.php:230 wpvulnerability-process.php:358 +msgid "This plugin is closed. Please replace it with another." +msgstr "Esta extensió està clausurada. Reemplaça-la per una altra." + +#: wpvulnerability-plugins.php:233 wpvulnerability-process.php:361 +msgid "" +"This vulnerability appears to be unpatched. Stay tuned for upcoming plugin " +"updates." +msgstr "Esta vulnerabilitat sembla no estar pegada. Estigues pendent de les pròximes actualitzacions de l'extensió." + +#: wpvulnerability-plugins.php:570 +msgid "It hasn't been updated in over a year." +msgstr "No s'ha actualitzat en més d'un any." + +#: wpvulnerability-plugins.php:576 +msgid "It may no longer be available (closed?)." +msgstr "Potser ja no està disponible (tancat?)." + +#: wpvulnerability-plugins.php:614 wpvulnerability-plugins.php:621 +msgid "Last updated on" +msgstr "Última actualització el" + +#. translators: the number of vulnerabilities. +#: wpvulnerability-plugins.php:764 wpvulnerability-themes.php:704 +#, php-format +msgid "Vulnerabilities (%d)" +msgstr "Vulnerabilitats (%d)" + +#. translators: %s: software name. +#: wpvulnerability-process.php:601 +#, php-format +msgid "%s running" +msgstr "%s corrent" + +#: wpvulnerability-process.php:611 wpvulnerability-process.php:792 +msgid "End of Life" +msgstr "Fi del cicle de vida" + +#: wpvulnerability-process.php:613 wpvulnerability-process.php:618 +msgid "End of life:" +msgstr "Fi del cicle de vida:" + +#: wpvulnerability-process.php:616 +msgid "Supported" +msgstr "Compatible" + +#: wpvulnerability-process.php:652 +msgid "Plugin" +msgstr "Extensió" + +#: wpvulnerability-process.php:721 +msgid "Theme" +msgstr "Tema" + +#. translators: %s: end-of-life date +#: wpvulnerability-process.php:790 +#, php-format +msgid "End of life: %s" +msgstr "Fi del cicle de vida: %s" + +#: wpvulnerability-process.php:795 +msgid "EOL" +msgstr "EOL" + +#: wpvulnerability-run.php:30 +msgid "Network Settings" +msgstr "Paràmetres de xarxa" + +#: wpvulnerability-run.php:731 wpvulnerability-run.php:781 +#: wpvulnerability-run.php:791 wpvulnerability-run.php:836 +msgid "Vulnerabilities" +msgstr "Vulnerabilitats" + +#: wpvulnerability-schedule.php:30 +msgid "Every 6 hours" +msgstr "Cada 6 hores" + +#: wpvulnerability-schedule.php:303 +msgid "Database updates" +msgstr "Actualitzacions de la base de dades" + +#: wpvulnerability-schedule.php:309 +msgid "Log cleanup" +msgstr "Neteja del registre" + +#: wpvulnerability-schedule.php:439 +msgid "" +"Notifications are scheduled, but settings currently disable them. Please " +"review the notifications tab." +msgstr "Les notificacions estan programades, però la configuració actual les desactiva. Revisa la pestanya de notificacions." + +#: wpvulnerability-schedule.php:442 +msgid "This event should not be scheduled for this site." +msgstr "Este esdeveniment no hauria d'estar programat per a este lloc." + +#: wpvulnerability-schedule.php:446 +msgid "Not expected for this site." +msgstr "No esperat per a este lloc." + +#: wpvulnerability-schedule.php:450 +msgid "No instances found." +msgstr "No s'han trobat instàncies." + +#: wpvulnerability-schedule.php:456 +msgid "Scheduled with an unexpected interval." +msgstr "Programat amb un interval inesperat." + +#: wpvulnerability-schedule.php:460 +msgid "Multiple instances detected." +msgstr "S'han detectat diverses instàncies." + +#: wpvulnerability-schedule.php:465 +msgid "Scheduled as expected." +msgstr "Programat com s'esperava." + +#: wpvulnerability-sitehealth.php:22 +msgid "There aren't plugins vulnerabilities" +msgstr "No hi ha vulnerabilitats a les extensions" + +#: wpvulnerability-sitehealth.php:30 +msgid "Shows possible vulnerabilities that exist in installed plugins." +msgstr "Mostra les possibles vulnerabilitats que hi ha a les extensions instal·lades." + +#. translators: Number of plugins vulnerabilities. +#: wpvulnerability-sitehealth.php:43 +#, php-format +msgid "There is %d plugin with vulnerabilities" +msgid_plural "There are %d plugins with vulnerabilities" +msgstr[0] "Hi ha %d extensió amb vulnerabilitats" +msgstr[1] "Hi ha %d extensions amb vulnerabilitats" + +#: wpvulnerability-sitehealth.php:49 +msgid "" +"We've detected potential vulnerabilities in installed plugins. Please check " +"them and keep them updated." +msgstr "Hem detectat potencials vulnerabilitats a les extensions instal·lades. Comprova-les i mantén-les actualitzades." + +#: wpvulnerability-sitehealth.php:57 +msgid "Update plugins" +msgstr "Actualitza les extensions" + +#: wpvulnerability-sitehealth.php:74 +msgid "There aren't themes vulnerabilities" +msgstr "No hi ha vulnerabilitats als temes" + +#: wpvulnerability-sitehealth.php:82 +msgid "Shows possible vulnerabilities that exist in installed themes." +msgstr "Mostra les possibles vulnerabilitats que hi ha als temes instal·lats." + +#. translators: Number of themes vulnerabilities. +#: wpvulnerability-sitehealth.php:95 +#, php-format +msgid "There is %d theme with vulnerabilities" +msgid_plural "There are %d themes with vulnerabilities" +msgstr[0] "Hi ha %d tema amb vulnerabilitats" +msgstr[1] "Hi ha %d temes amb vulnerabilitats" + +#: wpvulnerability-sitehealth.php:101 +msgid "" +"We've detected potential vulnerabilities in installed themes. Please check " +"them and keep them updated." +msgstr "Hem detectat potencials vulnerabilitats als temes instal·lats. Comprova'ls i mantén-los actualitzats." + +#: wpvulnerability-sitehealth.php:109 +msgid "Update themes" +msgstr "Actualitza els temes" + +#: wpvulnerability-sitehealth.php:126 +msgid "There aren't WordPress vulnerabilities" +msgstr "No hi ha vulnerabilitats al WordPress" + +#: wpvulnerability-sitehealth.php:134 +msgid "Shows possible vulnerabilities existing in the WordPress core." +msgstr "Mostra les possibles vulnerabilitats que hi ha al nucli del WordPress." + +#. translators: Number of core vulnerabilities. +#: wpvulnerability-sitehealth.php:147 +#, php-format +msgid "There is %d core vulnerability" +msgid_plural "There are %d core vulnerabilities" +msgstr[0] "Hi ha %d vulnerabilitat al nucli" +msgstr[1] "Hi ha %d vulnerabilitats al nucli" + +#: wpvulnerability-sitehealth.php:153 +msgid "" +"We've detected potential vulnerabilities in this WordPress installation. " +"Please check them and keep your installation updated." +msgstr "Hem detectat potencials vulnerabilitats en esta instal·lació de WordPress. Comprova-les i mantén la teua instal·lació actualitzada." + +#: wpvulnerability-sitehealth.php:161 +msgid "Update WordPress" +msgstr "Actualitza el WordPress" + +#: wpvulnerability-sitehealth.php:180 +msgid "Nginx" +msgstr "Nginx" + +#: wpvulnerability-sitehealth.php:189 +msgid "Invalid software type" +msgstr "Tipus de programari no vàlid" + +#: wpvulnerability-sitehealth.php:192 +msgid "Error" +msgstr "Error" + +#: wpvulnerability-sitehealth.php:197 +msgid "The specified software type is not valid." +msgstr "El tipus de programari especificat no és vàlid." + +#. translators: name of the software. +#: wpvulnerability-sitehealth.php:207 +#, php-format +msgid "There aren't %s vulnerabilities" +msgstr "No hi ha vulnerabilitats a %s" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:216 +#, php-format +msgid "Shows possible vulnerabilities existing in %s." +msgstr "Mostra les possibles vulnerabilitats existents a %s." + +#. translators: Software and number of vulnerabilities. +#: wpvulnerability-sitehealth.php:229 +#, php-format +msgid "There is %1$d %2$s vulnerability" +msgid_plural "There are %1$d %2$s vulnerabilities" +msgstr[0] "Hi ha %1$d vulnerabilitat %2$s" +msgstr[1] "Hi ha %1$d vulnerabilitats %2$s" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:237 +#, php-format +msgid "" +"We've detected potential vulnerabilities in %s. Please check them and keep " +"your installation updated." +msgstr "Hem detectat potencials vulnerabilitats a %s. Comprova-les i mantén la teua instal·lació actualitzada." + +#: wpvulnerability-sitehealth.php:246 +msgid "How to update PHP" +msgstr "Com actualitzar el PHP" + +#: wpvulnerability-sitehealth.php:386 +msgid "WPVulnerability Core" +msgstr "WPVulnerability Nucli" + +#: wpvulnerability-sitehealth.php:394 +msgid "WPVulnerability Themes" +msgstr "WPVulnerability Temes" + +#: wpvulnerability-sitehealth.php:402 +msgid "WPVulnerability Plugins" +msgstr "WPVulnerability Extensions" + +#: wpvulnerability-sitehealth.php:410 +msgid "WPVulnerability PHP" +msgstr "WPVulnerability PHP" + +#: wpvulnerability-sitehealth.php:418 +msgid "WPVulnerability Apache HTTPD" +msgstr "WPVulnerability Apache HTTPD" + +#: wpvulnerability-sitehealth.php:426 +msgid "WPVulnerability Nginx" +msgstr "WPVulnerability Nginx" + +#: wpvulnerability-sitehealth.php:434 +msgid "WPVulnerability MariaDB" +msgstr "WPVulnerability MariaDB" + +#: wpvulnerability-sitehealth.php:442 +msgid "WPVulnerability MySQL" +msgstr "WPVulnerability MySQL" + +#: wpvulnerability-sitehealth.php:450 +msgid "WPVulnerability ImageMagick" +msgstr "WPVulnerability ImageMagick" + +#: wpvulnerability-sitehealth.php:458 +msgid "WPVulnerability curl" +msgstr "WPVulnerability curl" + +#: wpvulnerability-sitehealth.php:466 +msgid "WPVulnerability memcached" +msgstr "WPVulnerability memcached" + +#: wpvulnerability-sitehealth.php:474 +msgid "WPVulnerability redis" +msgstr "WPVulnerability redis" + +#: wpvulnerability-sitehealth.php:482 +msgid "WPVulnerability sqlite" +msgstr "WPVulnerability sqlite" + +#: wpvulnerability-themes.php:196 wpvulnerability-themes.php:492 +msgid "This theme is closed. Please replace it with another." +msgstr "Este tema està clausurat. Reemplaça-lo per un altre." + +#: wpvulnerability-themes.php:199 wpvulnerability-themes.php:495 +msgid "" +"This vulnerability appears to be unpatched. Stay tuned for upcoming theme " +"updates." +msgstr "Esta vulnerabilitat sembla no estar pegada. Estigues pendent de les pròximes actualitzacions del tema." + +#: wpvulnerability-themes.php:391 +msgid "" +"This theme has known vulnerabilities that may be affecting your installed " +"version." +msgstr "Este tema té vulnerabilitats conegudes que poden afectar la teua versió instal·lada." diff --git a/languages/wpvulnerability-ca.l10n.php b/languages/wpvulnerability-ca.l10n.php new file mode 100644 index 0000000..e743b62 --- /dev/null +++ b/languages/wpvulnerability-ca.l10n.php @@ -0,0 +1,2 @@ +NULL,'plural-forms'=>'nplurals=2; plural=n != 1;','language'=>'ca','project-id-version'=>'Plugins - WPVulnerability - Development (trunk)','pot-creation-date'=>'2026-05-27T16:32:22+00:00','po-revision-date'=>'2024-10-29 14:13:49+0000','x-generator'=>'GlotPress/4.0.3','messages'=>['WPVulnerability'=>'WPVulnerability','https://www.wpvulnerability.com/plugin/'=>'https://www.wpvulnerability.com/plugin/','Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API.'=>'Rebeu informació sobre possibles vulnerabilitats al vostre WordPress de l\'API de WordPress Vulnerability Database.','ROBOTSTXT'=>'ROBOTSTXT','https://www.robotstxt.es/'=>'https://www.robotstxt.es/','This command requires a WordPress administrator. Run with --user=.'=>'Aquesta ordre requereix un administrador de WordPress. Executeu amb --user=.','No core vulnerabilities found.'=>'No s\'han trobat vulnerabilitats al nucli.','No plugin vulnerabilities found.'=>'No s\'han trobat vulnerabilitats a extensions.','No theme vulnerabilities found.'=>'No s\'han trobat vulnerabilitats a temes.','No %s vulnerabilities found.'=>'No s\'han trobat vulnerabilitats a %s.','Data from source has been reloaded.'=>'Les dades de la font s\'han tornat a carregar.','You do not have permission to reload data.'=>'No teniu permís per tornar a carregar les dades.','Test email has been sent.'=>'S\'ha enviat un correu electrònic de prova.','Test email has failed. Please, check your email settings.'=>'El correu electrònic de prova ha fallat. Comproveu la vostra configuració del correu electrònic.','You do not have permission to send test emails.'=>'No teniu permís per enviar correus electrònics de prova.','WPVulnerability cron events have been repaired.'=>'Els esdeveniments cron del WPVulnerability s\'han reparat.','You do not have permission to repair cron events.'=>'No teniu permís per reparar els esdeveniments cron.','All logs have been deleted.'=>'Tots els registres s\'han eliminat.','You do not have permission to delete logs.'=>'No teniu permís per eliminar els registres.','Uninstall preference saved.'=>'S\'ha desat la preferència de desinstal·lació.','WPVulnerability has been reset to defaults and reloaded.'=>'El WPVulnerability s\'ha restablert als valors predeterminats i s\'ha tornat a carregar.','You do not have permission to reset WPVulnerability.'=>'No teniu permís per restablir el WPVulnerability.','All caches have been cleared.'=>'Totes les memòries cau s\'han buidat.','You do not have permission to clear caches.'=>'No teniu permís per buidar les memòries cau.','Plugin and theme signatures have been reset.'=>'Les signatures d\'extensions i temes s\'han restablert.','You do not have permission to reset signatures.'=>'No teniu permís per restablir les signatures.','You do not have permission to export debug information.'=>'No teniu permís per exportar la informació de depuració.','Database update has been executed.'=>'L\'actualització de la base de dades s\'ha executat.','You do not have permission to run database updates.'=>'No teniu permís per executar actualitzacions de la base de dades.','Notification has been sent.'=>'S\'ha enviat la notificació.','Notification sending failed.'=>'L\'enviament de la notificació ha fallat.','You do not have permission to send notifications.'=>'No teniu permís per enviar notificacions.','Notifications'=>'Notificacions','Analysis'=>'Anàlisi','Logs'=>'Registres','Security'=>'Seguretat','Tools'=>'Eines','Debug'=>'Depuració','About'=>'Quant a','Notification Settings'=>'Configuració de notificacions','Configure how and when you want to receive vulnerability notifications.'=>'Configureu com i quan voleu rebre notificacions de vulnerabilitats.','Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software.'=>'Manteniu-vos informat sobre les vulnerabilitats de seguretat a la vostra instal·lació de WordPress, extensions, temes i programari del servidor.','Cache Expiration Time'=>'Temps de caducitat de la memòria cau','FORCED'=>'FORÇAT','How long to cache vulnerability data before refreshing from the API.'=>'Durant quant de temps s\'han de guardar les dades de vulnerabilitats a la memòria cau abans d\'actualitzar-les des de l\'API.','%d hour'=>'%d hora' . "\0" . '%d hores','You can force the cache time via wp-config.php constant. Learn more →'=>'Podeu forçar el temps de memòria cau mitjançant una constant a wp-config.php. Més informació →','Notification Frequency'=>'Freqüència de notificacions','Choose how often you want to receive vulnerability notifications.'=>'Trieu amb quina freqüència voleu rebre notificacions de vulnerabilitats.','Never - Disable automatic notifications'=>'Mai - Desactiva les notificacions automàtiques','Daily - Receive notifications every day'=>'Diàriament - Rebre notificacions cada dia','Weekly - Receive notifications once a week'=>'Setmanalment - Rebre notificacions una vegada a la setmana','Day:'=>'Dia:','Monday'=>'Dilluns','Tuesday'=>'Dimarts','Wednesday'=>'Dimecres','Thursday'=>'Dijous','Friday'=>'Divendres','Saturday'=>'Dissabte','Sunday'=>'Diumenge','Time:'=>'Hora:','(24-hour format, server timezone)'=>'(format de 24 hores, zona horària del servidor)','Notification Channels'=>'Canals de notificació','Select where you want to receive notifications.'=>'Seleccioneu on voleu rebre les notificacions.','Email'=>'Correu electrònic','Email Addresses (separated by commas):'=>'Adreces electròniques (separades per comes):','Default:'=>'Predeterminat:','Slack'=>'Slack','Slack Webhook URL:'=>'URL del Webhook de Slack:','Learn how to create a Slack incoming webhook →'=>'Apreneu a crear un webhook entrant de Slack →','Microsoft Teams'=>'Microsoft Teams','Teams Webhook URL:'=>'URL del Webhook de Teams:','Learn how to create a Teams incoming webhook →'=>'Apreneu a crear un webhook entrant de Teams →','Discord'=>'Discord','Discord Webhook URL:'=>'URL del Webhook de Discord:','Learn how to create a Discord webhook →'=>'Apreneu a crear un webhook de Discord →','Telegram'=>'Telegram','Telegram Bot Token:'=>'Token del Bot de Telegram:','Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','Telegram Chat ID:'=>'ID de xat de Telegram:','Learn how to create a Telegram bot and get Chat ID →'=>'Apreneu a crear un bot de Telegram i obtenir l\'ID de xat →','Save Notification Settings'=>'Desa la configuració de notificacions','WordPress Components'=>'Components de WordPress','WordPress Core'=>'Nucli de WordPress','Plugins'=>'Extensions','Themes'=>'Temes','Software & Languages'=>'Programari i llenguatges','PHP'=>'PHP','Web Servers'=>'Servidors web','Apache HTTPD'=>'Apache HTTPD','nginx'=>'nginx','Databases'=>'Bases de dades','MariaDB'=>'MariaDB','MySQL'=>'MySQL','SQLite'=>'SQLite','Additional Tools'=>'Eines addicionals','ImageMagick'=>'ImageMagick','curl'=>'curl','memcached'=>'memcached','Redis'=>'Redis','Component Analysis Settings'=>'Configuració de l\'anàlisi de components','Enable or disable vulnerability analysis for specific components.'=>'Activeu o desactiveu l\'anàlisi de vulnerabilitats per a components específics.','Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red.'=>'Marqueu els components que voleu AMAGAR de les exploracions i informes de vulnerabilitats. Els components no marcats s\'analitzaran activament. Els components amb anàlisi activa es mostren en verd, els components amagats en vermell.','Hidden (forced by constant)'=>'Amagat (forçat per constant)','🔴 Analysis disabled'=>'🔴 Anàlisi desactivada','🟢 Analysis active'=>'🟢 Anàlisi activa','Tip:'=>'Consell:','You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →'=>'Podeu forçar la desactivació de components mitjançant constants a wp-config.php. Més informació sobre la desactivació forçada de comprovacions →','Save Analysis Settings'=>'Desa la configuració d\'anàlisi','« Previous'=>'« Anterior','Next »'=>'Següent »','Log entry not found or has been removed.'=>'L\'entrada del registre no s\'ha trobat o s\'ha eliminat.','Unable to load the requested log entry.'=>'No s\'ha pogut carregar l\'entrada del registre sol·licitada.','Log Configuration'=>'Configuració del registre','Total Logs'=>'Total de registres','Retention Period'=>'Període de retenció','Disabled'=>'Desactivat','%d day'=>'%d dia' . "\0" . '%d dies','Log Retention Period'=>'Període de retenció del registre','None (Disabled)'=>'Cap (desactivat)','This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant.'=>'Aquest valor és imposat per la constant WPVULNERABILITY_LOG_RETENTION_DAYS.','Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted.'=>'Trieu durant quant de temps el WPVulnerability ha de conservar els registres de resposta de l\'API. Els registres antics s\'eliminen automàticament.','Save Configuration'=>'Desa la configuració','Log retention is currently disabled.'=>'La retenció de registres està desactivada actualment.','API responses are not being saved.'=>'Les respostes de l\'API no s\'estan desant.','Log Details'=>'Detalls del registre','Date'=>'Data','API Endpoint'=>'Punt final de l\'API','API Response'=>'Resposta de l\'API','Back to Logs'=>'Torna als registres','No logs available'=>'No hi ha registres disponibles','API response logs will appear here once the vulnerability scanner runs.'=>'Els registres de resposta de l\'API apareixeran aquí quan s\'executi l\'escàner de vulnerabilitats.','API Response Logs'=>'Registres de resposta de l\'API','Show:'=>'Mostra:','Apply'=>'Aplica','Showing %1$s–%2$s of %3$s'=>'Mostrant %1$s–%2$s de %3$s','Actions'=>'Accions','View'=>'Visualitza','Danger Zone'=>'Zona de perill','Permanently delete all API response logs. This action cannot be undone.'=>'Elimina de manera permanent tots els registres de resposta de l\'API. Aquesta acció no es pot desfer.','Are you sure you want to delete all logs? This action cannot be undone.'=>'Esteu segur que voleu eliminar tots els registres? Aquesta acció no es pot desfer.','Delete All Logs'=>'Elimina tots els registres','Reload Data from API'=>'Torna a carregar les dades des de l\'API','Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information.'=>'Torna a carregar tota la informació del Nucli, Extensions, Temes i altres components directament des de l\'API per tenir dades actualitzades. Això buidarà la memòria cau i obtindrà informació actualitzada sobre vulnerabilitats.','Reload Data'=>'Torna a carregar les dades','Test Email Notifications'=>'Prova les notificacions per correu electrònic','Send a test email notification with current vulnerability data to verify your email configuration is working correctly.'=>'Envia una notificació per correu electrònic de prova amb les dades de vulnerabilitats actuals per verificar que la configuració del correu electrònic funciona correctament.','From address (configured via constant):'=>'Adreça del remitent (configurada mitjançant constant):','From address (default):'=>'Adreça del remitent (predeterminada):','Learn how to customize the email sender address →'=>'Apreneu a personalitzar l\'adreça del remitent del correu electrònic →','Send Test Email'=>'Envia correu electrònic de prova','WP-Cron Status'=>'Estat del WP-Cron','View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly.'=>'Visualitzeu i gestioneu els esdeveniments programats del WP-Cron. Compareu les planificacions esperades amb els treballs cron reals per assegurar-vos que les tasques automatitzades s\'executen correctament.','No cron data available.'=>'No hi ha dades cron disponibles.','Hook'=>'Ganxo','Expected'=>'Esperat','Found'=>'Trobat','Next Run'=>'Propera execució','Status'=>'Estat','Not expected'=>'No esperat','None'=>'Cap','OK'=>'D\'acord','⚠️ Unexpected WPVulnerability Events'=>'⚠️ Esdeveniments WPVulnerability inesperats','No interval'=>'Cap interval','Next:'=>'Pròxim:','Repair Cron Events'=>'Repara els esdeveniments cron','Uninstall Data'=>'Dades de desinstal·lació','By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall.'=>'Per defecte, totes les dades de l\'extensió es conserven quan s\'elimina el WPVulnerability. Activeu l\'opció següent només si voleu que totes les opcions, els registres i les dades en memòria cau s\'eliminin permanentment en la desinstal·lació.','Delete all plugin data on uninstall'=>'Elimina totes les dades de l\'extensió en la desinstal·lació','Default: unchecked (data preserved). Check only if you want a clean removal.'=>'Predeterminat: sense marcar (dades conservades). Marqueu-ho només si voleu una eliminació neta.','Save preference'=>'Desa la preferència','Reset WPVulnerability'=>'Restableix el WPVulnerability','Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API.'=>'Elimina totes les configuracions del WPVulnerability, les dades en memòria cau, els registres i els esdeveniments programats; després restaura els valors predeterminats i torna a carregar les dades des de l\'API.','This action cannot be undone.'=>'Aquesta acció no es pot desfer.','Are you sure you want to reset all WPVulnerability data? This action cannot be undone.'=>'Esteu segur que voleu restablir totes les dades del WPVulnerability? Aquesta acció no es pot desfer.','Reset Plugin'=>'Restableix l\'extensió','Vulnerability Database Statistics'=>'Estadístiques de la base de dades de vulnerabilitats','%s vulnerability'=>'%s vulnerabilitat' . "\0" . '%s vulnerabilitats','(%s product)'=>'(%s producte)' . "\0" . '(%s productes)','No data'=>'Sense dades','Database last updated: %s'=>'Base de dades actualitzada per darrera vegada: %s','Intelligence Sources'=>'Fonts d\'intel·ligència','Number of vulnerabilities contributed by each intelligence source.'=>'Nombre de vulnerabilitats aportades per cada font d\'intel·ligència.','Source'=>'Font','Core'=>'Nucli','Sponsors'=>'Patrocinadors','No sponsor data available.'=>'No hi ha dades de patrocinadors disponibles.','Contributors'=>'Col·laboradors','No contributor data available.'=>'No hi ha dades de col·laboradors disponibles.','You do not have sufficient permissions to access this page.'=>'No teniu permisos suficients per accedir a aquesta pàgina.','WPVulnerability settings'=>'Configuració del WPVulnerability','Configure and save these settings to receive notifications.'=>'Configureu i deseu aquests paràmetres per rebre notificacions.','Configure and save these settings to hide vulnerabilities.'=>'Configura i desa aquests paràmetres per amagar vulnerabilitats.','Default administrator email'=>'Correu electrònic predeterminat de l\'administrador','Read more if you want to force the cache time.'=>'Llegiu més si voleu forçar el temps de memòria cau.','Never'=>'Mai','Daily'=>'Diari','Weekly'=>'Setmanal','Day'=>'Dia','Hour'=>'Hora','Minute'=>'Minut','Read more about how to force the deactivation of an item.'=>'Llegiu més sobre com forçar la desactivació d\'un element.','Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com'=>'URL de webhook de Slack no vàlida. Ha de ser una URL HTTPS vàlida de hooks.slack.com','Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com'=>'URL de webhook de Microsoft Teams no vàlida. Ha de ser una URL HTTPS vàlida de office.com, office365.com o api.hooks.microsoft.com','Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com'=>'URL de webhook de Discord no vàlida. Ha de ser una URL HTTPS vàlida de discord.com o discordapp.com','Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Format del token del bot de Telegram no vàlid. Ha de ser com: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','All Clear'=>'Tot net','%d Critical Issue Found'=>'%d problema crític trobat' . "\0" . '%d problemes crítics trobats','%d Issue Found'=>'%d problema trobat' . "\0" . '%d problemes trobats','Never checked'=>'Mai s\'ha comprovat','%d minute ago'=>'fa %d minut' . "\0" . 'fa %d minuts','%d hour ago'=>'fa %d hora' . "\0" . 'fa %d hores','Last checked: %s'=>'Darrera comprovació: %s','Refresh Now'=>'Actualitza ara','No vulnerabilities detected'=>'No s\'han detectat vulnerabilitats','Your site is up to date and secure'=>'El vostre lloc està actualitzat i és segur','Server Software'=>'Programari del servidor','Site Health'=>'Salut del lloc','Settings'=>'Configuració','WPVulnerability Status'=>'Estat del WPVulnerability','Receive vulnerability notifications'=>'Rebre notificacions de vulnerabilitats','Cache expiration time'=>'Temps de caducitat de la memòria cau','How often you want to receive notifications'=>'Amb quina freqüència voleu rebre notificacions','Where do you want to receive notifications?'=>'On voleu rebre les notificacions?','Email addresses to notify (separated by commas)'=>'Adreces electròniques a notificar (separades per comes)','Slack webhook URL'=>'URL de webhook de Slack','Teams webhook URL'=>'URL de webhook de Teams','Vulnerabilities to hide'=>'Vulnerabilitats per amagar','What do you want to hide?'=>'Què vols amagar?','Standard (Hybrid Detection)'=>'Estàndard (detecció híbrida)','Strict (Extensions Only)'=>'Estricte (només extensions)','Disabled (No Detection)'=>'Desactivat (sense detecció)','Security Status'=>'Estat de seguretat','Security Mode'=>'Mode de seguretat','Shell Execution'=>'Execució de shell','Enabled'=>'Activat','Audit Logging'=>'Registre d\'auditoria','Enabled (%d days)'=>'Activat (%d dies)','Total Log Entries'=>'Total d\'entrades del registre','Last Shell Execution'=>'Darrera execució de shell','%s ago'=>'fa %s','Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.'=>'Configureu els paràmetres de seguretat mitjançant constants a wp-config.php: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.','See security configuration documentation for details.'=>'Consulteu la documentació de configuració de seguretat per obtenir més detalls.','Memcached'=>'Memcached','Imagick Extension'=>'Extensió Imagick','Redis Extension'=>'Extensió Redis','Memcached Extension'=>'Extensió Memcached','Memcache Extension'=>'Extensió Memcache','SQLite3 Extension'=>'Extensió SQLite3','PDO SQLite'=>'PDO SQLite','Shell Command'=>'Ordre de shell','Binary Check'=>'Comprovació binària','Not Detected'=>'No detectat','Software Detection Methods'=>'Mètodes de detecció de programari','Shows which detection method was used for each software component and the reliability score.'=>'Mostra quin mètode de detecció s\'ha utilitzat per a cada component de programari i la puntuació de fiabilitat.','Component'=>'Component','Version'=>'Versió','Detection Method'=>'Mètode de detecció','Reliability'=>'Fiabilitat','Not detected'=>'No detectat','Shell Execution Audit Logs'=>'Registres d\'auditoria d\'execució de shell','Complete audit trail of shell command executions for security monitoring.'=>'Registre complet de les execucions d\'ordres de shell per al seguiment de seguretat.','No shell execution logs found.'=>'No s\'han trobat registres d\'execució de shell.','Logs will appear here when shell commands are executed for software detection.'=>'Els registres apareixeran aquí quan s\'executin ordres de shell per a la detecció de programari.','Time'=>'Hora','Command'=>'Ordre','User'=>'Usuari','Output'=>'Sortida','Showing the %d most recent log entries.'=>'S\'estan mostrant les %d entrades de registre més recents.','Invalid nonce.'=>'Nonce no vàlid.','Insufficient permissions.'=>'Permisos insuficients.','No component specified.'=>'No s\'ha especificat cap component.','Debug Information'=>'Informació de depuració','This tab is only visible when WP_DEBUG is enabled. Use with caution.'=>'Aquesta pestanya només és visible quan WP_DEBUG està activat. Useu-la amb precaució.','System Information'=>'Informació del sistema','WordPress Version'=>'Versió del WordPress','Multisite'=>'Multiseu','Yes'=>'Sí','No'=>'No','Language'=>'Idioma','PHP Version'=>'Versió del PHP','PHP Extensions'=>'Extensions del PHP','PHP Memory Limit'=>'Límit de memòria del PHP','Database'=>'Base de dades','Web Server'=>'Servidor web','WP_DEBUG'=>'WP_DEBUG','WP_DEBUG_LOG'=>'WP_DEBUG_LOG','Path:'=>'Camí:','Size: %s'=>'Mida: %s','View Log File'=>'Visualitza el fitxer de registre','Log file is not web-accessible (outside wp-content)'=>'El fitxer de registre no és accessible per web (fora de wp-content)','Log file does not exist yet'=>'El fitxer de registre encara no existeix','Plugin Version'=>'Versió de l\'extensió','Component Detection'=>'Detecció de components','Version Detected'=>'Versió detectada','Analyzed'=>'Analitzat','Cache Status'=>'Estat de la memòria cau','Configuration Summary'=>'Resum de la configuració','Cache Duration'=>'Durada de la memòria cau','Log Retention'=>'Retenció del registre','Components Analyzed'=>'Components analitzats','Notification Email'=>'Correu electrònic de notificació','Slack Webhook'=>'Webhook de Slack','Configured & Enabled'=>'Configurat i activat','Configured (Disabled)'=>'Configurat (desactivat)','Not configured'=>'No configurat','Teams Webhook'=>'Webhook de Teams','Discord Webhook'=>'Webhook de Discord','Telegram Bot'=>'Bot de Telegram','Cron Status'=>'Estat del cron','Update Database'=>'Actualitza la base de dades','Next run: %s'=>'Propera execució: %s','Not scheduled'=>'No programat','Send Notification'=>'Envia notificació','Run Update Now'=>'Executa l\'actualització ara','Run Notification Now'=>'Envia la notificació ara','You do not have permission to run these actions.'=>'No teniu permís per executar aquestes accions.','API Testing'=>'Proves de l\'API','Test API connectivity for each component. Click a button to send a test request.'=>'Proveu la connectivitat de l\'API per a cada component. Feu clic en un botó per enviar una sol·licitud de prova.','Test %s'=>'Prova %s','Testing...'=>'Provant...','HTTP Code:'=>'Codi HTTP:','Response Time:'=>'Temps de resposta:','Response Preview'=>'Previsualització de la resposta','Test'=>'Prova','Error:'=>'Error:','AJAX request failed.'=>'La sol·licitud AJAX ha fallat.','You do not have permission to test API connectivity.'=>'No teniu permís per provar la connectivitat de l\'API.','Database Options Viewer'=>'Visualitzador d\'opcions de la base de dades','View the raw data stored in WordPress options.'=>'Visualitzeu les dades en brut emmagatzemades a les opcions del WordPress.','Select an option...'=>'Seleccioneu una opció...','Option not found or empty.'=>'Opció no trobada o buida.','Quick Actions'=>'Accions ràpides','Perform debugging actions. Use with caution.'=>'Realitzeu accions de depuració. Useu-les amb precaució.','Are you sure you want to clear all caches?'=>'Esteu segur que voleu buidar totes les memòries cau?','Clear All Caches'=>'Buida totes les memòries cau','Are you sure you want to reset signatures?'=>'Esteu segur que voleu restablir les signatures?','Reset Signatures'=>'Restableix les signatures','Export Debug Info'=>'Exporta la informació de depuració','You do not have permission to perform these actions.'=>'No teniu permís per realitzar aquestes accions.','Settings saved.'=>'S\'ha desat la configuració.','WPVulnerability cron events have been repaired across the network.'=>'Els esdeveniments cron del WPVulnerability s\'han reparat a tota la xarxa.','You do not have permission to access this page.'=>'No teniu permís per accedir a aquesta pàgina.','WordPress %1$s has a known vulnerability that may be affecting your installed version.'=>'WordPress %1$s té una vulnerabilitat coneguda que pot afectar la vostra versió instal·lada.','Actively exploited'=>'Activament explotada','Public exploit'=>'Explotació pública','Automatable'=>'Automatitzable','References:'=>'Referències:','Invalid component specified.'=>'Component especificat no vàlid.','Version not detected for this component.'=>'No s\'ha detectat la versió d\'aquest component.','API request successful.'=>'La sol·licitud de l\'API ha tingut èxit.','API returned HTTP code %d.'=>'L\'API ha retornat el codi HTTP %d.','WPVulnerability Logs'=>'Registres de WPVulnerability','WPVulnerability Log'=>'Registre de WPVulnerability','Low'=>'Baixa','Medium'=>'Mitjana','High'=>'Alta','Critical'=>'Crítica','WPVulnerability Shell Logs'=>'Registres de shell de WPVulnerability','WPVulnerability Shell Log'=>'Registre de shell de WPVulnerability','Every week'=>'Cada setmana','Every day'=>'Cada dia','Invalid request.'=>'Sol·licitud no vàlida.','You have unsubscribed from WPVulnerability notifications.'=>'Us heu donat de baixa de les notificacions de WPVulnerability.','Learn more about the WordPress Vulnerability Database API at %2$s'=>'Més informació sobre l\'API de la base de dades de vulnerabilitats del WordPress a %2$s','Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings.'=>'Voleu deixar de rebre aquests avisos? Doneu-vos de baixa o canvieu la freqüència del correu electrònic a Mai a la configuració del WPVulnerability.','No vulnerabilities found'=>'No s\'han trobat vulnerabilitats','This is likely a test. The site does not have vulnerabilities.'=>'Això és probable que sigui una prova. El lloc no té vulnerabilitats.','Core vulnerabilities'=>'Vulnerabilitats al nucli del WordPress','Plugins vulnerabilities'=>'Vulnerabilitats a extensions','Themes vulnerabilities'=>'Vulnerabilitats a temes','PHP vulnerabilities'=>'Vulnerabilitats del PHP','Apache HTTPD vulnerabilities'=>'Vulnerabilitats d\'Apache HTTPD','Nginx vulnerabilities'=>'Vulnerabilitats d\'Nginx','MariaDB vulnerabilities'=>'Vulnerabilitats de MariaDB','MySQL vulnerabilities'=>'Vulnerabilitats de MySQL','ImageMagick vulnerabilities'=>'Vulnerabilitats d\'ImageMagick','curl vulnerabilities'=>'Vulnerabilitats de curl','memcached vulnerabilities'=>'Vulnerabilitats de memcached','Redis vulnerabilities'=>'Vulnerabilitats de Redis','SQLite vulnerabilities'=>'Vulnerabilitats d\'SQLite','Vulnerability found: %s'=>'Vulnerabilitat trobada: %s','Vulnerability found'=>'S\'ha trobat una vulnerabilitat','%1$s has a known vulnerability that may be affecting your installed version.'=>'%1$s té una vulnerabilitat coneguda que pot afectar la vostra versió instal·lada.','This plugin is closed. Please replace it with another.'=>'Aquesta extensió està clausurada. Reemplaceu-la per una altra.','This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates.'=>'Sembla que aquesta vulnerabilitat no està corregida. Estigueu atents a les properes actualitzacions de l\'extensió.','It hasn\'t been updated in over a year.'=>'No s\'ha actualitzat en més d\'un any.','It may no longer be available (closed?).'=>'Potser ja no està disponible (tancat?).','Last updated on'=>'Darrera actualització el','Vulnerabilities (%d)'=>'Vulnerabilitats (%d)','%s running'=>'%s corrent','End of Life'=>'Fi del cicle de vida','End of life:'=>'Fi del cicle de vida:','Supported'=>'Compatible','Plugin'=>'Extensió','Theme'=>'Tema','End of life: %s'=>'Fi del cicle de vida: %s','EOL'=>'EOL','Network Settings'=>'Paràmetres de xarxa','Vulnerabilities'=>'Vulnerabilitats','Every 6 hours'=>'Cada 6 hores','Database updates'=>'Actualitzacions de la base de dades','Log cleanup'=>'Neteja del registre','Notifications are scheduled, but settings currently disable them. Please review the notifications tab.'=>'Les notificacions estan programades, però la configuració actual les desactiva. Reviseu la pestanya de notificacions.','This event should not be scheduled for this site.'=>'Aquest esdeveniment no hauria d\'estar programat per a aquest lloc.','Not expected for this site.'=>'No esperat per a aquest lloc.','No instances found.'=>'No s\'han trobat instàncies.','Scheduled with an unexpected interval.'=>'Programat amb un interval inesperat.','Multiple instances detected.'=>'S\'han detectat diverses instàncies.','Scheduled as expected.'=>'Programat com s\'esperava.','There aren\'t plugins vulnerabilities'=>'No hi ha vulnerabilitats a les extensions','Shows possible vulnerabilities that exist in installed plugins.'=>'Mostra les possibles vulnerabilitats que hi ha a les extensions instal·lades.','There is %d plugin with vulnerabilities'=>'Hi ha %d extensió amb vulnerabilitats' . "\0" . 'Hi ha %d extensions amb vulnerabilitats','We\'ve detected potential vulnerabilities in installed plugins. Please check them and keep them updated.'=>'Hem detectat possibles vulnerabilitats a les extensions instal·lades. Reviseu-les i mantingueu-les actualitzades.','Update plugins'=>'Actualitza les extensions','There aren\'t themes vulnerabilities'=>'No hi ha vulnerabilitats als temes','Shows possible vulnerabilities that exist in installed themes.'=>'Mostra les possibles vulnerabilitats que hi ha als temes instal·lats.','There is %d theme with vulnerabilities'=>'Hi ha %d tema amb vulnerabilitats' . "\0" . 'Hi ha %d temes amb vulnerabilitats','We\'ve detected potential vulnerabilities in installed themes. Please check them and keep them updated.'=>'Hem detectat possibles vulnerabilitats als temes instal·lats. Reviseu-los i mantingueu-los actualitzats.','Update themes'=>'Actualitza els temes','There aren\'t WordPress vulnerabilities'=>'No hi ha vulnerabilitats al WordPress','Shows possible vulnerabilities existing in the WordPress core.'=>'Mostra les possibles vulnerabilitats que hi ha al nucli del WordPress.','There is %d core vulnerability'=>'Hi ha %d vulnerabilitat al nucli' . "\0" . 'Hi ha %d vulnerabilitats al nucli','We\'ve detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated.'=>'Hem detectat possibles vulnerabilitats en aquesta instal·lació de WordPress. Reviseu-les i mantingueu la instal·lació actualitzada.','Update WordPress'=>'Actualitza el WordPress','Nginx'=>'Nginx','Invalid software type'=>'Tipus de programari no vàlid','Error'=>'Error','The specified software type is not valid.'=>'El tipus de programari especificat no és vàlid.','There aren\'t %s vulnerabilities'=>'No hi ha vulnerabilitats a %s','Shows possible vulnerabilities existing in %s.'=>'Mostra les possibles vulnerabilitats existents a %s.','There is %1$d %2$s vulnerability'=>'Hi ha %1$d %2$s vulnerabilitat' . "\0" . 'Hi ha %1$d %2$s vulnerabilitats','We\'ve detected potential vulnerabilities in %s. Please check them and keep your installation updated.'=>'Hem detectat possibles vulnerabilitats a %s. Reviseu-les i mantingueu la instal·lació actualitzada.','How to update PHP'=>'Com actualitzar el PHP','WPVulnerability Core'=>'WPVulnerability Nucli','WPVulnerability Themes'=>'WPVulnerability Temes','WPVulnerability Plugins'=>'WPVulnerability Extensions','WPVulnerability PHP'=>'WPVulnerability PHP','WPVulnerability Apache HTTPD'=>'WPVulnerability Apache HTTPD','WPVulnerability Nginx'=>'WPVulnerability Nginx','WPVulnerability MariaDB'=>'WPVulnerability MariaDB','WPVulnerability MySQL'=>'WPVulnerability MySQL','WPVulnerability ImageMagick'=>'WPVulnerability ImageMagick','WPVulnerability curl'=>'WPVulnerability curl','WPVulnerability memcached'=>'WPVulnerability memcached','WPVulnerability redis'=>'WPVulnerability Redis','WPVulnerability sqlite'=>'WPVulnerability SQLite','This theme is closed. Please replace it with another.'=>'Aquest tema està clausurat. Reemplaceu-lo per un altre.','This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates.'=>'Sembla que aquesta vulnerabilitat no està corregida. Estigueu atents a les properes actualitzacions del tema.','This theme has known vulnerabilities that may be affecting your installed version.'=>'Aquest tema té vulnerabilitats conegudes que poden afectar la vostra versió instal·lada.']]; \ No newline at end of file diff --git a/languages/wpvulnerability-ca.mo b/languages/wpvulnerability-ca.mo new file mode 100644 index 0000000000000000000000000000000000000000..aa13175b225ea6c4987ba57811bec8d56a4f56d8 GIT binary patch literal 41182 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." +msgstr "Aquesta ordre requereix un administrador de WordPress. Executeu amb --user=." + +#: class-wpvulnerability-cli.php:156 +msgid "No core vulnerabilities found." +msgstr "No s'han trobat vulnerabilitats al nucli." + +#: class-wpvulnerability-cli.php:275 +msgid "No plugin vulnerabilities found." +msgstr "No s'han trobat vulnerabilitats a extensions." + +#: class-wpvulnerability-cli.php:393 +msgid "No theme vulnerabilities found." +msgstr "No s'han trobat vulnerabilitats a temes." + +#. translators: %s is the software name (php, apache, nginx, etc.) +#: class-wpvulnerability-cli.php:490 +#, php-format +msgid "No %s vulnerabilities found." +msgstr "No s'han trobat vulnerabilitats a %s." + +#: wpvulnerability-admin.php:63 wpvulnerability-adminms.php:227 +msgid "Data from source has been reloaded." +msgstr "Les dades de la font s'han tornat a carregar." + +#: wpvulnerability-admin.php:65 wpvulnerability-adminms.php:229 +msgid "You do not have permission to reload data." +msgstr "No teniu permís per tornar a carregar les dades." + +#: wpvulnerability-admin.php:93 wpvulnerability-adminms.php:255 +msgid "Test email has been sent." +msgstr "S'ha enviat un correu electrònic de prova." + +#: wpvulnerability-admin.php:95 wpvulnerability-adminms.php:259 +msgid "Test email has failed. Please, check your email settings." +msgstr "" +"El correu electrònic de prova ha fallat. Comproveu la vostra configuració " +"del correu electrònic." + +#: wpvulnerability-admin.php:98 wpvulnerability-adminms.php:263 +msgid "You do not have permission to send test emails." +msgstr "No teniu permís per enviar correus electrònics de prova." + +#: wpvulnerability-admin.php:113 +msgid "WPVulnerability cron events have been repaired." +msgstr "Els esdeveniments cron del WPVulnerability s'han reparat." + +#: wpvulnerability-admin.php:115 wpvulnerability-adminms.php:279 +msgid "You do not have permission to repair cron events." +msgstr "No teniu permís per reparar els esdeveniments cron." + +#: wpvulnerability-admin.php:127 wpvulnerability-adminms.php:291 +msgid "All logs have been deleted." +msgstr "Tots els registres s'han eliminat." + +#: wpvulnerability-admin.php:129 wpvulnerability-adminms.php:293 +msgid "You do not have permission to delete logs." +msgstr "No teniu permís per eliminar els registres." + +#: wpvulnerability-admin.php:146 +msgid "Uninstall preference saved." +msgstr "S'ha desat la preferència de desinstal·lació." + +#: wpvulnerability-admin.php:153 wpvulnerability-adminms.php:316 +msgid "WPVulnerability has been reset to defaults and reloaded." +msgstr "El WPVulnerability s'ha restablert als valors predeterminats i s'ha tornat a carregar." + +#: wpvulnerability-admin.php:155 wpvulnerability-adminms.php:318 +msgid "You do not have permission to reset WPVulnerability." +msgstr "No teniu permís per restablir el WPVulnerability." + +#: wpvulnerability-admin.php:170 wpvulnerability-adminms.php:333 +msgid "All caches have been cleared." +msgstr "Totes les memòries cau s'han buidat." + +#: wpvulnerability-admin.php:172 wpvulnerability-adminms.php:335 +msgid "You do not have permission to clear caches." +msgstr "No teniu permís per buidar les memòries cau." + +#: wpvulnerability-admin.php:187 wpvulnerability-adminms.php:350 +msgid "Plugin and theme signatures have been reset." +msgstr "Les signatures d'extensions i temes s'han restablert." + +#: wpvulnerability-admin.php:189 wpvulnerability-adminms.php:352 +msgid "You do not have permission to reset signatures." +msgstr "No teniu permís per restablir les signatures." + +#: wpvulnerability-admin.php:212 wpvulnerability-adminms.php:375 +msgid "You do not have permission to export debug information." +msgstr "No teniu permís per exportar la informació de depuració." + +#: wpvulnerability-admin.php:224 wpvulnerability-adminms.php:387 +msgid "Database update has been executed." +msgstr "L'actualització de la base de dades s'ha executat." + +#: wpvulnerability-admin.php:226 wpvulnerability-adminms.php:389 +msgid "You do not have permission to run database updates." +msgstr "No teniu permís per executar actualitzacions de la base de dades." + +#: wpvulnerability-admin.php:247 wpvulnerability-adminms.php:410 +msgid "Notification has been sent." +msgstr "S'ha enviat la notificació." + +#: wpvulnerability-admin.php:249 wpvulnerability-adminms.php:412 +msgid "Notification sending failed." +msgstr "L'enviament de la notificació ha fallat." + +#: wpvulnerability-admin.php:252 wpvulnerability-adminms.php:415 +msgid "You do not have permission to send notifications." +msgstr "No teniu permís per enviar notificacions." + +#: wpvulnerability-admin.php:266 wpvulnerability-adminms.php:539 +#: wpvulnerability-schedule.php:323 +msgid "Notifications" +msgstr "Notificacions" + +#: wpvulnerability-admin.php:269 wpvulnerability-adminms.php:542 +msgid "Analysis" +msgstr "Anàlisi" + +#: wpvulnerability-admin.php:272 wpvulnerability-adminms.php:545 +msgid "Logs" +msgstr "Registres" + +#: wpvulnerability-admin.php:275 wpvulnerability-adminms.php:548 +#: wpvulnerability-sitehealth.php:25 wpvulnerability-sitehealth.php:77 +#: wpvulnerability-sitehealth.php:129 wpvulnerability-sitehealth.php:210 +msgid "Security" +msgstr "Seguretat" + +#: wpvulnerability-admin.php:278 wpvulnerability-adminms.php:551 +msgid "Tools" +msgstr "Eines" + +#: wpvulnerability-admin.php:285 wpvulnerability-adminms.php:558 +msgid "Debug" +msgstr "Depuració" + +#: wpvulnerability-admin.php:290 wpvulnerability-adminms.php:563 +msgid "About" +msgstr "Quant a" + +#: wpvulnerability-admin.php:427 wpvulnerability-adminms.php:700 +msgid "Notification Settings" +msgstr "Configuració de notificacions" + +#: wpvulnerability-admin.php:430 wpvulnerability-adminms.php:703 +msgid "Configure how and when you want to receive vulnerability notifications." +msgstr "Configureu com i quan voleu rebre notificacions de vulnerabilitats." + +#: wpvulnerability-admin.php:431 wpvulnerability-adminms.php:704 +msgid "" +"Stay informed about security vulnerabilities in your WordPress installation, " +"plugins, themes, and server software." +msgstr "Manteniu-vos informat sobre les vulnerabilitats de seguretat a la vostra instal·lació de WordPress, extensions, temes i programari del servidor." + +#: wpvulnerability-admin.php:438 wpvulnerability-adminms.php:711 +msgid "Cache Expiration Time" +msgstr "Temps de caducitat de la memòria cau" + +#: wpvulnerability-admin.php:440 wpvulnerability-admin.php:814 +#: wpvulnerability-adminms.php:713 wpvulnerability-adminms.php:1087 +msgid "FORCED" +msgstr "FORÇAT" + +#: wpvulnerability-admin.php:444 wpvulnerability-adminms.php:717 +msgid "How long to cache vulnerability data before refreshing from the API." +msgstr "Durant quant de temps s'han de guardar les dades de vulnerabilitats a la memòria cau abans d'actualitzar-les des de l'API." + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:453 wpvulnerability-admin.php:1891 +#: wpvulnerability-admin.php:3631 wpvulnerability-adminms.php:726 +#: wpvulnerability-adminms.php:2039 wpvulnerability-adminms.php:3825 +#, php-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d hora" +msgstr[1] "%d hores" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:469 wpvulnerability-adminms.php:742 +#, php-format +msgid "" +"You can force the cache time via wp-config.php constant. Learn more →" +msgstr "Podeu forçar el temps de memòria cau mitjançant una constant a wp-config.php. Més informació →" + +#: wpvulnerability-admin.php:481 wpvulnerability-admin.php:3665 +#: wpvulnerability-adminms.php:754 wpvulnerability-adminms.php:3859 +msgid "Notification Frequency" +msgstr "Freqüència de notificacions" + +#: wpvulnerability-admin.php:484 wpvulnerability-adminms.php:757 +msgid "Choose how often you want to receive vulnerability notifications." +msgstr "Trieu amb quina freqüència voleu rebre notificacions de vulnerabilitats." + +#: wpvulnerability-admin.php:489 wpvulnerability-adminms.php:762 +msgid "Never - Disable automatic notifications" +msgstr "Mai - Desactiva les notificacions automàtiques" + +#: wpvulnerability-admin.php:493 wpvulnerability-adminms.php:766 +msgid "Daily - Receive notifications every day" +msgstr "Diàriament - Rebre notificacions cada dia" + +#: wpvulnerability-admin.php:497 wpvulnerability-adminms.php:770 +msgid "Weekly - Receive notifications once a week" +msgstr "Setmanalment - Rebre notificacions una vegada a la setmana" + +#: wpvulnerability-admin.php:503 wpvulnerability-adminms.php:776 +msgid "Day:" +msgstr "Dia:" + +#: wpvulnerability-admin.php:505 wpvulnerability-admin.php:1955 +#: wpvulnerability-adminms.php:778 wpvulnerability-adminms.php:2115 +msgid "Monday" +msgstr "Dilluns" + +#: wpvulnerability-admin.php:506 wpvulnerability-admin.php:1956 +#: wpvulnerability-adminms.php:779 wpvulnerability-adminms.php:2116 +msgid "Tuesday" +msgstr "Dimarts" + +#: wpvulnerability-admin.php:507 wpvulnerability-admin.php:1957 +#: wpvulnerability-adminms.php:780 wpvulnerability-adminms.php:2117 +msgid "Wednesday" +msgstr "Dimecres" + +#: wpvulnerability-admin.php:508 wpvulnerability-admin.php:1958 +#: wpvulnerability-adminms.php:781 wpvulnerability-adminms.php:2118 +msgid "Thursday" +msgstr "Dijous" + +#: wpvulnerability-admin.php:509 wpvulnerability-admin.php:1959 +#: wpvulnerability-adminms.php:782 wpvulnerability-adminms.php:2119 +msgid "Friday" +msgstr "Divendres" + +#: wpvulnerability-admin.php:510 wpvulnerability-admin.php:1960 +#: wpvulnerability-adminms.php:783 wpvulnerability-adminms.php:2120 +msgid "Saturday" +msgstr "Dissabte" + +#: wpvulnerability-admin.php:511 wpvulnerability-admin.php:1961 +#: wpvulnerability-adminms.php:784 wpvulnerability-adminms.php:2121 +msgid "Sunday" +msgstr "Diumenge" + +#: wpvulnerability-admin.php:515 wpvulnerability-adminms.php:788 +msgid "Time:" +msgstr "Hora:" + +#: wpvulnerability-admin.php:519 wpvulnerability-adminms.php:792 +msgid "(24-hour format, server timezone)" +msgstr "(format de 24 hores, zona horària del servidor)" + +#: wpvulnerability-admin.php:528 wpvulnerability-adminms.php:801 +msgid "Notification Channels" +msgstr "Canals de notificació" + +#: wpvulnerability-admin.php:531 wpvulnerability-adminms.php:804 +msgid "Select where you want to receive notifications." +msgstr "Seleccioneu on voleu rebre les notificacions." + +#: wpvulnerability-admin.php:536 wpvulnerability-admin.php:2011 +#: wpvulnerability-adminms.php:809 wpvulnerability-adminms.php:2169 +msgid "Email" +msgstr "Correu electrònic" + +#: wpvulnerability-admin.php:539 wpvulnerability-adminms.php:812 +msgid "Email Addresses (separated by commas):" +msgstr "Adreces electròniques (separades per comes):" + +#: wpvulnerability-admin.php:541 wpvulnerability-adminms.php:814 +msgid "Default:" +msgstr "Predeterminat:" + +#: wpvulnerability-admin.php:546 wpvulnerability-admin.php:2016 +#: wpvulnerability-adminms.php:819 wpvulnerability-adminms.php:2174 +msgid "Slack" +msgstr "Slack" + +#: wpvulnerability-admin.php:549 wpvulnerability-adminms.php:822 +msgid "Slack Webhook URL:" +msgstr "URL del Webhook de Slack:" + +#. translators: %s: Slack documentation URL +#: wpvulnerability-admin.php:555 wpvulnerability-adminms.php:828 +#, php-format +msgid "" +"Learn how to " +"create a Slack incoming webhook →" +msgstr "Apreneu a crear un webhook entrant de Slack →" + +#: wpvulnerability-admin.php:564 wpvulnerability-admin.php:2021 +#: wpvulnerability-adminms.php:837 wpvulnerability-adminms.php:2179 +msgid "Microsoft Teams" +msgstr "Microsoft Teams" + +#: wpvulnerability-admin.php:567 wpvulnerability-adminms.php:840 +msgid "Teams Webhook URL:" +msgstr "URL del Webhook de Teams:" + +#. translators: %s: Microsoft Teams documentation URL +#: wpvulnerability-admin.php:573 wpvulnerability-adminms.php:846 +#, php-format +msgid "" +"Learn how to " +"create a Teams incoming webhook →" +msgstr "Apreneu a crear un webhook entrant de Teams →" + +#: wpvulnerability-admin.php:582 wpvulnerability-adminms.php:855 +msgid "Discord" +msgstr "Discord" + +#: wpvulnerability-admin.php:585 wpvulnerability-adminms.php:858 +msgid "Discord Webhook URL:" +msgstr "URL del Webhook de Discord:" + +#. translators: %s: Discord documentation URL +#: wpvulnerability-admin.php:591 wpvulnerability-adminms.php:864 +#, php-format +msgid "" +"Learn how to " +"create a Discord webhook →" +msgstr "Apreneu a crear un webhook de Discord →" + +#: wpvulnerability-admin.php:600 wpvulnerability-adminms.php:873 +msgid "Telegram" +msgstr "Telegram" + +#: wpvulnerability-admin.php:603 wpvulnerability-adminms.php:876 +msgid "Telegram Bot Token:" +msgstr "Token del Bot de Telegram:" + +#: wpvulnerability-admin.php:605 wpvulnerability-adminms.php:878 +msgid "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:607 wpvulnerability-adminms.php:880 +msgid "Telegram Chat ID:" +msgstr "ID de xat de Telegram:" + +#. translators: %s: Telegram documentation URL +#: wpvulnerability-admin.php:613 wpvulnerability-adminms.php:886 +#, php-format +msgid "" +"Learn how to " +"create a Telegram bot and get Chat ID →" +msgstr "Apreneu a crear un bot de Telegram i obtenir l'ID de xat →" + +#: wpvulnerability-admin.php:623 wpvulnerability-adminms.php:896 +msgid "Save Notification Settings" +msgstr "Desa la configuració de notificacions" + +#: wpvulnerability-admin.php:700 wpvulnerability-admin.php:2552 +#: wpvulnerability-adminms.php:973 wpvulnerability-adminms.php:2459 +msgid "WordPress Components" +msgstr "Components de WordPress" + +#: wpvulnerability-admin.php:703 wpvulnerability-admin.php:2560 +#: wpvulnerability-adminms.php:976 wpvulnerability-adminms.php:2467 +msgid "WordPress Core" +msgstr "Nucli de WordPress" + +#: wpvulnerability-admin.php:707 wpvulnerability-admin.php:1472 +#: wpvulnerability-admin.php:1573 wpvulnerability-admin.php:2109 +#: wpvulnerability-admin.php:2571 wpvulnerability-adminms.php:980 +#: wpvulnerability-adminms.php:1744 wpvulnerability-adminms.php:1843 +#: wpvulnerability-adminms.php:2266 wpvulnerability-adminms.php:2478 +msgid "Plugins" +msgstr "Extensions" + +#: wpvulnerability-admin.php:711 wpvulnerability-admin.php:1473 +#: wpvulnerability-admin.php:1574 wpvulnerability-admin.php:2114 +#: wpvulnerability-admin.php:2587 wpvulnerability-adminms.php:984 +#: wpvulnerability-adminms.php:1745 wpvulnerability-adminms.php:1844 +#: wpvulnerability-adminms.php:2271 wpvulnerability-adminms.php:2494 +msgid "Themes" +msgstr "Temes" + +#: wpvulnerability-admin.php:717 wpvulnerability-adminms.php:990 +msgid "Software & Languages" +msgstr "Programari i llenguatges" + +#: wpvulnerability-admin.php:720 wpvulnerability-admin.php:1474 +#: wpvulnerability-admin.php:2119 wpvulnerability-adminms.php:993 +#: wpvulnerability-adminms.php:1746 wpvulnerability-adminms.php:2276 +#: wpvulnerability-sitehealth.php:178 +msgid "PHP" +msgstr "PHP" + +#: wpvulnerability-admin.php:726 wpvulnerability-adminms.php:999 +msgid "Web Servers" +msgstr "Servidors web" + +#: wpvulnerability-admin.php:729 wpvulnerability-admin.php:1475 +#: wpvulnerability-admin.php:2124 wpvulnerability-adminms.php:1002 +#: wpvulnerability-adminms.php:1747 wpvulnerability-adminms.php:2281 +#: wpvulnerability-sitehealth.php:179 +msgid "Apache HTTPD" +msgstr "Apache HTTPD" + +#: wpvulnerability-admin.php:733 wpvulnerability-admin.php:1476 +#: wpvulnerability-admin.php:2129 wpvulnerability-adminms.php:1006 +#: wpvulnerability-adminms.php:1748 wpvulnerability-adminms.php:2286 +msgid "nginx" +msgstr "nginx" + +#: wpvulnerability-admin.php:739 wpvulnerability-adminms.php:1012 +msgid "Databases" +msgstr "Bases de dades" + +#: wpvulnerability-admin.php:742 wpvulnerability-admin.php:1477 +#: wpvulnerability-admin.php:2134 wpvulnerability-adminms.php:1015 +#: wpvulnerability-adminms.php:1749 wpvulnerability-adminms.php:2291 +#: wpvulnerability-sitehealth.php:181 +msgid "MariaDB" +msgstr "MariaDB" + +#: wpvulnerability-admin.php:746 wpvulnerability-admin.php:1478 +#: wpvulnerability-admin.php:2139 wpvulnerability-adminms.php:1019 +#: wpvulnerability-adminms.php:1750 wpvulnerability-adminms.php:2296 +#: wpvulnerability-sitehealth.php:182 +msgid "MySQL" +msgstr "MySQL" + +#: wpvulnerability-admin.php:750 wpvulnerability-admin.php:1483 +#: wpvulnerability-admin.php:2164 wpvulnerability-admin.php:3104 +#: wpvulnerability-adminms.php:1023 wpvulnerability-adminms.php:1755 +#: wpvulnerability-adminms.php:2321 wpvulnerability-adminms.php:3281 +msgid "SQLite" +msgstr "SQLite" + +#: wpvulnerability-admin.php:756 wpvulnerability-adminms.php:1029 +msgid "Additional Tools" +msgstr "Eines addicionals" + +#: wpvulnerability-admin.php:759 wpvulnerability-admin.php:1479 +#: wpvulnerability-admin.php:2144 wpvulnerability-admin.php:3101 +#: wpvulnerability-adminms.php:1032 wpvulnerability-adminms.php:1751 +#: wpvulnerability-adminms.php:2301 wpvulnerability-adminms.php:3278 +#: wpvulnerability-sitehealth.php:183 +msgid "ImageMagick" +msgstr "ImageMagick" + +#: wpvulnerability-admin.php:763 wpvulnerability-admin.php:1480 +#: wpvulnerability-admin.php:2149 wpvulnerability-adminms.php:1036 +#: wpvulnerability-adminms.php:1752 wpvulnerability-adminms.php:2306 +#: wpvulnerability-sitehealth.php:184 +msgid "curl" +msgstr "curl" + +#: wpvulnerability-admin.php:767 wpvulnerability-admin.php:1481 +#: wpvulnerability-admin.php:2154 wpvulnerability-adminms.php:1040 +#: wpvulnerability-adminms.php:1753 wpvulnerability-adminms.php:2311 +msgid "memcached" +msgstr "memcached" + +#: wpvulnerability-admin.php:771 wpvulnerability-admin.php:1482 +#: wpvulnerability-admin.php:2159 wpvulnerability-admin.php:3102 +#: wpvulnerability-adminms.php:1044 wpvulnerability-adminms.php:1754 +#: wpvulnerability-adminms.php:2316 wpvulnerability-adminms.php:3279 +msgid "Redis" +msgstr "Redis" + +#: wpvulnerability-admin.php:784 wpvulnerability-adminms.php:1057 +msgid "Component Analysis Settings" +msgstr "Configuració de l'anàlisi de components" + +#: wpvulnerability-admin.php:787 wpvulnerability-adminms.php:1060 +msgid "Enable or disable vulnerability analysis for specific components." +msgstr "Activeu o desactiveu l'anàlisi de vulnerabilitats per a components específics." + +#: wpvulnerability-admin.php:788 wpvulnerability-adminms.php:1061 +msgid "" +"Check the components you want to HIDE from vulnerability scans and reports. " +"Unchecked components will be actively analyzed. Components with active " +"analysis are shown in green, hidden components in red." +msgstr "Marqueu els components que voleu AMAGAR de les exploracions i informes de vulnerabilitats. Els components no marcats s'analitzaran activament. Els components amb anàlisi activa es mostren en verd, els components amagats en vermell." + +#: wpvulnerability-admin.php:820 wpvulnerability-adminms.php:1093 +msgid "Hidden (forced by constant)" +msgstr "Amagat (forçat per constant)" + +#: wpvulnerability-admin.php:823 wpvulnerability-adminms.php:1096 +msgid "🔴 Analysis disabled" +msgstr "🔴 Anàlisi desactivada" + +#: wpvulnerability-admin.php:826 wpvulnerability-adminms.php:1099 +msgid "🟢 Analysis active" +msgstr "🟢 Anàlisi activa" + +#: wpvulnerability-admin.php:848 wpvulnerability-adminms.php:1121 +msgid "Tip:" +msgstr "Consell:" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:852 wpvulnerability-adminms.php:1125 +#, php-format +msgid "" +"You can force-disable components via wp-config.php constants. Learn more about force-hiding " +"checks →" +msgstr "Podeu forçar la desactivació de components mitjançant constants a wp-config.php. Més informació sobre la desactivació forçada de comprovacions →" + +#: wpvulnerability-admin.php:860 wpvulnerability-adminms.php:1133 +msgid "Save Analysis Settings" +msgstr "Desa la configuració d'anàlisi" + +#: wpvulnerability-admin.php:920 wpvulnerability-adminms.php:1193 +msgid "« Previous" +msgstr "« Anterior" + +#: wpvulnerability-admin.php:921 wpvulnerability-adminms.php:1194 +msgid "Next »" +msgstr "Següent »" + +#: wpvulnerability-admin.php:932 wpvulnerability-adminms.php:1205 +msgid "Log entry not found or has been removed." +msgstr "L'entrada del registre no s'ha trobat o s'ha eliminat." + +#: wpvulnerability-admin.php:935 wpvulnerability-adminms.php:1208 +msgid "Unable to load the requested log entry." +msgstr "No s'ha pogut carregar l'entrada del registre sol·licitada." + +#: wpvulnerability-admin.php:945 wpvulnerability-adminms.php:1218 +msgid "Log Configuration" +msgstr "Configuració del registre" + +#: wpvulnerability-admin.php:950 wpvulnerability-adminms.php:1223 +msgid "Total Logs" +msgstr "Total de registres" + +#: wpvulnerability-admin.php:954 wpvulnerability-adminms.php:1227 +msgid "Retention Period" +msgstr "Període de retenció" + +#: wpvulnerability-admin.php:959 wpvulnerability-admin.php:1301 +#: wpvulnerability-admin.php:3029 wpvulnerability-admin.php:3043 +#: wpvulnerability-admin.php:3475 wpvulnerability-admin.php:3483 +#: wpvulnerability-adminms.php:1232 wpvulnerability-adminms.php:1574 +#: wpvulnerability-adminms.php:3206 wpvulnerability-adminms.php:3220 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Disabled" +msgstr "Desactivat" + +#. translators: %d: Number of days. +#. translators: %d: number of days +#: wpvulnerability-admin.php:962 wpvulnerability-admin.php:984 +#: wpvulnerability-admin.php:3641 wpvulnerability-adminms.php:1235 +#: wpvulnerability-adminms.php:1257 wpvulnerability-adminms.php:3835 +#, php-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d dia" +msgstr[1] "%d dies" + +#: wpvulnerability-admin.php:975 wpvulnerability-adminms.php:1248 +msgid "Log Retention Period" +msgstr "Període de retenció del registre" + +#: wpvulnerability-admin.php:981 wpvulnerability-adminms.php:1254 +msgid "None (Disabled)" +msgstr "Cap (desactivat)" + +#: wpvulnerability-admin.php:1004 wpvulnerability-adminms.php:1277 +msgid "" +"This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant." +msgstr "Aquest valor és imposat per la constant WPVULNERABILITY_LOG_RETENTION_DAYS." + +#: wpvulnerability-admin.php:1009 wpvulnerability-adminms.php:1282 +msgid "" +"Choose how long WPVulnerability should keep API response logs. Older logs " +"are automatically deleted." +msgstr "Trieu durant quant de temps el WPVulnerability ha de conservar els registres de resposta de l'API. Els registres antics s'eliminen automàticament." + +#: wpvulnerability-admin.php:1013 wpvulnerability-adminms.php:1286 +msgid "Save Configuration" +msgstr "Desa la configuració" + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "Log retention is currently disabled." +msgstr "La retenció de registres està desactivada actualment." + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "API responses are not being saved." +msgstr "Les respostes de l'API no s'estan desant." + +#: wpvulnerability-admin.php:1031 wpvulnerability-adminms.php:1304 +msgid "Log Details" +msgstr "Detalls del registre" + +#: wpvulnerability-admin.php:1035 wpvulnerability-admin.php:1104 +#: wpvulnerability-adminms.php:1308 wpvulnerability-adminms.php:1377 +msgid "Date" +msgstr "Data" + +#: wpvulnerability-admin.php:1039 wpvulnerability-admin.php:1105 +#: wpvulnerability-adminms.php:1312 wpvulnerability-adminms.php:1378 +msgid "API Endpoint" +msgstr "Punt final de l'API" + +#: wpvulnerability-admin.php:1044 wpvulnerability-adminms.php:1317 +msgid "API Response" +msgstr "Resposta de l'API" + +#: wpvulnerability-admin.php:1049 wpvulnerability-adminms.php:1322 +msgid "Back to Logs" +msgstr "Torna als registres" + +#: wpvulnerability-admin.php:1058 wpvulnerability-adminms.php:1331 +msgid "No logs available" +msgstr "No hi ha registres disponibles" + +#: wpvulnerability-admin.php:1059 wpvulnerability-adminms.php:1332 +msgid "API response logs will appear here once the vulnerability scanner runs." +msgstr "Els registres de resposta de l'API apareixeran aquí quan s'executi l'escàner de vulnerabilitats." + +#: wpvulnerability-admin.php:1063 wpvulnerability-adminms.php:1336 +msgid "API Response Logs" +msgstr "Registres de resposta de l'API" + +#: wpvulnerability-admin.php:1073 wpvulnerability-adminms.php:1346 +msgid "Show:" +msgstr "Mostra:" + +#: wpvulnerability-admin.php:1082 wpvulnerability-adminms.php:1355 +msgid "Apply" +msgstr "Aplica" + +#. translators: 1: first item, 2: last item, 3: total items +#: wpvulnerability-admin.php:1090 wpvulnerability-adminms.php:1363 +#, php-format +msgid "Showing %1$s–%2$s of %3$s" +msgstr "Mostrant %1$s–%2$s de %3$s" + +#: wpvulnerability-admin.php:1106 wpvulnerability-adminms.php:1379 +msgid "Actions" +msgstr "Accions" + +#: wpvulnerability-admin.php:1133 wpvulnerability-admin.php:3957 +#: wpvulnerability-adminms.php:1406 wpvulnerability-adminms.php:4151 +msgid "View" +msgstr "Visualitza" + +#: wpvulnerability-admin.php:1150 wpvulnerability-adminms.php:1423 +msgid "Danger Zone" +msgstr "Zona de perill" + +#: wpvulnerability-admin.php:1152 wpvulnerability-adminms.php:1425 +msgid "Permanently delete all API response logs. This action cannot be undone." +msgstr "Elimina de manera permanent tots els registres de resposta de l'API. Aquesta acció no es pot desfer." + +#: wpvulnerability-admin.php:1154 wpvulnerability-adminms.php:1427 +msgid "Are you sure you want to delete all logs? This action cannot be undone." +msgstr "Esteu segur que voleu eliminar tots els registres? Aquesta acció no es pot desfer." + +#: wpvulnerability-admin.php:1157 wpvulnerability-adminms.php:1430 +msgid "Delete All Logs" +msgstr "Elimina tots els registres" + +#: wpvulnerability-admin.php:1201 wpvulnerability-adminms.php:1474 +msgid "Reload Data from API" +msgstr "Torna a carregar les dades des de l'API" + +#: wpvulnerability-admin.php:1204 wpvulnerability-adminms.php:1477 +msgid "" +"Reload all Core, Plugins, Themes and other components information directly " +"from the API to have updated data. This will clear the cache and fetch fresh " +"vulnerability information." +msgstr "Torna a carregar tota la informació del Nucli, Extensions, Temes i altres components directament des de l'API per tenir dades actualitzades. Això buidarà la memòria cau i obtindrà informació actualitzada sobre vulnerabilitats." + +#: wpvulnerability-admin.php:1209 wpvulnerability-adminms.php:1482 +msgid "Reload Data" +msgstr "Torna a carregar les dades" + +#: wpvulnerability-admin.php:1218 wpvulnerability-adminms.php:1491 +msgid "Test Email Notifications" +msgstr "Prova les notificacions per correu electrònic" + +#: wpvulnerability-admin.php:1221 wpvulnerability-adminms.php:1494 +msgid "" +"Send a test email notification with current vulnerability data to verify " +"your email configuration is working correctly." +msgstr "Envia una notificació per correu electrònic de prova amb les dades de vulnerabilitats actuals per verificar que la configuració del correu electrònic funciona correctament." + +#: wpvulnerability-admin.php:1231 wpvulnerability-adminms.php:1504 +msgid "From address (configured via constant):" +msgstr "Adreça del remitent (configurada mitjançant constant):" + +#: wpvulnerability-admin.php:1243 wpvulnerability-adminms.php:1516 +msgid "From address (default):" +msgstr "Adreça del remitent (predeterminada):" + +#: wpvulnerability-admin.php:1252 wpvulnerability-adminms.php:1525 +msgid "Learn how to customize the email sender address →" +msgstr "Apreneu a personalitzar l'adreça del remitent del correu electrònic →" + +#: wpvulnerability-admin.php:1258 wpvulnerability-adminms.php:1531 +msgid "Send Test Email" +msgstr "Envia correu electrònic de prova" + +#: wpvulnerability-admin.php:1267 wpvulnerability-adminms.php:1540 +msgid "WP-Cron Status" +msgstr "Estat del WP-Cron" + +#: wpvulnerability-admin.php:1270 wpvulnerability-adminms.php:1543 +msgid "" +"View and manage WP-Cron scheduled events. Compare expected schedules with " +"actual cron jobs to ensure automated tasks are running correctly." +msgstr "Visualitzeu i gestioneu els esdeveniments programats del WP-Cron. Compareu les planificacions esperades amb els treballs cron reals per assegurar-vos que les tasques automatitzades s'executen correctament." + +#: wpvulnerability-admin.php:1275 wpvulnerability-adminms.php:1548 +msgid "No cron data available." +msgstr "No hi ha dades cron disponibles." + +#: wpvulnerability-admin.php:1281 wpvulnerability-adminms.php:1554 +msgid "Hook" +msgstr "Ganxo" + +#: wpvulnerability-admin.php:1282 wpvulnerability-adminms.php:1555 +msgid "Expected" +msgstr "Esperat" + +#: wpvulnerability-admin.php:1283 wpvulnerability-adminms.php:1556 +msgid "Found" +msgstr "Trobat" + +#: wpvulnerability-admin.php:1284 wpvulnerability-adminms.php:1557 +msgid "Next Run" +msgstr "Propera execució" + +#: wpvulnerability-admin.php:1285 wpvulnerability-admin.php:3236 +#: wpvulnerability-admin.php:3559 wpvulnerability-adminms.php:1558 +#: wpvulnerability-adminms.php:3413 wpvulnerability-adminms.php:3753 +msgid "Status" +msgstr "Estat" + +#: wpvulnerability-admin.php:1299 wpvulnerability-adminms.php:1572 +msgid "Not expected" +msgstr "No esperat" + +#: wpvulnerability-admin.php:1321 wpvulnerability-adminms.php:1594 +#: wpvulnerability-general.php:1871 wpvulnerability-general.php:1872 +msgid "None" +msgstr "Cap" + +#: wpvulnerability-admin.php:1356 wpvulnerability-adminms.php:1629 +msgid "OK" +msgstr "D'acord" + +#: wpvulnerability-admin.php:1366 wpvulnerability-adminms.php:1639 +msgid "⚠️ Unexpected WPVulnerability Events" +msgstr "⚠️ Esdeveniments WPVulnerability inesperats" + +#: wpvulnerability-admin.php:1383 wpvulnerability-adminms.php:1656 +msgid "No interval" +msgstr "Cap interval" + +#: wpvulnerability-admin.php:1390 wpvulnerability-adminms.php:1663 +msgid "Next:" +msgstr "Pròxim:" + +#: wpvulnerability-admin.php:1400 wpvulnerability-adminms.php:1673 +msgid "Repair Cron Events" +msgstr "Repara els esdeveniments cron" + +#: wpvulnerability-admin.php:1408 wpvulnerability-adminms.php:1681 +msgid "Uninstall Data" +msgstr "Dades de desinstal·lació" + +#: wpvulnerability-admin.php:1410 wpvulnerability-adminms.php:1683 +msgid "" +"By default, all plugin data is preserved when WPVulnerability is deleted. " +"Enable the option below only if you want all options, logs, and cached data " +"permanently removed on uninstall." +msgstr "Per defecte, totes les dades de l'extensió es conserven quan s'elimina el WPVulnerability. Activeu l'opció següent només si voleu que totes les opcions, els registres i les dades en memòria cau s'eliminin permanentment en la desinstal·lació." + +#: wpvulnerability-admin.php:1420 wpvulnerability-adminms.php:1693 +msgid "Delete all plugin data on uninstall" +msgstr "Elimina totes les dades de l'extensió en la desinstal·lació" + +#: wpvulnerability-admin.php:1423 wpvulnerability-adminms.php:1696 +msgid "" +"Default: unchecked (data preserved). Check only if you want a clean removal." +msgstr "Predeterminat: sense marcar (dades conservades). Marqueu-ho només si voleu una eliminació neta." + +#: wpvulnerability-admin.php:1425 wpvulnerability-adminms.php:1698 +msgid "Save preference" +msgstr "Desa la preferència" + +#: wpvulnerability-admin.php:1432 wpvulnerability-adminms.php:1705 +msgid "Reset WPVulnerability" +msgstr "Restableix el WPVulnerability" + +#: wpvulnerability-admin.php:1434 wpvulnerability-adminms.php:1707 +msgid "" +"Delete all WPVulnerability settings, cached data, logs, and scheduled " +"events, then restore defaults and reload data from the API." +msgstr "Elimina totes les configuracions del WPVulnerability, les dades en memòria cau, els registres i els esdeveniments programats; després restaura els valors predeterminats i torna a carregar les dades des de l'API." + +#: wpvulnerability-admin.php:1436 wpvulnerability-adminms.php:1709 +msgid "This action cannot be undone." +msgstr "Aquesta acció no es pot desfer." + +#: wpvulnerability-admin.php:1438 wpvulnerability-adminms.php:1711 +msgid "" +"Are you sure you want to reset all WPVulnerability data? This action cannot " +"be undone." +msgstr "Esteu segur que voleu restablir totes les dades del WPVulnerability? Aquesta acció no es pot desfer." + +#: wpvulnerability-admin.php:1441 wpvulnerability-adminms.php:1713 +msgid "Reset Plugin" +msgstr "Restableix l'extensió" + +#: wpvulnerability-admin.php:1468 wpvulnerability-adminms.php:1740 +msgid "Vulnerability Database Statistics" +msgstr "Estadístiques de la base de dades de vulnerabilitats" + +#. translators: number of vulnerabilities. +#: wpvulnerability-admin.php:1510 wpvulnerability-adminms.php:1782 +#, php-format +msgid "%s vulnerability" +msgid_plural "%s vulnerabilities" +msgstr[0] "%s vulnerabilitat" +msgstr[1] "%s vulnerabilitats" + +#. translators: number of products. +#: wpvulnerability-admin.php:1520 wpvulnerability-adminms.php:1792 +#, php-format +msgid "(%s product)" +msgid_plural "(%s products)" +msgstr[0] "(%s producte)" +msgstr[1] "(%s productes)" + +#: wpvulnerability-admin.php:1527 wpvulnerability-adminms.php:1799 +msgid "No data" +msgstr "Sense dades" + +#. translators: date of last update. +#: wpvulnerability-admin.php:1544 wpvulnerability-adminms.php:1814 +#, php-format +msgid "Database last updated: %s" +msgstr "Base de dades actualitzada per darrera vegada: %s" + +#: wpvulnerability-admin.php:1566 wpvulnerability-adminms.php:1836 +msgid "Intelligence Sources" +msgstr "Fonts d'intel·ligència" + +#: wpvulnerability-admin.php:1567 wpvulnerability-adminms.php:1837 +msgid "Number of vulnerabilities contributed by each intelligence source." +msgstr "Nombre de vulnerabilitats aportades per cada font d'intel·ligència." + +#: wpvulnerability-admin.php:1571 wpvulnerability-adminms.php:1841 +msgid "Source" +msgstr "Font" + +#: wpvulnerability-admin.php:1572 wpvulnerability-admin.php:2104 +#: wpvulnerability-adminms.php:1842 wpvulnerability-adminms.php:2261 +msgid "Core" +msgstr "Nucli" + +#: wpvulnerability-admin.php:1603 wpvulnerability-adminms.php:1873 +msgid "Sponsors" +msgstr "Patrocinadors" + +#: wpvulnerability-admin.php:1626 wpvulnerability-adminms.php:1896 +msgid "No sponsor data available." +msgstr "No hi ha dades de patrocinadors disponibles." + +#: wpvulnerability-admin.php:1633 wpvulnerability-adminms.php:1903 +msgid "Contributors" +msgstr "Col·laboradors" + +#: wpvulnerability-admin.php:1656 wpvulnerability-adminms.php:1926 +msgid "No contributor data available." +msgstr "No hi ha dades de col·laboradors disponibles." + +#: wpvulnerability-admin.php:1674 wpvulnerability-adminms.php:432 +msgid "You do not have sufficient permissions to access this page." +msgstr "No teniu permisos suficients per accedir a aquesta pàgina." + +#: wpvulnerability-admin.php:1684 wpvulnerability-adminms.php:441 +msgid "WPVulnerability settings" +msgstr "Configuració del WPVulnerability" + +#: wpvulnerability-admin.php:1801 wpvulnerability-adminms.php:1963 +msgid "Configure and save these settings to receive notifications." +msgstr "Configureu i deseu aquests paràmetres per rebre notificacions." + +#: wpvulnerability-admin.php:1814 wpvulnerability-adminms.php:2071 +msgid "Configure and save these settings to hide vulnerabilities." +msgstr "Configura i desa aquests paràmetres per amagar vulnerabilitats." + +#: wpvulnerability-admin.php:1845 wpvulnerability-adminms.php:1993 +msgid "Default administrator email" +msgstr "Correu electrònic predeterminat de l'administrador" + +#: wpvulnerability-admin.php:1909 wpvulnerability-adminms.php:2057 +msgid "Read more if you want to force the cache time." +msgstr "Llegiu més si voleu forçar el temps de memòria cau." + +#: wpvulnerability-admin.php:1939 wpvulnerability-adminms.php:2099 +msgid "Never" +msgstr "Mai" + +#: wpvulnerability-admin.php:1944 wpvulnerability-adminms.php:2104 +msgid "Daily" +msgstr "Diari" + +#: wpvulnerability-admin.php:1949 wpvulnerability-adminms.php:2109 +msgid "Weekly" +msgstr "Setmanal" + +#: wpvulnerability-admin.php:1953 wpvulnerability-adminms.php:2113 +msgid "Day" +msgstr "Dia" + +#: wpvulnerability-admin.php:1966 wpvulnerability-adminms.php:2126 +msgid "Hour" +msgstr "Hora" + +#: wpvulnerability-admin.php:1968 wpvulnerability-adminms.php:2128 +msgid "Minute" +msgstr "Minut" + +#: wpvulnerability-admin.php:2166 wpvulnerability-adminms.php:2323 +msgid "Read more about how to force the deactivation of an item." +msgstr "Llegiu més sobre com forçar la desactivació d'un element." + +#: wpvulnerability-admin.php:2292 wpvulnerability-adminms.php:2870 +msgid "" +"Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com" +msgstr "URL de webhook de Slack no vàlida. Ha de ser una URL HTTPS vàlida de hooks.slack.com" + +#: wpvulnerability-admin.php:2315 wpvulnerability-adminms.php:2893 +msgid "" +"Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office." +"com, office365.com, or api.hooks.microsoft.com" +msgstr "URL de webhook de Microsoft Teams no vàlida. Ha de ser una URL HTTPS vàlida de office.com, office365.com o api.hooks.microsoft.com" + +#: wpvulnerability-admin.php:2338 wpvulnerability-adminms.php:2916 +msgid "" +"Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or " +"discordapp.com" +msgstr "URL de webhook de Discord no vàlida. Ha de ser una URL HTTPS vàlida de discord.com o discordapp.com" + +#: wpvulnerability-admin.php:2357 wpvulnerability-adminms.php:2935 +msgid "" +"Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-" +"zyx57W2v1u123ew11" +msgstr "Format del token del bot de Telegram no vàlid. Ha de ser com: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:2493 wpvulnerability-adminms.php:2400 +msgid "All Clear" +msgstr "Tot net" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2503 wpvulnerability-adminms.php:2410 +#, php-format +msgid "%d Critical Issue Found" +msgid_plural "%d Critical Issues Found" +msgstr[0] "%d problema crític trobat" +msgstr[1] "%d problemes crítics trobats" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2508 wpvulnerability-adminms.php:2415 +#, php-format +msgid "%d Issue Found" +msgid_plural "%d Issues Found" +msgstr[0] "%d problema trobat" +msgstr[1] "%d problemes trobats" + +#: wpvulnerability-admin.php:2515 wpvulnerability-adminms.php:2422 +msgid "Never checked" +msgstr "Mai s'ha comprovat" + +#. translators: %d: number of minutes +#: wpvulnerability-admin.php:2523 wpvulnerability-adminms.php:2430 +#, php-format +msgid "%d minute ago" +msgid_plural "%d minutes ago" +msgstr[0] "fa %d minut" +msgstr[1] "fa %d minuts" + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:2527 wpvulnerability-adminms.php:2434 +#, php-format +msgid "%d hour ago" +msgid_plural "%d hours ago" +msgstr[0] "fa %d hora" +msgstr[1] "fa %d hores" + +#. translators: %s: time since last check +#: wpvulnerability-admin.php:2539 wpvulnerability-adminms.php:2446 +#, php-format +msgid "Last checked: %s" +msgstr "Darrera comprovació: %s" + +#: wpvulnerability-admin.php:2540 wpvulnerability-adminms.php:2447 +msgid "Refresh Now" +msgstr "Actualitza ara" + +#: wpvulnerability-admin.php:2547 wpvulnerability-adminms.php:2454 +msgid "No vulnerabilities detected" +msgstr "No s'han detectat vulnerabilitats" + +#: wpvulnerability-admin.php:2548 wpvulnerability-adminms.php:2455 +msgid "Your site is up to date and secure" +msgstr "El vostre lloc està actualitzat i és segur" + +#: wpvulnerability-admin.php:2616 wpvulnerability-adminms.php:2523 +msgid "Server Software" +msgstr "Programari del servidor" + +#: wpvulnerability-admin.php:2829 wpvulnerability-adminms.php:2736 +msgid "Site Health" +msgstr "Salut del lloc" + +#: wpvulnerability-admin.php:2831 wpvulnerability-adminms.php:2738 +#: wpvulnerability-run.php:33 +msgid "Settings" +msgstr "Configuració" + +#: wpvulnerability-admin.php:2846 wpvulnerability-adminms.php:2754 +msgid "WPVulnerability Status" +msgstr "Estat del WPVulnerability" + +#: wpvulnerability-admin.php:2878 wpvulnerability-adminms.php:3052 +msgid "Receive vulnerability notifications" +msgstr "Rebre notificacions de vulnerabilitats" + +#: wpvulnerability-admin.php:2886 wpvulnerability-adminms.php:3060 +msgid "Cache expiration time" +msgstr "Temps de caducitat de la memòria cau" + +#: wpvulnerability-admin.php:2895 wpvulnerability-adminms.php:3069 +msgid "How often you want to receive notifications" +msgstr "Amb quina freqüència voleu rebre notificacions" + +#: wpvulnerability-admin.php:2904 wpvulnerability-adminms.php:3078 +msgid "Where do you want to receive notifications?" +msgstr "On voleu rebre les notificacions?" + +#: wpvulnerability-admin.php:2913 wpvulnerability-adminms.php:3087 +msgid "Email addresses to notify (separated by commas)" +msgstr "Adreces electròniques a notificar (separades per comes)" + +#: wpvulnerability-admin.php:2922 wpvulnerability-adminms.php:3096 +msgid "Slack webhook URL" +msgstr "URL de webhook de Slack" + +#: wpvulnerability-admin.php:2931 wpvulnerability-adminms.php:3105 +msgid "Teams webhook URL" +msgstr "URL de webhook de Teams" + +#: wpvulnerability-admin.php:2950 wpvulnerability-adminms.php:3126 +msgid "Vulnerabilities to hide" +msgstr "Vulnerabilitats per amagar" + +#: wpvulnerability-admin.php:2958 wpvulnerability-adminms.php:3134 +msgid "What do you want to hide?" +msgstr "Què vols amagar?" + +#: wpvulnerability-admin.php:3008 wpvulnerability-adminms.php:3185 +msgid "Standard (Hybrid Detection)" +msgstr "Estàndard (detecció híbrida)" + +#: wpvulnerability-admin.php:3009 wpvulnerability-adminms.php:3186 +msgid "Strict (Extensions Only)" +msgstr "Estricte (només extensions)" + +#: wpvulnerability-admin.php:3010 wpvulnerability-adminms.php:3187 +msgid "Disabled (No Detection)" +msgstr "Desactivat (sense detecció)" + +#: wpvulnerability-admin.php:3016 wpvulnerability-adminms.php:3193 +msgid "Security Status" +msgstr "Estat de seguretat" + +#: wpvulnerability-admin.php:3020 wpvulnerability-adminms.php:3197 +msgid "Security Mode" +msgstr "Mode de seguretat" + +#: wpvulnerability-admin.php:3025 wpvulnerability-adminms.php:3202 +msgid "Shell Execution" +msgstr "Execució de shell" + +#: wpvulnerability-admin.php:3027 wpvulnerability-admin.php:3475 +#: wpvulnerability-admin.php:3483 wpvulnerability-adminms.php:3204 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Enabled" +msgstr "Activat" + +#: wpvulnerability-admin.php:3034 wpvulnerability-adminms.php:3211 +msgid "Audit Logging" +msgstr "Registre d'auditoria" + +#. translators: %d: number of days +#: wpvulnerability-admin.php:3039 wpvulnerability-adminms.php:3216 +#, php-format +msgid "Enabled (%d days)" +msgstr "Activat (%d dies)" + +#: wpvulnerability-admin.php:3048 wpvulnerability-adminms.php:3225 +msgid "Total Log Entries" +msgstr "Total d'entrades del registre" + +#: wpvulnerability-admin.php:3055 wpvulnerability-adminms.php:3232 +msgid "Last Shell Execution" +msgstr "Darrera execució de shell" + +#. translators: %s: time ago +#: wpvulnerability-admin.php:3061 wpvulnerability-admin.php:3266 +#: wpvulnerability-adminms.php:3238 wpvulnerability-adminms.php:3441 +#, php-format +msgid "%s ago" +msgstr "fa %s" + +#: wpvulnerability-admin.php:3073 wpvulnerability-adminms.php:3250 +msgid "" +"Configure security settings via wp-config.php constants: " +"WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, " +"WPVULNERABILITY_SHELL_EXEC_WHITELIST." +msgstr "Configureu els paràmetres de seguretat mitjançant constants a wp-config.php: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST." + +#. translators: %s: URL to security documentation +#: wpvulnerability-admin.php:3079 wpvulnerability-adminms.php:3256 +#, php-format +msgid "" +"See security " +"configuration documentation for details." +msgstr "Consulteu la documentació de configuració de seguretat per obtenir més detalls." + +#: wpvulnerability-admin.php:3103 wpvulnerability-adminms.php:3280 +msgid "Memcached" +msgstr "Memcached" + +#: wpvulnerability-admin.php:3131 wpvulnerability-adminms.php:3308 +msgid "Imagick Extension" +msgstr "Extensió Imagick" + +#: wpvulnerability-admin.php:3132 wpvulnerability-adminms.php:3309 +msgid "Redis Extension" +msgstr "Extensió Redis" + +#: wpvulnerability-admin.php:3133 wpvulnerability-adminms.php:3310 +msgid "Memcached Extension" +msgstr "Extensió Memcached" + +#: wpvulnerability-admin.php:3134 wpvulnerability-adminms.php:3311 +msgid "Memcache Extension" +msgstr "Extensió Memcache" + +#: wpvulnerability-admin.php:3135 wpvulnerability-adminms.php:3312 +msgid "SQLite3 Extension" +msgstr "Extensió SQLite3" + +#: wpvulnerability-admin.php:3136 wpvulnerability-adminms.php:3313 +msgid "PDO SQLite" +msgstr "PDO SQLite" + +#: wpvulnerability-admin.php:3137 wpvulnerability-adminms.php:3314 +msgid "Shell Command" +msgstr "Ordre de shell" + +#: wpvulnerability-admin.php:3138 wpvulnerability-adminms.php:3315 +msgid "Binary Check" +msgstr "Comprovació binària" + +#: wpvulnerability-admin.php:3139 wpvulnerability-adminms.php:3316 +msgid "Not Detected" +msgstr "No detectat" + +#: wpvulnerability-admin.php:3143 wpvulnerability-adminms.php:3320 +msgid "Software Detection Methods" +msgstr "Mètodes de detecció de programari" + +#: wpvulnerability-admin.php:3144 wpvulnerability-adminms.php:3321 +msgid "" +"Shows which detection method was used for each software component and the " +"reliability score." +msgstr "Mostra quin mètode de detecció s'ha utilitzat per a cada component de programari i la puntuació de fiabilitat." + +#: wpvulnerability-admin.php:3149 wpvulnerability-admin.php:3234 +#: wpvulnerability-admin.php:3558 wpvulnerability-adminms.php:3326 +#: wpvulnerability-adminms.php:3411 wpvulnerability-adminms.php:3752 +msgid "Component" +msgstr "Component" + +#: wpvulnerability-admin.php:3150 wpvulnerability-adminms.php:3327 +msgid "Version" +msgstr "Versió" + +#: wpvulnerability-admin.php:3151 wpvulnerability-adminms.php:3328 +msgid "Detection Method" +msgstr "Mètode de detecció" + +#: wpvulnerability-admin.php:3152 wpvulnerability-adminms.php:3329 +msgid "Reliability" +msgstr "Fiabilitat" + +#: wpvulnerability-admin.php:3164 wpvulnerability-adminms.php:3341 +msgid "Not detected" +msgstr "No detectat" + +#: wpvulnerability-admin.php:3220 wpvulnerability-adminms.php:3397 +msgid "Shell Execution Audit Logs" +msgstr "Registres d'auditoria d'execució de shell" + +#: wpvulnerability-admin.php:3221 wpvulnerability-adminms.php:3398 +msgid "" +"Complete audit trail of shell command executions for security monitoring." +msgstr "Registre complet de les execucions d'ordres de shell per al seguiment de seguretat." + +#: wpvulnerability-admin.php:3226 wpvulnerability-adminms.php:3403 +msgid "No shell execution logs found." +msgstr "No s'han trobat registres d'execució de shell." + +#: wpvulnerability-admin.php:3227 wpvulnerability-adminms.php:3404 +msgid "" +"Logs will appear here when shell commands are executed for software " +"detection." +msgstr "Els registres apareixeran aquí quan s'executin ordres de shell per a la detecció de programari." + +#: wpvulnerability-admin.php:3233 wpvulnerability-adminms.php:3410 +msgid "Time" +msgstr "Hora" + +#: wpvulnerability-admin.php:3235 wpvulnerability-adminms.php:3412 +msgid "Command" +msgstr "Ordre" + +#: wpvulnerability-admin.php:3237 wpvulnerability-adminms.php:3414 +msgid "User" +msgstr "Usuari" + +#: wpvulnerability-admin.php:3238 wpvulnerability-adminms.php:3415 +msgid "Output" +msgstr "Sortida" + +#. translators: %d: number of logs shown +#: wpvulnerability-admin.php:3302 wpvulnerability-adminms.php:3477 +#, php-format +msgid "Showing the %d most recent log entries." +msgstr "S'estan mostrant les %d entrades de registre més recents." + +#: wpvulnerability-admin.php:3320 wpvulnerability-adminms.php:3565 +msgid "Invalid nonce." +msgstr "Nonce no vàlid." + +#: wpvulnerability-admin.php:3325 wpvulnerability-adminms.php:3570 +msgid "Insufficient permissions." +msgstr "Permisos insuficients." + +#: wpvulnerability-admin.php:3331 wpvulnerability-adminms.php:3576 +msgid "No component specified." +msgstr "No s'ha especificat cap component." + +#: wpvulnerability-admin.php:3366 wpvulnerability-adminms.php:3524 +msgid "Debug Information" +msgstr "Informació de depuració" + +#: wpvulnerability-admin.php:3368 wpvulnerability-adminms.php:3526 +msgid "This tab is only visible when WP_DEBUG is enabled. Use with caution." +msgstr "Aquesta pestanya només és visible quan WP_DEBUG està activat. Useu-la amb precaució." + +#: wpvulnerability-admin.php:3429 wpvulnerability-adminms.php:3623 +msgid "System Information" +msgstr "Informació del sistema" + +#: wpvulnerability-admin.php:3433 wpvulnerability-adminms.php:3627 +msgid "WordPress Version" +msgstr "Versió del WordPress" + +#: wpvulnerability-admin.php:3437 wpvulnerability-adminms.php:3631 +msgid "Multisite" +msgstr "Multiseu" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "Yes" +msgstr "Sí" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "No" +msgstr "No" + +#: wpvulnerability-admin.php:3441 wpvulnerability-adminms.php:3635 +msgid "Language" +msgstr "Idioma" + +#: wpvulnerability-admin.php:3445 wpvulnerability-adminms.php:3639 +msgid "PHP Version" +msgstr "Versió del PHP" + +#: wpvulnerability-admin.php:3449 wpvulnerability-adminms.php:3643 +msgid "PHP Extensions" +msgstr "Extensions del PHP" + +#: wpvulnerability-admin.php:3460 wpvulnerability-adminms.php:3654 +msgid "PHP Memory Limit" +msgstr "Límit de memòria del PHP" + +#: wpvulnerability-admin.php:3464 wpvulnerability-adminms.php:3658 +msgid "Database" +msgstr "Base de dades" + +#: wpvulnerability-admin.php:3468 wpvulnerability-adminms.php:3662 +msgid "Web Server" +msgstr "Servidor web" + +#: wpvulnerability-admin.php:3472 wpvulnerability-adminms.php:3666 +msgid "WP_DEBUG" +msgstr "WP_DEBUG" + +#: wpvulnerability-admin.php:3480 wpvulnerability-adminms.php:3674 +msgid "WP_DEBUG_LOG" +msgstr "WP_DEBUG_LOG" + +#: wpvulnerability-admin.php:3490 wpvulnerability-adminms.php:3684 +msgid "Path:" +msgstr "Camí:" + +#. translators: %s: file size +#: wpvulnerability-admin.php:3499 wpvulnerability-adminms.php:3698 +#, php-format +msgid "Size: %s" +msgstr "Mida: %s" + +#: wpvulnerability-admin.php:3510 wpvulnerability-adminms.php:3704 +msgid "View Log File" +msgstr "Visualitza el fitxer de registre" + +#: wpvulnerability-admin.php:3516 wpvulnerability-adminms.php:3710 +msgid "Log file is not web-accessible (outside wp-content)" +msgstr "El fitxer de registre no és accessible per web (fora de wp-content)" + +#: wpvulnerability-admin.php:3522 wpvulnerability-adminms.php:3716 +msgid "Log file does not exist yet" +msgstr "El fitxer de registre encara no existeix" + +#: wpvulnerability-admin.php:3530 wpvulnerability-adminms.php:3724 +msgid "Plugin Version" +msgstr "Versió de l'extensió" + +#: wpvulnerability-admin.php:3554 wpvulnerability-adminms.php:3748 +msgid "Component Detection" +msgstr "Detecció de components" + +#: wpvulnerability-admin.php:3560 wpvulnerability-adminms.php:3754 +msgid "Version Detected" +msgstr "Versió detectada" + +#: wpvulnerability-admin.php:3561 wpvulnerability-adminms.php:3755 +msgid "Analyzed" +msgstr "Analitzat" + +#: wpvulnerability-admin.php:3562 wpvulnerability-adminms.php:3756 +msgid "Cache Status" +msgstr "Estat de la memòria cau" + +#: wpvulnerability-admin.php:3622 wpvulnerability-adminms.php:3816 +msgid "Configuration Summary" +msgstr "Resum de la configuració" + +#: wpvulnerability-admin.php:3626 wpvulnerability-adminms.php:3820 +msgid "Cache Duration" +msgstr "Durada de la memòria cau" + +#: wpvulnerability-admin.php:3636 wpvulnerability-adminms.php:3830 +msgid "Log Retention" +msgstr "Retenció del registre" + +#: wpvulnerability-admin.php:3646 wpvulnerability-adminms.php:3840 +msgid "Components Analyzed" +msgstr "Components analitzats" + +#: wpvulnerability-admin.php:3661 wpvulnerability-adminms.php:3855 +msgid "Notification Email" +msgstr "Correu electrònic de notificació" + +#: wpvulnerability-admin.php:3682 wpvulnerability-adminms.php:3876 +msgid "Slack Webhook" +msgstr "Webhook de Slack" + +#: wpvulnerability-admin.php:3692 wpvulnerability-admin.php:3712 +#: wpvulnerability-admin.php:3732 wpvulnerability-admin.php:3752 +#: wpvulnerability-adminms.php:3886 wpvulnerability-adminms.php:3906 +#: wpvulnerability-adminms.php:3926 wpvulnerability-adminms.php:3946 +msgid "Configured & Enabled" +msgstr "Configurat i activat" + +#: wpvulnerability-admin.php:3694 wpvulnerability-admin.php:3714 +#: wpvulnerability-admin.php:3734 wpvulnerability-admin.php:3754 +#: wpvulnerability-adminms.php:3888 wpvulnerability-adminms.php:3908 +#: wpvulnerability-adminms.php:3928 wpvulnerability-adminms.php:3948 +msgid "Configured (Disabled)" +msgstr "Configurat (desactivat)" + +#: wpvulnerability-admin.php:3696 wpvulnerability-admin.php:3716 +#: wpvulnerability-admin.php:3736 wpvulnerability-admin.php:3756 +#: wpvulnerability-adminms.php:3890 wpvulnerability-adminms.php:3910 +#: wpvulnerability-adminms.php:3930 wpvulnerability-adminms.php:3950 +msgid "Not configured" +msgstr "No configurat" + +#: wpvulnerability-admin.php:3703 wpvulnerability-adminms.php:3897 +msgid "Teams Webhook" +msgstr "Webhook de Teams" + +#: wpvulnerability-admin.php:3723 wpvulnerability-adminms.php:3917 +msgid "Discord Webhook" +msgstr "Webhook de Discord" + +#: wpvulnerability-admin.php:3743 wpvulnerability-adminms.php:3937 +msgid "Telegram Bot" +msgstr "Bot de Telegram" + +#: wpvulnerability-admin.php:3788 wpvulnerability-adminms.php:3982 +msgid "Cron Status" +msgstr "Estat del cron" + +#: wpvulnerability-admin.php:3792 wpvulnerability-adminms.php:3986 +msgid "Update Database" +msgstr "Actualitza la base de dades" + +#. translators: %s: date and time +#: wpvulnerability-admin.php:3797 wpvulnerability-admin.php:3810 +#: wpvulnerability-adminms.php:3991 wpvulnerability-adminms.php:4004 +#, php-format +msgid "Next run: %s" +msgstr "Propera execució: %s" + +#: wpvulnerability-admin.php:3800 wpvulnerability-admin.php:3813 +#: wpvulnerability-adminms.php:3994 wpvulnerability-adminms.php:4007 +msgid "Not scheduled" +msgstr "No programat" + +#: wpvulnerability-admin.php:3805 wpvulnerability-adminms.php:3999 +msgid "Send Notification" +msgstr "Envia notificació" + +#: wpvulnerability-admin.php:3826 wpvulnerability-adminms.php:4020 +msgid "Run Update Now" +msgstr "Executa l'actualització ara" + +#: wpvulnerability-admin.php:3834 wpvulnerability-adminms.php:4028 +msgid "Run Notification Now" +msgstr "Envia la notificació ara" + +#: wpvulnerability-admin.php:3840 wpvulnerability-adminms.php:4034 +msgid "You do not have permission to run these actions." +msgstr "No teniu permís per executar aquestes accions." + +#: wpvulnerability-admin.php:3859 wpvulnerability-adminms.php:4053 +msgid "API Testing" +msgstr "Proves de l'API" + +#: wpvulnerability-admin.php:3862 wpvulnerability-adminms.php:4056 +msgid "" +"Test API connectivity for each component. Click a button to send a test " +"request." +msgstr "Proveu la connectivitat de l'API per a cada component. Feu clic en un botó per enviar una sol·licitud de prova." + +#. translators: %s: component name +#: wpvulnerability-admin.php:3869 wpvulnerability-adminms.php:4063 +#, php-format +msgid "Test %s" +msgstr "Prova %s" + +#: wpvulnerability-admin.php:3884 wpvulnerability-adminms.php:4078 +msgid "Testing..." +msgstr "Provant..." + +#: wpvulnerability-admin.php:3900 wpvulnerability-adminms.php:4094 +msgid "HTTP Code:" +msgstr "Codi HTTP:" + +#: wpvulnerability-admin.php:3901 wpvulnerability-adminms.php:4095 +msgid "Response Time:" +msgstr "Temps de resposta:" + +#: wpvulnerability-admin.php:3903 wpvulnerability-adminms.php:4097 +msgid "Response Preview" +msgstr "Previsualització de la resposta" + +#: wpvulnerability-admin.php:3910 wpvulnerability-admin.php:3914 +#: wpvulnerability-adminms.php:4104 wpvulnerability-adminms.php:4108 +msgid "Test" +msgstr "Prova" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "Error:" +msgstr "Error:" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "AJAX request failed." +msgstr "La sol·licitud AJAX ha fallat." + +#: wpvulnerability-admin.php:3922 wpvulnerability-adminms.php:4116 +msgid "You do not have permission to test API connectivity." +msgstr "No teniu permís per provar la connectivitat de l'API." + +#: wpvulnerability-admin.php:3943 wpvulnerability-adminms.php:4137 +msgid "Database Options Viewer" +msgstr "Visualitzador d'opcions de la base de dades" + +#: wpvulnerability-admin.php:3944 wpvulnerability-adminms.php:4138 +msgid "View the raw data stored in WordPress options." +msgstr "Visualitzeu les dades en brut emmagatzemades a les opcions del WordPress." + +#: wpvulnerability-admin.php:3950 wpvulnerability-adminms.php:4144 +msgid "Select an option..." +msgstr "Seleccioneu una opció..." + +#: wpvulnerability-admin.php:3969 wpvulnerability-adminms.php:4163 +msgid "Option not found or empty." +msgstr "Opció no trobada o buida." + +#: wpvulnerability-admin.php:3987 wpvulnerability-adminms.php:4182 +msgid "Quick Actions" +msgstr "Accions ràpides" + +#: wpvulnerability-admin.php:3988 wpvulnerability-adminms.php:4183 +msgid "Perform debugging actions. Use with caution." +msgstr "Realitzeu accions de depuració. Useu-les amb precaució." + +#: wpvulnerability-admin.php:3992 wpvulnerability-adminms.php:4187 +msgid "Are you sure you want to clear all caches?" +msgstr "Esteu segur que voleu buidar totes les memòries cau?" + +#: wpvulnerability-admin.php:3996 wpvulnerability-adminms.php:4191 +msgid "Clear All Caches" +msgstr "Buida totes les memòries cau" + +#: wpvulnerability-admin.php:4000 wpvulnerability-adminms.php:4195 +msgid "Are you sure you want to reset signatures?" +msgstr "Esteu segur que voleu restablir les signatures?" + +#: wpvulnerability-admin.php:4004 wpvulnerability-adminms.php:4199 +msgid "Reset Signatures" +msgstr "Restableix les signatures" + +#: wpvulnerability-admin.php:4012 wpvulnerability-adminms.php:4207 +msgid "Export Debug Info" +msgstr "Exporta la informació de depuració" + +#: wpvulnerability-admin.php:4018 wpvulnerability-adminms.php:4213 +msgid "You do not have permission to perform these actions." +msgstr "No teniu permís per realitzar aquestes accions." + +#: wpvulnerability-adminms.php:101 wpvulnerability-adminms.php:199 +msgid "Settings saved." +msgstr "S'ha desat la configuració." + +#: wpvulnerability-adminms.php:277 +msgid "WPVulnerability cron events have been repaired across the network." +msgstr "Els esdeveniments cron del WPVulnerability s'han reparat a tota la xarxa." + +#: wpvulnerability-adminms.php:3512 +msgid "You do not have permission to access this page." +msgstr "No teniu permís per accedir a aquesta pàgina." + +#. translators: 1: core version +#: wpvulnerability-core.php:33 +#, php-format +msgid "" +"WordPress %1$s has a known vulnerability that may be affecting your " +"installed version." +msgstr "WordPress %1$s té una vulnerabilitat coneguda que pot afectar la vostra versió instal·lada." + +#: wpvulnerability-core.php:115 wpvulnerability-plugins.php:207 +#: wpvulnerability-process.php:335 wpvulnerability-process.php:443 +#: wpvulnerability-process.php:529 wpvulnerability-themes.php:173 +#: wpvulnerability-themes.php:469 +msgid "Actively exploited" +msgstr "Activament explotada" + +#: wpvulnerability-core.php:122 wpvulnerability-plugins.php:214 +#: wpvulnerability-process.php:342 wpvulnerability-process.php:450 +#: wpvulnerability-themes.php:180 wpvulnerability-themes.php:476 +msgid "Public exploit" +msgstr "Explotació pública" + +#: wpvulnerability-core.php:125 wpvulnerability-plugins.php:217 +#: wpvulnerability-process.php:345 wpvulnerability-process.php:453 +#: wpvulnerability-themes.php:183 wpvulnerability-themes.php:479 +msgid "Automatable" +msgstr "Automatitzable" + +#: wpvulnerability-core.php:139 wpvulnerability-plugins.php:245 +#: wpvulnerability-process.php:371 wpvulnerability-process.php:469 +#: wpvulnerability-process.php:544 wpvulnerability-themes.php:211 +#: wpvulnerability-themes.php:503 +msgid "References:" +msgstr "Referències:" + +#: wpvulnerability-debug.php:399 +msgid "Invalid component specified." +msgstr "Component especificat no vàlid." + +#: wpvulnerability-debug.php:423 +msgid "Version not detected for this component." +msgstr "No s'ha detectat la versió d'aquest component." + +#: wpvulnerability-debug.php:453 +msgid "API request successful." +msgstr "La sol·licitud de l'API ha tingut èxit." + +#. translators: %d: HTTP status code +#: wpvulnerability-debug.php:469 +#, php-format +msgid "API returned HTTP code %d." +msgstr "L'API ha retornat el codi HTTP %d." + +#: wpvulnerability-general.php:355 +msgid "WPVulnerability Logs" +msgstr "Registres de WPVulnerability" + +#: wpvulnerability-general.php:356 +msgid "WPVulnerability Log" +msgstr "Registre de WPVulnerability" + +#: wpvulnerability-general.php:1873 wpvulnerability-general.php:1874 +msgid "Low" +msgstr "Baixa" + +#: wpvulnerability-general.php:1875 wpvulnerability-general.php:1876 +msgid "Medium" +msgstr "Mitjana" + +#: wpvulnerability-general.php:1877 wpvulnerability-general.php:1878 +msgid "High" +msgstr "Alta" + +#: wpvulnerability-general.php:1879 wpvulnerability-general.php:1880 +msgid "Critical" +msgstr "Crítica" + +#: wpvulnerability-general.php:2684 +msgid "WPVulnerability Shell Logs" +msgstr "Registres de shell de WPVulnerability" + +#: wpvulnerability-general.php:2685 +msgid "WPVulnerability Shell Log" +msgstr "Registre de shell de WPVulnerability" + +#: wpvulnerability-notifications.php:30 +msgid "Every week" +msgstr "Cada setmana" + +#: wpvulnerability-notifications.php:57 +msgid "Every day" +msgstr "Cada dia" + +#: wpvulnerability-notifications.php:84 +msgid "Invalid request." +msgstr "Sol·licitud no vàlida." + +#: wpvulnerability-notifications.php:104 +msgid "You have unsubscribed from WPVulnerability notifications." +msgstr "Us heu donat de baixa de les notificacions de WPVulnerability." + +#. translators: %1$s the website of Database, %2$s database site name. +#: wpvulnerability-notifications.php:289 +#, php-format +msgid "" +"Learn more about the WordPress Vulnerability Database API at %2$s" +msgstr "" +"Més informació sobre l'API de la base de dades de vulnerabilitats del " +"WordPress a %2$s" + +#. translators: %1$s unsubscribe URL. +#: wpvulnerability-notifications.php:300 +#, php-format +msgid "" +"Want to stop receiving these alerts? Unsubscribe or " +"change the email frequency to Never in the WPVulnerability " +"settings." +msgstr "Voleu deixar de rebre aquests avisos? Doneu-vos de baixa o canvieu la freqüència del correu electrònic a Mai a la configuració del WPVulnerability." + +#: wpvulnerability-notifications.php:595 +msgid "No vulnerabilities found" +msgstr "No s'han trobat vulnerabilitats" + +#: wpvulnerability-notifications.php:596 +msgid "This is likely a test. The site does not have vulnerabilities." +msgstr "Això és probable que sigui una prova. El lloc no té vulnerabilitats." + +#: wpvulnerability-notifications.php:601 +msgid "Core vulnerabilities" +msgstr "Vulnerabilitats al nucli del WordPress" + +#: wpvulnerability-notifications.php:607 +msgid "Plugins vulnerabilities" +msgstr "Vulnerabilitats a extensions" + +#: wpvulnerability-notifications.php:613 +msgid "Themes vulnerabilities" +msgstr "Vulnerabilitats a temes" + +#: wpvulnerability-notifications.php:619 +msgid "PHP vulnerabilities" +msgstr "Vulnerabilitats del PHP" + +#: wpvulnerability-notifications.php:625 +msgid "Apache HTTPD vulnerabilities" +msgstr "Vulnerabilitats d'Apache HTTPD" + +#: wpvulnerability-notifications.php:631 +msgid "Nginx vulnerabilities" +msgstr "Vulnerabilitats d'Nginx" + +#: wpvulnerability-notifications.php:637 +msgid "MariaDB vulnerabilities" +msgstr "Vulnerabilitats de MariaDB" + +#: wpvulnerability-notifications.php:643 +msgid "MySQL vulnerabilities" +msgstr "Vulnerabilitats de MySQL" + +#: wpvulnerability-notifications.php:649 +msgid "ImageMagick vulnerabilities" +msgstr "Vulnerabilitats d'ImageMagick" + +#: wpvulnerability-notifications.php:655 +msgid "curl vulnerabilities" +msgstr "Vulnerabilitats de curl" + +#: wpvulnerability-notifications.php:661 +msgid "memcached vulnerabilities" +msgstr "Vulnerabilitats de memcached" + +#: wpvulnerability-notifications.php:667 +msgid "Redis vulnerabilities" +msgstr "Vulnerabilitats de Redis" + +#: wpvulnerability-notifications.php:673 +msgid "SQLite vulnerabilities" +msgstr "Vulnerabilitats d'SQLite" + +#. translators: Site name. +#: wpvulnerability-notifications.php:696 +#, php-format +msgid "Vulnerability found: %s" +msgstr "Vulnerabilitat trobada: %s" + +#: wpvulnerability-notifications.php:700 +msgid "Vulnerability found" +msgstr "S'ha trobat una vulnerabilitat" + +#. translators: 1: Plugin name +#. translators: 1: theme name +#: wpvulnerability-plugins.php:116 wpvulnerability-themes.php:82 +#, php-format +msgid "" +"%1$s has a known vulnerability that may be affecting your installed version." +msgstr "%1$s té una vulnerabilitat coneguda que pot afectar la vostra versió instal·lada." + +#: wpvulnerability-plugins.php:230 wpvulnerability-process.php:358 +msgid "This plugin is closed. Please replace it with another." +msgstr "Aquesta extensió està clausurada. Reemplaceu-la per una altra." + +#: wpvulnerability-plugins.php:233 wpvulnerability-process.php:361 +msgid "" +"This vulnerability appears to be unpatched. Stay tuned for upcoming plugin " +"updates." +msgstr "" +"Sembla que aquesta vulnerabilitat no està corregida. Estigueu atents a les " +"properes actualitzacions de l'extensió." + +#: wpvulnerability-plugins.php:570 +msgid "It hasn't been updated in over a year." +msgstr "No s'ha actualitzat en més d'un any." + +#: wpvulnerability-plugins.php:576 +msgid "It may no longer be available (closed?)." +msgstr "Potser ja no està disponible (tancat?)." + +#: wpvulnerability-plugins.php:614 wpvulnerability-plugins.php:621 +msgid "Last updated on" +msgstr "Darrera actualització el" + +#. translators: the number of vulnerabilities. +#: wpvulnerability-plugins.php:764 wpvulnerability-themes.php:704 +#, php-format +msgid "Vulnerabilities (%d)" +msgstr "Vulnerabilitats (%d)" + +#. translators: %s: software name. +#: wpvulnerability-process.php:601 +#, php-format +msgid "%s running" +msgstr "%s corrent" + +#: wpvulnerability-process.php:611 wpvulnerability-process.php:792 +msgid "End of Life" +msgstr "Fi del cicle de vida" + +#: wpvulnerability-process.php:613 wpvulnerability-process.php:618 +msgid "End of life:" +msgstr "Fi del cicle de vida:" + +#: wpvulnerability-process.php:616 +msgid "Supported" +msgstr "Compatible" + +#: wpvulnerability-process.php:652 +msgid "Plugin" +msgstr "Extensió" + +#: wpvulnerability-process.php:721 +msgid "Theme" +msgstr "Tema" + +#. translators: %s: end-of-life date +#: wpvulnerability-process.php:790 +#, php-format +msgid "End of life: %s" +msgstr "Fi del cicle de vida: %s" + +#: wpvulnerability-process.php:795 +msgid "EOL" +msgstr "EOL" + +#: wpvulnerability-run.php:30 +msgid "Network Settings" +msgstr "Paràmetres de xarxa" + +#: wpvulnerability-run.php:731 wpvulnerability-run.php:781 +#: wpvulnerability-run.php:791 wpvulnerability-run.php:836 +msgid "Vulnerabilities" +msgstr "Vulnerabilitats" + +#: wpvulnerability-schedule.php:30 +msgid "Every 6 hours" +msgstr "Cada 6 hores" + +#: wpvulnerability-schedule.php:303 +msgid "Database updates" +msgstr "Actualitzacions de la base de dades" + +#: wpvulnerability-schedule.php:309 +msgid "Log cleanup" +msgstr "Neteja del registre" + +#: wpvulnerability-schedule.php:439 +msgid "" +"Notifications are scheduled, but settings currently disable them. Please " +"review the notifications tab." +msgstr "Les notificacions estan programades, però la configuració actual les desactiva. Reviseu la pestanya de notificacions." + +#: wpvulnerability-schedule.php:442 +msgid "This event should not be scheduled for this site." +msgstr "Aquest esdeveniment no hauria d'estar programat per a aquest lloc." + +#: wpvulnerability-schedule.php:446 +msgid "Not expected for this site." +msgstr "No esperat per a aquest lloc." + +#: wpvulnerability-schedule.php:450 +msgid "No instances found." +msgstr "No s'han trobat instàncies." + +#: wpvulnerability-schedule.php:456 +msgid "Scheduled with an unexpected interval." +msgstr "Programat amb un interval inesperat." + +#: wpvulnerability-schedule.php:460 +msgid "Multiple instances detected." +msgstr "S'han detectat diverses instàncies." + +#: wpvulnerability-schedule.php:465 +msgid "Scheduled as expected." +msgstr "Programat com s'esperava." + +#: wpvulnerability-sitehealth.php:22 +msgid "There aren't plugins vulnerabilities" +msgstr "No hi ha vulnerabilitats a les extensions" + +#: wpvulnerability-sitehealth.php:30 +msgid "Shows possible vulnerabilities that exist in installed plugins." +msgstr "" +"Mostra les possibles vulnerabilitats que hi ha a les extensions instal·lades." + +#. translators: Number of plugins vulnerabilities. +#: wpvulnerability-sitehealth.php:43 +#, php-format +msgid "There is %d plugin with vulnerabilities" +msgid_plural "There are %d plugins with vulnerabilities" +msgstr[0] "Hi ha %d extensió amb vulnerabilitats" +msgstr[1] "Hi ha %d extensions amb vulnerabilitats" + +#: wpvulnerability-sitehealth.php:49 +msgid "" +"We've detected potential vulnerabilities in installed plugins. Please check " +"them and keep them updated." +msgstr "" +"Hem detectat possibles vulnerabilitats a les extensions instal·lades. " +"Reviseu-les i mantingueu-les actualitzades." + +#: wpvulnerability-sitehealth.php:57 +msgid "Update plugins" +msgstr "Actualitza les extensions" + +#: wpvulnerability-sitehealth.php:74 +msgid "There aren't themes vulnerabilities" +msgstr "No hi ha vulnerabilitats als temes" + +#: wpvulnerability-sitehealth.php:82 +msgid "Shows possible vulnerabilities that exist in installed themes." +msgstr "Mostra les possibles vulnerabilitats que hi ha als temes instal·lats." + +#. translators: Number of themes vulnerabilities. +#: wpvulnerability-sitehealth.php:95 +#, php-format +msgid "There is %d theme with vulnerabilities" +msgid_plural "There are %d themes with vulnerabilities" +msgstr[0] "Hi ha %d tema amb vulnerabilitats" +msgstr[1] "Hi ha %d temes amb vulnerabilitats" + +#: wpvulnerability-sitehealth.php:101 +msgid "" +"We've detected potential vulnerabilities in installed themes. Please check " +"them and keep them updated." +msgstr "" +"Hem detectat possibles vulnerabilitats als temes instal·lats. Reviseu-los i " +"mantingueu-los actualitzats." + +#: wpvulnerability-sitehealth.php:109 +msgid "Update themes" +msgstr "Actualitza els temes" + +#: wpvulnerability-sitehealth.php:126 +msgid "There aren't WordPress vulnerabilities" +msgstr "No hi ha vulnerabilitats al WordPress" + +#: wpvulnerability-sitehealth.php:134 +msgid "Shows possible vulnerabilities existing in the WordPress core." +msgstr "Mostra les possibles vulnerabilitats que hi ha al nucli del WordPress." + +#. translators: Number of core vulnerabilities. +#: wpvulnerability-sitehealth.php:147 +#, php-format +msgid "There is %d core vulnerability" +msgid_plural "There are %d core vulnerabilities" +msgstr[0] "Hi ha %d vulnerabilitat al nucli" +msgstr[1] "Hi ha %d vulnerabilitats al nucli" + +#: wpvulnerability-sitehealth.php:153 +msgid "" +"We've detected potential vulnerabilities in this WordPress installation. " +"Please check them and keep your installation updated." +msgstr "" +"Hem detectat possibles vulnerabilitats en aquesta instal·lació de WordPress. " +"Reviseu-les i mantingueu la instal·lació actualitzada." + +#: wpvulnerability-sitehealth.php:161 +msgid "Update WordPress" +msgstr "Actualitza el WordPress" + +#: wpvulnerability-sitehealth.php:180 +msgid "Nginx" +msgstr "Nginx" + +#: wpvulnerability-sitehealth.php:189 +msgid "Invalid software type" +msgstr "Tipus de programari no vàlid" + +#: wpvulnerability-sitehealth.php:192 +msgid "Error" +msgstr "Error" + +#: wpvulnerability-sitehealth.php:197 +msgid "The specified software type is not valid." +msgstr "El tipus de programari especificat no és vàlid." + +#. translators: name of the software. +#: wpvulnerability-sitehealth.php:207 +#, php-format +msgid "There aren't %s vulnerabilities" +msgstr "No hi ha vulnerabilitats a %s" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:216 +#, php-format +msgid "Shows possible vulnerabilities existing in %s." +msgstr "Mostra les possibles vulnerabilitats existents a %s." + +#. translators: Software and number of vulnerabilities. +#: wpvulnerability-sitehealth.php:229 +#, php-format +msgid "There is %1$d %2$s vulnerability" +msgid_plural "There are %1$d %2$s vulnerabilities" +msgstr[0] "Hi ha %1$d %2$s vulnerabilitat" +msgstr[1] "Hi ha %1$d %2$s vulnerabilitats" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:237 +#, php-format +msgid "" +"We've detected potential vulnerabilities in %s. Please check them and keep " +"your installation updated." +msgstr "" +"Hem detectat possibles vulnerabilitats a %s. Reviseu-les i mantingueu la " +"instal·lació actualitzada." + +#: wpvulnerability-sitehealth.php:246 +msgid "How to update PHP" +msgstr "Com actualitzar el PHP" + +#: wpvulnerability-sitehealth.php:386 +msgid "WPVulnerability Core" +msgstr "WPVulnerability Nucli" + +#: wpvulnerability-sitehealth.php:394 +msgid "WPVulnerability Themes" +msgstr "WPVulnerability Temes" + +#: wpvulnerability-sitehealth.php:402 +msgid "WPVulnerability Plugins" +msgstr "WPVulnerability Extensions" + +#: wpvulnerability-sitehealth.php:410 +msgid "WPVulnerability PHP" +msgstr "WPVulnerability PHP" + +#: wpvulnerability-sitehealth.php:418 +msgid "WPVulnerability Apache HTTPD" +msgstr "WPVulnerability Apache HTTPD" + +#: wpvulnerability-sitehealth.php:426 +msgid "WPVulnerability Nginx" +msgstr "WPVulnerability Nginx" + +#: wpvulnerability-sitehealth.php:434 +msgid "WPVulnerability MariaDB" +msgstr "WPVulnerability MariaDB" + +#: wpvulnerability-sitehealth.php:442 +msgid "WPVulnerability MySQL" +msgstr "WPVulnerability MySQL" + +#: wpvulnerability-sitehealth.php:450 +msgid "WPVulnerability ImageMagick" +msgstr "WPVulnerability ImageMagick" + +#: wpvulnerability-sitehealth.php:458 +msgid "WPVulnerability curl" +msgstr "WPVulnerability curl" + +#: wpvulnerability-sitehealth.php:466 +msgid "WPVulnerability memcached" +msgstr "WPVulnerability memcached" + +#: wpvulnerability-sitehealth.php:474 +msgid "WPVulnerability redis" +msgstr "WPVulnerability Redis" + +#: wpvulnerability-sitehealth.php:482 +msgid "WPVulnerability sqlite" +msgstr "WPVulnerability SQLite" + +#: wpvulnerability-themes.php:196 wpvulnerability-themes.php:492 +msgid "This theme is closed. Please replace it with another." +msgstr "Aquest tema està clausurat. Reemplaceu-lo per un altre." + +#: wpvulnerability-themes.php:199 wpvulnerability-themes.php:495 +msgid "" +"This vulnerability appears to be unpatched. Stay tuned for upcoming theme " +"updates." +msgstr "" +"Sembla que aquesta vulnerabilitat no està corregida. Estigueu atents a les " +"properes actualitzacions del tema." + +#: wpvulnerability-themes.php:391 +msgid "" +"This theme has known vulnerabilities that may be affecting your installed " +"version." +msgstr "Aquest tema té vulnerabilitats conegudes que poden afectar la vostra versió instal·lada." + +#~ msgid "%1$s has a known vulnerability that may be affecting this version." +#~ msgstr "" +#~ "%1$s té una vulnerabilitat coneguda que pot estar afectant aquesta versió." + +#~ msgid "Global score: " +#~ msgstr "Puntuació global: " + +#~ msgid "Severity: " +#~ msgstr "Gravetat: " + +#~ msgid "" +#~ "WordPress %1$s has a known vulnerability that may be affecting this " +#~ "version." +#~ msgstr "" +#~ "El WordPress %1$s té una vulnerabilitat coneguda que pot estar afectant " +#~ "aquesta versió." diff --git a/languages/wpvulnerability-de.l10n.php b/languages/wpvulnerability-de.l10n.php new file mode 100644 index 0000000..987af55 --- /dev/null +++ b/languages/wpvulnerability-de.l10n.php @@ -0,0 +1,2 @@ +NULL,'plural-forms'=>'nplurals=2; plural=n != 1;','language'=>'de','project-id-version'=>'Plugins - WPVulnerability - Development (trunk)','pot-creation-date'=>'2026-05-27T16:32:22+00:00','po-revision-date'=>'2025-07-19 00:43:35+0000','x-generator'=>'GlotPress/4.0.3','messages'=>['WPVulnerability'=>'WPVulnerability','https://www.wpvulnerability.com/plugin/'=>'https://www.wpvulnerability.com/plugin/','Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API.'=>'Erhalten Sie Informationen über mögliche Sicherheitslücken in Ihrer WordPress-Installation von der WordPress Vulnerability Database API.','ROBOTSTXT'=>'ROBOTSTXT','https://www.robotstxt.es/'=>'https://www.robotstxt.es/','This command requires a WordPress administrator. Run with --user=.'=>'Dieser Befehl erfordert einen WordPress-Administrator. Ausführen mit --user=.','No core vulnerabilities found.'=>'Keine Core-Schwachstellen gefunden.','No plugin vulnerabilities found.'=>'Keine Plugin-Schwachstellen gefunden.','No theme vulnerabilities found.'=>'Keine Theme-Schwachstellen gefunden.','No %s vulnerabilities found.'=>'Keine %s-Schwachstellen gefunden.','Data from source has been reloaded.'=>'Daten aus der Quelle wurden neu geladen.','You do not have permission to reload data.'=>'Sie haben keine Berechtigung, Daten neu zu laden.','Test email has been sent.'=>'Test-E-Mail wurde gesendet.','Test email has failed. Please, check your email settings.'=>'Test-E-Mail ist fehlgeschlagen. Bitte überprüfen Sie Ihre E-Mail-Einstellungen.','You do not have permission to send test emails.'=>'Sie haben keine Berechtigung, Test-E-Mails zu senden.','WPVulnerability cron events have been repaired.'=>'WPVulnerability-Cron-Ereignisse wurden repariert.','You do not have permission to repair cron events.'=>'Sie haben keine Berechtigung, Cron-Ereignisse zu reparieren.','All logs have been deleted.'=>'Alle Protokolle wurden gelöscht.','You do not have permission to delete logs.'=>'Sie haben keine Berechtigung, Protokolle zu löschen.','Uninstall preference saved.'=>'Deinstallationseinstellung gespeichert.','WPVulnerability has been reset to defaults and reloaded.'=>'WPVulnerability wurde auf die Standardeinstellungen zurückgesetzt und neu geladen.','You do not have permission to reset WPVulnerability.'=>'Sie haben keine Berechtigung, WPVulnerability zurückzusetzen.','All caches have been cleared.'=>'Alle Caches wurden geleert.','You do not have permission to clear caches.'=>'Sie haben keine Berechtigung, Caches zu leeren.','Plugin and theme signatures have been reset.'=>'Plugin- und Theme-Signaturen wurden zurückgesetzt.','You do not have permission to reset signatures.'=>'Sie haben keine Berechtigung, Signaturen zurückzusetzen.','You do not have permission to export debug information.'=>'Sie haben keine Berechtigung, Debug-Informationen zu exportieren.','Database update has been executed.'=>'Datenbankaktualisierung wurde ausgeführt.','You do not have permission to run database updates.'=>'Sie haben keine Berechtigung, Datenbankaktualisierungen durchzuführen.','Notification has been sent.'=>'Benachrichtigung wurde gesendet.','Notification sending failed.'=>'Senden der Benachrichtigung fehlgeschlagen.','You do not have permission to send notifications.'=>'Sie haben keine Berechtigung, Benachrichtigungen zu senden.','Notifications'=>'Benachrichtigungen','Analysis'=>'Analyse','Logs'=>'Protokolle','Security'=>'Sicherheit','Tools'=>'Werkzeuge','Debug'=>'Debug','About'=>'Über','Notification Settings'=>'Benachrichtigungseinstellungen','Configure how and when you want to receive vulnerability notifications.'=>'Konfigurieren Sie, wie und wann Sie Sicherheitslücken-Benachrichtigungen erhalten möchten.','Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software.'=>'Bleiben Sie über Sicherheitslücken in Ihrer WordPress-Installation, Plugins, Themes und Server-Software informiert.','Cache Expiration Time'=>'Cache-Ablaufzeit','FORCED'=>'ERZWUNGEN','How long to cache vulnerability data before refreshing from the API.'=>'Wie lange Sicherheitslückendaten zwischengespeichert werden, bevor sie von der API aktualisiert werden.','%d hour'=>'%d Stunde' . "\0" . '%d Stunden','You can force the cache time via wp-config.php constant. Learn more →'=>'Sie können die Cache-Zeit über eine wp-config.php-Konstante erzwingen. Mehr erfahren →','Notification Frequency'=>'Benachrichtigungsfrequenz','Choose how often you want to receive vulnerability notifications.'=>'Wählen Sie, wie oft Sie Sicherheitslücken-Benachrichtigungen erhalten möchten.','Never - Disable automatic notifications'=>'Nie – Automatische Benachrichtigungen deaktivieren','Daily - Receive notifications every day'=>'Täglich – Benachrichtigungen jeden Tag erhalten','Weekly - Receive notifications once a week'=>'Wöchentlich – Benachrichtigungen einmal pro Woche erhalten','Day:'=>'Tag:','Monday'=>'Montag','Tuesday'=>'Dienstag','Wednesday'=>'Mittwoch','Thursday'=>'Donnerstag','Friday'=>'Freitag','Saturday'=>'Samstag','Sunday'=>'Sonntag','Time:'=>'Uhrzeit:','(24-hour format, server timezone)'=>'(24-Stunden-Format, Server-Zeitzone)','Notification Channels'=>'Benachrichtigungskanäle','Select where you want to receive notifications.'=>'Wählen Sie aus, wo Sie Benachrichtigungen erhalten möchten.','Email'=>'E-Mail','Email Addresses (separated by commas):'=>'E-Mail-Adressen (durch Kommas getrennt):','Default:'=>'Standard:','Slack'=>'Slack','Slack Webhook URL:'=>'Slack Webhook-URL:','Learn how to create a Slack incoming webhook →'=>'Erfahren Sie, wie Sie einen eingehenden Slack-Webhook erstellen →','Microsoft Teams'=>'Microsoft Teams','Teams Webhook URL:'=>'Teams Webhook-URL:','Learn how to create a Teams incoming webhook →'=>'Erfahren Sie, wie Sie einen eingehenden Teams-Webhook erstellen →','Discord'=>'Discord','Discord Webhook URL:'=>'Discord Webhook-URL:','Learn how to create a Discord webhook →'=>'Erfahren Sie, wie Sie einen Discord-Webhook erstellen →','Telegram'=>'Telegram','Telegram Bot Token:'=>'Telegram-Bot-Token:','Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','Telegram Chat ID:'=>'Telegram Chat-ID:','Learn how to create a Telegram bot and get Chat ID →'=>'Erfahren Sie, wie Sie einen Telegram-Bot erstellen und die Chat-ID erhalten →','Save Notification Settings'=>'Benachrichtigungseinstellungen speichern','WordPress Components'=>'WordPress-Komponenten','WordPress Core'=>'WordPress Core','Plugins'=>'Plugins','Themes'=>'Themes','Software & Languages'=>'Software & Sprachen','PHP'=>'PHP','Web Servers'=>'Webserver','Apache HTTPD'=>'Apache HTTPD','nginx'=>'nginx','Databases'=>'Datenbanken','MariaDB'=>'MariaDB','MySQL'=>'MySQL','SQLite'=>'SQLite','Additional Tools'=>'Zusätzliche Werkzeuge','ImageMagick'=>'ImageMagick','curl'=>'curl','memcached'=>'memcached','Redis'=>'Redis','Component Analysis Settings'=>'Einstellungen für die Komponentenanalyse','Enable or disable vulnerability analysis for specific components.'=>'Aktivieren oder deaktivieren Sie die Schwachstellenanalyse für bestimmte Komponenten.','Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red.'=>'Markieren Sie die Komponenten, die Sie von Schwachstellenscans und Berichten AUSBLENDEN möchten. Nicht markierte Komponenten werden aktiv analysiert. Komponenten mit aktiver Analyse werden grün angezeigt, ausgeblendete Komponenten rot.','Hidden (forced by constant)'=>'Ausgeblendet (durch Konstante erzwungen)','🔴 Analysis disabled'=>'🔴 Analyse deaktiviert','🟢 Analysis active'=>'🟢 Analyse aktiv','Tip:'=>'Tipp:','You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →'=>'Sie können Komponenten über wp-config.php-Konstanten deaktivieren. Mehr über das erzwungene Ausblenden von Prüfungen erfahren →','Save Analysis Settings'=>'Analyseeinstellungen speichern','« Previous'=>'« Zurück','Next »'=>'Weiter »','Log entry not found or has been removed.'=>'Protokolleintrag nicht gefunden oder wurde entfernt.','Unable to load the requested log entry.'=>'Der angeforderte Protokolleintrag konnte nicht geladen werden.','Log Configuration'=>'Protokollkonfiguration','Total Logs'=>'Protokolle insgesamt','Retention Period'=>'Aufbewahrungszeitraum','Disabled'=>'Deaktiviert','%d day'=>'%d Tag' . "\0" . '%d Tage','Log Retention Period'=>'Protokoll-Aufbewahrungszeitraum','None (Disabled)'=>'Kein (Deaktiviert)','This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant.'=>'Dieser Wert wird durch die Konstante WPVULNERABILITY_LOG_RETENTION_DAYS erzwungen.','Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted.'=>'Wählen Sie, wie lange WPVulnerability API-Antwortprotokolle aufbewahren soll. Ältere Protokolle werden automatisch gelöscht.','Save Configuration'=>'Konfiguration speichern','Log retention is currently disabled.'=>'Protokollaufbewahrung ist derzeit deaktiviert.','API responses are not being saved.'=>'API-Antworten werden nicht gespeichert.','Log Details'=>'Protokolldetails','Date'=>'Datum','API Endpoint'=>'API-Endpunkt','API Response'=>'API-Antwort','Back to Logs'=>'Zurück zu den Protokollen','No logs available'=>'Keine Protokolle verfügbar','API response logs will appear here once the vulnerability scanner runs.'=>'API-Antwortprotokolle werden hier angezeigt, sobald der Schwachstellenscanner ausgeführt wird.','API Response Logs'=>'API-Antwortprotokolle','Show:'=>'Anzeigen:','Apply'=>'Anwenden','Showing %1$s–%2$s of %3$s'=>'%1$s–%2$s von %3$s angezeigt','Actions'=>'Aktionen','View'=>'Ansehen','Danger Zone'=>'Gefahrenbereich','Permanently delete all API response logs. This action cannot be undone.'=>'Alle API-Antwortprotokolle dauerhaft löschen. Diese Aktion kann nicht rückgängig gemacht werden.','Are you sure you want to delete all logs? This action cannot be undone.'=>'Sind Sie sicher, dass Sie alle Protokolle löschen möchten? Diese Aktion kann nicht rückgängig gemacht werden.','Delete All Logs'=>'Alle Protokolle löschen','Reload Data from API'=>'Daten von der API neu laden','Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information.'=>'Alle Core-, Plugin-, Theme- und sonstigen Komponenteninformationen direkt von der API neu laden, um aktuelle Daten zu erhalten. Dadurch wird der Cache geleert und neue Sicherheitslückeninformationen abgerufen.','Reload Data'=>'Daten neu laden','Test Email Notifications'=>'Test-E-Mail-Benachrichtigungen','Send a test email notification with current vulnerability data to verify your email configuration is working correctly.'=>'Senden Sie eine Test-E-Mail-Benachrichtigung mit aktuellen Sicherheitslückendaten, um zu überprüfen, ob Ihre E-Mail-Konfiguration korrekt funktioniert.','From address (configured via constant):'=>'Absenderadresse (über Konstante konfiguriert):','From address (default):'=>'Absenderadresse (Standard):','Learn how to customize the email sender address →'=>'Erfahren Sie, wie Sie die E-Mail-Absenderadresse anpassen →','Send Test Email'=>'Test-E-Mail senden','WP-Cron Status'=>'WP-Cron-Status','View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly.'=>'WP-Cron-geplante Ereignisse anzeigen und verwalten. Vergleichen Sie erwartete Zeitpläne mit tatsächlichen Cron-Jobs, um sicherzustellen, dass automatisierte Aufgaben korrekt ausgeführt werden.','No cron data available.'=>'Keine Cron-Daten verfügbar.','Hook'=>'Hook','Expected'=>'Erwartet','Found'=>'Gefunden','Next Run'=>'Nächste Ausführung','Status'=>'Status','Not expected'=>'Nicht erwartet','None'=>'Keine','OK'=>'OK','⚠️ Unexpected WPVulnerability Events'=>'⚠️ Unerwartete WPVulnerability-Ereignisse','No interval'=>'Kein Intervall','Next:'=>'Nächste:','Repair Cron Events'=>'Cron-Ereignisse reparieren','Uninstall Data'=>'Deinstallationsdaten','By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall.'=>'Standardmäßig werden alle Plugin-Daten erhalten, wenn WPVulnerability gelöscht wird. Aktivieren Sie die untenstehende Option nur, wenn Sie möchten, dass alle Optionen, Protokolle und zwischengespeicherten Daten bei der Deinstallation dauerhaft entfernt werden.','Delete all plugin data on uninstall'=>'Alle Plugin-Daten bei der Deinstallation löschen','Default: unchecked (data preserved). Check only if you want a clean removal.'=>'Standard: nicht markiert (Daten erhalten). Nur markieren, wenn Sie eine vollständige Entfernung wünschen.','Save preference'=>'Einstellung speichern','Reset WPVulnerability'=>'WPVulnerability zurücksetzen','Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API.'=>'Alle WPVulnerability-Einstellungen, zwischengespeicherten Daten, Protokolle und geplanten Ereignisse löschen, dann die Standardwerte wiederherstellen und Daten von der API neu laden.','This action cannot be undone.'=>'Diese Aktion kann nicht rückgängig gemacht werden.','Are you sure you want to reset all WPVulnerability data? This action cannot be undone.'=>'Sind Sie sicher, dass Sie alle WPVulnerability-Daten zurücksetzen möchten? Diese Aktion kann nicht rückgängig gemacht werden.','Reset Plugin'=>'Plugin zurücksetzen','Vulnerability Database Statistics'=>'Statistiken der Schwachstellendatenbank','%s vulnerability'=>'%s Schwachstelle' . "\0" . '%s Schwachstellen','(%s product)'=>'(%s Produkt)' . "\0" . '(%s Produkte)','No data'=>'Keine Daten','Database last updated: %s'=>'Datenbank zuletzt aktualisiert: %s','Intelligence Sources'=>'Intelligence-Quellen','Number of vulnerabilities contributed by each intelligence source.'=>'Anzahl der Schwachstellen, die von jeder Intelligence-Quelle beigesteuert wurden.','Source'=>'Quelle','Core'=>'Core','Sponsors'=>'Sponsoren','No sponsor data available.'=>'Keine Sponsorendaten verfügbar.','Contributors'=>'Mitwirkende','No contributor data available.'=>'Keine Daten zu Mitwirkenden verfügbar.','You do not have sufficient permissions to access this page.'=>'Sie haben keine ausreichenden Berechtigungen, um auf diese Seite zuzugreifen.','WPVulnerability settings'=>'WPVulnerability-Einstellungen','Configure and save these settings to receive notifications.'=>'Konfigurieren und speichern Sie diese Einstellungen, um Benachrichtigungen zu erhalten.','Configure and save these settings to hide vulnerabilities.'=>'Konfigurieren und speichern Sie diese Einstellungen, um Sicherheitslücken auszublenden.','Default administrator email'=>'Standard Administrator E-Mail','Read more if you want to force the cache time.'=>'Mehr lesen, wenn Sie die Cache-Zeit erzwingen möchten.','Never'=>'Nie','Daily'=>'Täglich','Weekly'=>'Wöchentlich','Day'=>'Tag','Hour'=>'Stunde','Minute'=>'Minute','Read more about how to force the deactivation of an item.'=>'Mehr lesen über das erzwungene Deaktivieren eines Elements.','Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com'=>'Ungültige Slack-Webhook-URL. Muss eine gültige HTTPS-URL von hooks.slack.com sein.','Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com'=>'Ungültige Microsoft Teams-Webhook-URL. Muss eine gültige HTTPS-URL von office.com, office365.com oder api.hooks.microsoft.com sein.','Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com'=>'Ungültige Discord-Webhook-URL. Muss eine gültige HTTPS-URL von discord.com oder discordapp.com sein.','Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Ungültiges Format für Telegram-Bot-Token. Muss wie folgt aussehen: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','All Clear'=>'Alles in Ordnung','%d Critical Issue Found'=>'%d kritisches Problem gefunden' . "\0" . '%d kritische Probleme gefunden','%d Issue Found'=>'%d Problem gefunden' . "\0" . '%d Probleme gefunden','Never checked'=>'Noch nie geprüft','%d minute ago'=>'vor %d Minute' . "\0" . 'vor %d Minuten','%d hour ago'=>'vor %d Stunde' . "\0" . 'vor %d Stunden','Last checked: %s'=>'Zuletzt geprüft: %s','Refresh Now'=>'Jetzt aktualisieren','No vulnerabilities detected'=>'Keine Schwachstellen gefunden','Your site is up to date and secure'=>'Ihre Website ist aktuell und sicher','Server Software'=>'Server-Software','Site Health'=>'Website-Gesundheit','Settings'=>'Einstellungen','WPVulnerability Status'=>'WPVulnerability Status','Receive vulnerability notifications'=>'Sicherheitslücken-Benachrichtigungen erhalten','Cache expiration time'=>'Cache-Ablaufzeit','How often you want to receive notifications'=>'Wie oft Sie Benachrichtigungen erhalten möchten','Where do you want to receive notifications?'=>'Wo möchten Sie Benachrichtigungen erhalten?','Email addresses to notify (separated by commas)'=>'E-Mail-Adressen für Benachrichtigungen (durch Kommas getrennt)','Slack webhook URL'=>'Slack-Webhook-URL','Teams webhook URL'=>'Teams-Webhook-URL','Vulnerabilities to hide'=>'Auszublendende Schwachstellen','What do you want to hide?'=>'Was möchten Sie ausblenden?','Standard (Hybrid Detection)'=>'Standard (Hybride Erkennung)','Strict (Extensions Only)'=>'Streng (Nur Erweiterungen)','Disabled (No Detection)'=>'Deaktiviert (Keine Erkennung)','Security Status'=>'Sicherheitsstatus','Security Mode'=>'Sicherheitsmodus','Shell Execution'=>'Shell-Ausführung','Enabled'=>'Aktiviert','Audit Logging'=>'Audit-Protokollierung','Enabled (%d days)'=>'Aktiviert (%d Tage)','Total Log Entries'=>'Gesamte Protokolleinträge','Last Shell Execution'=>'Letzte Shell-Ausführung','%s ago'=>'vor %s','Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.'=>'Sicherheitseinstellungen über wp-config.php-Konstanten konfigurieren: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.','See security configuration documentation for details.'=>'Siehe Sicherheitskonfigurationsdokumentation für Details.','Memcached'=>'Memcached','Imagick Extension'=>'Imagick-Erweiterung','Redis Extension'=>'Redis-Erweiterung','Memcached Extension'=>'Memcached-Erweiterung','Memcache Extension'=>'Memcache-Erweiterung','SQLite3 Extension'=>'SQLite3-Erweiterung','PDO SQLite'=>'PDO SQLite','Shell Command'=>'Shell-Befehl','Binary Check'=>'Binärprüfung','Not Detected'=>'Nicht erkannt','Software Detection Methods'=>'Software-Erkennungsmethoden','Shows which detection method was used for each software component and the reliability score.'=>'Zeigt, welche Erkennungsmethode für jede Softwarekomponente verwendet wurde und den Zuverlässigkeitswert.','Component'=>'Komponente','Version'=>'Version','Detection Method'=>'Erkennungsmethode','Reliability'=>'Zuverlässigkeit','Not detected'=>'Nicht erkannt','Shell Execution Audit Logs'=>'Shell-Ausführungs-Audit-Protokolle','Complete audit trail of shell command executions for security monitoring.'=>'Vollständige Audit-Spur der Shell-Befehlsausführungen für die Sicherheitsüberwachung.','No shell execution logs found.'=>'Keine Shell-Ausführungsprotokolle gefunden.','Logs will appear here when shell commands are executed for software detection.'=>'Protokolle werden hier angezeigt, wenn Shell-Befehle zur Software-Erkennung ausgeführt werden.','Time'=>'Zeit','Command'=>'Befehl','User'=>'Benutzer','Output'=>'Ausgabe','Showing the %d most recent log entries.'=>'Die %d neuesten Protokolleinträge werden angezeigt.','Invalid nonce.'=>'Ungültiges Nonce.','Insufficient permissions.'=>'Unzureichende Berechtigungen.','No component specified.'=>'Keine Komponente angegeben.','Debug Information'=>'Debug-Informationen','This tab is only visible when WP_DEBUG is enabled. Use with caution.'=>'Dieser Tab ist nur sichtbar, wenn WP_DEBUG aktiviert ist. Mit Vorsicht verwenden.','System Information'=>'Systeminformationen','WordPress Version'=>'WordPress-Version','Multisite'=>'Multisite','Yes'=>'Ja','No'=>'Nein','Language'=>'Sprache','PHP Version'=>'PHP-Version','PHP Extensions'=>'PHP-Erweiterungen','PHP Memory Limit'=>'PHP-Speicherlimit','Database'=>'Datenbank','Web Server'=>'Webserver','WP_DEBUG'=>'WP_DEBUG','WP_DEBUG_LOG'=>'WP_DEBUG_LOG','Path:'=>'Pfad:','Size: %s'=>'Größe: %s','View Log File'=>'Protokolldatei anzeigen','Log file is not web-accessible (outside wp-content)'=>'Protokolldatei ist nicht über das Web zugänglich (außerhalb von wp-content)','Log file does not exist yet'=>'Protokolldatei existiert noch nicht','Plugin Version'=>'Plugin-Version','Component Detection'=>'Komponentenerkennung','Version Detected'=>'Version erkannt','Analyzed'=>'Analysiert','Cache Status'=>'Cache-Status','Configuration Summary'=>'Konfigurationsübersicht','Cache Duration'=>'Cache-Dauer','Log Retention'=>'Protokollaufbewahrung','Components Analyzed'=>'Analysierte Komponenten','Notification Email'=>'Benachrichtigungs-E-Mail','Slack Webhook'=>'Slack-Webhook','Configured & Enabled'=>'Konfiguriert & Aktiviert','Configured (Disabled)'=>'Konfiguriert (Deaktiviert)','Not configured'=>'Nicht konfiguriert','Teams Webhook'=>'Teams-Webhook','Discord Webhook'=>'Discord-Webhook','Telegram Bot'=>'Telegram-Bot','Cron Status'=>'Cron-Status','Update Database'=>'Datenbank aktualisieren','Next run: %s'=>'Nächste Ausführung: %s','Not scheduled'=>'Nicht geplant','Send Notification'=>'Benachrichtigung senden','Run Update Now'=>'Aktualisierung jetzt ausführen','Run Notification Now'=>'Benachrichtigung jetzt ausführen','You do not have permission to run these actions.'=>'Sie haben keine Berechtigung, diese Aktionen auszuführen.','API Testing'=>'API-Tests','Test API connectivity for each component. Click a button to send a test request.'=>'API-Konnektivität für jede Komponente testen. Klicken Sie auf eine Schaltfläche, um eine Test-Anfrage zu senden.','Test %s'=>'%s testen','Testing...'=>'Wird getestet...','HTTP Code:'=>'HTTP-Code:','Response Time:'=>'Antwortzeit:','Response Preview'=>'Antwortvorschau','Test'=>'Test','Error:'=>'Fehler:','AJAX request failed.'=>'AJAX-Anfrage fehlgeschlagen.','You do not have permission to test API connectivity.'=>'Sie haben keine Berechtigung, die API-Konnektivität zu testen.','Database Options Viewer'=>'Datenbankoptionen-Viewer','View the raw data stored in WordPress options.'=>'Die in WordPress-Optionen gespeicherten Rohdaten anzeigen.','Select an option...'=>'Option auswählen...','Option not found or empty.'=>'Option nicht gefunden oder leer.','Quick Actions'=>'Schnellaktionen','Perform debugging actions. Use with caution.'=>'Debug-Aktionen ausführen. Mit Vorsicht verwenden.','Are you sure you want to clear all caches?'=>'Sind Sie sicher, dass Sie alle Caches leeren möchten?','Clear All Caches'=>'Alle Caches leeren','Are you sure you want to reset signatures?'=>'Sind Sie sicher, dass Sie die Signaturen zurücksetzen möchten?','Reset Signatures'=>'Signaturen zurücksetzen','Export Debug Info'=>'Debug-Informationen exportieren','You do not have permission to perform these actions.'=>'Sie haben keine Berechtigung, diese Aktionen auszuführen.','Settings saved.'=>'Einstellungen gespeichert.','WPVulnerability cron events have been repaired across the network.'=>'WPVulnerability-Cron-Ereignisse wurden netzwerkweit repariert.','You do not have permission to access this page.'=>'Sie haben keine Berechtigung, auf diese Seite zuzugreifen.','WordPress %1$s has a known vulnerability that may be affecting your installed version.'=>'WordPress %1$s hat eine bekannte Sicherheitslücke, die Ihre installierte Version betreffen könnte.','Actively exploited'=>'Aktiv ausgenutzt','Public exploit'=>'Öffentlicher Exploit','Automatable'=>'Automatisierbar','References:'=>'Referenzen:','Invalid component specified.'=>'Ungültige Komponente angegeben.','Version not detected for this component.'=>'Version für diese Komponente nicht erkannt.','API request successful.'=>'API-Anfrage erfolgreich.','API returned HTTP code %d.'=>'API hat HTTP-Code %d zurückgegeben.','WPVulnerability Logs'=>'WPVulnerability-Protokolle','WPVulnerability Log'=>'WPVulnerability-Protokoll','Low'=>'Niedrig','Medium'=>'Mittel','High'=>'Hoch','Critical'=>'Kritisch','WPVulnerability Shell Logs'=>'WPVulnerability-Shell-Protokolle','WPVulnerability Shell Log'=>'WPVulnerability-Shell-Protokoll','Every week'=>'Jede Woche','Every day'=>'Jeden Tag','Invalid request.'=>'Ungültige Anfrage.','You have unsubscribed from WPVulnerability notifications.'=>'Sie haben WPVulnerability-Benachrichtigungen abbestellt.','Learn more about the WordPress Vulnerability Database API at %2$s'=>'Erfahren Sie mehr über die WordPress Vulnerability Database API unter %2$s','Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings.'=>'Möchten Sie diese Benachrichtigungen nicht mehr erhalten? Abmelden oder die E-Mail-Frequenz in den WPVulnerability-Einstellungen auf Nie ändern.','No vulnerabilities found'=>'Keine Schwachstellen gefunden','This is likely a test. The site does not have vulnerabilities.'=>'Dies ist wahrscheinlich ein Test. Die Website hat keine Schwachstellen.','Core vulnerabilities'=>'Core-Schwachstellen','Plugins vulnerabilities'=>'Plugin-Schwachstellen','Themes vulnerabilities'=>'Theme-Schwachstellen','PHP vulnerabilities'=>'PHP-Schwachstellen','Apache HTTPD vulnerabilities'=>'Apache HTTPD-Schwachstellen','Nginx vulnerabilities'=>'Nginx-Schwachstellen','MariaDB vulnerabilities'=>'MariaDB-Schwachstellen','MySQL vulnerabilities'=>'MySQL-Schwachstellen','ImageMagick vulnerabilities'=>'ImageMagick-Schwachstellen','curl vulnerabilities'=>'curl-Schwachstellen','memcached vulnerabilities'=>'memcached-Schwachstellen','Redis vulnerabilities'=>'Redis-Schwachstellen','SQLite vulnerabilities'=>'SQLite-Schwachstellen','Vulnerability found: %s'=>'Schwachstelle gefunden: %s','Vulnerability found'=>'Schwachstelle gefunden','%1$s has a known vulnerability that may be affecting your installed version.'=>'%1$s hat eine bekannte Sicherheitslücke, die Ihre installierte Version betreffen könnte.','This plugin is closed. Please replace it with another.'=>'Dieses Plugin ist geschlossen. Bitte ersetzen Sie es durch ein anderes.','This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates.'=>'Diese Schwachstelle scheint nicht gepatcht zu sein. Bleiben Sie für kommende Plugin-Updates auf dem Laufenden.','It hasn\'t been updated in over a year.'=>'Wurde seit über einem Jahr nicht mehr aktualisiert.','It may no longer be available (closed?).'=>'Ist allenfalls nicht mehr verfügbar (geschlossen?).','Last updated on'=>'Zuletzt aktualisiert am','Vulnerabilities (%d)'=>'Schwachstellen (%d)','%s running'=>'%s läuft','End of Life'=>'End of Life','End of life:'=>'End of Life:','Supported'=>'Unterstützt','Plugin'=>'Plugin','Theme'=>'Theme','End of life: %s'=>'End of Life: %s','EOL'=>'EOL','Network Settings'=>'Netzwerk-Einstellungen','Vulnerabilities'=>'Schwachstellen','Every 6 hours'=>'Alle 6 Stunden','Database updates'=>'Datenbankaktualisierungen','Log cleanup'=>'Protokollbereinigung','Notifications are scheduled, but settings currently disable them. Please review the notifications tab.'=>'Benachrichtigungen sind geplant, aber die Einstellungen deaktivieren sie derzeit. Bitte überprüfen Sie den Benachrichtigungs-Tab.','This event should not be scheduled for this site.'=>'Dieses Ereignis sollte nicht für diese Website geplant sein.','Not expected for this site.'=>'Für diese Website nicht erwartet.','No instances found.'=>'Keine Instanzen gefunden.','Scheduled with an unexpected interval.'=>'Mit einem unerwarteten Intervall geplant.','Multiple instances detected.'=>'Mehrere Instanzen erkannt.','Scheduled as expected.'=>'Wie erwartet geplant.','There aren\'t plugins vulnerabilities'=>'Es gibt keine Plugin-Schwachstellen','Shows possible vulnerabilities that exist in installed plugins.'=>'Zeigt mögliche Schwachstellen, die in installierten Plugins existieren.','There is %d plugin with vulnerabilities'=>'Es gibt %d Plugin mit Schwachstellen' . "\0" . 'Es gibt %d Plugins mit Schwachstellen','We\'ve detected potential vulnerabilities in installed plugins. Please check them and keep them updated.'=>'Wir haben potenzielle Schwachstellen in installierten Plugins erkannt. Bitte überprüfen Sie diese und halten Sie sie aktuell.','Update plugins'=>'Plugins aktualisieren','There aren\'t themes vulnerabilities'=>'Es gibt keine Theme-Schwachstellen','Shows possible vulnerabilities that exist in installed themes.'=>'Zeigt mögliche Schwachstellen, die in installierten Themes existieren.','There is %d theme with vulnerabilities'=>'Es gibt %d Theme mit Schwachstellen' . "\0" . 'Es gibt %d Themes mit Schwachstellen','We\'ve detected potential vulnerabilities in installed themes. Please check them and keep them updated.'=>'Wir haben potenzielle Schwachstellen in installierten Themes erkannt. Bitte überprüfen Sie diese und halten Sie sie aktuell.','Update themes'=>'Themes aktualisieren','There aren\'t WordPress vulnerabilities'=>'Es gibt keine WordPress-Schwachstellen','Shows possible vulnerabilities existing in the WordPress core.'=>'Zeigt mögliche Schwachstellen, die im WordPress Core existieren.','There is %d core vulnerability'=>'Es gibt %d Core-Schwachstelle' . "\0" . 'Es gibt %d Core-Schwachstellen','We\'ve detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated.'=>'Wir haben potenzielle Schwachstellen in dieser WordPress-Installation erkannt. Bitte überprüfen Sie diese und halten Sie Ihre Installation aktuell.','Update WordPress'=>'WordPress aktualisieren','Nginx'=>'Nginx','Invalid software type'=>'Ungültiger Software-Typ','Error'=>'Fehler','The specified software type is not valid.'=>'Der angegebene Software-Typ ist nicht gültig.','There aren\'t %s vulnerabilities'=>'Es gibt keine %s-Schwachstellen','Shows possible vulnerabilities existing in %s.'=>'Zeigt mögliche Schwachstellen, die in %s existieren.','There is %1$d %2$s vulnerability'=>'Es gibt %1$d %2$s-Schwachstelle' . "\0" . 'Es gibt %1$d %2$s-Schwachstellen','We\'ve detected potential vulnerabilities in %s. Please check them and keep your installation updated.'=>'Wir haben potenzielle Schwachstellen in %s erkannt. Bitte überprüfen Sie diese und halten Sie Ihre Installation aktuell.','How to update PHP'=>'Wie man PHP aktualisiert','WPVulnerability Core'=>'WPVulnerability Core','WPVulnerability Themes'=>'WPVulnerability Themes','WPVulnerability Plugins'=>'WPVulnerability Plugins','WPVulnerability PHP'=>'WPVulnerability PHP','WPVulnerability Apache HTTPD'=>'WPVulnerability Apache HTTPD','WPVulnerability Nginx'=>'WPVulnerability Nginx','WPVulnerability MariaDB'=>'WPVulnerability MariaDB','WPVulnerability MySQL'=>'WPVulnerability MySQL','WPVulnerability ImageMagick'=>'WPVulnerability ImageMagick','WPVulnerability curl'=>'WPVulnerability curl','WPVulnerability memcached'=>'WPVulnerability memcached','WPVulnerability redis'=>'WPVulnerability redis','WPVulnerability sqlite'=>'WPVulnerability sqlite','This theme is closed. Please replace it with another.'=>'Dieses Theme ist geschlossen. Bitte ersetzen Sie es durch ein anderes.','This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates.'=>'Diese Schwachstelle scheint nicht gepatcht zu sein. Bleiben Sie für kommende Theme-Updates auf dem Laufenden.','This theme has known vulnerabilities that may be affecting your installed version.'=>'Dieses Theme hat bekannte Sicherheitslücken, die Ihre installierte Version betreffen könnten.']]; \ No newline at end of file diff --git a/languages/wpvulnerability-de.mo b/languages/wpvulnerability-de.mo new file mode 100644 index 0000000000000000000000000000000000000000..e07f824f803e5fef9a0a079d5808a80c0d152726 GIT binary patch literal 40798 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." +msgstr "" +"Dieser Befehl erfordert einen WordPress-Administrator. Ausführen mit --" +"user=." + +#: class-wpvulnerability-cli.php:156 +msgid "No core vulnerabilities found." +msgstr "Keine Core-Schwachstellen gefunden." + +#: class-wpvulnerability-cli.php:275 +msgid "No plugin vulnerabilities found." +msgstr "Keine Plugin-Schwachstellen gefunden." + +#: class-wpvulnerability-cli.php:393 +msgid "No theme vulnerabilities found." +msgstr "Keine Theme-Schwachstellen gefunden." + +#. translators: %s is the software name (php, apache, nginx, etc.) +#: class-wpvulnerability-cli.php:490 +#, php-format +msgid "No %s vulnerabilities found." +msgstr "Keine %s-Schwachstellen gefunden." + +#: wpvulnerability-admin.php:63 wpvulnerability-adminms.php:227 +msgid "Data from source has been reloaded." +msgstr "Daten aus der Quelle wurden neu geladen." + +#: wpvulnerability-admin.php:65 wpvulnerability-adminms.php:229 +msgid "You do not have permission to reload data." +msgstr "Sie haben keine Berechtigung, Daten neu zu laden." + +#: wpvulnerability-admin.php:93 wpvulnerability-adminms.php:255 +msgid "Test email has been sent." +msgstr "Test-E-Mail wurde gesendet." + +#: wpvulnerability-admin.php:95 wpvulnerability-adminms.php:259 +msgid "Test email has failed. Please, check your email settings." +msgstr "Test-E-Mail ist fehlgeschlagen. Bitte überprüfen Sie Ihre E-Mail-Einstellungen." + +#: wpvulnerability-admin.php:98 wpvulnerability-adminms.php:263 +msgid "You do not have permission to send test emails." +msgstr "Sie haben keine Berechtigung, Test-E-Mails zu senden." + +#: wpvulnerability-admin.php:113 +msgid "WPVulnerability cron events have been repaired." +msgstr "WPVulnerability-Cron-Ereignisse wurden repariert." + +#: wpvulnerability-admin.php:115 wpvulnerability-adminms.php:279 +msgid "You do not have permission to repair cron events." +msgstr "Sie haben keine Berechtigung, Cron-Ereignisse zu reparieren." + +#: wpvulnerability-admin.php:127 wpvulnerability-adminms.php:291 +msgid "All logs have been deleted." +msgstr "Alle Protokolle wurden gelöscht." + +#: wpvulnerability-admin.php:129 wpvulnerability-adminms.php:293 +msgid "You do not have permission to delete logs." +msgstr "Sie haben keine Berechtigung, Protokolle zu löschen." + +#: wpvulnerability-admin.php:146 +msgid "Uninstall preference saved." +msgstr "Deinstallationseinstellung gespeichert." + +#: wpvulnerability-admin.php:153 wpvulnerability-adminms.php:316 +msgid "WPVulnerability has been reset to defaults and reloaded." +msgstr "WPVulnerability wurde auf die Standardeinstellungen zurückgesetzt und neu geladen." + +#: wpvulnerability-admin.php:155 wpvulnerability-adminms.php:318 +msgid "You do not have permission to reset WPVulnerability." +msgstr "Sie haben keine Berechtigung, WPVulnerability zurückzusetzen." + +#: wpvulnerability-admin.php:170 wpvulnerability-adminms.php:333 +msgid "All caches have been cleared." +msgstr "Alle Caches wurden geleert." + +#: wpvulnerability-admin.php:172 wpvulnerability-adminms.php:335 +msgid "You do not have permission to clear caches." +msgstr "Sie haben keine Berechtigung, Caches zu leeren." + +#: wpvulnerability-admin.php:187 wpvulnerability-adminms.php:350 +msgid "Plugin and theme signatures have been reset." +msgstr "Plugin- und Theme-Signaturen wurden zurückgesetzt." + +#: wpvulnerability-admin.php:189 wpvulnerability-adminms.php:352 +msgid "You do not have permission to reset signatures." +msgstr "Sie haben keine Berechtigung, Signaturen zurückzusetzen." + +#: wpvulnerability-admin.php:212 wpvulnerability-adminms.php:375 +msgid "You do not have permission to export debug information." +msgstr "Sie haben keine Berechtigung, Debug-Informationen zu exportieren." + +#: wpvulnerability-admin.php:224 wpvulnerability-adminms.php:387 +msgid "Database update has been executed." +msgstr "Datenbankaktualisierung wurde ausgeführt." + +#: wpvulnerability-admin.php:226 wpvulnerability-adminms.php:389 +msgid "You do not have permission to run database updates." +msgstr "Sie haben keine Berechtigung, Datenbankaktualisierungen durchzuführen." + +#: wpvulnerability-admin.php:247 wpvulnerability-adminms.php:410 +msgid "Notification has been sent." +msgstr "Benachrichtigung wurde gesendet." + +#: wpvulnerability-admin.php:249 wpvulnerability-adminms.php:412 +msgid "Notification sending failed." +msgstr "Senden der Benachrichtigung fehlgeschlagen." + +#: wpvulnerability-admin.php:252 wpvulnerability-adminms.php:415 +msgid "You do not have permission to send notifications." +msgstr "Sie haben keine Berechtigung, Benachrichtigungen zu senden." + +#: wpvulnerability-admin.php:266 wpvulnerability-adminms.php:539 +#: wpvulnerability-schedule.php:323 +msgid "Notifications" +msgstr "Benachrichtigungen" + +#: wpvulnerability-admin.php:269 wpvulnerability-adminms.php:542 +msgid "Analysis" +msgstr "Analyse" + +#: wpvulnerability-admin.php:272 wpvulnerability-adminms.php:545 +msgid "Logs" +msgstr "Protokolle" + +#: wpvulnerability-admin.php:275 wpvulnerability-adminms.php:548 +#: wpvulnerability-sitehealth.php:25 wpvulnerability-sitehealth.php:77 +#: wpvulnerability-sitehealth.php:129 wpvulnerability-sitehealth.php:210 +msgid "Security" +msgstr "Sicherheit" + +#: wpvulnerability-admin.php:278 wpvulnerability-adminms.php:551 +msgid "Tools" +msgstr "Werkzeuge" + +#: wpvulnerability-admin.php:285 wpvulnerability-adminms.php:558 +msgid "Debug" +msgstr "Debug" + +#: wpvulnerability-admin.php:290 wpvulnerability-adminms.php:563 +msgid "About" +msgstr "Über" + +#: wpvulnerability-admin.php:427 wpvulnerability-adminms.php:700 +msgid "Notification Settings" +msgstr "Benachrichtigungseinstellungen" + +#: wpvulnerability-admin.php:430 wpvulnerability-adminms.php:703 +msgid "Configure how and when you want to receive vulnerability notifications." +msgstr "Konfigurieren Sie, wie und wann Sie Sicherheitslücken-Benachrichtigungen erhalten möchten." + +#: wpvulnerability-admin.php:431 wpvulnerability-adminms.php:704 +msgid "" +"Stay informed about security vulnerabilities in your WordPress installation, " +"plugins, themes, and server software." +msgstr "" +"Bleiben Sie über Sicherheitslücken in Ihrer WordPress-Installation, " +"Plugins, Themes und Server-Software informiert." + +#: wpvulnerability-admin.php:438 wpvulnerability-adminms.php:711 +msgid "Cache Expiration Time" +msgstr "Cache-Ablaufzeit" + +#: wpvulnerability-admin.php:440 wpvulnerability-admin.php:814 +#: wpvulnerability-adminms.php:713 wpvulnerability-adminms.php:1087 +msgid "FORCED" +msgstr "ERZWUNGEN" + +#: wpvulnerability-admin.php:444 wpvulnerability-adminms.php:717 +msgid "How long to cache vulnerability data before refreshing from the API." +msgstr "Wie lange Sicherheitslückendaten zwischengespeichert werden, bevor sie von der API aktualisiert werden." + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:453 wpvulnerability-admin.php:1891 +#: wpvulnerability-admin.php:3631 wpvulnerability-adminms.php:726 +#: wpvulnerability-adminms.php:2039 wpvulnerability-adminms.php:3825 +#, php-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d Stunde" +msgstr[1] "%d Stunden" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:469 wpvulnerability-adminms.php:742 +#, php-format +msgid "" +"You can force the cache time via wp-config.php constant. Learn more →" +msgstr "" +"Sie können die Cache-Zeit über eine wp-config.php-Konstante erzwingen. Mehr erfahren →" + +#: wpvulnerability-admin.php:481 wpvulnerability-admin.php:3665 +#: wpvulnerability-adminms.php:754 wpvulnerability-adminms.php:3859 +msgid "Notification Frequency" +msgstr "Benachrichtigungsfrequenz" + +#: wpvulnerability-admin.php:484 wpvulnerability-adminms.php:757 +msgid "Choose how often you want to receive vulnerability notifications." +msgstr "Wählen Sie, wie oft Sie Sicherheitslücken-Benachrichtigungen erhalten möchten." + +#: wpvulnerability-admin.php:489 wpvulnerability-adminms.php:762 +msgid "Never - Disable automatic notifications" +msgstr "Nie – Automatische Benachrichtigungen deaktivieren" + +#: wpvulnerability-admin.php:493 wpvulnerability-adminms.php:766 +msgid "Daily - Receive notifications every day" +msgstr "Täglich – Benachrichtigungen jeden Tag erhalten" + +#: wpvulnerability-admin.php:497 wpvulnerability-adminms.php:770 +msgid "Weekly - Receive notifications once a week" +msgstr "Wöchentlich – Benachrichtigungen einmal pro Woche erhalten" + +#: wpvulnerability-admin.php:503 wpvulnerability-adminms.php:776 +msgid "Day:" +msgstr "Tag:" + +#: wpvulnerability-admin.php:505 wpvulnerability-admin.php:1955 +#: wpvulnerability-adminms.php:778 wpvulnerability-adminms.php:2115 +msgid "Monday" +msgstr "Montag" + +#: wpvulnerability-admin.php:506 wpvulnerability-admin.php:1956 +#: wpvulnerability-adminms.php:779 wpvulnerability-adminms.php:2116 +msgid "Tuesday" +msgstr "Dienstag" + +#: wpvulnerability-admin.php:507 wpvulnerability-admin.php:1957 +#: wpvulnerability-adminms.php:780 wpvulnerability-adminms.php:2117 +msgid "Wednesday" +msgstr "Mittwoch" + +#: wpvulnerability-admin.php:508 wpvulnerability-admin.php:1958 +#: wpvulnerability-adminms.php:781 wpvulnerability-adminms.php:2118 +msgid "Thursday" +msgstr "Donnerstag" + +#: wpvulnerability-admin.php:509 wpvulnerability-admin.php:1959 +#: wpvulnerability-adminms.php:782 wpvulnerability-adminms.php:2119 +msgid "Friday" +msgstr "Freitag" + +#: wpvulnerability-admin.php:510 wpvulnerability-admin.php:1960 +#: wpvulnerability-adminms.php:783 wpvulnerability-adminms.php:2120 +msgid "Saturday" +msgstr "Samstag" + +#: wpvulnerability-admin.php:511 wpvulnerability-admin.php:1961 +#: wpvulnerability-adminms.php:784 wpvulnerability-adminms.php:2121 +msgid "Sunday" +msgstr "Sonntag" + +#: wpvulnerability-admin.php:515 wpvulnerability-adminms.php:788 +msgid "Time:" +msgstr "Uhrzeit:" + +#: wpvulnerability-admin.php:519 wpvulnerability-adminms.php:792 +msgid "(24-hour format, server timezone)" +msgstr "(24-Stunden-Format, Server-Zeitzone)" + +#: wpvulnerability-admin.php:528 wpvulnerability-adminms.php:801 +msgid "Notification Channels" +msgstr "Benachrichtigungskanäle" + +#: wpvulnerability-admin.php:531 wpvulnerability-adminms.php:804 +msgid "Select where you want to receive notifications." +msgstr "Wählen Sie aus, wo Sie Benachrichtigungen erhalten möchten." + +#: wpvulnerability-admin.php:536 wpvulnerability-admin.php:2011 +#: wpvulnerability-adminms.php:809 wpvulnerability-adminms.php:2169 +msgid "Email" +msgstr "E-Mail" + +#: wpvulnerability-admin.php:539 wpvulnerability-adminms.php:812 +msgid "Email Addresses (separated by commas):" +msgstr "E-Mail-Adressen (durch Kommas getrennt):" + +#: wpvulnerability-admin.php:541 wpvulnerability-adminms.php:814 +msgid "Default:" +msgstr "Standard:" + +#: wpvulnerability-admin.php:546 wpvulnerability-admin.php:2016 +#: wpvulnerability-adminms.php:819 wpvulnerability-adminms.php:2174 +msgid "Slack" +msgstr "Slack" + +#: wpvulnerability-admin.php:549 wpvulnerability-adminms.php:822 +msgid "Slack Webhook URL:" +msgstr "Slack Webhook-URL:" + +#. translators: %s: Slack documentation URL +#: wpvulnerability-admin.php:555 wpvulnerability-adminms.php:828 +#, php-format +msgid "" +"Learn how to " +"create a Slack incoming webhook →" +msgstr "" +"Erfahren Sie, wie Sie " +"einen eingehenden Slack-Webhook erstellen →" + +#: wpvulnerability-admin.php:564 wpvulnerability-admin.php:2021 +#: wpvulnerability-adminms.php:837 wpvulnerability-adminms.php:2179 +msgid "Microsoft Teams" +msgstr "Microsoft Teams" + +#: wpvulnerability-admin.php:567 wpvulnerability-adminms.php:840 +msgid "Teams Webhook URL:" +msgstr "Teams Webhook-URL:" + +#. translators: %s: Microsoft Teams documentation URL +#: wpvulnerability-admin.php:573 wpvulnerability-adminms.php:846 +#, php-format +msgid "" +"Learn how to " +"create a Teams incoming webhook →" +msgstr "" +"Erfahren Sie, wie Sie " +"einen eingehenden Teams-Webhook erstellen →" + +#: wpvulnerability-admin.php:582 wpvulnerability-adminms.php:855 +msgid "Discord" +msgstr "Discord" + +#: wpvulnerability-admin.php:585 wpvulnerability-adminms.php:858 +msgid "Discord Webhook URL:" +msgstr "Discord Webhook-URL:" + +#. translators: %s: Discord documentation URL +#: wpvulnerability-admin.php:591 wpvulnerability-adminms.php:864 +#, php-format +msgid "" +"Learn how to " +"create a Discord webhook →" +msgstr "" +"Erfahren Sie, wie Sie " +"einen Discord-Webhook erstellen →" + +#: wpvulnerability-admin.php:600 wpvulnerability-adminms.php:873 +msgid "Telegram" +msgstr "Telegram" + +#: wpvulnerability-admin.php:603 wpvulnerability-adminms.php:876 +msgid "Telegram Bot Token:" +msgstr "Telegram-Bot-Token:" + +#: wpvulnerability-admin.php:605 wpvulnerability-adminms.php:878 +msgid "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:607 wpvulnerability-adminms.php:880 +msgid "Telegram Chat ID:" +msgstr "Telegram Chat-ID:" + +#. translators: %s: Telegram documentation URL +#: wpvulnerability-admin.php:613 wpvulnerability-adminms.php:886 +#, php-format +msgid "" +"Learn how to " +"create a Telegram bot and get Chat ID →" +msgstr "" +"Erfahren Sie, wie Sie " +"einen Telegram-Bot erstellen und die Chat-ID erhalten →" + +#: wpvulnerability-admin.php:623 wpvulnerability-adminms.php:896 +msgid "Save Notification Settings" +msgstr "Benachrichtigungseinstellungen speichern" + +#: wpvulnerability-admin.php:700 wpvulnerability-admin.php:2552 +#: wpvulnerability-adminms.php:973 wpvulnerability-adminms.php:2459 +msgid "WordPress Components" +msgstr "WordPress-Komponenten" + +#: wpvulnerability-admin.php:703 wpvulnerability-admin.php:2560 +#: wpvulnerability-adminms.php:976 wpvulnerability-adminms.php:2467 +msgid "WordPress Core" +msgstr "WordPress Core" + +#: wpvulnerability-admin.php:707 wpvulnerability-admin.php:1472 +#: wpvulnerability-admin.php:1573 wpvulnerability-admin.php:2109 +#: wpvulnerability-admin.php:2571 wpvulnerability-adminms.php:980 +#: wpvulnerability-adminms.php:1744 wpvulnerability-adminms.php:1843 +#: wpvulnerability-adminms.php:2266 wpvulnerability-adminms.php:2478 +msgid "Plugins" +msgstr "Plugins" + +#: wpvulnerability-admin.php:711 wpvulnerability-admin.php:1473 +#: wpvulnerability-admin.php:1574 wpvulnerability-admin.php:2114 +#: wpvulnerability-admin.php:2587 wpvulnerability-adminms.php:984 +#: wpvulnerability-adminms.php:1745 wpvulnerability-adminms.php:1844 +#: wpvulnerability-adminms.php:2271 wpvulnerability-adminms.php:2494 +msgid "Themes" +msgstr "Themes" + +#: wpvulnerability-admin.php:717 wpvulnerability-adminms.php:990 +msgid "Software & Languages" +msgstr "Software & Sprachen" + +#: wpvulnerability-admin.php:720 wpvulnerability-admin.php:1474 +#: wpvulnerability-admin.php:2119 wpvulnerability-adminms.php:993 +#: wpvulnerability-adminms.php:1746 wpvulnerability-adminms.php:2276 +#: wpvulnerability-sitehealth.php:178 +msgid "PHP" +msgstr "PHP" + +#: wpvulnerability-admin.php:726 wpvulnerability-adminms.php:999 +msgid "Web Servers" +msgstr "Webserver" + +#: wpvulnerability-admin.php:729 wpvulnerability-admin.php:1475 +#: wpvulnerability-admin.php:2124 wpvulnerability-adminms.php:1002 +#: wpvulnerability-adminms.php:1747 wpvulnerability-adminms.php:2281 +#: wpvulnerability-sitehealth.php:179 +msgid "Apache HTTPD" +msgstr "Apache HTTPD" + +#: wpvulnerability-admin.php:733 wpvulnerability-admin.php:1476 +#: wpvulnerability-admin.php:2129 wpvulnerability-adminms.php:1006 +#: wpvulnerability-adminms.php:1748 wpvulnerability-adminms.php:2286 +msgid "nginx" +msgstr "nginx" + +#: wpvulnerability-admin.php:739 wpvulnerability-adminms.php:1012 +msgid "Databases" +msgstr "Datenbanken" + +#: wpvulnerability-admin.php:742 wpvulnerability-admin.php:1477 +#: wpvulnerability-admin.php:2134 wpvulnerability-adminms.php:1015 +#: wpvulnerability-adminms.php:1749 wpvulnerability-adminms.php:2291 +#: wpvulnerability-sitehealth.php:181 +msgid "MariaDB" +msgstr "MariaDB" + +#: wpvulnerability-admin.php:746 wpvulnerability-admin.php:1478 +#: wpvulnerability-admin.php:2139 wpvulnerability-adminms.php:1019 +#: wpvulnerability-adminms.php:1750 wpvulnerability-adminms.php:2296 +#: wpvulnerability-sitehealth.php:182 +msgid "MySQL" +msgstr "MySQL" + +#: wpvulnerability-admin.php:750 wpvulnerability-admin.php:1483 +#: wpvulnerability-admin.php:2164 wpvulnerability-admin.php:3104 +#: wpvulnerability-adminms.php:1023 wpvulnerability-adminms.php:1755 +#: wpvulnerability-adminms.php:2321 wpvulnerability-adminms.php:3281 +msgid "SQLite" +msgstr "SQLite" + +#: wpvulnerability-admin.php:756 wpvulnerability-adminms.php:1029 +msgid "Additional Tools" +msgstr "Zusätzliche Werkzeuge" + +#: wpvulnerability-admin.php:759 wpvulnerability-admin.php:1479 +#: wpvulnerability-admin.php:2144 wpvulnerability-admin.php:3101 +#: wpvulnerability-adminms.php:1032 wpvulnerability-adminms.php:1751 +#: wpvulnerability-adminms.php:2301 wpvulnerability-adminms.php:3278 +#: wpvulnerability-sitehealth.php:183 +msgid "ImageMagick" +msgstr "ImageMagick" + +#: wpvulnerability-admin.php:763 wpvulnerability-admin.php:1480 +#: wpvulnerability-admin.php:2149 wpvulnerability-adminms.php:1036 +#: wpvulnerability-adminms.php:1752 wpvulnerability-adminms.php:2306 +#: wpvulnerability-sitehealth.php:184 +msgid "curl" +msgstr "curl" + +#: wpvulnerability-admin.php:767 wpvulnerability-admin.php:1481 +#: wpvulnerability-admin.php:2154 wpvulnerability-adminms.php:1040 +#: wpvulnerability-adminms.php:1753 wpvulnerability-adminms.php:2311 +msgid "memcached" +msgstr "memcached" + +#: wpvulnerability-admin.php:771 wpvulnerability-admin.php:1482 +#: wpvulnerability-admin.php:2159 wpvulnerability-admin.php:3102 +#: wpvulnerability-adminms.php:1044 wpvulnerability-adminms.php:1754 +#: wpvulnerability-adminms.php:2316 wpvulnerability-adminms.php:3279 +msgid "Redis" +msgstr "Redis" + +#: wpvulnerability-admin.php:784 wpvulnerability-adminms.php:1057 +msgid "Component Analysis Settings" +msgstr "Einstellungen für die Komponentenanalyse" + +#: wpvulnerability-admin.php:787 wpvulnerability-adminms.php:1060 +msgid "Enable or disable vulnerability analysis for specific components." +msgstr "Aktivieren oder deaktivieren Sie die Schwachstellenanalyse für bestimmte Komponenten." + +#: wpvulnerability-admin.php:788 wpvulnerability-adminms.php:1061 +msgid "" +"Check the components you want to HIDE from vulnerability scans and reports. " +"Unchecked components will be actively analyzed. Components with active " +"analysis are shown in green, hidden components in red." +msgstr "" +"Markieren Sie die Komponenten, die Sie von Schwachstellenscans und Berichten AUSBLENDEN möchten. " +"Nicht markierte Komponenten werden aktiv analysiert. Komponenten mit aktiver " +"Analyse werden grün angezeigt, ausgeblendete Komponenten rot." + +#: wpvulnerability-admin.php:820 wpvulnerability-adminms.php:1093 +msgid "Hidden (forced by constant)" +msgstr "Ausgeblendet (durch Konstante erzwungen)" + +#: wpvulnerability-admin.php:823 wpvulnerability-adminms.php:1096 +msgid "🔴 Analysis disabled" +msgstr "🔴 Analyse deaktiviert" + +#: wpvulnerability-admin.php:826 wpvulnerability-adminms.php:1099 +msgid "🟢 Analysis active" +msgstr "🟢 Analyse aktiv" + +#: wpvulnerability-admin.php:848 wpvulnerability-adminms.php:1121 +msgid "Tip:" +msgstr "Tipp:" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:852 wpvulnerability-adminms.php:1125 +#, php-format +msgid "" +"You can force-disable components via wp-config.php constants. Learn more about force-hiding " +"checks →" +msgstr "" +"Sie können Komponenten über wp-config.php-Konstanten deaktivieren. Mehr über das erzwungene Ausblenden " +"von Prüfungen erfahren →" + +#: wpvulnerability-admin.php:860 wpvulnerability-adminms.php:1133 +msgid "Save Analysis Settings" +msgstr "Analyseeinstellungen speichern" + +#: wpvulnerability-admin.php:920 wpvulnerability-adminms.php:1193 +msgid "« Previous" +msgstr "« Zurück" + +#: wpvulnerability-admin.php:921 wpvulnerability-adminms.php:1194 +msgid "Next »" +msgstr "Weiter »" + +#: wpvulnerability-admin.php:932 wpvulnerability-adminms.php:1205 +msgid "Log entry not found or has been removed." +msgstr "Protokolleintrag nicht gefunden oder wurde entfernt." + +#: wpvulnerability-admin.php:935 wpvulnerability-adminms.php:1208 +msgid "Unable to load the requested log entry." +msgstr "Der angeforderte Protokolleintrag konnte nicht geladen werden." + +#: wpvulnerability-admin.php:945 wpvulnerability-adminms.php:1218 +msgid "Log Configuration" +msgstr "Protokollkonfiguration" + +#: wpvulnerability-admin.php:950 wpvulnerability-adminms.php:1223 +msgid "Total Logs" +msgstr "Protokolle insgesamt" + +#: wpvulnerability-admin.php:954 wpvulnerability-adminms.php:1227 +msgid "Retention Period" +msgstr "Aufbewahrungszeitraum" + +#: wpvulnerability-admin.php:959 wpvulnerability-admin.php:1301 +#: wpvulnerability-admin.php:3029 wpvulnerability-admin.php:3043 +#: wpvulnerability-admin.php:3475 wpvulnerability-admin.php:3483 +#: wpvulnerability-adminms.php:1232 wpvulnerability-adminms.php:1574 +#: wpvulnerability-adminms.php:3206 wpvulnerability-adminms.php:3220 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Disabled" +msgstr "Deaktiviert" + +#. translators: %d: Number of days. +#. translators: %d: number of days +#: wpvulnerability-admin.php:962 wpvulnerability-admin.php:984 +#: wpvulnerability-admin.php:3641 wpvulnerability-adminms.php:1235 +#: wpvulnerability-adminms.php:1257 wpvulnerability-adminms.php:3835 +#, php-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d Tag" +msgstr[1] "%d Tage" + +#: wpvulnerability-admin.php:975 wpvulnerability-adminms.php:1248 +msgid "Log Retention Period" +msgstr "Protokoll-Aufbewahrungszeitraum" + +#: wpvulnerability-admin.php:981 wpvulnerability-adminms.php:1254 +msgid "None (Disabled)" +msgstr "Kein (Deaktiviert)" + +#: wpvulnerability-admin.php:1004 wpvulnerability-adminms.php:1277 +msgid "" +"This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant." +msgstr "" +"Dieser Wert wird durch die Konstante WPVULNERABILITY_LOG_RETENTION_DAYS erzwungen." + +#: wpvulnerability-admin.php:1009 wpvulnerability-adminms.php:1282 +msgid "" +"Choose how long WPVulnerability should keep API response logs. Older logs " +"are automatically deleted." +msgstr "" +"Wählen Sie, wie lange WPVulnerability API-Antwortprotokolle aufbewahren soll. Ältere Protokolle " +"werden automatisch gelöscht." + +#: wpvulnerability-admin.php:1013 wpvulnerability-adminms.php:1286 +msgid "Save Configuration" +msgstr "Konfiguration speichern" + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "Log retention is currently disabled." +msgstr "Protokollaufbewahrung ist derzeit deaktiviert." + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "API responses are not being saved." +msgstr "API-Antworten werden nicht gespeichert." + +#: wpvulnerability-admin.php:1031 wpvulnerability-adminms.php:1304 +msgid "Log Details" +msgstr "Protokolldetails" + +#: wpvulnerability-admin.php:1035 wpvulnerability-admin.php:1104 +#: wpvulnerability-adminms.php:1308 wpvulnerability-adminms.php:1377 +msgid "Date" +msgstr "Datum" + +#: wpvulnerability-admin.php:1039 wpvulnerability-admin.php:1105 +#: wpvulnerability-adminms.php:1312 wpvulnerability-adminms.php:1378 +msgid "API Endpoint" +msgstr "API-Endpunkt" + +#: wpvulnerability-admin.php:1044 wpvulnerability-adminms.php:1317 +msgid "API Response" +msgstr "API-Antwort" + +#: wpvulnerability-admin.php:1049 wpvulnerability-adminms.php:1322 +msgid "Back to Logs" +msgstr "Zurück zu den Protokollen" + +#: wpvulnerability-admin.php:1058 wpvulnerability-adminms.php:1331 +msgid "No logs available" +msgstr "Keine Protokolle verfügbar" + +#: wpvulnerability-admin.php:1059 wpvulnerability-adminms.php:1332 +msgid "API response logs will appear here once the vulnerability scanner runs." +msgstr "API-Antwortprotokolle werden hier angezeigt, sobald der Schwachstellenscanner ausgeführt wird." + +#: wpvulnerability-admin.php:1063 wpvulnerability-adminms.php:1336 +msgid "API Response Logs" +msgstr "API-Antwortprotokolle" + +#: wpvulnerability-admin.php:1073 wpvulnerability-adminms.php:1346 +msgid "Show:" +msgstr "Anzeigen:" + +#: wpvulnerability-admin.php:1082 wpvulnerability-adminms.php:1355 +msgid "Apply" +msgstr "Anwenden" + +#. translators: 1: first item, 2: last item, 3: total items +#: wpvulnerability-admin.php:1090 wpvulnerability-adminms.php:1363 +#, php-format +msgid "Showing %1$s–%2$s of %3$s" +msgstr "%1$s–%2$s von %3$s angezeigt" + +#: wpvulnerability-admin.php:1106 wpvulnerability-adminms.php:1379 +msgid "Actions" +msgstr "Aktionen" + +#: wpvulnerability-admin.php:1133 wpvulnerability-admin.php:3957 +#: wpvulnerability-adminms.php:1406 wpvulnerability-adminms.php:4151 +msgid "View" +msgstr "Ansehen" + +#: wpvulnerability-admin.php:1150 wpvulnerability-adminms.php:1423 +msgid "Danger Zone" +msgstr "Gefahrenbereich" + +#: wpvulnerability-admin.php:1152 wpvulnerability-adminms.php:1425 +msgid "Permanently delete all API response logs. This action cannot be undone." +msgstr "Alle API-Antwortprotokolle dauerhaft löschen. Diese Aktion kann nicht rückgängig gemacht werden." + +#: wpvulnerability-admin.php:1154 wpvulnerability-adminms.php:1427 +msgid "Are you sure you want to delete all logs? This action cannot be undone." +msgstr "Sind Sie sicher, dass Sie alle Protokolle löschen möchten? Diese Aktion kann nicht rückgängig gemacht werden." + +#: wpvulnerability-admin.php:1157 wpvulnerability-adminms.php:1430 +msgid "Delete All Logs" +msgstr "Alle Protokolle löschen" + +#: wpvulnerability-admin.php:1201 wpvulnerability-adminms.php:1474 +msgid "Reload Data from API" +msgstr "Daten von der API neu laden" + +#: wpvulnerability-admin.php:1204 wpvulnerability-adminms.php:1477 +msgid "" +"Reload all Core, Plugins, Themes and other components information directly " +"from the API to have updated data. This will clear the cache and fetch fresh " +"vulnerability information." +msgstr "" +"Alle Core-, Plugin-, Theme- und sonstigen Komponenteninformationen direkt " +"von der API neu laden, um aktuelle Daten zu erhalten. Dadurch wird der Cache geleert und neue " +"Sicherheitslückeninformationen abgerufen." + +#: wpvulnerability-admin.php:1209 wpvulnerability-adminms.php:1482 +msgid "Reload Data" +msgstr "Daten neu laden" + +#: wpvulnerability-admin.php:1218 wpvulnerability-adminms.php:1491 +msgid "Test Email Notifications" +msgstr "Test-E-Mail-Benachrichtigungen" + +#: wpvulnerability-admin.php:1221 wpvulnerability-adminms.php:1494 +msgid "" +"Send a test email notification with current vulnerability data to verify " +"your email configuration is working correctly." +msgstr "" +"Senden Sie eine Test-E-Mail-Benachrichtigung mit aktuellen Sicherheitslückendaten, um zu überprüfen, " +"ob Ihre E-Mail-Konfiguration korrekt funktioniert." + +#: wpvulnerability-admin.php:1231 wpvulnerability-adminms.php:1504 +msgid "From address (configured via constant):" +msgstr "Absenderadresse (über Konstante konfiguriert):" + +#: wpvulnerability-admin.php:1243 wpvulnerability-adminms.php:1516 +msgid "From address (default):" +msgstr "Absenderadresse (Standard):" + +#: wpvulnerability-admin.php:1252 wpvulnerability-adminms.php:1525 +msgid "Learn how to customize the email sender address →" +msgstr "Erfahren Sie, wie Sie die E-Mail-Absenderadresse anpassen →" + +#: wpvulnerability-admin.php:1258 wpvulnerability-adminms.php:1531 +msgid "Send Test Email" +msgstr "Test-E-Mail senden" + +#: wpvulnerability-admin.php:1267 wpvulnerability-adminms.php:1540 +msgid "WP-Cron Status" +msgstr "WP-Cron-Status" + +#: wpvulnerability-admin.php:1270 wpvulnerability-adminms.php:1543 +msgid "" +"View and manage WP-Cron scheduled events. Compare expected schedules with " +"actual cron jobs to ensure automated tasks are running correctly." +msgstr "" +"WP-Cron-geplante Ereignisse anzeigen und verwalten. Vergleichen Sie erwartete Zeitpläne mit " +"tatsächlichen Cron-Jobs, um sicherzustellen, dass automatisierte Aufgaben korrekt ausgeführt werden." + +#: wpvulnerability-admin.php:1275 wpvulnerability-adminms.php:1548 +msgid "No cron data available." +msgstr "Keine Cron-Daten verfügbar." + +#: wpvulnerability-admin.php:1281 wpvulnerability-adminms.php:1554 +msgid "Hook" +msgstr "Hook" + +#: wpvulnerability-admin.php:1282 wpvulnerability-adminms.php:1555 +msgid "Expected" +msgstr "Erwartet" + +#: wpvulnerability-admin.php:1283 wpvulnerability-adminms.php:1556 +msgid "Found" +msgstr "Gefunden" + +#: wpvulnerability-admin.php:1284 wpvulnerability-adminms.php:1557 +msgid "Next Run" +msgstr "Nächste Ausführung" + +#: wpvulnerability-admin.php:1285 wpvulnerability-admin.php:3236 +#: wpvulnerability-admin.php:3559 wpvulnerability-adminms.php:1558 +#: wpvulnerability-adminms.php:3413 wpvulnerability-adminms.php:3753 +msgid "Status" +msgstr "Status" + +#: wpvulnerability-admin.php:1299 wpvulnerability-adminms.php:1572 +msgid "Not expected" +msgstr "Nicht erwartet" + +#: wpvulnerability-admin.php:1321 wpvulnerability-adminms.php:1594 +#: wpvulnerability-general.php:1871 wpvulnerability-general.php:1872 +msgid "None" +msgstr "Keine" + +#: wpvulnerability-admin.php:1356 wpvulnerability-adminms.php:1629 +msgid "OK" +msgstr "OK" + +#: wpvulnerability-admin.php:1366 wpvulnerability-adminms.php:1639 +msgid "⚠️ Unexpected WPVulnerability Events" +msgstr "⚠️ Unerwartete WPVulnerability-Ereignisse" + +#: wpvulnerability-admin.php:1383 wpvulnerability-adminms.php:1656 +msgid "No interval" +msgstr "Kein Intervall" + +#: wpvulnerability-admin.php:1390 wpvulnerability-adminms.php:1663 +msgid "Next:" +msgstr "Nächste:" + +#: wpvulnerability-admin.php:1400 wpvulnerability-adminms.php:1673 +msgid "Repair Cron Events" +msgstr "Cron-Ereignisse reparieren" + +#: wpvulnerability-admin.php:1408 wpvulnerability-adminms.php:1681 +msgid "Uninstall Data" +msgstr "Deinstallationsdaten" + +#: wpvulnerability-admin.php:1410 wpvulnerability-adminms.php:1683 +msgid "" +"By default, all plugin data is preserved when WPVulnerability is deleted. " +"Enable the option below only if you want all options, logs, and cached data " +"permanently removed on uninstall." +msgstr "" +"Standardmäßig werden alle Plugin-Daten erhalten, wenn WPVulnerability gelöscht wird. " +"Aktivieren Sie die untenstehende Option nur, wenn Sie möchten, dass alle Optionen, Protokolle und zwischengespeicherten Daten " +"bei der Deinstallation dauerhaft entfernt werden." + +#: wpvulnerability-admin.php:1420 wpvulnerability-adminms.php:1693 +msgid "Delete all plugin data on uninstall" +msgstr "Alle Plugin-Daten bei der Deinstallation löschen" + +#: wpvulnerability-admin.php:1423 wpvulnerability-adminms.php:1696 +msgid "" +"Default: unchecked (data preserved). Check only if you want a clean removal." +msgstr "" +"Standard: nicht markiert (Daten erhalten). Nur markieren, wenn Sie eine vollständige Entfernung wünschen." + +#: wpvulnerability-admin.php:1425 wpvulnerability-adminms.php:1698 +msgid "Save preference" +msgstr "Einstellung speichern" + +#: wpvulnerability-admin.php:1432 wpvulnerability-adminms.php:1705 +msgid "Reset WPVulnerability" +msgstr "WPVulnerability zurücksetzen" + +#: wpvulnerability-admin.php:1434 wpvulnerability-adminms.php:1707 +msgid "" +"Delete all WPVulnerability settings, cached data, logs, and scheduled " +"events, then restore defaults and reload data from the API." +msgstr "" +"Alle WPVulnerability-Einstellungen, zwischengespeicherten Daten, Protokolle und geplanten " +"Ereignisse löschen, dann die Standardwerte wiederherstellen und Daten von der API neu laden." + +#: wpvulnerability-admin.php:1436 wpvulnerability-adminms.php:1709 +msgid "This action cannot be undone." +msgstr "Diese Aktion kann nicht rückgängig gemacht werden." + +#: wpvulnerability-admin.php:1438 wpvulnerability-adminms.php:1711 +msgid "" +"Are you sure you want to reset all WPVulnerability data? This action cannot " +"be undone." +msgstr "" +"Sind Sie sicher, dass Sie alle WPVulnerability-Daten zurücksetzen möchten? Diese Aktion kann " +"nicht rückgängig gemacht werden." + +#: wpvulnerability-admin.php:1441 wpvulnerability-adminms.php:1713 +msgid "Reset Plugin" +msgstr "Plugin zurücksetzen" + +#: wpvulnerability-admin.php:1468 wpvulnerability-adminms.php:1740 +msgid "Vulnerability Database Statistics" +msgstr "Statistiken der Schwachstellendatenbank" + +#. translators: number of vulnerabilities. +#: wpvulnerability-admin.php:1510 wpvulnerability-adminms.php:1782 +#, php-format +msgid "%s vulnerability" +msgid_plural "%s vulnerabilities" +msgstr[0] "%s Schwachstelle" +msgstr[1] "%s Schwachstellen" + +#. translators: number of products. +#: wpvulnerability-admin.php:1520 wpvulnerability-adminms.php:1792 +#, php-format +msgid "(%s product)" +msgid_plural "(%s products)" +msgstr[0] "(%s Produkt)" +msgstr[1] "(%s Produkte)" + +#: wpvulnerability-admin.php:1527 wpvulnerability-adminms.php:1799 +msgid "No data" +msgstr "Keine Daten" + +#. translators: date of last update. +#: wpvulnerability-admin.php:1544 wpvulnerability-adminms.php:1814 +#, php-format +msgid "Database last updated: %s" +msgstr "Datenbank zuletzt aktualisiert: %s" + +#: wpvulnerability-admin.php:1566 wpvulnerability-adminms.php:1836 +msgid "Intelligence Sources" +msgstr "Intelligence-Quellen" + +#: wpvulnerability-admin.php:1567 wpvulnerability-adminms.php:1837 +msgid "Number of vulnerabilities contributed by each intelligence source." +msgstr "Anzahl der Schwachstellen, die von jeder Intelligence-Quelle beigesteuert wurden." + +#: wpvulnerability-admin.php:1571 wpvulnerability-adminms.php:1841 +msgid "Source" +msgstr "Quelle" + +#: wpvulnerability-admin.php:1572 wpvulnerability-admin.php:2104 +#: wpvulnerability-adminms.php:1842 wpvulnerability-adminms.php:2261 +msgid "Core" +msgstr "Core" + +#: wpvulnerability-admin.php:1603 wpvulnerability-adminms.php:1873 +msgid "Sponsors" +msgstr "Sponsoren" + +#: wpvulnerability-admin.php:1626 wpvulnerability-adminms.php:1896 +msgid "No sponsor data available." +msgstr "Keine Sponsorendaten verfügbar." + +#: wpvulnerability-admin.php:1633 wpvulnerability-adminms.php:1903 +msgid "Contributors" +msgstr "Mitwirkende" + +#: wpvulnerability-admin.php:1656 wpvulnerability-adminms.php:1926 +msgid "No contributor data available." +msgstr "Keine Daten zu Mitwirkenden verfügbar." + +#: wpvulnerability-admin.php:1674 wpvulnerability-adminms.php:432 +msgid "You do not have sufficient permissions to access this page." +msgstr "Sie haben keine ausreichenden Berechtigungen, um auf diese Seite zuzugreifen." + +#: wpvulnerability-admin.php:1684 wpvulnerability-adminms.php:441 +msgid "WPVulnerability settings" +msgstr "WPVulnerability-Einstellungen" + +#: wpvulnerability-admin.php:1801 wpvulnerability-adminms.php:1963 +msgid "Configure and save these settings to receive notifications." +msgstr "Konfigurieren und speichern Sie diese Einstellungen, um Benachrichtigungen zu erhalten." + +#: wpvulnerability-admin.php:1814 wpvulnerability-adminms.php:2071 +msgid "Configure and save these settings to hide vulnerabilities." +msgstr "Konfigurieren und speichern Sie diese Einstellungen, um Sicherheitslücken auszublenden." + +#: wpvulnerability-admin.php:1845 wpvulnerability-adminms.php:1993 +msgid "Default administrator email" +msgstr "Standard Administrator E-Mail" + +#: wpvulnerability-admin.php:1909 wpvulnerability-adminms.php:2057 +msgid "Read more if you want to force the cache time." +msgstr "Mehr lesen, wenn Sie die Cache-Zeit erzwingen möchten." + +#: wpvulnerability-admin.php:1939 wpvulnerability-adminms.php:2099 +msgid "Never" +msgstr "Nie" + +#: wpvulnerability-admin.php:1944 wpvulnerability-adminms.php:2104 +msgid "Daily" +msgstr "Täglich" + +#: wpvulnerability-admin.php:1949 wpvulnerability-adminms.php:2109 +msgid "Weekly" +msgstr "Wöchentlich" + +#: wpvulnerability-admin.php:1953 wpvulnerability-adminms.php:2113 +msgid "Day" +msgstr "Tag" + +#: wpvulnerability-admin.php:1966 wpvulnerability-adminms.php:2126 +msgid "Hour" +msgstr "Stunde" + +#: wpvulnerability-admin.php:1968 wpvulnerability-adminms.php:2128 +msgid "Minute" +msgstr "Minute" + +#: wpvulnerability-admin.php:2166 wpvulnerability-adminms.php:2323 +msgid "Read more about how to force the deactivation of an item." +msgstr "Mehr lesen über das erzwungene Deaktivieren eines Elements." + +#: wpvulnerability-admin.php:2292 wpvulnerability-adminms.php:2870 +msgid "" +"Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com" +msgstr "" +"Ungültige Slack-Webhook-URL. Muss eine gültige HTTPS-URL von hooks.slack.com sein." + +#: wpvulnerability-admin.php:2315 wpvulnerability-adminms.php:2893 +msgid "" +"Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office." +"com, office365.com, or api.hooks.microsoft.com" +msgstr "" +"Ungültige Microsoft Teams-Webhook-URL. Muss eine gültige HTTPS-URL von office." +"com, office365.com oder api.hooks.microsoft.com sein." + +#: wpvulnerability-admin.php:2338 wpvulnerability-adminms.php:2916 +msgid "" +"Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or " +"discordapp.com" +msgstr "" +"Ungültige Discord-Webhook-URL. Muss eine gültige HTTPS-URL von discord.com oder " +"discordapp.com sein." + +#: wpvulnerability-admin.php:2357 wpvulnerability-adminms.php:2935 +msgid "" +"Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-" +"zyx57W2v1u123ew11" +msgstr "" +"Ungültiges Format für Telegram-Bot-Token. Muss wie folgt aussehen: 123456:ABC-DEF1234ghIkl-" +"zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:2493 wpvulnerability-adminms.php:2400 +msgid "All Clear" +msgstr "Alles in Ordnung" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2503 wpvulnerability-adminms.php:2410 +#, php-format +msgid "%d Critical Issue Found" +msgid_plural "%d Critical Issues Found" +msgstr[0] "%d kritisches Problem gefunden" +msgstr[1] "%d kritische Probleme gefunden" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2508 wpvulnerability-adminms.php:2415 +#, php-format +msgid "%d Issue Found" +msgid_plural "%d Issues Found" +msgstr[0] "%d Problem gefunden" +msgstr[1] "%d Probleme gefunden" + +#: wpvulnerability-admin.php:2515 wpvulnerability-adminms.php:2422 +msgid "Never checked" +msgstr "Noch nie geprüft" + +#. translators: %d: number of minutes +#: wpvulnerability-admin.php:2523 wpvulnerability-adminms.php:2430 +#, php-format +msgid "%d minute ago" +msgid_plural "%d minutes ago" +msgstr[0] "vor %d Minute" +msgstr[1] "vor %d Minuten" + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:2527 wpvulnerability-adminms.php:2434 +#, php-format +msgid "%d hour ago" +msgid_plural "%d hours ago" +msgstr[0] "vor %d Stunde" +msgstr[1] "vor %d Stunden" + +#. translators: %s: time since last check +#: wpvulnerability-admin.php:2539 wpvulnerability-adminms.php:2446 +#, php-format +msgid "Last checked: %s" +msgstr "Zuletzt geprüft: %s" + +#: wpvulnerability-admin.php:2540 wpvulnerability-adminms.php:2447 +msgid "Refresh Now" +msgstr "Jetzt aktualisieren" + +#: wpvulnerability-admin.php:2547 wpvulnerability-adminms.php:2454 +msgid "No vulnerabilities detected" +msgstr "Keine Schwachstellen gefunden" + +#: wpvulnerability-admin.php:2548 wpvulnerability-adminms.php:2455 +msgid "Your site is up to date and secure" +msgstr "Ihre Website ist aktuell und sicher" + +#: wpvulnerability-admin.php:2616 wpvulnerability-adminms.php:2523 +msgid "Server Software" +msgstr "Server-Software" + +#: wpvulnerability-admin.php:2829 wpvulnerability-adminms.php:2736 +msgid "Site Health" +msgstr "Website-Gesundheit" + +#: wpvulnerability-admin.php:2831 wpvulnerability-adminms.php:2738 +#: wpvulnerability-run.php:33 +msgid "Settings" +msgstr "Einstellungen" + +#: wpvulnerability-admin.php:2846 wpvulnerability-adminms.php:2754 +msgid "WPVulnerability Status" +msgstr "WPVulnerability Status" + +#: wpvulnerability-admin.php:2878 wpvulnerability-adminms.php:3052 +msgid "Receive vulnerability notifications" +msgstr "Sicherheitslücken-Benachrichtigungen erhalten" + +#: wpvulnerability-admin.php:2886 wpvulnerability-adminms.php:3060 +msgid "Cache expiration time" +msgstr "Cache-Ablaufzeit" + +#: wpvulnerability-admin.php:2895 wpvulnerability-adminms.php:3069 +msgid "How often you want to receive notifications" +msgstr "Wie oft Sie Benachrichtigungen erhalten möchten" + +#: wpvulnerability-admin.php:2904 wpvulnerability-adminms.php:3078 +msgid "Where do you want to receive notifications?" +msgstr "Wo möchten Sie Benachrichtigungen erhalten?" + +#: wpvulnerability-admin.php:2913 wpvulnerability-adminms.php:3087 +msgid "Email addresses to notify (separated by commas)" +msgstr "E-Mail-Adressen für Benachrichtigungen (durch Kommas getrennt)" + +#: wpvulnerability-admin.php:2922 wpvulnerability-adminms.php:3096 +msgid "Slack webhook URL" +msgstr "Slack-Webhook-URL" + +#: wpvulnerability-admin.php:2931 wpvulnerability-adminms.php:3105 +msgid "Teams webhook URL" +msgstr "Teams-Webhook-URL" + +#: wpvulnerability-admin.php:2950 wpvulnerability-adminms.php:3126 +msgid "Vulnerabilities to hide" +msgstr "Auszublendende Schwachstellen" + +#: wpvulnerability-admin.php:2958 wpvulnerability-adminms.php:3134 +msgid "What do you want to hide?" +msgstr "Was möchten Sie ausblenden?" + +#: wpvulnerability-admin.php:3008 wpvulnerability-adminms.php:3185 +msgid "Standard (Hybrid Detection)" +msgstr "Standard (Hybride Erkennung)" + +#: wpvulnerability-admin.php:3009 wpvulnerability-adminms.php:3186 +msgid "Strict (Extensions Only)" +msgstr "Streng (Nur Erweiterungen)" + +#: wpvulnerability-admin.php:3010 wpvulnerability-adminms.php:3187 +msgid "Disabled (No Detection)" +msgstr "Deaktiviert (Keine Erkennung)" + +#: wpvulnerability-admin.php:3016 wpvulnerability-adminms.php:3193 +msgid "Security Status" +msgstr "Sicherheitsstatus" + +#: wpvulnerability-admin.php:3020 wpvulnerability-adminms.php:3197 +msgid "Security Mode" +msgstr "Sicherheitsmodus" + +#: wpvulnerability-admin.php:3025 wpvulnerability-adminms.php:3202 +msgid "Shell Execution" +msgstr "Shell-Ausführung" + +#: wpvulnerability-admin.php:3027 wpvulnerability-admin.php:3475 +#: wpvulnerability-admin.php:3483 wpvulnerability-adminms.php:3204 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Enabled" +msgstr "Aktiviert" + +#: wpvulnerability-admin.php:3034 wpvulnerability-adminms.php:3211 +msgid "Audit Logging" +msgstr "Audit-Protokollierung" + +#. translators: %d: number of days +#: wpvulnerability-admin.php:3039 wpvulnerability-adminms.php:3216 +#, php-format +msgid "Enabled (%d days)" +msgstr "Aktiviert (%d Tage)" + +#: wpvulnerability-admin.php:3048 wpvulnerability-adminms.php:3225 +msgid "Total Log Entries" +msgstr "Gesamte Protokolleinträge" + +#: wpvulnerability-admin.php:3055 wpvulnerability-adminms.php:3232 +msgid "Last Shell Execution" +msgstr "Letzte Shell-Ausführung" + +#. translators: %s: time ago +#: wpvulnerability-admin.php:3061 wpvulnerability-admin.php:3266 +#: wpvulnerability-adminms.php:3238 wpvulnerability-adminms.php:3441 +#, php-format +msgid "%s ago" +msgstr "vor %s" + +#: wpvulnerability-admin.php:3073 wpvulnerability-adminms.php:3250 +msgid "" +"Configure security settings via wp-config.php constants: " +"WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, " +"WPVULNERABILITY_SHELL_EXEC_WHITELIST." +msgstr "" +"Sicherheitseinstellungen über wp-config.php-Konstanten konfigurieren: " +"WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, " +"WPVULNERABILITY_SHELL_EXEC_WHITELIST." + +#. translators: %s: URL to security documentation +#: wpvulnerability-admin.php:3079 wpvulnerability-adminms.php:3256 +#, php-format +msgid "" +"See security " +"configuration documentation for details." +msgstr "" +"Siehe Sicherheitskonfigurationsdokumentation " +"für Details." + +#: wpvulnerability-admin.php:3103 wpvulnerability-adminms.php:3280 +msgid "Memcached" +msgstr "Memcached" + +#: wpvulnerability-admin.php:3131 wpvulnerability-adminms.php:3308 +msgid "Imagick Extension" +msgstr "Imagick-Erweiterung" + +#: wpvulnerability-admin.php:3132 wpvulnerability-adminms.php:3309 +msgid "Redis Extension" +msgstr "Redis-Erweiterung" + +#: wpvulnerability-admin.php:3133 wpvulnerability-adminms.php:3310 +msgid "Memcached Extension" +msgstr "Memcached-Erweiterung" + +#: wpvulnerability-admin.php:3134 wpvulnerability-adminms.php:3311 +msgid "Memcache Extension" +msgstr "Memcache-Erweiterung" + +#: wpvulnerability-admin.php:3135 wpvulnerability-adminms.php:3312 +msgid "SQLite3 Extension" +msgstr "SQLite3-Erweiterung" + +#: wpvulnerability-admin.php:3136 wpvulnerability-adminms.php:3313 +msgid "PDO SQLite" +msgstr "PDO SQLite" + +#: wpvulnerability-admin.php:3137 wpvulnerability-adminms.php:3314 +msgid "Shell Command" +msgstr "Shell-Befehl" + +#: wpvulnerability-admin.php:3138 wpvulnerability-adminms.php:3315 +msgid "Binary Check" +msgstr "Binärprüfung" + +#: wpvulnerability-admin.php:3139 wpvulnerability-adminms.php:3316 +msgid "Not Detected" +msgstr "Nicht erkannt" + +#: wpvulnerability-admin.php:3143 wpvulnerability-adminms.php:3320 +msgid "Software Detection Methods" +msgstr "Software-Erkennungsmethoden" + +#: wpvulnerability-admin.php:3144 wpvulnerability-adminms.php:3321 +msgid "" +"Shows which detection method was used for each software component and the " +"reliability score." +msgstr "" +"Zeigt, welche Erkennungsmethode für jede Softwarekomponente verwendet wurde und den " +"Zuverlässigkeitswert." + +#: wpvulnerability-admin.php:3149 wpvulnerability-admin.php:3234 +#: wpvulnerability-admin.php:3558 wpvulnerability-adminms.php:3326 +#: wpvulnerability-adminms.php:3411 wpvulnerability-adminms.php:3752 +msgid "Component" +msgstr "Komponente" + +#: wpvulnerability-admin.php:3150 wpvulnerability-adminms.php:3327 +msgid "Version" +msgstr "Version" + +#: wpvulnerability-admin.php:3151 wpvulnerability-adminms.php:3328 +msgid "Detection Method" +msgstr "Erkennungsmethode" + +#: wpvulnerability-admin.php:3152 wpvulnerability-adminms.php:3329 +msgid "Reliability" +msgstr "Zuverlässigkeit" + +#: wpvulnerability-admin.php:3164 wpvulnerability-adminms.php:3341 +msgid "Not detected" +msgstr "Nicht erkannt" + +#: wpvulnerability-admin.php:3220 wpvulnerability-adminms.php:3397 +msgid "Shell Execution Audit Logs" +msgstr "Shell-Ausführungs-Audit-Protokolle" + +#: wpvulnerability-admin.php:3221 wpvulnerability-adminms.php:3398 +msgid "" +"Complete audit trail of shell command executions for security monitoring." +msgstr "" +"Vollständige Audit-Spur der Shell-Befehlsausführungen für die Sicherheitsüberwachung." + +#: wpvulnerability-admin.php:3226 wpvulnerability-adminms.php:3403 +msgid "No shell execution logs found." +msgstr "Keine Shell-Ausführungsprotokolle gefunden." + +#: wpvulnerability-admin.php:3227 wpvulnerability-adminms.php:3404 +msgid "" +"Logs will appear here when shell commands are executed for software " +"detection." +msgstr "" +"Protokolle werden hier angezeigt, wenn Shell-Befehle zur Software-" +"Erkennung ausgeführt werden." + +#: wpvulnerability-admin.php:3233 wpvulnerability-adminms.php:3410 +msgid "Time" +msgstr "Zeit" + +#: wpvulnerability-admin.php:3235 wpvulnerability-adminms.php:3412 +msgid "Command" +msgstr "Befehl" + +#: wpvulnerability-admin.php:3237 wpvulnerability-adminms.php:3414 +msgid "User" +msgstr "Benutzer" + +#: wpvulnerability-admin.php:3238 wpvulnerability-adminms.php:3415 +msgid "Output" +msgstr "Ausgabe" + +#. translators: %d: number of logs shown +#: wpvulnerability-admin.php:3302 wpvulnerability-adminms.php:3477 +#, php-format +msgid "Showing the %d most recent log entries." +msgstr "Die %d neuesten Protokolleinträge werden angezeigt." + +#: wpvulnerability-admin.php:3320 wpvulnerability-adminms.php:3565 +msgid "Invalid nonce." +msgstr "Ungültiges Nonce." + +#: wpvulnerability-admin.php:3325 wpvulnerability-adminms.php:3570 +msgid "Insufficient permissions." +msgstr "Unzureichende Berechtigungen." + +#: wpvulnerability-admin.php:3331 wpvulnerability-adminms.php:3576 +msgid "No component specified." +msgstr "Keine Komponente angegeben." + +#: wpvulnerability-admin.php:3366 wpvulnerability-adminms.php:3524 +msgid "Debug Information" +msgstr "Debug-Informationen" + +#: wpvulnerability-admin.php:3368 wpvulnerability-adminms.php:3526 +msgid "This tab is only visible when WP_DEBUG is enabled. Use with caution." +msgstr "Dieser Tab ist nur sichtbar, wenn WP_DEBUG aktiviert ist. Mit Vorsicht verwenden." + +#: wpvulnerability-admin.php:3429 wpvulnerability-adminms.php:3623 +msgid "System Information" +msgstr "Systeminformationen" + +#: wpvulnerability-admin.php:3433 wpvulnerability-adminms.php:3627 +msgid "WordPress Version" +msgstr "WordPress-Version" + +#: wpvulnerability-admin.php:3437 wpvulnerability-adminms.php:3631 +msgid "Multisite" +msgstr "Multisite" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "Yes" +msgstr "Ja" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "No" +msgstr "Nein" + +#: wpvulnerability-admin.php:3441 wpvulnerability-adminms.php:3635 +msgid "Language" +msgstr "Sprache" + +#: wpvulnerability-admin.php:3445 wpvulnerability-adminms.php:3639 +msgid "PHP Version" +msgstr "PHP-Version" + +#: wpvulnerability-admin.php:3449 wpvulnerability-adminms.php:3643 +msgid "PHP Extensions" +msgstr "PHP-Erweiterungen" + +#: wpvulnerability-admin.php:3460 wpvulnerability-adminms.php:3654 +msgid "PHP Memory Limit" +msgstr "PHP-Speicherlimit" + +#: wpvulnerability-admin.php:3464 wpvulnerability-adminms.php:3658 +msgid "Database" +msgstr "Datenbank" + +#: wpvulnerability-admin.php:3468 wpvulnerability-adminms.php:3662 +msgid "Web Server" +msgstr "Webserver" + +#: wpvulnerability-admin.php:3472 wpvulnerability-adminms.php:3666 +msgid "WP_DEBUG" +msgstr "WP_DEBUG" + +#: wpvulnerability-admin.php:3480 wpvulnerability-adminms.php:3674 +msgid "WP_DEBUG_LOG" +msgstr "WP_DEBUG_LOG" + +#: wpvulnerability-admin.php:3490 wpvulnerability-adminms.php:3684 +msgid "Path:" +msgstr "Pfad:" + +#. translators: %s: file size +#: wpvulnerability-admin.php:3499 wpvulnerability-adminms.php:3698 +#, php-format +msgid "Size: %s" +msgstr "Größe: %s" + +#: wpvulnerability-admin.php:3510 wpvulnerability-adminms.php:3704 +msgid "View Log File" +msgstr "Protokolldatei anzeigen" + +#: wpvulnerability-admin.php:3516 wpvulnerability-adminms.php:3710 +msgid "Log file is not web-accessible (outside wp-content)" +msgstr "Protokolldatei ist nicht über das Web zugänglich (außerhalb von wp-content)" + +#: wpvulnerability-admin.php:3522 wpvulnerability-adminms.php:3716 +msgid "Log file does not exist yet" +msgstr "Protokolldatei existiert noch nicht" + +#: wpvulnerability-admin.php:3530 wpvulnerability-adminms.php:3724 +msgid "Plugin Version" +msgstr "Plugin-Version" + +#: wpvulnerability-admin.php:3554 wpvulnerability-adminms.php:3748 +msgid "Component Detection" +msgstr "Komponentenerkennung" + +#: wpvulnerability-admin.php:3560 wpvulnerability-adminms.php:3754 +msgid "Version Detected" +msgstr "Version erkannt" + +#: wpvulnerability-admin.php:3561 wpvulnerability-adminms.php:3755 +msgid "Analyzed" +msgstr "Analysiert" + +#: wpvulnerability-admin.php:3562 wpvulnerability-adminms.php:3756 +msgid "Cache Status" +msgstr "Cache-Status" + +#: wpvulnerability-admin.php:3622 wpvulnerability-adminms.php:3816 +msgid "Configuration Summary" +msgstr "Konfigurationsübersicht" + +#: wpvulnerability-admin.php:3626 wpvulnerability-adminms.php:3820 +msgid "Cache Duration" +msgstr "Cache-Dauer" + +#: wpvulnerability-admin.php:3636 wpvulnerability-adminms.php:3830 +msgid "Log Retention" +msgstr "Protokollaufbewahrung" + +#: wpvulnerability-admin.php:3646 wpvulnerability-adminms.php:3840 +msgid "Components Analyzed" +msgstr "Analysierte Komponenten" + +#: wpvulnerability-admin.php:3661 wpvulnerability-adminms.php:3855 +msgid "Notification Email" +msgstr "Benachrichtigungs-E-Mail" + +#: wpvulnerability-admin.php:3682 wpvulnerability-adminms.php:3876 +msgid "Slack Webhook" +msgstr "Slack-Webhook" + +#: wpvulnerability-admin.php:3692 wpvulnerability-admin.php:3712 +#: wpvulnerability-admin.php:3732 wpvulnerability-admin.php:3752 +#: wpvulnerability-adminms.php:3886 wpvulnerability-adminms.php:3906 +#: wpvulnerability-adminms.php:3926 wpvulnerability-adminms.php:3946 +msgid "Configured & Enabled" +msgstr "Konfiguriert & Aktiviert" + +#: wpvulnerability-admin.php:3694 wpvulnerability-admin.php:3714 +#: wpvulnerability-admin.php:3734 wpvulnerability-admin.php:3754 +#: wpvulnerability-adminms.php:3888 wpvulnerability-adminms.php:3908 +#: wpvulnerability-adminms.php:3928 wpvulnerability-adminms.php:3948 +msgid "Configured (Disabled)" +msgstr "Konfiguriert (Deaktiviert)" + +#: wpvulnerability-admin.php:3696 wpvulnerability-admin.php:3716 +#: wpvulnerability-admin.php:3736 wpvulnerability-admin.php:3756 +#: wpvulnerability-adminms.php:3890 wpvulnerability-adminms.php:3910 +#: wpvulnerability-adminms.php:3930 wpvulnerability-adminms.php:3950 +msgid "Not configured" +msgstr "Nicht konfiguriert" + +#: wpvulnerability-admin.php:3703 wpvulnerability-adminms.php:3897 +msgid "Teams Webhook" +msgstr "Teams-Webhook" + +#: wpvulnerability-admin.php:3723 wpvulnerability-adminms.php:3917 +msgid "Discord Webhook" +msgstr "Discord-Webhook" + +#: wpvulnerability-admin.php:3743 wpvulnerability-adminms.php:3937 +msgid "Telegram Bot" +msgstr "Telegram-Bot" + +#: wpvulnerability-admin.php:3788 wpvulnerability-adminms.php:3982 +msgid "Cron Status" +msgstr "Cron-Status" + +#: wpvulnerability-admin.php:3792 wpvulnerability-adminms.php:3986 +msgid "Update Database" +msgstr "Datenbank aktualisieren" + +#. translators: %s: date and time +#: wpvulnerability-admin.php:3797 wpvulnerability-admin.php:3810 +#: wpvulnerability-adminms.php:3991 wpvulnerability-adminms.php:4004 +#, php-format +msgid "Next run: %s" +msgstr "Nächste Ausführung: %s" + +#: wpvulnerability-admin.php:3800 wpvulnerability-admin.php:3813 +#: wpvulnerability-adminms.php:3994 wpvulnerability-adminms.php:4007 +msgid "Not scheduled" +msgstr "Nicht geplant" + +#: wpvulnerability-admin.php:3805 wpvulnerability-adminms.php:3999 +msgid "Send Notification" +msgstr "Benachrichtigung senden" + +#: wpvulnerability-admin.php:3826 wpvulnerability-adminms.php:4020 +msgid "Run Update Now" +msgstr "Aktualisierung jetzt ausführen" + +#: wpvulnerability-admin.php:3834 wpvulnerability-adminms.php:4028 +msgid "Run Notification Now" +msgstr "Benachrichtigung jetzt ausführen" + +#: wpvulnerability-admin.php:3840 wpvulnerability-adminms.php:4034 +msgid "You do not have permission to run these actions." +msgstr "Sie haben keine Berechtigung, diese Aktionen auszuführen." + +#: wpvulnerability-admin.php:3859 wpvulnerability-adminms.php:4053 +msgid "API Testing" +msgstr "API-Tests" + +#: wpvulnerability-admin.php:3862 wpvulnerability-adminms.php:4056 +msgid "" +"Test API connectivity for each component. Click a button to send a test " +"request." +msgstr "" +"API-Konnektivität für jede Komponente testen. Klicken Sie auf eine Schaltfläche, um eine Test-" +"Anfrage zu senden." + +#. translators: %s: component name +#: wpvulnerability-admin.php:3869 wpvulnerability-adminms.php:4063 +#, php-format +msgid "Test %s" +msgstr "%s testen" + +#: wpvulnerability-admin.php:3884 wpvulnerability-adminms.php:4078 +msgid "Testing..." +msgstr "Wird getestet..." + +#: wpvulnerability-admin.php:3900 wpvulnerability-adminms.php:4094 +msgid "HTTP Code:" +msgstr "HTTP-Code:" + +#: wpvulnerability-admin.php:3901 wpvulnerability-adminms.php:4095 +msgid "Response Time:" +msgstr "Antwortzeit:" + +#: wpvulnerability-admin.php:3903 wpvulnerability-adminms.php:4097 +msgid "Response Preview" +msgstr "Antwortvorschau" + +#: wpvulnerability-admin.php:3910 wpvulnerability-admin.php:3914 +#: wpvulnerability-adminms.php:4104 wpvulnerability-adminms.php:4108 +msgid "Test" +msgstr "Test" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "Error:" +msgstr "Fehler:" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "AJAX request failed." +msgstr "AJAX-Anfrage fehlgeschlagen." + +#: wpvulnerability-admin.php:3922 wpvulnerability-adminms.php:4116 +msgid "You do not have permission to test API connectivity." +msgstr "Sie haben keine Berechtigung, die API-Konnektivität zu testen." + +#: wpvulnerability-admin.php:3943 wpvulnerability-adminms.php:4137 +msgid "Database Options Viewer" +msgstr "Datenbankoptionen-Viewer" + +#: wpvulnerability-admin.php:3944 wpvulnerability-adminms.php:4138 +msgid "View the raw data stored in WordPress options." +msgstr "Die in WordPress-Optionen gespeicherten Rohdaten anzeigen." + +#: wpvulnerability-admin.php:3950 wpvulnerability-adminms.php:4144 +msgid "Select an option..." +msgstr "Option auswählen..." + +#: wpvulnerability-admin.php:3969 wpvulnerability-adminms.php:4163 +msgid "Option not found or empty." +msgstr "Option nicht gefunden oder leer." + +#: wpvulnerability-admin.php:3987 wpvulnerability-adminms.php:4182 +msgid "Quick Actions" +msgstr "Schnellaktionen" + +#: wpvulnerability-admin.php:3988 wpvulnerability-adminms.php:4183 +msgid "Perform debugging actions. Use with caution." +msgstr "Debug-Aktionen ausführen. Mit Vorsicht verwenden." + +#: wpvulnerability-admin.php:3992 wpvulnerability-adminms.php:4187 +msgid "Are you sure you want to clear all caches?" +msgstr "Sind Sie sicher, dass Sie alle Caches leeren möchten?" + +#: wpvulnerability-admin.php:3996 wpvulnerability-adminms.php:4191 +msgid "Clear All Caches" +msgstr "Alle Caches leeren" + +#: wpvulnerability-admin.php:4000 wpvulnerability-adminms.php:4195 +msgid "Are you sure you want to reset signatures?" +msgstr "Sind Sie sicher, dass Sie die Signaturen zurücksetzen möchten?" + +#: wpvulnerability-admin.php:4004 wpvulnerability-adminms.php:4199 +msgid "Reset Signatures" +msgstr "Signaturen zurücksetzen" + +#: wpvulnerability-admin.php:4012 wpvulnerability-adminms.php:4207 +msgid "Export Debug Info" +msgstr "Debug-Informationen exportieren" + +#: wpvulnerability-admin.php:4018 wpvulnerability-adminms.php:4213 +msgid "You do not have permission to perform these actions." +msgstr "Sie haben keine Berechtigung, diese Aktionen auszuführen." + +#: wpvulnerability-adminms.php:101 wpvulnerability-adminms.php:199 +msgid "Settings saved." +msgstr "Einstellungen gespeichert." + +#: wpvulnerability-adminms.php:277 +msgid "WPVulnerability cron events have been repaired across the network." +msgstr "WPVulnerability-Cron-Ereignisse wurden netzwerkweit repariert." + +#: wpvulnerability-adminms.php:3512 +msgid "You do not have permission to access this page." +msgstr "Sie haben keine Berechtigung, auf diese Seite zuzugreifen." + +#. translators: 1: core version +#: wpvulnerability-core.php:33 +#, php-format +msgid "" +"WordPress %1$s has a known vulnerability that may be affecting your " +"installed version." +msgstr "" +"WordPress %1$s hat eine bekannte Sicherheitslücke, die Ihre " +"installierte Version betreffen könnte." + +#: wpvulnerability-core.php:115 wpvulnerability-plugins.php:207 +#: wpvulnerability-process.php:335 wpvulnerability-process.php:443 +#: wpvulnerability-process.php:529 wpvulnerability-themes.php:173 +#: wpvulnerability-themes.php:469 +msgid "Actively exploited" +msgstr "Aktiv ausgenutzt" + +#: wpvulnerability-core.php:122 wpvulnerability-plugins.php:214 +#: wpvulnerability-process.php:342 wpvulnerability-process.php:450 +#: wpvulnerability-themes.php:180 wpvulnerability-themes.php:476 +msgid "Public exploit" +msgstr "Öffentlicher Exploit" + +#: wpvulnerability-core.php:125 wpvulnerability-plugins.php:217 +#: wpvulnerability-process.php:345 wpvulnerability-process.php:453 +#: wpvulnerability-themes.php:183 wpvulnerability-themes.php:479 +msgid "Automatable" +msgstr "Automatisierbar" + +#: wpvulnerability-core.php:139 wpvulnerability-plugins.php:245 +#: wpvulnerability-process.php:371 wpvulnerability-process.php:469 +#: wpvulnerability-process.php:544 wpvulnerability-themes.php:211 +#: wpvulnerability-themes.php:503 +msgid "References:" +msgstr "Referenzen:" + +#: wpvulnerability-debug.php:399 +msgid "Invalid component specified." +msgstr "Ungültige Komponente angegeben." + +#: wpvulnerability-debug.php:423 +msgid "Version not detected for this component." +msgstr "Version für diese Komponente nicht erkannt." + +#: wpvulnerability-debug.php:453 +msgid "API request successful." +msgstr "API-Anfrage erfolgreich." + +#. translators: %d: HTTP status code +#: wpvulnerability-debug.php:469 +#, php-format +msgid "API returned HTTP code %d." +msgstr "API hat HTTP-Code %d zurückgegeben." + +#: wpvulnerability-general.php:355 +msgid "WPVulnerability Logs" +msgstr "WPVulnerability-Protokolle" + +#: wpvulnerability-general.php:356 +msgid "WPVulnerability Log" +msgstr "WPVulnerability-Protokoll" + +#: wpvulnerability-general.php:1873 wpvulnerability-general.php:1874 +msgid "Low" +msgstr "Niedrig" + +#: wpvulnerability-general.php:1875 wpvulnerability-general.php:1876 +msgid "Medium" +msgstr "Mittel" + +#: wpvulnerability-general.php:1877 wpvulnerability-general.php:1878 +msgid "High" +msgstr "Hoch" + +#: wpvulnerability-general.php:1879 wpvulnerability-general.php:1880 +msgid "Critical" +msgstr "Kritisch" + +#: wpvulnerability-general.php:2684 +msgid "WPVulnerability Shell Logs" +msgstr "WPVulnerability-Shell-Protokolle" + +#: wpvulnerability-general.php:2685 +msgid "WPVulnerability Shell Log" +msgstr "WPVulnerability-Shell-Protokoll" + +#: wpvulnerability-notifications.php:30 +msgid "Every week" +msgstr "Jede Woche" + +#: wpvulnerability-notifications.php:57 +msgid "Every day" +msgstr "Jeden Tag" + +#: wpvulnerability-notifications.php:84 +msgid "Invalid request." +msgstr "Ungültige Anfrage." + +#: wpvulnerability-notifications.php:104 +msgid "You have unsubscribed from WPVulnerability notifications." +msgstr "Sie haben WPVulnerability-Benachrichtigungen abbestellt." + +#. translators: %1$s the website of Database, %2$s database site name. +#: wpvulnerability-notifications.php:289 +#, php-format +msgid "" +"Learn more about the WordPress Vulnerability Database API at %2$s" +msgstr "" +"Erfahren Sie mehr über die WordPress Vulnerability Database API unter %2$s" + +#. translators: %1$s unsubscribe URL. +#: wpvulnerability-notifications.php:300 +#, php-format +msgid "" +"Want to stop receiving these alerts? Unsubscribe or " +"change the email frequency to Never in the WPVulnerability " +"settings." +msgstr "" +"Möchten Sie diese Benachrichtigungen nicht mehr erhalten? Abmelden oder " +"die E-Mail-Frequenz in den WPVulnerability-Einstellungen auf Nie ändern." + +#: wpvulnerability-notifications.php:595 +msgid "No vulnerabilities found" +msgstr "Keine Schwachstellen gefunden" + +#: wpvulnerability-notifications.php:596 +msgid "This is likely a test. The site does not have vulnerabilities." +msgstr "Dies ist wahrscheinlich ein Test. Die Website hat keine Schwachstellen." + +#: wpvulnerability-notifications.php:601 +msgid "Core vulnerabilities" +msgstr "Core-Schwachstellen" + +#: wpvulnerability-notifications.php:607 +msgid "Plugins vulnerabilities" +msgstr "Plugin-Schwachstellen" + +#: wpvulnerability-notifications.php:613 +msgid "Themes vulnerabilities" +msgstr "Theme-Schwachstellen" + +#: wpvulnerability-notifications.php:619 +msgid "PHP vulnerabilities" +msgstr "PHP-Schwachstellen" + +#: wpvulnerability-notifications.php:625 +msgid "Apache HTTPD vulnerabilities" +msgstr "Apache HTTPD-Schwachstellen" + +#: wpvulnerability-notifications.php:631 +msgid "Nginx vulnerabilities" +msgstr "Nginx-Schwachstellen" + +#: wpvulnerability-notifications.php:637 +msgid "MariaDB vulnerabilities" +msgstr "MariaDB-Schwachstellen" + +#: wpvulnerability-notifications.php:643 +msgid "MySQL vulnerabilities" +msgstr "MySQL-Schwachstellen" + +#: wpvulnerability-notifications.php:649 +msgid "ImageMagick vulnerabilities" +msgstr "ImageMagick-Schwachstellen" + +#: wpvulnerability-notifications.php:655 +msgid "curl vulnerabilities" +msgstr "curl-Schwachstellen" + +#: wpvulnerability-notifications.php:661 +msgid "memcached vulnerabilities" +msgstr "memcached-Schwachstellen" + +#: wpvulnerability-notifications.php:667 +msgid "Redis vulnerabilities" +msgstr "Redis-Schwachstellen" + +#: wpvulnerability-notifications.php:673 +msgid "SQLite vulnerabilities" +msgstr "SQLite-Schwachstellen" + +#. translators: Site name. +#: wpvulnerability-notifications.php:696 +#, php-format +msgid "Vulnerability found: %s" +msgstr "Schwachstelle gefunden: %s" + +#: wpvulnerability-notifications.php:700 +msgid "Vulnerability found" +msgstr "Schwachstelle gefunden" + +#. translators: 1: Plugin name +#. translators: 1: theme name +#: wpvulnerability-plugins.php:116 wpvulnerability-themes.php:82 +#, php-format +msgid "" +"%1$s has a known vulnerability that may be affecting your installed version." +msgstr "" +"%1$s hat eine bekannte Sicherheitslücke, die Ihre installierte Version betreffen könnte." + +#: wpvulnerability-plugins.php:230 wpvulnerability-process.php:358 +msgid "This plugin is closed. Please replace it with another." +msgstr "Dieses Plugin ist geschlossen. Bitte ersetzen Sie es durch ein anderes." + +#: wpvulnerability-plugins.php:233 wpvulnerability-process.php:361 +msgid "" +"This vulnerability appears to be unpatched. Stay tuned for upcoming plugin " +"updates." +msgstr "" +"Diese Schwachstelle scheint nicht gepatcht zu sein. Bleiben Sie für kommende Plugin-" +"Updates auf dem Laufenden." + +#: wpvulnerability-plugins.php:570 +msgid "It hasn't been updated in over a year." +msgstr "Wurde seit über einem Jahr nicht mehr aktualisiert." + +#: wpvulnerability-plugins.php:576 +msgid "It may no longer be available (closed?)." +msgstr "Ist allenfalls nicht mehr verfügbar (geschlossen?)." + +#: wpvulnerability-plugins.php:614 wpvulnerability-plugins.php:621 +msgid "Last updated on" +msgstr "Zuletzt aktualisiert am" + +#. translators: the number of vulnerabilities. +#: wpvulnerability-plugins.php:764 wpvulnerability-themes.php:704 +#, php-format +msgid "Vulnerabilities (%d)" +msgstr "Schwachstellen (%d)" + +#. translators: %s: software name. +#: wpvulnerability-process.php:601 +#, php-format +msgid "%s running" +msgstr "%s läuft" + +#: wpvulnerability-process.php:611 wpvulnerability-process.php:792 +msgid "End of Life" +msgstr "End of Life" + +#: wpvulnerability-process.php:613 wpvulnerability-process.php:618 +msgid "End of life:" +msgstr "End of Life:" + +#: wpvulnerability-process.php:616 +msgid "Supported" +msgstr "Unterstützt" + +#: wpvulnerability-process.php:652 +msgid "Plugin" +msgstr "Plugin" + +#: wpvulnerability-process.php:721 +msgid "Theme" +msgstr "Theme" + +#. translators: %s: end-of-life date +#: wpvulnerability-process.php:790 +#, php-format +msgid "End of life: %s" +msgstr "End of Life: %s" + +#: wpvulnerability-process.php:795 +msgid "EOL" +msgstr "EOL" + +#: wpvulnerability-run.php:30 +msgid "Network Settings" +msgstr "Netzwerk-Einstellungen" + +#: wpvulnerability-run.php:731 wpvulnerability-run.php:781 +#: wpvulnerability-run.php:791 wpvulnerability-run.php:836 +msgid "Vulnerabilities" +msgstr "Schwachstellen" + +#: wpvulnerability-schedule.php:30 +msgid "Every 6 hours" +msgstr "Alle 6 Stunden" + +#: wpvulnerability-schedule.php:303 +msgid "Database updates" +msgstr "Datenbankaktualisierungen" + +#: wpvulnerability-schedule.php:309 +msgid "Log cleanup" +msgstr "Protokollbereinigung" + +#: wpvulnerability-schedule.php:439 +msgid "" +"Notifications are scheduled, but settings currently disable them. Please " +"review the notifications tab." +msgstr "" +"Benachrichtigungen sind geplant, aber die Einstellungen deaktivieren sie derzeit. Bitte " +"überprüfen Sie den Benachrichtigungs-Tab." + +#: wpvulnerability-schedule.php:442 +msgid "This event should not be scheduled for this site." +msgstr "Dieses Ereignis sollte nicht für diese Website geplant sein." + +#: wpvulnerability-schedule.php:446 +msgid "Not expected for this site." +msgstr "Für diese Website nicht erwartet." + +#: wpvulnerability-schedule.php:450 +msgid "No instances found." +msgstr "Keine Instanzen gefunden." + +#: wpvulnerability-schedule.php:456 +msgid "Scheduled with an unexpected interval." +msgstr "Mit einem unerwarteten Intervall geplant." + +#: wpvulnerability-schedule.php:460 +msgid "Multiple instances detected." +msgstr "Mehrere Instanzen erkannt." + +#: wpvulnerability-schedule.php:465 +msgid "Scheduled as expected." +msgstr "Wie erwartet geplant." + +#: wpvulnerability-sitehealth.php:22 +msgid "There aren't plugins vulnerabilities" +msgstr "Es gibt keine Plugin-Schwachstellen" + +#: wpvulnerability-sitehealth.php:30 +msgid "Shows possible vulnerabilities that exist in installed plugins." +msgstr "Zeigt mögliche Schwachstellen, die in installierten Plugins existieren." + +#. translators: Number of plugins vulnerabilities. +#: wpvulnerability-sitehealth.php:43 +#, php-format +msgid "There is %d plugin with vulnerabilities" +msgid_plural "There are %d plugins with vulnerabilities" +msgstr[0] "Es gibt %d Plugin mit Schwachstellen" +msgstr[1] "Es gibt %d Plugins mit Schwachstellen" + +#: wpvulnerability-sitehealth.php:49 +msgid "" +"We've detected potential vulnerabilities in installed plugins. Please check " +"them and keep them updated." +msgstr "" +"Wir haben potenzielle Schwachstellen in installierten Plugins erkannt. Bitte überprüfen " +"Sie diese und halten Sie sie aktuell." + +#: wpvulnerability-sitehealth.php:57 +msgid "Update plugins" +msgstr "Plugins aktualisieren" + +#: wpvulnerability-sitehealth.php:74 +msgid "There aren't themes vulnerabilities" +msgstr "Es gibt keine Theme-Schwachstellen" + +#: wpvulnerability-sitehealth.php:82 +msgid "Shows possible vulnerabilities that exist in installed themes." +msgstr "Zeigt mögliche Schwachstellen, die in installierten Themes existieren." + +#. translators: Number of themes vulnerabilities. +#: wpvulnerability-sitehealth.php:95 +#, php-format +msgid "There is %d theme with vulnerabilities" +msgid_plural "There are %d themes with vulnerabilities" +msgstr[0] "Es gibt %d Theme mit Schwachstellen" +msgstr[1] "Es gibt %d Themes mit Schwachstellen" + +#: wpvulnerability-sitehealth.php:101 +msgid "" +"We've detected potential vulnerabilities in installed themes. Please check " +"them and keep them updated." +msgstr "" +"Wir haben potenzielle Schwachstellen in installierten Themes erkannt. Bitte überprüfen " +"Sie diese und halten Sie sie aktuell." + +#: wpvulnerability-sitehealth.php:109 +msgid "Update themes" +msgstr "Themes aktualisieren" + +#: wpvulnerability-sitehealth.php:126 +msgid "There aren't WordPress vulnerabilities" +msgstr "Es gibt keine WordPress-Schwachstellen" + +#: wpvulnerability-sitehealth.php:134 +msgid "Shows possible vulnerabilities existing in the WordPress core." +msgstr "Zeigt mögliche Schwachstellen, die im WordPress Core existieren." + +#. translators: Number of core vulnerabilities. +#: wpvulnerability-sitehealth.php:147 +#, php-format +msgid "There is %d core vulnerability" +msgid_plural "There are %d core vulnerabilities" +msgstr[0] "Es gibt %d Core-Schwachstelle" +msgstr[1] "Es gibt %d Core-Schwachstellen" + +#: wpvulnerability-sitehealth.php:153 +msgid "" +"We've detected potential vulnerabilities in this WordPress installation. " +"Please check them and keep your installation updated." +msgstr "" +"Wir haben potenzielle Schwachstellen in dieser WordPress-Installation erkannt. " +"Bitte überprüfen Sie diese und halten Sie Ihre Installation aktuell." + +#: wpvulnerability-sitehealth.php:161 +msgid "Update WordPress" +msgstr "WordPress aktualisieren" + +#: wpvulnerability-sitehealth.php:180 +msgid "Nginx" +msgstr "Nginx" + +#: wpvulnerability-sitehealth.php:189 +msgid "Invalid software type" +msgstr "Ungültiger Software-Typ" + +#: wpvulnerability-sitehealth.php:192 +msgid "Error" +msgstr "Fehler" + +#: wpvulnerability-sitehealth.php:197 +msgid "The specified software type is not valid." +msgstr "Der angegebene Software-Typ ist nicht gültig." + +#. translators: name of the software. +#: wpvulnerability-sitehealth.php:207 +#, php-format +msgid "There aren't %s vulnerabilities" +msgstr "Es gibt keine %s-Schwachstellen" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:216 +#, php-format +msgid "Shows possible vulnerabilities existing in %s." +msgstr "Zeigt mögliche Schwachstellen, die in %s existieren." + +#. translators: Software and number of vulnerabilities. +#: wpvulnerability-sitehealth.php:229 +#, php-format +msgid "There is %1$d %2$s vulnerability" +msgid_plural "There are %1$d %2$s vulnerabilities" +msgstr[0] "Es gibt %1$d %2$s-Schwachstelle" +msgstr[1] "Es gibt %1$d %2$s-Schwachstellen" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:237 +#, php-format +msgid "" +"We've detected potential vulnerabilities in %s. Please check them and keep " +"your installation updated." +msgstr "" +"Wir haben potenzielle Schwachstellen in %s erkannt. Bitte überprüfen Sie diese und halten " +"Sie Ihre Installation aktuell." + +#: wpvulnerability-sitehealth.php:246 +msgid "How to update PHP" +msgstr "Wie man PHP aktualisiert" + +#: wpvulnerability-sitehealth.php:386 +msgid "WPVulnerability Core" +msgstr "WPVulnerability Core" + +#: wpvulnerability-sitehealth.php:394 +msgid "WPVulnerability Themes" +msgstr "WPVulnerability Themes" + +#: wpvulnerability-sitehealth.php:402 +msgid "WPVulnerability Plugins" +msgstr "WPVulnerability Plugins" + +#: wpvulnerability-sitehealth.php:410 +msgid "WPVulnerability PHP" +msgstr "WPVulnerability PHP" + +#: wpvulnerability-sitehealth.php:418 +msgid "WPVulnerability Apache HTTPD" +msgstr "WPVulnerability Apache HTTPD" + +#: wpvulnerability-sitehealth.php:426 +msgid "WPVulnerability Nginx" +msgstr "WPVulnerability Nginx" + +#: wpvulnerability-sitehealth.php:434 +msgid "WPVulnerability MariaDB" +msgstr "WPVulnerability MariaDB" + +#: wpvulnerability-sitehealth.php:442 +msgid "WPVulnerability MySQL" +msgstr "WPVulnerability MySQL" + +#: wpvulnerability-sitehealth.php:450 +msgid "WPVulnerability ImageMagick" +msgstr "WPVulnerability ImageMagick" + +#: wpvulnerability-sitehealth.php:458 +msgid "WPVulnerability curl" +msgstr "WPVulnerability curl" + +#: wpvulnerability-sitehealth.php:466 +msgid "WPVulnerability memcached" +msgstr "WPVulnerability memcached" + +#: wpvulnerability-sitehealth.php:474 +msgid "WPVulnerability redis" +msgstr "WPVulnerability redis" + +#: wpvulnerability-sitehealth.php:482 +msgid "WPVulnerability sqlite" +msgstr "WPVulnerability sqlite" + +#: wpvulnerability-themes.php:196 wpvulnerability-themes.php:492 +msgid "This theme is closed. Please replace it with another." +msgstr "Dieses Theme ist geschlossen. Bitte ersetzen Sie es durch ein anderes." + +#: wpvulnerability-themes.php:199 wpvulnerability-themes.php:495 +msgid "" +"This vulnerability appears to be unpatched. Stay tuned for upcoming theme " +"updates." +msgstr "" +"Diese Schwachstelle scheint nicht gepatcht zu sein. Bleiben Sie für kommende Theme-" +"Updates auf dem Laufenden." + +#: wpvulnerability-themes.php:391 +msgid "" +"This theme has known vulnerabilities that may be affecting your installed " +"version." +msgstr "" +"Dieses Theme hat bekannte Sicherheitslücken, die Ihre installierte " +"Version betreffen könnten." diff --git a/languages/wpvulnerability-el.l10n.php b/languages/wpvulnerability-el.l10n.php new file mode 100644 index 0000000..59932d9 --- /dev/null +++ b/languages/wpvulnerability-el.l10n.php @@ -0,0 +1,2 @@ +'wpvulnerability','plural-forms'=>'nplurals=2; plural=(n != 1);','language'=>'el','project-id-version'=>'WPVulnerability 5.0.0','pot-creation-date'=>'2026-05-27T16:32:22+00:00','po-revision-date'=>'2026-05-27 00:00+0000','x-generator'=>'AI Translation','messages'=>['WPVulnerability'=>'WPVulnerability','https://www.wpvulnerability.com/plugin/'=>'https://www.wpvulnerability.com/plugin/','Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API.'=>'Λάβετε πληροφορίες σχετικά με πιθανές ευπάθειες στο WordPress σας από το WordPress Vulnerability Database API.','ROBOTSTXT'=>'ROBOTSTXT','https://www.robotstxt.es/'=>'https://www.robotstxt.es/','This command requires a WordPress administrator. Run with --user=.'=>'Αυτή η εντολή απαιτεί διαχειριστή WordPress. Εκτελέστε με --user=.','No core vulnerabilities found.'=>'Δεν βρέθηκαν ευπάθειες στον πυρήνα.','No plugin vulnerabilities found.'=>'Δεν βρέθηκαν ευπάθειες σε πρόσθετα.','No theme vulnerabilities found.'=>'Δεν βρέθηκαν ευπάθειες σε θέματα.','No %s vulnerabilities found.'=>'Δεν βρέθηκαν ευπάθειες για %s.','Data from source has been reloaded.'=>'Τα δεδομένα από την πηγή έχουν επαναφορτωθεί.','You do not have permission to reload data.'=>'Δεν έχετε δικαίωμα επαναφόρτωσης δεδομένων.','Test email has been sent.'=>'Το δοκιμαστικό email έχει αποσταλεί.','Test email has failed. Please, check your email settings.'=>'Η αποστολή δοκιμαστικού email απέτυχε. Ελέγξτε τις ρυθμίσεις email σας.','You do not have permission to send test emails.'=>'Δεν έχετε δικαίωμα αποστολής δοκιμαστικών email.','WPVulnerability cron events have been repaired.'=>'Τα συμβάντα cron του WPVulnerability έχουν επισκευαστεί.','You do not have permission to repair cron events.'=>'Δεν έχετε δικαίωμα επισκευής συμβάντων cron.','All logs have been deleted.'=>'Όλα τα αρχεία καταγραφής έχουν διαγραφεί.','You do not have permission to delete logs.'=>'Δεν έχετε δικαίωμα διαγραφής αρχείων καταγραφής.','Uninstall preference saved.'=>'Η προτίμηση απεγκατάστασης αποθηκεύτηκε.','WPVulnerability has been reset to defaults and reloaded.'=>'Το WPVulnerability επαναφέρθηκε στις προεπιλογές και επαναφορτώθηκε.','You do not have permission to reset WPVulnerability.'=>'Δεν έχετε δικαίωμα επαναφοράς του WPVulnerability.','All caches have been cleared.'=>'Όλες οι κρυφές μνήμες έχουν εκκαθαριστεί.','You do not have permission to clear caches.'=>'Δεν έχετε δικαίωμα εκκαθάρισης κρυφών μνημών.','Plugin and theme signatures have been reset.'=>'Οι υπογραφές πρόσθετων και θεμάτων έχουν επαναφερθεί.','You do not have permission to reset signatures.'=>'Δεν έχετε δικαίωμα επαναφοράς υπογραφών.','You do not have permission to export debug information.'=>'Δεν έχετε δικαίωμα εξαγωγής πληροφοριών εντοπισμού σφαλμάτων.','Database update has been executed.'=>'Η ενημέρωση βάσης δεδομένων εκτελέστηκε.','You do not have permission to run database updates.'=>'Δεν έχετε δικαίωμα εκτέλεσης ενημερώσεων βάσης δεδομένων.','Notification has been sent.'=>'Η ειδοποίηση έχει αποσταλεί.','Notification sending failed.'=>'Η αποστολή ειδοποίησης απέτυχε.','You do not have permission to send notifications.'=>'Δεν έχετε δικαίωμα αποστολής ειδοποιήσεων.','Notifications'=>'Ειδοποιήσεις','Analysis'=>'Ανάλυση','Logs'=>'Αρχεία καταγραφής','Security'=>'Ασφάλεια','Tools'=>'Εργαλεία','Debug'=>'Εντοπισμός σφαλμάτων','About'=>'Σχετικά','Notification Settings'=>'Ρυθμίσεις ειδοποιήσεων','Configure how and when you want to receive vulnerability notifications.'=>'Διαμορφώστε πώς και πότε θέλετε να λαμβάνετε ειδοποιήσεις ευπαθειών.','Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software.'=>'Μείνετε ενήμεροι για τις ευπάθειες ασφαλείας στην εγκατάσταση WordPress, τα πρόσθετα, τα θέματα και το λογισμικό διακομιστή σας.','Cache Expiration Time'=>'Χρόνος λήξης κρυφής μνήμης','FORCED'=>'ΕΞΑΝΑΓΚΑΣΤΙΚΟ','How long to cache vulnerability data before refreshing from the API.'=>'Πόσο καιρό να αποθηκεύονται τα δεδομένα ευπαθειών στην κρυφή μνήμη πριν την ανανέωση από το API.','%d hour'=>'%d ώρα' . "\0" . '%d ώρες','You can force the cache time via wp-config.php constant. Learn more →'=>'Μπορείτε να επιβάλετε τον χρόνο κρυφής μνήμης μέσω σταθεράς wp-config.php. Μάθετε περισσότερα →','Notification Frequency'=>'Συχνότητα ειδοποιήσεων','Choose how often you want to receive vulnerability notifications.'=>'Επιλέξτε πόσο συχνά θέλετε να λαμβάνετε ειδοποιήσεις ευπαθειών.','Never - Disable automatic notifications'=>'Ποτέ - Απενεργοποίηση αυτόματων ειδοποιήσεων','Daily - Receive notifications every day'=>'Καθημερινά - Λήψη ειδοποιήσεων κάθε μέρα','Weekly - Receive notifications once a week'=>'Εβδομαδιαία - Λήψη ειδοποιήσεων μία φορά την εβδομάδα','Day:'=>'Ημέρα:','Monday'=>'Δευτέρα','Tuesday'=>'Τρίτη','Wednesday'=>'Τετάρτη','Thursday'=>'Πέμπτη','Friday'=>'Παρασκευή','Saturday'=>'Σάββατο','Sunday'=>'Κυριακή','Time:'=>'Ώρα:','(24-hour format, server timezone)'=>'(Μορφή 24 ωρών, ζώνη ώρας διακομιστή)','Notification Channels'=>'Κανάλια ειδοποιήσεων','Select where you want to receive notifications.'=>'Επιλέξτε πού θέλετε να λαμβάνετε ειδοποιήσεις.','Email'=>'Email','Email Addresses (separated by commas):'=>'Διευθύνσεις email (διαχωρισμένες με κόμμα):','Default:'=>'Προεπιλογή:','Slack'=>'Slack','Slack Webhook URL:'=>'URL Slack Webhook:','Learn how to create a Slack incoming webhook →'=>'Μάθετε πώς να δημιουργήσετε εισερχόμενο webhook Slack →','Microsoft Teams'=>'Microsoft Teams','Teams Webhook URL:'=>'URL Teams Webhook:','Learn how to create a Teams incoming webhook →'=>'Μάθετε πώς να δημιουργήσετε εισερχόμενο webhook Teams →','Discord'=>'Discord','Discord Webhook URL:'=>'URL Discord Webhook:','Learn how to create a Discord webhook →'=>'Μάθετε πώς να δημιουργήσετε webhook Discord →','Telegram'=>'Telegram','Telegram Bot Token:'=>'Token Telegram Bot:','Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Μορφή: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','Telegram Chat ID:'=>'Telegram Chat ID:','Learn how to create a Telegram bot and get Chat ID →'=>'Μάθετε πώς να δημιουργήσετε bot Telegram και να αποκτήσετε Chat ID →','Save Notification Settings'=>'Αποθήκευση ρυθμίσεων ειδοποιήσεων','WordPress Components'=>'Στοιχεία WordPress','WordPress Core'=>'WordPress Core','Plugins'=>'Πρόσθετα','Themes'=>'Θέματα','Software & Languages'=>'Λογισμικό και Γλώσσες','PHP'=>'PHP','Web Servers'=>'Διακομιστές Ιστού','Apache HTTPD'=>'Apache HTTPD','nginx'=>'nginx','Databases'=>'Βάσεις δεδομένων','MariaDB'=>'MariaDB','MySQL'=>'MySQL','SQLite'=>'SQLite','Additional Tools'=>'Πρόσθετα εργαλεία','ImageMagick'=>'ImageMagick','curl'=>'curl','memcached'=>'memcached','Redis'=>'Redis','Component Analysis Settings'=>'Ρυθμίσεις ανάλυσης στοιχείων','Enable or disable vulnerability analysis for specific components.'=>'Ενεργοποιήστε ή απενεργοποιήστε την ανάλυση ευπαθειών για συγκεκριμένα στοιχεία.','Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red.'=>'Επιλέξτε τα στοιχεία που θέλετε να ΑΠΟΚΡΥΨΕΤΕ από σαρώσεις και αναφορές ευπαθειών. Τα μη επιλεγμένα στοιχεία θα αναλύονται ενεργά. Τα στοιχεία με ενεργή ανάλυση εμφανίζονται με πράσινο χρώμα, τα κρυφά με κόκκινο.','Hidden (forced by constant)'=>'Κρυφό (επιβεβλημένο από σταθερά)','🔴 Analysis disabled'=>'🔴 Ανάλυση απενεργοποιημένη','🟢 Analysis active'=>'🟢 Ανάλυση ενεργή','Tip:'=>'Συμβουλή:','You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →'=>'Μπορείτε να απενεργοποιήσετε εξαναγκαστικά στοιχεία μέσω σταθερών wp-config.php. Μάθετε περισσότερα για την εξαναγκαστική απόκρυψη ελέγχων →','Save Analysis Settings'=>'Αποθήκευση ρυθμίσεων ανάλυσης','« Previous'=>'« Προηγούμενο','Next »'=>'Επόμενο »','Log entry not found or has been removed.'=>'Η εγγραφή αρχείου καταγραφής δεν βρέθηκε ή έχει αφαιρεθεί.','Unable to load the requested log entry.'=>'Δεν ήταν δυνατή η φόρτωση της ζητούμενης εγγραφής αρχείου καταγραφής.','Log Configuration'=>'Διαμόρφωση αρχείου καταγραφής','Total Logs'=>'Σύνολο αρχείων καταγραφής','Retention Period'=>'Περίοδος διατήρησης','Disabled'=>'Απενεργοποιημένο','%d day'=>'%d ημέρα' . "\0" . '%d ημέρες','Log Retention Period'=>'Περίοδος διατήρησης αρχείων καταγραφής','None (Disabled)'=>'Κανένα (Απενεργοποιημένο)','This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant.'=>'Αυτή η τιμή επιβάλλεται από τη σταθερά WPVULNERABILITY_LOG_RETENTION_DAYS.','Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted.'=>'Επιλέξτε πόσο καιρό το WPVulnerability πρέπει να διατηρεί αρχεία καταγραφής απόκρισης API. Παλαιότερα αρχεία διαγράφονται αυτόματα.','Save Configuration'=>'Αποθήκευση διαμόρφωσης','Log retention is currently disabled.'=>'Η διατήρηση αρχείων καταγραφής είναι απενεργοποιημένη αυτή τη στιγμή.','API responses are not being saved.'=>'Οι αποκρίσεις API δεν αποθηκεύονται.','Log Details'=>'Λεπτομέρειες αρχείου καταγραφής','Date'=>'Ημερομηνία','API Endpoint'=>'Τελικό σημείο API','API Response'=>'Απόκριση API','Back to Logs'=>'Επιστροφή στα αρχεία καταγραφής','No logs available'=>'Δεν υπάρχουν διαθέσιμα αρχεία καταγραφής','API response logs will appear here once the vulnerability scanner runs.'=>'Τα αρχεία καταγραφής αποκρίσεων API θα εμφανιστούν εδώ μόλις εκτελεστεί ο σαρωτής ευπαθειών.','API Response Logs'=>'Αρχεία καταγραφής αποκρίσεων API','Show:'=>'Εμφάνιση:','Apply'=>'Εφαρμογή','Showing %1$s–%2$s of %3$s'=>'Εμφάνιση %1$s–%2$s από %3$s','Actions'=>'Ενέργειες','View'=>'Προβολή','Danger Zone'=>'Επικίνδυνη ζώνη','Permanently delete all API response logs. This action cannot be undone.'=>'Μόνιμη διαγραφή όλων των αρχείων καταγραφής αποκρίσεων API. Αυτή η ενέργεια δεν μπορεί να αναιρεθεί.','Are you sure you want to delete all logs? This action cannot be undone.'=>'Είστε σίγουροι ότι θέλετε να διαγράψετε όλα τα αρχεία καταγραφής; Αυτή η ενέργεια δεν μπορεί να αναιρεθεί.','Delete All Logs'=>'Διαγραφή όλων των αρχείων καταγραφής','Reload Data from API'=>'Επαναφόρτωση δεδομένων από το API','Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information.'=>'Επαναφορτώστε όλες τις πληροφορίες Core, Πρόσθετων, Θεμάτων και άλλων στοιχείων απευθείας από το API για ενημερωμένα δεδομένα. Αυτό θα εκκαθαρίσει την κρυφή μνήμη και θα ανακτήσει νέες πληροφορίες ευπαθειών.','Reload Data'=>'Επαναφόρτωση δεδομένων','Test Email Notifications'=>'Δοκιμή ειδοποιήσεων email','Send a test email notification with current vulnerability data to verify your email configuration is working correctly.'=>'Στείλτε δοκιμαστική ειδοποίηση email με τρέχοντα δεδομένα ευπαθειών για να επαληθεύσετε ότι η διαμόρφωση email λειτουργεί σωστά.','From address (configured via constant):'=>'Διεύθυνση αποστολέα (διαμορφωμένη μέσω σταθεράς):','From address (default):'=>'Διεύθυνση αποστολέα (προεπιλογή):','Learn how to customize the email sender address →'=>'Μάθετε πώς να προσαρμόσετε τη διεύθυνση αποστολέα email →','Send Test Email'=>'Αποστολή δοκιμαστικού email','WP-Cron Status'=>'Κατάσταση WP-Cron','View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly.'=>'Προβολή και διαχείριση προγραμματισμένων συμβάντων WP-Cron. Βεβαιωθείτε ότι οι αυτόματες εργασίες εκτελούνται σωστά.','No cron data available.'=>'Δεν υπάρχουν διαθέσιμα δεδομένα cron.','Hook'=>'Hook','Expected'=>'Αναμενόμενο','Found'=>'Βρέθηκε','Next Run'=>'Επόμενη εκτέλεση','Status'=>'Κατάσταση','Not expected'=>'Μη αναμενόμενο','None'=>'Κανένα','OK'=>'ΟΚ','⚠️ Unexpected WPVulnerability Events'=>'⚠️ Απρόσμενα συμβάντα WPVulnerability','No interval'=>'Χωρίς διάστημα','Next:'=>'Επόμενο:','Repair Cron Events'=>'Επισκευή συμβάντων Cron','Uninstall Data'=>'Δεδομένα απεγκατάστασης','By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall.'=>'Από προεπιλογή, όλα τα δεδομένα πρόσθετου διατηρούνται όταν διαγράφεται το WPVulnerability. Ενεργοποιήστε την παρακάτω επιλογή μόνο εάν θέλετε όλες οι επιλογές, τα αρχεία καταγραφής και τα δεδομένα κρυφής μνήμης να αφαιρεθούν μόνιμα κατά την απεγκατάσταση.','Delete all plugin data on uninstall'=>'Διαγραφή όλων των δεδομένων πρόσθετου κατά την απεγκατάσταση','Default: unchecked (data preserved). Check only if you want a clean removal.'=>'Προεπιλογή: μη επιλεγμένο (τα δεδομένα διατηρούνται). Επιλέξτε μόνο εάν θέλετε καθαρή αφαίρεση.','Save preference'=>'Αποθήκευση προτίμησης','Reset WPVulnerability'=>'Επαναφορά WPVulnerability','Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API.'=>'Διαγράψτε όλες τις ρυθμίσεις WPVulnerability, τα δεδομένα κρυφής μνήμης, τα αρχεία καταγραφής και τα προγραμματισμένα συμβάντα, στη συνέχεια επαναφέρετε τις προεπιλογές και επαναφορτώστε δεδομένα από το API.','This action cannot be undone.'=>'Αυτή η ενέργεια δεν μπορεί να αναιρεθεί.','Are you sure you want to reset all WPVulnerability data? This action cannot be undone.'=>'Είστε σίγουροι ότι θέλετε να επαναφέρετε όλα τα δεδομένα WPVulnerability; Αυτή η ενέργεια δεν μπορεί να αναιρεθεί.','Reset Plugin'=>'Επαναφορά πρόσθετου','Vulnerability Database Statistics'=>'Στατιστικά βάσης δεδομένων ευπαθειών','%s vulnerability'=>'%s ευπάθεια' . "\0" . '%s ευπάθειες','(%s product)'=>'(%s προϊόν)' . "\0" . '(%s προϊόντα)','No data'=>'Δεν υπάρχουν δεδομένα','Database last updated: %s'=>'Τελευταία ενημέρωση βάσης δεδομένων: %s','Intelligence Sources'=>'Πηγές πληροφοριών','Number of vulnerabilities contributed by each intelligence source.'=>'Αριθμός ευπαθειών που συνεισέφερε κάθε πηγή πληροφοριών.','Source'=>'Πηγή','Core'=>'Core','Sponsors'=>'Χορηγοί','No sponsor data available.'=>'Δεν υπάρχουν διαθέσιμα δεδομένα χορηγών.','Contributors'=>'Συνεισφέροντες','No contributor data available.'=>'Δεν υπάρχουν διαθέσιμα δεδομένα συνεισφερόντων.','You do not have sufficient permissions to access this page.'=>'Δεν έχετε επαρκή δικαιώματα για πρόσβαση σε αυτήν τη σελίδα.','WPVulnerability settings'=>'Ρυθμίσεις WPVulnerability','Configure and save these settings to receive notifications.'=>'Διαμορφώστε και αποθηκεύστε αυτές τις ρυθμίσεις για να λαμβάνετε ειδοποιήσεις.','Configure and save these settings to hide vulnerabilities.'=>'Διαμορφώστε και αποθηκεύστε αυτές τις ρυθμίσεις για να αποκρύψετε ευπάθειες.','Default administrator email'=>'Προεπιλεγμένο email διαχειριστή','Read more if you want to force the cache time.'=>'Διαβάστε περισσότερα εάν θέλετε να επιβάλετε τον χρόνο κρυφής μνήμης.','Never'=>'Ποτέ','Daily'=>'Καθημερινά','Weekly'=>'Εβδομαδιαία','Day'=>'Ημέρα','Hour'=>'Ώρα','Minute'=>'Λεπτό','Read more about how to force the deactivation of an item.'=>'Διαβάστε περισσότερα για το πώς να επιβάλετε την απενεργοποίηση ενός στοιχείου.','Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com'=>'Μη έγκυρο URL Slack webhook. Πρέπει να είναι έγκυρο URL HTTPS από το hooks.slack.com.','Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com'=>'Μη έγκυρο URL Microsoft Teams webhook. Πρέπει να είναι έγκυρο URL HTTPS από office.com, office365.com ή api.hooks.microsoft.com.','Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com'=>'Μη έγκυρο URL Discord webhook. Πρέπει να είναι έγκυρο URL HTTPS από discord.com ή discordapp.com.','Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Μη έγκυρη μορφή token Telegram bot. Πρέπει να είναι σαν: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','All Clear'=>'Όλα καλά','%d Critical Issue Found'=>'Βρέθηκε %d κρίσιμο ζήτημα' . "\0" . 'Βρέθηκαν %d κρίσιμα ζητήματα','%d Issue Found'=>'Βρέθηκε %d ζήτημα' . "\0" . 'Βρέθηκαν %d ζητήματα','Never checked'=>'Ποτέ δεν ελέγχθηκε','%d minute ago'=>'%d λεπτό πριν' . "\0" . '%d λεπτά πριν','%d hour ago'=>'%d ώρα πριν' . "\0" . '%d ώρες πριν','Last checked: %s'=>'Τελευταίος έλεγχος: %s','Refresh Now'=>'Ανανέωση τώρα','No vulnerabilities detected'=>'Δεν ανιχνεύθηκαν ευπάθειες','Your site is up to date and secure'=>'Ο ιστότοπός σας είναι ενημερωμένος και ασφαλής','Server Software'=>'Λογισμικό διακομιστή','Site Health'=>'Υγεία ιστότοπου','Settings'=>'Ρυθμίσεις','WPVulnerability Status'=>'Κατάσταση WPVulnerability','Receive vulnerability notifications'=>'Λήψη ειδοποιήσεων ευπαθειών','Cache expiration time'=>'Χρόνος λήξης κρυφής μνήμης','How often you want to receive notifications'=>'Πόσο συχνά θέλετε να λαμβάνετε ειδοποιήσεις','Where do you want to receive notifications?'=>'Πού θέλετε να λαμβάνετε ειδοποιήσεις;','Email addresses to notify (separated by commas)'=>'Διευθύνσεις email για ειδοποίηση (διαχωρισμένες με κόμμα)','Slack webhook URL'=>'URL Slack webhook','Teams webhook URL'=>'URL Teams webhook','Vulnerabilities to hide'=>'Ευπάθειες προς απόκρυψη','What do you want to hide?'=>'Τι θέλετε να αποκρύψετε;','Standard (Hybrid Detection)'=>'Τυπικό (Υβριδική ανίχνευση)','Strict (Extensions Only)'=>'Αυστηρό (Μόνο επεκτάσεις)','Disabled (No Detection)'=>'Απενεργοποιημένο (Χωρίς ανίχνευση)','Security Status'=>'Κατάσταση ασφαλείας','Security Mode'=>'Λειτουργία ασφαλείας','Shell Execution'=>'Εκτέλεση Shell','Enabled'=>'Ενεργοποιημένο','Audit Logging'=>'Καταγραφή ελέγχου','Enabled (%d days)'=>'Ενεργοποιημένο (%d ημέρες)','Total Log Entries'=>'Σύνολο εγγραφών αρχείου καταγραφής','Last Shell Execution'=>'Τελευταία εκτέλεση Shell','%s ago'=>'%s πριν','Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.'=>'Διαμορφώστε ρυθμίσεις ασφαλείας μέσω σταθερών wp-config.php: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.','See security configuration documentation for details.'=>'Δείτε την τεκμηρίωση διαμόρφωσης ασφαλείας για λεπτομέρειες.','Memcached'=>'Memcached','Imagick Extension'=>'Επέκταση Imagick','Redis Extension'=>'Επέκταση Redis','Memcached Extension'=>'Επέκταση Memcached','Memcache Extension'=>'Επέκταση Memcache','SQLite3 Extension'=>'Επέκταση SQLite3','PDO SQLite'=>'PDO SQLite','Shell Command'=>'Εντολή Shell','Binary Check'=>'Έλεγχος δυαδικού','Not Detected'=>'Δεν ανιχνεύθηκε','Software Detection Methods'=>'Μέθοδοι ανίχνευσης λογισμικού','Shows which detection method was used for each software component and the reliability score.'=>'Εμφανίζει ποια μέθοδος ανίχνευσης χρησιμοποιήθηκε για κάθε στοιχείο λογισμικού και τη βαθμολογία αξιοπιστίας.','Component'=>'Στοιχείο','Version'=>'Έκδοση','Detection Method'=>'Μέθοδος ανίχνευσης','Reliability'=>'Αξιοπιστία','Not detected'=>'Δεν ανιχνεύθηκε','Shell Execution Audit Logs'=>'Αρχεία καταγραφής ελέγχου εκτέλεσης Shell','Complete audit trail of shell command executions for security monitoring.'=>'Πλήρης ίχνος ελέγχου εκτελέσεων εντολών shell για παρακολούθηση ασφαλείας.','No shell execution logs found.'=>'Δεν βρέθηκαν αρχεία καταγραφής εκτέλεσης shell.','Logs will appear here when shell commands are executed for software detection.'=>'Τα αρχεία καταγραφής θα εμφανιστούν εδώ όταν εκτελούνται εντολές shell για ανίχνευση λογισμικού.','Time'=>'Ώρα','Command'=>'Εντολή','User'=>'Χρήστης','Output'=>'Έξοδος','Showing the %d most recent log entries.'=>'Εμφάνιση των %d πιο πρόσφατων εγγραφών αρχείου καταγραφής.','Invalid nonce.'=>'Μη έγκυρο nonce.','Insufficient permissions.'=>'Ανεπαρκή δικαιώματα.','No component specified.'=>'Δεν έχει καθοριστεί κανένα στοιχείο.','Debug Information'=>'Πληροφορίες εντοπισμού σφαλμάτων','This tab is only visible when WP_DEBUG is enabled. Use with caution.'=>'Αυτή η καρτέλα είναι ορατή μόνο όταν το WP_DEBUG είναι ενεργοποιημένο. Χρησιμοποιήστε με προσοχή.','System Information'=>'Πληροφορίες συστήματος','WordPress Version'=>'Έκδοση WordPress','Multisite'=>'Πολλαπλοί ιστότοποι','Yes'=>'Ναι','No'=>'Όχι','Language'=>'Γλώσσα','PHP Version'=>'Έκδοση PHP','PHP Extensions'=>'Επεκτάσεις PHP','PHP Memory Limit'=>'Όριο μνήμης PHP','Database'=>'Βάση δεδομένων','Web Server'=>'Διακομιστής ιστού','WP_DEBUG'=>'WP_DEBUG','WP_DEBUG_LOG'=>'WP_DEBUG_LOG','Path:'=>'Διαδρομή:','Size: %s'=>'Μέγεθος: %s','View Log File'=>'Προβολή αρχείου καταγραφής','Log file is not web-accessible (outside wp-content)'=>'Το αρχείο καταγραφής δεν είναι προσβάσιμο από τον ιστό (εκτός wp-content)','Log file does not exist yet'=>'Το αρχείο καταγραφής δεν υπάρχει ακόμα','Plugin Version'=>'Έκδοση πρόσθετου','Component Detection'=>'Ανίχνευση στοιχείου','Version Detected'=>'Έκδοση που ανιχνεύθηκε','Analyzed'=>'Αναλύθηκε','Cache Status'=>'Κατάσταση κρυφής μνήμης','Configuration Summary'=>'Σύνοψη διαμόρφωσης','Cache Duration'=>'Διάρκεια κρυφής μνήμης','Log Retention'=>'Διατήρηση αρχείων καταγραφής','Components Analyzed'=>'Στοιχεία που αναλύθηκαν','Notification Email'=>'Email ειδοποίησης','Slack Webhook'=>'Slack Webhook','Configured & Enabled'=>'Διαμορφωμένο & Ενεργοποιημένο','Configured (Disabled)'=>'Διαμορφωμένο (Απενεργοποιημένο)','Not configured'=>'Μη διαμορφωμένο','Teams Webhook'=>'Teams Webhook','Discord Webhook'=>'Discord Webhook','Telegram Bot'=>'Telegram Bot','Cron Status'=>'Κατάσταση Cron','Update Database'=>'Ενημέρωση βάσης δεδομένων','Next run: %s'=>'Επόμενη εκτέλεση: %s','Not scheduled'=>'Μη προγραμματισμένο','Send Notification'=>'Αποστολή ειδοποίησης','Run Update Now'=>'Εκτέλεση ενημέρωσης τώρα','Run Notification Now'=>'Αποστολή ειδοποίησης τώρα','You do not have permission to run these actions.'=>'Δεν έχετε δικαίωμα εκτέλεσης αυτών των ενεργειών.','API Testing'=>'Δοκιμή API','Test API connectivity for each component. Click a button to send a test request.'=>'Δοκιμάστε τη συνδεσιμότητα API για κάθε στοιχείο. Κάντε κλικ σε κουμπί για αποστολή δοκιμαστικού αιτήματος.','Test %s'=>'Δοκιμή %s','Testing...'=>'Δοκιμή...','HTTP Code:'=>'Κωδικός HTTP:','Response Time:'=>'Χρόνος απόκρισης:','Response Preview'=>'Προεπισκόπηση απόκρισης','Test'=>'Δοκιμή','Error:'=>'Σφάλμα:','AJAX request failed.'=>'Το αίτημα AJAX απέτυχε.','You do not have permission to test API connectivity.'=>'Δεν έχετε δικαίωμα δοκιμής συνδεσιμότητας API.','Database Options Viewer'=>'Προβολή επιλογών βάσης δεδομένων','View the raw data stored in WordPress options.'=>'Προβάλετε τα ακατέργαστα δεδομένα που αποθηκεύονται στις επιλογές WordPress.','Select an option...'=>'Επιλέξτε μια επιλογή...','Option not found or empty.'=>'Η επιλογή δεν βρέθηκε ή είναι κενή.','Quick Actions'=>'Γρήγορες ενέργειες','Perform debugging actions. Use with caution.'=>'Εκτελέστε ενέργειες εντοπισμού σφαλμάτων. Χρησιμοποιήστε με προσοχή.','Are you sure you want to clear all caches?'=>'Είστε σίγουροι ότι θέλετε να εκκαθαρίσετε όλες τις κρυφές μνήμες;','Clear All Caches'=>'Εκκαθάριση όλων των κρυφών μνημών','Are you sure you want to reset signatures?'=>'Είστε σίγουροι ότι θέλετε να επαναφέρετε τις υπογραφές;','Reset Signatures'=>'Επαναφορά υπογραφών','Export Debug Info'=>'Εξαγωγή πληροφοριών εντοπισμού σφαλμάτων','You do not have permission to perform these actions.'=>'Δεν έχετε δικαίωμα εκτέλεσης αυτών των ενεργειών.','Settings saved.'=>'Οι ρυθμίσεις αποθηκεύτηκαν.','WPVulnerability cron events have been repaired across the network.'=>'Τα συμβάντα cron του WPVulnerability επισκευάστηκαν σε ολόκληρο το δίκτυο.','You do not have permission to access this page.'=>'Δεν έχετε δικαίωμα πρόσβασης σε αυτήν τη σελίδα.','WordPress %1$s has a known vulnerability that may be affecting your installed version.'=>'Το WordPress %1$s έχει μια γνωστή ευπάθεια που μπορεί να επηρεάζει την εγκατεστημένη έκδοσή σας.','Actively exploited'=>'Εκμεταλλεύεται ενεργά','Public exploit'=>'Δημόσιο exploit','Automatable'=>'Αυτοματοποιήσιμο','References:'=>'Αναφορές:','Invalid component specified.'=>'Καθορίστηκε μη έγκυρο στοιχείο.','Version not detected for this component.'=>'Δεν ανιχνεύθηκε έκδοση για αυτό το στοιχείο.','API request successful.'=>'Το αίτημα API ήταν επιτυχές.','API returned HTTP code %d.'=>'Το API επέστρεψε κωδικό HTTP %d.','WPVulnerability Logs'=>'Αρχεία καταγραφής WPVulnerability','WPVulnerability Log'=>'Αρχείο καταγραφής WPVulnerability','Low'=>'Χαμηλό','Medium'=>'Μέτριο','High'=>'Υψηλό','Critical'=>'Κρίσιμο','WPVulnerability Shell Logs'=>'Αρχεία καταγραφής Shell WPVulnerability','WPVulnerability Shell Log'=>'Αρχείο καταγραφής Shell WPVulnerability','Every week'=>'Κάθε εβδομάδα','Every day'=>'Κάθε μέρα','Invalid request.'=>'Μη έγκυρο αίτημα.','You have unsubscribed from WPVulnerability notifications.'=>'Έχετε καταργήσει την εγγραφή σας από τις ειδοποιήσεις WPVulnerability.','Learn more about the WordPress Vulnerability Database API at %2$s'=>'Μάθετε περισσότερα για το WordPress Vulnerability Database API στο %2$s','Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings.'=>'Θέλετε να σταματήσετε να λαμβάνετε αυτές τις ειδοποιήσεις; Κατάργηση εγγραφής ή αλλαγή της συχνότητας email σε Ποτέ στις ρυθμίσεις WPVulnerability.','No vulnerabilities found'=>'Δεν βρέθηκαν ευπάθειες','This is likely a test. The site does not have vulnerabilities.'=>'Αυτό είναι πιθανώς δοκιμή. Ο ιστότοπος δεν έχει ευπάθειες.','Core vulnerabilities'=>'Ευπάθειες πυρήνα','Plugins vulnerabilities'=>'Ευπάθειες πρόσθετων','Themes vulnerabilities'=>'Ευπάθειες θεμάτων','PHP vulnerabilities'=>'Ευπάθειες PHP','Apache HTTPD vulnerabilities'=>'Ευπάθειες Apache HTTPD','Nginx vulnerabilities'=>'Ευπάθειες Nginx','MariaDB vulnerabilities'=>'Ευπάθειες MariaDB','MySQL vulnerabilities'=>'Ευπάθειες MySQL','ImageMagick vulnerabilities'=>'Ευπάθειες ImageMagick','curl vulnerabilities'=>'Ευπάθειες curl','memcached vulnerabilities'=>'Ευπάθειες memcached','Redis vulnerabilities'=>'Ευπάθειες Redis','SQLite vulnerabilities'=>'Ευπάθειες SQLite','Vulnerability found: %s'=>'Βρέθηκε ευπάθεια: %s','Vulnerability found'=>'Βρέθηκε ευπάθεια','%1$s has a known vulnerability that may be affecting your installed version.'=>'Το %1$s έχει μια γνωστή ευπάθεια που μπορεί να επηρεάζει την εγκατεστημένη έκδοσή σας.','This plugin is closed. Please replace it with another.'=>'Αυτό το πρόσθετο είναι κλειστό. Αντικαταστήστε το με κάποιο άλλο.','This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates.'=>'Αυτή η ευπάθεια φαίνεται να μην έχει επιδιορθωθεί. Παρακολουθήστε για επερχόμενες ενημερώσεις πρόσθετου.','It hasn\'t been updated in over a year.'=>'Δεν έχει ενημερωθεί για πάνω από ένα χρόνο.','It may no longer be available (closed?).'=>'Μπορεί να μην είναι πλέον διαθέσιμο (κλειστό;).','Last updated on'=>'Τελευταία ενημέρωση στις','Vulnerabilities (%d)'=>'Ευπάθειες (%d)','%s running'=>'%s εκτελείται','End of Life'=>'Τέλος υποστήριξης','End of life:'=>'Τέλος υποστήριξης:','Supported'=>'Υποστηρίζεται','Plugin'=>'Πρόσθετο','Theme'=>'Θέμα','End of life: %s'=>'Τέλος υποστήριξης: %s','EOL'=>'EOL','Network Settings'=>'Ρυθμίσεις δικτύου','Vulnerabilities'=>'Ευπάθειες','Every 6 hours'=>'Κάθε 6 ώρες','Database updates'=>'Ενημερώσεις βάσης δεδομένων','Log cleanup'=>'Εκκαθάριση αρχείων καταγραφής','Notifications are scheduled, but settings currently disable them. Please review the notifications tab.'=>'Οι ειδοποιήσεις είναι προγραμματισμένες, αλλά οι ρυθμίσεις τις απενεργοποιούν αυτή τη στιγμή. Ελέγξτε την καρτέλα ειδοποιήσεων.','This event should not be scheduled for this site.'=>'Αυτό το συμβάν δεν πρέπει να είναι προγραμματισμένο για αυτόν τον ιστότοπο.','Not expected for this site.'=>'Μη αναμενόμενο για αυτόν τον ιστότοπο.','No instances found.'=>'Δεν βρέθηκαν στιγμιότυπα.','Scheduled with an unexpected interval.'=>'Προγραμματισμένο με απρόσμενο διάστημα.','Multiple instances detected.'=>'Ανιχνεύθηκαν πολλαπλά στιγμιότυπα.','Scheduled as expected.'=>'Προγραμματισμένο όπως αναμενόταν.','There aren\'t plugins vulnerabilities'=>'Δεν υπάρχουν ευπάθειες στα πρόσθετα','Shows possible vulnerabilities that exist in installed plugins.'=>'Εμφανίζει πιθανές ευπάθειες που υπάρχουν στα εγκατεστημένα πρόσθετα.','There is %d plugin with vulnerabilities'=>'Υπάρχει %d πρόσθετο με ευπάθειες' . "\0" . 'Υπάρχουν %d πρόσθετα με ευπάθειες','We\'ve detected potential vulnerabilities in installed plugins. Please check them and keep them updated.'=>'Εντοπίσαμε πιθανές ευπάθειες στα εγκατεστημένα πρόσθετα. Ελέγξτε τα και κρατήστε τα ενημερωμένα.','Update plugins'=>'Ενημέρωση πρόσθετων','There aren\'t themes vulnerabilities'=>'Δεν υπάρχουν ευπάθειες στα θέματα','Shows possible vulnerabilities that exist in installed themes.'=>'Εμφανίζει πιθανές ευπάθειες που υπάρχουν στα εγκατεστημένα θέματα.','There is %d theme with vulnerabilities'=>'Υπάρχει %d θέμα με ευπάθειες' . "\0" . 'Υπάρχουν %d θέματα με ευπάθειες','We\'ve detected potential vulnerabilities in installed themes. Please check them and keep them updated.'=>'Εντοπίσαμε πιθανές ευπάθειες στα εγκατεστημένα θέματα. Ελέγξτε τα και κρατήστε τα ενημερωμένα.','Update themes'=>'Ενημέρωση θεμάτων','There aren\'t WordPress vulnerabilities'=>'Δεν υπάρχουν ευπάθειες στο WordPress','Shows possible vulnerabilities existing in the WordPress core.'=>'Εμφανίζει πιθανές ευπάθειες που υπάρχουν στον πυρήνα WordPress.','There is %d core vulnerability'=>'Υπάρχει %d ευπάθεια πυρήνα' . "\0" . 'Υπάρχουν %d ευπάθειες πυρήνα','We\'ve detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated.'=>'Εντοπίσαμε πιθανές ευπάθειες σε αυτήν την εγκατάσταση WordPress. Ελέγξτε τες και κρατήστε την εγκατάστασή σας ενημερωμένη.','Update WordPress'=>'Ενημέρωση WordPress','Nginx'=>'Nginx','Invalid software type'=>'Μη έγκυρος τύπος λογισμικού','Error'=>'Σφάλμα','The specified software type is not valid.'=>'Ο καθορισμένος τύπος λογισμικού δεν είναι έγκυρος.','There aren\'t %s vulnerabilities'=>'Δεν υπάρχουν ευπάθειες για %s','Shows possible vulnerabilities existing in %s.'=>'Εμφανίζει πιθανές ευπάθειες που υπάρχουν στο %s.','There is %1$d %2$s vulnerability'=>'Υπάρχει %1$d ευπάθεια για %2$s' . "\0" . 'Υπάρχουν %1$d ευπάθειες για %2$s','We\'ve detected potential vulnerabilities in %s. Please check them and keep your installation updated.'=>'Εντοπίσαμε πιθανές ευπάθειες στο %s. Ελέγξτε τες και κρατήστε την εγκατάστασή σας ενημερωμένη.','How to update PHP'=>'Πώς να ενημερώσετε την PHP','WPVulnerability Core'=>'WPVulnerability Core','WPVulnerability Themes'=>'WPVulnerability Themes','WPVulnerability Plugins'=>'WPVulnerability Plugins','WPVulnerability PHP'=>'WPVulnerability PHP','WPVulnerability Apache HTTPD'=>'WPVulnerability Apache HTTPD','WPVulnerability Nginx'=>'WPVulnerability Nginx','WPVulnerability MariaDB'=>'WPVulnerability MariaDB','WPVulnerability MySQL'=>'WPVulnerability MySQL','WPVulnerability ImageMagick'=>'WPVulnerability ImageMagick','WPVulnerability curl'=>'WPVulnerability curl','WPVulnerability memcached'=>'WPVulnerability memcached','WPVulnerability redis'=>'WPVulnerability redis','WPVulnerability sqlite'=>'WPVulnerability sqlite','This theme is closed. Please replace it with another.'=>'Αυτό το θέμα είναι κλειστό. Αντικαταστήστε το με κάποιο άλλο.','This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates.'=>'Αυτή η ευπάθεια φαίνεται να μην έχει επιδιορθωθεί. Παρακολουθήστε για επερχόμενες ενημερώσεις θέματος.','This theme has known vulnerabilities that may be affecting your installed version.'=>'Αυτό το θέμα έχει γνωστές ευπάθειες που μπορεί να επηρεάζουν την εγκατεστημένη έκδοσή σας.']]; \ No newline at end of file diff --git a/languages/wpvulnerability-el.mo b/languages/wpvulnerability-el.mo new file mode 100644 index 0000000000000000000000000000000000000000..dae2da3b2212f20280c30814e3a90193a51fba15 GIT binary patch literal 51807 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\n" +"Language: el\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: AI Translation\n" +"X-Domain: wpvulnerability\n" + +#. Plugin Name of the plugin +msgid "WPVulnerability" +msgstr "WPVulnerability" + +#. Plugin URI of the plugin +msgid "https://www.wpvulnerability.com/plugin/" +msgstr "https://www.wpvulnerability.com/plugin/" + +#. Description of the plugin +msgid "Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API." +msgstr "Λάβετε πληροφορίες σχετικά με πιθανές ευπάθειες στο WordPress σας από το WordPress Vulnerability Database API." + +#. Author of the plugin +msgid "ROBOTSTXT" +msgstr "ROBOTSTXT" + +#. Author URI of the plugin +msgid "https://www.robotstxt.es/" +msgstr "https://www.robotstxt.es/" + +msgid "This command requires a WordPress administrator. Run with --user=." +msgstr "Αυτή η εντολή απαιτεί διαχειριστή WordPress. Εκτελέστε με --user=." + +msgid "No core vulnerabilities found." +msgstr "Δεν βρέθηκαν ευπάθειες στον πυρήνα." + +msgid "No plugin vulnerabilities found." +msgstr "Δεν βρέθηκαν ευπάθειες σε πρόσθετα." + +msgid "No theme vulnerabilities found." +msgstr "Δεν βρέθηκαν ευπάθειες σε θέματα." + +#, php-format +msgid "No %s vulnerabilities found." +msgstr "Δεν βρέθηκαν ευπάθειες για %s." + +msgid "Data from source has been reloaded." +msgstr "Τα δεδομένα από την πηγή έχουν επαναφορτωθεί." + +msgid "You do not have permission to reload data." +msgstr "Δεν έχετε δικαίωμα επαναφόρτωσης δεδομένων." + +msgid "Test email has been sent." +msgstr "Το δοκιμαστικό email έχει αποσταλεί." + +msgid "Test email has failed. Please, check your email settings." +msgstr "Η αποστολή δοκιμαστικού email απέτυχε. Ελέγξτε τις ρυθμίσεις email σας." + +msgid "You do not have permission to send test emails." +msgstr "Δεν έχετε δικαίωμα αποστολής δοκιμαστικών email." + +msgid "WPVulnerability cron events have been repaired." +msgstr "Τα συμβάντα cron του WPVulnerability έχουν επισκευαστεί." + +msgid "You do not have permission to repair cron events." +msgstr "Δεν έχετε δικαίωμα επισκευής συμβάντων cron." + +msgid "All logs have been deleted." +msgstr "Όλα τα αρχεία καταγραφής έχουν διαγραφεί." + +msgid "You do not have permission to delete logs." +msgstr "Δεν έχετε δικαίωμα διαγραφής αρχείων καταγραφής." + +msgid "Uninstall preference saved." +msgstr "Η προτίμηση απεγκατάστασης αποθηκεύτηκε." + +msgid "WPVulnerability has been reset to defaults and reloaded." +msgstr "Το WPVulnerability επαναφέρθηκε στις προεπιλογές και επαναφορτώθηκε." + +msgid "You do not have permission to reset WPVulnerability." +msgstr "Δεν έχετε δικαίωμα επαναφοράς του WPVulnerability." + +msgid "All caches have been cleared." +msgstr "Όλες οι κρυφές μνήμες έχουν εκκαθαριστεί." + +msgid "You do not have permission to clear caches." +msgstr "Δεν έχετε δικαίωμα εκκαθάρισης κρυφών μνημών." + +msgid "Plugin and theme signatures have been reset." +msgstr "Οι υπογραφές πρόσθετων και θεμάτων έχουν επαναφερθεί." + +msgid "You do not have permission to reset signatures." +msgstr "Δεν έχετε δικαίωμα επαναφοράς υπογραφών." + +msgid "You do not have permission to export debug information." +msgstr "Δεν έχετε δικαίωμα εξαγωγής πληροφοριών εντοπισμού σφαλμάτων." + +msgid "Database update has been executed." +msgstr "Η ενημέρωση βάσης δεδομένων εκτελέστηκε." + +msgid "You do not have permission to run database updates." +msgstr "Δεν έχετε δικαίωμα εκτέλεσης ενημερώσεων βάσης δεδομένων." + +msgid "Notification has been sent." +msgstr "Η ειδοποίηση έχει αποσταλεί." + +msgid "Notification sending failed." +msgstr "Η αποστολή ειδοποίησης απέτυχε." + +msgid "You do not have permission to send notifications." +msgstr "Δεν έχετε δικαίωμα αποστολής ειδοποιήσεων." + +msgid "Notifications" +msgstr "Ειδοποιήσεις" + +msgid "Analysis" +msgstr "Ανάλυση" + +msgid "Logs" +msgstr "Αρχεία καταγραφής" + +msgid "Security" +msgstr "Ασφάλεια" + +msgid "Tools" +msgstr "Εργαλεία" + +msgid "Debug" +msgstr "Εντοπισμός σφαλμάτων" + +msgid "About" +msgstr "Σχετικά" + +msgid "Notification Settings" +msgstr "Ρυθμίσεις ειδοποιήσεων" + +msgid "Configure how and when you want to receive vulnerability notifications." +msgstr "Διαμορφώστε πώς και πότε θέλετε να λαμβάνετε ειδοποιήσεις ευπαθειών." + +msgid "Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software." +msgstr "Μείνετε ενήμεροι για τις ευπάθειες ασφαλείας στην εγκατάσταση WordPress, τα πρόσθετα, τα θέματα και το λογισμικό διακομιστή σας." + +msgid "Cache Expiration Time" +msgstr "Χρόνος λήξης κρυφής μνήμης" + +msgid "FORCED" +msgstr "ΕΞΑΝΑΓΚΑΣΤΙΚΟ" + +msgid "How long to cache vulnerability data before refreshing from the API." +msgstr "Πόσο καιρό να αποθηκεύονται τα δεδομένα ευπαθειών στην κρυφή μνήμη πριν την ανανέωση από το API." + +#, php-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d ώρα" +msgstr[1] "%d ώρες" + +#, php-format +msgid "You can force the cache time via wp-config.php constant. Learn more →" +msgstr "Μπορείτε να επιβάλετε τον χρόνο κρυφής μνήμης μέσω σταθεράς wp-config.php. Μάθετε περισσότερα →" + +msgid "Notification Frequency" +msgstr "Συχνότητα ειδοποιήσεων" + +msgid "Choose how often you want to receive vulnerability notifications." +msgstr "Επιλέξτε πόσο συχνά θέλετε να λαμβάνετε ειδοποιήσεις ευπαθειών." + +msgid "Never - Disable automatic notifications" +msgstr "Ποτέ - Απενεργοποίηση αυτόματων ειδοποιήσεων" + +msgid "Daily - Receive notifications every day" +msgstr "Καθημερινά - Λήψη ειδοποιήσεων κάθε μέρα" + +msgid "Weekly - Receive notifications once a week" +msgstr "Εβδομαδιαία - Λήψη ειδοποιήσεων μία φορά την εβδομάδα" + +msgid "Day:" +msgstr "Ημέρα:" + +msgid "Monday" +msgstr "Δευτέρα" + +msgid "Tuesday" +msgstr "Τρίτη" + +msgid "Wednesday" +msgstr "Τετάρτη" + +msgid "Thursday" +msgstr "Πέμπτη" + +msgid "Friday" +msgstr "Παρασκευή" + +msgid "Saturday" +msgstr "Σάββατο" + +msgid "Sunday" +msgstr "Κυριακή" + +msgid "Time:" +msgstr "Ώρα:" + +msgid "(24-hour format, server timezone)" +msgstr "(Μορφή 24 ωρών, ζώνη ώρας διακομιστή)" + +msgid "Notification Channels" +msgstr "Κανάλια ειδοποιήσεων" + +msgid "Select where you want to receive notifications." +msgstr "Επιλέξτε πού θέλετε να λαμβάνετε ειδοποιήσεις." + +msgid "Email" +msgstr "Email" + +msgid "Email Addresses (separated by commas):" +msgstr "Διευθύνσεις email (διαχωρισμένες με κόμμα):" + +msgid "Default:" +msgstr "Προεπιλογή:" + +msgid "Slack" +msgstr "Slack" + +msgid "Slack Webhook URL:" +msgstr "URL Slack Webhook:" + +#, php-format +msgid "Learn how to create a Slack incoming webhook →" +msgstr "Μάθετε πώς να δημιουργήσετε εισερχόμενο webhook Slack →" + +msgid "Microsoft Teams" +msgstr "Microsoft Teams" + +msgid "Teams Webhook URL:" +msgstr "URL Teams Webhook:" + +#, php-format +msgid "Learn how to create a Teams incoming webhook →" +msgstr "Μάθετε πώς να δημιουργήσετε εισερχόμενο webhook Teams →" + +msgid "Discord" +msgstr "Discord" + +msgid "Discord Webhook URL:" +msgstr "URL Discord Webhook:" + +#, php-format +msgid "Learn how to create a Discord webhook →" +msgstr "Μάθετε πώς να δημιουργήσετε webhook Discord →" + +msgid "Telegram" +msgstr "Telegram" + +msgid "Telegram Bot Token:" +msgstr "Token Telegram Bot:" + +msgid "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "Μορφή: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +msgid "Telegram Chat ID:" +msgstr "Telegram Chat ID:" + +#, php-format +msgid "Learn how to create a Telegram bot and get Chat ID →" +msgstr "Μάθετε πώς να δημιουργήσετε bot Telegram και να αποκτήσετε Chat ID →" + +msgid "Save Notification Settings" +msgstr "Αποθήκευση ρυθμίσεων ειδοποιήσεων" + +msgid "WordPress Components" +msgstr "Στοιχεία WordPress" + +msgid "WordPress Core" +msgstr "WordPress Core" + +msgid "Plugins" +msgstr "Πρόσθετα" + +msgid "Themes" +msgstr "Θέματα" + +msgid "Software & Languages" +msgstr "Λογισμικό και Γλώσσες" + +msgid "PHP" +msgstr "PHP" + +msgid "Web Servers" +msgstr "Διακομιστές Ιστού" + +msgid "Apache HTTPD" +msgstr "Apache HTTPD" + +msgid "nginx" +msgstr "nginx" + +msgid "Databases" +msgstr "Βάσεις δεδομένων" + +msgid "MariaDB" +msgstr "MariaDB" + +msgid "MySQL" +msgstr "MySQL" + +msgid "SQLite" +msgstr "SQLite" + +msgid "Additional Tools" +msgstr "Πρόσθετα εργαλεία" + +msgid "ImageMagick" +msgstr "ImageMagick" + +msgid "curl" +msgstr "curl" + +msgid "memcached" +msgstr "memcached" + +msgid "Redis" +msgstr "Redis" + +msgid "Component Analysis Settings" +msgstr "Ρυθμίσεις ανάλυσης στοιχείων" + +msgid "Enable or disable vulnerability analysis for specific components." +msgstr "Ενεργοποιήστε ή απενεργοποιήστε την ανάλυση ευπαθειών για συγκεκριμένα στοιχεία." + +msgid "Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red." +msgstr "Επιλέξτε τα στοιχεία που θέλετε να ΑΠΟΚΡΥΨΕΤΕ από σαρώσεις και αναφορές ευπαθειών. Τα μη επιλεγμένα στοιχεία θα αναλύονται ενεργά. Τα στοιχεία με ενεργή ανάλυση εμφανίζονται με πράσινο χρώμα, τα κρυφά με κόκκινο." + +msgid "Hidden (forced by constant)" +msgstr "Κρυφό (επιβεβλημένο από σταθερά)" + +msgid "🔴 Analysis disabled" +msgstr "🔴 Ανάλυση απενεργοποιημένη" + +msgid "🟢 Analysis active" +msgstr "🟢 Ανάλυση ενεργή" + +msgid "Tip:" +msgstr "Συμβουλή:" + +#, php-format +msgid "You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →" +msgstr "Μπορείτε να απενεργοποιήσετε εξαναγκαστικά στοιχεία μέσω σταθερών wp-config.php. Μάθετε περισσότερα για την εξαναγκαστική απόκρυψη ελέγχων →" + +msgid "Save Analysis Settings" +msgstr "Αποθήκευση ρυθμίσεων ανάλυσης" + +msgid "« Previous" +msgstr "« Προηγούμενο" + +msgid "Next »" +msgstr "Επόμενο »" + +msgid "Log entry not found or has been removed." +msgstr "Η εγγραφή αρχείου καταγραφής δεν βρέθηκε ή έχει αφαιρεθεί." + +msgid "Unable to load the requested log entry." +msgstr "Δεν ήταν δυνατή η φόρτωση της ζητούμενης εγγραφής αρχείου καταγραφής." + +msgid "Log Configuration" +msgstr "Διαμόρφωση αρχείου καταγραφής" + +msgid "Total Logs" +msgstr "Σύνολο αρχείων καταγραφής" + +msgid "Retention Period" +msgstr "Περίοδος διατήρησης" + +msgid "Disabled" +msgstr "Απενεργοποιημένο" + +#, php-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d ημέρα" +msgstr[1] "%d ημέρες" + +msgid "Log Retention Period" +msgstr "Περίοδος διατήρησης αρχείων καταγραφής" + +msgid "None (Disabled)" +msgstr "Κανένα (Απενεργοποιημένο)" + +msgid "This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant." +msgstr "Αυτή η τιμή επιβάλλεται από τη σταθερά WPVULNERABILITY_LOG_RETENTION_DAYS." + +msgid "Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted." +msgstr "Επιλέξτε πόσο καιρό το WPVulnerability πρέπει να διατηρεί αρχεία καταγραφής απόκρισης API. Παλαιότερα αρχεία διαγράφονται αυτόματα." + +msgid "Save Configuration" +msgstr "Αποθήκευση διαμόρφωσης" + +msgid "Log retention is currently disabled." +msgstr "Η διατήρηση αρχείων καταγραφής είναι απενεργοποιημένη αυτή τη στιγμή." + +msgid "API responses are not being saved." +msgstr "Οι αποκρίσεις API δεν αποθηκεύονται." + +msgid "Log Details" +msgstr "Λεπτομέρειες αρχείου καταγραφής" + +msgid "Date" +msgstr "Ημερομηνία" + +msgid "API Endpoint" +msgstr "Τελικό σημείο API" + +msgid "API Response" +msgstr "Απόκριση API" + +msgid "Back to Logs" +msgstr "Επιστροφή στα αρχεία καταγραφής" + +msgid "No logs available" +msgstr "Δεν υπάρχουν διαθέσιμα αρχεία καταγραφής" + +msgid "API response logs will appear here once the vulnerability scanner runs." +msgstr "Τα αρχεία καταγραφής αποκρίσεων API θα εμφανιστούν εδώ μόλις εκτελεστεί ο σαρωτής ευπαθειών." + +msgid "API Response Logs" +msgstr "Αρχεία καταγραφής αποκρίσεων API" + +msgid "Show:" +msgstr "Εμφάνιση:" + +msgid "Apply" +msgstr "Εφαρμογή" + +#, php-format +msgid "Showing %1$s–%2$s of %3$s" +msgstr "Εμφάνιση %1$s–%2$s από %3$s" + +msgid "Actions" +msgstr "Ενέργειες" + +msgid "View" +msgstr "Προβολή" + +msgid "Danger Zone" +msgstr "Επικίνδυνη ζώνη" + +msgid "Permanently delete all API response logs. This action cannot be undone." +msgstr "Μόνιμη διαγραφή όλων των αρχείων καταγραφής αποκρίσεων API. Αυτή η ενέργεια δεν μπορεί να αναιρεθεί." + +msgid "Are you sure you want to delete all logs? This action cannot be undone." +msgstr "Είστε σίγουροι ότι θέλετε να διαγράψετε όλα τα αρχεία καταγραφής; Αυτή η ενέργεια δεν μπορεί να αναιρεθεί." + +msgid "Delete All Logs" +msgstr "Διαγραφή όλων των αρχείων καταγραφής" + +msgid "Reload Data from API" +msgstr "Επαναφόρτωση δεδομένων από το API" + +msgid "Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information." +msgstr "Επαναφορτώστε όλες τις πληροφορίες Core, Πρόσθετων, Θεμάτων και άλλων στοιχείων απευθείας από το API για ενημερωμένα δεδομένα. Αυτό θα εκκαθαρίσει την κρυφή μνήμη και θα ανακτήσει νέες πληροφορίες ευπαθειών." + +msgid "Reload Data" +msgstr "Επαναφόρτωση δεδομένων" + +msgid "Test Email Notifications" +msgstr "Δοκιμή ειδοποιήσεων email" + +msgid "Send a test email notification with current vulnerability data to verify your email configuration is working correctly." +msgstr "Στείλτε δοκιμαστική ειδοποίηση email με τρέχοντα δεδομένα ευπαθειών για να επαληθεύσετε ότι η διαμόρφωση email λειτουργεί σωστά." + +msgid "From address (configured via constant):" +msgstr "Διεύθυνση αποστολέα (διαμορφωμένη μέσω σταθεράς):" + +msgid "From address (default):" +msgstr "Διεύθυνση αποστολέα (προεπιλογή):" + +msgid "Learn how to customize the email sender address →" +msgstr "Μάθετε πώς να προσαρμόσετε τη διεύθυνση αποστολέα email →" + +msgid "Send Test Email" +msgstr "Αποστολή δοκιμαστικού email" + +msgid "WP-Cron Status" +msgstr "Κατάσταση WP-Cron" + +msgid "View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly." +msgstr "Προβολή και διαχείριση προγραμματισμένων συμβάντων WP-Cron. Βεβαιωθείτε ότι οι αυτόματες εργασίες εκτελούνται σωστά." + +msgid "No cron data available." +msgstr "Δεν υπάρχουν διαθέσιμα δεδομένα cron." + +msgid "Hook" +msgstr "Hook" + +msgid "Expected" +msgstr "Αναμενόμενο" + +msgid "Found" +msgstr "Βρέθηκε" + +msgid "Next Run" +msgstr "Επόμενη εκτέλεση" + +msgid "Status" +msgstr "Κατάσταση" + +msgid "Not expected" +msgstr "Μη αναμενόμενο" + +msgid "None" +msgstr "Κανένα" + +msgid "OK" +msgstr "ΟΚ" + +msgid "⚠️ Unexpected WPVulnerability Events" +msgstr "⚠️ Απρόσμενα συμβάντα WPVulnerability" + +msgid "No interval" +msgstr "Χωρίς διάστημα" + +msgid "Next:" +msgstr "Επόμενο:" + +msgid "Repair Cron Events" +msgstr "Επισκευή συμβάντων Cron" + +msgid "Uninstall Data" +msgstr "Δεδομένα απεγκατάστασης" + +msgid "By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall." +msgstr "Από προεπιλογή, όλα τα δεδομένα πρόσθετου διατηρούνται όταν διαγράφεται το WPVulnerability. Ενεργοποιήστε την παρακάτω επιλογή μόνο εάν θέλετε όλες οι επιλογές, τα αρχεία καταγραφής και τα δεδομένα κρυφής μνήμης να αφαιρεθούν μόνιμα κατά την απεγκατάσταση." + +msgid "Delete all plugin data on uninstall" +msgstr "Διαγραφή όλων των δεδομένων πρόσθετου κατά την απεγκατάσταση" + +msgid "Default: unchecked (data preserved). Check only if you want a clean removal." +msgstr "Προεπιλογή: μη επιλεγμένο (τα δεδομένα διατηρούνται). Επιλέξτε μόνο εάν θέλετε καθαρή αφαίρεση." + +msgid "Save preference" +msgstr "Αποθήκευση προτίμησης" + +msgid "Reset WPVulnerability" +msgstr "Επαναφορά WPVulnerability" + +msgid "Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API." +msgstr "Διαγράψτε όλες τις ρυθμίσεις WPVulnerability, τα δεδομένα κρυφής μνήμης, τα αρχεία καταγραφής και τα προγραμματισμένα συμβάντα, στη συνέχεια επαναφέρετε τις προεπιλογές και επαναφορτώστε δεδομένα από το API." + +msgid "This action cannot be undone." +msgstr "Αυτή η ενέργεια δεν μπορεί να αναιρεθεί." + +msgid "Are you sure you want to reset all WPVulnerability data? This action cannot be undone." +msgstr "Είστε σίγουροι ότι θέλετε να επαναφέρετε όλα τα δεδομένα WPVulnerability; Αυτή η ενέργεια δεν μπορεί να αναιρεθεί." + +msgid "Reset Plugin" +msgstr "Επαναφορά πρόσθετου" + +msgid "Vulnerability Database Statistics" +msgstr "Στατιστικά βάσης δεδομένων ευπαθειών" + +#, php-format +msgid "%s vulnerability" +msgid_plural "%s vulnerabilities" +msgstr[0] "%s ευπάθεια" +msgstr[1] "%s ευπάθειες" + +#, php-format +msgid "(%s product)" +msgid_plural "(%s products)" +msgstr[0] "(%s προϊόν)" +msgstr[1] "(%s προϊόντα)" + +msgid "No data" +msgstr "Δεν υπάρχουν δεδομένα" + +#, php-format +msgid "Database last updated: %s" +msgstr "Τελευταία ενημέρωση βάσης δεδομένων: %s" + +msgid "Intelligence Sources" +msgstr "Πηγές πληροφοριών" + +msgid "Number of vulnerabilities contributed by each intelligence source." +msgstr "Αριθμός ευπαθειών που συνεισέφερε κάθε πηγή πληροφοριών." + +msgid "Source" +msgstr "Πηγή" + +msgid "Core" +msgstr "Core" + +msgid "Sponsors" +msgstr "Χορηγοί" + +msgid "No sponsor data available." +msgstr "Δεν υπάρχουν διαθέσιμα δεδομένα χορηγών." + +msgid "Contributors" +msgstr "Συνεισφέροντες" + +msgid "No contributor data available." +msgstr "Δεν υπάρχουν διαθέσιμα δεδομένα συνεισφερόντων." + +msgid "You do not have sufficient permissions to access this page." +msgstr "Δεν έχετε επαρκή δικαιώματα για πρόσβαση σε αυτήν τη σελίδα." + +msgid "WPVulnerability settings" +msgstr "Ρυθμίσεις WPVulnerability" + +msgid "Configure and save these settings to receive notifications." +msgstr "Διαμορφώστε και αποθηκεύστε αυτές τις ρυθμίσεις για να λαμβάνετε ειδοποιήσεις." + +msgid "Configure and save these settings to hide vulnerabilities." +msgstr "Διαμορφώστε και αποθηκεύστε αυτές τις ρυθμίσεις για να αποκρύψετε ευπάθειες." + +msgid "Default administrator email" +msgstr "Προεπιλεγμένο email διαχειριστή" + +msgid "Read more if you want to force the cache time." +msgstr "Διαβάστε περισσότερα εάν θέλετε να επιβάλετε τον χρόνο κρυφής μνήμης." + +msgid "Never" +msgstr "Ποτέ" + +msgid "Daily" +msgstr "Καθημερινά" + +msgid "Weekly" +msgstr "Εβδομαδιαία" + +msgid "Day" +msgstr "Ημέρα" + +msgid "Hour" +msgstr "Ώρα" + +msgid "Minute" +msgstr "Λεπτό" + +msgid "Read more about how to force the deactivation of an item." +msgstr "Διαβάστε περισσότερα για το πώς να επιβάλετε την απενεργοποίηση ενός στοιχείου." + +msgid "Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com" +msgstr "Μη έγκυρο URL Slack webhook. Πρέπει να είναι έγκυρο URL HTTPS από το hooks.slack.com." + +msgid "Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com" +msgstr "Μη έγκυρο URL Microsoft Teams webhook. Πρέπει να είναι έγκυρο URL HTTPS από office.com, office365.com ή api.hooks.microsoft.com." + +msgid "Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com" +msgstr "Μη έγκυρο URL Discord webhook. Πρέπει να είναι έγκυρο URL HTTPS από discord.com ή discordapp.com." + +msgid "Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "Μη έγκυρη μορφή token Telegram bot. Πρέπει να είναι σαν: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +msgid "All Clear" +msgstr "Όλα καλά" + +#, php-format +msgid "%d Critical Issue Found" +msgid_plural "%d Critical Issues Found" +msgstr[0] "Βρέθηκε %d κρίσιμο ζήτημα" +msgstr[1] "Βρέθηκαν %d κρίσιμα ζητήματα" + +#, php-format +msgid "%d Issue Found" +msgid_plural "%d Issues Found" +msgstr[0] "Βρέθηκε %d ζήτημα" +msgstr[1] "Βρέθηκαν %d ζητήματα" + +msgid "Never checked" +msgstr "Ποτέ δεν ελέγχθηκε" + +#, php-format +msgid "%d minute ago" +msgid_plural "%d minutes ago" +msgstr[0] "%d λεπτό πριν" +msgstr[1] "%d λεπτά πριν" + +#, php-format +msgid "%d hour ago" +msgid_plural "%d hours ago" +msgstr[0] "%d ώρα πριν" +msgstr[1] "%d ώρες πριν" + +#, php-format +msgid "Last checked: %s" +msgstr "Τελευταίος έλεγχος: %s" + +msgid "Refresh Now" +msgstr "Ανανέωση τώρα" + +msgid "No vulnerabilities detected" +msgstr "Δεν ανιχνεύθηκαν ευπάθειες" + +msgid "Your site is up to date and secure" +msgstr "Ο ιστότοπός σας είναι ενημερωμένος και ασφαλής" + +msgid "Server Software" +msgstr "Λογισμικό διακομιστή" + +msgid "Site Health" +msgstr "Υγεία ιστότοπου" + +msgid "Settings" +msgstr "Ρυθμίσεις" + +msgid "WPVulnerability Status" +msgstr "Κατάσταση WPVulnerability" + +msgid "Receive vulnerability notifications" +msgstr "Λήψη ειδοποιήσεων ευπαθειών" + +msgid "Cache expiration time" +msgstr "Χρόνος λήξης κρυφής μνήμης" + +msgid "How often you want to receive notifications" +msgstr "Πόσο συχνά θέλετε να λαμβάνετε ειδοποιήσεις" + +msgid "Where do you want to receive notifications?" +msgstr "Πού θέλετε να λαμβάνετε ειδοποιήσεις;" + +msgid "Email addresses to notify (separated by commas)" +msgstr "Διευθύνσεις email για ειδοποίηση (διαχωρισμένες με κόμμα)" + +msgid "Slack webhook URL" +msgstr "URL Slack webhook" + +msgid "Teams webhook URL" +msgstr "URL Teams webhook" + +msgid "Vulnerabilities to hide" +msgstr "Ευπάθειες προς απόκρυψη" + +msgid "What do you want to hide?" +msgstr "Τι θέλετε να αποκρύψετε;" + +msgid "Standard (Hybrid Detection)" +msgstr "Τυπικό (Υβριδική ανίχνευση)" + +msgid "Strict (Extensions Only)" +msgstr "Αυστηρό (Μόνο επεκτάσεις)" + +msgid "Disabled (No Detection)" +msgstr "Απενεργοποιημένο (Χωρίς ανίχνευση)" + +msgid "Security Status" +msgstr "Κατάσταση ασφαλείας" + +msgid "Security Mode" +msgstr "Λειτουργία ασφαλείας" + +msgid "Shell Execution" +msgstr "Εκτέλεση Shell" + +msgid "Enabled" +msgstr "Ενεργοποιημένο" + +msgid "Audit Logging" +msgstr "Καταγραφή ελέγχου" + +#, php-format +msgid "Enabled (%d days)" +msgstr "Ενεργοποιημένο (%d ημέρες)" + +msgid "Total Log Entries" +msgstr "Σύνολο εγγραφών αρχείου καταγραφής" + +msgid "Last Shell Execution" +msgstr "Τελευταία εκτέλεση Shell" + +#, php-format +msgid "%s ago" +msgstr "%s πριν" + +msgid "Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST." +msgstr "Διαμορφώστε ρυθμίσεις ασφαλείας μέσω σταθερών wp-config.php: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST." + +#, php-format +msgid "See security configuration documentation for details." +msgstr "Δείτε την τεκμηρίωση διαμόρφωσης ασφαλείας για λεπτομέρειες." + +msgid "Memcached" +msgstr "Memcached" + +msgid "Imagick Extension" +msgstr "Επέκταση Imagick" + +msgid "Redis Extension" +msgstr "Επέκταση Redis" + +msgid "Memcached Extension" +msgstr "Επέκταση Memcached" + +msgid "Memcache Extension" +msgstr "Επέκταση Memcache" + +msgid "SQLite3 Extension" +msgstr "Επέκταση SQLite3" + +msgid "PDO SQLite" +msgstr "PDO SQLite" + +msgid "Shell Command" +msgstr "Εντολή Shell" + +msgid "Binary Check" +msgstr "Έλεγχος δυαδικού" + +msgid "Not Detected" +msgstr "Δεν ανιχνεύθηκε" + +msgid "Software Detection Methods" +msgstr "Μέθοδοι ανίχνευσης λογισμικού" + +msgid "Shows which detection method was used for each software component and the reliability score." +msgstr "Εμφανίζει ποια μέθοδος ανίχνευσης χρησιμοποιήθηκε για κάθε στοιχείο λογισμικού και τη βαθμολογία αξιοπιστίας." + +msgid "Component" +msgstr "Στοιχείο" + +msgid "Version" +msgstr "Έκδοση" + +msgid "Detection Method" +msgstr "Μέθοδος ανίχνευσης" + +msgid "Reliability" +msgstr "Αξιοπιστία" + +msgid "Not detected" +msgstr "Δεν ανιχνεύθηκε" + +msgid "Shell Execution Audit Logs" +msgstr "Αρχεία καταγραφής ελέγχου εκτέλεσης Shell" + +msgid "Complete audit trail of shell command executions for security monitoring." +msgstr "Πλήρης ίχνος ελέγχου εκτελέσεων εντολών shell για παρακολούθηση ασφαλείας." + +msgid "No shell execution logs found." +msgstr "Δεν βρέθηκαν αρχεία καταγραφής εκτέλεσης shell." + +msgid "Logs will appear here when shell commands are executed for software detection." +msgstr "Τα αρχεία καταγραφής θα εμφανιστούν εδώ όταν εκτελούνται εντολές shell για ανίχνευση λογισμικού." + +msgid "Time" +msgstr "Ώρα" + +msgid "Command" +msgstr "Εντολή" + +msgid "User" +msgstr "Χρήστης" + +msgid "Output" +msgstr "Έξοδος" + +#, php-format +msgid "Showing the %d most recent log entries." +msgstr "Εμφάνιση των %d πιο πρόσφατων εγγραφών αρχείου καταγραφής." + +msgid "Invalid nonce." +msgstr "Μη έγκυρο nonce." + +msgid "Insufficient permissions." +msgstr "Ανεπαρκή δικαιώματα." + +msgid "No component specified." +msgstr "Δεν έχει καθοριστεί κανένα στοιχείο." + +msgid "Debug Information" +msgstr "Πληροφορίες εντοπισμού σφαλμάτων" + +msgid "This tab is only visible when WP_DEBUG is enabled. Use with caution." +msgstr "Αυτή η καρτέλα είναι ορατή μόνο όταν το WP_DEBUG είναι ενεργοποιημένο. Χρησιμοποιήστε με προσοχή." + +msgid "System Information" +msgstr "Πληροφορίες συστήματος" + +msgid "WordPress Version" +msgstr "Έκδοση WordPress" + +msgid "Multisite" +msgstr "Πολλαπλοί ιστότοποι" + +msgid "Yes" +msgstr "Ναι" + +msgid "No" +msgstr "Όχι" + +msgid "Language" +msgstr "Γλώσσα" + +msgid "PHP Version" +msgstr "Έκδοση PHP" + +msgid "PHP Extensions" +msgstr "Επεκτάσεις PHP" + +msgid "PHP Memory Limit" +msgstr "Όριο μνήμης PHP" + +msgid "Database" +msgstr "Βάση δεδομένων" + +msgid "Web Server" +msgstr "Διακομιστής ιστού" + +msgid "WP_DEBUG" +msgstr "WP_DEBUG" + +msgid "WP_DEBUG_LOG" +msgstr "WP_DEBUG_LOG" + +msgid "Path:" +msgstr "Διαδρομή:" + +#, php-format +msgid "Size: %s" +msgstr "Μέγεθος: %s" + +msgid "View Log File" +msgstr "Προβολή αρχείου καταγραφής" + +msgid "Log file is not web-accessible (outside wp-content)" +msgstr "Το αρχείο καταγραφής δεν είναι προσβάσιμο από τον ιστό (εκτός wp-content)" + +msgid "Log file does not exist yet" +msgstr "Το αρχείο καταγραφής δεν υπάρχει ακόμα" + +msgid "Plugin Version" +msgstr "Έκδοση πρόσθετου" + +msgid "Component Detection" +msgstr "Ανίχνευση στοιχείου" + +msgid "Version Detected" +msgstr "Έκδοση που ανιχνεύθηκε" + +msgid "Analyzed" +msgstr "Αναλύθηκε" + +msgid "Cache Status" +msgstr "Κατάσταση κρυφής μνήμης" + +msgid "Configuration Summary" +msgstr "Σύνοψη διαμόρφωσης" + +msgid "Cache Duration" +msgstr "Διάρκεια κρυφής μνήμης" + +msgid "Log Retention" +msgstr "Διατήρηση αρχείων καταγραφής" + +msgid "Components Analyzed" +msgstr "Στοιχεία που αναλύθηκαν" + +msgid "Notification Email" +msgstr "Email ειδοποίησης" + +msgid "Slack Webhook" +msgstr "Slack Webhook" + +msgid "Configured & Enabled" +msgstr "Διαμορφωμένο & Ενεργοποιημένο" + +msgid "Configured (Disabled)" +msgstr "Διαμορφωμένο (Απενεργοποιημένο)" + +msgid "Not configured" +msgstr "Μη διαμορφωμένο" + +msgid "Teams Webhook" +msgstr "Teams Webhook" + +msgid "Discord Webhook" +msgstr "Discord Webhook" + +msgid "Telegram Bot" +msgstr "Telegram Bot" + +msgid "Cron Status" +msgstr "Κατάσταση Cron" + +msgid "Update Database" +msgstr "Ενημέρωση βάσης δεδομένων" + +#, php-format +msgid "Next run: %s" +msgstr "Επόμενη εκτέλεση: %s" + +msgid "Not scheduled" +msgstr "Μη προγραμματισμένο" + +msgid "Send Notification" +msgstr "Αποστολή ειδοποίησης" + +msgid "Run Update Now" +msgstr "Εκτέλεση ενημέρωσης τώρα" + +msgid "Run Notification Now" +msgstr "Αποστολή ειδοποίησης τώρα" + +msgid "You do not have permission to run these actions." +msgstr "Δεν έχετε δικαίωμα εκτέλεσης αυτών των ενεργειών." + +msgid "API Testing" +msgstr "Δοκιμή API" + +msgid "Test API connectivity for each component. Click a button to send a test request." +msgstr "Δοκιμάστε τη συνδεσιμότητα API για κάθε στοιχείο. Κάντε κλικ σε κουμπί για αποστολή δοκιμαστικού αιτήματος." + +#, php-format +msgid "Test %s" +msgstr "Δοκιμή %s" + +msgid "Testing..." +msgstr "Δοκιμή..." + +msgid "HTTP Code:" +msgstr "Κωδικός HTTP:" + +msgid "Response Time:" +msgstr "Χρόνος απόκρισης:" + +msgid "Response Preview" +msgstr "Προεπισκόπηση απόκρισης" + +msgid "Test" +msgstr "Δοκιμή" + +msgid "Error:" +msgstr "Σφάλμα:" + +msgid "AJAX request failed." +msgstr "Το αίτημα AJAX απέτυχε." + +msgid "You do not have permission to test API connectivity." +msgstr "Δεν έχετε δικαίωμα δοκιμής συνδεσιμότητας API." + +msgid "Database Options Viewer" +msgstr "Προβολή επιλογών βάσης δεδομένων" + +msgid "View the raw data stored in WordPress options." +msgstr "Προβάλετε τα ακατέργαστα δεδομένα που αποθηκεύονται στις επιλογές WordPress." + +msgid "Select an option..." +msgstr "Επιλέξτε μια επιλογή..." + +msgid "Option not found or empty." +msgstr "Η επιλογή δεν βρέθηκε ή είναι κενή." + +msgid "Quick Actions" +msgstr "Γρήγορες ενέργειες" + +msgid "Perform debugging actions. Use with caution." +msgstr "Εκτελέστε ενέργειες εντοπισμού σφαλμάτων. Χρησιμοποιήστε με προσοχή." + +msgid "Are you sure you want to clear all caches?" +msgstr "Είστε σίγουροι ότι θέλετε να εκκαθαρίσετε όλες τις κρυφές μνήμες;" + +msgid "Clear All Caches" +msgstr "Εκκαθάριση όλων των κρυφών μνημών" + +msgid "Are you sure you want to reset signatures?" +msgstr "Είστε σίγουροι ότι θέλετε να επαναφέρετε τις υπογραφές;" + +msgid "Reset Signatures" +msgstr "Επαναφορά υπογραφών" + +msgid "Export Debug Info" +msgstr "Εξαγωγή πληροφοριών εντοπισμού σφαλμάτων" + +msgid "You do not have permission to perform these actions." +msgstr "Δεν έχετε δικαίωμα εκτέλεσης αυτών των ενεργειών." + +msgid "Settings saved." +msgstr "Οι ρυθμίσεις αποθηκεύτηκαν." + +msgid "WPVulnerability cron events have been repaired across the network." +msgstr "Τα συμβάντα cron του WPVulnerability επισκευάστηκαν σε ολόκληρο το δίκτυο." + +msgid "You do not have permission to access this page." +msgstr "Δεν έχετε δικαίωμα πρόσβασης σε αυτήν τη σελίδα." + +#, php-format +msgid "WordPress %1$s has a known vulnerability that may be affecting your installed version." +msgstr "Το WordPress %1$s έχει μια γνωστή ευπάθεια που μπορεί να επηρεάζει την εγκατεστημένη έκδοσή σας." + +msgid "Actively exploited" +msgstr "Εκμεταλλεύεται ενεργά" + +msgid "Public exploit" +msgstr "Δημόσιο exploit" + +msgid "Automatable" +msgstr "Αυτοματοποιήσιμο" + +msgid "References:" +msgstr "Αναφορές:" + +msgid "Invalid component specified." +msgstr "Καθορίστηκε μη έγκυρο στοιχείο." + +msgid "Version not detected for this component." +msgstr "Δεν ανιχνεύθηκε έκδοση για αυτό το στοιχείο." + +msgid "API request successful." +msgstr "Το αίτημα API ήταν επιτυχές." + +#, php-format +msgid "API returned HTTP code %d." +msgstr "Το API επέστρεψε κωδικό HTTP %d." + +msgid "WPVulnerability Logs" +msgstr "Αρχεία καταγραφής WPVulnerability" + +msgid "WPVulnerability Log" +msgstr "Αρχείο καταγραφής WPVulnerability" + +msgid "Low" +msgstr "Χαμηλό" + +msgid "Medium" +msgstr "Μέτριο" + +msgid "High" +msgstr "Υψηλό" + +msgid "Critical" +msgstr "Κρίσιμο" + +msgid "WPVulnerability Shell Logs" +msgstr "Αρχεία καταγραφής Shell WPVulnerability" + +msgid "WPVulnerability Shell Log" +msgstr "Αρχείο καταγραφής Shell WPVulnerability" + +msgid "Every week" +msgstr "Κάθε εβδομάδα" + +msgid "Every day" +msgstr "Κάθε μέρα" + +msgid "Invalid request." +msgstr "Μη έγκυρο αίτημα." + +msgid "You have unsubscribed from WPVulnerability notifications." +msgstr "Έχετε καταργήσει την εγγραφή σας από τις ειδοποιήσεις WPVulnerability." + +#, php-format +msgid "Learn more about the WordPress Vulnerability Database API at %2$s" +msgstr "Μάθετε περισσότερα για το WordPress Vulnerability Database API στο %2$s" + +#, php-format +msgid "Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings." +msgstr "Θέλετε να σταματήσετε να λαμβάνετε αυτές τις ειδοποιήσεις; Κατάργηση εγγραφής ή αλλαγή της συχνότητας email σε Ποτέ στις ρυθμίσεις WPVulnerability." + +msgid "No vulnerabilities found" +msgstr "Δεν βρέθηκαν ευπάθειες" + +msgid "This is likely a test. The site does not have vulnerabilities." +msgstr "Αυτό είναι πιθανώς δοκιμή. Ο ιστότοπος δεν έχει ευπάθειες." + +msgid "Core vulnerabilities" +msgstr "Ευπάθειες πυρήνα" + +msgid "Plugins vulnerabilities" +msgstr "Ευπάθειες πρόσθετων" + +msgid "Themes vulnerabilities" +msgstr "Ευπάθειες θεμάτων" + +msgid "PHP vulnerabilities" +msgstr "Ευπάθειες PHP" + +msgid "Apache HTTPD vulnerabilities" +msgstr "Ευπάθειες Apache HTTPD" + +msgid "Nginx vulnerabilities" +msgstr "Ευπάθειες Nginx" + +msgid "MariaDB vulnerabilities" +msgstr "Ευπάθειες MariaDB" + +msgid "MySQL vulnerabilities" +msgstr "Ευπάθειες MySQL" + +msgid "ImageMagick vulnerabilities" +msgstr "Ευπάθειες ImageMagick" + +msgid "curl vulnerabilities" +msgstr "Ευπάθειες curl" + +msgid "memcached vulnerabilities" +msgstr "Ευπάθειες memcached" + +msgid "Redis vulnerabilities" +msgstr "Ευπάθειες Redis" + +msgid "SQLite vulnerabilities" +msgstr "Ευπάθειες SQLite" + +#, php-format +msgid "Vulnerability found: %s" +msgstr "Βρέθηκε ευπάθεια: %s" + +msgid "Vulnerability found" +msgstr "Βρέθηκε ευπάθεια" + +#, php-format +msgid "%1$s has a known vulnerability that may be affecting your installed version." +msgstr "Το %1$s έχει μια γνωστή ευπάθεια που μπορεί να επηρεάζει την εγκατεστημένη έκδοσή σας." + +msgid "This plugin is closed. Please replace it with another." +msgstr "Αυτό το πρόσθετο είναι κλειστό. Αντικαταστήστε το με κάποιο άλλο." + +msgid "This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates." +msgstr "Αυτή η ευπάθεια φαίνεται να μην έχει επιδιορθωθεί. Παρακολουθήστε για επερχόμενες ενημερώσεις πρόσθετου." + +msgid "It hasn't been updated in over a year." +msgstr "Δεν έχει ενημερωθεί για πάνω από ένα χρόνο." + +msgid "It may no longer be available (closed?)." +msgstr "Μπορεί να μην είναι πλέον διαθέσιμο (κλειστό;)." + +msgid "Last updated on" +msgstr "Τελευταία ενημέρωση στις" + +#, php-format +msgid "Vulnerabilities (%d)" +msgstr "Ευπάθειες (%d)" + +#, php-format +msgid "%s running" +msgstr "%s εκτελείται" + +msgid "End of Life" +msgstr "Τέλος υποστήριξης" + +msgid "End of life:" +msgstr "Τέλος υποστήριξης:" + +msgid "Supported" +msgstr "Υποστηρίζεται" + +msgid "Plugin" +msgstr "Πρόσθετο" + +msgid "Theme" +msgstr "Θέμα" + +#, php-format +msgid "End of life: %s" +msgstr "Τέλος υποστήριξης: %s" + +msgid "EOL" +msgstr "EOL" + +msgid "Network Settings" +msgstr "Ρυθμίσεις δικτύου" + +msgid "Vulnerabilities" +msgstr "Ευπάθειες" + +msgid "Every 6 hours" +msgstr "Κάθε 6 ώρες" + +msgid "Database updates" +msgstr "Ενημερώσεις βάσης δεδομένων" + +msgid "Log cleanup" +msgstr "Εκκαθάριση αρχείων καταγραφής" + +msgid "Notifications are scheduled, but settings currently disable them. Please review the notifications tab." +msgstr "Οι ειδοποιήσεις είναι προγραμματισμένες, αλλά οι ρυθμίσεις τις απενεργοποιούν αυτή τη στιγμή. Ελέγξτε την καρτέλα ειδοποιήσεων." + +msgid "This event should not be scheduled for this site." +msgstr "Αυτό το συμβάν δεν πρέπει να είναι προγραμματισμένο για αυτόν τον ιστότοπο." + +msgid "Not expected for this site." +msgstr "Μη αναμενόμενο για αυτόν τον ιστότοπο." + +msgid "No instances found." +msgstr "Δεν βρέθηκαν στιγμιότυπα." + +msgid "Scheduled with an unexpected interval." +msgstr "Προγραμματισμένο με απρόσμενο διάστημα." + +msgid "Multiple instances detected." +msgstr "Ανιχνεύθηκαν πολλαπλά στιγμιότυπα." + +msgid "Scheduled as expected." +msgstr "Προγραμματισμένο όπως αναμενόταν." + +msgid "There aren't plugins vulnerabilities" +msgstr "Δεν υπάρχουν ευπάθειες στα πρόσθετα" + +msgid "Shows possible vulnerabilities that exist in installed plugins." +msgstr "Εμφανίζει πιθανές ευπάθειες που υπάρχουν στα εγκατεστημένα πρόσθετα." + +#, php-format +msgid "There is %d plugin with vulnerabilities" +msgid_plural "There are %d plugins with vulnerabilities" +msgstr[0] "Υπάρχει %d πρόσθετο με ευπάθειες" +msgstr[1] "Υπάρχουν %d πρόσθετα με ευπάθειες" + +msgid "We've detected potential vulnerabilities in installed plugins. Please check them and keep them updated." +msgstr "Εντοπίσαμε πιθανές ευπάθειες στα εγκατεστημένα πρόσθετα. Ελέγξτε τα και κρατήστε τα ενημερωμένα." + +msgid "Update plugins" +msgstr "Ενημέρωση πρόσθετων" + +msgid "There aren't themes vulnerabilities" +msgstr "Δεν υπάρχουν ευπάθειες στα θέματα" + +msgid "Shows possible vulnerabilities that exist in installed themes." +msgstr "Εμφανίζει πιθανές ευπάθειες που υπάρχουν στα εγκατεστημένα θέματα." + +#, php-format +msgid "There is %d theme with vulnerabilities" +msgid_plural "There are %d themes with vulnerabilities" +msgstr[0] "Υπάρχει %d θέμα με ευπάθειες" +msgstr[1] "Υπάρχουν %d θέματα με ευπάθειες" + +msgid "We've detected potential vulnerabilities in installed themes. Please check them and keep them updated." +msgstr "Εντοπίσαμε πιθανές ευπάθειες στα εγκατεστημένα θέματα. Ελέγξτε τα και κρατήστε τα ενημερωμένα." + +msgid "Update themes" +msgstr "Ενημέρωση θεμάτων" + +msgid "There aren't WordPress vulnerabilities" +msgstr "Δεν υπάρχουν ευπάθειες στο WordPress" + +msgid "Shows possible vulnerabilities existing in the WordPress core." +msgstr "Εμφανίζει πιθανές ευπάθειες που υπάρχουν στον πυρήνα WordPress." + +#, php-format +msgid "There is %d core vulnerability" +msgid_plural "There are %d core vulnerabilities" +msgstr[0] "Υπάρχει %d ευπάθεια πυρήνα" +msgstr[1] "Υπάρχουν %d ευπάθειες πυρήνα" + +msgid "We've detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated." +msgstr "Εντοπίσαμε πιθανές ευπάθειες σε αυτήν την εγκατάσταση WordPress. Ελέγξτε τες και κρατήστε την εγκατάστασή σας ενημερωμένη." + +msgid "Update WordPress" +msgstr "Ενημέρωση WordPress" + +msgid "Nginx" +msgstr "Nginx" + +msgid "Invalid software type" +msgstr "Μη έγκυρος τύπος λογισμικού" + +msgid "Error" +msgstr "Σφάλμα" + +msgid "The specified software type is not valid." +msgstr "Ο καθορισμένος τύπος λογισμικού δεν είναι έγκυρος." + +#, php-format +msgid "There aren't %s vulnerabilities" +msgstr "Δεν υπάρχουν ευπάθειες για %s" + +#, php-format +msgid "Shows possible vulnerabilities existing in %s." +msgstr "Εμφανίζει πιθανές ευπάθειες που υπάρχουν στο %s." + +#, php-format +msgid "There is %1$d %2$s vulnerability" +msgid_plural "There are %1$d %2$s vulnerabilities" +msgstr[0] "Υπάρχει %1$d ευπάθεια για %2$s" +msgstr[1] "Υπάρχουν %1$d ευπάθειες για %2$s" + +#, php-format +msgid "We've detected potential vulnerabilities in %s. Please check them and keep your installation updated." +msgstr "Εντοπίσαμε πιθανές ευπάθειες στο %s. Ελέγξτε τες και κρατήστε την εγκατάστασή σας ενημερωμένη." + +msgid "How to update PHP" +msgstr "Πώς να ενημερώσετε την PHP" + +msgid "WPVulnerability Core" +msgstr "WPVulnerability Core" + +msgid "WPVulnerability Themes" +msgstr "WPVulnerability Themes" + +msgid "WPVulnerability Plugins" +msgstr "WPVulnerability Plugins" + +msgid "WPVulnerability PHP" +msgstr "WPVulnerability PHP" + +msgid "WPVulnerability Apache HTTPD" +msgstr "WPVulnerability Apache HTTPD" + +msgid "WPVulnerability Nginx" +msgstr "WPVulnerability Nginx" + +msgid "WPVulnerability MariaDB" +msgstr "WPVulnerability MariaDB" + +msgid "WPVulnerability MySQL" +msgstr "WPVulnerability MySQL" + +msgid "WPVulnerability ImageMagick" +msgstr "WPVulnerability ImageMagick" + +msgid "WPVulnerability curl" +msgstr "WPVulnerability curl" + +msgid "WPVulnerability memcached" +msgstr "WPVulnerability memcached" + +msgid "WPVulnerability redis" +msgstr "WPVulnerability redis" + +msgid "WPVulnerability sqlite" +msgstr "WPVulnerability sqlite" + +msgid "This theme is closed. Please replace it with another." +msgstr "Αυτό το θέμα είναι κλειστό. Αντικαταστήστε το με κάποιο άλλο." + +msgid "This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates." +msgstr "Αυτή η ευπάθεια φαίνεται να μην έχει επιδιορθωθεί. Παρακολουθήστε για επερχόμενες ενημερώσεις θέματος." + +msgid "This theme has known vulnerabilities that may be affecting your installed version." +msgstr "Αυτό το θέμα έχει γνωστές ευπάθειες που μπορεί να επηρεάζουν την εγκατεστημένη έκδοσή σας." diff --git a/languages/wpvulnerability-es-cl.l10n.php b/languages/wpvulnerability-es-cl.l10n.php new file mode 100644 index 0000000..e74daff --- /dev/null +++ b/languages/wpvulnerability-es-cl.l10n.php @@ -0,0 +1,2 @@ +NULL,'plural-forms'=>'nplurals=2; plural=n != 1;','language'=>'es_CL','project-id-version'=>'Plugins - WPVulnerability - Development (trunk)','pot-creation-date'=>'2026-05-27T16:32:22+00:00','po-revision-date'=>'2026-02-08 02:34:38+0000','x-generator'=>'GlotPress/4.0.3','messages'=>['WPVulnerability'=>'WPVulnerability','https://www.wpvulnerability.com/plugin/'=>'https://www.wpvulnerability.com/plugin/','Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API.'=>'Recibe información acerca de posibles vulnerabilidades en tu WordPress desde la WordPress Vulnerability Database API.','ROBOTSTXT'=>'ROBOTSTXT','https://www.robotstxt.es/'=>'https://www.robotstxt.es/','This command requires a WordPress administrator. Run with --user=.'=>'Este comando requiere un administrador de WordPress. Ejecuta con --user=.','No core vulnerabilities found.'=>'No se han encontrado vulnerabilidades en el núcleo.','No plugin vulnerabilities found.'=>'No se han encontrado vulnerabilidades en plugins.','No theme vulnerabilities found.'=>'No se han encontrado vulnerabilidades en temas.','No %s vulnerabilities found.'=>'No se han encontrado vulnerabilidades de %s.','Data from source has been reloaded.'=>'Los datos de origen se han vuelto a cargar.','You do not have permission to reload data.'=>'No tienes permiso para recargar datos.','Test email has been sent.'=>'El correo electrónico de prueba ha sido enviado.','Test email has failed. Please, check your email settings.'=>'El correo electrónico de prueba ha fallado. Por favor, comprueba tus ajustes de correo electrónico.','You do not have permission to send test emails.'=>'No tienes permiso para enviar correos electrónicos de prueba.','WPVulnerability cron events have been repaired.'=>'Los eventos cron de WPVulnerability han sido reparados.','You do not have permission to repair cron events.'=>'No tienes permiso para reparar eventos cron.','All logs have been deleted.'=>'Todos los registros han sido eliminados.','You do not have permission to delete logs.'=>'No tienes permiso para eliminar registros.','Uninstall preference saved.'=>'Preferencia de desinstalación guardada.','WPVulnerability has been reset to defaults and reloaded.'=>'WPVulnerability ha sido restablecido a los valores predeterminados y recargado.','You do not have permission to reset WPVulnerability.'=>'No tienes permiso para restablecer WPVulnerability.','All caches have been cleared.'=>'Todas las cachés han sido limpiadas.','You do not have permission to clear caches.'=>'No tienes permiso para limpiar las cachés.','Plugin and theme signatures have been reset.'=>'Las firmas de plugins y temas han sido restablecidas.','You do not have permission to reset signatures.'=>'No tienes permiso para restablecer las firmas.','You do not have permission to export debug information.'=>'No tienes permiso para exportar información de depuración.','Database update has been executed.'=>'La actualización de la base de datos ha sido ejecutada.','You do not have permission to run database updates.'=>'No tienes permiso para ejecutar actualizaciones de la base de datos.','Notification has been sent.'=>'El aviso ha sido enviado.','Notification sending failed.'=>'El envío del aviso ha fallado.','You do not have permission to send notifications.'=>'No tienes permiso para enviar avisos.','Notifications'=>'Avisos','Analysis'=>'Análisis','Logs'=>'Registros','Security'=>'Seguridad','Tools'=>'Herramientas','Debug'=>'Depuración','About'=>'Acerca de','Notification Settings'=>'Ajustes de notificaciones','Configure how and when you want to receive vulnerability notifications.'=>'Configura cómo y cuándo quieres recibir avisos de vulnerabilidades.','Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software.'=>'Mantente informado sobre las vulnerabilidades de seguridad en tu instalación de WordPress, plugins, temas y software del servidor.','Cache Expiration Time'=>'Tiempo de caducidad de la caché','FORCED'=>'FORZADO','How long to cache vulnerability data before refreshing from the API.'=>'Cuánto tiempo almacenar en caché los datos de vulnerabilidades antes de actualizarlos desde la API.','%d hour'=>'%d hora' . "\0" . '%d horas','You can force the cache time via wp-config.php constant. Learn more →'=>'Puedes forzar el tiempo de caché mediante la constante en wp-config.php. Más información →','Notification Frequency'=>'Frecuencia de notificaciones','Choose how often you want to receive vulnerability notifications.'=>'Elige con qué frecuencia quieres recibir avisos de vulnerabilidades.','Never - Disable automatic notifications'=>'Nunca - Desactivar notificaciones automáticas','Daily - Receive notifications every day'=>'Diariamente - Recibir notificaciones cada día','Weekly - Receive notifications once a week'=>'Semanalmente - Recibir notificaciones una vez a la semana','Day:'=>'Día:','Monday'=>'Lunes','Tuesday'=>'Martes','Wednesday'=>'Miércoles','Thursday'=>'Jueves','Friday'=>'Viernes','Saturday'=>'Sábado','Sunday'=>'Domingo','Time:'=>'Hora:','(24-hour format, server timezone)'=>'(formato de 24 horas, zona horaria del servidor)','Notification Channels'=>'Canales de notificación','Select where you want to receive notifications.'=>'Selecciona dónde quieres recibir las notificaciones.','Email'=>'Correo electrónico','Email Addresses (separated by commas):'=>'Direcciones de correo electrónico (separadas por comas):','Default:'=>'Por defecto:','Slack'=>'Slack','Slack Webhook URL:'=>'URL del webhook de Slack:','Learn how to create a Slack incoming webhook →'=>'Aprende a crear un webhook entrante de Slack →','Microsoft Teams'=>'Microsoft Teams','Teams Webhook URL:'=>'URL del webhook de Teams:','Learn how to create a Teams incoming webhook →'=>'Aprende a crear un webhook entrante de Teams →','Discord'=>'Discord','Discord Webhook URL:'=>'URL del webhook de Discord:','Learn how to create a Discord webhook →'=>'Aprende a crear un webhook de Discord →','Telegram'=>'Telegram','Telegram Bot Token:'=>'Token del bot de Telegram:','Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Formato: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','Telegram Chat ID:'=>'ID de chat de Telegram:','Learn how to create a Telegram bot and get Chat ID →'=>'Aprende a crear un bot de Telegram y obtener el ID de chat →','Save Notification Settings'=>'Guardar ajustes de notificaciones','WordPress Components'=>'Componentes de WordPress','WordPress Core'=>'Núcleo de WordPress','Plugins'=>'Plugins','Themes'=>'Temas','Software & Languages'=>'Software e idiomas','PHP'=>'PHP','Web Servers'=>'Servidores web','Apache HTTPD'=>'Apache HTTPD','nginx'=>'nginx','Databases'=>'Bases de datos','MariaDB'=>'MariaDB','MySQL'=>'MySQL','SQLite'=>'SQLite','Additional Tools'=>'Herramientas adicionales','ImageMagick'=>'ImageMagick','curl'=>'curl','memcached'=>'memcached','Redis'=>'Redis','Component Analysis Settings'=>'Ajustes de análisis de componentes','Enable or disable vulnerability analysis for specific components.'=>'Activa o desactiva el análisis de vulnerabilidades para componentes específicos.','Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red.'=>'Marca los componentes que quieres OCULTAR de los análisis y los informes de vulnerabilidades. Los componentes no marcados se analizarán activamente. Los componentes con análisis activo se muestran en verde, los ocultos en rojo.','Hidden (forced by constant)'=>'Oculto (forzado por constante)','🔴 Analysis disabled'=>'🔴 Análisis desactivado','🟢 Analysis active'=>'🟢 Análisis activo','Tip:'=>'Consejo:','You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →'=>'Puedes forzar la desactivación de componentes mediante constantes en wp-config.php. Más información sobre cómo forzar la ocultación de verificaciones →','Save Analysis Settings'=>'Guardar ajustes de análisis','« Previous'=>'« Anterior','Next »'=>'Siguiente »','Log entry not found or has been removed.'=>'Entrada de registro no encontrada o eliminada.','Unable to load the requested log entry.'=>'No se ha podido cargar la entrada de registro solicitada.','Log Configuration'=>'Configuración de registros','Total Logs'=>'Total de registros','Retention Period'=>'Periodo de retención','Disabled'=>'Desactivado','%d day'=>'%d día' . "\0" . '%d días','Log Retention Period'=>'Periodo de retención de registros','None (Disabled)'=>'Ninguno (desactivado)','This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant.'=>'Este valor se aplica mediante la constante WPVULNERABILITY_LOG_RETENTION_DAYS.','Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted.'=>'Elige cuánto tiempo debe conservar WPVulnerability los registros de respuestas de la API. Los registros más antiguos se eliminan automáticamente.','Save Configuration'=>'Guardar configuración','Log retention is currently disabled.'=>'La retención de registros está actualmente desactivada.','API responses are not being saved.'=>'Las respuestas de la API no se están guardando.','Log Details'=>'Detalles del registro','Date'=>'Fecha','API Endpoint'=>'Endpoint de la API','API Response'=>'Respuesta de la API','Back to Logs'=>'Volver a los registros','No logs available'=>'No hay registros disponibles','API response logs will appear here once the vulnerability scanner runs.'=>'Los registros de respuestas de la API aparecerán aquí una vez que el escáner de vulnerabilidades se ejecute.','API Response Logs'=>'Registros de respuestas de la API','Show:'=>'Mostrar:','Apply'=>'Aplicar','Showing %1$s–%2$s of %3$s'=>'Mostrando %1$s–%2$s de %3$s','Actions'=>'Acciones','View'=>'Ver','Danger Zone'=>'Zona de peligro','Permanently delete all API response logs. This action cannot be undone.'=>'Eliminar permanentemente todos los registros de respuestas de la API. Esta acción no se puede deshacer.','Are you sure you want to delete all logs? This action cannot be undone.'=>'¿Estás seguro de que quieres eliminar todos los registros? Esta acción no se puede deshacer.','Delete All Logs'=>'Eliminar todos los registros','Reload Data from API'=>'Recargar datos desde la API','Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information.'=>'Recarga toda la información del Núcleo, Plugins, Temas y otros componentes directamente desde la API para tener datos actualizados. Esto limpiará la caché y obtendrá información de vulnerabilidades actualizada.','Reload Data'=>'Recargar datos','Test Email Notifications'=>'Probar notificaciones por correo electrónico','Send a test email notification with current vulnerability data to verify your email configuration is working correctly.'=>'Envía un correo electrónico de prueba con los datos de vulnerabilidades actuales para verificar que la configuración del correo electrónico funciona correctamente.','From address (configured via constant):'=>'Dirección de origen (configurada mediante constante):','From address (default):'=>'Dirección de origen (por defecto):','Learn how to customize the email sender address →'=>'Aprende a personalizar la dirección del remitente del correo electrónico →','Send Test Email'=>'Enviar correo electrónico de prueba','WP-Cron Status'=>'Estado de WP-Cron','View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly.'=>'Ver y gestionar los eventos programados de WP-Cron. Compara los horarios esperados con los trabajos cron reales para asegurarte de que las tareas automatizadas se ejecutan correctamente.','No cron data available.'=>'No hay datos de cron disponibles.','Hook'=>'Hook','Expected'=>'Esperado','Found'=>'Encontrado','Next Run'=>'Próxima ejecución','Status'=>'Estado','Not expected'=>'No esperado','None'=>'Ninguna','OK'=>'OK','⚠️ Unexpected WPVulnerability Events'=>'⚠️ Eventos inesperados de WPVulnerability','No interval'=>'Sin intervalo','Next:'=>'Siguiente:','Repair Cron Events'=>'Reparar eventos cron','Uninstall Data'=>'Datos de desinstalación','By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall.'=>'Por defecto, todos los datos del plugin se conservan cuando se elimina WPVulnerability. Activa la opción a continuación solo si quieres que todas las opciones, registros y datos en caché se eliminen permanentemente al desinstalar.','Delete all plugin data on uninstall'=>'Eliminar todos los datos del plugin al desinstalar','Default: unchecked (data preserved). Check only if you want a clean removal.'=>'Por defecto: sin marcar (datos conservados). Marca solo si quieres una eliminación limpia.','Save preference'=>'Guardar preferencia','Reset WPVulnerability'=>'Restablecer WPVulnerability','Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API.'=>'Elimina todos los ajustes de WPVulnerability, datos en caché, registros y eventos programados, y luego restaura los valores predeterminados y recarga los datos desde la API.','This action cannot be undone.'=>'Esta acción no se puede deshacer.','Are you sure you want to reset all WPVulnerability data? This action cannot be undone.'=>'¿Estás seguro de que quieres restablecer todos los datos de WPVulnerability? Esta acción no se puede deshacer.','Reset Plugin'=>'Restablecer plugin','Vulnerability Database Statistics'=>'Estadísticas de la base de datos de vulnerabilidades','%s vulnerability'=>'%s vulnerabilidad' . "\0" . '%s vulnerabilidades','(%s product)'=>'(%s producto)' . "\0" . '(%s productos)','No data'=>'Sin datos','Database last updated: %s'=>'Base de datos actualizada por última vez: %s','Intelligence Sources'=>'Fuentes de inteligencia','Number of vulnerabilities contributed by each intelligence source.'=>'Número de vulnerabilidades aportadas por cada fuente de inteligencia.','Source'=>'Fuente','Core'=>'Núcleo','Sponsors'=>'Patrocinadores','No sponsor data available.'=>'No hay datos de patrocinadores disponibles.','Contributors'=>'Colaboradores','No contributor data available.'=>'No hay datos de colaboradores disponibles.','You do not have sufficient permissions to access this page.'=>'No tienes permisos suficientes para acceder a esta página.','WPVulnerability settings'=>'Ajustes de WPVulnerability','Configure and save these settings to receive notifications.'=>'Configura y guarda estos ajustes para recibir notificaciones.','Configure and save these settings to hide vulnerabilities.'=>'Establece y guarda estos ajustes para ocultar vulnerabilidades.','Default administrator email'=>'Correo electrónico del administrador por defecto','Read more if you want to force the cache time.'=>'Lee más si quieres forzar el tiempo de caché','Never'=>'Nunca','Daily'=>'Diariamente','Weekly'=>'Semanalmente','Day'=>'Día','Hour'=>'Hora','Minute'=>'Minuto','Read more about how to force the deactivation of an item.'=>'Lee más acerca de cómo forzar la desactivación de un elemento.','Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com'=>'URL de webhook de Slack no válida. Debe ser una URL HTTPS válida de hooks.slack.com','Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com'=>'URL de webhook de Microsoft Teams no válida. Debe ser una URL HTTPS válida de office.com, office365.com o api.hooks.microsoft.com','Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com'=>'URL de webhook de Discord no válida. Debe ser una URL HTTPS válida de discord.com o discordapp.com','Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Formato de token de bot de Telegram no válido. Debe ser similar a: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','All Clear'=>'Todo en orden','%d Critical Issue Found'=>'%d problema crítico encontrado' . "\0" . '%d problemas críticos encontrados','%d Issue Found'=>'%d problema encontrado' . "\0" . '%d problemas encontrados','Never checked'=>'Nunca verificado','%d minute ago'=>'hace %d minuto' . "\0" . 'hace %d minutos','%d hour ago'=>'hace %d hora' . "\0" . 'hace %d horas','Last checked: %s'=>'Última comprobación: %s','Refresh Now'=>'Actualizar ahora','No vulnerabilities detected'=>'No se han detectado vulnerabilidades','Your site is up to date and secure'=>'Tu sitio está actualizado y seguro','Server Software'=>'Software del servidor','Site Health'=>'Salud del sitio','Settings'=>'Ajustes','WPVulnerability Status'=>'Estado de WPVulnerability','Receive vulnerability notifications'=>'Recibir avisos de vulnerabilidades','Cache expiration time'=>'Tiempo de caducidad de la caché','How often you want to receive notifications'=>'Con qué frecuencia deseas recibir avisos','Where do you want to receive notifications?'=>'¿Dónde quieres recibir avisos?','Email addresses to notify (separated by commas)'=>'Direcciones de correo electrónico para avisar (separadas por comas)','Slack webhook URL'=>'URL del webhook de Slack','Teams webhook URL'=>'URL del webhook de Teams','Vulnerabilities to hide'=>'Vulnerabilidades a ocultar','What do you want to hide?'=>'¿Qué quieres ocultar?','Standard (Hybrid Detection)'=>'Estándar (detección híbrida)','Strict (Extensions Only)'=>'Estricto (solo extensiones)','Disabled (No Detection)'=>'Desactivado (sin detección)','Security Status'=>'Estado de seguridad','Security Mode'=>'Modo de seguridad','Shell Execution'=>'Ejecución de shell','Enabled'=>'Activado','Audit Logging'=>'Registro de auditoría','Enabled (%d days)'=>'Activado (%d días)','Total Log Entries'=>'Total de entradas de registro','Last Shell Execution'=>'Última ejecución de shell','%s ago'=>'hace %s','Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.'=>'Configura los ajustes de seguridad mediante constantes en wp-config.php: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.','See security configuration documentation for details.'=>'Consulta la documentación de configuración de seguridad para más detalles.','Memcached'=>'Memcached','Imagick Extension'=>'Extensión Imagick','Redis Extension'=>'Extensión Redis','Memcached Extension'=>'Extensión Memcached','Memcache Extension'=>'Extensión Memcache','SQLite3 Extension'=>'Extensión SQLite3','PDO SQLite'=>'PDO SQLite','Shell Command'=>'Comando de shell','Binary Check'=>'Comprobación de binario','Not Detected'=>'No detectado','Software Detection Methods'=>'Métodos de detección de software','Shows which detection method was used for each software component and the reliability score.'=>'Muestra qué método de detección se utilizó para cada componente de software y la puntuación de fiabilidad.','Component'=>'Componente','Version'=>'Versión','Detection Method'=>'Método de detección','Reliability'=>'Fiabilidad','Not detected'=>'No detectado','Shell Execution Audit Logs'=>'Registros de auditoría de ejecución de shell','Complete audit trail of shell command executions for security monitoring.'=>'Registro de auditoría completo de ejecuciones de comandos de shell para la monitorización de seguridad.','No shell execution logs found.'=>'No se han encontrado registros de ejecución de shell.','Logs will appear here when shell commands are executed for software detection.'=>'Los registros aparecerán aquí cuando se ejecuten comandos de shell para la detección de software.','Time'=>'Tiempo','Command'=>'Comando','User'=>'Usuario','Output'=>'Salida','Showing the %d most recent log entries.'=>'Mostrando las %d entradas de registro más recientes.','Invalid nonce.'=>'Nonce no válido.','Insufficient permissions.'=>'Permisos insuficientes.','No component specified.'=>'No se ha especificado ningún componente.','Debug Information'=>'Información de depuración','This tab is only visible when WP_DEBUG is enabled. Use with caution.'=>'Esta pestaña solo es visible cuando WP_DEBUG está activado. Úsala con precaución.','System Information'=>'Información del sistema','WordPress Version'=>'Versión de WordPress','Multisite'=>'Multisitio','Yes'=>'Sí','No'=>'No','Language'=>'Idioma','PHP Version'=>'Versión de PHP','PHP Extensions'=>'Extensiones de PHP','PHP Memory Limit'=>'Límite de memoria de PHP','Database'=>'Base de datos','Web Server'=>'Servidor web','WP_DEBUG'=>'WP_DEBUG','WP_DEBUG_LOG'=>'WP_DEBUG_LOG','Path:'=>'Ruta:','Size: %s'=>'Tamaño: %s','View Log File'=>'Ver archivo de registro','Log file is not web-accessible (outside wp-content)'=>'El archivo de registro no es accesible desde la web (fuera de wp-content)','Log file does not exist yet'=>'El archivo de registro aún no existe','Plugin Version'=>'Versión del plugin','Component Detection'=>'Detección de componentes','Version Detected'=>'Versión detectada','Analyzed'=>'Analizado','Cache Status'=>'Estado de la caché','Configuration Summary'=>'Resumen de configuración','Cache Duration'=>'Duración de la caché','Log Retention'=>'Retención de registros','Components Analyzed'=>'Componentes analizados','Notification Email'=>'Correo electrónico de notificación','Slack Webhook'=>'Webhook de Slack','Configured & Enabled'=>'Configurado y activado','Configured (Disabled)'=>'Configurado (desactivado)','Not configured'=>'No configurado','Teams Webhook'=>'Webhook de Teams','Discord Webhook'=>'Webhook de Discord','Telegram Bot'=>'Bot de Telegram','Cron Status'=>'Estado del cron','Update Database'=>'Actualizar base de datos','Next run: %s'=>'Próxima ejecución: %s','Not scheduled'=>'No programado','Send Notification'=>'Enviar notificación','Run Update Now'=>'Ejecutar actualización ahora','Run Notification Now'=>'Enviar notificación ahora','You do not have permission to run these actions.'=>'No tienes permiso para ejecutar estas acciones.','API Testing'=>'Prueba de la API','Test API connectivity for each component. Click a button to send a test request.'=>'Prueba la conectividad de la API para cada componente. Haz clic en un botón para enviar una solicitud de prueba.','Test %s'=>'Probar %s','Testing...'=>'Probando...','HTTP Code:'=>'Código HTTP:','Response Time:'=>'Tiempo de respuesta:','Response Preview'=>'Vista previa de la respuesta','Test'=>'Probar','Error:'=>'Error:','AJAX request failed.'=>'La solicitud AJAX ha fallado.','You do not have permission to test API connectivity.'=>'No tienes permiso para probar la conectividad de la API.','Database Options Viewer'=>'Visor de opciones de base de datos','View the raw data stored in WordPress options.'=>'Ver los datos brutos almacenados en las opciones de WordPress.','Select an option...'=>'Selecciona una opción...','Option not found or empty.'=>'Opción no encontrada o vacía.','Quick Actions'=>'Acciones rápidas','Perform debugging actions. Use with caution.'=>'Realizar acciones de depuración. Úsalas con precaución.','Are you sure you want to clear all caches?'=>'¿Estás seguro de que quieres limpiar todas las cachés?','Clear All Caches'=>'Limpiar todas las cachés','Are you sure you want to reset signatures?'=>'¿Estás seguro de que quieres restablecer las firmas?','Reset Signatures'=>'Restablecer firmas','Export Debug Info'=>'Exportar información de depuración','You do not have permission to perform these actions.'=>'No tienes permiso para realizar estas acciones.','Settings saved.'=>'Ajustes guardados.','WPVulnerability cron events have been repaired across the network.'=>'Los eventos cron de WPVulnerability han sido reparados en toda la red.','You do not have permission to access this page.'=>'No tienes permiso para acceder a esta página.','WordPress %1$s has a known vulnerability that may be affecting your installed version.'=>'WordPress %1$s tiene una vulnerabilidad conocida que puede estar afectando a tu versión instalada.','Actively exploited'=>'Activamente explotada','Public exploit'=>'Exploit público','Automatable'=>'Automatizable','References:'=>'Referencias:','Invalid component specified.'=>'Componente especificado no válido.','Version not detected for this component.'=>'Versión no detectada para este componente.','API request successful.'=>'Solicitud a la API correcta.','API returned HTTP code %d.'=>'La API ha devuelto el código HTTP %d.','WPVulnerability Logs'=>'Registros de WPVulnerability','WPVulnerability Log'=>'Registro de WPVulnerability','Low'=>'Baja','Medium'=>'Media','High'=>'Alta','Critical'=>'Crítica','WPVulnerability Shell Logs'=>'Registros de shell de WPVulnerability','WPVulnerability Shell Log'=>'Registro de shell de WPVulnerability','Every week'=>'Cada semana','Every day'=>'Cada día','Invalid request.'=>'Solicitud no válida.','You have unsubscribed from WPVulnerability notifications.'=>'Te has dado de baja de los avisos de WPVulnerability.','Learn more about the WordPress Vulnerability Database API at %2$s'=>'Más información acerca de la WordPress Vulnerability Database API en %2$s','Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings.'=>'¿Quieres dejar de recibir estas alertas? Darse de baja o cambiar la frecuencia de los correos electrónicos a Nunca en los ajustes de WPVulnerability.','No vulnerabilities found'=>'No se han encontrado vulnerabilidades','This is likely a test. The site does not have vulnerabilities.'=>'Es probable que se trate de una prueba. El sitio no tiene vulnerabilidades.','Core vulnerabilities'=>'Vulnerabilidades en el núcleo de WordPress','Plugins vulnerabilities'=>'Vulnerabilidades en plugins','Themes vulnerabilities'=>'Vulnerabilidades en temas','PHP vulnerabilities'=>'Vulnerabilidades de PHP','Apache HTTPD vulnerabilities'=>'Vulnerabilidades de Apache HTTPD','Nginx vulnerabilities'=>'Vulnerabilidades de nginx','MariaDB vulnerabilities'=>'Vulnerabilidades de MariaDB','MySQL vulnerabilities'=>'Vulnerabilidades de MySQL','ImageMagick vulnerabilities'=>'Vulnerabilidades de ImageMagick','curl vulnerabilities'=>'Vulnerabilidades de curl','memcached vulnerabilities'=>'Vulnerabilidades de memcached','Redis vulnerabilities'=>'Vulnerabilidades de Redis','SQLite vulnerabilities'=>'Vulnerabilidades SQLite','Vulnerability found: %s'=>'Vulnerabilidad encontrada: %s','Vulnerability found'=>'Se ha encontrado una vulnerabilidad','%1$s has a known vulnerability that may be affecting your installed version.'=>'%1$s tiene una vulnerabilidad conocida que puede estar afectando a tu versión instalada.','This plugin is closed. Please replace it with another.'=>'Este plugin está cerrado. Por favor, reemplázalo por otro.','This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates.'=>'Esta vulnerabilidad no parece tener parche. Presta atención a las próximas actualizaciones del plugin.','It hasn\'t been updated in over a year.'=>'Hace más de un año que no se actualiza.','It may no longer be available (closed?).'=>'Puede que ya no esté disponible (¿cerrado?).','Last updated on'=>'Última actualización el','Vulnerabilities (%d)'=>'Vulnerabilidades (%d)','%s running'=>'%s corriendo','End of Life'=>'Fin de vida útil','End of life:'=>'Fin de vida útil:','Supported'=>'Con soporte','Plugin'=>'Plugin','Theme'=>'Tema','End of life: %s'=>'Fin de vida útil: %s','EOL'=>'EOL','Network Settings'=>'Ajustes de red','Vulnerabilities'=>'Vulnerabilidades','Every 6 hours'=>'Cada 6 horas','Database updates'=>'Actualizaciones de la base de datos','Log cleanup'=>'Limpieza de registros','Notifications are scheduled, but settings currently disable them. Please review the notifications tab.'=>'Las notificaciones están programadas, pero la configuración las desactiva actualmente. Por favor, revisa la pestaña de notificaciones.','This event should not be scheduled for this site.'=>'Este evento no debería estar programado para este sitio.','Not expected for this site.'=>'No esperado para este sitio.','No instances found.'=>'No se han encontrado instancias.','Scheduled with an unexpected interval.'=>'Programado con un intervalo inesperado.','Multiple instances detected.'=>'Múltiples instancias detectadas.','Scheduled as expected.'=>'Programado como se esperaba.','There aren\'t plugins vulnerabilities'=>'No hay vulnerabilidades en los plugins','Shows possible vulnerabilities that exist in installed plugins.'=>'Muestra posibles vulnerabilidades que existen en los plugins instalados.','There is %d plugin with vulnerabilities'=>'Hay %d plugin con vulnerabilidades' . "\0" . 'Hay %d plugins con vulnerabilidades','We\'ve detected potential vulnerabilities in installed plugins. Please check them and keep them updated.'=>'Hemos detectado posibles vulnerabilidades en los plugins instalados. Por favor, verifícalos y mantenlos actualizados.','Update plugins'=>'Actualizar plugins','There aren\'t themes vulnerabilities'=>'No hay vulnerabilidades en los temas','Shows possible vulnerabilities that exist in installed themes.'=>'Muestra posibles vulnerabilidades que existen en los temas instalados.','There is %d theme with vulnerabilities'=>'Hay %d tema con vulnerabilidades' . "\0" . 'Hay %d temas con vulnerabilidades','We\'ve detected potential vulnerabilities in installed themes. Please check them and keep them updated.'=>'Hemos detectado posibles vulnerabilidades en los temas instalados. Por favor, verifícalos y mantenlos actualizados.','Update themes'=>'Actualizar temas','There aren\'t WordPress vulnerabilities'=>'No hay vulnerabilidades en WordPress','Shows possible vulnerabilities existing in the WordPress core.'=>'Muestra las posibles vulnerabilidades existentes en el núcleo de WordPress.','There is %d core vulnerability'=>'Hay %d vulnerabilidad en el núcleo' . "\0" . 'Hay %d vulnerabilidades en el núcleo','We\'ve detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated.'=>'Hemos detectado posibles vulnerabilidades en esta instalación de WordPress. Por favor, compruébalas y mantén tu instalación actualizada.','Update WordPress'=>'Actualizar WordPress','Nginx'=>'Nginx','Invalid software type'=>'Tipo de software no válido','Error'=>'Error','The specified software type is not valid.'=>'El tipo de software especificado no es válido','There aren\'t %s vulnerabilities'=>'No hay vulnerabilidades de %s','Shows possible vulnerabilities existing in %s.'=>'Muestra posibles vulnerabilidades existentes en %s.','There is %1$d %2$s vulnerability'=>'Hay %d vulnerabilidad de %2$s.' . "\0" . 'Hay %d vulnerabilidades de %2$s.','We\'ve detected potential vulnerabilities in %s. Please check them and keep your installation updated.'=>'Hemos detectado posibles vulnerabilidades en %s. Por favor, compruébalas y mantén actualizada tu instalación.','How to update PHP'=>'Cómo actualizar PHP','WPVulnerability Core'=>'WP Vulnerability - Núcleo','WPVulnerability Themes'=>'WPVulnerability - Temas','WPVulnerability Plugins'=>'WPVulnerability - Plugins','WPVulnerability PHP'=>'WPVulnerability PHP','WPVulnerability Apache HTTPD'=>'WPVulnerability Apache HTTPD','WPVulnerability Nginx'=>'WPVulnerability nginx','WPVulnerability MariaDB'=>'WPVulnerability MariaDB','WPVulnerability MySQL'=>'WPVulnerability MySQL','WPVulnerability ImageMagick'=>'WPVulnerability ImageMagick','WPVulnerability curl'=>'WPVulnerability curl','WPVulnerability memcached'=>'WPVulnerability memcached','WPVulnerability redis'=>'WPVulnerability Redis','WPVulnerability sqlite'=>'WPVulnerability SQLite','This theme is closed. Please replace it with another.'=>'Este tema está cerrado. Por favor, reemplázalo por otro.','This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates.'=>'Esta vulnerabilidad no parece tener parche. Presta atención a las próximas actualizaciones del tema.','This theme has known vulnerabilities that may be affecting your installed version.'=>'Este tema tiene vulnerabilidades conocidas que pueden estar afectando a tu versión instalada.']]; \ No newline at end of file diff --git a/languages/wpvulnerability-es-cl.mo b/languages/wpvulnerability-es-cl.mo new file mode 100644 index 0000000000000000000000000000000000000000..b59ca80b5e580e70593a6edcd3319f5722491c62 GIT binary patch literal 41120 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 literal 0 HcmV?d00001 diff --git a/languages/wpvulnerability-es-cl.po b/languages/wpvulnerability-es-cl.po new file mode 100644 index 0000000..ad807c5 --- /dev/null +++ b/languages/wpvulnerability-es-cl.po @@ -0,0 +1,2206 @@ +msgid "" +msgstr "" +"Project-Id-Version: Plugins - WPVulnerability - Development (trunk)\n" +"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wpvulnerability\n" +"POT-Creation-Date: 2026-05-27T16:32:22+00:00\n" +"PO-Revision-Date: 2026-02-08 02:34:38+0000\n" +"Language: es_CL\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: GlotPress/4.0.3\n" + +#. Plugin Name of the plugin +#: wpvulnerability.php wpvulnerability-admin.php:1782 +#: wpvulnerability-admin.php:1783 wpvulnerability-adminms.php:1945 +#: wpvulnerability-adminms.php:1946 wpvulnerability-notifications.php:105 +msgid "WPVulnerability" +msgstr "WPVulnerability" + +#. Plugin URI of the plugin +#: wpvulnerability.php +msgid "https://www.wpvulnerability.com/plugin/" +msgstr "https://www.wpvulnerability.com/plugin/" + +#. Description of the plugin +#: wpvulnerability.php +msgid "" +"Receive information about possible vulnerabilities in your WordPress from " +"WordPress Vulnerability Database API." +msgstr "" +"Recibe información acerca de posibles vulnerabilidades en tu WordPress desde " +"la WordPress Vulnerability Database API." + +#. Author of the plugin +#: wpvulnerability.php +msgid "ROBOTSTXT" +msgstr "ROBOTSTXT" + +#. Author URI of the plugin +#: wpvulnerability.php +msgid "https://www.robotstxt.es/" +msgstr "https://www.robotstxt.es/" + +#: class-wpvulnerability-cli.php:35 class-wpvulnerability-config-cli.php:32 +msgid "" +"This command requires a WordPress administrator. Run with --" +"user=." +msgstr "" +"Este comando requiere un administrador de WordPress. Ejecuta con --" +"user=." + +#: class-wpvulnerability-cli.php:156 +msgid "No core vulnerabilities found." +msgstr "No se han encontrado vulnerabilidades en el núcleo." + +#: class-wpvulnerability-cli.php:275 +msgid "No plugin vulnerabilities found." +msgstr "No se han encontrado vulnerabilidades en plugins." + +#: class-wpvulnerability-cli.php:393 +msgid "No theme vulnerabilities found." +msgstr "No se han encontrado vulnerabilidades en temas." + +#. translators: %s is the software name (php, apache, nginx, etc.) +#: class-wpvulnerability-cli.php:490 +#, php-format +msgid "No %s vulnerabilities found." +msgstr "No se han encontrado vulnerabilidades de %s." + +#: wpvulnerability-admin.php:63 wpvulnerability-adminms.php:227 +msgid "Data from source has been reloaded." +msgstr "Los datos de origen se han vuelto a cargar." + +#: wpvulnerability-admin.php:65 wpvulnerability-adminms.php:229 +msgid "You do not have permission to reload data." +msgstr "No tienes permiso para recargar datos." + +#: wpvulnerability-admin.php:93 wpvulnerability-adminms.php:255 +msgid "Test email has been sent." +msgstr "El correo electrónico de prueba ha sido enviado." + +#: wpvulnerability-admin.php:95 wpvulnerability-adminms.php:259 +msgid "Test email has failed. Please, check your email settings." +msgstr "" +"El correo electrónico de prueba ha fallado. Por favor, comprueba tus ajustes " +"de correo electrónico." + +#: wpvulnerability-admin.php:98 wpvulnerability-adminms.php:263 +msgid "You do not have permission to send test emails." +msgstr "No tienes permiso para enviar correos electrónicos de prueba." + +#: wpvulnerability-admin.php:113 +msgid "WPVulnerability cron events have been repaired." +msgstr "Los eventos cron de WPVulnerability han sido reparados." + +#: wpvulnerability-admin.php:115 wpvulnerability-adminms.php:279 +msgid "You do not have permission to repair cron events." +msgstr "No tienes permiso para reparar eventos cron." + +#: wpvulnerability-admin.php:127 wpvulnerability-adminms.php:291 +msgid "All logs have been deleted." +msgstr "Todos los registros han sido eliminados." + +#: wpvulnerability-admin.php:129 wpvulnerability-adminms.php:293 +msgid "You do not have permission to delete logs." +msgstr "No tienes permiso para eliminar registros." + +#: wpvulnerability-admin.php:146 +msgid "Uninstall preference saved." +msgstr "Preferencia de desinstalación guardada." + +#: wpvulnerability-admin.php:153 wpvulnerability-adminms.php:316 +msgid "WPVulnerability has been reset to defaults and reloaded." +msgstr "WPVulnerability ha sido restablecido a los valores predeterminados y recargado." + +#: wpvulnerability-admin.php:155 wpvulnerability-adminms.php:318 +msgid "You do not have permission to reset WPVulnerability." +msgstr "No tienes permiso para restablecer WPVulnerability." + +#: wpvulnerability-admin.php:170 wpvulnerability-adminms.php:333 +msgid "All caches have been cleared." +msgstr "Todas las cachés han sido limpiadas." + +#: wpvulnerability-admin.php:172 wpvulnerability-adminms.php:335 +msgid "You do not have permission to clear caches." +msgstr "No tienes permiso para limpiar las cachés." + +#: wpvulnerability-admin.php:187 wpvulnerability-adminms.php:350 +msgid "Plugin and theme signatures have been reset." +msgstr "Las firmas de plugins y temas han sido restablecidas." + +#: wpvulnerability-admin.php:189 wpvulnerability-adminms.php:352 +msgid "You do not have permission to reset signatures." +msgstr "No tienes permiso para restablecer las firmas." + +#: wpvulnerability-admin.php:212 wpvulnerability-adminms.php:375 +msgid "You do not have permission to export debug information." +msgstr "No tienes permiso para exportar información de depuración." + +#: wpvulnerability-admin.php:224 wpvulnerability-adminms.php:387 +msgid "Database update has been executed." +msgstr "La actualización de la base de datos ha sido ejecutada." + +#: wpvulnerability-admin.php:226 wpvulnerability-adminms.php:389 +msgid "You do not have permission to run database updates." +msgstr "No tienes permiso para ejecutar actualizaciones de la base de datos." + +#: wpvulnerability-admin.php:247 wpvulnerability-adminms.php:410 +msgid "Notification has been sent." +msgstr "El aviso ha sido enviado." + +#: wpvulnerability-admin.php:249 wpvulnerability-adminms.php:412 +msgid "Notification sending failed." +msgstr "El envío del aviso ha fallado." + +#: wpvulnerability-admin.php:252 wpvulnerability-adminms.php:415 +msgid "You do not have permission to send notifications." +msgstr "No tienes permiso para enviar avisos." + +#: wpvulnerability-admin.php:266 wpvulnerability-adminms.php:539 +#: wpvulnerability-schedule.php:323 +msgid "Notifications" +msgstr "Avisos" + +#: wpvulnerability-admin.php:269 wpvulnerability-adminms.php:542 +msgid "Analysis" +msgstr "Análisis" + +#: wpvulnerability-admin.php:272 wpvulnerability-adminms.php:545 +msgid "Logs" +msgstr "Registros" + +#: wpvulnerability-admin.php:275 wpvulnerability-adminms.php:548 +#: wpvulnerability-sitehealth.php:25 wpvulnerability-sitehealth.php:77 +#: wpvulnerability-sitehealth.php:129 wpvulnerability-sitehealth.php:210 +msgid "Security" +msgstr "Seguridad" + +#: wpvulnerability-admin.php:278 wpvulnerability-adminms.php:551 +msgid "Tools" +msgstr "Herramientas" + +#: wpvulnerability-admin.php:285 wpvulnerability-adminms.php:558 +msgid "Debug" +msgstr "Depuración" + +#: wpvulnerability-admin.php:290 wpvulnerability-adminms.php:563 +msgid "About" +msgstr "Acerca de" + +#: wpvulnerability-admin.php:427 wpvulnerability-adminms.php:700 +msgid "Notification Settings" +msgstr "Ajustes de notificaciones" + +#: wpvulnerability-admin.php:430 wpvulnerability-adminms.php:703 +msgid "Configure how and when you want to receive vulnerability notifications." +msgstr "Configura cómo y cuándo quieres recibir avisos de vulnerabilidades." + +#: wpvulnerability-admin.php:431 wpvulnerability-adminms.php:704 +msgid "" +"Stay informed about security vulnerabilities in your WordPress installation, " +"plugins, themes, and server software." +msgstr "" +"Mantente informado sobre las vulnerabilidades de seguridad en tu instalación " +"de WordPress, plugins, temas y software del servidor." + +#: wpvulnerability-admin.php:438 wpvulnerability-adminms.php:711 +msgid "Cache Expiration Time" +msgstr "Tiempo de caducidad de la caché" + +#: wpvulnerability-admin.php:440 wpvulnerability-admin.php:814 +#: wpvulnerability-adminms.php:713 wpvulnerability-adminms.php:1087 +msgid "FORCED" +msgstr "FORZADO" + +#: wpvulnerability-admin.php:444 wpvulnerability-adminms.php:717 +msgid "How long to cache vulnerability data before refreshing from the API." +msgstr "Cuánto tiempo almacenar en caché los datos de vulnerabilidades antes de actualizarlos desde la API." + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:453 wpvulnerability-admin.php:1891 +#: wpvulnerability-admin.php:3631 wpvulnerability-adminms.php:726 +#: wpvulnerability-adminms.php:2039 wpvulnerability-adminms.php:3825 +#, php-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d hora" +msgstr[1] "%d horas" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:469 wpvulnerability-adminms.php:742 +#, php-format +msgid "" +"You can force the cache time via wp-config.php constant. Learn more →" +msgstr "" +"Puedes forzar el tiempo de caché mediante la constante en wp-config.php. Más información →" + +#: wpvulnerability-admin.php:481 wpvulnerability-admin.php:3665 +#: wpvulnerability-adminms.php:754 wpvulnerability-adminms.php:3859 +msgid "Notification Frequency" +msgstr "Frecuencia de notificaciones" + +#: wpvulnerability-admin.php:484 wpvulnerability-adminms.php:757 +msgid "Choose how often you want to receive vulnerability notifications." +msgstr "Elige con qué frecuencia quieres recibir avisos de vulnerabilidades." + +#: wpvulnerability-admin.php:489 wpvulnerability-adminms.php:762 +msgid "Never - Disable automatic notifications" +msgstr "Nunca - Desactivar notificaciones automáticas" + +#: wpvulnerability-admin.php:493 wpvulnerability-adminms.php:766 +msgid "Daily - Receive notifications every day" +msgstr "Diariamente - Recibir notificaciones cada día" + +#: wpvulnerability-admin.php:497 wpvulnerability-adminms.php:770 +msgid "Weekly - Receive notifications once a week" +msgstr "Semanalmente - Recibir notificaciones una vez a la semana" + +#: wpvulnerability-admin.php:503 wpvulnerability-adminms.php:776 +msgid "Day:" +msgstr "Día:" + +#: wpvulnerability-admin.php:505 wpvulnerability-admin.php:1955 +#: wpvulnerability-adminms.php:778 wpvulnerability-adminms.php:2115 +msgid "Monday" +msgstr "Lunes" + +#: wpvulnerability-admin.php:506 wpvulnerability-admin.php:1956 +#: wpvulnerability-adminms.php:779 wpvulnerability-adminms.php:2116 +msgid "Tuesday" +msgstr "Martes" + +#: wpvulnerability-admin.php:507 wpvulnerability-admin.php:1957 +#: wpvulnerability-adminms.php:780 wpvulnerability-adminms.php:2117 +msgid "Wednesday" +msgstr "Miércoles" + +#: wpvulnerability-admin.php:508 wpvulnerability-admin.php:1958 +#: wpvulnerability-adminms.php:781 wpvulnerability-adminms.php:2118 +msgid "Thursday" +msgstr "Jueves" + +#: wpvulnerability-admin.php:509 wpvulnerability-admin.php:1959 +#: wpvulnerability-adminms.php:782 wpvulnerability-adminms.php:2119 +msgid "Friday" +msgstr "Viernes" + +#: wpvulnerability-admin.php:510 wpvulnerability-admin.php:1960 +#: wpvulnerability-adminms.php:783 wpvulnerability-adminms.php:2120 +msgid "Saturday" +msgstr "Sábado" + +#: wpvulnerability-admin.php:511 wpvulnerability-admin.php:1961 +#: wpvulnerability-adminms.php:784 wpvulnerability-adminms.php:2121 +msgid "Sunday" +msgstr "Domingo" + +#: wpvulnerability-admin.php:515 wpvulnerability-adminms.php:788 +msgid "Time:" +msgstr "Hora:" + +#: wpvulnerability-admin.php:519 wpvulnerability-adminms.php:792 +msgid "(24-hour format, server timezone)" +msgstr "(formato de 24 horas, zona horaria del servidor)" + +#: wpvulnerability-admin.php:528 wpvulnerability-adminms.php:801 +msgid "Notification Channels" +msgstr "Canales de notificación" + +#: wpvulnerability-admin.php:531 wpvulnerability-adminms.php:804 +msgid "Select where you want to receive notifications." +msgstr "Selecciona dónde quieres recibir las notificaciones." + +#: wpvulnerability-admin.php:536 wpvulnerability-admin.php:2011 +#: wpvulnerability-adminms.php:809 wpvulnerability-adminms.php:2169 +msgid "Email" +msgstr "Correo electrónico" + +#: wpvulnerability-admin.php:539 wpvulnerability-adminms.php:812 +msgid "Email Addresses (separated by commas):" +msgstr "Direcciones de correo electrónico (separadas por comas):" + +#: wpvulnerability-admin.php:541 wpvulnerability-adminms.php:814 +msgid "Default:" +msgstr "Por defecto:" + +#: wpvulnerability-admin.php:546 wpvulnerability-admin.php:2016 +#: wpvulnerability-adminms.php:819 wpvulnerability-adminms.php:2174 +msgid "Slack" +msgstr "Slack" + +#: wpvulnerability-admin.php:549 wpvulnerability-adminms.php:822 +msgid "Slack Webhook URL:" +msgstr "URL del webhook de Slack:" + +#. translators: %s: Slack documentation URL +#: wpvulnerability-admin.php:555 wpvulnerability-adminms.php:828 +#, php-format +msgid "" +"Learn how to " +"create a Slack incoming webhook →" +msgstr "" +"Aprende a " +"crear un webhook entrante de Slack →" + +#: wpvulnerability-admin.php:564 wpvulnerability-admin.php:2021 +#: wpvulnerability-adminms.php:837 wpvulnerability-adminms.php:2179 +msgid "Microsoft Teams" +msgstr "Microsoft Teams" + +#: wpvulnerability-admin.php:567 wpvulnerability-adminms.php:840 +msgid "Teams Webhook URL:" +msgstr "URL del webhook de Teams:" + +#. translators: %s: Microsoft Teams documentation URL +#: wpvulnerability-admin.php:573 wpvulnerability-adminms.php:846 +#, php-format +msgid "" +"Learn how to " +"create a Teams incoming webhook →" +msgstr "" +"Aprende a " +"crear un webhook entrante de Teams →" + +#: wpvulnerability-admin.php:582 wpvulnerability-adminms.php:855 +msgid "Discord" +msgstr "Discord" + +#: wpvulnerability-admin.php:585 wpvulnerability-adminms.php:858 +msgid "Discord Webhook URL:" +msgstr "URL del webhook de Discord:" + +#. translators: %s: Discord documentation URL +#: wpvulnerability-admin.php:591 wpvulnerability-adminms.php:864 +#, php-format +msgid "" +"Learn how to " +"create a Discord webhook →" +msgstr "" +"Aprende a " +"crear un webhook de Discord →" + +#: wpvulnerability-admin.php:600 wpvulnerability-adminms.php:873 +msgid "Telegram" +msgstr "Telegram" + +#: wpvulnerability-admin.php:603 wpvulnerability-adminms.php:876 +msgid "Telegram Bot Token:" +msgstr "Token del bot de Telegram:" + +#: wpvulnerability-admin.php:605 wpvulnerability-adminms.php:878 +msgid "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "Formato: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:607 wpvulnerability-adminms.php:880 +msgid "Telegram Chat ID:" +msgstr "ID de chat de Telegram:" + +#. translators: %s: Telegram documentation URL +#: wpvulnerability-admin.php:613 wpvulnerability-adminms.php:886 +#, php-format +msgid "" +"Learn how to " +"create a Telegram bot and get Chat ID →" +msgstr "" +"Aprende a " +"crear un bot de Telegram y obtener el ID de chat →" + +#: wpvulnerability-admin.php:623 wpvulnerability-adminms.php:896 +msgid "Save Notification Settings" +msgstr "Guardar ajustes de notificaciones" + +#: wpvulnerability-admin.php:700 wpvulnerability-admin.php:2552 +#: wpvulnerability-adminms.php:973 wpvulnerability-adminms.php:2459 +msgid "WordPress Components" +msgstr "Componentes de WordPress" + +#: wpvulnerability-admin.php:703 wpvulnerability-admin.php:2560 +#: wpvulnerability-adminms.php:976 wpvulnerability-adminms.php:2467 +msgid "WordPress Core" +msgstr "Núcleo de WordPress" + +#: wpvulnerability-admin.php:707 wpvulnerability-admin.php:1472 +#: wpvulnerability-admin.php:1573 wpvulnerability-admin.php:2109 +#: wpvulnerability-admin.php:2571 wpvulnerability-adminms.php:980 +#: wpvulnerability-adminms.php:1744 wpvulnerability-adminms.php:1843 +#: wpvulnerability-adminms.php:2266 wpvulnerability-adminms.php:2478 +msgid "Plugins" +msgstr "Plugins" + +#: wpvulnerability-admin.php:711 wpvulnerability-admin.php:1473 +#: wpvulnerability-admin.php:1574 wpvulnerability-admin.php:2114 +#: wpvulnerability-admin.php:2587 wpvulnerability-adminms.php:984 +#: wpvulnerability-adminms.php:1745 wpvulnerability-adminms.php:1844 +#: wpvulnerability-adminms.php:2271 wpvulnerability-adminms.php:2494 +msgid "Themes" +msgstr "Temas" + +#: wpvulnerability-admin.php:717 wpvulnerability-adminms.php:990 +msgid "Software & Languages" +msgstr "Software e idiomas" + +#: wpvulnerability-admin.php:720 wpvulnerability-admin.php:1474 +#: wpvulnerability-admin.php:2119 wpvulnerability-adminms.php:993 +#: wpvulnerability-adminms.php:1746 wpvulnerability-adminms.php:2276 +#: wpvulnerability-sitehealth.php:178 +msgid "PHP" +msgstr "PHP" + +#: wpvulnerability-admin.php:726 wpvulnerability-adminms.php:999 +msgid "Web Servers" +msgstr "Servidores web" + +#: wpvulnerability-admin.php:729 wpvulnerability-admin.php:1475 +#: wpvulnerability-admin.php:2124 wpvulnerability-adminms.php:1002 +#: wpvulnerability-adminms.php:1747 wpvulnerability-adminms.php:2281 +#: wpvulnerability-sitehealth.php:179 +msgid "Apache HTTPD" +msgstr "Apache HTTPD" + +#: wpvulnerability-admin.php:733 wpvulnerability-admin.php:1476 +#: wpvulnerability-admin.php:2129 wpvulnerability-adminms.php:1006 +#: wpvulnerability-adminms.php:1748 wpvulnerability-adminms.php:2286 +msgid "nginx" +msgstr "nginx" + +#: wpvulnerability-admin.php:739 wpvulnerability-adminms.php:1012 +msgid "Databases" +msgstr "Bases de datos" + +#: wpvulnerability-admin.php:742 wpvulnerability-admin.php:1477 +#: wpvulnerability-admin.php:2134 wpvulnerability-adminms.php:1015 +#: wpvulnerability-adminms.php:1749 wpvulnerability-adminms.php:2291 +#: wpvulnerability-sitehealth.php:181 +msgid "MariaDB" +msgstr "MariaDB" + +#: wpvulnerability-admin.php:746 wpvulnerability-admin.php:1478 +#: wpvulnerability-admin.php:2139 wpvulnerability-adminms.php:1019 +#: wpvulnerability-adminms.php:1750 wpvulnerability-adminms.php:2296 +#: wpvulnerability-sitehealth.php:182 +msgid "MySQL" +msgstr "MySQL" + +#: wpvulnerability-admin.php:750 wpvulnerability-admin.php:1483 +#: wpvulnerability-admin.php:2164 wpvulnerability-admin.php:3104 +#: wpvulnerability-adminms.php:1023 wpvulnerability-adminms.php:1755 +#: wpvulnerability-adminms.php:2321 wpvulnerability-adminms.php:3281 +msgid "SQLite" +msgstr "SQLite" + +#: wpvulnerability-admin.php:756 wpvulnerability-adminms.php:1029 +msgid "Additional Tools" +msgstr "Herramientas adicionales" + +#: wpvulnerability-admin.php:759 wpvulnerability-admin.php:1479 +#: wpvulnerability-admin.php:2144 wpvulnerability-admin.php:3101 +#: wpvulnerability-adminms.php:1032 wpvulnerability-adminms.php:1751 +#: wpvulnerability-adminms.php:2301 wpvulnerability-adminms.php:3278 +#: wpvulnerability-sitehealth.php:183 +msgid "ImageMagick" +msgstr "ImageMagick" + +#: wpvulnerability-admin.php:763 wpvulnerability-admin.php:1480 +#: wpvulnerability-admin.php:2149 wpvulnerability-adminms.php:1036 +#: wpvulnerability-adminms.php:1752 wpvulnerability-adminms.php:2306 +#: wpvulnerability-sitehealth.php:184 +msgid "curl" +msgstr "curl" + +#: wpvulnerability-admin.php:767 wpvulnerability-admin.php:1481 +#: wpvulnerability-admin.php:2154 wpvulnerability-adminms.php:1040 +#: wpvulnerability-adminms.php:1753 wpvulnerability-adminms.php:2311 +msgid "memcached" +msgstr "memcached" + +#: wpvulnerability-admin.php:771 wpvulnerability-admin.php:1482 +#: wpvulnerability-admin.php:2159 wpvulnerability-admin.php:3102 +#: wpvulnerability-adminms.php:1044 wpvulnerability-adminms.php:1754 +#: wpvulnerability-adminms.php:2316 wpvulnerability-adminms.php:3279 +msgid "Redis" +msgstr "Redis" + +#: wpvulnerability-admin.php:784 wpvulnerability-adminms.php:1057 +msgid "Component Analysis Settings" +msgstr "Ajustes de análisis de componentes" + +#: wpvulnerability-admin.php:787 wpvulnerability-adminms.php:1060 +msgid "Enable or disable vulnerability analysis for specific components." +msgstr "Activa o desactiva el análisis de vulnerabilidades para componentes específicos." + +#: wpvulnerability-admin.php:788 wpvulnerability-adminms.php:1061 +msgid "" +"Check the components you want to HIDE from vulnerability scans and reports. " +"Unchecked components will be actively analyzed. Components with active " +"analysis are shown in green, hidden components in red." +msgstr "" +"Marca los componentes que quieres OCULTAR de los análisis y los informes de " +"vulnerabilidades. Los componentes no marcados se analizarán activamente. Los " +"componentes con análisis activo se muestran en verde, los ocultos en rojo." + +#: wpvulnerability-admin.php:820 wpvulnerability-adminms.php:1093 +msgid "Hidden (forced by constant)" +msgstr "Oculto (forzado por constante)" + +#: wpvulnerability-admin.php:823 wpvulnerability-adminms.php:1096 +msgid "🔴 Analysis disabled" +msgstr "🔴 Análisis desactivado" + +#: wpvulnerability-admin.php:826 wpvulnerability-adminms.php:1099 +msgid "🟢 Analysis active" +msgstr "🟢 Análisis activo" + +#: wpvulnerability-admin.php:848 wpvulnerability-adminms.php:1121 +msgid "Tip:" +msgstr "Consejo:" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:852 wpvulnerability-adminms.php:1125 +#, php-format +msgid "" +"You can force-disable components via wp-config.php constants. Learn more about force-hiding " +"checks →" +msgstr "" +"Puedes forzar la desactivación de componentes mediante constantes en wp-config.php. Más información sobre cómo " +"forzar la ocultación de verificaciones →" + +#: wpvulnerability-admin.php:860 wpvulnerability-adminms.php:1133 +msgid "Save Analysis Settings" +msgstr "Guardar ajustes de análisis" + +#: wpvulnerability-admin.php:920 wpvulnerability-adminms.php:1193 +msgid "« Previous" +msgstr "« Anterior" + +#: wpvulnerability-admin.php:921 wpvulnerability-adminms.php:1194 +msgid "Next »" +msgstr "Siguiente »" + +#: wpvulnerability-admin.php:932 wpvulnerability-adminms.php:1205 +msgid "Log entry not found or has been removed." +msgstr "Entrada de registro no encontrada o eliminada." + +#: wpvulnerability-admin.php:935 wpvulnerability-adminms.php:1208 +msgid "Unable to load the requested log entry." +msgstr "No se ha podido cargar la entrada de registro solicitada." + +#: wpvulnerability-admin.php:945 wpvulnerability-adminms.php:1218 +msgid "Log Configuration" +msgstr "Configuración de registros" + +#: wpvulnerability-admin.php:950 wpvulnerability-adminms.php:1223 +msgid "Total Logs" +msgstr "Total de registros" + +#: wpvulnerability-admin.php:954 wpvulnerability-adminms.php:1227 +msgid "Retention Period" +msgstr "Periodo de retención" + +#: wpvulnerability-admin.php:959 wpvulnerability-admin.php:1301 +#: wpvulnerability-admin.php:3029 wpvulnerability-admin.php:3043 +#: wpvulnerability-admin.php:3475 wpvulnerability-admin.php:3483 +#: wpvulnerability-adminms.php:1232 wpvulnerability-adminms.php:1574 +#: wpvulnerability-adminms.php:3206 wpvulnerability-adminms.php:3220 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Disabled" +msgstr "Desactivado" + +#. translators: %d: Number of days. +#. translators: %d: number of days +#: wpvulnerability-admin.php:962 wpvulnerability-admin.php:984 +#: wpvulnerability-admin.php:3641 wpvulnerability-adminms.php:1235 +#: wpvulnerability-adminms.php:1257 wpvulnerability-adminms.php:3835 +#, php-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d día" +msgstr[1] "%d días" + +#: wpvulnerability-admin.php:975 wpvulnerability-adminms.php:1248 +msgid "Log Retention Period" +msgstr "Periodo de retención de registros" + +#: wpvulnerability-admin.php:981 wpvulnerability-adminms.php:1254 +msgid "None (Disabled)" +msgstr "Ninguno (desactivado)" + +#: wpvulnerability-admin.php:1004 wpvulnerability-adminms.php:1277 +msgid "" +"This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant." +msgstr "" +"Este valor se aplica mediante la constante " +"WPVULNERABILITY_LOG_RETENTION_DAYS." + +#: wpvulnerability-admin.php:1009 wpvulnerability-adminms.php:1282 +msgid "" +"Choose how long WPVulnerability should keep API response logs. Older logs " +"are automatically deleted." +msgstr "" +"Elige cuánto tiempo debe conservar WPVulnerability los registros de respuestas " +"de la API. Los registros más antiguos se eliminan automáticamente." + +#: wpvulnerability-admin.php:1013 wpvulnerability-adminms.php:1286 +msgid "Save Configuration" +msgstr "Guardar configuración" + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "Log retention is currently disabled." +msgstr "La retención de registros está actualmente desactivada." + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "API responses are not being saved." +msgstr "Las respuestas de la API no se están guardando." + +#: wpvulnerability-admin.php:1031 wpvulnerability-adminms.php:1304 +msgid "Log Details" +msgstr "Detalles del registro" + +#: wpvulnerability-admin.php:1035 wpvulnerability-admin.php:1104 +#: wpvulnerability-adminms.php:1308 wpvulnerability-adminms.php:1377 +msgid "Date" +msgstr "Fecha" + +#: wpvulnerability-admin.php:1039 wpvulnerability-admin.php:1105 +#: wpvulnerability-adminms.php:1312 wpvulnerability-adminms.php:1378 +msgid "API Endpoint" +msgstr "Endpoint de la API" + +#: wpvulnerability-admin.php:1044 wpvulnerability-adminms.php:1317 +msgid "API Response" +msgstr "Respuesta de la API" + +#: wpvulnerability-admin.php:1049 wpvulnerability-adminms.php:1322 +msgid "Back to Logs" +msgstr "Volver a los registros" + +#: wpvulnerability-admin.php:1058 wpvulnerability-adminms.php:1331 +msgid "No logs available" +msgstr "No hay registros disponibles" + +#: wpvulnerability-admin.php:1059 wpvulnerability-adminms.php:1332 +msgid "API response logs will appear here once the vulnerability scanner runs." +msgstr "Los registros de respuestas de la API aparecerán aquí una vez que el escáner de vulnerabilidades se ejecute." + +#: wpvulnerability-admin.php:1063 wpvulnerability-adminms.php:1336 +msgid "API Response Logs" +msgstr "Registros de respuestas de la API" + +#: wpvulnerability-admin.php:1073 wpvulnerability-adminms.php:1346 +msgid "Show:" +msgstr "Mostrar:" + +#: wpvulnerability-admin.php:1082 wpvulnerability-adminms.php:1355 +msgid "Apply" +msgstr "Aplicar" + +#. translators: 1: first item, 2: last item, 3: total items +#: wpvulnerability-admin.php:1090 wpvulnerability-adminms.php:1363 +#, php-format +msgid "Showing %1$s–%2$s of %3$s" +msgstr "Mostrando %1$s–%2$s de %3$s" + +#: wpvulnerability-admin.php:1106 wpvulnerability-adminms.php:1379 +msgid "Actions" +msgstr "Acciones" + +#: wpvulnerability-admin.php:1133 wpvulnerability-admin.php:3957 +#: wpvulnerability-adminms.php:1406 wpvulnerability-adminms.php:4151 +msgid "View" +msgstr "Ver" + +#: wpvulnerability-admin.php:1150 wpvulnerability-adminms.php:1423 +msgid "Danger Zone" +msgstr "Zona de peligro" + +#: wpvulnerability-admin.php:1152 wpvulnerability-adminms.php:1425 +msgid "Permanently delete all API response logs. This action cannot be undone." +msgstr "Eliminar permanentemente todos los registros de respuestas de la API. Esta acción no se puede deshacer." + +#: wpvulnerability-admin.php:1154 wpvulnerability-adminms.php:1427 +msgid "Are you sure you want to delete all logs? This action cannot be undone." +msgstr "¿Estás seguro de que quieres eliminar todos los registros? Esta acción no se puede deshacer." + +#: wpvulnerability-admin.php:1157 wpvulnerability-adminms.php:1430 +msgid "Delete All Logs" +msgstr "Eliminar todos los registros" + +#: wpvulnerability-admin.php:1201 wpvulnerability-adminms.php:1474 +msgid "Reload Data from API" +msgstr "Recargar datos desde la API" + +#: wpvulnerability-admin.php:1204 wpvulnerability-adminms.php:1477 +msgid "" +"Reload all Core, Plugins, Themes and other components information directly " +"from the API to have updated data. This will clear the cache and fetch fresh " +"vulnerability information." +msgstr "" +"Recarga toda la información del Núcleo, Plugins, Temas y otros componentes " +"directamente desde la API para tener datos actualizados. Esto limpiará la " +"caché y obtendrá información de vulnerabilidades actualizada." + +#: wpvulnerability-admin.php:1209 wpvulnerability-adminms.php:1482 +msgid "Reload Data" +msgstr "Recargar datos" + +#: wpvulnerability-admin.php:1218 wpvulnerability-adminms.php:1491 +msgid "Test Email Notifications" +msgstr "Probar notificaciones por correo electrónico" + +#: wpvulnerability-admin.php:1221 wpvulnerability-adminms.php:1494 +msgid "" +"Send a test email notification with current vulnerability data to verify " +"your email configuration is working correctly." +msgstr "" +"Envía un correo electrónico de prueba con los datos de vulnerabilidades " +"actuales para verificar que la configuración del correo electrónico " +"funciona correctamente." + +#: wpvulnerability-admin.php:1231 wpvulnerability-adminms.php:1504 +msgid "From address (configured via constant):" +msgstr "Dirección de origen (configurada mediante constante):" + +#: wpvulnerability-admin.php:1243 wpvulnerability-adminms.php:1516 +msgid "From address (default):" +msgstr "Dirección de origen (por defecto):" + +#: wpvulnerability-admin.php:1252 wpvulnerability-adminms.php:1525 +msgid "Learn how to customize the email sender address →" +msgstr "Aprende a personalizar la dirección del remitente del correo electrónico →" + +#: wpvulnerability-admin.php:1258 wpvulnerability-adminms.php:1531 +msgid "Send Test Email" +msgstr "Enviar correo electrónico de prueba" + +#: wpvulnerability-admin.php:1267 wpvulnerability-adminms.php:1540 +msgid "WP-Cron Status" +msgstr "Estado de WP-Cron" + +#: wpvulnerability-admin.php:1270 wpvulnerability-adminms.php:1543 +msgid "" +"View and manage WP-Cron scheduled events. Compare expected schedules with " +"actual cron jobs to ensure automated tasks are running correctly." +msgstr "" +"Ver y gestionar los eventos programados de WP-Cron. Compara los horarios " +"esperados con los trabajos cron reales para asegurarte de que las tareas " +"automatizadas se ejecutan correctamente." + +#: wpvulnerability-admin.php:1275 wpvulnerability-adminms.php:1548 +msgid "No cron data available." +msgstr "No hay datos de cron disponibles." + +#: wpvulnerability-admin.php:1281 wpvulnerability-adminms.php:1554 +msgid "Hook" +msgstr "Hook" + +#: wpvulnerability-admin.php:1282 wpvulnerability-adminms.php:1555 +msgid "Expected" +msgstr "Esperado" + +#: wpvulnerability-admin.php:1283 wpvulnerability-adminms.php:1556 +msgid "Found" +msgstr "Encontrado" + +#: wpvulnerability-admin.php:1284 wpvulnerability-adminms.php:1557 +msgid "Next Run" +msgstr "Próxima ejecución" + +#: wpvulnerability-admin.php:1285 wpvulnerability-admin.php:3236 +#: wpvulnerability-admin.php:3559 wpvulnerability-adminms.php:1558 +#: wpvulnerability-adminms.php:3413 wpvulnerability-adminms.php:3753 +msgid "Status" +msgstr "Estado" + +#: wpvulnerability-admin.php:1299 wpvulnerability-adminms.php:1572 +msgid "Not expected" +msgstr "No esperado" + +#: wpvulnerability-admin.php:1321 wpvulnerability-adminms.php:1594 +#: wpvulnerability-general.php:1871 wpvulnerability-general.php:1872 +msgid "None" +msgstr "Ninguna" + +#: wpvulnerability-admin.php:1356 wpvulnerability-adminms.php:1629 +msgid "OK" +msgstr "OK" + +#: wpvulnerability-admin.php:1366 wpvulnerability-adminms.php:1639 +msgid "⚠️ Unexpected WPVulnerability Events" +msgstr "⚠️ Eventos inesperados de WPVulnerability" + +#: wpvulnerability-admin.php:1383 wpvulnerability-adminms.php:1656 +msgid "No interval" +msgstr "Sin intervalo" + +#: wpvulnerability-admin.php:1390 wpvulnerability-adminms.php:1663 +msgid "Next:" +msgstr "Siguiente:" + +#: wpvulnerability-admin.php:1400 wpvulnerability-adminms.php:1673 +msgid "Repair Cron Events" +msgstr "Reparar eventos cron" + +#: wpvulnerability-admin.php:1408 wpvulnerability-adminms.php:1681 +msgid "Uninstall Data" +msgstr "Datos de desinstalación" + +#: wpvulnerability-admin.php:1410 wpvulnerability-adminms.php:1683 +msgid "" +"By default, all plugin data is preserved when WPVulnerability is deleted. " +"Enable the option below only if you want all options, logs, and cached data " +"permanently removed on uninstall." +msgstr "" +"Por defecto, todos los datos del plugin se conservan cuando se elimina " +"WPVulnerability. Activa la opción a continuación solo si quieres que todas " +"las opciones, registros y datos en caché se eliminen permanentemente al " +"desinstalar." + +#: wpvulnerability-admin.php:1420 wpvulnerability-adminms.php:1693 +msgid "Delete all plugin data on uninstall" +msgstr "Eliminar todos los datos del plugin al desinstalar" + +#: wpvulnerability-admin.php:1423 wpvulnerability-adminms.php:1696 +msgid "" +"Default: unchecked (data preserved). Check only if you want a clean removal." +msgstr "" +"Por defecto: sin marcar (datos conservados). Marca solo si quieres una eliminación limpia." + +#: wpvulnerability-admin.php:1425 wpvulnerability-adminms.php:1698 +msgid "Save preference" +msgstr "Guardar preferencia" + +#: wpvulnerability-admin.php:1432 wpvulnerability-adminms.php:1705 +msgid "Reset WPVulnerability" +msgstr "Restablecer WPVulnerability" + +#: wpvulnerability-admin.php:1434 wpvulnerability-adminms.php:1707 +msgid "" +"Delete all WPVulnerability settings, cached data, logs, and scheduled " +"events, then restore defaults and reload data from the API." +msgstr "" +"Elimina todos los ajustes de WPVulnerability, datos en caché, registros y " +"eventos programados, y luego restaura los valores predeterminados y recarga " +"los datos desde la API." + +#: wpvulnerability-admin.php:1436 wpvulnerability-adminms.php:1709 +msgid "This action cannot be undone." +msgstr "Esta acción no se puede deshacer." + +#: wpvulnerability-admin.php:1438 wpvulnerability-adminms.php:1711 +msgid "" +"Are you sure you want to reset all WPVulnerability data? This action cannot " +"be undone." +msgstr "" +"¿Estás seguro de que quieres restablecer todos los datos de WPVulnerability? " +"Esta acción no se puede deshacer." + +#: wpvulnerability-admin.php:1441 wpvulnerability-adminms.php:1713 +msgid "Reset Plugin" +msgstr "Restablecer plugin" + +#: wpvulnerability-admin.php:1468 wpvulnerability-adminms.php:1740 +msgid "Vulnerability Database Statistics" +msgstr "Estadísticas de la base de datos de vulnerabilidades" + +#. translators: number of vulnerabilities. +#: wpvulnerability-admin.php:1510 wpvulnerability-adminms.php:1782 +#, php-format +msgid "%s vulnerability" +msgid_plural "%s vulnerabilities" +msgstr[0] "%s vulnerabilidad" +msgstr[1] "%s vulnerabilidades" + +#. translators: number of products. +#: wpvulnerability-admin.php:1520 wpvulnerability-adminms.php:1792 +#, php-format +msgid "(%s product)" +msgid_plural "(%s products)" +msgstr[0] "(%s producto)" +msgstr[1] "(%s productos)" + +#: wpvulnerability-admin.php:1527 wpvulnerability-adminms.php:1799 +msgid "No data" +msgstr "Sin datos" + +#. translators: date of last update. +#: wpvulnerability-admin.php:1544 wpvulnerability-adminms.php:1814 +#, php-format +msgid "Database last updated: %s" +msgstr "Base de datos actualizada por última vez: %s" + +#: wpvulnerability-admin.php:1566 wpvulnerability-adminms.php:1836 +msgid "Intelligence Sources" +msgstr "Fuentes de inteligencia" + +#: wpvulnerability-admin.php:1567 wpvulnerability-adminms.php:1837 +msgid "Number of vulnerabilities contributed by each intelligence source." +msgstr "Número de vulnerabilidades aportadas por cada fuente de inteligencia." + +#: wpvulnerability-admin.php:1571 wpvulnerability-adminms.php:1841 +msgid "Source" +msgstr "Fuente" + +#: wpvulnerability-admin.php:1572 wpvulnerability-admin.php:2104 +#: wpvulnerability-adminms.php:1842 wpvulnerability-adminms.php:2261 +msgid "Core" +msgstr "Núcleo" + +#: wpvulnerability-admin.php:1603 wpvulnerability-adminms.php:1873 +msgid "Sponsors" +msgstr "Patrocinadores" + +#: wpvulnerability-admin.php:1626 wpvulnerability-adminms.php:1896 +msgid "No sponsor data available." +msgstr "No hay datos de patrocinadores disponibles." + +#: wpvulnerability-admin.php:1633 wpvulnerability-adminms.php:1903 +msgid "Contributors" +msgstr "Colaboradores" + +#: wpvulnerability-admin.php:1656 wpvulnerability-adminms.php:1926 +msgid "No contributor data available." +msgstr "No hay datos de colaboradores disponibles." + +#: wpvulnerability-admin.php:1674 wpvulnerability-adminms.php:432 +msgid "You do not have sufficient permissions to access this page." +msgstr "No tienes permisos suficientes para acceder a esta página." + +#: wpvulnerability-admin.php:1684 wpvulnerability-adminms.php:441 +msgid "WPVulnerability settings" +msgstr "Ajustes de WPVulnerability" + +#: wpvulnerability-admin.php:1801 wpvulnerability-adminms.php:1963 +msgid "Configure and save these settings to receive notifications." +msgstr "Configura y guarda estos ajustes para recibir notificaciones." + +#: wpvulnerability-admin.php:1814 wpvulnerability-adminms.php:2071 +msgid "Configure and save these settings to hide vulnerabilities." +msgstr "Establece y guarda estos ajustes para ocultar vulnerabilidades." + +#: wpvulnerability-admin.php:1845 wpvulnerability-adminms.php:1993 +msgid "Default administrator email" +msgstr "Correo electrónico del administrador por defecto" + +#: wpvulnerability-admin.php:1909 wpvulnerability-adminms.php:2057 +msgid "Read more if you want to force the cache time." +msgstr "Lee más si quieres forzar el tiempo de caché" + +#: wpvulnerability-admin.php:1939 wpvulnerability-adminms.php:2099 +msgid "Never" +msgstr "Nunca" + +#: wpvulnerability-admin.php:1944 wpvulnerability-adminms.php:2104 +msgid "Daily" +msgstr "Diariamente" + +#: wpvulnerability-admin.php:1949 wpvulnerability-adminms.php:2109 +msgid "Weekly" +msgstr "Semanalmente" + +#: wpvulnerability-admin.php:1953 wpvulnerability-adminms.php:2113 +msgid "Day" +msgstr "Día" + +#: wpvulnerability-admin.php:1966 wpvulnerability-adminms.php:2126 +msgid "Hour" +msgstr "Hora" + +#: wpvulnerability-admin.php:1968 wpvulnerability-adminms.php:2128 +msgid "Minute" +msgstr "Minuto" + +#: wpvulnerability-admin.php:2166 wpvulnerability-adminms.php:2323 +msgid "Read more about how to force the deactivation of an item." +msgstr "Lee más acerca de cómo forzar la desactivación de un elemento." + +#: wpvulnerability-admin.php:2292 wpvulnerability-adminms.php:2870 +msgid "" +"Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com" +msgstr "" +"URL de webhook de Slack no válida. Debe ser una URL HTTPS válida de hooks.slack.com" + +#: wpvulnerability-admin.php:2315 wpvulnerability-adminms.php:2893 +msgid "" +"Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office." +"com, office365.com, or api.hooks.microsoft.com" +msgstr "" +"URL de webhook de Microsoft Teams no válida. Debe ser una URL HTTPS válida de office." +"com, office365.com o api.hooks.microsoft.com" + +#: wpvulnerability-admin.php:2338 wpvulnerability-adminms.php:2916 +msgid "" +"Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or " +"discordapp.com" +msgstr "" +"URL de webhook de Discord no válida. Debe ser una URL HTTPS válida de discord.com o " +"discordapp.com" + +#: wpvulnerability-admin.php:2357 wpvulnerability-adminms.php:2935 +msgid "" +"Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-" +"zyx57W2v1u123ew11" +msgstr "" +"Formato de token de bot de Telegram no válido. Debe ser similar a: 123456:ABC-DEF1234ghIkl-" +"zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:2493 wpvulnerability-adminms.php:2400 +msgid "All Clear" +msgstr "Todo en orden" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2503 wpvulnerability-adminms.php:2410 +#, php-format +msgid "%d Critical Issue Found" +msgid_plural "%d Critical Issues Found" +msgstr[0] "%d problema crítico encontrado" +msgstr[1] "%d problemas críticos encontrados" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2508 wpvulnerability-adminms.php:2415 +#, php-format +msgid "%d Issue Found" +msgid_plural "%d Issues Found" +msgstr[0] "%d problema encontrado" +msgstr[1] "%d problemas encontrados" + +#: wpvulnerability-admin.php:2515 wpvulnerability-adminms.php:2422 +msgid "Never checked" +msgstr "Nunca verificado" + +#. translators: %d: number of minutes +#: wpvulnerability-admin.php:2523 wpvulnerability-adminms.php:2430 +#, php-format +msgid "%d minute ago" +msgid_plural "%d minutes ago" +msgstr[0] "hace %d minuto" +msgstr[1] "hace %d minutos" + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:2527 wpvulnerability-adminms.php:2434 +#, php-format +msgid "%d hour ago" +msgid_plural "%d hours ago" +msgstr[0] "hace %d hora" +msgstr[1] "hace %d horas" + +#. translators: %s: time since last check +#: wpvulnerability-admin.php:2539 wpvulnerability-adminms.php:2446 +#, php-format +msgid "Last checked: %s" +msgstr "Última comprobación: %s" + +#: wpvulnerability-admin.php:2540 wpvulnerability-adminms.php:2447 +msgid "Refresh Now" +msgstr "Actualizar ahora" + +#: wpvulnerability-admin.php:2547 wpvulnerability-adminms.php:2454 +msgid "No vulnerabilities detected" +msgstr "No se han detectado vulnerabilidades" + +#: wpvulnerability-admin.php:2548 wpvulnerability-adminms.php:2455 +msgid "Your site is up to date and secure" +msgstr "Tu sitio está actualizado y seguro" + +#: wpvulnerability-admin.php:2616 wpvulnerability-adminms.php:2523 +msgid "Server Software" +msgstr "Software del servidor" + +#: wpvulnerability-admin.php:2829 wpvulnerability-adminms.php:2736 +msgid "Site Health" +msgstr "Salud del sitio" + +#: wpvulnerability-admin.php:2831 wpvulnerability-adminms.php:2738 +#: wpvulnerability-run.php:33 +msgid "Settings" +msgstr "Ajustes" + +#: wpvulnerability-admin.php:2846 wpvulnerability-adminms.php:2754 +msgid "WPVulnerability Status" +msgstr "Estado de WPVulnerability" + +#: wpvulnerability-admin.php:2878 wpvulnerability-adminms.php:3052 +msgid "Receive vulnerability notifications" +msgstr "Recibir avisos de vulnerabilidades" + +#: wpvulnerability-admin.php:2886 wpvulnerability-adminms.php:3060 +msgid "Cache expiration time" +msgstr "Tiempo de caducidad de la caché" + +#: wpvulnerability-admin.php:2895 wpvulnerability-adminms.php:3069 +msgid "How often you want to receive notifications" +msgstr "Con qué frecuencia deseas recibir avisos" + +#: wpvulnerability-admin.php:2904 wpvulnerability-adminms.php:3078 +msgid "Where do you want to receive notifications?" +msgstr "¿Dónde quieres recibir avisos?" + +#: wpvulnerability-admin.php:2913 wpvulnerability-adminms.php:3087 +msgid "Email addresses to notify (separated by commas)" +msgstr "Direcciones de correo electrónico para avisar (separadas por comas)" + +#: wpvulnerability-admin.php:2922 wpvulnerability-adminms.php:3096 +msgid "Slack webhook URL" +msgstr "URL del webhook de Slack" + +#: wpvulnerability-admin.php:2931 wpvulnerability-adminms.php:3105 +msgid "Teams webhook URL" +msgstr "URL del webhook de Teams" + +#: wpvulnerability-admin.php:2950 wpvulnerability-adminms.php:3126 +msgid "Vulnerabilities to hide" +msgstr "Vulnerabilidades a ocultar" + +#: wpvulnerability-admin.php:2958 wpvulnerability-adminms.php:3134 +msgid "What do you want to hide?" +msgstr "¿Qué quieres ocultar?" + +#: wpvulnerability-admin.php:3008 wpvulnerability-adminms.php:3185 +msgid "Standard (Hybrid Detection)" +msgstr "Estándar (detección híbrida)" + +#: wpvulnerability-admin.php:3009 wpvulnerability-adminms.php:3186 +msgid "Strict (Extensions Only)" +msgstr "Estricto (solo extensiones)" + +#: wpvulnerability-admin.php:3010 wpvulnerability-adminms.php:3187 +msgid "Disabled (No Detection)" +msgstr "Desactivado (sin detección)" + +#: wpvulnerability-admin.php:3016 wpvulnerability-adminms.php:3193 +msgid "Security Status" +msgstr "Estado de seguridad" + +#: wpvulnerability-admin.php:3020 wpvulnerability-adminms.php:3197 +msgid "Security Mode" +msgstr "Modo de seguridad" + +#: wpvulnerability-admin.php:3025 wpvulnerability-adminms.php:3202 +msgid "Shell Execution" +msgstr "Ejecución de shell" + +#: wpvulnerability-admin.php:3027 wpvulnerability-admin.php:3475 +#: wpvulnerability-admin.php:3483 wpvulnerability-adminms.php:3204 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Enabled" +msgstr "Activado" + +#: wpvulnerability-admin.php:3034 wpvulnerability-adminms.php:3211 +msgid "Audit Logging" +msgstr "Registro de auditoría" + +#. translators: %d: number of days +#: wpvulnerability-admin.php:3039 wpvulnerability-adminms.php:3216 +#, php-format +msgid "Enabled (%d days)" +msgstr "Activado (%d días)" + +#: wpvulnerability-admin.php:3048 wpvulnerability-adminms.php:3225 +msgid "Total Log Entries" +msgstr "Total de entradas de registro" + +#: wpvulnerability-admin.php:3055 wpvulnerability-adminms.php:3232 +msgid "Last Shell Execution" +msgstr "Última ejecución de shell" + +#. translators: %s: time ago +#: wpvulnerability-admin.php:3061 wpvulnerability-admin.php:3266 +#: wpvulnerability-adminms.php:3238 wpvulnerability-adminms.php:3441 +#, php-format +msgid "%s ago" +msgstr "hace %s" + +#: wpvulnerability-admin.php:3073 wpvulnerability-adminms.php:3250 +msgid "" +"Configure security settings via wp-config.php constants: " +"WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, " +"WPVULNERABILITY_SHELL_EXEC_WHITELIST." +msgstr "" +"Configura los ajustes de seguridad mediante constantes en wp-config.php: " +"WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, " +"WPVULNERABILITY_SHELL_EXEC_WHITELIST." + +#. translators: %s: URL to security documentation +#: wpvulnerability-admin.php:3079 wpvulnerability-adminms.php:3256 +#, php-format +msgid "" +"See security " +"configuration documentation for details." +msgstr "" +"Consulta la documentación " +"de configuración de seguridad para más detalles." + +#: wpvulnerability-admin.php:3103 wpvulnerability-adminms.php:3280 +msgid "Memcached" +msgstr "Memcached" + +#: wpvulnerability-admin.php:3131 wpvulnerability-adminms.php:3308 +msgid "Imagick Extension" +msgstr "Extensión Imagick" + +#: wpvulnerability-admin.php:3132 wpvulnerability-adminms.php:3309 +msgid "Redis Extension" +msgstr "Extensión Redis" + +#: wpvulnerability-admin.php:3133 wpvulnerability-adminms.php:3310 +msgid "Memcached Extension" +msgstr "Extensión Memcached" + +#: wpvulnerability-admin.php:3134 wpvulnerability-adminms.php:3311 +msgid "Memcache Extension" +msgstr "Extensión Memcache" + +#: wpvulnerability-admin.php:3135 wpvulnerability-adminms.php:3312 +msgid "SQLite3 Extension" +msgstr "Extensión SQLite3" + +#: wpvulnerability-admin.php:3136 wpvulnerability-adminms.php:3313 +msgid "PDO SQLite" +msgstr "PDO SQLite" + +#: wpvulnerability-admin.php:3137 wpvulnerability-adminms.php:3314 +msgid "Shell Command" +msgstr "Comando de shell" + +#: wpvulnerability-admin.php:3138 wpvulnerability-adminms.php:3315 +msgid "Binary Check" +msgstr "Comprobación de binario" + +#: wpvulnerability-admin.php:3139 wpvulnerability-adminms.php:3316 +msgid "Not Detected" +msgstr "No detectado" + +#: wpvulnerability-admin.php:3143 wpvulnerability-adminms.php:3320 +msgid "Software Detection Methods" +msgstr "Métodos de detección de software" + +#: wpvulnerability-admin.php:3144 wpvulnerability-adminms.php:3321 +msgid "" +"Shows which detection method was used for each software component and the " +"reliability score." +msgstr "" +"Muestra qué método de detección se utilizó para cada componente de software " +"y la puntuación de fiabilidad." + +#: wpvulnerability-admin.php:3149 wpvulnerability-admin.php:3234 +#: wpvulnerability-admin.php:3558 wpvulnerability-adminms.php:3326 +#: wpvulnerability-adminms.php:3411 wpvulnerability-adminms.php:3752 +msgid "Component" +msgstr "Componente" + +#: wpvulnerability-admin.php:3150 wpvulnerability-adminms.php:3327 +msgid "Version" +msgstr "Versión" + +#: wpvulnerability-admin.php:3151 wpvulnerability-adminms.php:3328 +msgid "Detection Method" +msgstr "Método de detección" + +#: wpvulnerability-admin.php:3152 wpvulnerability-adminms.php:3329 +msgid "Reliability" +msgstr "Fiabilidad" + +#: wpvulnerability-admin.php:3164 wpvulnerability-adminms.php:3341 +msgid "Not detected" +msgstr "No detectado" + +#: wpvulnerability-admin.php:3220 wpvulnerability-adminms.php:3397 +msgid "Shell Execution Audit Logs" +msgstr "Registros de auditoría de ejecución de shell" + +#: wpvulnerability-admin.php:3221 wpvulnerability-adminms.php:3398 +msgid "" +"Complete audit trail of shell command executions for security monitoring." +msgstr "" +"Registro de auditoría completo de ejecuciones de comandos de shell para la " +"monitorización de seguridad." + +#: wpvulnerability-admin.php:3226 wpvulnerability-adminms.php:3403 +msgid "No shell execution logs found." +msgstr "No se han encontrado registros de ejecución de shell." + +#: wpvulnerability-admin.php:3227 wpvulnerability-adminms.php:3404 +msgid "" +"Logs will appear here when shell commands are executed for software " +"detection." +msgstr "" +"Los registros aparecerán aquí cuando se ejecuten comandos de shell para la " +"detección de software." + +#: wpvulnerability-admin.php:3233 wpvulnerability-adminms.php:3410 +msgid "Time" +msgstr "Tiempo" + +#: wpvulnerability-admin.php:3235 wpvulnerability-adminms.php:3412 +msgid "Command" +msgstr "Comando" + +#: wpvulnerability-admin.php:3237 wpvulnerability-adminms.php:3414 +msgid "User" +msgstr "Usuario" + +#: wpvulnerability-admin.php:3238 wpvulnerability-adminms.php:3415 +msgid "Output" +msgstr "Salida" + +#. translators: %d: number of logs shown +#: wpvulnerability-admin.php:3302 wpvulnerability-adminms.php:3477 +#, php-format +msgid "Showing the %d most recent log entries." +msgstr "Mostrando las %d entradas de registro más recientes." + +#: wpvulnerability-admin.php:3320 wpvulnerability-adminms.php:3565 +msgid "Invalid nonce." +msgstr "Nonce no válido." + +#: wpvulnerability-admin.php:3325 wpvulnerability-adminms.php:3570 +msgid "Insufficient permissions." +msgstr "Permisos insuficientes." + +#: wpvulnerability-admin.php:3331 wpvulnerability-adminms.php:3576 +msgid "No component specified." +msgstr "No se ha especificado ningún componente." + +#: wpvulnerability-admin.php:3366 wpvulnerability-adminms.php:3524 +msgid "Debug Information" +msgstr "Información de depuración" + +#: wpvulnerability-admin.php:3368 wpvulnerability-adminms.php:3526 +msgid "This tab is only visible when WP_DEBUG is enabled. Use with caution." +msgstr "Esta pestaña solo es visible cuando WP_DEBUG está activado. Úsala con precaución." + +#: wpvulnerability-admin.php:3429 wpvulnerability-adminms.php:3623 +msgid "System Information" +msgstr "Información del sistema" + +#: wpvulnerability-admin.php:3433 wpvulnerability-adminms.php:3627 +msgid "WordPress Version" +msgstr "Versión de WordPress" + +#: wpvulnerability-admin.php:3437 wpvulnerability-adminms.php:3631 +msgid "Multisite" +msgstr "Multisitio" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "Yes" +msgstr "Sí" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "No" +msgstr "No" + +#: wpvulnerability-admin.php:3441 wpvulnerability-adminms.php:3635 +msgid "Language" +msgstr "Idioma" + +#: wpvulnerability-admin.php:3445 wpvulnerability-adminms.php:3639 +msgid "PHP Version" +msgstr "Versión de PHP" + +#: wpvulnerability-admin.php:3449 wpvulnerability-adminms.php:3643 +msgid "PHP Extensions" +msgstr "Extensiones de PHP" + +#: wpvulnerability-admin.php:3460 wpvulnerability-adminms.php:3654 +msgid "PHP Memory Limit" +msgstr "Límite de memoria de PHP" + +#: wpvulnerability-admin.php:3464 wpvulnerability-adminms.php:3658 +msgid "Database" +msgstr "Base de datos" + +#: wpvulnerability-admin.php:3468 wpvulnerability-adminms.php:3662 +msgid "Web Server" +msgstr "Servidor web" + +#: wpvulnerability-admin.php:3472 wpvulnerability-adminms.php:3666 +msgid "WP_DEBUG" +msgstr "WP_DEBUG" + +#: wpvulnerability-admin.php:3480 wpvulnerability-adminms.php:3674 +msgid "WP_DEBUG_LOG" +msgstr "WP_DEBUG_LOG" + +#: wpvulnerability-admin.php:3490 wpvulnerability-adminms.php:3684 +msgid "Path:" +msgstr "Ruta:" + +#. translators: %s: file size +#: wpvulnerability-admin.php:3499 wpvulnerability-adminms.php:3698 +#, php-format +msgid "Size: %s" +msgstr "Tamaño: %s" + +#: wpvulnerability-admin.php:3510 wpvulnerability-adminms.php:3704 +msgid "View Log File" +msgstr "Ver archivo de registro" + +#: wpvulnerability-admin.php:3516 wpvulnerability-adminms.php:3710 +msgid "Log file is not web-accessible (outside wp-content)" +msgstr "El archivo de registro no es accesible desde la web (fuera de wp-content)" + +#: wpvulnerability-admin.php:3522 wpvulnerability-adminms.php:3716 +msgid "Log file does not exist yet" +msgstr "El archivo de registro aún no existe" + +#: wpvulnerability-admin.php:3530 wpvulnerability-adminms.php:3724 +msgid "Plugin Version" +msgstr "Versión del plugin" + +#: wpvulnerability-admin.php:3554 wpvulnerability-adminms.php:3748 +msgid "Component Detection" +msgstr "Detección de componentes" + +#: wpvulnerability-admin.php:3560 wpvulnerability-adminms.php:3754 +msgid "Version Detected" +msgstr "Versión detectada" + +#: wpvulnerability-admin.php:3561 wpvulnerability-adminms.php:3755 +msgid "Analyzed" +msgstr "Analizado" + +#: wpvulnerability-admin.php:3562 wpvulnerability-adminms.php:3756 +msgid "Cache Status" +msgstr "Estado de la caché" + +#: wpvulnerability-admin.php:3622 wpvulnerability-adminms.php:3816 +msgid "Configuration Summary" +msgstr "Resumen de configuración" + +#: wpvulnerability-admin.php:3626 wpvulnerability-adminms.php:3820 +msgid "Cache Duration" +msgstr "Duración de la caché" + +#: wpvulnerability-admin.php:3636 wpvulnerability-adminms.php:3830 +msgid "Log Retention" +msgstr "Retención de registros" + +#: wpvulnerability-admin.php:3646 wpvulnerability-adminms.php:3840 +msgid "Components Analyzed" +msgstr "Componentes analizados" + +#: wpvulnerability-admin.php:3661 wpvulnerability-adminms.php:3855 +msgid "Notification Email" +msgstr "Correo electrónico de notificación" + +#: wpvulnerability-admin.php:3682 wpvulnerability-adminms.php:3876 +msgid "Slack Webhook" +msgstr "Webhook de Slack" + +#: wpvulnerability-admin.php:3692 wpvulnerability-admin.php:3712 +#: wpvulnerability-admin.php:3732 wpvulnerability-admin.php:3752 +#: wpvulnerability-adminms.php:3886 wpvulnerability-adminms.php:3906 +#: wpvulnerability-adminms.php:3926 wpvulnerability-adminms.php:3946 +msgid "Configured & Enabled" +msgstr "Configurado y activado" + +#: wpvulnerability-admin.php:3694 wpvulnerability-admin.php:3714 +#: wpvulnerability-admin.php:3734 wpvulnerability-admin.php:3754 +#: wpvulnerability-adminms.php:3888 wpvulnerability-adminms.php:3908 +#: wpvulnerability-adminms.php:3928 wpvulnerability-adminms.php:3948 +msgid "Configured (Disabled)" +msgstr "Configurado (desactivado)" + +#: wpvulnerability-admin.php:3696 wpvulnerability-admin.php:3716 +#: wpvulnerability-admin.php:3736 wpvulnerability-admin.php:3756 +#: wpvulnerability-adminms.php:3890 wpvulnerability-adminms.php:3910 +#: wpvulnerability-adminms.php:3930 wpvulnerability-adminms.php:3950 +msgid "Not configured" +msgstr "No configurado" + +#: wpvulnerability-admin.php:3703 wpvulnerability-adminms.php:3897 +msgid "Teams Webhook" +msgstr "Webhook de Teams" + +#: wpvulnerability-admin.php:3723 wpvulnerability-adminms.php:3917 +msgid "Discord Webhook" +msgstr "Webhook de Discord" + +#: wpvulnerability-admin.php:3743 wpvulnerability-adminms.php:3937 +msgid "Telegram Bot" +msgstr "Bot de Telegram" + +#: wpvulnerability-admin.php:3788 wpvulnerability-adminms.php:3982 +msgid "Cron Status" +msgstr "Estado del cron" + +#: wpvulnerability-admin.php:3792 wpvulnerability-adminms.php:3986 +msgid "Update Database" +msgstr "Actualizar base de datos" + +#. translators: %s: date and time +#: wpvulnerability-admin.php:3797 wpvulnerability-admin.php:3810 +#: wpvulnerability-adminms.php:3991 wpvulnerability-adminms.php:4004 +#, php-format +msgid "Next run: %s" +msgstr "Próxima ejecución: %s" + +#: wpvulnerability-admin.php:3800 wpvulnerability-admin.php:3813 +#: wpvulnerability-adminms.php:3994 wpvulnerability-adminms.php:4007 +msgid "Not scheduled" +msgstr "No programado" + +#: wpvulnerability-admin.php:3805 wpvulnerability-adminms.php:3999 +msgid "Send Notification" +msgstr "Enviar notificación" + +#: wpvulnerability-admin.php:3826 wpvulnerability-adminms.php:4020 +msgid "Run Update Now" +msgstr "Ejecutar actualización ahora" + +#: wpvulnerability-admin.php:3834 wpvulnerability-adminms.php:4028 +msgid "Run Notification Now" +msgstr "Enviar notificación ahora" + +#: wpvulnerability-admin.php:3840 wpvulnerability-adminms.php:4034 +msgid "You do not have permission to run these actions." +msgstr "No tienes permiso para ejecutar estas acciones." + +#: wpvulnerability-admin.php:3859 wpvulnerability-adminms.php:4053 +msgid "API Testing" +msgstr "Prueba de la API" + +#: wpvulnerability-admin.php:3862 wpvulnerability-adminms.php:4056 +msgid "" +"Test API connectivity for each component. Click a button to send a test " +"request." +msgstr "" +"Prueba la conectividad de la API para cada componente. Haz clic en un botón " +"para enviar una solicitud de prueba." + +#. translators: %s: component name +#: wpvulnerability-admin.php:3869 wpvulnerability-adminms.php:4063 +#, php-format +msgid "Test %s" +msgstr "Probar %s" + +#: wpvulnerability-admin.php:3884 wpvulnerability-adminms.php:4078 +msgid "Testing..." +msgstr "Probando..." + +#: wpvulnerability-admin.php:3900 wpvulnerability-adminms.php:4094 +msgid "HTTP Code:" +msgstr "Código HTTP:" + +#: wpvulnerability-admin.php:3901 wpvulnerability-adminms.php:4095 +msgid "Response Time:" +msgstr "Tiempo de respuesta:" + +#: wpvulnerability-admin.php:3903 wpvulnerability-adminms.php:4097 +msgid "Response Preview" +msgstr "Vista previa de la respuesta" + +#: wpvulnerability-admin.php:3910 wpvulnerability-admin.php:3914 +#: wpvulnerability-adminms.php:4104 wpvulnerability-adminms.php:4108 +msgid "Test" +msgstr "Probar" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "Error:" +msgstr "Error:" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "AJAX request failed." +msgstr "La solicitud AJAX ha fallado." + +#: wpvulnerability-admin.php:3922 wpvulnerability-adminms.php:4116 +msgid "You do not have permission to test API connectivity." +msgstr "No tienes permiso para probar la conectividad de la API." + +#: wpvulnerability-admin.php:3943 wpvulnerability-adminms.php:4137 +msgid "Database Options Viewer" +msgstr "Visor de opciones de base de datos" + +#: wpvulnerability-admin.php:3944 wpvulnerability-adminms.php:4138 +msgid "View the raw data stored in WordPress options." +msgstr "Ver los datos brutos almacenados en las opciones de WordPress." + +#: wpvulnerability-admin.php:3950 wpvulnerability-adminms.php:4144 +msgid "Select an option..." +msgstr "Selecciona una opción..." + +#: wpvulnerability-admin.php:3969 wpvulnerability-adminms.php:4163 +msgid "Option not found or empty." +msgstr "Opción no encontrada o vacía." + +#: wpvulnerability-admin.php:3987 wpvulnerability-adminms.php:4182 +msgid "Quick Actions" +msgstr "Acciones rápidas" + +#: wpvulnerability-admin.php:3988 wpvulnerability-adminms.php:4183 +msgid "Perform debugging actions. Use with caution." +msgstr "Realizar acciones de depuración. Úsalas con precaución." + +#: wpvulnerability-admin.php:3992 wpvulnerability-adminms.php:4187 +msgid "Are you sure you want to clear all caches?" +msgstr "¿Estás seguro de que quieres limpiar todas las cachés?" + +#: wpvulnerability-admin.php:3996 wpvulnerability-adminms.php:4191 +msgid "Clear All Caches" +msgstr "Limpiar todas las cachés" + +#: wpvulnerability-admin.php:4000 wpvulnerability-adminms.php:4195 +msgid "Are you sure you want to reset signatures?" +msgstr "¿Estás seguro de que quieres restablecer las firmas?" + +#: wpvulnerability-admin.php:4004 wpvulnerability-adminms.php:4199 +msgid "Reset Signatures" +msgstr "Restablecer firmas" + +#: wpvulnerability-admin.php:4012 wpvulnerability-adminms.php:4207 +msgid "Export Debug Info" +msgstr "Exportar información de depuración" + +#: wpvulnerability-admin.php:4018 wpvulnerability-adminms.php:4213 +msgid "You do not have permission to perform these actions." +msgstr "No tienes permiso para realizar estas acciones." + +#: wpvulnerability-adminms.php:101 wpvulnerability-adminms.php:199 +msgid "Settings saved." +msgstr "Ajustes guardados." + +#: wpvulnerability-adminms.php:277 +msgid "WPVulnerability cron events have been repaired across the network." +msgstr "Los eventos cron de WPVulnerability han sido reparados en toda la red." + +#: wpvulnerability-adminms.php:3512 +msgid "You do not have permission to access this page." +msgstr "No tienes permiso para acceder a esta página." + +#. translators: 1: core version +#: wpvulnerability-core.php:33 +#, php-format +msgid "" +"WordPress %1$s has a known vulnerability that may be affecting your " +"installed version." +msgstr "" +"WordPress %1$s tiene una vulnerabilidad conocida que puede estar afectando " +"a tu versión instalada." + +#: wpvulnerability-core.php:115 wpvulnerability-plugins.php:207 +#: wpvulnerability-process.php:335 wpvulnerability-process.php:443 +#: wpvulnerability-process.php:529 wpvulnerability-themes.php:173 +#: wpvulnerability-themes.php:469 +msgid "Actively exploited" +msgstr "Activamente explotada" + +#: wpvulnerability-core.php:122 wpvulnerability-plugins.php:214 +#: wpvulnerability-process.php:342 wpvulnerability-process.php:450 +#: wpvulnerability-themes.php:180 wpvulnerability-themes.php:476 +msgid "Public exploit" +msgstr "Exploit público" + +#: wpvulnerability-core.php:125 wpvulnerability-plugins.php:217 +#: wpvulnerability-process.php:345 wpvulnerability-process.php:453 +#: wpvulnerability-themes.php:183 wpvulnerability-themes.php:479 +msgid "Automatable" +msgstr "Automatizable" + +#: wpvulnerability-core.php:139 wpvulnerability-plugins.php:245 +#: wpvulnerability-process.php:371 wpvulnerability-process.php:469 +#: wpvulnerability-process.php:544 wpvulnerability-themes.php:211 +#: wpvulnerability-themes.php:503 +msgid "References:" +msgstr "Referencias:" + +#: wpvulnerability-debug.php:399 +msgid "Invalid component specified." +msgstr "Componente especificado no válido." + +#: wpvulnerability-debug.php:423 +msgid "Version not detected for this component." +msgstr "Versión no detectada para este componente." + +#: wpvulnerability-debug.php:453 +msgid "API request successful." +msgstr "Solicitud a la API correcta." + +#. translators: %d: HTTP status code +#: wpvulnerability-debug.php:469 +#, php-format +msgid "API returned HTTP code %d." +msgstr "La API ha devuelto el código HTTP %d." + +#: wpvulnerability-general.php:355 +msgid "WPVulnerability Logs" +msgstr "Registros de WPVulnerability" + +#: wpvulnerability-general.php:356 +msgid "WPVulnerability Log" +msgstr "Registro de WPVulnerability" + +#: wpvulnerability-general.php:1873 wpvulnerability-general.php:1874 +msgid "Low" +msgstr "Baja" + +#: wpvulnerability-general.php:1875 wpvulnerability-general.php:1876 +msgid "Medium" +msgstr "Media" + +#: wpvulnerability-general.php:1877 wpvulnerability-general.php:1878 +msgid "High" +msgstr "Alta" + +#: wpvulnerability-general.php:1879 wpvulnerability-general.php:1880 +msgid "Critical" +msgstr "Crítica" + +#: wpvulnerability-general.php:2684 +msgid "WPVulnerability Shell Logs" +msgstr "Registros de shell de WPVulnerability" + +#: wpvulnerability-general.php:2685 +msgid "WPVulnerability Shell Log" +msgstr "Registro de shell de WPVulnerability" + +#: wpvulnerability-notifications.php:30 +msgid "Every week" +msgstr "Cada semana" + +#: wpvulnerability-notifications.php:57 +msgid "Every day" +msgstr "Cada día" + +#: wpvulnerability-notifications.php:84 +msgid "Invalid request." +msgstr "Solicitud no válida." + +#: wpvulnerability-notifications.php:104 +msgid "You have unsubscribed from WPVulnerability notifications." +msgstr "Te has dado de baja de los avisos de WPVulnerability." + +#. translators: %1$s the website of Database, %2$s database site name. +#: wpvulnerability-notifications.php:289 +#, php-format +msgid "" +"Learn more about the WordPress Vulnerability Database API at %2$s" +msgstr "" +"Más información acerca de la WordPress Vulnerability Database API en %2$s" + +#. translators: %1$s unsubscribe URL. +#: wpvulnerability-notifications.php:300 +#, php-format +msgid "" +"Want to stop receiving these alerts? Unsubscribe or " +"change the email frequency to Never in the WPVulnerability " +"settings." +msgstr "" +"¿Quieres dejar de recibir estas alertas? Darse de baja " +"o cambiar la frecuencia de los correos electrónicos a Nunca " +"en los ajustes de WPVulnerability." + +#: wpvulnerability-notifications.php:595 +msgid "No vulnerabilities found" +msgstr "No se han encontrado vulnerabilidades" + +#: wpvulnerability-notifications.php:596 +msgid "This is likely a test. The site does not have vulnerabilities." +msgstr "" +"Es probable que se trate de una prueba. El sitio no tiene vulnerabilidades." + +#: wpvulnerability-notifications.php:601 +msgid "Core vulnerabilities" +msgstr "Vulnerabilidades en el núcleo de WordPress" + +#: wpvulnerability-notifications.php:607 +msgid "Plugins vulnerabilities" +msgstr "Vulnerabilidades en plugins" + +#: wpvulnerability-notifications.php:613 +msgid "Themes vulnerabilities" +msgstr "Vulnerabilidades en temas" + +#: wpvulnerability-notifications.php:619 +msgid "PHP vulnerabilities" +msgstr "Vulnerabilidades de PHP" + +#: wpvulnerability-notifications.php:625 +msgid "Apache HTTPD vulnerabilities" +msgstr "Vulnerabilidades de Apache HTTPD" + +#: wpvulnerability-notifications.php:631 +msgid "Nginx vulnerabilities" +msgstr "Vulnerabilidades de nginx" + +#: wpvulnerability-notifications.php:637 +msgid "MariaDB vulnerabilities" +msgstr "Vulnerabilidades de MariaDB" + +#: wpvulnerability-notifications.php:643 +msgid "MySQL vulnerabilities" +msgstr "Vulnerabilidades de MySQL" + +#: wpvulnerability-notifications.php:649 +msgid "ImageMagick vulnerabilities" +msgstr "Vulnerabilidades de ImageMagick" + +#: wpvulnerability-notifications.php:655 +msgid "curl vulnerabilities" +msgstr "Vulnerabilidades de curl" + +#: wpvulnerability-notifications.php:661 +msgid "memcached vulnerabilities" +msgstr "Vulnerabilidades de memcached" + +#: wpvulnerability-notifications.php:667 +msgid "Redis vulnerabilities" +msgstr "Vulnerabilidades de Redis" + +#: wpvulnerability-notifications.php:673 +msgid "SQLite vulnerabilities" +msgstr "Vulnerabilidades SQLite" + +#. translators: Site name. +#: wpvulnerability-notifications.php:696 +#, php-format +msgid "Vulnerability found: %s" +msgstr "Vulnerabilidad encontrada: %s" + +#: wpvulnerability-notifications.php:700 +msgid "Vulnerability found" +msgstr "Se ha encontrado una vulnerabilidad" + +#. translators: 1: Plugin name +#. translators: 1: theme name +#: wpvulnerability-plugins.php:116 wpvulnerability-themes.php:82 +#, php-format +msgid "" +"%1$s has a known vulnerability that may be affecting your installed version." +msgstr "" +"%1$s tiene una vulnerabilidad conocida que puede estar afectando a tu " +"versión instalada." + +#: wpvulnerability-plugins.php:230 wpvulnerability-process.php:358 +msgid "This plugin is closed. Please replace it with another." +msgstr "Este plugin está cerrado. Por favor, reemplázalo por otro." + +#: wpvulnerability-plugins.php:233 wpvulnerability-process.php:361 +msgid "" +"This vulnerability appears to be unpatched. Stay tuned for upcoming plugin " +"updates." +msgstr "" +"Esta vulnerabilidad no parece tener parche. Presta atención a las próximas " +"actualizaciones del plugin." + +#: wpvulnerability-plugins.php:570 +msgid "It hasn't been updated in over a year." +msgstr "Hace más de un año que no se actualiza." + +#: wpvulnerability-plugins.php:576 +msgid "It may no longer be available (closed?)." +msgstr "Puede que ya no esté disponible (¿cerrado?)." + +#: wpvulnerability-plugins.php:614 wpvulnerability-plugins.php:621 +msgid "Last updated on" +msgstr "Última actualización el" + +#. translators: the number of vulnerabilities. +#: wpvulnerability-plugins.php:764 wpvulnerability-themes.php:704 +#, php-format +msgid "Vulnerabilities (%d)" +msgstr "Vulnerabilidades (%d)" + +#. translators: %s: software name. +#: wpvulnerability-process.php:601 +#, php-format +msgid "%s running" +msgstr "%s corriendo" + +#: wpvulnerability-process.php:611 wpvulnerability-process.php:792 +msgid "End of Life" +msgstr "Fin de vida útil" + +#: wpvulnerability-process.php:613 wpvulnerability-process.php:618 +msgid "End of life:" +msgstr "Fin de vida útil:" + +#: wpvulnerability-process.php:616 +msgid "Supported" +msgstr "Con soporte" + +#: wpvulnerability-process.php:652 +msgid "Plugin" +msgstr "Plugin" + +#: wpvulnerability-process.php:721 +msgid "Theme" +msgstr "Tema" + +#. translators: %s: end-of-life date +#: wpvulnerability-process.php:790 +#, php-format +msgid "End of life: %s" +msgstr "Fin de vida útil: %s" + +#: wpvulnerability-process.php:795 +msgid "EOL" +msgstr "EOL" + +#: wpvulnerability-run.php:30 +msgid "Network Settings" +msgstr "Ajustes de red" + +#: wpvulnerability-run.php:731 wpvulnerability-run.php:781 +#: wpvulnerability-run.php:791 wpvulnerability-run.php:836 +msgid "Vulnerabilities" +msgstr "Vulnerabilidades" + +#: wpvulnerability-schedule.php:30 +msgid "Every 6 hours" +msgstr "Cada 6 horas" + +#: wpvulnerability-schedule.php:303 +msgid "Database updates" +msgstr "Actualizaciones de la base de datos" + +#: wpvulnerability-schedule.php:309 +msgid "Log cleanup" +msgstr "Limpieza de registros" + +#: wpvulnerability-schedule.php:439 +msgid "" +"Notifications are scheduled, but settings currently disable them. Please " +"review the notifications tab." +msgstr "" +"Las notificaciones están programadas, pero la configuración las desactiva " +"actualmente. Por favor, revisa la pestaña de notificaciones." + +#: wpvulnerability-schedule.php:442 +msgid "This event should not be scheduled for this site." +msgstr "Este evento no debería estar programado para este sitio." + +#: wpvulnerability-schedule.php:446 +msgid "Not expected for this site." +msgstr "No esperado para este sitio." + +#: wpvulnerability-schedule.php:450 +msgid "No instances found." +msgstr "No se han encontrado instancias." + +#: wpvulnerability-schedule.php:456 +msgid "Scheduled with an unexpected interval." +msgstr "Programado con un intervalo inesperado." + +#: wpvulnerability-schedule.php:460 +msgid "Multiple instances detected." +msgstr "Múltiples instancias detectadas." + +#: wpvulnerability-schedule.php:465 +msgid "Scheduled as expected." +msgstr "Programado como se esperaba." + +#: wpvulnerability-sitehealth.php:22 +msgid "There aren't plugins vulnerabilities" +msgstr "No hay vulnerabilidades en los plugins" + +#: wpvulnerability-sitehealth.php:30 +msgid "Shows possible vulnerabilities that exist in installed plugins." +msgstr "" +"Muestra posibles vulnerabilidades que existen en los plugins instalados." + +#. translators: Number of plugins vulnerabilities. +#: wpvulnerability-sitehealth.php:43 +#, php-format +msgid "There is %d plugin with vulnerabilities" +msgid_plural "There are %d plugins with vulnerabilities" +msgstr[0] "Hay %d plugin con vulnerabilidades" +msgstr[1] "Hay %d plugins con vulnerabilidades" + +#: wpvulnerability-sitehealth.php:49 +msgid "" +"We've detected potential vulnerabilities in installed plugins. Please check " +"them and keep them updated." +msgstr "" +"Hemos detectado posibles vulnerabilidades en los plugins instalados. Por " +"favor, verifícalos y mantenlos actualizados." + +#: wpvulnerability-sitehealth.php:57 +msgid "Update plugins" +msgstr "Actualizar plugins" + +#: wpvulnerability-sitehealth.php:74 +msgid "There aren't themes vulnerabilities" +msgstr "No hay vulnerabilidades en los temas" + +#: wpvulnerability-sitehealth.php:82 +msgid "Shows possible vulnerabilities that exist in installed themes." +msgstr "Muestra posibles vulnerabilidades que existen en los temas instalados." + +#. translators: Number of themes vulnerabilities. +#: wpvulnerability-sitehealth.php:95 +#, php-format +msgid "There is %d theme with vulnerabilities" +msgid_plural "There are %d themes with vulnerabilities" +msgstr[0] "Hay %d tema con vulnerabilidades" +msgstr[1] "Hay %d temas con vulnerabilidades" + +#: wpvulnerability-sitehealth.php:101 +msgid "" +"We've detected potential vulnerabilities in installed themes. Please check " +"them and keep them updated." +msgstr "" +"Hemos detectado posibles vulnerabilidades en los temas instalados. Por " +"favor, verifícalos y mantenlos actualizados." + +#: wpvulnerability-sitehealth.php:109 +msgid "Update themes" +msgstr "Actualizar temas" + +#: wpvulnerability-sitehealth.php:126 +msgid "There aren't WordPress vulnerabilities" +msgstr "No hay vulnerabilidades en WordPress" + +#: wpvulnerability-sitehealth.php:134 +msgid "Shows possible vulnerabilities existing in the WordPress core." +msgstr "" +"Muestra las posibles vulnerabilidades existentes en el núcleo de WordPress." + +#. translators: Number of core vulnerabilities. +#: wpvulnerability-sitehealth.php:147 +#, php-format +msgid "There is %d core vulnerability" +msgid_plural "There are %d core vulnerabilities" +msgstr[0] "Hay %d vulnerabilidad en el núcleo" +msgstr[1] "Hay %d vulnerabilidades en el núcleo" + +#: wpvulnerability-sitehealth.php:153 +msgid "" +"We've detected potential vulnerabilities in this WordPress installation. " +"Please check them and keep your installation updated." +msgstr "" +"Hemos detectado posibles vulnerabilidades en esta instalación de WordPress. " +"Por favor, compruébalas y mantén tu instalación actualizada." + +#: wpvulnerability-sitehealth.php:161 +msgid "Update WordPress" +msgstr "Actualizar WordPress" + +#: wpvulnerability-sitehealth.php:180 +msgid "Nginx" +msgstr "Nginx" + +#: wpvulnerability-sitehealth.php:189 +msgid "Invalid software type" +msgstr "Tipo de software no válido" + +#: wpvulnerability-sitehealth.php:192 +msgid "Error" +msgstr "Error" + +#: wpvulnerability-sitehealth.php:197 +msgid "The specified software type is not valid." +msgstr "El tipo de software especificado no es válido" + +#. translators: name of the software. +#: wpvulnerability-sitehealth.php:207 +#, php-format +msgid "There aren't %s vulnerabilities" +msgstr "No hay vulnerabilidades de %s" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:216 +#, php-format +msgid "Shows possible vulnerabilities existing in %s." +msgstr "Muestra posibles vulnerabilidades existentes en %s." + +#. translators: Software and number of vulnerabilities. +#: wpvulnerability-sitehealth.php:229 +#, php-format +msgid "There is %1$d %2$s vulnerability" +msgid_plural "There are %1$d %2$s vulnerabilities" +msgstr[0] "Hay %d vulnerabilidad de %2$s." +msgstr[1] "Hay %d vulnerabilidades de %2$s." + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:237 +#, php-format +msgid "" +"We've detected potential vulnerabilities in %s. Please check them and keep " +"your installation updated." +msgstr "" +"Hemos detectado posibles vulnerabilidades en %s. Por favor, compruébalas y " +"mantén actualizada tu instalación." + +#: wpvulnerability-sitehealth.php:246 +msgid "How to update PHP" +msgstr "Cómo actualizar PHP" + +#: wpvulnerability-sitehealth.php:386 +msgid "WPVulnerability Core" +msgstr "WP Vulnerability - Núcleo" + +#: wpvulnerability-sitehealth.php:394 +msgid "WPVulnerability Themes" +msgstr "WPVulnerability - Temas" + +#: wpvulnerability-sitehealth.php:402 +msgid "WPVulnerability Plugins" +msgstr "WPVulnerability - Plugins" + +#: wpvulnerability-sitehealth.php:410 +msgid "WPVulnerability PHP" +msgstr "WPVulnerability PHP" + +#: wpvulnerability-sitehealth.php:418 +msgid "WPVulnerability Apache HTTPD" +msgstr "WPVulnerability Apache HTTPD" + +#: wpvulnerability-sitehealth.php:426 +msgid "WPVulnerability Nginx" +msgstr "WPVulnerability nginx" + +#: wpvulnerability-sitehealth.php:434 +msgid "WPVulnerability MariaDB" +msgstr "WPVulnerability MariaDB" + +#: wpvulnerability-sitehealth.php:442 +msgid "WPVulnerability MySQL" +msgstr "WPVulnerability MySQL" + +#: wpvulnerability-sitehealth.php:450 +msgid "WPVulnerability ImageMagick" +msgstr "WPVulnerability ImageMagick" + +#: wpvulnerability-sitehealth.php:458 +msgid "WPVulnerability curl" +msgstr "WPVulnerability curl" + +#: wpvulnerability-sitehealth.php:466 +msgid "WPVulnerability memcached" +msgstr "WPVulnerability memcached" + +#: wpvulnerability-sitehealth.php:474 +msgid "WPVulnerability redis" +msgstr "WPVulnerability Redis" + +#: wpvulnerability-sitehealth.php:482 +msgid "WPVulnerability sqlite" +msgstr "WPVulnerability SQLite" + +#: wpvulnerability-themes.php:196 wpvulnerability-themes.php:492 +msgid "This theme is closed. Please replace it with another." +msgstr "Este tema está cerrado. Por favor, reemplázalo por otro." + +#: wpvulnerability-themes.php:199 wpvulnerability-themes.php:495 +msgid "" +"This vulnerability appears to be unpatched. Stay tuned for upcoming theme " +"updates." +msgstr "" +"Esta vulnerabilidad no parece tener parche. Presta atención a las próximas " +"actualizaciones del tema." + +#: wpvulnerability-themes.php:391 +msgid "" +"This theme has known vulnerabilities that may be affecting your installed " +"version." +msgstr "" +"Este tema tiene vulnerabilidades conocidas que pueden estar afectando a tu " +"versión instalada." diff --git a/languages/wpvulnerability-es.l10n.php b/languages/wpvulnerability-es.l10n.php new file mode 100644 index 0000000..fe643d9 --- /dev/null +++ b/languages/wpvulnerability-es.l10n.php @@ -0,0 +1,2 @@ +NULL,'plural-forms'=>'nplurals=2; plural=n != 1;','language'=>'es','project-id-version'=>'Plugins - WPVulnerability - Development (trunk)','pot-creation-date'=>'2026-05-27T16:32:22+00:00','po-revision-date'=>'2026-01-20 18:56:16+0000','x-generator'=>'GlotPress/4.0.3','messages'=>['WPVulnerability'=>'WPVulnerability','https://www.wpvulnerability.com/plugin/'=>'https://www.wpvulnerability.com/plugin/','Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API.'=>'Recibe información acerca de posibles vulnerabilidades en tu WordPress desde la WordPress Vulnerability Database API.','ROBOTSTXT'=>'ROBOTSTXT','https://www.robotstxt.es/'=>'https://www.robotstxt.es/','This command requires a WordPress administrator. Run with --user=.'=>'Este comando requiere un administrador de WordPress. Ejecuta con --user=.','No core vulnerabilities found.'=>'No se han encontrado vulnerabilidades en el núcleo.','No plugin vulnerabilities found.'=>'No se han encontrado vulnerabilidades en plugins.','No theme vulnerabilities found.'=>'No se han encontrado vulnerabilidades en temas.','No %s vulnerabilities found.'=>'No se han encontrado vulnerabilidades de %s.','Data from source has been reloaded.'=>'Los datos de origen se han vuelto a cargar.','You do not have permission to reload data.'=>'No tienes permiso para recargar datos.','Test email has been sent.'=>'El correo electrónico de prueba ha sido enviado.','Test email has failed. Please, check your email settings.'=>'El correo electrónico de prueba ha fallado. Por favor, comprueba tus ajustes de correo electrónico.','You do not have permission to send test emails.'=>'No tienes permiso para enviar correos electrónicos de prueba.','WPVulnerability cron events have been repaired.'=>'Los eventos cron de WPVulnerability han sido reparados.','You do not have permission to repair cron events.'=>'No tienes permiso para reparar eventos cron.','All logs have been deleted.'=>'Todos los registros han sido eliminados.','You do not have permission to delete logs.'=>'No tienes permiso para eliminar registros.','Uninstall preference saved.'=>'Preferencia de desinstalación guardada.','WPVulnerability has been reset to defaults and reloaded.'=>'WPVulnerability ha sido restablecido a los valores predeterminados y recargado.','You do not have permission to reset WPVulnerability.'=>'No tienes permiso para restablecer WPVulnerability.','All caches have been cleared.'=>'Todas las cachés han sido limpiadas.','You do not have permission to clear caches.'=>'No tienes permiso para limpiar las cachés.','Plugin and theme signatures have been reset.'=>'Las firmas de plugins y temas han sido restablecidas.','You do not have permission to reset signatures.'=>'No tienes permiso para restablecer las firmas.','You do not have permission to export debug information.'=>'No tienes permiso para exportar información de depuración.','Database update has been executed.'=>'La actualización de la base de datos ha sido ejecutada.','You do not have permission to run database updates.'=>'No tienes permiso para ejecutar actualizaciones de la base de datos.','Notification has been sent.'=>'El aviso ha sido enviado.','Notification sending failed.'=>'El envío del aviso ha fallado.','You do not have permission to send notifications.'=>'No tienes permiso para enviar avisos.','Notifications'=>'Avisos','Analysis'=>'Análisis','Logs'=>'Registros','Security'=>'Seguridad','Tools'=>'Herramientas','Debug'=>'Depuración','About'=>'Acerca de','Notification Settings'=>'Ajustes de notificaciones','Configure how and when you want to receive vulnerability notifications.'=>'Configura cómo y cuándo quieres recibir avisos de vulnerabilidades.','Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software.'=>'Mantente informado sobre las vulnerabilidades de seguridad en tu instalación de WordPress, plugins, temas y software del servidor.','Cache Expiration Time'=>'Tiempo de caducidad de la caché','FORCED'=>'FORZADO','How long to cache vulnerability data before refreshing from the API.'=>'Cuánto tiempo almacenar en caché los datos de vulnerabilidades antes de actualizarlos desde la API.','%d hour'=>'%d hora' . "\0" . '%d horas','You can force the cache time via wp-config.php constant. Learn more →'=>'Puedes forzar el tiempo de caché mediante la constante en wp-config.php. Más información →','Notification Frequency'=>'Frecuencia de notificaciones','Choose how often you want to receive vulnerability notifications.'=>'Elige con qué frecuencia quieres recibir avisos de vulnerabilidades.','Never - Disable automatic notifications'=>'Nunca - Desactivar notificaciones automáticas','Daily - Receive notifications every day'=>'Diariamente - Recibir notificaciones cada día','Weekly - Receive notifications once a week'=>'Semanalmente - Recibir notificaciones una vez a la semana','Day:'=>'Día:','Monday'=>'Lunes','Tuesday'=>'Martes','Wednesday'=>'Miércoles','Thursday'=>'Jueves','Friday'=>'Viernes','Saturday'=>'Sábado','Sunday'=>'Domingo','Time:'=>'Hora:','(24-hour format, server timezone)'=>'(formato de 24 horas, zona horaria del servidor)','Notification Channels'=>'Canales de notificación','Select where you want to receive notifications.'=>'Selecciona dónde quieres recibir las notificaciones.','Email'=>'Correo electrónico','Email Addresses (separated by commas):'=>'Direcciones de correo electrónico (separadas por comas):','Default:'=>'Por defecto:','Slack'=>'Slack','Slack Webhook URL:'=>'URL del webhook de Slack:','Learn how to create a Slack incoming webhook →'=>'Aprende a crear un webhook entrante de Slack →','Microsoft Teams'=>'Microsoft Teams','Teams Webhook URL:'=>'URL del webhook de Teams:','Learn how to create a Teams incoming webhook →'=>'Aprende a crear un webhook entrante de Teams →','Discord'=>'Discord','Discord Webhook URL:'=>'URL del webhook de Discord:','Learn how to create a Discord webhook →'=>'Aprende a crear un webhook de Discord →','Telegram'=>'Telegram','Telegram Bot Token:'=>'Token del bot de Telegram:','Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Formato: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','Telegram Chat ID:'=>'ID de chat de Telegram:','Learn how to create a Telegram bot and get Chat ID →'=>'Aprende a crear un bot de Telegram y obtener el ID de chat →','Save Notification Settings'=>'Guardar ajustes de notificaciones','WordPress Components'=>'Componentes de WordPress','WordPress Core'=>'Núcleo de WordPress','Plugins'=>'Plugins','Themes'=>'Temas','Software & Languages'=>'Software e idiomas','PHP'=>'PHP','Web Servers'=>'Servidores web','Apache HTTPD'=>'Apache HTTPD','nginx'=>'nginx','Databases'=>'Bases de datos','MariaDB'=>'MariaDB','MySQL'=>'MySQL','SQLite'=>'SQLite','Additional Tools'=>'Herramientas adicionales','ImageMagick'=>'ImageMagick','curl'=>'curl','memcached'=>'memcached','Redis'=>'Redis','Component Analysis Settings'=>'Ajustes de análisis de componentes','Enable or disable vulnerability analysis for specific components.'=>'Activa o desactiva el análisis de vulnerabilidades para componentes específicos.','Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red.'=>'Marca los componentes que quieres OCULTAR de los análisis y los informes de vulnerabilidades. Los componentes no marcados se analizarán activamente. Los componentes con análisis activo se muestran en verde, los ocultos en rojo.','Hidden (forced by constant)'=>'Oculto (forzado por constante)','🔴 Analysis disabled'=>'🔴 Análisis desactivado','🟢 Analysis active'=>'🟢 Análisis activo','Tip:'=>'Consejo:','You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →'=>'Puedes forzar la desactivación de componentes mediante constantes en wp-config.php. Más información sobre cómo forzar la ocultación de verificaciones →','Save Analysis Settings'=>'Guardar ajustes de análisis','« Previous'=>'« Anterior','Next »'=>'Siguiente »','Log entry not found or has been removed.'=>'Entrada de registro no encontrada o eliminada.','Unable to load the requested log entry.'=>'No se ha podido cargar la entrada de registro solicitada.','Log Configuration'=>'Configuración de registros','Total Logs'=>'Total de registros','Retention Period'=>'Periodo de retención','Disabled'=>'Desactivado','%d day'=>'%d día' . "\0" . '%d días','Log Retention Period'=>'Periodo de retención de registros','None (Disabled)'=>'Ninguno (desactivado)','This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant.'=>'Este valor se aplica mediante la constante WPVULNERABILITY_LOG_RETENTION_DAYS.','Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted.'=>'Elige cuánto tiempo debe conservar WPVulnerability los registros de respuestas de la API. Los registros más antiguos se eliminan automáticamente.','Save Configuration'=>'Guardar configuración','Log retention is currently disabled.'=>'La retención de registros está actualmente desactivada.','API responses are not being saved.'=>'Las respuestas de la API no se están guardando.','Log Details'=>'Detalles del registro','Date'=>'Fecha','API Endpoint'=>'Endpoint de la API','API Response'=>'Respuesta de la API','Back to Logs'=>'Volver a los registros','No logs available'=>'No hay registros disponibles','API response logs will appear here once the vulnerability scanner runs.'=>'Los registros de respuestas de la API aparecerán aquí una vez que el escáner de vulnerabilidades se ejecute.','API Response Logs'=>'Registros de respuestas de la API','Show:'=>'Mostrar:','Apply'=>'Aplicar','Showing %1$s–%2$s of %3$s'=>'Mostrando %1$s–%2$s de %3$s','Actions'=>'Acciones','View'=>'Ver','Danger Zone'=>'Zona de peligro','Permanently delete all API response logs. This action cannot be undone.'=>'Eliminar permanentemente todos los registros de respuestas de la API. Esta acción no se puede deshacer.','Are you sure you want to delete all logs? This action cannot be undone.'=>'¿Estás seguro de que quieres eliminar todos los registros? Esta acción no se puede deshacer.','Delete All Logs'=>'Eliminar todos los registros','Reload Data from API'=>'Recargar datos desde la API','Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information.'=>'Recarga toda la información del Núcleo, Plugins, Temas y otros componentes directamente desde la API para tener datos actualizados. Esto limpiará la caché y obtendrá información de vulnerabilidades actualizada.','Reload Data'=>'Recargar datos','Test Email Notifications'=>'Probar notificaciones por correo electrónico','Send a test email notification with current vulnerability data to verify your email configuration is working correctly.'=>'Envía un correo electrónico de prueba con los datos de vulnerabilidades actuales para verificar que la configuración del correo electrónico funciona correctamente.','From address (configured via constant):'=>'Dirección de origen (configurada mediante constante):','From address (default):'=>'Dirección de origen (por defecto):','Learn how to customize the email sender address →'=>'Aprende a personalizar la dirección del remitente del correo electrónico →','Send Test Email'=>'Enviar correo electrónico de prueba','WP-Cron Status'=>'Estado de WP-Cron','View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly.'=>'Ver y gestionar los eventos programados de WP-Cron. Compara los horarios esperados con los trabajos cron reales para asegurarte de que las tareas automatizadas se ejecutan correctamente.','No cron data available.'=>'No hay datos de cron disponibles.','Hook'=>'Hook','Expected'=>'Esperado','Found'=>'Encontrado','Next Run'=>'Próxima ejecución','Status'=>'Estado','Not expected'=>'No esperado','None'=>'Ninguna','OK'=>'OK','⚠️ Unexpected WPVulnerability Events'=>'⚠️ Eventos inesperados de WPVulnerability','No interval'=>'Sin intervalo','Next:'=>'Siguiente:','Repair Cron Events'=>'Reparar eventos cron','Uninstall Data'=>'Datos de desinstalación','By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall.'=>'Por defecto, todos los datos del plugin se conservan cuando se elimina WPVulnerability. Activa la opción a continuación solo si quieres que todas las opciones, registros y datos en caché se eliminen permanentemente al desinstalar.','Delete all plugin data on uninstall'=>'Eliminar todos los datos del plugin al desinstalar','Default: unchecked (data preserved). Check only if you want a clean removal.'=>'Por defecto: sin marcar (datos conservados). Marca solo si quieres una eliminación limpia.','Save preference'=>'Guardar preferencia','Reset WPVulnerability'=>'Restablecer WPVulnerability','Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API.'=>'Elimina todos los ajustes de WPVulnerability, datos en caché, registros y eventos programados, y luego restaura los valores predeterminados y recarga los datos desde la API.','This action cannot be undone.'=>'Esta acción no se puede deshacer.','Are you sure you want to reset all WPVulnerability data? This action cannot be undone.'=>'¿Estás seguro de que quieres restablecer todos los datos de WPVulnerability? Esta acción no se puede deshacer.','Reset Plugin'=>'Restablecer plugin','Vulnerability Database Statistics'=>'Estadísticas de la base de datos de vulnerabilidades','%s vulnerability'=>'%s vulnerabilidad' . "\0" . '%s vulnerabilidades','(%s product)'=>'(%s producto)' . "\0" . '(%s productos)','No data'=>'Sin datos','Database last updated: %s'=>'Base de datos actualizada por última vez: %s','Intelligence Sources'=>'Fuentes de inteligencia','Number of vulnerabilities contributed by each intelligence source.'=>'Número de vulnerabilidades aportadas por cada fuente de inteligencia.','Source'=>'Fuente','Core'=>'Núcleo','Sponsors'=>'Patrocinadores','No sponsor data available.'=>'No hay datos de patrocinadores disponibles.','Contributors'=>'Colaboradores','No contributor data available.'=>'No hay datos de colaboradores disponibles.','You do not have sufficient permissions to access this page.'=>'No tienes permisos suficientes para acceder a esta página.','WPVulnerability settings'=>'Ajustes de WPVulnerability','Configure and save these settings to receive notifications.'=>'Configura y guarda estos ajustes para recibir notificaciones.','Configure and save these settings to hide vulnerabilities.'=>'Establece y guarda estos ajustes para ocultar vulnerabilidades.','Default administrator email'=>'Correo electrónico del administrador por defecto','Read more if you want to force the cache time.'=>'Lee más si quieres forzar el tiempo de caché','Never'=>'Nunca','Daily'=>'Diariamente','Weekly'=>'Semanalmente','Day'=>'Día','Hour'=>'Hora','Minute'=>'Minuto','Read more about how to force the deactivation of an item.'=>'Lee más acerca de cómo forzar la desactivación de un elemento.','Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com'=>'URL de webhook de Slack no válida. Debe ser una URL HTTPS válida de hooks.slack.com','Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com'=>'URL de webhook de Microsoft Teams no válida. Debe ser una URL HTTPS válida de office.com, office365.com o api.hooks.microsoft.com','Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com'=>'URL de webhook de Discord no válida. Debe ser una URL HTTPS válida de discord.com o discordapp.com','Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Formato de token de bot de Telegram no válido. Debe ser similar a: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','All Clear'=>'Todo en orden','%d Critical Issue Found'=>'%d problema crítico encontrado' . "\0" . '%d problemas críticos encontrados','%d Issue Found'=>'%d problema encontrado' . "\0" . '%d problemas encontrados','Never checked'=>'Nunca verificado','%d minute ago'=>'hace %d minuto' . "\0" . 'hace %d minutos','%d hour ago'=>'hace %d hora' . "\0" . 'hace %d horas','Last checked: %s'=>'Última comprobación: %s','Refresh Now'=>'Actualizar ahora','No vulnerabilities detected'=>'No se han detectado vulnerabilidades','Your site is up to date and secure'=>'Tu sitio está actualizado y seguro','Server Software'=>'Software del servidor','Site Health'=>'Salud del sitio','Settings'=>'Ajustes','WPVulnerability Status'=>'Estado de WPVulnerability','Receive vulnerability notifications'=>'Recibir avisos de vulnerabilidades','Cache expiration time'=>'Tiempo de caducidad de la caché','How often you want to receive notifications'=>'Con qué frecuencia deseas recibir avisos','Where do you want to receive notifications?'=>'¿Dónde quieres recibir avisos?','Email addresses to notify (separated by commas)'=>'Direcciones de correo electrónico para avisar (separadas por comas)','Slack webhook URL'=>'URL del webhook de Slack','Teams webhook URL'=>'URL del webhook de Teams','Vulnerabilities to hide'=>'Vulnerabilidades a ocultar','What do you want to hide?'=>'¿Qué quieres ocultar?','Standard (Hybrid Detection)'=>'Estándar (detección híbrida)','Strict (Extensions Only)'=>'Estricto (solo extensiones)','Disabled (No Detection)'=>'Desactivado (sin detección)','Security Status'=>'Estado de seguridad','Security Mode'=>'Modo de seguridad','Shell Execution'=>'Ejecución de shell','Enabled'=>'Activado','Audit Logging'=>'Registro de auditoría','Enabled (%d days)'=>'Activado (%d días)','Total Log Entries'=>'Total de entradas de registro','Last Shell Execution'=>'Última ejecución de shell','%s ago'=>'hace %s','Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.'=>'Configura los ajustes de seguridad mediante constantes en wp-config.php: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.','See security configuration documentation for details.'=>'Consulta la documentación de configuración de seguridad para más detalles.','Memcached'=>'Memcached','Imagick Extension'=>'Extensión Imagick','Redis Extension'=>'Extensión Redis','Memcached Extension'=>'Extensión Memcached','Memcache Extension'=>'Extensión Memcache','SQLite3 Extension'=>'Extensión SQLite3','PDO SQLite'=>'PDO SQLite','Shell Command'=>'Comando de shell','Binary Check'=>'Comprobación de binario','Not Detected'=>'No detectado','Software Detection Methods'=>'Métodos de detección de software','Shows which detection method was used for each software component and the reliability score.'=>'Muestra qué método de detección se utilizó para cada componente de software y la puntuación de fiabilidad.','Component'=>'Componente','Version'=>'Versión','Detection Method'=>'Método de detección','Reliability'=>'Fiabilidad','Not detected'=>'No detectado','Shell Execution Audit Logs'=>'Registros de auditoría de ejecución de shell','Complete audit trail of shell command executions for security monitoring.'=>'Registro de auditoría completo de ejecuciones de comandos de shell para la monitorización de seguridad.','No shell execution logs found.'=>'No se han encontrado registros de ejecución de shell.','Logs will appear here when shell commands are executed for software detection.'=>'Los registros aparecerán aquí cuando se ejecuten comandos de shell para la detección de software.','Time'=>'Tiempo','Command'=>'Comando','User'=>'Usuario','Output'=>'Salida','Showing the %d most recent log entries.'=>'Mostrando las %d entradas de registro más recientes.','Invalid nonce.'=>'Nonce no válido.','Insufficient permissions.'=>'Permisos insuficientes.','No component specified.'=>'No se ha especificado ningún componente.','Debug Information'=>'Información de depuración','This tab is only visible when WP_DEBUG is enabled. Use with caution.'=>'Esta pestaña solo es visible cuando WP_DEBUG está activado. Úsala con precaución.','System Information'=>'Información del sistema','WordPress Version'=>'Versión de WordPress','Multisite'=>'Multisitio','Yes'=>'Sí','No'=>'No','Language'=>'Idioma','PHP Version'=>'Versión de PHP','PHP Extensions'=>'Extensiones de PHP','PHP Memory Limit'=>'Límite de memoria de PHP','Database'=>'Base de datos','Web Server'=>'Servidor web','WP_DEBUG'=>'WP_DEBUG','WP_DEBUG_LOG'=>'WP_DEBUG_LOG','Path:'=>'Ruta:','Size: %s'=>'Tamaño: %s','View Log File'=>'Ver archivo de registro','Log file is not web-accessible (outside wp-content)'=>'El archivo de registro no es accesible desde la web (fuera de wp-content)','Log file does not exist yet'=>'El archivo de registro aún no existe','Plugin Version'=>'Versión del plugin','Component Detection'=>'Detección de componentes','Version Detected'=>'Versión detectada','Analyzed'=>'Analizado','Cache Status'=>'Estado de la caché','Configuration Summary'=>'Resumen de configuración','Cache Duration'=>'Duración de la caché','Log Retention'=>'Retención de registros','Components Analyzed'=>'Componentes analizados','Notification Email'=>'Correo electrónico de notificación','Slack Webhook'=>'Webhook de Slack','Configured & Enabled'=>'Configurado y activado','Configured (Disabled)'=>'Configurado (desactivado)','Not configured'=>'No configurado','Teams Webhook'=>'Webhook de Teams','Discord Webhook'=>'Webhook de Discord','Telegram Bot'=>'Bot de Telegram','Cron Status'=>'Estado del cron','Update Database'=>'Actualizar base de datos','Next run: %s'=>'Próxima ejecución: %s','Not scheduled'=>'No programado','Send Notification'=>'Enviar notificación','Run Update Now'=>'Ejecutar actualización ahora','Run Notification Now'=>'Enviar notificación ahora','You do not have permission to run these actions.'=>'No tienes permiso para ejecutar estas acciones.','API Testing'=>'Prueba de la API','Test API connectivity for each component. Click a button to send a test request.'=>'Prueba la conectividad de la API para cada componente. Haz clic en un botón para enviar una solicitud de prueba.','Test %s'=>'Probar %s','Testing...'=>'Probando...','HTTP Code:'=>'Código HTTP:','Response Time:'=>'Tiempo de respuesta:','Response Preview'=>'Vista previa de la respuesta','Test'=>'Probar','Error:'=>'Error:','AJAX request failed.'=>'La solicitud AJAX ha fallado.','You do not have permission to test API connectivity.'=>'No tienes permiso para probar la conectividad de la API.','Database Options Viewer'=>'Visor de opciones de base de datos','View the raw data stored in WordPress options.'=>'Ver los datos brutos almacenados en las opciones de WordPress.','Select an option...'=>'Selecciona una opción...','Option not found or empty.'=>'Opción no encontrada o vacía.','Quick Actions'=>'Acciones rápidas','Perform debugging actions. Use with caution.'=>'Realizar acciones de depuración. Úsalas con precaución.','Are you sure you want to clear all caches?'=>'¿Estás seguro de que quieres limpiar todas las cachés?','Clear All Caches'=>'Limpiar todas las cachés','Are you sure you want to reset signatures?'=>'¿Estás seguro de que quieres restablecer las firmas?','Reset Signatures'=>'Restablecer firmas','Export Debug Info'=>'Exportar información de depuración','You do not have permission to perform these actions.'=>'No tienes permiso para realizar estas acciones.','Settings saved.'=>'Ajustes guardados.','WPVulnerability cron events have been repaired across the network.'=>'Los eventos cron de WPVulnerability han sido reparados en toda la red.','You do not have permission to access this page.'=>'No tienes permiso para acceder a esta página.','WordPress %1$s has a known vulnerability that may be affecting your installed version.'=>'WordPress %1$s tiene una vulnerabilidad conocida que puede estar afectando a tu versión instalada.','Actively exploited'=>'Activamente explotada','Public exploit'=>'Exploit público','Automatable'=>'Automatizable','References:'=>'Referencias:','Invalid component specified.'=>'Componente especificado no válido.','Version not detected for this component.'=>'Versión no detectada para este componente.','API request successful.'=>'Solicitud a la API correcta.','API returned HTTP code %d.'=>'La API ha devuelto el código HTTP %d.','WPVulnerability Logs'=>'Registros de WPVulnerability','WPVulnerability Log'=>'Registro de WPVulnerability','Low'=>'Baja','Medium'=>'Media','High'=>'Alta','Critical'=>'Crítica','WPVulnerability Shell Logs'=>'Registros de shell de WPVulnerability','WPVulnerability Shell Log'=>'Registro de shell de WPVulnerability','Every week'=>'Cada semana','Every day'=>'Cada día','Invalid request.'=>'Solicitud no válida.','You have unsubscribed from WPVulnerability notifications.'=>'Te has dado de baja de los avisos de WPVulnerability.','Learn more about the WordPress Vulnerability Database API at %2$s'=>'Más información acerca de la WordPress Vulnerability Database API en %2$s','Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings.'=>'¿Quieres dejar de recibir estas alertas? Darse de baja o cambiar la frecuencia de los correos electrónicos a Nunca en los ajustes de WPVulnerability.','No vulnerabilities found'=>'No se han encontrado vulnerabilidades','This is likely a test. The site does not have vulnerabilities.'=>'Es probable que se trate de una prueba. El sitio no tiene vulnerabilidades.','Core vulnerabilities'=>'Vulnerabilidades en el núcleo de WordPress','Plugins vulnerabilities'=>'Vulnerabilidades en plugins','Themes vulnerabilities'=>'Vulnerabilidades en temas','PHP vulnerabilities'=>'Vulnerabilidades de PHP','Apache HTTPD vulnerabilities'=>'Vulnerabilidades de Apache HTTPD','Nginx vulnerabilities'=>'Vulnerabilidades de nginx','MariaDB vulnerabilities'=>'Vulnerabilidades de MariaDB','MySQL vulnerabilities'=>'Vulnerabilidades de MySQL','ImageMagick vulnerabilities'=>'Vulnerabilidades de ImageMagick','curl vulnerabilities'=>'Vulnerabilidades de curl','memcached vulnerabilities'=>'Vulnerabilidades de memcached','Redis vulnerabilities'=>'Vulnerabilidades de Redis','SQLite vulnerabilities'=>'Vulnerabilidades SQLite','Vulnerability found: %s'=>'Vulnerabilidad encontrada: %s','Vulnerability found'=>'Se ha encontrado una vulnerabilidad','%1$s has a known vulnerability that may be affecting your installed version.'=>'%1$s tiene una vulnerabilidad conocida que puede estar afectando a tu versión instalada.','This plugin is closed. Please replace it with another.'=>'Este plugin está cerrado. Por favor, reemplázalo por otro.','This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates.'=>'Esta vulnerabilidad no parece tener parche. Presta atención a las próximas actualizaciones del plugin.','It hasn\'t been updated in over a year.'=>'Hace más de un año que no se actualiza.','It may no longer be available (closed?).'=>'Puede que ya no esté disponible (¿cerrado?).','Last updated on'=>'Última actualización el','Vulnerabilities (%d)'=>'Vulnerabilidades (%d)','%s running'=>'%s corriendo','End of Life'=>'Fin de vida útil','End of life:'=>'Fin de vida útil:','Supported'=>'Con soporte','Plugin'=>'Plugin','Theme'=>'Tema','End of life: %s'=>'Fin de vida útil: %s','EOL'=>'EOL','Network Settings'=>'Ajustes de red','Vulnerabilities'=>'Vulnerabilidades','Every 6 hours'=>'Cada 6 horas','Database updates'=>'Actualizaciones de la base de datos','Log cleanup'=>'Limpieza de registros','Notifications are scheduled, but settings currently disable them. Please review the notifications tab.'=>'Las notificaciones están programadas, pero la configuración las desactiva actualmente. Por favor, revisa la pestaña de notificaciones.','This event should not be scheduled for this site.'=>'Este evento no debería estar programado para este sitio.','Not expected for this site.'=>'No esperado para este sitio.','No instances found.'=>'No se han encontrado instancias.','Scheduled with an unexpected interval.'=>'Programado con un intervalo inesperado.','Multiple instances detected.'=>'Múltiples instancias detectadas.','Scheduled as expected.'=>'Programado como se esperaba.','There aren\'t plugins vulnerabilities'=>'No hay vulnerabilidades en los plugins','Shows possible vulnerabilities that exist in installed plugins.'=>'Muestra posibles vulnerabilidades que existen en los plugins instalados.','There is %d plugin with vulnerabilities'=>'Hay %d plugin con vulnerabilidades' . "\0" . 'Hay %d plugins con vulnerabilidades','We\'ve detected potential vulnerabilities in installed plugins. Please check them and keep them updated.'=>'Hemos detectado posibles vulnerabilidades en los plugins instalados. Por favor, verifícalos y mantenlos actualizados.','Update plugins'=>'Actualizar plugins','There aren\'t themes vulnerabilities'=>'No hay vulnerabilidades en los temas','Shows possible vulnerabilities that exist in installed themes.'=>'Muestra posibles vulnerabilidades que existen en los temas instalados.','There is %d theme with vulnerabilities'=>'Hay %d tema con vulnerabilidades' . "\0" . 'Hay %d temas con vulnerabilidades','We\'ve detected potential vulnerabilities in installed themes. Please check them and keep them updated.'=>'Hemos detectado posibles vulnerabilidades en los temas instalados. Por favor, verifícalos y mantenlos actualizados.','Update themes'=>'Actualizar temas','There aren\'t WordPress vulnerabilities'=>'No hay vulnerabilidades en WordPress','Shows possible vulnerabilities existing in the WordPress core.'=>'Muestra las posibles vulnerabilidades existentes en el núcleo de WordPress.','There is %d core vulnerability'=>'Hay %d vulnerabilidad en el núcleo' . "\0" . 'Hay %d vulnerabilidades en el núcleo','We\'ve detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated.'=>'Hemos detectado posibles vulnerabilidades en esta instalación de WordPress. Por favor, compruébalas y mantén tu instalación actualizada.','Update WordPress'=>'Actualizar WordPress','Nginx'=>'Nginx','Invalid software type'=>'Tipo de software no válido','Error'=>'Error','The specified software type is not valid.'=>'El tipo de software especificado no es válido','There aren\'t %s vulnerabilities'=>'No hay vulnerabilidades de %s','Shows possible vulnerabilities existing in %s.'=>'Muestra posibles vulnerabilidades existentes en %s.','There is %1$d %2$s vulnerability'=>'Hay %d vulnerabilidad de %2$s.' . "\0" . 'Hay %d vulnerabilidades de %2$s.','We\'ve detected potential vulnerabilities in %s. Please check them and keep your installation updated.'=>'Hemos detectado posibles vulnerabilidades en %s. Por favor, compruébalas y mantén actualizada tu instalación.','How to update PHP'=>'Cómo actualizar PHP','WPVulnerability Core'=>'WP Vulnerability - Núcleo','WPVulnerability Themes'=>'WPVulnerability - Temas','WPVulnerability Plugins'=>'WPVulnerability - Plugins','WPVulnerability PHP'=>'WPVulnerability PHP','WPVulnerability Apache HTTPD'=>'WPVulnerability Apache HTTPD','WPVulnerability Nginx'=>'WPVulnerability nginx','WPVulnerability MariaDB'=>'WPVulnerability MariaDB','WPVulnerability MySQL'=>'WPVulnerability MySQL','WPVulnerability ImageMagick'=>'WPVulnerability ImageMagick','WPVulnerability curl'=>'WPVulnerability curl','WPVulnerability memcached'=>'WPVulnerability memcached','WPVulnerability redis'=>'WPVulnerability Redis','WPVulnerability sqlite'=>'WPVulnerability SQLite','This theme is closed. Please replace it with another.'=>'Este tema está cerrado. Por favor, reemplázalo por otro.','This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates.'=>'Esta vulnerabilidad no parece tener parche. Presta atención a las próximas actualizaciones del tema.','This theme has known vulnerabilities that may be affecting your installed version.'=>'Este tema tiene vulnerabilidades conocidas que pueden estar afectando a tu versión instalada.']]; \ No newline at end of file diff --git a/languages/wpvulnerability-es.mo b/languages/wpvulnerability-es.mo new file mode 100644 index 0000000000000000000000000000000000000000..f053d7f4ffbf7037c1f132d3e86419546bfffd5d GIT binary patch literal 41117 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." +msgstr "" +"Este comando requiere un administrador de WordPress. Ejecuta con --" +"user=." + +#: class-wpvulnerability-cli.php:156 +msgid "No core vulnerabilities found." +msgstr "No se han encontrado vulnerabilidades en el núcleo." + +#: class-wpvulnerability-cli.php:275 +msgid "No plugin vulnerabilities found." +msgstr "No se han encontrado vulnerabilidades en plugins." + +#: class-wpvulnerability-cli.php:393 +msgid "No theme vulnerabilities found." +msgstr "No se han encontrado vulnerabilidades en temas." + +#. translators: %s is the software name (php, apache, nginx, etc.) +#: class-wpvulnerability-cli.php:490 +#, php-format +msgid "No %s vulnerabilities found." +msgstr "No se han encontrado vulnerabilidades de %s." + +#: wpvulnerability-admin.php:63 wpvulnerability-adminms.php:227 +msgid "Data from source has been reloaded." +msgstr "Los datos de origen se han vuelto a cargar." + +#: wpvulnerability-admin.php:65 wpvulnerability-adminms.php:229 +msgid "You do not have permission to reload data." +msgstr "No tienes permiso para recargar datos." + +#: wpvulnerability-admin.php:93 wpvulnerability-adminms.php:255 +msgid "Test email has been sent." +msgstr "El correo electrónico de prueba ha sido enviado." + +#: wpvulnerability-admin.php:95 wpvulnerability-adminms.php:259 +msgid "Test email has failed. Please, check your email settings." +msgstr "" +"El correo electrónico de prueba ha fallado. Por favor, comprueba tus ajustes " +"de correo electrónico." + +#: wpvulnerability-admin.php:98 wpvulnerability-adminms.php:263 +msgid "You do not have permission to send test emails." +msgstr "No tienes permiso para enviar correos electrónicos de prueba." + +#: wpvulnerability-admin.php:113 +msgid "WPVulnerability cron events have been repaired." +msgstr "Los eventos cron de WPVulnerability han sido reparados." + +#: wpvulnerability-admin.php:115 wpvulnerability-adminms.php:279 +msgid "You do not have permission to repair cron events." +msgstr "No tienes permiso para reparar eventos cron." + +#: wpvulnerability-admin.php:127 wpvulnerability-adminms.php:291 +msgid "All logs have been deleted." +msgstr "Todos los registros han sido eliminados." + +#: wpvulnerability-admin.php:129 wpvulnerability-adminms.php:293 +msgid "You do not have permission to delete logs." +msgstr "No tienes permiso para eliminar registros." + +#: wpvulnerability-admin.php:146 +msgid "Uninstall preference saved." +msgstr "Preferencia de desinstalación guardada." + +#: wpvulnerability-admin.php:153 wpvulnerability-adminms.php:316 +msgid "WPVulnerability has been reset to defaults and reloaded." +msgstr "WPVulnerability ha sido restablecido a los valores predeterminados y recargado." + +#: wpvulnerability-admin.php:155 wpvulnerability-adminms.php:318 +msgid "You do not have permission to reset WPVulnerability." +msgstr "No tienes permiso para restablecer WPVulnerability." + +#: wpvulnerability-admin.php:170 wpvulnerability-adminms.php:333 +msgid "All caches have been cleared." +msgstr "Todas las cachés han sido limpiadas." + +#: wpvulnerability-admin.php:172 wpvulnerability-adminms.php:335 +msgid "You do not have permission to clear caches." +msgstr "No tienes permiso para limpiar las cachés." + +#: wpvulnerability-admin.php:187 wpvulnerability-adminms.php:350 +msgid "Plugin and theme signatures have been reset." +msgstr "Las firmas de plugins y temas han sido restablecidas." + +#: wpvulnerability-admin.php:189 wpvulnerability-adminms.php:352 +msgid "You do not have permission to reset signatures." +msgstr "No tienes permiso para restablecer las firmas." + +#: wpvulnerability-admin.php:212 wpvulnerability-adminms.php:375 +msgid "You do not have permission to export debug information." +msgstr "No tienes permiso para exportar información de depuración." + +#: wpvulnerability-admin.php:224 wpvulnerability-adminms.php:387 +msgid "Database update has been executed." +msgstr "La actualización de la base de datos ha sido ejecutada." + +#: wpvulnerability-admin.php:226 wpvulnerability-adminms.php:389 +msgid "You do not have permission to run database updates." +msgstr "No tienes permiso para ejecutar actualizaciones de la base de datos." + +#: wpvulnerability-admin.php:247 wpvulnerability-adminms.php:410 +msgid "Notification has been sent." +msgstr "El aviso ha sido enviado." + +#: wpvulnerability-admin.php:249 wpvulnerability-adminms.php:412 +msgid "Notification sending failed." +msgstr "El envío del aviso ha fallado." + +#: wpvulnerability-admin.php:252 wpvulnerability-adminms.php:415 +msgid "You do not have permission to send notifications." +msgstr "No tienes permiso para enviar avisos." + +#: wpvulnerability-admin.php:266 wpvulnerability-adminms.php:539 +#: wpvulnerability-schedule.php:323 +msgid "Notifications" +msgstr "Avisos" + +#: wpvulnerability-admin.php:269 wpvulnerability-adminms.php:542 +msgid "Analysis" +msgstr "Análisis" + +#: wpvulnerability-admin.php:272 wpvulnerability-adminms.php:545 +msgid "Logs" +msgstr "Registros" + +#: wpvulnerability-admin.php:275 wpvulnerability-adminms.php:548 +#: wpvulnerability-sitehealth.php:25 wpvulnerability-sitehealth.php:77 +#: wpvulnerability-sitehealth.php:129 wpvulnerability-sitehealth.php:210 +msgid "Security" +msgstr "Seguridad" + +#: wpvulnerability-admin.php:278 wpvulnerability-adminms.php:551 +msgid "Tools" +msgstr "Herramientas" + +#: wpvulnerability-admin.php:285 wpvulnerability-adminms.php:558 +msgid "Debug" +msgstr "Depuración" + +#: wpvulnerability-admin.php:290 wpvulnerability-adminms.php:563 +msgid "About" +msgstr "Acerca de" + +#: wpvulnerability-admin.php:427 wpvulnerability-adminms.php:700 +msgid "Notification Settings" +msgstr "Ajustes de notificaciones" + +#: wpvulnerability-admin.php:430 wpvulnerability-adminms.php:703 +msgid "Configure how and when you want to receive vulnerability notifications." +msgstr "Configura cómo y cuándo quieres recibir avisos de vulnerabilidades." + +#: wpvulnerability-admin.php:431 wpvulnerability-adminms.php:704 +msgid "" +"Stay informed about security vulnerabilities in your WordPress installation, " +"plugins, themes, and server software." +msgstr "" +"Mantente informado sobre las vulnerabilidades de seguridad en tu instalación " +"de WordPress, plugins, temas y software del servidor." + +#: wpvulnerability-admin.php:438 wpvulnerability-adminms.php:711 +msgid "Cache Expiration Time" +msgstr "Tiempo de caducidad de la caché" + +#: wpvulnerability-admin.php:440 wpvulnerability-admin.php:814 +#: wpvulnerability-adminms.php:713 wpvulnerability-adminms.php:1087 +msgid "FORCED" +msgstr "FORZADO" + +#: wpvulnerability-admin.php:444 wpvulnerability-adminms.php:717 +msgid "How long to cache vulnerability data before refreshing from the API." +msgstr "Cuánto tiempo almacenar en caché los datos de vulnerabilidades antes de actualizarlos desde la API." + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:453 wpvulnerability-admin.php:1891 +#: wpvulnerability-admin.php:3631 wpvulnerability-adminms.php:726 +#: wpvulnerability-adminms.php:2039 wpvulnerability-adminms.php:3825 +#, php-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d hora" +msgstr[1] "%d horas" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:469 wpvulnerability-adminms.php:742 +#, php-format +msgid "" +"You can force the cache time via wp-config.php constant. Learn more →" +msgstr "" +"Puedes forzar el tiempo de caché mediante la constante en wp-config.php. Más información →" + +#: wpvulnerability-admin.php:481 wpvulnerability-admin.php:3665 +#: wpvulnerability-adminms.php:754 wpvulnerability-adminms.php:3859 +msgid "Notification Frequency" +msgstr "Frecuencia de notificaciones" + +#: wpvulnerability-admin.php:484 wpvulnerability-adminms.php:757 +msgid "Choose how often you want to receive vulnerability notifications." +msgstr "Elige con qué frecuencia quieres recibir avisos de vulnerabilidades." + +#: wpvulnerability-admin.php:489 wpvulnerability-adminms.php:762 +msgid "Never - Disable automatic notifications" +msgstr "Nunca - Desactivar notificaciones automáticas" + +#: wpvulnerability-admin.php:493 wpvulnerability-adminms.php:766 +msgid "Daily - Receive notifications every day" +msgstr "Diariamente - Recibir notificaciones cada día" + +#: wpvulnerability-admin.php:497 wpvulnerability-adminms.php:770 +msgid "Weekly - Receive notifications once a week" +msgstr "Semanalmente - Recibir notificaciones una vez a la semana" + +#: wpvulnerability-admin.php:503 wpvulnerability-adminms.php:776 +msgid "Day:" +msgstr "Día:" + +#: wpvulnerability-admin.php:505 wpvulnerability-admin.php:1955 +#: wpvulnerability-adminms.php:778 wpvulnerability-adminms.php:2115 +msgid "Monday" +msgstr "Lunes" + +#: wpvulnerability-admin.php:506 wpvulnerability-admin.php:1956 +#: wpvulnerability-adminms.php:779 wpvulnerability-adminms.php:2116 +msgid "Tuesday" +msgstr "Martes" + +#: wpvulnerability-admin.php:507 wpvulnerability-admin.php:1957 +#: wpvulnerability-adminms.php:780 wpvulnerability-adminms.php:2117 +msgid "Wednesday" +msgstr "Miércoles" + +#: wpvulnerability-admin.php:508 wpvulnerability-admin.php:1958 +#: wpvulnerability-adminms.php:781 wpvulnerability-adminms.php:2118 +msgid "Thursday" +msgstr "Jueves" + +#: wpvulnerability-admin.php:509 wpvulnerability-admin.php:1959 +#: wpvulnerability-adminms.php:782 wpvulnerability-adminms.php:2119 +msgid "Friday" +msgstr "Viernes" + +#: wpvulnerability-admin.php:510 wpvulnerability-admin.php:1960 +#: wpvulnerability-adminms.php:783 wpvulnerability-adminms.php:2120 +msgid "Saturday" +msgstr "Sábado" + +#: wpvulnerability-admin.php:511 wpvulnerability-admin.php:1961 +#: wpvulnerability-adminms.php:784 wpvulnerability-adminms.php:2121 +msgid "Sunday" +msgstr "Domingo" + +#: wpvulnerability-admin.php:515 wpvulnerability-adminms.php:788 +msgid "Time:" +msgstr "Hora:" + +#: wpvulnerability-admin.php:519 wpvulnerability-adminms.php:792 +msgid "(24-hour format, server timezone)" +msgstr "(formato de 24 horas, zona horaria del servidor)" + +#: wpvulnerability-admin.php:528 wpvulnerability-adminms.php:801 +msgid "Notification Channels" +msgstr "Canales de notificación" + +#: wpvulnerability-admin.php:531 wpvulnerability-adminms.php:804 +msgid "Select where you want to receive notifications." +msgstr "Selecciona dónde quieres recibir las notificaciones." + +#: wpvulnerability-admin.php:536 wpvulnerability-admin.php:2011 +#: wpvulnerability-adminms.php:809 wpvulnerability-adminms.php:2169 +msgid "Email" +msgstr "Correo electrónico" + +#: wpvulnerability-admin.php:539 wpvulnerability-adminms.php:812 +msgid "Email Addresses (separated by commas):" +msgstr "Direcciones de correo electrónico (separadas por comas):" + +#: wpvulnerability-admin.php:541 wpvulnerability-adminms.php:814 +msgid "Default:" +msgstr "Por defecto:" + +#: wpvulnerability-admin.php:546 wpvulnerability-admin.php:2016 +#: wpvulnerability-adminms.php:819 wpvulnerability-adminms.php:2174 +msgid "Slack" +msgstr "Slack" + +#: wpvulnerability-admin.php:549 wpvulnerability-adminms.php:822 +msgid "Slack Webhook URL:" +msgstr "URL del webhook de Slack:" + +#. translators: %s: Slack documentation URL +#: wpvulnerability-admin.php:555 wpvulnerability-adminms.php:828 +#, php-format +msgid "" +"Learn how to " +"create a Slack incoming webhook →" +msgstr "" +"Aprende a " +"crear un webhook entrante de Slack →" + +#: wpvulnerability-admin.php:564 wpvulnerability-admin.php:2021 +#: wpvulnerability-adminms.php:837 wpvulnerability-adminms.php:2179 +msgid "Microsoft Teams" +msgstr "Microsoft Teams" + +#: wpvulnerability-admin.php:567 wpvulnerability-adminms.php:840 +msgid "Teams Webhook URL:" +msgstr "URL del webhook de Teams:" + +#. translators: %s: Microsoft Teams documentation URL +#: wpvulnerability-admin.php:573 wpvulnerability-adminms.php:846 +#, php-format +msgid "" +"Learn how to " +"create a Teams incoming webhook →" +msgstr "" +"Aprende a " +"crear un webhook entrante de Teams →" + +#: wpvulnerability-admin.php:582 wpvulnerability-adminms.php:855 +msgid "Discord" +msgstr "Discord" + +#: wpvulnerability-admin.php:585 wpvulnerability-adminms.php:858 +msgid "Discord Webhook URL:" +msgstr "URL del webhook de Discord:" + +#. translators: %s: Discord documentation URL +#: wpvulnerability-admin.php:591 wpvulnerability-adminms.php:864 +#, php-format +msgid "" +"Learn how to " +"create a Discord webhook →" +msgstr "" +"Aprende a " +"crear un webhook de Discord →" + +#: wpvulnerability-admin.php:600 wpvulnerability-adminms.php:873 +msgid "Telegram" +msgstr "Telegram" + +#: wpvulnerability-admin.php:603 wpvulnerability-adminms.php:876 +msgid "Telegram Bot Token:" +msgstr "Token del bot de Telegram:" + +#: wpvulnerability-admin.php:605 wpvulnerability-adminms.php:878 +msgid "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "Formato: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:607 wpvulnerability-adminms.php:880 +msgid "Telegram Chat ID:" +msgstr "ID de chat de Telegram:" + +#. translators: %s: Telegram documentation URL +#: wpvulnerability-admin.php:613 wpvulnerability-adminms.php:886 +#, php-format +msgid "" +"Learn how to " +"create a Telegram bot and get Chat ID →" +msgstr "" +"Aprende a " +"crear un bot de Telegram y obtener el ID de chat →" + +#: wpvulnerability-admin.php:623 wpvulnerability-adminms.php:896 +msgid "Save Notification Settings" +msgstr "Guardar ajustes de notificaciones" + +#: wpvulnerability-admin.php:700 wpvulnerability-admin.php:2552 +#: wpvulnerability-adminms.php:973 wpvulnerability-adminms.php:2459 +msgid "WordPress Components" +msgstr "Componentes de WordPress" + +#: wpvulnerability-admin.php:703 wpvulnerability-admin.php:2560 +#: wpvulnerability-adminms.php:976 wpvulnerability-adminms.php:2467 +msgid "WordPress Core" +msgstr "Núcleo de WordPress" + +#: wpvulnerability-admin.php:707 wpvulnerability-admin.php:1472 +#: wpvulnerability-admin.php:1573 wpvulnerability-admin.php:2109 +#: wpvulnerability-admin.php:2571 wpvulnerability-adminms.php:980 +#: wpvulnerability-adminms.php:1744 wpvulnerability-adminms.php:1843 +#: wpvulnerability-adminms.php:2266 wpvulnerability-adminms.php:2478 +msgid "Plugins" +msgstr "Plugins" + +#: wpvulnerability-admin.php:711 wpvulnerability-admin.php:1473 +#: wpvulnerability-admin.php:1574 wpvulnerability-admin.php:2114 +#: wpvulnerability-admin.php:2587 wpvulnerability-adminms.php:984 +#: wpvulnerability-adminms.php:1745 wpvulnerability-adminms.php:1844 +#: wpvulnerability-adminms.php:2271 wpvulnerability-adminms.php:2494 +msgid "Themes" +msgstr "Temas" + +#: wpvulnerability-admin.php:717 wpvulnerability-adminms.php:990 +msgid "Software & Languages" +msgstr "Software e idiomas" + +#: wpvulnerability-admin.php:720 wpvulnerability-admin.php:1474 +#: wpvulnerability-admin.php:2119 wpvulnerability-adminms.php:993 +#: wpvulnerability-adminms.php:1746 wpvulnerability-adminms.php:2276 +#: wpvulnerability-sitehealth.php:178 +msgid "PHP" +msgstr "PHP" + +#: wpvulnerability-admin.php:726 wpvulnerability-adminms.php:999 +msgid "Web Servers" +msgstr "Servidores web" + +#: wpvulnerability-admin.php:729 wpvulnerability-admin.php:1475 +#: wpvulnerability-admin.php:2124 wpvulnerability-adminms.php:1002 +#: wpvulnerability-adminms.php:1747 wpvulnerability-adminms.php:2281 +#: wpvulnerability-sitehealth.php:179 +msgid "Apache HTTPD" +msgstr "Apache HTTPD" + +#: wpvulnerability-admin.php:733 wpvulnerability-admin.php:1476 +#: wpvulnerability-admin.php:2129 wpvulnerability-adminms.php:1006 +#: wpvulnerability-adminms.php:1748 wpvulnerability-adminms.php:2286 +msgid "nginx" +msgstr "nginx" + +#: wpvulnerability-admin.php:739 wpvulnerability-adminms.php:1012 +msgid "Databases" +msgstr "Bases de datos" + +#: wpvulnerability-admin.php:742 wpvulnerability-admin.php:1477 +#: wpvulnerability-admin.php:2134 wpvulnerability-adminms.php:1015 +#: wpvulnerability-adminms.php:1749 wpvulnerability-adminms.php:2291 +#: wpvulnerability-sitehealth.php:181 +msgid "MariaDB" +msgstr "MariaDB" + +#: wpvulnerability-admin.php:746 wpvulnerability-admin.php:1478 +#: wpvulnerability-admin.php:2139 wpvulnerability-adminms.php:1019 +#: wpvulnerability-adminms.php:1750 wpvulnerability-adminms.php:2296 +#: wpvulnerability-sitehealth.php:182 +msgid "MySQL" +msgstr "MySQL" + +#: wpvulnerability-admin.php:750 wpvulnerability-admin.php:1483 +#: wpvulnerability-admin.php:2164 wpvulnerability-admin.php:3104 +#: wpvulnerability-adminms.php:1023 wpvulnerability-adminms.php:1755 +#: wpvulnerability-adminms.php:2321 wpvulnerability-adminms.php:3281 +msgid "SQLite" +msgstr "SQLite" + +#: wpvulnerability-admin.php:756 wpvulnerability-adminms.php:1029 +msgid "Additional Tools" +msgstr "Herramientas adicionales" + +#: wpvulnerability-admin.php:759 wpvulnerability-admin.php:1479 +#: wpvulnerability-admin.php:2144 wpvulnerability-admin.php:3101 +#: wpvulnerability-adminms.php:1032 wpvulnerability-adminms.php:1751 +#: wpvulnerability-adminms.php:2301 wpvulnerability-adminms.php:3278 +#: wpvulnerability-sitehealth.php:183 +msgid "ImageMagick" +msgstr "ImageMagick" + +#: wpvulnerability-admin.php:763 wpvulnerability-admin.php:1480 +#: wpvulnerability-admin.php:2149 wpvulnerability-adminms.php:1036 +#: wpvulnerability-adminms.php:1752 wpvulnerability-adminms.php:2306 +#: wpvulnerability-sitehealth.php:184 +msgid "curl" +msgstr "curl" + +#: wpvulnerability-admin.php:767 wpvulnerability-admin.php:1481 +#: wpvulnerability-admin.php:2154 wpvulnerability-adminms.php:1040 +#: wpvulnerability-adminms.php:1753 wpvulnerability-adminms.php:2311 +msgid "memcached" +msgstr "memcached" + +#: wpvulnerability-admin.php:771 wpvulnerability-admin.php:1482 +#: wpvulnerability-admin.php:2159 wpvulnerability-admin.php:3102 +#: wpvulnerability-adminms.php:1044 wpvulnerability-adminms.php:1754 +#: wpvulnerability-adminms.php:2316 wpvulnerability-adminms.php:3279 +msgid "Redis" +msgstr "Redis" + +#: wpvulnerability-admin.php:784 wpvulnerability-adminms.php:1057 +msgid "Component Analysis Settings" +msgstr "Ajustes de análisis de componentes" + +#: wpvulnerability-admin.php:787 wpvulnerability-adminms.php:1060 +msgid "Enable or disable vulnerability analysis for specific components." +msgstr "Activa o desactiva el análisis de vulnerabilidades para componentes específicos." + +#: wpvulnerability-admin.php:788 wpvulnerability-adminms.php:1061 +msgid "" +"Check the components you want to HIDE from vulnerability scans and reports. " +"Unchecked components will be actively analyzed. Components with active " +"analysis are shown in green, hidden components in red." +msgstr "" +"Marca los componentes que quieres OCULTAR de los análisis y los informes de " +"vulnerabilidades. Los componentes no marcados se analizarán activamente. Los " +"componentes con análisis activo se muestran en verde, los ocultos en rojo." + +#: wpvulnerability-admin.php:820 wpvulnerability-adminms.php:1093 +msgid "Hidden (forced by constant)" +msgstr "Oculto (forzado por constante)" + +#: wpvulnerability-admin.php:823 wpvulnerability-adminms.php:1096 +msgid "🔴 Analysis disabled" +msgstr "🔴 Análisis desactivado" + +#: wpvulnerability-admin.php:826 wpvulnerability-adminms.php:1099 +msgid "🟢 Analysis active" +msgstr "🟢 Análisis activo" + +#: wpvulnerability-admin.php:848 wpvulnerability-adminms.php:1121 +msgid "Tip:" +msgstr "Consejo:" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:852 wpvulnerability-adminms.php:1125 +#, php-format +msgid "" +"You can force-disable components via wp-config.php constants. Learn more about force-hiding " +"checks →" +msgstr "" +"Puedes forzar la desactivación de componentes mediante constantes en wp-config.php. Más información sobre cómo " +"forzar la ocultación de verificaciones →" + +#: wpvulnerability-admin.php:860 wpvulnerability-adminms.php:1133 +msgid "Save Analysis Settings" +msgstr "Guardar ajustes de análisis" + +#: wpvulnerability-admin.php:920 wpvulnerability-adminms.php:1193 +msgid "« Previous" +msgstr "« Anterior" + +#: wpvulnerability-admin.php:921 wpvulnerability-adminms.php:1194 +msgid "Next »" +msgstr "Siguiente »" + +#: wpvulnerability-admin.php:932 wpvulnerability-adminms.php:1205 +msgid "Log entry not found or has been removed." +msgstr "Entrada de registro no encontrada o eliminada." + +#: wpvulnerability-admin.php:935 wpvulnerability-adminms.php:1208 +msgid "Unable to load the requested log entry." +msgstr "No se ha podido cargar la entrada de registro solicitada." + +#: wpvulnerability-admin.php:945 wpvulnerability-adminms.php:1218 +msgid "Log Configuration" +msgstr "Configuración de registros" + +#: wpvulnerability-admin.php:950 wpvulnerability-adminms.php:1223 +msgid "Total Logs" +msgstr "Total de registros" + +#: wpvulnerability-admin.php:954 wpvulnerability-adminms.php:1227 +msgid "Retention Period" +msgstr "Periodo de retención" + +#: wpvulnerability-admin.php:959 wpvulnerability-admin.php:1301 +#: wpvulnerability-admin.php:3029 wpvulnerability-admin.php:3043 +#: wpvulnerability-admin.php:3475 wpvulnerability-admin.php:3483 +#: wpvulnerability-adminms.php:1232 wpvulnerability-adminms.php:1574 +#: wpvulnerability-adminms.php:3206 wpvulnerability-adminms.php:3220 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Disabled" +msgstr "Desactivado" + +#. translators: %d: Number of days. +#. translators: %d: number of days +#: wpvulnerability-admin.php:962 wpvulnerability-admin.php:984 +#: wpvulnerability-admin.php:3641 wpvulnerability-adminms.php:1235 +#: wpvulnerability-adminms.php:1257 wpvulnerability-adminms.php:3835 +#, php-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d día" +msgstr[1] "%d días" + +#: wpvulnerability-admin.php:975 wpvulnerability-adminms.php:1248 +msgid "Log Retention Period" +msgstr "Periodo de retención de registros" + +#: wpvulnerability-admin.php:981 wpvulnerability-adminms.php:1254 +msgid "None (Disabled)" +msgstr "Ninguno (desactivado)" + +#: wpvulnerability-admin.php:1004 wpvulnerability-adminms.php:1277 +msgid "" +"This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant." +msgstr "" +"Este valor se aplica mediante la constante " +"WPVULNERABILITY_LOG_RETENTION_DAYS." + +#: wpvulnerability-admin.php:1009 wpvulnerability-adminms.php:1282 +msgid "" +"Choose how long WPVulnerability should keep API response logs. Older logs " +"are automatically deleted." +msgstr "" +"Elige cuánto tiempo debe conservar WPVulnerability los registros de respuestas " +"de la API. Los registros más antiguos se eliminan automáticamente." + +#: wpvulnerability-admin.php:1013 wpvulnerability-adminms.php:1286 +msgid "Save Configuration" +msgstr "Guardar configuración" + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "Log retention is currently disabled." +msgstr "La retención de registros está actualmente desactivada." + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "API responses are not being saved." +msgstr "Las respuestas de la API no se están guardando." + +#: wpvulnerability-admin.php:1031 wpvulnerability-adminms.php:1304 +msgid "Log Details" +msgstr "Detalles del registro" + +#: wpvulnerability-admin.php:1035 wpvulnerability-admin.php:1104 +#: wpvulnerability-adminms.php:1308 wpvulnerability-adminms.php:1377 +msgid "Date" +msgstr "Fecha" + +#: wpvulnerability-admin.php:1039 wpvulnerability-admin.php:1105 +#: wpvulnerability-adminms.php:1312 wpvulnerability-adminms.php:1378 +msgid "API Endpoint" +msgstr "Endpoint de la API" + +#: wpvulnerability-admin.php:1044 wpvulnerability-adminms.php:1317 +msgid "API Response" +msgstr "Respuesta de la API" + +#: wpvulnerability-admin.php:1049 wpvulnerability-adminms.php:1322 +msgid "Back to Logs" +msgstr "Volver a los registros" + +#: wpvulnerability-admin.php:1058 wpvulnerability-adminms.php:1331 +msgid "No logs available" +msgstr "No hay registros disponibles" + +#: wpvulnerability-admin.php:1059 wpvulnerability-adminms.php:1332 +msgid "API response logs will appear here once the vulnerability scanner runs." +msgstr "Los registros de respuestas de la API aparecerán aquí una vez que el escáner de vulnerabilidades se ejecute." + +#: wpvulnerability-admin.php:1063 wpvulnerability-adminms.php:1336 +msgid "API Response Logs" +msgstr "Registros de respuestas de la API" + +#: wpvulnerability-admin.php:1073 wpvulnerability-adminms.php:1346 +msgid "Show:" +msgstr "Mostrar:" + +#: wpvulnerability-admin.php:1082 wpvulnerability-adminms.php:1355 +msgid "Apply" +msgstr "Aplicar" + +#. translators: 1: first item, 2: last item, 3: total items +#: wpvulnerability-admin.php:1090 wpvulnerability-adminms.php:1363 +#, php-format +msgid "Showing %1$s–%2$s of %3$s" +msgstr "Mostrando %1$s–%2$s de %3$s" + +#: wpvulnerability-admin.php:1106 wpvulnerability-adminms.php:1379 +msgid "Actions" +msgstr "Acciones" + +#: wpvulnerability-admin.php:1133 wpvulnerability-admin.php:3957 +#: wpvulnerability-adminms.php:1406 wpvulnerability-adminms.php:4151 +msgid "View" +msgstr "Ver" + +#: wpvulnerability-admin.php:1150 wpvulnerability-adminms.php:1423 +msgid "Danger Zone" +msgstr "Zona de peligro" + +#: wpvulnerability-admin.php:1152 wpvulnerability-adminms.php:1425 +msgid "Permanently delete all API response logs. This action cannot be undone." +msgstr "Eliminar permanentemente todos los registros de respuestas de la API. Esta acción no se puede deshacer." + +#: wpvulnerability-admin.php:1154 wpvulnerability-adminms.php:1427 +msgid "Are you sure you want to delete all logs? This action cannot be undone." +msgstr "¿Estás seguro de que quieres eliminar todos los registros? Esta acción no se puede deshacer." + +#: wpvulnerability-admin.php:1157 wpvulnerability-adminms.php:1430 +msgid "Delete All Logs" +msgstr "Eliminar todos los registros" + +#: wpvulnerability-admin.php:1201 wpvulnerability-adminms.php:1474 +msgid "Reload Data from API" +msgstr "Recargar datos desde la API" + +#: wpvulnerability-admin.php:1204 wpvulnerability-adminms.php:1477 +msgid "" +"Reload all Core, Plugins, Themes and other components information directly " +"from the API to have updated data. This will clear the cache and fetch fresh " +"vulnerability information." +msgstr "" +"Recarga toda la información del Núcleo, Plugins, Temas y otros componentes " +"directamente desde la API para tener datos actualizados. Esto limpiará la " +"caché y obtendrá información de vulnerabilidades actualizada." + +#: wpvulnerability-admin.php:1209 wpvulnerability-adminms.php:1482 +msgid "Reload Data" +msgstr "Recargar datos" + +#: wpvulnerability-admin.php:1218 wpvulnerability-adminms.php:1491 +msgid "Test Email Notifications" +msgstr "Probar notificaciones por correo electrónico" + +#: wpvulnerability-admin.php:1221 wpvulnerability-adminms.php:1494 +msgid "" +"Send a test email notification with current vulnerability data to verify " +"your email configuration is working correctly." +msgstr "" +"Envía un correo electrónico de prueba con los datos de vulnerabilidades " +"actuales para verificar que la configuración del correo electrónico " +"funciona correctamente." + +#: wpvulnerability-admin.php:1231 wpvulnerability-adminms.php:1504 +msgid "From address (configured via constant):" +msgstr "Dirección de origen (configurada mediante constante):" + +#: wpvulnerability-admin.php:1243 wpvulnerability-adminms.php:1516 +msgid "From address (default):" +msgstr "Dirección de origen (por defecto):" + +#: wpvulnerability-admin.php:1252 wpvulnerability-adminms.php:1525 +msgid "Learn how to customize the email sender address →" +msgstr "Aprende a personalizar la dirección del remitente del correo electrónico →" + +#: wpvulnerability-admin.php:1258 wpvulnerability-adminms.php:1531 +msgid "Send Test Email" +msgstr "Enviar correo electrónico de prueba" + +#: wpvulnerability-admin.php:1267 wpvulnerability-adminms.php:1540 +msgid "WP-Cron Status" +msgstr "Estado de WP-Cron" + +#: wpvulnerability-admin.php:1270 wpvulnerability-adminms.php:1543 +msgid "" +"View and manage WP-Cron scheduled events. Compare expected schedules with " +"actual cron jobs to ensure automated tasks are running correctly." +msgstr "" +"Ver y gestionar los eventos programados de WP-Cron. Compara los horarios " +"esperados con los trabajos cron reales para asegurarte de que las tareas " +"automatizadas se ejecutan correctamente." + +#: wpvulnerability-admin.php:1275 wpvulnerability-adminms.php:1548 +msgid "No cron data available." +msgstr "No hay datos de cron disponibles." + +#: wpvulnerability-admin.php:1281 wpvulnerability-adminms.php:1554 +msgid "Hook" +msgstr "Hook" + +#: wpvulnerability-admin.php:1282 wpvulnerability-adminms.php:1555 +msgid "Expected" +msgstr "Esperado" + +#: wpvulnerability-admin.php:1283 wpvulnerability-adminms.php:1556 +msgid "Found" +msgstr "Encontrado" + +#: wpvulnerability-admin.php:1284 wpvulnerability-adminms.php:1557 +msgid "Next Run" +msgstr "Próxima ejecución" + +#: wpvulnerability-admin.php:1285 wpvulnerability-admin.php:3236 +#: wpvulnerability-admin.php:3559 wpvulnerability-adminms.php:1558 +#: wpvulnerability-adminms.php:3413 wpvulnerability-adminms.php:3753 +msgid "Status" +msgstr "Estado" + +#: wpvulnerability-admin.php:1299 wpvulnerability-adminms.php:1572 +msgid "Not expected" +msgstr "No esperado" + +#: wpvulnerability-admin.php:1321 wpvulnerability-adminms.php:1594 +#: wpvulnerability-general.php:1871 wpvulnerability-general.php:1872 +msgid "None" +msgstr "Ninguna" + +#: wpvulnerability-admin.php:1356 wpvulnerability-adminms.php:1629 +msgid "OK" +msgstr "OK" + +#: wpvulnerability-admin.php:1366 wpvulnerability-adminms.php:1639 +msgid "⚠️ Unexpected WPVulnerability Events" +msgstr "⚠️ Eventos inesperados de WPVulnerability" + +#: wpvulnerability-admin.php:1383 wpvulnerability-adminms.php:1656 +msgid "No interval" +msgstr "Sin intervalo" + +#: wpvulnerability-admin.php:1390 wpvulnerability-adminms.php:1663 +msgid "Next:" +msgstr "Siguiente:" + +#: wpvulnerability-admin.php:1400 wpvulnerability-adminms.php:1673 +msgid "Repair Cron Events" +msgstr "Reparar eventos cron" + +#: wpvulnerability-admin.php:1408 wpvulnerability-adminms.php:1681 +msgid "Uninstall Data" +msgstr "Datos de desinstalación" + +#: wpvulnerability-admin.php:1410 wpvulnerability-adminms.php:1683 +msgid "" +"By default, all plugin data is preserved when WPVulnerability is deleted. " +"Enable the option below only if you want all options, logs, and cached data " +"permanently removed on uninstall." +msgstr "" +"Por defecto, todos los datos del plugin se conservan cuando se elimina " +"WPVulnerability. Activa la opción a continuación solo si quieres que todas " +"las opciones, registros y datos en caché se eliminen permanentemente al " +"desinstalar." + +#: wpvulnerability-admin.php:1420 wpvulnerability-adminms.php:1693 +msgid "Delete all plugin data on uninstall" +msgstr "Eliminar todos los datos del plugin al desinstalar" + +#: wpvulnerability-admin.php:1423 wpvulnerability-adminms.php:1696 +msgid "" +"Default: unchecked (data preserved). Check only if you want a clean removal." +msgstr "" +"Por defecto: sin marcar (datos conservados). Marca solo si quieres una eliminación limpia." + +#: wpvulnerability-admin.php:1425 wpvulnerability-adminms.php:1698 +msgid "Save preference" +msgstr "Guardar preferencia" + +#: wpvulnerability-admin.php:1432 wpvulnerability-adminms.php:1705 +msgid "Reset WPVulnerability" +msgstr "Restablecer WPVulnerability" + +#: wpvulnerability-admin.php:1434 wpvulnerability-adminms.php:1707 +msgid "" +"Delete all WPVulnerability settings, cached data, logs, and scheduled " +"events, then restore defaults and reload data from the API." +msgstr "" +"Elimina todos los ajustes de WPVulnerability, datos en caché, registros y " +"eventos programados, y luego restaura los valores predeterminados y recarga " +"los datos desde la API." + +#: wpvulnerability-admin.php:1436 wpvulnerability-adminms.php:1709 +msgid "This action cannot be undone." +msgstr "Esta acción no se puede deshacer." + +#: wpvulnerability-admin.php:1438 wpvulnerability-adminms.php:1711 +msgid "" +"Are you sure you want to reset all WPVulnerability data? This action cannot " +"be undone." +msgstr "" +"¿Estás seguro de que quieres restablecer todos los datos de WPVulnerability? " +"Esta acción no se puede deshacer." + +#: wpvulnerability-admin.php:1441 wpvulnerability-adminms.php:1713 +msgid "Reset Plugin" +msgstr "Restablecer plugin" + +#: wpvulnerability-admin.php:1468 wpvulnerability-adminms.php:1740 +msgid "Vulnerability Database Statistics" +msgstr "Estadísticas de la base de datos de vulnerabilidades" + +#. translators: number of vulnerabilities. +#: wpvulnerability-admin.php:1510 wpvulnerability-adminms.php:1782 +#, php-format +msgid "%s vulnerability" +msgid_plural "%s vulnerabilities" +msgstr[0] "%s vulnerabilidad" +msgstr[1] "%s vulnerabilidades" + +#. translators: number of products. +#: wpvulnerability-admin.php:1520 wpvulnerability-adminms.php:1792 +#, php-format +msgid "(%s product)" +msgid_plural "(%s products)" +msgstr[0] "(%s producto)" +msgstr[1] "(%s productos)" + +#: wpvulnerability-admin.php:1527 wpvulnerability-adminms.php:1799 +msgid "No data" +msgstr "Sin datos" + +#. translators: date of last update. +#: wpvulnerability-admin.php:1544 wpvulnerability-adminms.php:1814 +#, php-format +msgid "Database last updated: %s" +msgstr "Base de datos actualizada por última vez: %s" + +#: wpvulnerability-admin.php:1566 wpvulnerability-adminms.php:1836 +msgid "Intelligence Sources" +msgstr "Fuentes de inteligencia" + +#: wpvulnerability-admin.php:1567 wpvulnerability-adminms.php:1837 +msgid "Number of vulnerabilities contributed by each intelligence source." +msgstr "Número de vulnerabilidades aportadas por cada fuente de inteligencia." + +#: wpvulnerability-admin.php:1571 wpvulnerability-adminms.php:1841 +msgid "Source" +msgstr "Fuente" + +#: wpvulnerability-admin.php:1572 wpvulnerability-admin.php:2104 +#: wpvulnerability-adminms.php:1842 wpvulnerability-adminms.php:2261 +msgid "Core" +msgstr "Núcleo" + +#: wpvulnerability-admin.php:1603 wpvulnerability-adminms.php:1873 +msgid "Sponsors" +msgstr "Patrocinadores" + +#: wpvulnerability-admin.php:1626 wpvulnerability-adminms.php:1896 +msgid "No sponsor data available." +msgstr "No hay datos de patrocinadores disponibles." + +#: wpvulnerability-admin.php:1633 wpvulnerability-adminms.php:1903 +msgid "Contributors" +msgstr "Colaboradores" + +#: wpvulnerability-admin.php:1656 wpvulnerability-adminms.php:1926 +msgid "No contributor data available." +msgstr "No hay datos de colaboradores disponibles." + +#: wpvulnerability-admin.php:1674 wpvulnerability-adminms.php:432 +msgid "You do not have sufficient permissions to access this page." +msgstr "No tienes permisos suficientes para acceder a esta página." + +#: wpvulnerability-admin.php:1684 wpvulnerability-adminms.php:441 +msgid "WPVulnerability settings" +msgstr "Ajustes de WPVulnerability" + +#: wpvulnerability-admin.php:1801 wpvulnerability-adminms.php:1963 +msgid "Configure and save these settings to receive notifications." +msgstr "Configura y guarda estos ajustes para recibir notificaciones." + +#: wpvulnerability-admin.php:1814 wpvulnerability-adminms.php:2071 +msgid "Configure and save these settings to hide vulnerabilities." +msgstr "Establece y guarda estos ajustes para ocultar vulnerabilidades." + +#: wpvulnerability-admin.php:1845 wpvulnerability-adminms.php:1993 +msgid "Default administrator email" +msgstr "Correo electrónico del administrador por defecto" + +#: wpvulnerability-admin.php:1909 wpvulnerability-adminms.php:2057 +msgid "Read more if you want to force the cache time." +msgstr "Lee más si quieres forzar el tiempo de caché" + +#: wpvulnerability-admin.php:1939 wpvulnerability-adminms.php:2099 +msgid "Never" +msgstr "Nunca" + +#: wpvulnerability-admin.php:1944 wpvulnerability-adminms.php:2104 +msgid "Daily" +msgstr "Diariamente" + +#: wpvulnerability-admin.php:1949 wpvulnerability-adminms.php:2109 +msgid "Weekly" +msgstr "Semanalmente" + +#: wpvulnerability-admin.php:1953 wpvulnerability-adminms.php:2113 +msgid "Day" +msgstr "Día" + +#: wpvulnerability-admin.php:1966 wpvulnerability-adminms.php:2126 +msgid "Hour" +msgstr "Hora" + +#: wpvulnerability-admin.php:1968 wpvulnerability-adminms.php:2128 +msgid "Minute" +msgstr "Minuto" + +#: wpvulnerability-admin.php:2166 wpvulnerability-adminms.php:2323 +msgid "Read more about how to force the deactivation of an item." +msgstr "Lee más acerca de cómo forzar la desactivación de un elemento." + +#: wpvulnerability-admin.php:2292 wpvulnerability-adminms.php:2870 +msgid "" +"Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com" +msgstr "" +"URL de webhook de Slack no válida. Debe ser una URL HTTPS válida de hooks.slack.com" + +#: wpvulnerability-admin.php:2315 wpvulnerability-adminms.php:2893 +msgid "" +"Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office." +"com, office365.com, or api.hooks.microsoft.com" +msgstr "" +"URL de webhook de Microsoft Teams no válida. Debe ser una URL HTTPS válida de office." +"com, office365.com o api.hooks.microsoft.com" + +#: wpvulnerability-admin.php:2338 wpvulnerability-adminms.php:2916 +msgid "" +"Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or " +"discordapp.com" +msgstr "" +"URL de webhook de Discord no válida. Debe ser una URL HTTPS válida de discord.com o " +"discordapp.com" + +#: wpvulnerability-admin.php:2357 wpvulnerability-adminms.php:2935 +msgid "" +"Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-" +"zyx57W2v1u123ew11" +msgstr "" +"Formato de token de bot de Telegram no válido. Debe ser similar a: 123456:ABC-DEF1234ghIkl-" +"zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:2493 wpvulnerability-adminms.php:2400 +msgid "All Clear" +msgstr "Todo en orden" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2503 wpvulnerability-adminms.php:2410 +#, php-format +msgid "%d Critical Issue Found" +msgid_plural "%d Critical Issues Found" +msgstr[0] "%d problema crítico encontrado" +msgstr[1] "%d problemas críticos encontrados" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2508 wpvulnerability-adminms.php:2415 +#, php-format +msgid "%d Issue Found" +msgid_plural "%d Issues Found" +msgstr[0] "%d problema encontrado" +msgstr[1] "%d problemas encontrados" + +#: wpvulnerability-admin.php:2515 wpvulnerability-adminms.php:2422 +msgid "Never checked" +msgstr "Nunca verificado" + +#. translators: %d: number of minutes +#: wpvulnerability-admin.php:2523 wpvulnerability-adminms.php:2430 +#, php-format +msgid "%d minute ago" +msgid_plural "%d minutes ago" +msgstr[0] "hace %d minuto" +msgstr[1] "hace %d minutos" + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:2527 wpvulnerability-adminms.php:2434 +#, php-format +msgid "%d hour ago" +msgid_plural "%d hours ago" +msgstr[0] "hace %d hora" +msgstr[1] "hace %d horas" + +#. translators: %s: time since last check +#: wpvulnerability-admin.php:2539 wpvulnerability-adminms.php:2446 +#, php-format +msgid "Last checked: %s" +msgstr "Última comprobación: %s" + +#: wpvulnerability-admin.php:2540 wpvulnerability-adminms.php:2447 +msgid "Refresh Now" +msgstr "Actualizar ahora" + +#: wpvulnerability-admin.php:2547 wpvulnerability-adminms.php:2454 +msgid "No vulnerabilities detected" +msgstr "No se han detectado vulnerabilidades" + +#: wpvulnerability-admin.php:2548 wpvulnerability-adminms.php:2455 +msgid "Your site is up to date and secure" +msgstr "Tu sitio está actualizado y seguro" + +#: wpvulnerability-admin.php:2616 wpvulnerability-adminms.php:2523 +msgid "Server Software" +msgstr "Software del servidor" + +#: wpvulnerability-admin.php:2829 wpvulnerability-adminms.php:2736 +msgid "Site Health" +msgstr "Salud del sitio" + +#: wpvulnerability-admin.php:2831 wpvulnerability-adminms.php:2738 +#: wpvulnerability-run.php:33 +msgid "Settings" +msgstr "Ajustes" + +#: wpvulnerability-admin.php:2846 wpvulnerability-adminms.php:2754 +msgid "WPVulnerability Status" +msgstr "Estado de WPVulnerability" + +#: wpvulnerability-admin.php:2878 wpvulnerability-adminms.php:3052 +msgid "Receive vulnerability notifications" +msgstr "Recibir avisos de vulnerabilidades" + +#: wpvulnerability-admin.php:2886 wpvulnerability-adminms.php:3060 +msgid "Cache expiration time" +msgstr "Tiempo de caducidad de la caché" + +#: wpvulnerability-admin.php:2895 wpvulnerability-adminms.php:3069 +msgid "How often you want to receive notifications" +msgstr "Con qué frecuencia deseas recibir avisos" + +#: wpvulnerability-admin.php:2904 wpvulnerability-adminms.php:3078 +msgid "Where do you want to receive notifications?" +msgstr "¿Dónde quieres recibir avisos?" + +#: wpvulnerability-admin.php:2913 wpvulnerability-adminms.php:3087 +msgid "Email addresses to notify (separated by commas)" +msgstr "Direcciones de correo electrónico para avisar (separadas por comas)" + +#: wpvulnerability-admin.php:2922 wpvulnerability-adminms.php:3096 +msgid "Slack webhook URL" +msgstr "URL del webhook de Slack" + +#: wpvulnerability-admin.php:2931 wpvulnerability-adminms.php:3105 +msgid "Teams webhook URL" +msgstr "URL del webhook de Teams" + +#: wpvulnerability-admin.php:2950 wpvulnerability-adminms.php:3126 +msgid "Vulnerabilities to hide" +msgstr "Vulnerabilidades a ocultar" + +#: wpvulnerability-admin.php:2958 wpvulnerability-adminms.php:3134 +msgid "What do you want to hide?" +msgstr "¿Qué quieres ocultar?" + +#: wpvulnerability-admin.php:3008 wpvulnerability-adminms.php:3185 +msgid "Standard (Hybrid Detection)" +msgstr "Estándar (detección híbrida)" + +#: wpvulnerability-admin.php:3009 wpvulnerability-adminms.php:3186 +msgid "Strict (Extensions Only)" +msgstr "Estricto (solo extensiones)" + +#: wpvulnerability-admin.php:3010 wpvulnerability-adminms.php:3187 +msgid "Disabled (No Detection)" +msgstr "Desactivado (sin detección)" + +#: wpvulnerability-admin.php:3016 wpvulnerability-adminms.php:3193 +msgid "Security Status" +msgstr "Estado de seguridad" + +#: wpvulnerability-admin.php:3020 wpvulnerability-adminms.php:3197 +msgid "Security Mode" +msgstr "Modo de seguridad" + +#: wpvulnerability-admin.php:3025 wpvulnerability-adminms.php:3202 +msgid "Shell Execution" +msgstr "Ejecución de shell" + +#: wpvulnerability-admin.php:3027 wpvulnerability-admin.php:3475 +#: wpvulnerability-admin.php:3483 wpvulnerability-adminms.php:3204 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Enabled" +msgstr "Activado" + +#: wpvulnerability-admin.php:3034 wpvulnerability-adminms.php:3211 +msgid "Audit Logging" +msgstr "Registro de auditoría" + +#. translators: %d: number of days +#: wpvulnerability-admin.php:3039 wpvulnerability-adminms.php:3216 +#, php-format +msgid "Enabled (%d days)" +msgstr "Activado (%d días)" + +#: wpvulnerability-admin.php:3048 wpvulnerability-adminms.php:3225 +msgid "Total Log Entries" +msgstr "Total de entradas de registro" + +#: wpvulnerability-admin.php:3055 wpvulnerability-adminms.php:3232 +msgid "Last Shell Execution" +msgstr "Última ejecución de shell" + +#. translators: %s: time ago +#: wpvulnerability-admin.php:3061 wpvulnerability-admin.php:3266 +#: wpvulnerability-adminms.php:3238 wpvulnerability-adminms.php:3441 +#, php-format +msgid "%s ago" +msgstr "hace %s" + +#: wpvulnerability-admin.php:3073 wpvulnerability-adminms.php:3250 +msgid "" +"Configure security settings via wp-config.php constants: " +"WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, " +"WPVULNERABILITY_SHELL_EXEC_WHITELIST." +msgstr "" +"Configura los ajustes de seguridad mediante constantes en wp-config.php: " +"WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, " +"WPVULNERABILITY_SHELL_EXEC_WHITELIST." + +#. translators: %s: URL to security documentation +#: wpvulnerability-admin.php:3079 wpvulnerability-adminms.php:3256 +#, php-format +msgid "" +"See security " +"configuration documentation for details." +msgstr "" +"Consulta la documentación " +"de configuración de seguridad para más detalles." + +#: wpvulnerability-admin.php:3103 wpvulnerability-adminms.php:3280 +msgid "Memcached" +msgstr "Memcached" + +#: wpvulnerability-admin.php:3131 wpvulnerability-adminms.php:3308 +msgid "Imagick Extension" +msgstr "Extensión Imagick" + +#: wpvulnerability-admin.php:3132 wpvulnerability-adminms.php:3309 +msgid "Redis Extension" +msgstr "Extensión Redis" + +#: wpvulnerability-admin.php:3133 wpvulnerability-adminms.php:3310 +msgid "Memcached Extension" +msgstr "Extensión Memcached" + +#: wpvulnerability-admin.php:3134 wpvulnerability-adminms.php:3311 +msgid "Memcache Extension" +msgstr "Extensión Memcache" + +#: wpvulnerability-admin.php:3135 wpvulnerability-adminms.php:3312 +msgid "SQLite3 Extension" +msgstr "Extensión SQLite3" + +#: wpvulnerability-admin.php:3136 wpvulnerability-adminms.php:3313 +msgid "PDO SQLite" +msgstr "PDO SQLite" + +#: wpvulnerability-admin.php:3137 wpvulnerability-adminms.php:3314 +msgid "Shell Command" +msgstr "Comando de shell" + +#: wpvulnerability-admin.php:3138 wpvulnerability-adminms.php:3315 +msgid "Binary Check" +msgstr "Comprobación de binario" + +#: wpvulnerability-admin.php:3139 wpvulnerability-adminms.php:3316 +msgid "Not Detected" +msgstr "No detectado" + +#: wpvulnerability-admin.php:3143 wpvulnerability-adminms.php:3320 +msgid "Software Detection Methods" +msgstr "Métodos de detección de software" + +#: wpvulnerability-admin.php:3144 wpvulnerability-adminms.php:3321 +msgid "" +"Shows which detection method was used for each software component and the " +"reliability score." +msgstr "" +"Muestra qué método de detección se utilizó para cada componente de software " +"y la puntuación de fiabilidad." + +#: wpvulnerability-admin.php:3149 wpvulnerability-admin.php:3234 +#: wpvulnerability-admin.php:3558 wpvulnerability-adminms.php:3326 +#: wpvulnerability-adminms.php:3411 wpvulnerability-adminms.php:3752 +msgid "Component" +msgstr "Componente" + +#: wpvulnerability-admin.php:3150 wpvulnerability-adminms.php:3327 +msgid "Version" +msgstr "Versión" + +#: wpvulnerability-admin.php:3151 wpvulnerability-adminms.php:3328 +msgid "Detection Method" +msgstr "Método de detección" + +#: wpvulnerability-admin.php:3152 wpvulnerability-adminms.php:3329 +msgid "Reliability" +msgstr "Fiabilidad" + +#: wpvulnerability-admin.php:3164 wpvulnerability-adminms.php:3341 +msgid "Not detected" +msgstr "No detectado" + +#: wpvulnerability-admin.php:3220 wpvulnerability-adminms.php:3397 +msgid "Shell Execution Audit Logs" +msgstr "Registros de auditoría de ejecución de shell" + +#: wpvulnerability-admin.php:3221 wpvulnerability-adminms.php:3398 +msgid "" +"Complete audit trail of shell command executions for security monitoring." +msgstr "" +"Registro de auditoría completo de ejecuciones de comandos de shell para la " +"monitorización de seguridad." + +#: wpvulnerability-admin.php:3226 wpvulnerability-adminms.php:3403 +msgid "No shell execution logs found." +msgstr "No se han encontrado registros de ejecución de shell." + +#: wpvulnerability-admin.php:3227 wpvulnerability-adminms.php:3404 +msgid "" +"Logs will appear here when shell commands are executed for software " +"detection." +msgstr "" +"Los registros aparecerán aquí cuando se ejecuten comandos de shell para la " +"detección de software." + +#: wpvulnerability-admin.php:3233 wpvulnerability-adminms.php:3410 +msgid "Time" +msgstr "Tiempo" + +#: wpvulnerability-admin.php:3235 wpvulnerability-adminms.php:3412 +msgid "Command" +msgstr "Comando" + +#: wpvulnerability-admin.php:3237 wpvulnerability-adminms.php:3414 +msgid "User" +msgstr "Usuario" + +#: wpvulnerability-admin.php:3238 wpvulnerability-adminms.php:3415 +msgid "Output" +msgstr "Salida" + +#. translators: %d: number of logs shown +#: wpvulnerability-admin.php:3302 wpvulnerability-adminms.php:3477 +#, php-format +msgid "Showing the %d most recent log entries." +msgstr "Mostrando las %d entradas de registro más recientes." + +#: wpvulnerability-admin.php:3320 wpvulnerability-adminms.php:3565 +msgid "Invalid nonce." +msgstr "Nonce no válido." + +#: wpvulnerability-admin.php:3325 wpvulnerability-adminms.php:3570 +msgid "Insufficient permissions." +msgstr "Permisos insuficientes." + +#: wpvulnerability-admin.php:3331 wpvulnerability-adminms.php:3576 +msgid "No component specified." +msgstr "No se ha especificado ningún componente." + +#: wpvulnerability-admin.php:3366 wpvulnerability-adminms.php:3524 +msgid "Debug Information" +msgstr "Información de depuración" + +#: wpvulnerability-admin.php:3368 wpvulnerability-adminms.php:3526 +msgid "This tab is only visible when WP_DEBUG is enabled. Use with caution." +msgstr "Esta pestaña solo es visible cuando WP_DEBUG está activado. Úsala con precaución." + +#: wpvulnerability-admin.php:3429 wpvulnerability-adminms.php:3623 +msgid "System Information" +msgstr "Información del sistema" + +#: wpvulnerability-admin.php:3433 wpvulnerability-adminms.php:3627 +msgid "WordPress Version" +msgstr "Versión de WordPress" + +#: wpvulnerability-admin.php:3437 wpvulnerability-adminms.php:3631 +msgid "Multisite" +msgstr "Multisitio" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "Yes" +msgstr "Sí" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "No" +msgstr "No" + +#: wpvulnerability-admin.php:3441 wpvulnerability-adminms.php:3635 +msgid "Language" +msgstr "Idioma" + +#: wpvulnerability-admin.php:3445 wpvulnerability-adminms.php:3639 +msgid "PHP Version" +msgstr "Versión de PHP" + +#: wpvulnerability-admin.php:3449 wpvulnerability-adminms.php:3643 +msgid "PHP Extensions" +msgstr "Extensiones de PHP" + +#: wpvulnerability-admin.php:3460 wpvulnerability-adminms.php:3654 +msgid "PHP Memory Limit" +msgstr "Límite de memoria de PHP" + +#: wpvulnerability-admin.php:3464 wpvulnerability-adminms.php:3658 +msgid "Database" +msgstr "Base de datos" + +#: wpvulnerability-admin.php:3468 wpvulnerability-adminms.php:3662 +msgid "Web Server" +msgstr "Servidor web" + +#: wpvulnerability-admin.php:3472 wpvulnerability-adminms.php:3666 +msgid "WP_DEBUG" +msgstr "WP_DEBUG" + +#: wpvulnerability-admin.php:3480 wpvulnerability-adminms.php:3674 +msgid "WP_DEBUG_LOG" +msgstr "WP_DEBUG_LOG" + +#: wpvulnerability-admin.php:3490 wpvulnerability-adminms.php:3684 +msgid "Path:" +msgstr "Ruta:" + +#. translators: %s: file size +#: wpvulnerability-admin.php:3499 wpvulnerability-adminms.php:3698 +#, php-format +msgid "Size: %s" +msgstr "Tamaño: %s" + +#: wpvulnerability-admin.php:3510 wpvulnerability-adminms.php:3704 +msgid "View Log File" +msgstr "Ver archivo de registro" + +#: wpvulnerability-admin.php:3516 wpvulnerability-adminms.php:3710 +msgid "Log file is not web-accessible (outside wp-content)" +msgstr "El archivo de registro no es accesible desde la web (fuera de wp-content)" + +#: wpvulnerability-admin.php:3522 wpvulnerability-adminms.php:3716 +msgid "Log file does not exist yet" +msgstr "El archivo de registro aún no existe" + +#: wpvulnerability-admin.php:3530 wpvulnerability-adminms.php:3724 +msgid "Plugin Version" +msgstr "Versión del plugin" + +#: wpvulnerability-admin.php:3554 wpvulnerability-adminms.php:3748 +msgid "Component Detection" +msgstr "Detección de componentes" + +#: wpvulnerability-admin.php:3560 wpvulnerability-adminms.php:3754 +msgid "Version Detected" +msgstr "Versión detectada" + +#: wpvulnerability-admin.php:3561 wpvulnerability-adminms.php:3755 +msgid "Analyzed" +msgstr "Analizado" + +#: wpvulnerability-admin.php:3562 wpvulnerability-adminms.php:3756 +msgid "Cache Status" +msgstr "Estado de la caché" + +#: wpvulnerability-admin.php:3622 wpvulnerability-adminms.php:3816 +msgid "Configuration Summary" +msgstr "Resumen de configuración" + +#: wpvulnerability-admin.php:3626 wpvulnerability-adminms.php:3820 +msgid "Cache Duration" +msgstr "Duración de la caché" + +#: wpvulnerability-admin.php:3636 wpvulnerability-adminms.php:3830 +msgid "Log Retention" +msgstr "Retención de registros" + +#: wpvulnerability-admin.php:3646 wpvulnerability-adminms.php:3840 +msgid "Components Analyzed" +msgstr "Componentes analizados" + +#: wpvulnerability-admin.php:3661 wpvulnerability-adminms.php:3855 +msgid "Notification Email" +msgstr "Correo electrónico de notificación" + +#: wpvulnerability-admin.php:3682 wpvulnerability-adminms.php:3876 +msgid "Slack Webhook" +msgstr "Webhook de Slack" + +#: wpvulnerability-admin.php:3692 wpvulnerability-admin.php:3712 +#: wpvulnerability-admin.php:3732 wpvulnerability-admin.php:3752 +#: wpvulnerability-adminms.php:3886 wpvulnerability-adminms.php:3906 +#: wpvulnerability-adminms.php:3926 wpvulnerability-adminms.php:3946 +msgid "Configured & Enabled" +msgstr "Configurado y activado" + +#: wpvulnerability-admin.php:3694 wpvulnerability-admin.php:3714 +#: wpvulnerability-admin.php:3734 wpvulnerability-admin.php:3754 +#: wpvulnerability-adminms.php:3888 wpvulnerability-adminms.php:3908 +#: wpvulnerability-adminms.php:3928 wpvulnerability-adminms.php:3948 +msgid "Configured (Disabled)" +msgstr "Configurado (desactivado)" + +#: wpvulnerability-admin.php:3696 wpvulnerability-admin.php:3716 +#: wpvulnerability-admin.php:3736 wpvulnerability-admin.php:3756 +#: wpvulnerability-adminms.php:3890 wpvulnerability-adminms.php:3910 +#: wpvulnerability-adminms.php:3930 wpvulnerability-adminms.php:3950 +msgid "Not configured" +msgstr "No configurado" + +#: wpvulnerability-admin.php:3703 wpvulnerability-adminms.php:3897 +msgid "Teams Webhook" +msgstr "Webhook de Teams" + +#: wpvulnerability-admin.php:3723 wpvulnerability-adminms.php:3917 +msgid "Discord Webhook" +msgstr "Webhook de Discord" + +#: wpvulnerability-admin.php:3743 wpvulnerability-adminms.php:3937 +msgid "Telegram Bot" +msgstr "Bot de Telegram" + +#: wpvulnerability-admin.php:3788 wpvulnerability-adminms.php:3982 +msgid "Cron Status" +msgstr "Estado del cron" + +#: wpvulnerability-admin.php:3792 wpvulnerability-adminms.php:3986 +msgid "Update Database" +msgstr "Actualizar base de datos" + +#. translators: %s: date and time +#: wpvulnerability-admin.php:3797 wpvulnerability-admin.php:3810 +#: wpvulnerability-adminms.php:3991 wpvulnerability-adminms.php:4004 +#, php-format +msgid "Next run: %s" +msgstr "Próxima ejecución: %s" + +#: wpvulnerability-admin.php:3800 wpvulnerability-admin.php:3813 +#: wpvulnerability-adminms.php:3994 wpvulnerability-adminms.php:4007 +msgid "Not scheduled" +msgstr "No programado" + +#: wpvulnerability-admin.php:3805 wpvulnerability-adminms.php:3999 +msgid "Send Notification" +msgstr "Enviar notificación" + +#: wpvulnerability-admin.php:3826 wpvulnerability-adminms.php:4020 +msgid "Run Update Now" +msgstr "Ejecutar actualización ahora" + +#: wpvulnerability-admin.php:3834 wpvulnerability-adminms.php:4028 +msgid "Run Notification Now" +msgstr "Enviar notificación ahora" + +#: wpvulnerability-admin.php:3840 wpvulnerability-adminms.php:4034 +msgid "You do not have permission to run these actions." +msgstr "No tienes permiso para ejecutar estas acciones." + +#: wpvulnerability-admin.php:3859 wpvulnerability-adminms.php:4053 +msgid "API Testing" +msgstr "Prueba de la API" + +#: wpvulnerability-admin.php:3862 wpvulnerability-adminms.php:4056 +msgid "" +"Test API connectivity for each component. Click a button to send a test " +"request." +msgstr "" +"Prueba la conectividad de la API para cada componente. Haz clic en un botón " +"para enviar una solicitud de prueba." + +#. translators: %s: component name +#: wpvulnerability-admin.php:3869 wpvulnerability-adminms.php:4063 +#, php-format +msgid "Test %s" +msgstr "Probar %s" + +#: wpvulnerability-admin.php:3884 wpvulnerability-adminms.php:4078 +msgid "Testing..." +msgstr "Probando..." + +#: wpvulnerability-admin.php:3900 wpvulnerability-adminms.php:4094 +msgid "HTTP Code:" +msgstr "Código HTTP:" + +#: wpvulnerability-admin.php:3901 wpvulnerability-adminms.php:4095 +msgid "Response Time:" +msgstr "Tiempo de respuesta:" + +#: wpvulnerability-admin.php:3903 wpvulnerability-adminms.php:4097 +msgid "Response Preview" +msgstr "Vista previa de la respuesta" + +#: wpvulnerability-admin.php:3910 wpvulnerability-admin.php:3914 +#: wpvulnerability-adminms.php:4104 wpvulnerability-adminms.php:4108 +msgid "Test" +msgstr "Probar" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "Error:" +msgstr "Error:" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "AJAX request failed." +msgstr "La solicitud AJAX ha fallado." + +#: wpvulnerability-admin.php:3922 wpvulnerability-adminms.php:4116 +msgid "You do not have permission to test API connectivity." +msgstr "No tienes permiso para probar la conectividad de la API." + +#: wpvulnerability-admin.php:3943 wpvulnerability-adminms.php:4137 +msgid "Database Options Viewer" +msgstr "Visor de opciones de base de datos" + +#: wpvulnerability-admin.php:3944 wpvulnerability-adminms.php:4138 +msgid "View the raw data stored in WordPress options." +msgstr "Ver los datos brutos almacenados en las opciones de WordPress." + +#: wpvulnerability-admin.php:3950 wpvulnerability-adminms.php:4144 +msgid "Select an option..." +msgstr "Selecciona una opción..." + +#: wpvulnerability-admin.php:3969 wpvulnerability-adminms.php:4163 +msgid "Option not found or empty." +msgstr "Opción no encontrada o vacía." + +#: wpvulnerability-admin.php:3987 wpvulnerability-adminms.php:4182 +msgid "Quick Actions" +msgstr "Acciones rápidas" + +#: wpvulnerability-admin.php:3988 wpvulnerability-adminms.php:4183 +msgid "Perform debugging actions. Use with caution." +msgstr "Realizar acciones de depuración. Úsalas con precaución." + +#: wpvulnerability-admin.php:3992 wpvulnerability-adminms.php:4187 +msgid "Are you sure you want to clear all caches?" +msgstr "¿Estás seguro de que quieres limpiar todas las cachés?" + +#: wpvulnerability-admin.php:3996 wpvulnerability-adminms.php:4191 +msgid "Clear All Caches" +msgstr "Limpiar todas las cachés" + +#: wpvulnerability-admin.php:4000 wpvulnerability-adminms.php:4195 +msgid "Are you sure you want to reset signatures?" +msgstr "¿Estás seguro de que quieres restablecer las firmas?" + +#: wpvulnerability-admin.php:4004 wpvulnerability-adminms.php:4199 +msgid "Reset Signatures" +msgstr "Restablecer firmas" + +#: wpvulnerability-admin.php:4012 wpvulnerability-adminms.php:4207 +msgid "Export Debug Info" +msgstr "Exportar información de depuración" + +#: wpvulnerability-admin.php:4018 wpvulnerability-adminms.php:4213 +msgid "You do not have permission to perform these actions." +msgstr "No tienes permiso para realizar estas acciones." + +#: wpvulnerability-adminms.php:101 wpvulnerability-adminms.php:199 +msgid "Settings saved." +msgstr "Ajustes guardados." + +#: wpvulnerability-adminms.php:277 +msgid "WPVulnerability cron events have been repaired across the network." +msgstr "Los eventos cron de WPVulnerability han sido reparados en toda la red." + +#: wpvulnerability-adminms.php:3512 +msgid "You do not have permission to access this page." +msgstr "No tienes permiso para acceder a esta página." + +#. translators: 1: core version +#: wpvulnerability-core.php:33 +#, php-format +msgid "" +"WordPress %1$s has a known vulnerability that may be affecting your " +"installed version." +msgstr "" +"WordPress %1$s tiene una vulnerabilidad conocida que puede estar afectando " +"a tu versión instalada." + +#: wpvulnerability-core.php:115 wpvulnerability-plugins.php:207 +#: wpvulnerability-process.php:335 wpvulnerability-process.php:443 +#: wpvulnerability-process.php:529 wpvulnerability-themes.php:173 +#: wpvulnerability-themes.php:469 +msgid "Actively exploited" +msgstr "Activamente explotada" + +#: wpvulnerability-core.php:122 wpvulnerability-plugins.php:214 +#: wpvulnerability-process.php:342 wpvulnerability-process.php:450 +#: wpvulnerability-themes.php:180 wpvulnerability-themes.php:476 +msgid "Public exploit" +msgstr "Exploit público" + +#: wpvulnerability-core.php:125 wpvulnerability-plugins.php:217 +#: wpvulnerability-process.php:345 wpvulnerability-process.php:453 +#: wpvulnerability-themes.php:183 wpvulnerability-themes.php:479 +msgid "Automatable" +msgstr "Automatizable" + +#: wpvulnerability-core.php:139 wpvulnerability-plugins.php:245 +#: wpvulnerability-process.php:371 wpvulnerability-process.php:469 +#: wpvulnerability-process.php:544 wpvulnerability-themes.php:211 +#: wpvulnerability-themes.php:503 +msgid "References:" +msgstr "Referencias:" + +#: wpvulnerability-debug.php:399 +msgid "Invalid component specified." +msgstr "Componente especificado no válido." + +#: wpvulnerability-debug.php:423 +msgid "Version not detected for this component." +msgstr "Versión no detectada para este componente." + +#: wpvulnerability-debug.php:453 +msgid "API request successful." +msgstr "Solicitud a la API correcta." + +#. translators: %d: HTTP status code +#: wpvulnerability-debug.php:469 +#, php-format +msgid "API returned HTTP code %d." +msgstr "La API ha devuelto el código HTTP %d." + +#: wpvulnerability-general.php:355 +msgid "WPVulnerability Logs" +msgstr "Registros de WPVulnerability" + +#: wpvulnerability-general.php:356 +msgid "WPVulnerability Log" +msgstr "Registro de WPVulnerability" + +#: wpvulnerability-general.php:1873 wpvulnerability-general.php:1874 +msgid "Low" +msgstr "Baja" + +#: wpvulnerability-general.php:1875 wpvulnerability-general.php:1876 +msgid "Medium" +msgstr "Media" + +#: wpvulnerability-general.php:1877 wpvulnerability-general.php:1878 +msgid "High" +msgstr "Alta" + +#: wpvulnerability-general.php:1879 wpvulnerability-general.php:1880 +msgid "Critical" +msgstr "Crítica" + +#: wpvulnerability-general.php:2684 +msgid "WPVulnerability Shell Logs" +msgstr "Registros de shell de WPVulnerability" + +#: wpvulnerability-general.php:2685 +msgid "WPVulnerability Shell Log" +msgstr "Registro de shell de WPVulnerability" + +#: wpvulnerability-notifications.php:30 +msgid "Every week" +msgstr "Cada semana" + +#: wpvulnerability-notifications.php:57 +msgid "Every day" +msgstr "Cada día" + +#: wpvulnerability-notifications.php:84 +msgid "Invalid request." +msgstr "Solicitud no válida." + +#: wpvulnerability-notifications.php:104 +msgid "You have unsubscribed from WPVulnerability notifications." +msgstr "Te has dado de baja de los avisos de WPVulnerability." + +#. translators: %1$s the website of Database, %2$s database site name. +#: wpvulnerability-notifications.php:289 +#, php-format +msgid "" +"Learn more about the WordPress Vulnerability Database API at %2$s" +msgstr "" +"Más información acerca de la WordPress Vulnerability Database API en %2$s" + +#. translators: %1$s unsubscribe URL. +#: wpvulnerability-notifications.php:300 +#, php-format +msgid "" +"Want to stop receiving these alerts? Unsubscribe or " +"change the email frequency to Never in the WPVulnerability " +"settings." +msgstr "" +"¿Quieres dejar de recibir estas alertas? Darse de baja " +"o cambiar la frecuencia de los correos electrónicos a Nunca " +"en los ajustes de WPVulnerability." + +#: wpvulnerability-notifications.php:595 +msgid "No vulnerabilities found" +msgstr "No se han encontrado vulnerabilidades" + +#: wpvulnerability-notifications.php:596 +msgid "This is likely a test. The site does not have vulnerabilities." +msgstr "" +"Es probable que se trate de una prueba. El sitio no tiene vulnerabilidades." + +#: wpvulnerability-notifications.php:601 +msgid "Core vulnerabilities" +msgstr "Vulnerabilidades en el núcleo de WordPress" + +#: wpvulnerability-notifications.php:607 +msgid "Plugins vulnerabilities" +msgstr "Vulnerabilidades en plugins" + +#: wpvulnerability-notifications.php:613 +msgid "Themes vulnerabilities" +msgstr "Vulnerabilidades en temas" + +#: wpvulnerability-notifications.php:619 +msgid "PHP vulnerabilities" +msgstr "Vulnerabilidades de PHP" + +#: wpvulnerability-notifications.php:625 +msgid "Apache HTTPD vulnerabilities" +msgstr "Vulnerabilidades de Apache HTTPD" + +#: wpvulnerability-notifications.php:631 +msgid "Nginx vulnerabilities" +msgstr "Vulnerabilidades de nginx" + +#: wpvulnerability-notifications.php:637 +msgid "MariaDB vulnerabilities" +msgstr "Vulnerabilidades de MariaDB" + +#: wpvulnerability-notifications.php:643 +msgid "MySQL vulnerabilities" +msgstr "Vulnerabilidades de MySQL" + +#: wpvulnerability-notifications.php:649 +msgid "ImageMagick vulnerabilities" +msgstr "Vulnerabilidades de ImageMagick" + +#: wpvulnerability-notifications.php:655 +msgid "curl vulnerabilities" +msgstr "Vulnerabilidades de curl" + +#: wpvulnerability-notifications.php:661 +msgid "memcached vulnerabilities" +msgstr "Vulnerabilidades de memcached" + +#: wpvulnerability-notifications.php:667 +msgid "Redis vulnerabilities" +msgstr "Vulnerabilidades de Redis" + +#: wpvulnerability-notifications.php:673 +msgid "SQLite vulnerabilities" +msgstr "Vulnerabilidades SQLite" + +#. translators: Site name. +#: wpvulnerability-notifications.php:696 +#, php-format +msgid "Vulnerability found: %s" +msgstr "Vulnerabilidad encontrada: %s" + +#: wpvulnerability-notifications.php:700 +msgid "Vulnerability found" +msgstr "Se ha encontrado una vulnerabilidad" + +#. translators: 1: Plugin name +#. translators: 1: theme name +#: wpvulnerability-plugins.php:116 wpvulnerability-themes.php:82 +#, php-format +msgid "" +"%1$s has a known vulnerability that may be affecting your installed version." +msgstr "" +"%1$s tiene una vulnerabilidad conocida que puede estar afectando a tu " +"versión instalada." + +#: wpvulnerability-plugins.php:230 wpvulnerability-process.php:358 +msgid "This plugin is closed. Please replace it with another." +msgstr "Este plugin está cerrado. Por favor, reemplázalo por otro." + +#: wpvulnerability-plugins.php:233 wpvulnerability-process.php:361 +msgid "" +"This vulnerability appears to be unpatched. Stay tuned for upcoming plugin " +"updates." +msgstr "" +"Esta vulnerabilidad no parece tener parche. Presta atención a las próximas " +"actualizaciones del plugin." + +#: wpvulnerability-plugins.php:570 +msgid "It hasn't been updated in over a year." +msgstr "Hace más de un año que no se actualiza." + +#: wpvulnerability-plugins.php:576 +msgid "It may no longer be available (closed?)." +msgstr "Puede que ya no esté disponible (¿cerrado?)." + +#: wpvulnerability-plugins.php:614 wpvulnerability-plugins.php:621 +msgid "Last updated on" +msgstr "Última actualización el" + +#. translators: the number of vulnerabilities. +#: wpvulnerability-plugins.php:764 wpvulnerability-themes.php:704 +#, php-format +msgid "Vulnerabilities (%d)" +msgstr "Vulnerabilidades (%d)" + +#. translators: %s: software name. +#: wpvulnerability-process.php:601 +#, php-format +msgid "%s running" +msgstr "%s corriendo" + +#: wpvulnerability-process.php:611 wpvulnerability-process.php:792 +msgid "End of Life" +msgstr "Fin de vida útil" + +#: wpvulnerability-process.php:613 wpvulnerability-process.php:618 +msgid "End of life:" +msgstr "Fin de vida útil:" + +#: wpvulnerability-process.php:616 +msgid "Supported" +msgstr "Con soporte" + +#: wpvulnerability-process.php:652 +msgid "Plugin" +msgstr "Plugin" + +#: wpvulnerability-process.php:721 +msgid "Theme" +msgstr "Tema" + +#. translators: %s: end-of-life date +#: wpvulnerability-process.php:790 +#, php-format +msgid "End of life: %s" +msgstr "Fin de vida útil: %s" + +#: wpvulnerability-process.php:795 +msgid "EOL" +msgstr "EOL" + +#: wpvulnerability-run.php:30 +msgid "Network Settings" +msgstr "Ajustes de red" + +#: wpvulnerability-run.php:731 wpvulnerability-run.php:781 +#: wpvulnerability-run.php:791 wpvulnerability-run.php:836 +msgid "Vulnerabilities" +msgstr "Vulnerabilidades" + +#: wpvulnerability-schedule.php:30 +msgid "Every 6 hours" +msgstr "Cada 6 horas" + +#: wpvulnerability-schedule.php:303 +msgid "Database updates" +msgstr "Actualizaciones de la base de datos" + +#: wpvulnerability-schedule.php:309 +msgid "Log cleanup" +msgstr "Limpieza de registros" + +#: wpvulnerability-schedule.php:439 +msgid "" +"Notifications are scheduled, but settings currently disable them. Please " +"review the notifications tab." +msgstr "" +"Las notificaciones están programadas, pero la configuración las desactiva " +"actualmente. Por favor, revisa la pestaña de notificaciones." + +#: wpvulnerability-schedule.php:442 +msgid "This event should not be scheduled for this site." +msgstr "Este evento no debería estar programado para este sitio." + +#: wpvulnerability-schedule.php:446 +msgid "Not expected for this site." +msgstr "No esperado para este sitio." + +#: wpvulnerability-schedule.php:450 +msgid "No instances found." +msgstr "No se han encontrado instancias." + +#: wpvulnerability-schedule.php:456 +msgid "Scheduled with an unexpected interval." +msgstr "Programado con un intervalo inesperado." + +#: wpvulnerability-schedule.php:460 +msgid "Multiple instances detected." +msgstr "Múltiples instancias detectadas." + +#: wpvulnerability-schedule.php:465 +msgid "Scheduled as expected." +msgstr "Programado como se esperaba." + +#: wpvulnerability-sitehealth.php:22 +msgid "There aren't plugins vulnerabilities" +msgstr "No hay vulnerabilidades en los plugins" + +#: wpvulnerability-sitehealth.php:30 +msgid "Shows possible vulnerabilities that exist in installed plugins." +msgstr "" +"Muestra posibles vulnerabilidades que existen en los plugins instalados." + +#. translators: Number of plugins vulnerabilities. +#: wpvulnerability-sitehealth.php:43 +#, php-format +msgid "There is %d plugin with vulnerabilities" +msgid_plural "There are %d plugins with vulnerabilities" +msgstr[0] "Hay %d plugin con vulnerabilidades" +msgstr[1] "Hay %d plugins con vulnerabilidades" + +#: wpvulnerability-sitehealth.php:49 +msgid "" +"We've detected potential vulnerabilities in installed plugins. Please check " +"them and keep them updated." +msgstr "" +"Hemos detectado posibles vulnerabilidades en los plugins instalados. Por " +"favor, verifícalos y mantenlos actualizados." + +#: wpvulnerability-sitehealth.php:57 +msgid "Update plugins" +msgstr "Actualizar plugins" + +#: wpvulnerability-sitehealth.php:74 +msgid "There aren't themes vulnerabilities" +msgstr "No hay vulnerabilidades en los temas" + +#: wpvulnerability-sitehealth.php:82 +msgid "Shows possible vulnerabilities that exist in installed themes." +msgstr "Muestra posibles vulnerabilidades que existen en los temas instalados." + +#. translators: Number of themes vulnerabilities. +#: wpvulnerability-sitehealth.php:95 +#, php-format +msgid "There is %d theme with vulnerabilities" +msgid_plural "There are %d themes with vulnerabilities" +msgstr[0] "Hay %d tema con vulnerabilidades" +msgstr[1] "Hay %d temas con vulnerabilidades" + +#: wpvulnerability-sitehealth.php:101 +msgid "" +"We've detected potential vulnerabilities in installed themes. Please check " +"them and keep them updated." +msgstr "" +"Hemos detectado posibles vulnerabilidades en los temas instalados. Por " +"favor, verifícalos y mantenlos actualizados." + +#: wpvulnerability-sitehealth.php:109 +msgid "Update themes" +msgstr "Actualizar temas" + +#: wpvulnerability-sitehealth.php:126 +msgid "There aren't WordPress vulnerabilities" +msgstr "No hay vulnerabilidades en WordPress" + +#: wpvulnerability-sitehealth.php:134 +msgid "Shows possible vulnerabilities existing in the WordPress core." +msgstr "" +"Muestra las posibles vulnerabilidades existentes en el núcleo de WordPress." + +#. translators: Number of core vulnerabilities. +#: wpvulnerability-sitehealth.php:147 +#, php-format +msgid "There is %d core vulnerability" +msgid_plural "There are %d core vulnerabilities" +msgstr[0] "Hay %d vulnerabilidad en el núcleo" +msgstr[1] "Hay %d vulnerabilidades en el núcleo" + +#: wpvulnerability-sitehealth.php:153 +msgid "" +"We've detected potential vulnerabilities in this WordPress installation. " +"Please check them and keep your installation updated." +msgstr "" +"Hemos detectado posibles vulnerabilidades en esta instalación de WordPress. " +"Por favor, compruébalas y mantén tu instalación actualizada." + +#: wpvulnerability-sitehealth.php:161 +msgid "Update WordPress" +msgstr "Actualizar WordPress" + +#: wpvulnerability-sitehealth.php:180 +msgid "Nginx" +msgstr "Nginx" + +#: wpvulnerability-sitehealth.php:189 +msgid "Invalid software type" +msgstr "Tipo de software no válido" + +#: wpvulnerability-sitehealth.php:192 +msgid "Error" +msgstr "Error" + +#: wpvulnerability-sitehealth.php:197 +msgid "The specified software type is not valid." +msgstr "El tipo de software especificado no es válido" + +#. translators: name of the software. +#: wpvulnerability-sitehealth.php:207 +#, php-format +msgid "There aren't %s vulnerabilities" +msgstr "No hay vulnerabilidades de %s" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:216 +#, php-format +msgid "Shows possible vulnerabilities existing in %s." +msgstr "Muestra posibles vulnerabilidades existentes en %s." + +#. translators: Software and number of vulnerabilities. +#: wpvulnerability-sitehealth.php:229 +#, php-format +msgid "There is %1$d %2$s vulnerability" +msgid_plural "There are %1$d %2$s vulnerabilities" +msgstr[0] "Hay %d vulnerabilidad de %2$s." +msgstr[1] "Hay %d vulnerabilidades de %2$s." + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:237 +#, php-format +msgid "" +"We've detected potential vulnerabilities in %s. Please check them and keep " +"your installation updated." +msgstr "" +"Hemos detectado posibles vulnerabilidades en %s. Por favor, compruébalas y " +"mantén actualizada tu instalación." + +#: wpvulnerability-sitehealth.php:246 +msgid "How to update PHP" +msgstr "Cómo actualizar PHP" + +#: wpvulnerability-sitehealth.php:386 +msgid "WPVulnerability Core" +msgstr "WP Vulnerability - Núcleo" + +#: wpvulnerability-sitehealth.php:394 +msgid "WPVulnerability Themes" +msgstr "WPVulnerability - Temas" + +#: wpvulnerability-sitehealth.php:402 +msgid "WPVulnerability Plugins" +msgstr "WPVulnerability - Plugins" + +#: wpvulnerability-sitehealth.php:410 +msgid "WPVulnerability PHP" +msgstr "WPVulnerability PHP" + +#: wpvulnerability-sitehealth.php:418 +msgid "WPVulnerability Apache HTTPD" +msgstr "WPVulnerability Apache HTTPD" + +#: wpvulnerability-sitehealth.php:426 +msgid "WPVulnerability Nginx" +msgstr "WPVulnerability nginx" + +#: wpvulnerability-sitehealth.php:434 +msgid "WPVulnerability MariaDB" +msgstr "WPVulnerability MariaDB" + +#: wpvulnerability-sitehealth.php:442 +msgid "WPVulnerability MySQL" +msgstr "WPVulnerability MySQL" + +#: wpvulnerability-sitehealth.php:450 +msgid "WPVulnerability ImageMagick" +msgstr "WPVulnerability ImageMagick" + +#: wpvulnerability-sitehealth.php:458 +msgid "WPVulnerability curl" +msgstr "WPVulnerability curl" + +#: wpvulnerability-sitehealth.php:466 +msgid "WPVulnerability memcached" +msgstr "WPVulnerability memcached" + +#: wpvulnerability-sitehealth.php:474 +msgid "WPVulnerability redis" +msgstr "WPVulnerability Redis" + +#: wpvulnerability-sitehealth.php:482 +msgid "WPVulnerability sqlite" +msgstr "WPVulnerability SQLite" + +#: wpvulnerability-themes.php:196 wpvulnerability-themes.php:492 +msgid "This theme is closed. Please replace it with another." +msgstr "Este tema está cerrado. Por favor, reemplázalo por otro." + +#: wpvulnerability-themes.php:199 wpvulnerability-themes.php:495 +msgid "" +"This vulnerability appears to be unpatched. Stay tuned for upcoming theme " +"updates." +msgstr "" +"Esta vulnerabilidad no parece tener parche. Presta atención a las próximas " +"actualizaciones del tema." + +#: wpvulnerability-themes.php:391 +msgid "" +"This theme has known vulnerabilities that may be affecting your installed " +"version." +msgstr "" +"Este tema tiene vulnerabilidades conocidas que pueden estar afectando a tu " +"versión instalada." + +#~ msgid "%1$s has a known vulnerability that may be affecting this version." +#~ msgstr "" +#~ "%1$s tiene una vulnerabilidad conocida que puede estar afectando a esta " +#~ "versión." + +#~ msgid "Global score: " +#~ msgstr "Puntuación global: " + +#~ msgid "Severity: " +#~ msgstr "Gravedad: " + +#~ msgid "" +#~ "WordPress %1$s has a known vulnerability that may be affecting this " +#~ "version." +#~ msgstr "" +#~ "WordPress %1$s tiene una vulnerabilidad conocida que puede estar " +#~ "afectando a esta versión." diff --git a/languages/wpvulnerability-eu.l10n.php b/languages/wpvulnerability-eu.l10n.php new file mode 100644 index 0000000..270709e --- /dev/null +++ b/languages/wpvulnerability-eu.l10n.php @@ -0,0 +1,2 @@ +NULL,'plural-forms'=>'nplurals=2; plural=n != 1;','language'=>'eu_ES','project-id-version'=>'Plugins - WPVulnerability - Development (trunk)','pot-creation-date'=>'2026-05-27T16:32:22+00:00','po-revision-date'=>'2026-05-27 00:00+0000','x-generator'=>'GlotPress/4.0.3','messages'=>['WPVulnerability'=>'WPVulnerability','https://www.wpvulnerability.com/plugin/'=>'https://www.wpvulnerability.com/plugin/','Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API.'=>'Jaso informazioa zure WordPress-en ahultasun posibleei buruz WordPress Ahultasun Datu-basearen APIaren bidez.','ROBOTSTXT'=>'ROBOTSTXT','https://www.robotstxt.es/'=>'https://www.robotstxt.es/','This command requires a WordPress administrator. Run with --user=.'=>'Komando honek WordPress administratzaile bat behar du. Exekutatu --user= aukerarekin.','No core vulnerabilities found.'=>'Ez da nukleo-ahultasunik aurkitu.','No plugin vulnerabilities found.'=>'Ez da plugin-ahultasunik aurkitu.','No theme vulnerabilities found.'=>'Ez da itxura-ahultasunik aurkitu.','No %s vulnerabilities found.'=>'Ez da %s ahultasunik aurkitu.','Data from source has been reloaded.'=>'Iturburuko datuak berriro kargatu dira.','You do not have permission to reload data.'=>'Ez duzu datuak berriro kargatzeko baimenik.','Test email has been sent.'=>'Proba-mezua bidali da.','Test email has failed. Please, check your email settings.'=>'Proba-mezua bidaltzeak huts egin du. Mesedez, egiaztatu zure posta elektronikoaren ezarpenak.','You do not have permission to send test emails.'=>'Ez duzu proba-mezuak bidaltzeko baimenik.','WPVulnerability cron events have been repaired.'=>'WPVulnerability cron gertaerak konpondu dira.','You do not have permission to repair cron events.'=>'Ez duzu cron gertaerak konpontzeko baimenik.','All logs have been deleted.'=>'Erregistro guztiak ezabatu dira.','You do not have permission to delete logs.'=>'Ez duzu erregistroak ezabatzeko baimenik.','Uninstall preference saved.'=>'Desinstalazio-hobespena gorde da.','WPVulnerability has been reset to defaults and reloaded.'=>'WPVulnerability lehenetsi dira eta berriro kargatu da.','You do not have permission to reset WPVulnerability.'=>'Ez duzu WPVulnerability berrezartzeko baimenik.','All caches have been cleared.'=>'Cacheko elementu guztiak garbitu dira.','You do not have permission to clear caches.'=>'Ez duzu cachea garbitzeko baimenik.','Plugin and theme signatures have been reset.'=>'Plugin eta itxuren sinadurak berrezarri dira.','You do not have permission to reset signatures.'=>'Ez duzu sinadurak berrezartzeko baimenik.','You do not have permission to export debug information.'=>'Ez duzu arazketa-informazioa esportatzeko baimenik.','Database update has been executed.'=>'Datu-basearen eguneratzea exekutatu da.','You do not have permission to run database updates.'=>'Ez duzu datu-basearen eguneratzeak exekutatzeko baimenik.','Notification has been sent.'=>'Jakinarazpena bidali da.','Notification sending failed.'=>'Jakinarazpena bidaltzeak huts egin du.','You do not have permission to send notifications.'=>'Ez duzu jakinarazpenak bidaltzeko baimenik.','Notifications'=>'Jakinarazpenak','Analysis'=>'Analisia','Logs'=>'Erregistroak','Security'=>'Segurtasuna','Tools'=>'Tresnak','Debug'=>'Arazketa','About'=>'Honi buruz','Notification Settings'=>'Jakinarazpen-ezarpenak','Configure how and when you want to receive vulnerability notifications.'=>'Konfiguratu nola eta noiz jaso nahi dituzun ahultasun-jakinarazpenak.','Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software.'=>'Egon informatuta zure WordPress instalazioaren, pluginen, itxuren eta zerbitzariaren softwarearen segurtasun-ahultasunei buruz.','Cache Expiration Time'=>'Cacheko iraungitze-denbora','FORCED'=>'BEHARTUA','How long to cache vulnerability data before refreshing from the API.'=>'Zenbat denboran gorde cachean ahultasun-datuak APIa eguneratu baino lehen.','%d hour'=>'%d ordu' . "\0" . '%d ordu','You can force the cache time via wp-config.php constant. Learn more →'=>'Cacheko denbora behartu dezakezu wp-config.php konstantearen bidez. Gehiago ikasi →','Notification Frequency'=>'Jakinarazpen-maiztasuna','Choose how often you want to receive vulnerability notifications.'=>'Aukeratu zenbat aldiz jaso nahi dituzun ahultasun-jakinarazpenak.','Never - Disable automatic notifications'=>'Inoiz ez - Desgaitu jakinarazpen automatikoak','Daily - Receive notifications every day'=>'Egunero - Jaso jakinarazpenak egunero','Weekly - Receive notifications once a week'=>'Astero - Jaso jakinarazpenak astean behin','Day:'=>'Eguna:','Monday'=>'Astelehena','Tuesday'=>'Asteartea','Wednesday'=>'Asteazkena','Thursday'=>'Osteguna','Friday'=>'Ostirala','Saturday'=>'Larunbata','Sunday'=>'Igandea','Time:'=>'Ordua:','(24-hour format, server timezone)'=>'(24 orduko formatua, zerbitzariaren ordu-zona)','Notification Channels'=>'Jakinarazpen-kanalak','Select where you want to receive notifications.'=>'Aukeratu non jaso nahi dituzun jakinarazpenak.','Email'=>'Posta elektronikoa','Email Addresses (separated by commas):'=>'Posta elektronikoko helbideak (komaz bereizita):','Default:'=>'Lehenetsia:','Slack'=>'Slack','Slack Webhook URL:'=>'Slack Webhook URL:','Learn how to create a Slack incoming webhook →'=>'Ikasi nola sortu Slack sarrerako webhook bat →','Microsoft Teams'=>'Microsoft Teams','Teams Webhook URL:'=>'Teams Webhook URL:','Learn how to create a Teams incoming webhook →'=>'Ikasi nola sortu Teams sarrerako webhook bat →','Discord'=>'Discord','Discord Webhook URL:'=>'Discord Webhook URL:','Learn how to create a Discord webhook →'=>'Ikasi nola sortu Discord webhook bat →','Telegram'=>'Telegram','Telegram Bot Token:'=>'Telegram Bot Token:','Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Formatua: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','Telegram Chat ID:'=>'Telegram Chat ID:','Learn how to create a Telegram bot and get Chat ID →'=>'Ikasi nola sortu Telegram bot bat eta lortu Chat ID →','Save Notification Settings'=>'Gorde jakinarazpen-ezarpenak','WordPress Components'=>'WordPress osagaiak','WordPress Core'=>'WordPress nukleoa','Plugins'=>'Pluginak','Themes'=>'Itxurak','Software & Languages'=>'Softwarea eta hizkuntzak','PHP'=>'PHP','Web Servers'=>'Web zerbitzariak','Apache HTTPD'=>'Apache HTTPD','nginx'=>'nginx','Databases'=>'Datu-baseak','MariaDB'=>'MariaDB','MySQL'=>'MySQL','SQLite'=>'SQLite','Additional Tools'=>'Tresna osagarriak','ImageMagick'=>'ImageMagick','curl'=>'curl','memcached'=>'memcached','Redis'=>'Redis','Component Analysis Settings'=>'Osagaien analisi-ezarpenak','Enable or disable vulnerability analysis for specific components.'=>'Gaitu edo desgaitu osagai zehatzen ahultasun-analisia.','Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red.'=>'Markatu ahultasunen analisi eta txostenetatik EZKUTATU nahi dituzun osagaiak. Markatuta ez dauden osagaiak aktiboki aztertuko dira. Analisi aktiboa duten osagaiak berdez agertuko dira, ezkutatutakoak gorriz.','Hidden (forced by constant)'=>'Ezkutatuta (konstanteak behartuta)','🔴 Analysis disabled'=>'🔴 Analisia desgaituta','🟢 Analysis active'=>'🟢 Analisia aktibo','Tip:'=>'Aholkua:','You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →'=>'Osagaiak behartu dezakezu desaktibatzera wp-config.php konstanteen bidez. Gehiago ikasi egiaztapenak ezkutatzeari buruz →','Save Analysis Settings'=>'Gorde analisi-ezarpenak','« Previous'=>'« Aurrekoa','Next »'=>'Hurrengoa »','Log entry not found or has been removed.'=>'Erregistro-sarrera ez da aurkitu edo ezabatu egin da.','Unable to load the requested log entry.'=>'Ezin da eskatutako erregistro-sarrera kargatu.','Log Configuration'=>'Erregistro-konfigurazioa','Total Logs'=>'Erregistro guztira','Retention Period'=>'Atxikipen-aldia','Disabled'=>'Desgaituta','%d day'=>'%d egun' . "\0" . '%d egun','Log Retention Period'=>'Erregistroen atxikipen-aldia','None (Disabled)'=>'Bat ere ez (Desgaituta)','This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant.'=>'Balio hau WPVULNERABILITY_LOG_RETENTION_DAYS konstanteak ezartzen du.','Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted.'=>'Aukeratu zenbat denboran gorde behar dituen WPVulnerabilityren API erantzun-erregistroak. Erregistro zaharragoak automatikoki ezabatzen dira.','Save Configuration'=>'Gorde konfigurazioa','Log retention is currently disabled.'=>'Erregistroen atxikipena une honetan desgaituta dago.','API responses are not being saved.'=>'APIaren erantzunak ez dira gordetzen.','Log Details'=>'Erregistroaren xehetasunak','Date'=>'Data','API Endpoint'=>'API amaiera-puntua','API Response'=>'APIaren erantzuna','Back to Logs'=>'Itzuli erregistroetara','No logs available'=>'Ez dago erregistrorik eskuragarri','API response logs will appear here once the vulnerability scanner runs.'=>'API erantzun-erregistroak hemen agertuko dira ahultasun-eskaner-a exekutatu ondoren.','API Response Logs'=>'API erantzun-erregistroak','Show:'=>'Erakutsi:','Apply'=>'Aplikatu','Showing %1$s–%2$s of %3$s'=>'%1$s–%2$s erakusten %3$s-tik','Actions'=>'Ekintzak','View'=>'Ikusi','Danger Zone'=>'Arrisku-eremua','Permanently delete all API response logs. This action cannot be undone.'=>'Betirako ezabatu API erantzun-erregistro guztiak. Ekintza hau ezin da desegin.','Are you sure you want to delete all logs? This action cannot be undone.'=>'Ziur zaude erregistro guztiak ezabatu nahi dituzula? Ekintza hau ezin da desegin.','Delete All Logs'=>'Ezabatu erregistro guztiak','Reload Data from API'=>'Birkargatu datuak APIa-tik','Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information.'=>'Birkargatu Nukleo, Plugin, Itxura eta beste osagaien informazio guztia zuzenean APIa-tik datu eguneratuak izateko. Honek cachea garbitu eta ahultasun-informazio freskoa eskuratuko du.','Reload Data'=>'Birkargatu datuak','Test Email Notifications'=>'Probatu posta elektronikoko jakinarazpenak','Send a test email notification with current vulnerability data to verify your email configuration is working correctly.'=>'Bidali proba-mezu bat uneko ahultasun-datuekin zure posta elektronikoaren konfigurazioa ondo funtzionatzen ari dela egiaztatzeko.','From address (configured via constant):'=>'Jatorri-helbidea (konstantearen bidez konfiguratuta):','From address (default):'=>'Jatorri-helbidea (lehenetsia):','Learn how to customize the email sender address →'=>'Ikasi nola pertsonalizatu posta elektronikoaren bidaltzailearen helbidea →','Send Test Email'=>'Bidali proba-mezua','WP-Cron Status'=>'WP-Cron egoera','View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly.'=>'Ikusi eta kudeatu WP-Cron programatutako gertaerak. Alderatu espero diren programazioak benetako cron lanekin zeregin automatizatuak ondo exekutatzen ari direla ziurtatzeko.','No cron data available.'=>'Ez dago cron daturik eskuragarri.','Hook'=>'Hook','Expected'=>'Espero dena','Found'=>'Aurkitua','Next Run'=>'Hurrengo exekuzioa','Status'=>'Egoera','Not expected'=>'Ez da espero','None'=>'Bat ere ez','OK'=>'Ados','⚠️ Unexpected WPVulnerability Events'=>'⚠️ WPVulnerability gertaera ustekabeak','No interval'=>'Tarterik gabe','Next:'=>'Hurrengoa:','Repair Cron Events'=>'Konpondu cron gertaerak','Uninstall Data'=>'Desinstalazio-datuak','By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall.'=>'Lehenespenez, plugin-datu guztiak gordetzen dira WPVulnerability ezabatzean. Gaitu beheko aukera soilik aukera, erregistro eta cacheko datu guztiak desinstalatzean betirako ezabatu nahi badituzu.','Delete all plugin data on uninstall'=>'Ezabatu plugin-datu guztiak desinstalatzean','Default: unchecked (data preserved). Check only if you want a clean removal.'=>'Lehenetsia: markatuta gabe (datuak gordetzen dira). Markatu soilik garbiketa osoa nahi baduzu.','Save preference'=>'Gorde hobespena','Reset WPVulnerability'=>'Berrezarri WPVulnerability','Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API.'=>'Ezabatu WPVulnerability ezarpen, cacheko datu, erregistro eta programatutako gertaera guztiak, eta lehenetsi berrezarri eta APIa-tik datuak birkargatu.','This action cannot be undone.'=>'Ekintza hau ezin da desegin.','Are you sure you want to reset all WPVulnerability data? This action cannot be undone.'=>'Ziur zaude WPVulnerabilityren datu guztiak berrezarri nahi dituzula? Ekintza hau ezin da desegin.','Reset Plugin'=>'Berrezarri plugina','Vulnerability Database Statistics'=>'Ahultasun datu-basearen estatistikak','%s vulnerability'=>'%s ahultasun' . "\0" . '%s ahultasun','(%s product)'=>'(%s produktu)' . "\0" . '(%s produktu)','No data'=>'Daturik ez','Database last updated: %s'=>'Datu-basea azken aldiz eguneratua: %s','Intelligence Sources'=>'Adimen-iturriak','Number of vulnerabilities contributed by each intelligence source.'=>'Adimen-iturri bakoitzak ekarritako ahultasun kopurua.','Source'=>'Iturria','Core'=>'Nukleoa','Sponsors'=>'Babeslariak','No sponsor data available.'=>'Ez dago babeslarien daturik eskuragarri.','Contributors'=>'Laguntzaileak','No contributor data available.'=>'Ez dago laguntzaileen daturik eskuragarri.','You do not have sufficient permissions to access this page.'=>'Ez duzu orri hau atzitzeko baimen nahikorik.','WPVulnerability settings'=>'WPVulnerability ezarpenak','Configure and save these settings to receive notifications.'=>'Konfiguratu eta gorde ezarpen hauek jakinarazpenak jasotzeko.','Configure and save these settings to hide vulnerabilities.'=>'Konfiguratu eta gorde ezarpen hauek ahultasunak ezkutatzeko.','Default administrator email'=>'Administratzailearen posta elektroniko lehenetsia','Read more if you want to force the cache time.'=>'Irakurri gehiago cacheko denbora behartu nahi baduzu.','Never'=>'Inoiz ez','Daily'=>'Egunero','Weekly'=>'Astero','Day'=>'Eguna','Hour'=>'Ordua','Minute'=>'Minutua','Read more about how to force the deactivation of an item.'=>'Irakurri gehiago elementu bat desgaitzea nola behartu jakiteko.','Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com'=>'Slack webhook URL baliogabea. hooks.slack.com-eko HTTPS URL baliogarria izan behar da.','Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com'=>'Microsoft Teams webhook URL baliogabea. office.com, office365.com edo api.hooks.microsoft.com-eko HTTPS URL baliogarria izan behar da.','Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com'=>'Discord webhook URL baliogabea. discord.com edo discordapp.com-eko HTTPS URL baliogarria izan behar da.','Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Telegram bot token formatua baliogabea. Honelakoa izan behar da: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','All Clear'=>'Dena ondo','%d Critical Issue Found'=>'%d arazo kritiko aurkitu da' . "\0" . '%d arazo kritiko aurkitu dira','%d Issue Found'=>'%d arazo aurkitu da' . "\0" . '%d arazo aurkitu dira','Never checked'=>'Inoiz egiaztatu gabe','%d minute ago'=>'duela %d minutu' . "\0" . 'duela %d minutu','%d hour ago'=>'duela %d ordu' . "\0" . 'duela %d ordu','Last checked: %s'=>'Azken egiaztapena: %s','Refresh Now'=>'Freskatu orain','No vulnerabilities detected'=>'Ez da ahultasunik detektatu','Your site is up to date and secure'=>'Zure gunea eguneratuta eta seguru dago','Server Software'=>'Zerbitzariaren softwarea','Site Health'=>'Gunearen osasuna','Settings'=>'Ezarpenak','WPVulnerability Status'=>'WPVulnerability egoera','Receive vulnerability notifications'=>'Jaso ahultasun-jakinarazpenak','Cache expiration time'=>'Cacheko iraungitze-denbora','How often you want to receive notifications'=>'Zenbat aldiz jaso nahi dituzu jakinarazpenak','Where do you want to receive notifications?'=>'Non jaso nahi dituzu jakinarazpenak?','Email addresses to notify (separated by commas)'=>'Jakinarazpenak bidaltzeko posta elektronikoko helbideak (komaz bereizita)','Slack webhook URL'=>'Slack webhook URL','Teams webhook URL'=>'Teams webhook URL','Vulnerabilities to hide'=>'Ezkutatzeko ahultasunak','What do you want to hide?'=>'Zer ezkutatu nahi duzu?','Standard (Hybrid Detection)'=>'Estandarra (detekzio hibridoa)','Strict (Extensions Only)'=>'Zorrotza (luzapenak soilik)','Disabled (No Detection)'=>'Desgaituta (detekziorik gabe)','Security Status'=>'Segurtasun egoera','Security Mode'=>'Segurtasun modua','Shell Execution'=>'Shell exekuzioa','Enabled'=>'Gaituta','Audit Logging'=>'Auditoretza-erregistroa','Enabled (%d days)'=>'Gaituta (%d egun)','Total Log Entries'=>'Erregistro-sarrera guztiak','Last Shell Execution'=>'Azken shell exekuzioa','%s ago'=>'duela %s','Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.'=>'Konfiguratu segurtasun-ezarpenak wp-config.php konstanteen bidez: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.','See security configuration documentation for details.'=>'Ikusi segurtasun konfigurazio dokumentazioa xehetasunetarako.','Memcached'=>'Memcached','Imagick Extension'=>'Imagick luzapena','Redis Extension'=>'Redis luzapena','Memcached Extension'=>'Memcached luzapena','Memcache Extension'=>'Memcache luzapena','SQLite3 Extension'=>'SQLite3 luzapena','PDO SQLite'=>'PDO SQLite','Shell Command'=>'Shell komandoa','Binary Check'=>'Bitarrazko egiaztapena','Not Detected'=>'Ez da detektatu','Software Detection Methods'=>'Software-detekzio metodoak','Shows which detection method was used for each software component and the reliability score.'=>'Erakusten du zein detekzio metodo erabili den software-osagai bakoitzarentzat eta fidagarritasun-puntuazioa.','Component'=>'Osagaia','Version'=>'Bertsioa','Detection Method'=>'Detekzio metodoa','Reliability'=>'Fidagarritasuna','Not detected'=>'Ez da detektatu','Shell Execution Audit Logs'=>'Shell exekuzioaren auditoretza-erregistroak','Complete audit trail of shell command executions for security monitoring.'=>'Shell komandoen exekuzioen auditoretza-pista osoa segurtasun-kontrolerako.','No shell execution logs found.'=>'Ez da shell exekuzioaren erregistrorik aurkitu.','Logs will appear here when shell commands are executed for software detection.'=>'Erregistroak hemen agertuko dira shell komandoak software-detekziorako exekutatzen direnean.','Time'=>'Ordua','Command'=>'Komandoa','User'=>'Erabiltzailea','Output'=>'Irteera','Showing the %d most recent log entries.'=>'%d erregistro-sarrera berriena erakusten.','Invalid nonce.'=>'Nonce baliogabea.','Insufficient permissions.'=>'Baimen nahikoa ez.','No component specified.'=>'Ez da osagairik zehaztu.','Debug Information'=>'Arazketa-informazioa','This tab is only visible when WP_DEBUG is enabled. Use with caution.'=>'Fitxa hau WP_DEBUG gaituta dagoenean soilik ikus daiteke. Erabili kontu handiz.','System Information'=>'Sistemaren informazioa','WordPress Version'=>'WordPress bertsioa','Multisite'=>'Gune anitza','Yes'=>'Bai','No'=>'Ez','Language'=>'Hizkuntza','PHP Version'=>'PHP bertsioa','PHP Extensions'=>'PHP luzapenak','PHP Memory Limit'=>'PHP memoria-muga','Database'=>'Datu-basea','Web Server'=>'Web zerbitzaria','WP_DEBUG'=>'WP_DEBUG','WP_DEBUG_LOG'=>'WP_DEBUG_LOG','Path:'=>'Bidea:','Size: %s'=>'Tamaina: %s','View Log File'=>'Ikusi erregistro fitxategia','Log file is not web-accessible (outside wp-content)'=>'Erregistro fitxategia ez da web bidez eskuragarri (wp-content-etik kanpo)','Log file does not exist yet'=>'Erregistro fitxategia oraindik ez da existitzen','Plugin Version'=>'Plugin bertsioa','Component Detection'=>'Osagaien detekzioa','Version Detected'=>'Detektatutako bertsioa','Analyzed'=>'Aztertua','Cache Status'=>'Cachearen egoera','Configuration Summary'=>'Konfigurazio-laburpena','Cache Duration'=>'Cacheko iraupena','Log Retention'=>'Erregistroen atxikipena','Components Analyzed'=>'Aztertutako osagaiak','Notification Email'=>'Jakinarazpen-posta elektronikoa','Slack Webhook'=>'Slack Webhook','Configured & Enabled'=>'Konfiguratuta eta gaituta','Configured (Disabled)'=>'Konfiguratuta (desgaituta)','Not configured'=>'Konfiguratu gabe','Teams Webhook'=>'Teams Webhook','Discord Webhook'=>'Discord Webhook','Telegram Bot'=>'Telegram Bot','Cron Status'=>'Cron egoera','Update Database'=>'Eguneratu datu-basea','Next run: %s'=>'Hurrengo exekuzioa: %s','Not scheduled'=>'Programatu gabe','Send Notification'=>'Bidali jakinarazpena','Run Update Now'=>'Exekutatu eguneratzea orain','Run Notification Now'=>'Bidali jakinarazpena orain','You do not have permission to run these actions.'=>'Ez duzu ekintza hauek exekutatzeko baimenik.','API Testing'=>'API probak','Test API connectivity for each component. Click a button to send a test request.'=>'Probatu osagai bakoitzaren API konektibitasuna. Egin klik botoi batean proba-eskaera bidaltzeko.','Test %s'=>'Probatu %s','Testing...'=>'Probatzen...','HTTP Code:'=>'HTTP kodea:','Response Time:'=>'Erantzun-denbora:','Response Preview'=>'Erantzunaren aurrebista','Test'=>'Proba','Error:'=>'Errorea:','AJAX request failed.'=>'AJAX eskaera huts egin du.','You do not have permission to test API connectivity.'=>'Ez duzu API konektibitasuna probatzeko baimenik.','Database Options Viewer'=>'Datu-basearen aukeren ikustailea','View the raw data stored in WordPress options.'=>'Ikusi WordPress aukeretan gordetako datu gordinak.','Select an option...'=>'Aukeratu aukera bat...','Option not found or empty.'=>'Aukera ez da aurkitu edo hutsik dago.','Quick Actions'=>'Ekintza azkarrak','Perform debugging actions. Use with caution.'=>'Egin arazketa-ekintzak. Erabili kontu handiz.','Are you sure you want to clear all caches?'=>'Ziur zaude cache guztiak garbitu nahi dituzula?','Clear All Caches'=>'Garbitu cache guztiak','Are you sure you want to reset signatures?'=>'Ziur zaude sinadurak berrezarri nahi dituzula?','Reset Signatures'=>'Berrezarri sinadurak','Export Debug Info'=>'Esportatu arazketa-informazioa','You do not have permission to perform these actions.'=>'Ez duzu ekintza hauek egiteko baimenik.','Settings saved.'=>'Ezarpenak gorde dira.','WPVulnerability cron events have been repaired across the network.'=>'WPVulnerability cron gertaerak sarean zehar konpondu dira.','You do not have permission to access this page.'=>'Ez duzu orri hau atzitzeko baimenik.','WordPress %1$s has a known vulnerability that may be affecting your installed version.'=>'WordPress %1$s-k ezagutzen den ahultasun bat du, zure instalatutako bertsioan eragina izaten ari dena.','Actively exploited'=>'Aktiboki ustiatu','Public exploit'=>'Exploit publikoa','Automatable'=>'Automatizagarria','References:'=>'Erreferentziak:','Invalid component specified.'=>'Osagai baliogabea zehaztu da.','Version not detected for this component.'=>'Ez da bertsioa detektatu osagai honentzat.','API request successful.'=>'API eskaera arrakastatsua.','API returned HTTP code %d.'=>'APIak %d HTTP kodea itzuli du.','WPVulnerability Logs'=>'WPVulnerability erregistroak','WPVulnerability Log'=>'WPVulnerability erregistroa','Low'=>'Baxua','Medium'=>'Ertaina','High'=>'Altua','Critical'=>'Kritikoa','WPVulnerability Shell Logs'=>'WPVulnerability shell erregistroak','WPVulnerability Shell Log'=>'WPVulnerability shell erregistroa','Every week'=>'Astero','Every day'=>'Egunero','Invalid request.'=>'Eskaera baliogabea.','You have unsubscribed from WPVulnerability notifications.'=>'WPVulnerability jakinarazpenetatik harpidetza eman duzu.','Learn more about the WordPress Vulnerability Database API at %2$s'=>'Gehiago ikasi WordPress Ahultasun Datu-basearen APIari buruz %2$s-en','Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings.'=>'Alerta hauek jasotzeari utzi nahi diozu? Harpidetza kendu edo aldatu posta elektronikoaren maiztasuna Inoiz ez-era WPVulnerability ezarpenetan.','No vulnerabilities found'=>'Ez da ahultasunik aurkitu','This is likely a test. The site does not have vulnerabilities.'=>'Hau proba bat da ziurrenik. Guneak ez du ahultasunik.','Core vulnerabilities'=>'Nukleo-ahultasunak','Plugins vulnerabilities'=>'Plugin-ahultasunak','Themes vulnerabilities'=>'Itxura-ahultasunak','PHP vulnerabilities'=>'PHP ahultasunak','Apache HTTPD vulnerabilities'=>'Apache HTTPD ahultasunak','Nginx vulnerabilities'=>'Nginx ahultasunak','MariaDB vulnerabilities'=>'MariaDB ahultasunak','MySQL vulnerabilities'=>'MySQL ahultasunak','ImageMagick vulnerabilities'=>'ImageMagick ahultasunak','curl vulnerabilities'=>'curl ahultasunak','memcached vulnerabilities'=>'memcached ahultasunak','Redis vulnerabilities'=>'Redis ahultasunak','SQLite vulnerabilities'=>'SQLite ahultasunak','Vulnerability found: %s'=>'Ahultasuna aurkitu da: %s','Vulnerability found'=>'Ahultasuna aurkitu da','%1$s has a known vulnerability that may be affecting your installed version.'=>'%1$s-ek ezagutzen den ahultasun bat du, zure instalatutako bertsioan eragina izaten ari dena.','This plugin is closed. Please replace it with another.'=>'Plugin hau itxita dago. Ordezkatu beste batekin, mesedez.','This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates.'=>'Ahultasun hau adabakatu gabe dagoela dirudi. Egon adi datozen plugin eguneratzeei.','It hasn\'t been updated in over a year.'=>'Urtebete baino gehiago da eguneratu gabe dagoela.','It may no longer be available (closed?).'=>'Baliteke jada eskuragarri ez egotea (itxita?).','Last updated on'=>'Azken eguneraketa','Vulnerabilities (%d)'=>'Ahultasunak (%d)','%s running'=>'%s exekutatzen','End of Life'=>'Bizitza amaiera','End of life:'=>'Bizitza amaiera:','Supported'=>'Onartua','Plugin'=>'Plugina','Theme'=>'Itxura','End of life: %s'=>'Bizitza amaiera: %s','EOL'=>'BAM','Network Settings'=>'Sare-ezarpenak','Vulnerabilities'=>'Ahultasunak','Every 6 hours'=>'6 orduro behin','Database updates'=>'Datu-basearen eguneratzeak','Log cleanup'=>'Erregistroen garbiketa','Notifications are scheduled, but settings currently disable them. Please review the notifications tab.'=>'Jakinarazpenak programatuta daude, baina ezarpenek une honetan desgaitzen dituzte. Mesedez, berrikusi jakinarazpenen fitxa.','This event should not be scheduled for this site.'=>'Gertaera hau ez dago programatuta behar gune honentzat.','Not expected for this site.'=>'Ez da espero gune honentzat.','No instances found.'=>'Ez da instantziarik aurkitu.','Scheduled with an unexpected interval.'=>'Ustekabeko tarte batekin programatuta.','Multiple instances detected.'=>'Hainbat instantzia detektatu dira.','Scheduled as expected.'=>'Espero bezala programatuta.','There aren\'t plugins vulnerabilities'=>'Ez dago plugin-ahultasunik','Shows possible vulnerabilities that exist in installed plugins.'=>'Instalatutako pluginetan dauden ahultasun posibleak erakusten ditu.','There is %d plugin with vulnerabilities'=>'%d plugin dago ahultasunekin' . "\0" . '%d plugin daude ahultasunekin','We\'ve detected potential vulnerabilities in installed plugins. Please check them and keep them updated.'=>'Ahultasun posibleak detektatu ditugu instalatutako pluginetan. Mesedez, egiaztatu eta eguneratuta mantentzen dituzun.','Update plugins'=>'Eguneratu pluginak','There aren\'t themes vulnerabilities'=>'Ez dago itxura-ahultasunik','Shows possible vulnerabilities that exist in installed themes.'=>'Instalatutako itxuretan dauden ahultasun posibleak erakusten ditu.','There is %d theme with vulnerabilities'=>'%d itxura dago ahultasunekin' . "\0" . '%d itxura daude ahultasunekin','We\'ve detected potential vulnerabilities in installed themes. Please check them and keep them updated.'=>'Ahultasun posibleak detektatu ditugu instalatutako itxuretan. Mesedez, egiaztatu eta eguneratuta mantentzen dituzun.','Update themes'=>'Eguneratu itxurak','There aren\'t WordPress vulnerabilities'=>'Ez dago WordPress ahultasunik','Shows possible vulnerabilities existing in the WordPress core.'=>'WordPress nukleoan dauden ahultasun posibleak erakusten ditu.','There is %d core vulnerability'=>'%d nukleo-ahultasun dago' . "\0" . '%d nukleo-ahultasun daude','We\'ve detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated.'=>'Ahultasun posibleak detektatu ditugu WordPress instalazio honetan. Mesedez, egiaztatu eta zure instalazioa eguneratuta mantentzen duzu.','Update WordPress'=>'Eguneratu WordPress','Nginx'=>'Nginx','Invalid software type'=>'Software mota baliogabea','Error'=>'Errorea','The specified software type is not valid.'=>'Zehaztutako software mota ez da baliozkoa.','There aren\'t %s vulnerabilities'=>'Ez dago %s ahultasunik','Shows possible vulnerabilities existing in %s.'=>'%s-en dauden ahultasun posibleak erakusten ditu.','There is %1$d %2$s vulnerability'=>'%1$d %2$s ahultasun dago' . "\0" . '%1$d %2$s ahultasun daude','We\'ve detected potential vulnerabilities in %s. Please check them and keep your installation updated.'=>'Ahultasun posibleak detektatu ditugu %s-en. Mesedez, egiaztatu eta zure instalazioa eguneratuta mantentzen duzu.','How to update PHP'=>'Nola eguneratu PHP','WPVulnerability Core'=>'WPVulnerability muina','WPVulnerability Themes'=>'WPVulnerability itxurak','WPVulnerability Plugins'=>'WPVulnerability Pluginak','WPVulnerability PHP'=>'WPVulnerability PHP','WPVulnerability Apache HTTPD'=>'WPVulnerability Apache HTTPD','WPVulnerability Nginx'=>'WPVulnerability Nginx','WPVulnerability MariaDB'=>'WPVulnerability MariaDB','WPVulnerability MySQL'=>'WPVulnerability MySQL','WPVulnerability ImageMagick'=>'WPVulnerability ImageMagick','WPVulnerability curl'=>'WPVulnerability curl','WPVulnerability memcached'=>'WPVulnerability memcached','WPVulnerability redis'=>'WPVulnerability redis','WPVulnerability sqlite'=>'WPVulnerability sqlite','This theme is closed. Please replace it with another.'=>'Itxura hau itxita dago. Ordezkatu beste batekin, mesedez.','This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates.'=>'Ahultasun hau adabakatu gabe dagoela dirudi. Egon adi datozen itxura eguneratzeei.','This theme has known vulnerabilities that may be affecting your installed version.'=>'Itxura honek ezagutzen diren ahultasunak ditu, zure instalatutako bertsioan eragina izaten ari direnak.']]; \ No newline at end of file diff --git a/languages/wpvulnerability-eu.mo b/languages/wpvulnerability-eu.mo new file mode 100644 index 0000000000000000000000000000000000000000..e2dc0fb2f6f51ec2c335de5af6d5ee214b12b543 GIT binary patch literal 39479 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." +msgstr "" +"Komando honek WordPress administratzaile bat behar du. Exekutatu --" +"user= aukerarekin." + +#: class-wpvulnerability-cli.php:156 +msgid "No core vulnerabilities found." +msgstr "Ez da nukleo-ahultasunik aurkitu." + +#: class-wpvulnerability-cli.php:275 +msgid "No plugin vulnerabilities found." +msgstr "Ez da plugin-ahultasunik aurkitu." + +#: class-wpvulnerability-cli.php:393 +msgid "No theme vulnerabilities found." +msgstr "Ez da itxura-ahultasunik aurkitu." + +#. translators: %s is the software name (php, apache, nginx, etc.) +#: class-wpvulnerability-cli.php:490 +#, php-format +msgid "No %s vulnerabilities found." +msgstr "Ez da %s ahultasunik aurkitu." + +#: wpvulnerability-admin.php:63 wpvulnerability-adminms.php:227 +msgid "Data from source has been reloaded." +msgstr "Iturburuko datuak berriro kargatu dira." + +#: wpvulnerability-admin.php:65 wpvulnerability-adminms.php:229 +msgid "You do not have permission to reload data." +msgstr "Ez duzu datuak berriro kargatzeko baimenik." + +#: wpvulnerability-admin.php:93 wpvulnerability-adminms.php:255 +msgid "Test email has been sent." +msgstr "Proba-mezua bidali da." + +#: wpvulnerability-admin.php:95 wpvulnerability-adminms.php:259 +msgid "Test email has failed. Please, check your email settings." +msgstr "" +"Proba-mezua bidaltzeak huts egin du. Mesedez, egiaztatu zure posta " +"elektronikoaren ezarpenak." + +#: wpvulnerability-admin.php:98 wpvulnerability-adminms.php:263 +msgid "You do not have permission to send test emails." +msgstr "Ez duzu proba-mezuak bidaltzeko baimenik." + +#: wpvulnerability-admin.php:113 +msgid "WPVulnerability cron events have been repaired." +msgstr "WPVulnerability cron gertaerak konpondu dira." + +#: wpvulnerability-admin.php:115 wpvulnerability-adminms.php:279 +msgid "You do not have permission to repair cron events." +msgstr "Ez duzu cron gertaerak konpontzeko baimenik." + +#: wpvulnerability-admin.php:127 wpvulnerability-adminms.php:291 +msgid "All logs have been deleted." +msgstr "Erregistro guztiak ezabatu dira." + +#: wpvulnerability-admin.php:129 wpvulnerability-adminms.php:293 +msgid "You do not have permission to delete logs." +msgstr "Ez duzu erregistroak ezabatzeko baimenik." + +#: wpvulnerability-admin.php:146 +msgid "Uninstall preference saved." +msgstr "Desinstalazio-hobespena gorde da." + +#: wpvulnerability-admin.php:153 wpvulnerability-adminms.php:316 +msgid "WPVulnerability has been reset to defaults and reloaded." +msgstr "WPVulnerability lehenetsi dira eta berriro kargatu da." + +#: wpvulnerability-admin.php:155 wpvulnerability-adminms.php:318 +msgid "You do not have permission to reset WPVulnerability." +msgstr "Ez duzu WPVulnerability berrezartzeko baimenik." + +#: wpvulnerability-admin.php:170 wpvulnerability-adminms.php:333 +msgid "All caches have been cleared." +msgstr "Cacheko elementu guztiak garbitu dira." + +#: wpvulnerability-admin.php:172 wpvulnerability-adminms.php:335 +msgid "You do not have permission to clear caches." +msgstr "Ez duzu cachea garbitzeko baimenik." + +#: wpvulnerability-admin.php:187 wpvulnerability-adminms.php:350 +msgid "Plugin and theme signatures have been reset." +msgstr "Plugin eta itxuren sinadurak berrezarri dira." + +#: wpvulnerability-admin.php:189 wpvulnerability-adminms.php:352 +msgid "You do not have permission to reset signatures." +msgstr "Ez duzu sinadurak berrezartzeko baimenik." + +#: wpvulnerability-admin.php:212 wpvulnerability-adminms.php:375 +msgid "You do not have permission to export debug information." +msgstr "Ez duzu arazketa-informazioa esportatzeko baimenik." + +#: wpvulnerability-admin.php:224 wpvulnerability-adminms.php:387 +msgid "Database update has been executed." +msgstr "Datu-basearen eguneratzea exekutatu da." + +#: wpvulnerability-admin.php:226 wpvulnerability-adminms.php:389 +msgid "You do not have permission to run database updates." +msgstr "Ez duzu datu-basearen eguneratzeak exekutatzeko baimenik." + +#: wpvulnerability-admin.php:247 wpvulnerability-adminms.php:410 +msgid "Notification has been sent." +msgstr "Jakinarazpena bidali da." + +#: wpvulnerability-admin.php:249 wpvulnerability-adminms.php:412 +msgid "Notification sending failed." +msgstr "Jakinarazpena bidaltzeak huts egin du." + +#: wpvulnerability-admin.php:252 wpvulnerability-adminms.php:415 +msgid "You do not have permission to send notifications." +msgstr "Ez duzu jakinarazpenak bidaltzeko baimenik." + +#: wpvulnerability-admin.php:266 wpvulnerability-adminms.php:539 +#: wpvulnerability-schedule.php:323 +msgid "Notifications" +msgstr "Jakinarazpenak" + +#: wpvulnerability-admin.php:269 wpvulnerability-adminms.php:542 +msgid "Analysis" +msgstr "Analisia" + +#: wpvulnerability-admin.php:272 wpvulnerability-adminms.php:545 +msgid "Logs" +msgstr "Erregistroak" + +#: wpvulnerability-admin.php:275 wpvulnerability-adminms.php:548 +#: wpvulnerability-sitehealth.php:25 wpvulnerability-sitehealth.php:77 +#: wpvulnerability-sitehealth.php:129 wpvulnerability-sitehealth.php:210 +msgid "Security" +msgstr "Segurtasuna" + +#: wpvulnerability-admin.php:278 wpvulnerability-adminms.php:551 +msgid "Tools" +msgstr "Tresnak" + +#: wpvulnerability-admin.php:285 wpvulnerability-adminms.php:558 +msgid "Debug" +msgstr "Arazketa" + +#: wpvulnerability-admin.php:290 wpvulnerability-adminms.php:563 +msgid "About" +msgstr "Honi buruz" + +#: wpvulnerability-admin.php:427 wpvulnerability-adminms.php:700 +msgid "Notification Settings" +msgstr "Jakinarazpen-ezarpenak" + +#: wpvulnerability-admin.php:430 wpvulnerability-adminms.php:703 +msgid "Configure how and when you want to receive vulnerability notifications." +msgstr "Konfiguratu nola eta noiz jaso nahi dituzun ahultasun-jakinarazpenak." + +#: wpvulnerability-admin.php:431 wpvulnerability-adminms.php:704 +msgid "" +"Stay informed about security vulnerabilities in your WordPress installation, " +"plugins, themes, and server software." +msgstr "" +"Egon informatuta zure WordPress instalazioaren, pluginen, itxuren eta zerbitzariaren " +"softwarearen segurtasun-ahultasunei buruz." + +#: wpvulnerability-admin.php:438 wpvulnerability-adminms.php:711 +msgid "Cache Expiration Time" +msgstr "Cacheko iraungitze-denbora" + +#: wpvulnerability-admin.php:440 wpvulnerability-admin.php:814 +#: wpvulnerability-adminms.php:713 wpvulnerability-adminms.php:1087 +msgid "FORCED" +msgstr "BEHARTUA" + +#: wpvulnerability-admin.php:444 wpvulnerability-adminms.php:717 +msgid "How long to cache vulnerability data before refreshing from the API." +msgstr "Zenbat denboran gorde cachean ahultasun-datuak APIa eguneratu baino lehen." + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:453 wpvulnerability-admin.php:1891 +#: wpvulnerability-admin.php:3631 wpvulnerability-adminms.php:726 +#: wpvulnerability-adminms.php:2039 wpvulnerability-adminms.php:3825 +#, php-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d ordu" +msgstr[1] "%d ordu" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:469 wpvulnerability-adminms.php:742 +#, php-format +msgid "" +"You can force the cache time via wp-config.php constant. Learn more →" +msgstr "" +"Cacheko denbora behartu dezakezu wp-config.php konstantearen bidez. Gehiago ikasi →" + +#: wpvulnerability-admin.php:481 wpvulnerability-admin.php:3665 +#: wpvulnerability-adminms.php:754 wpvulnerability-adminms.php:3859 +msgid "Notification Frequency" +msgstr "Jakinarazpen-maiztasuna" + +#: wpvulnerability-admin.php:484 wpvulnerability-adminms.php:757 +msgid "Choose how often you want to receive vulnerability notifications." +msgstr "Aukeratu zenbat aldiz jaso nahi dituzun ahultasun-jakinarazpenak." + +#: wpvulnerability-admin.php:489 wpvulnerability-adminms.php:762 +msgid "Never - Disable automatic notifications" +msgstr "Inoiz ez - Desgaitu jakinarazpen automatikoak" + +#: wpvulnerability-admin.php:493 wpvulnerability-adminms.php:766 +msgid "Daily - Receive notifications every day" +msgstr "Egunero - Jaso jakinarazpenak egunero" + +#: wpvulnerability-admin.php:497 wpvulnerability-adminms.php:770 +msgid "Weekly - Receive notifications once a week" +msgstr "Astero - Jaso jakinarazpenak astean behin" + +#: wpvulnerability-admin.php:503 wpvulnerability-adminms.php:776 +msgid "Day:" +msgstr "Eguna:" + +#: wpvulnerability-admin.php:505 wpvulnerability-admin.php:1955 +#: wpvulnerability-adminms.php:778 wpvulnerability-adminms.php:2115 +msgid "Monday" +msgstr "Astelehena" + +#: wpvulnerability-admin.php:506 wpvulnerability-admin.php:1956 +#: wpvulnerability-adminms.php:779 wpvulnerability-adminms.php:2116 +msgid "Tuesday" +msgstr "Asteartea" + +#: wpvulnerability-admin.php:507 wpvulnerability-admin.php:1957 +#: wpvulnerability-adminms.php:780 wpvulnerability-adminms.php:2117 +msgid "Wednesday" +msgstr "Asteazkena" + +#: wpvulnerability-admin.php:508 wpvulnerability-admin.php:1958 +#: wpvulnerability-adminms.php:781 wpvulnerability-adminms.php:2118 +msgid "Thursday" +msgstr "Osteguna" + +#: wpvulnerability-admin.php:509 wpvulnerability-admin.php:1959 +#: wpvulnerability-adminms.php:782 wpvulnerability-adminms.php:2119 +msgid "Friday" +msgstr "Ostirala" + +#: wpvulnerability-admin.php:510 wpvulnerability-admin.php:1960 +#: wpvulnerability-adminms.php:783 wpvulnerability-adminms.php:2120 +msgid "Saturday" +msgstr "Larunbata" + +#: wpvulnerability-admin.php:511 wpvulnerability-admin.php:1961 +#: wpvulnerability-adminms.php:784 wpvulnerability-adminms.php:2121 +msgid "Sunday" +msgstr "Igandea" + +#: wpvulnerability-admin.php:515 wpvulnerability-adminms.php:788 +msgid "Time:" +msgstr "Ordua:" + +#: wpvulnerability-admin.php:519 wpvulnerability-adminms.php:792 +msgid "(24-hour format, server timezone)" +msgstr "(24 orduko formatua, zerbitzariaren ordu-zona)" + +#: wpvulnerability-admin.php:528 wpvulnerability-adminms.php:801 +msgid "Notification Channels" +msgstr "Jakinarazpen-kanalak" + +#: wpvulnerability-admin.php:531 wpvulnerability-adminms.php:804 +msgid "Select where you want to receive notifications." +msgstr "Aukeratu non jaso nahi dituzun jakinarazpenak." + +#: wpvulnerability-admin.php:536 wpvulnerability-admin.php:2011 +#: wpvulnerability-adminms.php:809 wpvulnerability-adminms.php:2169 +msgid "Email" +msgstr "Posta elektronikoa" + +#: wpvulnerability-admin.php:539 wpvulnerability-adminms.php:812 +msgid "Email Addresses (separated by commas):" +msgstr "Posta elektronikoko helbideak (komaz bereizita):" + +#: wpvulnerability-admin.php:541 wpvulnerability-adminms.php:814 +msgid "Default:" +msgstr "Lehenetsia:" + +#: wpvulnerability-admin.php:546 wpvulnerability-admin.php:2016 +#: wpvulnerability-adminms.php:819 wpvulnerability-adminms.php:2174 +msgid "Slack" +msgstr "Slack" + +#: wpvulnerability-admin.php:549 wpvulnerability-adminms.php:822 +msgid "Slack Webhook URL:" +msgstr "Slack Webhook URL:" + +#. translators: %s: Slack documentation URL +#: wpvulnerability-admin.php:555 wpvulnerability-adminms.php:828 +#, php-format +msgid "" +"Learn how to " +"create a Slack incoming webhook →" +msgstr "" +"Ikasi nola " +"sortu Slack sarrerako webhook bat →" + +#: wpvulnerability-admin.php:564 wpvulnerability-admin.php:2021 +#: wpvulnerability-adminms.php:837 wpvulnerability-adminms.php:2179 +msgid "Microsoft Teams" +msgstr "Microsoft Teams" + +#: wpvulnerability-admin.php:567 wpvulnerability-adminms.php:840 +msgid "Teams Webhook URL:" +msgstr "Teams Webhook URL:" + +#. translators: %s: Microsoft Teams documentation URL +#: wpvulnerability-admin.php:573 wpvulnerability-adminms.php:846 +#, php-format +msgid "" +"Learn how to " +"create a Teams incoming webhook →" +msgstr "" +"Ikasi nola " +"sortu Teams sarrerako webhook bat →" + +#: wpvulnerability-admin.php:582 wpvulnerability-adminms.php:855 +msgid "Discord" +msgstr "Discord" + +#: wpvulnerability-admin.php:585 wpvulnerability-adminms.php:858 +msgid "Discord Webhook URL:" +msgstr "Discord Webhook URL:" + +#. translators: %s: Discord documentation URL +#: wpvulnerability-admin.php:591 wpvulnerability-adminms.php:864 +#, php-format +msgid "" +"Learn how to " +"create a Discord webhook →" +msgstr "" +"Ikasi nola " +"sortu Discord webhook bat →" + +#: wpvulnerability-admin.php:600 wpvulnerability-adminms.php:873 +msgid "Telegram" +msgstr "Telegram" + +#: wpvulnerability-admin.php:603 wpvulnerability-adminms.php:876 +msgid "Telegram Bot Token:" +msgstr "Telegram Bot Token:" + +#: wpvulnerability-admin.php:605 wpvulnerability-adminms.php:878 +msgid "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "Formatua: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:607 wpvulnerability-adminms.php:880 +msgid "Telegram Chat ID:" +msgstr "Telegram Chat ID:" + +#. translators: %s: Telegram documentation URL +#: wpvulnerability-admin.php:613 wpvulnerability-adminms.php:886 +#, php-format +msgid "" +"Learn how to " +"create a Telegram bot and get Chat ID →" +msgstr "" +"Ikasi nola " +"sortu Telegram bot bat eta lortu Chat ID →" + +#: wpvulnerability-admin.php:623 wpvulnerability-adminms.php:896 +msgid "Save Notification Settings" +msgstr "Gorde jakinarazpen-ezarpenak" + +#: wpvulnerability-admin.php:700 wpvulnerability-admin.php:2552 +#: wpvulnerability-adminms.php:973 wpvulnerability-adminms.php:2459 +msgid "WordPress Components" +msgstr "WordPress osagaiak" + +#: wpvulnerability-admin.php:703 wpvulnerability-admin.php:2560 +#: wpvulnerability-adminms.php:976 wpvulnerability-adminms.php:2467 +msgid "WordPress Core" +msgstr "WordPress nukleoa" + +#: wpvulnerability-admin.php:707 wpvulnerability-admin.php:1472 +#: wpvulnerability-admin.php:1573 wpvulnerability-admin.php:2109 +#: wpvulnerability-admin.php:2571 wpvulnerability-adminms.php:980 +#: wpvulnerability-adminms.php:1744 wpvulnerability-adminms.php:1843 +#: wpvulnerability-adminms.php:2266 wpvulnerability-adminms.php:2478 +msgid "Plugins" +msgstr "Pluginak" + +#: wpvulnerability-admin.php:711 wpvulnerability-admin.php:1473 +#: wpvulnerability-admin.php:1574 wpvulnerability-admin.php:2114 +#: wpvulnerability-admin.php:2587 wpvulnerability-adminms.php:984 +#: wpvulnerability-adminms.php:1745 wpvulnerability-adminms.php:1844 +#: wpvulnerability-adminms.php:2271 wpvulnerability-adminms.php:2494 +msgid "Themes" +msgstr "Itxurak" + +#: wpvulnerability-admin.php:717 wpvulnerability-adminms.php:990 +msgid "Software & Languages" +msgstr "Softwarea eta hizkuntzak" + +#: wpvulnerability-admin.php:720 wpvulnerability-admin.php:1474 +#: wpvulnerability-admin.php:2119 wpvulnerability-adminms.php:993 +#: wpvulnerability-adminms.php:1746 wpvulnerability-adminms.php:2276 +#: wpvulnerability-sitehealth.php:178 +msgid "PHP" +msgstr "PHP" + +#: wpvulnerability-admin.php:726 wpvulnerability-adminms.php:999 +msgid "Web Servers" +msgstr "Web zerbitzariak" + +#: wpvulnerability-admin.php:729 wpvulnerability-admin.php:1475 +#: wpvulnerability-admin.php:2124 wpvulnerability-adminms.php:1002 +#: wpvulnerability-adminms.php:1747 wpvulnerability-adminms.php:2281 +#: wpvulnerability-sitehealth.php:179 +msgid "Apache HTTPD" +msgstr "Apache HTTPD" + +#: wpvulnerability-admin.php:733 wpvulnerability-admin.php:1476 +#: wpvulnerability-admin.php:2129 wpvulnerability-adminms.php:1006 +#: wpvulnerability-adminms.php:1748 wpvulnerability-adminms.php:2286 +msgid "nginx" +msgstr "nginx" + +#: wpvulnerability-admin.php:739 wpvulnerability-adminms.php:1012 +msgid "Databases" +msgstr "Datu-baseak" + +#: wpvulnerability-admin.php:742 wpvulnerability-admin.php:1477 +#: wpvulnerability-admin.php:2134 wpvulnerability-adminms.php:1015 +#: wpvulnerability-adminms.php:1749 wpvulnerability-adminms.php:2291 +#: wpvulnerability-sitehealth.php:181 +msgid "MariaDB" +msgstr "MariaDB" + +#: wpvulnerability-admin.php:746 wpvulnerability-admin.php:1478 +#: wpvulnerability-admin.php:2139 wpvulnerability-adminms.php:1019 +#: wpvulnerability-adminms.php:1750 wpvulnerability-adminms.php:2296 +#: wpvulnerability-sitehealth.php:182 +msgid "MySQL" +msgstr "MySQL" + +#: wpvulnerability-admin.php:750 wpvulnerability-admin.php:1483 +#: wpvulnerability-admin.php:2164 wpvulnerability-admin.php:3104 +#: wpvulnerability-adminms.php:1023 wpvulnerability-adminms.php:1755 +#: wpvulnerability-adminms.php:2321 wpvulnerability-adminms.php:3281 +msgid "SQLite" +msgstr "SQLite" + +#: wpvulnerability-admin.php:756 wpvulnerability-adminms.php:1029 +msgid "Additional Tools" +msgstr "Tresna osagarriak" + +#: wpvulnerability-admin.php:759 wpvulnerability-admin.php:1479 +#: wpvulnerability-admin.php:2144 wpvulnerability-admin.php:3101 +#: wpvulnerability-adminms.php:1032 wpvulnerability-adminms.php:1751 +#: wpvulnerability-adminms.php:2301 wpvulnerability-adminms.php:3278 +#: wpvulnerability-sitehealth.php:183 +msgid "ImageMagick" +msgstr "ImageMagick" + +#: wpvulnerability-admin.php:763 wpvulnerability-admin.php:1480 +#: wpvulnerability-admin.php:2149 wpvulnerability-adminms.php:1036 +#: wpvulnerability-adminms.php:1752 wpvulnerability-adminms.php:2306 +#: wpvulnerability-sitehealth.php:184 +msgid "curl" +msgstr "curl" + +#: wpvulnerability-admin.php:767 wpvulnerability-admin.php:1481 +#: wpvulnerability-admin.php:2154 wpvulnerability-adminms.php:1040 +#: wpvulnerability-adminms.php:1753 wpvulnerability-adminms.php:2311 +msgid "memcached" +msgstr "memcached" + +#: wpvulnerability-admin.php:771 wpvulnerability-admin.php:1482 +#: wpvulnerability-admin.php:2159 wpvulnerability-admin.php:3102 +#: wpvulnerability-adminms.php:1044 wpvulnerability-adminms.php:1754 +#: wpvulnerability-adminms.php:2316 wpvulnerability-adminms.php:3279 +msgid "Redis" +msgstr "Redis" + +#: wpvulnerability-admin.php:784 wpvulnerability-adminms.php:1057 +msgid "Component Analysis Settings" +msgstr "Osagaien analisi-ezarpenak" + +#: wpvulnerability-admin.php:787 wpvulnerability-adminms.php:1060 +msgid "Enable or disable vulnerability analysis for specific components." +msgstr "Gaitu edo desgaitu osagai zehatzen ahultasun-analisia." + +#: wpvulnerability-admin.php:788 wpvulnerability-adminms.php:1061 +msgid "" +"Check the components you want to HIDE from vulnerability scans and reports. " +"Unchecked components will be actively analyzed. Components with active " +"analysis are shown in green, hidden components in red." +msgstr "" +"Markatu ahultasunen analisi eta txostenetatik EZKUTATU nahi dituzun osagaiak. " +"Markatuta ez dauden osagaiak aktiboki aztertuko dira. Analisi aktiboa duten " +"osagaiak berdez agertuko dira, ezkutatutakoak gorriz." + +#: wpvulnerability-admin.php:820 wpvulnerability-adminms.php:1093 +msgid "Hidden (forced by constant)" +msgstr "Ezkutatuta (konstanteak behartuta)" + +#: wpvulnerability-admin.php:823 wpvulnerability-adminms.php:1096 +msgid "🔴 Analysis disabled" +msgstr "🔴 Analisia desgaituta" + +#: wpvulnerability-admin.php:826 wpvulnerability-adminms.php:1099 +msgid "🟢 Analysis active" +msgstr "🟢 Analisia aktibo" + +#: wpvulnerability-admin.php:848 wpvulnerability-adminms.php:1121 +msgid "Tip:" +msgstr "Aholkua:" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:852 wpvulnerability-adminms.php:1125 +#, php-format +msgid "" +"You can force-disable components via wp-config.php constants. Learn more about force-hiding " +"checks →" +msgstr "" +"Osagaiak behartu dezakezu desaktibatzera wp-config.php konstanteen bidez. Gehiago ikasi egiaztapenak ezkutatzeari buruz " +"→" + +#: wpvulnerability-admin.php:860 wpvulnerability-adminms.php:1133 +msgid "Save Analysis Settings" +msgstr "Gorde analisi-ezarpenak" + +#: wpvulnerability-admin.php:920 wpvulnerability-adminms.php:1193 +msgid "« Previous" +msgstr "« Aurrekoa" + +#: wpvulnerability-admin.php:921 wpvulnerability-adminms.php:1194 +msgid "Next »" +msgstr "Hurrengoa »" + +#: wpvulnerability-admin.php:932 wpvulnerability-adminms.php:1205 +msgid "Log entry not found or has been removed." +msgstr "Erregistro-sarrera ez da aurkitu edo ezabatu egin da." + +#: wpvulnerability-admin.php:935 wpvulnerability-adminms.php:1208 +msgid "Unable to load the requested log entry." +msgstr "Ezin da eskatutako erregistro-sarrera kargatu." + +#: wpvulnerability-admin.php:945 wpvulnerability-adminms.php:1218 +msgid "Log Configuration" +msgstr "Erregistro-konfigurazioa" + +#: wpvulnerability-admin.php:950 wpvulnerability-adminms.php:1223 +msgid "Total Logs" +msgstr "Erregistro guztira" + +#: wpvulnerability-admin.php:954 wpvulnerability-adminms.php:1227 +msgid "Retention Period" +msgstr "Atxikipen-aldia" + +#: wpvulnerability-admin.php:959 wpvulnerability-admin.php:1301 +#: wpvulnerability-admin.php:3029 wpvulnerability-admin.php:3043 +#: wpvulnerability-admin.php:3475 wpvulnerability-admin.php:3483 +#: wpvulnerability-adminms.php:1232 wpvulnerability-adminms.php:1574 +#: wpvulnerability-adminms.php:3206 wpvulnerability-adminms.php:3220 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Disabled" +msgstr "Desgaituta" + +#. translators: %d: Number of days. +#. translators: %d: number of days +#: wpvulnerability-admin.php:962 wpvulnerability-admin.php:984 +#: wpvulnerability-admin.php:3641 wpvulnerability-adminms.php:1235 +#: wpvulnerability-adminms.php:1257 wpvulnerability-adminms.php:3835 +#, php-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d egun" +msgstr[1] "%d egun" + +#: wpvulnerability-admin.php:975 wpvulnerability-adminms.php:1248 +msgid "Log Retention Period" +msgstr "Erregistroen atxikipen-aldia" + +#: wpvulnerability-admin.php:981 wpvulnerability-adminms.php:1254 +msgid "None (Disabled)" +msgstr "Bat ere ez (Desgaituta)" + +#: wpvulnerability-admin.php:1004 wpvulnerability-adminms.php:1277 +msgid "" +"This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant." +msgstr "" +"Balio hau WPVULNERABILITY_LOG_RETENTION_DAYS konstanteak ezartzen du." + +#: wpvulnerability-admin.php:1009 wpvulnerability-adminms.php:1282 +msgid "" +"Choose how long WPVulnerability should keep API response logs. Older logs " +"are automatically deleted." +msgstr "" +"Aukeratu zenbat denboran gorde behar dituen WPVulnerabilityren API erantzun-erregistroak. " +"Erregistro zaharragoak automatikoki ezabatzen dira." + +#: wpvulnerability-admin.php:1013 wpvulnerability-adminms.php:1286 +msgid "Save Configuration" +msgstr "Gorde konfigurazioa" + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "Log retention is currently disabled." +msgstr "Erregistroen atxikipena une honetan desgaituta dago." + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "API responses are not being saved." +msgstr "APIaren erantzunak ez dira gordetzen." + +#: wpvulnerability-admin.php:1031 wpvulnerability-adminms.php:1304 +msgid "Log Details" +msgstr "Erregistroaren xehetasunak" + +#: wpvulnerability-admin.php:1035 wpvulnerability-admin.php:1104 +#: wpvulnerability-adminms.php:1308 wpvulnerability-adminms.php:1377 +msgid "Date" +msgstr "Data" + +#: wpvulnerability-admin.php:1039 wpvulnerability-admin.php:1105 +#: wpvulnerability-adminms.php:1312 wpvulnerability-adminms.php:1378 +msgid "API Endpoint" +msgstr "API amaiera-puntua" + +#: wpvulnerability-admin.php:1044 wpvulnerability-adminms.php:1317 +msgid "API Response" +msgstr "APIaren erantzuna" + +#: wpvulnerability-admin.php:1049 wpvulnerability-adminms.php:1322 +msgid "Back to Logs" +msgstr "Itzuli erregistroetara" + +#: wpvulnerability-admin.php:1058 wpvulnerability-adminms.php:1331 +msgid "No logs available" +msgstr "Ez dago erregistrorik eskuragarri" + +#: wpvulnerability-admin.php:1059 wpvulnerability-adminms.php:1332 +msgid "API response logs will appear here once the vulnerability scanner runs." +msgstr "API erantzun-erregistroak hemen agertuko dira ahultasun-eskaner-a exekutatu ondoren." + +#: wpvulnerability-admin.php:1063 wpvulnerability-adminms.php:1336 +msgid "API Response Logs" +msgstr "API erantzun-erregistroak" + +#: wpvulnerability-admin.php:1073 wpvulnerability-adminms.php:1346 +msgid "Show:" +msgstr "Erakutsi:" + +#: wpvulnerability-admin.php:1082 wpvulnerability-adminms.php:1355 +msgid "Apply" +msgstr "Aplikatu" + +#. translators: 1: first item, 2: last item, 3: total items +#: wpvulnerability-admin.php:1090 wpvulnerability-adminms.php:1363 +#, php-format +msgid "Showing %1$s–%2$s of %3$s" +msgstr "%1$s–%2$s erakusten %3$s-tik" + +#: wpvulnerability-admin.php:1106 wpvulnerability-adminms.php:1379 +msgid "Actions" +msgstr "Ekintzak" + +#: wpvulnerability-admin.php:1133 wpvulnerability-admin.php:3957 +#: wpvulnerability-adminms.php:1406 wpvulnerability-adminms.php:4151 +msgid "View" +msgstr "Ikusi" + +#: wpvulnerability-admin.php:1150 wpvulnerability-adminms.php:1423 +msgid "Danger Zone" +msgstr "Arrisku-eremua" + +#: wpvulnerability-admin.php:1152 wpvulnerability-adminms.php:1425 +msgid "Permanently delete all API response logs. This action cannot be undone." +msgstr "Betirako ezabatu API erantzun-erregistro guztiak. Ekintza hau ezin da desegin." + +#: wpvulnerability-admin.php:1154 wpvulnerability-adminms.php:1427 +msgid "Are you sure you want to delete all logs? This action cannot be undone." +msgstr "Ziur zaude erregistro guztiak ezabatu nahi dituzula? Ekintza hau ezin da desegin." + +#: wpvulnerability-admin.php:1157 wpvulnerability-adminms.php:1430 +msgid "Delete All Logs" +msgstr "Ezabatu erregistro guztiak" + +#: wpvulnerability-admin.php:1201 wpvulnerability-adminms.php:1474 +msgid "Reload Data from API" +msgstr "Birkargatu datuak APIa-tik" + +#: wpvulnerability-admin.php:1204 wpvulnerability-adminms.php:1477 +msgid "" +"Reload all Core, Plugins, Themes and other components information directly " +"from the API to have updated data. This will clear the cache and fetch fresh " +"vulnerability information." +msgstr "" +"Birkargatu Nukleo, Plugin, Itxura eta beste osagaien informazio guztia zuzenean " +"APIa-tik datu eguneratuak izateko. Honek cachea garbitu eta ahultasun-informazio " +"freskoa eskuratuko du." + +#: wpvulnerability-admin.php:1209 wpvulnerability-adminms.php:1482 +msgid "Reload Data" +msgstr "Birkargatu datuak" + +#: wpvulnerability-admin.php:1218 wpvulnerability-adminms.php:1491 +msgid "Test Email Notifications" +msgstr "Probatu posta elektronikoko jakinarazpenak" + +#: wpvulnerability-admin.php:1221 wpvulnerability-adminms.php:1494 +msgid "" +"Send a test email notification with current vulnerability data to verify " +"your email configuration is working correctly." +msgstr "" +"Bidali proba-mezu bat uneko ahultasun-datuekin zure posta elektronikoaren " +"konfigurazioa ondo funtzionatzen ari dela egiaztatzeko." + +#: wpvulnerability-admin.php:1231 wpvulnerability-adminms.php:1504 +msgid "From address (configured via constant):" +msgstr "Jatorri-helbidea (konstantearen bidez konfiguratuta):" + +#: wpvulnerability-admin.php:1243 wpvulnerability-adminms.php:1516 +msgid "From address (default):" +msgstr "Jatorri-helbidea (lehenetsia):" + +#: wpvulnerability-admin.php:1252 wpvulnerability-adminms.php:1525 +msgid "Learn how to customize the email sender address →" +msgstr "Ikasi nola pertsonalizatu posta elektronikoaren bidaltzailearen helbidea →" + +#: wpvulnerability-admin.php:1258 wpvulnerability-adminms.php:1531 +msgid "Send Test Email" +msgstr "Bidali proba-mezua" + +#: wpvulnerability-admin.php:1267 wpvulnerability-adminms.php:1540 +msgid "WP-Cron Status" +msgstr "WP-Cron egoera" + +#: wpvulnerability-admin.php:1270 wpvulnerability-adminms.php:1543 +msgid "" +"View and manage WP-Cron scheduled events. Compare expected schedules with " +"actual cron jobs to ensure automated tasks are running correctly." +msgstr "" +"Ikusi eta kudeatu WP-Cron programatutako gertaerak. Alderatu espero diren " +"programazioak benetako cron lanekin zeregin automatizatuak ondo exekutatzen " +"ari direla ziurtatzeko." + +#: wpvulnerability-admin.php:1275 wpvulnerability-adminms.php:1548 +msgid "No cron data available." +msgstr "Ez dago cron daturik eskuragarri." + +#: wpvulnerability-admin.php:1281 wpvulnerability-adminms.php:1554 +msgid "Hook" +msgstr "Hook" + +#: wpvulnerability-admin.php:1282 wpvulnerability-adminms.php:1555 +msgid "Expected" +msgstr "Espero dena" + +#: wpvulnerability-admin.php:1283 wpvulnerability-adminms.php:1556 +msgid "Found" +msgstr "Aurkitua" + +#: wpvulnerability-admin.php:1284 wpvulnerability-adminms.php:1557 +msgid "Next Run" +msgstr "Hurrengo exekuzioa" + +#: wpvulnerability-admin.php:1285 wpvulnerability-admin.php:3236 +#: wpvulnerability-admin.php:3559 wpvulnerability-adminms.php:1558 +#: wpvulnerability-adminms.php:3413 wpvulnerability-adminms.php:3753 +msgid "Status" +msgstr "Egoera" + +#: wpvulnerability-admin.php:1299 wpvulnerability-adminms.php:1572 +msgid "Not expected" +msgstr "Ez da espero" + +#: wpvulnerability-admin.php:1321 wpvulnerability-adminms.php:1594 +#: wpvulnerability-general.php:1871 wpvulnerability-general.php:1872 +msgid "None" +msgstr "Bat ere ez" + +#: wpvulnerability-admin.php:1356 wpvulnerability-adminms.php:1629 +msgid "OK" +msgstr "Ados" + +#: wpvulnerability-admin.php:1366 wpvulnerability-adminms.php:1639 +msgid "⚠️ Unexpected WPVulnerability Events" +msgstr "⚠️ WPVulnerability gertaera ustekabeak" + +#: wpvulnerability-admin.php:1383 wpvulnerability-adminms.php:1656 +msgid "No interval" +msgstr "Tarterik gabe" + +#: wpvulnerability-admin.php:1390 wpvulnerability-adminms.php:1663 +msgid "Next:" +msgstr "Hurrengoa:" + +#: wpvulnerability-admin.php:1400 wpvulnerability-adminms.php:1673 +msgid "Repair Cron Events" +msgstr "Konpondu cron gertaerak" + +#: wpvulnerability-admin.php:1408 wpvulnerability-adminms.php:1681 +msgid "Uninstall Data" +msgstr "Desinstalazio-datuak" + +#: wpvulnerability-admin.php:1410 wpvulnerability-adminms.php:1683 +msgid "" +"By default, all plugin data is preserved when WPVulnerability is deleted. " +"Enable the option below only if you want all options, logs, and cached data " +"permanently removed on uninstall." +msgstr "" +"Lehenespenez, plugin-datu guztiak gordetzen dira WPVulnerability ezabatzean. " +"Gaitu beheko aukera soilik aukera, erregistro eta cacheko datu guztiak " +"desinstalatzean betirako ezabatu nahi badituzu." + +#: wpvulnerability-admin.php:1420 wpvulnerability-adminms.php:1693 +msgid "Delete all plugin data on uninstall" +msgstr "Ezabatu plugin-datu guztiak desinstalatzean" + +#: wpvulnerability-admin.php:1423 wpvulnerability-adminms.php:1696 +msgid "" +"Default: unchecked (data preserved). Check only if you want a clean removal." +msgstr "" +"Lehenetsia: markatuta gabe (datuak gordetzen dira). Markatu soilik garbiketa osoa nahi baduzu." + +#: wpvulnerability-admin.php:1425 wpvulnerability-adminms.php:1698 +msgid "Save preference" +msgstr "Gorde hobespena" + +#: wpvulnerability-admin.php:1432 wpvulnerability-adminms.php:1705 +msgid "Reset WPVulnerability" +msgstr "Berrezarri WPVulnerability" + +#: wpvulnerability-admin.php:1434 wpvulnerability-adminms.php:1707 +msgid "" +"Delete all WPVulnerability settings, cached data, logs, and scheduled " +"events, then restore defaults and reload data from the API." +msgstr "" +"Ezabatu WPVulnerability ezarpen, cacheko datu, erregistro eta programatutako " +"gertaera guztiak, eta lehenetsi berrezarri eta APIa-tik datuak birkargatu." + +#: wpvulnerability-admin.php:1436 wpvulnerability-adminms.php:1709 +msgid "This action cannot be undone." +msgstr "Ekintza hau ezin da desegin." + +#: wpvulnerability-admin.php:1438 wpvulnerability-adminms.php:1711 +msgid "" +"Are you sure you want to reset all WPVulnerability data? This action cannot " +"be undone." +msgstr "" +"Ziur zaude WPVulnerabilityren datu guztiak berrezarri nahi dituzula? Ekintza hau " +"ezin da desegin." + +#: wpvulnerability-admin.php:1441 wpvulnerability-adminms.php:1713 +msgid "Reset Plugin" +msgstr "Berrezarri plugina" + +#: wpvulnerability-admin.php:1468 wpvulnerability-adminms.php:1740 +msgid "Vulnerability Database Statistics" +msgstr "Ahultasun datu-basearen estatistikak" + +#. translators: number of vulnerabilities. +#: wpvulnerability-admin.php:1510 wpvulnerability-adminms.php:1782 +#, php-format +msgid "%s vulnerability" +msgid_plural "%s vulnerabilities" +msgstr[0] "%s ahultasun" +msgstr[1] "%s ahultasun" + +#. translators: number of products. +#: wpvulnerability-admin.php:1520 wpvulnerability-adminms.php:1792 +#, php-format +msgid "(%s product)" +msgid_plural "(%s products)" +msgstr[0] "(%s produktu)" +msgstr[1] "(%s produktu)" + +#: wpvulnerability-admin.php:1527 wpvulnerability-adminms.php:1799 +msgid "No data" +msgstr "Daturik ez" + +#. translators: date of last update. +#: wpvulnerability-admin.php:1544 wpvulnerability-adminms.php:1814 +#, php-format +msgid "Database last updated: %s" +msgstr "Datu-basea azken aldiz eguneratua: %s" + +#: wpvulnerability-admin.php:1566 wpvulnerability-adminms.php:1836 +msgid "Intelligence Sources" +msgstr "Adimen-iturriak" + +#: wpvulnerability-admin.php:1567 wpvulnerability-adminms.php:1837 +msgid "Number of vulnerabilities contributed by each intelligence source." +msgstr "Adimen-iturri bakoitzak ekarritako ahultasun kopurua." + +#: wpvulnerability-admin.php:1571 wpvulnerability-adminms.php:1841 +msgid "Source" +msgstr "Iturria" + +#: wpvulnerability-admin.php:1572 wpvulnerability-admin.php:2104 +#: wpvulnerability-adminms.php:1842 wpvulnerability-adminms.php:2261 +msgid "Core" +msgstr "Nukleoa" + +#: wpvulnerability-admin.php:1603 wpvulnerability-adminms.php:1873 +msgid "Sponsors" +msgstr "Babeslariak" + +#: wpvulnerability-admin.php:1626 wpvulnerability-adminms.php:1896 +msgid "No sponsor data available." +msgstr "Ez dago babeslarien daturik eskuragarri." + +#: wpvulnerability-admin.php:1633 wpvulnerability-adminms.php:1903 +msgid "Contributors" +msgstr "Laguntzaileak" + +#: wpvulnerability-admin.php:1656 wpvulnerability-adminms.php:1926 +msgid "No contributor data available." +msgstr "Ez dago laguntzaileen daturik eskuragarri." + +#: wpvulnerability-admin.php:1674 wpvulnerability-adminms.php:432 +msgid "You do not have sufficient permissions to access this page." +msgstr "Ez duzu orri hau atzitzeko baimen nahikorik." + +#: wpvulnerability-admin.php:1684 wpvulnerability-adminms.php:441 +msgid "WPVulnerability settings" +msgstr "WPVulnerability ezarpenak" + +#: wpvulnerability-admin.php:1801 wpvulnerability-adminms.php:1963 +msgid "Configure and save these settings to receive notifications." +msgstr "Konfiguratu eta gorde ezarpen hauek jakinarazpenak jasotzeko." + +#: wpvulnerability-admin.php:1814 wpvulnerability-adminms.php:2071 +msgid "Configure and save these settings to hide vulnerabilities." +msgstr "Konfiguratu eta gorde ezarpen hauek ahultasunak ezkutatzeko." + +#: wpvulnerability-admin.php:1845 wpvulnerability-adminms.php:1993 +msgid "Default administrator email" +msgstr "Administratzailearen posta elektroniko lehenetsia" + +#: wpvulnerability-admin.php:1909 wpvulnerability-adminms.php:2057 +msgid "Read more if you want to force the cache time." +msgstr "Irakurri gehiago cacheko denbora behartu nahi baduzu." + +#: wpvulnerability-admin.php:1939 wpvulnerability-adminms.php:2099 +msgid "Never" +msgstr "Inoiz ez" + +#: wpvulnerability-admin.php:1944 wpvulnerability-adminms.php:2104 +msgid "Daily" +msgstr "Egunero" + +#: wpvulnerability-admin.php:1949 wpvulnerability-adminms.php:2109 +msgid "Weekly" +msgstr "Astero" + +#: wpvulnerability-admin.php:1953 wpvulnerability-adminms.php:2113 +msgid "Day" +msgstr "Eguna" + +#: wpvulnerability-admin.php:1966 wpvulnerability-adminms.php:2126 +msgid "Hour" +msgstr "Ordua" + +#: wpvulnerability-admin.php:1968 wpvulnerability-adminms.php:2128 +msgid "Minute" +msgstr "Minutua" + +#: wpvulnerability-admin.php:2166 wpvulnerability-adminms.php:2323 +msgid "Read more about how to force the deactivation of an item." +msgstr "Irakurri gehiago elementu bat desgaitzea nola behartu jakiteko." + +#: wpvulnerability-admin.php:2292 wpvulnerability-adminms.php:2870 +msgid "" +"Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com" +msgstr "" +"Slack webhook URL baliogabea. hooks.slack.com-eko HTTPS URL baliogarria izan behar da." + +#: wpvulnerability-admin.php:2315 wpvulnerability-adminms.php:2893 +msgid "" +"Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office." +"com, office365.com, or api.hooks.microsoft.com" +msgstr "" +"Microsoft Teams webhook URL baliogabea. office.com, office365.com edo " +"api.hooks.microsoft.com-eko HTTPS URL baliogarria izan behar da." + +#: wpvulnerability-admin.php:2338 wpvulnerability-adminms.php:2916 +msgid "" +"Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or " +"discordapp.com" +msgstr "" +"Discord webhook URL baliogabea. discord.com edo discordapp.com-eko HTTPS URL " +"baliogarria izan behar da." + +#: wpvulnerability-admin.php:2357 wpvulnerability-adminms.php:2935 +msgid "" +"Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-" +"zyx57W2v1u123ew11" +msgstr "" +"Telegram bot token formatua baliogabea. Honelakoa izan behar da: 123456:ABC-DEF1234ghIkl-" +"zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:2493 wpvulnerability-adminms.php:2400 +msgid "All Clear" +msgstr "Dena ondo" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2503 wpvulnerability-adminms.php:2410 +#, php-format +msgid "%d Critical Issue Found" +msgid_plural "%d Critical Issues Found" +msgstr[0] "%d arazo kritiko aurkitu da" +msgstr[1] "%d arazo kritiko aurkitu dira" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2508 wpvulnerability-adminms.php:2415 +#, php-format +msgid "%d Issue Found" +msgid_plural "%d Issues Found" +msgstr[0] "%d arazo aurkitu da" +msgstr[1] "%d arazo aurkitu dira" + +#: wpvulnerability-admin.php:2515 wpvulnerability-adminms.php:2422 +msgid "Never checked" +msgstr "Inoiz egiaztatu gabe" + +#. translators: %d: number of minutes +#: wpvulnerability-admin.php:2523 wpvulnerability-adminms.php:2430 +#, php-format +msgid "%d minute ago" +msgid_plural "%d minutes ago" +msgstr[0] "duela %d minutu" +msgstr[1] "duela %d minutu" + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:2527 wpvulnerability-adminms.php:2434 +#, php-format +msgid "%d hour ago" +msgid_plural "%d hours ago" +msgstr[0] "duela %d ordu" +msgstr[1] "duela %d ordu" + +#. translators: %s: time since last check +#: wpvulnerability-admin.php:2539 wpvulnerability-adminms.php:2446 +#, php-format +msgid "Last checked: %s" +msgstr "Azken egiaztapena: %s" + +#: wpvulnerability-admin.php:2540 wpvulnerability-adminms.php:2447 +msgid "Refresh Now" +msgstr "Freskatu orain" + +#: wpvulnerability-admin.php:2547 wpvulnerability-adminms.php:2454 +msgid "No vulnerabilities detected" +msgstr "Ez da ahultasunik detektatu" + +#: wpvulnerability-admin.php:2548 wpvulnerability-adminms.php:2455 +msgid "Your site is up to date and secure" +msgstr "Zure gunea eguneratuta eta seguru dago" + +#: wpvulnerability-admin.php:2616 wpvulnerability-adminms.php:2523 +msgid "Server Software" +msgstr "Zerbitzariaren softwarea" + +#: wpvulnerability-admin.php:2829 wpvulnerability-adminms.php:2736 +msgid "Site Health" +msgstr "Gunearen osasuna" + +#: wpvulnerability-admin.php:2831 wpvulnerability-adminms.php:2738 +#: wpvulnerability-run.php:33 +msgid "Settings" +msgstr "Ezarpenak" + +#: wpvulnerability-admin.php:2846 wpvulnerability-adminms.php:2754 +msgid "WPVulnerability Status" +msgstr "WPVulnerability egoera" + +#: wpvulnerability-admin.php:2878 wpvulnerability-adminms.php:3052 +msgid "Receive vulnerability notifications" +msgstr "Jaso ahultasun-jakinarazpenak" + +#: wpvulnerability-admin.php:2886 wpvulnerability-adminms.php:3060 +msgid "Cache expiration time" +msgstr "Cacheko iraungitze-denbora" + +#: wpvulnerability-admin.php:2895 wpvulnerability-adminms.php:3069 +msgid "How often you want to receive notifications" +msgstr "Zenbat aldiz jaso nahi dituzu jakinarazpenak" + +#: wpvulnerability-admin.php:2904 wpvulnerability-adminms.php:3078 +msgid "Where do you want to receive notifications?" +msgstr "Non jaso nahi dituzu jakinarazpenak?" + +#: wpvulnerability-admin.php:2913 wpvulnerability-adminms.php:3087 +msgid "Email addresses to notify (separated by commas)" +msgstr "Jakinarazpenak bidaltzeko posta elektronikoko helbideak (komaz bereizita)" + +#: wpvulnerability-admin.php:2922 wpvulnerability-adminms.php:3096 +msgid "Slack webhook URL" +msgstr "Slack webhook URL" + +#: wpvulnerability-admin.php:2931 wpvulnerability-adminms.php:3105 +msgid "Teams webhook URL" +msgstr "Teams webhook URL" + +#: wpvulnerability-admin.php:2950 wpvulnerability-adminms.php:3126 +msgid "Vulnerabilities to hide" +msgstr "Ezkutatzeko ahultasunak" + +#: wpvulnerability-admin.php:2958 wpvulnerability-adminms.php:3134 +msgid "What do you want to hide?" +msgstr "Zer ezkutatu nahi duzu?" + +#: wpvulnerability-admin.php:3008 wpvulnerability-adminms.php:3185 +msgid "Standard (Hybrid Detection)" +msgstr "Estandarra (detekzio hibridoa)" + +#: wpvulnerability-admin.php:3009 wpvulnerability-adminms.php:3186 +msgid "Strict (Extensions Only)" +msgstr "Zorrotza (luzapenak soilik)" + +#: wpvulnerability-admin.php:3010 wpvulnerability-adminms.php:3187 +msgid "Disabled (No Detection)" +msgstr "Desgaituta (detekziorik gabe)" + +#: wpvulnerability-admin.php:3016 wpvulnerability-adminms.php:3193 +msgid "Security Status" +msgstr "Segurtasun egoera" + +#: wpvulnerability-admin.php:3020 wpvulnerability-adminms.php:3197 +msgid "Security Mode" +msgstr "Segurtasun modua" + +#: wpvulnerability-admin.php:3025 wpvulnerability-adminms.php:3202 +msgid "Shell Execution" +msgstr "Shell exekuzioa" + +#: wpvulnerability-admin.php:3027 wpvulnerability-admin.php:3475 +#: wpvulnerability-admin.php:3483 wpvulnerability-adminms.php:3204 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Enabled" +msgstr "Gaituta" + +#: wpvulnerability-admin.php:3034 wpvulnerability-adminms.php:3211 +msgid "Audit Logging" +msgstr "Auditoretza-erregistroa" + +#. translators: %d: number of days +#: wpvulnerability-admin.php:3039 wpvulnerability-adminms.php:3216 +#, php-format +msgid "Enabled (%d days)" +msgstr "Gaituta (%d egun)" + +#: wpvulnerability-admin.php:3048 wpvulnerability-adminms.php:3225 +msgid "Total Log Entries" +msgstr "Erregistro-sarrera guztiak" + +#: wpvulnerability-admin.php:3055 wpvulnerability-adminms.php:3232 +msgid "Last Shell Execution" +msgstr "Azken shell exekuzioa" + +#. translators: %s: time ago +#: wpvulnerability-admin.php:3061 wpvulnerability-admin.php:3266 +#: wpvulnerability-adminms.php:3238 wpvulnerability-adminms.php:3441 +#, php-format +msgid "%s ago" +msgstr "duela %s" + +#: wpvulnerability-admin.php:3073 wpvulnerability-adminms.php:3250 +msgid "" +"Configure security settings via wp-config.php constants: " +"WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, " +"WPVULNERABILITY_SHELL_EXEC_WHITELIST." +msgstr "" +"Konfiguratu segurtasun-ezarpenak wp-config.php konstanteen bidez: " +"WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, " +"WPVULNERABILITY_SHELL_EXEC_WHITELIST." + +#. translators: %s: URL to security documentation +#: wpvulnerability-admin.php:3079 wpvulnerability-adminms.php:3256 +#, php-format +msgid "" +"See security " +"configuration documentation for details." +msgstr "" +"Ikusi segurtasun " +"konfigurazio dokumentazioa xehetasunetarako." + +#: wpvulnerability-admin.php:3103 wpvulnerability-adminms.php:3280 +msgid "Memcached" +msgstr "Memcached" + +#: wpvulnerability-admin.php:3131 wpvulnerability-adminms.php:3308 +msgid "Imagick Extension" +msgstr "Imagick luzapena" + +#: wpvulnerability-admin.php:3132 wpvulnerability-adminms.php:3309 +msgid "Redis Extension" +msgstr "Redis luzapena" + +#: wpvulnerability-admin.php:3133 wpvulnerability-adminms.php:3310 +msgid "Memcached Extension" +msgstr "Memcached luzapena" + +#: wpvulnerability-admin.php:3134 wpvulnerability-adminms.php:3311 +msgid "Memcache Extension" +msgstr "Memcache luzapena" + +#: wpvulnerability-admin.php:3135 wpvulnerability-adminms.php:3312 +msgid "SQLite3 Extension" +msgstr "SQLite3 luzapena" + +#: wpvulnerability-admin.php:3136 wpvulnerability-adminms.php:3313 +msgid "PDO SQLite" +msgstr "PDO SQLite" + +#: wpvulnerability-admin.php:3137 wpvulnerability-adminms.php:3314 +msgid "Shell Command" +msgstr "Shell komandoa" + +#: wpvulnerability-admin.php:3138 wpvulnerability-adminms.php:3315 +msgid "Binary Check" +msgstr "Bitarrazko egiaztapena" + +#: wpvulnerability-admin.php:3139 wpvulnerability-adminms.php:3316 +msgid "Not Detected" +msgstr "Ez da detektatu" + +#: wpvulnerability-admin.php:3143 wpvulnerability-adminms.php:3320 +msgid "Software Detection Methods" +msgstr "Software-detekzio metodoak" + +#: wpvulnerability-admin.php:3144 wpvulnerability-adminms.php:3321 +msgid "" +"Shows which detection method was used for each software component and the " +"reliability score." +msgstr "" +"Erakusten du zein detekzio metodo erabili den software-osagai bakoitzarentzat " +"eta fidagarritasun-puntuazioa." + +#: wpvulnerability-admin.php:3149 wpvulnerability-admin.php:3234 +#: wpvulnerability-admin.php:3558 wpvulnerability-adminms.php:3326 +#: wpvulnerability-adminms.php:3411 wpvulnerability-adminms.php:3752 +msgid "Component" +msgstr "Osagaia" + +#: wpvulnerability-admin.php:3150 wpvulnerability-adminms.php:3327 +msgid "Version" +msgstr "Bertsioa" + +#: wpvulnerability-admin.php:3151 wpvulnerability-adminms.php:3328 +msgid "Detection Method" +msgstr "Detekzio metodoa" + +#: wpvulnerability-admin.php:3152 wpvulnerability-adminms.php:3329 +msgid "Reliability" +msgstr "Fidagarritasuna" + +#: wpvulnerability-admin.php:3164 wpvulnerability-adminms.php:3341 +msgid "Not detected" +msgstr "Ez da detektatu" + +#: wpvulnerability-admin.php:3220 wpvulnerability-adminms.php:3397 +msgid "Shell Execution Audit Logs" +msgstr "Shell exekuzioaren auditoretza-erregistroak" + +#: wpvulnerability-admin.php:3221 wpvulnerability-adminms.php:3398 +msgid "" +"Complete audit trail of shell command executions for security monitoring." +msgstr "" +"Shell komandoen exekuzioen auditoretza-pista osoa segurtasun-kontrolerako." + +#: wpvulnerability-admin.php:3226 wpvulnerability-adminms.php:3403 +msgid "No shell execution logs found." +msgstr "Ez da shell exekuzioaren erregistrorik aurkitu." + +#: wpvulnerability-admin.php:3227 wpvulnerability-adminms.php:3404 +msgid "" +"Logs will appear here when shell commands are executed for software " +"detection." +msgstr "" +"Erregistroak hemen agertuko dira shell komandoak software-detekziorako " +"exekutatzen direnean." + +#: wpvulnerability-admin.php:3233 wpvulnerability-adminms.php:3410 +msgid "Time" +msgstr "Ordua" + +#: wpvulnerability-admin.php:3235 wpvulnerability-adminms.php:3412 +msgid "Command" +msgstr "Komandoa" + +#: wpvulnerability-admin.php:3237 wpvulnerability-adminms.php:3414 +msgid "User" +msgstr "Erabiltzailea" + +#: wpvulnerability-admin.php:3238 wpvulnerability-adminms.php:3415 +msgid "Output" +msgstr "Irteera" + +#. translators: %d: number of logs shown +#: wpvulnerability-admin.php:3302 wpvulnerability-adminms.php:3477 +#, php-format +msgid "Showing the %d most recent log entries." +msgstr "%d erregistro-sarrera berriena erakusten." + +#: wpvulnerability-admin.php:3320 wpvulnerability-adminms.php:3565 +msgid "Invalid nonce." +msgstr "Nonce baliogabea." + +#: wpvulnerability-admin.php:3325 wpvulnerability-adminms.php:3570 +msgid "Insufficient permissions." +msgstr "Baimen nahikoa ez." + +#: wpvulnerability-admin.php:3331 wpvulnerability-adminms.php:3576 +msgid "No component specified." +msgstr "Ez da osagairik zehaztu." + +#: wpvulnerability-admin.php:3366 wpvulnerability-adminms.php:3524 +msgid "Debug Information" +msgstr "Arazketa-informazioa" + +#: wpvulnerability-admin.php:3368 wpvulnerability-adminms.php:3526 +msgid "This tab is only visible when WP_DEBUG is enabled. Use with caution." +msgstr "Fitxa hau WP_DEBUG gaituta dagoenean soilik ikus daiteke. Erabili kontu handiz." + +#: wpvulnerability-admin.php:3429 wpvulnerability-adminms.php:3623 +msgid "System Information" +msgstr "Sistemaren informazioa" + +#: wpvulnerability-admin.php:3433 wpvulnerability-adminms.php:3627 +msgid "WordPress Version" +msgstr "WordPress bertsioa" + +#: wpvulnerability-admin.php:3437 wpvulnerability-adminms.php:3631 +msgid "Multisite" +msgstr "Gune anitza" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "Yes" +msgstr "Bai" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "No" +msgstr "Ez" + +#: wpvulnerability-admin.php:3441 wpvulnerability-adminms.php:3635 +msgid "Language" +msgstr "Hizkuntza" + +#: wpvulnerability-admin.php:3445 wpvulnerability-adminms.php:3639 +msgid "PHP Version" +msgstr "PHP bertsioa" + +#: wpvulnerability-admin.php:3449 wpvulnerability-adminms.php:3643 +msgid "PHP Extensions" +msgstr "PHP luzapenak" + +#: wpvulnerability-admin.php:3460 wpvulnerability-adminms.php:3654 +msgid "PHP Memory Limit" +msgstr "PHP memoria-muga" + +#: wpvulnerability-admin.php:3464 wpvulnerability-adminms.php:3658 +msgid "Database" +msgstr "Datu-basea" + +#: wpvulnerability-admin.php:3468 wpvulnerability-adminms.php:3662 +msgid "Web Server" +msgstr "Web zerbitzaria" + +#: wpvulnerability-admin.php:3472 wpvulnerability-adminms.php:3666 +msgid "WP_DEBUG" +msgstr "WP_DEBUG" + +#: wpvulnerability-admin.php:3480 wpvulnerability-adminms.php:3674 +msgid "WP_DEBUG_LOG" +msgstr "WP_DEBUG_LOG" + +#: wpvulnerability-admin.php:3490 wpvulnerability-adminms.php:3684 +msgid "Path:" +msgstr "Bidea:" + +#. translators: %s: file size +#: wpvulnerability-admin.php:3499 wpvulnerability-adminms.php:3698 +#, php-format +msgid "Size: %s" +msgstr "Tamaina: %s" + +#: wpvulnerability-admin.php:3510 wpvulnerability-adminms.php:3704 +msgid "View Log File" +msgstr "Ikusi erregistro fitxategia" + +#: wpvulnerability-admin.php:3516 wpvulnerability-adminms.php:3710 +msgid "Log file is not web-accessible (outside wp-content)" +msgstr "Erregistro fitxategia ez da web bidez eskuragarri (wp-content-etik kanpo)" + +#: wpvulnerability-admin.php:3522 wpvulnerability-adminms.php:3716 +msgid "Log file does not exist yet" +msgstr "Erregistro fitxategia oraindik ez da existitzen" + +#: wpvulnerability-admin.php:3530 wpvulnerability-adminms.php:3724 +msgid "Plugin Version" +msgstr "Plugin bertsioa" + +#: wpvulnerability-admin.php:3554 wpvulnerability-adminms.php:3748 +msgid "Component Detection" +msgstr "Osagaien detekzioa" + +#: wpvulnerability-admin.php:3560 wpvulnerability-adminms.php:3754 +msgid "Version Detected" +msgstr "Detektatutako bertsioa" + +#: wpvulnerability-admin.php:3561 wpvulnerability-adminms.php:3755 +msgid "Analyzed" +msgstr "Aztertua" + +#: wpvulnerability-admin.php:3562 wpvulnerability-adminms.php:3756 +msgid "Cache Status" +msgstr "Cachearen egoera" + +#: wpvulnerability-admin.php:3622 wpvulnerability-adminms.php:3816 +msgid "Configuration Summary" +msgstr "Konfigurazio-laburpena" + +#: wpvulnerability-admin.php:3626 wpvulnerability-adminms.php:3820 +msgid "Cache Duration" +msgstr "Cacheko iraupena" + +#: wpvulnerability-admin.php:3636 wpvulnerability-adminms.php:3830 +msgid "Log Retention" +msgstr "Erregistroen atxikipena" + +#: wpvulnerability-admin.php:3646 wpvulnerability-adminms.php:3840 +msgid "Components Analyzed" +msgstr "Aztertutako osagaiak" + +#: wpvulnerability-admin.php:3661 wpvulnerability-adminms.php:3855 +msgid "Notification Email" +msgstr "Jakinarazpen-posta elektronikoa" + +#: wpvulnerability-admin.php:3682 wpvulnerability-adminms.php:3876 +msgid "Slack Webhook" +msgstr "Slack Webhook" + +#: wpvulnerability-admin.php:3692 wpvulnerability-admin.php:3712 +#: wpvulnerability-admin.php:3732 wpvulnerability-admin.php:3752 +#: wpvulnerability-adminms.php:3886 wpvulnerability-adminms.php:3906 +#: wpvulnerability-adminms.php:3926 wpvulnerability-adminms.php:3946 +msgid "Configured & Enabled" +msgstr "Konfiguratuta eta gaituta" + +#: wpvulnerability-admin.php:3694 wpvulnerability-admin.php:3714 +#: wpvulnerability-admin.php:3734 wpvulnerability-admin.php:3754 +#: wpvulnerability-adminms.php:3888 wpvulnerability-adminms.php:3908 +#: wpvulnerability-adminms.php:3928 wpvulnerability-adminms.php:3948 +msgid "Configured (Disabled)" +msgstr "Konfiguratuta (desgaituta)" + +#: wpvulnerability-admin.php:3696 wpvulnerability-admin.php:3716 +#: wpvulnerability-admin.php:3736 wpvulnerability-admin.php:3756 +#: wpvulnerability-adminms.php:3890 wpvulnerability-adminms.php:3910 +#: wpvulnerability-adminms.php:3930 wpvulnerability-adminms.php:3950 +msgid "Not configured" +msgstr "Konfiguratu gabe" + +#: wpvulnerability-admin.php:3703 wpvulnerability-adminms.php:3897 +msgid "Teams Webhook" +msgstr "Teams Webhook" + +#: wpvulnerability-admin.php:3723 wpvulnerability-adminms.php:3917 +msgid "Discord Webhook" +msgstr "Discord Webhook" + +#: wpvulnerability-admin.php:3743 wpvulnerability-adminms.php:3937 +msgid "Telegram Bot" +msgstr "Telegram Bot" + +#: wpvulnerability-admin.php:3788 wpvulnerability-adminms.php:3982 +msgid "Cron Status" +msgstr "Cron egoera" + +#: wpvulnerability-admin.php:3792 wpvulnerability-adminms.php:3986 +msgid "Update Database" +msgstr "Eguneratu datu-basea" + +#. translators: %s: date and time +#: wpvulnerability-admin.php:3797 wpvulnerability-admin.php:3810 +#: wpvulnerability-adminms.php:3991 wpvulnerability-adminms.php:4004 +#, php-format +msgid "Next run: %s" +msgstr "Hurrengo exekuzioa: %s" + +#: wpvulnerability-admin.php:3800 wpvulnerability-admin.php:3813 +#: wpvulnerability-adminms.php:3994 wpvulnerability-adminms.php:4007 +msgid "Not scheduled" +msgstr "Programatu gabe" + +#: wpvulnerability-admin.php:3805 wpvulnerability-adminms.php:3999 +msgid "Send Notification" +msgstr "Bidali jakinarazpena" + +#: wpvulnerability-admin.php:3826 wpvulnerability-adminms.php:4020 +msgid "Run Update Now" +msgstr "Exekutatu eguneratzea orain" + +#: wpvulnerability-admin.php:3834 wpvulnerability-adminms.php:4028 +msgid "Run Notification Now" +msgstr "Bidali jakinarazpena orain" + +#: wpvulnerability-admin.php:3840 wpvulnerability-adminms.php:4034 +msgid "You do not have permission to run these actions." +msgstr "Ez duzu ekintza hauek exekutatzeko baimenik." + +#: wpvulnerability-admin.php:3859 wpvulnerability-adminms.php:4053 +msgid "API Testing" +msgstr "API probak" + +#: wpvulnerability-admin.php:3862 wpvulnerability-adminms.php:4056 +msgid "" +"Test API connectivity for each component. Click a button to send a test " +"request." +msgstr "" +"Probatu osagai bakoitzaren API konektibitasuna. Egin klik botoi batean " +"proba-eskaera bidaltzeko." + +#. translators: %s: component name +#: wpvulnerability-admin.php:3869 wpvulnerability-adminms.php:4063 +#, php-format +msgid "Test %s" +msgstr "Probatu %s" + +#: wpvulnerability-admin.php:3884 wpvulnerability-adminms.php:4078 +msgid "Testing..." +msgstr "Probatzen..." + +#: wpvulnerability-admin.php:3900 wpvulnerability-adminms.php:4094 +msgid "HTTP Code:" +msgstr "HTTP kodea:" + +#: wpvulnerability-admin.php:3901 wpvulnerability-adminms.php:4095 +msgid "Response Time:" +msgstr "Erantzun-denbora:" + +#: wpvulnerability-admin.php:3903 wpvulnerability-adminms.php:4097 +msgid "Response Preview" +msgstr "Erantzunaren aurrebista" + +#: wpvulnerability-admin.php:3910 wpvulnerability-admin.php:3914 +#: wpvulnerability-adminms.php:4104 wpvulnerability-adminms.php:4108 +msgid "Test" +msgstr "Proba" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "Error:" +msgstr "Errorea:" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "AJAX request failed." +msgstr "AJAX eskaera huts egin du." + +#: wpvulnerability-admin.php:3922 wpvulnerability-adminms.php:4116 +msgid "You do not have permission to test API connectivity." +msgstr "Ez duzu API konektibitasuna probatzeko baimenik." + +#: wpvulnerability-admin.php:3943 wpvulnerability-adminms.php:4137 +msgid "Database Options Viewer" +msgstr "Datu-basearen aukeren ikustailea" + +#: wpvulnerability-admin.php:3944 wpvulnerability-adminms.php:4138 +msgid "View the raw data stored in WordPress options." +msgstr "Ikusi WordPress aukeretan gordetako datu gordinak." + +#: wpvulnerability-admin.php:3950 wpvulnerability-adminms.php:4144 +msgid "Select an option..." +msgstr "Aukeratu aukera bat..." + +#: wpvulnerability-admin.php:3969 wpvulnerability-adminms.php:4163 +msgid "Option not found or empty." +msgstr "Aukera ez da aurkitu edo hutsik dago." + +#: wpvulnerability-admin.php:3987 wpvulnerability-adminms.php:4182 +msgid "Quick Actions" +msgstr "Ekintza azkarrak" + +#: wpvulnerability-admin.php:3988 wpvulnerability-adminms.php:4183 +msgid "Perform debugging actions. Use with caution." +msgstr "Egin arazketa-ekintzak. Erabili kontu handiz." + +#: wpvulnerability-admin.php:3992 wpvulnerability-adminms.php:4187 +msgid "Are you sure you want to clear all caches?" +msgstr "Ziur zaude cache guztiak garbitu nahi dituzula?" + +#: wpvulnerability-admin.php:3996 wpvulnerability-adminms.php:4191 +msgid "Clear All Caches" +msgstr "Garbitu cache guztiak" + +#: wpvulnerability-admin.php:4000 wpvulnerability-adminms.php:4195 +msgid "Are you sure you want to reset signatures?" +msgstr "Ziur zaude sinadurak berrezarri nahi dituzula?" + +#: wpvulnerability-admin.php:4004 wpvulnerability-adminms.php:4199 +msgid "Reset Signatures" +msgstr "Berrezarri sinadurak" + +#: wpvulnerability-admin.php:4012 wpvulnerability-adminms.php:4207 +msgid "Export Debug Info" +msgstr "Esportatu arazketa-informazioa" + +#: wpvulnerability-admin.php:4018 wpvulnerability-adminms.php:4213 +msgid "You do not have permission to perform these actions." +msgstr "Ez duzu ekintza hauek egiteko baimenik." + +#: wpvulnerability-adminms.php:101 wpvulnerability-adminms.php:199 +msgid "Settings saved." +msgstr "Ezarpenak gorde dira." + +#: wpvulnerability-adminms.php:277 +msgid "WPVulnerability cron events have been repaired across the network." +msgstr "WPVulnerability cron gertaerak sarean zehar konpondu dira." + +#: wpvulnerability-adminms.php:3512 +msgid "You do not have permission to access this page." +msgstr "Ez duzu orri hau atzitzeko baimenik." + +#. translators: 1: core version +#: wpvulnerability-core.php:33 +#, php-format +msgid "" +"WordPress %1$s has a known vulnerability that may be affecting your " +"installed version." +msgstr "" +"WordPress %1$s-k ezagutzen den ahultasun bat du, zure instalatutako bertsioan " +"eragina izaten ari dena." + +#: wpvulnerability-core.php:115 wpvulnerability-plugins.php:207 +#: wpvulnerability-process.php:335 wpvulnerability-process.php:443 +#: wpvulnerability-process.php:529 wpvulnerability-themes.php:173 +#: wpvulnerability-themes.php:469 +msgid "Actively exploited" +msgstr "Aktiboki ustiatu" + +#: wpvulnerability-core.php:122 wpvulnerability-plugins.php:214 +#: wpvulnerability-process.php:342 wpvulnerability-process.php:450 +#: wpvulnerability-themes.php:180 wpvulnerability-themes.php:476 +msgid "Public exploit" +msgstr "Exploit publikoa" + +#: wpvulnerability-core.php:125 wpvulnerability-plugins.php:217 +#: wpvulnerability-process.php:345 wpvulnerability-process.php:453 +#: wpvulnerability-themes.php:183 wpvulnerability-themes.php:479 +msgid "Automatable" +msgstr "Automatizagarria" + +#: wpvulnerability-core.php:139 wpvulnerability-plugins.php:245 +#: wpvulnerability-process.php:371 wpvulnerability-process.php:469 +#: wpvulnerability-process.php:544 wpvulnerability-themes.php:211 +#: wpvulnerability-themes.php:503 +msgid "References:" +msgstr "Erreferentziak:" + +#: wpvulnerability-debug.php:399 +msgid "Invalid component specified." +msgstr "Osagai baliogabea zehaztu da." + +#: wpvulnerability-debug.php:423 +msgid "Version not detected for this component." +msgstr "Ez da bertsioa detektatu osagai honentzat." + +#: wpvulnerability-debug.php:453 +msgid "API request successful." +msgstr "API eskaera arrakastatsua." + +#. translators: %d: HTTP status code +#: wpvulnerability-debug.php:469 +#, php-format +msgid "API returned HTTP code %d." +msgstr "APIak %d HTTP kodea itzuli du." + +#: wpvulnerability-general.php:355 +msgid "WPVulnerability Logs" +msgstr "WPVulnerability erregistroak" + +#: wpvulnerability-general.php:356 +msgid "WPVulnerability Log" +msgstr "WPVulnerability erregistroa" + +#: wpvulnerability-general.php:1873 wpvulnerability-general.php:1874 +msgid "Low" +msgstr "Baxua" + +#: wpvulnerability-general.php:1875 wpvulnerability-general.php:1876 +msgid "Medium" +msgstr "Ertaina" + +#: wpvulnerability-general.php:1877 wpvulnerability-general.php:1878 +msgid "High" +msgstr "Altua" + +#: wpvulnerability-general.php:1879 wpvulnerability-general.php:1880 +msgid "Critical" +msgstr "Kritikoa" + +#: wpvulnerability-general.php:2684 +msgid "WPVulnerability Shell Logs" +msgstr "WPVulnerability shell erregistroak" + +#: wpvulnerability-general.php:2685 +msgid "WPVulnerability Shell Log" +msgstr "WPVulnerability shell erregistroa" + +#: wpvulnerability-notifications.php:30 +msgid "Every week" +msgstr "Astero" + +#: wpvulnerability-notifications.php:57 +msgid "Every day" +msgstr "Egunero" + +#: wpvulnerability-notifications.php:84 +msgid "Invalid request." +msgstr "Eskaera baliogabea." + +#: wpvulnerability-notifications.php:104 +msgid "You have unsubscribed from WPVulnerability notifications." +msgstr "WPVulnerability jakinarazpenetatik harpidetza eman duzu." + +#. translators: %1$s the website of Database, %2$s database site name. +#: wpvulnerability-notifications.php:289 +#, php-format +msgid "" +"Learn more about the WordPress Vulnerability Database API at %2$s" +msgstr "" +"Gehiago ikasi WordPress Ahultasun Datu-basearen APIari buruz %2$s-en" + +#. translators: %1$s unsubscribe URL. +#: wpvulnerability-notifications.php:300 +#, php-format +msgid "" +"Want to stop receiving these alerts? Unsubscribe or " +"change the email frequency to Never in the WPVulnerability " +"settings." +msgstr "" +"Alerta hauek jasotzeari utzi nahi diozu? Harpidetza kendu edo " +"aldatu posta elektronikoaren maiztasuna Inoiz ez-era WPVulnerability " +"ezarpenetan." + +#: wpvulnerability-notifications.php:595 +msgid "No vulnerabilities found" +msgstr "Ez da ahultasunik aurkitu" + +#: wpvulnerability-notifications.php:596 +msgid "This is likely a test. The site does not have vulnerabilities." +msgstr "Hau proba bat da ziurrenik. Guneak ez du ahultasunik." + +#: wpvulnerability-notifications.php:601 +msgid "Core vulnerabilities" +msgstr "Nukleo-ahultasunak" + +#: wpvulnerability-notifications.php:607 +msgid "Plugins vulnerabilities" +msgstr "Plugin-ahultasunak" + +#: wpvulnerability-notifications.php:613 +msgid "Themes vulnerabilities" +msgstr "Itxura-ahultasunak" + +#: wpvulnerability-notifications.php:619 +msgid "PHP vulnerabilities" +msgstr "PHP ahultasunak" + +#: wpvulnerability-notifications.php:625 +msgid "Apache HTTPD vulnerabilities" +msgstr "Apache HTTPD ahultasunak" + +#: wpvulnerability-notifications.php:631 +msgid "Nginx vulnerabilities" +msgstr "Nginx ahultasunak" + +#: wpvulnerability-notifications.php:637 +msgid "MariaDB vulnerabilities" +msgstr "MariaDB ahultasunak" + +#: wpvulnerability-notifications.php:643 +msgid "MySQL vulnerabilities" +msgstr "MySQL ahultasunak" + +#: wpvulnerability-notifications.php:649 +msgid "ImageMagick vulnerabilities" +msgstr "ImageMagick ahultasunak" + +#: wpvulnerability-notifications.php:655 +msgid "curl vulnerabilities" +msgstr "curl ahultasunak" + +#: wpvulnerability-notifications.php:661 +msgid "memcached vulnerabilities" +msgstr "memcached ahultasunak" + +#: wpvulnerability-notifications.php:667 +msgid "Redis vulnerabilities" +msgstr "Redis ahultasunak" + +#: wpvulnerability-notifications.php:673 +msgid "SQLite vulnerabilities" +msgstr "SQLite ahultasunak" + +#. translators: Site name. +#: wpvulnerability-notifications.php:696 +#, php-format +msgid "Vulnerability found: %s" +msgstr "Ahultasuna aurkitu da: %s" + +#: wpvulnerability-notifications.php:700 +msgid "Vulnerability found" +msgstr "Ahultasuna aurkitu da" + +#. translators: 1: Plugin name +#. translators: 1: theme name +#: wpvulnerability-plugins.php:116 wpvulnerability-themes.php:82 +#, php-format +msgid "" +"%1$s has a known vulnerability that may be affecting your installed version." +msgstr "" +"%1$s-ek ezagutzen den ahultasun bat du, zure instalatutako bertsioan eragina " +"izaten ari dena." + +#: wpvulnerability-plugins.php:230 wpvulnerability-process.php:358 +msgid "This plugin is closed. Please replace it with another." +msgstr "Plugin hau itxita dago. Ordezkatu beste batekin, mesedez." + +#: wpvulnerability-plugins.php:233 wpvulnerability-process.php:361 +msgid "" +"This vulnerability appears to be unpatched. Stay tuned for upcoming plugin " +"updates." +msgstr "" +"Ahultasun hau adabakatu gabe dagoela dirudi. Egon adi datozen plugin " +"eguneratzeei." + +#: wpvulnerability-plugins.php:570 +msgid "It hasn't been updated in over a year." +msgstr "Urtebete baino gehiago da eguneratu gabe dagoela." + +#: wpvulnerability-plugins.php:576 +msgid "It may no longer be available (closed?)." +msgstr "Baliteke jada eskuragarri ez egotea (itxita?)." + +#: wpvulnerability-plugins.php:614 wpvulnerability-plugins.php:621 +msgid "Last updated on" +msgstr "Azken eguneraketa" + +#. translators: the number of vulnerabilities. +#: wpvulnerability-plugins.php:764 wpvulnerability-themes.php:704 +#, php-format +msgid "Vulnerabilities (%d)" +msgstr "Ahultasunak (%d)" + +#. translators: %s: software name. +#: wpvulnerability-process.php:601 +#, php-format +msgid "%s running" +msgstr "%s exekutatzen" + +#: wpvulnerability-process.php:611 wpvulnerability-process.php:792 +msgid "End of Life" +msgstr "Bizitza amaiera" + +#: wpvulnerability-process.php:613 wpvulnerability-process.php:618 +msgid "End of life:" +msgstr "Bizitza amaiera:" + +#: wpvulnerability-process.php:616 +msgid "Supported" +msgstr "Onartua" + +#: wpvulnerability-process.php:652 +msgid "Plugin" +msgstr "Plugina" + +#: wpvulnerability-process.php:721 +msgid "Theme" +msgstr "Itxura" + +#. translators: %s: end-of-life date +#: wpvulnerability-process.php:790 +#, php-format +msgid "End of life: %s" +msgstr "Bizitza amaiera: %s" + +#: wpvulnerability-process.php:795 +msgid "EOL" +msgstr "BAM" + +#: wpvulnerability-run.php:30 +msgid "Network Settings" +msgstr "Sare-ezarpenak" + +#: wpvulnerability-run.php:731 wpvulnerability-run.php:781 +#: wpvulnerability-run.php:791 wpvulnerability-run.php:836 +msgid "Vulnerabilities" +msgstr "Ahultasunak" + +#: wpvulnerability-schedule.php:30 +msgid "Every 6 hours" +msgstr "6 orduro behin" + +#: wpvulnerability-schedule.php:303 +msgid "Database updates" +msgstr "Datu-basearen eguneratzeak" + +#: wpvulnerability-schedule.php:309 +msgid "Log cleanup" +msgstr "Erregistroen garbiketa" + +#: wpvulnerability-schedule.php:439 +msgid "" +"Notifications are scheduled, but settings currently disable them. Please " +"review the notifications tab." +msgstr "" +"Jakinarazpenak programatuta daude, baina ezarpenek une honetan desgaitzen dituzte. " +"Mesedez, berrikusi jakinarazpenen fitxa." + +#: wpvulnerability-schedule.php:442 +msgid "This event should not be scheduled for this site." +msgstr "Gertaera hau ez dago programatuta behar gune honentzat." + +#: wpvulnerability-schedule.php:446 +msgid "Not expected for this site." +msgstr "Ez da espero gune honentzat." + +#: wpvulnerability-schedule.php:450 +msgid "No instances found." +msgstr "Ez da instantziarik aurkitu." + +#: wpvulnerability-schedule.php:456 +msgid "Scheduled with an unexpected interval." +msgstr "Ustekabeko tarte batekin programatuta." + +#: wpvulnerability-schedule.php:460 +msgid "Multiple instances detected." +msgstr "Hainbat instantzia detektatu dira." + +#: wpvulnerability-schedule.php:465 +msgid "Scheduled as expected." +msgstr "Espero bezala programatuta." + +#: wpvulnerability-sitehealth.php:22 +msgid "There aren't plugins vulnerabilities" +msgstr "Ez dago plugin-ahultasunik" + +#: wpvulnerability-sitehealth.php:30 +msgid "Shows possible vulnerabilities that exist in installed plugins." +msgstr "Instalatutako pluginetan dauden ahultasun posibleak erakusten ditu." + +#. translators: Number of plugins vulnerabilities. +#: wpvulnerability-sitehealth.php:43 +#, php-format +msgid "There is %d plugin with vulnerabilities" +msgid_plural "There are %d plugins with vulnerabilities" +msgstr[0] "%d plugin dago ahultasunekin" +msgstr[1] "%d plugin daude ahultasunekin" + +#: wpvulnerability-sitehealth.php:49 +msgid "" +"We've detected potential vulnerabilities in installed plugins. Please check " +"them and keep them updated." +msgstr "" +"Ahultasun posibleak detektatu ditugu instalatutako pluginetan. Mesedez, " +"egiaztatu eta eguneratuta mantentzen dituzun." + +#: wpvulnerability-sitehealth.php:57 +msgid "Update plugins" +msgstr "Eguneratu pluginak" + +#: wpvulnerability-sitehealth.php:74 +msgid "There aren't themes vulnerabilities" +msgstr "Ez dago itxura-ahultasunik" + +#: wpvulnerability-sitehealth.php:82 +msgid "Shows possible vulnerabilities that exist in installed themes." +msgstr "Instalatutako itxuretan dauden ahultasun posibleak erakusten ditu." + +#. translators: Number of themes vulnerabilities. +#: wpvulnerability-sitehealth.php:95 +#, php-format +msgid "There is %d theme with vulnerabilities" +msgid_plural "There are %d themes with vulnerabilities" +msgstr[0] "%d itxura dago ahultasunekin" +msgstr[1] "%d itxura daude ahultasunekin" + +#: wpvulnerability-sitehealth.php:101 +msgid "" +"We've detected potential vulnerabilities in installed themes. Please check " +"them and keep them updated." +msgstr "" +"Ahultasun posibleak detektatu ditugu instalatutako itxuretan. Mesedez, " +"egiaztatu eta eguneratuta mantentzen dituzun." + +#: wpvulnerability-sitehealth.php:109 +msgid "Update themes" +msgstr "Eguneratu itxurak" + +#: wpvulnerability-sitehealth.php:126 +msgid "There aren't WordPress vulnerabilities" +msgstr "Ez dago WordPress ahultasunik" + +#: wpvulnerability-sitehealth.php:134 +msgid "Shows possible vulnerabilities existing in the WordPress core." +msgstr "WordPress nukleoan dauden ahultasun posibleak erakusten ditu." + +#. translators: Number of core vulnerabilities. +#: wpvulnerability-sitehealth.php:147 +#, php-format +msgid "There is %d core vulnerability" +msgid_plural "There are %d core vulnerabilities" +msgstr[0] "%d nukleo-ahultasun dago" +msgstr[1] "%d nukleo-ahultasun daude" + +#: wpvulnerability-sitehealth.php:153 +msgid "" +"We've detected potential vulnerabilities in this WordPress installation. " +"Please check them and keep your installation updated." +msgstr "" +"Ahultasun posibleak detektatu ditugu WordPress instalazio honetan. Mesedez, " +"egiaztatu eta zure instalazioa eguneratuta mantentzen duzu." + +#: wpvulnerability-sitehealth.php:161 +msgid "Update WordPress" +msgstr "Eguneratu WordPress" + +#: wpvulnerability-sitehealth.php:180 +msgid "Nginx" +msgstr "Nginx" + +#: wpvulnerability-sitehealth.php:189 +msgid "Invalid software type" +msgstr "Software mota baliogabea" + +#: wpvulnerability-sitehealth.php:192 +msgid "Error" +msgstr "Errorea" + +#: wpvulnerability-sitehealth.php:197 +msgid "The specified software type is not valid." +msgstr "Zehaztutako software mota ez da baliozkoa." + +#. translators: name of the software. +#: wpvulnerability-sitehealth.php:207 +#, php-format +msgid "There aren't %s vulnerabilities" +msgstr "Ez dago %s ahultasunik" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:216 +#, php-format +msgid "Shows possible vulnerabilities existing in %s." +msgstr "%s-en dauden ahultasun posibleak erakusten ditu." + +#. translators: Software and number of vulnerabilities. +#: wpvulnerability-sitehealth.php:229 +#, php-format +msgid "There is %1$d %2$s vulnerability" +msgid_plural "There are %1$d %2$s vulnerabilities" +msgstr[0] "%1$d %2$s ahultasun dago" +msgstr[1] "%1$d %2$s ahultasun daude" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:237 +#, php-format +msgid "" +"We've detected potential vulnerabilities in %s. Please check them and keep " +"your installation updated." +msgstr "" +"Ahultasun posibleak detektatu ditugu %s-en. Mesedez, egiaztatu eta zure " +"instalazioa eguneratuta mantentzen duzu." + +#: wpvulnerability-sitehealth.php:246 +msgid "How to update PHP" +msgstr "Nola eguneratu PHP" + +#: wpvulnerability-sitehealth.php:386 +msgid "WPVulnerability Core" +msgstr "WPVulnerability muina" + +#: wpvulnerability-sitehealth.php:394 +msgid "WPVulnerability Themes" +msgstr "WPVulnerability itxurak" + +#: wpvulnerability-sitehealth.php:402 +msgid "WPVulnerability Plugins" +msgstr "WPVulnerability Pluginak" + +#: wpvulnerability-sitehealth.php:410 +msgid "WPVulnerability PHP" +msgstr "WPVulnerability PHP" + +#: wpvulnerability-sitehealth.php:418 +msgid "WPVulnerability Apache HTTPD" +msgstr "WPVulnerability Apache HTTPD" + +#: wpvulnerability-sitehealth.php:426 +msgid "WPVulnerability Nginx" +msgstr "WPVulnerability Nginx" + +#: wpvulnerability-sitehealth.php:434 +msgid "WPVulnerability MariaDB" +msgstr "WPVulnerability MariaDB" + +#: wpvulnerability-sitehealth.php:442 +msgid "WPVulnerability MySQL" +msgstr "WPVulnerability MySQL" + +#: wpvulnerability-sitehealth.php:450 +msgid "WPVulnerability ImageMagick" +msgstr "WPVulnerability ImageMagick" + +#: wpvulnerability-sitehealth.php:458 +msgid "WPVulnerability curl" +msgstr "WPVulnerability curl" + +#: wpvulnerability-sitehealth.php:466 +msgid "WPVulnerability memcached" +msgstr "WPVulnerability memcached" + +#: wpvulnerability-sitehealth.php:474 +msgid "WPVulnerability redis" +msgstr "WPVulnerability redis" + +#: wpvulnerability-sitehealth.php:482 +msgid "WPVulnerability sqlite" +msgstr "WPVulnerability sqlite" + +#: wpvulnerability-themes.php:196 wpvulnerability-themes.php:492 +msgid "This theme is closed. Please replace it with another." +msgstr "Itxura hau itxita dago. Ordezkatu beste batekin, mesedez." + +#: wpvulnerability-themes.php:199 wpvulnerability-themes.php:495 +msgid "" +"This vulnerability appears to be unpatched. Stay tuned for upcoming theme " +"updates." +msgstr "" +"Ahultasun hau adabakatu gabe dagoela dirudi. Egon adi datozen itxura " +"eguneratzeei." + +#: wpvulnerability-themes.php:391 +msgid "" +"This theme has known vulnerabilities that may be affecting your installed " +"version." +msgstr "" +"Itxura honek ezagutzen diren ahultasunak ditu, zure instalatutako bertsioan " +"eragina izaten ari direnak." diff --git a/languages/wpvulnerability-fr.l10n.php b/languages/wpvulnerability-fr.l10n.php new file mode 100644 index 0000000..133bdc3 --- /dev/null +++ b/languages/wpvulnerability-fr.l10n.php @@ -0,0 +1,2 @@ +NULL,'plural-forms'=>'nplurals=2; plural=n > 1;','language'=>'fr','project-id-version'=>'Plugins - WPVulnerability - Development (trunk)','pot-creation-date'=>'2026-05-27T16:32:22+00:00','po-revision-date'=>'2026-03-08 07:11:13+0000','x-generator'=>'GlotPress/4.0.3','messages'=>['WPVulnerability'=>'WPVulnerability','https://www.wpvulnerability.com/plugin/'=>'https://www.wpvulnerability.com/plugin/','Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API.'=>'Recevez des informations sur les vulnérabilités potentielles de votre WordPress via l\'API WordPress Vulnerability Database.','ROBOTSTXT'=>'ROBOTSTXT','https://www.robotstxt.es/'=>'https://www.robotstxt.es/','This command requires a WordPress administrator. Run with --user=.'=>'Cette commande nécessite un administrateur WordPress. Exécutez avec --user=.','No core vulnerabilities found.'=>'Aucune vulnérabilité du cœur trouvée.','No plugin vulnerabilities found.'=>'Aucune vulnérabilité d\'extension trouvée.','No theme vulnerabilities found.'=>'Aucune vulnérabilité de thème trouvée.','No %s vulnerabilities found.'=>'Aucune vulnérabilité %s trouvée.','Data from source has been reloaded.'=>'Les données ont été rechargées depuis la source.','You do not have permission to reload data.'=>'Vous n\'avez pas la permission de recharger les données.','Test email has been sent.'=>'L\'e-mail de test a été envoyé.','Test email has failed. Please, check your email settings.'=>'Le test d\'envoi d\'e-mail a échoué. Veuillez vérifier vos réglages d\'e-mail.','You do not have permission to send test emails.'=>'Vous n\'avez pas la permission d\'envoyer des e-mails de test.','WPVulnerability cron events have been repaired.'=>'Les événements cron de WPVulnerability ont été réparés.','You do not have permission to repair cron events.'=>'Vous n\'avez pas la permission de réparer les événements cron.','All logs have been deleted.'=>'Tous les journaux ont été supprimés.','You do not have permission to delete logs.'=>'Vous n\'avez pas la permission de supprimer les journaux.','Uninstall preference saved.'=>'Préférence de désinstallation enregistrée.','WPVulnerability has been reset to defaults and reloaded.'=>'WPVulnerability a été réinitialisé aux valeurs par défaut et rechargé.','You do not have permission to reset WPVulnerability.'=>'Vous n\'avez pas la permission de réinitialiser WPVulnerability.','All caches have been cleared.'=>'Tous les caches ont été effacés.','You do not have permission to clear caches.'=>'Vous n\'avez pas la permission d\'effacer les caches.','Plugin and theme signatures have been reset.'=>'Les signatures d\'extensions et de thèmes ont été réinitialisées.','You do not have permission to reset signatures.'=>'Vous n\'avez pas la permission de réinitialiser les signatures.','You do not have permission to export debug information.'=>'Vous n\'avez pas la permission d\'exporter les informations de débogage.','Database update has been executed.'=>'La mise à jour de la base de données a été exécutée.','You do not have permission to run database updates.'=>'Vous n\'avez pas la permission d\'exécuter les mises à jour de la base de données.','Notification has been sent.'=>'La notification a été envoyée.','Notification sending failed.'=>'L\'envoi de la notification a échoué.','You do not have permission to send notifications.'=>'Vous n\'avez pas la permission d\'envoyer des notifications.','Notifications'=>'Notifications','Analysis'=>'Analyse','Logs'=>'Journaux','Security'=>'Sécurité','Tools'=>'Outils','Debug'=>'Débogage','About'=>'A propos de','Notification Settings'=>'Paramètres de notification','Configure how and when you want to receive vulnerability notifications.'=>'Configurez comment et quand vous souhaitez recevoir des notifications de vulnérabilité.','Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software.'=>'Restez informé des vulnérabilités de sécurité dans votre installation WordPress, vos extensions, thèmes et logiciels serveur.','Cache Expiration Time'=>'Durée d\'expiration du cache','FORCED'=>'FORCÉ','How long to cache vulnerability data before refreshing from the API.'=>'Durée de mise en cache des données de vulnérabilité avant actualisation depuis l\'API.','%d hour'=>'%d heure' . "\0" . '%d heures','You can force the cache time via wp-config.php constant. Learn more →'=>'Vous pouvez forcer la durée du cache via une constante wp-config.php. En savoir plus →','Notification Frequency'=>'Fréquence de notification','Choose how often you want to receive vulnerability notifications.'=>'Choisissez la fréquence à laquelle vous souhaitez recevoir des notifications de vulnérabilité.','Never - Disable automatic notifications'=>'Jamais - Désactiver les notifications automatiques','Daily - Receive notifications every day'=>'Quotidien - Recevez des notifications chaque jour','Weekly - Receive notifications once a week'=>'Hebdomadaire - Recevez des notifications une fois par semaine','Day:'=>'Jour :','Monday'=>'Lundi','Tuesday'=>'Mardi','Wednesday'=>'Mercredi','Thursday'=>'Jeudi','Friday'=>'Vendredi','Saturday'=>'Samedi','Sunday'=>'Dimanche','Time:'=>'Heure :','(24-hour format, server timezone)'=>'(format 24 heures, fuseau horaire du serveur)','Notification Channels'=>'Canaux de notification','Select where you want to receive notifications.'=>'Sélectionnez où vous souhaitez recevoir les notifications.','Email'=>'E-mail','Email Addresses (separated by commas):'=>'Adresses e-mail (séparées par des virgules) :','Default:'=>'Par défaut :','Slack'=>'Slack','Slack Webhook URL:'=>'URL du webhook Slack :','Learn how to create a Slack incoming webhook →'=>'Apprenez à créer un webhook entrant Slack →','Microsoft Teams'=>'Microsoft Teams','Teams Webhook URL:'=>'URL du webhook Teams :','Learn how to create a Teams incoming webhook →'=>'Apprenez à créer un webhook entrant Teams →','Discord'=>'Discord','Discord Webhook URL:'=>'URL du webhook Discord :','Learn how to create a Discord webhook →'=>'Apprenez à créer un webhook Discord →','Telegram'=>'Telegram','Telegram Bot Token:'=>'Token du bot Telegram :','Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Format : 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','Telegram Chat ID:'=>'ID du chat Telegram :','Learn how to create a Telegram bot and get Chat ID →'=>'Apprenez à créer un bot Telegram et obtenir l\'ID du chat →','Save Notification Settings'=>'Enregistrer les paramètres de notification','WordPress Components'=>'Composants WordPress','WordPress Core'=>'Cœur WordPress','Plugins'=>'Extensions','Themes'=>'Thèmes','Software & Languages'=>'Logiciels et langages','PHP'=>'PHP','Web Servers'=>'Serveurs web','Apache HTTPD'=>'Apache HTTPD','nginx'=>'nginx','Databases'=>'Bases de données','MariaDB'=>'MariaDB','MySQL'=>'MySQL','SQLite'=>'SQLite','Additional Tools'=>'Outils supplémentaires','ImageMagick'=>'ImageMagick','curl'=>'curl','memcached'=>'memcached','Redis'=>'Redis','Component Analysis Settings'=>'Paramètres d\'analyse des composants','Enable or disable vulnerability analysis for specific components.'=>'Activez ou désactivez l\'analyse de vulnérabilités pour des composants spécifiques.','Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red.'=>'Cochez les composants que vous souhaitez MASQUER des analyses et rapports de vulnérabilités. Les composants non cochés seront activement analysés. Les composants avec analyse active sont affichés en vert, les composants masqués en rouge.','Hidden (forced by constant)'=>'Masqué (forcé par constante)','🔴 Analysis disabled'=>'🔴 Analyse désactivée','🟢 Analysis active'=>'🟢 Analyse active','Tip:'=>'Astuce :','You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →'=>'Vous pouvez forcer la désactivation de composants via des constantes wp-config.php. En savoir plus sur le masquage forcé des vérifications →','Save Analysis Settings'=>'Enregistrer les paramètres d\'analyse','« Previous'=>'« Précédent','Next »'=>'Suivant »','Log entry not found or has been removed.'=>'L\'entrée du journal n\'a pas été trouvée ou a été retirée.','Unable to load the requested log entry.'=>'Impossible de charger l\'entrée de journal demandée.','Log Configuration'=>'Configuration du journal','Total Logs'=>'Total des journaux','Retention Period'=>'Période de rétention','Disabled'=>'Désactivé','%d day'=>'%d jour' . "\0" . '%d jours','Log Retention Period'=>'Période de rétention des journaux','None (Disabled)'=>'Aucune (Désactivée)','This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant.'=>'Cette valeur est forcée par la constante WPVULNERABILITY_LOG_RETENTION_DAYS.','Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted.'=>'Choisissez la durée de conservation des journaux de réponses API par WPVulnerability. Les journaux plus anciens sont automatiquement supprimés.','Save Configuration'=>'Enregistrer la configuration','Log retention is currently disabled.'=>'La rétention des journaux est actuellement désactivée.','API responses are not being saved.'=>'Les réponses API ne sont pas enregistrées.','Log Details'=>'Détails du journal','Date'=>'Date','API Endpoint'=>'Point de terminaison API','API Response'=>'Réponse API','Back to Logs'=>'Retour aux journaux','No logs available'=>'Aucun journal disponible','API response logs will appear here once the vulnerability scanner runs.'=>'Les journaux de réponses API apparaîtront ici une fois que le scanner de vulnérabilités sera exécuté.','API Response Logs'=>'Journaux de réponses API','Show:'=>'Afficher :','Apply'=>'Appliquer','Showing %1$s–%2$s of %3$s'=>'Affichage de %1$s–%2$s sur %3$s','Actions'=>'Actions','View'=>'Voir','Danger Zone'=>'Zone dangereuse','Permanently delete all API response logs. This action cannot be undone.'=>'Supprimer définitivement tous les journaux de réponses API. Cette action est irréversible.','Are you sure you want to delete all logs? This action cannot be undone.'=>'Êtes-vous sûr de vouloir supprimer tous les journaux ? Cette action est irréversible.','Delete All Logs'=>'Supprimer tous les journaux','Reload Data from API'=>'Recharger les données depuis l\'API','Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information.'=>'Rechargez toutes les informations sur le Cœur, les Extensions, les Thèmes et les autres composants directement depuis l\'API pour avoir des données à jour. Cela effacera le cache et récupérera les dernières informations de vulnérabilité.','Reload Data'=>'Recharger les données','Test Email Notifications'=>'Tester les notifications par e-mail','Send a test email notification with current vulnerability data to verify your email configuration is working correctly.'=>'Envoyez une notification e-mail de test avec les données de vulnérabilité actuelles pour vérifier que votre configuration e-mail fonctionne correctement.','From address (configured via constant):'=>'Adresse d\'expédition (configurée via constante) :','From address (default):'=>'Adresse d\'expédition (par défaut) :','Learn how to customize the email sender address →'=>'Apprenez à personnaliser l\'adresse d\'expédition des e-mails →','Send Test Email'=>'Envoyer un e-mail de test','WP-Cron Status'=>'État du WP-Cron','View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly.'=>'Consultez et gérez les événements planifiés WP-Cron. Comparez les planifications attendues avec les tâches cron réelles pour vous assurer que les tâches automatisées s\'exécutent correctement.','No cron data available.'=>'Aucune donnée cron disponible.','Hook'=>'Hook','Expected'=>'Attendu','Found'=>'Trouvé','Next Run'=>'Prochaine exécution','Status'=>'Statut','Not expected'=>'Non attendu','None'=>'Aucune','OK'=>'OK','⚠️ Unexpected WPVulnerability Events'=>'⚠️ Événements WPVulnerability inattendus','No interval'=>'Aucun intervalle','Next:'=>'Suivant :','Repair Cron Events'=>'Réparer les événements cron','Uninstall Data'=>'Données de désinstallation','By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall.'=>'Par défaut, toutes les données du plugin sont conservées lors de la suppression de WPVulnerability. Activez l\'option ci-dessous uniquement si vous souhaitez que toutes les options, journaux et données en cache soient définitivement supprimés lors de la désinstallation.','Delete all plugin data on uninstall'=>'Supprimer toutes les données du plugin lors de la désinstallation','Default: unchecked (data preserved). Check only if you want a clean removal.'=>'Par défaut : décoché (données conservées). Cochez uniquement si vous souhaitez une suppression propre.','Save preference'=>'Enregistrer la préférence','Reset WPVulnerability'=>'Réinitialiser WPVulnerability','Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API.'=>'Supprimez tous les paramètres, données en cache, journaux et événements planifiés de WPVulnerability, puis restaurez les valeurs par défaut et rechargez les données depuis l\'API.','This action cannot be undone.'=>'Cette action est irréversible.','Are you sure you want to reset all WPVulnerability data? This action cannot be undone.'=>'Êtes-vous sûr de vouloir réinitialiser toutes les données WPVulnerability ? Cette action est irréversible.','Reset Plugin'=>'Réinitialiser le plugin','Vulnerability Database Statistics'=>'Statistiques de la base de données de vulnérabilités','%s vulnerability'=>'%s vulnérabilité' . "\0" . '%s vulnérabilités','(%s product)'=>'(%s produit)' . "\0" . '(%s produits)','No data'=>'Aucune donnée','Database last updated: %s'=>'Dernière mise à jour de la base de données : %s','Intelligence Sources'=>'Sources de renseignement','Number of vulnerabilities contributed by each intelligence source.'=>'Nombre de vulnérabilités contribuées par chaque source de renseignement.','Source'=>'Source','Core'=>'Cœur','Sponsors'=>'Sponsors','No sponsor data available.'=>'Aucune donnée de sponsor disponible.','Contributors'=>'Contributeurs/contributrices','No contributor data available.'=>'Aucune donnée de contributeur disponible.','You do not have sufficient permissions to access this page.'=>'Vous n\'avez pas les permissions suffisantes pour accéder à cette page.','WPVulnerability settings'=>'Réglages de WPVulnerability','Configure and save these settings to receive notifications.'=>'Configurez et enregistrez ces paramètres pour recevoir des notifications.','Configure and save these settings to hide vulnerabilities.'=>'Configurez et enregistrez ces réglages pour masquer les vulnérabilités.','Default administrator email'=>'E-mail de l\'administrateur par défaut','Read more if you want to force the cache time.'=>'Veuillez lire la suite si vous souhaitez forcer le délai de mise en cache.','Never'=>'Jamais','Daily'=>'Quotidienne','Weekly'=>'Hebdomadaire','Day'=>'Jour','Hour'=>'Heure','Minute'=>'Minute','Read more about how to force the deactivation of an item.'=>'En savoir plus sur comment procéder à la désactivation forcée d\'un élément.','Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com'=>'URL de webhook Slack invalide. Doit être une URL HTTPS valide de hooks.slack.com','Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com'=>'URL de webhook Microsoft Teams invalide. Doit être une URL HTTPS valide de office.com, office365.com ou api.hooks.microsoft.com','Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com'=>'URL de webhook Discord invalide. Doit être une URL HTTPS valide de discord.com ou discordapp.com','Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Format de token de bot Telegram invalide. Doit être de type : 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','All Clear'=>'Tout est en ordre','%d Critical Issue Found'=>'%d problème critique trouvé' . "\0" . '%d problèmes critiques trouvés','%d Issue Found'=>'%d problème trouvé' . "\0" . '%d problèmes trouvés','Never checked'=>'Jamais vérifié','%d minute ago'=>'il y a %d minute' . "\0" . 'il y a %d minutes','%d hour ago'=>'il y a %d heure' . "\0" . 'il y a %d heures','Last checked: %s'=>'Dernière vérification : %s','Refresh Now'=>'Actualiser maintenant','No vulnerabilities detected'=>'Aucune vulnérabilité détectée','Your site is up to date and secure'=>'Votre site est à jour et sécurisé','Server Software'=>'Logiciels serveur','Site Health'=>'Santé du site','Settings'=>'Réglages','WPVulnerability Status'=>'État de WPVulnerability','Receive vulnerability notifications'=>'Recevoir des notifications de vulnérabilité','Cache expiration time'=>'Délai d\'expiration du cache','How often you want to receive notifications'=>'Fréquence de réception des notifications','Where do you want to receive notifications?'=>'Où souhaitez-vous recevoir les notifications ?','Email addresses to notify (separated by commas)'=>'Adresses e-mail à notifier (séparées par des virgules)','Slack webhook URL'=>'URL du webhook Slack','Teams webhook URL'=>'URL du webhook Teams','Vulnerabilities to hide'=>'Vulnérabilités à masquer','What do you want to hide?'=>'Que souhaitez-vous masquer ?','Standard (Hybrid Detection)'=>'Standard (Détection hybride)','Strict (Extensions Only)'=>'Strict (Extensions uniquement)','Disabled (No Detection)'=>'Désactivé (Aucune détection)','Security Status'=>'État de sécurité','Security Mode'=>'Mode de sécurité','Shell Execution'=>'Exécution shell','Enabled'=>'Activé','Audit Logging'=>'Journal d\'audit','Enabled (%d days)'=>'Activé (%d jours)','Total Log Entries'=>'Total des entrées de journal','Last Shell Execution'=>'Dernière exécution shell','%s ago'=>'il y a %s','Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.'=>'Configurez les paramètres de sécurité via les constantes wp-config.php : WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.','See security configuration documentation for details.'=>'Consultez la documentation de configuration de sécurité pour plus de détails.','Memcached'=>'Memcached','Imagick Extension'=>'Extension Imagick','Redis Extension'=>'Extension Redis','Memcached Extension'=>'Extension Memcached','Memcache Extension'=>'Extension Memcache','SQLite3 Extension'=>'Extension SQLite3','PDO SQLite'=>'PDO SQLite','Shell Command'=>'Commande shell','Binary Check'=>'Vérification binaire','Not Detected'=>'Non détecté','Software Detection Methods'=>'Méthodes de détection des logiciels','Shows which detection method was used for each software component and the reliability score.'=>'Affiche la méthode de détection utilisée pour chaque composant logiciel et le score de fiabilité.','Component'=>'Composant','Version'=>'Version','Detection Method'=>'Méthode de détection','Reliability'=>'Fiabilité','Not detected'=>'Non détecté','Shell Execution Audit Logs'=>'Journaux d\'audit d\'exécution shell','Complete audit trail of shell command executions for security monitoring.'=>'Piste d\'audit complète des exécutions de commandes shell pour la surveillance de sécurité.','No shell execution logs found.'=>'Aucun journal d\'exécution shell trouvé.','Logs will appear here when shell commands are executed for software detection.'=>'Les journaux apparaîtront ici lors de l\'exécution de commandes shell pour la détection de logiciels.','Time'=>'Heure','Command'=>'Commande','User'=>'Utilisateur','Output'=>'Sortie','Showing the %d most recent log entries.'=>'Affichage des %d entrées de journal les plus récentes.','Invalid nonce.'=>'Nonce invalide.','Insufficient permissions.'=>'Permissions insuffisantes.','No component specified.'=>'Aucun composant spécifié.','Debug Information'=>'Informations de débogage','This tab is only visible when WP_DEBUG is enabled. Use with caution.'=>'Cet onglet n\'est visible que lorsque WP_DEBUG est activé. À utiliser avec précaution.','System Information'=>'Informations système','WordPress Version'=>'Version de WordPress','Multisite'=>'Multisite','Yes'=>'Oui','No'=>'Non','Language'=>'Langue','PHP Version'=>'Version PHP','PHP Extensions'=>'Extensions PHP','PHP Memory Limit'=>'Limite mémoire PHP','Database'=>'Base de données','Web Server'=>'Serveur web','WP_DEBUG'=>'WP_DEBUG','WP_DEBUG_LOG'=>'WP_DEBUG_LOG','Path:'=>'Chemin :','Size: %s'=>'Taille : %s','View Log File'=>'Voir le fichier journal','Log file is not web-accessible (outside wp-content)'=>'Le fichier journal n\'est pas accessible par le web (en dehors de wp-content)','Log file does not exist yet'=>'Le fichier journal n\'existe pas encore','Plugin Version'=>'Version du plugin','Component Detection'=>'Détection des composants','Version Detected'=>'Version détectée','Analyzed'=>'Analysé','Cache Status'=>'État du cache','Configuration Summary'=>'Résumé de la configuration','Cache Duration'=>'Durée du cache','Log Retention'=>'Rétention du journal','Components Analyzed'=>'Composants analysés','Notification Email'=>'E-mail de notification','Slack Webhook'=>'Webhook Slack','Configured & Enabled'=>'Configuré et activé','Configured (Disabled)'=>'Configuré (Désactivé)','Not configured'=>'Non configuré','Teams Webhook'=>'Webhook Teams','Discord Webhook'=>'Webhook Discord','Telegram Bot'=>'Bot Telegram','Cron Status'=>'État du cron','Update Database'=>'Mettre à jour la base de données','Next run: %s'=>'Prochaine exécution : %s','Not scheduled'=>'Non planifié','Send Notification'=>'Envoyer une notification','Run Update Now'=>'Lancer la mise à jour maintenant','Run Notification Now'=>'Envoyer la notification maintenant','You do not have permission to run these actions.'=>'Vous n\'avez pas la permission d\'effectuer ces actions.','API Testing'=>'Test de l\'API','Test API connectivity for each component. Click a button to send a test request.'=>'Testez la connectivité API pour chaque composant. Cliquez sur un bouton pour envoyer une requête de test.','Test %s'=>'Tester %s','Testing...'=>'Test en cours...','HTTP Code:'=>'Code HTTP :','Response Time:'=>'Temps de réponse :','Response Preview'=>'Aperçu de la réponse','Test'=>'Test','Error:'=>'Erreur :','AJAX request failed.'=>'La requête AJAX a échoué.','You do not have permission to test API connectivity.'=>'Vous n\'avez pas la permission de tester la connectivité API.','Database Options Viewer'=>'Visualiseur d\'options de base de données','View the raw data stored in WordPress options.'=>'Consultez les données brutes stockées dans les options WordPress.','Select an option...'=>'Sélectionner une option…','Option not found or empty.'=>'Option introuvable ou vide.','Quick Actions'=>'Actions rapides','Perform debugging actions. Use with caution.'=>'Effectuez des actions de débogage. À utiliser avec précaution.','Are you sure you want to clear all caches?'=>'Confirmez-vous vouloir supprimer tous les caches du journal ?','Clear All Caches'=>'Effacer tous les caches','Are you sure you want to reset signatures?'=>'Êtes-vous sûr de vouloir réinitialiser les signatures ?','Reset Signatures'=>'Réinitialiser les signatures','Export Debug Info'=>'Exporter les informations de débogage','You do not have permission to perform these actions.'=>'Vous n\'avez pas la permission d\'effectuer ces actions.','Settings saved.'=>'Réglages enregistrés.','WPVulnerability cron events have been repaired across the network.'=>'Les événements cron de WPVulnerability ont été réparés sur l\'ensemble du réseau.','You do not have permission to access this page.'=>'Vous n\'avez pas la permission d\'accéder à cette page.','WordPress %1$s has a known vulnerability that may be affecting your installed version.'=>'WordPress %1$s présente une vulnérabilité connue qui pourrait affecter votre version installée.','Actively exploited'=>'Activement exploité','Public exploit'=>'Exploit public','Automatable'=>'Automatisable','References:'=>'Références :','Invalid component specified.'=>'Composant spécifié invalide.','Version not detected for this component.'=>'Version non détectée pour ce composant.','API request successful.'=>'Requête API réussie.','API returned HTTP code %d.'=>'L\'API a retourné le code HTTP %d.','WPVulnerability Logs'=>'Journaux de WPVulnerability','WPVulnerability Log'=>'Journal de WPVulnerability','Low'=>'Faible','Medium'=>'Moyenne','High'=>'Élevée','Critical'=>'Critique','WPVulnerability Shell Logs'=>'Journaux shell de WPVulnerability','WPVulnerability Shell Log'=>'Journal shell de WPVulnerability','Every week'=>'Toutes les semaines','Every day'=>'Tous les jours','Invalid request.'=>'Requête invalide.','You have unsubscribed from WPVulnerability notifications.'=>'Vous vous êtes désabonné des notifications WPVulnerability.','Learn more about the WordPress Vulnerability Database API at %2$s'=>'En savoir plus sur l\'API de la base de données de vulnérabilités WordPress sur %2$s','Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings.'=>'Vous souhaitez arrêter de recevoir ces alertes ? Se désabonner ou changer la fréquence des e-mails à Jamais dans les paramètres de WPVulnerability.','No vulnerabilities found'=>'Aucune vulnérabilité trouvée','This is likely a test. The site does not have vulnerabilities.'=>'Il s\'agit probablement d\'un test. Le site ne présente pas de vulnérabilités.','Core vulnerabilities'=>'Vulnérabilités du cœur','Plugins vulnerabilities'=>'Vulnérabilités des extensions','Themes vulnerabilities'=>'Vulnérabilités des thèmes','PHP vulnerabilities'=>'Vulnérabilités PHP','Apache HTTPD vulnerabilities'=>'Vulnérabilités Apache HTTPD','Nginx vulnerabilities'=>'Vulnérabilités Nginx','MariaDB vulnerabilities'=>'Vulnérabilités MariaDB','MySQL vulnerabilities'=>'Vulnérabilités MySQL','ImageMagick vulnerabilities'=>'Vulnérabilités ImageMagick','curl vulnerabilities'=>'Vulnérabilités curl','memcached vulnerabilities'=>'Vulnérabilités memcached','Redis vulnerabilities'=>'Vulnérabilités Redis','SQLite vulnerabilities'=>'Vulnérabilités SQLite','Vulnerability found: %s'=>'Vulnérabilité trouvée : %s','Vulnerability found'=>'Vulnérabilité trouvée','%1$s has a known vulnerability that may be affecting your installed version.'=>'%1$s présente une vulnérabilité connue qui pourrait affecter votre version installée.','This plugin is closed. Please replace it with another.'=>'Cette extension est fermée. Veuillez la remplacer par une autre.','This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates.'=>'Cette vulnérabilité semble ne pas avoir été corrigée. Restez attentif aux prochaines mises à jour de l\'extension.','It hasn\'t been updated in over a year.'=>'Il n\'a pas été mis à jour depuis plus d\'un an.','It may no longer be available (closed?).'=>'Il peut ne plus être disponible (fermé ?).','Last updated on'=>'Dernière mise à jour le','Vulnerabilities (%d)'=>'Vulnérabilités (%d)','%s running'=>'%s en cours d\'exécution','End of Life'=>'Fin de vie','End of life:'=>'Fin de vie :','Supported'=>'Supporté','Plugin'=>'Extension','Theme'=>'Thème','End of life: %s'=>'Fin de vie : %s','EOL'=>'EOL','Network Settings'=>'Réglages du réseau','Vulnerabilities'=>'Vulnérabilités','Every 6 hours'=>'Toutes les 6 heures','Database updates'=>'Mises à jour de la base de données','Log cleanup'=>'Nettoyage du journal','Notifications are scheduled, but settings currently disable them. Please review the notifications tab.'=>'Les notifications sont planifiées, mais les paramètres actuels les désactivent. Veuillez consulter l\'onglet des notifications.','This event should not be scheduled for this site.'=>'Cet évènement ne devrait pas être planifié pour ce site.','Not expected for this site.'=>'Non prévu pour ce site.','No instances found.'=>'Aucune instance trouvée.','Scheduled with an unexpected interval.'=>'Planifié avec un intervalle imprévu.','Multiple instances detected.'=>'Plusieurs instances détectées.','Scheduled as expected.'=>'Planifié comme prévu.','There aren\'t plugins vulnerabilities'=>'Il n\'y a pas de vulnérabilités dans les extensions','Shows possible vulnerabilities that exist in installed plugins.'=>'Affiche les vulnérabilités potentielles présentes dans les extensions installées.','There is %d plugin with vulnerabilities'=>'Il y a %d extension avec des vulnérabilités' . "\0" . 'Il y a %d extensions avec des vulnérabilités','We\'ve detected potential vulnerabilities in installed plugins. Please check them and keep them updated.'=>'Nous avons détecté des vulnérabilités potentielles dans les extensions installées. Veuillez les vérifier et les maintenir à jour.','Update plugins'=>'Mettre à jour les extensions','There aren\'t themes vulnerabilities'=>'Il n\'y a pas de vulnérabilités dans les thèmes','Shows possible vulnerabilities that exist in installed themes.'=>'Affiche les vulnérabilités potentielles présentes dans les thèmes installés.','There is %d theme with vulnerabilities'=>'Il y a %d thème avec des vulnérabilités' . "\0" . 'Il y a %d thèmes avec des vulnérabilités','We\'ve detected potential vulnerabilities in installed themes. Please check them and keep them updated.'=>'Nous avons détecté des vulnérabilités potentielles dans les thèmes installés. Veuillez les vérifier et les maintenir à jour.','Update themes'=>'Mettre à jour les thèmes','There aren\'t WordPress vulnerabilities'=>'Il n\'y a pas de vulnérabilités WordPress.','Shows possible vulnerabilities existing in the WordPress core.'=>'Afficher les vulnérabilités potentielles existant dans le cœur de WordPress.','There is %d core vulnerability'=>'Il y a %d vulnérabilité dans le cœur' . "\0" . 'Il y a %d vulnérabilités dans le cœur','We\'ve detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated.'=>'Nous avons détecté des vulnérabilités potentielles dans cette installation WordPress. Veuillez les vérifier et de maintenir votre installation à jour.','Update WordPress'=>'Mettre à jour WordPress','Nginx'=>'Nginx','Invalid software type'=>'Type de logiciel invalide','Error'=>'Erreur','The specified software type is not valid.'=>'Le type de logiciel spécifié n\'est pas valide.','There aren\'t %s vulnerabilities'=>'Il n\'y a pas de vulnérabilités %s','Shows possible vulnerabilities existing in %s.'=>'Affiche les vulnérabilités potentielles existant dans %s.','There is %1$d %2$s vulnerability'=>'Il y a %1$d vulnérabilité %2$s' . "\0" . 'Il y a %1$d vulnérabilités %2$s','We\'ve detected potential vulnerabilities in %s. Please check them and keep your installation updated.'=>'Nous avons détecté des vulnérabilités potentielles dans %s. Veuillez les vérifier et maintenir votre installation à jour.','How to update PHP'=>'Comment mettre à jour PHP','WPVulnerability Core'=>'Cœur de WPVulnerability','WPVulnerability Themes'=>'Thèmes de WPVulnerability','WPVulnerability Plugins'=>'Extensions de WPVulnerability','WPVulnerability PHP'=>'WPVulnerability PHP','WPVulnerability Apache HTTPD'=>'WPVulnerability Apache HTTPD','WPVulnerability Nginx'=>'WPVulnerability Nginx','WPVulnerability MariaDB'=>'WPVulnerability MariaDB','WPVulnerability MySQL'=>'WPVulnerability MySQL','WPVulnerability ImageMagick'=>'WPVulnerability ImageMagick','WPVulnerability curl'=>'WPVulnerability curl','WPVulnerability memcached'=>'WPVulnerability memcached','WPVulnerability redis'=>'WPVulnerability redis','WPVulnerability sqlite'=>'WPVulnerability sqlite','This theme is closed. Please replace it with another.'=>'Ce thème est fermé. Veuillez le remplacer par un autre.','This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates.'=>'Cette vulnérabilité semble ne pas avoir été corrigée. Restez attentif aux prochaines mises à jour du thème.','This theme has known vulnerabilities that may be affecting your installed version.'=>'Ce thème présente des vulnérabilités connues qui pourraient affecter votre version installée.']]; \ No newline at end of file diff --git a/languages/wpvulnerability-fr.mo b/languages/wpvulnerability-fr.mo new file mode 100644 index 0000000000000000000000000000000000000000..adcedcfdec280a1bda3f340b6fb81bac421d0e8e GIT binary patch literal 41670 zcmc(o37lO;mH#gyTR_?I?svQUk=O4vZ|S6? zB8m&BxS$}eC@K>1j{JIGyRSQogY$o% zRR3<(t-Vg2I_Ff?&3BG^`t1R~sr`cBWboW)2Emr61wo%Y{5~{?XYc{=9Pkg|Dd2)L zgMg^PTJQ+)TJQw00xIb%zyrbefV05+z|+Bxf{Oo5@I>%O;A!B2bAzA=c7WT!TRr|3 zydHnl5d_D8e-9o8{@CMh!6We>I4=ke1y2Bv2hRX62QL9t^|%65dpCp1w*m4m*vTK2|6Xtt`0qZv z=jRvEX%};@#-|w}OAEc%b@itTPCffnNpH zj$^u9`{sbF@ppoUfZIW}=f&XB;M+Yu0IHnFz;5s#!HdD;7Pxk70N;iGEuhBXl5<@A zD?!z31bjN!0QG(nRDZn&JQRErsQ!63$dCrReE3&D(Z#nx#ouqC8^2lLv+&ObHGY?X zM}S*FwPPGqc{{=V!54Y|O`yuT89Wkv4XF0M6IA|>fPLU&;Njp=i|7k*HmG{M2UIza zgNpwRQ1tW!D0=xXQ0bnw*tPR0Q031BRqoj!BpoaS>8ju=P~&nlsPta|j|9I8s$ZT2 z)qg(&mGAFC<@1bl-TXNk6uq1Xs@)ynEN~I1`Yi#K-%9X6@G6j|1zSPo^LiitCQ$wU z4p8m+9H@N01FC<12&z91IM3lMkB5UjgdYP!lED^G<-H8FaRrtB-9G$LP~-L$@EGt% z;1)1AADRHJ21Sow1Fr^8xxmezN${EY?*P^R?*)$qKMJZpzX*1KzXa9plP`4n&jA&` z8&v;22c!#wYrp~UwV>+zB&hoS8dQHi?IM@{2vFg3K;^#>RC}%lmCpot2KatZ{qrSo zE%-H1<9<4mMdLabJRV#CY8);Hj{?_%8n*&?G`I~^JzoSW-fKPH0g8{j9aQ{JfEvHQ z0M!p)0M*X#`tYBF8qfa()t*x?c68JUs(-q@e+8&~)_dFpD!=D~u=$_{s@x{1`rihM zzrWw(U;6MLfNE!OiEGEfp!)4(Q2pBhhF~|S^w)qVf;+)e!P~);z>k0@fL{UCpZ^A` zKYj{o9{e{bIyh{J^Pl9g162C+K(+TuQ0>?Xs-K(Sap289{4UVS15YOWE1=T-1RMr` z2QCMPE_MBI52*U?0yQpw0cw8y6{vCkI;eVm6Vy2T5LEmB3)HwCxYYIYiQs(vA$U2s z22_5xgG&E4|NcHu{rL}|`u)59{ck|k^PtNd9UKcnYQd>s7q|tif;WTWSHA%@z9++E z)Q_`4^~)kq^;_j}z~l2gmO;(W9pHoDt)TkxGCD=$&=0De&jXd;_1^yqQ0=(W``-sD zpO5?SzXsLbZ-E+*?}4I^{{lsqhplko$AT(vKB#_Q3ab8B`}fy@XX1Y`sC4&&>X!#V z#d{PS2fqZW|1X0{EdU2VmG@Fm@$LY(gZFsQ0;0G03M-oFu4eIoDx@J3K{ z^m0)1?QT%x@CA^e4}J?WWWj|ioqq@TT>Kvc)&Ivp1gd`s9ste*Ro((n?Oy__zUx8t z;~=Q=w}S_Qw}DFkW>EFG+lPM|tl@tQ)O@;dm5YBRDE@I3sQd>(mDlwCn?RL!2Y4`e zFR1Z;08~GI8r1u*f=>sZ1P=m#2(AZz4ywH6F!5)B*MOqWCaC%HL2w@U2~h2Q5>z|> z4HP~696S{~_zE|^9pD-G*MX;l4UnMxfaBn^!9Vx@?|=*OclEjc ze;&xv65ItUpRa=(z?0U%JHQG^mce_#e(g6f}- zfV05QgX*8Jf^)%dg3kn>MrAc#M}nfWPEhk{38?pL!DoQif+}wtsC>pj#oGaPfVcSf z4}yySG4NI3V_+9}C4+J}cq1tKc^xQz@?P*X@Kd11^`CtBFF}=mD4nWwCxYUSXMsw8 zIjDL+7gV|(KK#|7@_iR5e(UkX4T?UW4W0#_0jm6U;Mrga<*e^k#OgX+KiHaj{v0^A?}Z15%E znc%y?U7*_coU2?u&j*$N`@jppuY%`-v$nYKrQkyR*MSOu8>sYO0T+Y&UG4O*^FYNL z2KD|4r;342IeE9D`(fx5SG11@2 z;BjCtsPxYThxcPW0I6E=57)YRx9HDYJFf?iApGs%QQ-Yx2z~~f4L$*?yaTqnaXlP7 z6MqMIG`J2t5gYjhy8#qkya`l0-vesid>T|c zz6fpuzX#3-*A2RQy#N$l+y!bL-Uq6^4}r&nkAp{o-vz~|egUfgjvI3EF9k)HD?ydN z4iukyE~xhI1ebs>1sVF_vtSiGiN9Dd}SDp z{lWF1${zq1fY*Q*fv*B#CBb8$(w{u;=F1u2Ec_RMhk?t%!@+f+^4SWi|As-)M-_Y~ zc$4?v1}eXMz%#-7L8bdUQ2q8T|NijnT|UQyiwO_GIp6@O_U!~u0bdTPy!V3Y*ZV<@ z=R@EY@L}*Q@aUSGx0ixSzXjCzN8pj*OZ@vcg6f|Sf=t2Saqvd)th!t0?*k#h;P;@) zA8xqzzYIJI|Lvg0?_O{r_*rm1_$yHDJgw>K(E+Ob6`er5m5CwbHerG zQt(*({ov_f2|Nb86}$|*8&rRO59|YHZFl3i8C3tg9%QNoZvj=0r|od#a0sY!j`aSs zK(%8LD0=J#j|SI)8s{NU>Fc2Sc_$cxH-d`)E+2j$cpUx*K-KecQ0cx6E(V_jj{r}Y zbotH$74ITY{jnBQexsnuse#IG2PnFIEvSBY1E~4%F;L_Dx8OYR51{D3W2d9PRp7Jm zZw6KF_23EMOF)g!TS29J92A}X0#tq{Jm1MFD?sHJfojLgK#j+%!DoPXgQD{fdH8MfT~CMa@VhmK$UX|sD2s%MbAUv>0kp?f87bH zUGD}j1Rn!02LAxA1G`^A+rU?X8mI4q5xD4Pm+zgR=;VFi0pLTR=;pCK z_kya&zktiY^Iq%ZukGL<{x5?Ufs0>9oxw41JNQYEr72kadN)4zc>Dl(5aADk>ZebD zYR?p?argo#di(*Xas9vGdEkDxxprOvcHtiYH9u|w#lP+WmHtss{Oa4_q2O;omG|^F zxO@)-=ixsU)HtjLH9l*>$H8H61-RgiuHWmR#_gq`=EGaS3&4+pD)%R#%01|I7k>_T zIR5iNjmt_<@rFR9e*via-Rb=gfhzw?;IZKMJ^mg%8voIExcujWA^u)a^f3%7-;JETi}4@!4#z((124xv37!vr#)tm~ybS-syByZQrT8BL z`@vs=ihub#ojiO4cnSW8LDl=$;41LkcR4-nh2R{}ojK{tlcA9(T8! z-GF zJK4uqo%GXKTu#`PxXrk2xaZ>jg7AOGUCZ;MUJo27ZM5JWjMFzW3+EeGYC1u8RLL+&Q?P;WUmX5Plr)be?a-oyYSA z+(Mpj$LV(;?jGFh2-oiva2GfM9*%p2=g;C!_wSGJ_zA+gcrJVYsU8Uq*6@4^SOLY) zZUFDY9fZsN-i_yXxWB}G9d|45uLigJc`9*xEG0^Cx*`%9@Snz4-6J4dTBAJPh}@ zJiickG0*wm76LBH1->HV|2Li=#|@CS8$8kHaWHr!{ws0W-*fT&0Czp_?+3qtTgY<* zC*E)){TFT-;j3}q=UF`FD4utMXMn!|&jGIjUx$l-_xgu2IK}&yGufu zeDFr^|Coic9(ojfh<7gsU+Ck!faf{>S?}ZDd*cW2Q@9ZK4O}mAH-Km0mg64A>Gy2H z-wd9FYvBG7r{AjxKLA_=j)6zvj>dfpcPVZ$;VWOcflUqQrsVK z@4;;%{HNf@K>aSm6>)?3*MeWdU4pCNK1JA(K3*^WKl9JO=XoB_9|z9`p9$)BJ?=C1 zY zdpqu4oPHnic$G(mosau(+-nK@GWb=Teh=XPKj5=)^KobTG#7!-!>`{Pd7kv)E`&7r z{|e7be83anKj2=9yCW0#c>G_(y$Sc%xYPW*4}kB)y&l(zdm8WbyNl-%ZY}Q9_zwa5 zaBsz(ggYBovzXME=MeWr{OiGQ`|t_yBmVhCguk8V6L3%G`8@DB{+;0Oa6=jYgFGMS z{r?wyH)(d_^m_yNG~Bt)Yx0_ZOyC0E{|4XLKID1$@9@tb2LBBAE8PBs+i%XoGwR`J zp&k~(ZI$ZwN;uIhSE5>Buv9KJCd0;Pp%IQ1Cd0ufEDR4vLyb~pB%G`^YhkHUZxqVq zs2EN}wR)*q=?dl)!xgnsqcl_~hpX%LW)!ZhHY>&U@Ot_p7tg$z*Tur5k^^<&C?&_3 z1cZf=Y7!WG#!8iDgG#$s&POZdO`z7SRA`SvTAG~?C`I+)%yQxSX7%E5eJz?ORh#vo zgH+?SYOy)gn3wg`@hv*HQ#B2TtF^I0V}4kVYIIWAD2+ustCeV8a7iH?twqC2X3we5 z4jYBqNYq#|d+T7iP}w#+tVQJ|vn$o=c*IDAl`0XVS}m&0zO*kY)GBns_OMY6hiXwl zEev}~^`UC57;cXSN2}Fs;S(>v?UDtBOP|_8`pbo(Z4CNQmA)ML)0Q<56~^lSYh{(A zky>Fa9IQ6NLZuio6yXYy{py~iCzoBZ>?(%k`esybgu{grRNoaWTfaK&trW+rrAos* z8>0GnwNj5-JYipTq;4StBo?(PU7T0FIW!d2>%+~m%dh6M2+O1jx0lN0urNN(sE4Cb zEeflZp@=ydwUTRCA1YKtD$sMiH6KWwWEGk=7-`t*g^9T8wW!goRhYi31_suLL)Bsw z&QYrdt4*52M5if+6H$3GjCPEdtEEO%43-s(Oz~=kIX+OWmWe|pSCpxvJq;CxMkBG5 ziHI_zN;srfRw(hTS?RlCRF24#Qps+zULrF+>{K!1%E&6$)8c7qyJqIH@$vFxu#9%X zm%@6}KWr~l8a7Q-eh8-uUDcM(9Mx6F;;N!c!-3HfJ!pMF>Wb^f5SGRyrqVMN$tXfZ zDsuDsO)dPiSZEafhuPLkBb5R}7u9J=ld%wmjTm7y8&%j%VXzzp%QahJ61=Mi%S)9) zZ4#=EhPDOEC&OYiTxgczORC~{xk+j`Y@-m;+HqALZUs9TW%Tk5AVxfB5Wk8tdaRC% zBpC2Ays27&U`oR_95xCn#>J@5Hxi&^W}1zMcsnJJM{vqYRB4d37L8R^0WxgDpKY1x z3RW0B^fYS)73ICXJH|^cARK_X`q2Ic9aQ%oC^wEG{u@{?SfycQ%vZ{+r&XoPR;}*o z4To#hu@*|3v{?o*sM*${Mv>&iuVhRsMZiGrgZE#8blJjircQb={UK}9sl;<;6eh9cUS>nNs4X_$PB zg)ne70hd7oHiV2zb&Rnt3dc47DOzOQsKHpn>Tp;ejfhNx6${Q24K*z*EvGD{Lrr9i z$#AS%DK)A!2%jS2&Pkubn5BgMQA2#!%5~!%_E4(L>NI}cB@pXbQLPM@Mm(W~{Y~n@ zepVbxb*YsYsfdXFXRcfRnr;kMYj41yR6UpBZj;7+neV+Mt(JWiZS!*9MA|Gp z6Qx49eY|tXqI8Xqj??*?cFc@!QPsx2wY?jbEnnTYdSJ`ep4I)!miP5;?O)Z~*SEFz zs@@gz+v4>1uGqLik=Ly2>7C|vl633lRjUVj`&Rc4WO}I>p6Pi@Iu=Z^4&)p$oZ>un zXropdgkozN)*7>#KP_aal_3^Jd4QLAuFwOOO$PQi>6e=Uk zlB?kpJj1ArG1L+6ScxS!+Zu<&RxK2@kSWe!0U02E2-g{FtcROQ(e|j8hL;P-63ubA zUsUW4=hV|TE-=mA&46s~K3$r|o>Zu6JlP%eM1#!{_cvT!abl>rW{>0iVWEf=SE@7R z=)y1>qfg>@N^HwRH{3U7Zyi(LUh)ujtgVJgw0R1b5FTT=*$Lx$f4Ff&Uw6>Et}p1dPPe}y zG8K)eBR6%_qwxZxLK_Ds9S^L}BY`3_YH>7JjZy66^a%pLG&8nESMip)F`2G7#!|lBhi||ND28b^W0JqF-*N9PT0GHm0mi1 zu)0!j4nrFy=9>v=rMkjd)K*s-EYqctNIFTsF+?(`FzHLh(9ecMO@!*Z!Zl4eo&=-N zMN)V6YeKlTLaCZTT`c^eBV2h=e-x7Byrwi%tJdj?&}oUW(z`b$RMnD5+0Caj^}P7} z^Sl=oVZ78O{kh&X7MIadveSU~r978gU7B-CP6P17MCWW&x52|0eMI-PkIJQO(Z0}m z-0`%{%Q$s6tF>&zFDud?Q?FM-(*SkrcFBT`$?+&y-Ov(LnX56QhJLA%WQuf7cZHKE zRwQ-?qDs|>oEIA53D}h>2OUFYWYpr)d0jytOKB52ORghk5V*h5S3M)>XCAmd6OIB>j z%IN>8jRqUp>`Uh?I-_o86_&9O0VEX>1BI{@(B`^5Z(#MPn3ke9i7#9q)k>@-3Y1n{ zX^z`7agjEd!%zX-O2nU$EKC=o_eeC1;UO$mStb-Y+Q92S-#uQ;vXp5xoYz?un;)L~>po;N& zsyw#`YYMeep=WuFZG31=R4g^ef;G{YW0)yFii3*D%VLIG<(NaT#*Bc$nrcPte+@cs z35^31mT-&V1(8APyyl3#tYhH_)=c(a+2{VYRcvk4*j}w|OLdC1NFues{vu7n_KfNi zUCOP}u`cA}c`C=ZqY<82GrOYmY-m>81C|_{1d7rftVKcJ;r_PQs2U)M%xSe?!pj{k zb?N1_Ji)>fDcZ?N$+Y#!m^N9vXf9XD)V6lDCR30~O*`4B+Oot_hHarx*88$7TuD-e zcxi0rA|1IU3Zcs)&E2$HtsIh7lbo$!guk)fH6~wXOc$zF{+$)b3p4`#$?7F*nS3w; zC&kE<${56LB;;lu3=?U@*kjYCA+wWcQFU)%c<^Gce2Hd_1TL!|ET<*ZiIpuuD~-`t zh9+BMCVFv8QdqshbyGRE2T(mBva$=lv$P5n|7|$_48S zjnVFa6+kOJgn(!(qn)=d%9cdS%_uYk_n>ZFiab{EHZf<9F@xPSrkvf|Dc75YFL01n z(%JoFQE;;(H7v6H#MWEZ$p|uVX=%14YGXFR`sQF61p+FTl{mPvDJe2GB5zo?eBD6* zz*Pgmh6t4`vmDE$fuw3ew2gO>LBnchrXvk;0ZUi|(#WLD8Wvm9x}`!kK1FwisZy%@ zdI?~>iU6xsF*iVxYiwUD6%R}TPraLFlorzRvYFbFo=l!Pbz)(4e^W~G{%kr4;v2N( zBgwknt!L>3;aV2X4NGQPB$bXvEit}Y;+CDHWov1 zTAuoGyilsKi%8*UhUoYNL4m&N-qW9$zyM(07`#tgm5G%xUIN{m zE>?${V~nf$Bu?9c$8sy-S@kMIaGLgRzo4rt2}9sS9+}SW*|JC|KJ=FDL>Hp%x6rMQ z7NZb06ykJ;Y!;piJ8`&WoMjS3w1Dd%^p%Du9m8-rv^JCVTXLcpJW8yaM5>u>1NVEW z7{9kn#}D!ToKucgcsqGsRm%CpWEZF&^utlR?XQZ~=Kd2mzCoIcnCYCwXSf)8r_~jc z&RCT`pneRA#HkRh!GNeMIk6iw6Sp+wL;1iq=j>Z_m7H=_x(9x}htljAg41^>&m>Db zc`)u6+8>>ss=x>15t8hde}sVHA*$1BGHpm$=WZYbY;Szk=tC` zSi!4(Q=_%}%p5lNf{CV2>#R~s!JHn*|Mbf;ndOn^e_ipsp1Q+FtdjQL-Ib(JQxH^mAX z8l@xzg25aCX&Y7(B;f|*0~3)rO@OhX#1>;28=Gq3VZJ2CYjQHWB}w1-^9d}OlBO}H zo2A}l8yAW7)HbZTtoBS|aoGW8WnwZ45-kgNkRNN2UPm~5jGpW*b-!X+iY@K!b# zL>SCR?aFEE`;-~vh^sZ4pX|FY%gyK+;?NFQVlgy^m@R8EEop`rX`_^h_Iq>6aZ47{ zyw7LgTI1H5Y*o^D^qxwJn{Dg)^f6tPtm%7^q3@y@@*}Sq4?LKf0ZF5kXcPSUCgLH{ zGu*soU#TmUSY_pOcEUkxOD?hZTUlsIl}klQl!gI?wa4#Oi_EYeCW@oYq>MUjDM%#q zC}OFbJd!<0BQ~2D$4rCC^_DNt_dK~c+hj)X9LH3Pc?b)d?aosh=-4Mi`P4+P!wnN9 zr$hK75?gzEmv6jWZzDSrQJhYjv#Pr>()?{dZO6#7D(}mAyG)k*+8U%lj^|m8P5ZL# zCTiEVmD{)O@~sVL zA&U#=36VzKLfRaMkR(9(;c&_XYw=T&r|afSmd#pS%ZQy3aVo$-X&hE=2bcz`9Ape- zVC{9%58*xpPR5xpCEe%`yU1{b)}^lUJevl^k`va0jq!;Urh5{>WohUQ$lECt$@wm;SZD>3XipQbqT z9D6+^(P;`el*S^71p_McJIT)QlAamKH(<$`J?LmS&WH+XLIk z+#ReBar7oK-5oJ^2rD!^Lfz@4OKd!xlf~Ms7GJ^<6ON``Y8xb%Ebu-}UL}~RA#`vw z7n@1KxW=nyuYr|h7aJ{@@Gm?0W`b{4CyDJ=`<3(z&}rtqN}a z!A`y}tx3yK9w?`Onqq7jNEv9he|B5qZhLbubQTU896v&>QL*Bd(9In3;OLcu8P8tX z8E4L;=|sq8i9^L|i`7T0dMR(DVB}uOj-lg-EPAQkmAJ`tVKrjIRV36XwU+4RME0#8}++He3X0W*i}<%Q|)D z_|7J6-HeQ>*3TT*@3kP*?J+8Xk4`Gtb`HFV_Kca`V^2lU7{wJA6t}grsCz8Ttr#W+ z?J0jwD9etXSqk@@LW@+6Bkx_JbmM4`@zDomLN&R{vBy2Pnl$^=O=ebUVF7!pmZdN= zj4fe%tdd2|8-3afnf~O|%+zaS&J~V$iA7P;fwkP2v~o8ql~d7Dewhl*ag#F&I#kU9 zXjZ!@V869&fAY&`FxqI0*Si-i*uH&xSFOqwn0jMJqbsT}XnC`JJiF{p>MYX&r<5!R zQeh=|YAdB;=NF!M%R7Ji@z-)@KG7EPE%Q4*KfCLVA5Qm6JZ~xnKfCL$yVGFXCuD23 zR=p0hTj%Oxr{}QUESR><#R`)zfD;-BhUMzGwjjce1`5Zvd9&DbViI?*sgIP3oy(ge z_0EB6cbIeyEL;a)>s{5_$bz~vM8?g}^~|jG>pC~Ed#xjKo#=JgdKaCu=={!e7I&U= zVR+63-3u3XFI;@~Is9hD*4u7IdDfcMYkJcLEbKaG)(SSWsbuE>N3puG5$TIz{<`G(|EN)rOxJ1XK#hOJn+-*@WR1TV-}rJE0jA|!fiOrU18Yp)|V{0 zSc*4~ODf@|;lhh&UDbKHuAAvRaCdllx!SNJQVY)QI;U&#tiTq|@!HfbrV6x$7H@+* zwaecWoZ2O;Kn0TmMj>_$*gPp%BVs{^-vEu zWh=8%9FX^CBVfJYhG8a#3rM3-fGk4v426ZoxzUcPUG6G_UT8{X`fr+`?4?6ePVM3z zNF%*!SjyfzEH!lR(5*k=qH}$7=7+=B-3m=k-7+2$n7AONO{iw=kG_M*bt}xe(avz{ zoeT(LSc4prgPuM9E@Hfjr-$hFNn+W3A#?-O&KW|TtV{%kKWR~J3*k@FDqTE`_aj2q z;OZa~pT)a8mm7!-81uc6G_tQ?W~Zt5GYjojVj+Yyxac#ri&Gl9iij`*yFgZ|6iRjM zE_M=NYM0v&m*)z|u~KO6P(;ShUU2(`H@1;LXnC$BLXUIh=)&UEt|kX3n6Q0lU79}A zW+C$*$JeLsXVOs>&J7!{7_PE5XgBEGChIk_ponI{+!#w432YLLomsUj*ndlTe5 zu3hg+EgI1!28fU~yHB-d?sBS8)q^Ebn%!%(bK7%J#FmNIu%}7Wb5|T~L11Ch@fG+E zXMos`<}x973#WG3hP7u!(hn9IpLIEksL3Jb=J5F!`ajtH;p?dR5$+6 zC`1HT5Yv_JX{jM7nV)>r!MPPfiafP zahtB)WlTJ7qcln!9ftx`Kk8te%0){C5>I|5e=5t<=%q3&eQ<@5cNvy#H`BOgX%{Qq z;Z7YM;XMY-9mzZhHo?ggl`|aF+=DjObMdq|wTs&{+_jvpRrEZoFw&7DY8lqy&eq^E zo3-lva>0!p0*IZ+X|tMi**U8T7;<^8J2Vjvl{$;W*D!N|5~48bu9q~DG_~3sWpO5f zt+Z)pyVPvaCZh^BN=85nnbBLlYL@}jFdMZApM65en8TC06RX~0TnMHDUcfr?k0(|wlgv~pKVPt@mLigF*ki})Q~R~qJd7NFdJxwRNI-nsN0PM$*ykF zAtrJEUgyMBiMkdgkqrLB%;@vSLzF33^x$bTj~pQ8}46Nk%at zGP=PA{xn$-R4RkYP-d)cw}VCqQ+%}u_Uvr&6rgqoFsCq7484S zO;!m3o-MGL$Nf!c2P9E9b}_XpbDI^hyuN_(cBhy*5fgET^|3cJ+2_lz{o;`J#_qT> ztAdnO!i+e9iw(5MjIBiJv$wfwt!STUh?!(#yg$%&R}3|}`Wm4?m>iZY1gY%8SfY!L z*m_lr#+wLvTCN~HT{Bv)%`*lmPRPDuo!vl|cu2G8*D9NXW)8~6?1^fX($u{uESUU^ zbBG!F36YN-`s+e_6<6Z231_j8Nk!LCMqTV_H-%Vhtg=aSq~DvUV1GjH%}(tatd8i0 zQ|5G%OOw3m?HuEzqqSsi=CFji1lo?Jg{3Mp1k&Ktu8K(u%w#w# z5|frQMm{IracoS)1XpbojMo_lE0i@svi)SMwj)9+rASGS#Pleofb(V9R<#M2sTj5! z$t73=ogJn9#Mt{mk9yd|_1#T7-2E!!G=?)@Wr?Js9qK&$&yX-{;%g|IR#b(fJ)_eLxZ!^~W+?>_r z7-YYB^YP#B1f5l%%`z2cglrg=~{AV zif%X8>P%1!?RGLft*9(3OeTzX^H?d$k(3O7M_JvLNa3F2Cc?f(G&862wH1>utVEon0=X?APxOxX1hk? zZ!OF6sO!v<-9(b^aI6hCHm!QZy#ixTZbEV&$A3{Po{%MXy*cU%d$1FPSVyR)Cb=fC zyUuJ^n;nnH-e+biIWIbf-37KOpO%ojxkyD_MtfD#jQ5%~g=f0foU4GdrR`I(`RmQH zF-u#+{$zKWd1$e1O`Ex5W8&VYX_bi035S8mliUMt<>?e(+=D3W-jJ0B$*OLPFeeew zYsyLNV0AgH%;i%T*q5B7fCQ3IqF+=@Au7(r>{;NN7AeLf%tDZXy>L{)aHC|o`?r|o zCC?|9pqXxofRm~tP65fhVvc5v3MS>G=~@IM4sB&ErtB`FrlE|OIR(D$mW~_;(fo^S zEwN2kKHs2&Y0|>18JyB`hCu5l&MoJ}Ib+y)u{7NiSMt;%+j@gKmV`aKNX$=KKkXuj z7DFd>l%)>Y;SXs~Y3O?OjbDu6DM<|4l!z-_)@@WLb%HIEuy3xc$6~Z;U~a_yh5?^j zWA=C|z^GVKD%m8thdne}V%hLjB)Q#9VEoN0sk6Z|MB~u7;$$voi#MYX!)d|}xNb4R zRBsHa<+3(b&FLFymNqmAQ>#t!N|tP^?G-G7vecRgANR~OR@y}H$?Q^Sgr&|+ryi$L zjgg0+MzGYC1<`zbv%6h!i4UBusZN@5lJaY=Q#zwh{GbnkFtBF#O2cxTGQQ*8$635m zupU!Ii3Lr|xt2S-Lg*LA&tLOyTT9%*w+)FR4VBRK+C&MiC?G%7J?OS~A{;ph zqSbJbv5_Qc{ES8j>Thz(k(D#P{=L42%r5C9W1rCGW?P^WgyQ7!-SD<%_$%XRf?f=r zXq~E@nu<5kplOSvv36#S3|sZ@m@Uo{>uADjs1m|bK9@wz7eyDEu9`0}&D72*Op}u@ zG;TvYrumE*Y3b2f@cg7Ek=RL*n_J-MaH;A|EwrbEbRjrlGE( zCo4b_tF3Srzfs%y%oW{c35nGRsCcH9#98?FakQ+h0pX9uG0n?-NQP!$f-2iz7QCpe zH`@Q5z+x>`oCP+%pw5d}m*bOr@wQNQG6bpC+Y;O=8n(PzpD{ndhFaeB6GF~ofN2Y`?ZiCh*slvuxG$?rSGXx^ zVnRfBlJw2jC!}i3^-w~$-E2oAU7&I2^!h z$V-AN8!2vIlQZ)%k(M>aGT=2!*vi|tixwfa<8%rRHEyZLa^4c;o{B!gIko*@`wNHyjpj#=4aTh%n38JcO> z?GmMw=KKS;su-=RUy(($Ly;`-^fY75hi{z3m?_6+8(<>Y(O{_VpP;QyYPz49QY}yoB z4b+(!{>uVwr02tv!S&xGSM zAb5Lou8542TuxTdheP6UWAAXDR8|X1V{x>8k&f-I@v$aGgMaCU8wM-e1#SsLhqM*d zHa=5DbDvHbwS0^~WyYdVY{$w}!tOhm=wsTk>WE(9zghr0bQ^s73b*V*ZY%wX8}A8d zS@I5(>eRzCZis2dw8$U&2&1DeWtn}IdEr%f)gE5a@NafnEwV{+@i5%64{eh)K4L)* zxml@2+Z0Q0-u3DWZPZSYjPpHmxaxJNVr{G50=^HIu(a?+oM?pxL=$3LV}hk`$R%EhF$jc z76W4mu}+|_GfH3<=<5k);dZ51x8}Msx6qlrK>8n>Y!pE&lNu`HeMu}1terqnK(cHm z`RzqrGzaZiC+$;hRDo17af-AZ)=X>pN9G#KO#VQKjjnIE7$|b)G#e~lK$PU-G!G~E zCTp24UpgBeLN%RXUtLgV3@58G;x2uS1r7mET1zm%yd`SpOAPUjjG006`!UWo+C6P> zhNM+Kd#2idPd1B;X2dBn2LR#<*LU-AhMqLZsC}ma)vX^c$cL#mFwGIFokXBUO-C@a zKV_h9T-|*2eeXD2LND`~&Dl}cmvyC=Itd~_Y3a}Q?=_^mjoRm8#v&EO-)%r3TAf~w zV1?!*4$58^g=9tM{3HM4L%x6Anaj3rcX8trlK~%YAbI>b2WNP0wi=$hgUm_FI4-PU zKnzoVU<`BEDsmkQCBoF=k2%o6I#xI>=^+f+nY*2c%ytS^-E$~JGcb*8UE^ikiusXX4*qh~ODdW)vtt>E^yjjNYG+s%I>R!>^a)UMOk zGKtd0Hm=8*m^prTaS{^l+H>4#*xNoN%2eBqi0exdxhmV2C6wh%5#aTFj36k;N_#`$uf&_v+M0Z`V4^elQ?Vj{=_g>N*pZBjA{!A{h!Z>ANi>HX4)J3tQr&>eNZf zgt&wliz#-N1BM7QE4e8df1pBgnoRq`_!@A$WuQ&?Jy~E@#D-o|UfMl)g-8gyphEu=A;p6K?UlAub~2p`L} z(v|!M3`RN3SoTLEZEn9&Ckego3mbz3bsAK4Z84i9+)Ib&?E@Z&D-=+OWBUmH|7mg5 zThtsb#HwLq>TZNM>_%8%BriB4ok=%#s=7RkcxkEmz(eVd5U7Lb1Qqs6Yr>5?&>lZk33SnCTPcuWwP zhGs-~Io{A_)J?Xf@>NJ)IE^DYsp-ch$eX2d{?>~gX7y8baQbez?L$9+=aOxf0@K>>ZhM3Nmva7 zo9ytlH?)h*I?fp)5NJ=!DeLt3w6am_7KbFh1pb-Z33%2-HU1Y*lf?#${NH^=yEe8eN;@#$7h`=flsSG?Rs zKEKX!vuz#r=iJL=rm1IJZ4qssPDzy+6`flTy$+C70rpM-h@~C`mH2Zh?%G4fA8$Kr zCMJ>AHA~1yOhZHx?K;LAl<7?JVT{eD6|dk zKW|P`5`j-gx2ZKFkkl}Df90vFqAXR2ltvOVg1cQ|$GDJ>IISHEge{HXOr&~PN)T){ z^DP#P?nCLWvztopgDlnwyGiHw5KVHmJw)uwdq@LiCkOdOuCem5$ApNW_WfA3y?rwh z{_QSq>_tBQP=iju!2aE#hCL>e4x8vgq>Clpy-B#+ebK$kAiHy#TcGzn19f1!!@9@x ziSX~bUdL8jb>VjXY%lWsqej7uq}r_2JZs@}dr_j_iOWh6Okgwj?3rp6%?Tt-?^et5 zG(}Upbb?8=OirvjL)303+=Td{#3&O>`0r>;wQg^6UJp<`q&J)0O2!nwzDrp2I|+dM zl+335843HqO!C2$r{G&MZ6%~aY0JlCrfxxUiVq6pNE?B|pI)o;?U>|~GG1g9A4a## NepSZZUZ049{|8i~;q?Fj literal 0 HcmV?d00001 diff --git a/languages/wpvulnerability-fr.po b/languages/wpvulnerability-fr.po new file mode 100644 index 0000000..6551a4e --- /dev/null +++ b/languages/wpvulnerability-fr.po @@ -0,0 +1,2208 @@ +msgid "" +msgstr "" +"Project-Id-Version: Plugins - WPVulnerability - Development (trunk)\n" +"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wpvulnerability\n" +"POT-Creation-Date: 2026-05-27T16:32:22+00:00\n" +"PO-Revision-Date: 2026-03-08 07:11:13+0000\n" +"Language: fr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n > 1;\n" +"X-Generator: GlotPress/4.0.3\n" + +#. Plugin Name of the plugin +#: wpvulnerability.php wpvulnerability-admin.php:1782 +#: wpvulnerability-admin.php:1783 wpvulnerability-adminms.php:1945 +#: wpvulnerability-adminms.php:1946 wpvulnerability-notifications.php:105 +msgid "WPVulnerability" +msgstr "WPVulnerability" + +#. Plugin URI of the plugin +#: wpvulnerability.php +msgid "https://www.wpvulnerability.com/plugin/" +msgstr "https://www.wpvulnerability.com/plugin/" + +#. Description of the plugin +#: wpvulnerability.php +msgid "" +"Receive information about possible vulnerabilities in your WordPress from " +"WordPress Vulnerability Database API." +msgstr "" +"Recevez des informations sur les vulnérabilités potentielles de votre " +"WordPress via l'API WordPress Vulnerability Database." + +#. Author of the plugin +#: wpvulnerability.php +msgid "ROBOTSTXT" +msgstr "ROBOTSTXT" + +#. Author URI of the plugin +#: wpvulnerability.php +msgid "https://www.robotstxt.es/" +msgstr "https://www.robotstxt.es/" + +#: class-wpvulnerability-cli.php:35 class-wpvulnerability-config-cli.php:32 +msgid "" +"This command requires a WordPress administrator. Run with --" +"user=." +msgstr "" +"Cette commande nécessite un administrateur WordPress. Exécutez avec --" +"user=." + +#: class-wpvulnerability-cli.php:156 +msgid "No core vulnerabilities found." +msgstr "Aucune vulnérabilité du cœur trouvée." + +#: class-wpvulnerability-cli.php:275 +msgid "No plugin vulnerabilities found." +msgstr "Aucune vulnérabilité d'extension trouvée." + +#: class-wpvulnerability-cli.php:393 +msgid "No theme vulnerabilities found." +msgstr "Aucune vulnérabilité de thème trouvée." + +#. translators: %s is the software name (php, apache, nginx, etc.) +#: class-wpvulnerability-cli.php:490 +#, php-format +msgid "No %s vulnerabilities found." +msgstr "Aucune vulnérabilité %s trouvée." + +#: wpvulnerability-admin.php:63 wpvulnerability-adminms.php:227 +msgid "Data from source has been reloaded." +msgstr "Les données ont été rechargées depuis la source." + +#: wpvulnerability-admin.php:65 wpvulnerability-adminms.php:229 +msgid "You do not have permission to reload data." +msgstr "Vous n'avez pas la permission de recharger les données." + +#: wpvulnerability-admin.php:93 wpvulnerability-adminms.php:255 +msgid "Test email has been sent." +msgstr "L'e-mail de test a été envoyé." + +#: wpvulnerability-admin.php:95 wpvulnerability-adminms.php:259 +msgid "Test email has failed. Please, check your email settings." +msgstr "" +"Le test d'envoi d'e-mail a échoué. Veuillez vérifier vos réglages d'e-mail." + +#: wpvulnerability-admin.php:98 wpvulnerability-adminms.php:263 +msgid "You do not have permission to send test emails." +msgstr "Vous n'avez pas la permission d'envoyer des e-mails de test." + +#: wpvulnerability-admin.php:113 +msgid "WPVulnerability cron events have been repaired." +msgstr "Les événements cron de WPVulnerability ont été réparés." + +#: wpvulnerability-admin.php:115 wpvulnerability-adminms.php:279 +msgid "You do not have permission to repair cron events." +msgstr "Vous n'avez pas la permission de réparer les événements cron." + +#: wpvulnerability-admin.php:127 wpvulnerability-adminms.php:291 +msgid "All logs have been deleted." +msgstr "Tous les journaux ont été supprimés." + +#: wpvulnerability-admin.php:129 wpvulnerability-adminms.php:293 +msgid "You do not have permission to delete logs." +msgstr "Vous n'avez pas la permission de supprimer les journaux." + +#: wpvulnerability-admin.php:146 +msgid "Uninstall preference saved." +msgstr "Préférence de désinstallation enregistrée." + +#: wpvulnerability-admin.php:153 wpvulnerability-adminms.php:316 +msgid "WPVulnerability has been reset to defaults and reloaded." +msgstr "WPVulnerability a été réinitialisé aux valeurs par défaut et rechargé." + +#: wpvulnerability-admin.php:155 wpvulnerability-adminms.php:318 +msgid "You do not have permission to reset WPVulnerability." +msgstr "Vous n'avez pas la permission de réinitialiser WPVulnerability." + +#: wpvulnerability-admin.php:170 wpvulnerability-adminms.php:333 +msgid "All caches have been cleared." +msgstr "Tous les caches ont été effacés." + +#: wpvulnerability-admin.php:172 wpvulnerability-adminms.php:335 +msgid "You do not have permission to clear caches." +msgstr "Vous n'avez pas la permission d'effacer les caches." + +#: wpvulnerability-admin.php:187 wpvulnerability-adminms.php:350 +msgid "Plugin and theme signatures have been reset." +msgstr "Les signatures d'extensions et de thèmes ont été réinitialisées." + +#: wpvulnerability-admin.php:189 wpvulnerability-adminms.php:352 +msgid "You do not have permission to reset signatures." +msgstr "Vous n'avez pas la permission de réinitialiser les signatures." + +#: wpvulnerability-admin.php:212 wpvulnerability-adminms.php:375 +msgid "You do not have permission to export debug information." +msgstr "Vous n'avez pas la permission d'exporter les informations de débogage." + +#: wpvulnerability-admin.php:224 wpvulnerability-adminms.php:387 +msgid "Database update has been executed." +msgstr "La mise à jour de la base de données a été exécutée." + +#: wpvulnerability-admin.php:226 wpvulnerability-adminms.php:389 +msgid "You do not have permission to run database updates." +msgstr "Vous n'avez pas la permission d'exécuter les mises à jour de la base de données." + +#: wpvulnerability-admin.php:247 wpvulnerability-adminms.php:410 +msgid "Notification has been sent." +msgstr "La notification a été envoyée." + +#: wpvulnerability-admin.php:249 wpvulnerability-adminms.php:412 +msgid "Notification sending failed." +msgstr "L'envoi de la notification a échoué." + +#: wpvulnerability-admin.php:252 wpvulnerability-adminms.php:415 +msgid "You do not have permission to send notifications." +msgstr "Vous n'avez pas la permission d'envoyer des notifications." + +#: wpvulnerability-admin.php:266 wpvulnerability-adminms.php:539 +#: wpvulnerability-schedule.php:323 +msgid "Notifications" +msgstr "Notifications" + +#: wpvulnerability-admin.php:269 wpvulnerability-adminms.php:542 +msgid "Analysis" +msgstr "Analyse" + +#: wpvulnerability-admin.php:272 wpvulnerability-adminms.php:545 +msgid "Logs" +msgstr "Journaux" + +#: wpvulnerability-admin.php:275 wpvulnerability-adminms.php:548 +#: wpvulnerability-sitehealth.php:25 wpvulnerability-sitehealth.php:77 +#: wpvulnerability-sitehealth.php:129 wpvulnerability-sitehealth.php:210 +msgid "Security" +msgstr "Sécurité" + +#: wpvulnerability-admin.php:278 wpvulnerability-adminms.php:551 +msgid "Tools" +msgstr "Outils" + +#: wpvulnerability-admin.php:285 wpvulnerability-adminms.php:558 +msgid "Debug" +msgstr "Débogage" + +#: wpvulnerability-admin.php:290 wpvulnerability-adminms.php:563 +msgid "About" +msgstr "A propos de" + +#: wpvulnerability-admin.php:427 wpvulnerability-adminms.php:700 +msgid "Notification Settings" +msgstr "Paramètres de notification" + +#: wpvulnerability-admin.php:430 wpvulnerability-adminms.php:703 +msgid "Configure how and when you want to receive vulnerability notifications." +msgstr "Configurez comment et quand vous souhaitez recevoir des notifications de vulnérabilité." + +#: wpvulnerability-admin.php:431 wpvulnerability-adminms.php:704 +msgid "" +"Stay informed about security vulnerabilities in your WordPress installation, " +"plugins, themes, and server software." +msgstr "" +"Restez informé des vulnérabilités de sécurité dans votre installation " +"WordPress, vos extensions, thèmes et logiciels serveur." + +#: wpvulnerability-admin.php:438 wpvulnerability-adminms.php:711 +msgid "Cache Expiration Time" +msgstr "Durée d'expiration du cache" + +#: wpvulnerability-admin.php:440 wpvulnerability-admin.php:814 +#: wpvulnerability-adminms.php:713 wpvulnerability-adminms.php:1087 +msgid "FORCED" +msgstr "FORCÉ" + +#: wpvulnerability-admin.php:444 wpvulnerability-adminms.php:717 +msgid "How long to cache vulnerability data before refreshing from the API." +msgstr "Durée de mise en cache des données de vulnérabilité avant actualisation depuis l'API." + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:453 wpvulnerability-admin.php:1891 +#: wpvulnerability-admin.php:3631 wpvulnerability-adminms.php:726 +#: wpvulnerability-adminms.php:2039 wpvulnerability-adminms.php:3825 +#, php-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d heure" +msgstr[1] "%d heures" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:469 wpvulnerability-adminms.php:742 +#, php-format +msgid "" +"You can force the cache time via wp-config.php constant. Learn more →" +msgstr "" +"Vous pouvez forcer la durée du cache via une constante wp-config.php. En savoir plus →" + +#: wpvulnerability-admin.php:481 wpvulnerability-admin.php:3665 +#: wpvulnerability-adminms.php:754 wpvulnerability-adminms.php:3859 +msgid "Notification Frequency" +msgstr "Fréquence de notification" + +#: wpvulnerability-admin.php:484 wpvulnerability-adminms.php:757 +msgid "Choose how often you want to receive vulnerability notifications." +msgstr "" +"Choisissez la fréquence à laquelle vous souhaitez recevoir des notifications " +"de vulnérabilité." + +#: wpvulnerability-admin.php:489 wpvulnerability-adminms.php:762 +msgid "Never - Disable automatic notifications" +msgstr "Jamais - Désactiver les notifications automatiques" + +#: wpvulnerability-admin.php:493 wpvulnerability-adminms.php:766 +msgid "Daily - Receive notifications every day" +msgstr "Quotidien - Recevez des notifications chaque jour" + +#: wpvulnerability-admin.php:497 wpvulnerability-adminms.php:770 +msgid "Weekly - Receive notifications once a week" +msgstr "Hebdomadaire - Recevez des notifications une fois par semaine" + +#: wpvulnerability-admin.php:503 wpvulnerability-adminms.php:776 +msgid "Day:" +msgstr "Jour :" + +#: wpvulnerability-admin.php:505 wpvulnerability-admin.php:1955 +#: wpvulnerability-adminms.php:778 wpvulnerability-adminms.php:2115 +msgid "Monday" +msgstr "Lundi" + +#: wpvulnerability-admin.php:506 wpvulnerability-admin.php:1956 +#: wpvulnerability-adminms.php:779 wpvulnerability-adminms.php:2116 +msgid "Tuesday" +msgstr "Mardi" + +#: wpvulnerability-admin.php:507 wpvulnerability-admin.php:1957 +#: wpvulnerability-adminms.php:780 wpvulnerability-adminms.php:2117 +msgid "Wednesday" +msgstr "Mercredi" + +#: wpvulnerability-admin.php:508 wpvulnerability-admin.php:1958 +#: wpvulnerability-adminms.php:781 wpvulnerability-adminms.php:2118 +msgid "Thursday" +msgstr "Jeudi" + +#: wpvulnerability-admin.php:509 wpvulnerability-admin.php:1959 +#: wpvulnerability-adminms.php:782 wpvulnerability-adminms.php:2119 +msgid "Friday" +msgstr "Vendredi" + +#: wpvulnerability-admin.php:510 wpvulnerability-admin.php:1960 +#: wpvulnerability-adminms.php:783 wpvulnerability-adminms.php:2120 +msgid "Saturday" +msgstr "Samedi" + +#: wpvulnerability-admin.php:511 wpvulnerability-admin.php:1961 +#: wpvulnerability-adminms.php:784 wpvulnerability-adminms.php:2121 +msgid "Sunday" +msgstr "Dimanche" + +#: wpvulnerability-admin.php:515 wpvulnerability-adminms.php:788 +msgid "Time:" +msgstr "Heure :" + +#: wpvulnerability-admin.php:519 wpvulnerability-adminms.php:792 +msgid "(24-hour format, server timezone)" +msgstr "(format 24 heures, fuseau horaire du serveur)" + +#: wpvulnerability-admin.php:528 wpvulnerability-adminms.php:801 +msgid "Notification Channels" +msgstr "Canaux de notification" + +#: wpvulnerability-admin.php:531 wpvulnerability-adminms.php:804 +msgid "Select where you want to receive notifications." +msgstr "Sélectionnez où vous souhaitez recevoir les notifications." + +#: wpvulnerability-admin.php:536 wpvulnerability-admin.php:2011 +#: wpvulnerability-adminms.php:809 wpvulnerability-adminms.php:2169 +msgid "Email" +msgstr "E-mail" + +#: wpvulnerability-admin.php:539 wpvulnerability-adminms.php:812 +msgid "Email Addresses (separated by commas):" +msgstr "Adresses e-mail (séparées par des virgules) :" + +#: wpvulnerability-admin.php:541 wpvulnerability-adminms.php:814 +msgid "Default:" +msgstr "Par défaut :" + +#: wpvulnerability-admin.php:546 wpvulnerability-admin.php:2016 +#: wpvulnerability-adminms.php:819 wpvulnerability-adminms.php:2174 +msgid "Slack" +msgstr "Slack" + +#: wpvulnerability-admin.php:549 wpvulnerability-adminms.php:822 +msgid "Slack Webhook URL:" +msgstr "URL du webhook Slack :" + +#. translators: %s: Slack documentation URL +#: wpvulnerability-admin.php:555 wpvulnerability-adminms.php:828 +#, php-format +msgid "" +"Learn how to " +"create a Slack incoming webhook →" +msgstr "" +"Apprenez à " +"créer un webhook entrant Slack →" + +#: wpvulnerability-admin.php:564 wpvulnerability-admin.php:2021 +#: wpvulnerability-adminms.php:837 wpvulnerability-adminms.php:2179 +msgid "Microsoft Teams" +msgstr "Microsoft Teams" + +#: wpvulnerability-admin.php:567 wpvulnerability-adminms.php:840 +msgid "Teams Webhook URL:" +msgstr "URL du webhook Teams :" + +#. translators: %s: Microsoft Teams documentation URL +#: wpvulnerability-admin.php:573 wpvulnerability-adminms.php:846 +#, php-format +msgid "" +"Learn how to " +"create a Teams incoming webhook →" +msgstr "" +"Apprenez à " +"créer un webhook entrant Teams →" + +#: wpvulnerability-admin.php:582 wpvulnerability-adminms.php:855 +msgid "Discord" +msgstr "Discord" + +#: wpvulnerability-admin.php:585 wpvulnerability-adminms.php:858 +msgid "Discord Webhook URL:" +msgstr "URL du webhook Discord :" + +#. translators: %s: Discord documentation URL +#: wpvulnerability-admin.php:591 wpvulnerability-adminms.php:864 +#, php-format +msgid "" +"Learn how to " +"create a Discord webhook →" +msgstr "" +"Apprenez à " +"créer un webhook Discord →" + +#: wpvulnerability-admin.php:600 wpvulnerability-adminms.php:873 +msgid "Telegram" +msgstr "Telegram" + +#: wpvulnerability-admin.php:603 wpvulnerability-adminms.php:876 +msgid "Telegram Bot Token:" +msgstr "Token du bot Telegram :" + +#: wpvulnerability-admin.php:605 wpvulnerability-adminms.php:878 +msgid "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "Format : 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:607 wpvulnerability-adminms.php:880 +msgid "Telegram Chat ID:" +msgstr "ID du chat Telegram :" + +#. translators: %s: Telegram documentation URL +#: wpvulnerability-admin.php:613 wpvulnerability-adminms.php:886 +#, php-format +msgid "" +"Learn how to " +"create a Telegram bot and get Chat ID →" +msgstr "" +"Apprenez à " +"créer un bot Telegram et obtenir l'ID du chat →" + +#: wpvulnerability-admin.php:623 wpvulnerability-adminms.php:896 +msgid "Save Notification Settings" +msgstr "Enregistrer les paramètres de notification" + +#: wpvulnerability-admin.php:700 wpvulnerability-admin.php:2552 +#: wpvulnerability-adminms.php:973 wpvulnerability-adminms.php:2459 +msgid "WordPress Components" +msgstr "Composants WordPress" + +#: wpvulnerability-admin.php:703 wpvulnerability-admin.php:2560 +#: wpvulnerability-adminms.php:976 wpvulnerability-adminms.php:2467 +msgid "WordPress Core" +msgstr "Cœur WordPress" + +#: wpvulnerability-admin.php:707 wpvulnerability-admin.php:1472 +#: wpvulnerability-admin.php:1573 wpvulnerability-admin.php:2109 +#: wpvulnerability-admin.php:2571 wpvulnerability-adminms.php:980 +#: wpvulnerability-adminms.php:1744 wpvulnerability-adminms.php:1843 +#: wpvulnerability-adminms.php:2266 wpvulnerability-adminms.php:2478 +msgid "Plugins" +msgstr "Extensions" + +#: wpvulnerability-admin.php:711 wpvulnerability-admin.php:1473 +#: wpvulnerability-admin.php:1574 wpvulnerability-admin.php:2114 +#: wpvulnerability-admin.php:2587 wpvulnerability-adminms.php:984 +#: wpvulnerability-adminms.php:1745 wpvulnerability-adminms.php:1844 +#: wpvulnerability-adminms.php:2271 wpvulnerability-adminms.php:2494 +msgid "Themes" +msgstr "Thèmes" + +#: wpvulnerability-admin.php:717 wpvulnerability-adminms.php:990 +msgid "Software & Languages" +msgstr "Logiciels et langages" + +#: wpvulnerability-admin.php:720 wpvulnerability-admin.php:1474 +#: wpvulnerability-admin.php:2119 wpvulnerability-adminms.php:993 +#: wpvulnerability-adminms.php:1746 wpvulnerability-adminms.php:2276 +#: wpvulnerability-sitehealth.php:178 +msgid "PHP" +msgstr "PHP" + +#: wpvulnerability-admin.php:726 wpvulnerability-adminms.php:999 +msgid "Web Servers" +msgstr "Serveurs web" + +#: wpvulnerability-admin.php:729 wpvulnerability-admin.php:1475 +#: wpvulnerability-admin.php:2124 wpvulnerability-adminms.php:1002 +#: wpvulnerability-adminms.php:1747 wpvulnerability-adminms.php:2281 +#: wpvulnerability-sitehealth.php:179 +msgid "Apache HTTPD" +msgstr "Apache HTTPD" + +#: wpvulnerability-admin.php:733 wpvulnerability-admin.php:1476 +#: wpvulnerability-admin.php:2129 wpvulnerability-adminms.php:1006 +#: wpvulnerability-adminms.php:1748 wpvulnerability-adminms.php:2286 +msgid "nginx" +msgstr "nginx" + +#: wpvulnerability-admin.php:739 wpvulnerability-adminms.php:1012 +msgid "Databases" +msgstr "Bases de données" + +#: wpvulnerability-admin.php:742 wpvulnerability-admin.php:1477 +#: wpvulnerability-admin.php:2134 wpvulnerability-adminms.php:1015 +#: wpvulnerability-adminms.php:1749 wpvulnerability-adminms.php:2291 +#: wpvulnerability-sitehealth.php:181 +msgid "MariaDB" +msgstr "MariaDB" + +#: wpvulnerability-admin.php:746 wpvulnerability-admin.php:1478 +#: wpvulnerability-admin.php:2139 wpvulnerability-adminms.php:1019 +#: wpvulnerability-adminms.php:1750 wpvulnerability-adminms.php:2296 +#: wpvulnerability-sitehealth.php:182 +msgid "MySQL" +msgstr "MySQL" + +#: wpvulnerability-admin.php:750 wpvulnerability-admin.php:1483 +#: wpvulnerability-admin.php:2164 wpvulnerability-admin.php:3104 +#: wpvulnerability-adminms.php:1023 wpvulnerability-adminms.php:1755 +#: wpvulnerability-adminms.php:2321 wpvulnerability-adminms.php:3281 +msgid "SQLite" +msgstr "SQLite" + +#: wpvulnerability-admin.php:756 wpvulnerability-adminms.php:1029 +msgid "Additional Tools" +msgstr "Outils supplémentaires" + +#: wpvulnerability-admin.php:759 wpvulnerability-admin.php:1479 +#: wpvulnerability-admin.php:2144 wpvulnerability-admin.php:3101 +#: wpvulnerability-adminms.php:1032 wpvulnerability-adminms.php:1751 +#: wpvulnerability-adminms.php:2301 wpvulnerability-adminms.php:3278 +#: wpvulnerability-sitehealth.php:183 +msgid "ImageMagick" +msgstr "ImageMagick" + +#: wpvulnerability-admin.php:763 wpvulnerability-admin.php:1480 +#: wpvulnerability-admin.php:2149 wpvulnerability-adminms.php:1036 +#: wpvulnerability-adminms.php:1752 wpvulnerability-adminms.php:2306 +#: wpvulnerability-sitehealth.php:184 +msgid "curl" +msgstr "curl" + +#: wpvulnerability-admin.php:767 wpvulnerability-admin.php:1481 +#: wpvulnerability-admin.php:2154 wpvulnerability-adminms.php:1040 +#: wpvulnerability-adminms.php:1753 wpvulnerability-adminms.php:2311 +msgid "memcached" +msgstr "memcached" + +#: wpvulnerability-admin.php:771 wpvulnerability-admin.php:1482 +#: wpvulnerability-admin.php:2159 wpvulnerability-admin.php:3102 +#: wpvulnerability-adminms.php:1044 wpvulnerability-adminms.php:1754 +#: wpvulnerability-adminms.php:2316 wpvulnerability-adminms.php:3279 +msgid "Redis" +msgstr "Redis" + +#: wpvulnerability-admin.php:784 wpvulnerability-adminms.php:1057 +msgid "Component Analysis Settings" +msgstr "Paramètres d'analyse des composants" + +#: wpvulnerability-admin.php:787 wpvulnerability-adminms.php:1060 +msgid "Enable or disable vulnerability analysis for specific components." +msgstr "Activez ou désactivez l'analyse de vulnérabilités pour des composants spécifiques." + +#: wpvulnerability-admin.php:788 wpvulnerability-adminms.php:1061 +msgid "" +"Check the components you want to HIDE from vulnerability scans and reports. " +"Unchecked components will be actively analyzed. Components with active " +"analysis are shown in green, hidden components in red." +msgstr "" +"Cochez les composants que vous souhaitez MASQUER des analyses et rapports de " +"vulnérabilités. Les composants non cochés seront activement analysés. Les " +"composants avec analyse active sont affichés en vert, les composants masqués en rouge." + +#: wpvulnerability-admin.php:820 wpvulnerability-adminms.php:1093 +msgid "Hidden (forced by constant)" +msgstr "Masqué (forcé par constante)" + +#: wpvulnerability-admin.php:823 wpvulnerability-adminms.php:1096 +msgid "🔴 Analysis disabled" +msgstr "🔴 Analyse désactivée" + +#: wpvulnerability-admin.php:826 wpvulnerability-adminms.php:1099 +msgid "🟢 Analysis active" +msgstr "🟢 Analyse active" + +#: wpvulnerability-admin.php:848 wpvulnerability-adminms.php:1121 +msgid "Tip:" +msgstr "Astuce :" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:852 wpvulnerability-adminms.php:1125 +#, php-format +msgid "" +"You can force-disable components via wp-config.php constants. Learn more about force-hiding " +"checks →" +msgstr "" +"Vous pouvez forcer la désactivation de composants via des constantes wp-config.php. En savoir plus sur le masquage forcé " +"des vérifications →" + +#: wpvulnerability-admin.php:860 wpvulnerability-adminms.php:1133 +msgid "Save Analysis Settings" +msgstr "Enregistrer les paramètres d'analyse" + +#: wpvulnerability-admin.php:920 wpvulnerability-adminms.php:1193 +msgid "« Previous" +msgstr "« Précédent" + +#: wpvulnerability-admin.php:921 wpvulnerability-adminms.php:1194 +msgid "Next »" +msgstr "Suivant »" + +#: wpvulnerability-admin.php:932 wpvulnerability-adminms.php:1205 +msgid "Log entry not found or has been removed." +msgstr "L'entrée du journal n'a pas été trouvée ou a été retirée." + +#: wpvulnerability-admin.php:935 wpvulnerability-adminms.php:1208 +msgid "Unable to load the requested log entry." +msgstr "Impossible de charger l'entrée de journal demandée." + +#: wpvulnerability-admin.php:945 wpvulnerability-adminms.php:1218 +msgid "Log Configuration" +msgstr "Configuration du journal" + +#: wpvulnerability-admin.php:950 wpvulnerability-adminms.php:1223 +msgid "Total Logs" +msgstr "Total des journaux" + +#: wpvulnerability-admin.php:954 wpvulnerability-adminms.php:1227 +msgid "Retention Period" +msgstr "Période de rétention" + +#: wpvulnerability-admin.php:959 wpvulnerability-admin.php:1301 +#: wpvulnerability-admin.php:3029 wpvulnerability-admin.php:3043 +#: wpvulnerability-admin.php:3475 wpvulnerability-admin.php:3483 +#: wpvulnerability-adminms.php:1232 wpvulnerability-adminms.php:1574 +#: wpvulnerability-adminms.php:3206 wpvulnerability-adminms.php:3220 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Disabled" +msgstr "Désactivé" + +#. translators: %d: Number of days. +#. translators: %d: number of days +#: wpvulnerability-admin.php:962 wpvulnerability-admin.php:984 +#: wpvulnerability-admin.php:3641 wpvulnerability-adminms.php:1235 +#: wpvulnerability-adminms.php:1257 wpvulnerability-adminms.php:3835 +#, php-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d jour" +msgstr[1] "%d jours" + +#: wpvulnerability-admin.php:975 wpvulnerability-adminms.php:1248 +msgid "Log Retention Period" +msgstr "Période de rétention des journaux" + +#: wpvulnerability-admin.php:981 wpvulnerability-adminms.php:1254 +msgid "None (Disabled)" +msgstr "Aucune (Désactivée)" + +#: wpvulnerability-admin.php:1004 wpvulnerability-adminms.php:1277 +msgid "" +"This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant." +msgstr "" +"Cette valeur est forcée par la constante WPVULNERABILITY_LOG_RETENTION_DAYS." + +#: wpvulnerability-admin.php:1009 wpvulnerability-adminms.php:1282 +msgid "" +"Choose how long WPVulnerability should keep API response logs. Older logs " +"are automatically deleted." +msgstr "" +"Choisissez la durée de conservation des journaux de réponses API par WPVulnerability. " +"Les journaux plus anciens sont automatiquement supprimés." + +#: wpvulnerability-admin.php:1013 wpvulnerability-adminms.php:1286 +msgid "Save Configuration" +msgstr "Enregistrer la configuration" + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "Log retention is currently disabled." +msgstr "La rétention des journaux est actuellement désactivée." + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "API responses are not being saved." +msgstr "Les réponses API ne sont pas enregistrées." + +#: wpvulnerability-admin.php:1031 wpvulnerability-adminms.php:1304 +msgid "Log Details" +msgstr "Détails du journal" + +#: wpvulnerability-admin.php:1035 wpvulnerability-admin.php:1104 +#: wpvulnerability-adminms.php:1308 wpvulnerability-adminms.php:1377 +msgid "Date" +msgstr "Date" + +#: wpvulnerability-admin.php:1039 wpvulnerability-admin.php:1105 +#: wpvulnerability-adminms.php:1312 wpvulnerability-adminms.php:1378 +msgid "API Endpoint" +msgstr "Point de terminaison API" + +#: wpvulnerability-admin.php:1044 wpvulnerability-adminms.php:1317 +msgid "API Response" +msgstr "Réponse API" + +#: wpvulnerability-admin.php:1049 wpvulnerability-adminms.php:1322 +msgid "Back to Logs" +msgstr "Retour aux journaux" + +#: wpvulnerability-admin.php:1058 wpvulnerability-adminms.php:1331 +msgid "No logs available" +msgstr "Aucun journal disponible" + +#: wpvulnerability-admin.php:1059 wpvulnerability-adminms.php:1332 +msgid "API response logs will appear here once the vulnerability scanner runs." +msgstr "Les journaux de réponses API apparaîtront ici une fois que le scanner de vulnérabilités sera exécuté." + +#: wpvulnerability-admin.php:1063 wpvulnerability-adminms.php:1336 +msgid "API Response Logs" +msgstr "Journaux de réponses API" + +#: wpvulnerability-admin.php:1073 wpvulnerability-adminms.php:1346 +msgid "Show:" +msgstr "Afficher :" + +#: wpvulnerability-admin.php:1082 wpvulnerability-adminms.php:1355 +msgid "Apply" +msgstr "Appliquer" + +#. translators: 1: first item, 2: last item, 3: total items +#: wpvulnerability-admin.php:1090 wpvulnerability-adminms.php:1363 +#, php-format +msgid "Showing %1$s–%2$s of %3$s" +msgstr "Affichage de %1$s–%2$s sur %3$s" + +#: wpvulnerability-admin.php:1106 wpvulnerability-adminms.php:1379 +msgid "Actions" +msgstr "Actions" + +#: wpvulnerability-admin.php:1133 wpvulnerability-admin.php:3957 +#: wpvulnerability-adminms.php:1406 wpvulnerability-adminms.php:4151 +msgid "View" +msgstr "Voir" + +#: wpvulnerability-admin.php:1150 wpvulnerability-adminms.php:1423 +msgid "Danger Zone" +msgstr "Zone dangereuse" + +#: wpvulnerability-admin.php:1152 wpvulnerability-adminms.php:1425 +msgid "Permanently delete all API response logs. This action cannot be undone." +msgstr "Supprimer définitivement tous les journaux de réponses API. Cette action est irréversible." + +#: wpvulnerability-admin.php:1154 wpvulnerability-adminms.php:1427 +msgid "Are you sure you want to delete all logs? This action cannot be undone." +msgstr "Êtes-vous sûr de vouloir supprimer tous les journaux ? Cette action est irréversible." + +#: wpvulnerability-admin.php:1157 wpvulnerability-adminms.php:1430 +msgid "Delete All Logs" +msgstr "Supprimer tous les journaux" + +#: wpvulnerability-admin.php:1201 wpvulnerability-adminms.php:1474 +msgid "Reload Data from API" +msgstr "Recharger les données depuis l'API" + +#: wpvulnerability-admin.php:1204 wpvulnerability-adminms.php:1477 +msgid "" +"Reload all Core, Plugins, Themes and other components information directly " +"from the API to have updated data. This will clear the cache and fetch fresh " +"vulnerability information." +msgstr "" +"Rechargez toutes les informations sur le Cœur, les Extensions, les Thèmes et " +"les autres composants directement depuis l'API pour avoir des données à jour. " +"Cela effacera le cache et récupérera les dernières informations de vulnérabilité." + +#: wpvulnerability-admin.php:1209 wpvulnerability-adminms.php:1482 +msgid "Reload Data" +msgstr "Recharger les données" + +#: wpvulnerability-admin.php:1218 wpvulnerability-adminms.php:1491 +msgid "Test Email Notifications" +msgstr "Tester les notifications par e-mail" + +#: wpvulnerability-admin.php:1221 wpvulnerability-adminms.php:1494 +msgid "" +"Send a test email notification with current vulnerability data to verify " +"your email configuration is working correctly." +msgstr "" +"Envoyez une notification e-mail de test avec les données de vulnérabilité actuelles " +"pour vérifier que votre configuration e-mail fonctionne correctement." + +#: wpvulnerability-admin.php:1231 wpvulnerability-adminms.php:1504 +msgid "From address (configured via constant):" +msgstr "Adresse d'expédition (configurée via constante) :" + +#: wpvulnerability-admin.php:1243 wpvulnerability-adminms.php:1516 +msgid "From address (default):" +msgstr "Adresse d'expédition (par défaut) :" + +#: wpvulnerability-admin.php:1252 wpvulnerability-adminms.php:1525 +msgid "Learn how to customize the email sender address →" +msgstr "Apprenez à personnaliser l'adresse d'expédition des e-mails →" + +#: wpvulnerability-admin.php:1258 wpvulnerability-adminms.php:1531 +msgid "Send Test Email" +msgstr "Envoyer un e-mail de test" + +#: wpvulnerability-admin.php:1267 wpvulnerability-adminms.php:1540 +msgid "WP-Cron Status" +msgstr "État du WP-Cron" + +#: wpvulnerability-admin.php:1270 wpvulnerability-adminms.php:1543 +msgid "" +"View and manage WP-Cron scheduled events. Compare expected schedules with " +"actual cron jobs to ensure automated tasks are running correctly." +msgstr "" +"Consultez et gérez les événements planifiés WP-Cron. Comparez les planifications " +"attendues avec les tâches cron réelles pour vous assurer que les tâches automatisées " +"s'exécutent correctement." + +#: wpvulnerability-admin.php:1275 wpvulnerability-adminms.php:1548 +msgid "No cron data available." +msgstr "Aucune donnée cron disponible." + +#: wpvulnerability-admin.php:1281 wpvulnerability-adminms.php:1554 +msgid "Hook" +msgstr "Hook" + +#: wpvulnerability-admin.php:1282 wpvulnerability-adminms.php:1555 +msgid "Expected" +msgstr "Attendu" + +#: wpvulnerability-admin.php:1283 wpvulnerability-adminms.php:1556 +msgid "Found" +msgstr "Trouvé" + +#: wpvulnerability-admin.php:1284 wpvulnerability-adminms.php:1557 +msgid "Next Run" +msgstr "Prochaine exécution" + +#: wpvulnerability-admin.php:1285 wpvulnerability-admin.php:3236 +#: wpvulnerability-admin.php:3559 wpvulnerability-adminms.php:1558 +#: wpvulnerability-adminms.php:3413 wpvulnerability-adminms.php:3753 +msgid "Status" +msgstr "Statut" + +#: wpvulnerability-admin.php:1299 wpvulnerability-adminms.php:1572 +msgid "Not expected" +msgstr "Non attendu" + +#: wpvulnerability-admin.php:1321 wpvulnerability-adminms.php:1594 +#: wpvulnerability-general.php:1871 wpvulnerability-general.php:1872 +msgid "None" +msgstr "Aucune" + +#: wpvulnerability-admin.php:1356 wpvulnerability-adminms.php:1629 +msgid "OK" +msgstr "OK" + +#: wpvulnerability-admin.php:1366 wpvulnerability-adminms.php:1639 +msgid "⚠️ Unexpected WPVulnerability Events" +msgstr "⚠️ Événements WPVulnerability inattendus" + +#: wpvulnerability-admin.php:1383 wpvulnerability-adminms.php:1656 +msgid "No interval" +msgstr "Aucun intervalle" + +#: wpvulnerability-admin.php:1390 wpvulnerability-adminms.php:1663 +msgid "Next:" +msgstr "Suivant :" + +#: wpvulnerability-admin.php:1400 wpvulnerability-adminms.php:1673 +msgid "Repair Cron Events" +msgstr "Réparer les événements cron" + +#: wpvulnerability-admin.php:1408 wpvulnerability-adminms.php:1681 +msgid "Uninstall Data" +msgstr "Données de désinstallation" + +#: wpvulnerability-admin.php:1410 wpvulnerability-adminms.php:1683 +msgid "" +"By default, all plugin data is preserved when WPVulnerability is deleted. " +"Enable the option below only if you want all options, logs, and cached data " +"permanently removed on uninstall." +msgstr "" +"Par défaut, toutes les données du plugin sont conservées lors de la suppression de " +"WPVulnerability. Activez l'option ci-dessous uniquement si vous souhaitez que toutes " +"les options, journaux et données en cache soient définitivement supprimés lors de la désinstallation." + +#: wpvulnerability-admin.php:1420 wpvulnerability-adminms.php:1693 +msgid "Delete all plugin data on uninstall" +msgstr "Supprimer toutes les données du plugin lors de la désinstallation" + +#: wpvulnerability-admin.php:1423 wpvulnerability-adminms.php:1696 +msgid "" +"Default: unchecked (data preserved). Check only if you want a clean removal." +msgstr "" +"Par défaut : décoché (données conservées). Cochez uniquement si vous souhaitez une suppression propre." + +#: wpvulnerability-admin.php:1425 wpvulnerability-adminms.php:1698 +msgid "Save preference" +msgstr "Enregistrer la préférence" + +#: wpvulnerability-admin.php:1432 wpvulnerability-adminms.php:1705 +msgid "Reset WPVulnerability" +msgstr "Réinitialiser WPVulnerability" + +#: wpvulnerability-admin.php:1434 wpvulnerability-adminms.php:1707 +msgid "" +"Delete all WPVulnerability settings, cached data, logs, and scheduled " +"events, then restore defaults and reload data from the API." +msgstr "" +"Supprimez tous les paramètres, données en cache, journaux et événements planifiés " +"de WPVulnerability, puis restaurez les valeurs par défaut et rechargez les données depuis l'API." + +#: wpvulnerability-admin.php:1436 wpvulnerability-adminms.php:1709 +msgid "This action cannot be undone." +msgstr "Cette action est irréversible." + +#: wpvulnerability-admin.php:1438 wpvulnerability-adminms.php:1711 +msgid "" +"Are you sure you want to reset all WPVulnerability data? This action cannot " +"be undone." +msgstr "" +"Êtes-vous sûr de vouloir réinitialiser toutes les données WPVulnerability ? " +"Cette action est irréversible." + +#: wpvulnerability-admin.php:1441 wpvulnerability-adminms.php:1713 +msgid "Reset Plugin" +msgstr "Réinitialiser le plugin" + +#: wpvulnerability-admin.php:1468 wpvulnerability-adminms.php:1740 +msgid "Vulnerability Database Statistics" +msgstr "Statistiques de la base de données de vulnérabilités" + +#. translators: number of vulnerabilities. +#: wpvulnerability-admin.php:1510 wpvulnerability-adminms.php:1782 +#, php-format +msgid "%s vulnerability" +msgid_plural "%s vulnerabilities" +msgstr[0] "%s vulnérabilité" +msgstr[1] "%s vulnérabilités" + +#. translators: number of products. +#: wpvulnerability-admin.php:1520 wpvulnerability-adminms.php:1792 +#, php-format +msgid "(%s product)" +msgid_plural "(%s products)" +msgstr[0] "(%s produit)" +msgstr[1] "(%s produits)" + +#: wpvulnerability-admin.php:1527 wpvulnerability-adminms.php:1799 +msgid "No data" +msgstr "Aucune donnée" + +#. translators: date of last update. +#: wpvulnerability-admin.php:1544 wpvulnerability-adminms.php:1814 +#, php-format +msgid "Database last updated: %s" +msgstr "Dernière mise à jour de la base de données : %s" + +#: wpvulnerability-admin.php:1566 wpvulnerability-adminms.php:1836 +msgid "Intelligence Sources" +msgstr "Sources de renseignement" + +#: wpvulnerability-admin.php:1567 wpvulnerability-adminms.php:1837 +msgid "Number of vulnerabilities contributed by each intelligence source." +msgstr "Nombre de vulnérabilités contribuées par chaque source de renseignement." + +#: wpvulnerability-admin.php:1571 wpvulnerability-adminms.php:1841 +msgid "Source" +msgstr "Source" + +#: wpvulnerability-admin.php:1572 wpvulnerability-admin.php:2104 +#: wpvulnerability-adminms.php:1842 wpvulnerability-adminms.php:2261 +msgid "Core" +msgstr "Cœur" + +#: wpvulnerability-admin.php:1603 wpvulnerability-adminms.php:1873 +msgid "Sponsors" +msgstr "Sponsors" + +#: wpvulnerability-admin.php:1626 wpvulnerability-adminms.php:1896 +msgid "No sponsor data available." +msgstr "Aucune donnée de sponsor disponible." + +#: wpvulnerability-admin.php:1633 wpvulnerability-adminms.php:1903 +msgid "Contributors" +msgstr "Contributeurs/contributrices" + +#: wpvulnerability-admin.php:1656 wpvulnerability-adminms.php:1926 +msgid "No contributor data available." +msgstr "Aucune donnée de contributeur disponible." + +#: wpvulnerability-admin.php:1674 wpvulnerability-adminms.php:432 +msgid "You do not have sufficient permissions to access this page." +msgstr "Vous n'avez pas les permissions suffisantes pour accéder à cette page." + +#: wpvulnerability-admin.php:1684 wpvulnerability-adminms.php:441 +msgid "WPVulnerability settings" +msgstr "Réglages de WPVulnerability" + +#: wpvulnerability-admin.php:1801 wpvulnerability-adminms.php:1963 +msgid "Configure and save these settings to receive notifications." +msgstr "Configurez et enregistrez ces paramètres pour recevoir des notifications." + +#: wpvulnerability-admin.php:1814 wpvulnerability-adminms.php:2071 +msgid "Configure and save these settings to hide vulnerabilities." +msgstr "" +"Configurez et enregistrez ces réglages pour masquer les vulnérabilités." + +#: wpvulnerability-admin.php:1845 wpvulnerability-adminms.php:1993 +msgid "Default administrator email" +msgstr "E-mail de l'administrateur par défaut" + +#: wpvulnerability-admin.php:1909 wpvulnerability-adminms.php:2057 +msgid "Read more if you want to force the cache time." +msgstr "" +"Veuillez lire la suite si vous souhaitez forcer le délai de mise en cache." + +#: wpvulnerability-admin.php:1939 wpvulnerability-adminms.php:2099 +msgid "Never" +msgstr "Jamais" + +#: wpvulnerability-admin.php:1944 wpvulnerability-adminms.php:2104 +msgid "Daily" +msgstr "Quotidienne" + +#: wpvulnerability-admin.php:1949 wpvulnerability-adminms.php:2109 +msgid "Weekly" +msgstr "Hebdomadaire" + +#: wpvulnerability-admin.php:1953 wpvulnerability-adminms.php:2113 +msgid "Day" +msgstr "Jour" + +#: wpvulnerability-admin.php:1966 wpvulnerability-adminms.php:2126 +msgid "Hour" +msgstr "Heure" + +#: wpvulnerability-admin.php:1968 wpvulnerability-adminms.php:2128 +msgid "Minute" +msgstr "Minute" + +#: wpvulnerability-admin.php:2166 wpvulnerability-adminms.php:2323 +msgid "Read more about how to force the deactivation of an item." +msgstr "" +"En savoir plus sur comment procéder à la désactivation forcée d'un élément." + +#: wpvulnerability-admin.php:2292 wpvulnerability-adminms.php:2870 +msgid "" +"Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com" +msgstr "" +"URL de webhook Slack invalide. Doit être une URL HTTPS valide de hooks.slack.com" + +#: wpvulnerability-admin.php:2315 wpvulnerability-adminms.php:2893 +msgid "" +"Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office." +"com, office365.com, or api.hooks.microsoft.com" +msgstr "" +"URL de webhook Microsoft Teams invalide. Doit être une URL HTTPS valide de office." +"com, office365.com ou api.hooks.microsoft.com" + +#: wpvulnerability-admin.php:2338 wpvulnerability-adminms.php:2916 +msgid "" +"Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or " +"discordapp.com" +msgstr "" +"URL de webhook Discord invalide. Doit être une URL HTTPS valide de discord.com ou " +"discordapp.com" + +#: wpvulnerability-admin.php:2357 wpvulnerability-adminms.php:2935 +msgid "" +"Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-" +"zyx57W2v1u123ew11" +msgstr "" +"Format de token de bot Telegram invalide. Doit être de type : 123456:ABC-DEF1234ghIkl-" +"zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:2493 wpvulnerability-adminms.php:2400 +msgid "All Clear" +msgstr "Tout est en ordre" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2503 wpvulnerability-adminms.php:2410 +#, php-format +msgid "%d Critical Issue Found" +msgid_plural "%d Critical Issues Found" +msgstr[0] "%d problème critique trouvé" +msgstr[1] "%d problèmes critiques trouvés" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2508 wpvulnerability-adminms.php:2415 +#, php-format +msgid "%d Issue Found" +msgid_plural "%d Issues Found" +msgstr[0] "%d problème trouvé" +msgstr[1] "%d problèmes trouvés" + +#: wpvulnerability-admin.php:2515 wpvulnerability-adminms.php:2422 +msgid "Never checked" +msgstr "Jamais vérifié" + +#. translators: %d: number of minutes +#: wpvulnerability-admin.php:2523 wpvulnerability-adminms.php:2430 +#, php-format +msgid "%d minute ago" +msgid_plural "%d minutes ago" +msgstr[0] "il y a %d minute" +msgstr[1] "il y a %d minutes" + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:2527 wpvulnerability-adminms.php:2434 +#, php-format +msgid "%d hour ago" +msgid_plural "%d hours ago" +msgstr[0] "il y a %d heure" +msgstr[1] "il y a %d heures" + +#. translators: %s: time since last check +#: wpvulnerability-admin.php:2539 wpvulnerability-adminms.php:2446 +#, php-format +msgid "Last checked: %s" +msgstr "Dernière vérification : %s" + +#: wpvulnerability-admin.php:2540 wpvulnerability-adminms.php:2447 +msgid "Refresh Now" +msgstr "Actualiser maintenant" + +#: wpvulnerability-admin.php:2547 wpvulnerability-adminms.php:2454 +msgid "No vulnerabilities detected" +msgstr "Aucune vulnérabilité détectée" + +#: wpvulnerability-admin.php:2548 wpvulnerability-adminms.php:2455 +msgid "Your site is up to date and secure" +msgstr "Votre site est à jour et sécurisé" + +#: wpvulnerability-admin.php:2616 wpvulnerability-adminms.php:2523 +msgid "Server Software" +msgstr "Logiciels serveur" + +#: wpvulnerability-admin.php:2829 wpvulnerability-adminms.php:2736 +msgid "Site Health" +msgstr "Santé du site" + +#: wpvulnerability-admin.php:2831 wpvulnerability-adminms.php:2738 +#: wpvulnerability-run.php:33 +msgid "Settings" +msgstr "Réglages" + +#: wpvulnerability-admin.php:2846 wpvulnerability-adminms.php:2754 +msgid "WPVulnerability Status" +msgstr "État de WPVulnerability" + +#: wpvulnerability-admin.php:2878 wpvulnerability-adminms.php:3052 +msgid "Receive vulnerability notifications" +msgstr "Recevoir des notifications de vulnérabilité" + +#: wpvulnerability-admin.php:2886 wpvulnerability-adminms.php:3060 +msgid "Cache expiration time" +msgstr "Délai d'expiration du cache" + +#: wpvulnerability-admin.php:2895 wpvulnerability-adminms.php:3069 +msgid "How often you want to receive notifications" +msgstr "Fréquence de réception des notifications" + +#: wpvulnerability-admin.php:2904 wpvulnerability-adminms.php:3078 +msgid "Where do you want to receive notifications?" +msgstr "Où souhaitez-vous recevoir les notifications ?" + +#: wpvulnerability-admin.php:2913 wpvulnerability-adminms.php:3087 +msgid "Email addresses to notify (separated by commas)" +msgstr "Adresses e-mail à notifier (séparées par des virgules)" + +#: wpvulnerability-admin.php:2922 wpvulnerability-adminms.php:3096 +msgid "Slack webhook URL" +msgstr "URL du webhook Slack" + +#: wpvulnerability-admin.php:2931 wpvulnerability-adminms.php:3105 +msgid "Teams webhook URL" +msgstr "URL du webhook Teams" + +#: wpvulnerability-admin.php:2950 wpvulnerability-adminms.php:3126 +msgid "Vulnerabilities to hide" +msgstr "Vulnérabilités à masquer" + +#: wpvulnerability-admin.php:2958 wpvulnerability-adminms.php:3134 +msgid "What do you want to hide?" +msgstr "Que souhaitez-vous masquer ?" + +#: wpvulnerability-admin.php:3008 wpvulnerability-adminms.php:3185 +msgid "Standard (Hybrid Detection)" +msgstr "Standard (Détection hybride)" + +#: wpvulnerability-admin.php:3009 wpvulnerability-adminms.php:3186 +msgid "Strict (Extensions Only)" +msgstr "Strict (Extensions uniquement)" + +#: wpvulnerability-admin.php:3010 wpvulnerability-adminms.php:3187 +msgid "Disabled (No Detection)" +msgstr "Désactivé (Aucune détection)" + +#: wpvulnerability-admin.php:3016 wpvulnerability-adminms.php:3193 +msgid "Security Status" +msgstr "État de sécurité" + +#: wpvulnerability-admin.php:3020 wpvulnerability-adminms.php:3197 +msgid "Security Mode" +msgstr "Mode de sécurité" + +#: wpvulnerability-admin.php:3025 wpvulnerability-adminms.php:3202 +msgid "Shell Execution" +msgstr "Exécution shell" + +#: wpvulnerability-admin.php:3027 wpvulnerability-admin.php:3475 +#: wpvulnerability-admin.php:3483 wpvulnerability-adminms.php:3204 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Enabled" +msgstr "Activé" + +#: wpvulnerability-admin.php:3034 wpvulnerability-adminms.php:3211 +msgid "Audit Logging" +msgstr "Journal d'audit" + +#. translators: %d: number of days +#: wpvulnerability-admin.php:3039 wpvulnerability-adminms.php:3216 +#, php-format +msgid "Enabled (%d days)" +msgstr "Activé (%d jours)" + +#: wpvulnerability-admin.php:3048 wpvulnerability-adminms.php:3225 +msgid "Total Log Entries" +msgstr "Total des entrées de journal" + +#: wpvulnerability-admin.php:3055 wpvulnerability-adminms.php:3232 +msgid "Last Shell Execution" +msgstr "Dernière exécution shell" + +#. translators: %s: time ago +#: wpvulnerability-admin.php:3061 wpvulnerability-admin.php:3266 +#: wpvulnerability-adminms.php:3238 wpvulnerability-adminms.php:3441 +#, php-format +msgid "%s ago" +msgstr "il y a %s" + +#: wpvulnerability-admin.php:3073 wpvulnerability-adminms.php:3250 +msgid "" +"Configure security settings via wp-config.php constants: " +"WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, " +"WPVULNERABILITY_SHELL_EXEC_WHITELIST." +msgstr "" +"Configurez les paramètres de sécurité via les constantes wp-config.php : " +"WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, " +"WPVULNERABILITY_SHELL_EXEC_WHITELIST." + +#. translators: %s: URL to security documentation +#: wpvulnerability-admin.php:3079 wpvulnerability-adminms.php:3256 +#, php-format +msgid "" +"See security " +"configuration documentation for details." +msgstr "" +"Consultez la documentation " +"de configuration de sécurité pour plus de détails." + +#: wpvulnerability-admin.php:3103 wpvulnerability-adminms.php:3280 +msgid "Memcached" +msgstr "Memcached" + +#: wpvulnerability-admin.php:3131 wpvulnerability-adminms.php:3308 +msgid "Imagick Extension" +msgstr "Extension Imagick" + +#: wpvulnerability-admin.php:3132 wpvulnerability-adminms.php:3309 +msgid "Redis Extension" +msgstr "Extension Redis" + +#: wpvulnerability-admin.php:3133 wpvulnerability-adminms.php:3310 +msgid "Memcached Extension" +msgstr "Extension Memcached" + +#: wpvulnerability-admin.php:3134 wpvulnerability-adminms.php:3311 +msgid "Memcache Extension" +msgstr "Extension Memcache" + +#: wpvulnerability-admin.php:3135 wpvulnerability-adminms.php:3312 +msgid "SQLite3 Extension" +msgstr "Extension SQLite3" + +#: wpvulnerability-admin.php:3136 wpvulnerability-adminms.php:3313 +msgid "PDO SQLite" +msgstr "PDO SQLite" + +#: wpvulnerability-admin.php:3137 wpvulnerability-adminms.php:3314 +msgid "Shell Command" +msgstr "Commande shell" + +#: wpvulnerability-admin.php:3138 wpvulnerability-adminms.php:3315 +msgid "Binary Check" +msgstr "Vérification binaire" + +#: wpvulnerability-admin.php:3139 wpvulnerability-adminms.php:3316 +msgid "Not Detected" +msgstr "Non détecté" + +#: wpvulnerability-admin.php:3143 wpvulnerability-adminms.php:3320 +msgid "Software Detection Methods" +msgstr "Méthodes de détection des logiciels" + +#: wpvulnerability-admin.php:3144 wpvulnerability-adminms.php:3321 +msgid "" +"Shows which detection method was used for each software component and the " +"reliability score." +msgstr "" +"Affiche la méthode de détection utilisée pour chaque composant logiciel et " +"le score de fiabilité." + +#: wpvulnerability-admin.php:3149 wpvulnerability-admin.php:3234 +#: wpvulnerability-admin.php:3558 wpvulnerability-adminms.php:3326 +#: wpvulnerability-adminms.php:3411 wpvulnerability-adminms.php:3752 +msgid "Component" +msgstr "Composant" + +#: wpvulnerability-admin.php:3150 wpvulnerability-adminms.php:3327 +msgid "Version" +msgstr "Version" + +#: wpvulnerability-admin.php:3151 wpvulnerability-adminms.php:3328 +msgid "Detection Method" +msgstr "Méthode de détection" + +#: wpvulnerability-admin.php:3152 wpvulnerability-adminms.php:3329 +msgid "Reliability" +msgstr "Fiabilité" + +#: wpvulnerability-admin.php:3164 wpvulnerability-adminms.php:3341 +msgid "Not detected" +msgstr "Non détecté" + +#: wpvulnerability-admin.php:3220 wpvulnerability-adminms.php:3397 +msgid "Shell Execution Audit Logs" +msgstr "Journaux d'audit d'exécution shell" + +#: wpvulnerability-admin.php:3221 wpvulnerability-adminms.php:3398 +msgid "" +"Complete audit trail of shell command executions for security monitoring." +msgstr "" +"Piste d'audit complète des exécutions de commandes shell pour la surveillance de sécurité." + +#: wpvulnerability-admin.php:3226 wpvulnerability-adminms.php:3403 +msgid "No shell execution logs found." +msgstr "Aucun journal d'exécution shell trouvé." + +#: wpvulnerability-admin.php:3227 wpvulnerability-adminms.php:3404 +msgid "" +"Logs will appear here when shell commands are executed for software " +"detection." +msgstr "" +"Les journaux apparaîtront ici lors de l'exécution de commandes shell pour " +"la détection de logiciels." + +#: wpvulnerability-admin.php:3233 wpvulnerability-adminms.php:3410 +msgid "Time" +msgstr "Heure" + +#: wpvulnerability-admin.php:3235 wpvulnerability-adminms.php:3412 +msgid "Command" +msgstr "Commande" + +#: wpvulnerability-admin.php:3237 wpvulnerability-adminms.php:3414 +msgid "User" +msgstr "Utilisateur" + +#: wpvulnerability-admin.php:3238 wpvulnerability-adminms.php:3415 +msgid "Output" +msgstr "Sortie" + +#. translators: %d: number of logs shown +#: wpvulnerability-admin.php:3302 wpvulnerability-adminms.php:3477 +#, php-format +msgid "Showing the %d most recent log entries." +msgstr "Affichage des %d entrées de journal les plus récentes." + +#: wpvulnerability-admin.php:3320 wpvulnerability-adminms.php:3565 +msgid "Invalid nonce." +msgstr "Nonce invalide." + +#: wpvulnerability-admin.php:3325 wpvulnerability-adminms.php:3570 +msgid "Insufficient permissions." +msgstr "Permissions insuffisantes." + +#: wpvulnerability-admin.php:3331 wpvulnerability-adminms.php:3576 +msgid "No component specified." +msgstr "Aucun composant spécifié." + +#: wpvulnerability-admin.php:3366 wpvulnerability-adminms.php:3524 +msgid "Debug Information" +msgstr "Informations de débogage" + +#: wpvulnerability-admin.php:3368 wpvulnerability-adminms.php:3526 +msgid "This tab is only visible when WP_DEBUG is enabled. Use with caution." +msgstr "Cet onglet n'est visible que lorsque WP_DEBUG est activé. À utiliser avec précaution." + +#: wpvulnerability-admin.php:3429 wpvulnerability-adminms.php:3623 +msgid "System Information" +msgstr "Informations système" + +#: wpvulnerability-admin.php:3433 wpvulnerability-adminms.php:3627 +msgid "WordPress Version" +msgstr "Version de WordPress" + +#: wpvulnerability-admin.php:3437 wpvulnerability-adminms.php:3631 +msgid "Multisite" +msgstr "Multisite" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "Yes" +msgstr "Oui" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "No" +msgstr "Non" + +#: wpvulnerability-admin.php:3441 wpvulnerability-adminms.php:3635 +msgid "Language" +msgstr "Langue" + +#: wpvulnerability-admin.php:3445 wpvulnerability-adminms.php:3639 +msgid "PHP Version" +msgstr "Version PHP" + +#: wpvulnerability-admin.php:3449 wpvulnerability-adminms.php:3643 +msgid "PHP Extensions" +msgstr "Extensions PHP" + +#: wpvulnerability-admin.php:3460 wpvulnerability-adminms.php:3654 +msgid "PHP Memory Limit" +msgstr "Limite mémoire PHP" + +#: wpvulnerability-admin.php:3464 wpvulnerability-adminms.php:3658 +msgid "Database" +msgstr "Base de données" + +#: wpvulnerability-admin.php:3468 wpvulnerability-adminms.php:3662 +msgid "Web Server" +msgstr "Serveur web" + +#: wpvulnerability-admin.php:3472 wpvulnerability-adminms.php:3666 +msgid "WP_DEBUG" +msgstr "WP_DEBUG" + +#: wpvulnerability-admin.php:3480 wpvulnerability-adminms.php:3674 +msgid "WP_DEBUG_LOG" +msgstr "WP_DEBUG_LOG" + +#: wpvulnerability-admin.php:3490 wpvulnerability-adminms.php:3684 +msgid "Path:" +msgstr "Chemin :" + +#. translators: %s: file size +#: wpvulnerability-admin.php:3499 wpvulnerability-adminms.php:3698 +#, php-format +msgid "Size: %s" +msgstr "Taille : %s" + +#: wpvulnerability-admin.php:3510 wpvulnerability-adminms.php:3704 +msgid "View Log File" +msgstr "Voir le fichier journal" + +#: wpvulnerability-admin.php:3516 wpvulnerability-adminms.php:3710 +msgid "Log file is not web-accessible (outside wp-content)" +msgstr "Le fichier journal n'est pas accessible par le web (en dehors de wp-content)" + +#: wpvulnerability-admin.php:3522 wpvulnerability-adminms.php:3716 +msgid "Log file does not exist yet" +msgstr "Le fichier journal n'existe pas encore" + +#: wpvulnerability-admin.php:3530 wpvulnerability-adminms.php:3724 +msgid "Plugin Version" +msgstr "Version du plugin" + +#: wpvulnerability-admin.php:3554 wpvulnerability-adminms.php:3748 +msgid "Component Detection" +msgstr "Détection des composants" + +#: wpvulnerability-admin.php:3560 wpvulnerability-adminms.php:3754 +msgid "Version Detected" +msgstr "Version détectée" + +#: wpvulnerability-admin.php:3561 wpvulnerability-adminms.php:3755 +msgid "Analyzed" +msgstr "Analysé" + +#: wpvulnerability-admin.php:3562 wpvulnerability-adminms.php:3756 +msgid "Cache Status" +msgstr "État du cache" + +#: wpvulnerability-admin.php:3622 wpvulnerability-adminms.php:3816 +msgid "Configuration Summary" +msgstr "Résumé de la configuration" + +#: wpvulnerability-admin.php:3626 wpvulnerability-adminms.php:3820 +msgid "Cache Duration" +msgstr "Durée du cache" + +#: wpvulnerability-admin.php:3636 wpvulnerability-adminms.php:3830 +msgid "Log Retention" +msgstr "Rétention du journal" + +#: wpvulnerability-admin.php:3646 wpvulnerability-adminms.php:3840 +msgid "Components Analyzed" +msgstr "Composants analysés" + +#: wpvulnerability-admin.php:3661 wpvulnerability-adminms.php:3855 +msgid "Notification Email" +msgstr "E-mail de notification" + +#: wpvulnerability-admin.php:3682 wpvulnerability-adminms.php:3876 +msgid "Slack Webhook" +msgstr "Webhook Slack" + +#: wpvulnerability-admin.php:3692 wpvulnerability-admin.php:3712 +#: wpvulnerability-admin.php:3732 wpvulnerability-admin.php:3752 +#: wpvulnerability-adminms.php:3886 wpvulnerability-adminms.php:3906 +#: wpvulnerability-adminms.php:3926 wpvulnerability-adminms.php:3946 +msgid "Configured & Enabled" +msgstr "Configuré et activé" + +#: wpvulnerability-admin.php:3694 wpvulnerability-admin.php:3714 +#: wpvulnerability-admin.php:3734 wpvulnerability-admin.php:3754 +#: wpvulnerability-adminms.php:3888 wpvulnerability-adminms.php:3908 +#: wpvulnerability-adminms.php:3928 wpvulnerability-adminms.php:3948 +msgid "Configured (Disabled)" +msgstr "Configuré (Désactivé)" + +#: wpvulnerability-admin.php:3696 wpvulnerability-admin.php:3716 +#: wpvulnerability-admin.php:3736 wpvulnerability-admin.php:3756 +#: wpvulnerability-adminms.php:3890 wpvulnerability-adminms.php:3910 +#: wpvulnerability-adminms.php:3930 wpvulnerability-adminms.php:3950 +msgid "Not configured" +msgstr "Non configuré" + +#: wpvulnerability-admin.php:3703 wpvulnerability-adminms.php:3897 +msgid "Teams Webhook" +msgstr "Webhook Teams" + +#: wpvulnerability-admin.php:3723 wpvulnerability-adminms.php:3917 +msgid "Discord Webhook" +msgstr "Webhook Discord" + +#: wpvulnerability-admin.php:3743 wpvulnerability-adminms.php:3937 +msgid "Telegram Bot" +msgstr "Bot Telegram" + +#: wpvulnerability-admin.php:3788 wpvulnerability-adminms.php:3982 +msgid "Cron Status" +msgstr "État du cron" + +#: wpvulnerability-admin.php:3792 wpvulnerability-adminms.php:3986 +msgid "Update Database" +msgstr "Mettre à jour la base de données" + +#. translators: %s: date and time +#: wpvulnerability-admin.php:3797 wpvulnerability-admin.php:3810 +#: wpvulnerability-adminms.php:3991 wpvulnerability-adminms.php:4004 +#, php-format +msgid "Next run: %s" +msgstr "Prochaine exécution : %s" + +#: wpvulnerability-admin.php:3800 wpvulnerability-admin.php:3813 +#: wpvulnerability-adminms.php:3994 wpvulnerability-adminms.php:4007 +msgid "Not scheduled" +msgstr "Non planifié" + +#: wpvulnerability-admin.php:3805 wpvulnerability-adminms.php:3999 +msgid "Send Notification" +msgstr "Envoyer une notification" + +#: wpvulnerability-admin.php:3826 wpvulnerability-adminms.php:4020 +msgid "Run Update Now" +msgstr "Lancer la mise à jour maintenant" + +#: wpvulnerability-admin.php:3834 wpvulnerability-adminms.php:4028 +msgid "Run Notification Now" +msgstr "Envoyer la notification maintenant" + +#: wpvulnerability-admin.php:3840 wpvulnerability-adminms.php:4034 +msgid "You do not have permission to run these actions." +msgstr "Vous n'avez pas la permission d'effectuer ces actions." + +#: wpvulnerability-admin.php:3859 wpvulnerability-adminms.php:4053 +msgid "API Testing" +msgstr "Test de l'API" + +#: wpvulnerability-admin.php:3862 wpvulnerability-adminms.php:4056 +msgid "" +"Test API connectivity for each component. Click a button to send a test " +"request." +msgstr "" +"Testez la connectivité API pour chaque composant. Cliquez sur un bouton pour " +"envoyer une requête de test." + +#. translators: %s: component name +#: wpvulnerability-admin.php:3869 wpvulnerability-adminms.php:4063 +#, php-format +msgid "Test %s" +msgstr "Tester %s" + +#: wpvulnerability-admin.php:3884 wpvulnerability-adminms.php:4078 +msgid "Testing..." +msgstr "Test en cours..." + +#: wpvulnerability-admin.php:3900 wpvulnerability-adminms.php:4094 +msgid "HTTP Code:" +msgstr "Code HTTP :" + +#: wpvulnerability-admin.php:3901 wpvulnerability-adminms.php:4095 +msgid "Response Time:" +msgstr "Temps de réponse :" + +#: wpvulnerability-admin.php:3903 wpvulnerability-adminms.php:4097 +msgid "Response Preview" +msgstr "Aperçu de la réponse" + +#: wpvulnerability-admin.php:3910 wpvulnerability-admin.php:3914 +#: wpvulnerability-adminms.php:4104 wpvulnerability-adminms.php:4108 +msgid "Test" +msgstr "Test" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "Error:" +msgstr "Erreur :" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "AJAX request failed." +msgstr "La requête AJAX a échoué." + +#: wpvulnerability-admin.php:3922 wpvulnerability-adminms.php:4116 +msgid "You do not have permission to test API connectivity." +msgstr "Vous n'avez pas la permission de tester la connectivité API." + +#: wpvulnerability-admin.php:3943 wpvulnerability-adminms.php:4137 +msgid "Database Options Viewer" +msgstr "Visualiseur d'options de base de données" + +#: wpvulnerability-admin.php:3944 wpvulnerability-adminms.php:4138 +msgid "View the raw data stored in WordPress options." +msgstr "Consultez les données brutes stockées dans les options WordPress." + +#: wpvulnerability-admin.php:3950 wpvulnerability-adminms.php:4144 +msgid "Select an option..." +msgstr "Sélectionner une option…" + +#: wpvulnerability-admin.php:3969 wpvulnerability-adminms.php:4163 +msgid "Option not found or empty." +msgstr "Option introuvable ou vide." + +#: wpvulnerability-admin.php:3987 wpvulnerability-adminms.php:4182 +msgid "Quick Actions" +msgstr "Actions rapides" + +#: wpvulnerability-admin.php:3988 wpvulnerability-adminms.php:4183 +msgid "Perform debugging actions. Use with caution." +msgstr "Effectuez des actions de débogage. À utiliser avec précaution." + +#: wpvulnerability-admin.php:3992 wpvulnerability-adminms.php:4187 +msgid "Are you sure you want to clear all caches?" +msgstr "Confirmez-vous vouloir supprimer tous les caches du journal ?" + +#: wpvulnerability-admin.php:3996 wpvulnerability-adminms.php:4191 +msgid "Clear All Caches" +msgstr "Effacer tous les caches" + +#: wpvulnerability-admin.php:4000 wpvulnerability-adminms.php:4195 +msgid "Are you sure you want to reset signatures?" +msgstr "Êtes-vous sûr de vouloir réinitialiser les signatures ?" + +#: wpvulnerability-admin.php:4004 wpvulnerability-adminms.php:4199 +msgid "Reset Signatures" +msgstr "Réinitialiser les signatures" + +#: wpvulnerability-admin.php:4012 wpvulnerability-adminms.php:4207 +msgid "Export Debug Info" +msgstr "Exporter les informations de débogage" + +#: wpvulnerability-admin.php:4018 wpvulnerability-adminms.php:4213 +msgid "You do not have permission to perform these actions." +msgstr "Vous n'avez pas la permission d'effectuer ces actions." + +#: wpvulnerability-adminms.php:101 wpvulnerability-adminms.php:199 +msgid "Settings saved." +msgstr "Réglages enregistrés." + +#: wpvulnerability-adminms.php:277 +msgid "WPVulnerability cron events have been repaired across the network." +msgstr "Les événements cron de WPVulnerability ont été réparés sur l'ensemble du réseau." + +#: wpvulnerability-adminms.php:3512 +msgid "You do not have permission to access this page." +msgstr "Vous n'avez pas la permission d'accéder à cette page." + +#. translators: 1: core version +#: wpvulnerability-core.php:33 +#, php-format +msgid "" +"WordPress %1$s has a known vulnerability that may be affecting your " +"installed version." +msgstr "" +"WordPress %1$s présente une vulnérabilité connue qui pourrait affecter " +"votre version installée." + +#: wpvulnerability-core.php:115 wpvulnerability-plugins.php:207 +#: wpvulnerability-process.php:335 wpvulnerability-process.php:443 +#: wpvulnerability-process.php:529 wpvulnerability-themes.php:173 +#: wpvulnerability-themes.php:469 +msgid "Actively exploited" +msgstr "Activement exploité" + +#: wpvulnerability-core.php:122 wpvulnerability-plugins.php:214 +#: wpvulnerability-process.php:342 wpvulnerability-process.php:450 +#: wpvulnerability-themes.php:180 wpvulnerability-themes.php:476 +msgid "Public exploit" +msgstr "Exploit public" + +#: wpvulnerability-core.php:125 wpvulnerability-plugins.php:217 +#: wpvulnerability-process.php:345 wpvulnerability-process.php:453 +#: wpvulnerability-themes.php:183 wpvulnerability-themes.php:479 +msgid "Automatable" +msgstr "Automatisable" + +#: wpvulnerability-core.php:139 wpvulnerability-plugins.php:245 +#: wpvulnerability-process.php:371 wpvulnerability-process.php:469 +#: wpvulnerability-process.php:544 wpvulnerability-themes.php:211 +#: wpvulnerability-themes.php:503 +msgid "References:" +msgstr "Références :" + +#: wpvulnerability-debug.php:399 +msgid "Invalid component specified." +msgstr "Composant spécifié invalide." + +#: wpvulnerability-debug.php:423 +msgid "Version not detected for this component." +msgstr "Version non détectée pour ce composant." + +#: wpvulnerability-debug.php:453 +msgid "API request successful." +msgstr "Requête API réussie." + +#. translators: %d: HTTP status code +#: wpvulnerability-debug.php:469 +#, php-format +msgid "API returned HTTP code %d." +msgstr "L'API a retourné le code HTTP %d." + +#: wpvulnerability-general.php:355 +msgid "WPVulnerability Logs" +msgstr "Journaux de WPVulnerability" + +#: wpvulnerability-general.php:356 +msgid "WPVulnerability Log" +msgstr "Journal de WPVulnerability" + +#: wpvulnerability-general.php:1873 wpvulnerability-general.php:1874 +msgid "Low" +msgstr "Faible" + +#: wpvulnerability-general.php:1875 wpvulnerability-general.php:1876 +msgid "Medium" +msgstr "Moyenne" + +#: wpvulnerability-general.php:1877 wpvulnerability-general.php:1878 +msgid "High" +msgstr "Élevée" + +#: wpvulnerability-general.php:1879 wpvulnerability-general.php:1880 +msgid "Critical" +msgstr "Critique" + +#: wpvulnerability-general.php:2684 +msgid "WPVulnerability Shell Logs" +msgstr "Journaux shell de WPVulnerability" + +#: wpvulnerability-general.php:2685 +msgid "WPVulnerability Shell Log" +msgstr "Journal shell de WPVulnerability" + +#: wpvulnerability-notifications.php:30 +msgid "Every week" +msgstr "Toutes les semaines" + +#: wpvulnerability-notifications.php:57 +msgid "Every day" +msgstr "Tous les jours" + +#: wpvulnerability-notifications.php:84 +msgid "Invalid request." +msgstr "Requête invalide." + +#: wpvulnerability-notifications.php:104 +msgid "You have unsubscribed from WPVulnerability notifications." +msgstr "Vous vous êtes désabonné des notifications WPVulnerability." + +#. translators: %1$s the website of Database, %2$s database site name. +#: wpvulnerability-notifications.php:289 +#, php-format +msgid "" +"Learn more about the WordPress Vulnerability Database API at %2$s" +msgstr "" +"En savoir plus sur l'API de la base de données de vulnérabilités WordPress sur %2$s" + +#. translators: %1$s unsubscribe URL. +#: wpvulnerability-notifications.php:300 +#, php-format +msgid "" +"Want to stop receiving these alerts? Unsubscribe or " +"change the email frequency to Never in the WPVulnerability " +"settings." +msgstr "" +"Vous souhaitez arrêter de recevoir ces alertes ? Se désabonner ou " +"changer la fréquence des e-mails à Jamais dans les paramètres " +"de WPVulnerability." + +#: wpvulnerability-notifications.php:595 +msgid "No vulnerabilities found" +msgstr "Aucune vulnérabilité trouvée" + +#: wpvulnerability-notifications.php:596 +msgid "This is likely a test. The site does not have vulnerabilities." +msgstr "Il s'agit probablement d'un test. Le site ne présente pas de vulnérabilités." + +#: wpvulnerability-notifications.php:601 +msgid "Core vulnerabilities" +msgstr "Vulnérabilités du cœur" + +#: wpvulnerability-notifications.php:607 +msgid "Plugins vulnerabilities" +msgstr "Vulnérabilités des extensions" + +#: wpvulnerability-notifications.php:613 +msgid "Themes vulnerabilities" +msgstr "Vulnérabilités des thèmes" + +#: wpvulnerability-notifications.php:619 +msgid "PHP vulnerabilities" +msgstr "Vulnérabilités PHP" + +#: wpvulnerability-notifications.php:625 +msgid "Apache HTTPD vulnerabilities" +msgstr "Vulnérabilités Apache HTTPD" + +#: wpvulnerability-notifications.php:631 +msgid "Nginx vulnerabilities" +msgstr "Vulnérabilités Nginx" + +#: wpvulnerability-notifications.php:637 +msgid "MariaDB vulnerabilities" +msgstr "Vulnérabilités MariaDB" + +#: wpvulnerability-notifications.php:643 +msgid "MySQL vulnerabilities" +msgstr "Vulnérabilités MySQL" + +#: wpvulnerability-notifications.php:649 +msgid "ImageMagick vulnerabilities" +msgstr "Vulnérabilités ImageMagick" + +#: wpvulnerability-notifications.php:655 +msgid "curl vulnerabilities" +msgstr "Vulnérabilités curl" + +#: wpvulnerability-notifications.php:661 +msgid "memcached vulnerabilities" +msgstr "Vulnérabilités memcached" + +#: wpvulnerability-notifications.php:667 +msgid "Redis vulnerabilities" +msgstr "Vulnérabilités Redis" + +#: wpvulnerability-notifications.php:673 +msgid "SQLite vulnerabilities" +msgstr "Vulnérabilités SQLite" + +#. translators: Site name. +#: wpvulnerability-notifications.php:696 +#, php-format +msgid "Vulnerability found: %s" +msgstr "Vulnérabilité trouvée : %s" + +#: wpvulnerability-notifications.php:700 +msgid "Vulnerability found" +msgstr "Vulnérabilité trouvée" + +#. translators: 1: Plugin name +#. translators: 1: theme name +#: wpvulnerability-plugins.php:116 wpvulnerability-themes.php:82 +#, php-format +msgid "" +"%1$s has a known vulnerability that may be affecting your installed version." +msgstr "" +"%1$s présente une vulnérabilité connue qui pourrait affecter votre version installée." + +#: wpvulnerability-plugins.php:230 wpvulnerability-process.php:358 +msgid "This plugin is closed. Please replace it with another." +msgstr "Cette extension est fermée. Veuillez la remplacer par une autre." + +#: wpvulnerability-plugins.php:233 wpvulnerability-process.php:361 +msgid "" +"This vulnerability appears to be unpatched. Stay tuned for upcoming plugin " +"updates." +msgstr "" +"Cette vulnérabilité semble ne pas avoir été corrigée. Restez attentif aux " +"prochaines mises à jour de l'extension." + +#: wpvulnerability-plugins.php:570 +msgid "It hasn't been updated in over a year." +msgstr "Il n'a pas été mis à jour depuis plus d'un an." + +#: wpvulnerability-plugins.php:576 +msgid "It may no longer be available (closed?)." +msgstr "Il peut ne plus être disponible (fermé ?)." + +#: wpvulnerability-plugins.php:614 wpvulnerability-plugins.php:621 +msgid "Last updated on" +msgstr "Dernière mise à jour le" + +#. translators: the number of vulnerabilities. +#: wpvulnerability-plugins.php:764 wpvulnerability-themes.php:704 +#, php-format +msgid "Vulnerabilities (%d)" +msgstr "Vulnérabilités (%d)" + +#. translators: %s: software name. +#: wpvulnerability-process.php:601 +#, php-format +msgid "%s running" +msgstr "%s en cours d'exécution" + +#: wpvulnerability-process.php:611 wpvulnerability-process.php:792 +msgid "End of Life" +msgstr "Fin de vie" + +#: wpvulnerability-process.php:613 wpvulnerability-process.php:618 +msgid "End of life:" +msgstr "Fin de vie :" + +#: wpvulnerability-process.php:616 +msgid "Supported" +msgstr "Supporté" + +#: wpvulnerability-process.php:652 +msgid "Plugin" +msgstr "Extension" + +#: wpvulnerability-process.php:721 +msgid "Theme" +msgstr "Thème" + +#. translators: %s: end-of-life date +#: wpvulnerability-process.php:790 +#, php-format +msgid "End of life: %s" +msgstr "Fin de vie : %s" + +#: wpvulnerability-process.php:795 +msgid "EOL" +msgstr "EOL" + +#: wpvulnerability-run.php:30 +msgid "Network Settings" +msgstr "Réglages du réseau" + +#: wpvulnerability-run.php:731 wpvulnerability-run.php:781 +#: wpvulnerability-run.php:791 wpvulnerability-run.php:836 +msgid "Vulnerabilities" +msgstr "Vulnérabilités" + +#: wpvulnerability-schedule.php:30 +msgid "Every 6 hours" +msgstr "Toutes les 6 heures" + +#: wpvulnerability-schedule.php:303 +msgid "Database updates" +msgstr "Mises à jour de la base de données" + +#: wpvulnerability-schedule.php:309 +msgid "Log cleanup" +msgstr "Nettoyage du journal" + +#: wpvulnerability-schedule.php:439 +msgid "" +"Notifications are scheduled, but settings currently disable them. Please " +"review the notifications tab." +msgstr "" +"Les notifications sont planifiées, mais les paramètres actuels les désactivent. " +"Veuillez consulter l'onglet des notifications." + +#: wpvulnerability-schedule.php:442 +msgid "This event should not be scheduled for this site." +msgstr "Cet évènement ne devrait pas être planifié pour ce site." + +#: wpvulnerability-schedule.php:446 +msgid "Not expected for this site." +msgstr "Non prévu pour ce site." + +#: wpvulnerability-schedule.php:450 +msgid "No instances found." +msgstr "Aucune instance trouvée." + +#: wpvulnerability-schedule.php:456 +msgid "Scheduled with an unexpected interval." +msgstr "Planifié avec un intervalle imprévu." + +#: wpvulnerability-schedule.php:460 +msgid "Multiple instances detected." +msgstr "Plusieurs instances détectées." + +#: wpvulnerability-schedule.php:465 +msgid "Scheduled as expected." +msgstr "Planifié comme prévu." + +#: wpvulnerability-sitehealth.php:22 +msgid "There aren't plugins vulnerabilities" +msgstr "Il n'y a pas de vulnérabilités dans les extensions" + +#: wpvulnerability-sitehealth.php:30 +msgid "Shows possible vulnerabilities that exist in installed plugins." +msgstr "Affiche les vulnérabilités potentielles présentes dans les extensions installées." + +#. translators: Number of plugins vulnerabilities. +#: wpvulnerability-sitehealth.php:43 +#, php-format +msgid "There is %d plugin with vulnerabilities" +msgid_plural "There are %d plugins with vulnerabilities" +msgstr[0] "Il y a %d extension avec des vulnérabilités" +msgstr[1] "Il y a %d extensions avec des vulnérabilités" + +#: wpvulnerability-sitehealth.php:49 +msgid "" +"We've detected potential vulnerabilities in installed plugins. Please check " +"them and keep them updated." +msgstr "" +"Nous avons détecté des vulnérabilités potentielles dans les extensions installées. " +"Veuillez les vérifier et les maintenir à jour." + +#: wpvulnerability-sitehealth.php:57 +msgid "Update plugins" +msgstr "Mettre à jour les extensions" + +#: wpvulnerability-sitehealth.php:74 +msgid "There aren't themes vulnerabilities" +msgstr "Il n'y a pas de vulnérabilités dans les thèmes" + +#: wpvulnerability-sitehealth.php:82 +msgid "Shows possible vulnerabilities that exist in installed themes." +msgstr "Affiche les vulnérabilités potentielles présentes dans les thèmes installés." + +#. translators: Number of themes vulnerabilities. +#: wpvulnerability-sitehealth.php:95 +#, php-format +msgid "There is %d theme with vulnerabilities" +msgid_plural "There are %d themes with vulnerabilities" +msgstr[0] "Il y a %d thème avec des vulnérabilités" +msgstr[1] "Il y a %d thèmes avec des vulnérabilités" + +#: wpvulnerability-sitehealth.php:101 +msgid "" +"We've detected potential vulnerabilities in installed themes. Please check " +"them and keep them updated." +msgstr "" +"Nous avons détecté des vulnérabilités potentielles dans les thèmes installés. " +"Veuillez les vérifier et les maintenir à jour." + +#: wpvulnerability-sitehealth.php:109 +msgid "Update themes" +msgstr "Mettre à jour les thèmes" + +#: wpvulnerability-sitehealth.php:126 +msgid "There aren't WordPress vulnerabilities" +msgstr "Il n'y a pas de vulnérabilités WordPress." + +#: wpvulnerability-sitehealth.php:134 +msgid "Shows possible vulnerabilities existing in the WordPress core." +msgstr "" +"Afficher les vulnérabilités potentielles existant dans le cœur de WordPress." + +#. translators: Number of core vulnerabilities. +#: wpvulnerability-sitehealth.php:147 +#, php-format +msgid "There is %d core vulnerability" +msgid_plural "There are %d core vulnerabilities" +msgstr[0] "Il y a %d vulnérabilité dans le cœur" +msgstr[1] "Il y a %d vulnérabilités dans le cœur" + +#: wpvulnerability-sitehealth.php:153 +msgid "" +"We've detected potential vulnerabilities in this WordPress installation. " +"Please check them and keep your installation updated." +msgstr "" +"Nous avons détecté des vulnérabilités potentielles dans cette installation " +"WordPress. Veuillez les vérifier et de maintenir votre installation à jour." + +#: wpvulnerability-sitehealth.php:161 +msgid "Update WordPress" +msgstr "Mettre à jour WordPress" + +#: wpvulnerability-sitehealth.php:180 +msgid "Nginx" +msgstr "Nginx" + +#: wpvulnerability-sitehealth.php:189 +msgid "Invalid software type" +msgstr "Type de logiciel invalide" + +#: wpvulnerability-sitehealth.php:192 +msgid "Error" +msgstr "Erreur" + +#: wpvulnerability-sitehealth.php:197 +msgid "The specified software type is not valid." +msgstr "Le type de logiciel spécifié n'est pas valide." + +#. translators: name of the software. +#: wpvulnerability-sitehealth.php:207 +#, php-format +msgid "There aren't %s vulnerabilities" +msgstr "Il n'y a pas de vulnérabilités %s" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:216 +#, php-format +msgid "Shows possible vulnerabilities existing in %s." +msgstr "Affiche les vulnérabilités potentielles existant dans %s." + +#. translators: Software and number of vulnerabilities. +#: wpvulnerability-sitehealth.php:229 +#, php-format +msgid "There is %1$d %2$s vulnerability" +msgid_plural "There are %1$d %2$s vulnerabilities" +msgstr[0] "Il y a %1$d vulnérabilité %2$s" +msgstr[1] "Il y a %1$d vulnérabilités %2$s" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:237 +#, php-format +msgid "" +"We've detected potential vulnerabilities in %s. Please check them and keep " +"your installation updated." +msgstr "" +"Nous avons détecté des vulnérabilités potentielles dans %s. Veuillez les " +"vérifier et maintenir votre installation à jour." + +#: wpvulnerability-sitehealth.php:246 +msgid "How to update PHP" +msgstr "Comment mettre à jour PHP" + +#: wpvulnerability-sitehealth.php:386 +msgid "WPVulnerability Core" +msgstr "Cœur de WPVulnerability" + +#: wpvulnerability-sitehealth.php:394 +msgid "WPVulnerability Themes" +msgstr "Thèmes de WPVulnerability" + +#: wpvulnerability-sitehealth.php:402 +msgid "WPVulnerability Plugins" +msgstr "Extensions de WPVulnerability" + +#: wpvulnerability-sitehealth.php:410 +msgid "WPVulnerability PHP" +msgstr "WPVulnerability PHP" + +#: wpvulnerability-sitehealth.php:418 +msgid "WPVulnerability Apache HTTPD" +msgstr "WPVulnerability Apache HTTPD" + +#: wpvulnerability-sitehealth.php:426 +msgid "WPVulnerability Nginx" +msgstr "WPVulnerability Nginx" + +#: wpvulnerability-sitehealth.php:434 +msgid "WPVulnerability MariaDB" +msgstr "WPVulnerability MariaDB" + +#: wpvulnerability-sitehealth.php:442 +msgid "WPVulnerability MySQL" +msgstr "WPVulnerability MySQL" + +#: wpvulnerability-sitehealth.php:450 +msgid "WPVulnerability ImageMagick" +msgstr "WPVulnerability ImageMagick" + +#: wpvulnerability-sitehealth.php:458 +msgid "WPVulnerability curl" +msgstr "WPVulnerability curl" + +#: wpvulnerability-sitehealth.php:466 +msgid "WPVulnerability memcached" +msgstr "WPVulnerability memcached" + +#: wpvulnerability-sitehealth.php:474 +msgid "WPVulnerability redis" +msgstr "WPVulnerability redis" + +#: wpvulnerability-sitehealth.php:482 +msgid "WPVulnerability sqlite" +msgstr "WPVulnerability sqlite" + +#: wpvulnerability-themes.php:196 wpvulnerability-themes.php:492 +msgid "This theme is closed. Please replace it with another." +msgstr "Ce thème est fermé. Veuillez le remplacer par un autre." + +#: wpvulnerability-themes.php:199 wpvulnerability-themes.php:495 +msgid "" +"This vulnerability appears to be unpatched. Stay tuned for upcoming theme " +"updates." +msgstr "" +"Cette vulnérabilité semble ne pas avoir été corrigée. Restez attentif aux " +"prochaines mises à jour du thème." + +#: wpvulnerability-themes.php:391 +msgid "" +"This theme has known vulnerabilities that may be affecting your installed " +"version." +msgstr "" +"Ce thème présente des vulnérabilités connues qui pourraient affecter votre " +"version installée." + +#~ msgid "Global score: " +#~ msgstr "Score global : " + +#~ msgid "Severity: " +#~ msgstr "Sévérité : " diff --git a/languages/wpvulnerability-gl.l10n.php b/languages/wpvulnerability-gl.l10n.php new file mode 100644 index 0000000..36b3e99 --- /dev/null +++ b/languages/wpvulnerability-gl.l10n.php @@ -0,0 +1,2 @@ +NULL,'plural-forms'=>'nplurals=2; plural=n != 1;','language'=>'gl_ES','project-id-version'=>'Plugins - WPVulnerability - Development (trunk)','pot-creation-date'=>'2026-05-27T16:32:22+00:00','po-revision-date'=>'2026-05-27 00:00+0000','x-generator'=>'GlotPress/4.0.3','messages'=>['WPVulnerability'=>'WPVulnerability','https://www.wpvulnerability.com/plugin/'=>'https://www.wpvulnerability.com/plugin/','Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API.'=>'Recibe información sobre posibles vulnerabilidades no teu WordPress desde a API de base de datos de vulnerabilidades de WordPress.','ROBOTSTXT'=>'ROBOTSTXT','https://www.robotstxt.es/'=>'https://www.robotstxt.es/','This command requires a WordPress administrator. Run with --user=.'=>'Este comando require un administrador de WordPress. Execútao con --user=.','No core vulnerabilities found.'=>'Non se atoparon vulnerabilidades no núcleo.','No plugin vulnerabilities found.'=>'Non se atoparon vulnerabilidades en plugins.','No theme vulnerabilities found.'=>'Non se atoparon vulnerabilidades en temas.','No %s vulnerabilities found.'=>'Non se atoparon vulnerabilidades de %s.','Data from source has been reloaded.'=>'Cargáronse de novo os datos da orixe.','You do not have permission to reload data.'=>'Non tes permiso para recargar os datos.','Test email has been sent.'=>'Enviouse o correo electrónico de proba.','Test email has failed. Please, check your email settings.'=>'O correo electrónico de proba fallou. Comproba a configuración do teu correo electrónico.','You do not have permission to send test emails.'=>'Non tes permiso para enviar correos electrónicos de proba.','WPVulnerability cron events have been repaired.'=>'Os eventos cron de WPVulnerability foron reparados.','You do not have permission to repair cron events.'=>'Non tes permiso para reparar eventos cron.','All logs have been deleted.'=>'Eliminaron todos os rexistros.','You do not have permission to delete logs.'=>'Non tes permiso para eliminar rexistros.','Uninstall preference saved.'=>'Preferencia de desinstalación gardada.','WPVulnerability has been reset to defaults and reloaded.'=>'WPVulnerability restableceu os valores predeterminados e volveu cargar.','You do not have permission to reset WPVulnerability.'=>'Non tes permiso para restablecer WPVulnerability.','All caches have been cleared.'=>'Limpáronse todas as cachés.','You do not have permission to clear caches.'=>'Non tes permiso para limpar as cachés.','Plugin and theme signatures have been reset.'=>'As sinaturas de plugins e temas foron restablecidas.','You do not have permission to reset signatures.'=>'Non tes permiso para restablecer as sinaturas.','You do not have permission to export debug information.'=>'Non tes permiso para exportar información de depuración.','Database update has been executed.'=>'Executouse a actualización da base de datos.','You do not have permission to run database updates.'=>'Non tes permiso para executar actualizacións da base de datos.','Notification has been sent.'=>'Enviouse a notificación.','Notification sending failed.'=>'Fallou o envío da notificación.','You do not have permission to send notifications.'=>'Non tes permiso para enviar notificacións.','Notifications'=>'Notificacións','Analysis'=>'Análise','Logs'=>'Rexistros','Security'=>'Seguridade','Tools'=>'Ferramentas','Debug'=>'Depuración','About'=>'Acerca de','Notification Settings'=>'Configuración de notificacións','Configure how and when you want to receive vulnerability notifications.'=>'Configura como e cando queres recibir notificacións de vulnerabilidades.','Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software.'=>'Mantente informado sobre as vulnerabilidades de seguridade na túa instalación de WordPress, plugins, temas e software do servidor.','Cache Expiration Time'=>'Tempo de expiración da caché','FORCED'=>'FORZADO','How long to cache vulnerability data before refreshing from the API.'=>'Canto tempo gardar en caché os datos de vulnerabilidades antes de actualizar desde a API.','%d hour'=>'%d hora' . "\0" . '%d horas','You can force the cache time via wp-config.php constant. Learn more →'=>'Podes forzar o tempo de caché mediante a constante de wp-config.php. Máis información →','Notification Frequency'=>'Frecuencia de notificacións','Choose how often you want to receive vulnerability notifications.'=>'Escolle con qué frecuencia queres recibir notificacións de vulnerabilidades.','Never - Disable automatic notifications'=>'Nunca - Desactivar as notificacións automáticas','Daily - Receive notifications every day'=>'A diario - Recibir notificacións cada día','Weekly - Receive notifications once a week'=>'Semanalmente - Recibir notificacións unha vez á semana','Day:'=>'Día:','Monday'=>'Luns','Tuesday'=>'Martes','Wednesday'=>'Mércores','Thursday'=>'Xoves','Friday'=>'Venres','Saturday'=>'Sábado','Sunday'=>'Domingo','Time:'=>'Hora:','(24-hour format, server timezone)'=>'(Formato de 24 horas, fuso horario do servidor)','Notification Channels'=>'Canles de notificación','Select where you want to receive notifications.'=>'Selecciona onde queres recibir notificacións.','Email'=>'Correo electrónico','Email Addresses (separated by commas):'=>'Enderezos de correo electrónico (separados por comas):','Default:'=>'Predeterminado:','Slack'=>'Slack','Slack Webhook URL:'=>'URL do webhook de Slack:','Learn how to create a Slack incoming webhook →'=>'Aprende como crear un webhook entrante de Slack →','Microsoft Teams'=>'Microsoft Teams','Teams Webhook URL:'=>'URL do webhook de Teams:','Learn how to create a Teams incoming webhook →'=>'Aprende como crear un webhook entrante de Teams →','Discord'=>'Discord','Discord Webhook URL:'=>'URL do webhook de Discord:','Learn how to create a Discord webhook →'=>'Aprende como crear un webhook de Discord →','Telegram'=>'Telegram','Telegram Bot Token:'=>'Token do bot de Telegram:','Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Formato: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','Telegram Chat ID:'=>'ID de chat de Telegram:','Learn how to create a Telegram bot and get Chat ID →'=>'Aprende como crear un bot de Telegram e obter o ID de chat →','Save Notification Settings'=>'Gardar configuración de notificacións','WordPress Components'=>'Compoñentes de WordPress','WordPress Core'=>'Núcleo de WordPress','Plugins'=>'Plugins','Themes'=>'Temas','Software & Languages'=>'Software e linguaxes','PHP'=>'PHP','Web Servers'=>'Servidores web','Apache HTTPD'=>'Apache HTTPD','nginx'=>'nginx','Databases'=>'Bases de datos','MariaDB'=>'MariaDB','MySQL'=>'MySQL','SQLite'=>'SQLite','Additional Tools'=>'Ferramentas adicionais','ImageMagick'=>'ImageMagick','curl'=>'curl','memcached'=>'memcached','Redis'=>'Redis','Component Analysis Settings'=>'Configuración da análise de compoñentes','Enable or disable vulnerability analysis for specific components.'=>'Activa ou desactiva a análise de vulnerabilidades para compoñentes específicos.','Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red.'=>'Marca os compoñentes que queres OCULTAR nas análises e informes de vulnerabilidades. Os compoñentes desmarcados analizaranse activamente. Os compoñentes con análise activa móstranse en verde, os ocultos en vermello.','Hidden (forced by constant)'=>'Oculto (forzado por constante)','🔴 Analysis disabled'=>'🔴 Análise desactivada','🟢 Analysis active'=>'🟢 Análise activa','Tip:'=>'Consello:','You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →'=>'Podes forzar a desactivación de compoñentes mediante constantes de wp-config.php. Máis información sobre como forzar a ocultación de verificacións →','Save Analysis Settings'=>'Gardar configuración da análise','« Previous'=>'« Anterior','Next »'=>'Seguinte »','Log entry not found or has been removed.'=>'Non se atopou a entrada de rexistro ou foi eliminada.','Unable to load the requested log entry.'=>'Non se puido cargar a entrada de rexistro solicitada.','Log Configuration'=>'Configuración de rexistros','Total Logs'=>'Total de rexistros','Retention Period'=>'Período de retención','Disabled'=>'Desactivado','%d day'=>'%d día' . "\0" . '%d días','Log Retention Period'=>'Período de retención dos rexistros','None (Disabled)'=>'Ningún (Desactivado)','This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant.'=>'Este valor está imposto pola constante WPVULNERABILITY_LOG_RETENTION_DAYS.','Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted.'=>'Escolle canto tempo debe gardar WPVulnerability os rexistros de respostas da API. Os rexistros máis antigos elimínanse automaticamente.','Save Configuration'=>'Gardar configuración','Log retention is currently disabled.'=>'A retención de rexistros está actualmente desactivada.','API responses are not being saved.'=>'As respostas da API non se están gardando.','Log Details'=>'Detalles do rexistro','Date'=>'Data','API Endpoint'=>'Punto final da API','API Response'=>'Resposta da API','Back to Logs'=>'Volver aos rexistros','No logs available'=>'Non hai rexistros dispoñibles','API response logs will appear here once the vulnerability scanner runs.'=>'Os rexistros de respostas da API aparecerán aquí unha vez que se execute o escáner de vulnerabilidades.','API Response Logs'=>'Rexistros de respostas da API','Show:'=>'Amosar:','Apply'=>'Aplicar','Showing %1$s–%2$s of %3$s'=>'Amosando %1$s–%2$s de %3$s','Actions'=>'Accións','View'=>'Ver','Danger Zone'=>'Zona de perigo','Permanently delete all API response logs. This action cannot be undone.'=>'Eliminar permanentemente todos os rexistros de respostas da API. Esta acción non se pode desfacer.','Are you sure you want to delete all logs? This action cannot be undone.'=>'Tes a certeza de que queres eliminar todos os rexistros? Esta acción non se pode desfacer.','Delete All Logs'=>'Eliminar todos os rexistros','Reload Data from API'=>'Recargar datos desde a API','Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information.'=>'Recarga toda a información do núcleo, plugins, temas e outros compoñentes directamente desde a API para ter datos actualizados. Isto limpará a caché e obterá información actualizada sobre vulnerabilidades.','Reload Data'=>'Recargar datos','Test Email Notifications'=>'Probar notificacións por correo electrónico','Send a test email notification with current vulnerability data to verify your email configuration is working correctly.'=>'Envía unha notificación de correo electrónico de proba cos datos actuais de vulnerabilidades para verificar que a configuración do teu correo electrónico funciona correctamente.','From address (configured via constant):'=>'Enderezo de orixe (configurado mediante constante):','From address (default):'=>'Enderezo de orixe (predeterminado):','Learn how to customize the email sender address →'=>'Aprende como personalizar o enderezo do remitente do correo electrónico →','Send Test Email'=>'Enviar correo electrónico de proba','WP-Cron Status'=>'Estado de WP-Cron','View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly.'=>'Ve e xestiona os eventos programados de WP-Cron. Compara as programacións esperadas coas tarefas cron reais para asegurarte de que as tarefas automatizadas se executan correctamente.','No cron data available.'=>'Non hai datos de cron dispoñibles.','Hook'=>'Hook','Expected'=>'Esperado','Found'=>'Atopado','Next Run'=>'Próxima execución','Status'=>'Estado','Not expected'=>'Non esperado','None'=>'Ningunha','OK'=>'Correcto','⚠️ Unexpected WPVulnerability Events'=>'⚠️ Eventos inesperados de WPVulnerability','No interval'=>'Sen intervalo','Next:'=>'Seguinte:','Repair Cron Events'=>'Reparar eventos cron','Uninstall Data'=>'Datos de desinstalación','By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall.'=>'Por defecto, todos os datos do plugin consérvanse cando se elimina WPVulnerability. Activa a opción de abaixo só se queres que todas as opcións, rexistros e datos en caché se eliminen permanentemente ao desinstalar.','Delete all plugin data on uninstall'=>'Eliminar todos os datos do plugin ao desinstalar','Default: unchecked (data preserved). Check only if you want a clean removal.'=>'Predeterminado: desmarcado (datos conservados). Marca só se queres unha eliminación limpa.','Save preference'=>'Gardar preferencia','Reset WPVulnerability'=>'Restablecer WPVulnerability','Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API.'=>'Elimina toda a configuración de WPVulnerability, datos en caché, rexistros e eventos programados, e logo restaura os valores predeterminados e recarga datos desde a API.','This action cannot be undone.'=>'Esta acción non se pode desfacer.','Are you sure you want to reset all WPVulnerability data? This action cannot be undone.'=>'Tes a certeza de que queres restablecer todos os datos de WPVulnerability? Esta acción non se pode desfacer.','Reset Plugin'=>'Restablecer plugin','Vulnerability Database Statistics'=>'Estatísticas da base de datos de vulnerabilidades','%s vulnerability'=>'%s vulnerabilidade' . "\0" . '%s vulnerabilidades','(%s product)'=>'(%s produto)' . "\0" . '(%s produtos)','No data'=>'Sen datos','Database last updated: %s'=>'Base de datos actualizada por última vez: %s','Intelligence Sources'=>'Fontes de intelixencia','Number of vulnerabilities contributed by each intelligence source.'=>'Número de vulnerabilidades aportadas por cada fonte de intelixencia.','Source'=>'Fonte','Core'=>'Núcleo','Sponsors'=>'Patrocinadores','No sponsor data available.'=>'Non hai datos de patrocinadores dispoñibles.','Contributors'=>'Colaboradores','No contributor data available.'=>'Non hai datos de colaboradores dispoñibles.','You do not have sufficient permissions to access this page.'=>'Non tes permisos suficientes para acceder a esta páxina.','WPVulnerability settings'=>'Axustes de WPVulnerability','Configure and save these settings to receive notifications.'=>'Configura e garda estes axustes para recibir notificacións.','Configure and save these settings to hide vulnerabilities.'=>'Configura e garda estes axustes para ocultar vulnerabilidades.','Default administrator email'=>'Correo electrónico do administrador por defecto','Read more if you want to force the cache time.'=>'Le máis se queres forzar o tempo de caché.','Never'=>'Nunca','Daily'=>'A diario','Weekly'=>'Semanalmente','Day'=>'Día','Hour'=>'Hora','Minute'=>'Minuto','Read more about how to force the deactivation of an item.'=>'Le máis sobre como forzar a desactivación dun elemento.','Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com'=>'URL de webhook de Slack non válida. Debe ser unha URL HTTPS válida de hooks.slack.com','Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com'=>'URL de webhook de Microsoft Teams non válida. Debe ser unha URL HTTPS válida de office.com, office365.com ou api.hooks.microsoft.com','Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com'=>'URL de webhook de Discord non válida. Debe ser unha URL HTTPS válida de discord.com ou discordapp.com','Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Formato de token do bot de Telegram non válido. Debe ser como: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','All Clear'=>'Todo correcto','%d Critical Issue Found'=>'%d problema crítico atopado' . "\0" . '%d problemas críticos atopados','%d Issue Found'=>'%d problema atopado' . "\0" . '%d problemas atopados','Never checked'=>'Nunca verificado','%d minute ago'=>'hai %d minuto' . "\0" . 'hai %d minutos','%d hour ago'=>'hai %d hora' . "\0" . 'hai %d horas','Last checked: %s'=>'Última verificación: %s','Refresh Now'=>'Actualizar agora','No vulnerabilities detected'=>'Non se detectaron vulnerabilidades','Your site is up to date and secure'=>'O teu sitio está actualizado e seguro','Server Software'=>'Software do servidor','Site Health'=>'Saúde do sitio','Settings'=>'Axustes','WPVulnerability Status'=>'Estado de WPVulnerability','Receive vulnerability notifications'=>'Recibir notificacións de vulnerabilidades','Cache expiration time'=>'Tempo de expiración da caché','How often you want to receive notifications'=>'Con qué frecuencia queres recibir notificacións:','Where do you want to receive notifications?'=>'Onde queres recibir notificacións?','Email addresses to notify (separated by commas)'=>'Correos electrónicos aos que notificar (separados por comas)','Slack webhook URL'=>'URL do webhook de Slack','Teams webhook URL'=>'URL do webhook de Teams','Vulnerabilities to hide'=>'Vulnerabilidades a ocultar','What do you want to hide?'=>'Que queres ocultar?','Standard (Hybrid Detection)'=>'Estándar (detección híbrida)','Strict (Extensions Only)'=>'Estrito (só extensións)','Disabled (No Detection)'=>'Desactivado (sen detección)','Security Status'=>'Estado de seguridade','Security Mode'=>'Modo de seguridade','Shell Execution'=>'Execución de shell','Enabled'=>'Activado','Audit Logging'=>'Rexistro de auditoría','Enabled (%d days)'=>'Activado (%d días)','Total Log Entries'=>'Total de entradas de rexistro','Last Shell Execution'=>'Última execución de shell','%s ago'=>'hai %s','Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.'=>'Configura os axustes de seguridade mediante as constantes de wp-config.php: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.','See security configuration documentation for details.'=>'Consulta a documentación de configuración de seguridade para obter máis detalles.','Memcached'=>'Memcached','Imagick Extension'=>'Extensión Imagick','Redis Extension'=>'Extensión Redis','Memcached Extension'=>'Extensión Memcached','Memcache Extension'=>'Extensión Memcache','SQLite3 Extension'=>'Extensión SQLite3','PDO SQLite'=>'PDO SQLite','Shell Command'=>'Comando de shell','Binary Check'=>'Verificación de binario','Not Detected'=>'Non detectado','Software Detection Methods'=>'Métodos de detección de software','Shows which detection method was used for each software component and the reliability score.'=>'Amosa que método de detección se utilizou para cada compoñente de software e a puntuación de fiabilidade.','Component'=>'Compoñente','Version'=>'Versión','Detection Method'=>'Método de detección','Reliability'=>'Fiabilidade','Not detected'=>'Non detectado','Shell Execution Audit Logs'=>'Rexistros de auditoría de execución de shell','Complete audit trail of shell command executions for security monitoring.'=>'Rastro de auditoría completo das execucións de comandos de shell para a supervisión de seguridade.','No shell execution logs found.'=>'Non se atoparon rexistros de execución de shell.','Logs will appear here when shell commands are executed for software detection.'=>'Os rexistros aparecerán aquí cando se executen comandos de shell para a detección de software.','Time'=>'Hora','Command'=>'Comando','User'=>'Usuario','Output'=>'Saída','Showing the %d most recent log entries.'=>'Amosando as %d entradas de rexistro máis recentes.','Invalid nonce.'=>'Nonce non válido.','Insufficient permissions.'=>'Permisos insuficientes.','No component specified.'=>'Non se especificou ningún compoñente.','Debug Information'=>'Información de depuración','This tab is only visible when WP_DEBUG is enabled. Use with caution.'=>'Esta pestana só é visible cando WP_DEBUG está activado. Usa con precaución.','System Information'=>'Información do sistema','WordPress Version'=>'Versión de WordPress','Multisite'=>'Multisitio','Yes'=>'Si','No'=>'Non','Language'=>'Idioma','PHP Version'=>'Versión de PHP','PHP Extensions'=>'Extensións de PHP','PHP Memory Limit'=>'Límite de memoria de PHP','Database'=>'Base de datos','Web Server'=>'Servidor web','WP_DEBUG'=>'WP_DEBUG','WP_DEBUG_LOG'=>'WP_DEBUG_LOG','Path:'=>'Ruta:','Size: %s'=>'Tamaño: %s','View Log File'=>'Ver arquivo de rexistro','Log file is not web-accessible (outside wp-content)'=>'O arquivo de rexistro non é accesible desde a web (fóra de wp-content)','Log file does not exist yet'=>'O arquivo de rexistro aínda non existe','Plugin Version'=>'Versión do plugin','Component Detection'=>'Detección de compoñentes','Version Detected'=>'Versión detectada','Analyzed'=>'Analizado','Cache Status'=>'Estado da caché','Configuration Summary'=>'Resumo da configuración','Cache Duration'=>'Duración da caché','Log Retention'=>'Retención de rexistros','Components Analyzed'=>'Compoñentes analizados','Notification Email'=>'Correo electrónico de notificación','Slack Webhook'=>'Webhook de Slack','Configured & Enabled'=>'Configurado e activado','Configured (Disabled)'=>'Configurado (desactivado)','Not configured'=>'Non configurado','Teams Webhook'=>'Webhook de Teams','Discord Webhook'=>'Webhook de Discord','Telegram Bot'=>'Bot de Telegram','Cron Status'=>'Estado do cron','Update Database'=>'Actualizar base de datos','Next run: %s'=>'Próxima execución: %s','Not scheduled'=>'Non programado','Send Notification'=>'Enviar notificación','Run Update Now'=>'Executar actualización agora','Run Notification Now'=>'Enviar notificación agora','You do not have permission to run these actions.'=>'Non tes permiso para executar estas accións.','API Testing'=>'Probas da API','Test API connectivity for each component. Click a button to send a test request.'=>'Proba a conectividade da API para cada compoñente. Fai clic nun botón para enviar unha solicitude de proba.','Test %s'=>'Probar %s','Testing...'=>'Probando...','HTTP Code:'=>'Código HTTP:','Response Time:'=>'Tempo de resposta:','Response Preview'=>'Vista previa da resposta','Test'=>'Proba','Error:'=>'Erro:','AJAX request failed.'=>'A solicitude AJAX fallou.','You do not have permission to test API connectivity.'=>'Non tes permiso para probar a conectividade da API.','Database Options Viewer'=>'Visor de opcións da base de datos','View the raw data stored in WordPress options.'=>'Ve os datos en bruto almacenados nas opcións de WordPress.','Select an option...'=>'Selecciona unha opción...','Option not found or empty.'=>'Opción non atopada ou baleira.','Quick Actions'=>'Accións rápidas','Perform debugging actions. Use with caution.'=>'Realiza accións de depuración. Usa con precaución.','Are you sure you want to clear all caches?'=>'Tes a certeza de que queres limpar todas as cachés?','Clear All Caches'=>'Limpar todas as cachés','Are you sure you want to reset signatures?'=>'Tes a certeza de que queres restablecer as sinaturas?','Reset Signatures'=>'Restablecer sinaturas','Export Debug Info'=>'Exportar información de depuración','You do not have permission to perform these actions.'=>'Non tes permiso para realizar estas accións.','Settings saved.'=>'Axustes gardados.','WPVulnerability cron events have been repaired across the network.'=>'Os eventos cron de WPVulnerability foron reparados en toda a rede.','You do not have permission to access this page.'=>'Non tes permiso para acceder a esta páxina.','WordPress %1$s has a known vulnerability that may be affecting your installed version.'=>'WordPress %1$s ten unha vulnerabilidade coñecida que pode estar afectando á túa versión instalada.','Actively exploited'=>'Explotada activamente','Public exploit'=>'Exploit público','Automatable'=>'Automatizable','References:'=>'Referencias:','Invalid component specified.'=>'Compoñente especificado non válido.','Version not detected for this component.'=>'Non se detectou versión para este compoñente.','API request successful.'=>'Solicitude da API realizada con éxito.','API returned HTTP code %d.'=>'A API devolveu o código HTTP %d.','WPVulnerability Logs'=>'Rexistros de WPVulnerability','WPVulnerability Log'=>'Rexistro de WPVulnerability','Low'=>'Baixo','Medium'=>'Medio','High'=>'Alto','Critical'=>'Crítico','WPVulnerability Shell Logs'=>'Rexistros de shell de WPVulnerability','WPVulnerability Shell Log'=>'Rexistro de shell de WPVulnerability','Every week'=>'Cada semana','Every day'=>'Cada día','Invalid request.'=>'Solicitude non válida.','You have unsubscribed from WPVulnerability notifications.'=>'Cancelaches a subscrición ás notificacións de WPVulnerability.','Learn more about the WordPress Vulnerability Database API at %2$s'=>'Aprende máis acerca da API da base de datos de vulnerabilidades de WordPress en %2$s','Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings.'=>'Queres deixar de recibir estas alertas? Cancela a subscrición ou cambia a frecuencia do correo electrónico a Nunca nos axustes de WPVulnerability.','No vulnerabilities found'=>'Non se atoparon vulnerabilidades','This is likely a test. The site does not have vulnerabilities.'=>'Isto é probablemente unha proba. O sitio non ten vulnerabilidades.','Core vulnerabilities'=>'Vulnerabilidades do núcleo','Plugins vulnerabilities'=>'Vulnerabilidades de plugins','Themes vulnerabilities'=>'Vulnerabilidades de temas','PHP vulnerabilities'=>'Vulnerabilidades de PHP','Apache HTTPD vulnerabilities'=>'Vulnerabilidades de Apache HTTPD','Nginx vulnerabilities'=>'Vulnerabilidades de Nginx','MariaDB vulnerabilities'=>'Vulnerabilidades de MariaDB','MySQL vulnerabilities'=>'Vulnerabilidades de MySQL','ImageMagick vulnerabilities'=>'Vulnerabilidades de ImageMagick','curl vulnerabilities'=>'Vulnerabilidades de curl','memcached vulnerabilities'=>'Vulnerabilidades de memcached','Redis vulnerabilities'=>'Vulnerabilidades de Redis','SQLite vulnerabilities'=>'Vulnerabilidades de SQLite','Vulnerability found: %s'=>'Vulnerabilidade atopada: %s','Vulnerability found'=>'Vulnerabilidade atopada','%1$s has a known vulnerability that may be affecting your installed version.'=>'%1$s ten unha vulnerabilidade coñecida que pode estar afectando á túa versión instalada.','This plugin is closed. Please replace it with another.'=>'Este plugin está pechado. Substitúeo por outro, por favor.','This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates.'=>'Esta vulnerabilidade parece non estar parcheada. Permanece atento ás próximas actualizacións do plugin.','It hasn\'t been updated in over a year.'=>'Hai máis dun ano que non se actualiza.','It may no longer be available (closed?).'=>'Pode que xa non estea dispoñible (pechado?).','Last updated on'=>'Última actualización','Vulnerabilities (%d)'=>'Vulnerabilidades (%d)','%s running'=>'%s en execución','End of Life'=>'Fin de vida','End of life:'=>'Fin de vida:','Supported'=>'Con soporte','Plugin'=>'Plugin','Theme'=>'Tema','End of life: %s'=>'Fin de vida: %s','EOL'=>'FDV','Network Settings'=>'Axustes da rede','Vulnerabilities'=>'Vulnerabilidades','Every 6 hours'=>'Cada 6 horas','Database updates'=>'Actualizacións da base de datos','Log cleanup'=>'Limpeza de rexistros','Notifications are scheduled, but settings currently disable them. Please review the notifications tab.'=>'As notificacións están programadas, pero a configuración actual desactívaas. Por favor, revisa a pestana de notificacións.','This event should not be scheduled for this site.'=>'Este evento non debería estar programado para este sitio.','Not expected for this site.'=>'Non esperado para este sitio.','No instances found.'=>'Non se atoparon instancias.','Scheduled with an unexpected interval.'=>'Programado cun intervalo inesperado.','Multiple instances detected.'=>'Detectáronse múltiples instancias.','Scheduled as expected.'=>'Programado como se esperaba.','There aren\'t plugins vulnerabilities'=>'Non hai vulnerabilidades dos plugins.','Shows possible vulnerabilities that exist in installed plugins.'=>'Amosa posibles vulnerabilidades que existen nos plugins instalados.','There is %d plugin with vulnerabilities'=>'Hai %d plugin con vulnerabilidades' . "\0" . 'Hai %d plugins con vulnerabilidades','We\'ve detected potential vulnerabilities in installed plugins. Please check them and keep them updated.'=>'Detectamos vulnerabilidades potenciais nos plugins instalados. Compróbaas e mantén os plugins actualizados, por favor.','Update plugins'=>'Actualizar plugins','There aren\'t themes vulnerabilities'=>'Non hai vulnerabilidades dos temas.','Shows possible vulnerabilities that exist in installed themes.'=>'Amosa posibles vulnerabilidades que existen nos temas instalados.','There is %d theme with vulnerabilities'=>'Hai %d tema con vulnerabilidades' . "\0" . 'Hai %d temas con vulnerabilidades','We\'ve detected potential vulnerabilities in installed themes. Please check them and keep them updated.'=>'Detectamos vulnerabilidades potenciais nos temas instalados. Compróbaas e mantén os temas actualizados, por favor.','Update themes'=>'Actualizar temas','There aren\'t WordPress vulnerabilities'=>'Non hai vulnerabilidades de WordPress','Shows possible vulnerabilities existing in the WordPress core.'=>'Amosa posibles vulnerabilidades existentes no núcleo de WordPress.','There is %d core vulnerability'=>'Hai %d vulnerabilidade do núcleo' . "\0" . 'Hai %d vulnerabilidades do núcleo','We\'ve detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated.'=>'Detectamos vulnerabilidades potenciais nesta instalación de WordPress. Compróbaas e mantén a túa instalación actualizada, por favor.','Update WordPress'=>'Actualizar WordPress','Nginx'=>'Nginx','Invalid software type'=>'Tipo de software non válido','Error'=>'Erro','The specified software type is not valid.'=>'O tipo de software especificado non é válido.','There aren\'t %s vulnerabilities'=>'Non hai vulnerabilidades de %s','Shows possible vulnerabilities existing in %s.'=>'Amosa as posibles vulnerabilidades existentes en %s.','There is %1$d %2$s vulnerability'=>'Hai %1$d vulnerabilidade de %2$s.' . "\0" . 'Hai %1$d vulnerabilidades de %2$s.','We\'ve detected potential vulnerabilities in %s. Please check them and keep your installation updated.'=>'Detectamos posibles vulnerabilidades en %s. Por favor, compróbaas e mantén actualizada a túa instalación.','How to update PHP'=>'Cómo actualizar PHP','WPVulnerability Core'=>'WPVulnerability para o núcleo','WPVulnerability Themes'=>'WPVulnerability para temas','WPVulnerability Plugins'=>'WPVulnerability para plugins','WPVulnerability PHP'=>'WPVulnerability PHP','WPVulnerability Apache HTTPD'=>'WPVulnerability Apache HTTPD','WPVulnerability Nginx'=>'WPVulnerability Nginx','WPVulnerability MariaDB'=>'WPVulnerability MariaDB','WPVulnerability MySQL'=>'WPVulnerability MySQL','WPVulnerability ImageMagick'=>'WPVulnerability ImageMagick','WPVulnerability curl'=>'WPVulnerability curl','WPVulnerability memcached'=>'WPVulnerability memcached','WPVulnerability redis'=>'WPVulnerability redis','WPVulnerability sqlite'=>'WPVulnerability sqlite','This theme is closed. Please replace it with another.'=>'Este tema está pechado. Substitúeo por outro, por favor.','This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates.'=>'Esta vulnerabilidade parece non estar parcheada. Permanece atento ás próximas actualizacións do tema.','This theme has known vulnerabilities that may be affecting your installed version.'=>'Este tema ten vulnerabilidades coñecidas que poden estar afectando á túa versión instalada.']]; \ No newline at end of file diff --git a/languages/wpvulnerability-gl.mo b/languages/wpvulnerability-gl.mo new file mode 100644 index 0000000000000000000000000000000000000000..25fa05bb2007a0b52a9c5a3f783bf3972a4c7196 GIT binary patch literal 40849 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." +msgstr "" +"Este comando require un administrador de WordPress. Execútao con --" +"user=." + +#: class-wpvulnerability-cli.php:156 +msgid "No core vulnerabilities found." +msgstr "Non se atoparon vulnerabilidades no núcleo." + +#: class-wpvulnerability-cli.php:275 +msgid "No plugin vulnerabilities found." +msgstr "Non se atoparon vulnerabilidades en plugins." + +#: class-wpvulnerability-cli.php:393 +msgid "No theme vulnerabilities found." +msgstr "Non se atoparon vulnerabilidades en temas." + +#. translators: %s is the software name (php, apache, nginx, etc.) +#: class-wpvulnerability-cli.php:490 +#, php-format +msgid "No %s vulnerabilities found." +msgstr "Non se atoparon vulnerabilidades de %s." + +#: wpvulnerability-admin.php:63 wpvulnerability-adminms.php:227 +msgid "Data from source has been reloaded." +msgstr "Cargáronse de novo os datos da orixe." + +#: wpvulnerability-admin.php:65 wpvulnerability-adminms.php:229 +msgid "You do not have permission to reload data." +msgstr "Non tes permiso para recargar os datos." + +#: wpvulnerability-admin.php:93 wpvulnerability-adminms.php:255 +msgid "Test email has been sent." +msgstr "Enviouse o correo electrónico de proba." + +#: wpvulnerability-admin.php:95 wpvulnerability-adminms.php:259 +msgid "Test email has failed. Please, check your email settings." +msgstr "" +"O correo electrónico de proba fallou. Comproba a configuración do teu correo " +"electrónico." + +#: wpvulnerability-admin.php:98 wpvulnerability-adminms.php:263 +msgid "You do not have permission to send test emails." +msgstr "Non tes permiso para enviar correos electrónicos de proba." + +#: wpvulnerability-admin.php:113 +msgid "WPVulnerability cron events have been repaired." +msgstr "Os eventos cron de WPVulnerability foron reparados." + +#: wpvulnerability-admin.php:115 wpvulnerability-adminms.php:279 +msgid "You do not have permission to repair cron events." +msgstr "Non tes permiso para reparar eventos cron." + +#: wpvulnerability-admin.php:127 wpvulnerability-adminms.php:291 +msgid "All logs have been deleted." +msgstr "Eliminaron todos os rexistros." + +#: wpvulnerability-admin.php:129 wpvulnerability-adminms.php:293 +msgid "You do not have permission to delete logs." +msgstr "Non tes permiso para eliminar rexistros." + +#: wpvulnerability-admin.php:146 +msgid "Uninstall preference saved." +msgstr "Preferencia de desinstalación gardada." + +#: wpvulnerability-admin.php:153 wpvulnerability-adminms.php:316 +msgid "WPVulnerability has been reset to defaults and reloaded." +msgstr "WPVulnerability restableceu os valores predeterminados e volveu cargar." + +#: wpvulnerability-admin.php:155 wpvulnerability-adminms.php:318 +msgid "You do not have permission to reset WPVulnerability." +msgstr "Non tes permiso para restablecer WPVulnerability." + +#: wpvulnerability-admin.php:170 wpvulnerability-adminms.php:333 +msgid "All caches have been cleared." +msgstr "Limpáronse todas as cachés." + +#: wpvulnerability-admin.php:172 wpvulnerability-adminms.php:335 +msgid "You do not have permission to clear caches." +msgstr "Non tes permiso para limpar as cachés." + +#: wpvulnerability-admin.php:187 wpvulnerability-adminms.php:350 +msgid "Plugin and theme signatures have been reset." +msgstr "As sinaturas de plugins e temas foron restablecidas." + +#: wpvulnerability-admin.php:189 wpvulnerability-adminms.php:352 +msgid "You do not have permission to reset signatures." +msgstr "Non tes permiso para restablecer as sinaturas." + +#: wpvulnerability-admin.php:212 wpvulnerability-adminms.php:375 +msgid "You do not have permission to export debug information." +msgstr "Non tes permiso para exportar información de depuración." + +#: wpvulnerability-admin.php:224 wpvulnerability-adminms.php:387 +msgid "Database update has been executed." +msgstr "Executouse a actualización da base de datos." + +#: wpvulnerability-admin.php:226 wpvulnerability-adminms.php:389 +msgid "You do not have permission to run database updates." +msgstr "Non tes permiso para executar actualizacións da base de datos." + +#: wpvulnerability-admin.php:247 wpvulnerability-adminms.php:410 +msgid "Notification has been sent." +msgstr "Enviouse a notificación." + +#: wpvulnerability-admin.php:249 wpvulnerability-adminms.php:412 +msgid "Notification sending failed." +msgstr "Fallou o envío da notificación." + +#: wpvulnerability-admin.php:252 wpvulnerability-adminms.php:415 +msgid "You do not have permission to send notifications." +msgstr "Non tes permiso para enviar notificacións." + +#: wpvulnerability-admin.php:266 wpvulnerability-adminms.php:539 +#: wpvulnerability-schedule.php:323 +msgid "Notifications" +msgstr "Notificacións" + +#: wpvulnerability-admin.php:269 wpvulnerability-adminms.php:542 +msgid "Analysis" +msgstr "Análise" + +#: wpvulnerability-admin.php:272 wpvulnerability-adminms.php:545 +msgid "Logs" +msgstr "Rexistros" + +#: wpvulnerability-admin.php:275 wpvulnerability-adminms.php:548 +#: wpvulnerability-sitehealth.php:25 wpvulnerability-sitehealth.php:77 +#: wpvulnerability-sitehealth.php:129 wpvulnerability-sitehealth.php:210 +msgid "Security" +msgstr "Seguridade" + +#: wpvulnerability-admin.php:278 wpvulnerability-adminms.php:551 +msgid "Tools" +msgstr "Ferramentas" + +#: wpvulnerability-admin.php:285 wpvulnerability-adminms.php:558 +msgid "Debug" +msgstr "Depuración" + +#: wpvulnerability-admin.php:290 wpvulnerability-adminms.php:563 +msgid "About" +msgstr "Acerca de" + +#: wpvulnerability-admin.php:427 wpvulnerability-adminms.php:700 +msgid "Notification Settings" +msgstr "Configuración de notificacións" + +#: wpvulnerability-admin.php:430 wpvulnerability-adminms.php:703 +msgid "Configure how and when you want to receive vulnerability notifications." +msgstr "Configura como e cando queres recibir notificacións de vulnerabilidades." + +#: wpvulnerability-admin.php:431 wpvulnerability-adminms.php:704 +msgid "" +"Stay informed about security vulnerabilities in your WordPress installation, " +"plugins, themes, and server software." +msgstr "" +"Mantente informado sobre as vulnerabilidades de seguridade na túa instalación " +"de WordPress, plugins, temas e software do servidor." + +#: wpvulnerability-admin.php:438 wpvulnerability-adminms.php:711 +msgid "Cache Expiration Time" +msgstr "Tempo de expiración da caché" + +#: wpvulnerability-admin.php:440 wpvulnerability-admin.php:814 +#: wpvulnerability-adminms.php:713 wpvulnerability-adminms.php:1087 +msgid "FORCED" +msgstr "FORZADO" + +#: wpvulnerability-admin.php:444 wpvulnerability-adminms.php:717 +msgid "How long to cache vulnerability data before refreshing from the API." +msgstr "Canto tempo gardar en caché os datos de vulnerabilidades antes de actualizar desde a API." + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:453 wpvulnerability-admin.php:1891 +#: wpvulnerability-admin.php:3631 wpvulnerability-adminms.php:726 +#: wpvulnerability-adminms.php:2039 wpvulnerability-adminms.php:3825 +#, php-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d hora" +msgstr[1] "%d horas" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:469 wpvulnerability-adminms.php:742 +#, php-format +msgid "" +"You can force the cache time via wp-config.php constant. Learn more →" +msgstr "" +"Podes forzar o tempo de caché mediante a constante de wp-config.php. Máis información →" + +#: wpvulnerability-admin.php:481 wpvulnerability-admin.php:3665 +#: wpvulnerability-adminms.php:754 wpvulnerability-adminms.php:3859 +msgid "Notification Frequency" +msgstr "Frecuencia de notificacións" + +#: wpvulnerability-admin.php:484 wpvulnerability-adminms.php:757 +msgid "Choose how often you want to receive vulnerability notifications." +msgstr "Escolle con qué frecuencia queres recibir notificacións de vulnerabilidades." + +#: wpvulnerability-admin.php:489 wpvulnerability-adminms.php:762 +msgid "Never - Disable automatic notifications" +msgstr "Nunca - Desactivar as notificacións automáticas" + +#: wpvulnerability-admin.php:493 wpvulnerability-adminms.php:766 +msgid "Daily - Receive notifications every day" +msgstr "A diario - Recibir notificacións cada día" + +#: wpvulnerability-admin.php:497 wpvulnerability-adminms.php:770 +msgid "Weekly - Receive notifications once a week" +msgstr "Semanalmente - Recibir notificacións unha vez á semana" + +#: wpvulnerability-admin.php:503 wpvulnerability-adminms.php:776 +msgid "Day:" +msgstr "Día:" + +#: wpvulnerability-admin.php:505 wpvulnerability-admin.php:1955 +#: wpvulnerability-adminms.php:778 wpvulnerability-adminms.php:2115 +msgid "Monday" +msgstr "Luns" + +#: wpvulnerability-admin.php:506 wpvulnerability-admin.php:1956 +#: wpvulnerability-adminms.php:779 wpvulnerability-adminms.php:2116 +msgid "Tuesday" +msgstr "Martes" + +#: wpvulnerability-admin.php:507 wpvulnerability-admin.php:1957 +#: wpvulnerability-adminms.php:780 wpvulnerability-adminms.php:2117 +msgid "Wednesday" +msgstr "Mércores" + +#: wpvulnerability-admin.php:508 wpvulnerability-admin.php:1958 +#: wpvulnerability-adminms.php:781 wpvulnerability-adminms.php:2118 +msgid "Thursday" +msgstr "Xoves" + +#: wpvulnerability-admin.php:509 wpvulnerability-admin.php:1959 +#: wpvulnerability-adminms.php:782 wpvulnerability-adminms.php:2119 +msgid "Friday" +msgstr "Venres" + +#: wpvulnerability-admin.php:510 wpvulnerability-admin.php:1960 +#: wpvulnerability-adminms.php:783 wpvulnerability-adminms.php:2120 +msgid "Saturday" +msgstr "Sábado" + +#: wpvulnerability-admin.php:511 wpvulnerability-admin.php:1961 +#: wpvulnerability-adminms.php:784 wpvulnerability-adminms.php:2121 +msgid "Sunday" +msgstr "Domingo" + +#: wpvulnerability-admin.php:515 wpvulnerability-adminms.php:788 +msgid "Time:" +msgstr "Hora:" + +#: wpvulnerability-admin.php:519 wpvulnerability-adminms.php:792 +msgid "(24-hour format, server timezone)" +msgstr "(Formato de 24 horas, fuso horario do servidor)" + +#: wpvulnerability-admin.php:528 wpvulnerability-adminms.php:801 +msgid "Notification Channels" +msgstr "Canles de notificación" + +#: wpvulnerability-admin.php:531 wpvulnerability-adminms.php:804 +msgid "Select where you want to receive notifications." +msgstr "Selecciona onde queres recibir notificacións." + +#: wpvulnerability-admin.php:536 wpvulnerability-admin.php:2011 +#: wpvulnerability-adminms.php:809 wpvulnerability-adminms.php:2169 +msgid "Email" +msgstr "Correo electrónico" + +#: wpvulnerability-admin.php:539 wpvulnerability-adminms.php:812 +msgid "Email Addresses (separated by commas):" +msgstr "Enderezos de correo electrónico (separados por comas):" + +#: wpvulnerability-admin.php:541 wpvulnerability-adminms.php:814 +msgid "Default:" +msgstr "Predeterminado:" + +#: wpvulnerability-admin.php:546 wpvulnerability-admin.php:2016 +#: wpvulnerability-adminms.php:819 wpvulnerability-adminms.php:2174 +msgid "Slack" +msgstr "Slack" + +#: wpvulnerability-admin.php:549 wpvulnerability-adminms.php:822 +msgid "Slack Webhook URL:" +msgstr "URL do webhook de Slack:" + +#. translators: %s: Slack documentation URL +#: wpvulnerability-admin.php:555 wpvulnerability-adminms.php:828 +#, php-format +msgid "" +"Learn how to " +"create a Slack incoming webhook →" +msgstr "" +"Aprende como " +"crear un webhook entrante de Slack →" + +#: wpvulnerability-admin.php:564 wpvulnerability-admin.php:2021 +#: wpvulnerability-adminms.php:837 wpvulnerability-adminms.php:2179 +msgid "Microsoft Teams" +msgstr "Microsoft Teams" + +#: wpvulnerability-admin.php:567 wpvulnerability-adminms.php:840 +msgid "Teams Webhook URL:" +msgstr "URL do webhook de Teams:" + +#. translators: %s: Microsoft Teams documentation URL +#: wpvulnerability-admin.php:573 wpvulnerability-adminms.php:846 +#, php-format +msgid "" +"Learn how to " +"create a Teams incoming webhook →" +msgstr "" +"Aprende como " +"crear un webhook entrante de Teams →" + +#: wpvulnerability-admin.php:582 wpvulnerability-adminms.php:855 +msgid "Discord" +msgstr "Discord" + +#: wpvulnerability-admin.php:585 wpvulnerability-adminms.php:858 +msgid "Discord Webhook URL:" +msgstr "URL do webhook de Discord:" + +#. translators: %s: Discord documentation URL +#: wpvulnerability-admin.php:591 wpvulnerability-adminms.php:864 +#, php-format +msgid "" +"Learn how to " +"create a Discord webhook →" +msgstr "" +"Aprende como " +"crear un webhook de Discord →" + +#: wpvulnerability-admin.php:600 wpvulnerability-adminms.php:873 +msgid "Telegram" +msgstr "Telegram" + +#: wpvulnerability-admin.php:603 wpvulnerability-adminms.php:876 +msgid "Telegram Bot Token:" +msgstr "Token do bot de Telegram:" + +#: wpvulnerability-admin.php:605 wpvulnerability-adminms.php:878 +msgid "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "Formato: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:607 wpvulnerability-adminms.php:880 +msgid "Telegram Chat ID:" +msgstr "ID de chat de Telegram:" + +#. translators: %s: Telegram documentation URL +#: wpvulnerability-admin.php:613 wpvulnerability-adminms.php:886 +#, php-format +msgid "" +"Learn how to " +"create a Telegram bot and get Chat ID →" +msgstr "" +"Aprende como " +"crear un bot de Telegram e obter o ID de chat →" + +#: wpvulnerability-admin.php:623 wpvulnerability-adminms.php:896 +msgid "Save Notification Settings" +msgstr "Gardar configuración de notificacións" + +#: wpvulnerability-admin.php:700 wpvulnerability-admin.php:2552 +#: wpvulnerability-adminms.php:973 wpvulnerability-adminms.php:2459 +msgid "WordPress Components" +msgstr "Compoñentes de WordPress" + +#: wpvulnerability-admin.php:703 wpvulnerability-admin.php:2560 +#: wpvulnerability-adminms.php:976 wpvulnerability-adminms.php:2467 +msgid "WordPress Core" +msgstr "Núcleo de WordPress" + +#: wpvulnerability-admin.php:707 wpvulnerability-admin.php:1472 +#: wpvulnerability-admin.php:1573 wpvulnerability-admin.php:2109 +#: wpvulnerability-admin.php:2571 wpvulnerability-adminms.php:980 +#: wpvulnerability-adminms.php:1744 wpvulnerability-adminms.php:1843 +#: wpvulnerability-adminms.php:2266 wpvulnerability-adminms.php:2478 +msgid "Plugins" +msgstr "Plugins" + +#: wpvulnerability-admin.php:711 wpvulnerability-admin.php:1473 +#: wpvulnerability-admin.php:1574 wpvulnerability-admin.php:2114 +#: wpvulnerability-admin.php:2587 wpvulnerability-adminms.php:984 +#: wpvulnerability-adminms.php:1745 wpvulnerability-adminms.php:1844 +#: wpvulnerability-adminms.php:2271 wpvulnerability-adminms.php:2494 +msgid "Themes" +msgstr "Temas" + +#: wpvulnerability-admin.php:717 wpvulnerability-adminms.php:990 +msgid "Software & Languages" +msgstr "Software e linguaxes" + +#: wpvulnerability-admin.php:720 wpvulnerability-admin.php:1474 +#: wpvulnerability-admin.php:2119 wpvulnerability-adminms.php:993 +#: wpvulnerability-adminms.php:1746 wpvulnerability-adminms.php:2276 +#: wpvulnerability-sitehealth.php:178 +msgid "PHP" +msgstr "PHP" + +#: wpvulnerability-admin.php:726 wpvulnerability-adminms.php:999 +msgid "Web Servers" +msgstr "Servidores web" + +#: wpvulnerability-admin.php:729 wpvulnerability-admin.php:1475 +#: wpvulnerability-admin.php:2124 wpvulnerability-adminms.php:1002 +#: wpvulnerability-adminms.php:1747 wpvulnerability-adminms.php:2281 +#: wpvulnerability-sitehealth.php:179 +msgid "Apache HTTPD" +msgstr "Apache HTTPD" + +#: wpvulnerability-admin.php:733 wpvulnerability-admin.php:1476 +#: wpvulnerability-admin.php:2129 wpvulnerability-adminms.php:1006 +#: wpvulnerability-adminms.php:1748 wpvulnerability-adminms.php:2286 +msgid "nginx" +msgstr "nginx" + +#: wpvulnerability-admin.php:739 wpvulnerability-adminms.php:1012 +msgid "Databases" +msgstr "Bases de datos" + +#: wpvulnerability-admin.php:742 wpvulnerability-admin.php:1477 +#: wpvulnerability-admin.php:2134 wpvulnerability-adminms.php:1015 +#: wpvulnerability-adminms.php:1749 wpvulnerability-adminms.php:2291 +#: wpvulnerability-sitehealth.php:181 +msgid "MariaDB" +msgstr "MariaDB" + +#: wpvulnerability-admin.php:746 wpvulnerability-admin.php:1478 +#: wpvulnerability-admin.php:2139 wpvulnerability-adminms.php:1019 +#: wpvulnerability-adminms.php:1750 wpvulnerability-adminms.php:2296 +#: wpvulnerability-sitehealth.php:182 +msgid "MySQL" +msgstr "MySQL" + +#: wpvulnerability-admin.php:750 wpvulnerability-admin.php:1483 +#: wpvulnerability-admin.php:2164 wpvulnerability-admin.php:3104 +#: wpvulnerability-adminms.php:1023 wpvulnerability-adminms.php:1755 +#: wpvulnerability-adminms.php:2321 wpvulnerability-adminms.php:3281 +msgid "SQLite" +msgstr "SQLite" + +#: wpvulnerability-admin.php:756 wpvulnerability-adminms.php:1029 +msgid "Additional Tools" +msgstr "Ferramentas adicionais" + +#: wpvulnerability-admin.php:759 wpvulnerability-admin.php:1479 +#: wpvulnerability-admin.php:2144 wpvulnerability-admin.php:3101 +#: wpvulnerability-adminms.php:1032 wpvulnerability-adminms.php:1751 +#: wpvulnerability-adminms.php:2301 wpvulnerability-adminms.php:3278 +#: wpvulnerability-sitehealth.php:183 +msgid "ImageMagick" +msgstr "ImageMagick" + +#: wpvulnerability-admin.php:763 wpvulnerability-admin.php:1480 +#: wpvulnerability-admin.php:2149 wpvulnerability-adminms.php:1036 +#: wpvulnerability-adminms.php:1752 wpvulnerability-adminms.php:2306 +#: wpvulnerability-sitehealth.php:184 +msgid "curl" +msgstr "curl" + +#: wpvulnerability-admin.php:767 wpvulnerability-admin.php:1481 +#: wpvulnerability-admin.php:2154 wpvulnerability-adminms.php:1040 +#: wpvulnerability-adminms.php:1753 wpvulnerability-adminms.php:2311 +msgid "memcached" +msgstr "memcached" + +#: wpvulnerability-admin.php:771 wpvulnerability-admin.php:1482 +#: wpvulnerability-admin.php:2159 wpvulnerability-admin.php:3102 +#: wpvulnerability-adminms.php:1044 wpvulnerability-adminms.php:1754 +#: wpvulnerability-adminms.php:2316 wpvulnerability-adminms.php:3279 +msgid "Redis" +msgstr "Redis" + +#: wpvulnerability-admin.php:784 wpvulnerability-adminms.php:1057 +msgid "Component Analysis Settings" +msgstr "Configuración da análise de compoñentes" + +#: wpvulnerability-admin.php:787 wpvulnerability-adminms.php:1060 +msgid "Enable or disable vulnerability analysis for specific components." +msgstr "Activa ou desactiva a análise de vulnerabilidades para compoñentes específicos." + +#: wpvulnerability-admin.php:788 wpvulnerability-adminms.php:1061 +msgid "" +"Check the components you want to HIDE from vulnerability scans and reports. " +"Unchecked components will be actively analyzed. Components with active " +"analysis are shown in green, hidden components in red." +msgstr "" +"Marca os compoñentes que queres OCULTAR nas análises e informes de vulnerabilidades. " +"Os compoñentes desmarcados analizaranse activamente. Os compoñentes con análise " +"activa móstranse en verde, os ocultos en vermello." + +#: wpvulnerability-admin.php:820 wpvulnerability-adminms.php:1093 +msgid "Hidden (forced by constant)" +msgstr "Oculto (forzado por constante)" + +#: wpvulnerability-admin.php:823 wpvulnerability-adminms.php:1096 +msgid "🔴 Analysis disabled" +msgstr "🔴 Análise desactivada" + +#: wpvulnerability-admin.php:826 wpvulnerability-adminms.php:1099 +msgid "🟢 Analysis active" +msgstr "🟢 Análise activa" + +#: wpvulnerability-admin.php:848 wpvulnerability-adminms.php:1121 +msgid "Tip:" +msgstr "Consello:" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:852 wpvulnerability-adminms.php:1125 +#, php-format +msgid "" +"You can force-disable components via wp-config.php constants. Learn more about force-hiding " +"checks →" +msgstr "" +"Podes forzar a desactivación de compoñentes mediante constantes de wp-config.php. Máis información sobre como forzar a ocultación " +"de verificacións →" + +#: wpvulnerability-admin.php:860 wpvulnerability-adminms.php:1133 +msgid "Save Analysis Settings" +msgstr "Gardar configuración da análise" + +#: wpvulnerability-admin.php:920 wpvulnerability-adminms.php:1193 +msgid "« Previous" +msgstr "« Anterior" + +#: wpvulnerability-admin.php:921 wpvulnerability-adminms.php:1194 +msgid "Next »" +msgstr "Seguinte »" + +#: wpvulnerability-admin.php:932 wpvulnerability-adminms.php:1205 +msgid "Log entry not found or has been removed." +msgstr "Non se atopou a entrada de rexistro ou foi eliminada." + +#: wpvulnerability-admin.php:935 wpvulnerability-adminms.php:1208 +msgid "Unable to load the requested log entry." +msgstr "Non se puido cargar a entrada de rexistro solicitada." + +#: wpvulnerability-admin.php:945 wpvulnerability-adminms.php:1218 +msgid "Log Configuration" +msgstr "Configuración de rexistros" + +#: wpvulnerability-admin.php:950 wpvulnerability-adminms.php:1223 +msgid "Total Logs" +msgstr "Total de rexistros" + +#: wpvulnerability-admin.php:954 wpvulnerability-adminms.php:1227 +msgid "Retention Period" +msgstr "Período de retención" + +#: wpvulnerability-admin.php:959 wpvulnerability-admin.php:1301 +#: wpvulnerability-admin.php:3029 wpvulnerability-admin.php:3043 +#: wpvulnerability-admin.php:3475 wpvulnerability-admin.php:3483 +#: wpvulnerability-adminms.php:1232 wpvulnerability-adminms.php:1574 +#: wpvulnerability-adminms.php:3206 wpvulnerability-adminms.php:3220 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Disabled" +msgstr "Desactivado" + +#. translators: %d: Number of days. +#. translators: %d: number of days +#: wpvulnerability-admin.php:962 wpvulnerability-admin.php:984 +#: wpvulnerability-admin.php:3641 wpvulnerability-adminms.php:1235 +#: wpvulnerability-adminms.php:1257 wpvulnerability-adminms.php:3835 +#, php-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d día" +msgstr[1] "%d días" + +#: wpvulnerability-admin.php:975 wpvulnerability-adminms.php:1248 +msgid "Log Retention Period" +msgstr "Período de retención dos rexistros" + +#: wpvulnerability-admin.php:981 wpvulnerability-adminms.php:1254 +msgid "None (Disabled)" +msgstr "Ningún (Desactivado)" + +#: wpvulnerability-admin.php:1004 wpvulnerability-adminms.php:1277 +msgid "" +"This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant." +msgstr "" +"Este valor está imposto pola constante WPVULNERABILITY_LOG_RETENTION_DAYS." + +#: wpvulnerability-admin.php:1009 wpvulnerability-adminms.php:1282 +msgid "" +"Choose how long WPVulnerability should keep API response logs. Older logs " +"are automatically deleted." +msgstr "" +"Escolle canto tempo debe gardar WPVulnerability os rexistros de respostas da API. Os rexistros " +"máis antigos elimínanse automaticamente." + +#: wpvulnerability-admin.php:1013 wpvulnerability-adminms.php:1286 +msgid "Save Configuration" +msgstr "Gardar configuración" + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "Log retention is currently disabled." +msgstr "A retención de rexistros está actualmente desactivada." + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "API responses are not being saved." +msgstr "As respostas da API non se están gardando." + +#: wpvulnerability-admin.php:1031 wpvulnerability-adminms.php:1304 +msgid "Log Details" +msgstr "Detalles do rexistro" + +#: wpvulnerability-admin.php:1035 wpvulnerability-admin.php:1104 +#: wpvulnerability-adminms.php:1308 wpvulnerability-adminms.php:1377 +msgid "Date" +msgstr "Data" + +#: wpvulnerability-admin.php:1039 wpvulnerability-admin.php:1105 +#: wpvulnerability-adminms.php:1312 wpvulnerability-adminms.php:1378 +msgid "API Endpoint" +msgstr "Punto final da API" + +#: wpvulnerability-admin.php:1044 wpvulnerability-adminms.php:1317 +msgid "API Response" +msgstr "Resposta da API" + +#: wpvulnerability-admin.php:1049 wpvulnerability-adminms.php:1322 +msgid "Back to Logs" +msgstr "Volver aos rexistros" + +#: wpvulnerability-admin.php:1058 wpvulnerability-adminms.php:1331 +msgid "No logs available" +msgstr "Non hai rexistros dispoñibles" + +#: wpvulnerability-admin.php:1059 wpvulnerability-adminms.php:1332 +msgid "API response logs will appear here once the vulnerability scanner runs." +msgstr "Os rexistros de respostas da API aparecerán aquí unha vez que se execute o escáner de vulnerabilidades." + +#: wpvulnerability-admin.php:1063 wpvulnerability-adminms.php:1336 +msgid "API Response Logs" +msgstr "Rexistros de respostas da API" + +#: wpvulnerability-admin.php:1073 wpvulnerability-adminms.php:1346 +msgid "Show:" +msgstr "Amosar:" + +#: wpvulnerability-admin.php:1082 wpvulnerability-adminms.php:1355 +msgid "Apply" +msgstr "Aplicar" + +#. translators: 1: first item, 2: last item, 3: total items +#: wpvulnerability-admin.php:1090 wpvulnerability-adminms.php:1363 +#, php-format +msgid "Showing %1$s–%2$s of %3$s" +msgstr "Amosando %1$s–%2$s de %3$s" + +#: wpvulnerability-admin.php:1106 wpvulnerability-adminms.php:1379 +msgid "Actions" +msgstr "Accións" + +#: wpvulnerability-admin.php:1133 wpvulnerability-admin.php:3957 +#: wpvulnerability-adminms.php:1406 wpvulnerability-adminms.php:4151 +msgid "View" +msgstr "Ver" + +#: wpvulnerability-admin.php:1150 wpvulnerability-adminms.php:1423 +msgid "Danger Zone" +msgstr "Zona de perigo" + +#: wpvulnerability-admin.php:1152 wpvulnerability-adminms.php:1425 +msgid "Permanently delete all API response logs. This action cannot be undone." +msgstr "Eliminar permanentemente todos os rexistros de respostas da API. Esta acción non se pode desfacer." + +#: wpvulnerability-admin.php:1154 wpvulnerability-adminms.php:1427 +msgid "Are you sure you want to delete all logs? This action cannot be undone." +msgstr "Tes a certeza de que queres eliminar todos os rexistros? Esta acción non se pode desfacer." + +#: wpvulnerability-admin.php:1157 wpvulnerability-adminms.php:1430 +msgid "Delete All Logs" +msgstr "Eliminar todos os rexistros" + +#: wpvulnerability-admin.php:1201 wpvulnerability-adminms.php:1474 +msgid "Reload Data from API" +msgstr "Recargar datos desde a API" + +#: wpvulnerability-admin.php:1204 wpvulnerability-adminms.php:1477 +msgid "" +"Reload all Core, Plugins, Themes and other components information directly " +"from the API to have updated data. This will clear the cache and fetch fresh " +"vulnerability information." +msgstr "" +"Recarga toda a información do núcleo, plugins, temas e outros compoñentes directamente " +"desde a API para ter datos actualizados. Isto limpará a caché e obterá información " +"actualizada sobre vulnerabilidades." + +#: wpvulnerability-admin.php:1209 wpvulnerability-adminms.php:1482 +msgid "Reload Data" +msgstr "Recargar datos" + +#: wpvulnerability-admin.php:1218 wpvulnerability-adminms.php:1491 +msgid "Test Email Notifications" +msgstr "Probar notificacións por correo electrónico" + +#: wpvulnerability-admin.php:1221 wpvulnerability-adminms.php:1494 +msgid "" +"Send a test email notification with current vulnerability data to verify " +"your email configuration is working correctly." +msgstr "" +"Envía unha notificación de correo electrónico de proba cos datos actuais de vulnerabilidades " +"para verificar que a configuración do teu correo electrónico funciona correctamente." + +#: wpvulnerability-admin.php:1231 wpvulnerability-adminms.php:1504 +msgid "From address (configured via constant):" +msgstr "Enderezo de orixe (configurado mediante constante):" + +#: wpvulnerability-admin.php:1243 wpvulnerability-adminms.php:1516 +msgid "From address (default):" +msgstr "Enderezo de orixe (predeterminado):" + +#: wpvulnerability-admin.php:1252 wpvulnerability-adminms.php:1525 +msgid "Learn how to customize the email sender address →" +msgstr "Aprende como personalizar o enderezo do remitente do correo electrónico →" + +#: wpvulnerability-admin.php:1258 wpvulnerability-adminms.php:1531 +msgid "Send Test Email" +msgstr "Enviar correo electrónico de proba" + +#: wpvulnerability-admin.php:1267 wpvulnerability-adminms.php:1540 +msgid "WP-Cron Status" +msgstr "Estado de WP-Cron" + +#: wpvulnerability-admin.php:1270 wpvulnerability-adminms.php:1543 +msgid "" +"View and manage WP-Cron scheduled events. Compare expected schedules with " +"actual cron jobs to ensure automated tasks are running correctly." +msgstr "" +"Ve e xestiona os eventos programados de WP-Cron. Compara as programacións esperadas coas " +"tarefas cron reais para asegurarte de que as tarefas automatizadas se executan correctamente." + +#: wpvulnerability-admin.php:1275 wpvulnerability-adminms.php:1548 +msgid "No cron data available." +msgstr "Non hai datos de cron dispoñibles." + +#: wpvulnerability-admin.php:1281 wpvulnerability-adminms.php:1554 +msgid "Hook" +msgstr "Hook" + +#: wpvulnerability-admin.php:1282 wpvulnerability-adminms.php:1555 +msgid "Expected" +msgstr "Esperado" + +#: wpvulnerability-admin.php:1283 wpvulnerability-adminms.php:1556 +msgid "Found" +msgstr "Atopado" + +#: wpvulnerability-admin.php:1284 wpvulnerability-adminms.php:1557 +msgid "Next Run" +msgstr "Próxima execución" + +#: wpvulnerability-admin.php:1285 wpvulnerability-admin.php:3236 +#: wpvulnerability-admin.php:3559 wpvulnerability-adminms.php:1558 +#: wpvulnerability-adminms.php:3413 wpvulnerability-adminms.php:3753 +msgid "Status" +msgstr "Estado" + +#: wpvulnerability-admin.php:1299 wpvulnerability-adminms.php:1572 +msgid "Not expected" +msgstr "Non esperado" + +#: wpvulnerability-admin.php:1321 wpvulnerability-adminms.php:1594 +#: wpvulnerability-general.php:1871 wpvulnerability-general.php:1872 +msgid "None" +msgstr "Ningunha" + +#: wpvulnerability-admin.php:1356 wpvulnerability-adminms.php:1629 +msgid "OK" +msgstr "Correcto" + +#: wpvulnerability-admin.php:1366 wpvulnerability-adminms.php:1639 +msgid "⚠️ Unexpected WPVulnerability Events" +msgstr "⚠️ Eventos inesperados de WPVulnerability" + +#: wpvulnerability-admin.php:1383 wpvulnerability-adminms.php:1656 +msgid "No interval" +msgstr "Sen intervalo" + +#: wpvulnerability-admin.php:1390 wpvulnerability-adminms.php:1663 +msgid "Next:" +msgstr "Seguinte:" + +#: wpvulnerability-admin.php:1400 wpvulnerability-adminms.php:1673 +msgid "Repair Cron Events" +msgstr "Reparar eventos cron" + +#: wpvulnerability-admin.php:1408 wpvulnerability-adminms.php:1681 +msgid "Uninstall Data" +msgstr "Datos de desinstalación" + +#: wpvulnerability-admin.php:1410 wpvulnerability-adminms.php:1683 +msgid "" +"By default, all plugin data is preserved when WPVulnerability is deleted. " +"Enable the option below only if you want all options, logs, and cached data " +"permanently removed on uninstall." +msgstr "" +"Por defecto, todos os datos do plugin consérvanse cando se elimina WPVulnerability. " +"Activa a opción de abaixo só se queres que todas as opcións, rexistros e datos en caché " +"se eliminen permanentemente ao desinstalar." + +#: wpvulnerability-admin.php:1420 wpvulnerability-adminms.php:1693 +msgid "Delete all plugin data on uninstall" +msgstr "Eliminar todos os datos do plugin ao desinstalar" + +#: wpvulnerability-admin.php:1423 wpvulnerability-adminms.php:1696 +msgid "" +"Default: unchecked (data preserved). Check only if you want a clean removal." +msgstr "" +"Predeterminado: desmarcado (datos conservados). Marca só se queres unha eliminación limpa." + +#: wpvulnerability-admin.php:1425 wpvulnerability-adminms.php:1698 +msgid "Save preference" +msgstr "Gardar preferencia" + +#: wpvulnerability-admin.php:1432 wpvulnerability-adminms.php:1705 +msgid "Reset WPVulnerability" +msgstr "Restablecer WPVulnerability" + +#: wpvulnerability-admin.php:1434 wpvulnerability-adminms.php:1707 +msgid "" +"Delete all WPVulnerability settings, cached data, logs, and scheduled " +"events, then restore defaults and reload data from the API." +msgstr "" +"Elimina toda a configuración de WPVulnerability, datos en caché, rexistros e eventos " +"programados, e logo restaura os valores predeterminados e recarga datos desde a API." + +#: wpvulnerability-admin.php:1436 wpvulnerability-adminms.php:1709 +msgid "This action cannot be undone." +msgstr "Esta acción non se pode desfacer." + +#: wpvulnerability-admin.php:1438 wpvulnerability-adminms.php:1711 +msgid "" +"Are you sure you want to reset all WPVulnerability data? This action cannot " +"be undone." +msgstr "" +"Tes a certeza de que queres restablecer todos os datos de WPVulnerability? Esta acción non " +"se pode desfacer." + +#: wpvulnerability-admin.php:1441 wpvulnerability-adminms.php:1713 +msgid "Reset Plugin" +msgstr "Restablecer plugin" + +#: wpvulnerability-admin.php:1468 wpvulnerability-adminms.php:1740 +msgid "Vulnerability Database Statistics" +msgstr "Estatísticas da base de datos de vulnerabilidades" + +#. translators: number of vulnerabilities. +#: wpvulnerability-admin.php:1510 wpvulnerability-adminms.php:1782 +#, php-format +msgid "%s vulnerability" +msgid_plural "%s vulnerabilities" +msgstr[0] "%s vulnerabilidade" +msgstr[1] "%s vulnerabilidades" + +#. translators: number of products. +#: wpvulnerability-admin.php:1520 wpvulnerability-adminms.php:1792 +#, php-format +msgid "(%s product)" +msgid_plural "(%s products)" +msgstr[0] "(%s produto)" +msgstr[1] "(%s produtos)" + +#: wpvulnerability-admin.php:1527 wpvulnerability-adminms.php:1799 +msgid "No data" +msgstr "Sen datos" + +#. translators: date of last update. +#: wpvulnerability-admin.php:1544 wpvulnerability-adminms.php:1814 +#, php-format +msgid "Database last updated: %s" +msgstr "Base de datos actualizada por última vez: %s" + +#: wpvulnerability-admin.php:1566 wpvulnerability-adminms.php:1836 +msgid "Intelligence Sources" +msgstr "Fontes de intelixencia" + +#: wpvulnerability-admin.php:1567 wpvulnerability-adminms.php:1837 +msgid "Number of vulnerabilities contributed by each intelligence source." +msgstr "Número de vulnerabilidades aportadas por cada fonte de intelixencia." + +#: wpvulnerability-admin.php:1571 wpvulnerability-adminms.php:1841 +msgid "Source" +msgstr "Fonte" + +#: wpvulnerability-admin.php:1572 wpvulnerability-admin.php:2104 +#: wpvulnerability-adminms.php:1842 wpvulnerability-adminms.php:2261 +msgid "Core" +msgstr "Núcleo" + +#: wpvulnerability-admin.php:1603 wpvulnerability-adminms.php:1873 +msgid "Sponsors" +msgstr "Patrocinadores" + +#: wpvulnerability-admin.php:1626 wpvulnerability-adminms.php:1896 +msgid "No sponsor data available." +msgstr "Non hai datos de patrocinadores dispoñibles." + +#: wpvulnerability-admin.php:1633 wpvulnerability-adminms.php:1903 +msgid "Contributors" +msgstr "Colaboradores" + +#: wpvulnerability-admin.php:1656 wpvulnerability-adminms.php:1926 +msgid "No contributor data available." +msgstr "Non hai datos de colaboradores dispoñibles." + +#: wpvulnerability-admin.php:1674 wpvulnerability-adminms.php:432 +msgid "You do not have sufficient permissions to access this page." +msgstr "Non tes permisos suficientes para acceder a esta páxina." + +#: wpvulnerability-admin.php:1684 wpvulnerability-adminms.php:441 +msgid "WPVulnerability settings" +msgstr "Axustes de WPVulnerability" + +#: wpvulnerability-admin.php:1801 wpvulnerability-adminms.php:1963 +msgid "Configure and save these settings to receive notifications." +msgstr "Configura e garda estes axustes para recibir notificacións." + +#: wpvulnerability-admin.php:1814 wpvulnerability-adminms.php:2071 +msgid "Configure and save these settings to hide vulnerabilities." +msgstr "Configura e garda estes axustes para ocultar vulnerabilidades." + +#: wpvulnerability-admin.php:1845 wpvulnerability-adminms.php:1993 +msgid "Default administrator email" +msgstr "Correo electrónico do administrador por defecto" + +#: wpvulnerability-admin.php:1909 wpvulnerability-adminms.php:2057 +msgid "Read more if you want to force the cache time." +msgstr "Le máis se queres forzar o tempo de caché." + +#: wpvulnerability-admin.php:1939 wpvulnerability-adminms.php:2099 +msgid "Never" +msgstr "Nunca" + +#: wpvulnerability-admin.php:1944 wpvulnerability-adminms.php:2104 +msgid "Daily" +msgstr "A diario" + +#: wpvulnerability-admin.php:1949 wpvulnerability-adminms.php:2109 +msgid "Weekly" +msgstr "Semanalmente" + +#: wpvulnerability-admin.php:1953 wpvulnerability-adminms.php:2113 +msgid "Day" +msgstr "Día" + +#: wpvulnerability-admin.php:1966 wpvulnerability-adminms.php:2126 +msgid "Hour" +msgstr "Hora" + +#: wpvulnerability-admin.php:1968 wpvulnerability-adminms.php:2128 +msgid "Minute" +msgstr "Minuto" + +#: wpvulnerability-admin.php:2166 wpvulnerability-adminms.php:2323 +msgid "Read more about how to force the deactivation of an item." +msgstr "Le máis sobre como forzar a desactivación dun elemento." + +#: wpvulnerability-admin.php:2292 wpvulnerability-adminms.php:2870 +msgid "" +"Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com" +msgstr "" +"URL de webhook de Slack non válida. Debe ser unha URL HTTPS válida de hooks.slack.com" + +#: wpvulnerability-admin.php:2315 wpvulnerability-adminms.php:2893 +msgid "" +"Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office." +"com, office365.com, or api.hooks.microsoft.com" +msgstr "" +"URL de webhook de Microsoft Teams non válida. Debe ser unha URL HTTPS válida de office." +"com, office365.com ou api.hooks.microsoft.com" + +#: wpvulnerability-admin.php:2338 wpvulnerability-adminms.php:2916 +msgid "" +"Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or " +"discordapp.com" +msgstr "" +"URL de webhook de Discord non válida. Debe ser unha URL HTTPS válida de discord.com ou " +"discordapp.com" + +#: wpvulnerability-admin.php:2357 wpvulnerability-adminms.php:2935 +msgid "" +"Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-" +"zyx57W2v1u123ew11" +msgstr "" +"Formato de token do bot de Telegram non válido. Debe ser como: 123456:ABC-DEF1234ghIkl-" +"zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:2493 wpvulnerability-adminms.php:2400 +msgid "All Clear" +msgstr "Todo correcto" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2503 wpvulnerability-adminms.php:2410 +#, php-format +msgid "%d Critical Issue Found" +msgid_plural "%d Critical Issues Found" +msgstr[0] "%d problema crítico atopado" +msgstr[1] "%d problemas críticos atopados" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2508 wpvulnerability-adminms.php:2415 +#, php-format +msgid "%d Issue Found" +msgid_plural "%d Issues Found" +msgstr[0] "%d problema atopado" +msgstr[1] "%d problemas atopados" + +#: wpvulnerability-admin.php:2515 wpvulnerability-adminms.php:2422 +msgid "Never checked" +msgstr "Nunca verificado" + +#. translators: %d: number of minutes +#: wpvulnerability-admin.php:2523 wpvulnerability-adminms.php:2430 +#, php-format +msgid "%d minute ago" +msgid_plural "%d minutes ago" +msgstr[0] "hai %d minuto" +msgstr[1] "hai %d minutos" + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:2527 wpvulnerability-adminms.php:2434 +#, php-format +msgid "%d hour ago" +msgid_plural "%d hours ago" +msgstr[0] "hai %d hora" +msgstr[1] "hai %d horas" + +#. translators: %s: time since last check +#: wpvulnerability-admin.php:2539 wpvulnerability-adminms.php:2446 +#, php-format +msgid "Last checked: %s" +msgstr "Última verificación: %s" + +#: wpvulnerability-admin.php:2540 wpvulnerability-adminms.php:2447 +msgid "Refresh Now" +msgstr "Actualizar agora" + +#: wpvulnerability-admin.php:2547 wpvulnerability-adminms.php:2454 +msgid "No vulnerabilities detected" +msgstr "Non se detectaron vulnerabilidades" + +#: wpvulnerability-admin.php:2548 wpvulnerability-adminms.php:2455 +msgid "Your site is up to date and secure" +msgstr "O teu sitio está actualizado e seguro" + +#: wpvulnerability-admin.php:2616 wpvulnerability-adminms.php:2523 +msgid "Server Software" +msgstr "Software do servidor" + +#: wpvulnerability-admin.php:2829 wpvulnerability-adminms.php:2736 +msgid "Site Health" +msgstr "Saúde do sitio" + +#: wpvulnerability-admin.php:2831 wpvulnerability-adminms.php:2738 +#: wpvulnerability-run.php:33 +msgid "Settings" +msgstr "Axustes" + +#: wpvulnerability-admin.php:2846 wpvulnerability-adminms.php:2754 +msgid "WPVulnerability Status" +msgstr "Estado de WPVulnerability" + +#: wpvulnerability-admin.php:2878 wpvulnerability-adminms.php:3052 +msgid "Receive vulnerability notifications" +msgstr "Recibir notificacións de vulnerabilidades" + +#: wpvulnerability-admin.php:2886 wpvulnerability-adminms.php:3060 +msgid "Cache expiration time" +msgstr "Tempo de expiración da caché" + +#: wpvulnerability-admin.php:2895 wpvulnerability-adminms.php:3069 +msgid "How often you want to receive notifications" +msgstr "Con qué frecuencia queres recibir notificacións:" + +#: wpvulnerability-admin.php:2904 wpvulnerability-adminms.php:3078 +msgid "Where do you want to receive notifications?" +msgstr "Onde queres recibir notificacións?" + +#: wpvulnerability-admin.php:2913 wpvulnerability-adminms.php:3087 +msgid "Email addresses to notify (separated by commas)" +msgstr "Correos electrónicos aos que notificar (separados por comas)" + +#: wpvulnerability-admin.php:2922 wpvulnerability-adminms.php:3096 +msgid "Slack webhook URL" +msgstr "URL do webhook de Slack" + +#: wpvulnerability-admin.php:2931 wpvulnerability-adminms.php:3105 +msgid "Teams webhook URL" +msgstr "URL do webhook de Teams" + +#: wpvulnerability-admin.php:2950 wpvulnerability-adminms.php:3126 +msgid "Vulnerabilities to hide" +msgstr "Vulnerabilidades a ocultar" + +#: wpvulnerability-admin.php:2958 wpvulnerability-adminms.php:3134 +msgid "What do you want to hide?" +msgstr "Que queres ocultar?" + +#: wpvulnerability-admin.php:3008 wpvulnerability-adminms.php:3185 +msgid "Standard (Hybrid Detection)" +msgstr "Estándar (detección híbrida)" + +#: wpvulnerability-admin.php:3009 wpvulnerability-adminms.php:3186 +msgid "Strict (Extensions Only)" +msgstr "Estrito (só extensións)" + +#: wpvulnerability-admin.php:3010 wpvulnerability-adminms.php:3187 +msgid "Disabled (No Detection)" +msgstr "Desactivado (sen detección)" + +#: wpvulnerability-admin.php:3016 wpvulnerability-adminms.php:3193 +msgid "Security Status" +msgstr "Estado de seguridade" + +#: wpvulnerability-admin.php:3020 wpvulnerability-adminms.php:3197 +msgid "Security Mode" +msgstr "Modo de seguridade" + +#: wpvulnerability-admin.php:3025 wpvulnerability-adminms.php:3202 +msgid "Shell Execution" +msgstr "Execución de shell" + +#: wpvulnerability-admin.php:3027 wpvulnerability-admin.php:3475 +#: wpvulnerability-admin.php:3483 wpvulnerability-adminms.php:3204 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Enabled" +msgstr "Activado" + +#: wpvulnerability-admin.php:3034 wpvulnerability-adminms.php:3211 +msgid "Audit Logging" +msgstr "Rexistro de auditoría" + +#. translators: %d: number of days +#: wpvulnerability-admin.php:3039 wpvulnerability-adminms.php:3216 +#, php-format +msgid "Enabled (%d days)" +msgstr "Activado (%d días)" + +#: wpvulnerability-admin.php:3048 wpvulnerability-adminms.php:3225 +msgid "Total Log Entries" +msgstr "Total de entradas de rexistro" + +#: wpvulnerability-admin.php:3055 wpvulnerability-adminms.php:3232 +msgid "Last Shell Execution" +msgstr "Última execución de shell" + +#. translators: %s: time ago +#: wpvulnerability-admin.php:3061 wpvulnerability-admin.php:3266 +#: wpvulnerability-adminms.php:3238 wpvulnerability-adminms.php:3441 +#, php-format +msgid "%s ago" +msgstr "hai %s" + +#: wpvulnerability-admin.php:3073 wpvulnerability-adminms.php:3250 +msgid "" +"Configure security settings via wp-config.php constants: " +"WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, " +"WPVULNERABILITY_SHELL_EXEC_WHITELIST." +msgstr "" +"Configura os axustes de seguridade mediante as constantes de wp-config.php: " +"WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, " +"WPVULNERABILITY_SHELL_EXEC_WHITELIST." + +#. translators: %s: URL to security documentation +#: wpvulnerability-admin.php:3079 wpvulnerability-adminms.php:3256 +#, php-format +msgid "" +"See security " +"configuration documentation for details." +msgstr "" +"Consulta a documentación de " +"configuración de seguridade para obter máis detalles." + +#: wpvulnerability-admin.php:3103 wpvulnerability-adminms.php:3280 +msgid "Memcached" +msgstr "Memcached" + +#: wpvulnerability-admin.php:3131 wpvulnerability-adminms.php:3308 +msgid "Imagick Extension" +msgstr "Extensión Imagick" + +#: wpvulnerability-admin.php:3132 wpvulnerability-adminms.php:3309 +msgid "Redis Extension" +msgstr "Extensión Redis" + +#: wpvulnerability-admin.php:3133 wpvulnerability-adminms.php:3310 +msgid "Memcached Extension" +msgstr "Extensión Memcached" + +#: wpvulnerability-admin.php:3134 wpvulnerability-adminms.php:3311 +msgid "Memcache Extension" +msgstr "Extensión Memcache" + +#: wpvulnerability-admin.php:3135 wpvulnerability-adminms.php:3312 +msgid "SQLite3 Extension" +msgstr "Extensión SQLite3" + +#: wpvulnerability-admin.php:3136 wpvulnerability-adminms.php:3313 +msgid "PDO SQLite" +msgstr "PDO SQLite" + +#: wpvulnerability-admin.php:3137 wpvulnerability-adminms.php:3314 +msgid "Shell Command" +msgstr "Comando de shell" + +#: wpvulnerability-admin.php:3138 wpvulnerability-adminms.php:3315 +msgid "Binary Check" +msgstr "Verificación de binario" + +#: wpvulnerability-admin.php:3139 wpvulnerability-adminms.php:3316 +msgid "Not Detected" +msgstr "Non detectado" + +#: wpvulnerability-admin.php:3143 wpvulnerability-adminms.php:3320 +msgid "Software Detection Methods" +msgstr "Métodos de detección de software" + +#: wpvulnerability-admin.php:3144 wpvulnerability-adminms.php:3321 +msgid "" +"Shows which detection method was used for each software component and the " +"reliability score." +msgstr "" +"Amosa que método de detección se utilizou para cada compoñente de software e a " +"puntuación de fiabilidade." + +#: wpvulnerability-admin.php:3149 wpvulnerability-admin.php:3234 +#: wpvulnerability-admin.php:3558 wpvulnerability-adminms.php:3326 +#: wpvulnerability-adminms.php:3411 wpvulnerability-adminms.php:3752 +msgid "Component" +msgstr "Compoñente" + +#: wpvulnerability-admin.php:3150 wpvulnerability-adminms.php:3327 +msgid "Version" +msgstr "Versión" + +#: wpvulnerability-admin.php:3151 wpvulnerability-adminms.php:3328 +msgid "Detection Method" +msgstr "Método de detección" + +#: wpvulnerability-admin.php:3152 wpvulnerability-adminms.php:3329 +msgid "Reliability" +msgstr "Fiabilidade" + +#: wpvulnerability-admin.php:3164 wpvulnerability-adminms.php:3341 +msgid "Not detected" +msgstr "Non detectado" + +#: wpvulnerability-admin.php:3220 wpvulnerability-adminms.php:3397 +msgid "Shell Execution Audit Logs" +msgstr "Rexistros de auditoría de execución de shell" + +#: wpvulnerability-admin.php:3221 wpvulnerability-adminms.php:3398 +msgid "" +"Complete audit trail of shell command executions for security monitoring." +msgstr "" +"Rastro de auditoría completo das execucións de comandos de shell para a supervisión de seguridade." + +#: wpvulnerability-admin.php:3226 wpvulnerability-adminms.php:3403 +msgid "No shell execution logs found." +msgstr "Non se atoparon rexistros de execución de shell." + +#: wpvulnerability-admin.php:3227 wpvulnerability-adminms.php:3404 +msgid "" +"Logs will appear here when shell commands are executed for software " +"detection." +msgstr "" +"Os rexistros aparecerán aquí cando se executen comandos de shell para a " +"detección de software." + +#: wpvulnerability-admin.php:3233 wpvulnerability-adminms.php:3410 +msgid "Time" +msgstr "Hora" + +#: wpvulnerability-admin.php:3235 wpvulnerability-adminms.php:3412 +msgid "Command" +msgstr "Comando" + +#: wpvulnerability-admin.php:3237 wpvulnerability-adminms.php:3414 +msgid "User" +msgstr "Usuario" + +#: wpvulnerability-admin.php:3238 wpvulnerability-adminms.php:3415 +msgid "Output" +msgstr "Saída" + +#. translators: %d: number of logs shown +#: wpvulnerability-admin.php:3302 wpvulnerability-adminms.php:3477 +#, php-format +msgid "Showing the %d most recent log entries." +msgstr "Amosando as %d entradas de rexistro máis recentes." + +#: wpvulnerability-admin.php:3320 wpvulnerability-adminms.php:3565 +msgid "Invalid nonce." +msgstr "Nonce non válido." + +#: wpvulnerability-admin.php:3325 wpvulnerability-adminms.php:3570 +msgid "Insufficient permissions." +msgstr "Permisos insuficientes." + +#: wpvulnerability-admin.php:3331 wpvulnerability-adminms.php:3576 +msgid "No component specified." +msgstr "Non se especificou ningún compoñente." + +#: wpvulnerability-admin.php:3366 wpvulnerability-adminms.php:3524 +msgid "Debug Information" +msgstr "Información de depuración" + +#: wpvulnerability-admin.php:3368 wpvulnerability-adminms.php:3526 +msgid "This tab is only visible when WP_DEBUG is enabled. Use with caution." +msgstr "Esta pestana só é visible cando WP_DEBUG está activado. Usa con precaución." + +#: wpvulnerability-admin.php:3429 wpvulnerability-adminms.php:3623 +msgid "System Information" +msgstr "Información do sistema" + +#: wpvulnerability-admin.php:3433 wpvulnerability-adminms.php:3627 +msgid "WordPress Version" +msgstr "Versión de WordPress" + +#: wpvulnerability-admin.php:3437 wpvulnerability-adminms.php:3631 +msgid "Multisite" +msgstr "Multisitio" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "Yes" +msgstr "Si" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "No" +msgstr "Non" + +#: wpvulnerability-admin.php:3441 wpvulnerability-adminms.php:3635 +msgid "Language" +msgstr "Idioma" + +#: wpvulnerability-admin.php:3445 wpvulnerability-adminms.php:3639 +msgid "PHP Version" +msgstr "Versión de PHP" + +#: wpvulnerability-admin.php:3449 wpvulnerability-adminms.php:3643 +msgid "PHP Extensions" +msgstr "Extensións de PHP" + +#: wpvulnerability-admin.php:3460 wpvulnerability-adminms.php:3654 +msgid "PHP Memory Limit" +msgstr "Límite de memoria de PHP" + +#: wpvulnerability-admin.php:3464 wpvulnerability-adminms.php:3658 +msgid "Database" +msgstr "Base de datos" + +#: wpvulnerability-admin.php:3468 wpvulnerability-adminms.php:3662 +msgid "Web Server" +msgstr "Servidor web" + +#: wpvulnerability-admin.php:3472 wpvulnerability-adminms.php:3666 +msgid "WP_DEBUG" +msgstr "WP_DEBUG" + +#: wpvulnerability-admin.php:3480 wpvulnerability-adminms.php:3674 +msgid "WP_DEBUG_LOG" +msgstr "WP_DEBUG_LOG" + +#: wpvulnerability-admin.php:3490 wpvulnerability-adminms.php:3684 +msgid "Path:" +msgstr "Ruta:" + +#. translators: %s: file size +#: wpvulnerability-admin.php:3499 wpvulnerability-adminms.php:3698 +#, php-format +msgid "Size: %s" +msgstr "Tamaño: %s" + +#: wpvulnerability-admin.php:3510 wpvulnerability-adminms.php:3704 +msgid "View Log File" +msgstr "Ver arquivo de rexistro" + +#: wpvulnerability-admin.php:3516 wpvulnerability-adminms.php:3710 +msgid "Log file is not web-accessible (outside wp-content)" +msgstr "O arquivo de rexistro non é accesible desde a web (fóra de wp-content)" + +#: wpvulnerability-admin.php:3522 wpvulnerability-adminms.php:3716 +msgid "Log file does not exist yet" +msgstr "O arquivo de rexistro aínda non existe" + +#: wpvulnerability-admin.php:3530 wpvulnerability-adminms.php:3724 +msgid "Plugin Version" +msgstr "Versión do plugin" + +#: wpvulnerability-admin.php:3554 wpvulnerability-adminms.php:3748 +msgid "Component Detection" +msgstr "Detección de compoñentes" + +#: wpvulnerability-admin.php:3560 wpvulnerability-adminms.php:3754 +msgid "Version Detected" +msgstr "Versión detectada" + +#: wpvulnerability-admin.php:3561 wpvulnerability-adminms.php:3755 +msgid "Analyzed" +msgstr "Analizado" + +#: wpvulnerability-admin.php:3562 wpvulnerability-adminms.php:3756 +msgid "Cache Status" +msgstr "Estado da caché" + +#: wpvulnerability-admin.php:3622 wpvulnerability-adminms.php:3816 +msgid "Configuration Summary" +msgstr "Resumo da configuración" + +#: wpvulnerability-admin.php:3626 wpvulnerability-adminms.php:3820 +msgid "Cache Duration" +msgstr "Duración da caché" + +#: wpvulnerability-admin.php:3636 wpvulnerability-adminms.php:3830 +msgid "Log Retention" +msgstr "Retención de rexistros" + +#: wpvulnerability-admin.php:3646 wpvulnerability-adminms.php:3840 +msgid "Components Analyzed" +msgstr "Compoñentes analizados" + +#: wpvulnerability-admin.php:3661 wpvulnerability-adminms.php:3855 +msgid "Notification Email" +msgstr "Correo electrónico de notificación" + +#: wpvulnerability-admin.php:3682 wpvulnerability-adminms.php:3876 +msgid "Slack Webhook" +msgstr "Webhook de Slack" + +#: wpvulnerability-admin.php:3692 wpvulnerability-admin.php:3712 +#: wpvulnerability-admin.php:3732 wpvulnerability-admin.php:3752 +#: wpvulnerability-adminms.php:3886 wpvulnerability-adminms.php:3906 +#: wpvulnerability-adminms.php:3926 wpvulnerability-adminms.php:3946 +msgid "Configured & Enabled" +msgstr "Configurado e activado" + +#: wpvulnerability-admin.php:3694 wpvulnerability-admin.php:3714 +#: wpvulnerability-admin.php:3734 wpvulnerability-admin.php:3754 +#: wpvulnerability-adminms.php:3888 wpvulnerability-adminms.php:3908 +#: wpvulnerability-adminms.php:3928 wpvulnerability-adminms.php:3948 +msgid "Configured (Disabled)" +msgstr "Configurado (desactivado)" + +#: wpvulnerability-admin.php:3696 wpvulnerability-admin.php:3716 +#: wpvulnerability-admin.php:3736 wpvulnerability-admin.php:3756 +#: wpvulnerability-adminms.php:3890 wpvulnerability-adminms.php:3910 +#: wpvulnerability-adminms.php:3930 wpvulnerability-adminms.php:3950 +msgid "Not configured" +msgstr "Non configurado" + +#: wpvulnerability-admin.php:3703 wpvulnerability-adminms.php:3897 +msgid "Teams Webhook" +msgstr "Webhook de Teams" + +#: wpvulnerability-admin.php:3723 wpvulnerability-adminms.php:3917 +msgid "Discord Webhook" +msgstr "Webhook de Discord" + +#: wpvulnerability-admin.php:3743 wpvulnerability-adminms.php:3937 +msgid "Telegram Bot" +msgstr "Bot de Telegram" + +#: wpvulnerability-admin.php:3788 wpvulnerability-adminms.php:3982 +msgid "Cron Status" +msgstr "Estado do cron" + +#: wpvulnerability-admin.php:3792 wpvulnerability-adminms.php:3986 +msgid "Update Database" +msgstr "Actualizar base de datos" + +#. translators: %s: date and time +#: wpvulnerability-admin.php:3797 wpvulnerability-admin.php:3810 +#: wpvulnerability-adminms.php:3991 wpvulnerability-adminms.php:4004 +#, php-format +msgid "Next run: %s" +msgstr "Próxima execución: %s" + +#: wpvulnerability-admin.php:3800 wpvulnerability-admin.php:3813 +#: wpvulnerability-adminms.php:3994 wpvulnerability-adminms.php:4007 +msgid "Not scheduled" +msgstr "Non programado" + +#: wpvulnerability-admin.php:3805 wpvulnerability-adminms.php:3999 +msgid "Send Notification" +msgstr "Enviar notificación" + +#: wpvulnerability-admin.php:3826 wpvulnerability-adminms.php:4020 +msgid "Run Update Now" +msgstr "Executar actualización agora" + +#: wpvulnerability-admin.php:3834 wpvulnerability-adminms.php:4028 +msgid "Run Notification Now" +msgstr "Enviar notificación agora" + +#: wpvulnerability-admin.php:3840 wpvulnerability-adminms.php:4034 +msgid "You do not have permission to run these actions." +msgstr "Non tes permiso para executar estas accións." + +#: wpvulnerability-admin.php:3859 wpvulnerability-adminms.php:4053 +msgid "API Testing" +msgstr "Probas da API" + +#: wpvulnerability-admin.php:3862 wpvulnerability-adminms.php:4056 +msgid "" +"Test API connectivity for each component. Click a button to send a test " +"request." +msgstr "" +"Proba a conectividade da API para cada compoñente. Fai clic nun botón para enviar unha " +"solicitude de proba." + +#. translators: %s: component name +#: wpvulnerability-admin.php:3869 wpvulnerability-adminms.php:4063 +#, php-format +msgid "Test %s" +msgstr "Probar %s" + +#: wpvulnerability-admin.php:3884 wpvulnerability-adminms.php:4078 +msgid "Testing..." +msgstr "Probando..." + +#: wpvulnerability-admin.php:3900 wpvulnerability-adminms.php:4094 +msgid "HTTP Code:" +msgstr "Código HTTP:" + +#: wpvulnerability-admin.php:3901 wpvulnerability-adminms.php:4095 +msgid "Response Time:" +msgstr "Tempo de resposta:" + +#: wpvulnerability-admin.php:3903 wpvulnerability-adminms.php:4097 +msgid "Response Preview" +msgstr "Vista previa da resposta" + +#: wpvulnerability-admin.php:3910 wpvulnerability-admin.php:3914 +#: wpvulnerability-adminms.php:4104 wpvulnerability-adminms.php:4108 +msgid "Test" +msgstr "Proba" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "Error:" +msgstr "Erro:" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "AJAX request failed." +msgstr "A solicitude AJAX fallou." + +#: wpvulnerability-admin.php:3922 wpvulnerability-adminms.php:4116 +msgid "You do not have permission to test API connectivity." +msgstr "Non tes permiso para probar a conectividade da API." + +#: wpvulnerability-admin.php:3943 wpvulnerability-adminms.php:4137 +msgid "Database Options Viewer" +msgstr "Visor de opcións da base de datos" + +#: wpvulnerability-admin.php:3944 wpvulnerability-adminms.php:4138 +msgid "View the raw data stored in WordPress options." +msgstr "Ve os datos en bruto almacenados nas opcións de WordPress." + +#: wpvulnerability-admin.php:3950 wpvulnerability-adminms.php:4144 +msgid "Select an option..." +msgstr "Selecciona unha opción..." + +#: wpvulnerability-admin.php:3969 wpvulnerability-adminms.php:4163 +msgid "Option not found or empty." +msgstr "Opción non atopada ou baleira." + +#: wpvulnerability-admin.php:3987 wpvulnerability-adminms.php:4182 +msgid "Quick Actions" +msgstr "Accións rápidas" + +#: wpvulnerability-admin.php:3988 wpvulnerability-adminms.php:4183 +msgid "Perform debugging actions. Use with caution." +msgstr "Realiza accións de depuración. Usa con precaución." + +#: wpvulnerability-admin.php:3992 wpvulnerability-adminms.php:4187 +msgid "Are you sure you want to clear all caches?" +msgstr "Tes a certeza de que queres limpar todas as cachés?" + +#: wpvulnerability-admin.php:3996 wpvulnerability-adminms.php:4191 +msgid "Clear All Caches" +msgstr "Limpar todas as cachés" + +#: wpvulnerability-admin.php:4000 wpvulnerability-adminms.php:4195 +msgid "Are you sure you want to reset signatures?" +msgstr "Tes a certeza de que queres restablecer as sinaturas?" + +#: wpvulnerability-admin.php:4004 wpvulnerability-adminms.php:4199 +msgid "Reset Signatures" +msgstr "Restablecer sinaturas" + +#: wpvulnerability-admin.php:4012 wpvulnerability-adminms.php:4207 +msgid "Export Debug Info" +msgstr "Exportar información de depuración" + +#: wpvulnerability-admin.php:4018 wpvulnerability-adminms.php:4213 +msgid "You do not have permission to perform these actions." +msgstr "Non tes permiso para realizar estas accións." + +#: wpvulnerability-adminms.php:101 wpvulnerability-adminms.php:199 +msgid "Settings saved." +msgstr "Axustes gardados." + +#: wpvulnerability-adminms.php:277 +msgid "WPVulnerability cron events have been repaired across the network." +msgstr "Os eventos cron de WPVulnerability foron reparados en toda a rede." + +#: wpvulnerability-adminms.php:3512 +msgid "You do not have permission to access this page." +msgstr "Non tes permiso para acceder a esta páxina." + +#. translators: 1: core version +#: wpvulnerability-core.php:33 +#, php-format +msgid "" +"WordPress %1$s has a known vulnerability that may be affecting your " +"installed version." +msgstr "" +"WordPress %1$s ten unha vulnerabilidade coñecida que pode estar afectando á " +"túa versión instalada." + +#: wpvulnerability-core.php:115 wpvulnerability-plugins.php:207 +#: wpvulnerability-process.php:335 wpvulnerability-process.php:443 +#: wpvulnerability-process.php:529 wpvulnerability-themes.php:173 +#: wpvulnerability-themes.php:469 +msgid "Actively exploited" +msgstr "Explotada activamente" + +#: wpvulnerability-core.php:122 wpvulnerability-plugins.php:214 +#: wpvulnerability-process.php:342 wpvulnerability-process.php:450 +#: wpvulnerability-themes.php:180 wpvulnerability-themes.php:476 +msgid "Public exploit" +msgstr "Exploit público" + +#: wpvulnerability-core.php:125 wpvulnerability-plugins.php:217 +#: wpvulnerability-process.php:345 wpvulnerability-process.php:453 +#: wpvulnerability-themes.php:183 wpvulnerability-themes.php:479 +msgid "Automatable" +msgstr "Automatizable" + +#: wpvulnerability-core.php:139 wpvulnerability-plugins.php:245 +#: wpvulnerability-process.php:371 wpvulnerability-process.php:469 +#: wpvulnerability-process.php:544 wpvulnerability-themes.php:211 +#: wpvulnerability-themes.php:503 +msgid "References:" +msgstr "Referencias:" + +#: wpvulnerability-debug.php:399 +msgid "Invalid component specified." +msgstr "Compoñente especificado non válido." + +#: wpvulnerability-debug.php:423 +msgid "Version not detected for this component." +msgstr "Non se detectou versión para este compoñente." + +#: wpvulnerability-debug.php:453 +msgid "API request successful." +msgstr "Solicitude da API realizada con éxito." + +#. translators: %d: HTTP status code +#: wpvulnerability-debug.php:469 +#, php-format +msgid "API returned HTTP code %d." +msgstr "A API devolveu o código HTTP %d." + +#: wpvulnerability-general.php:355 +msgid "WPVulnerability Logs" +msgstr "Rexistros de WPVulnerability" + +#: wpvulnerability-general.php:356 +msgid "WPVulnerability Log" +msgstr "Rexistro de WPVulnerability" + +#: wpvulnerability-general.php:1873 wpvulnerability-general.php:1874 +msgid "Low" +msgstr "Baixo" + +#: wpvulnerability-general.php:1875 wpvulnerability-general.php:1876 +msgid "Medium" +msgstr "Medio" + +#: wpvulnerability-general.php:1877 wpvulnerability-general.php:1878 +msgid "High" +msgstr "Alto" + +#: wpvulnerability-general.php:1879 wpvulnerability-general.php:1880 +msgid "Critical" +msgstr "Crítico" + +#: wpvulnerability-general.php:2684 +msgid "WPVulnerability Shell Logs" +msgstr "Rexistros de shell de WPVulnerability" + +#: wpvulnerability-general.php:2685 +msgid "WPVulnerability Shell Log" +msgstr "Rexistro de shell de WPVulnerability" + +#: wpvulnerability-notifications.php:30 +msgid "Every week" +msgstr "Cada semana" + +#: wpvulnerability-notifications.php:57 +msgid "Every day" +msgstr "Cada día" + +#: wpvulnerability-notifications.php:84 +msgid "Invalid request." +msgstr "Solicitude non válida." + +#: wpvulnerability-notifications.php:104 +msgid "You have unsubscribed from WPVulnerability notifications." +msgstr "Cancelaches a subscrición ás notificacións de WPVulnerability." + +#. translators: %1$s the website of Database, %2$s database site name. +#: wpvulnerability-notifications.php:289 +#, php-format +msgid "" +"Learn more about the WordPress Vulnerability Database API at %2$s" +msgstr "" +"Aprende máis acerca da API da base de datos de vulnerabilidades de WordPress " +"en %2$s" + +#. translators: %1$s unsubscribe URL. +#: wpvulnerability-notifications.php:300 +#, php-format +msgid "" +"Want to stop receiving these alerts? Unsubscribe or " +"change the email frequency to Never in the WPVulnerability " +"settings." +msgstr "" +"Queres deixar de recibir estas alertas? Cancela a subscrición ou " +"cambia a frecuencia do correo electrónico a Nunca nos axustes de WPVulnerability." + +#: wpvulnerability-notifications.php:595 +msgid "No vulnerabilities found" +msgstr "Non se atoparon vulnerabilidades" + +#: wpvulnerability-notifications.php:596 +msgid "This is likely a test. The site does not have vulnerabilities." +msgstr "Isto é probablemente unha proba. O sitio non ten vulnerabilidades." + +#: wpvulnerability-notifications.php:601 +msgid "Core vulnerabilities" +msgstr "Vulnerabilidades do núcleo" + +#: wpvulnerability-notifications.php:607 +msgid "Plugins vulnerabilities" +msgstr "Vulnerabilidades de plugins" + +#: wpvulnerability-notifications.php:613 +msgid "Themes vulnerabilities" +msgstr "Vulnerabilidades de temas" + +#: wpvulnerability-notifications.php:619 +msgid "PHP vulnerabilities" +msgstr "Vulnerabilidades de PHP" + +#: wpvulnerability-notifications.php:625 +msgid "Apache HTTPD vulnerabilities" +msgstr "Vulnerabilidades de Apache HTTPD" + +#: wpvulnerability-notifications.php:631 +msgid "Nginx vulnerabilities" +msgstr "Vulnerabilidades de Nginx" + +#: wpvulnerability-notifications.php:637 +msgid "MariaDB vulnerabilities" +msgstr "Vulnerabilidades de MariaDB" + +#: wpvulnerability-notifications.php:643 +msgid "MySQL vulnerabilities" +msgstr "Vulnerabilidades de MySQL" + +#: wpvulnerability-notifications.php:649 +msgid "ImageMagick vulnerabilities" +msgstr "Vulnerabilidades de ImageMagick" + +#: wpvulnerability-notifications.php:655 +msgid "curl vulnerabilities" +msgstr "Vulnerabilidades de curl" + +#: wpvulnerability-notifications.php:661 +msgid "memcached vulnerabilities" +msgstr "Vulnerabilidades de memcached" + +#: wpvulnerability-notifications.php:667 +msgid "Redis vulnerabilities" +msgstr "Vulnerabilidades de Redis" + +#: wpvulnerability-notifications.php:673 +msgid "SQLite vulnerabilities" +msgstr "Vulnerabilidades de SQLite" + +#. translators: Site name. +#: wpvulnerability-notifications.php:696 +#, php-format +msgid "Vulnerability found: %s" +msgstr "Vulnerabilidade atopada: %s" + +#: wpvulnerability-notifications.php:700 +msgid "Vulnerability found" +msgstr "Vulnerabilidade atopada" + +#. translators: 1: Plugin name +#. translators: 1: theme name +#: wpvulnerability-plugins.php:116 wpvulnerability-themes.php:82 +#, php-format +msgid "" +"%1$s has a known vulnerability that may be affecting your installed version." +msgstr "" +"%1$s ten unha vulnerabilidade coñecida que pode estar afectando á túa versión instalada." + +#: wpvulnerability-plugins.php:230 wpvulnerability-process.php:358 +msgid "This plugin is closed. Please replace it with another." +msgstr "Este plugin está pechado. Substitúeo por outro, por favor." + +#: wpvulnerability-plugins.php:233 wpvulnerability-process.php:361 +msgid "" +"This vulnerability appears to be unpatched. Stay tuned for upcoming plugin " +"updates." +msgstr "" +"Esta vulnerabilidade parece non estar parcheada. Permanece atento ás " +"próximas actualizacións do plugin." + +#: wpvulnerability-plugins.php:570 +msgid "It hasn't been updated in over a year." +msgstr "Hai máis dun ano que non se actualiza." + +#: wpvulnerability-plugins.php:576 +msgid "It may no longer be available (closed?)." +msgstr "Pode que xa non estea dispoñible (pechado?)." + +#: wpvulnerability-plugins.php:614 wpvulnerability-plugins.php:621 +msgid "Last updated on" +msgstr "Última actualización" + +#. translators: the number of vulnerabilities. +#: wpvulnerability-plugins.php:764 wpvulnerability-themes.php:704 +#, php-format +msgid "Vulnerabilities (%d)" +msgstr "Vulnerabilidades (%d)" + +#. translators: %s: software name. +#: wpvulnerability-process.php:601 +#, php-format +msgid "%s running" +msgstr "%s en execución" + +#: wpvulnerability-process.php:611 wpvulnerability-process.php:792 +msgid "End of Life" +msgstr "Fin de vida" + +#: wpvulnerability-process.php:613 wpvulnerability-process.php:618 +msgid "End of life:" +msgstr "Fin de vida:" + +#: wpvulnerability-process.php:616 +msgid "Supported" +msgstr "Con soporte" + +#: wpvulnerability-process.php:652 +msgid "Plugin" +msgstr "Plugin" + +#: wpvulnerability-process.php:721 +msgid "Theme" +msgstr "Tema" + +#. translators: %s: end-of-life date +#: wpvulnerability-process.php:790 +#, php-format +msgid "End of life: %s" +msgstr "Fin de vida: %s" + +#: wpvulnerability-process.php:795 +msgid "EOL" +msgstr "FDV" + +#: wpvulnerability-run.php:30 +msgid "Network Settings" +msgstr "Axustes da rede" + +#: wpvulnerability-run.php:731 wpvulnerability-run.php:781 +#: wpvulnerability-run.php:791 wpvulnerability-run.php:836 +msgid "Vulnerabilities" +msgstr "Vulnerabilidades" + +#: wpvulnerability-schedule.php:30 +msgid "Every 6 hours" +msgstr "Cada 6 horas" + +#: wpvulnerability-schedule.php:303 +msgid "Database updates" +msgstr "Actualizacións da base de datos" + +#: wpvulnerability-schedule.php:309 +msgid "Log cleanup" +msgstr "Limpeza de rexistros" + +#: wpvulnerability-schedule.php:439 +msgid "" +"Notifications are scheduled, but settings currently disable them. Please " +"review the notifications tab." +msgstr "" +"As notificacións están programadas, pero a configuración actual desactívaas. Por favor, " +"revisa a pestana de notificacións." + +#: wpvulnerability-schedule.php:442 +msgid "This event should not be scheduled for this site." +msgstr "Este evento non debería estar programado para este sitio." + +#: wpvulnerability-schedule.php:446 +msgid "Not expected for this site." +msgstr "Non esperado para este sitio." + +#: wpvulnerability-schedule.php:450 +msgid "No instances found." +msgstr "Non se atoparon instancias." + +#: wpvulnerability-schedule.php:456 +msgid "Scheduled with an unexpected interval." +msgstr "Programado cun intervalo inesperado." + +#: wpvulnerability-schedule.php:460 +msgid "Multiple instances detected." +msgstr "Detectáronse múltiples instancias." + +#: wpvulnerability-schedule.php:465 +msgid "Scheduled as expected." +msgstr "Programado como se esperaba." + +#: wpvulnerability-sitehealth.php:22 +msgid "There aren't plugins vulnerabilities" +msgstr "Non hai vulnerabilidades dos plugins." + +#: wpvulnerability-sitehealth.php:30 +msgid "Shows possible vulnerabilities that exist in installed plugins." +msgstr "Amosa posibles vulnerabilidades que existen nos plugins instalados." + +#. translators: Number of plugins vulnerabilities. +#: wpvulnerability-sitehealth.php:43 +#, php-format +msgid "There is %d plugin with vulnerabilities" +msgid_plural "There are %d plugins with vulnerabilities" +msgstr[0] "Hai %d plugin con vulnerabilidades" +msgstr[1] "Hai %d plugins con vulnerabilidades" + +#: wpvulnerability-sitehealth.php:49 +msgid "" +"We've detected potential vulnerabilities in installed plugins. Please check " +"them and keep them updated." +msgstr "" +"Detectamos vulnerabilidades potenciais nos plugins instalados. Compróbaas e " +"mantén os plugins actualizados, por favor." + +#: wpvulnerability-sitehealth.php:57 +msgid "Update plugins" +msgstr "Actualizar plugins" + +#: wpvulnerability-sitehealth.php:74 +msgid "There aren't themes vulnerabilities" +msgstr "Non hai vulnerabilidades dos temas." + +#: wpvulnerability-sitehealth.php:82 +msgid "Shows possible vulnerabilities that exist in installed themes." +msgstr "Amosa posibles vulnerabilidades que existen nos temas instalados." + +#. translators: Number of themes vulnerabilities. +#: wpvulnerability-sitehealth.php:95 +#, php-format +msgid "There is %d theme with vulnerabilities" +msgid_plural "There are %d themes with vulnerabilities" +msgstr[0] "Hai %d tema con vulnerabilidades" +msgstr[1] "Hai %d temas con vulnerabilidades" + +#: wpvulnerability-sitehealth.php:101 +msgid "" +"We've detected potential vulnerabilities in installed themes. Please check " +"them and keep them updated." +msgstr "" +"Detectamos vulnerabilidades potenciais nos temas instalados. Compróbaas e " +"mantén os temas actualizados, por favor." + +#: wpvulnerability-sitehealth.php:109 +msgid "Update themes" +msgstr "Actualizar temas" + +#: wpvulnerability-sitehealth.php:126 +msgid "There aren't WordPress vulnerabilities" +msgstr "Non hai vulnerabilidades de WordPress" + +#: wpvulnerability-sitehealth.php:134 +msgid "Shows possible vulnerabilities existing in the WordPress core." +msgstr "Amosa posibles vulnerabilidades existentes no núcleo de WordPress." + +#. translators: Number of core vulnerabilities. +#: wpvulnerability-sitehealth.php:147 +#, php-format +msgid "There is %d core vulnerability" +msgid_plural "There are %d core vulnerabilities" +msgstr[0] "Hai %d vulnerabilidade do núcleo" +msgstr[1] "Hai %d vulnerabilidades do núcleo" + +#: wpvulnerability-sitehealth.php:153 +msgid "" +"We've detected potential vulnerabilities in this WordPress installation. " +"Please check them and keep your installation updated." +msgstr "" +"Detectamos vulnerabilidades potenciais nesta instalación de WordPress. " +"Compróbaas e mantén a túa instalación actualizada, por favor." + +#: wpvulnerability-sitehealth.php:161 +msgid "Update WordPress" +msgstr "Actualizar WordPress" + +#: wpvulnerability-sitehealth.php:180 +msgid "Nginx" +msgstr "Nginx" + +#: wpvulnerability-sitehealth.php:189 +msgid "Invalid software type" +msgstr "Tipo de software non válido" + +#: wpvulnerability-sitehealth.php:192 +msgid "Error" +msgstr "Erro" + +#: wpvulnerability-sitehealth.php:197 +msgid "The specified software type is not valid." +msgstr "O tipo de software especificado non é válido." + +#. translators: name of the software. +#: wpvulnerability-sitehealth.php:207 +#, php-format +msgid "There aren't %s vulnerabilities" +msgstr "Non hai vulnerabilidades de %s" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:216 +#, php-format +msgid "Shows possible vulnerabilities existing in %s." +msgstr "Amosa as posibles vulnerabilidades existentes en %s." + +#. translators: Software and number of vulnerabilities. +#: wpvulnerability-sitehealth.php:229 +#, php-format +msgid "There is %1$d %2$s vulnerability" +msgid_plural "There are %1$d %2$s vulnerabilities" +msgstr[0] "Hai %1$d vulnerabilidade de %2$s." +msgstr[1] "Hai %1$d vulnerabilidades de %2$s." + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:237 +#, php-format +msgid "" +"We've detected potential vulnerabilities in %s. Please check them and keep " +"your installation updated." +msgstr "" +"Detectamos posibles vulnerabilidades en %s. Por favor, compróbaas e mantén " +"actualizada a túa instalación." + +#: wpvulnerability-sitehealth.php:246 +msgid "How to update PHP" +msgstr "Cómo actualizar PHP" + +#: wpvulnerability-sitehealth.php:386 +msgid "WPVulnerability Core" +msgstr "WPVulnerability para o núcleo" + +#: wpvulnerability-sitehealth.php:394 +msgid "WPVulnerability Themes" +msgstr "WPVulnerability para temas" + +#: wpvulnerability-sitehealth.php:402 +msgid "WPVulnerability Plugins" +msgstr "WPVulnerability para plugins" + +#: wpvulnerability-sitehealth.php:410 +msgid "WPVulnerability PHP" +msgstr "WPVulnerability PHP" + +#: wpvulnerability-sitehealth.php:418 +msgid "WPVulnerability Apache HTTPD" +msgstr "WPVulnerability Apache HTTPD" + +#: wpvulnerability-sitehealth.php:426 +msgid "WPVulnerability Nginx" +msgstr "WPVulnerability Nginx" + +#: wpvulnerability-sitehealth.php:434 +msgid "WPVulnerability MariaDB" +msgstr "WPVulnerability MariaDB" + +#: wpvulnerability-sitehealth.php:442 +msgid "WPVulnerability MySQL" +msgstr "WPVulnerability MySQL" + +#: wpvulnerability-sitehealth.php:450 +msgid "WPVulnerability ImageMagick" +msgstr "WPVulnerability ImageMagick" + +#: wpvulnerability-sitehealth.php:458 +msgid "WPVulnerability curl" +msgstr "WPVulnerability curl" + +#: wpvulnerability-sitehealth.php:466 +msgid "WPVulnerability memcached" +msgstr "WPVulnerability memcached" + +#: wpvulnerability-sitehealth.php:474 +msgid "WPVulnerability redis" +msgstr "WPVulnerability redis" + +#: wpvulnerability-sitehealth.php:482 +msgid "WPVulnerability sqlite" +msgstr "WPVulnerability sqlite" + +#: wpvulnerability-themes.php:196 wpvulnerability-themes.php:492 +msgid "This theme is closed. Please replace it with another." +msgstr "Este tema está pechado. Substitúeo por outro, por favor." + +#: wpvulnerability-themes.php:199 wpvulnerability-themes.php:495 +msgid "" +"This vulnerability appears to be unpatched. Stay tuned for upcoming theme " +"updates." +msgstr "" +"Esta vulnerabilidade parece non estar parcheada. Permanece atento ás " +"próximas actualizacións do tema." + +#: wpvulnerability-themes.php:391 +msgid "" +"This theme has known vulnerabilities that may be affecting your installed " +"version." +msgstr "" +"Este tema ten vulnerabilidades coñecidas que poden estar afectando á túa versión instalada." + +#~ msgid "%1$s has a known vulnerability that may be affecting this version." +#~ msgstr "" +#~ "%1$s ten unha vulnerabilidade coñecida que podería estar afectando a esta " +#~ "versión." + +#~ msgid "Global score: " +#~ msgstr "Puntuación global: " + +#~ msgid "Severity: " +#~ msgstr "Severidade: " + +#~ msgid "" +#~ "WordPress %1$s has a known vulnerability that may be affecting this " +#~ "version." +#~ msgstr "" +#~ "WordPress %1$s ten unha vulnerabilidade coñecida que podería estar " +#~ "afectando a esta versión." diff --git a/languages/wpvulnerability-hi.l10n.php b/languages/wpvulnerability-hi.l10n.php new file mode 100644 index 0000000..20185d8 --- /dev/null +++ b/languages/wpvulnerability-hi.l10n.php @@ -0,0 +1,2 @@ +'wpvulnerability','plural-forms'=>'nplurals=2; plural=(n != 1);','language'=>'hi','project-id-version'=>'WPVulnerability 5.0.0','pot-creation-date'=>'2026-05-27T16:32:22+00:00','po-revision-date'=>'2026-05-27 00:00+0000','x-generator'=>'AI Translation','messages'=>['WPVulnerability'=>'WPVulnerability','https://www.wpvulnerability.com/plugin/'=>'https://www.wpvulnerability.com/plugin/','Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API.'=>'WordPress Vulnerability Database API से अपने WordPress में संभावित सुरक्षा खामियों की जानकारी प्राप्त करें।','ROBOTSTXT'=>'ROBOTSTXT','https://www.robotstxt.es/'=>'https://www.robotstxt.es/','This command requires a WordPress administrator. Run with --user=.'=>'इस कमांड के लिए WordPress व्यवस्थापक की आवश्यकता है। --user= के साथ चलाएँ।','No core vulnerabilities found.'=>'कोई कोर सुरक्षा खामी नहीं मिली।','No plugin vulnerabilities found.'=>'कोई प्लगइन सुरक्षा खामी नहीं मिली।','No theme vulnerabilities found.'=>'कोई थीम सुरक्षा खामी नहीं मिली।','No %s vulnerabilities found.'=>'कोई %s सुरक्षा खामी नहीं मिली।','Data from source has been reloaded.'=>'स्रोत से डेटा पुनः लोड किया गया।','You do not have permission to reload data.'=>'आपको डेटा पुनः लोड करने की अनुमति नहीं है।','Test email has been sent.'=>'परीक्षण ईमेल भेजा गया।','Test email has failed. Please, check your email settings.'=>'परीक्षण ईमेल विफल रहा। कृपया अपनी ईमेल सेटिंग जाँचें।','You do not have permission to send test emails.'=>'आपको परीक्षण ईमेल भेजने की अनुमति नहीं है।','WPVulnerability cron events have been repaired.'=>'WPVulnerability क्रॉन इवेंट ठीक किए गए।','You do not have permission to repair cron events.'=>'आपको क्रॉन इवेंट ठीक करने की अनुमति नहीं है।','All logs have been deleted.'=>'सभी लॉग हटा दिए गए।','You do not have permission to delete logs.'=>'आपको लॉग हटाने की अनुमति नहीं है।','Uninstall preference saved.'=>'अनइंस्टॉल प्राथमिकता सहेजी गई।','WPVulnerability has been reset to defaults and reloaded.'=>'WPVulnerability को डिफ़ॉल्ट पर रीसेट किया गया और पुनः लोड किया गया।','You do not have permission to reset WPVulnerability.'=>'आपको WPVulnerability रीसेट करने की अनुमति नहीं है।','All caches have been cleared.'=>'सभी कैश साफ़ कर दिए गए।','You do not have permission to clear caches.'=>'आपको कैश साफ़ करने की अनुमति नहीं है।','Plugin and theme signatures have been reset.'=>'प्लगइन और थीम हस्ताक्षर रीसेट किए गए।','You do not have permission to reset signatures.'=>'आपको हस्ताक्षर रीसेट करने की अनुमति नहीं है।','You do not have permission to export debug information.'=>'आपको डीबग जानकारी निर्यात करने की अनुमति नहीं है।','Database update has been executed.'=>'डेटाबेस अपडेट निष्पादित किया गया।','You do not have permission to run database updates.'=>'आपको डेटाबेस अपडेट चलाने की अनुमति नहीं है।','Notification has been sent.'=>'अधिसूचना भेजी गई।','Notification sending failed.'=>'अधिसूचना भेजना विफल रहा।','You do not have permission to send notifications.'=>'आपको अधिसूचनाएँ भेजने की अनुमति नहीं है।','Notifications'=>'अधिसूचनाएँ','Analysis'=>'विश्लेषण','Logs'=>'लॉग','Security'=>'सुरक्षा','Tools'=>'टूल','Debug'=>'डीबग','About'=>'परिचय','Notification Settings'=>'अधिसूचना सेटिंग','Configure how and when you want to receive vulnerability notifications.'=>'सेट करें कि आप सुरक्षा खामी अधिसूचनाएँ कैसे और कब प्राप्त करना चाहते हैं।','Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software.'=>'अपनी WordPress इंस्टॉलेशन, प्लगइन, थीम और सर्वर सॉफ़्टवेयर में सुरक्षा खामियों के बारे में जानकारी रखें।','Cache Expiration Time'=>'कैश समाप्ति समय','FORCED'=>'बाध्य','How long to cache vulnerability data before refreshing from the API.'=>'API से ताज़ा करने से पहले सुरक्षा खामी डेटा कितने समय तक कैश में रखें।','%d hour'=>'%d घंटा' . "\0" . '%d घंटे','You can force the cache time via wp-config.php constant. Learn more →'=>'आप wp-config.php कॉन्स्टेंट के माध्यम से कैश समय बाध्य कर सकते हैं। और जानें →','Notification Frequency'=>'अधिसूचना आवृत्ति','Choose how often you want to receive vulnerability notifications.'=>'चुनें कि आप सुरक्षा खामी अधिसूचनाएँ कितनी बार प्राप्त करना चाहते हैं।','Never - Disable automatic notifications'=>'कभी नहीं - स्वचालित अधिसूचनाएँ बंद करें','Daily - Receive notifications every day'=>'दैनिक - हर दिन अधिसूचनाएँ प्राप्त करें','Weekly - Receive notifications once a week'=>'साप्ताहिक - सप्ताह में एक बार अधिसूचनाएँ प्राप्त करें','Day:'=>'दिन:','Monday'=>'सोमवार','Tuesday'=>'मंगलवार','Wednesday'=>'बुधवार','Thursday'=>'गुरुवार','Friday'=>'शुक्रवार','Saturday'=>'शनिवार','Sunday'=>'रविवार','Time:'=>'समय:','(24-hour format, server timezone)'=>'(24-घंटे का प्रारूप, सर्वर टाइमज़ोन)','Notification Channels'=>'अधिसूचना चैनल','Select where you want to receive notifications.'=>'चुनें कि आप अधिसूचनाएँ कहाँ प्राप्त करना चाहते हैं।','Email'=>'ईमेल','Email Addresses (separated by commas):'=>'ईमेल पते (अल्पविराम से अलग करें):','Default:'=>'डिफ़ॉल्ट:','Slack'=>'Slack','Slack Webhook URL:'=>'Slack Webhook URL:','Learn how to create a Slack incoming webhook →'=>'Slack इनकमिंग webhook कैसे बनाएँ →','Microsoft Teams'=>'Microsoft Teams','Teams Webhook URL:'=>'Teams Webhook URL:','Learn how to create a Teams incoming webhook →'=>'Teams इनकमिंग webhook कैसे बनाएँ →','Discord'=>'Discord','Discord Webhook URL:'=>'Discord Webhook URL:','Learn how to create a Discord webhook →'=>'Discord webhook कैसे बनाएँ →','Telegram'=>'Telegram','Telegram Bot Token:'=>'Telegram Bot Token:','Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'प्रारूप: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','Telegram Chat ID:'=>'Telegram Chat ID:','Learn how to create a Telegram bot and get Chat ID →'=>'Telegram bot कैसे बनाएँ और Chat ID कैसे प्राप्त करें →','Save Notification Settings'=>'अधिसूचना सेटिंग सहेजें','WordPress Components'=>'WordPress घटक','WordPress Core'=>'WordPress Core','Plugins'=>'प्लगइन','Themes'=>'थीम','Software & Languages'=>'सॉफ़्टवेयर और भाषाएँ','PHP'=>'PHP','Web Servers'=>'वेब सर्वर','Apache HTTPD'=>'Apache HTTPD','nginx'=>'nginx','Databases'=>'डेटाबेस','MariaDB'=>'MariaDB','MySQL'=>'MySQL','SQLite'=>'SQLite','Additional Tools'=>'अतिरिक्त टूल','ImageMagick'=>'ImageMagick','curl'=>'curl','memcached'=>'memcached','Redis'=>'Redis','Component Analysis Settings'=>'घटक विश्लेषण सेटिंग','Enable or disable vulnerability analysis for specific components.'=>'विशिष्ट घटकों के लिए सुरक्षा खामी विश्लेषण सक्षम या अक्षम करें।','Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red.'=>'वे घटक चुनें जिन्हें आप सुरक्षा खामी स्कैन और रिपोर्ट से छुपाना चाहते हैं। अनचेक किए गए घटकों का सक्रिय रूप से विश्लेषण किया जाएगा। सक्रिय विश्लेषण वाले घटक हरे रंग में और छुपे हुए घटक लाल रंग में दिखाए जाते हैं।','Hidden (forced by constant)'=>'छुपाया गया (कॉन्स्टेंट द्वारा बाध्य)','🔴 Analysis disabled'=>'🔴 विश्लेषण अक्षम','🟢 Analysis active'=>'🟢 विश्लेषण सक्रिय','Tip:'=>'सुझाव:','You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →'=>'आप wp-config.php कॉन्स्टेंट के माध्यम से घटकों को बाध्यतापूर्वक अक्षम कर सकते हैं। जाँचें छुपाने के बारे में और जानें →','Save Analysis Settings'=>'विश्लेषण सेटिंग सहेजें','« Previous'=>'« पिछला','Next »'=>'अगला »','Log entry not found or has been removed.'=>'लॉग प्रविष्टि नहीं मिली या हटा दी गई।','Unable to load the requested log entry.'=>'अनुरोधित लॉग प्रविष्टि लोड नहीं की जा सकी।','Log Configuration'=>'लॉग कॉन्फ़िगरेशन','Total Logs'=>'कुल लॉग','Retention Period'=>'प्रतिधारण अवधि','Disabled'=>'अक्षम','%d day'=>'%d दिन' . "\0" . '%d दिन','Log Retention Period'=>'लॉग प्रतिधारण अवधि','None (Disabled)'=>'कोई नहीं (अक्षम)','This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant.'=>'यह मान WPVULNERABILITY_LOG_RETENTION_DAYS कॉन्स्टेंट द्वारा लागू किया गया है।','Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted.'=>'चुनें कि WPVulnerability को API प्रतिक्रिया लॉग कितने समय तक रखने चाहिए। पुराने लॉग स्वचालित रूप से हटा दिए जाते हैं।','Save Configuration'=>'कॉन्फ़िगरेशन सहेजें','Log retention is currently disabled.'=>'लॉग प्रतिधारण वर्तमान में अक्षम है।','API responses are not being saved.'=>'API प्रतिक्रियाएँ सहेजी नहीं जा रही हैं।','Log Details'=>'लॉग विवरण','Date'=>'दिनांक','API Endpoint'=>'API Endpoint','API Response'=>'API प्रतिक्रिया','Back to Logs'=>'लॉग पर वापस जाएँ','No logs available'=>'कोई लॉग उपलब्ध नहीं','API response logs will appear here once the vulnerability scanner runs.'=>'सुरक्षा खामी स्कैनर चलने के बाद यहाँ API प्रतिक्रिया लॉग दिखाई देंगे।','API Response Logs'=>'API प्रतिक्रिया लॉग','Show:'=>'दिखाएँ:','Apply'=>'लागू करें','Showing %1$s–%2$s of %3$s'=>'%3$s में से %1$s–%2$s दिखाया जा रहा है','Actions'=>'क्रियाएँ','View'=>'देखें','Danger Zone'=>'खतरनाक क्षेत्र','Permanently delete all API response logs. This action cannot be undone.'=>'सभी API प्रतिक्रिया लॉग स्थायी रूप से हटाएँ। यह क्रिया पूर्ववत नहीं की जा सकती।','Are you sure you want to delete all logs? This action cannot be undone.'=>'क्या आप सभी लॉग हटाना चाहते हैं? यह क्रिया पूर्ववत नहीं की जा सकती।','Delete All Logs'=>'सभी लॉग हटाएँ','Reload Data from API'=>'API से डेटा पुनः लोड करें','Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information.'=>'अपडेट किया हुआ डेटा पाने के लिए सभी Core, प्लगइन, थीम और अन्य घटकों की जानकारी सीधे API से पुनः लोड करें। यह कैश साफ़ करेगा और ताज़ी सुरक्षा खामी जानकारी लाएगा।','Reload Data'=>'डेटा पुनः लोड करें','Test Email Notifications'=>'परीक्षण ईमेल अधिसूचनाएँ','Send a test email notification with current vulnerability data to verify your email configuration is working correctly.'=>'अपनी ईमेल कॉन्फ़िगरेशन सही ढंग से काम कर रही है या नहीं, यह जाँचने के लिए वर्तमान सुरक्षा खामी डेटा के साथ एक परीक्षण ईमेल अधिसूचना भेजें।','From address (configured via constant):'=>'प्रेषक पता (कॉन्स्टेंट के माध्यम से कॉन्फ़िगर किया गया):','From address (default):'=>'प्रेषक पता (डिफ़ॉल्ट):','Learn how to customize the email sender address →'=>'ईमेल प्रेषक पता कैसे कस्टमाइज़ करें →','Send Test Email'=>'परीक्षण ईमेल भेजें','WP-Cron Status'=>'WP-Cron स्थिति','View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly.'=>'WP-Cron अनुसूचित इवेंट देखें और प्रबंधित करें। सुनिश्चित करें कि स्वचालित कार्य सही ढंग से चल रहे हैं।','No cron data available.'=>'कोई cron डेटा उपलब्ध नहीं।','Hook'=>'हुक','Expected'=>'अपेक्षित','Found'=>'मिला','Next Run'=>'अगला रन','Status'=>'स्थिति','Not expected'=>'अपेक्षित नहीं','None'=>'कोई नहीं','OK'=>'ठीक है','⚠️ Unexpected WPVulnerability Events'=>'⚠️ अप्रत्याशित WPVulnerability इवेंट','No interval'=>'कोई अंतराल नहीं','Next:'=>'अगला:','Repair Cron Events'=>'Cron इवेंट ठीक करें','Uninstall Data'=>'अनइंस्टॉल डेटा','By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall.'=>'डिफ़ॉल्ट रूप से, WPVulnerability हटाने पर सभी प्लगइन डेटा सुरक्षित रहता है। नीचे दिया गया विकल्प केवल तभी सक्षम करें जब आप अनइंस्टॉल करने पर सभी विकल्प, लॉग और कैश्ड डेटा स्थायी रूप से हटाना चाहते हों।','Delete all plugin data on uninstall'=>'अनइंस्टॉल करने पर सभी प्लगइन डेटा हटाएँ','Default: unchecked (data preserved). Check only if you want a clean removal.'=>'डिफ़ॉल्ट: अनचेक (डेटा सुरक्षित)। केवल तभी चेक करें जब आप स्वच्छ निष्कासन चाहते हों।','Save preference'=>'प्राथमिकता सहेजें','Reset WPVulnerability'=>'WPVulnerability रीसेट करें','Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API.'=>'सभी WPVulnerability सेटिंग, कैश्ड डेटा, लॉग और अनुसूचित इवेंट हटाएँ, फिर डिफ़ॉल्ट पुनर्स्थापित करें और API से डेटा पुनः लोड करें।','This action cannot be undone.'=>'यह क्रिया पूर्ववत नहीं की जा सकती।','Are you sure you want to reset all WPVulnerability data? This action cannot be undone.'=>'क्या आप सभी WPVulnerability डेटा रीसेट करना चाहते हैं? यह क्रिया पूर्ववत नहीं की जा सकती।','Reset Plugin'=>'प्लगइन रीसेट करें','Vulnerability Database Statistics'=>'सुरक्षा खामी डेटाबेस आँकड़े','%s vulnerability'=>'%s सुरक्षा खामी' . "\0" . '%s सुरक्षा खामियाँ','(%s product)'=>'(%s उत्पाद)' . "\0" . '(%s उत्पाद)','No data'=>'कोई डेटा नहीं','Database last updated: %s'=>'डेटाबेस अंतिम बार अपडेट किया गया: %s','Intelligence Sources'=>'इंटेलिजेंस स्रोत','Number of vulnerabilities contributed by each intelligence source.'=>'प्रत्येक इंटेलिजेंस स्रोत द्वारा योगदान की गई सुरक्षा खामियों की संख्या।','Source'=>'स्रोत','Core'=>'Core','Sponsors'=>'प्रायोजक','No sponsor data available.'=>'कोई प्रायोजक डेटा उपलब्ध नहीं।','Contributors'=>'योगदानकर्ता','No contributor data available.'=>'कोई योगदानकर्ता डेटा उपलब्ध नहीं।','You do not have sufficient permissions to access this page.'=>'इस पृष्ठ तक पहुँचने के लिए आपके पास पर्याप्त अनुमति नहीं है।','WPVulnerability settings'=>'WPVulnerability सेटिंग','Configure and save these settings to receive notifications.'=>'अधिसूचनाएँ प्राप्त करने के लिए ये सेटिंग कॉन्फ़िगर करें और सहेजें।','Configure and save these settings to hide vulnerabilities.'=>'सुरक्षा खामियाँ छुपाने के लिए ये सेटिंग कॉन्फ़िगर करें और सहेजें।','Default administrator email'=>'डिफ़ॉल्ट व्यवस्थापक ईमेल','Read more if you want to force the cache time.'=>'यदि आप कैश समय बाध्य करना चाहते हैं तो और पढ़ें।','Never'=>'कभी नहीं','Daily'=>'दैनिक','Weekly'=>'साप्ताहिक','Day'=>'दिन','Hour'=>'घंटा','Minute'=>'मिनट','Read more about how to force the deactivation of an item.'=>'किसी आइटम को बाध्यतापूर्वक निष्क्रिय करने के बारे में और पढ़ें।','Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com'=>'अमान्य Slack webhook URL। यह hooks.slack.com से एक वैध HTTPS URL होना चाहिए।','Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com'=>'अमान्य Microsoft Teams webhook URL। यह office.com, office365.com या api.hooks.microsoft.com से एक वैध HTTPS URL होना चाहिए।','Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com'=>'अमान्य Discord webhook URL। यह discord.com या discordapp.com से एक वैध HTTPS URL होना चाहिए।','Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'अमान्य Telegram bot token प्रारूप। यह इस तरह होना चाहिए: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','All Clear'=>'सब ठीक','%d Critical Issue Found'=>'%d गंभीर समस्या मिली' . "\0" . '%d गंभीर समस्याएँ मिलीं','%d Issue Found'=>'%d समस्या मिली' . "\0" . '%d समस्याएँ मिलीं','Never checked'=>'कभी जाँचा नहीं गया','%d minute ago'=>'%d मिनट पहले' . "\0" . '%d मिनट पहले','%d hour ago'=>'%d घंटे पहले' . "\0" . '%d घंटे पहले','Last checked: %s'=>'अंतिम बार जाँचा गया: %s','Refresh Now'=>'अभी ताज़ा करें','No vulnerabilities detected'=>'कोई सुरक्षा खामी नहीं मिली','Your site is up to date and secure'=>'आपकी साइट अप-टू-डेट और सुरक्षित है','Server Software'=>'सर्वर सॉफ़्टवेयर','Site Health'=>'साइट स्वास्थ्य','Settings'=>'सेटिंग','WPVulnerability Status'=>'WPVulnerability स्थिति','Receive vulnerability notifications'=>'सुरक्षा खामी अधिसूचनाएँ प्राप्त करें','Cache expiration time'=>'कैश समाप्ति समय','How often you want to receive notifications'=>'आप कितनी बार अधिसूचनाएँ प्राप्त करना चाहते हैं','Where do you want to receive notifications?'=>'आप अधिसूचनाएँ कहाँ प्राप्त करना चाहते हैं?','Email addresses to notify (separated by commas)'=>'सूचित करने के लिए ईमेल पते (अल्पविराम से अलग करें)','Slack webhook URL'=>'Slack webhook URL','Teams webhook URL'=>'Teams webhook URL','Vulnerabilities to hide'=>'छुपाने के लिए सुरक्षा खामियाँ','What do you want to hide?'=>'आप क्या छुपाना चाहते हैं?','Standard (Hybrid Detection)'=>'मानक (हाइब्रिड डिटेक्शन)','Strict (Extensions Only)'=>'सख्त (केवल एक्सटेंशन)','Disabled (No Detection)'=>'अक्षम (कोई डिटेक्शन नहीं)','Security Status'=>'सुरक्षा स्थिति','Security Mode'=>'सुरक्षा मोड','Shell Execution'=>'Shell निष्पादन','Enabled'=>'सक्षम','Audit Logging'=>'ऑडिट लॉगिंग','Enabled (%d days)'=>'सक्षम (%d दिन)','Total Log Entries'=>'कुल लॉग प्रविष्टियाँ','Last Shell Execution'=>'अंतिम Shell निष्पादन','%s ago'=>'%s पहले','Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.'=>'wp-config.php कॉन्स्टेंट के माध्यम से सुरक्षा सेटिंग कॉन्फ़िगर करें: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST।','See security configuration documentation for details.'=>'विवरण के लिए सुरक्षा कॉन्फ़िगरेशन दस्तावेज़ीकरण देखें।','Memcached'=>'Memcached','Imagick Extension'=>'Imagick एक्सटेंशन','Redis Extension'=>'Redis एक्सटेंशन','Memcached Extension'=>'Memcached एक्सटेंशन','Memcache Extension'=>'Memcache एक्सटेंशन','SQLite3 Extension'=>'SQLite3 एक्सटेंशन','PDO SQLite'=>'PDO SQLite','Shell Command'=>'Shell कमांड','Binary Check'=>'बाइनरी जाँच','Not Detected'=>'पता नहीं लगा','Software Detection Methods'=>'सॉफ़्टवेयर डिटेक्शन विधियाँ','Shows which detection method was used for each software component and the reliability score.'=>'दिखाता है कि प्रत्येक सॉफ़्टवेयर घटक के लिए कौन सी डिटेक्शन विधि का उपयोग किया गया और विश्वसनीयता स्कोर क्या है।','Component'=>'घटक','Version'=>'संस्करण','Detection Method'=>'डिटेक्शन विधि','Reliability'=>'विश्वसनीयता','Not detected'=>'पता नहीं लगा','Shell Execution Audit Logs'=>'Shell निष्पादन ऑडिट लॉग','Complete audit trail of shell command executions for security monitoring.'=>'सुरक्षा निगरानी के लिए shell कमांड निष्पादन का पूर्ण ऑडिट ट्रेल।','No shell execution logs found.'=>'कोई shell निष्पादन लॉग नहीं मिला।','Logs will appear here when shell commands are executed for software detection.'=>'सॉफ़्टवेयर डिटेक्शन के लिए shell कमांड निष्पादित होने पर यहाँ लॉग दिखाई देंगे।','Time'=>'समय','Command'=>'कमांड','User'=>'उपयोगकर्ता','Output'=>'आउटपुट','Showing the %d most recent log entries.'=>'सबसे हाल की %d लॉग प्रविष्टियाँ दिखाई जा रही हैं।','Invalid nonce.'=>'अमान्य nonce।','Insufficient permissions.'=>'अपर्याप्त अनुमतियाँ।','No component specified.'=>'कोई घटक निर्दिष्ट नहीं किया गया।','Debug Information'=>'डीबग जानकारी','This tab is only visible when WP_DEBUG is enabled. Use with caution.'=>'यह टैब केवल तभी दिखाई देता है जब WP_DEBUG सक्षम हो। सावधानी से उपयोग करें।','System Information'=>'सिस्टम जानकारी','WordPress Version'=>'WordPress संस्करण','Multisite'=>'मल्टीसाइट','Yes'=>'हाँ','No'=>'नहीं','Language'=>'भाषा','PHP Version'=>'PHP संस्करण','PHP Extensions'=>'PHP एक्सटेंशन','PHP Memory Limit'=>'PHP मेमोरी सीमा','Database'=>'डेटाबेस','Web Server'=>'वेब सर्वर','WP_DEBUG'=>'WP_DEBUG','WP_DEBUG_LOG'=>'WP_DEBUG_LOG','Path:'=>'पथ:','Size: %s'=>'आकार: %s','View Log File'=>'लॉग फ़ाइल देखें','Log file is not web-accessible (outside wp-content)'=>'लॉग फ़ाइल वेब-सुलभ नहीं है (wp-content के बाहर)','Log file does not exist yet'=>'लॉग फ़ाइल अभी तक मौजूद नहीं है','Plugin Version'=>'प्लगइन संस्करण','Component Detection'=>'घटक डिटेक्शन','Version Detected'=>'संस्करण पता लगाया गया','Analyzed'=>'विश्लेषित','Cache Status'=>'कैश स्थिति','Configuration Summary'=>'कॉन्फ़िगरेशन सारांश','Cache Duration'=>'कैश अवधि','Log Retention'=>'लॉग प्रतिधारण','Components Analyzed'=>'विश्लेषित घटक','Notification Email'=>'अधिसूचना ईमेल','Slack Webhook'=>'Slack Webhook','Configured & Enabled'=>'कॉन्फ़िगर किया गया और सक्षम','Configured (Disabled)'=>'कॉन्फ़िगर किया गया (अक्षम)','Not configured'=>'कॉन्फ़िगर नहीं किया गया','Teams Webhook'=>'Teams Webhook','Discord Webhook'=>'Discord Webhook','Telegram Bot'=>'Telegram Bot','Cron Status'=>'Cron स्थिति','Update Database'=>'डेटाबेस अपडेट करें','Next run: %s'=>'अगला रन: %s','Not scheduled'=>'अनुसूचित नहीं','Send Notification'=>'अधिसूचना भेजें','Run Update Now'=>'अभी अपडेट चलाएँ','Run Notification Now'=>'अभी अधिसूचना भेजें','You do not have permission to run these actions.'=>'आपको ये क्रियाएँ चलाने की अनुमति नहीं है।','API Testing'=>'API परीक्षण','Test API connectivity for each component. Click a button to send a test request.'=>'प्रत्येक घटक के लिए API कनेक्टिविटी परीक्षण करें। परीक्षण अनुरोध भेजने के लिए बटन क्लिक करें।','Test %s'=>'%s परीक्षण','Testing...'=>'परीक्षण हो रहा है...','HTTP Code:'=>'HTTP कोड:','Response Time:'=>'प्रतिक्रिया समय:','Response Preview'=>'प्रतिक्रिया पूर्वावलोकन','Test'=>'परीक्षण','Error:'=>'त्रुटि:','AJAX request failed.'=>'AJAX अनुरोध विफल रहा।','You do not have permission to test API connectivity.'=>'आपको API कनेक्टिविटी परीक्षण करने की अनुमति नहीं है।','Database Options Viewer'=>'डेटाबेस विकल्प व्यूअर','View the raw data stored in WordPress options.'=>'WordPress विकल्पों में संग्रहीत रॉ डेटा देखें।','Select an option...'=>'एक विकल्प चुनें...','Option not found or empty.'=>'विकल्प नहीं मिला या खाली है।','Quick Actions'=>'त्वरित क्रियाएँ','Perform debugging actions. Use with caution.'=>'डीबगिंग क्रियाएँ करें। सावधानी से उपयोग करें।','Are you sure you want to clear all caches?'=>'क्या आप सभी कैश साफ़ करना चाहते हैं?','Clear All Caches'=>'सभी कैश साफ़ करें','Are you sure you want to reset signatures?'=>'क्या आप हस्ताक्षर रीसेट करना चाहते हैं?','Reset Signatures'=>'हस्ताक्षर रीसेट करें','Export Debug Info'=>'डीबग जानकारी निर्यात करें','You do not have permission to perform these actions.'=>'आपको ये क्रियाएँ करने की अनुमति नहीं है।','Settings saved.'=>'सेटिंग सहेजी गई।','WPVulnerability cron events have been repaired across the network.'=>'नेटवर्क में WPVulnerability cron इवेंट ठीक किए गए।','You do not have permission to access this page.'=>'इस पृष्ठ तक पहुँचने की आपको अनुमति नहीं है।','WordPress %1$s has a known vulnerability that may be affecting your installed version.'=>'WordPress %1$s में एक ज्ञात सुरक्षा खामी है जो आपके इंस्टॉल किए गए संस्करण को प्रभावित कर सकती है।','Actively exploited'=>'सक्रिय रूप से शोषित','Public exploit'=>'सार्वजनिक एक्सप्लॉइट','Automatable'=>'स्वचालित','References:'=>'संदर्भ:','Invalid component specified.'=>'अमान्य घटक निर्दिष्ट किया गया।','Version not detected for this component.'=>'इस घटक के लिए संस्करण का पता नहीं लगा।','API request successful.'=>'API अनुरोध सफल रहा।','API returned HTTP code %d.'=>'API ने HTTP कोड %d लौटाया।','WPVulnerability Logs'=>'WPVulnerability लॉग','WPVulnerability Log'=>'WPVulnerability लॉग','Low'=>'कम','Medium'=>'मध्यम','High'=>'उच्च','Critical'=>'गंभीर','WPVulnerability Shell Logs'=>'WPVulnerability Shell लॉग','WPVulnerability Shell Log'=>'WPVulnerability Shell लॉग','Every week'=>'हर सप्ताह','Every day'=>'हर दिन','Invalid request.'=>'अमान्य अनुरोध।','You have unsubscribed from WPVulnerability notifications.'=>'आपने WPVulnerability अधिसूचनाओं से सदस्यता रद्द कर दी है।','Learn more about the WordPress Vulnerability Database API at %2$s'=>'WordPress Vulnerability Database API के बारे में %2$s पर और जानें','Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings.'=>'क्या आप ये अलर्ट प्राप्त करना बंद करना चाहते हैं? सदस्यता रद्द करें या WPVulnerability सेटिंग में ईमेल आवृत्ति को कभी नहीं में बदलें।','No vulnerabilities found'=>'कोई सुरक्षा खामी नहीं मिली','This is likely a test. The site does not have vulnerabilities.'=>'यह संभवतः एक परीक्षण है। साइट में कोई सुरक्षा खामी नहीं है।','Core vulnerabilities'=>'Core सुरक्षा खामियाँ','Plugins vulnerabilities'=>'प्लगइन सुरक्षा खामियाँ','Themes vulnerabilities'=>'थीम सुरक्षा खामियाँ','PHP vulnerabilities'=>'PHP सुरक्षा खामियाँ','Apache HTTPD vulnerabilities'=>'Apache HTTPD सुरक्षा खामियाँ','Nginx vulnerabilities'=>'Nginx सुरक्षा खामियाँ','MariaDB vulnerabilities'=>'MariaDB सुरक्षा खामियाँ','MySQL vulnerabilities'=>'MySQL सुरक्षा खामियाँ','ImageMagick vulnerabilities'=>'ImageMagick सुरक्षा खामियाँ','curl vulnerabilities'=>'curl सुरक्षा खामियाँ','memcached vulnerabilities'=>'memcached सुरक्षा खामियाँ','Redis vulnerabilities'=>'Redis सुरक्षा खामियाँ','SQLite vulnerabilities'=>'SQLite सुरक्षा खामियाँ','Vulnerability found: %s'=>'सुरक्षा खामी मिली: %s','Vulnerability found'=>'सुरक्षा खामी मिली','%1$s has a known vulnerability that may be affecting your installed version.'=>'%1$s में एक ज्ञात सुरक्षा खामी है जो आपके इंस्टॉल किए गए संस्करण को प्रभावित कर सकती है।','This plugin is closed. Please replace it with another.'=>'यह प्लगइन बंद है। कृपया इसे किसी अन्य से बदलें।','This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates.'=>'यह सुरक्षा खामी अनपैच्ड प्रतीत होती है। आने वाले प्लगइन अपडेट के लिए बने रहें।','It hasn\'t been updated in over a year.'=>'इसे एक वर्ष से अधिक समय से अपडेट नहीं किया गया है।','It may no longer be available (closed?).'=>'यह अब उपलब्ध नहीं हो सकता (बंद?)।','Last updated on'=>'अंतिम बार अपडेट किया गया','Vulnerabilities (%d)'=>'सुरक्षा खामियाँ (%d)','%s running'=>'%s चल रहा है','End of Life'=>'जीवन का अंत','End of life:'=>'जीवन का अंत:','Supported'=>'समर्थित','Plugin'=>'प्लगइन','Theme'=>'थीम','End of life: %s'=>'जीवन का अंत: %s','EOL'=>'EOL','Network Settings'=>'नेटवर्क सेटिंग','Vulnerabilities'=>'सुरक्षा खामियाँ','Every 6 hours'=>'हर 6 घंटे','Database updates'=>'डेटाबेस अपडेट','Log cleanup'=>'लॉग सफाई','Notifications are scheduled, but settings currently disable them. Please review the notifications tab.'=>'अधिसूचनाएँ अनुसूचित हैं, लेकिन सेटिंग वर्तमान में उन्हें अक्षम करती है। कृपया अधिसूचना टैब की समीक्षा करें।','This event should not be scheduled for this site.'=>'यह इवेंट इस साइट के लिए अनुसूचित नहीं होना चाहिए।','Not expected for this site.'=>'इस साइट के लिए अपेक्षित नहीं।','No instances found.'=>'कोई इंस्टेंस नहीं मिला।','Scheduled with an unexpected interval.'=>'अप्रत्याशित अंतराल के साथ अनुसूचित।','Multiple instances detected.'=>'एकाधिक इंस्टेंस पाए गए।','Scheduled as expected.'=>'अपेक्षा अनुसार अनुसूचित।','There aren\'t plugins vulnerabilities'=>'प्लगइन में कोई सुरक्षा खामी नहीं है','Shows possible vulnerabilities that exist in installed plugins.'=>'इंस्टॉल किए गए प्लगइन में मौजूद संभावित सुरक्षा खामियाँ दिखाता है।','There is %d plugin with vulnerabilities'=>'%d प्लगइन में सुरक्षा खामियाँ हैं' . "\0" . '%d प्लगइन में सुरक्षा खामियाँ हैं','We\'ve detected potential vulnerabilities in installed plugins. Please check them and keep them updated.'=>'हमने इंस्टॉल किए गए प्लगइन में संभावित सुरक्षा खामियाँ पाई हैं। कृपया उन्हें जाँचें और अपडेट रखें।','Update plugins'=>'प्लगइन अपडेट करें','There aren\'t themes vulnerabilities'=>'थीम में कोई सुरक्षा खामी नहीं है','Shows possible vulnerabilities that exist in installed themes.'=>'इंस्टॉल किए गए थीम में मौजूद संभावित सुरक्षा खामियाँ दिखाता है।','There is %d theme with vulnerabilities'=>'%d थीम में सुरक्षा खामियाँ हैं' . "\0" . '%d थीम में सुरक्षा खामियाँ हैं','We\'ve detected potential vulnerabilities in installed themes. Please check them and keep them updated.'=>'हमने इंस्टॉल किए गए थीम में संभावित सुरक्षा खामियाँ पाई हैं। कृपया उन्हें जाँचें और अपडेट रखें।','Update themes'=>'थीम अपडेट करें','There aren\'t WordPress vulnerabilities'=>'WordPress में कोई सुरक्षा खामी नहीं है','Shows possible vulnerabilities existing in the WordPress core.'=>'WordPress core में मौजूद संभावित सुरक्षा खामियाँ दिखाता है।','There is %d core vulnerability'=>'%d core सुरक्षा खामी है' . "\0" . '%d core सुरक्षा खामियाँ हैं','We\'ve detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated.'=>'हमने इस WordPress इंस्टॉलेशन में संभावित सुरक्षा खामियाँ पाई हैं। कृपया उन्हें जाँचें और अपनी इंस्टॉलेशन अपडेट रखें।','Update WordPress'=>'WordPress अपडेट करें','Nginx'=>'Nginx','Invalid software type'=>'अमान्य सॉफ़्टवेयर प्रकार','Error'=>'त्रुटि','The specified software type is not valid.'=>'निर्दिष्ट सॉफ़्टवेयर प्रकार वैध नहीं है।','There aren\'t %s vulnerabilities'=>'%s में कोई सुरक्षा खामी नहीं है','Shows possible vulnerabilities existing in %s.'=>'%s में मौजूद संभावित सुरक्षा खामियाँ दिखाता है।','There is %1$d %2$s vulnerability'=>'%2$s में %1$d सुरक्षा खामी है' . "\0" . '%2$s में %1$d सुरक्षा खामियाँ हैं','We\'ve detected potential vulnerabilities in %s. Please check them and keep your installation updated.'=>'हमने %s में संभावित सुरक्षा खामियाँ पाई हैं। कृपया उन्हें जाँचें और अपनी इंस्टॉलेशन अपडेट रखें।','How to update PHP'=>'PHP कैसे अपडेट करें','WPVulnerability Core'=>'WPVulnerability Core','WPVulnerability Themes'=>'WPVulnerability Themes','WPVulnerability Plugins'=>'WPVulnerability Plugins','WPVulnerability PHP'=>'WPVulnerability PHP','WPVulnerability Apache HTTPD'=>'WPVulnerability Apache HTTPD','WPVulnerability Nginx'=>'WPVulnerability Nginx','WPVulnerability MariaDB'=>'WPVulnerability MariaDB','WPVulnerability MySQL'=>'WPVulnerability MySQL','WPVulnerability ImageMagick'=>'WPVulnerability ImageMagick','WPVulnerability curl'=>'WPVulnerability curl','WPVulnerability memcached'=>'WPVulnerability memcached','WPVulnerability redis'=>'WPVulnerability redis','WPVulnerability sqlite'=>'WPVulnerability sqlite','This theme is closed. Please replace it with another.'=>'यह थीम बंद है। कृपया इसे किसी अन्य से बदलें।','This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates.'=>'यह सुरक्षा खामी अनपैच्ड प्रतीत होती है। आने वाले थीम अपडेट के लिए बने रहें।','This theme has known vulnerabilities that may be affecting your installed version.'=>'इस थीम में ज्ञात सुरक्षा खामियाँ हैं जो आपके इंस्टॉल किए गए संस्करण को प्रभावित कर सकती हैं।']]; \ No newline at end of file diff --git a/languages/wpvulnerability-hi.mo b/languages/wpvulnerability-hi.mo new file mode 100644 index 0000000000000000000000000000000000000000..a2b81790cdd941cdf34f1d060bd91c74d4c542e0 GIT binary patch literal 56232 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 literal 0 HcmV?d00001 diff --git a/languages/wpvulnerability-hi.po b/languages/wpvulnerability-hi.po new file mode 100644 index 0000000..7684213 --- /dev/null +++ b/languages/wpvulnerability-hi.po @@ -0,0 +1,1437 @@ +# Copyright (C) 2026 ROBOTSTXT +# This file is distributed under the GPL-3.0-or-later. +msgid "" +msgstr "" +"Project-Id-Version: WPVulnerability 5.0.0\n" +"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wpvulnerability\n" +"POT-Creation-Date: 2026-05-27T16:32:22+00:00\n" +"PO-Revision-Date: 2026-05-27 00:00+0000\n" +"Last-Translator: Automatically generated\n" +"Language-Team: Hindi \n" +"Language: hi\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: AI Translation\n" +"X-Domain: wpvulnerability\n" + +#. Plugin Name of the plugin +msgid "WPVulnerability" +msgstr "WPVulnerability" + +#. Plugin URI of the plugin +msgid "https://www.wpvulnerability.com/plugin/" +msgstr "https://www.wpvulnerability.com/plugin/" + +#. Description of the plugin +msgid "Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API." +msgstr "WordPress Vulnerability Database API से अपने WordPress में संभावित सुरक्षा खामियों की जानकारी प्राप्त करें।" + +#. Author of the plugin +msgid "ROBOTSTXT" +msgstr "ROBOTSTXT" + +#. Author URI of the plugin +msgid "https://www.robotstxt.es/" +msgstr "https://www.robotstxt.es/" + +msgid "This command requires a WordPress administrator. Run with --user=." +msgstr "इस कमांड के लिए WordPress व्यवस्थापक की आवश्यकता है। --user= के साथ चलाएँ।" + +msgid "No core vulnerabilities found." +msgstr "कोई कोर सुरक्षा खामी नहीं मिली।" + +msgid "No plugin vulnerabilities found." +msgstr "कोई प्लगइन सुरक्षा खामी नहीं मिली।" + +msgid "No theme vulnerabilities found." +msgstr "कोई थीम सुरक्षा खामी नहीं मिली।" + +#, php-format +msgid "No %s vulnerabilities found." +msgstr "कोई %s सुरक्षा खामी नहीं मिली।" + +msgid "Data from source has been reloaded." +msgstr "स्रोत से डेटा पुनः लोड किया गया।" + +msgid "You do not have permission to reload data." +msgstr "आपको डेटा पुनः लोड करने की अनुमति नहीं है।" + +msgid "Test email has been sent." +msgstr "परीक्षण ईमेल भेजा गया।" + +msgid "Test email has failed. Please, check your email settings." +msgstr "परीक्षण ईमेल विफल रहा। कृपया अपनी ईमेल सेटिंग जाँचें।" + +msgid "You do not have permission to send test emails." +msgstr "आपको परीक्षण ईमेल भेजने की अनुमति नहीं है।" + +msgid "WPVulnerability cron events have been repaired." +msgstr "WPVulnerability क्रॉन इवेंट ठीक किए गए।" + +msgid "You do not have permission to repair cron events." +msgstr "आपको क्रॉन इवेंट ठीक करने की अनुमति नहीं है।" + +msgid "All logs have been deleted." +msgstr "सभी लॉग हटा दिए गए।" + +msgid "You do not have permission to delete logs." +msgstr "आपको लॉग हटाने की अनुमति नहीं है।" + +msgid "Uninstall preference saved." +msgstr "अनइंस्टॉल प्राथमिकता सहेजी गई।" + +msgid "WPVulnerability has been reset to defaults and reloaded." +msgstr "WPVulnerability को डिफ़ॉल्ट पर रीसेट किया गया और पुनः लोड किया गया।" + +msgid "You do not have permission to reset WPVulnerability." +msgstr "आपको WPVulnerability रीसेट करने की अनुमति नहीं है।" + +msgid "All caches have been cleared." +msgstr "सभी कैश साफ़ कर दिए गए।" + +msgid "You do not have permission to clear caches." +msgstr "आपको कैश साफ़ करने की अनुमति नहीं है।" + +msgid "Plugin and theme signatures have been reset." +msgstr "प्लगइन और थीम हस्ताक्षर रीसेट किए गए।" + +msgid "You do not have permission to reset signatures." +msgstr "आपको हस्ताक्षर रीसेट करने की अनुमति नहीं है।" + +msgid "You do not have permission to export debug information." +msgstr "आपको डीबग जानकारी निर्यात करने की अनुमति नहीं है।" + +msgid "Database update has been executed." +msgstr "डेटाबेस अपडेट निष्पादित किया गया।" + +msgid "You do not have permission to run database updates." +msgstr "आपको डेटाबेस अपडेट चलाने की अनुमति नहीं है।" + +msgid "Notification has been sent." +msgstr "अधिसूचना भेजी गई।" + +msgid "Notification sending failed." +msgstr "अधिसूचना भेजना विफल रहा।" + +msgid "You do not have permission to send notifications." +msgstr "आपको अधिसूचनाएँ भेजने की अनुमति नहीं है।" + +msgid "Notifications" +msgstr "अधिसूचनाएँ" + +msgid "Analysis" +msgstr "विश्लेषण" + +msgid "Logs" +msgstr "लॉग" + +msgid "Security" +msgstr "सुरक्षा" + +msgid "Tools" +msgstr "टूल" + +msgid "Debug" +msgstr "डीबग" + +msgid "About" +msgstr "परिचय" + +msgid "Notification Settings" +msgstr "अधिसूचना सेटिंग" + +msgid "Configure how and when you want to receive vulnerability notifications." +msgstr "सेट करें कि आप सुरक्षा खामी अधिसूचनाएँ कैसे और कब प्राप्त करना चाहते हैं।" + +msgid "Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software." +msgstr "अपनी WordPress इंस्टॉलेशन, प्लगइन, थीम और सर्वर सॉफ़्टवेयर में सुरक्षा खामियों के बारे में जानकारी रखें।" + +msgid "Cache Expiration Time" +msgstr "कैश समाप्ति समय" + +msgid "FORCED" +msgstr "बाध्य" + +msgid "How long to cache vulnerability data before refreshing from the API." +msgstr "API से ताज़ा करने से पहले सुरक्षा खामी डेटा कितने समय तक कैश में रखें।" + +#, php-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d घंटा" +msgstr[1] "%d घंटे" + +#, php-format +msgid "You can force the cache time via wp-config.php constant. Learn more →" +msgstr "आप wp-config.php कॉन्स्टेंट के माध्यम से कैश समय बाध्य कर सकते हैं। और जानें →" + +msgid "Notification Frequency" +msgstr "अधिसूचना आवृत्ति" + +msgid "Choose how often you want to receive vulnerability notifications." +msgstr "चुनें कि आप सुरक्षा खामी अधिसूचनाएँ कितनी बार प्राप्त करना चाहते हैं।" + +msgid "Never - Disable automatic notifications" +msgstr "कभी नहीं - स्वचालित अधिसूचनाएँ बंद करें" + +msgid "Daily - Receive notifications every day" +msgstr "दैनिक - हर दिन अधिसूचनाएँ प्राप्त करें" + +msgid "Weekly - Receive notifications once a week" +msgstr "साप्ताहिक - सप्ताह में एक बार अधिसूचनाएँ प्राप्त करें" + +msgid "Day:" +msgstr "दिन:" + +msgid "Monday" +msgstr "सोमवार" + +msgid "Tuesday" +msgstr "मंगलवार" + +msgid "Wednesday" +msgstr "बुधवार" + +msgid "Thursday" +msgstr "गुरुवार" + +msgid "Friday" +msgstr "शुक्रवार" + +msgid "Saturday" +msgstr "शनिवार" + +msgid "Sunday" +msgstr "रविवार" + +msgid "Time:" +msgstr "समय:" + +msgid "(24-hour format, server timezone)" +msgstr "(24-घंटे का प्रारूप, सर्वर टाइमज़ोन)" + +msgid "Notification Channels" +msgstr "अधिसूचना चैनल" + +msgid "Select where you want to receive notifications." +msgstr "चुनें कि आप अधिसूचनाएँ कहाँ प्राप्त करना चाहते हैं।" + +msgid "Email" +msgstr "ईमेल" + +msgid "Email Addresses (separated by commas):" +msgstr "ईमेल पते (अल्पविराम से अलग करें):" + +msgid "Default:" +msgstr "डिफ़ॉल्ट:" + +msgid "Slack" +msgstr "Slack" + +msgid "Slack Webhook URL:" +msgstr "Slack Webhook URL:" + +#, php-format +msgid "Learn how to create a Slack incoming webhook →" +msgstr "Slack इनकमिंग webhook कैसे बनाएँ →" + +msgid "Microsoft Teams" +msgstr "Microsoft Teams" + +msgid "Teams Webhook URL:" +msgstr "Teams Webhook URL:" + +#, php-format +msgid "Learn how to create a Teams incoming webhook →" +msgstr "Teams इनकमिंग webhook कैसे बनाएँ →" + +msgid "Discord" +msgstr "Discord" + +msgid "Discord Webhook URL:" +msgstr "Discord Webhook URL:" + +#, php-format +msgid "Learn how to create a Discord webhook →" +msgstr "Discord webhook कैसे बनाएँ →" + +msgid "Telegram" +msgstr "Telegram" + +msgid "Telegram Bot Token:" +msgstr "Telegram Bot Token:" + +msgid "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "प्रारूप: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +msgid "Telegram Chat ID:" +msgstr "Telegram Chat ID:" + +#, php-format +msgid "Learn how to create a Telegram bot and get Chat ID →" +msgstr "Telegram bot कैसे बनाएँ और Chat ID कैसे प्राप्त करें →" + +msgid "Save Notification Settings" +msgstr "अधिसूचना सेटिंग सहेजें" + +msgid "WordPress Components" +msgstr "WordPress घटक" + +msgid "WordPress Core" +msgstr "WordPress Core" + +msgid "Plugins" +msgstr "प्लगइन" + +msgid "Themes" +msgstr "थीम" + +msgid "Software & Languages" +msgstr "सॉफ़्टवेयर और भाषाएँ" + +msgid "PHP" +msgstr "PHP" + +msgid "Web Servers" +msgstr "वेब सर्वर" + +msgid "Apache HTTPD" +msgstr "Apache HTTPD" + +msgid "nginx" +msgstr "nginx" + +msgid "Databases" +msgstr "डेटाबेस" + +msgid "MariaDB" +msgstr "MariaDB" + +msgid "MySQL" +msgstr "MySQL" + +msgid "SQLite" +msgstr "SQLite" + +msgid "Additional Tools" +msgstr "अतिरिक्त टूल" + +msgid "ImageMagick" +msgstr "ImageMagick" + +msgid "curl" +msgstr "curl" + +msgid "memcached" +msgstr "memcached" + +msgid "Redis" +msgstr "Redis" + +msgid "Component Analysis Settings" +msgstr "घटक विश्लेषण सेटिंग" + +msgid "Enable or disable vulnerability analysis for specific components." +msgstr "विशिष्ट घटकों के लिए सुरक्षा खामी विश्लेषण सक्षम या अक्षम करें।" + +msgid "Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red." +msgstr "वे घटक चुनें जिन्हें आप सुरक्षा खामी स्कैन और रिपोर्ट से छुपाना चाहते हैं। अनचेक किए गए घटकों का सक्रिय रूप से विश्लेषण किया जाएगा। सक्रिय विश्लेषण वाले घटक हरे रंग में और छुपे हुए घटक लाल रंग में दिखाए जाते हैं।" + +msgid "Hidden (forced by constant)" +msgstr "छुपाया गया (कॉन्स्टेंट द्वारा बाध्य)" + +msgid "🔴 Analysis disabled" +msgstr "🔴 विश्लेषण अक्षम" + +msgid "🟢 Analysis active" +msgstr "🟢 विश्लेषण सक्रिय" + +msgid "Tip:" +msgstr "सुझाव:" + +#, php-format +msgid "You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →" +msgstr "आप wp-config.php कॉन्स्टेंट के माध्यम से घटकों को बाध्यतापूर्वक अक्षम कर सकते हैं। जाँचें छुपाने के बारे में और जानें →" + +msgid "Save Analysis Settings" +msgstr "विश्लेषण सेटिंग सहेजें" + +msgid "« Previous" +msgstr "« पिछला" + +msgid "Next »" +msgstr "अगला »" + +msgid "Log entry not found or has been removed." +msgstr "लॉग प्रविष्टि नहीं मिली या हटा दी गई।" + +msgid "Unable to load the requested log entry." +msgstr "अनुरोधित लॉग प्रविष्टि लोड नहीं की जा सकी।" + +msgid "Log Configuration" +msgstr "लॉग कॉन्फ़िगरेशन" + +msgid "Total Logs" +msgstr "कुल लॉग" + +msgid "Retention Period" +msgstr "प्रतिधारण अवधि" + +msgid "Disabled" +msgstr "अक्षम" + +#, php-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d दिन" +msgstr[1] "%d दिन" + +msgid "Log Retention Period" +msgstr "लॉग प्रतिधारण अवधि" + +msgid "None (Disabled)" +msgstr "कोई नहीं (अक्षम)" + +msgid "This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant." +msgstr "यह मान WPVULNERABILITY_LOG_RETENTION_DAYS कॉन्स्टेंट द्वारा लागू किया गया है।" + +msgid "Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted." +msgstr "चुनें कि WPVulnerability को API प्रतिक्रिया लॉग कितने समय तक रखने चाहिए। पुराने लॉग स्वचालित रूप से हटा दिए जाते हैं।" + +msgid "Save Configuration" +msgstr "कॉन्फ़िगरेशन सहेजें" + +msgid "Log retention is currently disabled." +msgstr "लॉग प्रतिधारण वर्तमान में अक्षम है।" + +msgid "API responses are not being saved." +msgstr "API प्रतिक्रियाएँ सहेजी नहीं जा रही हैं।" + +msgid "Log Details" +msgstr "लॉग विवरण" + +msgid "Date" +msgstr "दिनांक" + +msgid "API Endpoint" +msgstr "API Endpoint" + +msgid "API Response" +msgstr "API प्रतिक्रिया" + +msgid "Back to Logs" +msgstr "लॉग पर वापस जाएँ" + +msgid "No logs available" +msgstr "कोई लॉग उपलब्ध नहीं" + +msgid "API response logs will appear here once the vulnerability scanner runs." +msgstr "सुरक्षा खामी स्कैनर चलने के बाद यहाँ API प्रतिक्रिया लॉग दिखाई देंगे।" + +msgid "API Response Logs" +msgstr "API प्रतिक्रिया लॉग" + +msgid "Show:" +msgstr "दिखाएँ:" + +msgid "Apply" +msgstr "लागू करें" + +#, php-format +msgid "Showing %1$s–%2$s of %3$s" +msgstr "%3$s में से %1$s–%2$s दिखाया जा रहा है" + +msgid "Actions" +msgstr "क्रियाएँ" + +msgid "View" +msgstr "देखें" + +msgid "Danger Zone" +msgstr "खतरनाक क्षेत्र" + +msgid "Permanently delete all API response logs. This action cannot be undone." +msgstr "सभी API प्रतिक्रिया लॉग स्थायी रूप से हटाएँ। यह क्रिया पूर्ववत नहीं की जा सकती।" + +msgid "Are you sure you want to delete all logs? This action cannot be undone." +msgstr "क्या आप सभी लॉग हटाना चाहते हैं? यह क्रिया पूर्ववत नहीं की जा सकती।" + +msgid "Delete All Logs" +msgstr "सभी लॉग हटाएँ" + +msgid "Reload Data from API" +msgstr "API से डेटा पुनः लोड करें" + +msgid "Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information." +msgstr "अपडेट किया हुआ डेटा पाने के लिए सभी Core, प्लगइन, थीम और अन्य घटकों की जानकारी सीधे API से पुनः लोड करें। यह कैश साफ़ करेगा और ताज़ी सुरक्षा खामी जानकारी लाएगा।" + +msgid "Reload Data" +msgstr "डेटा पुनः लोड करें" + +msgid "Test Email Notifications" +msgstr "परीक्षण ईमेल अधिसूचनाएँ" + +msgid "Send a test email notification with current vulnerability data to verify your email configuration is working correctly." +msgstr "अपनी ईमेल कॉन्फ़िगरेशन सही ढंग से काम कर रही है या नहीं, यह जाँचने के लिए वर्तमान सुरक्षा खामी डेटा के साथ एक परीक्षण ईमेल अधिसूचना भेजें।" + +msgid "From address (configured via constant):" +msgstr "प्रेषक पता (कॉन्स्टेंट के माध्यम से कॉन्फ़िगर किया गया):" + +msgid "From address (default):" +msgstr "प्रेषक पता (डिफ़ॉल्ट):" + +msgid "Learn how to customize the email sender address →" +msgstr "ईमेल प्रेषक पता कैसे कस्टमाइज़ करें →" + +msgid "Send Test Email" +msgstr "परीक्षण ईमेल भेजें" + +msgid "WP-Cron Status" +msgstr "WP-Cron स्थिति" + +msgid "View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly." +msgstr "WP-Cron अनुसूचित इवेंट देखें और प्रबंधित करें। सुनिश्चित करें कि स्वचालित कार्य सही ढंग से चल रहे हैं।" + +msgid "No cron data available." +msgstr "कोई cron डेटा उपलब्ध नहीं।" + +msgid "Hook" +msgstr "हुक" + +msgid "Expected" +msgstr "अपेक्षित" + +msgid "Found" +msgstr "मिला" + +msgid "Next Run" +msgstr "अगला रन" + +msgid "Status" +msgstr "स्थिति" + +msgid "Not expected" +msgstr "अपेक्षित नहीं" + +msgid "None" +msgstr "कोई नहीं" + +msgid "OK" +msgstr "ठीक है" + +msgid "⚠️ Unexpected WPVulnerability Events" +msgstr "⚠️ अप्रत्याशित WPVulnerability इवेंट" + +msgid "No interval" +msgstr "कोई अंतराल नहीं" + +msgid "Next:" +msgstr "अगला:" + +msgid "Repair Cron Events" +msgstr "Cron इवेंट ठीक करें" + +msgid "Uninstall Data" +msgstr "अनइंस्टॉल डेटा" + +msgid "By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall." +msgstr "डिफ़ॉल्ट रूप से, WPVulnerability हटाने पर सभी प्लगइन डेटा सुरक्षित रहता है। नीचे दिया गया विकल्प केवल तभी सक्षम करें जब आप अनइंस्टॉल करने पर सभी विकल्प, लॉग और कैश्ड डेटा स्थायी रूप से हटाना चाहते हों।" + +msgid "Delete all plugin data on uninstall" +msgstr "अनइंस्टॉल करने पर सभी प्लगइन डेटा हटाएँ" + +msgid "Default: unchecked (data preserved). Check only if you want a clean removal." +msgstr "डिफ़ॉल्ट: अनचेक (डेटा सुरक्षित)। केवल तभी चेक करें जब आप स्वच्छ निष्कासन चाहते हों।" + +msgid "Save preference" +msgstr "प्राथमिकता सहेजें" + +msgid "Reset WPVulnerability" +msgstr "WPVulnerability रीसेट करें" + +msgid "Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API." +msgstr "सभी WPVulnerability सेटिंग, कैश्ड डेटा, लॉग और अनुसूचित इवेंट हटाएँ, फिर डिफ़ॉल्ट पुनर्स्थापित करें और API से डेटा पुनः लोड करें।" + +msgid "This action cannot be undone." +msgstr "यह क्रिया पूर्ववत नहीं की जा सकती।" + +msgid "Are you sure you want to reset all WPVulnerability data? This action cannot be undone." +msgstr "क्या आप सभी WPVulnerability डेटा रीसेट करना चाहते हैं? यह क्रिया पूर्ववत नहीं की जा सकती।" + +msgid "Reset Plugin" +msgstr "प्लगइन रीसेट करें" + +msgid "Vulnerability Database Statistics" +msgstr "सुरक्षा खामी डेटाबेस आँकड़े" + +#, php-format +msgid "%s vulnerability" +msgid_plural "%s vulnerabilities" +msgstr[0] "%s सुरक्षा खामी" +msgstr[1] "%s सुरक्षा खामियाँ" + +#, php-format +msgid "(%s product)" +msgid_plural "(%s products)" +msgstr[0] "(%s उत्पाद)" +msgstr[1] "(%s उत्पाद)" + +msgid "No data" +msgstr "कोई डेटा नहीं" + +#, php-format +msgid "Database last updated: %s" +msgstr "डेटाबेस अंतिम बार अपडेट किया गया: %s" + +msgid "Intelligence Sources" +msgstr "इंटेलिजेंस स्रोत" + +msgid "Number of vulnerabilities contributed by each intelligence source." +msgstr "प्रत्येक इंटेलिजेंस स्रोत द्वारा योगदान की गई सुरक्षा खामियों की संख्या।" + +msgid "Source" +msgstr "स्रोत" + +msgid "Core" +msgstr "Core" + +msgid "Sponsors" +msgstr "प्रायोजक" + +msgid "No sponsor data available." +msgstr "कोई प्रायोजक डेटा उपलब्ध नहीं।" + +msgid "Contributors" +msgstr "योगदानकर्ता" + +msgid "No contributor data available." +msgstr "कोई योगदानकर्ता डेटा उपलब्ध नहीं।" + +msgid "You do not have sufficient permissions to access this page." +msgstr "इस पृष्ठ तक पहुँचने के लिए आपके पास पर्याप्त अनुमति नहीं है।" + +msgid "WPVulnerability settings" +msgstr "WPVulnerability सेटिंग" + +msgid "Configure and save these settings to receive notifications." +msgstr "अधिसूचनाएँ प्राप्त करने के लिए ये सेटिंग कॉन्फ़िगर करें और सहेजें।" + +msgid "Configure and save these settings to hide vulnerabilities." +msgstr "सुरक्षा खामियाँ छुपाने के लिए ये सेटिंग कॉन्फ़िगर करें और सहेजें।" + +msgid "Default administrator email" +msgstr "डिफ़ॉल्ट व्यवस्थापक ईमेल" + +msgid "Read more if you want to force the cache time." +msgstr "यदि आप कैश समय बाध्य करना चाहते हैं तो और पढ़ें।" + +msgid "Never" +msgstr "कभी नहीं" + +msgid "Daily" +msgstr "दैनिक" + +msgid "Weekly" +msgstr "साप्ताहिक" + +msgid "Day" +msgstr "दिन" + +msgid "Hour" +msgstr "घंटा" + +msgid "Minute" +msgstr "मिनट" + +msgid "Read more about how to force the deactivation of an item." +msgstr "किसी आइटम को बाध्यतापूर्वक निष्क्रिय करने के बारे में और पढ़ें।" + +msgid "Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com" +msgstr "अमान्य Slack webhook URL। यह hooks.slack.com से एक वैध HTTPS URL होना चाहिए।" + +msgid "Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com" +msgstr "अमान्य Microsoft Teams webhook URL। यह office.com, office365.com या api.hooks.microsoft.com से एक वैध HTTPS URL होना चाहिए।" + +msgid "Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com" +msgstr "अमान्य Discord webhook URL। यह discord.com या discordapp.com से एक वैध HTTPS URL होना चाहिए।" + +msgid "Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "अमान्य Telegram bot token प्रारूप। यह इस तरह होना चाहिए: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +msgid "All Clear" +msgstr "सब ठीक" + +#, php-format +msgid "%d Critical Issue Found" +msgid_plural "%d Critical Issues Found" +msgstr[0] "%d गंभीर समस्या मिली" +msgstr[1] "%d गंभीर समस्याएँ मिलीं" + +#, php-format +msgid "%d Issue Found" +msgid_plural "%d Issues Found" +msgstr[0] "%d समस्या मिली" +msgstr[1] "%d समस्याएँ मिलीं" + +msgid "Never checked" +msgstr "कभी जाँचा नहीं गया" + +#, php-format +msgid "%d minute ago" +msgid_plural "%d minutes ago" +msgstr[0] "%d मिनट पहले" +msgstr[1] "%d मिनट पहले" + +#, php-format +msgid "%d hour ago" +msgid_plural "%d hours ago" +msgstr[0] "%d घंटे पहले" +msgstr[1] "%d घंटे पहले" + +#, php-format +msgid "Last checked: %s" +msgstr "अंतिम बार जाँचा गया: %s" + +msgid "Refresh Now" +msgstr "अभी ताज़ा करें" + +msgid "No vulnerabilities detected" +msgstr "कोई सुरक्षा खामी नहीं मिली" + +msgid "Your site is up to date and secure" +msgstr "आपकी साइट अप-टू-डेट और सुरक्षित है" + +msgid "Server Software" +msgstr "सर्वर सॉफ़्टवेयर" + +msgid "Site Health" +msgstr "साइट स्वास्थ्य" + +msgid "Settings" +msgstr "सेटिंग" + +msgid "WPVulnerability Status" +msgstr "WPVulnerability स्थिति" + +msgid "Receive vulnerability notifications" +msgstr "सुरक्षा खामी अधिसूचनाएँ प्राप्त करें" + +msgid "Cache expiration time" +msgstr "कैश समाप्ति समय" + +msgid "How often you want to receive notifications" +msgstr "आप कितनी बार अधिसूचनाएँ प्राप्त करना चाहते हैं" + +msgid "Where do you want to receive notifications?" +msgstr "आप अधिसूचनाएँ कहाँ प्राप्त करना चाहते हैं?" + +msgid "Email addresses to notify (separated by commas)" +msgstr "सूचित करने के लिए ईमेल पते (अल्पविराम से अलग करें)" + +msgid "Slack webhook URL" +msgstr "Slack webhook URL" + +msgid "Teams webhook URL" +msgstr "Teams webhook URL" + +msgid "Vulnerabilities to hide" +msgstr "छुपाने के लिए सुरक्षा खामियाँ" + +msgid "What do you want to hide?" +msgstr "आप क्या छुपाना चाहते हैं?" + +msgid "Standard (Hybrid Detection)" +msgstr "मानक (हाइब्रिड डिटेक्शन)" + +msgid "Strict (Extensions Only)" +msgstr "सख्त (केवल एक्सटेंशन)" + +msgid "Disabled (No Detection)" +msgstr "अक्षम (कोई डिटेक्शन नहीं)" + +msgid "Security Status" +msgstr "सुरक्षा स्थिति" + +msgid "Security Mode" +msgstr "सुरक्षा मोड" + +msgid "Shell Execution" +msgstr "Shell निष्पादन" + +msgid "Enabled" +msgstr "सक्षम" + +msgid "Audit Logging" +msgstr "ऑडिट लॉगिंग" + +#, php-format +msgid "Enabled (%d days)" +msgstr "सक्षम (%d दिन)" + +msgid "Total Log Entries" +msgstr "कुल लॉग प्रविष्टियाँ" + +msgid "Last Shell Execution" +msgstr "अंतिम Shell निष्पादन" + +#, php-format +msgid "%s ago" +msgstr "%s पहले" + +msgid "Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST." +msgstr "wp-config.php कॉन्स्टेंट के माध्यम से सुरक्षा सेटिंग कॉन्फ़िगर करें: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST।" + +#, php-format +msgid "See security configuration documentation for details." +msgstr "विवरण के लिए सुरक्षा कॉन्फ़िगरेशन दस्तावेज़ीकरण देखें।" + +msgid "Memcached" +msgstr "Memcached" + +msgid "Imagick Extension" +msgstr "Imagick एक्सटेंशन" + +msgid "Redis Extension" +msgstr "Redis एक्सटेंशन" + +msgid "Memcached Extension" +msgstr "Memcached एक्सटेंशन" + +msgid "Memcache Extension" +msgstr "Memcache एक्सटेंशन" + +msgid "SQLite3 Extension" +msgstr "SQLite3 एक्सटेंशन" + +msgid "PDO SQLite" +msgstr "PDO SQLite" + +msgid "Shell Command" +msgstr "Shell कमांड" + +msgid "Binary Check" +msgstr "बाइनरी जाँच" + +msgid "Not Detected" +msgstr "पता नहीं लगा" + +msgid "Software Detection Methods" +msgstr "सॉफ़्टवेयर डिटेक्शन विधियाँ" + +msgid "Shows which detection method was used for each software component and the reliability score." +msgstr "दिखाता है कि प्रत्येक सॉफ़्टवेयर घटक के लिए कौन सी डिटेक्शन विधि का उपयोग किया गया और विश्वसनीयता स्कोर क्या है।" + +msgid "Component" +msgstr "घटक" + +msgid "Version" +msgstr "संस्करण" + +msgid "Detection Method" +msgstr "डिटेक्शन विधि" + +msgid "Reliability" +msgstr "विश्वसनीयता" + +msgid "Not detected" +msgstr "पता नहीं लगा" + +msgid "Shell Execution Audit Logs" +msgstr "Shell निष्पादन ऑडिट लॉग" + +msgid "Complete audit trail of shell command executions for security monitoring." +msgstr "सुरक्षा निगरानी के लिए shell कमांड निष्पादन का पूर्ण ऑडिट ट्रेल।" + +msgid "No shell execution logs found." +msgstr "कोई shell निष्पादन लॉग नहीं मिला।" + +msgid "Logs will appear here when shell commands are executed for software detection." +msgstr "सॉफ़्टवेयर डिटेक्शन के लिए shell कमांड निष्पादित होने पर यहाँ लॉग दिखाई देंगे।" + +msgid "Time" +msgstr "समय" + +msgid "Command" +msgstr "कमांड" + +msgid "User" +msgstr "उपयोगकर्ता" + +msgid "Output" +msgstr "आउटपुट" + +#, php-format +msgid "Showing the %d most recent log entries." +msgstr "सबसे हाल की %d लॉग प्रविष्टियाँ दिखाई जा रही हैं।" + +msgid "Invalid nonce." +msgstr "अमान्य nonce।" + +msgid "Insufficient permissions." +msgstr "अपर्याप्त अनुमतियाँ।" + +msgid "No component specified." +msgstr "कोई घटक निर्दिष्ट नहीं किया गया।" + +msgid "Debug Information" +msgstr "डीबग जानकारी" + +msgid "This tab is only visible when WP_DEBUG is enabled. Use with caution." +msgstr "यह टैब केवल तभी दिखाई देता है जब WP_DEBUG सक्षम हो। सावधानी से उपयोग करें।" + +msgid "System Information" +msgstr "सिस्टम जानकारी" + +msgid "WordPress Version" +msgstr "WordPress संस्करण" + +msgid "Multisite" +msgstr "मल्टीसाइट" + +msgid "Yes" +msgstr "हाँ" + +msgid "No" +msgstr "नहीं" + +msgid "Language" +msgstr "भाषा" + +msgid "PHP Version" +msgstr "PHP संस्करण" + +msgid "PHP Extensions" +msgstr "PHP एक्सटेंशन" + +msgid "PHP Memory Limit" +msgstr "PHP मेमोरी सीमा" + +msgid "Database" +msgstr "डेटाबेस" + +msgid "Web Server" +msgstr "वेब सर्वर" + +msgid "WP_DEBUG" +msgstr "WP_DEBUG" + +msgid "WP_DEBUG_LOG" +msgstr "WP_DEBUG_LOG" + +msgid "Path:" +msgstr "पथ:" + +#, php-format +msgid "Size: %s" +msgstr "आकार: %s" + +msgid "View Log File" +msgstr "लॉग फ़ाइल देखें" + +msgid "Log file is not web-accessible (outside wp-content)" +msgstr "लॉग फ़ाइल वेब-सुलभ नहीं है (wp-content के बाहर)" + +msgid "Log file does not exist yet" +msgstr "लॉग फ़ाइल अभी तक मौजूद नहीं है" + +msgid "Plugin Version" +msgstr "प्लगइन संस्करण" + +msgid "Component Detection" +msgstr "घटक डिटेक्शन" + +msgid "Version Detected" +msgstr "संस्करण पता लगाया गया" + +msgid "Analyzed" +msgstr "विश्लेषित" + +msgid "Cache Status" +msgstr "कैश स्थिति" + +msgid "Configuration Summary" +msgstr "कॉन्फ़िगरेशन सारांश" + +msgid "Cache Duration" +msgstr "कैश अवधि" + +msgid "Log Retention" +msgstr "लॉग प्रतिधारण" + +msgid "Components Analyzed" +msgstr "विश्लेषित घटक" + +msgid "Notification Email" +msgstr "अधिसूचना ईमेल" + +msgid "Slack Webhook" +msgstr "Slack Webhook" + +msgid "Configured & Enabled" +msgstr "कॉन्फ़िगर किया गया और सक्षम" + +msgid "Configured (Disabled)" +msgstr "कॉन्फ़िगर किया गया (अक्षम)" + +msgid "Not configured" +msgstr "कॉन्फ़िगर नहीं किया गया" + +msgid "Teams Webhook" +msgstr "Teams Webhook" + +msgid "Discord Webhook" +msgstr "Discord Webhook" + +msgid "Telegram Bot" +msgstr "Telegram Bot" + +msgid "Cron Status" +msgstr "Cron स्थिति" + +msgid "Update Database" +msgstr "डेटाबेस अपडेट करें" + +#, php-format +msgid "Next run: %s" +msgstr "अगला रन: %s" + +msgid "Not scheduled" +msgstr "अनुसूचित नहीं" + +msgid "Send Notification" +msgstr "अधिसूचना भेजें" + +msgid "Run Update Now" +msgstr "अभी अपडेट चलाएँ" + +msgid "Run Notification Now" +msgstr "अभी अधिसूचना भेजें" + +msgid "You do not have permission to run these actions." +msgstr "आपको ये क्रियाएँ चलाने की अनुमति नहीं है।" + +msgid "API Testing" +msgstr "API परीक्षण" + +msgid "Test API connectivity for each component. Click a button to send a test request." +msgstr "प्रत्येक घटक के लिए API कनेक्टिविटी परीक्षण करें। परीक्षण अनुरोध भेजने के लिए बटन क्लिक करें।" + +#, php-format +msgid "Test %s" +msgstr "%s परीक्षण" + +msgid "Testing..." +msgstr "परीक्षण हो रहा है..." + +msgid "HTTP Code:" +msgstr "HTTP कोड:" + +msgid "Response Time:" +msgstr "प्रतिक्रिया समय:" + +msgid "Response Preview" +msgstr "प्रतिक्रिया पूर्वावलोकन" + +msgid "Test" +msgstr "परीक्षण" + +msgid "Error:" +msgstr "त्रुटि:" + +msgid "AJAX request failed." +msgstr "AJAX अनुरोध विफल रहा।" + +msgid "You do not have permission to test API connectivity." +msgstr "आपको API कनेक्टिविटी परीक्षण करने की अनुमति नहीं है।" + +msgid "Database Options Viewer" +msgstr "डेटाबेस विकल्प व्यूअर" + +msgid "View the raw data stored in WordPress options." +msgstr "WordPress विकल्पों में संग्रहीत रॉ डेटा देखें।" + +msgid "Select an option..." +msgstr "एक विकल्प चुनें..." + +msgid "Option not found or empty." +msgstr "विकल्प नहीं मिला या खाली है।" + +msgid "Quick Actions" +msgstr "त्वरित क्रियाएँ" + +msgid "Perform debugging actions. Use with caution." +msgstr "डीबगिंग क्रियाएँ करें। सावधानी से उपयोग करें।" + +msgid "Are you sure you want to clear all caches?" +msgstr "क्या आप सभी कैश साफ़ करना चाहते हैं?" + +msgid "Clear All Caches" +msgstr "सभी कैश साफ़ करें" + +msgid "Are you sure you want to reset signatures?" +msgstr "क्या आप हस्ताक्षर रीसेट करना चाहते हैं?" + +msgid "Reset Signatures" +msgstr "हस्ताक्षर रीसेट करें" + +msgid "Export Debug Info" +msgstr "डीबग जानकारी निर्यात करें" + +msgid "You do not have permission to perform these actions." +msgstr "आपको ये क्रियाएँ करने की अनुमति नहीं है।" + +msgid "Settings saved." +msgstr "सेटिंग सहेजी गई।" + +msgid "WPVulnerability cron events have been repaired across the network." +msgstr "नेटवर्क में WPVulnerability cron इवेंट ठीक किए गए।" + +msgid "You do not have permission to access this page." +msgstr "इस पृष्ठ तक पहुँचने की आपको अनुमति नहीं है।" + +#, php-format +msgid "WordPress %1$s has a known vulnerability that may be affecting your installed version." +msgstr "WordPress %1$s में एक ज्ञात सुरक्षा खामी है जो आपके इंस्टॉल किए गए संस्करण को प्रभावित कर सकती है।" + +msgid "Actively exploited" +msgstr "सक्रिय रूप से शोषित" + +msgid "Public exploit" +msgstr "सार्वजनिक एक्सप्लॉइट" + +msgid "Automatable" +msgstr "स्वचालित" + +msgid "References:" +msgstr "संदर्भ:" + +msgid "Invalid component specified." +msgstr "अमान्य घटक निर्दिष्ट किया गया।" + +msgid "Version not detected for this component." +msgstr "इस घटक के लिए संस्करण का पता नहीं लगा।" + +msgid "API request successful." +msgstr "API अनुरोध सफल रहा।" + +#, php-format +msgid "API returned HTTP code %d." +msgstr "API ने HTTP कोड %d लौटाया।" + +msgid "WPVulnerability Logs" +msgstr "WPVulnerability लॉग" + +msgid "WPVulnerability Log" +msgstr "WPVulnerability लॉग" + +msgid "Low" +msgstr "कम" + +msgid "Medium" +msgstr "मध्यम" + +msgid "High" +msgstr "उच्च" + +msgid "Critical" +msgstr "गंभीर" + +msgid "WPVulnerability Shell Logs" +msgstr "WPVulnerability Shell लॉग" + +msgid "WPVulnerability Shell Log" +msgstr "WPVulnerability Shell लॉग" + +msgid "Every week" +msgstr "हर सप्ताह" + +msgid "Every day" +msgstr "हर दिन" + +msgid "Invalid request." +msgstr "अमान्य अनुरोध।" + +msgid "You have unsubscribed from WPVulnerability notifications." +msgstr "आपने WPVulnerability अधिसूचनाओं से सदस्यता रद्द कर दी है।" + +#, php-format +msgid "Learn more about the WordPress Vulnerability Database API at %2$s" +msgstr "WordPress Vulnerability Database API के बारे में %2$s पर और जानें" + +#, php-format +msgid "Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings." +msgstr "क्या आप ये अलर्ट प्राप्त करना बंद करना चाहते हैं? सदस्यता रद्द करें या WPVulnerability सेटिंग में ईमेल आवृत्ति को कभी नहीं में बदलें।" + +msgid "No vulnerabilities found" +msgstr "कोई सुरक्षा खामी नहीं मिली" + +msgid "This is likely a test. The site does not have vulnerabilities." +msgstr "यह संभवतः एक परीक्षण है। साइट में कोई सुरक्षा खामी नहीं है।" + +msgid "Core vulnerabilities" +msgstr "Core सुरक्षा खामियाँ" + +msgid "Plugins vulnerabilities" +msgstr "प्लगइन सुरक्षा खामियाँ" + +msgid "Themes vulnerabilities" +msgstr "थीम सुरक्षा खामियाँ" + +msgid "PHP vulnerabilities" +msgstr "PHP सुरक्षा खामियाँ" + +msgid "Apache HTTPD vulnerabilities" +msgstr "Apache HTTPD सुरक्षा खामियाँ" + +msgid "Nginx vulnerabilities" +msgstr "Nginx सुरक्षा खामियाँ" + +msgid "MariaDB vulnerabilities" +msgstr "MariaDB सुरक्षा खामियाँ" + +msgid "MySQL vulnerabilities" +msgstr "MySQL सुरक्षा खामियाँ" + +msgid "ImageMagick vulnerabilities" +msgstr "ImageMagick सुरक्षा खामियाँ" + +msgid "curl vulnerabilities" +msgstr "curl सुरक्षा खामियाँ" + +msgid "memcached vulnerabilities" +msgstr "memcached सुरक्षा खामियाँ" + +msgid "Redis vulnerabilities" +msgstr "Redis सुरक्षा खामियाँ" + +msgid "SQLite vulnerabilities" +msgstr "SQLite सुरक्षा खामियाँ" + +#, php-format +msgid "Vulnerability found: %s" +msgstr "सुरक्षा खामी मिली: %s" + +msgid "Vulnerability found" +msgstr "सुरक्षा खामी मिली" + +#, php-format +msgid "%1$s has a known vulnerability that may be affecting your installed version." +msgstr "%1$s में एक ज्ञात सुरक्षा खामी है जो आपके इंस्टॉल किए गए संस्करण को प्रभावित कर सकती है।" + +msgid "This plugin is closed. Please replace it with another." +msgstr "यह प्लगइन बंद है। कृपया इसे किसी अन्य से बदलें।" + +msgid "This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates." +msgstr "यह सुरक्षा खामी अनपैच्ड प्रतीत होती है। आने वाले प्लगइन अपडेट के लिए बने रहें।" + +msgid "It hasn't been updated in over a year." +msgstr "इसे एक वर्ष से अधिक समय से अपडेट नहीं किया गया है।" + +msgid "It may no longer be available (closed?)." +msgstr "यह अब उपलब्ध नहीं हो सकता (बंद?)।" + +msgid "Last updated on" +msgstr "अंतिम बार अपडेट किया गया" + +#, php-format +msgid "Vulnerabilities (%d)" +msgstr "सुरक्षा खामियाँ (%d)" + +#, php-format +msgid "%s running" +msgstr "%s चल रहा है" + +msgid "End of Life" +msgstr "जीवन का अंत" + +msgid "End of life:" +msgstr "जीवन का अंत:" + +msgid "Supported" +msgstr "समर्थित" + +msgid "Plugin" +msgstr "प्लगइन" + +msgid "Theme" +msgstr "थीम" + +#, php-format +msgid "End of life: %s" +msgstr "जीवन का अंत: %s" + +msgid "EOL" +msgstr "EOL" + +msgid "Network Settings" +msgstr "नेटवर्क सेटिंग" + +msgid "Vulnerabilities" +msgstr "सुरक्षा खामियाँ" + +msgid "Every 6 hours" +msgstr "हर 6 घंटे" + +msgid "Database updates" +msgstr "डेटाबेस अपडेट" + +msgid "Log cleanup" +msgstr "लॉग सफाई" + +msgid "Notifications are scheduled, but settings currently disable them. Please review the notifications tab." +msgstr "अधिसूचनाएँ अनुसूचित हैं, लेकिन सेटिंग वर्तमान में उन्हें अक्षम करती है। कृपया अधिसूचना टैब की समीक्षा करें।" + +msgid "This event should not be scheduled for this site." +msgstr "यह इवेंट इस साइट के लिए अनुसूचित नहीं होना चाहिए।" + +msgid "Not expected for this site." +msgstr "इस साइट के लिए अपेक्षित नहीं।" + +msgid "No instances found." +msgstr "कोई इंस्टेंस नहीं मिला।" + +msgid "Scheduled with an unexpected interval." +msgstr "अप्रत्याशित अंतराल के साथ अनुसूचित।" + +msgid "Multiple instances detected." +msgstr "एकाधिक इंस्टेंस पाए गए।" + +msgid "Scheduled as expected." +msgstr "अपेक्षा अनुसार अनुसूचित।" + +msgid "There aren't plugins vulnerabilities" +msgstr "प्लगइन में कोई सुरक्षा खामी नहीं है" + +msgid "Shows possible vulnerabilities that exist in installed plugins." +msgstr "इंस्टॉल किए गए प्लगइन में मौजूद संभावित सुरक्षा खामियाँ दिखाता है।" + +#, php-format +msgid "There is %d plugin with vulnerabilities" +msgid_plural "There are %d plugins with vulnerabilities" +msgstr[0] "%d प्लगइन में सुरक्षा खामियाँ हैं" +msgstr[1] "%d प्लगइन में सुरक्षा खामियाँ हैं" + +msgid "We've detected potential vulnerabilities in installed plugins. Please check them and keep them updated." +msgstr "हमने इंस्टॉल किए गए प्लगइन में संभावित सुरक्षा खामियाँ पाई हैं। कृपया उन्हें जाँचें और अपडेट रखें।" + +msgid "Update plugins" +msgstr "प्लगइन अपडेट करें" + +msgid "There aren't themes vulnerabilities" +msgstr "थीम में कोई सुरक्षा खामी नहीं है" + +msgid "Shows possible vulnerabilities that exist in installed themes." +msgstr "इंस्टॉल किए गए थीम में मौजूद संभावित सुरक्षा खामियाँ दिखाता है।" + +#, php-format +msgid "There is %d theme with vulnerabilities" +msgid_plural "There are %d themes with vulnerabilities" +msgstr[0] "%d थीम में सुरक्षा खामियाँ हैं" +msgstr[1] "%d थीम में सुरक्षा खामियाँ हैं" + +msgid "We've detected potential vulnerabilities in installed themes. Please check them and keep them updated." +msgstr "हमने इंस्टॉल किए गए थीम में संभावित सुरक्षा खामियाँ पाई हैं। कृपया उन्हें जाँचें और अपडेट रखें।" + +msgid "Update themes" +msgstr "थीम अपडेट करें" + +msgid "There aren't WordPress vulnerabilities" +msgstr "WordPress में कोई सुरक्षा खामी नहीं है" + +msgid "Shows possible vulnerabilities existing in the WordPress core." +msgstr "WordPress core में मौजूद संभावित सुरक्षा खामियाँ दिखाता है।" + +#, php-format +msgid "There is %d core vulnerability" +msgid_plural "There are %d core vulnerabilities" +msgstr[0] "%d core सुरक्षा खामी है" +msgstr[1] "%d core सुरक्षा खामियाँ हैं" + +msgid "We've detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated." +msgstr "हमने इस WordPress इंस्टॉलेशन में संभावित सुरक्षा खामियाँ पाई हैं। कृपया उन्हें जाँचें और अपनी इंस्टॉलेशन अपडेट रखें।" + +msgid "Update WordPress" +msgstr "WordPress अपडेट करें" + +msgid "Nginx" +msgstr "Nginx" + +msgid "Invalid software type" +msgstr "अमान्य सॉफ़्टवेयर प्रकार" + +msgid "Error" +msgstr "त्रुटि" + +msgid "The specified software type is not valid." +msgstr "निर्दिष्ट सॉफ़्टवेयर प्रकार वैध नहीं है।" + +#, php-format +msgid "There aren't %s vulnerabilities" +msgstr "%s में कोई सुरक्षा खामी नहीं है" + +#, php-format +msgid "Shows possible vulnerabilities existing in %s." +msgstr "%s में मौजूद संभावित सुरक्षा खामियाँ दिखाता है।" + +#, php-format +msgid "There is %1$d %2$s vulnerability" +msgid_plural "There are %1$d %2$s vulnerabilities" +msgstr[0] "%2$s में %1$d सुरक्षा खामी है" +msgstr[1] "%2$s में %1$d सुरक्षा खामियाँ हैं" + +#, php-format +msgid "We've detected potential vulnerabilities in %s. Please check them and keep your installation updated." +msgstr "हमने %s में संभावित सुरक्षा खामियाँ पाई हैं। कृपया उन्हें जाँचें और अपनी इंस्टॉलेशन अपडेट रखें।" + +msgid "How to update PHP" +msgstr "PHP कैसे अपडेट करें" + +msgid "WPVulnerability Core" +msgstr "WPVulnerability Core" + +msgid "WPVulnerability Themes" +msgstr "WPVulnerability Themes" + +msgid "WPVulnerability Plugins" +msgstr "WPVulnerability Plugins" + +msgid "WPVulnerability PHP" +msgstr "WPVulnerability PHP" + +msgid "WPVulnerability Apache HTTPD" +msgstr "WPVulnerability Apache HTTPD" + +msgid "WPVulnerability Nginx" +msgstr "WPVulnerability Nginx" + +msgid "WPVulnerability MariaDB" +msgstr "WPVulnerability MariaDB" + +msgid "WPVulnerability MySQL" +msgstr "WPVulnerability MySQL" + +msgid "WPVulnerability ImageMagick" +msgstr "WPVulnerability ImageMagick" + +msgid "WPVulnerability curl" +msgstr "WPVulnerability curl" + +msgid "WPVulnerability memcached" +msgstr "WPVulnerability memcached" + +msgid "WPVulnerability redis" +msgstr "WPVulnerability redis" + +msgid "WPVulnerability sqlite" +msgstr "WPVulnerability sqlite" + +msgid "This theme is closed. Please replace it with another." +msgstr "यह थीम बंद है। कृपया इसे किसी अन्य से बदलें।" + +msgid "This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates." +msgstr "यह सुरक्षा खामी अनपैच्ड प्रतीत होती है। आने वाले थीम अपडेट के लिए बने रहें।" + +msgid "This theme has known vulnerabilities that may be affecting your installed version." +msgstr "इस थीम में ज्ञात सुरक्षा खामियाँ हैं जो आपके इंस्टॉल किए गए संस्करण को प्रभावित कर सकती हैं।" diff --git a/languages/wpvulnerability-id.l10n.php b/languages/wpvulnerability-id.l10n.php new file mode 100644 index 0000000..1c045f2 --- /dev/null +++ b/languages/wpvulnerability-id.l10n.php @@ -0,0 +1,2 @@ +'wpvulnerability','plural-forms'=>'nplurals=1; plural=0;','language'=>'id','project-id-version'=>'WPVulnerability 5.0.0','pot-creation-date'=>'2026-05-27T16:32:22+00:00','po-revision-date'=>'2026-05-27 00:00+0000','x-generator'=>'AI Translation','messages'=>['WPVulnerability'=>'WPVulnerability','https://www.wpvulnerability.com/plugin/'=>'https://www.wpvulnerability.com/plugin/','Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API.'=>'Terima informasi tentang kemungkinan kerentanan pada WordPress Anda dari WordPress Vulnerability Database API.','ROBOTSTXT'=>'ROBOTSTXT','https://www.robotstxt.es/'=>'https://www.robotstxt.es/','This command requires a WordPress administrator. Run with --user=.'=>'Perintah ini memerlukan administrator WordPress. Jalankan dengan --user=.','No core vulnerabilities found.'=>'Tidak ditemukan kerentanan pada inti.','No plugin vulnerabilities found.'=>'Tidak ditemukan kerentanan pada plugin.','No theme vulnerabilities found.'=>'Tidak ditemukan kerentanan pada tema.','No %s vulnerabilities found.'=>'Tidak ditemukan kerentanan pada %s.','Data from source has been reloaded.'=>'Data dari sumber telah dimuat ulang.','You do not have permission to reload data.'=>'Anda tidak memiliki izin untuk memuat ulang data.','Test email has been sent.'=>'Email pengujian telah dikirim.','Test email has failed. Please, check your email settings.'=>'Pengiriman email pengujian gagal. Silakan periksa pengaturan email Anda.','You do not have permission to send test emails.'=>'Anda tidak memiliki izin untuk mengirim email pengujian.','WPVulnerability cron events have been repaired.'=>'Acara cron WPVulnerability telah diperbaiki.','You do not have permission to repair cron events.'=>'Anda tidak memiliki izin untuk memperbaiki acara cron.','All logs have been deleted.'=>'Semua log telah dihapus.','You do not have permission to delete logs.'=>'Anda tidak memiliki izin untuk menghapus log.','Uninstall preference saved.'=>'Preferensi penghapusan instalasi telah disimpan.','WPVulnerability has been reset to defaults and reloaded.'=>'WPVulnerability telah direset ke default dan dimuat ulang.','You do not have permission to reset WPVulnerability.'=>'Anda tidak memiliki izin untuk mereset WPVulnerability.','All caches have been cleared.'=>'Semua cache telah dibersihkan.','You do not have permission to clear caches.'=>'Anda tidak memiliki izin untuk membersihkan cache.','Plugin and theme signatures have been reset.'=>'Tanda tangan plugin dan tema telah direset.','You do not have permission to reset signatures.'=>'Anda tidak memiliki izin untuk mereset tanda tangan.','You do not have permission to export debug information.'=>'Anda tidak memiliki izin untuk mengekspor informasi debug.','Database update has been executed.'=>'Pembaruan basis data telah dijalankan.','You do not have permission to run database updates.'=>'Anda tidak memiliki izin untuk menjalankan pembaruan basis data.','Notification has been sent.'=>'Notifikasi telah dikirim.','Notification sending failed.'=>'Pengiriman notifikasi gagal.','You do not have permission to send notifications.'=>'Anda tidak memiliki izin untuk mengirim notifikasi.','Notifications'=>'Notifikasi','Analysis'=>'Analisis','Logs'=>'Log','Security'=>'Keamanan','Tools'=>'Alat','Debug'=>'Debug','About'=>'Tentang','Notification Settings'=>'Pengaturan Notifikasi','Configure how and when you want to receive vulnerability notifications.'=>'Atur bagaimana dan kapan Anda ingin menerima notifikasi kerentanan.','Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software.'=>'Tetap terinformasi tentang kerentanan keamanan pada instalasi WordPress, plugin, tema, dan perangkat lunak server Anda.','Cache Expiration Time'=>'Waktu Kedaluwarsa Cache','FORCED'=>'DIPAKSAKAN','How long to cache vulnerability data before refreshing from the API.'=>'Berapa lama menyimpan data kerentanan dalam cache sebelum memperbarui dari API.','%d hour'=>'%d jam','You can force the cache time via wp-config.php constant. Learn more →'=>'Anda dapat memaksa waktu cache melalui konstanta wp-config.php. Pelajari selengkapnya →','Notification Frequency'=>'Frekuensi Notifikasi','Choose how often you want to receive vulnerability notifications.'=>'Pilih seberapa sering Anda ingin menerima notifikasi kerentanan.','Never - Disable automatic notifications'=>'Tidak Pernah — Nonaktifkan notifikasi otomatis','Daily - Receive notifications every day'=>'Harian — Terima notifikasi setiap hari','Weekly - Receive notifications once a week'=>'Mingguan — Terima notifikasi sekali seminggu','Day:'=>'Hari:','Monday'=>'Senin','Tuesday'=>'Selasa','Wednesday'=>'Rabu','Thursday'=>'Kamis','Friday'=>'Jumat','Saturday'=>'Sabtu','Sunday'=>'Minggu','Time:'=>'Waktu:','(24-hour format, server timezone)'=>'(format 24 jam, zona waktu server)','Notification Channels'=>'Saluran Notifikasi','Select where you want to receive notifications.'=>'Pilih di mana Anda ingin menerima notifikasi.','Email'=>'Email','Email Addresses (separated by commas):'=>'Alamat Email (dipisahkan dengan koma):','Default:'=>'Default:','Slack'=>'Slack','Slack Webhook URL:'=>'URL Webhook Slack:','Learn how to create a Slack incoming webhook →'=>'Pelajari cara membuat incoming webhook Slack →','Microsoft Teams'=>'Microsoft Teams','Teams Webhook URL:'=>'URL Webhook Teams:','Learn how to create a Teams incoming webhook →'=>'Pelajari cara membuat incoming webhook Teams →','Discord'=>'Discord','Discord Webhook URL:'=>'URL Webhook Discord:','Learn how to create a Discord webhook →'=>'Pelajari cara membuat webhook Discord →','Telegram'=>'Telegram','Telegram Bot Token:'=>'Token Bot Telegram:','Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','Telegram Chat ID:'=>'ID Chat Telegram:','Learn how to create a Telegram bot and get Chat ID →'=>'Pelajari cara membuat bot Telegram dan mendapatkan ID Chat →','Save Notification Settings'=>'Simpan Pengaturan Notifikasi','WordPress Components'=>'Komponen WordPress','WordPress Core'=>'Inti WordPress','Plugins'=>'Plugin','Themes'=>'Tema','Software & Languages'=>'Perangkat Lunak & Bahasa','PHP'=>'PHP','Web Servers'=>'Server Web','Apache HTTPD'=>'Apache HTTPD','nginx'=>'nginx','Databases'=>'Basis Data','MariaDB'=>'MariaDB','MySQL'=>'MySQL','SQLite'=>'SQLite','Additional Tools'=>'Alat Tambahan','ImageMagick'=>'ImageMagick','curl'=>'curl','memcached'=>'memcached','Redis'=>'Redis','Component Analysis Settings'=>'Pengaturan Analisis Komponen','Enable or disable vulnerability analysis for specific components.'=>'Aktifkan atau nonaktifkan analisis kerentanan untuk komponen tertentu.','Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red.'=>'Centang komponen yang ingin Anda SEMBUNYIKAN dari pemindaian dan laporan kerentanan. Komponen yang tidak dicentang akan dianalisis secara aktif. Komponen dengan analisis aktif ditampilkan dalam warna hijau, komponen tersembunyi dalam warna merah.','Hidden (forced by constant)'=>'Tersembunyi (dipaksakan oleh konstanta)','🔴 Analysis disabled'=>'🔴 Analisis dinonaktifkan','🟢 Analysis active'=>'🟢 Analisis aktif','Tip:'=>'Tips:','You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →'=>'Anda dapat menonaktifkan komponen secara paksa melalui konstanta wp-config.php. Pelajari lebih lanjut tentang menyembunyikan pemeriksaan secara paksa →','Save Analysis Settings'=>'Simpan Pengaturan Analisis','« Previous'=>'« Sebelumnya','Next »'=>'Berikutnya »','Log entry not found or has been removed.'=>'Entri log tidak ditemukan atau telah dihapus.','Unable to load the requested log entry.'=>'Tidak dapat memuat entri log yang diminta.','Log Configuration'=>'Konfigurasi Log','Total Logs'=>'Total Log','Retention Period'=>'Periode Retensi','Disabled'=>'Dinonaktifkan','%d day'=>'%d hari','Log Retention Period'=>'Periode Retensi Log','None (Disabled)'=>'Tidak Ada (Dinonaktifkan)','This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant.'=>'Nilai ini diberlakukan oleh konstanta WPVULNERABILITY_LOG_RETENTION_DAYS.','Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted.'=>'Pilih berapa lama WPVulnerability harus menyimpan log respons API. Log yang lebih lama akan dihapus secara otomatis.','Save Configuration'=>'Simpan Konfigurasi','Log retention is currently disabled.'=>'Retensi log saat ini dinonaktifkan.','API responses are not being saved.'=>'Respons API tidak sedang disimpan.','Log Details'=>'Detail Log','Date'=>'Tanggal','API Endpoint'=>'Endpoint API','API Response'=>'Respons API','Back to Logs'=>'Kembali ke Log','No logs available'=>'Tidak ada log yang tersedia','API response logs will appear here once the vulnerability scanner runs.'=>'Log respons API akan muncul di sini setelah pemindai kerentanan berjalan.','API Response Logs'=>'Log Respons API','Show:'=>'Tampilkan:','Apply'=>'Terapkan','Showing %1$s–%2$s of %3$s'=>'Menampilkan %1$s–%2$s dari %3$s','Actions'=>'Tindakan','View'=>'Lihat','Danger Zone'=>'Zona Berbahaya','Permanently delete all API response logs. This action cannot be undone.'=>'Hapus semua log respons API secara permanen. Tindakan ini tidak dapat dibatalkan.','Are you sure you want to delete all logs? This action cannot be undone.'=>'Apakah Anda yakin ingin menghapus semua log? Tindakan ini tidak dapat dibatalkan.','Delete All Logs'=>'Hapus Semua Log','Reload Data from API'=>'Muat Ulang Data dari API','Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information.'=>'Muat ulang semua informasi Inti, Plugin, Tema, dan komponen lainnya langsung dari API untuk mendapatkan data terbaru. Ini akan membersihkan cache dan mengambil informasi kerentanan terbaru.','Reload Data'=>'Muat Ulang Data','Test Email Notifications'=>'Uji Notifikasi Email','Send a test email notification with current vulnerability data to verify your email configuration is working correctly.'=>'Kirim notifikasi email pengujian dengan data kerentanan saat ini untuk memverifikasi bahwa konfigurasi email Anda berfungsi dengan benar.','From address (configured via constant):'=>'Alamat pengirim (dikonfigurasi melalui konstanta):','From address (default):'=>'Alamat pengirim (default):','Learn how to customize the email sender address →'=>'Pelajari cara menyesuaikan alamat pengirim email →','Send Test Email'=>'Kirim Email Pengujian','WP-Cron Status'=>'Status WP-Cron','View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly.'=>'Lihat dan kelola acara terjadwal WP-Cron. Bandingkan jadwal yang diharapkan dengan pekerjaan cron aktual untuk memastikan tugas otomatis berjalan dengan benar.','No cron data available.'=>'Tidak ada data cron yang tersedia.','Hook'=>'Hook','Expected'=>'Diharapkan','Found'=>'Ditemukan','Next Run'=>'Eksekusi Berikutnya','Status'=>'Status','Not expected'=>'Tidak diharapkan','None'=>'Tidak Ada','OK'=>'OK','⚠️ Unexpected WPVulnerability Events'=>'⚠️ Acara WPVulnerability yang Tidak Terduga','No interval'=>'Tidak ada interval','Next:'=>'Berikutnya:','Repair Cron Events'=>'Perbaiki Acara Cron','Uninstall Data'=>'Data Penghapusan Instalasi','By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall.'=>'Secara default, semua data plugin disimpan saat WPVulnerability dihapus. Aktifkan opsi di bawah ini hanya jika Anda ingin semua opsi, log, dan data cache dihapus secara permanen saat dihapus instalasinya.','Delete all plugin data on uninstall'=>'Hapus semua data plugin saat dihapus instalasinya','Default: unchecked (data preserved). Check only if you want a clean removal.'=>'Default: tidak dicentang (data disimpan). Centang hanya jika Anda menginginkan penghapusan yang bersih.','Save preference'=>'Simpan preferensi','Reset WPVulnerability'=>'Reset WPVulnerability','Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API.'=>'Hapus semua pengaturan WPVulnerability, data cache, log, dan acara terjadwal, lalu kembalikan ke default dan muat ulang data dari API.','This action cannot be undone.'=>'Tindakan ini tidak dapat dibatalkan.','Are you sure you want to reset all WPVulnerability data? This action cannot be undone.'=>'Apakah Anda yakin ingin mereset semua data WPVulnerability? Tindakan ini tidak dapat dibatalkan.','Reset Plugin'=>'Reset Plugin','Vulnerability Database Statistics'=>'Statistik Basis Data Kerentanan','%s vulnerability'=>'%s kerentanan','(%s product)'=>'(%s produk)','No data'=>'Tidak ada data','Database last updated: %s'=>'Basis data terakhir diperbarui: %s','Intelligence Sources'=>'Sumber Intelijen','Number of vulnerabilities contributed by each intelligence source.'=>'Jumlah kerentanan yang dikontribusikan oleh setiap sumber intelijen.','Source'=>'Sumber','Core'=>'Inti','Sponsors'=>'Sponsor','No sponsor data available.'=>'Tidak ada data sponsor yang tersedia.','Contributors'=>'Kontributor','No contributor data available.'=>'Tidak ada data kontributor yang tersedia.','You do not have sufficient permissions to access this page.'=>'Anda tidak memiliki izin yang cukup untuk mengakses halaman ini.','WPVulnerability settings'=>'Pengaturan WPVulnerability','Configure and save these settings to receive notifications.'=>'Konfigurasikan dan simpan pengaturan ini untuk menerima notifikasi.','Configure and save these settings to hide vulnerabilities.'=>'Konfigurasikan dan simpan pengaturan ini untuk menyembunyikan kerentanan.','Default administrator email'=>'Email administrator default','Read more if you want to force the cache time.'=>'Baca selengkapnya jika Anda ingin memaksa waktu cache.','Never'=>'Tidak Pernah','Daily'=>'Harian','Weekly'=>'Mingguan','Day'=>'Hari','Hour'=>'Jam','Minute'=>'Menit','Read more about how to force the deactivation of an item.'=>'Baca selengkapnya tentang cara memaksa penonaktifan suatu item.','Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com'=>'URL webhook Slack tidak valid. Harus berupa URL HTTPS yang valid dari hooks.slack.com.','Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com'=>'URL webhook Microsoft Teams tidak valid. Harus berupa URL HTTPS yang valid dari office.com, office365.com, atau api.hooks.microsoft.com.','Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com'=>'URL webhook Discord tidak valid. Harus berupa URL HTTPS yang valid dari discord.com atau discordapp.com.','Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Format token bot Telegram tidak valid. Harus seperti: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','All Clear'=>'Semua Aman','%d Critical Issue Found'=>'Ditemukan %d Masalah Kritis','%d Issue Found'=>'Ditemukan %d Masalah','Never checked'=>'Belum pernah diperiksa','%d minute ago'=>'%d menit yang lalu','%d hour ago'=>'%d jam yang lalu','Last checked: %s'=>'Terakhir diperiksa: %s','Refresh Now'=>'Perbarui Sekarang','No vulnerabilities detected'=>'Tidak ada kerentanan yang terdeteksi','Your site is up to date and secure'=>'Situs Anda sudah diperbarui dan aman','Server Software'=>'Perangkat Lunak Server','Site Health'=>'Kesehatan Situs','Settings'=>'Pengaturan','WPVulnerability Status'=>'Status WPVulnerability','Receive vulnerability notifications'=>'Terima notifikasi kerentanan','Cache expiration time'=>'Waktu kedaluwarsa cache','How often you want to receive notifications'=>'Seberapa sering Anda ingin menerima notifikasi','Where do you want to receive notifications?'=>'Di mana Anda ingin menerima notifikasi?','Email addresses to notify (separated by commas)'=>'Alamat email untuk notifikasi (dipisahkan dengan koma)','Slack webhook URL'=>'URL webhook Slack','Teams webhook URL'=>'URL webhook Teams','Vulnerabilities to hide'=>'Kerentanan yang akan disembunyikan','What do you want to hide?'=>'Apa yang ingin Anda sembunyikan?','Standard (Hybrid Detection)'=>'Standar (Deteksi Hibrida)','Strict (Extensions Only)'=>'Ketat (Hanya Ekstensi)','Disabled (No Detection)'=>'Dinonaktifkan (Tanpa Deteksi)','Security Status'=>'Status Keamanan','Security Mode'=>'Mode Keamanan','Shell Execution'=>'Eksekusi Shell','Enabled'=>'Diaktifkan','Audit Logging'=>'Pencatatan Audit','Enabled (%d days)'=>'Diaktifkan (%d hari)','Total Log Entries'=>'Total Entri Log','Last Shell Execution'=>'Eksekusi Shell Terakhir','%s ago'=>'%s yang lalu','Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.'=>'Konfigurasikan pengaturan keamanan melalui konstanta wp-config.php: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.','See security configuration documentation for details.'=>'Lihat dokumentasi konfigurasi keamanan untuk detailnya.','Memcached'=>'Memcached','Imagick Extension'=>'Ekstensi Imagick','Redis Extension'=>'Ekstensi Redis','Memcached Extension'=>'Ekstensi Memcached','Memcache Extension'=>'Ekstensi Memcache','SQLite3 Extension'=>'Ekstensi SQLite3','PDO SQLite'=>'PDO SQLite','Shell Command'=>'Perintah Shell','Binary Check'=>'Pemeriksaan Biner','Not Detected'=>'Tidak Terdeteksi','Software Detection Methods'=>'Metode Deteksi Perangkat Lunak','Shows which detection method was used for each software component and the reliability score.'=>'Menampilkan metode deteksi yang digunakan untuk setiap komponen perangkat lunak dan skor keandalannya.','Component'=>'Komponen','Version'=>'Versi','Detection Method'=>'Metode Deteksi','Reliability'=>'Keandalan','Not detected'=>'Tidak terdeteksi','Shell Execution Audit Logs'=>'Log Audit Eksekusi Shell','Complete audit trail of shell command executions for security monitoring.'=>'Jejak audit lengkap eksekusi perintah shell untuk pemantauan keamanan.','No shell execution logs found.'=>'Tidak ditemukan log eksekusi shell.','Logs will appear here when shell commands are executed for software detection.'=>'Log akan muncul di sini ketika perintah shell dijalankan untuk deteksi perangkat lunak.','Time'=>'Waktu','Command'=>'Perintah','User'=>'Pengguna','Output'=>'Output','Showing the %d most recent log entries.'=>'Menampilkan %d entri log terbaru.','Invalid nonce.'=>'Nonce tidak valid.','Insufficient permissions.'=>'Izin tidak mencukupi.','No component specified.'=>'Tidak ada komponen yang ditentukan.','Debug Information'=>'Informasi Debug','This tab is only visible when WP_DEBUG is enabled. Use with caution.'=>'Tab ini hanya terlihat ketika WP_DEBUG diaktifkan. Gunakan dengan hati-hati.','System Information'=>'Informasi Sistem','WordPress Version'=>'Versi WordPress','Multisite'=>'Multisite','Yes'=>'Ya','No'=>'Tidak','Language'=>'Bahasa','PHP Version'=>'Versi PHP','PHP Extensions'=>'Ekstensi PHP','PHP Memory Limit'=>'Batas Memori PHP','Database'=>'Basis Data','Web Server'=>'Server Web','WP_DEBUG'=>'WP_DEBUG','WP_DEBUG_LOG'=>'WP_DEBUG_LOG','Path:'=>'Jalur:','Size: %s'=>'Ukuran: %s','View Log File'=>'Lihat File Log','Log file is not web-accessible (outside wp-content)'=>'File log tidak dapat diakses melalui web (berada di luar wp-content)','Log file does not exist yet'=>'File log belum ada','Plugin Version'=>'Versi Plugin','Component Detection'=>'Deteksi Komponen','Version Detected'=>'Versi Terdeteksi','Analyzed'=>'Dianalisis','Cache Status'=>'Status Cache','Configuration Summary'=>'Ringkasan Konfigurasi','Cache Duration'=>'Durasi Cache','Log Retention'=>'Retensi Log','Components Analyzed'=>'Komponen yang Dianalisis','Notification Email'=>'Email Notifikasi','Slack Webhook'=>'Webhook Slack','Configured & Enabled'=>'Dikonfigurasi & Diaktifkan','Configured (Disabled)'=>'Dikonfigurasi (Dinonaktifkan)','Not configured'=>'Belum dikonfigurasi','Teams Webhook'=>'Webhook Teams','Discord Webhook'=>'Webhook Discord','Telegram Bot'=>'Bot Telegram','Cron Status'=>'Status Cron','Update Database'=>'Perbarui Basis Data','Next run: %s'=>'Eksekusi berikutnya: %s','Not scheduled'=>'Belum terjadwal','Send Notification'=>'Kirim Notifikasi','Run Update Now'=>'Jalankan Pembaruan Sekarang','Run Notification Now'=>'Jalankan Notifikasi Sekarang','You do not have permission to run these actions.'=>'Anda tidak memiliki izin untuk menjalankan tindakan ini.','API Testing'=>'Pengujian API','Test API connectivity for each component. Click a button to send a test request.'=>'Uji konektivitas API untuk setiap komponen. Klik tombol untuk mengirim permintaan pengujian.','Test %s'=>'Uji %s','Testing...'=>'Menguji...','HTTP Code:'=>'Kode HTTP:','Response Time:'=>'Waktu Respons:','Response Preview'=>'Pratinjau Respons','Test'=>'Uji','Error:'=>'Kesalahan:','AJAX request failed.'=>'Permintaan AJAX gagal.','You do not have permission to test API connectivity.'=>'Anda tidak memiliki izin untuk menguji konektivitas API.','Database Options Viewer'=>'Penampil Opsi Basis Data','View the raw data stored in WordPress options.'=>'Lihat data mentah yang tersimpan di opsi WordPress.','Select an option...'=>'Pilih opsi...','Option not found or empty.'=>'Opsi tidak ditemukan atau kosong.','Quick Actions'=>'Tindakan Cepat','Perform debugging actions. Use with caution.'=>'Lakukan tindakan debug. Gunakan dengan hati-hati.','Are you sure you want to clear all caches?'=>'Apakah Anda yakin ingin membersihkan semua cache?','Clear All Caches'=>'Bersihkan Semua Cache','Are you sure you want to reset signatures?'=>'Apakah Anda yakin ingin mereset tanda tangan?','Reset Signatures'=>'Reset Tanda Tangan','Export Debug Info'=>'Ekspor Informasi Debug','You do not have permission to perform these actions.'=>'Anda tidak memiliki izin untuk melakukan tindakan ini.','Settings saved.'=>'Pengaturan disimpan.','WPVulnerability cron events have been repaired across the network.'=>'Acara cron WPVulnerability telah diperbaiki di seluruh jaringan.','You do not have permission to access this page.'=>'Anda tidak memiliki izin untuk mengakses halaman ini.','WordPress %1$s has a known vulnerability that may be affecting your installed version.'=>'WordPress %1$s memiliki kerentanan yang diketahui yang mungkin memengaruhi versi yang Anda instal.','Actively exploited'=>'Sedang dieksploitasi secara aktif','Public exploit'=>'Eksploitasi publik','Automatable'=>'Dapat diotomatisasi','References:'=>'Referensi:','Invalid component specified.'=>'Komponen yang ditentukan tidak valid.','Version not detected for this component.'=>'Versi tidak terdeteksi untuk komponen ini.','API request successful.'=>'Permintaan API berhasil.','API returned HTTP code %d.'=>'API mengembalikan kode HTTP %d.','WPVulnerability Logs'=>'Log WPVulnerability','WPVulnerability Log'=>'Log WPVulnerability','Low'=>'Rendah','Medium'=>'Sedang','High'=>'Tinggi','Critical'=>'Kritis','WPVulnerability Shell Logs'=>'Log Shell WPVulnerability','WPVulnerability Shell Log'=>'Log Shell WPVulnerability','Every week'=>'Setiap minggu','Every day'=>'Setiap hari','Invalid request.'=>'Permintaan tidak valid.','You have unsubscribed from WPVulnerability notifications.'=>'Anda telah berhenti berlangganan notifikasi WPVulnerability.','Learn more about the WordPress Vulnerability Database API at %2$s'=>'Pelajari lebih lanjut tentang WordPress Vulnerability Database API di %2$s','Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings.'=>'Ingin berhenti menerima pemberitahuan ini? Berhenti berlangganan atau ubah frekuensi email menjadi Tidak Pernah di pengaturan WPVulnerability.','No vulnerabilities found'=>'Tidak ditemukan kerentanan','This is likely a test. The site does not have vulnerabilities.'=>'Ini kemungkinan adalah pengujian. Situs ini tidak memiliki kerentanan.','Core vulnerabilities'=>'Kerentanan inti','Plugins vulnerabilities'=>'Kerentanan plugin','Themes vulnerabilities'=>'Kerentanan tema','PHP vulnerabilities'=>'Kerentanan PHP','Apache HTTPD vulnerabilities'=>'Kerentanan Apache HTTPD','Nginx vulnerabilities'=>'Kerentanan nginx','MariaDB vulnerabilities'=>'Kerentanan MariaDB','MySQL vulnerabilities'=>'Kerentanan MySQL','ImageMagick vulnerabilities'=>'Kerentanan ImageMagick','curl vulnerabilities'=>'Kerentanan curl','memcached vulnerabilities'=>'Kerentanan memcached','Redis vulnerabilities'=>'Kerentanan Redis','SQLite vulnerabilities'=>'Kerentanan SQLite','Vulnerability found: %s'=>'Kerentanan ditemukan: %s','Vulnerability found'=>'Kerentanan ditemukan','%1$s has a known vulnerability that may be affecting your installed version.'=>'%1$s memiliki kerentanan yang diketahui yang mungkin memengaruhi versi yang Anda instal.','This plugin is closed. Please replace it with another.'=>'Plugin ini telah ditutup. Silakan ganti dengan plugin lain.','This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates.'=>'Kerentanan ini tampaknya belum dipatch. Pantau terus pembaruan plugin yang akan datang.','It hasn\'t been updated in over a year.'=>'Plugin ini belum diperbarui selama lebih dari satu tahun.','It may no longer be available (closed?).'=>'Plugin ini mungkin tidak lagi tersedia (ditutup?).','Last updated on'=>'Terakhir diperbarui pada','Vulnerabilities (%d)'=>'Kerentanan (%d)','%s running'=>'%s berjalan','End of Life'=>'Akhir Masa Dukungan','End of life:'=>'Akhir masa dukungan:','Supported'=>'Didukung','Plugin'=>'Plugin','Theme'=>'Tema','End of life: %s'=>'Akhir masa dukungan: %s','EOL'=>'EOL','Network Settings'=>'Pengaturan Jaringan','Vulnerabilities'=>'Kerentanan','Every 6 hours'=>'Setiap 6 jam','Database updates'=>'Pembaruan basis data','Log cleanup'=>'Pembersihan log','Notifications are scheduled, but settings currently disable them. Please review the notifications tab.'=>'Notifikasi telah terjadwal, tetapi pengaturan saat ini menonaktifkannya. Silakan tinjau tab notifikasi.','This event should not be scheduled for this site.'=>'Acara ini tidak seharusnya dijadwalkan untuk situs ini.','Not expected for this site.'=>'Tidak diharapkan untuk situs ini.','No instances found.'=>'Tidak ditemukan instansi.','Scheduled with an unexpected interval.'=>'Dijadwalkan dengan interval yang tidak terduga.','Multiple instances detected.'=>'Beberapa instansi terdeteksi.','Scheduled as expected.'=>'Dijadwalkan sesuai yang diharapkan.','There aren\'t plugins vulnerabilities'=>'Tidak ada kerentanan pada plugin','Shows possible vulnerabilities that exist in installed plugins.'=>'Menampilkan kemungkinan kerentanan yang ada pada plugin yang diinstal.','There is %d plugin with vulnerabilities'=>'Terdapat %d plugin dengan kerentanan','We\'ve detected potential vulnerabilities in installed plugins. Please check them and keep them updated.'=>'Kami telah mendeteksi potensi kerentanan pada plugin yang diinstal. Silakan periksa dan perbarui ke versi terbaru.','Update plugins'=>'Perbarui plugin','There aren\'t themes vulnerabilities'=>'Tidak ada kerentanan pada tema','Shows possible vulnerabilities that exist in installed themes.'=>'Menampilkan kemungkinan kerentanan yang ada pada tema yang diinstal.','There is %d theme with vulnerabilities'=>'Terdapat %d tema dengan kerentanan','We\'ve detected potential vulnerabilities in installed themes. Please check them and keep them updated.'=>'Kami telah mendeteksi potensi kerentanan pada tema yang diinstal. Silakan periksa dan perbarui ke versi terbaru.','Update themes'=>'Perbarui tema','There aren\'t WordPress vulnerabilities'=>'Tidak ada kerentanan pada WordPress','Shows possible vulnerabilities existing in the WordPress core.'=>'Menampilkan kemungkinan kerentanan yang ada pada inti WordPress.','There is %d core vulnerability'=>'Terdapat %d kerentanan inti','We\'ve detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated.'=>'Kami telah mendeteksi potensi kerentanan pada instalasi WordPress ini. Silakan periksa dan perbarui instalasi Anda.','Update WordPress'=>'Perbarui WordPress','Nginx'=>'Nginx','Invalid software type'=>'Jenis perangkat lunak tidak valid','Error'=>'Kesalahan','The specified software type is not valid.'=>'Jenis perangkat lunak yang ditentukan tidak valid.','There aren\'t %s vulnerabilities'=>'Tidak ada kerentanan pada %s','Shows possible vulnerabilities existing in %s.'=>'Menampilkan kemungkinan kerentanan yang ada pada %s.','There is %1$d %2$s vulnerability'=>'Terdapat %1$d kerentanan %2$s','We\'ve detected potential vulnerabilities in %s. Please check them and keep your installation updated.'=>'Kami telah mendeteksi potensi kerentanan pada %s. Silakan periksa dan perbarui instalasi Anda.','How to update PHP'=>'Cara memperbarui PHP','WPVulnerability Core'=>'WPVulnerability Inti','WPVulnerability Themes'=>'WPVulnerability Tema','WPVulnerability Plugins'=>'WPVulnerability Plugin','WPVulnerability PHP'=>'WPVulnerability PHP','WPVulnerability Apache HTTPD'=>'WPVulnerability Apache HTTPD','WPVulnerability Nginx'=>'WPVulnerability Nginx','WPVulnerability MariaDB'=>'WPVulnerability MariaDB','WPVulnerability MySQL'=>'WPVulnerability MySQL','WPVulnerability ImageMagick'=>'WPVulnerability ImageMagick','WPVulnerability curl'=>'WPVulnerability curl','WPVulnerability memcached'=>'WPVulnerability memcached','WPVulnerability redis'=>'WPVulnerability redis','WPVulnerability sqlite'=>'WPVulnerability sqlite','This theme is closed. Please replace it with another.'=>'Tema ini telah ditutup. Silakan ganti dengan tema lain.','This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates.'=>'Kerentanan ini tampaknya belum dipatch. Pantau terus pembaruan tema yang akan datang.','This theme has known vulnerabilities that may be affecting your installed version.'=>'Tema ini memiliki kerentanan yang diketahui yang mungkin memengaruhi versi yang Anda instal.']]; \ No newline at end of file diff --git a/languages/wpvulnerability-id.mo b/languages/wpvulnerability-id.mo new file mode 100644 index 0000000000000000000000000000000000000000..bafd29b8bf8735371bbda173aba85cb1506df652 GIT binary patch literal 39004 zcmchg34mNho&TQ)S2*Op!ABsFKxT4qIs|gfBpGs&nGo*qX8O%cr+d1aJ~A0pKm`O9 zP!x1s1w|CW3taDA)b&{LSXt23T~}RY*$fM zcm;SQSON9v%fUUt`@k9CyTB8{4}r@64e)62hu{g|o~Hys0h|q%z*{~32E3YhJUa*u z1-}mN2mZ+8Z@`0y?>Q$3_63gwj{r{sSAvVcncxke>boD@1N;=Y7x*Z6F!)cP+Vvmc zKHx9FhESy)$M} zpLiFz4>$p;KQ93f0pINLVNmsa7VH844Llb-e4gvaM)0k~-w0|R7R`70F9g-DQSiB7 z6V&@jP~&wQxG(s6P~-D9kSPrw@ad0(qKj{V%KxkdZvJL~M-iV1YW^012ZCEb^`i!= zzH7kefY%Rtq0Gk6eq8>s%i1yuQe2d)7>3qB7#cp+l}&IHwt`#{z6D5(7Z3W}bd z1Vt~u1@+ytPj~%17*zeIfU5U25RwiSfDBb|F{pXD8PxY*01pD605vX8ff~P`f-3iS zpvu|*47Yv`0YxuIgX;Hea0a*#RQt{YRo)74Pw--pt_52_mGc^({(4a3emAK8`~#?R zz71-8z7J|V_c+tx43EzPdr3bOgd~GYK-G66X!8o{`?vY@Pk@@Y$H7CvAA*;F!CBA* za49Hy{3>`Uc>LLJ{Y-)f5Wfr5_`e-I4EzwN@%$1v8~iz_ejj^|D}NTK{5_z?Z#Bpe z2A6?@;O(H=`xL15{u0!9KKljk`vXCx&jMBc0#N~lSL5b`he7+lp zcYtc|1EA*RGoaST7eUSQ*Fd%F8=&Ul`=I*&TTt`5=VCX`M}u>Thu}(ZEvWMD1oi!! z{QGx-8qa?LHSXW>?|%)doqH{DbZ{65sRhpmyTMDqDtI#}e)Vfm^Ls2zM&mdW)VM4J z)xK382R&Zpu?%W`ZU^5F-U@0QmoO-rhXGLiyb4r#SNr(OLG|MeK7K!_az5hI{}EJw zzX@tS{sRfdh#PbU5nP~W{1)VMqhD&Hr-8u%Ef z@m~UyngJyBE|v zd;w(YgWrHmS#Zt@7vBzEPW;25#{W==KYE3u|L1{f?*>rgI0UNx32;yF z4p86!6{vRH>(f6D)`@=>)OtE+mCJu2DE@IVsPczE)z|Xzmw~G9E^u$~ouKCXVNm1v zaZvA{0G|s!1?~lYAKU=`3{-u~VB$xCmw}?s7O3^|K5!2BF;M+|3RFLS0E!-d20kC$ z`vNz=v%!;yuLn;An;=saya8MSeha)1JbpEKz#4cQ_(>oCHn@Oz_Zm0;SAmF@;2u!r zd=1Gr-S*8lNY? zQ^0S42Y}C}v6`=gK+#zjsP%LnsQ2r@{lP0h)mH*lP7PGP?ci+i7XSYJpz?nhd?ol< zup7LPNqHW4Jt+ElH7I`acJKu75m58`?>_zKpz7b3LDhFhgW`{;g8F_XsCHit>bvbe z{Z*jKeJdz_@KKMCfy(!v{{3%2(ZxXws_6JMQ1iaR;}syRAZUW~zz>6}_rF0zbMQ2% z@6Tj%RL^=)^cI6E=UQ-Y@J?_)@NV!;;Jd&WTs4R;3ceQ{0T18AH{gpw&DYc5zTjRL zxpi^~DEd4OJQX|%RQ>D0)4(Fgf5DynqjvrX)c8GXv!jCp!RHX43BD9O8GI}F0I2@0 zzSx!XLQv)351tJ^0iFTQxWuI|1{V7l1Fg%<0VyQ1o>dsP_Lgcog^$D0=+@xDWV$eEQR%=>Bk+nCS0V@NlpX)c2Qz zL(f7UfOH}F>J^S&x~_EZ`$5t1m7vCT1UwKN2M-3X1vPK40W}YIgQDvP{rivj^e=)l zN&h-n0DlXXz%5%Gei57`e)d(aeGh{w_fb&g{xkSI@VlVO{~35B_y-Uc6dW13@`ph2 zqZ>iB`|Y6U>pkEJ;DCSy*p1V*;333s2SsOZ0}le<4}J;!3~1xWps4)2LB&7h-{UB`16lJ&BK00M}J3xnvdhaJ;5$e@6Yh@CE#r0D?#N2tF6=0Y%S?J@$cW$7=8x@G@|3Z~~+&!S(+A_rRNo z{~FZ1T~~7LdKeTvd=gYYzYMCrAAu_O7oghn+_K{fM}eyUI8g095j+dL09*mS1e^gr z3hKMBfSUjB`S{bI=J}v;w@&AP%6~ezA9y~vFSr`qAKVP;eGF>d)_nZsp!#tKxDWUl zQ0@9MxDfm*cr>_I#eF{$JcW1{xF@&?)OcPFJ_n4z^giqKB`8^TDS;_5ZMztA8%2e2YPi&j6_YmO#}v0jj(g`}l33 z`u94I9|7kO|0bw;*>js)hjYOLh_44FSFQxr-|e8**DFEM(fy#xdkoa~Klgalgj?r} zLD63UR6nl+Ro*S2+VwV2?f-y}KkD&cLD9nxK#kvi+g<&~g8FVAcqq68JPh0fs@xJN zes?3N`M(#``hO3o`8{mX*@c&aD*p;l^LHJn{5OG`_t$_L_d7w=cQ2^+{|%^dc?8sV zUji3^UjZ)!_qfKTZwB@KmEdV$$)~>_6rJ1+YCInTRopF^kvt%^}7L7eb<6&_wC><;M>8&!FkuaaajS1 zUM>XHpAnBOP~&m~sPTI3;NBk(K8N^xQ01NhUJjlMYTVucs-5ov zSAkywHC~6^==gL9K9~4_$BRLY#}%OHWgI*ad<7VS?*&!fW8iV%k3rGXem6P3F&mso ze65eyz>A3A37!r92wVZ4^m3;km%uf|?+4ZHUx3PY;muCJxdq%z{43xl@HB{I5AY=( zUk>g`{8k@-9jN}i5mZ0!0rvsl2P)r3!BfFcf}-yqg7d*WU*X2}Y*6FB8r1h!f|{2K zxHtGBQ1#ykYTjN6o(jInr+*F+bnr#5bmRUIsB-@n)Hr<+d_MSNQ1f-b zs~mlu2&$Y#pz^Ncny*daQ;FrJ|;F8xkTn%bIF9KEGWned007LM#;3?n-z#;IPpyqG! z9d7(Kf*QXFd^UJB_&Tr&eihv3wayRmZEzv+LwVT+t_0Q37I+r;5V!#RZy!JEPDiI3 zz%xj{8C(KB0-gi@9y}d9`z{wRdAtu)zHfnxz~f)<*3D(0`guL5_TC6;eD4I+zxRRr zfL{j>1-}c54u1*G1D^&(4|Ct(=wTK3EaFcQ9^^rNS^*xVME`pWxQTErL3JcQ&By!6 zcPZgmpZ_rbQgg79vRE*F20QT-Gmv0 z%|3mCXZ_wy_^~~?fBJzR5{607gPJqep z1H@w@1K{5h-b=Wf_+g-aUncwwVLjnTgiCxnkHH~4{{}plZ~h~(b z{^YF_MlHqt^IyREzP#l;AK{bAxa{&-%TOa3AsH z_x0ofoJIK0T>M7zZ6z!s+)nz<;Qs~x2CNe9SuOa-Fu$1(E!hiF89^qh~uK`a2{|`7Hycm2nA^E-2Ka@e8HMohO z-#<98e^>GEr+s`Y_#DCg!2iflfIlV$g_Tv4s2g}Ht9DKmkiKv z4dDdB8%aNlpkD+^hV5@L_sh0MiRX_I z^t)OA_~+wz{I25sZXj(Ycn(+~j1%-b6?}txG{5NI6aP5jLDC*4^zb~7px>Jazaq>e zelOvDgf|o3Nzm_u9xwK&w6h3*Aly#cKY>pW^m~~2d%&Xza|tK=Z(aaiMO?qv@jU6% zT?*e2|00o>`h+LJe<9pJxGR_U2;yHQyq@rngcJO`cY|*syoS(4csB3!yNBl@VIAS) z#Pe-F~wc zoYV-%qDB~nrAl?85^igiD{(yI9yR}RSHwn8`+DFd=|~UE<}_19B2r~ zs5!wjA&f?=X<`x?FIHMj8tq=W7`;?9g?g(}p+8D#>vm^CF>VAWm!qp&)pNrQ^>|yc z+G+%|`Kng07Fxs2Ir&I~*upcq)Y5RIS|5*^bHhelXOO~XaXh}JT8ZZbi=uF>9*>+i zb5>(!*o^9t$W(;OMfUx@=}0cUVClt7%hj#8(F{kTB2?cUEZxu__EieCYO&I^ z$i}!)t5zCuTO?dl9c@_3ARmj`^j%U`qcuDnHyR_YvMaCdiwMhn6;2e(()!^WUaJX8C z!&&OpP_;#OSm<=ca9doS4CC#!a<$lu3&GMtfhAt8u*L_g)iQZ#rdTC0^OgQfHn zz7#fE{$V1jG;Nuv{t!+Tx~47OaaPwH%d3Vi4hP4IjG&DLUsv2XhOjgiF^%3)mCPbU zq$)RWxTuYv7NTbKzbv*<9IZr5UEH82E#^WLHfn^`YF1%4(NH-KmT9%ZBzV^dmK7^e zeG;mUhfBe-$*>TQM6EJ>NlmPkTYL?NZAKxzt*P;FE7-{xv)9=HawL-m@vADM$7)R^ z!GxFLP1OnnQyj7Buvt(wE=OaokpMNb(riA&+o`!0!zn9qrOBuDc)Y3xP+$xGY+|N6 zSZ?&t+p0&Z%18UQ*NQG79E7?0)PW`g)bJ4~H_0OY8`vmVqhV#NSL$qJO=ZYd_4oFL zBlYTd8>LO!DuWtmcs;IF>&-@YxTyk-4wq(9P?Qy z(^0=I)&}go0`m(;>nxwS;aIUy&@#$C<()04<#78(Y~r9?WpQ`T6(zOGg|HOIwa_sg z$DeEpy2JJ50zAW3q?knHs7Jz^IY=g%;Yus1jx=eA7Fn{k>hW+)A3Fw$Wl|iW9AhC& zoGrkm(11-L^HLpWt_#AN)<0E?jGJ{BYgio#8)Gq<>9BIadE()g6(w?I0V@!tQ z)k?8htwZ=!kql1u6ecVs9Eh9ZyH>B8@35CzZB=La8}0+Kp5@ibNO9B?S~$?69rejH zmFChaF;Wo`L8*DJz@2`YjAiHOrQb^It7==9yFUwQIq3+d4c}Ib z!iiefux074jnx=@Ejw05kEm+Xnst2}moDpH(?590mfrq>rOVdzZ5deAw`R?jzKi>o z&z+KIpl|u6jmo@seQ)11uhUPrY+ltr*te#CU@$jIh45t0Te7)eiOojO5yL6W(SSDV z#UUuRu4%2as`;ml3?&&7Wt0baiRTKvP}yW)|At-RMo+d;yAkMj3fvT%PFXBY3B|KVF;)ILMnban@VA>+JATRs!(uP)h z1`)1}n`6~NkkDTG5YAp#4byCMlrAMa!Em!v#yjKTrj2WQg1+@@f<7B``!__Vq7x1D zrrC|S7BMUIacI)<6c%Fb$K?jVbzA9e>@tE*G8j7^uOG5TSLS!^^QDY-*zOuZ2F+T(rAr9 z8%5TeDQU%q(h+L?l_p}kI2y|)88C)O0TmW~u@L&zkeZ25eRsIF1;>+O6uL|r&H*h5 z*H9jgQbSceiB;TO22;Vj|Rv z-Ljt>-Q!6eZ8bX!cz5b^r8Q(Zx0N&qPfTsjX0-$lWA;(qvoR_cOY!c|c{1?y&FeS~ zx2h#Jl9v_Pk6F|kp;>~4bwavebFvl({Y{CW$|;&NTIfZUG*h&5hAW)Ju;OFqAgWZ2 z$a$d|-Uhoe<6!o186CB-cuse)22t9A4tanM229E8OO!j8=*5kRL(7#^3MHJ{o*v zGtZy3@T7*hRS;t#3P`3R21-E`(C3CdZ$x@j%u3OlG!|}%>qTUV5@i)vS~YtnFWLrc z7%G5UiTHDxh1o)k9v_Y1cnAws#Dp@(+Y#VQLNj}Zb*4AaXjf#8g`y0!+4Q_2#nkC| zYTF$91{Z*9rwl*T>N+v${$9_rO07rJxFSpoZPV19uOU%ZoU)z}R3VY4Dsv)O8`Xv^?I=|`waKpb&y=KEvq3hhwj%MA;aiBxdS8}@EB#a{UK`tSm5$s} zgU}U`m2TFpB!_g>v}CIoS~K|%+neEdLE7-SA+}m(C{JNE;>+XR;Rcu@2DLowF)nTt z_DZh94IJe|RN5LJg3Y6Wc1{d~?W{tlkj2sP7*v?kQk>b=9jsp+IIGOKWy*Bp@mh0| zx24+A!9TRi^7YlFzz+Q@gmuIf05e=vFDD)1skH~SWkcikfetY zP;KS3^WH`IlIXcPg@)lCs94>~JRW(UnDfV&!)_W^&d&Xm8_dHOILI35{C@H%xYdz4 z77;&*_ZB%BLk8|!x@{j#VK%{r)=(J(0xFi5IJmGSEi!Q;Z(P4@{ough#e>1d7?Ug~ zj^)xoQ#B>p=DWb8;WabYk)}Ap6V`+@a$n{hi*4UJQ6V3nvOC9AF|&QW22iV_z)C81 zOpx>%+t=tVo!7P9*Cg_=lD7f*vWAz0nN87296{yQn+8@1&l&AQQ}XW0bd zIt1s&xLovmb9$DAE43y6?38JUBuSK^EBDA;)|Xtpn9YM?ht5u}GWqpPL}=T^>7tMz zngCuYsRVgr#Qa<$kVH8XzwLIua`Szf$KR&YO^HZsByO@AT}Ser#ZjEqr*W)B#X7r) zRE}kcjZYF3=$q~%1E~w#CviBJe}LM76p zJD2Pn%yOY8Z;csB{F2RkQPYQTEoN;N^S-iyIL@iTyR}uBdKnWD=+<5 zn5?GQn=>JBE``KZ*cNk+LYI{DIRpvu;3H2AY9=+Yvz+p&#yh{IUddG*42U1fTh7YH z7~-_R>{XLPxW)25%w*L!Iq>1wGQD<&bGn@K%v%P*RI%x&$5!}UuhctNEo1F={``4} zWE`0QsE&0%J2mtg;d*uv=WwyeOt*nnO)f!vg9DQd6oRlnlNy0@1SO-`7IULG#Z$y5 z&I6M^gv+YUwg{Ws_+@&sG=C;QDGg<1-OOq@lt#w-ufV#B+q5@@1PzT+QUbwYj)GLe zYl0@+WPV^GQm08UHkA5etYBkPZ9L4^Vjx;Xh0bM_WlbbJ)J%Be_RWOWop;?#VY| zv#E2;ESQeb@)i1#rxfR#%-NkaT(!7|@Sxf5JgtF_{bv}TS_pQyVO!DJ5dMh7mfpT) zn^x*=Y)2vr(^+%YbT>y@zf(`!G4n{}-8pZUD{^;xgBHl~JZrI8U$)&u>!xhwu35iw z%f`OJzIB8B>(_1RU3$rYSe^W5n1$AW{3tUec3g>`R5g*UN-aY1$5{{}TsTjNHtGav zs|F!Sf$-Dej0t4%pQ21R%()_4^@cQYJ0s#ufWcx7R&EEF2CE!o4CP?$bJ`E-J_Sz3 znJ<01$scx+;|i-wL*;ok9ZEDOya$_-6D!Uz%c7a?o@jaAwvYj5TgE<~vcte9cn*+6 zt#ge4e?dJ+JPsZ+=TnlP1?4mvKkiMfxlAkt+LpF|Yyei^*l{r}an?EhdPt(n46MJ#e5Y$%{07Z)VxyFX`*(-!?yEooiCRoZGz6k+(zD%cM$V*X^km~YrQAF zvvB7G?@V=$=+0ER$EKt?&3sC_vt6cZUixNgBc~riaeb*EomCsPISOraWXZDtxkbEZ z??(%`;=K9YyII6E`CIk!ltNN14IzmK11j@7$7m_Txh8%%A9U zQ(s)oA#M?l6Hw{H7MOal*`JSOJ=M$tM0Is`Av7PAV-C12&Kdu<2eyf|JJcBF=uK?4 zJ8JGQUTAoPhSO=6_;@%ci?>-lUc?a-j;5V&8zhV7`Ir{3KG;!57~uF6d?qR5s#VQj z11rf38wpHG!u<5Qu2*#_nr(jgmz{hw#W!!0Bz~*it7WRuxwA^G2~PgtC*PgkWc8>F zjMG0)H6{i!2AUtAoz}S1(Hsh$hl36$k5Fq|s5lY2nL{2Ny>hU_vsZS;ne%8m5wcn8 zP@&r9^%1LH%o`aP9k1la&~ZeBUgmctZ@S_8C%x^E6)Q354wB~Tay&b&I+4_uz_Bjj z2qnjfrQG`S+?ns%&Z10z7_U3G9CynX=eEwx@6N8cZDO}Iq08_1W_kf0{vDqQ{8O~U zc@=B`x|mUu`m$3SVZMdTuM`+l=42JV^$O&om8^z9C#7^88^SjGgU!nlvi9(+}6&bK4WE0Vwe{6OyzSzS$_1K zD17EGB&0ex@~(Z9Z5%yge(XWHP))CL?D3g<%{RL>Oy*W;V*$_9Ec?RTFebvDu}PM- z)9Ev{lIc%Q?U;Iv%(=pmh*%6I9a!s_lXmWAwQ?$2#xF~uRWm&!(xGYupn2`$fc@68 z{nIHv`TIc4TBB#)yorg4?s}CgFpcK+W_R3}*Y;+jmKVE|I?FWA871?AOj${vrqoig z^9xVD@hw03$nBh&PpyT{p7|Z0pWgGj4`ll#o;MYOpWbuNy;-vD6S6g1uWrTd*41C= z@*LJqEa%LC$?(kX`Q7tpY*^p5k&R`YUhBf-!VSA{{=&1m=AYTM@a%B@{GR#qPn*wg zhRz*z4c4PdqpZWRJ-FBHT7^Ft&v`el$Ki=2qdU*kCHGi;9IMV&z;ZR&|!-d7B1Tbe)ss zQ^VK;>gua-We2v|6P`0vY|hwF=Dd2jYXwY&GustrhiK!x1?S4X=JCAw=gzpeYo%+v z^{PKiI?0Ieu9v$bMNXY`O!kbxgeH^Ajlfb7ol2*KFbvr)WdPVBEU|er)+)N_c&jqX zwg`D#0vVFlkrP+kFEuS6Eu(mB}c( z(pTa_pJVLd!ZTFy+>lFrXed#s$$cZ+)A^%s^lgaC(N_9|K2VP|YC|nlp2Xqb>u>fY zGBG=nwp;Rl`bwtU<#U@2f0??ROa9MNmoD-p{(Yp4Xc4Nz4<$g{jKCu0=`+kgZNeyH z7^y9+mEl&I6$JaP@DH2PS^+hd8Vzn+Y6;nDhde8#$*JZN-_c1e#6}Ts4Ch8vfmR>H z#9>_3RMPD}JH0#$b7asK@F?Ces^K;JkiLYt)UX2_G+MGlBngohN4VJsRSrfJh`C4p z@m3Tr#XaO7z4~g+FJK&UA9##{yZvi4DOj8ORw#}|wH5+a+u<}=3msnK9@|_XtJB5V z?iv|{`_|NGa+fI4ILc%so&z^@oF{Dnolr}ydEA!U;TM%rYnIPWbGf7E2ZvINT-?<_ z8xhfkAvBn>b#KQdGTEq8u6k)aol^WyRDo^g;X#AdRu)5k6>eSeKd4bxs<;aR+0){x zlVA*F**sG!Ta*K1$jmW1v|595f?)0UZtny&FTQ#gDXY4t- z;u>y5IMBCt*`{@u^sipJj)ue1lZDI(hz*q^Yy~hAJKf>xw!%D_aV}jFma}0Ryh6G_ zl78Eg%zexCK&Bss&#fc3WcjWcjn|4IRH`p?!P##LA;gq?5-V_8NE_e z3*minsYN-EmF4pH5L=aItE9QaUlz4&{ul-HpY9-;JuSRZo%Z2v!r0QO4YVg;qTDoh z^57^a#{f6dOS(cStCREPTCmx(n@b4ZjWmBCAgNZ1%C%Gz;pbD?^P{r+C3OxmjGJz< zkVhj%A8Ha|GkVr>Q|%lJ-udiwv?JGz5~{Su7IKot#-#earj84Wf5B^sy+zvK4*N5S zCv(Qz)*oYw?8?95ej*nvl9zKdZ^2I7)+6a>pkSK6(A? z&}2I49KlkAUQH9`USbqN?2^mqti6&n#(Ns>lx!k(;ow|0MDOLY>@pTh!|hH%x5gv5 zq)6X#FWjTCUid>)8pD}TD6%q!SnNgH-#~CE!dzj^Q=rf6q`c|a43Q48PR*8Y!XRxz z<+7gJKgs1qf5L-yxyy`wm?yddhjNr&T=X)ECFX7{rVok4PFbnDz?kSry1(doY^NlW z;$%!+i$|1cEQ)92U@#<9n{FD47UOw~q^OHK`IRH*4$&xq#srx>$w|1#xF6%ZH7ZO* zW!^ygEZj_elPlbMXzMMTOjn*wI7(mAEY}RH$_s3h)6)q^Zc#L)8+slEMdwJkJr>Sp zs*nLbYj)$&AG~2k#0zIbRNR@6vPc(AjFqrMxohXMxjhBP z*>b#oN8bfY6P<&BZXq4g^_Yprj3auENsZ>dMMvd`5$s;3X|j%Uk9G%A%We+UXhp1r zSBJf=5;m_CQcD|GTEVB$jcF2fZfJFE<}RP5Pn_FxEBh?7Zhgd-xqsGv`Dlw4k?54* zJ`{E~VLI1JZ~um+s|S{%iTn{)CR5WpxS+*MB{LziF2aj6XL+_ag;Qsfm;1z#FRxZ7 zriczwWtxX3G(rm%AymupSjPD0$WGy`yt`3(0d_z9E>%V{wZrH=H@8lgv9*TcWM(~5 zWjx_wEFDxdTQxHJcU{j2mU~M*ElK;I`OVlIpU)>VS5O!HOo?_A^BT+*r}NQ`VQ7XM zh@5z{`wd78juLK-D}mNir$fMfW!EUX!&Rn$(T5hxQ@P#6N@G}-#q|~D$Huz5Uumnu zC-@td99_s&)Nzx_H*@zY+{txItA7U-kpcKfA(gH#tT+q?wR6wf_u zxB;SW*Y6s)>vibg;w2*JeDMKyhP3Hp7Nr|cWMt}uXiL8UXBOKV5U2D)4(PUEXZcTq z4Ytj0CY7V`Oh`lYrfHW=>2^v1Ix5EESW9v_`!ey_xw^{`r#K;Q1-5`#m(5nQRnrB| zWf9(tD1eTgqU?6;S;eLwXgS-1Qxs%Unx4>}Z2AK`Hid{@x4XVjTN|y&{1q}o=x@qD zoD{%klYQj6g+{Yg*E+p0&$i^+Pi6E%Z)hp@2LNbZZXd1vY9}gNs_99rBkQDe=+UkW zuy~!#tb3d>jv%+7U7D6H$^r9TCV!ulKeL70u!X?;@o zc4ebOf_amufC}KQ~AXakktAhzJwygSJ{( zrWHDqkC=+iicYkJygizjvouI^%GmIAwm2lliltUlj*#RMXu7nrciD2IS3bY3t1L@T zu+BDEa$S)QyWO?aw>P7|Qf7u|9qRmq&!bqX44L@Im{>lK6SbLn<8)(2*?2~hbH_Ex z`blyb<+3E)UZqvqSx}N?N>7pr&X+~m?ux0KCVea7Z!368L7hY5)aInvtRpHZPS{^V zH`tRrNgFvsZ3pe!D@<}_C3V&abHH1bwK?}bX}TxjoiyIRS_=1YCGn)|sk!AYZA!k( z!E{M@@@!M;d?rS+v(i-abj8S~aH^>11Z+fN7{O%_7e@A!;mn#~0INnGl67`ELoOTt zXH9YmTvaV`c!)KdOU$jvTx#~n`gT@lN&2ZwPN%6-S0$}0^q&3fGbFK&iJ0%mm5{cT zKP&_1ugMpbGJ}+TqN`;KUQWhvfIoKN7RBhR4XRu3`|^@Fhl%2afPGXyW(ee z%1Y8y(_8|qQK(yfQX1hFtXaoeNhw8`8$MBX@(vjHftYK$;Zf5a))J)e`?;Jm6wM&J zyvm={i=%j6d4#Rti8NZ?7 zV>a4(y;LjMX=yo5mrg|bGV{=-@BCHQ+|2rvl$H4Ft}ykXW-AzQ{^%T|PTb(htDI(? zB;|5v?Mq%Jr{xh6y=a^Ai)r}LeK8T7aLr_o{54q~&yW&Dz)NCdn@mcfHHx5x3eC^V zp9VpXPh;K{o5t55-tvD4X18|T3)Pal>dKnUJ4{NxZaYDn>d)92k|ln>MSEbnmF0F{ z(Cp3GZfn_`lcGMy7qW#)ugpJ_8%&qbXP#3Hx9wE>Y}tqY;4X~IZ)N)tbZTBE6jBM8 zY&48-qYYky;(?x!_Lvz^EJhZGwVCxZ!s25fe9=QVp1D}V+JN9?+O9Fv)*m0uD8ppA z*T!KzeuJCOm|aAwS)iGQ?4q(|+?80UHD{?JG5mg5kL-mc(soPM7^U5lZOg$QoXgC) zWMSuX?0^@W>L%4NRkU~eBRX2lZaQGUo@~Mho!M?>rk~tBn%=OqPff61F7pkjAV-UJgjR3^tXdN1732-XR?~ zma`{xvAqA;QhM4vTP{;4<((XQ??$^rJnYEly>rQRTJEi?p>>pOZvn3=>QZgQ#Z~t= zXa}W7N*H89BGDRh!XjY_j!x1Y>}=kXd$dwa6B*YzdhR5WEjTea>gSHH?XxFbdyf7f zlJg)t4>kKzcCv|uIl!h0|1XcpP&%_ZKa`fzK9nxgU~-q1E3}B<WZrd21nKezs)ASjEq$_vrb>BEp#JFO*V) z639O}aV#o8Qofl@(cPs_HqRpL$ zFB6-_T)zq7nx{51M;T6Jhwp$EK2zFY8a*)pB7&@#=(vngY*sND1e@tAFp_uH}F2#uY; zu4sRz2C*WlPIk~Uxt2_3PN8#VV(th6tJbBZ3sdT%OY-a~jcYJWRg}Kr+yvfPAV%Xv zvrlkLf>}y56}LW9orGn9OI*vr{TrHVUW4U~0Xy)*UtTJ6G_rl)9%{0CvfZc>_IJ`` zusA-DEQ8cpmMqE`UbZzNpWW18wduO7YZ1fGNp$lJHL+Q^dF~JK=`hw-S$4_N_R4h9 zKBi@yNrR=>gwa)hTnID5PU58lnkT|MJ=!hV9DU}TcXFwnUXO3 zE?;Eo`J6V<>2jtqC8HR0TE89f_EVvqFZ~vh614PHCkjVDO!t}T?8ftmdO@33e;h3Er9S3;bqENByb#Y`Ujk3V1i-DUlkSq4 zGQ@HYbkcTulJt+h%$gowXxkDu?!v5_JKPCX$x3`Mc0KBuiHn?5d{H~; zp0QUuzqczZ!MseVGLcsda{cR6PB|B7P66w6qs5^bcap@}Ly{?4aPFpWrh)5^x|iFo z^8Rlx`R2;bv@Z#k?Sa4F>omj;igXglX)-d&Fle~X>#zCh9vHpJamnniue~!bMDYIs DB*{`B literal 0 HcmV?d00001 diff --git a/languages/wpvulnerability-id.po b/languages/wpvulnerability-id.po new file mode 100644 index 0000000..4ac0939 --- /dev/null +++ b/languages/wpvulnerability-id.po @@ -0,0 +1,2184 @@ +# Copyright (C) 2026 ROBOTSTXT +msgid "" +msgstr "" +"Project-Id-Version: WPVulnerability 5.0.0\n" +"POT-Creation-Date: 2026-05-27T16:32:22+00:00\n" +"PO-Revision-Date: 2026-05-27 00:00+0000\n" +"Last-Translator: Automatically generated\n" +"Language-Team: Indonesian \n" +"Language: id\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: AI Translation\n" +"X-Domain: wpvulnerability\n" + +#. Plugin Name of the plugin +#: wpvulnerability.php wpvulnerability-admin.php:1782 +#: wpvulnerability-admin.php:1783 wpvulnerability-adminms.php:1945 +#: wpvulnerability-adminms.php:1946 wpvulnerability-notifications.php:105 +msgid "WPVulnerability" +msgstr "WPVulnerability" + +#. Plugin URI of the plugin +#: wpvulnerability.php +msgid "https://www.wpvulnerability.com/plugin/" +msgstr "https://www.wpvulnerability.com/plugin/" + +#. Description of the plugin +#: wpvulnerability.php +msgid "" +"Receive information about possible vulnerabilities in your WordPress from " +"WordPress Vulnerability Database API." +msgstr "" +"Terima informasi tentang kemungkinan kerentanan pada WordPress Anda dari " +"WordPress Vulnerability Database API." + +#. Author of the plugin +#: wpvulnerability.php +msgid "ROBOTSTXT" +msgstr "ROBOTSTXT" + +#. Author URI of the plugin +#: wpvulnerability.php +msgid "https://www.robotstxt.es/" +msgstr "https://www.robotstxt.es/" + +#: class-wpvulnerability-cli.php:35 class-wpvulnerability-config-cli.php:32 +msgid "" +"This command requires a WordPress administrator. Run with --" +"user=." +msgstr "" +"Perintah ini memerlukan administrator WordPress. Jalankan dengan --" +"user=." + +#: class-wpvulnerability-cli.php:156 +msgid "No core vulnerabilities found." +msgstr "Tidak ditemukan kerentanan pada inti." + +#: class-wpvulnerability-cli.php:275 +msgid "No plugin vulnerabilities found." +msgstr "Tidak ditemukan kerentanan pada plugin." + +#: class-wpvulnerability-cli.php:393 +msgid "No theme vulnerabilities found." +msgstr "Tidak ditemukan kerentanan pada tema." + +#. translators: %s is the software name (php, apache, nginx, etc.) +#: class-wpvulnerability-cli.php:490 +#, php-format +msgid "No %s vulnerabilities found." +msgstr "Tidak ditemukan kerentanan pada %s." + +#: wpvulnerability-admin.php:63 wpvulnerability-adminms.php:227 +msgid "Data from source has been reloaded." +msgstr "Data dari sumber telah dimuat ulang." + +#: wpvulnerability-admin.php:65 wpvulnerability-adminms.php:229 +msgid "You do not have permission to reload data." +msgstr "Anda tidak memiliki izin untuk memuat ulang data." + +#: wpvulnerability-admin.php:93 wpvulnerability-adminms.php:255 +msgid "Test email has been sent." +msgstr "Email pengujian telah dikirim." + +#: wpvulnerability-admin.php:95 wpvulnerability-adminms.php:259 +msgid "Test email has failed. Please, check your email settings." +msgstr "Pengiriman email pengujian gagal. Silakan periksa pengaturan email Anda." + +#: wpvulnerability-admin.php:98 wpvulnerability-adminms.php:263 +msgid "You do not have permission to send test emails." +msgstr "Anda tidak memiliki izin untuk mengirim email pengujian." + +#: wpvulnerability-admin.php:113 +msgid "WPVulnerability cron events have been repaired." +msgstr "Acara cron WPVulnerability telah diperbaiki." + +#: wpvulnerability-admin.php:115 wpvulnerability-adminms.php:279 +msgid "You do not have permission to repair cron events." +msgstr "Anda tidak memiliki izin untuk memperbaiki acara cron." + +#: wpvulnerability-admin.php:127 wpvulnerability-adminms.php:291 +msgid "All logs have been deleted." +msgstr "Semua log telah dihapus." + +#: wpvulnerability-admin.php:129 wpvulnerability-adminms.php:293 +msgid "You do not have permission to delete logs." +msgstr "Anda tidak memiliki izin untuk menghapus log." + +#: wpvulnerability-admin.php:146 +msgid "Uninstall preference saved." +msgstr "Preferensi penghapusan instalasi telah disimpan." + +#: wpvulnerability-admin.php:153 wpvulnerability-adminms.php:316 +msgid "WPVulnerability has been reset to defaults and reloaded." +msgstr "WPVulnerability telah direset ke default dan dimuat ulang." + +#: wpvulnerability-admin.php:155 wpvulnerability-adminms.php:318 +msgid "You do not have permission to reset WPVulnerability." +msgstr "Anda tidak memiliki izin untuk mereset WPVulnerability." + +#: wpvulnerability-admin.php:170 wpvulnerability-adminms.php:333 +msgid "All caches have been cleared." +msgstr "Semua cache telah dibersihkan." + +#: wpvulnerability-admin.php:172 wpvulnerability-adminms.php:335 +msgid "You do not have permission to clear caches." +msgstr "Anda tidak memiliki izin untuk membersihkan cache." + +#: wpvulnerability-admin.php:187 wpvulnerability-adminms.php:350 +msgid "Plugin and theme signatures have been reset." +msgstr "Tanda tangan plugin dan tema telah direset." + +#: wpvulnerability-admin.php:189 wpvulnerability-adminms.php:352 +msgid "You do not have permission to reset signatures." +msgstr "Anda tidak memiliki izin untuk mereset tanda tangan." + +#: wpvulnerability-admin.php:212 wpvulnerability-adminms.php:375 +msgid "You do not have permission to export debug information." +msgstr "Anda tidak memiliki izin untuk mengekspor informasi debug." + +#: wpvulnerability-admin.php:224 wpvulnerability-adminms.php:387 +msgid "Database update has been executed." +msgstr "Pembaruan basis data telah dijalankan." + +#: wpvulnerability-admin.php:226 wpvulnerability-adminms.php:389 +msgid "You do not have permission to run database updates." +msgstr "Anda tidak memiliki izin untuk menjalankan pembaruan basis data." + +#: wpvulnerability-admin.php:247 wpvulnerability-adminms.php:410 +msgid "Notification has been sent." +msgstr "Notifikasi telah dikirim." + +#: wpvulnerability-admin.php:249 wpvulnerability-adminms.php:412 +msgid "Notification sending failed." +msgstr "Pengiriman notifikasi gagal." + +#: wpvulnerability-admin.php:252 wpvulnerability-adminms.php:415 +msgid "You do not have permission to send notifications." +msgstr "Anda tidak memiliki izin untuk mengirim notifikasi." + +#: wpvulnerability-admin.php:266 wpvulnerability-adminms.php:539 +#: wpvulnerability-schedule.php:323 +msgid "Notifications" +msgstr "Notifikasi" + +#: wpvulnerability-admin.php:269 wpvulnerability-adminms.php:542 +msgid "Analysis" +msgstr "Analisis" + +#: wpvulnerability-admin.php:272 wpvulnerability-adminms.php:545 +msgid "Logs" +msgstr "Log" + +#: wpvulnerability-admin.php:275 wpvulnerability-adminms.php:548 +#: wpvulnerability-sitehealth.php:25 wpvulnerability-sitehealth.php:77 +#: wpvulnerability-sitehealth.php:129 wpvulnerability-sitehealth.php:210 +msgid "Security" +msgstr "Keamanan" + +#: wpvulnerability-admin.php:278 wpvulnerability-adminms.php:551 +msgid "Tools" +msgstr "Alat" + +#: wpvulnerability-admin.php:285 wpvulnerability-adminms.php:558 +msgid "Debug" +msgstr "Debug" + +#: wpvulnerability-admin.php:290 wpvulnerability-adminms.php:563 +msgid "About" +msgstr "Tentang" + +#: wpvulnerability-admin.php:427 wpvulnerability-adminms.php:700 +msgid "Notification Settings" +msgstr "Pengaturan Notifikasi" + +#: wpvulnerability-admin.php:430 wpvulnerability-adminms.php:703 +msgid "Configure how and when you want to receive vulnerability notifications." +msgstr "Atur bagaimana dan kapan Anda ingin menerima notifikasi kerentanan." + +#: wpvulnerability-admin.php:431 wpvulnerability-adminms.php:704 +msgid "" +"Stay informed about security vulnerabilities in your WordPress installation, " +"plugins, themes, and server software." +msgstr "" +"Tetap terinformasi tentang kerentanan keamanan pada instalasi WordPress, " +"plugin, tema, dan perangkat lunak server Anda." + +#: wpvulnerability-admin.php:438 wpvulnerability-adminms.php:711 +msgid "Cache Expiration Time" +msgstr "Waktu Kedaluwarsa Cache" + +#: wpvulnerability-admin.php:440 wpvulnerability-admin.php:814 +#: wpvulnerability-adminms.php:713 wpvulnerability-adminms.php:1087 +msgid "FORCED" +msgstr "DIPAKSAKAN" + +#: wpvulnerability-admin.php:444 wpvulnerability-adminms.php:717 +msgid "How long to cache vulnerability data before refreshing from the API." +msgstr "Berapa lama menyimpan data kerentanan dalam cache sebelum memperbarui dari API." + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:453 wpvulnerability-admin.php:1891 +#: wpvulnerability-admin.php:3631 wpvulnerability-adminms.php:726 +#: wpvulnerability-adminms.php:2039 wpvulnerability-adminms.php:3825 +#, php-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d jam" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:469 wpvulnerability-adminms.php:742 +#, php-format +msgid "" +"You can force the cache time via wp-config.php constant. Learn more →" +msgstr "" +"Anda dapat memaksa waktu cache melalui konstanta wp-config.php. Pelajari selengkapnya →" + +#: wpvulnerability-admin.php:481 wpvulnerability-admin.php:3665 +#: wpvulnerability-adminms.php:754 wpvulnerability-adminms.php:3859 +msgid "Notification Frequency" +msgstr "Frekuensi Notifikasi" + +#: wpvulnerability-admin.php:484 wpvulnerability-adminms.php:757 +msgid "Choose how often you want to receive vulnerability notifications." +msgstr "Pilih seberapa sering Anda ingin menerima notifikasi kerentanan." + +#: wpvulnerability-admin.php:489 wpvulnerability-adminms.php:762 +msgid "Never - Disable automatic notifications" +msgstr "Tidak Pernah — Nonaktifkan notifikasi otomatis" + +#: wpvulnerability-admin.php:493 wpvulnerability-adminms.php:766 +msgid "Daily - Receive notifications every day" +msgstr "Harian — Terima notifikasi setiap hari" + +#: wpvulnerability-admin.php:497 wpvulnerability-adminms.php:770 +msgid "Weekly - Receive notifications once a week" +msgstr "Mingguan — Terima notifikasi sekali seminggu" + +#: wpvulnerability-admin.php:503 wpvulnerability-adminms.php:776 +msgid "Day:" +msgstr "Hari:" + +#: wpvulnerability-admin.php:505 wpvulnerability-admin.php:1955 +#: wpvulnerability-adminms.php:778 wpvulnerability-adminms.php:2115 +msgid "Monday" +msgstr "Senin" + +#: wpvulnerability-admin.php:506 wpvulnerability-admin.php:1956 +#: wpvulnerability-adminms.php:779 wpvulnerability-adminms.php:2116 +msgid "Tuesday" +msgstr "Selasa" + +#: wpvulnerability-admin.php:507 wpvulnerability-admin.php:1957 +#: wpvulnerability-adminms.php:780 wpvulnerability-adminms.php:2117 +msgid "Wednesday" +msgstr "Rabu" + +#: wpvulnerability-admin.php:508 wpvulnerability-admin.php:1958 +#: wpvulnerability-adminms.php:781 wpvulnerability-adminms.php:2118 +msgid "Thursday" +msgstr "Kamis" + +#: wpvulnerability-admin.php:509 wpvulnerability-admin.php:1959 +#: wpvulnerability-adminms.php:782 wpvulnerability-adminms.php:2119 +msgid "Friday" +msgstr "Jumat" + +#: wpvulnerability-admin.php:510 wpvulnerability-admin.php:1960 +#: wpvulnerability-adminms.php:783 wpvulnerability-adminms.php:2120 +msgid "Saturday" +msgstr "Sabtu" + +#: wpvulnerability-admin.php:511 wpvulnerability-admin.php:1961 +#: wpvulnerability-adminms.php:784 wpvulnerability-adminms.php:2121 +msgid "Sunday" +msgstr "Minggu" + +#: wpvulnerability-admin.php:515 wpvulnerability-adminms.php:788 +msgid "Time:" +msgstr "Waktu:" + +#: wpvulnerability-admin.php:519 wpvulnerability-adminms.php:792 +msgid "(24-hour format, server timezone)" +msgstr "(format 24 jam, zona waktu server)" + +#: wpvulnerability-admin.php:528 wpvulnerability-adminms.php:801 +msgid "Notification Channels" +msgstr "Saluran Notifikasi" + +#: wpvulnerability-admin.php:531 wpvulnerability-adminms.php:804 +msgid "Select where you want to receive notifications." +msgstr "Pilih di mana Anda ingin menerima notifikasi." + +#: wpvulnerability-admin.php:536 wpvulnerability-admin.php:2011 +#: wpvulnerability-adminms.php:809 wpvulnerability-adminms.php:2169 +msgid "Email" +msgstr "Email" + +#: wpvulnerability-admin.php:539 wpvulnerability-adminms.php:812 +msgid "Email Addresses (separated by commas):" +msgstr "Alamat Email (dipisahkan dengan koma):" + +#: wpvulnerability-admin.php:541 wpvulnerability-adminms.php:814 +msgid "Default:" +msgstr "Default:" + +#: wpvulnerability-admin.php:546 wpvulnerability-admin.php:2016 +#: wpvulnerability-adminms.php:819 wpvulnerability-adminms.php:2174 +msgid "Slack" +msgstr "Slack" + +#: wpvulnerability-admin.php:549 wpvulnerability-adminms.php:822 +msgid "Slack Webhook URL:" +msgstr "URL Webhook Slack:" + +#. translators: %s: Slack documentation URL +#: wpvulnerability-admin.php:555 wpvulnerability-adminms.php:828 +#, php-format +msgid "" +"Learn how to " +"create a Slack incoming webhook →" +msgstr "" +"Pelajari cara " +"membuat incoming webhook Slack →" + +#: wpvulnerability-admin.php:564 wpvulnerability-admin.php:2021 +#: wpvulnerability-adminms.php:837 wpvulnerability-adminms.php:2179 +msgid "Microsoft Teams" +msgstr "Microsoft Teams" + +#: wpvulnerability-admin.php:567 wpvulnerability-adminms.php:840 +msgid "Teams Webhook URL:" +msgstr "URL Webhook Teams:" + +#. translators: %s: Microsoft Teams documentation URL +#: wpvulnerability-admin.php:573 wpvulnerability-adminms.php:846 +#, php-format +msgid "" +"Learn how to " +"create a Teams incoming webhook →" +msgstr "" +"Pelajari cara " +"membuat incoming webhook Teams →" + +#: wpvulnerability-admin.php:582 wpvulnerability-adminms.php:855 +msgid "Discord" +msgstr "Discord" + +#: wpvulnerability-admin.php:585 wpvulnerability-adminms.php:858 +msgid "Discord Webhook URL:" +msgstr "URL Webhook Discord:" + +#. translators: %s: Discord documentation URL +#: wpvulnerability-admin.php:591 wpvulnerability-adminms.php:864 +#, php-format +msgid "" +"Learn how to " +"create a Discord webhook →" +msgstr "" +"Pelajari cara " +"membuat webhook Discord →" + +#: wpvulnerability-admin.php:600 wpvulnerability-adminms.php:873 +msgid "Telegram" +msgstr "Telegram" + +#: wpvulnerability-admin.php:603 wpvulnerability-adminms.php:876 +msgid "Telegram Bot Token:" +msgstr "Token Bot Telegram:" + +#: wpvulnerability-admin.php:605 wpvulnerability-adminms.php:878 +msgid "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:607 wpvulnerability-adminms.php:880 +msgid "Telegram Chat ID:" +msgstr "ID Chat Telegram:" + +#. translators: %s: Telegram documentation URL +#: wpvulnerability-admin.php:613 wpvulnerability-adminms.php:886 +#, php-format +msgid "" +"Learn how to " +"create a Telegram bot and get Chat ID →" +msgstr "" +"Pelajari cara " +"membuat bot Telegram dan mendapatkan ID Chat →" + +#: wpvulnerability-admin.php:623 wpvulnerability-adminms.php:896 +msgid "Save Notification Settings" +msgstr "Simpan Pengaturan Notifikasi" + +#: wpvulnerability-admin.php:700 wpvulnerability-admin.php:2552 +#: wpvulnerability-adminms.php:973 wpvulnerability-adminms.php:2459 +msgid "WordPress Components" +msgstr "Komponen WordPress" + +#: wpvulnerability-admin.php:703 wpvulnerability-admin.php:2560 +#: wpvulnerability-adminms.php:976 wpvulnerability-adminms.php:2467 +msgid "WordPress Core" +msgstr "Inti WordPress" + +#: wpvulnerability-admin.php:707 wpvulnerability-admin.php:1472 +#: wpvulnerability-admin.php:1573 wpvulnerability-admin.php:2109 +#: wpvulnerability-admin.php:2571 wpvulnerability-adminms.php:980 +#: wpvulnerability-adminms.php:1744 wpvulnerability-adminms.php:1843 +#: wpvulnerability-adminms.php:2266 wpvulnerability-adminms.php:2478 +msgid "Plugins" +msgstr "Plugin" + +#: wpvulnerability-admin.php:711 wpvulnerability-admin.php:1473 +#: wpvulnerability-admin.php:1574 wpvulnerability-admin.php:2114 +#: wpvulnerability-admin.php:2587 wpvulnerability-adminms.php:984 +#: wpvulnerability-adminms.php:1745 wpvulnerability-adminms.php:1844 +#: wpvulnerability-adminms.php:2271 wpvulnerability-adminms.php:2494 +msgid "Themes" +msgstr "Tema" + +#: wpvulnerability-admin.php:717 wpvulnerability-adminms.php:990 +msgid "Software & Languages" +msgstr "Perangkat Lunak & Bahasa" + +#: wpvulnerability-admin.php:720 wpvulnerability-admin.php:1474 +#: wpvulnerability-admin.php:2119 wpvulnerability-adminms.php:993 +#: wpvulnerability-adminms.php:1746 wpvulnerability-adminms.php:2276 +#: wpvulnerability-sitehealth.php:178 +msgid "PHP" +msgstr "PHP" + +#: wpvulnerability-admin.php:726 wpvulnerability-adminms.php:999 +msgid "Web Servers" +msgstr "Server Web" + +#: wpvulnerability-admin.php:729 wpvulnerability-admin.php:1475 +#: wpvulnerability-admin.php:2124 wpvulnerability-adminms.php:1002 +#: wpvulnerability-adminms.php:1747 wpvulnerability-adminms.php:2281 +#: wpvulnerability-sitehealth.php:179 +msgid "Apache HTTPD" +msgstr "Apache HTTPD" + +#: wpvulnerability-admin.php:733 wpvulnerability-admin.php:1476 +#: wpvulnerability-admin.php:2129 wpvulnerability-adminms.php:1006 +#: wpvulnerability-adminms.php:1748 wpvulnerability-adminms.php:2286 +msgid "nginx" +msgstr "nginx" + +#: wpvulnerability-admin.php:739 wpvulnerability-adminms.php:1012 +msgid "Databases" +msgstr "Basis Data" + +#: wpvulnerability-admin.php:742 wpvulnerability-admin.php:1477 +#: wpvulnerability-admin.php:2134 wpvulnerability-adminms.php:1015 +#: wpvulnerability-adminms.php:1749 wpvulnerability-adminms.php:2291 +#: wpvulnerability-sitehealth.php:181 +msgid "MariaDB" +msgstr "MariaDB" + +#: wpvulnerability-admin.php:746 wpvulnerability-admin.php:1478 +#: wpvulnerability-admin.php:2139 wpvulnerability-adminms.php:1019 +#: wpvulnerability-adminms.php:1750 wpvulnerability-adminms.php:2296 +#: wpvulnerability-sitehealth.php:182 +msgid "MySQL" +msgstr "MySQL" + +#: wpvulnerability-admin.php:750 wpvulnerability-admin.php:1483 +#: wpvulnerability-admin.php:2164 wpvulnerability-admin.php:3104 +#: wpvulnerability-adminms.php:1023 wpvulnerability-adminms.php:1755 +#: wpvulnerability-adminms.php:2321 wpvulnerability-adminms.php:3281 +msgid "SQLite" +msgstr "SQLite" + +#: wpvulnerability-admin.php:756 wpvulnerability-adminms.php:1029 +msgid "Additional Tools" +msgstr "Alat Tambahan" + +#: wpvulnerability-admin.php:759 wpvulnerability-admin.php:1479 +#: wpvulnerability-admin.php:2144 wpvulnerability-admin.php:3101 +#: wpvulnerability-adminms.php:1032 wpvulnerability-adminms.php:1751 +#: wpvulnerability-adminms.php:2301 wpvulnerability-adminms.php:3278 +#: wpvulnerability-sitehealth.php:183 +msgid "ImageMagick" +msgstr "ImageMagick" + +#: wpvulnerability-admin.php:763 wpvulnerability-admin.php:1480 +#: wpvulnerability-admin.php:2149 wpvulnerability-adminms.php:1036 +#: wpvulnerability-adminms.php:1752 wpvulnerability-adminms.php:2306 +#: wpvulnerability-sitehealth.php:184 +msgid "curl" +msgstr "curl" + +#: wpvulnerability-admin.php:767 wpvulnerability-admin.php:1481 +#: wpvulnerability-admin.php:2154 wpvulnerability-adminms.php:1040 +#: wpvulnerability-adminms.php:1753 wpvulnerability-adminms.php:2311 +msgid "memcached" +msgstr "memcached" + +#: wpvulnerability-admin.php:771 wpvulnerability-admin.php:1482 +#: wpvulnerability-admin.php:2159 wpvulnerability-admin.php:3102 +#: wpvulnerability-adminms.php:1044 wpvulnerability-adminms.php:1754 +#: wpvulnerability-adminms.php:2316 wpvulnerability-adminms.php:3279 +msgid "Redis" +msgstr "Redis" + +#: wpvulnerability-admin.php:784 wpvulnerability-adminms.php:1057 +msgid "Component Analysis Settings" +msgstr "Pengaturan Analisis Komponen" + +#: wpvulnerability-admin.php:787 wpvulnerability-adminms.php:1060 +msgid "Enable or disable vulnerability analysis for specific components." +msgstr "Aktifkan atau nonaktifkan analisis kerentanan untuk komponen tertentu." + +#: wpvulnerability-admin.php:788 wpvulnerability-adminms.php:1061 +msgid "" +"Check the components you want to HIDE from vulnerability scans and reports. " +"Unchecked components will be actively analyzed. Components with active " +"analysis are shown in green, hidden components in red." +msgstr "" +"Centang komponen yang ingin Anda SEMBUNYIKAN dari pemindaian dan laporan " +"kerentanan. Komponen yang tidak dicentang akan dianalisis secara aktif. " +"Komponen dengan analisis aktif ditampilkan dalam warna hijau, komponen " +"tersembunyi dalam warna merah." + +#: wpvulnerability-admin.php:820 wpvulnerability-adminms.php:1093 +msgid "Hidden (forced by constant)" +msgstr "Tersembunyi (dipaksakan oleh konstanta)" + +#: wpvulnerability-admin.php:823 wpvulnerability-adminms.php:1096 +msgid "🔴 Analysis disabled" +msgstr "🔴 Analisis dinonaktifkan" + +#: wpvulnerability-admin.php:826 wpvulnerability-adminms.php:1099 +msgid "🟢 Analysis active" +msgstr "🟢 Analisis aktif" + +#: wpvulnerability-admin.php:848 wpvulnerability-adminms.php:1121 +msgid "Tip:" +msgstr "Tips:" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:852 wpvulnerability-adminms.php:1125 +#, php-format +msgid "" +"You can force-disable components via wp-config.php constants. Learn more about force-hiding " +"checks →" +msgstr "" +"Anda dapat menonaktifkan komponen secara paksa melalui konstanta wp-config.php. " +"Pelajari lebih lanjut " +"tentang menyembunyikan pemeriksaan secara paksa →" + +#: wpvulnerability-admin.php:860 wpvulnerability-adminms.php:1133 +msgid "Save Analysis Settings" +msgstr "Simpan Pengaturan Analisis" + +#: wpvulnerability-admin.php:920 wpvulnerability-adminms.php:1193 +msgid "« Previous" +msgstr "« Sebelumnya" + +#: wpvulnerability-admin.php:921 wpvulnerability-adminms.php:1194 +msgid "Next »" +msgstr "Berikutnya »" + +#: wpvulnerability-admin.php:932 wpvulnerability-adminms.php:1205 +msgid "Log entry not found or has been removed." +msgstr "Entri log tidak ditemukan atau telah dihapus." + +#: wpvulnerability-admin.php:935 wpvulnerability-adminms.php:1208 +msgid "Unable to load the requested log entry." +msgstr "Tidak dapat memuat entri log yang diminta." + +#: wpvulnerability-admin.php:945 wpvulnerability-adminms.php:1218 +msgid "Log Configuration" +msgstr "Konfigurasi Log" + +#: wpvulnerability-admin.php:950 wpvulnerability-adminms.php:1223 +msgid "Total Logs" +msgstr "Total Log" + +#: wpvulnerability-admin.php:954 wpvulnerability-adminms.php:1227 +msgid "Retention Period" +msgstr "Periode Retensi" + +#: wpvulnerability-admin.php:959 wpvulnerability-admin.php:1301 +#: wpvulnerability-admin.php:3029 wpvulnerability-admin.php:3043 +#: wpvulnerability-admin.php:3475 wpvulnerability-admin.php:3483 +#: wpvulnerability-adminms.php:1232 wpvulnerability-adminms.php:1574 +#: wpvulnerability-adminms.php:3206 wpvulnerability-adminms.php:3220 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Disabled" +msgstr "Dinonaktifkan" + +#. translators: %d: Number of days. +#. translators: %d: number of days +#: wpvulnerability-admin.php:962 wpvulnerability-admin.php:984 +#: wpvulnerability-admin.php:3641 wpvulnerability-adminms.php:1235 +#: wpvulnerability-adminms.php:1257 wpvulnerability-adminms.php:3835 +#, php-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d hari" + +#: wpvulnerability-admin.php:975 wpvulnerability-adminms.php:1248 +msgid "Log Retention Period" +msgstr "Periode Retensi Log" + +#: wpvulnerability-admin.php:981 wpvulnerability-adminms.php:1254 +msgid "None (Disabled)" +msgstr "Tidak Ada (Dinonaktifkan)" + +#: wpvulnerability-admin.php:1004 wpvulnerability-adminms.php:1277 +msgid "" +"This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant." +msgstr "" +"Nilai ini diberlakukan oleh konstanta WPVULNERABILITY_LOG_RETENTION_DAYS." + +#: wpvulnerability-admin.php:1009 wpvulnerability-adminms.php:1282 +msgid "" +"Choose how long WPVulnerability should keep API response logs. Older logs " +"are automatically deleted." +msgstr "" +"Pilih berapa lama WPVulnerability harus menyimpan log respons API. Log yang " +"lebih lama akan dihapus secara otomatis." + +#: wpvulnerability-admin.php:1013 wpvulnerability-adminms.php:1286 +msgid "Save Configuration" +msgstr "Simpan Konfigurasi" + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "Log retention is currently disabled." +msgstr "Retensi log saat ini dinonaktifkan." + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "API responses are not being saved." +msgstr "Respons API tidak sedang disimpan." + +#: wpvulnerability-admin.php:1031 wpvulnerability-adminms.php:1304 +msgid "Log Details" +msgstr "Detail Log" + +#: wpvulnerability-admin.php:1035 wpvulnerability-admin.php:1104 +#: wpvulnerability-adminms.php:1308 wpvulnerability-adminms.php:1377 +msgid "Date" +msgstr "Tanggal" + +#: wpvulnerability-admin.php:1039 wpvulnerability-admin.php:1105 +#: wpvulnerability-adminms.php:1312 wpvulnerability-adminms.php:1378 +msgid "API Endpoint" +msgstr "Endpoint API" + +#: wpvulnerability-admin.php:1044 wpvulnerability-adminms.php:1317 +msgid "API Response" +msgstr "Respons API" + +#: wpvulnerability-admin.php:1049 wpvulnerability-adminms.php:1322 +msgid "Back to Logs" +msgstr "Kembali ke Log" + +#: wpvulnerability-admin.php:1058 wpvulnerability-adminms.php:1331 +msgid "No logs available" +msgstr "Tidak ada log yang tersedia" + +#: wpvulnerability-admin.php:1059 wpvulnerability-adminms.php:1332 +msgid "API response logs will appear here once the vulnerability scanner runs." +msgstr "Log respons API akan muncul di sini setelah pemindai kerentanan berjalan." + +#: wpvulnerability-admin.php:1063 wpvulnerability-adminms.php:1336 +msgid "API Response Logs" +msgstr "Log Respons API" + +#: wpvulnerability-admin.php:1073 wpvulnerability-adminms.php:1346 +msgid "Show:" +msgstr "Tampilkan:" + +#: wpvulnerability-admin.php:1082 wpvulnerability-adminms.php:1355 +msgid "Apply" +msgstr "Terapkan" + +#. translators: 1: first item, 2: last item, 3: total items +#: wpvulnerability-admin.php:1090 wpvulnerability-adminms.php:1363 +#, php-format +msgid "Showing %1$s–%2$s of %3$s" +msgstr "Menampilkan %1$s–%2$s dari %3$s" + +#: wpvulnerability-admin.php:1106 wpvulnerability-adminms.php:1379 +msgid "Actions" +msgstr "Tindakan" + +#: wpvulnerability-admin.php:1133 wpvulnerability-admin.php:3957 +#: wpvulnerability-adminms.php:1406 wpvulnerability-adminms.php:4151 +msgid "View" +msgstr "Lihat" + +#: wpvulnerability-admin.php:1150 wpvulnerability-adminms.php:1423 +msgid "Danger Zone" +msgstr "Zona Berbahaya" + +#: wpvulnerability-admin.php:1152 wpvulnerability-adminms.php:1425 +msgid "Permanently delete all API response logs. This action cannot be undone." +msgstr "Hapus semua log respons API secara permanen. Tindakan ini tidak dapat dibatalkan." + +#: wpvulnerability-admin.php:1154 wpvulnerability-adminms.php:1427 +msgid "Are you sure you want to delete all logs? This action cannot be undone." +msgstr "Apakah Anda yakin ingin menghapus semua log? Tindakan ini tidak dapat dibatalkan." + +#: wpvulnerability-admin.php:1157 wpvulnerability-adminms.php:1430 +msgid "Delete All Logs" +msgstr "Hapus Semua Log" + +#: wpvulnerability-admin.php:1201 wpvulnerability-adminms.php:1474 +msgid "Reload Data from API" +msgstr "Muat Ulang Data dari API" + +#: wpvulnerability-admin.php:1204 wpvulnerability-adminms.php:1477 +msgid "" +"Reload all Core, Plugins, Themes and other components information directly " +"from the API to have updated data. This will clear the cache and fetch fresh " +"vulnerability information." +msgstr "" +"Muat ulang semua informasi Inti, Plugin, Tema, dan komponen lainnya langsung " +"dari API untuk mendapatkan data terbaru. Ini akan membersihkan cache dan " +"mengambil informasi kerentanan terbaru." + +#: wpvulnerability-admin.php:1209 wpvulnerability-adminms.php:1482 +msgid "Reload Data" +msgstr "Muat Ulang Data" + +#: wpvulnerability-admin.php:1218 wpvulnerability-adminms.php:1491 +msgid "Test Email Notifications" +msgstr "Uji Notifikasi Email" + +#: wpvulnerability-admin.php:1221 wpvulnerability-adminms.php:1494 +msgid "" +"Send a test email notification with current vulnerability data to verify " +"your email configuration is working correctly." +msgstr "" +"Kirim notifikasi email pengujian dengan data kerentanan saat ini untuk " +"memverifikasi bahwa konfigurasi email Anda berfungsi dengan benar." + +#: wpvulnerability-admin.php:1231 wpvulnerability-adminms.php:1504 +msgid "From address (configured via constant):" +msgstr "Alamat pengirim (dikonfigurasi melalui konstanta):" + +#: wpvulnerability-admin.php:1243 wpvulnerability-adminms.php:1516 +msgid "From address (default):" +msgstr "Alamat pengirim (default):" + +#: wpvulnerability-admin.php:1252 wpvulnerability-adminms.php:1525 +msgid "Learn how to customize the email sender address →" +msgstr "Pelajari cara menyesuaikan alamat pengirim email →" + +#: wpvulnerability-admin.php:1258 wpvulnerability-adminms.php:1531 +msgid "Send Test Email" +msgstr "Kirim Email Pengujian" + +#: wpvulnerability-admin.php:1267 wpvulnerability-adminms.php:1540 +msgid "WP-Cron Status" +msgstr "Status WP-Cron" + +#: wpvulnerability-admin.php:1270 wpvulnerability-adminms.php:1543 +msgid "" +"View and manage WP-Cron scheduled events. Compare expected schedules with " +"actual cron jobs to ensure automated tasks are running correctly." +msgstr "" +"Lihat dan kelola acara terjadwal WP-Cron. Bandingkan jadwal yang diharapkan " +"dengan pekerjaan cron aktual untuk memastikan tugas otomatis berjalan dengan " +"benar." + +#: wpvulnerability-admin.php:1275 wpvulnerability-adminms.php:1548 +msgid "No cron data available." +msgstr "Tidak ada data cron yang tersedia." + +#: wpvulnerability-admin.php:1281 wpvulnerability-adminms.php:1554 +msgid "Hook" +msgstr "Hook" + +#: wpvulnerability-admin.php:1282 wpvulnerability-adminms.php:1555 +msgid "Expected" +msgstr "Diharapkan" + +#: wpvulnerability-admin.php:1283 wpvulnerability-adminms.php:1556 +msgid "Found" +msgstr "Ditemukan" + +#: wpvulnerability-admin.php:1284 wpvulnerability-adminms.php:1557 +msgid "Next Run" +msgstr "Eksekusi Berikutnya" + +#: wpvulnerability-admin.php:1285 wpvulnerability-admin.php:3236 +#: wpvulnerability-admin.php:3559 wpvulnerability-adminms.php:1558 +#: wpvulnerability-adminms.php:3413 wpvulnerability-adminms.php:3753 +msgid "Status" +msgstr "Status" + +#: wpvulnerability-admin.php:1299 wpvulnerability-adminms.php:1572 +msgid "Not expected" +msgstr "Tidak diharapkan" + +#: wpvulnerability-admin.php:1321 wpvulnerability-adminms.php:1594 +#: wpvulnerability-general.php:1871 wpvulnerability-general.php:1872 +msgid "None" +msgstr "Tidak Ada" + +#: wpvulnerability-admin.php:1356 wpvulnerability-adminms.php:1629 +msgid "OK" +msgstr "OK" + +#: wpvulnerability-admin.php:1366 wpvulnerability-adminms.php:1639 +msgid "⚠️ Unexpected WPVulnerability Events" +msgstr "⚠️ Acara WPVulnerability yang Tidak Terduga" + +#: wpvulnerability-admin.php:1383 wpvulnerability-adminms.php:1656 +msgid "No interval" +msgstr "Tidak ada interval" + +#: wpvulnerability-admin.php:1390 wpvulnerability-adminms.php:1663 +msgid "Next:" +msgstr "Berikutnya:" + +#: wpvulnerability-admin.php:1400 wpvulnerability-adminms.php:1673 +msgid "Repair Cron Events" +msgstr "Perbaiki Acara Cron" + +#: wpvulnerability-admin.php:1408 wpvulnerability-adminms.php:1681 +msgid "Uninstall Data" +msgstr "Data Penghapusan Instalasi" + +#: wpvulnerability-admin.php:1410 wpvulnerability-adminms.php:1683 +msgid "" +"By default, all plugin data is preserved when WPVulnerability is deleted. " +"Enable the option below only if you want all options, logs, and cached data " +"permanently removed on uninstall." +msgstr "" +"Secara default, semua data plugin disimpan saat WPVulnerability dihapus. " +"Aktifkan opsi di bawah ini hanya jika Anda ingin semua opsi, log, dan data " +"cache dihapus secara permanen saat dihapus instalasinya." + +#: wpvulnerability-admin.php:1420 wpvulnerability-adminms.php:1693 +msgid "Delete all plugin data on uninstall" +msgstr "Hapus semua data plugin saat dihapus instalasinya" + +#: wpvulnerability-admin.php:1423 wpvulnerability-adminms.php:1696 +msgid "" +"Default: unchecked (data preserved). Check only if you want a clean removal." +msgstr "Default: tidak dicentang (data disimpan). Centang hanya jika Anda menginginkan penghapusan yang bersih." + +#: wpvulnerability-admin.php:1425 wpvulnerability-adminms.php:1698 +msgid "Save preference" +msgstr "Simpan preferensi" + +#: wpvulnerability-admin.php:1432 wpvulnerability-adminms.php:1705 +msgid "Reset WPVulnerability" +msgstr "Reset WPVulnerability" + +#: wpvulnerability-admin.php:1434 wpvulnerability-adminms.php:1707 +msgid "" +"Delete all WPVulnerability settings, cached data, logs, and scheduled " +"events, then restore defaults and reload data from the API." +msgstr "" +"Hapus semua pengaturan WPVulnerability, data cache, log, dan acara terjadwal, " +"lalu kembalikan ke default dan muat ulang data dari API." + +#: wpvulnerability-admin.php:1436 wpvulnerability-adminms.php:1709 +msgid "This action cannot be undone." +msgstr "Tindakan ini tidak dapat dibatalkan." + +#: wpvulnerability-admin.php:1438 wpvulnerability-adminms.php:1711 +msgid "" +"Are you sure you want to reset all WPVulnerability data? This action cannot " +"be undone." +msgstr "" +"Apakah Anda yakin ingin mereset semua data WPVulnerability? Tindakan ini " +"tidak dapat dibatalkan." + +#: wpvulnerability-admin.php:1441 wpvulnerability-adminms.php:1713 +msgid "Reset Plugin" +msgstr "Reset Plugin" + +#: wpvulnerability-admin.php:1468 wpvulnerability-adminms.php:1740 +msgid "Vulnerability Database Statistics" +msgstr "Statistik Basis Data Kerentanan" + +#. translators: number of vulnerabilities. +#: wpvulnerability-admin.php:1510 wpvulnerability-adminms.php:1782 +#, php-format +msgid "%s vulnerability" +msgid_plural "%s vulnerabilities" +msgstr[0] "%s kerentanan" + +#. translators: number of products. +#: wpvulnerability-admin.php:1520 wpvulnerability-adminms.php:1792 +#, php-format +msgid "(%s product)" +msgid_plural "(%s products)" +msgstr[0] "(%s produk)" + +#: wpvulnerability-admin.php:1527 wpvulnerability-adminms.php:1799 +msgid "No data" +msgstr "Tidak ada data" + +#. translators: date of last update. +#: wpvulnerability-admin.php:1544 wpvulnerability-adminms.php:1814 +#, php-format +msgid "Database last updated: %s" +msgstr "Basis data terakhir diperbarui: %s" + +#: wpvulnerability-admin.php:1566 wpvulnerability-adminms.php:1836 +msgid "Intelligence Sources" +msgstr "Sumber Intelijen" + +#: wpvulnerability-admin.php:1567 wpvulnerability-adminms.php:1837 +msgid "Number of vulnerabilities contributed by each intelligence source." +msgstr "Jumlah kerentanan yang dikontribusikan oleh setiap sumber intelijen." + +#: wpvulnerability-admin.php:1571 wpvulnerability-adminms.php:1841 +msgid "Source" +msgstr "Sumber" + +#: wpvulnerability-admin.php:1572 wpvulnerability-admin.php:2104 +#: wpvulnerability-adminms.php:1842 wpvulnerability-adminms.php:2261 +msgid "Core" +msgstr "Inti" + +#: wpvulnerability-admin.php:1603 wpvulnerability-adminms.php:1873 +msgid "Sponsors" +msgstr "Sponsor" + +#: wpvulnerability-admin.php:1626 wpvulnerability-adminms.php:1896 +msgid "No sponsor data available." +msgstr "Tidak ada data sponsor yang tersedia." + +#: wpvulnerability-admin.php:1633 wpvulnerability-adminms.php:1903 +msgid "Contributors" +msgstr "Kontributor" + +#: wpvulnerability-admin.php:1656 wpvulnerability-adminms.php:1926 +msgid "No contributor data available." +msgstr "Tidak ada data kontributor yang tersedia." + +#: wpvulnerability-admin.php:1674 wpvulnerability-adminms.php:432 +msgid "You do not have sufficient permissions to access this page." +msgstr "Anda tidak memiliki izin yang cukup untuk mengakses halaman ini." + +#: wpvulnerability-admin.php:1684 wpvulnerability-adminms.php:441 +msgid "WPVulnerability settings" +msgstr "Pengaturan WPVulnerability" + +#: wpvulnerability-admin.php:1801 wpvulnerability-adminms.php:1963 +msgid "Configure and save these settings to receive notifications." +msgstr "Konfigurasikan dan simpan pengaturan ini untuk menerima notifikasi." + +#: wpvulnerability-admin.php:1814 wpvulnerability-adminms.php:2071 +msgid "Configure and save these settings to hide vulnerabilities." +msgstr "Konfigurasikan dan simpan pengaturan ini untuk menyembunyikan kerentanan." + +#: wpvulnerability-admin.php:1845 wpvulnerability-adminms.php:1993 +msgid "Default administrator email" +msgstr "Email administrator default" + +#: wpvulnerability-admin.php:1909 wpvulnerability-adminms.php:2057 +msgid "Read more if you want to force the cache time." +msgstr "Baca selengkapnya jika Anda ingin memaksa waktu cache." + +#: wpvulnerability-admin.php:1939 wpvulnerability-adminms.php:2099 +msgid "Never" +msgstr "Tidak Pernah" + +#: wpvulnerability-admin.php:1944 wpvulnerability-adminms.php:2104 +msgid "Daily" +msgstr "Harian" + +#: wpvulnerability-admin.php:1949 wpvulnerability-adminms.php:2109 +msgid "Weekly" +msgstr "Mingguan" + +#: wpvulnerability-admin.php:1953 wpvulnerability-adminms.php:2113 +msgid "Day" +msgstr "Hari" + +#: wpvulnerability-admin.php:1966 wpvulnerability-adminms.php:2126 +msgid "Hour" +msgstr "Jam" + +#: wpvulnerability-admin.php:1968 wpvulnerability-adminms.php:2128 +msgid "Minute" +msgstr "Menit" + +#: wpvulnerability-admin.php:2166 wpvulnerability-adminms.php:2323 +msgid "Read more about how to force the deactivation of an item." +msgstr "Baca selengkapnya tentang cara memaksa penonaktifan suatu item." + +#: wpvulnerability-admin.php:2292 wpvulnerability-adminms.php:2870 +msgid "" +"Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com" +msgstr "" +"URL webhook Slack tidak valid. Harus berupa URL HTTPS yang valid dari hooks.slack.com." + +#: wpvulnerability-admin.php:2315 wpvulnerability-adminms.php:2893 +msgid "" +"Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office." +"com, office365.com, or api.hooks.microsoft.com" +msgstr "" +"URL webhook Microsoft Teams tidak valid. Harus berupa URL HTTPS yang valid dari " +"office.com, office365.com, atau api.hooks.microsoft.com." + +#: wpvulnerability-admin.php:2338 wpvulnerability-adminms.php:2916 +msgid "" +"Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or " +"discordapp.com" +msgstr "" +"URL webhook Discord tidak valid. Harus berupa URL HTTPS yang valid dari " +"discord.com atau discordapp.com." + +#: wpvulnerability-admin.php:2357 wpvulnerability-adminms.php:2935 +msgid "" +"Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-" +"zyx57W2v1u123ew11" +msgstr "" +"Format token bot Telegram tidak valid. Harus seperti: 123456:ABC-DEF1234ghIkl-" +"zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:2493 wpvulnerability-adminms.php:2400 +msgid "All Clear" +msgstr "Semua Aman" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2503 wpvulnerability-adminms.php:2410 +#, php-format +msgid "%d Critical Issue Found" +msgid_plural "%d Critical Issues Found" +msgstr[0] "Ditemukan %d Masalah Kritis" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2508 wpvulnerability-adminms.php:2415 +#, php-format +msgid "%d Issue Found" +msgid_plural "%d Issues Found" +msgstr[0] "Ditemukan %d Masalah" + +#: wpvulnerability-admin.php:2515 wpvulnerability-adminms.php:2422 +msgid "Never checked" +msgstr "Belum pernah diperiksa" + +#. translators: %d: number of minutes +#: wpvulnerability-admin.php:2523 wpvulnerability-adminms.php:2430 +#, php-format +msgid "%d minute ago" +msgid_plural "%d minutes ago" +msgstr[0] "%d menit yang lalu" + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:2527 wpvulnerability-adminms.php:2434 +#, php-format +msgid "%d hour ago" +msgid_plural "%d hours ago" +msgstr[0] "%d jam yang lalu" + +#. translators: %s: time since last check +#: wpvulnerability-admin.php:2539 wpvulnerability-adminms.php:2446 +#, php-format +msgid "Last checked: %s" +msgstr "Terakhir diperiksa: %s" + +#: wpvulnerability-admin.php:2540 wpvulnerability-adminms.php:2447 +msgid "Refresh Now" +msgstr "Perbarui Sekarang" + +#: wpvulnerability-admin.php:2547 wpvulnerability-adminms.php:2454 +msgid "No vulnerabilities detected" +msgstr "Tidak ada kerentanan yang terdeteksi" + +#: wpvulnerability-admin.php:2548 wpvulnerability-adminms.php:2455 +msgid "Your site is up to date and secure" +msgstr "Situs Anda sudah diperbarui dan aman" + +#: wpvulnerability-admin.php:2616 wpvulnerability-adminms.php:2523 +msgid "Server Software" +msgstr "Perangkat Lunak Server" + +#: wpvulnerability-admin.php:2829 wpvulnerability-adminms.php:2736 +msgid "Site Health" +msgstr "Kesehatan Situs" + +#: wpvulnerability-admin.php:2831 wpvulnerability-adminms.php:2738 +#: wpvulnerability-run.php:33 +msgid "Settings" +msgstr "Pengaturan" + +#: wpvulnerability-admin.php:2846 wpvulnerability-adminms.php:2754 +msgid "WPVulnerability Status" +msgstr "Status WPVulnerability" + +#: wpvulnerability-admin.php:2878 wpvulnerability-adminms.php:3052 +msgid "Receive vulnerability notifications" +msgstr "Terima notifikasi kerentanan" + +#: wpvulnerability-admin.php:2886 wpvulnerability-adminms.php:3060 +msgid "Cache expiration time" +msgstr "Waktu kedaluwarsa cache" + +#: wpvulnerability-admin.php:2895 wpvulnerability-adminms.php:3069 +msgid "How often you want to receive notifications" +msgstr "Seberapa sering Anda ingin menerima notifikasi" + +#: wpvulnerability-admin.php:2904 wpvulnerability-adminms.php:3078 +msgid "Where do you want to receive notifications?" +msgstr "Di mana Anda ingin menerima notifikasi?" + +#: wpvulnerability-admin.php:2913 wpvulnerability-adminms.php:3087 +msgid "Email addresses to notify (separated by commas)" +msgstr "Alamat email untuk notifikasi (dipisahkan dengan koma)" + +#: wpvulnerability-admin.php:2922 wpvulnerability-adminms.php:3096 +msgid "Slack webhook URL" +msgstr "URL webhook Slack" + +#: wpvulnerability-admin.php:2931 wpvulnerability-adminms.php:3105 +msgid "Teams webhook URL" +msgstr "URL webhook Teams" + +#: wpvulnerability-admin.php:2950 wpvulnerability-adminms.php:3126 +msgid "Vulnerabilities to hide" +msgstr "Kerentanan yang akan disembunyikan" + +#: wpvulnerability-admin.php:2958 wpvulnerability-adminms.php:3134 +msgid "What do you want to hide?" +msgstr "Apa yang ingin Anda sembunyikan?" + +#: wpvulnerability-admin.php:3008 wpvulnerability-adminms.php:3185 +msgid "Standard (Hybrid Detection)" +msgstr "Standar (Deteksi Hibrida)" + +#: wpvulnerability-admin.php:3009 wpvulnerability-adminms.php:3186 +msgid "Strict (Extensions Only)" +msgstr "Ketat (Hanya Ekstensi)" + +#: wpvulnerability-admin.php:3010 wpvulnerability-adminms.php:3187 +msgid "Disabled (No Detection)" +msgstr "Dinonaktifkan (Tanpa Deteksi)" + +#: wpvulnerability-admin.php:3016 wpvulnerability-adminms.php:3193 +msgid "Security Status" +msgstr "Status Keamanan" + +#: wpvulnerability-admin.php:3020 wpvulnerability-adminms.php:3197 +msgid "Security Mode" +msgstr "Mode Keamanan" + +#: wpvulnerability-admin.php:3025 wpvulnerability-adminms.php:3202 +msgid "Shell Execution" +msgstr "Eksekusi Shell" + +#: wpvulnerability-admin.php:3027 wpvulnerability-admin.php:3475 +#: wpvulnerability-admin.php:3483 wpvulnerability-adminms.php:3204 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Enabled" +msgstr "Diaktifkan" + +#: wpvulnerability-admin.php:3034 wpvulnerability-adminms.php:3211 +msgid "Audit Logging" +msgstr "Pencatatan Audit" + +#. translators: %d: number of days +#: wpvulnerability-admin.php:3039 wpvulnerability-adminms.php:3216 +#, php-format +msgid "Enabled (%d days)" +msgstr "Diaktifkan (%d hari)" + +#: wpvulnerability-admin.php:3048 wpvulnerability-adminms.php:3225 +msgid "Total Log Entries" +msgstr "Total Entri Log" + +#: wpvulnerability-admin.php:3055 wpvulnerability-adminms.php:3232 +msgid "Last Shell Execution" +msgstr "Eksekusi Shell Terakhir" + +#. translators: %s: time ago +#: wpvulnerability-admin.php:3061 wpvulnerability-admin.php:3266 +#: wpvulnerability-adminms.php:3238 wpvulnerability-adminms.php:3441 +#, php-format +msgid "%s ago" +msgstr "%s yang lalu" + +#: wpvulnerability-admin.php:3073 wpvulnerability-adminms.php:3250 +msgid "" +"Configure security settings via wp-config.php constants: " +"WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, " +"WPVULNERABILITY_SHELL_EXEC_WHITELIST." +msgstr "" +"Konfigurasikan pengaturan keamanan melalui konstanta wp-config.php: " +"WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, " +"WPVULNERABILITY_SHELL_EXEC_WHITELIST." + +#. translators: %s: URL to security documentation +#: wpvulnerability-admin.php:3079 wpvulnerability-adminms.php:3256 +#, php-format +msgid "" +"See security " +"configuration documentation for details." +msgstr "" +"Lihat dokumentasi " +"konfigurasi keamanan untuk detailnya." + +#: wpvulnerability-admin.php:3103 wpvulnerability-adminms.php:3280 +msgid "Memcached" +msgstr "Memcached" + +#: wpvulnerability-admin.php:3131 wpvulnerability-adminms.php:3308 +msgid "Imagick Extension" +msgstr "Ekstensi Imagick" + +#: wpvulnerability-admin.php:3132 wpvulnerability-adminms.php:3309 +msgid "Redis Extension" +msgstr "Ekstensi Redis" + +#: wpvulnerability-admin.php:3133 wpvulnerability-adminms.php:3310 +msgid "Memcached Extension" +msgstr "Ekstensi Memcached" + +#: wpvulnerability-admin.php:3134 wpvulnerability-adminms.php:3311 +msgid "Memcache Extension" +msgstr "Ekstensi Memcache" + +#: wpvulnerability-admin.php:3135 wpvulnerability-adminms.php:3312 +msgid "SQLite3 Extension" +msgstr "Ekstensi SQLite3" + +#: wpvulnerability-admin.php:3136 wpvulnerability-adminms.php:3313 +msgid "PDO SQLite" +msgstr "PDO SQLite" + +#: wpvulnerability-admin.php:3137 wpvulnerability-adminms.php:3314 +msgid "Shell Command" +msgstr "Perintah Shell" + +#: wpvulnerability-admin.php:3138 wpvulnerability-adminms.php:3315 +msgid "Binary Check" +msgstr "Pemeriksaan Biner" + +#: wpvulnerability-admin.php:3139 wpvulnerability-adminms.php:3316 +msgid "Not Detected" +msgstr "Tidak Terdeteksi" + +#: wpvulnerability-admin.php:3143 wpvulnerability-adminms.php:3320 +msgid "Software Detection Methods" +msgstr "Metode Deteksi Perangkat Lunak" + +#: wpvulnerability-admin.php:3144 wpvulnerability-adminms.php:3321 +msgid "" +"Shows which detection method was used for each software component and the " +"reliability score." +msgstr "" +"Menampilkan metode deteksi yang digunakan untuk setiap komponen perangkat lunak " +"dan skor keandalannya." + +#: wpvulnerability-admin.php:3149 wpvulnerability-admin.php:3234 +#: wpvulnerability-admin.php:3558 wpvulnerability-adminms.php:3326 +#: wpvulnerability-adminms.php:3411 wpvulnerability-adminms.php:3752 +msgid "Component" +msgstr "Komponen" + +#: wpvulnerability-admin.php:3150 wpvulnerability-adminms.php:3327 +msgid "Version" +msgstr "Versi" + +#: wpvulnerability-admin.php:3151 wpvulnerability-adminms.php:3328 +msgid "Detection Method" +msgstr "Metode Deteksi" + +#: wpvulnerability-admin.php:3152 wpvulnerability-adminms.php:3329 +msgid "Reliability" +msgstr "Keandalan" + +#: wpvulnerability-admin.php:3164 wpvulnerability-adminms.php:3341 +msgid "Not detected" +msgstr "Tidak terdeteksi" + +#: wpvulnerability-admin.php:3220 wpvulnerability-adminms.php:3397 +msgid "Shell Execution Audit Logs" +msgstr "Log Audit Eksekusi Shell" + +#: wpvulnerability-admin.php:3221 wpvulnerability-adminms.php:3398 +msgid "" +"Complete audit trail of shell command executions for security monitoring." +msgstr "Jejak audit lengkap eksekusi perintah shell untuk pemantauan keamanan." + +#: wpvulnerability-admin.php:3226 wpvulnerability-adminms.php:3403 +msgid "No shell execution logs found." +msgstr "Tidak ditemukan log eksekusi shell." + +#: wpvulnerability-admin.php:3227 wpvulnerability-adminms.php:3404 +msgid "" +"Logs will appear here when shell commands are executed for software " +"detection." +msgstr "Log akan muncul di sini ketika perintah shell dijalankan untuk deteksi perangkat lunak." + +#: wpvulnerability-admin.php:3233 wpvulnerability-adminms.php:3410 +msgid "Time" +msgstr "Waktu" + +#: wpvulnerability-admin.php:3235 wpvulnerability-adminms.php:3412 +msgid "Command" +msgstr "Perintah" + +#: wpvulnerability-admin.php:3237 wpvulnerability-adminms.php:3414 +msgid "User" +msgstr "Pengguna" + +#: wpvulnerability-admin.php:3238 wpvulnerability-adminms.php:3415 +msgid "Output" +msgstr "Output" + +#. translators: %d: number of logs shown +#: wpvulnerability-admin.php:3302 wpvulnerability-adminms.php:3477 +#, php-format +msgid "Showing the %d most recent log entries." +msgstr "Menampilkan %d entri log terbaru." + +#: wpvulnerability-admin.php:3320 wpvulnerability-adminms.php:3565 +msgid "Invalid nonce." +msgstr "Nonce tidak valid." + +#: wpvulnerability-admin.php:3325 wpvulnerability-adminms.php:3570 +msgid "Insufficient permissions." +msgstr "Izin tidak mencukupi." + +#: wpvulnerability-admin.php:3331 wpvulnerability-adminms.php:3576 +msgid "No component specified." +msgstr "Tidak ada komponen yang ditentukan." + +#: wpvulnerability-admin.php:3366 wpvulnerability-adminms.php:3524 +msgid "Debug Information" +msgstr "Informasi Debug" + +#: wpvulnerability-admin.php:3368 wpvulnerability-adminms.php:3526 +msgid "This tab is only visible when WP_DEBUG is enabled. Use with caution." +msgstr "Tab ini hanya terlihat ketika WP_DEBUG diaktifkan. Gunakan dengan hati-hati." + +#: wpvulnerability-admin.php:3429 wpvulnerability-adminms.php:3623 +msgid "System Information" +msgstr "Informasi Sistem" + +#: wpvulnerability-admin.php:3433 wpvulnerability-adminms.php:3627 +msgid "WordPress Version" +msgstr "Versi WordPress" + +#: wpvulnerability-admin.php:3437 wpvulnerability-adminms.php:3631 +msgid "Multisite" +msgstr "Multisite" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "Yes" +msgstr "Ya" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "No" +msgstr "Tidak" + +#: wpvulnerability-admin.php:3441 wpvulnerability-adminms.php:3635 +msgid "Language" +msgstr "Bahasa" + +#: wpvulnerability-admin.php:3445 wpvulnerability-adminms.php:3639 +msgid "PHP Version" +msgstr "Versi PHP" + +#: wpvulnerability-admin.php:3449 wpvulnerability-adminms.php:3643 +msgid "PHP Extensions" +msgstr "Ekstensi PHP" + +#: wpvulnerability-admin.php:3460 wpvulnerability-adminms.php:3654 +msgid "PHP Memory Limit" +msgstr "Batas Memori PHP" + +#: wpvulnerability-admin.php:3464 wpvulnerability-adminms.php:3658 +msgid "Database" +msgstr "Basis Data" + +#: wpvulnerability-admin.php:3468 wpvulnerability-adminms.php:3662 +msgid "Web Server" +msgstr "Server Web" + +#: wpvulnerability-admin.php:3472 wpvulnerability-adminms.php:3666 +msgid "WP_DEBUG" +msgstr "WP_DEBUG" + +#: wpvulnerability-admin.php:3480 wpvulnerability-adminms.php:3674 +msgid "WP_DEBUG_LOG" +msgstr "WP_DEBUG_LOG" + +#: wpvulnerability-admin.php:3490 wpvulnerability-adminms.php:3684 +msgid "Path:" +msgstr "Jalur:" + +#. translators: %s: file size +#: wpvulnerability-admin.php:3499 wpvulnerability-adminms.php:3698 +#, php-format +msgid "Size: %s" +msgstr "Ukuran: %s" + +#: wpvulnerability-admin.php:3510 wpvulnerability-adminms.php:3704 +msgid "View Log File" +msgstr "Lihat File Log" + +#: wpvulnerability-admin.php:3516 wpvulnerability-adminms.php:3710 +msgid "Log file is not web-accessible (outside wp-content)" +msgstr "File log tidak dapat diakses melalui web (berada di luar wp-content)" + +#: wpvulnerability-admin.php:3522 wpvulnerability-adminms.php:3716 +msgid "Log file does not exist yet" +msgstr "File log belum ada" + +#: wpvulnerability-admin.php:3530 wpvulnerability-adminms.php:3724 +msgid "Plugin Version" +msgstr "Versi Plugin" + +#: wpvulnerability-admin.php:3554 wpvulnerability-adminms.php:3748 +msgid "Component Detection" +msgstr "Deteksi Komponen" + +#: wpvulnerability-admin.php:3560 wpvulnerability-adminms.php:3754 +msgid "Version Detected" +msgstr "Versi Terdeteksi" + +#: wpvulnerability-admin.php:3561 wpvulnerability-adminms.php:3755 +msgid "Analyzed" +msgstr "Dianalisis" + +#: wpvulnerability-admin.php:3562 wpvulnerability-adminms.php:3756 +msgid "Cache Status" +msgstr "Status Cache" + +#: wpvulnerability-admin.php:3622 wpvulnerability-adminms.php:3816 +msgid "Configuration Summary" +msgstr "Ringkasan Konfigurasi" + +#: wpvulnerability-admin.php:3626 wpvulnerability-adminms.php:3820 +msgid "Cache Duration" +msgstr "Durasi Cache" + +#: wpvulnerability-admin.php:3636 wpvulnerability-adminms.php:3830 +msgid "Log Retention" +msgstr "Retensi Log" + +#: wpvulnerability-admin.php:3646 wpvulnerability-adminms.php:3840 +msgid "Components Analyzed" +msgstr "Komponen yang Dianalisis" + +#: wpvulnerability-admin.php:3661 wpvulnerability-adminms.php:3855 +msgid "Notification Email" +msgstr "Email Notifikasi" + +#: wpvulnerability-admin.php:3682 wpvulnerability-adminms.php:3876 +msgid "Slack Webhook" +msgstr "Webhook Slack" + +#: wpvulnerability-admin.php:3692 wpvulnerability-admin.php:3712 +#: wpvulnerability-admin.php:3732 wpvulnerability-admin.php:3752 +#: wpvulnerability-adminms.php:3886 wpvulnerability-adminms.php:3906 +#: wpvulnerability-adminms.php:3926 wpvulnerability-adminms.php:3946 +msgid "Configured & Enabled" +msgstr "Dikonfigurasi & Diaktifkan" + +#: wpvulnerability-admin.php:3694 wpvulnerability-admin.php:3714 +#: wpvulnerability-admin.php:3734 wpvulnerability-admin.php:3754 +#: wpvulnerability-adminms.php:3888 wpvulnerability-adminms.php:3908 +#: wpvulnerability-adminms.php:3928 wpvulnerability-adminms.php:3948 +msgid "Configured (Disabled)" +msgstr "Dikonfigurasi (Dinonaktifkan)" + +#: wpvulnerability-admin.php:3696 wpvulnerability-admin.php:3716 +#: wpvulnerability-admin.php:3736 wpvulnerability-admin.php:3756 +#: wpvulnerability-adminms.php:3890 wpvulnerability-adminms.php:3910 +#: wpvulnerability-adminms.php:3930 wpvulnerability-adminms.php:3950 +msgid "Not configured" +msgstr "Belum dikonfigurasi" + +#: wpvulnerability-admin.php:3703 wpvulnerability-adminms.php:3897 +msgid "Teams Webhook" +msgstr "Webhook Teams" + +#: wpvulnerability-admin.php:3723 wpvulnerability-adminms.php:3917 +msgid "Discord Webhook" +msgstr "Webhook Discord" + +#: wpvulnerability-admin.php:3743 wpvulnerability-adminms.php:3937 +msgid "Telegram Bot" +msgstr "Bot Telegram" + +#: wpvulnerability-admin.php:3788 wpvulnerability-adminms.php:3982 +msgid "Cron Status" +msgstr "Status Cron" + +#: wpvulnerability-admin.php:3792 wpvulnerability-adminms.php:3986 +msgid "Update Database" +msgstr "Perbarui Basis Data" + +#. translators: %s: date and time +#: wpvulnerability-admin.php:3797 wpvulnerability-admin.php:3810 +#: wpvulnerability-adminms.php:3991 wpvulnerability-adminms.php:4004 +#, php-format +msgid "Next run: %s" +msgstr "Eksekusi berikutnya: %s" + +#: wpvulnerability-admin.php:3800 wpvulnerability-admin.php:3813 +#: wpvulnerability-adminms.php:3994 wpvulnerability-adminms.php:4007 +msgid "Not scheduled" +msgstr "Belum terjadwal" + +#: wpvulnerability-admin.php:3805 wpvulnerability-adminms.php:3999 +msgid "Send Notification" +msgstr "Kirim Notifikasi" + +#: wpvulnerability-admin.php:3826 wpvulnerability-adminms.php:4020 +msgid "Run Update Now" +msgstr "Jalankan Pembaruan Sekarang" + +#: wpvulnerability-admin.php:3834 wpvulnerability-adminms.php:4028 +msgid "Run Notification Now" +msgstr "Jalankan Notifikasi Sekarang" + +#: wpvulnerability-admin.php:3840 wpvulnerability-adminms.php:4034 +msgid "You do not have permission to run these actions." +msgstr "Anda tidak memiliki izin untuk menjalankan tindakan ini." + +#: wpvulnerability-admin.php:3859 wpvulnerability-adminms.php:4053 +msgid "API Testing" +msgstr "Pengujian API" + +#: wpvulnerability-admin.php:3862 wpvulnerability-adminms.php:4056 +msgid "" +"Test API connectivity for each component. Click a button to send a test " +"request." +msgstr "" +"Uji konektivitas API untuk setiap komponen. Klik tombol untuk mengirim " +"permintaan pengujian." + +#. translators: %s: component name +#: wpvulnerability-admin.php:3869 wpvulnerability-adminms.php:4063 +#, php-format +msgid "Test %s" +msgstr "Uji %s" + +#: wpvulnerability-admin.php:3884 wpvulnerability-adminms.php:4078 +msgid "Testing..." +msgstr "Menguji..." + +#: wpvulnerability-admin.php:3900 wpvulnerability-adminms.php:4094 +msgid "HTTP Code:" +msgstr "Kode HTTP:" + +#: wpvulnerability-admin.php:3901 wpvulnerability-adminms.php:4095 +msgid "Response Time:" +msgstr "Waktu Respons:" + +#: wpvulnerability-admin.php:3903 wpvulnerability-adminms.php:4097 +msgid "Response Preview" +msgstr "Pratinjau Respons" + +#: wpvulnerability-admin.php:3910 wpvulnerability-admin.php:3914 +#: wpvulnerability-adminms.php:4104 wpvulnerability-adminms.php:4108 +msgid "Test" +msgstr "Uji" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "Error:" +msgstr "Kesalahan:" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "AJAX request failed." +msgstr "Permintaan AJAX gagal." + +#: wpvulnerability-admin.php:3922 wpvulnerability-adminms.php:4116 +msgid "You do not have permission to test API connectivity." +msgstr "Anda tidak memiliki izin untuk menguji konektivitas API." + +#: wpvulnerability-admin.php:3943 wpvulnerability-adminms.php:4137 +msgid "Database Options Viewer" +msgstr "Penampil Opsi Basis Data" + +#: wpvulnerability-admin.php:3944 wpvulnerability-adminms.php:4138 +msgid "View the raw data stored in WordPress options." +msgstr "Lihat data mentah yang tersimpan di opsi WordPress." + +#: wpvulnerability-admin.php:3950 wpvulnerability-adminms.php:4144 +msgid "Select an option..." +msgstr "Pilih opsi..." + +#: wpvulnerability-admin.php:3969 wpvulnerability-adminms.php:4163 +msgid "Option not found or empty." +msgstr "Opsi tidak ditemukan atau kosong." + +#: wpvulnerability-admin.php:3987 wpvulnerability-adminms.php:4182 +msgid "Quick Actions" +msgstr "Tindakan Cepat" + +#: wpvulnerability-admin.php:3988 wpvulnerability-adminms.php:4183 +msgid "Perform debugging actions. Use with caution." +msgstr "Lakukan tindakan debug. Gunakan dengan hati-hati." + +#: wpvulnerability-admin.php:3992 wpvulnerability-adminms.php:4187 +msgid "Are you sure you want to clear all caches?" +msgstr "Apakah Anda yakin ingin membersihkan semua cache?" + +#: wpvulnerability-admin.php:3996 wpvulnerability-adminms.php:4191 +msgid "Clear All Caches" +msgstr "Bersihkan Semua Cache" + +#: wpvulnerability-admin.php:4000 wpvulnerability-adminms.php:4195 +msgid "Are you sure you want to reset signatures?" +msgstr "Apakah Anda yakin ingin mereset tanda tangan?" + +#: wpvulnerability-admin.php:4004 wpvulnerability-adminms.php:4199 +msgid "Reset Signatures" +msgstr "Reset Tanda Tangan" + +#: wpvulnerability-admin.php:4012 wpvulnerability-adminms.php:4207 +msgid "Export Debug Info" +msgstr "Ekspor Informasi Debug" + +#: wpvulnerability-admin.php:4018 wpvulnerability-adminms.php:4213 +msgid "You do not have permission to perform these actions." +msgstr "Anda tidak memiliki izin untuk melakukan tindakan ini." + +#: wpvulnerability-adminms.php:101 wpvulnerability-adminms.php:199 +msgid "Settings saved." +msgstr "Pengaturan disimpan." + +#: wpvulnerability-adminms.php:277 +msgid "WPVulnerability cron events have been repaired across the network." +msgstr "Acara cron WPVulnerability telah diperbaiki di seluruh jaringan." + +#: wpvulnerability-adminms.php:3512 +msgid "You do not have permission to access this page." +msgstr "Anda tidak memiliki izin untuk mengakses halaman ini." + +#. translators: 1: core version +#: wpvulnerability-core.php:33 +#, php-format +msgid "" +"WordPress %1$s has a known vulnerability that may be affecting your " +"installed version." +msgstr "" +"WordPress %1$s memiliki kerentanan yang diketahui yang mungkin memengaruhi " +"versi yang Anda instal." + +#: wpvulnerability-core.php:115 wpvulnerability-plugins.php:207 +#: wpvulnerability-process.php:335 wpvulnerability-process.php:443 +#: wpvulnerability-process.php:529 wpvulnerability-themes.php:173 +#: wpvulnerability-themes.php:469 +msgid "Actively exploited" +msgstr "Sedang dieksploitasi secara aktif" + +#: wpvulnerability-core.php:122 wpvulnerability-plugins.php:214 +#: wpvulnerability-process.php:342 wpvulnerability-process.php:450 +#: wpvulnerability-themes.php:180 wpvulnerability-themes.php:476 +msgid "Public exploit" +msgstr "Eksploitasi publik" + +#: wpvulnerability-core.php:125 wpvulnerability-plugins.php:217 +#: wpvulnerability-process.php:345 wpvulnerability-process.php:453 +#: wpvulnerability-themes.php:183 wpvulnerability-themes.php:479 +msgid "Automatable" +msgstr "Dapat diotomatisasi" + +#: wpvulnerability-core.php:139 wpvulnerability-plugins.php:245 +#: wpvulnerability-process.php:371 wpvulnerability-process.php:469 +#: wpvulnerability-process.php:544 wpvulnerability-themes.php:211 +#: wpvulnerability-themes.php:503 +msgid "References:" +msgstr "Referensi:" + +#: wpvulnerability-debug.php:399 +msgid "Invalid component specified." +msgstr "Komponen yang ditentukan tidak valid." + +#: wpvulnerability-debug.php:423 +msgid "Version not detected for this component." +msgstr "Versi tidak terdeteksi untuk komponen ini." + +#: wpvulnerability-debug.php:453 +msgid "API request successful." +msgstr "Permintaan API berhasil." + +#. translators: %d: HTTP status code +#: wpvulnerability-debug.php:469 +#, php-format +msgid "API returned HTTP code %d." +msgstr "API mengembalikan kode HTTP %d." + +#: wpvulnerability-general.php:355 +msgid "WPVulnerability Logs" +msgstr "Log WPVulnerability" + +#: wpvulnerability-general.php:356 +msgid "WPVulnerability Log" +msgstr "Log WPVulnerability" + +#: wpvulnerability-general.php:1873 wpvulnerability-general.php:1874 +msgid "Low" +msgstr "Rendah" + +#: wpvulnerability-general.php:1875 wpvulnerability-general.php:1876 +msgid "Medium" +msgstr "Sedang" + +#: wpvulnerability-general.php:1877 wpvulnerability-general.php:1878 +msgid "High" +msgstr "Tinggi" + +#: wpvulnerability-general.php:1879 wpvulnerability-general.php:1880 +msgid "Critical" +msgstr "Kritis" + +#: wpvulnerability-general.php:2684 +msgid "WPVulnerability Shell Logs" +msgstr "Log Shell WPVulnerability" + +#: wpvulnerability-general.php:2685 +msgid "WPVulnerability Shell Log" +msgstr "Log Shell WPVulnerability" + +#: wpvulnerability-notifications.php:30 +msgid "Every week" +msgstr "Setiap minggu" + +#: wpvulnerability-notifications.php:57 +msgid "Every day" +msgstr "Setiap hari" + +#: wpvulnerability-notifications.php:84 +msgid "Invalid request." +msgstr "Permintaan tidak valid." + +#: wpvulnerability-notifications.php:104 +msgid "You have unsubscribed from WPVulnerability notifications." +msgstr "Anda telah berhenti berlangganan notifikasi WPVulnerability." + +#. translators: %1$s the website of Database, %2$s database site name. +#: wpvulnerability-notifications.php:289 +#, php-format +msgid "" +"Learn more about the WordPress Vulnerability Database API at %2$s" +msgstr "" +"Pelajari lebih lanjut tentang WordPress Vulnerability Database API di %2$s" + +#. translators: %1$s unsubscribe URL. +#: wpvulnerability-notifications.php:300 +#, php-format +msgid "" +"Want to stop receiving these alerts? Unsubscribe or " +"change the email frequency to Never in the WPVulnerability " +"settings." +msgstr "" +"Ingin berhenti menerima pemberitahuan ini? Berhenti " +"berlangganan atau ubah frekuensi email menjadi Tidak Pernah" +" di pengaturan WPVulnerability." + +#: wpvulnerability-notifications.php:595 +msgid "No vulnerabilities found" +msgstr "Tidak ditemukan kerentanan" + +#: wpvulnerability-notifications.php:596 +msgid "This is likely a test. The site does not have vulnerabilities." +msgstr "Ini kemungkinan adalah pengujian. Situs ini tidak memiliki kerentanan." + +#: wpvulnerability-notifications.php:601 +msgid "Core vulnerabilities" +msgstr "Kerentanan inti" + +#: wpvulnerability-notifications.php:607 +msgid "Plugins vulnerabilities" +msgstr "Kerentanan plugin" + +#: wpvulnerability-notifications.php:613 +msgid "Themes vulnerabilities" +msgstr "Kerentanan tema" + +#: wpvulnerability-notifications.php:619 +msgid "PHP vulnerabilities" +msgstr "Kerentanan PHP" + +#: wpvulnerability-notifications.php:625 +msgid "Apache HTTPD vulnerabilities" +msgstr "Kerentanan Apache HTTPD" + +#: wpvulnerability-notifications.php:631 +msgid "Nginx vulnerabilities" +msgstr "Kerentanan nginx" + +#: wpvulnerability-notifications.php:637 +msgid "MariaDB vulnerabilities" +msgstr "Kerentanan MariaDB" + +#: wpvulnerability-notifications.php:643 +msgid "MySQL vulnerabilities" +msgstr "Kerentanan MySQL" + +#: wpvulnerability-notifications.php:649 +msgid "ImageMagick vulnerabilities" +msgstr "Kerentanan ImageMagick" + +#: wpvulnerability-notifications.php:655 +msgid "curl vulnerabilities" +msgstr "Kerentanan curl" + +#: wpvulnerability-notifications.php:661 +msgid "memcached vulnerabilities" +msgstr "Kerentanan memcached" + +#: wpvulnerability-notifications.php:667 +msgid "Redis vulnerabilities" +msgstr "Kerentanan Redis" + +#: wpvulnerability-notifications.php:673 +msgid "SQLite vulnerabilities" +msgstr "Kerentanan SQLite" + +#. translators: Site name. +#: wpvulnerability-notifications.php:696 +#, php-format +msgid "Vulnerability found: %s" +msgstr "Kerentanan ditemukan: %s" + +#: wpvulnerability-notifications.php:700 +msgid "Vulnerability found" +msgstr "Kerentanan ditemukan" + +#. translators: 1: Plugin name +#. translators: 1: theme name +#: wpvulnerability-plugins.php:116 wpvulnerability-themes.php:82 +#, php-format +msgid "" +"%1$s has a known vulnerability that may be affecting your installed version." +msgstr "" +"%1$s memiliki kerentanan yang diketahui yang mungkin memengaruhi versi yang " +"Anda instal." + +#: wpvulnerability-plugins.php:230 wpvulnerability-process.php:358 +msgid "This plugin is closed. Please replace it with another." +msgstr "Plugin ini telah ditutup. Silakan ganti dengan plugin lain." + +#: wpvulnerability-plugins.php:233 wpvulnerability-process.php:361 +msgid "" +"This vulnerability appears to be unpatched. Stay tuned for upcoming plugin " +"updates." +msgstr "" +"Kerentanan ini tampaknya belum dipatch. Pantau terus pembaruan plugin yang " +"akan datang." + +#: wpvulnerability-plugins.php:570 +msgid "It hasn't been updated in over a year." +msgstr "Plugin ini belum diperbarui selama lebih dari satu tahun." + +#: wpvulnerability-plugins.php:576 +msgid "It may no longer be available (closed?)." +msgstr "Plugin ini mungkin tidak lagi tersedia (ditutup?)." + +#: wpvulnerability-plugins.php:614 wpvulnerability-plugins.php:621 +msgid "Last updated on" +msgstr "Terakhir diperbarui pada" + +#. translators: the number of vulnerabilities. +#: wpvulnerability-plugins.php:764 wpvulnerability-themes.php:704 +#, php-format +msgid "Vulnerabilities (%d)" +msgstr "Kerentanan (%d)" + +#. translators: %s: software name. +#: wpvulnerability-process.php:601 +#, php-format +msgid "%s running" +msgstr "%s berjalan" + +#: wpvulnerability-process.php:611 wpvulnerability-process.php:792 +msgid "End of Life" +msgstr "Akhir Masa Dukungan" + +#: wpvulnerability-process.php:613 wpvulnerability-process.php:618 +msgid "End of life:" +msgstr "Akhir masa dukungan:" + +#: wpvulnerability-process.php:616 +msgid "Supported" +msgstr "Didukung" + +#: wpvulnerability-process.php:652 +msgid "Plugin" +msgstr "Plugin" + +#: wpvulnerability-process.php:721 +msgid "Theme" +msgstr "Tema" + +#. translators: %s: end-of-life date +#: wpvulnerability-process.php:790 +#, php-format +msgid "End of life: %s" +msgstr "Akhir masa dukungan: %s" + +#: wpvulnerability-process.php:795 +msgid "EOL" +msgstr "EOL" + +#: wpvulnerability-run.php:30 +msgid "Network Settings" +msgstr "Pengaturan Jaringan" + +#: wpvulnerability-run.php:731 wpvulnerability-run.php:781 +#: wpvulnerability-run.php:791 wpvulnerability-run.php:836 +msgid "Vulnerabilities" +msgstr "Kerentanan" + +#: wpvulnerability-schedule.php:30 +msgid "Every 6 hours" +msgstr "Setiap 6 jam" + +#: wpvulnerability-schedule.php:303 +msgid "Database updates" +msgstr "Pembaruan basis data" + +#: wpvulnerability-schedule.php:309 +msgid "Log cleanup" +msgstr "Pembersihan log" + +#: wpvulnerability-schedule.php:439 +msgid "" +"Notifications are scheduled, but settings currently disable them. Please " +"review the notifications tab." +msgstr "" +"Notifikasi telah terjadwal, tetapi pengaturan saat ini menonaktifkannya. " +"Silakan tinjau tab notifikasi." + +#: wpvulnerability-schedule.php:442 +msgid "This event should not be scheduled for this site." +msgstr "Acara ini tidak seharusnya dijadwalkan untuk situs ini." + +#: wpvulnerability-schedule.php:446 +msgid "Not expected for this site." +msgstr "Tidak diharapkan untuk situs ini." + +#: wpvulnerability-schedule.php:450 +msgid "No instances found." +msgstr "Tidak ditemukan instansi." + +#: wpvulnerability-schedule.php:456 +msgid "Scheduled with an unexpected interval." +msgstr "Dijadwalkan dengan interval yang tidak terduga." + +#: wpvulnerability-schedule.php:460 +msgid "Multiple instances detected." +msgstr "Beberapa instansi terdeteksi." + +#: wpvulnerability-schedule.php:465 +msgid "Scheduled as expected." +msgstr "Dijadwalkan sesuai yang diharapkan." + +#: wpvulnerability-sitehealth.php:22 +msgid "There aren't plugins vulnerabilities" +msgstr "Tidak ada kerentanan pada plugin" + +#: wpvulnerability-sitehealth.php:30 +msgid "Shows possible vulnerabilities that exist in installed plugins." +msgstr "Menampilkan kemungkinan kerentanan yang ada pada plugin yang diinstal." + +#. translators: Number of plugins vulnerabilities. +#: wpvulnerability-sitehealth.php:43 +#, php-format +msgid "There is %d plugin with vulnerabilities" +msgid_plural "There are %d plugins with vulnerabilities" +msgstr[0] "Terdapat %d plugin dengan kerentanan" + +#: wpvulnerability-sitehealth.php:49 +msgid "" +"We've detected potential vulnerabilities in installed plugins. Please check " +"them and keep them updated." +msgstr "" +"Kami telah mendeteksi potensi kerentanan pada plugin yang diinstal. Silakan " +"periksa dan perbarui ke versi terbaru." + +#: wpvulnerability-sitehealth.php:57 +msgid "Update plugins" +msgstr "Perbarui plugin" + +#: wpvulnerability-sitehealth.php:74 +msgid "There aren't themes vulnerabilities" +msgstr "Tidak ada kerentanan pada tema" + +#: wpvulnerability-sitehealth.php:82 +msgid "Shows possible vulnerabilities that exist in installed themes." +msgstr "Menampilkan kemungkinan kerentanan yang ada pada tema yang diinstal." + +#. translators: Number of themes vulnerabilities. +#: wpvulnerability-sitehealth.php:95 +#, php-format +msgid "There is %d theme with vulnerabilities" +msgid_plural "There are %d themes with vulnerabilities" +msgstr[0] "Terdapat %d tema dengan kerentanan" + +#: wpvulnerability-sitehealth.php:101 +msgid "" +"We've detected potential vulnerabilities in installed themes. Please check " +"them and keep them updated." +msgstr "" +"Kami telah mendeteksi potensi kerentanan pada tema yang diinstal. Silakan " +"periksa dan perbarui ke versi terbaru." + +#: wpvulnerability-sitehealth.php:109 +msgid "Update themes" +msgstr "Perbarui tema" + +#: wpvulnerability-sitehealth.php:126 +msgid "There aren't WordPress vulnerabilities" +msgstr "Tidak ada kerentanan pada WordPress" + +#: wpvulnerability-sitehealth.php:134 +msgid "Shows possible vulnerabilities existing in the WordPress core." +msgstr "Menampilkan kemungkinan kerentanan yang ada pada inti WordPress." + +#. translators: Number of core vulnerabilities. +#: wpvulnerability-sitehealth.php:147 +#, php-format +msgid "There is %d core vulnerability" +msgid_plural "There are %d core vulnerabilities" +msgstr[0] "Terdapat %d kerentanan inti" + +#: wpvulnerability-sitehealth.php:153 +msgid "" +"We've detected potential vulnerabilities in this WordPress installation. " +"Please check them and keep your installation updated." +msgstr "" +"Kami telah mendeteksi potensi kerentanan pada instalasi WordPress ini. " +"Silakan periksa dan perbarui instalasi Anda." + +#: wpvulnerability-sitehealth.php:161 +msgid "Update WordPress" +msgstr "Perbarui WordPress" + +#: wpvulnerability-sitehealth.php:180 +msgid "Nginx" +msgstr "Nginx" + +#: wpvulnerability-sitehealth.php:189 +msgid "Invalid software type" +msgstr "Jenis perangkat lunak tidak valid" + +#: wpvulnerability-sitehealth.php:192 +msgid "Error" +msgstr "Kesalahan" + +#: wpvulnerability-sitehealth.php:197 +msgid "The specified software type is not valid." +msgstr "Jenis perangkat lunak yang ditentukan tidak valid." + +#. translators: name of the software. +#: wpvulnerability-sitehealth.php:207 +#, php-format +msgid "There aren't %s vulnerabilities" +msgstr "Tidak ada kerentanan pada %s" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:216 +#, php-format +msgid "Shows possible vulnerabilities existing in %s." +msgstr "Menampilkan kemungkinan kerentanan yang ada pada %s." + +#. translators: Software and number of vulnerabilities. +#: wpvulnerability-sitehealth.php:229 +#, php-format +msgid "There is %1$d %2$s vulnerability" +msgid_plural "There are %1$d %2$s vulnerabilities" +msgstr[0] "Terdapat %1$d kerentanan %2$s" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:237 +#, php-format +msgid "" +"We've detected potential vulnerabilities in %s. Please check them and keep " +"your installation updated." +msgstr "" +"Kami telah mendeteksi potensi kerentanan pada %s. Silakan periksa dan " +"perbarui instalasi Anda." + +#: wpvulnerability-sitehealth.php:246 +msgid "How to update PHP" +msgstr "Cara memperbarui PHP" + +#: wpvulnerability-sitehealth.php:386 +msgid "WPVulnerability Core" +msgstr "WPVulnerability Inti" + +#: wpvulnerability-sitehealth.php:394 +msgid "WPVulnerability Themes" +msgstr "WPVulnerability Tema" + +#: wpvulnerability-sitehealth.php:402 +msgid "WPVulnerability Plugins" +msgstr "WPVulnerability Plugin" + +#: wpvulnerability-sitehealth.php:410 +msgid "WPVulnerability PHP" +msgstr "WPVulnerability PHP" + +#: wpvulnerability-sitehealth.php:418 +msgid "WPVulnerability Apache HTTPD" +msgstr "WPVulnerability Apache HTTPD" + +#: wpvulnerability-sitehealth.php:426 +msgid "WPVulnerability Nginx" +msgstr "WPVulnerability Nginx" + +#: wpvulnerability-sitehealth.php:434 +msgid "WPVulnerability MariaDB" +msgstr "WPVulnerability MariaDB" + +#: wpvulnerability-sitehealth.php:442 +msgid "WPVulnerability MySQL" +msgstr "WPVulnerability MySQL" + +#: wpvulnerability-sitehealth.php:450 +msgid "WPVulnerability ImageMagick" +msgstr "WPVulnerability ImageMagick" + +#: wpvulnerability-sitehealth.php:458 +msgid "WPVulnerability curl" +msgstr "WPVulnerability curl" + +#: wpvulnerability-sitehealth.php:466 +msgid "WPVulnerability memcached" +msgstr "WPVulnerability memcached" + +#: wpvulnerability-sitehealth.php:474 +msgid "WPVulnerability redis" +msgstr "WPVulnerability redis" + +#: wpvulnerability-sitehealth.php:482 +msgid "WPVulnerability sqlite" +msgstr "WPVulnerability sqlite" + +#: wpvulnerability-themes.php:196 wpvulnerability-themes.php:492 +msgid "This theme is closed. Please replace it with another." +msgstr "Tema ini telah ditutup. Silakan ganti dengan tema lain." + +#: wpvulnerability-themes.php:199 wpvulnerability-themes.php:495 +msgid "" +"This vulnerability appears to be unpatched. Stay tuned for upcoming theme " +"updates." +msgstr "" +"Kerentanan ini tampaknya belum dipatch. Pantau terus pembaruan tema yang " +"akan datang." + +#: wpvulnerability-themes.php:391 +msgid "" +"This theme has known vulnerabilities that may be affecting your installed " +"version." +msgstr "" +"Tema ini memiliki kerentanan yang diketahui yang mungkin memengaruhi versi " +"yang Anda instal." diff --git a/languages/wpvulnerability-it.l10n.php b/languages/wpvulnerability-it.l10n.php new file mode 100644 index 0000000..47e6c8c --- /dev/null +++ b/languages/wpvulnerability-it.l10n.php @@ -0,0 +1,2 @@ +NULL,'plural-forms'=>'nplurals=2; plural=n != 1;','language'=>'it','project-id-version'=>'Plugins - WPVulnerability - Development (trunk)','pot-creation-date'=>'2026-05-27T16:32:22+00:00','po-revision-date'=>'2024-02-05 09:15:59+0000','x-generator'=>'GlotPress/4.0.3','messages'=>['WPVulnerability'=>'WPVulnerability','https://www.wpvulnerability.com/plugin/'=>'https://www.wpvulnerability.com/plugin/','Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API.'=>'Ricevi informazioni sulle possibili vulnerabilità del tuo WordPress tramite l\'API WordPress Vulnerability Database.','ROBOTSTXT'=>'ROBOTSTXT','https://www.robotstxt.es/'=>'https://www.robotstxt.es/','This command requires a WordPress administrator. Run with --user=.'=>'Questo comando richiede un amministratore WordPress. Esegui con --user=.','No core vulnerabilities found.'=>'Nessuna vulnerabilità del core trovata.','No plugin vulnerabilities found.'=>'Nessuna vulnerabilità dei plugin trovata.','No theme vulnerabilities found.'=>'Nessuna vulnerabilità dei temi trovata.','No %s vulnerabilities found.'=>'Nessuna vulnerabilità di %s trovata.','Data from source has been reloaded.'=>'I dati dalla fonte sono stati ricaricati.','You do not have permission to reload data.'=>'Non hai il permesso di ricaricare i dati.','Test email has been sent.'=>'L\'email di prova è stata inviata.','Test email has failed. Please, check your email settings.'=>'L\'invio dell\'email di prova è fallito. Controlla le impostazioni email.','You do not have permission to send test emails.'=>'Non hai il permesso di inviare email di prova.','WPVulnerability cron events have been repaired.'=>'Gli eventi cron di WPVulnerability sono stati riparati.','You do not have permission to repair cron events.'=>'Non hai il permesso di riparare gli eventi cron.','All logs have been deleted.'=>'Tutti i log sono stati eliminati.','You do not have permission to delete logs.'=>'Non hai il permesso di eliminare i log.','Uninstall preference saved.'=>'Preferenza di disinstallazione salvata.','WPVulnerability has been reset to defaults and reloaded.'=>'WPVulnerability è stato ripristinato ai valori predefiniti e ricaricato.','You do not have permission to reset WPVulnerability.'=>'Non hai il permesso di ripristinare WPVulnerability.','All caches have been cleared.'=>'Tutte le cache sono state svuotate.','You do not have permission to clear caches.'=>'Non hai il permesso di svuotare le cache.','Plugin and theme signatures have been reset.'=>'Le firme dei plugin e dei temi sono state ripristinate.','You do not have permission to reset signatures.'=>'Non hai il permesso di ripristinare le firme.','You do not have permission to export debug information.'=>'Non hai il permesso di esportare le informazioni di debug.','Database update has been executed.'=>'L\'aggiornamento del database è stato eseguito.','You do not have permission to run database updates.'=>'Non hai il permesso di eseguire aggiornamenti del database.','Notification has been sent.'=>'La notifica è stata inviata.','Notification sending failed.'=>'Invio della notifica fallito.','You do not have permission to send notifications.'=>'Non hai il permesso di inviare notifiche.','Notifications'=>'Notifiche','Analysis'=>'Analisi','Logs'=>'Log','Security'=>'Sicurezza','Tools'=>'Strumenti','Debug'=>'Debug','About'=>'Informazioni','Notification Settings'=>'Impostazioni notifiche','Configure how and when you want to receive vulnerability notifications.'=>'Configura come e quando vuoi ricevere le notifiche sulle vulnerabilità.','Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software.'=>'Rimani informato sulle vulnerabilità di sicurezza nella tua installazione WordPress, plugin, temi e software del server.','Cache Expiration Time'=>'Durata scadenza cache','FORCED'=>'FORZATO','How long to cache vulnerability data before refreshing from the API.'=>'Per quanto tempo mantenere i dati sulle vulnerabilità in cache prima di aggiornarli dall\'API.','%d hour'=>'%d ora' . "\0" . '%d ore','You can force the cache time via wp-config.php constant. Learn more →'=>'Puoi forzare il tempo di cache tramite una costante in wp-config.php. Scopri di più →','Notification Frequency'=>'Frequenza notifiche','Choose how often you want to receive vulnerability notifications.'=>'Scegli con quale frequenza vuoi ricevere le notifiche sulle vulnerabilità.','Never - Disable automatic notifications'=>'Mai - Disabilita le notifiche automatiche','Daily - Receive notifications every day'=>'Quotidianamente - Ricevi notifiche ogni giorno','Weekly - Receive notifications once a week'=>'Settimanalmente - Ricevi notifiche una volta a settimana','Day:'=>'Giorno:','Monday'=>'Lunedì','Tuesday'=>'Martedì','Wednesday'=>'Mercoledì','Thursday'=>'Giovedì','Friday'=>'Venerdì','Saturday'=>'Sabato','Sunday'=>'Domenica','Time:'=>'Orario:','(24-hour format, server timezone)'=>'(formato 24 ore, fuso orario del server)','Notification Channels'=>'Canali di notifica','Select where you want to receive notifications.'=>'Seleziona dove vuoi ricevere le notifiche.','Email'=>'Email','Email Addresses (separated by commas):'=>'Indirizzi email (separati da virgole):','Default:'=>'Predefinito:','Slack'=>'Slack','Slack Webhook URL:'=>'URL Webhook Slack:','Learn how to create a Slack incoming webhook →'=>'Scopri come creare un webhook in entrata Slack →','Microsoft Teams'=>'Microsoft Teams','Teams Webhook URL:'=>'URL Webhook Teams:','Learn how to create a Teams incoming webhook →'=>'Scopri come creare un webhook in entrata Teams →','Discord'=>'Discord','Discord Webhook URL:'=>'URL Webhook Discord:','Learn how to create a Discord webhook →'=>'Scopri come creare un webhook Discord →','Telegram'=>'Telegram','Telegram Bot Token:'=>'Token Bot Telegram:','Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Formato: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','Telegram Chat ID:'=>'ID Chat Telegram:','Learn how to create a Telegram bot and get Chat ID →'=>'Scopri come creare un bot Telegram e ottenere l\'ID Chat →','Save Notification Settings'=>'Salva impostazioni notifiche','WordPress Components'=>'Componenti WordPress','WordPress Core'=>'Core WordPress','Plugins'=>'Plugin','Themes'=>'Temi','Software & Languages'=>'Software e linguaggi','PHP'=>'PHP','Web Servers'=>'Server web','Apache HTTPD'=>'Apache HTTPD','nginx'=>'nginx','Databases'=>'Database','MariaDB'=>'MariaDB','MySQL'=>'MySQL','SQLite'=>'SQLite','Additional Tools'=>'Strumenti aggiuntivi','ImageMagick'=>'ImageMagick','curl'=>'curl','memcached'=>'memcached','Redis'=>'Redis','Component Analysis Settings'=>'Impostazioni analisi componenti','Enable or disable vulnerability analysis for specific components.'=>'Abilita o disabilita l\'analisi delle vulnerabilità per componenti specifici.','Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red.'=>'Seleziona i componenti che vuoi NASCONDERE dalle scansioni e dai report sulle vulnerabilità. I componenti non selezionati saranno analizzati attivamente. I componenti con analisi attiva sono mostrati in verde, quelli nascosti in rosso.','Hidden (forced by constant)'=>'Nascosto (forzato dalla costante)','🔴 Analysis disabled'=>'🔴 Analisi disabilitata','🟢 Analysis active'=>'🟢 Analisi attiva','Tip:'=>'Suggerimento:','You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →'=>'Puoi forzare la disabilitazione dei componenti tramite costanti in wp-config.php. Scopri di più sulla disabilitazione forzata dei controlli →','Save Analysis Settings'=>'Salva impostazioni analisi','« Previous'=>'« Precedente','Next »'=>'Successivo »','Log entry not found or has been removed.'=>'Voce di log non trovata o rimossa.','Unable to load the requested log entry.'=>'Impossibile caricare la voce di log richiesta.','Log Configuration'=>'Configurazione log','Total Logs'=>'Log totali','Retention Period'=>'Periodo di conservazione','Disabled'=>'Disabilitato','%d day'=>'%d giorno' . "\0" . '%d giorni','Log Retention Period'=>'Periodo di conservazione log','None (Disabled)'=>'Nessuno (Disabilitato)','This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant.'=>'Questo valore è imposto dalla costante WPVULNERABILITY_LOG_RETENTION_DAYS.','Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted.'=>'Scegli per quanto tempo WPVulnerability deve conservare i log delle risposte API. I log più vecchi vengono eliminati automaticamente.','Save Configuration'=>'Salva configurazione','Log retention is currently disabled.'=>'La conservazione dei log è attualmente disabilitata.','API responses are not being saved.'=>'Le risposte API non vengono salvate.','Log Details'=>'Dettagli log','Date'=>'Data','API Endpoint'=>'Endpoint API','API Response'=>'Risposta API','Back to Logs'=>'Torna ai log','No logs available'=>'Nessun log disponibile','API response logs will appear here once the vulnerability scanner runs.'=>'I log delle risposte API appariranno qui dopo l\'esecuzione dello scanner di vulnerabilità.','API Response Logs'=>'Log risposte API','Show:'=>'Mostra:','Apply'=>'Applica','Showing %1$s–%2$s of %3$s'=>'Visualizzazione %1$s–%2$s di %3$s','Actions'=>'Azioni','View'=>'Visualizza','Danger Zone'=>'Zona pericolosa','Permanently delete all API response logs. This action cannot be undone.'=>'Elimina definitivamente tutti i log delle risposte API. Questa azione non può essere annullata.','Are you sure you want to delete all logs? This action cannot be undone.'=>'Sei sicuro di voler eliminare tutti i log? Questa azione non può essere annullata.','Delete All Logs'=>'Elimina tutti i log','Reload Data from API'=>'Ricarica dati dall\'API','Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information.'=>'Ricarica tutte le informazioni su Core, Plugin, Temi e altri componenti direttamente dall\'API per avere dati aggiornati. Questo svuoterà la cache e recupererà informazioni aggiornate sulle vulnerabilità.','Reload Data'=>'Ricarica dati','Test Email Notifications'=>'Testa notifiche email','Send a test email notification with current vulnerability data to verify your email configuration is working correctly.'=>'Invia una notifica email di prova con i dati attuali sulle vulnerabilità per verificare che la configurazione email funzioni correttamente.','From address (configured via constant):'=>'Indirizzo mittente (configurato tramite costante):','From address (default):'=>'Indirizzo mittente (predefinito):','Learn how to customize the email sender address →'=>'Scopri come personalizzare l\'indirizzo mittente email →','Send Test Email'=>'Invia email di prova','WP-Cron Status'=>'Stato WP-Cron','View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly.'=>'Visualizza e gestisci gli eventi pianificati di WP-Cron. Confronta le pianificazioni previste con i cron job effettivi per assicurarti che le attività automatizzate vengano eseguite correttamente.','No cron data available.'=>'Nessun dato cron disponibile.','Hook'=>'Hook','Expected'=>'Previsto','Found'=>'Trovato','Next Run'=>'Prossima esecuzione','Status'=>'Stato','Not expected'=>'Non previsto','None'=>'Nessuno','OK'=>'OK','⚠️ Unexpected WPVulnerability Events'=>'⚠️ Eventi WPVulnerability imprevisti','No interval'=>'Nessun intervallo','Next:'=>'Prossimo:','Repair Cron Events'=>'Ripara eventi cron','Uninstall Data'=>'Dati disinstallazione','By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall.'=>'Per impostazione predefinita, tutti i dati del plugin vengono preservati quando WPVulnerability viene eliminato. Abilita l\'opzione seguente solo se vuoi che tutte le opzioni, i log e i dati in cache vengano rimossi definitivamente alla disinstallazione.','Delete all plugin data on uninstall'=>'Elimina tutti i dati del plugin alla disinstallazione','Default: unchecked (data preserved). Check only if you want a clean removal.'=>'Predefinito: non selezionato (dati preservati). Seleziona solo se vuoi una rimozione pulita.','Save preference'=>'Salva preferenza','Reset WPVulnerability'=>'Reimposta WPVulnerability','Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API.'=>'Elimina tutte le impostazioni di WPVulnerability, i dati in cache, i log e gli eventi pianificati, quindi ripristina i valori predefiniti e ricarica i dati dall\'API.','This action cannot be undone.'=>'Questa azione non può essere annullata.','Are you sure you want to reset all WPVulnerability data? This action cannot be undone.'=>'Sei sicuro di voler reimpostare tutti i dati di WPVulnerability? Questa azione non può essere annullata.','Reset Plugin'=>'Reimposta plugin','Vulnerability Database Statistics'=>'Statistiche database vulnerabilità','%s vulnerability'=>'%s vulnerabilità' . "\0" . '%s vulnerabilità','(%s product)'=>'(%s prodotto)' . "\0" . '(%s prodotti)','No data'=>'Nessun dato','Database last updated: %s'=>'Database aggiornato l\'ultima volta: %s','Intelligence Sources'=>'Fonti di intelligence','Number of vulnerabilities contributed by each intelligence source.'=>'Numero di vulnerabilità contribuite da ciascuna fonte di intelligence.','Source'=>'Fonte','Core'=>'Core','Sponsors'=>'Sponsor','No sponsor data available.'=>'Nessun dato sponsor disponibile.','Contributors'=>'Contributori','No contributor data available.'=>'Nessun dato contributori disponibile.','You do not have sufficient permissions to access this page.'=>'Non hai i permessi sufficienti per accedere a questa pagina.','WPVulnerability settings'=>'Impostazioni WPVulnerability','Configure and save these settings to receive notifications.'=>'Configura e salva queste impostazioni per ricevere notifiche.','Configure and save these settings to hide vulnerabilities.'=>'Configura e salva queste impostazioni per nascondere le vulnerabilità.','Default administrator email'=>'Email amministratore predefinita','Read more if you want to force the cache time.'=>'Leggi di più se vuoi forzare il tempo di cache.','Never'=>'Mai','Daily'=>'Quotidianamente','Weekly'=>'Settimanalmente','Day'=>'Giorno','Hour'=>'Ora','Minute'=>'Minuto','Read more about how to force the deactivation of an item.'=>'Leggi di più su come forzare la disattivazione di un elemento.','Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com'=>'URL webhook Slack non valido. Deve essere un URL HTTPS valido da hooks.slack.com','Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com'=>'URL webhook Microsoft Teams non valido. Deve essere un URL HTTPS valido da office.com, office365.com, o api.hooks.microsoft.com','Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com'=>'URL webhook Discord non valido. Deve essere un URL HTTPS valido da discord.com o discordapp.com','Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Formato token bot Telegram non valido. Deve essere come: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','All Clear'=>'Tutto a posto','%d Critical Issue Found'=>'%d problema critico trovato' . "\0" . '%d problemi critici trovati','%d Issue Found'=>'%d problema trovato' . "\0" . '%d problemi trovati','Never checked'=>'Mai controllato','%d minute ago'=>'%d minuto fa' . "\0" . '%d minuti fa','%d hour ago'=>'%d ora fa' . "\0" . '%d ore fa','Last checked: %s'=>'Ultimo controllo: %s','Refresh Now'=>'Aggiorna ora','No vulnerabilities detected'=>'Nessuna vulnerabilità rilevata','Your site is up to date and secure'=>'Il tuo sito è aggiornato e sicuro','Server Software'=>'Software del server','Site Health'=>'Salute del sito','Settings'=>'Impostazioni','WPVulnerability Status'=>'Stato WPVulnerability','Receive vulnerability notifications'=>'Ricevi notifiche vulnerabilità','Cache expiration time'=>'Tempo di scadenza cache','How often you want to receive notifications'=>'Con quale frequenza vuoi ricevere le notifiche','Where do you want to receive notifications?'=>'Dove vuoi ricevere le notifiche?','Email addresses to notify (separated by commas)'=>'Indirizzi email da notificare (separati da virgole)','Slack webhook URL'=>'URL webhook Slack','Teams webhook URL'=>'URL webhook Teams','Vulnerabilities to hide'=>'Vulnerabilità da nascondere','What do you want to hide?'=>'Cosa vuoi nascondere?','Standard (Hybrid Detection)'=>'Standard (Rilevamento ibrido)','Strict (Extensions Only)'=>'Rigido (solo estensioni)','Disabled (No Detection)'=>'Disabilitato (nessun rilevamento)','Security Status'=>'Stato sicurezza','Security Mode'=>'Modalità sicurezza','Shell Execution'=>'Esecuzione shell','Enabled'=>'Abilitato','Audit Logging'=>'Registrazione audit','Enabled (%d days)'=>'Abilitato (%d giorni)','Total Log Entries'=>'Totale voci log','Last Shell Execution'=>'Ultima esecuzione shell','%s ago'=>'%s fa','Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.'=>'Configura le impostazioni di sicurezza tramite costanti in wp-config.php: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.','See security configuration documentation for details.'=>'Consulta la documentazione sulla configurazione della sicurezza per i dettagli.','Memcached'=>'Memcached','Imagick Extension'=>'Estensione Imagick','Redis Extension'=>'Estensione Redis','Memcached Extension'=>'Estensione Memcached','Memcache Extension'=>'Estensione Memcache','SQLite3 Extension'=>'Estensione SQLite3','PDO SQLite'=>'PDO SQLite','Shell Command'=>'Comando shell','Binary Check'=>'Controllo binario','Not Detected'=>'Non rilevato','Software Detection Methods'=>'Metodi di rilevamento software','Shows which detection method was used for each software component and the reliability score.'=>'Mostra quale metodo di rilevamento è stato utilizzato per ciascun componente software e il punteggio di affidabilità.','Component'=>'Componente','Version'=>'Versione','Detection Method'=>'Metodo di rilevamento','Reliability'=>'Affidabilità','Not detected'=>'Non rilevato','Shell Execution Audit Logs'=>'Log audit esecuzione shell','Complete audit trail of shell command executions for security monitoring.'=>'Registro completo delle esecuzioni dei comandi shell per il monitoraggio della sicurezza.','No shell execution logs found.'=>'Nessun log di esecuzione shell trovato.','Logs will appear here when shell commands are executed for software detection.'=>'I log appariranno qui quando i comandi shell vengono eseguiti per il rilevamento del software.','Time'=>'Orario','Command'=>'Comando','User'=>'Utente','Output'=>'Output','Showing the %d most recent log entries.'=>'Visualizzazione delle %d voci di log più recenti.','Invalid nonce.'=>'Nonce non valido.','Insufficient permissions.'=>'Permessi insufficienti.','No component specified.'=>'Nessun componente specificato.','Debug Information'=>'Informazioni di debug','This tab is only visible when WP_DEBUG is enabled. Use with caution.'=>'Questa scheda è visibile solo quando WP_DEBUG è abilitato. Usare con cautela.','System Information'=>'Informazioni di sistema','WordPress Version'=>'Versione WordPress','Multisite'=>'Multisito','Yes'=>'Sì','No'=>'No','Language'=>'Lingua','PHP Version'=>'Versione PHP','PHP Extensions'=>'Estensioni PHP','PHP Memory Limit'=>'Limite memoria PHP','Database'=>'Database','Web Server'=>'Server web','WP_DEBUG'=>'WP_DEBUG','WP_DEBUG_LOG'=>'WP_DEBUG_LOG','Path:'=>'Percorso:','Size: %s'=>'Dimensione: %s','View Log File'=>'Visualizza file di log','Log file is not web-accessible (outside wp-content)'=>'Il file di log non è accessibile via web (fuori da wp-content)','Log file does not exist yet'=>'Il file di log non esiste ancora','Plugin Version'=>'Versione plugin','Component Detection'=>'Rilevamento componenti','Version Detected'=>'Versione rilevata','Analyzed'=>'Analizzato','Cache Status'=>'Stato cache','Configuration Summary'=>'Riepilogo configurazione','Cache Duration'=>'Durata cache','Log Retention'=>'Conservazione log','Components Analyzed'=>'Componenti analizzati','Notification Email'=>'Email di notifica','Slack Webhook'=>'Webhook Slack','Configured & Enabled'=>'Configurato e abilitato','Configured (Disabled)'=>'Configurato (disabilitato)','Not configured'=>'Non configurato','Teams Webhook'=>'Webhook Teams','Discord Webhook'=>'Webhook Discord','Telegram Bot'=>'Bot Telegram','Cron Status'=>'Stato cron','Update Database'=>'Aggiorna database','Next run: %s'=>'Prossima esecuzione: %s','Not scheduled'=>'Non pianificato','Send Notification'=>'Invia notifica','Run Update Now'=>'Esegui aggiornamento ora','Run Notification Now'=>'Invia notifica ora','You do not have permission to run these actions.'=>'Non hai il permesso di eseguire queste azioni.','API Testing'=>'Test API','Test API connectivity for each component. Click a button to send a test request.'=>'Testa la connettività API per ciascun componente. Clicca un pulsante per inviare una richiesta di prova.','Test %s'=>'Testa %s','Testing...'=>'Test in corso...','HTTP Code:'=>'Codice HTTP:','Response Time:'=>'Tempo di risposta:','Response Preview'=>'Anteprima risposta','Test'=>'Test','Error:'=>'Errore:','AJAX request failed.'=>'Richiesta AJAX fallita.','You do not have permission to test API connectivity.'=>'Non hai il permesso di testare la connettività API.','Database Options Viewer'=>'Visualizzatore opzioni database','View the raw data stored in WordPress options.'=>'Visualizza i dati grezzi memorizzati nelle opzioni WordPress.','Select an option...'=>'Seleziona un\'opzione...','Option not found or empty.'=>'Opzione non trovata o vuota.','Quick Actions'=>'Azioni rapide','Perform debugging actions. Use with caution.'=>'Esegui azioni di debug. Usare con cautela.','Are you sure you want to clear all caches?'=>'Sei sicuro di voler svuotare tutte le cache?','Clear All Caches'=>'Svuota tutte le cache','Are you sure you want to reset signatures?'=>'Sei sicuro di voler ripristinare le firme?','Reset Signatures'=>'Ripristina firme','Export Debug Info'=>'Esporta informazioni debug','You do not have permission to perform these actions.'=>'Non hai il permesso di eseguire queste azioni.','Settings saved.'=>'Impostazioni salvate.','WPVulnerability cron events have been repaired across the network.'=>'Gli eventi cron di WPVulnerability sono stati riparati su tutta la rete.','You do not have permission to access this page.'=>'Non hai il permesso di accedere a questa pagina.','WordPress %1$s has a known vulnerability that may be affecting your installed version.'=>'WordPress %1$s ha una vulnerabilità nota che potrebbe interessare la tua versione installata.','Actively exploited'=>'Attivamente sfruttata','Public exploit'=>'Exploit pubblico','Automatable'=>'Automatizzabile','References:'=>'Riferimenti:','Invalid component specified.'=>'Componente specificato non valido.','Version not detected for this component.'=>'Versione non rilevata per questo componente.','API request successful.'=>'Richiesta API completata con successo.','API returned HTTP code %d.'=>'L\'API ha restituito il codice HTTP %d.','WPVulnerability Logs'=>'Log WPVulnerability','WPVulnerability Log'=>'Log WPVulnerability','Low'=>'Bassa','Medium'=>'Media','High'=>'Alta','Critical'=>'Critica','WPVulnerability Shell Logs'=>'Log shell WPVulnerability','WPVulnerability Shell Log'=>'Log shell WPVulnerability','Every week'=>'Ogni settimana','Every day'=>'Ogni giorno','Invalid request.'=>'Richiesta non valida.','You have unsubscribed from WPVulnerability notifications.'=>'Hai annullato l\'iscrizione alle notifiche di WPVulnerability.','Learn more about the WordPress Vulnerability Database API at %2$s'=>'Scopri di più sull\'API WordPress Vulnerability Database su %2$s','Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings.'=>'Vuoi smettere di ricevere questi avvisi? Annulla iscrizione o cambia la frequenza email a Mai nelle impostazioni di WPVulnerability.','No vulnerabilities found'=>'Nessuna vulnerabilità trovata','This is likely a test. The site does not have vulnerabilities.'=>'Probabilmente è un test. Il sito non ha vulnerabilità.','Core vulnerabilities'=>'Vulnerabilità del core','Plugins vulnerabilities'=>'Vulnerabilità dei plugin','Themes vulnerabilities'=>'Vulnerabilità dei temi','PHP vulnerabilities'=>'Vulnerabilità PHP','Apache HTTPD vulnerabilities'=>'Vulnerabilità Apache HTTPD','Nginx vulnerabilities'=>'Vulnerabilità Nginx','MariaDB vulnerabilities'=>'Vulnerabilità MariaDB','MySQL vulnerabilities'=>'Vulnerabilità MySQL','ImageMagick vulnerabilities'=>'Vulnerabilità ImageMagick','curl vulnerabilities'=>'Vulnerabilità curl','memcached vulnerabilities'=>'Vulnerabilità memcached','Redis vulnerabilities'=>'Vulnerabilità Redis','SQLite vulnerabilities'=>'Vulnerabilità SQLite','Vulnerability found: %s'=>'Vulnerabilità trovata: %s','Vulnerability found'=>'Vulnerabilità trovata','%1$s has a known vulnerability that may be affecting your installed version.'=>'%1$s ha una vulnerabilità nota che potrebbe interessare la tua versione installata.','This plugin is closed. Please replace it with another.'=>'Questo plugin è chiuso. Sostituiscilo con un altro.','This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates.'=>'Questa vulnerabilità sembra non essere stata corretta. Tieni d\'occhio i prossimi aggiornamenti del plugin.','It hasn\'t been updated in over a year.'=>'Non è stato aggiornato da più di un anno.','It may no longer be available (closed?).'=>'Potrebbe non essere più disponibile (chiuso?).','Last updated on'=>'Ultimo aggiornamento:','Vulnerabilities (%d)'=>'Vulnerabilità (%d)','%s running'=>'%s in esecuzione','End of Life'=>'Fine del ciclo di vita','End of life:'=>'Fine del ciclo di vita:','Supported'=>'Supportato','Plugin'=>'Plugin','Theme'=>'Tema','End of life: %s'=>'Fine del ciclo di vita: %s','EOL'=>'EOL','Network Settings'=>'Impostazioni di rete','Vulnerabilities'=>'Vulnerabilità','Every 6 hours'=>'Ogni 6 ore','Database updates'=>'Aggiornamenti database','Log cleanup'=>'Pulizia log','Notifications are scheduled, but settings currently disable them. Please review the notifications tab.'=>'Le notifiche sono pianificate, ma le impostazioni le disabilitano attualmente. Controlla la scheda notifiche.','This event should not be scheduled for this site.'=>'Questo evento non dovrebbe essere pianificato per questo sito.','Not expected for this site.'=>'Non previsto per questo sito.','No instances found.'=>'Nessuna istanza trovata.','Scheduled with an unexpected interval.'=>'Pianificato con un intervallo inatteso.','Multiple instances detected.'=>'Rilevate più istanze.','Scheduled as expected.'=>'Pianificato come previsto.','There aren\'t plugins vulnerabilities'=>'Non ci sono vulnerabilità nei plugin','Shows possible vulnerabilities that exist in installed plugins.'=>'Mostra le possibili vulnerabilità nei plugin installati.','There is %d plugin with vulnerabilities'=>'C\'è %d plugin con vulnerabilità' . "\0" . 'Ci sono %d plugin con vulnerabilità','We\'ve detected potential vulnerabilities in installed plugins. Please check them and keep them updated.'=>'Abbiamo rilevato potenziali vulnerabilità nei plugin installati. Controllali e tienili aggiornati.','Update plugins'=>'Aggiorna plugin','There aren\'t themes vulnerabilities'=>'Non ci sono vulnerabilità nei temi','Shows possible vulnerabilities that exist in installed themes.'=>'Mostra le possibili vulnerabilità nei temi installati.','There is %d theme with vulnerabilities'=>'C\'è %d tema con vulnerabilità' . "\0" . 'Ci sono %d temi con vulnerabilità','We\'ve detected potential vulnerabilities in installed themes. Please check them and keep them updated.'=>'Abbiamo rilevato potenziali vulnerabilità nei temi installati. Controllali e tienili aggiornati.','Update themes'=>'Aggiorna temi','There aren\'t WordPress vulnerabilities'=>'Non ci sono vulnerabilità WordPress','Shows possible vulnerabilities existing in the WordPress core.'=>'Mostra le possibili vulnerabilità nel core WordPress.','There is %d core vulnerability'=>'C\'è %d vulnerabilità nel core' . "\0" . 'Ci sono %d vulnerabilità nel core','We\'ve detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated.'=>'Abbiamo rilevato potenziali vulnerabilità in questa installazione WordPress. Controllale e tieni la tua installazione aggiornata.','Update WordPress'=>'Aggiorna WordPress','Nginx'=>'Nginx','Invalid software type'=>'Tipo di software non valido','Error'=>'Errore','The specified software type is not valid.'=>'Il tipo di software specificato non è valido.','There aren\'t %s vulnerabilities'=>'Non ci sono vulnerabilità %s','Shows possible vulnerabilities existing in %s.'=>'Mostra le possibili vulnerabilità in %s.','There is %1$d %2$s vulnerability'=>'C\'è %1$d vulnerabilità %2$s' . "\0" . 'Ci sono %1$d vulnerabilità %2$s','We\'ve detected potential vulnerabilities in %s. Please check them and keep your installation updated.'=>'Abbiamo rilevato potenziali vulnerabilità in %s. Controllale e tieni la tua installazione aggiornata.','How to update PHP'=>'Come aggiornare PHP','WPVulnerability Core'=>'WPVulnerability Core','WPVulnerability Themes'=>'WPVulnerability Temi','WPVulnerability Plugins'=>'WPVulnerability Plugin','WPVulnerability PHP'=>'WPVulnerability PHP','WPVulnerability Apache HTTPD'=>'WPVulnerability Apache HTTPD','WPVulnerability Nginx'=>'WPVulnerability Nginx','WPVulnerability MariaDB'=>'WPVulnerability MariaDB','WPVulnerability MySQL'=>'WPVulnerability MySQL','WPVulnerability ImageMagick'=>'WPVulnerability ImageMagick','WPVulnerability curl'=>'WPVulnerability curl','WPVulnerability memcached'=>'WPVulnerability memcached','WPVulnerability redis'=>'WPVulnerability redis','WPVulnerability sqlite'=>'WPVulnerability sqlite','This theme is closed. Please replace it with another.'=>'Questo tema è chiuso. Sostituiscilo con un altro.','This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates.'=>'Questa vulnerabilità sembra non essere stata corretta. Tieni d\'occhio i prossimi aggiornamenti del tema.','This theme has known vulnerabilities that may be affecting your installed version.'=>'Questo tema ha vulnerabilità note che potrebbero interessare la tua versione installata.']]; \ No newline at end of file diff --git a/languages/wpvulnerability-it.mo b/languages/wpvulnerability-it.mo new file mode 100644 index 0000000000000000000000000000000000000000..1846c0d3c5a0c052dae3f58e8153ae67541bda8f GIT binary patch literal 39653 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." +msgstr "" +"Questo comando richiede un amministratore WordPress. Esegui con --" +"user=." + +#: class-wpvulnerability-cli.php:156 +msgid "No core vulnerabilities found." +msgstr "Nessuna vulnerabilità del core trovata." + +#: class-wpvulnerability-cli.php:275 +msgid "No plugin vulnerabilities found." +msgstr "Nessuna vulnerabilità dei plugin trovata." + +#: class-wpvulnerability-cli.php:393 +msgid "No theme vulnerabilities found." +msgstr "Nessuna vulnerabilità dei temi trovata." + +#. translators: %s is the software name (php, apache, nginx, etc.) +#: class-wpvulnerability-cli.php:490 +#, php-format +msgid "No %s vulnerabilities found." +msgstr "Nessuna vulnerabilità di %s trovata." + +#: wpvulnerability-admin.php:63 wpvulnerability-adminms.php:227 +msgid "Data from source has been reloaded." +msgstr "I dati dalla fonte sono stati ricaricati." + +#: wpvulnerability-admin.php:65 wpvulnerability-adminms.php:229 +msgid "You do not have permission to reload data." +msgstr "Non hai il permesso di ricaricare i dati." + +#: wpvulnerability-admin.php:93 wpvulnerability-adminms.php:255 +msgid "Test email has been sent." +msgstr "L'email di prova è stata inviata." + +#: wpvulnerability-admin.php:95 wpvulnerability-adminms.php:259 +msgid "Test email has failed. Please, check your email settings." +msgstr "L'invio dell'email di prova è fallito. Controlla le impostazioni email." + +#: wpvulnerability-admin.php:98 wpvulnerability-adminms.php:263 +msgid "You do not have permission to send test emails." +msgstr "Non hai il permesso di inviare email di prova." + +#: wpvulnerability-admin.php:113 +msgid "WPVulnerability cron events have been repaired." +msgstr "Gli eventi cron di WPVulnerability sono stati riparati." + +#: wpvulnerability-admin.php:115 wpvulnerability-adminms.php:279 +msgid "You do not have permission to repair cron events." +msgstr "Non hai il permesso di riparare gli eventi cron." + +#: wpvulnerability-admin.php:127 wpvulnerability-adminms.php:291 +msgid "All logs have been deleted." +msgstr "Tutti i log sono stati eliminati." + +#: wpvulnerability-admin.php:129 wpvulnerability-adminms.php:293 +msgid "You do not have permission to delete logs." +msgstr "Non hai il permesso di eliminare i log." + +#: wpvulnerability-admin.php:146 +msgid "Uninstall preference saved." +msgstr "Preferenza di disinstallazione salvata." + +#: wpvulnerability-admin.php:153 wpvulnerability-adminms.php:316 +msgid "WPVulnerability has been reset to defaults and reloaded." +msgstr "WPVulnerability è stato ripristinato ai valori predefiniti e ricaricato." + +#: wpvulnerability-admin.php:155 wpvulnerability-adminms.php:318 +msgid "You do not have permission to reset WPVulnerability." +msgstr "Non hai il permesso di ripristinare WPVulnerability." + +#: wpvulnerability-admin.php:170 wpvulnerability-adminms.php:333 +msgid "All caches have been cleared." +msgstr "Tutte le cache sono state svuotate." + +#: wpvulnerability-admin.php:172 wpvulnerability-adminms.php:335 +msgid "You do not have permission to clear caches." +msgstr "Non hai il permesso di svuotare le cache." + +#: wpvulnerability-admin.php:187 wpvulnerability-adminms.php:350 +msgid "Plugin and theme signatures have been reset." +msgstr "Le firme dei plugin e dei temi sono state ripristinate." + +#: wpvulnerability-admin.php:189 wpvulnerability-adminms.php:352 +msgid "You do not have permission to reset signatures." +msgstr "Non hai il permesso di ripristinare le firme." + +#: wpvulnerability-admin.php:212 wpvulnerability-adminms.php:375 +msgid "You do not have permission to export debug information." +msgstr "Non hai il permesso di esportare le informazioni di debug." + +#: wpvulnerability-admin.php:224 wpvulnerability-adminms.php:387 +msgid "Database update has been executed." +msgstr "L'aggiornamento del database è stato eseguito." + +#: wpvulnerability-admin.php:226 wpvulnerability-adminms.php:389 +msgid "You do not have permission to run database updates." +msgstr "Non hai il permesso di eseguire aggiornamenti del database." + +#: wpvulnerability-admin.php:247 wpvulnerability-adminms.php:410 +msgid "Notification has been sent." +msgstr "La notifica è stata inviata." + +#: wpvulnerability-admin.php:249 wpvulnerability-adminms.php:412 +msgid "Notification sending failed." +msgstr "Invio della notifica fallito." + +#: wpvulnerability-admin.php:252 wpvulnerability-adminms.php:415 +msgid "You do not have permission to send notifications." +msgstr "Non hai il permesso di inviare notifiche." + +#: wpvulnerability-admin.php:266 wpvulnerability-adminms.php:539 +#: wpvulnerability-schedule.php:323 +msgid "Notifications" +msgstr "Notifiche" + +#: wpvulnerability-admin.php:269 wpvulnerability-adminms.php:542 +msgid "Analysis" +msgstr "Analisi" + +#: wpvulnerability-admin.php:272 wpvulnerability-adminms.php:545 +msgid "Logs" +msgstr "Log" + +#: wpvulnerability-admin.php:275 wpvulnerability-adminms.php:548 +#: wpvulnerability-sitehealth.php:25 wpvulnerability-sitehealth.php:77 +#: wpvulnerability-sitehealth.php:129 wpvulnerability-sitehealth.php:210 +msgid "Security" +msgstr "Sicurezza" + +#: wpvulnerability-admin.php:278 wpvulnerability-adminms.php:551 +msgid "Tools" +msgstr "Strumenti" + +#: wpvulnerability-admin.php:285 wpvulnerability-adminms.php:558 +msgid "Debug" +msgstr "Debug" + +#: wpvulnerability-admin.php:290 wpvulnerability-adminms.php:563 +msgid "About" +msgstr "Informazioni" + +#: wpvulnerability-admin.php:427 wpvulnerability-adminms.php:700 +msgid "Notification Settings" +msgstr "Impostazioni notifiche" + +#: wpvulnerability-admin.php:430 wpvulnerability-adminms.php:703 +msgid "Configure how and when you want to receive vulnerability notifications." +msgstr "Configura come e quando vuoi ricevere le notifiche sulle vulnerabilità." + +#: wpvulnerability-admin.php:431 wpvulnerability-adminms.php:704 +msgid "" +"Stay informed about security vulnerabilities in your WordPress installation, " +"plugins, themes, and server software." +msgstr "" +"Rimani informato sulle vulnerabilità di sicurezza nella tua installazione " +"WordPress, plugin, temi e software del server." + +#: wpvulnerability-admin.php:438 wpvulnerability-adminms.php:711 +msgid "Cache Expiration Time" +msgstr "Durata scadenza cache" + +#: wpvulnerability-admin.php:440 wpvulnerability-admin.php:814 +#: wpvulnerability-adminms.php:713 wpvulnerability-adminms.php:1087 +msgid "FORCED" +msgstr "FORZATO" + +#: wpvulnerability-admin.php:444 wpvulnerability-adminms.php:717 +msgid "How long to cache vulnerability data before refreshing from the API." +msgstr "Per quanto tempo mantenere i dati sulle vulnerabilità in cache prima di aggiornarli dall'API." + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:453 wpvulnerability-admin.php:1891 +#: wpvulnerability-admin.php:3631 wpvulnerability-adminms.php:726 +#: wpvulnerability-adminms.php:2039 wpvulnerability-adminms.php:3825 +#, php-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d ora" +msgstr[1] "%d ore" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:469 wpvulnerability-adminms.php:742 +#, php-format +msgid "" +"You can force the cache time via wp-config.php constant. Learn more →" +msgstr "" +"Puoi forzare il tempo di cache tramite una costante in wp-config.php. Scopri di più →" + +#: wpvulnerability-admin.php:481 wpvulnerability-admin.php:3665 +#: wpvulnerability-adminms.php:754 wpvulnerability-adminms.php:3859 +msgid "Notification Frequency" +msgstr "Frequenza notifiche" + +#: wpvulnerability-admin.php:484 wpvulnerability-adminms.php:757 +msgid "Choose how often you want to receive vulnerability notifications." +msgstr "Scegli con quale frequenza vuoi ricevere le notifiche sulle vulnerabilità." + +#: wpvulnerability-admin.php:489 wpvulnerability-adminms.php:762 +msgid "Never - Disable automatic notifications" +msgstr "Mai - Disabilita le notifiche automatiche" + +#: wpvulnerability-admin.php:493 wpvulnerability-adminms.php:766 +msgid "Daily - Receive notifications every day" +msgstr "Quotidianamente - Ricevi notifiche ogni giorno" + +#: wpvulnerability-admin.php:497 wpvulnerability-adminms.php:770 +msgid "Weekly - Receive notifications once a week" +msgstr "Settimanalmente - Ricevi notifiche una volta a settimana" + +#: wpvulnerability-admin.php:503 wpvulnerability-adminms.php:776 +msgid "Day:" +msgstr "Giorno:" + +#: wpvulnerability-admin.php:505 wpvulnerability-admin.php:1955 +#: wpvulnerability-adminms.php:778 wpvulnerability-adminms.php:2115 +msgid "Monday" +msgstr "Lunedì" + +#: wpvulnerability-admin.php:506 wpvulnerability-admin.php:1956 +#: wpvulnerability-adminms.php:779 wpvulnerability-adminms.php:2116 +msgid "Tuesday" +msgstr "Martedì" + +#: wpvulnerability-admin.php:507 wpvulnerability-admin.php:1957 +#: wpvulnerability-adminms.php:780 wpvulnerability-adminms.php:2117 +msgid "Wednesday" +msgstr "Mercoledì" + +#: wpvulnerability-admin.php:508 wpvulnerability-admin.php:1958 +#: wpvulnerability-adminms.php:781 wpvulnerability-adminms.php:2118 +msgid "Thursday" +msgstr "Giovedì" + +#: wpvulnerability-admin.php:509 wpvulnerability-admin.php:1959 +#: wpvulnerability-adminms.php:782 wpvulnerability-adminms.php:2119 +msgid "Friday" +msgstr "Venerdì" + +#: wpvulnerability-admin.php:510 wpvulnerability-admin.php:1960 +#: wpvulnerability-adminms.php:783 wpvulnerability-adminms.php:2120 +msgid "Saturday" +msgstr "Sabato" + +#: wpvulnerability-admin.php:511 wpvulnerability-admin.php:1961 +#: wpvulnerability-adminms.php:784 wpvulnerability-adminms.php:2121 +msgid "Sunday" +msgstr "Domenica" + +#: wpvulnerability-admin.php:515 wpvulnerability-adminms.php:788 +msgid "Time:" +msgstr "Orario:" + +#: wpvulnerability-admin.php:519 wpvulnerability-adminms.php:792 +msgid "(24-hour format, server timezone)" +msgstr "(formato 24 ore, fuso orario del server)" + +#: wpvulnerability-admin.php:528 wpvulnerability-adminms.php:801 +msgid "Notification Channels" +msgstr "Canali di notifica" + +#: wpvulnerability-admin.php:531 wpvulnerability-adminms.php:804 +msgid "Select where you want to receive notifications." +msgstr "Seleziona dove vuoi ricevere le notifiche." + +#: wpvulnerability-admin.php:536 wpvulnerability-admin.php:2011 +#: wpvulnerability-adminms.php:809 wpvulnerability-adminms.php:2169 +msgid "Email" +msgstr "Email" + +#: wpvulnerability-admin.php:539 wpvulnerability-adminms.php:812 +msgid "Email Addresses (separated by commas):" +msgstr "Indirizzi email (separati da virgole):" + +#: wpvulnerability-admin.php:541 wpvulnerability-adminms.php:814 +msgid "Default:" +msgstr "Predefinito:" + +#: wpvulnerability-admin.php:546 wpvulnerability-admin.php:2016 +#: wpvulnerability-adminms.php:819 wpvulnerability-adminms.php:2174 +msgid "Slack" +msgstr "Slack" + +#: wpvulnerability-admin.php:549 wpvulnerability-adminms.php:822 +msgid "Slack Webhook URL:" +msgstr "URL Webhook Slack:" + +#. translators: %s: Slack documentation URL +#: wpvulnerability-admin.php:555 wpvulnerability-adminms.php:828 +#, php-format +msgid "" +"Learn how to " +"create a Slack incoming webhook →" +msgstr "" +"Scopri come " +"creare un webhook in entrata Slack →" + +#: wpvulnerability-admin.php:564 wpvulnerability-admin.php:2021 +#: wpvulnerability-adminms.php:837 wpvulnerability-adminms.php:2179 +msgid "Microsoft Teams" +msgstr "Microsoft Teams" + +#: wpvulnerability-admin.php:567 wpvulnerability-adminms.php:840 +msgid "Teams Webhook URL:" +msgstr "URL Webhook Teams:" + +#. translators: %s: Microsoft Teams documentation URL +#: wpvulnerability-admin.php:573 wpvulnerability-adminms.php:846 +#, php-format +msgid "" +"Learn how to " +"create a Teams incoming webhook →" +msgstr "" +"Scopri come " +"creare un webhook in entrata Teams →" + +#: wpvulnerability-admin.php:582 wpvulnerability-adminms.php:855 +msgid "Discord" +msgstr "Discord" + +#: wpvulnerability-admin.php:585 wpvulnerability-adminms.php:858 +msgid "Discord Webhook URL:" +msgstr "URL Webhook Discord:" + +#. translators: %s: Discord documentation URL +#: wpvulnerability-admin.php:591 wpvulnerability-adminms.php:864 +#, php-format +msgid "" +"Learn how to " +"create a Discord webhook →" +msgstr "" +"Scopri come " +"creare un webhook Discord →" + +#: wpvulnerability-admin.php:600 wpvulnerability-adminms.php:873 +msgid "Telegram" +msgstr "Telegram" + +#: wpvulnerability-admin.php:603 wpvulnerability-adminms.php:876 +msgid "Telegram Bot Token:" +msgstr "Token Bot Telegram:" + +#: wpvulnerability-admin.php:605 wpvulnerability-adminms.php:878 +msgid "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "Formato: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:607 wpvulnerability-adminms.php:880 +msgid "Telegram Chat ID:" +msgstr "ID Chat Telegram:" + +#. translators: %s: Telegram documentation URL +#: wpvulnerability-admin.php:613 wpvulnerability-adminms.php:886 +#, php-format +msgid "" +"Learn how to " +"create a Telegram bot and get Chat ID →" +msgstr "" +"Scopri come " +"creare un bot Telegram e ottenere l'ID Chat →" + +#: wpvulnerability-admin.php:623 wpvulnerability-adminms.php:896 +msgid "Save Notification Settings" +msgstr "Salva impostazioni notifiche" + +#: wpvulnerability-admin.php:700 wpvulnerability-admin.php:2552 +#: wpvulnerability-adminms.php:973 wpvulnerability-adminms.php:2459 +msgid "WordPress Components" +msgstr "Componenti WordPress" + +#: wpvulnerability-admin.php:703 wpvulnerability-admin.php:2560 +#: wpvulnerability-adminms.php:976 wpvulnerability-adminms.php:2467 +msgid "WordPress Core" +msgstr "Core WordPress" + +#: wpvulnerability-admin.php:707 wpvulnerability-admin.php:1472 +#: wpvulnerability-admin.php:1573 wpvulnerability-admin.php:2109 +#: wpvulnerability-admin.php:2571 wpvulnerability-adminms.php:980 +#: wpvulnerability-adminms.php:1744 wpvulnerability-adminms.php:1843 +#: wpvulnerability-adminms.php:2266 wpvulnerability-adminms.php:2478 +msgid "Plugins" +msgstr "Plugin" + +#: wpvulnerability-admin.php:711 wpvulnerability-admin.php:1473 +#: wpvulnerability-admin.php:1574 wpvulnerability-admin.php:2114 +#: wpvulnerability-admin.php:2587 wpvulnerability-adminms.php:984 +#: wpvulnerability-adminms.php:1745 wpvulnerability-adminms.php:1844 +#: wpvulnerability-adminms.php:2271 wpvulnerability-adminms.php:2494 +msgid "Themes" +msgstr "Temi" + +#: wpvulnerability-admin.php:717 wpvulnerability-adminms.php:990 +msgid "Software & Languages" +msgstr "Software e linguaggi" + +#: wpvulnerability-admin.php:720 wpvulnerability-admin.php:1474 +#: wpvulnerability-admin.php:2119 wpvulnerability-adminms.php:993 +#: wpvulnerability-adminms.php:1746 wpvulnerability-adminms.php:2276 +#: wpvulnerability-sitehealth.php:178 +msgid "PHP" +msgstr "PHP" + +#: wpvulnerability-admin.php:726 wpvulnerability-adminms.php:999 +msgid "Web Servers" +msgstr "Server web" + +#: wpvulnerability-admin.php:729 wpvulnerability-admin.php:1475 +#: wpvulnerability-admin.php:2124 wpvulnerability-adminms.php:1002 +#: wpvulnerability-adminms.php:1747 wpvulnerability-adminms.php:2281 +#: wpvulnerability-sitehealth.php:179 +msgid "Apache HTTPD" +msgstr "Apache HTTPD" + +#: wpvulnerability-admin.php:733 wpvulnerability-admin.php:1476 +#: wpvulnerability-admin.php:2129 wpvulnerability-adminms.php:1006 +#: wpvulnerability-adminms.php:1748 wpvulnerability-adminms.php:2286 +msgid "nginx" +msgstr "nginx" + +#: wpvulnerability-admin.php:739 wpvulnerability-adminms.php:1012 +msgid "Databases" +msgstr "Database" + +#: wpvulnerability-admin.php:742 wpvulnerability-admin.php:1477 +#: wpvulnerability-admin.php:2134 wpvulnerability-adminms.php:1015 +#: wpvulnerability-adminms.php:1749 wpvulnerability-adminms.php:2291 +#: wpvulnerability-sitehealth.php:181 +msgid "MariaDB" +msgstr "MariaDB" + +#: wpvulnerability-admin.php:746 wpvulnerability-admin.php:1478 +#: wpvulnerability-admin.php:2139 wpvulnerability-adminms.php:1019 +#: wpvulnerability-adminms.php:1750 wpvulnerability-adminms.php:2296 +#: wpvulnerability-sitehealth.php:182 +msgid "MySQL" +msgstr "MySQL" + +#: wpvulnerability-admin.php:750 wpvulnerability-admin.php:1483 +#: wpvulnerability-admin.php:2164 wpvulnerability-admin.php:3104 +#: wpvulnerability-adminms.php:1023 wpvulnerability-adminms.php:1755 +#: wpvulnerability-adminms.php:2321 wpvulnerability-adminms.php:3281 +msgid "SQLite" +msgstr "SQLite" + +#: wpvulnerability-admin.php:756 wpvulnerability-adminms.php:1029 +msgid "Additional Tools" +msgstr "Strumenti aggiuntivi" + +#: wpvulnerability-admin.php:759 wpvulnerability-admin.php:1479 +#: wpvulnerability-admin.php:2144 wpvulnerability-admin.php:3101 +#: wpvulnerability-adminms.php:1032 wpvulnerability-adminms.php:1751 +#: wpvulnerability-adminms.php:2301 wpvulnerability-adminms.php:3278 +#: wpvulnerability-sitehealth.php:183 +msgid "ImageMagick" +msgstr "ImageMagick" + +#: wpvulnerability-admin.php:763 wpvulnerability-admin.php:1480 +#: wpvulnerability-admin.php:2149 wpvulnerability-adminms.php:1036 +#: wpvulnerability-adminms.php:1752 wpvulnerability-adminms.php:2306 +#: wpvulnerability-sitehealth.php:184 +msgid "curl" +msgstr "curl" + +#: wpvulnerability-admin.php:767 wpvulnerability-admin.php:1481 +#: wpvulnerability-admin.php:2154 wpvulnerability-adminms.php:1040 +#: wpvulnerability-adminms.php:1753 wpvulnerability-adminms.php:2311 +msgid "memcached" +msgstr "memcached" + +#: wpvulnerability-admin.php:771 wpvulnerability-admin.php:1482 +#: wpvulnerability-admin.php:2159 wpvulnerability-admin.php:3102 +#: wpvulnerability-adminms.php:1044 wpvulnerability-adminms.php:1754 +#: wpvulnerability-adminms.php:2316 wpvulnerability-adminms.php:3279 +msgid "Redis" +msgstr "Redis" + +#: wpvulnerability-admin.php:784 wpvulnerability-adminms.php:1057 +msgid "Component Analysis Settings" +msgstr "Impostazioni analisi componenti" + +#: wpvulnerability-admin.php:787 wpvulnerability-adminms.php:1060 +msgid "Enable or disable vulnerability analysis for specific components." +msgstr "Abilita o disabilita l'analisi delle vulnerabilità per componenti specifici." + +#: wpvulnerability-admin.php:788 wpvulnerability-adminms.php:1061 +msgid "" +"Check the components you want to HIDE from vulnerability scans and reports. " +"Unchecked components will be actively analyzed. Components with active " +"analysis are shown in green, hidden components in red." +msgstr "" +"Seleziona i componenti che vuoi NASCONDERE dalle scansioni e dai report sulle vulnerabilità. " +"I componenti non selezionati saranno analizzati attivamente. I componenti con " +"analisi attiva sono mostrati in verde, quelli nascosti in rosso." + +#: wpvulnerability-admin.php:820 wpvulnerability-adminms.php:1093 +msgid "Hidden (forced by constant)" +msgstr "Nascosto (forzato dalla costante)" + +#: wpvulnerability-admin.php:823 wpvulnerability-adminms.php:1096 +msgid "🔴 Analysis disabled" +msgstr "🔴 Analisi disabilitata" + +#: wpvulnerability-admin.php:826 wpvulnerability-adminms.php:1099 +msgid "🟢 Analysis active" +msgstr "🟢 Analisi attiva" + +#: wpvulnerability-admin.php:848 wpvulnerability-adminms.php:1121 +msgid "Tip:" +msgstr "Suggerimento:" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:852 wpvulnerability-adminms.php:1125 +#, php-format +msgid "" +"You can force-disable components via wp-config.php constants. Learn more about force-hiding " +"checks →" +msgstr "" +"Puoi forzare la disabilitazione dei componenti tramite costanti in wp-config.php. Scopri di più sulla disabilitazione forzata " +"dei controlli →" + +#: wpvulnerability-admin.php:860 wpvulnerability-adminms.php:1133 +msgid "Save Analysis Settings" +msgstr "Salva impostazioni analisi" + +#: wpvulnerability-admin.php:920 wpvulnerability-adminms.php:1193 +msgid "« Previous" +msgstr "« Precedente" + +#: wpvulnerability-admin.php:921 wpvulnerability-adminms.php:1194 +msgid "Next »" +msgstr "Successivo »" + +#: wpvulnerability-admin.php:932 wpvulnerability-adminms.php:1205 +msgid "Log entry not found or has been removed." +msgstr "Voce di log non trovata o rimossa." + +#: wpvulnerability-admin.php:935 wpvulnerability-adminms.php:1208 +msgid "Unable to load the requested log entry." +msgstr "Impossibile caricare la voce di log richiesta." + +#: wpvulnerability-admin.php:945 wpvulnerability-adminms.php:1218 +msgid "Log Configuration" +msgstr "Configurazione log" + +#: wpvulnerability-admin.php:950 wpvulnerability-adminms.php:1223 +msgid "Total Logs" +msgstr "Log totali" + +#: wpvulnerability-admin.php:954 wpvulnerability-adminms.php:1227 +msgid "Retention Period" +msgstr "Periodo di conservazione" + +#: wpvulnerability-admin.php:959 wpvulnerability-admin.php:1301 +#: wpvulnerability-admin.php:3029 wpvulnerability-admin.php:3043 +#: wpvulnerability-admin.php:3475 wpvulnerability-admin.php:3483 +#: wpvulnerability-adminms.php:1232 wpvulnerability-adminms.php:1574 +#: wpvulnerability-adminms.php:3206 wpvulnerability-adminms.php:3220 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Disabled" +msgstr "Disabilitato" + +#. translators: %d: Number of days. +#. translators: %d: number of days +#: wpvulnerability-admin.php:962 wpvulnerability-admin.php:984 +#: wpvulnerability-admin.php:3641 wpvulnerability-adminms.php:1235 +#: wpvulnerability-adminms.php:1257 wpvulnerability-adminms.php:3835 +#, php-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d giorno" +msgstr[1] "%d giorni" + +#: wpvulnerability-admin.php:975 wpvulnerability-adminms.php:1248 +msgid "Log Retention Period" +msgstr "Periodo di conservazione log" + +#: wpvulnerability-admin.php:981 wpvulnerability-adminms.php:1254 +msgid "None (Disabled)" +msgstr "Nessuno (Disabilitato)" + +#: wpvulnerability-admin.php:1004 wpvulnerability-adminms.php:1277 +msgid "" +"This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant." +msgstr "" +"Questo valore è imposto dalla costante WPVULNERABILITY_LOG_RETENTION_DAYS." + +#: wpvulnerability-admin.php:1009 wpvulnerability-adminms.php:1282 +msgid "" +"Choose how long WPVulnerability should keep API response logs. Older logs " +"are automatically deleted." +msgstr "" +"Scegli per quanto tempo WPVulnerability deve conservare i log delle risposte API. I log più vecchi " +"vengono eliminati automaticamente." + +#: wpvulnerability-admin.php:1013 wpvulnerability-adminms.php:1286 +msgid "Save Configuration" +msgstr "Salva configurazione" + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "Log retention is currently disabled." +msgstr "La conservazione dei log è attualmente disabilitata." + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "API responses are not being saved." +msgstr "Le risposte API non vengono salvate." + +#: wpvulnerability-admin.php:1031 wpvulnerability-adminms.php:1304 +msgid "Log Details" +msgstr "Dettagli log" + +#: wpvulnerability-admin.php:1035 wpvulnerability-admin.php:1104 +#: wpvulnerability-adminms.php:1308 wpvulnerability-adminms.php:1377 +msgid "Date" +msgstr "Data" + +#: wpvulnerability-admin.php:1039 wpvulnerability-admin.php:1105 +#: wpvulnerability-adminms.php:1312 wpvulnerability-adminms.php:1378 +msgid "API Endpoint" +msgstr "Endpoint API" + +#: wpvulnerability-admin.php:1044 wpvulnerability-adminms.php:1317 +msgid "API Response" +msgstr "Risposta API" + +#: wpvulnerability-admin.php:1049 wpvulnerability-adminms.php:1322 +msgid "Back to Logs" +msgstr "Torna ai log" + +#: wpvulnerability-admin.php:1058 wpvulnerability-adminms.php:1331 +msgid "No logs available" +msgstr "Nessun log disponibile" + +#: wpvulnerability-admin.php:1059 wpvulnerability-adminms.php:1332 +msgid "API response logs will appear here once the vulnerability scanner runs." +msgstr "I log delle risposte API appariranno qui dopo l'esecuzione dello scanner di vulnerabilità." + +#: wpvulnerability-admin.php:1063 wpvulnerability-adminms.php:1336 +msgid "API Response Logs" +msgstr "Log risposte API" + +#: wpvulnerability-admin.php:1073 wpvulnerability-adminms.php:1346 +msgid "Show:" +msgstr "Mostra:" + +#: wpvulnerability-admin.php:1082 wpvulnerability-adminms.php:1355 +msgid "Apply" +msgstr "Applica" + +#. translators: 1: first item, 2: last item, 3: total items +#: wpvulnerability-admin.php:1090 wpvulnerability-adminms.php:1363 +#, php-format +msgid "Showing %1$s–%2$s of %3$s" +msgstr "Visualizzazione %1$s–%2$s di %3$s" + +#: wpvulnerability-admin.php:1106 wpvulnerability-adminms.php:1379 +msgid "Actions" +msgstr "Azioni" + +#: wpvulnerability-admin.php:1133 wpvulnerability-admin.php:3957 +#: wpvulnerability-adminms.php:1406 wpvulnerability-adminms.php:4151 +msgid "View" +msgstr "Visualizza" + +#: wpvulnerability-admin.php:1150 wpvulnerability-adminms.php:1423 +msgid "Danger Zone" +msgstr "Zona pericolosa" + +#: wpvulnerability-admin.php:1152 wpvulnerability-adminms.php:1425 +msgid "Permanently delete all API response logs. This action cannot be undone." +msgstr "Elimina definitivamente tutti i log delle risposte API. Questa azione non può essere annullata." + +#: wpvulnerability-admin.php:1154 wpvulnerability-adminms.php:1427 +msgid "Are you sure you want to delete all logs? This action cannot be undone." +msgstr "Sei sicuro di voler eliminare tutti i log? Questa azione non può essere annullata." + +#: wpvulnerability-admin.php:1157 wpvulnerability-adminms.php:1430 +msgid "Delete All Logs" +msgstr "Elimina tutti i log" + +#: wpvulnerability-admin.php:1201 wpvulnerability-adminms.php:1474 +msgid "Reload Data from API" +msgstr "Ricarica dati dall'API" + +#: wpvulnerability-admin.php:1204 wpvulnerability-adminms.php:1477 +msgid "" +"Reload all Core, Plugins, Themes and other components information directly " +"from the API to have updated data. This will clear the cache and fetch fresh " +"vulnerability information." +msgstr "" +"Ricarica tutte le informazioni su Core, Plugin, Temi e altri componenti direttamente " +"dall'API per avere dati aggiornati. Questo svuoterà la cache e recupererà " +"informazioni aggiornate sulle vulnerabilità." + +#: wpvulnerability-admin.php:1209 wpvulnerability-adminms.php:1482 +msgid "Reload Data" +msgstr "Ricarica dati" + +#: wpvulnerability-admin.php:1218 wpvulnerability-adminms.php:1491 +msgid "Test Email Notifications" +msgstr "Testa notifiche email" + +#: wpvulnerability-admin.php:1221 wpvulnerability-adminms.php:1494 +msgid "" +"Send a test email notification with current vulnerability data to verify " +"your email configuration is working correctly." +msgstr "" +"Invia una notifica email di prova con i dati attuali sulle vulnerabilità per verificare " +"che la configurazione email funzioni correttamente." + +#: wpvulnerability-admin.php:1231 wpvulnerability-adminms.php:1504 +msgid "From address (configured via constant):" +msgstr "Indirizzo mittente (configurato tramite costante):" + +#: wpvulnerability-admin.php:1243 wpvulnerability-adminms.php:1516 +msgid "From address (default):" +msgstr "Indirizzo mittente (predefinito):" + +#: wpvulnerability-admin.php:1252 wpvulnerability-adminms.php:1525 +msgid "Learn how to customize the email sender address →" +msgstr "Scopri come personalizzare l'indirizzo mittente email →" + +#: wpvulnerability-admin.php:1258 wpvulnerability-adminms.php:1531 +msgid "Send Test Email" +msgstr "Invia email di prova" + +#: wpvulnerability-admin.php:1267 wpvulnerability-adminms.php:1540 +msgid "WP-Cron Status" +msgstr "Stato WP-Cron" + +#: wpvulnerability-admin.php:1270 wpvulnerability-adminms.php:1543 +msgid "" +"View and manage WP-Cron scheduled events. Compare expected schedules with " +"actual cron jobs to ensure automated tasks are running correctly." +msgstr "" +"Visualizza e gestisci gli eventi pianificati di WP-Cron. Confronta le pianificazioni " +"previste con i cron job effettivi per assicurarti che le attività automatizzate vengano eseguite correttamente." + +#: wpvulnerability-admin.php:1275 wpvulnerability-adminms.php:1548 +msgid "No cron data available." +msgstr "Nessun dato cron disponibile." + +#: wpvulnerability-admin.php:1281 wpvulnerability-adminms.php:1554 +msgid "Hook" +msgstr "Hook" + +#: wpvulnerability-admin.php:1282 wpvulnerability-adminms.php:1555 +msgid "Expected" +msgstr "Previsto" + +#: wpvulnerability-admin.php:1283 wpvulnerability-adminms.php:1556 +msgid "Found" +msgstr "Trovato" + +#: wpvulnerability-admin.php:1284 wpvulnerability-adminms.php:1557 +msgid "Next Run" +msgstr "Prossima esecuzione" + +#: wpvulnerability-admin.php:1285 wpvulnerability-admin.php:3236 +#: wpvulnerability-admin.php:3559 wpvulnerability-adminms.php:1558 +#: wpvulnerability-adminms.php:3413 wpvulnerability-adminms.php:3753 +msgid "Status" +msgstr "Stato" + +#: wpvulnerability-admin.php:1299 wpvulnerability-adminms.php:1572 +msgid "Not expected" +msgstr "Non previsto" + +#: wpvulnerability-admin.php:1321 wpvulnerability-adminms.php:1594 +#: wpvulnerability-general.php:1871 wpvulnerability-general.php:1872 +msgid "None" +msgstr "Nessuno" + +#: wpvulnerability-admin.php:1356 wpvulnerability-adminms.php:1629 +msgid "OK" +msgstr "OK" + +#: wpvulnerability-admin.php:1366 wpvulnerability-adminms.php:1639 +msgid "⚠️ Unexpected WPVulnerability Events" +msgstr "⚠️ Eventi WPVulnerability imprevisti" + +#: wpvulnerability-admin.php:1383 wpvulnerability-adminms.php:1656 +msgid "No interval" +msgstr "Nessun intervallo" + +#: wpvulnerability-admin.php:1390 wpvulnerability-adminms.php:1663 +msgid "Next:" +msgstr "Prossimo:" + +#: wpvulnerability-admin.php:1400 wpvulnerability-adminms.php:1673 +msgid "Repair Cron Events" +msgstr "Ripara eventi cron" + +#: wpvulnerability-admin.php:1408 wpvulnerability-adminms.php:1681 +msgid "Uninstall Data" +msgstr "Dati disinstallazione" + +#: wpvulnerability-admin.php:1410 wpvulnerability-adminms.php:1683 +msgid "" +"By default, all plugin data is preserved when WPVulnerability is deleted. " +"Enable the option below only if you want all options, logs, and cached data " +"permanently removed on uninstall." +msgstr "" +"Per impostazione predefinita, tutti i dati del plugin vengono preservati quando WPVulnerability viene eliminato. " +"Abilita l'opzione seguente solo se vuoi che tutte le opzioni, i log e i dati in cache " +"vengano rimossi definitivamente alla disinstallazione." + +#: wpvulnerability-admin.php:1420 wpvulnerability-adminms.php:1693 +msgid "Delete all plugin data on uninstall" +msgstr "Elimina tutti i dati del plugin alla disinstallazione" + +#: wpvulnerability-admin.php:1423 wpvulnerability-adminms.php:1696 +msgid "" +"Default: unchecked (data preserved). Check only if you want a clean removal." +msgstr "" +"Predefinito: non selezionato (dati preservati). Seleziona solo se vuoi una rimozione pulita." + +#: wpvulnerability-admin.php:1425 wpvulnerability-adminms.php:1698 +msgid "Save preference" +msgstr "Salva preferenza" + +#: wpvulnerability-admin.php:1432 wpvulnerability-adminms.php:1705 +msgid "Reset WPVulnerability" +msgstr "Reimposta WPVulnerability" + +#: wpvulnerability-admin.php:1434 wpvulnerability-adminms.php:1707 +msgid "" +"Delete all WPVulnerability settings, cached data, logs, and scheduled " +"events, then restore defaults and reload data from the API." +msgstr "" +"Elimina tutte le impostazioni di WPVulnerability, i dati in cache, i log e gli eventi " +"pianificati, quindi ripristina i valori predefiniti e ricarica i dati dall'API." + +#: wpvulnerability-admin.php:1436 wpvulnerability-adminms.php:1709 +msgid "This action cannot be undone." +msgstr "Questa azione non può essere annullata." + +#: wpvulnerability-admin.php:1438 wpvulnerability-adminms.php:1711 +msgid "" +"Are you sure you want to reset all WPVulnerability data? This action cannot " +"be undone." +msgstr "" +"Sei sicuro di voler reimpostare tutti i dati di WPVulnerability? Questa azione non può " +"essere annullata." + +#: wpvulnerability-admin.php:1441 wpvulnerability-adminms.php:1713 +msgid "Reset Plugin" +msgstr "Reimposta plugin" + +#: wpvulnerability-admin.php:1468 wpvulnerability-adminms.php:1740 +msgid "Vulnerability Database Statistics" +msgstr "Statistiche database vulnerabilità" + +#. translators: number of vulnerabilities. +#: wpvulnerability-admin.php:1510 wpvulnerability-adminms.php:1782 +#, php-format +msgid "%s vulnerability" +msgid_plural "%s vulnerabilities" +msgstr[0] "%s vulnerabilità" +msgstr[1] "%s vulnerabilità" + +#. translators: number of products. +#: wpvulnerability-admin.php:1520 wpvulnerability-adminms.php:1792 +#, php-format +msgid "(%s product)" +msgid_plural "(%s products)" +msgstr[0] "(%s prodotto)" +msgstr[1] "(%s prodotti)" + +#: wpvulnerability-admin.php:1527 wpvulnerability-adminms.php:1799 +msgid "No data" +msgstr "Nessun dato" + +#. translators: date of last update. +#: wpvulnerability-admin.php:1544 wpvulnerability-adminms.php:1814 +#, php-format +msgid "Database last updated: %s" +msgstr "Database aggiornato l'ultima volta: %s" + +#: wpvulnerability-admin.php:1566 wpvulnerability-adminms.php:1836 +msgid "Intelligence Sources" +msgstr "Fonti di intelligence" + +#: wpvulnerability-admin.php:1567 wpvulnerability-adminms.php:1837 +msgid "Number of vulnerabilities contributed by each intelligence source." +msgstr "Numero di vulnerabilità contribuite da ciascuna fonte di intelligence." + +#: wpvulnerability-admin.php:1571 wpvulnerability-adminms.php:1841 +msgid "Source" +msgstr "Fonte" + +#: wpvulnerability-admin.php:1572 wpvulnerability-admin.php:2104 +#: wpvulnerability-adminms.php:1842 wpvulnerability-adminms.php:2261 +msgid "Core" +msgstr "Core" + +#: wpvulnerability-admin.php:1603 wpvulnerability-adminms.php:1873 +msgid "Sponsors" +msgstr "Sponsor" + +#: wpvulnerability-admin.php:1626 wpvulnerability-adminms.php:1896 +msgid "No sponsor data available." +msgstr "Nessun dato sponsor disponibile." + +#: wpvulnerability-admin.php:1633 wpvulnerability-adminms.php:1903 +msgid "Contributors" +msgstr "Contributori" + +#: wpvulnerability-admin.php:1656 wpvulnerability-adminms.php:1926 +msgid "No contributor data available." +msgstr "Nessun dato contributori disponibile." + +#: wpvulnerability-admin.php:1674 wpvulnerability-adminms.php:432 +msgid "You do not have sufficient permissions to access this page." +msgstr "Non hai i permessi sufficienti per accedere a questa pagina." + +#: wpvulnerability-admin.php:1684 wpvulnerability-adminms.php:441 +msgid "WPVulnerability settings" +msgstr "Impostazioni WPVulnerability" + +#: wpvulnerability-admin.php:1801 wpvulnerability-adminms.php:1963 +msgid "Configure and save these settings to receive notifications." +msgstr "Configura e salva queste impostazioni per ricevere notifiche." + +#: wpvulnerability-admin.php:1814 wpvulnerability-adminms.php:2071 +msgid "Configure and save these settings to hide vulnerabilities." +msgstr "Configura e salva queste impostazioni per nascondere le vulnerabilità." + +#: wpvulnerability-admin.php:1845 wpvulnerability-adminms.php:1993 +msgid "Default administrator email" +msgstr "Email amministratore predefinita" + +#: wpvulnerability-admin.php:1909 wpvulnerability-adminms.php:2057 +msgid "Read more if you want to force the cache time." +msgstr "Leggi di più se vuoi forzare il tempo di cache." + +#: wpvulnerability-admin.php:1939 wpvulnerability-adminms.php:2099 +msgid "Never" +msgstr "Mai" + +#: wpvulnerability-admin.php:1944 wpvulnerability-adminms.php:2104 +msgid "Daily" +msgstr "Quotidianamente" + +#: wpvulnerability-admin.php:1949 wpvulnerability-adminms.php:2109 +msgid "Weekly" +msgstr "Settimanalmente" + +#: wpvulnerability-admin.php:1953 wpvulnerability-adminms.php:2113 +msgid "Day" +msgstr "Giorno" + +#: wpvulnerability-admin.php:1966 wpvulnerability-adminms.php:2126 +msgid "Hour" +msgstr "Ora" + +#: wpvulnerability-admin.php:1968 wpvulnerability-adminms.php:2128 +msgid "Minute" +msgstr "Minuto" + +#: wpvulnerability-admin.php:2166 wpvulnerability-adminms.php:2323 +msgid "Read more about how to force the deactivation of an item." +msgstr "Leggi di più su come forzare la disattivazione di un elemento." + +#: wpvulnerability-admin.php:2292 wpvulnerability-adminms.php:2870 +msgid "" +"Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com" +msgstr "" +"URL webhook Slack non valido. Deve essere un URL HTTPS valido da hooks.slack.com" + +#: wpvulnerability-admin.php:2315 wpvulnerability-adminms.php:2893 +msgid "" +"Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office." +"com, office365.com, or api.hooks.microsoft.com" +msgstr "" +"URL webhook Microsoft Teams non valido. Deve essere un URL HTTPS valido da office." +"com, office365.com, o api.hooks.microsoft.com" + +#: wpvulnerability-admin.php:2338 wpvulnerability-adminms.php:2916 +msgid "" +"Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or " +"discordapp.com" +msgstr "" +"URL webhook Discord non valido. Deve essere un URL HTTPS valido da discord.com o " +"discordapp.com" + +#: wpvulnerability-admin.php:2357 wpvulnerability-adminms.php:2935 +msgid "" +"Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-" +"zyx57W2v1u123ew11" +msgstr "" +"Formato token bot Telegram non valido. Deve essere come: 123456:ABC-DEF1234ghIkl-" +"zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:2493 wpvulnerability-adminms.php:2400 +msgid "All Clear" +msgstr "Tutto a posto" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2503 wpvulnerability-adminms.php:2410 +#, php-format +msgid "%d Critical Issue Found" +msgid_plural "%d Critical Issues Found" +msgstr[0] "%d problema critico trovato" +msgstr[1] "%d problemi critici trovati" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2508 wpvulnerability-adminms.php:2415 +#, php-format +msgid "%d Issue Found" +msgid_plural "%d Issues Found" +msgstr[0] "%d problema trovato" +msgstr[1] "%d problemi trovati" + +#: wpvulnerability-admin.php:2515 wpvulnerability-adminms.php:2422 +msgid "Never checked" +msgstr "Mai controllato" + +#. translators: %d: number of minutes +#: wpvulnerability-admin.php:2523 wpvulnerability-adminms.php:2430 +#, php-format +msgid "%d minute ago" +msgid_plural "%d minutes ago" +msgstr[0] "%d minuto fa" +msgstr[1] "%d minuti fa" + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:2527 wpvulnerability-adminms.php:2434 +#, php-format +msgid "%d hour ago" +msgid_plural "%d hours ago" +msgstr[0] "%d ora fa" +msgstr[1] "%d ore fa" + +#. translators: %s: time since last check +#: wpvulnerability-admin.php:2539 wpvulnerability-adminms.php:2446 +#, php-format +msgid "Last checked: %s" +msgstr "Ultimo controllo: %s" + +#: wpvulnerability-admin.php:2540 wpvulnerability-adminms.php:2447 +msgid "Refresh Now" +msgstr "Aggiorna ora" + +#: wpvulnerability-admin.php:2547 wpvulnerability-adminms.php:2454 +msgid "No vulnerabilities detected" +msgstr "Nessuna vulnerabilità rilevata" + +#: wpvulnerability-admin.php:2548 wpvulnerability-adminms.php:2455 +msgid "Your site is up to date and secure" +msgstr "Il tuo sito è aggiornato e sicuro" + +#: wpvulnerability-admin.php:2616 wpvulnerability-adminms.php:2523 +msgid "Server Software" +msgstr "Software del server" + +#: wpvulnerability-admin.php:2829 wpvulnerability-adminms.php:2736 +msgid "Site Health" +msgstr "Salute del sito" + +#: wpvulnerability-admin.php:2831 wpvulnerability-adminms.php:2738 +#: wpvulnerability-run.php:33 +msgid "Settings" +msgstr "Impostazioni" + +#: wpvulnerability-admin.php:2846 wpvulnerability-adminms.php:2754 +msgid "WPVulnerability Status" +msgstr "Stato WPVulnerability" + +#: wpvulnerability-admin.php:2878 wpvulnerability-adminms.php:3052 +msgid "Receive vulnerability notifications" +msgstr "Ricevi notifiche vulnerabilità" + +#: wpvulnerability-admin.php:2886 wpvulnerability-adminms.php:3060 +msgid "Cache expiration time" +msgstr "Tempo di scadenza cache" + +#: wpvulnerability-admin.php:2895 wpvulnerability-adminms.php:3069 +msgid "How often you want to receive notifications" +msgstr "Con quale frequenza vuoi ricevere le notifiche" + +#: wpvulnerability-admin.php:2904 wpvulnerability-adminms.php:3078 +msgid "Where do you want to receive notifications?" +msgstr "Dove vuoi ricevere le notifiche?" + +#: wpvulnerability-admin.php:2913 wpvulnerability-adminms.php:3087 +msgid "Email addresses to notify (separated by commas)" +msgstr "Indirizzi email da notificare (separati da virgole)" + +#: wpvulnerability-admin.php:2922 wpvulnerability-adminms.php:3096 +msgid "Slack webhook URL" +msgstr "URL webhook Slack" + +#: wpvulnerability-admin.php:2931 wpvulnerability-adminms.php:3105 +msgid "Teams webhook URL" +msgstr "URL webhook Teams" + +#: wpvulnerability-admin.php:2950 wpvulnerability-adminms.php:3126 +msgid "Vulnerabilities to hide" +msgstr "Vulnerabilità da nascondere" + +#: wpvulnerability-admin.php:2958 wpvulnerability-adminms.php:3134 +msgid "What do you want to hide?" +msgstr "Cosa vuoi nascondere?" + +#: wpvulnerability-admin.php:3008 wpvulnerability-adminms.php:3185 +msgid "Standard (Hybrid Detection)" +msgstr "Standard (Rilevamento ibrido)" + +#: wpvulnerability-admin.php:3009 wpvulnerability-adminms.php:3186 +msgid "Strict (Extensions Only)" +msgstr "Rigido (solo estensioni)" + +#: wpvulnerability-admin.php:3010 wpvulnerability-adminms.php:3187 +msgid "Disabled (No Detection)" +msgstr "Disabilitato (nessun rilevamento)" + +#: wpvulnerability-admin.php:3016 wpvulnerability-adminms.php:3193 +msgid "Security Status" +msgstr "Stato sicurezza" + +#: wpvulnerability-admin.php:3020 wpvulnerability-adminms.php:3197 +msgid "Security Mode" +msgstr "Modalità sicurezza" + +#: wpvulnerability-admin.php:3025 wpvulnerability-adminms.php:3202 +msgid "Shell Execution" +msgstr "Esecuzione shell" + +#: wpvulnerability-admin.php:3027 wpvulnerability-admin.php:3475 +#: wpvulnerability-admin.php:3483 wpvulnerability-adminms.php:3204 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Enabled" +msgstr "Abilitato" + +#: wpvulnerability-admin.php:3034 wpvulnerability-adminms.php:3211 +msgid "Audit Logging" +msgstr "Registrazione audit" + +#. translators: %d: number of days +#: wpvulnerability-admin.php:3039 wpvulnerability-adminms.php:3216 +#, php-format +msgid "Enabled (%d days)" +msgstr "Abilitato (%d giorni)" + +#: wpvulnerability-admin.php:3048 wpvulnerability-adminms.php:3225 +msgid "Total Log Entries" +msgstr "Totale voci log" + +#: wpvulnerability-admin.php:3055 wpvulnerability-adminms.php:3232 +msgid "Last Shell Execution" +msgstr "Ultima esecuzione shell" + +#. translators: %s: time ago +#: wpvulnerability-admin.php:3061 wpvulnerability-admin.php:3266 +#: wpvulnerability-adminms.php:3238 wpvulnerability-adminms.php:3441 +#, php-format +msgid "%s ago" +msgstr "%s fa" + +#: wpvulnerability-admin.php:3073 wpvulnerability-adminms.php:3250 +msgid "" +"Configure security settings via wp-config.php constants: " +"WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, " +"WPVULNERABILITY_SHELL_EXEC_WHITELIST." +msgstr "" +"Configura le impostazioni di sicurezza tramite costanti in wp-config.php: " +"WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, " +"WPVULNERABILITY_SHELL_EXEC_WHITELIST." + +#. translators: %s: URL to security documentation +#: wpvulnerability-admin.php:3079 wpvulnerability-adminms.php:3256 +#, php-format +msgid "" +"See security " +"configuration documentation for details." +msgstr "" +"Consulta la documentazione " +"sulla configurazione della sicurezza per i dettagli." + +#: wpvulnerability-admin.php:3103 wpvulnerability-adminms.php:3280 +msgid "Memcached" +msgstr "Memcached" + +#: wpvulnerability-admin.php:3131 wpvulnerability-adminms.php:3308 +msgid "Imagick Extension" +msgstr "Estensione Imagick" + +#: wpvulnerability-admin.php:3132 wpvulnerability-adminms.php:3309 +msgid "Redis Extension" +msgstr "Estensione Redis" + +#: wpvulnerability-admin.php:3133 wpvulnerability-adminms.php:3310 +msgid "Memcached Extension" +msgstr "Estensione Memcached" + +#: wpvulnerability-admin.php:3134 wpvulnerability-adminms.php:3311 +msgid "Memcache Extension" +msgstr "Estensione Memcache" + +#: wpvulnerability-admin.php:3135 wpvulnerability-adminms.php:3312 +msgid "SQLite3 Extension" +msgstr "Estensione SQLite3" + +#: wpvulnerability-admin.php:3136 wpvulnerability-adminms.php:3313 +msgid "PDO SQLite" +msgstr "PDO SQLite" + +#: wpvulnerability-admin.php:3137 wpvulnerability-adminms.php:3314 +msgid "Shell Command" +msgstr "Comando shell" + +#: wpvulnerability-admin.php:3138 wpvulnerability-adminms.php:3315 +msgid "Binary Check" +msgstr "Controllo binario" + +#: wpvulnerability-admin.php:3139 wpvulnerability-adminms.php:3316 +msgid "Not Detected" +msgstr "Non rilevato" + +#: wpvulnerability-admin.php:3143 wpvulnerability-adminms.php:3320 +msgid "Software Detection Methods" +msgstr "Metodi di rilevamento software" + +#: wpvulnerability-admin.php:3144 wpvulnerability-adminms.php:3321 +msgid "" +"Shows which detection method was used for each software component and the " +"reliability score." +msgstr "" +"Mostra quale metodo di rilevamento è stato utilizzato per ciascun componente software e il " +"punteggio di affidabilità." + +#: wpvulnerability-admin.php:3149 wpvulnerability-admin.php:3234 +#: wpvulnerability-admin.php:3558 wpvulnerability-adminms.php:3326 +#: wpvulnerability-adminms.php:3411 wpvulnerability-adminms.php:3752 +msgid "Component" +msgstr "Componente" + +#: wpvulnerability-admin.php:3150 wpvulnerability-adminms.php:3327 +msgid "Version" +msgstr "Versione" + +#: wpvulnerability-admin.php:3151 wpvulnerability-adminms.php:3328 +msgid "Detection Method" +msgstr "Metodo di rilevamento" + +#: wpvulnerability-admin.php:3152 wpvulnerability-adminms.php:3329 +msgid "Reliability" +msgstr "Affidabilità" + +#: wpvulnerability-admin.php:3164 wpvulnerability-adminms.php:3341 +msgid "Not detected" +msgstr "Non rilevato" + +#: wpvulnerability-admin.php:3220 wpvulnerability-adminms.php:3397 +msgid "Shell Execution Audit Logs" +msgstr "Log audit esecuzione shell" + +#: wpvulnerability-admin.php:3221 wpvulnerability-adminms.php:3398 +msgid "" +"Complete audit trail of shell command executions for security monitoring." +msgstr "" +"Registro completo delle esecuzioni dei comandi shell per il monitoraggio della sicurezza." + +#: wpvulnerability-admin.php:3226 wpvulnerability-adminms.php:3403 +msgid "No shell execution logs found." +msgstr "Nessun log di esecuzione shell trovato." + +#: wpvulnerability-admin.php:3227 wpvulnerability-adminms.php:3404 +msgid "" +"Logs will appear here when shell commands are executed for software " +"detection." +msgstr "" +"I log appariranno qui quando i comandi shell vengono eseguiti per il " +"rilevamento del software." + +#: wpvulnerability-admin.php:3233 wpvulnerability-adminms.php:3410 +msgid "Time" +msgstr "Orario" + +#: wpvulnerability-admin.php:3235 wpvulnerability-adminms.php:3412 +msgid "Command" +msgstr "Comando" + +#: wpvulnerability-admin.php:3237 wpvulnerability-adminms.php:3414 +msgid "User" +msgstr "Utente" + +#: wpvulnerability-admin.php:3238 wpvulnerability-adminms.php:3415 +msgid "Output" +msgstr "Output" + +#. translators: %d: number of logs shown +#: wpvulnerability-admin.php:3302 wpvulnerability-adminms.php:3477 +#, php-format +msgid "Showing the %d most recent log entries." +msgstr "Visualizzazione delle %d voci di log più recenti." + +#: wpvulnerability-admin.php:3320 wpvulnerability-adminms.php:3565 +msgid "Invalid nonce." +msgstr "Nonce non valido." + +#: wpvulnerability-admin.php:3325 wpvulnerability-adminms.php:3570 +msgid "Insufficient permissions." +msgstr "Permessi insufficienti." + +#: wpvulnerability-admin.php:3331 wpvulnerability-adminms.php:3576 +msgid "No component specified." +msgstr "Nessun componente specificato." + +#: wpvulnerability-admin.php:3366 wpvulnerability-adminms.php:3524 +msgid "Debug Information" +msgstr "Informazioni di debug" + +#: wpvulnerability-admin.php:3368 wpvulnerability-adminms.php:3526 +msgid "This tab is only visible when WP_DEBUG is enabled. Use with caution." +msgstr "Questa scheda è visibile solo quando WP_DEBUG è abilitato. Usare con cautela." + +#: wpvulnerability-admin.php:3429 wpvulnerability-adminms.php:3623 +msgid "System Information" +msgstr "Informazioni di sistema" + +#: wpvulnerability-admin.php:3433 wpvulnerability-adminms.php:3627 +msgid "WordPress Version" +msgstr "Versione WordPress" + +#: wpvulnerability-admin.php:3437 wpvulnerability-adminms.php:3631 +msgid "Multisite" +msgstr "Multisito" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "Yes" +msgstr "Sì" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "No" +msgstr "No" + +#: wpvulnerability-admin.php:3441 wpvulnerability-adminms.php:3635 +msgid "Language" +msgstr "Lingua" + +#: wpvulnerability-admin.php:3445 wpvulnerability-adminms.php:3639 +msgid "PHP Version" +msgstr "Versione PHP" + +#: wpvulnerability-admin.php:3449 wpvulnerability-adminms.php:3643 +msgid "PHP Extensions" +msgstr "Estensioni PHP" + +#: wpvulnerability-admin.php:3460 wpvulnerability-adminms.php:3654 +msgid "PHP Memory Limit" +msgstr "Limite memoria PHP" + +#: wpvulnerability-admin.php:3464 wpvulnerability-adminms.php:3658 +msgid "Database" +msgstr "Database" + +#: wpvulnerability-admin.php:3468 wpvulnerability-adminms.php:3662 +msgid "Web Server" +msgstr "Server web" + +#: wpvulnerability-admin.php:3472 wpvulnerability-adminms.php:3666 +msgid "WP_DEBUG" +msgstr "WP_DEBUG" + +#: wpvulnerability-admin.php:3480 wpvulnerability-adminms.php:3674 +msgid "WP_DEBUG_LOG" +msgstr "WP_DEBUG_LOG" + +#: wpvulnerability-admin.php:3490 wpvulnerability-adminms.php:3684 +msgid "Path:" +msgstr "Percorso:" + +#. translators: %s: file size +#: wpvulnerability-admin.php:3499 wpvulnerability-adminms.php:3698 +#, php-format +msgid "Size: %s" +msgstr "Dimensione: %s" + +#: wpvulnerability-admin.php:3510 wpvulnerability-adminms.php:3704 +msgid "View Log File" +msgstr "Visualizza file di log" + +#: wpvulnerability-admin.php:3516 wpvulnerability-adminms.php:3710 +msgid "Log file is not web-accessible (outside wp-content)" +msgstr "Il file di log non è accessibile via web (fuori da wp-content)" + +#: wpvulnerability-admin.php:3522 wpvulnerability-adminms.php:3716 +msgid "Log file does not exist yet" +msgstr "Il file di log non esiste ancora" + +#: wpvulnerability-admin.php:3530 wpvulnerability-adminms.php:3724 +msgid "Plugin Version" +msgstr "Versione plugin" + +#: wpvulnerability-admin.php:3554 wpvulnerability-adminms.php:3748 +msgid "Component Detection" +msgstr "Rilevamento componenti" + +#: wpvulnerability-admin.php:3560 wpvulnerability-adminms.php:3754 +msgid "Version Detected" +msgstr "Versione rilevata" + +#: wpvulnerability-admin.php:3561 wpvulnerability-adminms.php:3755 +msgid "Analyzed" +msgstr "Analizzato" + +#: wpvulnerability-admin.php:3562 wpvulnerability-adminms.php:3756 +msgid "Cache Status" +msgstr "Stato cache" + +#: wpvulnerability-admin.php:3622 wpvulnerability-adminms.php:3816 +msgid "Configuration Summary" +msgstr "Riepilogo configurazione" + +#: wpvulnerability-admin.php:3626 wpvulnerability-adminms.php:3820 +msgid "Cache Duration" +msgstr "Durata cache" + +#: wpvulnerability-admin.php:3636 wpvulnerability-adminms.php:3830 +msgid "Log Retention" +msgstr "Conservazione log" + +#: wpvulnerability-admin.php:3646 wpvulnerability-adminms.php:3840 +msgid "Components Analyzed" +msgstr "Componenti analizzati" + +#: wpvulnerability-admin.php:3661 wpvulnerability-adminms.php:3855 +msgid "Notification Email" +msgstr "Email di notifica" + +#: wpvulnerability-admin.php:3682 wpvulnerability-adminms.php:3876 +msgid "Slack Webhook" +msgstr "Webhook Slack" + +#: wpvulnerability-admin.php:3692 wpvulnerability-admin.php:3712 +#: wpvulnerability-admin.php:3732 wpvulnerability-admin.php:3752 +#: wpvulnerability-adminms.php:3886 wpvulnerability-adminms.php:3906 +#: wpvulnerability-adminms.php:3926 wpvulnerability-adminms.php:3946 +msgid "Configured & Enabled" +msgstr "Configurato e abilitato" + +#: wpvulnerability-admin.php:3694 wpvulnerability-admin.php:3714 +#: wpvulnerability-admin.php:3734 wpvulnerability-admin.php:3754 +#: wpvulnerability-adminms.php:3888 wpvulnerability-adminms.php:3908 +#: wpvulnerability-adminms.php:3928 wpvulnerability-adminms.php:3948 +msgid "Configured (Disabled)" +msgstr "Configurato (disabilitato)" + +#: wpvulnerability-admin.php:3696 wpvulnerability-admin.php:3716 +#: wpvulnerability-admin.php:3736 wpvulnerability-admin.php:3756 +#: wpvulnerability-adminms.php:3890 wpvulnerability-adminms.php:3910 +#: wpvulnerability-adminms.php:3930 wpvulnerability-adminms.php:3950 +msgid "Not configured" +msgstr "Non configurato" + +#: wpvulnerability-admin.php:3703 wpvulnerability-adminms.php:3897 +msgid "Teams Webhook" +msgstr "Webhook Teams" + +#: wpvulnerability-admin.php:3723 wpvulnerability-adminms.php:3917 +msgid "Discord Webhook" +msgstr "Webhook Discord" + +#: wpvulnerability-admin.php:3743 wpvulnerability-adminms.php:3937 +msgid "Telegram Bot" +msgstr "Bot Telegram" + +#: wpvulnerability-admin.php:3788 wpvulnerability-adminms.php:3982 +msgid "Cron Status" +msgstr "Stato cron" + +#: wpvulnerability-admin.php:3792 wpvulnerability-adminms.php:3986 +msgid "Update Database" +msgstr "Aggiorna database" + +#. translators: %s: date and time +#: wpvulnerability-admin.php:3797 wpvulnerability-admin.php:3810 +#: wpvulnerability-adminms.php:3991 wpvulnerability-adminms.php:4004 +#, php-format +msgid "Next run: %s" +msgstr "Prossima esecuzione: %s" + +#: wpvulnerability-admin.php:3800 wpvulnerability-admin.php:3813 +#: wpvulnerability-adminms.php:3994 wpvulnerability-adminms.php:4007 +msgid "Not scheduled" +msgstr "Non pianificato" + +#: wpvulnerability-admin.php:3805 wpvulnerability-adminms.php:3999 +msgid "Send Notification" +msgstr "Invia notifica" + +#: wpvulnerability-admin.php:3826 wpvulnerability-adminms.php:4020 +msgid "Run Update Now" +msgstr "Esegui aggiornamento ora" + +#: wpvulnerability-admin.php:3834 wpvulnerability-adminms.php:4028 +msgid "Run Notification Now" +msgstr "Invia notifica ora" + +#: wpvulnerability-admin.php:3840 wpvulnerability-adminms.php:4034 +msgid "You do not have permission to run these actions." +msgstr "Non hai il permesso di eseguire queste azioni." + +#: wpvulnerability-admin.php:3859 wpvulnerability-adminms.php:4053 +msgid "API Testing" +msgstr "Test API" + +#: wpvulnerability-admin.php:3862 wpvulnerability-adminms.php:4056 +msgid "" +"Test API connectivity for each component. Click a button to send a test " +"request." +msgstr "" +"Testa la connettività API per ciascun componente. Clicca un pulsante per inviare una " +"richiesta di prova." + +#. translators: %s: component name +#: wpvulnerability-admin.php:3869 wpvulnerability-adminms.php:4063 +#, php-format +msgid "Test %s" +msgstr "Testa %s" + +#: wpvulnerability-admin.php:3884 wpvulnerability-adminms.php:4078 +msgid "Testing..." +msgstr "Test in corso..." + +#: wpvulnerability-admin.php:3900 wpvulnerability-adminms.php:4094 +msgid "HTTP Code:" +msgstr "Codice HTTP:" + +#: wpvulnerability-admin.php:3901 wpvulnerability-adminms.php:4095 +msgid "Response Time:" +msgstr "Tempo di risposta:" + +#: wpvulnerability-admin.php:3903 wpvulnerability-adminms.php:4097 +msgid "Response Preview" +msgstr "Anteprima risposta" + +#: wpvulnerability-admin.php:3910 wpvulnerability-admin.php:3914 +#: wpvulnerability-adminms.php:4104 wpvulnerability-adminms.php:4108 +msgid "Test" +msgstr "Test" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "Error:" +msgstr "Errore:" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "AJAX request failed." +msgstr "Richiesta AJAX fallita." + +#: wpvulnerability-admin.php:3922 wpvulnerability-adminms.php:4116 +msgid "You do not have permission to test API connectivity." +msgstr "Non hai il permesso di testare la connettività API." + +#: wpvulnerability-admin.php:3943 wpvulnerability-adminms.php:4137 +msgid "Database Options Viewer" +msgstr "Visualizzatore opzioni database" + +#: wpvulnerability-admin.php:3944 wpvulnerability-adminms.php:4138 +msgid "View the raw data stored in WordPress options." +msgstr "Visualizza i dati grezzi memorizzati nelle opzioni WordPress." + +#: wpvulnerability-admin.php:3950 wpvulnerability-adminms.php:4144 +msgid "Select an option..." +msgstr "Seleziona un'opzione..." + +#: wpvulnerability-admin.php:3969 wpvulnerability-adminms.php:4163 +msgid "Option not found or empty." +msgstr "Opzione non trovata o vuota." + +#: wpvulnerability-admin.php:3987 wpvulnerability-adminms.php:4182 +msgid "Quick Actions" +msgstr "Azioni rapide" + +#: wpvulnerability-admin.php:3988 wpvulnerability-adminms.php:4183 +msgid "Perform debugging actions. Use with caution." +msgstr "Esegui azioni di debug. Usare con cautela." + +#: wpvulnerability-admin.php:3992 wpvulnerability-adminms.php:4187 +msgid "Are you sure you want to clear all caches?" +msgstr "Sei sicuro di voler svuotare tutte le cache?" + +#: wpvulnerability-admin.php:3996 wpvulnerability-adminms.php:4191 +msgid "Clear All Caches" +msgstr "Svuota tutte le cache" + +#: wpvulnerability-admin.php:4000 wpvulnerability-adminms.php:4195 +msgid "Are you sure you want to reset signatures?" +msgstr "Sei sicuro di voler ripristinare le firme?" + +#: wpvulnerability-admin.php:4004 wpvulnerability-adminms.php:4199 +msgid "Reset Signatures" +msgstr "Ripristina firme" + +#: wpvulnerability-admin.php:4012 wpvulnerability-adminms.php:4207 +msgid "Export Debug Info" +msgstr "Esporta informazioni debug" + +#: wpvulnerability-admin.php:4018 wpvulnerability-adminms.php:4213 +msgid "You do not have permission to perform these actions." +msgstr "Non hai il permesso di eseguire queste azioni." + +#: wpvulnerability-adminms.php:101 wpvulnerability-adminms.php:199 +msgid "Settings saved." +msgstr "Impostazioni salvate." + +#: wpvulnerability-adminms.php:277 +msgid "WPVulnerability cron events have been repaired across the network." +msgstr "Gli eventi cron di WPVulnerability sono stati riparati su tutta la rete." + +#: wpvulnerability-adminms.php:3512 +msgid "You do not have permission to access this page." +msgstr "Non hai il permesso di accedere a questa pagina." + +#. translators: 1: core version +#: wpvulnerability-core.php:33 +#, php-format +msgid "" +"WordPress %1$s has a known vulnerability that may be affecting your " +"installed version." +msgstr "" +"WordPress %1$s ha una vulnerabilità nota che potrebbe interessare la tua " +"versione installata." + +#: wpvulnerability-core.php:115 wpvulnerability-plugins.php:207 +#: wpvulnerability-process.php:335 wpvulnerability-process.php:443 +#: wpvulnerability-process.php:529 wpvulnerability-themes.php:173 +#: wpvulnerability-themes.php:469 +msgid "Actively exploited" +msgstr "Attivamente sfruttata" + +#: wpvulnerability-core.php:122 wpvulnerability-plugins.php:214 +#: wpvulnerability-process.php:342 wpvulnerability-process.php:450 +#: wpvulnerability-themes.php:180 wpvulnerability-themes.php:476 +msgid "Public exploit" +msgstr "Exploit pubblico" + +#: wpvulnerability-core.php:125 wpvulnerability-plugins.php:217 +#: wpvulnerability-process.php:345 wpvulnerability-process.php:453 +#: wpvulnerability-themes.php:183 wpvulnerability-themes.php:479 +msgid "Automatable" +msgstr "Automatizzabile" + +#: wpvulnerability-core.php:139 wpvulnerability-plugins.php:245 +#: wpvulnerability-process.php:371 wpvulnerability-process.php:469 +#: wpvulnerability-process.php:544 wpvulnerability-themes.php:211 +#: wpvulnerability-themes.php:503 +msgid "References:" +msgstr "Riferimenti:" + +#: wpvulnerability-debug.php:399 +msgid "Invalid component specified." +msgstr "Componente specificato non valido." + +#: wpvulnerability-debug.php:423 +msgid "Version not detected for this component." +msgstr "Versione non rilevata per questo componente." + +#: wpvulnerability-debug.php:453 +msgid "API request successful." +msgstr "Richiesta API completata con successo." + +#. translators: %d: HTTP status code +#: wpvulnerability-debug.php:469 +#, php-format +msgid "API returned HTTP code %d." +msgstr "L'API ha restituito il codice HTTP %d." + +#: wpvulnerability-general.php:355 +msgid "WPVulnerability Logs" +msgstr "Log WPVulnerability" + +#: wpvulnerability-general.php:356 +msgid "WPVulnerability Log" +msgstr "Log WPVulnerability" + +#: wpvulnerability-general.php:1873 wpvulnerability-general.php:1874 +msgid "Low" +msgstr "Bassa" + +#: wpvulnerability-general.php:1875 wpvulnerability-general.php:1876 +msgid "Medium" +msgstr "Media" + +#: wpvulnerability-general.php:1877 wpvulnerability-general.php:1878 +msgid "High" +msgstr "Alta" + +#: wpvulnerability-general.php:1879 wpvulnerability-general.php:1880 +msgid "Critical" +msgstr "Critica" + +#: wpvulnerability-general.php:2684 +msgid "WPVulnerability Shell Logs" +msgstr "Log shell WPVulnerability" + +#: wpvulnerability-general.php:2685 +msgid "WPVulnerability Shell Log" +msgstr "Log shell WPVulnerability" + +#: wpvulnerability-notifications.php:30 +msgid "Every week" +msgstr "Ogni settimana" + +#: wpvulnerability-notifications.php:57 +msgid "Every day" +msgstr "Ogni giorno" + +#: wpvulnerability-notifications.php:84 +msgid "Invalid request." +msgstr "Richiesta non valida." + +#: wpvulnerability-notifications.php:104 +msgid "You have unsubscribed from WPVulnerability notifications." +msgstr "Hai annullato l'iscrizione alle notifiche di WPVulnerability." + +#. translators: %1$s the website of Database, %2$s database site name. +#: wpvulnerability-notifications.php:289 +#, php-format +msgid "" +"Learn more about the WordPress Vulnerability Database API at %2$s" +msgstr "" +"Scopri di più sull'API WordPress Vulnerability Database su %2$s" + +#. translators: %1$s unsubscribe URL. +#: wpvulnerability-notifications.php:300 +#, php-format +msgid "" +"Want to stop receiving these alerts? Unsubscribe or " +"change the email frequency to Never in the WPVulnerability " +"settings." +msgstr "" +"Vuoi smettere di ricevere questi avvisi? Annulla iscrizione o " +"cambia la frequenza email a Mai nelle impostazioni di WPVulnerability." + +#: wpvulnerability-notifications.php:595 +msgid "No vulnerabilities found" +msgstr "Nessuna vulnerabilità trovata" + +#: wpvulnerability-notifications.php:596 +msgid "This is likely a test. The site does not have vulnerabilities." +msgstr "Probabilmente è un test. Il sito non ha vulnerabilità." + +#: wpvulnerability-notifications.php:601 +msgid "Core vulnerabilities" +msgstr "Vulnerabilità del core" + +#: wpvulnerability-notifications.php:607 +msgid "Plugins vulnerabilities" +msgstr "Vulnerabilità dei plugin" + +#: wpvulnerability-notifications.php:613 +msgid "Themes vulnerabilities" +msgstr "Vulnerabilità dei temi" + +#: wpvulnerability-notifications.php:619 +msgid "PHP vulnerabilities" +msgstr "Vulnerabilità PHP" + +#: wpvulnerability-notifications.php:625 +msgid "Apache HTTPD vulnerabilities" +msgstr "Vulnerabilità Apache HTTPD" + +#: wpvulnerability-notifications.php:631 +msgid "Nginx vulnerabilities" +msgstr "Vulnerabilità Nginx" + +#: wpvulnerability-notifications.php:637 +msgid "MariaDB vulnerabilities" +msgstr "Vulnerabilità MariaDB" + +#: wpvulnerability-notifications.php:643 +msgid "MySQL vulnerabilities" +msgstr "Vulnerabilità MySQL" + +#: wpvulnerability-notifications.php:649 +msgid "ImageMagick vulnerabilities" +msgstr "Vulnerabilità ImageMagick" + +#: wpvulnerability-notifications.php:655 +msgid "curl vulnerabilities" +msgstr "Vulnerabilità curl" + +#: wpvulnerability-notifications.php:661 +msgid "memcached vulnerabilities" +msgstr "Vulnerabilità memcached" + +#: wpvulnerability-notifications.php:667 +msgid "Redis vulnerabilities" +msgstr "Vulnerabilità Redis" + +#: wpvulnerability-notifications.php:673 +msgid "SQLite vulnerabilities" +msgstr "Vulnerabilità SQLite" + +#. translators: Site name. +#: wpvulnerability-notifications.php:696 +#, php-format +msgid "Vulnerability found: %s" +msgstr "Vulnerabilità trovata: %s" + +#: wpvulnerability-notifications.php:700 +msgid "Vulnerability found" +msgstr "Vulnerabilità trovata" + +#. translators: 1: Plugin name +#. translators: 1: theme name +#: wpvulnerability-plugins.php:116 wpvulnerability-themes.php:82 +#, php-format +msgid "" +"%1$s has a known vulnerability that may be affecting your installed version." +msgstr "" +"%1$s ha una vulnerabilità nota che potrebbe interessare la tua versione installata." + +#: wpvulnerability-plugins.php:230 wpvulnerability-process.php:358 +msgid "This plugin is closed. Please replace it with another." +msgstr "Questo plugin è chiuso. Sostituiscilo con un altro." + +#: wpvulnerability-plugins.php:233 wpvulnerability-process.php:361 +msgid "" +"This vulnerability appears to be unpatched. Stay tuned for upcoming plugin " +"updates." +msgstr "" +"Questa vulnerabilità sembra non essere stata corretta. Tieni d'occhio i prossimi " +"aggiornamenti del plugin." + +#: wpvulnerability-plugins.php:570 +msgid "It hasn't been updated in over a year." +msgstr "Non è stato aggiornato da più di un anno." + +#: wpvulnerability-plugins.php:576 +msgid "It may no longer be available (closed?)." +msgstr "Potrebbe non essere più disponibile (chiuso?)." + +#: wpvulnerability-plugins.php:614 wpvulnerability-plugins.php:621 +msgid "Last updated on" +msgstr "Ultimo aggiornamento:" + +#. translators: the number of vulnerabilities. +#: wpvulnerability-plugins.php:764 wpvulnerability-themes.php:704 +#, php-format +msgid "Vulnerabilities (%d)" +msgstr "Vulnerabilità (%d)" + +#. translators: %s: software name. +#: wpvulnerability-process.php:601 +#, php-format +msgid "%s running" +msgstr "%s in esecuzione" + +#: wpvulnerability-process.php:611 wpvulnerability-process.php:792 +msgid "End of Life" +msgstr "Fine del ciclo di vita" + +#: wpvulnerability-process.php:613 wpvulnerability-process.php:618 +msgid "End of life:" +msgstr "Fine del ciclo di vita:" + +#: wpvulnerability-process.php:616 +msgid "Supported" +msgstr "Supportato" + +#: wpvulnerability-process.php:652 +msgid "Plugin" +msgstr "Plugin" + +#: wpvulnerability-process.php:721 +msgid "Theme" +msgstr "Tema" + +#. translators: %s: end-of-life date +#: wpvulnerability-process.php:790 +#, php-format +msgid "End of life: %s" +msgstr "Fine del ciclo di vita: %s" + +#: wpvulnerability-process.php:795 +msgid "EOL" +msgstr "EOL" + +#: wpvulnerability-run.php:30 +msgid "Network Settings" +msgstr "Impostazioni di rete" + +#: wpvulnerability-run.php:731 wpvulnerability-run.php:781 +#: wpvulnerability-run.php:791 wpvulnerability-run.php:836 +msgid "Vulnerabilities" +msgstr "Vulnerabilità" + +#: wpvulnerability-schedule.php:30 +msgid "Every 6 hours" +msgstr "Ogni 6 ore" + +#: wpvulnerability-schedule.php:303 +msgid "Database updates" +msgstr "Aggiornamenti database" + +#: wpvulnerability-schedule.php:309 +msgid "Log cleanup" +msgstr "Pulizia log" + +#: wpvulnerability-schedule.php:439 +msgid "" +"Notifications are scheduled, but settings currently disable them. Please " +"review the notifications tab." +msgstr "" +"Le notifiche sono pianificate, ma le impostazioni le disabilitano attualmente. Controlla " +"la scheda notifiche." + +#: wpvulnerability-schedule.php:442 +msgid "This event should not be scheduled for this site." +msgstr "Questo evento non dovrebbe essere pianificato per questo sito." + +#: wpvulnerability-schedule.php:446 +msgid "Not expected for this site." +msgstr "Non previsto per questo sito." + +#: wpvulnerability-schedule.php:450 +msgid "No instances found." +msgstr "Nessuna istanza trovata." + +#: wpvulnerability-schedule.php:456 +msgid "Scheduled with an unexpected interval." +msgstr "Pianificato con un intervallo inatteso." + +#: wpvulnerability-schedule.php:460 +msgid "Multiple instances detected." +msgstr "Rilevate più istanze." + +#: wpvulnerability-schedule.php:465 +msgid "Scheduled as expected." +msgstr "Pianificato come previsto." + +#: wpvulnerability-sitehealth.php:22 +msgid "There aren't plugins vulnerabilities" +msgstr "Non ci sono vulnerabilità nei plugin" + +#: wpvulnerability-sitehealth.php:30 +msgid "Shows possible vulnerabilities that exist in installed plugins." +msgstr "Mostra le possibili vulnerabilità nei plugin installati." + +#. translators: Number of plugins vulnerabilities. +#: wpvulnerability-sitehealth.php:43 +#, php-format +msgid "There is %d plugin with vulnerabilities" +msgid_plural "There are %d plugins with vulnerabilities" +msgstr[0] "C'è %d plugin con vulnerabilità" +msgstr[1] "Ci sono %d plugin con vulnerabilità" + +#: wpvulnerability-sitehealth.php:49 +msgid "" +"We've detected potential vulnerabilities in installed plugins. Please check " +"them and keep them updated." +msgstr "" +"Abbiamo rilevato potenziali vulnerabilità nei plugin installati. Controllali " +"e tienili aggiornati." + +#: wpvulnerability-sitehealth.php:57 +msgid "Update plugins" +msgstr "Aggiorna plugin" + +#: wpvulnerability-sitehealth.php:74 +msgid "There aren't themes vulnerabilities" +msgstr "Non ci sono vulnerabilità nei temi" + +#: wpvulnerability-sitehealth.php:82 +msgid "Shows possible vulnerabilities that exist in installed themes." +msgstr "Mostra le possibili vulnerabilità nei temi installati." + +#. translators: Number of themes vulnerabilities. +#: wpvulnerability-sitehealth.php:95 +#, php-format +msgid "There is %d theme with vulnerabilities" +msgid_plural "There are %d themes with vulnerabilities" +msgstr[0] "C'è %d tema con vulnerabilità" +msgstr[1] "Ci sono %d temi con vulnerabilità" + +#: wpvulnerability-sitehealth.php:101 +msgid "" +"We've detected potential vulnerabilities in installed themes. Please check " +"them and keep them updated." +msgstr "" +"Abbiamo rilevato potenziali vulnerabilità nei temi installati. Controllali " +"e tienili aggiornati." + +#: wpvulnerability-sitehealth.php:109 +msgid "Update themes" +msgstr "Aggiorna temi" + +#: wpvulnerability-sitehealth.php:126 +msgid "There aren't WordPress vulnerabilities" +msgstr "Non ci sono vulnerabilità WordPress" + +#: wpvulnerability-sitehealth.php:134 +msgid "Shows possible vulnerabilities existing in the WordPress core." +msgstr "Mostra le possibili vulnerabilità nel core WordPress." + +#. translators: Number of core vulnerabilities. +#: wpvulnerability-sitehealth.php:147 +#, php-format +msgid "There is %d core vulnerability" +msgid_plural "There are %d core vulnerabilities" +msgstr[0] "C'è %d vulnerabilità nel core" +msgstr[1] "Ci sono %d vulnerabilità nel core" + +#: wpvulnerability-sitehealth.php:153 +msgid "" +"We've detected potential vulnerabilities in this WordPress installation. " +"Please check them and keep your installation updated." +msgstr "" +"Abbiamo rilevato potenziali vulnerabilità in questa installazione WordPress. " +"Controllale e tieni la tua installazione aggiornata." + +#: wpvulnerability-sitehealth.php:161 +msgid "Update WordPress" +msgstr "Aggiorna WordPress" + +#: wpvulnerability-sitehealth.php:180 +msgid "Nginx" +msgstr "Nginx" + +#: wpvulnerability-sitehealth.php:189 +msgid "Invalid software type" +msgstr "Tipo di software non valido" + +#: wpvulnerability-sitehealth.php:192 +msgid "Error" +msgstr "Errore" + +#: wpvulnerability-sitehealth.php:197 +msgid "The specified software type is not valid." +msgstr "Il tipo di software specificato non è valido." + +#. translators: name of the software. +#: wpvulnerability-sitehealth.php:207 +#, php-format +msgid "There aren't %s vulnerabilities" +msgstr "Non ci sono vulnerabilità %s" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:216 +#, php-format +msgid "Shows possible vulnerabilities existing in %s." +msgstr "Mostra le possibili vulnerabilità in %s." + +#. translators: Software and number of vulnerabilities. +#: wpvulnerability-sitehealth.php:229 +#, php-format +msgid "There is %1$d %2$s vulnerability" +msgid_plural "There are %1$d %2$s vulnerabilities" +msgstr[0] "C'è %1$d vulnerabilità %2$s" +msgstr[1] "Ci sono %1$d vulnerabilità %2$s" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:237 +#, php-format +msgid "" +"We've detected potential vulnerabilities in %s. Please check them and keep " +"your installation updated." +msgstr "" +"Abbiamo rilevato potenziali vulnerabilità in %s. Controllale e tieni " +"la tua installazione aggiornata." + +#: wpvulnerability-sitehealth.php:246 +msgid "How to update PHP" +msgstr "Come aggiornare PHP" + +#: wpvulnerability-sitehealth.php:386 +msgid "WPVulnerability Core" +msgstr "WPVulnerability Core" + +#: wpvulnerability-sitehealth.php:394 +msgid "WPVulnerability Themes" +msgstr "WPVulnerability Temi" + +#: wpvulnerability-sitehealth.php:402 +msgid "WPVulnerability Plugins" +msgstr "WPVulnerability Plugin" + +#: wpvulnerability-sitehealth.php:410 +msgid "WPVulnerability PHP" +msgstr "WPVulnerability PHP" + +#: wpvulnerability-sitehealth.php:418 +msgid "WPVulnerability Apache HTTPD" +msgstr "WPVulnerability Apache HTTPD" + +#: wpvulnerability-sitehealth.php:426 +msgid "WPVulnerability Nginx" +msgstr "WPVulnerability Nginx" + +#: wpvulnerability-sitehealth.php:434 +msgid "WPVulnerability MariaDB" +msgstr "WPVulnerability MariaDB" + +#: wpvulnerability-sitehealth.php:442 +msgid "WPVulnerability MySQL" +msgstr "WPVulnerability MySQL" + +#: wpvulnerability-sitehealth.php:450 +msgid "WPVulnerability ImageMagick" +msgstr "WPVulnerability ImageMagick" + +#: wpvulnerability-sitehealth.php:458 +msgid "WPVulnerability curl" +msgstr "WPVulnerability curl" + +#: wpvulnerability-sitehealth.php:466 +msgid "WPVulnerability memcached" +msgstr "WPVulnerability memcached" + +#: wpvulnerability-sitehealth.php:474 +msgid "WPVulnerability redis" +msgstr "WPVulnerability redis" + +#: wpvulnerability-sitehealth.php:482 +msgid "WPVulnerability sqlite" +msgstr "WPVulnerability sqlite" + +#: wpvulnerability-themes.php:196 wpvulnerability-themes.php:492 +msgid "This theme is closed. Please replace it with another." +msgstr "Questo tema è chiuso. Sostituiscilo con un altro." + +#: wpvulnerability-themes.php:199 wpvulnerability-themes.php:495 +msgid "" +"This vulnerability appears to be unpatched. Stay tuned for upcoming theme " +"updates." +msgstr "" +"Questa vulnerabilità sembra non essere stata corretta. Tieni d'occhio i prossimi " +"aggiornamenti del tema." + +#: wpvulnerability-themes.php:391 +msgid "" +"This theme has known vulnerabilities that may be affecting your installed " +"version." +msgstr "" +"Questo tema ha vulnerabilità note che potrebbero interessare la tua versione installata." diff --git a/languages/wpvulnerability-ja.l10n.php b/languages/wpvulnerability-ja.l10n.php new file mode 100644 index 0000000..305c7c0 --- /dev/null +++ b/languages/wpvulnerability-ja.l10n.php @@ -0,0 +1,2 @@ +NULL,'plural-forms'=>'nplurals=1; plural=0;','language'=>'ja_JP','project-id-version'=>'Plugins - WPVulnerability - Development (trunk)','pot-creation-date'=>'2026-05-27T16:32:22+00:00','po-revision-date'=>'2025-02-21 14:03:32+0000','x-generator'=>'GlotPress/4.0.3','messages'=>['WPVulnerability'=>'WPVulnerability','https://www.wpvulnerability.com/plugin/'=>'https://www.wpvulnerability.com/plugin/','Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API.'=>'WordPress Vulnerability Database API から WordPress サイトに存在する可能性のある脆弱性の情報を受け取ります。','ROBOTSTXT'=>'ROBOTSTXT','https://www.robotstxt.es/'=>'https://www.robotstxt.es/','This command requires a WordPress administrator. Run with --user=.'=>'このコマンドには WordPress 管理者が必要です。--user= を付けて実行してください。','No core vulnerabilities found.'=>'コアの脆弱性は見つかりませんでした。','No plugin vulnerabilities found.'=>'プラグインの脆弱性は見つかりませんでした。','No theme vulnerabilities found.'=>'テーマの脆弱性は見つかりませんでした。','No %s vulnerabilities found.'=>'%s の脆弱性は見つかりませんでした。','Data from source has been reloaded.'=>'ソースからデータをリロードしました。','You do not have permission to reload data.'=>'データをリロードする権限がありません。','Test email has been sent.'=>'テストメールを送信しました。','Test email has failed. Please, check your email settings.'=>'テストメールが失敗しました。メール設定を確認してください。','You do not have permission to send test emails.'=>'テストメールを送信する権限がありません。','WPVulnerability cron events have been repaired.'=>'WPVulnerability の cron イベントを修復しました。','You do not have permission to repair cron events.'=>'cron イベントを修復する権限がありません。','All logs have been deleted.'=>'すべてのログを削除しました。','You do not have permission to delete logs.'=>'ログを削除する権限がありません。','Uninstall preference saved.'=>'アンインストール設定を保存しました。','WPVulnerability has been reset to defaults and reloaded.'=>'WPVulnerability をデフォルトにリセットし、再読み込みしました。','You do not have permission to reset WPVulnerability.'=>'WPVulnerability をリセットする権限がありません。','All caches have been cleared.'=>'すべてのキャッシュをクリアしました。','You do not have permission to clear caches.'=>'キャッシュをクリアする権限がありません。','Plugin and theme signatures have been reset.'=>'プラグインとテーマのシグネチャをリセットしました。','You do not have permission to reset signatures.'=>'シグネチャをリセットする権限がありません。','You do not have permission to export debug information.'=>'デバッグ情報をエクスポートする権限がありません。','Database update has been executed.'=>'データベースの更新を実行しました。','You do not have permission to run database updates.'=>'データベースの更新を実行する権限がありません。','Notification has been sent.'=>'通知を送信しました。','Notification sending failed.'=>'通知の送信に失敗しました。','You do not have permission to send notifications.'=>'通知を送信する権限がありません。','Notifications'=>'通知','Analysis'=>'分析','Logs'=>'ログ','Security'=>'セキュリティ','Tools'=>'ツール','Debug'=>'デバッグ','About'=>'このプラグインについて','Notification Settings'=>'通知設定','Configure how and when you want to receive vulnerability notifications.'=>'脆弱性通知をいつ、どのように受け取るかを設定してください。','Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software.'=>'WordPress のインストール環境、プラグイン、テーマ、サーバーソフトウェアのセキュリティ脆弱性について常に最新の情報を受け取りましょう。','Cache Expiration Time'=>'キャッシュの有効期限','FORCED'=>'強制','How long to cache vulnerability data before refreshing from the API.'=>'API から更新する前に脆弱性データをキャッシュしておく期間。','%d hour'=>'%d 時間','You can force the cache time via wp-config.php constant. Learn more →'=>'wp-config.php の定数でキャッシュ時間を強制できます。詳細はこちら →','Notification Frequency'=>'通知の頻度','Choose how often you want to receive vulnerability notifications.'=>'脆弱性通知を受け取る頻度を選択してください。','Never - Disable automatic notifications'=>'なし - 自動通知を無効にする','Daily - Receive notifications every day'=>'毎日 - 毎日通知を受け取る','Weekly - Receive notifications once a week'=>'毎週 - 週に一度通知を受け取る','Day:'=>'曜日:','Monday'=>'月曜日','Tuesday'=>'火曜日','Wednesday'=>'水曜日','Thursday'=>'木曜日','Friday'=>'金曜日','Saturday'=>'土曜日','Sunday'=>'日曜日','Time:'=>'時刻:','(24-hour format, server timezone)'=>'(24時間形式、サーバーのタイムゾーン)','Notification Channels'=>'通知チャンネル','Select where you want to receive notifications.'=>'通知を受け取る場所を選択してください。','Email'=>'メール','Email Addresses (separated by commas):'=>'メールアドレス (カンマ区切り):','Default:'=>'デフォルト:','Slack'=>'Slack','Slack Webhook URL:'=>'Slack Webhook URL:','Learn how to create a Slack incoming webhook →'=>'Slack の受信 webhook の作成方法 →','Microsoft Teams'=>'Microsoft Teams','Teams Webhook URL:'=>'Teams Webhook URL:','Learn how to create a Teams incoming webhook →'=>'Teams の受信 webhook の作成方法 →','Discord'=>'Discord','Discord Webhook URL:'=>'Discord Webhook URL:','Learn how to create a Discord webhook →'=>'Discord の webhook の作成方法 →','Telegram'=>'Telegram','Telegram Bot Token:'=>'Telegram Bot トークン:','Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'形式: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','Telegram Chat ID:'=>'Telegram チャット ID:','Learn how to create a Telegram bot and get Chat ID →'=>'Telegram Bot の作成方法とチャット ID の取得方法 →','Save Notification Settings'=>'通知設定を保存','WordPress Components'=>'WordPress コンポーネント','WordPress Core'=>'WordPress コア','Plugins'=>'プラグイン','Themes'=>'テーマ','Software & Languages'=>'ソフトウェア & 言語','PHP'=>'PHP','Web Servers'=>'ウェブサーバー','Apache HTTPD'=>'Apache HTTPD','nginx'=>'nginx','Databases'=>'データベース','MariaDB'=>'MariaDB','MySQL'=>'MySQL','SQLite'=>'SQLite','Additional Tools'=>'追加ツール','ImageMagick'=>'ImageMagick','curl'=>'curl','memcached'=>'memcached','Redis'=>'Redis','Component Analysis Settings'=>'コンポーネント分析設定','Enable or disable vulnerability analysis for specific components.'=>'特定のコンポーネントの脆弱性分析を有効または無効にします。','Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red.'=>'脆弱性スキャンとレポートから非表示にするコンポーネントにチェックを入れてください。チェックされていないコンポーネントは積極的に分析されます。分析が有効なコンポーネントは緑色、非表示のコンポーネントは赤色で表示されます。','Hidden (forced by constant)'=>'非表示 (定数により強制)','🔴 Analysis disabled'=>'🔴 分析無効','🟢 Analysis active'=>'🟢 分析有効','Tip:'=>'ヒント:','You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →'=>'wp-config.php の定数でコンポーネントを強制的に無効にできます。チェックの強制非表示について詳しく →','Save Analysis Settings'=>'分析設定を保存','« Previous'=>'« 前へ','Next »'=>'次へ »','Log entry not found or has been removed.'=>'ログエントリーが見つからないか、削除されています。','Unable to load the requested log entry.'=>'要求されたログエントリーを読み込めません。','Log Configuration'=>'ログ設定','Total Logs'=>'ログの合計','Retention Period'=>'保存期間','Disabled'=>'無効','%d day'=>'%d 日','Log Retention Period'=>'ログ保存期間','None (Disabled)'=>'なし (無効)','This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant.'=>'この値は WPVULNERABILITY_LOG_RETENTION_DAYS 定数によって強制されています。','Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted.'=>'WPVulnerability が API レスポンスログを保存する期間を選択してください。古いログは自動的に削除されます。','Save Configuration'=>'設定を保存','Log retention is currently disabled.'=>'ログの保存は現在無効です。','API responses are not being saved.'=>'API レスポンスは保存されていません。','Log Details'=>'ログの詳細','Date'=>'日付','API Endpoint'=>'API エンドポイント','API Response'=>'API レスポンス','Back to Logs'=>'ログに戻る','No logs available'=>'利用可能なログがありません','API response logs will appear here once the vulnerability scanner runs.'=>'脆弱性スキャナーが実行されると、API レスポンスログがここに表示されます。','API Response Logs'=>'API レスポンスログ','Show:'=>'表示:','Apply'=>'適用','Showing %1$s–%2$s of %3$s'=>'%3$s 件中 %1$s〜%2$s 件を表示','Actions'=>'操作','View'=>'表示','Danger Zone'=>'危険ゾーン','Permanently delete all API response logs. This action cannot be undone.'=>'すべての API レスポンスログを完全に削除します。この操作は元に戻せません。','Are you sure you want to delete all logs? This action cannot be undone.'=>'すべてのログを削除しますか?この操作は元に戻せません。','Delete All Logs'=>'すべてのログを削除','Reload Data from API'=>'API からデータを再読み込み','Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information.'=>'コア、プラグイン、テーマ、その他のコンポーネントの情報を API から直接再読み込みして最新データを取得します。キャッシュをクリアし、最新の脆弱性情報を取得します。','Reload Data'=>'データリロード','Test Email Notifications'=>'メール通知テスト','Send a test email notification with current vulnerability data to verify your email configuration is working correctly.'=>'現在の脆弱性データを使用してテストメール通知を送信し、メール設定が正しく機能しているかを確認します。','From address (configured via constant):'=>'差出人アドレス (定数で設定):','From address (default):'=>'差出人アドレス (デフォルト):','Learn how to customize the email sender address →'=>'メール送信者アドレスのカスタマイズ方法 →','Send Test Email'=>'テストメールを送信','WP-Cron Status'=>'WP-Cron ステータス','View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly.'=>'WP-Cron のスケジュールされたイベントを表示・管理します。想定されるスケジュールと実際の cron ジョブを比較して、自動タスクが正しく実行されているかを確認します。','No cron data available.'=>'利用可能な cron データがありません。','Hook'=>'フック','Expected'=>'想定','Found'=>'検出','Next Run'=>'次回実行','Status'=>'ステータス','Not expected'=>'想定外','None'=>'None','OK'=>'OK','⚠️ Unexpected WPVulnerability Events'=>'⚠️ 予期しない WPVulnerability イベント','No interval'=>'間隔なし','Next:'=>'次回:','Repair Cron Events'=>'cron イベントを修復','Uninstall Data'=>'アンインストールデータ','By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall.'=>'デフォルトでは、WPVulnerability を削除してもすべてのプラグインデータは保存されます。アンインストール時にすべてのオプション、ログ、キャッシュデータを完全に削除したい場合のみ、以下のオプションを有効にしてください。','Delete all plugin data on uninstall'=>'アンインストール時にすべてのプラグインデータを削除','Default: unchecked (data preserved). Check only if you want a clean removal.'=>'デフォルト: チェックなし (データ保存)。完全削除を希望する場合のみチェックしてください。','Save preference'=>'設定を保存','Reset WPVulnerability'=>'WPVulnerability をリセット','Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API.'=>'WPVulnerability のすべての設定、キャッシュデータ、ログ、スケジュールされたイベントを削除し、デフォルトに戻して API からデータを再読み込みします。','This action cannot be undone.'=>'この操作は元に戻せません。','Are you sure you want to reset all WPVulnerability data? This action cannot be undone.'=>'すべての WPVulnerability データをリセットしますか?この操作は元に戻せません。','Reset Plugin'=>'プラグインをリセット','Vulnerability Database Statistics'=>'脆弱性データベース統計','%s vulnerability'=>'%s 件の脆弱性','(%s product)'=>'(%s 製品)','No data'=>'データなし','Database last updated: %s'=>'データベース最終更新: %s','Intelligence Sources'=>'インテリジェンスソース','Number of vulnerabilities contributed by each intelligence source.'=>'各インテリジェンスソースが提供した脆弱性の数。','Source'=>'ソース','Core'=>'コア','Sponsors'=>'スポンサー','No sponsor data available.'=>'スポンサーデータがありません。','Contributors'=>'貢献者','No contributor data available.'=>'貢献者データがありません。','You do not have sufficient permissions to access this page.'=>'このページにアクセスするための十分な権限がありません。','WPVulnerability settings'=>'WPVulnerability 設定','Configure and save these settings to receive notifications.'=>'通知を受け取るためにこれらの設定を構成して保存してください。','Configure and save these settings to hide vulnerabilities.'=>'脆弱性を非表示にするためにこれらの設定を構成して保存してください。','Default administrator email'=>'デフォルトの管理者メールアドレス','Read more if you want to force the cache time.'=>'キャッシュ時間を強制する方法の詳細はこちら。','Never'=>'なし','Daily'=>'毎日','Weekly'=>'週間','Day'=>'曜日','Hour'=>'時','Minute'=>'分','Read more about how to force the deactivation of an item.'=>'項目の強制無効化方法の詳細はこちら。','Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com'=>'無効な Slack webhook URL です。hooks.slack.com からの有効な HTTPS URL である必要があります。','Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com'=>'無効な Microsoft Teams webhook URL です。office.com、office365.com、または api.hooks.microsoft.com からの有効な HTTPS URL である必要があります。','Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com'=>'無効な Discord webhook URL です。discord.com または discordapp.com からの有効な HTTPS URL である必要があります。','Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'無効な Telegram Bot トークン形式です。次のような形式である必要があります: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','All Clear'=>'問題なし','%d Critical Issue Found'=>'%d 件の重大な問題が見つかりました','%d Issue Found'=>'%d 件の問題が見つかりました','Never checked'=>'未チェック','%d minute ago'=>'%d 分前','%d hour ago'=>'%d 時間前','Last checked: %s'=>'最終チェック: %s','Refresh Now'=>'今すぐ更新','No vulnerabilities detected'=>'脆弱性は検出されていません','Your site is up to date and secure'=>'サイトは最新で安全です','Server Software'=>'サーバーソフトウェア','Site Health'=>'サイトヘルス','Settings'=>'設定','WPVulnerability Status'=>'WPVulnerability ステータス','Receive vulnerability notifications'=>'脆弱性通知を受け取る','Cache expiration time'=>'キャッシュの有効期限','How often you want to receive notifications'=>'通知を受け取る頻度','Where do you want to receive notifications?'=>'通知の受け取り先は?','Email addresses to notify (separated by commas)'=>'通知するメールアドレス (カンマ区切り)','Slack webhook URL'=>'Slack webhook URL','Teams webhook URL'=>'Teams webhook URL','Vulnerabilities to hide'=>'非表示にする脆弱性','What do you want to hide?'=>'何を非表示にしますか?','Standard (Hybrid Detection)'=>'標準 (ハイブリッド検出)','Strict (Extensions Only)'=>'厳格 (拡張機能のみ)','Disabled (No Detection)'=>'無効 (検出なし)','Security Status'=>'セキュリティステータス','Security Mode'=>'セキュリティモード','Shell Execution'=>'シェル実行','Enabled'=>'有効','Audit Logging'=>'監査ログ','Enabled (%d days)'=>'有効 (%d 日)','Total Log Entries'=>'ログエントリーの合計','Last Shell Execution'=>'最後のシェル実行','%s ago'=>'%s 前','Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.'=>'wp-config.php の定数でセキュリティ設定を構成してください: WPVULNERABILITY_DISABLE_SHELL_EXEC、WPVULNERABILITY_SECURITY_MODE、WPVULNERABILITY_SHELL_EXEC_WHITELIST。','See security configuration documentation for details.'=>'詳細はセキュリティ設定ドキュメントをご覧ください。','Memcached'=>'Memcached','Imagick Extension'=>'Imagick 拡張','Redis Extension'=>'Redis 拡張','Memcached Extension'=>'Memcached 拡張','Memcache Extension'=>'Memcache 拡張','SQLite3 Extension'=>'SQLite3 拡張','PDO SQLite'=>'PDO SQLite','Shell Command'=>'シェルコマンド','Binary Check'=>'バイナリチェック','Not Detected'=>'検出されていません','Software Detection Methods'=>'ソフトウェア検出方法','Shows which detection method was used for each software component and the reliability score.'=>'各ソフトウェアコンポーネントに使用された検出方法と信頼性スコアを表示します。','Component'=>'コンポーネント','Version'=>'バージョン','Detection Method'=>'検出方法','Reliability'=>'信頼性','Not detected'=>'検出されていません','Shell Execution Audit Logs'=>'シェル実行監査ログ','Complete audit trail of shell command executions for security monitoring.'=>'セキュリティ監視のためのシェルコマンド実行の完全な監査記録。','No shell execution logs found.'=>'シェル実行ログが見つかりません。','Logs will appear here when shell commands are executed for software detection.'=>'ソフトウェア検出のためにシェルコマンドが実行されると、ここにログが表示されます。','Time'=>'時刻','Command'=>'コマンド','User'=>'ユーザー','Output'=>'出力','Showing the %d most recent log entries.'=>'最新の %d 件のログエントリーを表示しています。','Invalid nonce.'=>'無効な nonce です。','Insufficient permissions.'=>'権限が不足しています。','No component specified.'=>'コンポーネントが指定されていません。','Debug Information'=>'デバッグ情報','This tab is only visible when WP_DEBUG is enabled. Use with caution.'=>'このタブは WP_DEBUG が有効な場合のみ表示されます。注意して使用してください。','System Information'=>'システム情報','WordPress Version'=>'WordPress バージョン','Multisite'=>'マルチサイト','Yes'=>'はい','No'=>'いいえ','Language'=>'言語','PHP Version'=>'PHP バージョン','PHP Extensions'=>'PHP 拡張機能','PHP Memory Limit'=>'PHP メモリ制限','Database'=>'データベース','Web Server'=>'ウェブサーバー','WP_DEBUG'=>'WP_DEBUG','WP_DEBUG_LOG'=>'WP_DEBUG_LOG','Path:'=>'パス:','Size: %s'=>'サイズ: %s','View Log File'=>'ログファイルを表示','Log file is not web-accessible (outside wp-content)'=>'ログファイルはウェブからアクセスできません (wp-content の外)','Log file does not exist yet'=>'ログファイルはまだ存在しません','Plugin Version'=>'プラグインバージョン','Component Detection'=>'コンポーネント検出','Version Detected'=>'検出されたバージョン','Analyzed'=>'分析済み','Cache Status'=>'キャッシュステータス','Configuration Summary'=>'設定サマリー','Cache Duration'=>'キャッシュ期間','Log Retention'=>'ログ保存','Components Analyzed'=>'分析済みコンポーネント','Notification Email'=>'通知メール','Slack Webhook'=>'Slack Webhook','Configured & Enabled'=>'設定済み & 有効','Configured (Disabled)'=>'設定済み (無効)','Not configured'=>'未設定','Teams Webhook'=>'Teams Webhook','Discord Webhook'=>'Discord Webhook','Telegram Bot'=>'Telegram Bot','Cron Status'=>'cron ステータス','Update Database'=>'データベースを更新','Next run: %s'=>'次回実行: %s','Not scheduled'=>'スケジュールされていません','Send Notification'=>'通知を送信','Run Update Now'=>'今すぐ更新を実行','Run Notification Now'=>'今すぐ通知を実行','You do not have permission to run these actions.'=>'これらの操作を実行する権限がありません。','API Testing'=>'API テスト','Test API connectivity for each component. Click a button to send a test request.'=>'各コンポーネントの API 接続をテストします。ボタンをクリックしてテストリクエストを送信してください。','Test %s'=>'%s をテスト','Testing...'=>'テスト中...','HTTP Code:'=>'HTTP コード:','Response Time:'=>'レスポンス時間:','Response Preview'=>'レスポンスプレビュー','Test'=>'テスト','Error:'=>'エラー:','AJAX request failed.'=>'AJAX リクエストが失敗しました。','You do not have permission to test API connectivity.'=>'API 接続をテストする権限がありません。','Database Options Viewer'=>'データベースオプションビューア','View the raw data stored in WordPress options.'=>'WordPress オプションに保存された生データを表示します。','Select an option...'=>'オプションを選択...','Option not found or empty.'=>'オプションが見つからないか、空です。','Quick Actions'=>'クイックアクション','Perform debugging actions. Use with caution.'=>'デバッグ操作を実行します。注意して使用してください。','Are you sure you want to clear all caches?'=>'すべてのキャッシュをクリアしますか?','Clear All Caches'=>'すべてのキャッシュをクリア','Are you sure you want to reset signatures?'=>'シグネチャをリセットしますか?','Reset Signatures'=>'シグネチャをリセット','Export Debug Info'=>'デバッグ情報をエクスポート','You do not have permission to perform these actions.'=>'これらの操作を実行する権限がありません。','Settings saved.'=>'設定を保存しました','WPVulnerability cron events have been repaired across the network.'=>'ネットワーク全体の WPVulnerability cron イベントを修復しました。','You do not have permission to access this page.'=>'このページにアクセスする権限がありません。','WordPress %1$s has a known vulnerability that may be affecting your installed version.'=>'WordPress %1$s には、インストールされているバージョンに影響を与える可能性のある既知の脆弱性があります。','Actively exploited'=>'積極的に悪用されています','Public exploit'=>'公開されたエクスプロイト','Automatable'=>'自動化可能','References:'=>'参考文献:','Invalid component specified.'=>'無効なコンポーネントが指定されました。','Version not detected for this component.'=>'このコンポーネントのバージョンが検出されませんでした。','API request successful.'=>'API リクエストが成功しました。','API returned HTTP code %d.'=>'API が HTTP コード %d を返しました。','WPVulnerability Logs'=>'WPVulnerability ログ','WPVulnerability Log'=>'WPVulnerability ログ','Low'=>'Low','Medium'=>'Medium','High'=>'High','Critical'=>'Critical','WPVulnerability Shell Logs'=>'WPVulnerability シェルログ','WPVulnerability Shell Log'=>'WPVulnerability シェルログ','Every week'=>'毎週','Every day'=>'毎日','Invalid request.'=>'無効なリクエストです。','You have unsubscribed from WPVulnerability notifications.'=>'WPVulnerability の通知の登録を解除しました。','Learn more about the WordPress Vulnerability Database API at %2$s'=>'WordPress Vulnerability Database API の詳細については、%2$s をご覧ください','Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings.'=>'このアラートの受信を停止しますか?登録解除するか、WPVulnerability の設定でメール頻度を なし に変更してください。','No vulnerabilities found'=>'脆弱性は見つかりませんでした','This is likely a test. The site does not have vulnerabilities.'=>'これはテストの可能性があります。このサイトには脆弱性がありません。','Core vulnerabilities'=>'コアの脆弱性','Plugins vulnerabilities'=>'プラグインの脆弱性','Themes vulnerabilities'=>'テーマの脆弱性','PHP vulnerabilities'=>'PHP の脆弱性','Apache HTTPD vulnerabilities'=>'Apache HTTPD の脆弱性','Nginx vulnerabilities'=>'Nginx の脆弱性','MariaDB vulnerabilities'=>'MariaDB の脆弱性','MySQL vulnerabilities'=>'MySQL の脆弱性','ImageMagick vulnerabilities'=>'ImageMagick の脆弱性','curl vulnerabilities'=>'curl の脆弱性','memcached vulnerabilities'=>'memcached の脆弱性','Redis vulnerabilities'=>'Redis の脆弱性','SQLite vulnerabilities'=>'SQLite の脆弱性','Vulnerability found: %s'=>'見つかった脆弱性: %s','Vulnerability found'=>'見つかった脆弱性','%1$s has a known vulnerability that may be affecting your installed version.'=>'%1$s には、インストールされているバージョンに影響を与える可能性のある既知の脆弱性があります。','This plugin is closed. Please replace it with another.'=>'このプラグインは閉鎖されています。他のプラグインに置き換えてください。','This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates.'=>'この脆弱性にはパッチが適用されていないようです。今後のプラグインの更新にご期待ください。','It hasn\'t been updated in over a year.'=>'1年以上更新されていません。','It may no longer be available (closed?).'=>'利用できなくなった (閉鎖された) 可能性があります。','Last updated on'=>'最終更新日','Vulnerabilities (%d)'=>'脆弱性 (%d)','%s running'=>'%s 実行中','End of Life'=>'サポート終了','End of life:'=>'サポート終了:','Supported'=>'サポート中','Plugin'=>'プラグイン','Theme'=>'テーマ','End of life: %s'=>'サポート終了: %s','EOL'=>'EOL','Network Settings'=>'サイトネットワーク設定','Vulnerabilities'=>'脆弱性','Every 6 hours'=>'6時間ごと','Database updates'=>'データベースの更新','Log cleanup'=>'ログのクリーンアップ','Notifications are scheduled, but settings currently disable them. Please review the notifications tab.'=>'通知はスケジュールされていますが、現在の設定では無効になっています。通知タブを確認してください。','This event should not be scheduled for this site.'=>'このイベントはこのサイトにスケジュールすべきではありません。','Not expected for this site.'=>'このサイトには想定されていません。','No instances found.'=>'インスタンスが見つかりません。','Scheduled with an unexpected interval.'=>'予期しない間隔でスケジュールされています。','Multiple instances detected.'=>'複数のインスタンスが検出されました。','Scheduled as expected.'=>'想定通りにスケジュールされています。','There aren\'t plugins vulnerabilities'=>'プラグインに脆弱性はありません','Shows possible vulnerabilities that exist in installed plugins.'=>'インストールされているプラグインに存在する可能性のある脆弱性を表示します。','There is %d plugin with vulnerabilities'=>'%d 個のプラグインに脆弱性が存在します','We\'ve detected potential vulnerabilities in installed plugins. Please check them and keep them updated.'=>'インストールされているプラグインに潜在的な脆弱性が検出されました。それらを確認し、最新の状態に更新してください。','Update plugins'=>'プラグインを更新','There aren\'t themes vulnerabilities'=>'テーマに脆弱性はありません','Shows possible vulnerabilities that exist in installed themes.'=>'インストールされているテーマに存在する可能性のある脆弱性を表示します。','There is %d theme with vulnerabilities'=>'%d 個のテーマに脆弱性が存在します','We\'ve detected potential vulnerabilities in installed themes. Please check them and keep them updated.'=>'インストールされているテーマに潜在的な脆弱性が検出されました。それらを確認し、最新の状態に更新してください。','Update themes'=>'テーマを更新','There aren\'t WordPress vulnerabilities'=>'WordPress に脆弱性はありません','Shows possible vulnerabilities existing in the WordPress core.'=>'WordPress のコアに存在する脆弱性の可能性を表示します。','There is %d core vulnerability'=>'%d 個のコアの脆弱性が存在します','We\'ve detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated.'=>'この WordPress に潜在的な脆弱性が検出されました。それらを確認し、更新してください。','Update WordPress'=>'WordPress を更新','Nginx'=>'Nginx','Invalid software type'=>'無効なソフトウェアタイプ','Error'=>'エラー','The specified software type is not valid.'=>'指定されたソフトウェアタイプは有効ではありません。','There aren\'t %s vulnerabilities'=>'%s に脆弱性はありません','Shows possible vulnerabilities existing in %s.'=>'%s に存在する可能性のある脆弱性を示します。','There is %1$d %2$s vulnerability'=>'%1$d 個の %2$s の脆弱性が存在します','We\'ve detected potential vulnerabilities in %s. Please check them and keep your installation updated.'=>'%s に潜在的な脆弱性が検出されました。それらを確認し、最新の状態に更新してください。','How to update PHP'=>'PHP の更新方法','WPVulnerability Core'=>'WPVulnerability コア','WPVulnerability Themes'=>'WPVulnerability テーマ','WPVulnerability Plugins'=>'WPVulnerability プラグイン','WPVulnerability PHP'=>'WPVulnerability PHP','WPVulnerability Apache HTTPD'=>'WPVulnerability Apache HTTPD','WPVulnerability Nginx'=>'WPVulnerability Nginx','WPVulnerability MariaDB'=>'WPVulnerability MariaDB','WPVulnerability MySQL'=>'WPVulnerability MySQL','WPVulnerability ImageMagick'=>'WPVulnerability ImageMagick','WPVulnerability curl'=>'WPVulnerability curl','WPVulnerability memcached'=>'WPVulnerability memcached','WPVulnerability redis'=>'WPVulnerability redis','WPVulnerability sqlite'=>'WPVulnerability sqlite','This theme is closed. Please replace it with another.'=>'このテーマは閉鎖されています。他のテーマに置き換えてください。','This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates.'=>'この脆弱性にはパッチが適用されていないようです。今後のテーマの更新にご期待ください。','This theme has known vulnerabilities that may be affecting your installed version.'=>'このテーマには、インストールされているバージョンに影響を与える可能性のある既知の脆弱性があります。']]; \ No newline at end of file diff --git a/languages/wpvulnerability-ja.mo b/languages/wpvulnerability-ja.mo new file mode 100644 index 0000000000000000000000000000000000000000..fe591bfc4be89a74c7213a0042f06470e1a40239 GIT binary patch literal 42755 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

(xuTvkPW!H@p3xN3!!GTAY%{0 zHX>&(SbHoLj?{bUdE7P+*V$@0wl0XJbCuzV412TTV=M6i7nigCP$n!xR1vgXmfO-; z7t~<5oQMtT!~(}UU{)X=SKhBFee@1tZz`@{f{+ge8yKRScP)IChJ%d|5Vy_e83r9A z?LdJ--3$!VfWFM`b4~#!C{X?l(c(HX?sMZV#Y>Ksq$SflR`r!v`&3>_8d_WB-^n{! z#D}TorbF~2`QTOXr!9PQpdvp2dtr{#3VK%0Hij!y5I7S>*$@KrIzJe--GEGRz(9Y3^3yQ#07|)W z6I7pk>urYZAL#st`ScH3(%W1he>*^Tfk z*g~**C95`D>m`uLvCdn+<(^FHSk^#2XA|pa75M^V*chfd3p0pw@^5^&F75^qatAA? z0|^rB!@&036ujP8{Up}r3!5^=S9PaAI0D=a^AUJffQS@~@6~XDsO4$3m`JJVok5>r zu(+ld?|Nce&jth+eI{E;u4^WXi#QiB9C^>ygV@T#MLS=`%c5aNh-{O1I<@d;56T@~ zdzRq4)^l_l2trK7;=D(z{YeBXR=U@(;4+7`rDWQpHf+F9)iI6!E`qUb*-7p`NMLh? zT|^+?&*sCdj@rTIgqDd3L@1+z$4Z6hes*2=3}#4EwR8IpqcT>Twx}~`ucs1$>pgnH z<=Wcsqs_QShM~l{m(2Uf6qLW#$&+!E8h&C}*E41#m`zdr>{82Y_F25Cil!s{$t%wM z!tN!gAy$T?yo5dmx{ER*$qbc1`8?@NQvyc+zG(0Ac%?t)uzTgqU5}yxZL;>fmCGEO zS_N2J!Kt+v29ATM_Z^H`peN<7pdAnD=TB>2>BatZc3KUIg5D_zi z(a07H36nvD?wE*k+Ddz)%!XNm-5fh^;tvgAmfL@Qr-7NIm@45F7k2hc@9JJM8~1v> zxASG{hpjBK#*&BKv3un!T!&&|1BoR4+c~@=K9kaWrZetmWKE5(AeUvFFqINe9?u<* zG3cEyn{%t`+DmCloc*GC-i0^(zBOfy+8v5bg`+&yw}rYgW8Mb4EKU^0v19BIsW(gE zudb2^DMuEjyf)7rK0v}Hx9!dyn~JZluh<;%t;IC$?bbl0$GNVoN#7%vG=jrweWhKZiO2~h2P)ljr&Hfv&e2OHtqKGwGChnR^NUU~L#*3k_pYSO z1eRuW_r@e{MJ-_u1651AH*6!&j^=kijZ+5}u+XXw=Gl;kY-AWpR2_0Wf)%uCxs{~l z?j}dPpZ}mNZq$(ylqgL@pz2t&bL0NXE9OmC?ig$^X(d@nKLUd>R$nN> z$WW4nu`UIbIVIH5jUk%o1s2v$3@>)&ZvT58_&_3^-;eeJ(Z!*?a~|zWrdJ)A(Xh)& zO4FrfddzGPtP<^AI9#v;oDyX%s6b~~7s_kH$c)sj+GI%|>3Y~~KaO9mebu?mI46uV z`>**MA(aj*j`p2LwDMiF`}BZGKu=X)?7@?>hB@F^*1c_s4tp1xWm#f)EDoHxwgR1< z#rbI&=^6VaLOQz^KT~|7%W#J{(UfT7;SX)- z|7h}F|A`XAy;&?YrDr35sifd6X*t)pq+DO(^@f{BWpTXU8kSXwe3Mb`(CK!)fLt#X zi87Z$*K*_ehD3s!uGVG{16mulB0`Y~fvI5xP9SFjZWp(8Ls{V@N!Zs&edQ7>=oHO5 zi>N}l?cwru*jlLM?9C1jyTCF_9LN25SW|4Cn4>s61Ch7HU4q1@#v;Pbu;dmx^BAb) z@Z)B=%AO$ekf@zV2;-I2MGhVy`MqVVWkZjPVy#jFNrnU)vXxNAFHc|rF=ykAJ@Jx-MI zwP|VGC-G2b>Ar0AVp5=tSP}2^pZ)hcnH7l8ndT9(7COzPc2`xOVqPK$^ga7<%B@eS zPx~{=rR~07^IM#btkvYk|BoS6{)9|$&jh1`<-!zL8@PY$gvZw0vwe>cleU+9hDaM^ zUB`U;okQT&vV~<+n%ZZDeoRbjcN$zyKf!H1xwRj}DlNV`v)l*!H|Rt-z5CI8_wsd4 z-N0*5ob$40LBbv3EX7ohGb~y0WDXX~%nUa0qB%Y5<^-?9_%0M9d$W++Al+No%z=Nf zYCWj4;T5({=AZ2mZfP7g^rn)~1J@PWQS}_501ggit#l}f^w9UU%xb7GN#`MpD4Jnf zxnzsH2&O%fwANJl0{=2Mu|4R;&qr32zYh3bbtS4Sx44bDe;rJ4FmvLOW?&m65OOo*s`{($l87Ru7a^C@!=pyc94Q>vEQ{mgStSK|V?zLT_9$+;*+oc`|II-O74LN|Qm z*z#U)=XUr**{563lreAYH@~i&*@2;3tT>ZBxmlkCmn8E4oj(at>QhyJZKThEfDHdA zQ<-{(p@FtCW3L}{ak})RLx7E`VgkD$r+Eq2IWGaitEUT09oWt$kKxohopA zE*6yEZ`o(zh<%sW(Vb9Tiv8WG_wFxJ#hQryIjXW-2o+ksQLmO+Bbq-!#b2hf-tk8 F{Xaq+d0PMg literal 0 HcmV?d00001 diff --git a/languages/wpvulnerability-ja.po b/languages/wpvulnerability-ja.po new file mode 100644 index 0000000..5c12c2c --- /dev/null +++ b/languages/wpvulnerability-ja.po @@ -0,0 +1,2194 @@ +msgid "" +msgstr "" +"Project-Id-Version: Plugins - WPVulnerability - Development (trunk)\n" +"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wpvulnerability\n" +"POT-Creation-Date: 2026-05-27T16:32:22+00:00\n" +"PO-Revision-Date: 2025-02-21 14:03:32+0000\n" +"Language: ja_JP\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: GlotPress/4.0.3\n" + +#. Plugin Name of the plugin +#: wpvulnerability.php wpvulnerability-admin.php:1782 +#: wpvulnerability-admin.php:1783 wpvulnerability-adminms.php:1945 +#: wpvulnerability-adminms.php:1946 wpvulnerability-notifications.php:105 +msgid "WPVulnerability" +msgstr "WPVulnerability" + +#. Plugin URI of the plugin +#: wpvulnerability.php +msgid "https://www.wpvulnerability.com/plugin/" +msgstr "https://www.wpvulnerability.com/plugin/" + +#. Description of the plugin +#: wpvulnerability.php +msgid "" +"Receive information about possible vulnerabilities in your WordPress from " +"WordPress Vulnerability Database API." +msgstr "" +"WordPress Vulnerability Database API から WordPress サイトに存在する可能性の" +"ある脆弱性の情報を受け取ります。" + +#. Author of the plugin +#: wpvulnerability.php +msgid "ROBOTSTXT" +msgstr "ROBOTSTXT" + +#. Author URI of the plugin +#: wpvulnerability.php +msgid "https://www.robotstxt.es/" +msgstr "https://www.robotstxt.es/" + +#: class-wpvulnerability-cli.php:35 class-wpvulnerability-config-cli.php:32 +msgid "" +"This command requires a WordPress administrator. Run with --" +"user=." +msgstr "" +"このコマンドには WordPress 管理者が必要です。--user= を付けて実" +"行してください。" + +#: class-wpvulnerability-cli.php:156 +msgid "No core vulnerabilities found." +msgstr "コアの脆弱性は見つかりませんでした。" + +#: class-wpvulnerability-cli.php:275 +msgid "No plugin vulnerabilities found." +msgstr "プラグインの脆弱性は見つかりませんでした。" + +#: class-wpvulnerability-cli.php:393 +msgid "No theme vulnerabilities found." +msgstr "テーマの脆弱性は見つかりませんでした。" + +#. translators: %s is the software name (php, apache, nginx, etc.) +#: class-wpvulnerability-cli.php:490 +#, php-format +msgid "No %s vulnerabilities found." +msgstr "%s の脆弱性は見つかりませんでした。" + +#: wpvulnerability-admin.php:63 wpvulnerability-adminms.php:227 +msgid "Data from source has been reloaded." +msgstr "ソースからデータをリロードしました。" + +#: wpvulnerability-admin.php:65 wpvulnerability-adminms.php:229 +msgid "You do not have permission to reload data." +msgstr "データをリロードする権限がありません。" + +#: wpvulnerability-admin.php:93 wpvulnerability-adminms.php:255 +msgid "Test email has been sent." +msgstr "テストメールを送信しました。" + +#: wpvulnerability-admin.php:95 wpvulnerability-adminms.php:259 +msgid "Test email has failed. Please, check your email settings." +msgstr "テストメールが失敗しました。メール設定を確認してください。" + +#: wpvulnerability-admin.php:98 wpvulnerability-adminms.php:263 +msgid "You do not have permission to send test emails." +msgstr "テストメールを送信する権限がありません。" + +#: wpvulnerability-admin.php:113 +msgid "WPVulnerability cron events have been repaired." +msgstr "WPVulnerability の cron イベントを修復しました。" + +#: wpvulnerability-admin.php:115 wpvulnerability-adminms.php:279 +msgid "You do not have permission to repair cron events." +msgstr "cron イベントを修復する権限がありません。" + +#: wpvulnerability-admin.php:127 wpvulnerability-adminms.php:291 +msgid "All logs have been deleted." +msgstr "すべてのログを削除しました。" + +#: wpvulnerability-admin.php:129 wpvulnerability-adminms.php:293 +msgid "You do not have permission to delete logs." +msgstr "ログを削除する権限がありません。" + +#: wpvulnerability-admin.php:146 +msgid "Uninstall preference saved." +msgstr "アンインストール設定を保存しました。" + +#: wpvulnerability-admin.php:153 wpvulnerability-adminms.php:316 +msgid "WPVulnerability has been reset to defaults and reloaded." +msgstr "WPVulnerability をデフォルトにリセットし、再読み込みしました。" + +#: wpvulnerability-admin.php:155 wpvulnerability-adminms.php:318 +msgid "You do not have permission to reset WPVulnerability." +msgstr "WPVulnerability をリセットする権限がありません。" + +#: wpvulnerability-admin.php:170 wpvulnerability-adminms.php:333 +msgid "All caches have been cleared." +msgstr "すべてのキャッシュをクリアしました。" + +#: wpvulnerability-admin.php:172 wpvulnerability-adminms.php:335 +msgid "You do not have permission to clear caches." +msgstr "キャッシュをクリアする権限がありません。" + +#: wpvulnerability-admin.php:187 wpvulnerability-adminms.php:350 +msgid "Plugin and theme signatures have been reset." +msgstr "プラグインとテーマのシグネチャをリセットしました。" + +#: wpvulnerability-admin.php:189 wpvulnerability-adminms.php:352 +msgid "You do not have permission to reset signatures." +msgstr "シグネチャをリセットする権限がありません。" + +#: wpvulnerability-admin.php:212 wpvulnerability-adminms.php:375 +msgid "You do not have permission to export debug information." +msgstr "デバッグ情報をエクスポートする権限がありません。" + +#: wpvulnerability-admin.php:224 wpvulnerability-adminms.php:387 +msgid "Database update has been executed." +msgstr "データベースの更新を実行しました。" + +#: wpvulnerability-admin.php:226 wpvulnerability-adminms.php:389 +msgid "You do not have permission to run database updates." +msgstr "データベースの更新を実行する権限がありません。" + +#: wpvulnerability-admin.php:247 wpvulnerability-adminms.php:410 +msgid "Notification has been sent." +msgstr "通知を送信しました。" + +#: wpvulnerability-admin.php:249 wpvulnerability-adminms.php:412 +msgid "Notification sending failed." +msgstr "通知の送信に失敗しました。" + +#: wpvulnerability-admin.php:252 wpvulnerability-adminms.php:415 +msgid "You do not have permission to send notifications." +msgstr "通知を送信する権限がありません。" + +#: wpvulnerability-admin.php:266 wpvulnerability-adminms.php:539 +#: wpvulnerability-schedule.php:323 +msgid "Notifications" +msgstr "通知" + +#: wpvulnerability-admin.php:269 wpvulnerability-adminms.php:542 +msgid "Analysis" +msgstr "分析" + +#: wpvulnerability-admin.php:272 wpvulnerability-adminms.php:545 +msgid "Logs" +msgstr "ログ" + +#: wpvulnerability-admin.php:275 wpvulnerability-adminms.php:548 +#: wpvulnerability-sitehealth.php:25 wpvulnerability-sitehealth.php:77 +#: wpvulnerability-sitehealth.php:129 wpvulnerability-sitehealth.php:210 +msgid "Security" +msgstr "セキュリティ" + +#: wpvulnerability-admin.php:278 wpvulnerability-adminms.php:551 +msgid "Tools" +msgstr "ツール" + +#: wpvulnerability-admin.php:285 wpvulnerability-adminms.php:558 +msgid "Debug" +msgstr "デバッグ" + +#: wpvulnerability-admin.php:290 wpvulnerability-adminms.php:563 +msgid "About" +msgstr "このプラグインについて" + +#: wpvulnerability-admin.php:427 wpvulnerability-adminms.php:700 +msgid "Notification Settings" +msgstr "通知設定" + +#: wpvulnerability-admin.php:430 wpvulnerability-adminms.php:703 +msgid "Configure how and when you want to receive vulnerability notifications." +msgstr "脆弱性通知をいつ、どのように受け取るかを設定してください。" + +#: wpvulnerability-admin.php:431 wpvulnerability-adminms.php:704 +msgid "" +"Stay informed about security vulnerabilities in your WordPress installation, " +"plugins, themes, and server software." +msgstr "" +"WordPress のインストール環境、プラグイン、テーマ、サーバーソフトウェアのセキュ" +"リティ脆弱性について常に最新の情報を受け取りましょう。" + +#: wpvulnerability-admin.php:438 wpvulnerability-adminms.php:711 +msgid "Cache Expiration Time" +msgstr "キャッシュの有効期限" + +#: wpvulnerability-admin.php:440 wpvulnerability-admin.php:814 +#: wpvulnerability-adminms.php:713 wpvulnerability-adminms.php:1087 +msgid "FORCED" +msgstr "強制" + +#: wpvulnerability-admin.php:444 wpvulnerability-adminms.php:717 +msgid "How long to cache vulnerability data before refreshing from the API." +msgstr "API から更新する前に脆弱性データをキャッシュしておく期間。" + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:453 wpvulnerability-admin.php:1891 +#: wpvulnerability-admin.php:3631 wpvulnerability-adminms.php:726 +#: wpvulnerability-adminms.php:2039 wpvulnerability-adminms.php:3825 +#, php-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d 時間" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:469 wpvulnerability-adminms.php:742 +#, php-format +msgid "" +"You can force the cache time via wp-config.php constant. Learn more →" +msgstr "" +"wp-config.php の定数でキャッシュ時間を強制できます。詳細はこちら →" + +#: wpvulnerability-admin.php:481 wpvulnerability-admin.php:3665 +#: wpvulnerability-adminms.php:754 wpvulnerability-adminms.php:3859 +msgid "Notification Frequency" +msgstr "通知の頻度" + +#: wpvulnerability-admin.php:484 wpvulnerability-adminms.php:757 +msgid "Choose how often you want to receive vulnerability notifications." +msgstr "脆弱性通知を受け取る頻度を選択してください。" + +#: wpvulnerability-admin.php:489 wpvulnerability-adminms.php:762 +msgid "Never - Disable automatic notifications" +msgstr "なし - 自動通知を無効にする" + +#: wpvulnerability-admin.php:493 wpvulnerability-adminms.php:766 +msgid "Daily - Receive notifications every day" +msgstr "毎日 - 毎日通知を受け取る" + +#: wpvulnerability-admin.php:497 wpvulnerability-adminms.php:770 +msgid "Weekly - Receive notifications once a week" +msgstr "毎週 - 週に一度通知を受け取る" + +#: wpvulnerability-admin.php:503 wpvulnerability-adminms.php:776 +msgid "Day:" +msgstr "曜日:" + +#: wpvulnerability-admin.php:505 wpvulnerability-admin.php:1955 +#: wpvulnerability-adminms.php:778 wpvulnerability-adminms.php:2115 +msgid "Monday" +msgstr "月曜日" + +#: wpvulnerability-admin.php:506 wpvulnerability-admin.php:1956 +#: wpvulnerability-adminms.php:779 wpvulnerability-adminms.php:2116 +msgid "Tuesday" +msgstr "火曜日" + +#: wpvulnerability-admin.php:507 wpvulnerability-admin.php:1957 +#: wpvulnerability-adminms.php:780 wpvulnerability-adminms.php:2117 +msgid "Wednesday" +msgstr "水曜日" + +#: wpvulnerability-admin.php:508 wpvulnerability-admin.php:1958 +#: wpvulnerability-adminms.php:781 wpvulnerability-adminms.php:2118 +msgid "Thursday" +msgstr "木曜日" + +#: wpvulnerability-admin.php:509 wpvulnerability-admin.php:1959 +#: wpvulnerability-adminms.php:782 wpvulnerability-adminms.php:2119 +msgid "Friday" +msgstr "金曜日" + +#: wpvulnerability-admin.php:510 wpvulnerability-admin.php:1960 +#: wpvulnerability-adminms.php:783 wpvulnerability-adminms.php:2120 +msgid "Saturday" +msgstr "土曜日" + +#: wpvulnerability-admin.php:511 wpvulnerability-admin.php:1961 +#: wpvulnerability-adminms.php:784 wpvulnerability-adminms.php:2121 +msgid "Sunday" +msgstr "日曜日" + +#: wpvulnerability-admin.php:515 wpvulnerability-adminms.php:788 +msgid "Time:" +msgstr "時刻:" + +#: wpvulnerability-admin.php:519 wpvulnerability-adminms.php:792 +msgid "(24-hour format, server timezone)" +msgstr "(24時間形式、サーバーのタイムゾーン)" + +#: wpvulnerability-admin.php:528 wpvulnerability-adminms.php:801 +msgid "Notification Channels" +msgstr "通知チャンネル" + +#: wpvulnerability-admin.php:531 wpvulnerability-adminms.php:804 +msgid "Select where you want to receive notifications." +msgstr "通知を受け取る場所を選択してください。" + +#: wpvulnerability-admin.php:536 wpvulnerability-admin.php:2011 +#: wpvulnerability-adminms.php:809 wpvulnerability-adminms.php:2169 +msgid "Email" +msgstr "メール" + +#: wpvulnerability-admin.php:539 wpvulnerability-adminms.php:812 +msgid "Email Addresses (separated by commas):" +msgstr "メールアドレス (カンマ区切り):" + +#: wpvulnerability-admin.php:541 wpvulnerability-adminms.php:814 +msgid "Default:" +msgstr "デフォルト:" + +#: wpvulnerability-admin.php:546 wpvulnerability-admin.php:2016 +#: wpvulnerability-adminms.php:819 wpvulnerability-adminms.php:2174 +msgid "Slack" +msgstr "Slack" + +#: wpvulnerability-admin.php:549 wpvulnerability-adminms.php:822 +msgid "Slack Webhook URL:" +msgstr "Slack Webhook URL:" + +#. translators: %s: Slack documentation URL +#: wpvulnerability-admin.php:555 wpvulnerability-adminms.php:828 +#, php-format +msgid "" +"Learn how to " +"create a Slack incoming webhook →" +msgstr "" +"Slack の受信 " +"webhook の作成方法 →" + +#: wpvulnerability-admin.php:564 wpvulnerability-admin.php:2021 +#: wpvulnerability-adminms.php:837 wpvulnerability-adminms.php:2179 +msgid "Microsoft Teams" +msgstr "Microsoft Teams" + +#: wpvulnerability-admin.php:567 wpvulnerability-adminms.php:840 +msgid "Teams Webhook URL:" +msgstr "Teams Webhook URL:" + +#. translators: %s: Microsoft Teams documentation URL +#: wpvulnerability-admin.php:573 wpvulnerability-adminms.php:846 +#, php-format +msgid "" +"Learn how to " +"create a Teams incoming webhook →" +msgstr "" +"Teams の受信 " +"webhook の作成方法 →" + +#: wpvulnerability-admin.php:582 wpvulnerability-adminms.php:855 +msgid "Discord" +msgstr "Discord" + +#: wpvulnerability-admin.php:585 wpvulnerability-adminms.php:858 +msgid "Discord Webhook URL:" +msgstr "Discord Webhook URL:" + +#. translators: %s: Discord documentation URL +#: wpvulnerability-admin.php:591 wpvulnerability-adminms.php:864 +#, php-format +msgid "" +"Learn how to " +"create a Discord webhook →" +msgstr "" +"Discord の " +"webhook の作成方法 →" + +#: wpvulnerability-admin.php:600 wpvulnerability-adminms.php:873 +msgid "Telegram" +msgstr "Telegram" + +#: wpvulnerability-admin.php:603 wpvulnerability-adminms.php:876 +msgid "Telegram Bot Token:" +msgstr "Telegram Bot トークン:" + +#: wpvulnerability-admin.php:605 wpvulnerability-adminms.php:878 +msgid "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "形式: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:607 wpvulnerability-adminms.php:880 +msgid "Telegram Chat ID:" +msgstr "Telegram チャット ID:" + +#. translators: %s: Telegram documentation URL +#: wpvulnerability-admin.php:613 wpvulnerability-adminms.php:886 +#, php-format +msgid "" +"Learn how to " +"create a Telegram bot and get Chat ID →" +msgstr "" +"Telegram Bot " +"の作成方法とチャット ID の取得方法 →" + +#: wpvulnerability-admin.php:623 wpvulnerability-adminms.php:896 +msgid "Save Notification Settings" +msgstr "通知設定を保存" + +#: wpvulnerability-admin.php:700 wpvulnerability-admin.php:2552 +#: wpvulnerability-adminms.php:973 wpvulnerability-adminms.php:2459 +msgid "WordPress Components" +msgstr "WordPress コンポーネント" + +#: wpvulnerability-admin.php:703 wpvulnerability-admin.php:2560 +#: wpvulnerability-adminms.php:976 wpvulnerability-adminms.php:2467 +msgid "WordPress Core" +msgstr "WordPress コア" + +#: wpvulnerability-admin.php:707 wpvulnerability-admin.php:1472 +#: wpvulnerability-admin.php:1573 wpvulnerability-admin.php:2109 +#: wpvulnerability-admin.php:2571 wpvulnerability-adminms.php:980 +#: wpvulnerability-adminms.php:1744 wpvulnerability-adminms.php:1843 +#: wpvulnerability-adminms.php:2266 wpvulnerability-adminms.php:2478 +msgid "Plugins" +msgstr "プラグイン" + +#: wpvulnerability-admin.php:711 wpvulnerability-admin.php:1473 +#: wpvulnerability-admin.php:1574 wpvulnerability-admin.php:2114 +#: wpvulnerability-admin.php:2587 wpvulnerability-adminms.php:984 +#: wpvulnerability-adminms.php:1745 wpvulnerability-adminms.php:1844 +#: wpvulnerability-adminms.php:2271 wpvulnerability-adminms.php:2494 +msgid "Themes" +msgstr "テーマ" + +#: wpvulnerability-admin.php:717 wpvulnerability-adminms.php:990 +msgid "Software & Languages" +msgstr "ソフトウェア & 言語" + +#: wpvulnerability-admin.php:720 wpvulnerability-admin.php:1474 +#: wpvulnerability-admin.php:2119 wpvulnerability-adminms.php:993 +#: wpvulnerability-adminms.php:1746 wpvulnerability-adminms.php:2276 +#: wpvulnerability-sitehealth.php:178 +msgid "PHP" +msgstr "PHP" + +#: wpvulnerability-admin.php:726 wpvulnerability-adminms.php:999 +msgid "Web Servers" +msgstr "ウェブサーバー" + +#: wpvulnerability-admin.php:729 wpvulnerability-admin.php:1475 +#: wpvulnerability-admin.php:2124 wpvulnerability-adminms.php:1002 +#: wpvulnerability-adminms.php:1747 wpvulnerability-adminms.php:2281 +#: wpvulnerability-sitehealth.php:179 +msgid "Apache HTTPD" +msgstr "Apache HTTPD" + +#: wpvulnerability-admin.php:733 wpvulnerability-admin.php:1476 +#: wpvulnerability-admin.php:2129 wpvulnerability-adminms.php:1006 +#: wpvulnerability-adminms.php:1748 wpvulnerability-adminms.php:2286 +msgid "nginx" +msgstr "nginx" + +#: wpvulnerability-admin.php:739 wpvulnerability-adminms.php:1012 +msgid "Databases" +msgstr "データベース" + +#: wpvulnerability-admin.php:742 wpvulnerability-admin.php:1477 +#: wpvulnerability-admin.php:2134 wpvulnerability-adminms.php:1015 +#: wpvulnerability-adminms.php:1749 wpvulnerability-adminms.php:2291 +#: wpvulnerability-sitehealth.php:181 +msgid "MariaDB" +msgstr "MariaDB" + +#: wpvulnerability-admin.php:746 wpvulnerability-admin.php:1478 +#: wpvulnerability-admin.php:2139 wpvulnerability-adminms.php:1019 +#: wpvulnerability-adminms.php:1750 wpvulnerability-adminms.php:2296 +#: wpvulnerability-sitehealth.php:182 +msgid "MySQL" +msgstr "MySQL" + +#: wpvulnerability-admin.php:750 wpvulnerability-admin.php:1483 +#: wpvulnerability-admin.php:2164 wpvulnerability-admin.php:3104 +#: wpvulnerability-adminms.php:1023 wpvulnerability-adminms.php:1755 +#: wpvulnerability-adminms.php:2321 wpvulnerability-adminms.php:3281 +msgid "SQLite" +msgstr "SQLite" + +#: wpvulnerability-admin.php:756 wpvulnerability-adminms.php:1029 +msgid "Additional Tools" +msgstr "追加ツール" + +#: wpvulnerability-admin.php:759 wpvulnerability-admin.php:1479 +#: wpvulnerability-admin.php:2144 wpvulnerability-admin.php:3101 +#: wpvulnerability-adminms.php:1032 wpvulnerability-adminms.php:1751 +#: wpvulnerability-adminms.php:2301 wpvulnerability-adminms.php:3278 +#: wpvulnerability-sitehealth.php:183 +msgid "ImageMagick" +msgstr "ImageMagick" + +#: wpvulnerability-admin.php:763 wpvulnerability-admin.php:1480 +#: wpvulnerability-admin.php:2149 wpvulnerability-adminms.php:1036 +#: wpvulnerability-adminms.php:1752 wpvulnerability-adminms.php:2306 +#: wpvulnerability-sitehealth.php:184 +msgid "curl" +msgstr "curl" + +#: wpvulnerability-admin.php:767 wpvulnerability-admin.php:1481 +#: wpvulnerability-admin.php:2154 wpvulnerability-adminms.php:1040 +#: wpvulnerability-adminms.php:1753 wpvulnerability-adminms.php:2311 +msgid "memcached" +msgstr "memcached" + +#: wpvulnerability-admin.php:771 wpvulnerability-admin.php:1482 +#: wpvulnerability-admin.php:2159 wpvulnerability-admin.php:3102 +#: wpvulnerability-adminms.php:1044 wpvulnerability-adminms.php:1754 +#: wpvulnerability-adminms.php:2316 wpvulnerability-adminms.php:3279 +msgid "Redis" +msgstr "Redis" + +#: wpvulnerability-admin.php:784 wpvulnerability-adminms.php:1057 +msgid "Component Analysis Settings" +msgstr "コンポーネント分析設定" + +#: wpvulnerability-admin.php:787 wpvulnerability-adminms.php:1060 +msgid "Enable or disable vulnerability analysis for specific components." +msgstr "特定のコンポーネントの脆弱性分析を有効または無効にします。" + +#: wpvulnerability-admin.php:788 wpvulnerability-adminms.php:1061 +msgid "" +"Check the components you want to HIDE from vulnerability scans and reports. " +"Unchecked components will be actively analyzed. Components with active " +"analysis are shown in green, hidden components in red." +msgstr "" +"脆弱性スキャンとレポートから非表示にするコンポーネントにチェックを入れてくだ" +"さい。チェックされていないコンポーネントは積極的に分析されます。分析が有効な" +"コンポーネントは緑色、非表示のコンポーネントは赤色で表示されます。" + +#: wpvulnerability-admin.php:820 wpvulnerability-adminms.php:1093 +msgid "Hidden (forced by constant)" +msgstr "非表示 (定数により強制)" + +#: wpvulnerability-admin.php:823 wpvulnerability-adminms.php:1096 +msgid "🔴 Analysis disabled" +msgstr "🔴 分析無効" + +#: wpvulnerability-admin.php:826 wpvulnerability-adminms.php:1099 +msgid "🟢 Analysis active" +msgstr "🟢 分析有効" + +#: wpvulnerability-admin.php:848 wpvulnerability-adminms.php:1121 +msgid "Tip:" +msgstr "ヒント:" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:852 wpvulnerability-adminms.php:1125 +#, php-format +msgid "" +"You can force-disable components via wp-config.php constants. Learn more about force-hiding " +"checks →" +msgstr "" +"wp-config.php の定数でコンポーネントを強制的に無効にできます。チェックの強制非表示について詳し" +"く →" + +#: wpvulnerability-admin.php:860 wpvulnerability-adminms.php:1133 +msgid "Save Analysis Settings" +msgstr "分析設定を保存" + +#: wpvulnerability-admin.php:920 wpvulnerability-adminms.php:1193 +msgid "« Previous" +msgstr "« 前へ" + +#: wpvulnerability-admin.php:921 wpvulnerability-adminms.php:1194 +msgid "Next »" +msgstr "次へ »" + +#: wpvulnerability-admin.php:932 wpvulnerability-adminms.php:1205 +msgid "Log entry not found or has been removed." +msgstr "ログエントリーが見つからないか、削除されています。" + +#: wpvulnerability-admin.php:935 wpvulnerability-adminms.php:1208 +msgid "Unable to load the requested log entry." +msgstr "要求されたログエントリーを読み込めません。" + +#: wpvulnerability-admin.php:945 wpvulnerability-adminms.php:1218 +msgid "Log Configuration" +msgstr "ログ設定" + +#: wpvulnerability-admin.php:950 wpvulnerability-adminms.php:1223 +msgid "Total Logs" +msgstr "ログの合計" + +#: wpvulnerability-admin.php:954 wpvulnerability-adminms.php:1227 +msgid "Retention Period" +msgstr "保存期間" + +#: wpvulnerability-admin.php:959 wpvulnerability-admin.php:1301 +#: wpvulnerability-admin.php:3029 wpvulnerability-admin.php:3043 +#: wpvulnerability-admin.php:3475 wpvulnerability-admin.php:3483 +#: wpvulnerability-adminms.php:1232 wpvulnerability-adminms.php:1574 +#: wpvulnerability-adminms.php:3206 wpvulnerability-adminms.php:3220 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Disabled" +msgstr "無効" + +#. translators: %d: Number of days. +#. translators: %d: number of days +#: wpvulnerability-admin.php:962 wpvulnerability-admin.php:984 +#: wpvulnerability-admin.php:3641 wpvulnerability-adminms.php:1235 +#: wpvulnerability-adminms.php:1257 wpvulnerability-adminms.php:3835 +#, php-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d 日" + +#: wpvulnerability-admin.php:975 wpvulnerability-adminms.php:1248 +msgid "Log Retention Period" +msgstr "ログ保存期間" + +#: wpvulnerability-admin.php:981 wpvulnerability-adminms.php:1254 +msgid "None (Disabled)" +msgstr "なし (無効)" + +#: wpvulnerability-admin.php:1004 wpvulnerability-adminms.php:1277 +msgid "" +"This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant." +msgstr "" +"この値は WPVULNERABILITY_LOG_RETENTION_DAYS 定数によって強制されています。" + +#: wpvulnerability-admin.php:1009 wpvulnerability-adminms.php:1282 +msgid "" +"Choose how long WPVulnerability should keep API response logs. Older logs " +"are automatically deleted." +msgstr "" +"WPVulnerability が API レスポンスログを保存する期間を選択してください。古いログ" +"は自動的に削除されます。" + +#: wpvulnerability-admin.php:1013 wpvulnerability-adminms.php:1286 +msgid "Save Configuration" +msgstr "設定を保存" + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "Log retention is currently disabled." +msgstr "ログの保存は現在無効です。" + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "API responses are not being saved." +msgstr "API レスポンスは保存されていません。" + +#: wpvulnerability-admin.php:1031 wpvulnerability-adminms.php:1304 +msgid "Log Details" +msgstr "ログの詳細" + +#: wpvulnerability-admin.php:1035 wpvulnerability-admin.php:1104 +#: wpvulnerability-adminms.php:1308 wpvulnerability-adminms.php:1377 +msgid "Date" +msgstr "日付" + +#: wpvulnerability-admin.php:1039 wpvulnerability-admin.php:1105 +#: wpvulnerability-adminms.php:1312 wpvulnerability-adminms.php:1378 +msgid "API Endpoint" +msgstr "API エンドポイント" + +#: wpvulnerability-admin.php:1044 wpvulnerability-adminms.php:1317 +msgid "API Response" +msgstr "API レスポンス" + +#: wpvulnerability-admin.php:1049 wpvulnerability-adminms.php:1322 +msgid "Back to Logs" +msgstr "ログに戻る" + +#: wpvulnerability-admin.php:1058 wpvulnerability-adminms.php:1331 +msgid "No logs available" +msgstr "利用可能なログがありません" + +#: wpvulnerability-admin.php:1059 wpvulnerability-adminms.php:1332 +msgid "API response logs will appear here once the vulnerability scanner runs." +msgstr "脆弱性スキャナーが実行されると、API レスポンスログがここに表示されます。" + +#: wpvulnerability-admin.php:1063 wpvulnerability-adminms.php:1336 +msgid "API Response Logs" +msgstr "API レスポンスログ" + +#: wpvulnerability-admin.php:1073 wpvulnerability-adminms.php:1346 +msgid "Show:" +msgstr "表示:" + +#: wpvulnerability-admin.php:1082 wpvulnerability-adminms.php:1355 +msgid "Apply" +msgstr "適用" + +#. translators: 1: first item, 2: last item, 3: total items +#: wpvulnerability-admin.php:1090 wpvulnerability-adminms.php:1363 +#, php-format +msgid "Showing %1$s–%2$s of %3$s" +msgstr "%3$s 件中 %1$s〜%2$s 件を表示" + +#: wpvulnerability-admin.php:1106 wpvulnerability-adminms.php:1379 +msgid "Actions" +msgstr "操作" + +#: wpvulnerability-admin.php:1133 wpvulnerability-admin.php:3957 +#: wpvulnerability-adminms.php:1406 wpvulnerability-adminms.php:4151 +msgid "View" +msgstr "表示" + +#: wpvulnerability-admin.php:1150 wpvulnerability-adminms.php:1423 +msgid "Danger Zone" +msgstr "危険ゾーン" + +#: wpvulnerability-admin.php:1152 wpvulnerability-adminms.php:1425 +msgid "Permanently delete all API response logs. This action cannot be undone." +msgstr "すべての API レスポンスログを完全に削除します。この操作は元に戻せません。" + +#: wpvulnerability-admin.php:1154 wpvulnerability-adminms.php:1427 +msgid "Are you sure you want to delete all logs? This action cannot be undone." +msgstr "すべてのログを削除しますか?この操作は元に戻せません。" + +#: wpvulnerability-admin.php:1157 wpvulnerability-adminms.php:1430 +msgid "Delete All Logs" +msgstr "すべてのログを削除" + +#: wpvulnerability-admin.php:1201 wpvulnerability-adminms.php:1474 +msgid "Reload Data from API" +msgstr "API からデータを再読み込み" + +#: wpvulnerability-admin.php:1204 wpvulnerability-adminms.php:1477 +msgid "" +"Reload all Core, Plugins, Themes and other components information directly " +"from the API to have updated data. This will clear the cache and fetch fresh " +"vulnerability information." +msgstr "" +"コア、プラグイン、テーマ、その他のコンポーネントの情報を API から直接再読み込" +"みして最新データを取得します。キャッシュをクリアし、最新の脆弱性情報を取得し" +"ます。" + +#: wpvulnerability-admin.php:1209 wpvulnerability-adminms.php:1482 +msgid "Reload Data" +msgstr "データリロード" + +#: wpvulnerability-admin.php:1218 wpvulnerability-adminms.php:1491 +msgid "Test Email Notifications" +msgstr "メール通知テスト" + +#: wpvulnerability-admin.php:1221 wpvulnerability-adminms.php:1494 +msgid "" +"Send a test email notification with current vulnerability data to verify " +"your email configuration is working correctly." +msgstr "" +"現在の脆弱性データを使用してテストメール通知を送信し、メール設定が正しく機能" +"しているかを確認します。" + +#: wpvulnerability-admin.php:1231 wpvulnerability-adminms.php:1504 +msgid "From address (configured via constant):" +msgstr "差出人アドレス (定数で設定):" + +#: wpvulnerability-admin.php:1243 wpvulnerability-adminms.php:1516 +msgid "From address (default):" +msgstr "差出人アドレス (デフォルト):" + +#: wpvulnerability-admin.php:1252 wpvulnerability-adminms.php:1525 +msgid "Learn how to customize the email sender address →" +msgstr "メール送信者アドレスのカスタマイズ方法 →" + +#: wpvulnerability-admin.php:1258 wpvulnerability-adminms.php:1531 +msgid "Send Test Email" +msgstr "テストメールを送信" + +#: wpvulnerability-admin.php:1267 wpvulnerability-adminms.php:1540 +msgid "WP-Cron Status" +msgstr "WP-Cron ステータス" + +#: wpvulnerability-admin.php:1270 wpvulnerability-adminms.php:1543 +msgid "" +"View and manage WP-Cron scheduled events. Compare expected schedules with " +"actual cron jobs to ensure automated tasks are running correctly." +msgstr "" +"WP-Cron のスケジュールされたイベントを表示・管理します。想定されるスケジュール" +"と実際の cron ジョブを比較して、自動タスクが正しく実行されているかを確認しま" +"す。" + +#: wpvulnerability-admin.php:1275 wpvulnerability-adminms.php:1548 +msgid "No cron data available." +msgstr "利用可能な cron データがありません。" + +#: wpvulnerability-admin.php:1281 wpvulnerability-adminms.php:1554 +msgid "Hook" +msgstr "フック" + +#: wpvulnerability-admin.php:1282 wpvulnerability-adminms.php:1555 +msgid "Expected" +msgstr "想定" + +#: wpvulnerability-admin.php:1283 wpvulnerability-adminms.php:1556 +msgid "Found" +msgstr "検出" + +#: wpvulnerability-admin.php:1284 wpvulnerability-adminms.php:1557 +msgid "Next Run" +msgstr "次回実行" + +#: wpvulnerability-admin.php:1285 wpvulnerability-admin.php:3236 +#: wpvulnerability-admin.php:3559 wpvulnerability-adminms.php:1558 +#: wpvulnerability-adminms.php:3413 wpvulnerability-adminms.php:3753 +msgid "Status" +msgstr "ステータス" + +#: wpvulnerability-admin.php:1299 wpvulnerability-adminms.php:1572 +msgid "Not expected" +msgstr "想定外" + +#: wpvulnerability-admin.php:1321 wpvulnerability-adminms.php:1594 +#: wpvulnerability-general.php:1871 wpvulnerability-general.php:1872 +msgid "None" +msgstr "None" + +#: wpvulnerability-admin.php:1356 wpvulnerability-adminms.php:1629 +msgid "OK" +msgstr "OK" + +#: wpvulnerability-admin.php:1366 wpvulnerability-adminms.php:1639 +msgid "⚠️ Unexpected WPVulnerability Events" +msgstr "⚠️ 予期しない WPVulnerability イベント" + +#: wpvulnerability-admin.php:1383 wpvulnerability-adminms.php:1656 +msgid "No interval" +msgstr "間隔なし" + +#: wpvulnerability-admin.php:1390 wpvulnerability-adminms.php:1663 +msgid "Next:" +msgstr "次回:" + +#: wpvulnerability-admin.php:1400 wpvulnerability-adminms.php:1673 +msgid "Repair Cron Events" +msgstr "cron イベントを修復" + +#: wpvulnerability-admin.php:1408 wpvulnerability-adminms.php:1681 +msgid "Uninstall Data" +msgstr "アンインストールデータ" + +#: wpvulnerability-admin.php:1410 wpvulnerability-adminms.php:1683 +msgid "" +"By default, all plugin data is preserved when WPVulnerability is deleted. " +"Enable the option below only if you want all options, logs, and cached data " +"permanently removed on uninstall." +msgstr "" +"デフォルトでは、WPVulnerability を削除してもすべてのプラグインデータは保存さ" +"れます。アンインストール時にすべてのオプション、ログ、キャッシュデータを完全" +"に削除したい場合のみ、以下のオプションを有効にしてください。" + +#: wpvulnerability-admin.php:1420 wpvulnerability-adminms.php:1693 +msgid "Delete all plugin data on uninstall" +msgstr "アンインストール時にすべてのプラグインデータを削除" + +#: wpvulnerability-admin.php:1423 wpvulnerability-adminms.php:1696 +msgid "" +"Default: unchecked (data preserved). Check only if you want a clean removal." +msgstr "デフォルト: チェックなし (データ保存)。完全削除を希望する場合のみチェックしてください。" + +#: wpvulnerability-admin.php:1425 wpvulnerability-adminms.php:1698 +msgid "Save preference" +msgstr "設定を保存" + +#: wpvulnerability-admin.php:1432 wpvulnerability-adminms.php:1705 +msgid "Reset WPVulnerability" +msgstr "WPVulnerability をリセット" + +#: wpvulnerability-admin.php:1434 wpvulnerability-adminms.php:1707 +msgid "" +"Delete all WPVulnerability settings, cached data, logs, and scheduled " +"events, then restore defaults and reload data from the API." +msgstr "" +"WPVulnerability のすべての設定、キャッシュデータ、ログ、スケジュールされたイベ" +"ントを削除し、デフォルトに戻して API からデータを再読み込みします。" + +#: wpvulnerability-admin.php:1436 wpvulnerability-adminms.php:1709 +msgid "This action cannot be undone." +msgstr "この操作は元に戻せません。" + +#: wpvulnerability-admin.php:1438 wpvulnerability-adminms.php:1711 +msgid "" +"Are you sure you want to reset all WPVulnerability data? This action cannot " +"be undone." +msgstr "" +"すべての WPVulnerability データをリセットしますか?この操作は元に戻せません。" + +#: wpvulnerability-admin.php:1441 wpvulnerability-adminms.php:1713 +msgid "Reset Plugin" +msgstr "プラグインをリセット" + +#: wpvulnerability-admin.php:1468 wpvulnerability-adminms.php:1740 +msgid "Vulnerability Database Statistics" +msgstr "脆弱性データベース統計" + +#. translators: number of vulnerabilities. +#: wpvulnerability-admin.php:1510 wpvulnerability-adminms.php:1782 +#, php-format +msgid "%s vulnerability" +msgid_plural "%s vulnerabilities" +msgstr[0] "%s 件の脆弱性" + +#. translators: number of products. +#: wpvulnerability-admin.php:1520 wpvulnerability-adminms.php:1792 +#, php-format +msgid "(%s product)" +msgid_plural "(%s products)" +msgstr[0] "(%s 製品)" + +#: wpvulnerability-admin.php:1527 wpvulnerability-adminms.php:1799 +msgid "No data" +msgstr "データなし" + +#. translators: date of last update. +#: wpvulnerability-admin.php:1544 wpvulnerability-adminms.php:1814 +#, php-format +msgid "Database last updated: %s" +msgstr "データベース最終更新: %s" + +#: wpvulnerability-admin.php:1566 wpvulnerability-adminms.php:1836 +msgid "Intelligence Sources" +msgstr "インテリジェンスソース" + +#: wpvulnerability-admin.php:1567 wpvulnerability-adminms.php:1837 +msgid "Number of vulnerabilities contributed by each intelligence source." +msgstr "各インテリジェンスソースが提供した脆弱性の数。" + +#: wpvulnerability-admin.php:1571 wpvulnerability-adminms.php:1841 +msgid "Source" +msgstr "ソース" + +#: wpvulnerability-admin.php:1572 wpvulnerability-admin.php:2104 +#: wpvulnerability-adminms.php:1842 wpvulnerability-adminms.php:2261 +msgid "Core" +msgstr "コア" + +#: wpvulnerability-admin.php:1603 wpvulnerability-adminms.php:1873 +msgid "Sponsors" +msgstr "スポンサー" + +#: wpvulnerability-admin.php:1626 wpvulnerability-adminms.php:1896 +msgid "No sponsor data available." +msgstr "スポンサーデータがありません。" + +#: wpvulnerability-admin.php:1633 wpvulnerability-adminms.php:1903 +msgid "Contributors" +msgstr "貢献者" + +#: wpvulnerability-admin.php:1656 wpvulnerability-adminms.php:1926 +msgid "No contributor data available." +msgstr "貢献者データがありません。" + +#: wpvulnerability-admin.php:1674 wpvulnerability-adminms.php:432 +msgid "You do not have sufficient permissions to access this page." +msgstr "このページにアクセスするための十分な権限がありません。" + +#: wpvulnerability-admin.php:1684 wpvulnerability-adminms.php:441 +msgid "WPVulnerability settings" +msgstr "WPVulnerability 設定" + +#: wpvulnerability-admin.php:1801 wpvulnerability-adminms.php:1963 +msgid "Configure and save these settings to receive notifications." +msgstr "通知を受け取るためにこれらの設定を構成して保存してください。" + +#: wpvulnerability-admin.php:1814 wpvulnerability-adminms.php:2071 +msgid "Configure and save these settings to hide vulnerabilities." +msgstr "脆弱性を非表示にするためにこれらの設定を構成して保存してください。" + +#: wpvulnerability-admin.php:1845 wpvulnerability-adminms.php:1993 +msgid "Default administrator email" +msgstr "デフォルトの管理者メールアドレス" + +#: wpvulnerability-admin.php:1909 wpvulnerability-adminms.php:2057 +msgid "Read more if you want to force the cache time." +msgstr "キャッシュ時間を強制する方法の詳細はこちら。" + +#: wpvulnerability-admin.php:1939 wpvulnerability-adminms.php:2099 +msgid "Never" +msgstr "なし" + +#: wpvulnerability-admin.php:1944 wpvulnerability-adminms.php:2104 +msgid "Daily" +msgstr "毎日" + +#: wpvulnerability-admin.php:1949 wpvulnerability-adminms.php:2109 +msgid "Weekly" +msgstr "週間" + +#: wpvulnerability-admin.php:1953 wpvulnerability-adminms.php:2113 +msgid "Day" +msgstr "曜日" + +#: wpvulnerability-admin.php:1966 wpvulnerability-adminms.php:2126 +msgid "Hour" +msgstr "時" + +#: wpvulnerability-admin.php:1968 wpvulnerability-adminms.php:2128 +msgid "Minute" +msgstr "分" + +#: wpvulnerability-admin.php:2166 wpvulnerability-adminms.php:2323 +msgid "Read more about how to force the deactivation of an item." +msgstr "項目の強制無効化方法の詳細はこちら。" + +#: wpvulnerability-admin.php:2292 wpvulnerability-adminms.php:2870 +msgid "" +"Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com" +msgstr "" +"無効な Slack webhook URL です。hooks.slack.com からの有効な HTTPS URL である必" +"要があります。" + +#: wpvulnerability-admin.php:2315 wpvulnerability-adminms.php:2893 +msgid "" +"Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office." +"com, office365.com, or api.hooks.microsoft.com" +msgstr "" +"無効な Microsoft Teams webhook URL です。office.com、office365.com、または " +"api.hooks.microsoft.com からの有効な HTTPS URL である必要があります。" + +#: wpvulnerability-admin.php:2338 wpvulnerability-adminms.php:2916 +msgid "" +"Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or " +"discordapp.com" +msgstr "" +"無効な Discord webhook URL です。discord.com または discordapp.com からの有効" +"な HTTPS URL である必要があります。" + +#: wpvulnerability-admin.php:2357 wpvulnerability-adminms.php:2935 +msgid "" +"Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-" +"zyx57W2v1u123ew11" +msgstr "" +"無効な Telegram Bot トークン形式です。次のような形式である必要があります: " +"123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:2493 wpvulnerability-adminms.php:2400 +msgid "All Clear" +msgstr "問題なし" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2503 wpvulnerability-adminms.php:2410 +#, php-format +msgid "%d Critical Issue Found" +msgid_plural "%d Critical Issues Found" +msgstr[0] "%d 件の重大な問題が見つかりました" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2508 wpvulnerability-adminms.php:2415 +#, php-format +msgid "%d Issue Found" +msgid_plural "%d Issues Found" +msgstr[0] "%d 件の問題が見つかりました" + +#: wpvulnerability-admin.php:2515 wpvulnerability-adminms.php:2422 +msgid "Never checked" +msgstr "未チェック" + +#. translators: %d: number of minutes +#: wpvulnerability-admin.php:2523 wpvulnerability-adminms.php:2430 +#, php-format +msgid "%d minute ago" +msgid_plural "%d minutes ago" +msgstr[0] "%d 分前" + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:2527 wpvulnerability-adminms.php:2434 +#, php-format +msgid "%d hour ago" +msgid_plural "%d hours ago" +msgstr[0] "%d 時間前" + +#. translators: %s: time since last check +#: wpvulnerability-admin.php:2539 wpvulnerability-adminms.php:2446 +#, php-format +msgid "Last checked: %s" +msgstr "最終チェック: %s" + +#: wpvulnerability-admin.php:2540 wpvulnerability-adminms.php:2447 +msgid "Refresh Now" +msgstr "今すぐ更新" + +#: wpvulnerability-admin.php:2547 wpvulnerability-adminms.php:2454 +msgid "No vulnerabilities detected" +msgstr "脆弱性は検出されていません" + +#: wpvulnerability-admin.php:2548 wpvulnerability-adminms.php:2455 +msgid "Your site is up to date and secure" +msgstr "サイトは最新で安全です" + +#: wpvulnerability-admin.php:2616 wpvulnerability-adminms.php:2523 +msgid "Server Software" +msgstr "サーバーソフトウェア" + +#: wpvulnerability-admin.php:2829 wpvulnerability-adminms.php:2736 +msgid "Site Health" +msgstr "サイトヘルス" + +#: wpvulnerability-admin.php:2831 wpvulnerability-adminms.php:2738 +#: wpvulnerability-run.php:33 +msgid "Settings" +msgstr "設定" + +#: wpvulnerability-admin.php:2846 wpvulnerability-adminms.php:2754 +msgid "WPVulnerability Status" +msgstr "WPVulnerability ステータス" + +#: wpvulnerability-admin.php:2878 wpvulnerability-adminms.php:3052 +msgid "Receive vulnerability notifications" +msgstr "脆弱性通知を受け取る" + +#: wpvulnerability-admin.php:2886 wpvulnerability-adminms.php:3060 +msgid "Cache expiration time" +msgstr "キャッシュの有効期限" + +#: wpvulnerability-admin.php:2895 wpvulnerability-adminms.php:3069 +msgid "How often you want to receive notifications" +msgstr "通知を受け取る頻度" + +#: wpvulnerability-admin.php:2904 wpvulnerability-adminms.php:3078 +msgid "Where do you want to receive notifications?" +msgstr "通知の受け取り先は?" + +#: wpvulnerability-admin.php:2913 wpvulnerability-adminms.php:3087 +msgid "Email addresses to notify (separated by commas)" +msgstr "通知するメールアドレス (カンマ区切り)" + +#: wpvulnerability-admin.php:2922 wpvulnerability-adminms.php:3096 +msgid "Slack webhook URL" +msgstr "Slack webhook URL" + +#: wpvulnerability-admin.php:2931 wpvulnerability-adminms.php:3105 +msgid "Teams webhook URL" +msgstr "Teams webhook URL" + +#: wpvulnerability-admin.php:2950 wpvulnerability-adminms.php:3126 +msgid "Vulnerabilities to hide" +msgstr "非表示にする脆弱性" + +#: wpvulnerability-admin.php:2958 wpvulnerability-adminms.php:3134 +msgid "What do you want to hide?" +msgstr "何を非表示にしますか?" + +#: wpvulnerability-admin.php:3008 wpvulnerability-adminms.php:3185 +msgid "Standard (Hybrid Detection)" +msgstr "標準 (ハイブリッド検出)" + +#: wpvulnerability-admin.php:3009 wpvulnerability-adminms.php:3186 +msgid "Strict (Extensions Only)" +msgstr "厳格 (拡張機能のみ)" + +#: wpvulnerability-admin.php:3010 wpvulnerability-adminms.php:3187 +msgid "Disabled (No Detection)" +msgstr "無効 (検出なし)" + +#: wpvulnerability-admin.php:3016 wpvulnerability-adminms.php:3193 +msgid "Security Status" +msgstr "セキュリティステータス" + +#: wpvulnerability-admin.php:3020 wpvulnerability-adminms.php:3197 +msgid "Security Mode" +msgstr "セキュリティモード" + +#: wpvulnerability-admin.php:3025 wpvulnerability-adminms.php:3202 +msgid "Shell Execution" +msgstr "シェル実行" + +#: wpvulnerability-admin.php:3027 wpvulnerability-admin.php:3475 +#: wpvulnerability-admin.php:3483 wpvulnerability-adminms.php:3204 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Enabled" +msgstr "有効" + +#: wpvulnerability-admin.php:3034 wpvulnerability-adminms.php:3211 +msgid "Audit Logging" +msgstr "監査ログ" + +#. translators: %d: number of days +#: wpvulnerability-admin.php:3039 wpvulnerability-adminms.php:3216 +#, php-format +msgid "Enabled (%d days)" +msgstr "有効 (%d 日)" + +#: wpvulnerability-admin.php:3048 wpvulnerability-adminms.php:3225 +msgid "Total Log Entries" +msgstr "ログエントリーの合計" + +#: wpvulnerability-admin.php:3055 wpvulnerability-adminms.php:3232 +msgid "Last Shell Execution" +msgstr "最後のシェル実行" + +#. translators: %s: time ago +#: wpvulnerability-admin.php:3061 wpvulnerability-admin.php:3266 +#: wpvulnerability-adminms.php:3238 wpvulnerability-adminms.php:3441 +#, php-format +msgid "%s ago" +msgstr "%s 前" + +#: wpvulnerability-admin.php:3073 wpvulnerability-adminms.php:3250 +msgid "" +"Configure security settings via wp-config.php constants: " +"WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, " +"WPVULNERABILITY_SHELL_EXEC_WHITELIST." +msgstr "" +"wp-config.php の定数でセキュリティ設定を構成してください: " +"WPVULNERABILITY_DISABLE_SHELL_EXEC、WPVULNERABILITY_SECURITY_MODE、" +"WPVULNERABILITY_SHELL_EXEC_WHITELIST。" + +#. translators: %s: URL to security documentation +#: wpvulnerability-admin.php:3079 wpvulnerability-adminms.php:3256 +#, php-format +msgid "" +"See security " +"configuration documentation for details." +msgstr "" +"詳細はセキュリ" +"ティ設定ドキュメントをご覧ください。" + +#: wpvulnerability-admin.php:3103 wpvulnerability-adminms.php:3280 +msgid "Memcached" +msgstr "Memcached" + +#: wpvulnerability-admin.php:3131 wpvulnerability-adminms.php:3308 +msgid "Imagick Extension" +msgstr "Imagick 拡張" + +#: wpvulnerability-admin.php:3132 wpvulnerability-adminms.php:3309 +msgid "Redis Extension" +msgstr "Redis 拡張" + +#: wpvulnerability-admin.php:3133 wpvulnerability-adminms.php:3310 +msgid "Memcached Extension" +msgstr "Memcached 拡張" + +#: wpvulnerability-admin.php:3134 wpvulnerability-adminms.php:3311 +msgid "Memcache Extension" +msgstr "Memcache 拡張" + +#: wpvulnerability-admin.php:3135 wpvulnerability-adminms.php:3312 +msgid "SQLite3 Extension" +msgstr "SQLite3 拡張" + +#: wpvulnerability-admin.php:3136 wpvulnerability-adminms.php:3313 +msgid "PDO SQLite" +msgstr "PDO SQLite" + +#: wpvulnerability-admin.php:3137 wpvulnerability-adminms.php:3314 +msgid "Shell Command" +msgstr "シェルコマンド" + +#: wpvulnerability-admin.php:3138 wpvulnerability-adminms.php:3315 +msgid "Binary Check" +msgstr "バイナリチェック" + +#: wpvulnerability-admin.php:3139 wpvulnerability-adminms.php:3316 +msgid "Not Detected" +msgstr "検出されていません" + +#: wpvulnerability-admin.php:3143 wpvulnerability-adminms.php:3320 +msgid "Software Detection Methods" +msgstr "ソフトウェア検出方法" + +#: wpvulnerability-admin.php:3144 wpvulnerability-adminms.php:3321 +msgid "" +"Shows which detection method was used for each software component and the " +"reliability score." +msgstr "各ソフトウェアコンポーネントに使用された検出方法と信頼性スコアを表示します。" + +#: wpvulnerability-admin.php:3149 wpvulnerability-admin.php:3234 +#: wpvulnerability-admin.php:3558 wpvulnerability-adminms.php:3326 +#: wpvulnerability-adminms.php:3411 wpvulnerability-adminms.php:3752 +msgid "Component" +msgstr "コンポーネント" + +#: wpvulnerability-admin.php:3150 wpvulnerability-adminms.php:3327 +msgid "Version" +msgstr "バージョン" + +#: wpvulnerability-admin.php:3151 wpvulnerability-adminms.php:3328 +msgid "Detection Method" +msgstr "検出方法" + +#: wpvulnerability-admin.php:3152 wpvulnerability-adminms.php:3329 +msgid "Reliability" +msgstr "信頼性" + +#: wpvulnerability-admin.php:3164 wpvulnerability-adminms.php:3341 +msgid "Not detected" +msgstr "検出されていません" + +#: wpvulnerability-admin.php:3220 wpvulnerability-adminms.php:3397 +msgid "Shell Execution Audit Logs" +msgstr "シェル実行監査ログ" + +#: wpvulnerability-admin.php:3221 wpvulnerability-adminms.php:3398 +msgid "" +"Complete audit trail of shell command executions for security monitoring." +msgstr "セキュリティ監視のためのシェルコマンド実行の完全な監査記録。" + +#: wpvulnerability-admin.php:3226 wpvulnerability-adminms.php:3403 +msgid "No shell execution logs found." +msgstr "シェル実行ログが見つかりません。" + +#: wpvulnerability-admin.php:3227 wpvulnerability-adminms.php:3404 +msgid "" +"Logs will appear here when shell commands are executed for software " +"detection." +msgstr "ソフトウェア検出のためにシェルコマンドが実行されると、ここにログが表示されます。" + +#: wpvulnerability-admin.php:3233 wpvulnerability-adminms.php:3410 +msgid "Time" +msgstr "時刻" + +#: wpvulnerability-admin.php:3235 wpvulnerability-adminms.php:3412 +msgid "Command" +msgstr "コマンド" + +#: wpvulnerability-admin.php:3237 wpvulnerability-adminms.php:3414 +msgid "User" +msgstr "ユーザー" + +#: wpvulnerability-admin.php:3238 wpvulnerability-adminms.php:3415 +msgid "Output" +msgstr "出力" + +#. translators: %d: number of logs shown +#: wpvulnerability-admin.php:3302 wpvulnerability-adminms.php:3477 +#, php-format +msgid "Showing the %d most recent log entries." +msgstr "最新の %d 件のログエントリーを表示しています。" + +#: wpvulnerability-admin.php:3320 wpvulnerability-adminms.php:3565 +msgid "Invalid nonce." +msgstr "無効な nonce です。" + +#: wpvulnerability-admin.php:3325 wpvulnerability-adminms.php:3570 +msgid "Insufficient permissions." +msgstr "権限が不足しています。" + +#: wpvulnerability-admin.php:3331 wpvulnerability-adminms.php:3576 +msgid "No component specified." +msgstr "コンポーネントが指定されていません。" + +#: wpvulnerability-admin.php:3366 wpvulnerability-adminms.php:3524 +msgid "Debug Information" +msgstr "デバッグ情報" + +#: wpvulnerability-admin.php:3368 wpvulnerability-adminms.php:3526 +msgid "This tab is only visible when WP_DEBUG is enabled. Use with caution." +msgstr "このタブは WP_DEBUG が有効な場合のみ表示されます。注意して使用してください。" + +#: wpvulnerability-admin.php:3429 wpvulnerability-adminms.php:3623 +msgid "System Information" +msgstr "システム情報" + +#: wpvulnerability-admin.php:3433 wpvulnerability-adminms.php:3627 +msgid "WordPress Version" +msgstr "WordPress バージョン" + +#: wpvulnerability-admin.php:3437 wpvulnerability-adminms.php:3631 +msgid "Multisite" +msgstr "マルチサイト" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "Yes" +msgstr "はい" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "No" +msgstr "いいえ" + +#: wpvulnerability-admin.php:3441 wpvulnerability-adminms.php:3635 +msgid "Language" +msgstr "言語" + +#: wpvulnerability-admin.php:3445 wpvulnerability-adminms.php:3639 +msgid "PHP Version" +msgstr "PHP バージョン" + +#: wpvulnerability-admin.php:3449 wpvulnerability-adminms.php:3643 +msgid "PHP Extensions" +msgstr "PHP 拡張機能" + +#: wpvulnerability-admin.php:3460 wpvulnerability-adminms.php:3654 +msgid "PHP Memory Limit" +msgstr "PHP メモリ制限" + +#: wpvulnerability-admin.php:3464 wpvulnerability-adminms.php:3658 +msgid "Database" +msgstr "データベース" + +#: wpvulnerability-admin.php:3468 wpvulnerability-adminms.php:3662 +msgid "Web Server" +msgstr "ウェブサーバー" + +#: wpvulnerability-admin.php:3472 wpvulnerability-adminms.php:3666 +msgid "WP_DEBUG" +msgstr "WP_DEBUG" + +#: wpvulnerability-admin.php:3480 wpvulnerability-adminms.php:3674 +msgid "WP_DEBUG_LOG" +msgstr "WP_DEBUG_LOG" + +#: wpvulnerability-admin.php:3490 wpvulnerability-adminms.php:3684 +msgid "Path:" +msgstr "パス:" + +#. translators: %s: file size +#: wpvulnerability-admin.php:3499 wpvulnerability-adminms.php:3698 +#, php-format +msgid "Size: %s" +msgstr "サイズ: %s" + +#: wpvulnerability-admin.php:3510 wpvulnerability-adminms.php:3704 +msgid "View Log File" +msgstr "ログファイルを表示" + +#: wpvulnerability-admin.php:3516 wpvulnerability-adminms.php:3710 +msgid "Log file is not web-accessible (outside wp-content)" +msgstr "ログファイルはウェブからアクセスできません (wp-content の外)" + +#: wpvulnerability-admin.php:3522 wpvulnerability-adminms.php:3716 +msgid "Log file does not exist yet" +msgstr "ログファイルはまだ存在しません" + +#: wpvulnerability-admin.php:3530 wpvulnerability-adminms.php:3724 +msgid "Plugin Version" +msgstr "プラグインバージョン" + +#: wpvulnerability-admin.php:3554 wpvulnerability-adminms.php:3748 +msgid "Component Detection" +msgstr "コンポーネント検出" + +#: wpvulnerability-admin.php:3560 wpvulnerability-adminms.php:3754 +msgid "Version Detected" +msgstr "検出されたバージョン" + +#: wpvulnerability-admin.php:3561 wpvulnerability-adminms.php:3755 +msgid "Analyzed" +msgstr "分析済み" + +#: wpvulnerability-admin.php:3562 wpvulnerability-adminms.php:3756 +msgid "Cache Status" +msgstr "キャッシュステータス" + +#: wpvulnerability-admin.php:3622 wpvulnerability-adminms.php:3816 +msgid "Configuration Summary" +msgstr "設定サマリー" + +#: wpvulnerability-admin.php:3626 wpvulnerability-adminms.php:3820 +msgid "Cache Duration" +msgstr "キャッシュ期間" + +#: wpvulnerability-admin.php:3636 wpvulnerability-adminms.php:3830 +msgid "Log Retention" +msgstr "ログ保存" + +#: wpvulnerability-admin.php:3646 wpvulnerability-adminms.php:3840 +msgid "Components Analyzed" +msgstr "分析済みコンポーネント" + +#: wpvulnerability-admin.php:3661 wpvulnerability-adminms.php:3855 +msgid "Notification Email" +msgstr "通知メール" + +#: wpvulnerability-admin.php:3682 wpvulnerability-adminms.php:3876 +msgid "Slack Webhook" +msgstr "Slack Webhook" + +#: wpvulnerability-admin.php:3692 wpvulnerability-admin.php:3712 +#: wpvulnerability-admin.php:3732 wpvulnerability-admin.php:3752 +#: wpvulnerability-adminms.php:3886 wpvulnerability-adminms.php:3906 +#: wpvulnerability-adminms.php:3926 wpvulnerability-adminms.php:3946 +msgid "Configured & Enabled" +msgstr "設定済み & 有効" + +#: wpvulnerability-admin.php:3694 wpvulnerability-admin.php:3714 +#: wpvulnerability-admin.php:3734 wpvulnerability-admin.php:3754 +#: wpvulnerability-adminms.php:3888 wpvulnerability-adminms.php:3908 +#: wpvulnerability-adminms.php:3928 wpvulnerability-adminms.php:3948 +msgid "Configured (Disabled)" +msgstr "設定済み (無効)" + +#: wpvulnerability-admin.php:3696 wpvulnerability-admin.php:3716 +#: wpvulnerability-admin.php:3736 wpvulnerability-admin.php:3756 +#: wpvulnerability-adminms.php:3890 wpvulnerability-adminms.php:3910 +#: wpvulnerability-adminms.php:3930 wpvulnerability-adminms.php:3950 +msgid "Not configured" +msgstr "未設定" + +#: wpvulnerability-admin.php:3703 wpvulnerability-adminms.php:3897 +msgid "Teams Webhook" +msgstr "Teams Webhook" + +#: wpvulnerability-admin.php:3723 wpvulnerability-adminms.php:3917 +msgid "Discord Webhook" +msgstr "Discord Webhook" + +#: wpvulnerability-admin.php:3743 wpvulnerability-adminms.php:3937 +msgid "Telegram Bot" +msgstr "Telegram Bot" + +#: wpvulnerability-admin.php:3788 wpvulnerability-adminms.php:3982 +msgid "Cron Status" +msgstr "cron ステータス" + +#: wpvulnerability-admin.php:3792 wpvulnerability-adminms.php:3986 +msgid "Update Database" +msgstr "データベースを更新" + +#. translators: %s: date and time +#: wpvulnerability-admin.php:3797 wpvulnerability-admin.php:3810 +#: wpvulnerability-adminms.php:3991 wpvulnerability-adminms.php:4004 +#, php-format +msgid "Next run: %s" +msgstr "次回実行: %s" + +#: wpvulnerability-admin.php:3800 wpvulnerability-admin.php:3813 +#: wpvulnerability-adminms.php:3994 wpvulnerability-adminms.php:4007 +msgid "Not scheduled" +msgstr "スケジュールされていません" + +#: wpvulnerability-admin.php:3805 wpvulnerability-adminms.php:3999 +msgid "Send Notification" +msgstr "通知を送信" + +#: wpvulnerability-admin.php:3826 wpvulnerability-adminms.php:4020 +msgid "Run Update Now" +msgstr "今すぐ更新を実行" + +#: wpvulnerability-admin.php:3834 wpvulnerability-adminms.php:4028 +msgid "Run Notification Now" +msgstr "今すぐ通知を実行" + +#: wpvulnerability-admin.php:3840 wpvulnerability-adminms.php:4034 +msgid "You do not have permission to run these actions." +msgstr "これらの操作を実行する権限がありません。" + +#: wpvulnerability-admin.php:3859 wpvulnerability-adminms.php:4053 +msgid "API Testing" +msgstr "API テスト" + +#: wpvulnerability-admin.php:3862 wpvulnerability-adminms.php:4056 +msgid "" +"Test API connectivity for each component. Click a button to send a test " +"request." +msgstr "各コンポーネントの API 接続をテストします。ボタンをクリックしてテストリクエストを送信してください。" + +#. translators: %s: component name +#: wpvulnerability-admin.php:3869 wpvulnerability-adminms.php:4063 +#, php-format +msgid "Test %s" +msgstr "%s をテスト" + +#: wpvulnerability-admin.php:3884 wpvulnerability-adminms.php:4078 +msgid "Testing..." +msgstr "テスト中..." + +#: wpvulnerability-admin.php:3900 wpvulnerability-adminms.php:4094 +msgid "HTTP Code:" +msgstr "HTTP コード:" + +#: wpvulnerability-admin.php:3901 wpvulnerability-adminms.php:4095 +msgid "Response Time:" +msgstr "レスポンス時間:" + +#: wpvulnerability-admin.php:3903 wpvulnerability-adminms.php:4097 +msgid "Response Preview" +msgstr "レスポンスプレビュー" + +#: wpvulnerability-admin.php:3910 wpvulnerability-admin.php:3914 +#: wpvulnerability-adminms.php:4104 wpvulnerability-adminms.php:4108 +msgid "Test" +msgstr "テスト" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "Error:" +msgstr "エラー:" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "AJAX request failed." +msgstr "AJAX リクエストが失敗しました。" + +#: wpvulnerability-admin.php:3922 wpvulnerability-adminms.php:4116 +msgid "You do not have permission to test API connectivity." +msgstr "API 接続をテストする権限がありません。" + +#: wpvulnerability-admin.php:3943 wpvulnerability-adminms.php:4137 +msgid "Database Options Viewer" +msgstr "データベースオプションビューア" + +#: wpvulnerability-admin.php:3944 wpvulnerability-adminms.php:4138 +msgid "View the raw data stored in WordPress options." +msgstr "WordPress オプションに保存された生データを表示します。" + +#: wpvulnerability-admin.php:3950 wpvulnerability-adminms.php:4144 +msgid "Select an option..." +msgstr "オプションを選択..." + +#: wpvulnerability-admin.php:3969 wpvulnerability-adminms.php:4163 +msgid "Option not found or empty." +msgstr "オプションが見つからないか、空です。" + +#: wpvulnerability-admin.php:3987 wpvulnerability-adminms.php:4182 +msgid "Quick Actions" +msgstr "クイックアクション" + +#: wpvulnerability-admin.php:3988 wpvulnerability-adminms.php:4183 +msgid "Perform debugging actions. Use with caution." +msgstr "デバッグ操作を実行します。注意して使用してください。" + +#: wpvulnerability-admin.php:3992 wpvulnerability-adminms.php:4187 +msgid "Are you sure you want to clear all caches?" +msgstr "すべてのキャッシュをクリアしますか?" + +#: wpvulnerability-admin.php:3996 wpvulnerability-adminms.php:4191 +msgid "Clear All Caches" +msgstr "すべてのキャッシュをクリア" + +#: wpvulnerability-admin.php:4000 wpvulnerability-adminms.php:4195 +msgid "Are you sure you want to reset signatures?" +msgstr "シグネチャをリセットしますか?" + +#: wpvulnerability-admin.php:4004 wpvulnerability-adminms.php:4199 +msgid "Reset Signatures" +msgstr "シグネチャをリセット" + +#: wpvulnerability-admin.php:4012 wpvulnerability-adminms.php:4207 +msgid "Export Debug Info" +msgstr "デバッグ情報をエクスポート" + +#: wpvulnerability-admin.php:4018 wpvulnerability-adminms.php:4213 +msgid "You do not have permission to perform these actions." +msgstr "これらの操作を実行する権限がありません。" + +#: wpvulnerability-adminms.php:101 wpvulnerability-adminms.php:199 +msgid "Settings saved." +msgstr "設定を保存しました" + +#: wpvulnerability-adminms.php:277 +msgid "WPVulnerability cron events have been repaired across the network." +msgstr "ネットワーク全体の WPVulnerability cron イベントを修復しました。" + +#: wpvulnerability-adminms.php:3512 +msgid "You do not have permission to access this page." +msgstr "このページにアクセスする権限がありません。" + +#. translators: 1: core version +#: wpvulnerability-core.php:33 +#, php-format +msgid "" +"WordPress %1$s has a known vulnerability that may be affecting your " +"installed version." +msgstr "" +"WordPress %1$s には、インストールされているバージョンに影響を与える可能性のあ" +"る既知の脆弱性があります。" + +#: wpvulnerability-core.php:115 wpvulnerability-plugins.php:207 +#: wpvulnerability-process.php:335 wpvulnerability-process.php:443 +#: wpvulnerability-process.php:529 wpvulnerability-themes.php:173 +#: wpvulnerability-themes.php:469 +msgid "Actively exploited" +msgstr "積極的に悪用されています" + +#: wpvulnerability-core.php:122 wpvulnerability-plugins.php:214 +#: wpvulnerability-process.php:342 wpvulnerability-process.php:450 +#: wpvulnerability-themes.php:180 wpvulnerability-themes.php:476 +msgid "Public exploit" +msgstr "公開されたエクスプロイト" + +#: wpvulnerability-core.php:125 wpvulnerability-plugins.php:217 +#: wpvulnerability-process.php:345 wpvulnerability-process.php:453 +#: wpvulnerability-themes.php:183 wpvulnerability-themes.php:479 +msgid "Automatable" +msgstr "自動化可能" + +#: wpvulnerability-core.php:139 wpvulnerability-plugins.php:245 +#: wpvulnerability-process.php:371 wpvulnerability-process.php:469 +#: wpvulnerability-process.php:544 wpvulnerability-themes.php:211 +#: wpvulnerability-themes.php:503 +msgid "References:" +msgstr "参考文献:" + +#: wpvulnerability-debug.php:399 +msgid "Invalid component specified." +msgstr "無効なコンポーネントが指定されました。" + +#: wpvulnerability-debug.php:423 +msgid "Version not detected for this component." +msgstr "このコンポーネントのバージョンが検出されませんでした。" + +#: wpvulnerability-debug.php:453 +msgid "API request successful." +msgstr "API リクエストが成功しました。" + +#. translators: %d: HTTP status code +#: wpvulnerability-debug.php:469 +#, php-format +msgid "API returned HTTP code %d." +msgstr "API が HTTP コード %d を返しました。" + +#: wpvulnerability-general.php:355 +msgid "WPVulnerability Logs" +msgstr "WPVulnerability ログ" + +#: wpvulnerability-general.php:356 +msgid "WPVulnerability Log" +msgstr "WPVulnerability ログ" + +#: wpvulnerability-general.php:1873 wpvulnerability-general.php:1874 +msgid "Low" +msgstr "Low" + +#: wpvulnerability-general.php:1875 wpvulnerability-general.php:1876 +msgid "Medium" +msgstr "Medium" + +#: wpvulnerability-general.php:1877 wpvulnerability-general.php:1878 +msgid "High" +msgstr "High" + +#: wpvulnerability-general.php:1879 wpvulnerability-general.php:1880 +msgid "Critical" +msgstr "Critical" + +#: wpvulnerability-general.php:2684 +msgid "WPVulnerability Shell Logs" +msgstr "WPVulnerability シェルログ" + +#: wpvulnerability-general.php:2685 +msgid "WPVulnerability Shell Log" +msgstr "WPVulnerability シェルログ" + +#: wpvulnerability-notifications.php:30 +msgid "Every week" +msgstr "毎週" + +#: wpvulnerability-notifications.php:57 +msgid "Every day" +msgstr "毎日" + +#: wpvulnerability-notifications.php:84 +msgid "Invalid request." +msgstr "無効なリクエストです。" + +#: wpvulnerability-notifications.php:104 +msgid "You have unsubscribed from WPVulnerability notifications." +msgstr "WPVulnerability の通知の登録を解除しました。" + +#. translators: %1$s the website of Database, %2$s database site name. +#: wpvulnerability-notifications.php:289 +#, php-format +msgid "" +"Learn more about the WordPress Vulnerability Database API at %2$s" +msgstr "" +"WordPress Vulnerability Database API の詳細については、%2$s をご覧ください" + +#. translators: %1$s unsubscribe URL. +#: wpvulnerability-notifications.php:300 +#, php-format +msgid "" +"Want to stop receiving these alerts? Unsubscribe or " +"change the email frequency to Never in the WPVulnerability " +"settings." +msgstr "" +"このアラートの受信を停止しますか?登録解除するか、" +"WPVulnerability の設定でメール頻度を なし に変更してください。" + +#: wpvulnerability-notifications.php:595 +msgid "No vulnerabilities found" +msgstr "脆弱性は見つかりませんでした" + +#: wpvulnerability-notifications.php:596 +msgid "This is likely a test. The site does not have vulnerabilities." +msgstr "これはテストの可能性があります。このサイトには脆弱性がありません。" + +#: wpvulnerability-notifications.php:601 +msgid "Core vulnerabilities" +msgstr "コアの脆弱性" + +#: wpvulnerability-notifications.php:607 +msgid "Plugins vulnerabilities" +msgstr "プラグインの脆弱性" + +#: wpvulnerability-notifications.php:613 +msgid "Themes vulnerabilities" +msgstr "テーマの脆弱性" + +#: wpvulnerability-notifications.php:619 +msgid "PHP vulnerabilities" +msgstr "PHP の脆弱性" + +#: wpvulnerability-notifications.php:625 +msgid "Apache HTTPD vulnerabilities" +msgstr "Apache HTTPD の脆弱性" + +#: wpvulnerability-notifications.php:631 +msgid "Nginx vulnerabilities" +msgstr "Nginx の脆弱性" + +#: wpvulnerability-notifications.php:637 +msgid "MariaDB vulnerabilities" +msgstr "MariaDB の脆弱性" + +#: wpvulnerability-notifications.php:643 +msgid "MySQL vulnerabilities" +msgstr "MySQL の脆弱性" + +#: wpvulnerability-notifications.php:649 +msgid "ImageMagick vulnerabilities" +msgstr "ImageMagick の脆弱性" + +#: wpvulnerability-notifications.php:655 +msgid "curl vulnerabilities" +msgstr "curl の脆弱性" + +#: wpvulnerability-notifications.php:661 +msgid "memcached vulnerabilities" +msgstr "memcached の脆弱性" + +#: wpvulnerability-notifications.php:667 +msgid "Redis vulnerabilities" +msgstr "Redis の脆弱性" + +#: wpvulnerability-notifications.php:673 +msgid "SQLite vulnerabilities" +msgstr "SQLite の脆弱性" + +#. translators: Site name. +#: wpvulnerability-notifications.php:696 +#, php-format +msgid "Vulnerability found: %s" +msgstr "見つかった脆弱性: %s" + +#: wpvulnerability-notifications.php:700 +msgid "Vulnerability found" +msgstr "見つかった脆弱性" + +#. translators: 1: Plugin name +#. translators: 1: theme name +#: wpvulnerability-plugins.php:116 wpvulnerability-themes.php:82 +#, php-format +msgid "" +"%1$s has a known vulnerability that may be affecting your installed version." +msgstr "" +"%1$s には、インストールされているバージョンに影響を与える可能性のある既知の脆" +"弱性があります。" + +#: wpvulnerability-plugins.php:230 wpvulnerability-process.php:358 +msgid "This plugin is closed. Please replace it with another." +msgstr "このプラグインは閉鎖されています。他のプラグインに置き換えてください。" + +#: wpvulnerability-plugins.php:233 wpvulnerability-process.php:361 +msgid "" +"This vulnerability appears to be unpatched. Stay tuned for upcoming plugin " +"updates." +msgstr "" +"この脆弱性にはパッチが適用されていないようです。今後のプラグインの更新にご期" +"待ください。" + +#: wpvulnerability-plugins.php:570 +msgid "It hasn't been updated in over a year." +msgstr "1年以上更新されていません。" + +#: wpvulnerability-plugins.php:576 +msgid "It may no longer be available (closed?)." +msgstr "利用できなくなった (閉鎖された) 可能性があります。" + +#: wpvulnerability-plugins.php:614 wpvulnerability-plugins.php:621 +msgid "Last updated on" +msgstr "最終更新日" + +#. translators: the number of vulnerabilities. +#: wpvulnerability-plugins.php:764 wpvulnerability-themes.php:704 +#, php-format +msgid "Vulnerabilities (%d)" +msgstr "脆弱性 (%d)" + +#. translators: %s: software name. +#: wpvulnerability-process.php:601 +#, php-format +msgid "%s running" +msgstr "%s 実行中" + +#: wpvulnerability-process.php:611 wpvulnerability-process.php:792 +msgid "End of Life" +msgstr "サポート終了" + +#: wpvulnerability-process.php:613 wpvulnerability-process.php:618 +msgid "End of life:" +msgstr "サポート終了:" + +#: wpvulnerability-process.php:616 +msgid "Supported" +msgstr "サポート中" + +#: wpvulnerability-process.php:652 +msgid "Plugin" +msgstr "プラグイン" + +#: wpvulnerability-process.php:721 +msgid "Theme" +msgstr "テーマ" + +#. translators: %s: end-of-life date +#: wpvulnerability-process.php:790 +#, php-format +msgid "End of life: %s" +msgstr "サポート終了: %s" + +#: wpvulnerability-process.php:795 +msgid "EOL" +msgstr "EOL" + +#: wpvulnerability-run.php:30 +msgid "Network Settings" +msgstr "サイトネットワーク設定" + +#: wpvulnerability-run.php:731 wpvulnerability-run.php:781 +#: wpvulnerability-run.php:791 wpvulnerability-run.php:836 +msgid "Vulnerabilities" +msgstr "脆弱性" + +#: wpvulnerability-schedule.php:30 +msgid "Every 6 hours" +msgstr "6時間ごと" + +#: wpvulnerability-schedule.php:303 +msgid "Database updates" +msgstr "データベースの更新" + +#: wpvulnerability-schedule.php:309 +msgid "Log cleanup" +msgstr "ログのクリーンアップ" + +#: wpvulnerability-schedule.php:439 +msgid "" +"Notifications are scheduled, but settings currently disable them. Please " +"review the notifications tab." +msgstr "" +"通知はスケジュールされていますが、現在の設定では無効になっています。通知タブ" +"を確認してください。" + +#: wpvulnerability-schedule.php:442 +msgid "This event should not be scheduled for this site." +msgstr "このイベントはこのサイトにスケジュールすべきではありません。" + +#: wpvulnerability-schedule.php:446 +msgid "Not expected for this site." +msgstr "このサイトには想定されていません。" + +#: wpvulnerability-schedule.php:450 +msgid "No instances found." +msgstr "インスタンスが見つかりません。" + +#: wpvulnerability-schedule.php:456 +msgid "Scheduled with an unexpected interval." +msgstr "予期しない間隔でスケジュールされています。" + +#: wpvulnerability-schedule.php:460 +msgid "Multiple instances detected." +msgstr "複数のインスタンスが検出されました。" + +#: wpvulnerability-schedule.php:465 +msgid "Scheduled as expected." +msgstr "想定通りにスケジュールされています。" + +#: wpvulnerability-sitehealth.php:22 +msgid "There aren't plugins vulnerabilities" +msgstr "プラグインに脆弱性はありません" + +#: wpvulnerability-sitehealth.php:30 +msgid "Shows possible vulnerabilities that exist in installed plugins." +msgstr "" +"インストールされているプラグインに存在する可能性のある脆弱性を表示します。" + +#. translators: Number of plugins vulnerabilities. +#: wpvulnerability-sitehealth.php:43 +#, php-format +msgid "There is %d plugin with vulnerabilities" +msgid_plural "There are %d plugins with vulnerabilities" +msgstr[0] "%d 個のプラグインに脆弱性が存在します" + +#: wpvulnerability-sitehealth.php:49 +msgid "" +"We've detected potential vulnerabilities in installed plugins. Please check " +"them and keep them updated." +msgstr "" +"インストールされているプラグインに潜在的な脆弱性が検出されました。それらを確" +"認し、最新の状態に更新してください。" + +#: wpvulnerability-sitehealth.php:57 +msgid "Update plugins" +msgstr "プラグインを更新" + +#: wpvulnerability-sitehealth.php:74 +msgid "There aren't themes vulnerabilities" +msgstr "テーマに脆弱性はありません" + +#: wpvulnerability-sitehealth.php:82 +msgid "Shows possible vulnerabilities that exist in installed themes." +msgstr "インストールされているテーマに存在する可能性のある脆弱性を表示します。" + +#. translators: Number of themes vulnerabilities. +#: wpvulnerability-sitehealth.php:95 +#, php-format +msgid "There is %d theme with vulnerabilities" +msgid_plural "There are %d themes with vulnerabilities" +msgstr[0] "%d 個のテーマに脆弱性が存在します" + +#: wpvulnerability-sitehealth.php:101 +msgid "" +"We've detected potential vulnerabilities in installed themes. Please check " +"them and keep them updated." +msgstr "" +"インストールされているテーマに潜在的な脆弱性が検出されました。それらを確認" +"し、最新の状態に更新してください。" + +#: wpvulnerability-sitehealth.php:109 +msgid "Update themes" +msgstr "テーマを更新" + +#: wpvulnerability-sitehealth.php:126 +msgid "There aren't WordPress vulnerabilities" +msgstr "WordPress に脆弱性はありません" + +#: wpvulnerability-sitehealth.php:134 +msgid "Shows possible vulnerabilities existing in the WordPress core." +msgstr "WordPress のコアに存在する脆弱性の可能性を表示します。" + +#. translators: Number of core vulnerabilities. +#: wpvulnerability-sitehealth.php:147 +#, php-format +msgid "There is %d core vulnerability" +msgid_plural "There are %d core vulnerabilities" +msgstr[0] "%d 個のコアの脆弱性が存在します" + +#: wpvulnerability-sitehealth.php:153 +msgid "" +"We've detected potential vulnerabilities in this WordPress installation. " +"Please check them and keep your installation updated." +msgstr "" +"この WordPress に潜在的な脆弱性が検出されました。それらを確認し、更新してくだ" +"さい。" + +#: wpvulnerability-sitehealth.php:161 +msgid "Update WordPress" +msgstr "WordPress を更新" + +#: wpvulnerability-sitehealth.php:180 +msgid "Nginx" +msgstr "Nginx" + +#: wpvulnerability-sitehealth.php:189 +msgid "Invalid software type" +msgstr "無効なソフトウェアタイプ" + +#: wpvulnerability-sitehealth.php:192 +msgid "Error" +msgstr "エラー" + +#: wpvulnerability-sitehealth.php:197 +msgid "The specified software type is not valid." +msgstr "指定されたソフトウェアタイプは有効ではありません。" + +#. translators: name of the software. +#: wpvulnerability-sitehealth.php:207 +#, php-format +msgid "There aren't %s vulnerabilities" +msgstr "%s に脆弱性はありません" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:216 +#, php-format +msgid "Shows possible vulnerabilities existing in %s." +msgstr "%s に存在する可能性のある脆弱性を示します。" + +#. translators: Software and number of vulnerabilities. +#: wpvulnerability-sitehealth.php:229 +#, php-format +msgid "There is %1$d %2$s vulnerability" +msgid_plural "There are %1$d %2$s vulnerabilities" +msgstr[0] "%1$d 個の %2$s の脆弱性が存在します" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:237 +#, php-format +msgid "" +"We've detected potential vulnerabilities in %s. Please check them and keep " +"your installation updated." +msgstr "" +"%s に潜在的な脆弱性が検出されました。それらを確認し、最新の状態に更新してくだ" +"さい。" + +#: wpvulnerability-sitehealth.php:246 +msgid "How to update PHP" +msgstr "PHP の更新方法" + +#: wpvulnerability-sitehealth.php:386 +msgid "WPVulnerability Core" +msgstr "WPVulnerability コア" + +#: wpvulnerability-sitehealth.php:394 +msgid "WPVulnerability Themes" +msgstr "WPVulnerability テーマ" + +#: wpvulnerability-sitehealth.php:402 +msgid "WPVulnerability Plugins" +msgstr "WPVulnerability プラグイン" + +#: wpvulnerability-sitehealth.php:410 +msgid "WPVulnerability PHP" +msgstr "WPVulnerability PHP" + +#: wpvulnerability-sitehealth.php:418 +msgid "WPVulnerability Apache HTTPD" +msgstr "WPVulnerability Apache HTTPD" + +#: wpvulnerability-sitehealth.php:426 +msgid "WPVulnerability Nginx" +msgstr "WPVulnerability Nginx" + +#: wpvulnerability-sitehealth.php:434 +msgid "WPVulnerability MariaDB" +msgstr "WPVulnerability MariaDB" + +#: wpvulnerability-sitehealth.php:442 +msgid "WPVulnerability MySQL" +msgstr "WPVulnerability MySQL" + +#: wpvulnerability-sitehealth.php:450 +msgid "WPVulnerability ImageMagick" +msgstr "WPVulnerability ImageMagick" + +#: wpvulnerability-sitehealth.php:458 +msgid "WPVulnerability curl" +msgstr "WPVulnerability curl" + +#: wpvulnerability-sitehealth.php:466 +msgid "WPVulnerability memcached" +msgstr "WPVulnerability memcached" + +#: wpvulnerability-sitehealth.php:474 +msgid "WPVulnerability redis" +msgstr "WPVulnerability redis" + +#: wpvulnerability-sitehealth.php:482 +msgid "WPVulnerability sqlite" +msgstr "WPVulnerability sqlite" + +#: wpvulnerability-themes.php:196 wpvulnerability-themes.php:492 +msgid "This theme is closed. Please replace it with another." +msgstr "このテーマは閉鎖されています。他のテーマに置き換えてください。" + +#: wpvulnerability-themes.php:199 wpvulnerability-themes.php:495 +msgid "" +"This vulnerability appears to be unpatched. Stay tuned for upcoming theme " +"updates." +msgstr "" +"この脆弱性にはパッチが適用されていないようです。今後のテーマの更新にご期待く" +"ださい。" + +#: wpvulnerability-themes.php:391 +msgid "" +"This theme has known vulnerabilities that may be affecting your installed " +"version." +msgstr "" +"このテーマには、インストールされているバージョンに影響を与える可能性のある既" +"知の脆弱性があります。" + +#~ msgid "%1$s has a known vulnerability that may be affecting this version." +#~ msgstr "" +#~ "%1$s には,このバージョンに影響を与える可能性がある既知の脆弱性がありま" +#~ "す。" + +#~ msgid "Global score: " +#~ msgstr "Global score: " + +#~ msgid "Severity: " +#~ msgstr "Severity: " + +#~ msgid "" +#~ "WordPress %1$s has a known vulnerability that may be affecting this " +#~ "version." +#~ msgstr "" +#~ "WordPress %1$s には、このバージョンに影響を与える可能性がある既知の脆弱性" +#~ "があります。" diff --git a/languages/wpvulnerability-nl-be.l10n.php b/languages/wpvulnerability-nl-be.l10n.php new file mode 100644 index 0000000..f692bb7 --- /dev/null +++ b/languages/wpvulnerability-nl-be.l10n.php @@ -0,0 +1,2 @@ +NULL,'plural-forms'=>'nplurals=2; plural=n != 1;','language'=>'nl_BE','project-id-version'=>'Plugins - WPVulnerability - Development (trunk)','pot-creation-date'=>'2026-05-27T16:32:22+00:00','po-revision-date'=>'2023-12-19 07:18:46+0000','x-generator'=>'GlotPress/4.0.3','messages'=>['WPVulnerability'=>'WPVulnerability','https://www.wpvulnerability.com/plugin/'=>'https://www.wpvulnerability.com/plugin/','Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API.'=>'Ontvang informatie over mogelijke kwetsbaarheden in uw WordPress via de WordPress Vulnerability Database API.','ROBOTSTXT'=>'ROBOTSTXT','https://www.robotstxt.es/'=>'https://www.robotstxt.es/','This command requires a WordPress administrator. Run with --user=.'=>'Dit commando vereist een WordPress-beheerder. Uitvoeren met --user=.','No core vulnerabilities found.'=>'Geen core-kwetsbaarheden gevonden.','No plugin vulnerabilities found.'=>'Geen plugin-kwetsbaarheden gevonden.','No theme vulnerabilities found.'=>'Geen thema-kwetsbaarheden gevonden.','No %s vulnerabilities found.'=>'Geen %s-kwetsbaarheden gevonden.','Data from source has been reloaded.'=>'Gegevens uit de bron zijn opnieuw geladen.','You do not have permission to reload data.'=>'U heeft geen toestemming om gegevens opnieuw te laden.','Test email has been sent.'=>'Test-e-mail is verzonden.','Test email has failed. Please, check your email settings.'=>'De test e-mail is mislukt. Controleer je e-mailinstellingen.','You do not have permission to send test emails.'=>'U heeft geen toestemming om test-e-mails te verzenden.','WPVulnerability cron events have been repaired.'=>'WPVulnerability-cron-gebeurtenissen zijn gerepareerd.','You do not have permission to repair cron events.'=>'U heeft geen toestemming om cron-gebeurtenissen te repareren.','All logs have been deleted.'=>'Alle logboeken zijn verwijderd.','You do not have permission to delete logs.'=>'U heeft geen toestemming om logboeken te verwijderen.','Uninstall preference saved.'=>'Verwijderingsvoorkeur opgeslagen.','WPVulnerability has been reset to defaults and reloaded.'=>'WPVulnerability is teruggezet naar standaardwaarden en opnieuw geladen.','You do not have permission to reset WPVulnerability.'=>'U heeft geen toestemming om WPVulnerability te resetten.','All caches have been cleared.'=>'Alle caches zijn gewist.','You do not have permission to clear caches.'=>'U heeft geen toestemming om caches te wissen.','Plugin and theme signatures have been reset.'=>'Plugin- en thema-handtekeningen zijn teruggezet.','You do not have permission to reset signatures.'=>'U heeft geen toestemming om handtekeningen te resetten.','You do not have permission to export debug information.'=>'U heeft geen toestemming om debug-informatie te exporteren.','Database update has been executed.'=>'Database-update is uitgevoerd.','You do not have permission to run database updates.'=>'U heeft geen toestemming om database-updates uit te voeren.','Notification has been sent.'=>'Melding is verzonden.','Notification sending failed.'=>'Verzenden van melding mislukt.','You do not have permission to send notifications.'=>'U heeft geen toestemming om meldingen te verzenden.','Notifications'=>'Meldingen','Analysis'=>'Analyse','Logs'=>'Logboeken','Security'=>'Beveiliging','Tools'=>'Hulpmiddelen','Debug'=>'Debug','About'=>'Over','Notification Settings'=>'Meldingsinstellingen','Configure how and when you want to receive vulnerability notifications.'=>'Configureer hoe en wanneer u kwetsbaarheidsmeldingen wilt ontvangen.','Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software.'=>'Blijf op de hoogte van beveiligingskwetsbaarheden in uw WordPress-installatie, plugins, thema\'s en serversoftware.','Cache Expiration Time'=>'Cache-vervaltijd','FORCED'=>'GEFORCEERD','How long to cache vulnerability data before refreshing from the API.'=>'Hoe lang kwetsbaarheidsgegevens worden gecached voordat ze worden vernieuwd vanuit de API.','%d hour'=>'%d uur' . "\0" . '%d uur','You can force the cache time via wp-config.php constant. Learn more →'=>'U kunt de cachetijd forceren via een wp-config.php-constante. Meer informatie →','Notification Frequency'=>'Meldingsfrequentie','Choose how often you want to receive vulnerability notifications.'=>'Kies hoe vaak u kwetsbaarheidsmeldingen wilt ontvangen.','Never - Disable automatic notifications'=>'Nooit – Automatische meldingen uitschakelen','Daily - Receive notifications every day'=>'Dagelijks – Elke dag meldingen ontvangen','Weekly - Receive notifications once a week'=>'Wekelijks – Eenmaal per week meldingen ontvangen','Day:'=>'Dag:','Monday'=>'Maandag','Tuesday'=>'Dinsdag','Wednesday'=>'Woensdag','Thursday'=>'Donderdag','Friday'=>'Vrijdag','Saturday'=>'Zaterdag','Sunday'=>'Zondag','Time:'=>'Tijd:','(24-hour format, server timezone)'=>'(24-uurs formaat, server-tijdzone)','Notification Channels'=>'Meldingskanalen','Select where you want to receive notifications.'=>'Selecteer waar u meldingen wilt ontvangen.','Email'=>'E-mail','Email Addresses (separated by commas):'=>'E-mailadressen (gescheiden door komma\'s):','Default:'=>'Standaard:','Slack'=>'Slack','Slack Webhook URL:'=>'Slack webhook-URL:','Learn how to create a Slack incoming webhook →'=>'Leer hoe u een inkomende Slack-webhook maakt →','Microsoft Teams'=>'Microsoft Teams','Teams Webhook URL:'=>'Teams webhook-URL:','Learn how to create a Teams incoming webhook →'=>'Leer hoe u een inkomende Teams-webhook maakt →','Discord'=>'Discord','Discord Webhook URL:'=>'Discord webhook-URL:','Learn how to create a Discord webhook →'=>'Leer hoe u een Discord-webhook maakt →','Telegram'=>'Telegram','Telegram Bot Token:'=>'Telegram-bot-token:','Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Formaat: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','Telegram Chat ID:'=>'Telegram chat-ID:','Learn how to create a Telegram bot and get Chat ID →'=>'Leer hoe u een Telegram-bot maakt en de chat-ID ophaalt →','Save Notification Settings'=>'Meldingsinstellingen opslaan','WordPress Components'=>'WordPress-componenten','WordPress Core'=>'WordPress Core','Plugins'=>'Plugins','Themes'=>'Thema\'s','Software & Languages'=>'Software & Talen','PHP'=>'PHP','Web Servers'=>'Webservers','Apache HTTPD'=>'Apache HTTPD','nginx'=>'nginx','Databases'=>'Databases','MariaDB'=>'MariaDB','MySQL'=>'MySQL','SQLite'=>'SQLite','Additional Tools'=>'Aanvullende hulpmiddelen','ImageMagick'=>'ImageMagick','curl'=>'curl','memcached'=>'memcached','Redis'=>'Redis','Component Analysis Settings'=>'Instellingen componentenanalyse','Enable or disable vulnerability analysis for specific components.'=>'Kwetsbaarheidsanalyse in- of uitschakelen voor specifieke componenten.','Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red.'=>'Selecteer de componenten die u wilt VERBERGEN voor kwetsbaarheidsscans en rapporten. Niet-geselecteerde componenten worden actief geanalyseerd. Componenten met actieve analyse worden groen weergegeven, verborgen componenten rood.','Hidden (forced by constant)'=>'Verborgen (geforceerd door constante)','🔴 Analysis disabled'=>'🔴 Analyse uitgeschakeld','🟢 Analysis active'=>'🟢 Analyse actief','Tip:'=>'Tip:','You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →'=>'U kunt componenten geforceerd uitschakelen via wp-config.php-constanten. Meer informatie over het geforceerd verbergen van controles →','Save Analysis Settings'=>'Analyse-instellingen opslaan','« Previous'=>'« Vorige','Next »'=>'Volgende »','Log entry not found or has been removed.'=>'Logboekvermelding niet gevonden of is verwijderd.','Unable to load the requested log entry.'=>'De gevraagde logboekvermelding kan niet worden geladen.','Log Configuration'=>'Logboekconfiguratie','Total Logs'=>'Totaal logboeken','Retention Period'=>'Bewaarperiode','Disabled'=>'Uitgeschakeld','%d day'=>'%d dag' . "\0" . '%d dagen','Log Retention Period'=>'Bewaarperiode logboek','None (Disabled)'=>'Geen (Uitgeschakeld)','This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant.'=>'Deze waarde wordt afgedwongen door de constante WPVULNERABILITY_LOG_RETENTION_DAYS.','Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted.'=>'Kies hoe lang WPVulnerability API-responslogboeken moet bewaren. Oudere logboeken worden automatisch verwijderd.','Save Configuration'=>'Configuratie opslaan','Log retention is currently disabled.'=>'Logboekbewaring is momenteel uitgeschakeld.','API responses are not being saved.'=>'API-reacties worden niet opgeslagen.','Log Details'=>'Logboekdetails','Date'=>'Datum','API Endpoint'=>'API-eindpunt','API Response'=>'API-respons','Back to Logs'=>'Terug naar logboeken','No logs available'=>'Geen logboeken beschikbaar','API response logs will appear here once the vulnerability scanner runs.'=>'API-responslogboeken verschijnen hier zodra de kwetsbaarheidsscanner wordt uitgevoerd.','API Response Logs'=>'API-responslogboeken','Show:'=>'Weergeven:','Apply'=>'Toepassen','Showing %1$s–%2$s of %3$s'=>'%1$s–%2$s van %3$s weergegeven','Actions'=>'Acties','View'=>'Bekijken','Danger Zone'=>'Gevarenzone','Permanently delete all API response logs. This action cannot be undone.'=>'Alle API-responslogboeken permanent verwijderen. Deze actie kan niet ongedaan worden gemaakt.','Are you sure you want to delete all logs? This action cannot be undone.'=>'Weet u zeker dat u alle logboeken wilt verwijderen? Deze actie kan niet ongedaan worden gemaakt.','Delete All Logs'=>'Alle logboeken verwijderen','Reload Data from API'=>'Gegevens opnieuw laden vanuit API','Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information.'=>'Alle Core-, plugin-, thema- en andere componenteninformatie direct opnieuw laden vanuit de API voor actuele gegevens. Dit wist de cache en haalt nieuwe kwetsbaarheidsinformatie op.','Reload Data'=>'Gegevens opnieuw laden','Test Email Notifications'=>'Test e-mailmeldingen','Send a test email notification with current vulnerability data to verify your email configuration is working correctly.'=>'Stuur een test-e-mailmelding met actuele kwetsbaarheidsgegevens om te controleren of uw e-mailconfiguratie correct werkt.','From address (configured via constant):'=>'Afzenderadres (geconfigureerd via constante):','From address (default):'=>'Afzenderadres (standaard):','Learn how to customize the email sender address →'=>'Leer hoe u het e-mailafzenderadres kunt aanpassen →','Send Test Email'=>'Test-e-mail verzenden','WP-Cron Status'=>'WP-cron-status','View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly.'=>'WP-cron geplande gebeurtenissen weergeven en beheren. Vergelijk verwachte planningen met werkelijke cron-taken om te controleren of geautomatiseerde taken correct worden uitgevoerd.','No cron data available.'=>'Geen cron-gegevens beschikbaar.','Hook'=>'Hook','Expected'=>'Verwacht','Found'=>'Gevonden','Next Run'=>'Volgende uitvoering','Status'=>'Status','Not expected'=>'Niet verwacht','None'=>'Geen','OK'=>'OK','⚠️ Unexpected WPVulnerability Events'=>'⚠️ Onverwachte WPVulnerability-gebeurtenissen','No interval'=>'Geen interval','Next:'=>'Volgende:','Repair Cron Events'=>'Cron-gebeurtenissen repareren','Uninstall Data'=>'Verwijderingsgegevens','By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall.'=>'Standaard worden alle plugin-gegevens bewaard wanneer WPVulnerability wordt verwijderd. Schakel de onderstaande optie alleen in als u wilt dat alle opties, logboeken en gecachede gegevens permanent worden verwijderd bij het verwijderen.','Delete all plugin data on uninstall'=>'Alle plugin-gegevens verwijderen bij het verwijderen','Default: unchecked (data preserved). Check only if you want a clean removal.'=>'Standaard: niet aangevinkt (gegevens bewaard). Alleen aanvinken als u een volledige verwijdering wilt.','Save preference'=>'Voorkeur opslaan','Reset WPVulnerability'=>'WPVulnerability resetten','Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API.'=>'Alle WPVulnerability-instellingen, gecachede gegevens, logboeken en geplande gebeurtenissen verwijderen, daarna standaardinstellingen herstellen en gegevens opnieuw laden vanuit de API.','This action cannot be undone.'=>'Deze actie kan niet ongedaan worden gemaakt.','Are you sure you want to reset all WPVulnerability data? This action cannot be undone.'=>'Weet u zeker dat u alle WPVulnerability-gegevens wilt resetten? Deze actie kan niet ongedaan worden gemaakt.','Reset Plugin'=>'Plugin resetten','Vulnerability Database Statistics'=>'Statistieken kwetsbaarhedendatabase','%s vulnerability'=>'%s kwetsbaarheid' . "\0" . '%s kwetsbaarheden','(%s product)'=>'(%s product)' . "\0" . '(%s producten)','No data'=>'Geen gegevens','Database last updated: %s'=>'Database voor het laatste bijgewerkt: %s','Intelligence Sources'=>'Informatiebronnen','Number of vulnerabilities contributed by each intelligence source.'=>'Aantal kwetsbaarheden bijgedragen door elke informatiebron.','Source'=>'Bron','Core'=>'Core','Sponsors'=>'Sponsors','No sponsor data available.'=>'Geen sponsorgegevens beschikbaar.','Contributors'=>'Bijdragers','No contributor data available.'=>'Geen gegevens over bijdragers beschikbaar.','You do not have sufficient permissions to access this page.'=>'U heeft onvoldoende rechten om deze pagina te openen.','WPVulnerability settings'=>'WPVulnerability instellingen','Configure and save these settings to receive notifications.'=>'Configureer en sla deze instellingen op om e-mailmeldingen te ontvangen.','Configure and save these settings to hide vulnerabilities.'=>'Configureer en sla deze instellingen op om kwetsbaarheden te verbergen.','Default administrator email'=>'Standaard e-mailadres beheerder','Read more if you want to force the cache time.'=>'Meer lezen als u de cachetijd wilt forceren.','Never'=>'Nooit','Daily'=>'Dagelijks','Weekly'=>'Wekelijks','Day'=>'Dag','Hour'=>'Uur','Minute'=>'Minuut','Read more about how to force the deactivation of an item.'=>'Meer lezen over het geforceerd deactiveren van een item.','Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com'=>'Ongeldige Slack webhook-URL. Moet een geldige HTTPS-URL zijn van hooks.slack.com.','Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com'=>'Ongeldige Microsoft Teams webhook-URL. Moet een geldige HTTPS-URL zijn van office.com, office365.com of api.hooks.microsoft.com.','Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com'=>'Ongeldige Discord webhook-URL. Moet een geldige HTTPS-URL zijn van discord.com of discordapp.com.','Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Ongeldig Telegram-bot-tokenformaat. Moet er zo uitzien: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11.','All Clear'=>'Alles in orde','%d Critical Issue Found'=>'%d kritiek probleem gevonden' . "\0" . '%d kritieke problemen gevonden','%d Issue Found'=>'%d probleem gevonden' . "\0" . '%d problemen gevonden','Never checked'=>'Nooit gecontroleerd','%d minute ago'=>'%d minuut geleden' . "\0" . '%d minuten geleden','%d hour ago'=>'%d uur geleden' . "\0" . '%d uur geleden','Last checked: %s'=>'Laatst gecontroleerd: %s','Refresh Now'=>'Nu vernieuwen','No vulnerabilities detected'=>'Geen kwetsbaarheden gedetecteerd','Your site is up to date and secure'=>'Uw site is up-to-date en veilig','Server Software'=>'Serversoftware','Site Health'=>'Site-gezondheid','Settings'=>'Instellingen','WPVulnerability Status'=>'WPVulnerability-status','Receive vulnerability notifications'=>'Kwetsbaarheidsmeldingen ontvangen','Cache expiration time'=>'Cache-vervaltijd','How often you want to receive notifications'=>'Hoe vaak je meldingen wilt ontvangen','Where do you want to receive notifications?'=>'Waar wilt u meldingen ontvangen?','Email addresses to notify (separated by commas)'=>'E-mailadressen voor meldingen (gescheiden door komma\'s)','Slack webhook URL'=>'Slack webhook-URL','Teams webhook URL'=>'Teams webhook-URL','Vulnerabilities to hide'=>'Te verbergen kwetsbaarheden','What do you want to hide?'=>'Wat wilt u verbergen?','Standard (Hybrid Detection)'=>'Standaard (hybride detectie)','Strict (Extensions Only)'=>'Strikt (alleen extensies)','Disabled (No Detection)'=>'Uitgeschakeld (geen detectie)','Security Status'=>'Beveiligingsstatus','Security Mode'=>'Beveiligingsmodus','Shell Execution'=>'Shell-uitvoering','Enabled'=>'Ingeschakeld','Audit Logging'=>'Auditregistratie','Enabled (%d days)'=>'Ingeschakeld (%d dagen)','Total Log Entries'=>'Totaal logboekvermeldingen','Last Shell Execution'=>'Laatste shell-uitvoering','%s ago'=>'%s geleden','Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.'=>'Beveiligingsinstellingen configureren via wp-config.php-constanten: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.','See security configuration documentation for details.'=>'Zie documentatie over beveiligingsconfiguratie voor details.','Memcached'=>'Memcached','Imagick Extension'=>'Imagick-extensie','Redis Extension'=>'Redis-extensie','Memcached Extension'=>'Memcached-extensie','Memcache Extension'=>'Memcache-extensie','SQLite3 Extension'=>'SQLite3-extensie','PDO SQLite'=>'PDO SQLite','Shell Command'=>'Shell-commando','Binary Check'=>'Binaire controle','Not Detected'=>'Niet gedetecteerd','Software Detection Methods'=>'Software-detectiemethoden','Shows which detection method was used for each software component and the reliability score.'=>'Toont welke detectiemethode is gebruikt voor elk softwarecomponent en de betrouwbaarheidsscore.','Component'=>'Component','Version'=>'Versie','Detection Method'=>'Detectiemethode','Reliability'=>'Betrouwbaarheid','Not detected'=>'Niet gedetecteerd','Shell Execution Audit Logs'=>'Shell-uitvoering auditlogboeken','Complete audit trail of shell command executions for security monitoring.'=>'Volledig auditspoor van shell-opdrachtuitvoeringen voor beveiligingsmonitoring.','No shell execution logs found.'=>'Geen shell-uitvoeringslogboeken gevonden.','Logs will appear here when shell commands are executed for software detection.'=>'Logboeken verschijnen hier wanneer shell-opdrachten worden uitgevoerd voor software-detectie.','Time'=>'Tijd','Command'=>'Opdracht','User'=>'Gebruiker','Output'=>'Uitvoer','Showing the %d most recent log entries.'=>'De %d meest recente logboekvermeldingen worden weergegeven.','Invalid nonce.'=>'Ongeldige nonce.','Insufficient permissions.'=>'Onvoldoende rechten.','No component specified.'=>'Geen component opgegeven.','Debug Information'=>'Debug-informatie','This tab is only visible when WP_DEBUG is enabled. Use with caution.'=>'Dit tabblad is alleen zichtbaar wanneer WP_DEBUG is ingeschakeld. Gebruik met voorzichtigheid.','System Information'=>'Systeeminformatie','WordPress Version'=>'WordPress-versie','Multisite'=>'Multisite','Yes'=>'Ja','No'=>'Nee','Language'=>'Taal','PHP Version'=>'PHP-versie','PHP Extensions'=>'PHP-extensies','PHP Memory Limit'=>'PHP-geheugenlimiet','Database'=>'Database','Web Server'=>'Webserver','WP_DEBUG'=>'WP_DEBUG','WP_DEBUG_LOG'=>'WP_DEBUG_LOG','Path:'=>'Pad:','Size: %s'=>'Grootte: %s','View Log File'=>'Logboekbestand bekijken','Log file is not web-accessible (outside wp-content)'=>'Logboekbestand is niet toegankelijk via het web (buiten wp-content)','Log file does not exist yet'=>'Logboekbestand bestaat nog niet','Plugin Version'=>'Plugin-versie','Component Detection'=>'Componentdetectie','Version Detected'=>'Versie gedetecteerd','Analyzed'=>'Geanalyseerd','Cache Status'=>'Cache-status','Configuration Summary'=>'Configuratieoverzicht','Cache Duration'=>'Cache-duur','Log Retention'=>'Logboekbewaring','Components Analyzed'=>'Geanalyseerde componenten','Notification Email'=>'Meldings-e-mail','Slack Webhook'=>'Slack-webhook','Configured & Enabled'=>'Geconfigureerd & ingeschakeld','Configured (Disabled)'=>'Geconfigureerd (uitgeschakeld)','Not configured'=>'Niet geconfigureerd','Teams Webhook'=>'Teams-webhook','Discord Webhook'=>'Discord-webhook','Telegram Bot'=>'Telegram-bot','Cron Status'=>'Cron-status','Update Database'=>'Database bijwerken','Next run: %s'=>'Volgende uitvoering: %s','Not scheduled'=>'Niet gepland','Send Notification'=>'Melding verzenden','Run Update Now'=>'Update nu uitvoeren','Run Notification Now'=>'Melding nu verzenden','You do not have permission to run these actions.'=>'U heeft geen toestemming om deze acties uit te voeren.','API Testing'=>'API-testen','Test API connectivity for each component. Click a button to send a test request.'=>'API-verbinding testen voor elk component. Klik op een knop om een testverzoek te sturen.','Test %s'=>'%s testen','Testing...'=>'Testen...','HTTP Code:'=>'HTTP-code:','Response Time:'=>'Responstijd:','Response Preview'=>'Responsvoorbeeld','Test'=>'Test','Error:'=>'Fout:','AJAX request failed.'=>'AJAX-verzoek mislukt.','You do not have permission to test API connectivity.'=>'U heeft geen toestemming om de API-verbinding te testen.','Database Options Viewer'=>'Database-optiesviewer','View the raw data stored in WordPress options.'=>'De ruwe gegevens bekijken die zijn opgeslagen in WordPress-opties.','Select an option...'=>'Selecteer een optie...','Option not found or empty.'=>'Optie niet gevonden of leeg.','Quick Actions'=>'Snelle acties','Perform debugging actions. Use with caution.'=>'Debug-acties uitvoeren. Gebruik met voorzichtigheid.','Are you sure you want to clear all caches?'=>'Weet u zeker dat u alle caches wilt wissen?','Clear All Caches'=>'Alle caches wissen','Are you sure you want to reset signatures?'=>'Weet u zeker dat u de handtekeningen wilt resetten?','Reset Signatures'=>'Handtekeningen resetten','Export Debug Info'=>'Debug-informatie exporteren','You do not have permission to perform these actions.'=>'U heeft geen toestemming om deze acties uit te voeren.','Settings saved.'=>'Instellingen opgeslagen.','WPVulnerability cron events have been repaired across the network.'=>'WPVulnerability-cron-gebeurtenissen zijn netwerk-breed gerepareerd.','You do not have permission to access this page.'=>'U heeft geen toestemming om deze pagina te openen.','WordPress %1$s has a known vulnerability that may be affecting your installed version.'=>'WordPress %1$s heeft een bekende kwetsbaarheid die mogelijk uw geïnstalleerde versie beïnvloedt.','Actively exploited'=>'Actief misbruikt','Public exploit'=>'Publiek exploit','Automatable'=>'Automatiseerbaar','References:'=>'Referenties:','Invalid component specified.'=>'Ongeldig component opgegeven.','Version not detected for this component.'=>'Versie niet gedetecteerd voor dit component.','API request successful.'=>'API-verzoek geslaagd.','API returned HTTP code %d.'=>'API heeft HTTP-code %d geretourneerd.','WPVulnerability Logs'=>'WPVulnerability-logboeken','WPVulnerability Log'=>'WPVulnerability-logboek','Low'=>'Laag','Medium'=>'Gemiddeld','High'=>'Hoog','Critical'=>'Kritiek','WPVulnerability Shell Logs'=>'WPVulnerability shell-logboeken','WPVulnerability Shell Log'=>'WPVulnerability shell-logboek','Every week'=>'Elke week','Every day'=>'Elke dag','Invalid request.'=>'Ongeldig verzoek.','You have unsubscribed from WPVulnerability notifications.'=>'U heeft zich afgemeld voor WPVulnerability-meldingen.','Learn more about the WordPress Vulnerability Database API at %2$s'=>'Leer meer over de WordPress Vulnerability Database API op %2$s','Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings.'=>'Wilt u deze meldingen niet meer ontvangen? Afmelden of de e-mailfrequentie wijzigen naar Nooit in de WPVulnerability-instellingen.','No vulnerabilities found'=>'Geen kwetsbaarheden gevonden','This is likely a test. The site does not have vulnerabilities.'=>'Dit is waarschijnlijk een test. De site heeft geen kwetsbaarheden.','Core vulnerabilities'=>'Core kwetsbaarheden','Plugins vulnerabilities'=>'Plugins kwetsbaarheden','Themes vulnerabilities'=>'Thema\'s kwetsbaarheden','PHP vulnerabilities'=>'PHP-kwetsbaarheden','Apache HTTPD vulnerabilities'=>'Apache HTTPD-kwetsbaarheden','Nginx vulnerabilities'=>'Nginx-kwetsbaarheden','MariaDB vulnerabilities'=>'MariaDB-kwetsbaarheden','MySQL vulnerabilities'=>'MySQL-kwetsbaarheden','ImageMagick vulnerabilities'=>'ImageMagick-kwetsbaarheden','curl vulnerabilities'=>'curl-kwetsbaarheden','memcached vulnerabilities'=>'memcached-kwetsbaarheden','Redis vulnerabilities'=>'Redis-kwetsbaarheden','SQLite vulnerabilities'=>'SQLite-kwetsbaarheden','Vulnerability found: %s'=>'Kwetsbaarheid gevonden: %s','Vulnerability found'=>'Kwetsbaarheid gevonden','%1$s has a known vulnerability that may be affecting your installed version.'=>'%1$s heeft een bekende kwetsbaarheid die mogelijk uw geïnstalleerde versie beïnvloedt.','This plugin is closed. Please replace it with another.'=>'Dit plugin is gesloten. Gelieve het te vervangen door een ander.','This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates.'=>'Deze kwetsbaarheid lijkt niet gepatcht te zijn. Blijf op de hoogte voor toekomstige plugin updates.','It hasn\'t been updated in over a year.'=>'Het is meer dan een jaar niet bijgewerkt.','It may no longer be available (closed?).'=>'Het is mogelijk niet meer beschikbaar (gesloten?).','Last updated on'=>'Laatste update op','Vulnerabilities (%d)'=>'Kwetsbaarheden (%d)','%s running'=>'%s actief','End of Life'=>'End of Life','End of life:'=>'End of life:','Supported'=>'Ondersteund','Plugin'=>'Plugin','Theme'=>'Thema','End of life: %s'=>'End of life: %s','EOL'=>'EOL','Network Settings'=>'Netwerkinstellingen','Vulnerabilities'=>'Kwetsbaarheden','Every 6 hours'=>'Elke 6 uur','Database updates'=>'Database-updates','Log cleanup'=>'Logboekopruiming','Notifications are scheduled, but settings currently disable them. Please review the notifications tab.'=>'Meldingen zijn gepland, maar instellingen schakelen ze momenteel uit. Controleer het tabblad Meldingen.','This event should not be scheduled for this site.'=>'Dit evenement mag niet worden gepland voor deze site.','Not expected for this site.'=>'Niet verwacht voor deze site.','No instances found.'=>'Geen instanties gevonden.','Scheduled with an unexpected interval.'=>'Gepland met een onverwacht interval.','Multiple instances detected.'=>'Meerdere instanties gedetecteerd.','Scheduled as expected.'=>'Gepland zoals verwacht.','There aren\'t plugins vulnerabilities'=>'Er zijn geen kwetsbaarheden in plugins','Shows possible vulnerabilities that exist in installed plugins.'=>'Toont mogelijke kwetsbaarheden die bestaan in geïnstalleerde plugins.','There is %d plugin with vulnerabilities'=>'Er is %d plugin met kwetsbaarheden' . "\0" . 'Er zijn %d plugins met kwetsbaarheden','We\'ve detected potential vulnerabilities in installed plugins. Please check them and keep them updated.'=>'We hebben mogelijke kwetsbaarheden gedetecteerd in geïnstalleerde plugins. Controleer ze en houd ze bijgewerkt.','Update plugins'=>'Plugins bijwerken','There aren\'t themes vulnerabilities'=>'Er zijn geen thema\'s kwetsbaarheden','Shows possible vulnerabilities that exist in installed themes.'=>'Toont mogelijke kwetsbaarheden die bestaan in geïnstalleerde thema\'s.','There is %d theme with vulnerabilities'=>'Er is %d thema met kwetsbaarheden' . "\0" . 'Er zijn %d thema\'s met kwetsbaarheden','We\'ve detected potential vulnerabilities in installed themes. Please check them and keep them updated.'=>'We hebben mogelijke kwetsbaarheden gedetecteerd in geïnstalleerde thema\'s. Controleer ze en houd ze bijgewerkt.','Update themes'=>'Thema\'s bijwerken','There aren\'t WordPress vulnerabilities'=>'Er zijn geen kwetsbaarheden in WordPress','Shows possible vulnerabilities existing in the WordPress core.'=>'Toont mogelijke kwetsbaarheden die bestaan in de WordPress core.','There is %d core vulnerability'=>'Er is %d core kwetsbaarheid' . "\0" . 'Er zijn %d core kwetsbaarheden','We\'ve detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated.'=>'We hebben mogelijke kwetsbaarheden ontdekt in deze WordPress installatie. Controleer deze en houd je installatie up-to-date.','Update WordPress'=>'WordPress bijwerken','Nginx'=>'Nginx','Invalid software type'=>'Ongeldig softwaretype','Error'=>'Fout','The specified software type is not valid.'=>'Het opgegeven softwaretype is niet geldig.','There aren\'t %s vulnerabilities'=>'Er zijn geen %s kwetsbaarheden','Shows possible vulnerabilities existing in %s.'=>'Toont mogelijke kwetsbaarheden die bestaan in %s.','There is %1$d %2$s vulnerability'=>'Er is %1$d %2$s kwetsbaarheid' . "\0" . 'Er zijn %1$d %2$s kwetsbaarheden','We\'ve detected potential vulnerabilities in %s. Please check them and keep your installation updated.'=>'We hebben mogelijke kwetsbaarheden in %s gedetecteerd. Controleer ze en houd je installatie up-to-date.','How to update PHP'=>'Hoe PHP bij te werken','WPVulnerability Core'=>'WPVulnerability core','WPVulnerability Themes'=>'WPVulnerability thema\'s','WPVulnerability Plugins'=>'WPVulnerability plugins','WPVulnerability PHP'=>'WPVulnerability PHP','WPVulnerability Apache HTTPD'=>'WPVulnerability Apache HTTPD','WPVulnerability Nginx'=>'WPVulnerability Nginx','WPVulnerability MariaDB'=>'WPVulnerability MariaDB','WPVulnerability MySQL'=>'WPVulnerability MySQL','WPVulnerability ImageMagick'=>'WPVulnerability ImageMagick','WPVulnerability curl'=>'WPVulnerability curl','WPVulnerability memcached'=>'WPVulnerability memcached','WPVulnerability redis'=>'WPVulnerability redis','WPVulnerability sqlite'=>'WPVulnerability sqlite','This theme is closed. Please replace it with another.'=>'Dit thema is gesloten. Gelieve het te vervangen door een ander.','This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates.'=>'Deze kwetsbaarheid lijkt niet gepatcht te zijn. Blijf op de hoogte voor toekomstige thema updates.','This theme has known vulnerabilities that may be affecting your installed version.'=>'Dit thema heeft bekende kwetsbaarheden die mogelijk uw geïnstalleerde versie beïnvloeden.']]; \ No newline at end of file diff --git a/languages/wpvulnerability-nl-be.mo b/languages/wpvulnerability-nl-be.mo new file mode 100644 index 0000000000000000000000000000000000000000..110762816f3cde9abf82b43133f7385db80d4256 GIT binary patch literal 39482 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." +msgstr "" +"Dit commando vereist een WordPress-beheerder. Uitvoeren met --" +"user=." + +#: class-wpvulnerability-cli.php:156 +msgid "No core vulnerabilities found." +msgstr "Geen core-kwetsbaarheden gevonden." + +#: class-wpvulnerability-cli.php:275 +msgid "No plugin vulnerabilities found." +msgstr "Geen plugin-kwetsbaarheden gevonden." + +#: class-wpvulnerability-cli.php:393 +msgid "No theme vulnerabilities found." +msgstr "Geen thema-kwetsbaarheden gevonden." + +#. translators: %s is the software name (php, apache, nginx, etc.) +#: class-wpvulnerability-cli.php:490 +#, php-format +msgid "No %s vulnerabilities found." +msgstr "Geen %s-kwetsbaarheden gevonden." + +#: wpvulnerability-admin.php:63 wpvulnerability-adminms.php:227 +msgid "Data from source has been reloaded." +msgstr "Gegevens uit de bron zijn opnieuw geladen." + +#: wpvulnerability-admin.php:65 wpvulnerability-adminms.php:229 +msgid "You do not have permission to reload data." +msgstr "U heeft geen toestemming om gegevens opnieuw te laden." + +#: wpvulnerability-admin.php:93 wpvulnerability-adminms.php:255 +msgid "Test email has been sent." +msgstr "Test-e-mail is verzonden." + +#: wpvulnerability-admin.php:95 wpvulnerability-adminms.php:259 +msgid "Test email has failed. Please, check your email settings." +msgstr "De test e-mail is mislukt. Controleer je e-mailinstellingen." + +#: wpvulnerability-admin.php:98 wpvulnerability-adminms.php:263 +msgid "You do not have permission to send test emails." +msgstr "U heeft geen toestemming om test-e-mails te verzenden." + +#: wpvulnerability-admin.php:113 +msgid "WPVulnerability cron events have been repaired." +msgstr "WPVulnerability-cron-gebeurtenissen zijn gerepareerd." + +#: wpvulnerability-admin.php:115 wpvulnerability-adminms.php:279 +msgid "You do not have permission to repair cron events." +msgstr "U heeft geen toestemming om cron-gebeurtenissen te repareren." + +#: wpvulnerability-admin.php:127 wpvulnerability-adminms.php:291 +msgid "All logs have been deleted." +msgstr "Alle logboeken zijn verwijderd." + +#: wpvulnerability-admin.php:129 wpvulnerability-adminms.php:293 +msgid "You do not have permission to delete logs." +msgstr "U heeft geen toestemming om logboeken te verwijderen." + +#: wpvulnerability-admin.php:146 +msgid "Uninstall preference saved." +msgstr "Verwijderingsvoorkeur opgeslagen." + +#: wpvulnerability-admin.php:153 wpvulnerability-adminms.php:316 +msgid "WPVulnerability has been reset to defaults and reloaded." +msgstr "WPVulnerability is teruggezet naar standaardwaarden en opnieuw geladen." + +#: wpvulnerability-admin.php:155 wpvulnerability-adminms.php:318 +msgid "You do not have permission to reset WPVulnerability." +msgstr "U heeft geen toestemming om WPVulnerability te resetten." + +#: wpvulnerability-admin.php:170 wpvulnerability-adminms.php:333 +msgid "All caches have been cleared." +msgstr "Alle caches zijn gewist." + +#: wpvulnerability-admin.php:172 wpvulnerability-adminms.php:335 +msgid "You do not have permission to clear caches." +msgstr "U heeft geen toestemming om caches te wissen." + +#: wpvulnerability-admin.php:187 wpvulnerability-adminms.php:350 +msgid "Plugin and theme signatures have been reset." +msgstr "Plugin- en thema-handtekeningen zijn teruggezet." + +#: wpvulnerability-admin.php:189 wpvulnerability-adminms.php:352 +msgid "You do not have permission to reset signatures." +msgstr "U heeft geen toestemming om handtekeningen te resetten." + +#: wpvulnerability-admin.php:212 wpvulnerability-adminms.php:375 +msgid "You do not have permission to export debug information." +msgstr "U heeft geen toestemming om debug-informatie te exporteren." + +#: wpvulnerability-admin.php:224 wpvulnerability-adminms.php:387 +msgid "Database update has been executed." +msgstr "Database-update is uitgevoerd." + +#: wpvulnerability-admin.php:226 wpvulnerability-adminms.php:389 +msgid "You do not have permission to run database updates." +msgstr "U heeft geen toestemming om database-updates uit te voeren." + +#: wpvulnerability-admin.php:247 wpvulnerability-adminms.php:410 +msgid "Notification has been sent." +msgstr "Melding is verzonden." + +#: wpvulnerability-admin.php:249 wpvulnerability-adminms.php:412 +msgid "Notification sending failed." +msgstr "Verzenden van melding mislukt." + +#: wpvulnerability-admin.php:252 wpvulnerability-adminms.php:415 +msgid "You do not have permission to send notifications." +msgstr "U heeft geen toestemming om meldingen te verzenden." + +#: wpvulnerability-admin.php:266 wpvulnerability-adminms.php:539 +#: wpvulnerability-schedule.php:323 +msgid "Notifications" +msgstr "Meldingen" + +#: wpvulnerability-admin.php:269 wpvulnerability-adminms.php:542 +msgid "Analysis" +msgstr "Analyse" + +#: wpvulnerability-admin.php:272 wpvulnerability-adminms.php:545 +msgid "Logs" +msgstr "Logboeken" + +#: wpvulnerability-admin.php:275 wpvulnerability-adminms.php:548 +#: wpvulnerability-sitehealth.php:25 wpvulnerability-sitehealth.php:77 +#: wpvulnerability-sitehealth.php:129 wpvulnerability-sitehealth.php:210 +msgid "Security" +msgstr "Beveiliging" + +#: wpvulnerability-admin.php:278 wpvulnerability-adminms.php:551 +msgid "Tools" +msgstr "Hulpmiddelen" + +#: wpvulnerability-admin.php:285 wpvulnerability-adminms.php:558 +msgid "Debug" +msgstr "Debug" + +#: wpvulnerability-admin.php:290 wpvulnerability-adminms.php:563 +msgid "About" +msgstr "Over" + +#: wpvulnerability-admin.php:427 wpvulnerability-adminms.php:700 +msgid "Notification Settings" +msgstr "Meldingsinstellingen" + +#: wpvulnerability-admin.php:430 wpvulnerability-adminms.php:703 +msgid "Configure how and when you want to receive vulnerability notifications." +msgstr "Configureer hoe en wanneer u kwetsbaarheidsmeldingen wilt ontvangen." + +#: wpvulnerability-admin.php:431 wpvulnerability-adminms.php:704 +msgid "" +"Stay informed about security vulnerabilities in your WordPress installation, " +"plugins, themes, and server software." +msgstr "" +"Blijf op de hoogte van beveiligingskwetsbaarheden in uw WordPress-installatie, " +"plugins, thema's en serversoftware." + +#: wpvulnerability-admin.php:438 wpvulnerability-adminms.php:711 +msgid "Cache Expiration Time" +msgstr "Cache-vervaltijd" + +#: wpvulnerability-admin.php:440 wpvulnerability-admin.php:814 +#: wpvulnerability-adminms.php:713 wpvulnerability-adminms.php:1087 +msgid "FORCED" +msgstr "GEFORCEERD" + +#: wpvulnerability-admin.php:444 wpvulnerability-adminms.php:717 +msgid "How long to cache vulnerability data before refreshing from the API." +msgstr "Hoe lang kwetsbaarheidsgegevens worden gecached voordat ze worden vernieuwd vanuit de API." + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:453 wpvulnerability-admin.php:1891 +#: wpvulnerability-admin.php:3631 wpvulnerability-adminms.php:726 +#: wpvulnerability-adminms.php:2039 wpvulnerability-adminms.php:3825 +#, php-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d uur" +msgstr[1] "%d uur" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:469 wpvulnerability-adminms.php:742 +#, php-format +msgid "" +"You can force the cache time via wp-config.php constant. Learn more →" +msgstr "" +"U kunt de cachetijd forceren via een wp-config.php-constante. Meer informatie →" + +#: wpvulnerability-admin.php:481 wpvulnerability-admin.php:3665 +#: wpvulnerability-adminms.php:754 wpvulnerability-adminms.php:3859 +msgid "Notification Frequency" +msgstr "Meldingsfrequentie" + +#: wpvulnerability-admin.php:484 wpvulnerability-adminms.php:757 +msgid "Choose how often you want to receive vulnerability notifications." +msgstr "Kies hoe vaak u kwetsbaarheidsmeldingen wilt ontvangen." + +#: wpvulnerability-admin.php:489 wpvulnerability-adminms.php:762 +msgid "Never - Disable automatic notifications" +msgstr "Nooit – Automatische meldingen uitschakelen" + +#: wpvulnerability-admin.php:493 wpvulnerability-adminms.php:766 +msgid "Daily - Receive notifications every day" +msgstr "Dagelijks – Elke dag meldingen ontvangen" + +#: wpvulnerability-admin.php:497 wpvulnerability-adminms.php:770 +msgid "Weekly - Receive notifications once a week" +msgstr "Wekelijks – Eenmaal per week meldingen ontvangen" + +#: wpvulnerability-admin.php:503 wpvulnerability-adminms.php:776 +msgid "Day:" +msgstr "Dag:" + +#: wpvulnerability-admin.php:505 wpvulnerability-admin.php:1955 +#: wpvulnerability-adminms.php:778 wpvulnerability-adminms.php:2115 +msgid "Monday" +msgstr "Maandag" + +#: wpvulnerability-admin.php:506 wpvulnerability-admin.php:1956 +#: wpvulnerability-adminms.php:779 wpvulnerability-adminms.php:2116 +msgid "Tuesday" +msgstr "Dinsdag" + +#: wpvulnerability-admin.php:507 wpvulnerability-admin.php:1957 +#: wpvulnerability-adminms.php:780 wpvulnerability-adminms.php:2117 +msgid "Wednesday" +msgstr "Woensdag" + +#: wpvulnerability-admin.php:508 wpvulnerability-admin.php:1958 +#: wpvulnerability-adminms.php:781 wpvulnerability-adminms.php:2118 +msgid "Thursday" +msgstr "Donderdag" + +#: wpvulnerability-admin.php:509 wpvulnerability-admin.php:1959 +#: wpvulnerability-adminms.php:782 wpvulnerability-adminms.php:2119 +msgid "Friday" +msgstr "Vrijdag" + +#: wpvulnerability-admin.php:510 wpvulnerability-admin.php:1960 +#: wpvulnerability-adminms.php:783 wpvulnerability-adminms.php:2120 +msgid "Saturday" +msgstr "Zaterdag" + +#: wpvulnerability-admin.php:511 wpvulnerability-admin.php:1961 +#: wpvulnerability-adminms.php:784 wpvulnerability-adminms.php:2121 +msgid "Sunday" +msgstr "Zondag" + +#: wpvulnerability-admin.php:515 wpvulnerability-adminms.php:788 +msgid "Time:" +msgstr "Tijd:" + +#: wpvulnerability-admin.php:519 wpvulnerability-adminms.php:792 +msgid "(24-hour format, server timezone)" +msgstr "(24-uurs formaat, server-tijdzone)" + +#: wpvulnerability-admin.php:528 wpvulnerability-adminms.php:801 +msgid "Notification Channels" +msgstr "Meldingskanalen" + +#: wpvulnerability-admin.php:531 wpvulnerability-adminms.php:804 +msgid "Select where you want to receive notifications." +msgstr "Selecteer waar u meldingen wilt ontvangen." + +#: wpvulnerability-admin.php:536 wpvulnerability-admin.php:2011 +#: wpvulnerability-adminms.php:809 wpvulnerability-adminms.php:2169 +msgid "Email" +msgstr "E-mail" + +#: wpvulnerability-admin.php:539 wpvulnerability-adminms.php:812 +msgid "Email Addresses (separated by commas):" +msgstr "E-mailadressen (gescheiden door komma's):" + +#: wpvulnerability-admin.php:541 wpvulnerability-adminms.php:814 +msgid "Default:" +msgstr "Standaard:" + +#: wpvulnerability-admin.php:546 wpvulnerability-admin.php:2016 +#: wpvulnerability-adminms.php:819 wpvulnerability-adminms.php:2174 +msgid "Slack" +msgstr "Slack" + +#: wpvulnerability-admin.php:549 wpvulnerability-adminms.php:822 +msgid "Slack Webhook URL:" +msgstr "Slack webhook-URL:" + +#. translators: %s: Slack documentation URL +#: wpvulnerability-admin.php:555 wpvulnerability-adminms.php:828 +#, php-format +msgid "" +"Learn how to " +"create a Slack incoming webhook →" +msgstr "" +"Leer hoe u " +"een inkomende Slack-webhook maakt →" + +#: wpvulnerability-admin.php:564 wpvulnerability-admin.php:2021 +#: wpvulnerability-adminms.php:837 wpvulnerability-adminms.php:2179 +msgid "Microsoft Teams" +msgstr "Microsoft Teams" + +#: wpvulnerability-admin.php:567 wpvulnerability-adminms.php:840 +msgid "Teams Webhook URL:" +msgstr "Teams webhook-URL:" + +#. translators: %s: Microsoft Teams documentation URL +#: wpvulnerability-admin.php:573 wpvulnerability-adminms.php:846 +#, php-format +msgid "" +"Learn how to " +"create a Teams incoming webhook →" +msgstr "" +"Leer hoe u " +"een inkomende Teams-webhook maakt →" + +#: wpvulnerability-admin.php:582 wpvulnerability-adminms.php:855 +msgid "Discord" +msgstr "Discord" + +#: wpvulnerability-admin.php:585 wpvulnerability-adminms.php:858 +msgid "Discord Webhook URL:" +msgstr "Discord webhook-URL:" + +#. translators: %s: Discord documentation URL +#: wpvulnerability-admin.php:591 wpvulnerability-adminms.php:864 +#, php-format +msgid "" +"Learn how to " +"create a Discord webhook →" +msgstr "" +"Leer hoe u " +"een Discord-webhook maakt →" + +#: wpvulnerability-admin.php:600 wpvulnerability-adminms.php:873 +msgid "Telegram" +msgstr "Telegram" + +#: wpvulnerability-admin.php:603 wpvulnerability-adminms.php:876 +msgid "Telegram Bot Token:" +msgstr "Telegram-bot-token:" + +#: wpvulnerability-admin.php:605 wpvulnerability-adminms.php:878 +msgid "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "Formaat: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:607 wpvulnerability-adminms.php:880 +msgid "Telegram Chat ID:" +msgstr "Telegram chat-ID:" + +#. translators: %s: Telegram documentation URL +#: wpvulnerability-admin.php:613 wpvulnerability-adminms.php:886 +#, php-format +msgid "" +"Learn how to " +"create a Telegram bot and get Chat ID →" +msgstr "" +"Leer hoe u " +"een Telegram-bot maakt en de chat-ID ophaalt →" + +#: wpvulnerability-admin.php:623 wpvulnerability-adminms.php:896 +msgid "Save Notification Settings" +msgstr "Meldingsinstellingen opslaan" + +#: wpvulnerability-admin.php:700 wpvulnerability-admin.php:2552 +#: wpvulnerability-adminms.php:973 wpvulnerability-adminms.php:2459 +msgid "WordPress Components" +msgstr "WordPress-componenten" + +#: wpvulnerability-admin.php:703 wpvulnerability-admin.php:2560 +#: wpvulnerability-adminms.php:976 wpvulnerability-adminms.php:2467 +msgid "WordPress Core" +msgstr "WordPress Core" + +#: wpvulnerability-admin.php:707 wpvulnerability-admin.php:1472 +#: wpvulnerability-admin.php:1573 wpvulnerability-admin.php:2109 +#: wpvulnerability-admin.php:2571 wpvulnerability-adminms.php:980 +#: wpvulnerability-adminms.php:1744 wpvulnerability-adminms.php:1843 +#: wpvulnerability-adminms.php:2266 wpvulnerability-adminms.php:2478 +msgid "Plugins" +msgstr "Plugins" + +#: wpvulnerability-admin.php:711 wpvulnerability-admin.php:1473 +#: wpvulnerability-admin.php:1574 wpvulnerability-admin.php:2114 +#: wpvulnerability-admin.php:2587 wpvulnerability-adminms.php:984 +#: wpvulnerability-adminms.php:1745 wpvulnerability-adminms.php:1844 +#: wpvulnerability-adminms.php:2271 wpvulnerability-adminms.php:2494 +msgid "Themes" +msgstr "Thema's" + +#: wpvulnerability-admin.php:717 wpvulnerability-adminms.php:990 +msgid "Software & Languages" +msgstr "Software & Talen" + +#: wpvulnerability-admin.php:720 wpvulnerability-admin.php:1474 +#: wpvulnerability-admin.php:2119 wpvulnerability-adminms.php:993 +#: wpvulnerability-adminms.php:1746 wpvulnerability-adminms.php:2276 +#: wpvulnerability-sitehealth.php:178 +msgid "PHP" +msgstr "PHP" + +#: wpvulnerability-admin.php:726 wpvulnerability-adminms.php:999 +msgid "Web Servers" +msgstr "Webservers" + +#: wpvulnerability-admin.php:729 wpvulnerability-admin.php:1475 +#: wpvulnerability-admin.php:2124 wpvulnerability-adminms.php:1002 +#: wpvulnerability-adminms.php:1747 wpvulnerability-adminms.php:2281 +#: wpvulnerability-sitehealth.php:179 +msgid "Apache HTTPD" +msgstr "Apache HTTPD" + +#: wpvulnerability-admin.php:733 wpvulnerability-admin.php:1476 +#: wpvulnerability-admin.php:2129 wpvulnerability-adminms.php:1006 +#: wpvulnerability-adminms.php:1748 wpvulnerability-adminms.php:2286 +msgid "nginx" +msgstr "nginx" + +#: wpvulnerability-admin.php:739 wpvulnerability-adminms.php:1012 +msgid "Databases" +msgstr "Databases" + +#: wpvulnerability-admin.php:742 wpvulnerability-admin.php:1477 +#: wpvulnerability-admin.php:2134 wpvulnerability-adminms.php:1015 +#: wpvulnerability-adminms.php:1749 wpvulnerability-adminms.php:2291 +#: wpvulnerability-sitehealth.php:181 +msgid "MariaDB" +msgstr "MariaDB" + +#: wpvulnerability-admin.php:746 wpvulnerability-admin.php:1478 +#: wpvulnerability-admin.php:2139 wpvulnerability-adminms.php:1019 +#: wpvulnerability-adminms.php:1750 wpvulnerability-adminms.php:2296 +#: wpvulnerability-sitehealth.php:182 +msgid "MySQL" +msgstr "MySQL" + +#: wpvulnerability-admin.php:750 wpvulnerability-admin.php:1483 +#: wpvulnerability-admin.php:2164 wpvulnerability-admin.php:3104 +#: wpvulnerability-adminms.php:1023 wpvulnerability-adminms.php:1755 +#: wpvulnerability-adminms.php:2321 wpvulnerability-adminms.php:3281 +msgid "SQLite" +msgstr "SQLite" + +#: wpvulnerability-admin.php:756 wpvulnerability-adminms.php:1029 +msgid "Additional Tools" +msgstr "Aanvullende hulpmiddelen" + +#: wpvulnerability-admin.php:759 wpvulnerability-admin.php:1479 +#: wpvulnerability-admin.php:2144 wpvulnerability-admin.php:3101 +#: wpvulnerability-adminms.php:1032 wpvulnerability-adminms.php:1751 +#: wpvulnerability-adminms.php:2301 wpvulnerability-adminms.php:3278 +#: wpvulnerability-sitehealth.php:183 +msgid "ImageMagick" +msgstr "ImageMagick" + +#: wpvulnerability-admin.php:763 wpvulnerability-admin.php:1480 +#: wpvulnerability-admin.php:2149 wpvulnerability-adminms.php:1036 +#: wpvulnerability-adminms.php:1752 wpvulnerability-adminms.php:2306 +#: wpvulnerability-sitehealth.php:184 +msgid "curl" +msgstr "curl" + +#: wpvulnerability-admin.php:767 wpvulnerability-admin.php:1481 +#: wpvulnerability-admin.php:2154 wpvulnerability-adminms.php:1040 +#: wpvulnerability-adminms.php:1753 wpvulnerability-adminms.php:2311 +msgid "memcached" +msgstr "memcached" + +#: wpvulnerability-admin.php:771 wpvulnerability-admin.php:1482 +#: wpvulnerability-admin.php:2159 wpvulnerability-admin.php:3102 +#: wpvulnerability-adminms.php:1044 wpvulnerability-adminms.php:1754 +#: wpvulnerability-adminms.php:2316 wpvulnerability-adminms.php:3279 +msgid "Redis" +msgstr "Redis" + +#: wpvulnerability-admin.php:784 wpvulnerability-adminms.php:1057 +msgid "Component Analysis Settings" +msgstr "Instellingen componentenanalyse" + +#: wpvulnerability-admin.php:787 wpvulnerability-adminms.php:1060 +msgid "Enable or disable vulnerability analysis for specific components." +msgstr "Kwetsbaarheidsanalyse in- of uitschakelen voor specifieke componenten." + +#: wpvulnerability-admin.php:788 wpvulnerability-adminms.php:1061 +msgid "" +"Check the components you want to HIDE from vulnerability scans and reports. " +"Unchecked components will be actively analyzed. Components with active " +"analysis are shown in green, hidden components in red." +msgstr "" +"Selecteer de componenten die u wilt VERBERGEN voor kwetsbaarheidsscans en rapporten. " +"Niet-geselecteerde componenten worden actief geanalyseerd. Componenten met actieve " +"analyse worden groen weergegeven, verborgen componenten rood." + +#: wpvulnerability-admin.php:820 wpvulnerability-adminms.php:1093 +msgid "Hidden (forced by constant)" +msgstr "Verborgen (geforceerd door constante)" + +#: wpvulnerability-admin.php:823 wpvulnerability-adminms.php:1096 +msgid "🔴 Analysis disabled" +msgstr "🔴 Analyse uitgeschakeld" + +#: wpvulnerability-admin.php:826 wpvulnerability-adminms.php:1099 +msgid "🟢 Analysis active" +msgstr "🟢 Analyse actief" + +#: wpvulnerability-admin.php:848 wpvulnerability-adminms.php:1121 +msgid "Tip:" +msgstr "Tip:" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:852 wpvulnerability-adminms.php:1125 +#, php-format +msgid "" +"You can force-disable components via wp-config.php constants. Learn more about force-hiding " +"checks →" +msgstr "" +"U kunt componenten geforceerd uitschakelen via wp-config.php-constanten. Meer informatie over het geforceerd verbergen " +"van controles →" + +#: wpvulnerability-admin.php:860 wpvulnerability-adminms.php:1133 +msgid "Save Analysis Settings" +msgstr "Analyse-instellingen opslaan" + +#: wpvulnerability-admin.php:920 wpvulnerability-adminms.php:1193 +msgid "« Previous" +msgstr "« Vorige" + +#: wpvulnerability-admin.php:921 wpvulnerability-adminms.php:1194 +msgid "Next »" +msgstr "Volgende »" + +#: wpvulnerability-admin.php:932 wpvulnerability-adminms.php:1205 +msgid "Log entry not found or has been removed." +msgstr "Logboekvermelding niet gevonden of is verwijderd." + +#: wpvulnerability-admin.php:935 wpvulnerability-adminms.php:1208 +msgid "Unable to load the requested log entry." +msgstr "De gevraagde logboekvermelding kan niet worden geladen." + +#: wpvulnerability-admin.php:945 wpvulnerability-adminms.php:1218 +msgid "Log Configuration" +msgstr "Logboekconfiguratie" + +#: wpvulnerability-admin.php:950 wpvulnerability-adminms.php:1223 +msgid "Total Logs" +msgstr "Totaal logboeken" + +#: wpvulnerability-admin.php:954 wpvulnerability-adminms.php:1227 +msgid "Retention Period" +msgstr "Bewaarperiode" + +#: wpvulnerability-admin.php:959 wpvulnerability-admin.php:1301 +#: wpvulnerability-admin.php:3029 wpvulnerability-admin.php:3043 +#: wpvulnerability-admin.php:3475 wpvulnerability-admin.php:3483 +#: wpvulnerability-adminms.php:1232 wpvulnerability-adminms.php:1574 +#: wpvulnerability-adminms.php:3206 wpvulnerability-adminms.php:3220 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Disabled" +msgstr "Uitgeschakeld" + +#. translators: %d: Number of days. +#. translators: %d: number of days +#: wpvulnerability-admin.php:962 wpvulnerability-admin.php:984 +#: wpvulnerability-admin.php:3641 wpvulnerability-adminms.php:1235 +#: wpvulnerability-adminms.php:1257 wpvulnerability-adminms.php:3835 +#, php-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d dag" +msgstr[1] "%d dagen" + +#: wpvulnerability-admin.php:975 wpvulnerability-adminms.php:1248 +msgid "Log Retention Period" +msgstr "Bewaarperiode logboek" + +#: wpvulnerability-admin.php:981 wpvulnerability-adminms.php:1254 +msgid "None (Disabled)" +msgstr "Geen (Uitgeschakeld)" + +#: wpvulnerability-admin.php:1004 wpvulnerability-adminms.php:1277 +msgid "" +"This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant." +msgstr "" +"Deze waarde wordt afgedwongen door de constante WPVULNERABILITY_LOG_RETENTION_DAYS." + +#: wpvulnerability-admin.php:1009 wpvulnerability-adminms.php:1282 +msgid "" +"Choose how long WPVulnerability should keep API response logs. Older logs " +"are automatically deleted." +msgstr "" +"Kies hoe lang WPVulnerability API-responslogboeken moet bewaren. Oudere logboeken " +"worden automatisch verwijderd." + +#: wpvulnerability-admin.php:1013 wpvulnerability-adminms.php:1286 +msgid "Save Configuration" +msgstr "Configuratie opslaan" + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "Log retention is currently disabled." +msgstr "Logboekbewaring is momenteel uitgeschakeld." + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "API responses are not being saved." +msgstr "API-reacties worden niet opgeslagen." + +#: wpvulnerability-admin.php:1031 wpvulnerability-adminms.php:1304 +msgid "Log Details" +msgstr "Logboekdetails" + +#: wpvulnerability-admin.php:1035 wpvulnerability-admin.php:1104 +#: wpvulnerability-adminms.php:1308 wpvulnerability-adminms.php:1377 +msgid "Date" +msgstr "Datum" + +#: wpvulnerability-admin.php:1039 wpvulnerability-admin.php:1105 +#: wpvulnerability-adminms.php:1312 wpvulnerability-adminms.php:1378 +msgid "API Endpoint" +msgstr "API-eindpunt" + +#: wpvulnerability-admin.php:1044 wpvulnerability-adminms.php:1317 +msgid "API Response" +msgstr "API-respons" + +#: wpvulnerability-admin.php:1049 wpvulnerability-adminms.php:1322 +msgid "Back to Logs" +msgstr "Terug naar logboeken" + +#: wpvulnerability-admin.php:1058 wpvulnerability-adminms.php:1331 +msgid "No logs available" +msgstr "Geen logboeken beschikbaar" + +#: wpvulnerability-admin.php:1059 wpvulnerability-adminms.php:1332 +msgid "API response logs will appear here once the vulnerability scanner runs." +msgstr "API-responslogboeken verschijnen hier zodra de kwetsbaarheidsscanner wordt uitgevoerd." + +#: wpvulnerability-admin.php:1063 wpvulnerability-adminms.php:1336 +msgid "API Response Logs" +msgstr "API-responslogboeken" + +#: wpvulnerability-admin.php:1073 wpvulnerability-adminms.php:1346 +msgid "Show:" +msgstr "Weergeven:" + +#: wpvulnerability-admin.php:1082 wpvulnerability-adminms.php:1355 +msgid "Apply" +msgstr "Toepassen" + +#. translators: 1: first item, 2: last item, 3: total items +#: wpvulnerability-admin.php:1090 wpvulnerability-adminms.php:1363 +#, php-format +msgid "Showing %1$s–%2$s of %3$s" +msgstr "%1$s–%2$s van %3$s weergegeven" + +#: wpvulnerability-admin.php:1106 wpvulnerability-adminms.php:1379 +msgid "Actions" +msgstr "Acties" + +#: wpvulnerability-admin.php:1133 wpvulnerability-admin.php:3957 +#: wpvulnerability-adminms.php:1406 wpvulnerability-adminms.php:4151 +msgid "View" +msgstr "Bekijken" + +#: wpvulnerability-admin.php:1150 wpvulnerability-adminms.php:1423 +msgid "Danger Zone" +msgstr "Gevarenzone" + +#: wpvulnerability-admin.php:1152 wpvulnerability-adminms.php:1425 +msgid "Permanently delete all API response logs. This action cannot be undone." +msgstr "Alle API-responslogboeken permanent verwijderen. Deze actie kan niet ongedaan worden gemaakt." + +#: wpvulnerability-admin.php:1154 wpvulnerability-adminms.php:1427 +msgid "Are you sure you want to delete all logs? This action cannot be undone." +msgstr "Weet u zeker dat u alle logboeken wilt verwijderen? Deze actie kan niet ongedaan worden gemaakt." + +#: wpvulnerability-admin.php:1157 wpvulnerability-adminms.php:1430 +msgid "Delete All Logs" +msgstr "Alle logboeken verwijderen" + +#: wpvulnerability-admin.php:1201 wpvulnerability-adminms.php:1474 +msgid "Reload Data from API" +msgstr "Gegevens opnieuw laden vanuit API" + +#: wpvulnerability-admin.php:1204 wpvulnerability-adminms.php:1477 +msgid "" +"Reload all Core, Plugins, Themes and other components information directly " +"from the API to have updated data. This will clear the cache and fetch fresh " +"vulnerability information." +msgstr "" +"Alle Core-, plugin-, thema- en andere componenteninformatie direct " +"opnieuw laden vanuit de API voor actuele gegevens. Dit wist de cache en haalt nieuwe " +"kwetsbaarheidsinformatie op." + +#: wpvulnerability-admin.php:1209 wpvulnerability-adminms.php:1482 +msgid "Reload Data" +msgstr "Gegevens opnieuw laden" + +#: wpvulnerability-admin.php:1218 wpvulnerability-adminms.php:1491 +msgid "Test Email Notifications" +msgstr "Test e-mailmeldingen" + +#: wpvulnerability-admin.php:1221 wpvulnerability-adminms.php:1494 +msgid "" +"Send a test email notification with current vulnerability data to verify " +"your email configuration is working correctly." +msgstr "" +"Stuur een test-e-mailmelding met actuele kwetsbaarheidsgegevens om te controleren " +"of uw e-mailconfiguratie correct werkt." + +#: wpvulnerability-admin.php:1231 wpvulnerability-adminms.php:1504 +msgid "From address (configured via constant):" +msgstr "Afzenderadres (geconfigureerd via constante):" + +#: wpvulnerability-admin.php:1243 wpvulnerability-adminms.php:1516 +msgid "From address (default):" +msgstr "Afzenderadres (standaard):" + +#: wpvulnerability-admin.php:1252 wpvulnerability-adminms.php:1525 +msgid "Learn how to customize the email sender address →" +msgstr "Leer hoe u het e-mailafzenderadres kunt aanpassen →" + +#: wpvulnerability-admin.php:1258 wpvulnerability-adminms.php:1531 +msgid "Send Test Email" +msgstr "Test-e-mail verzenden" + +#: wpvulnerability-admin.php:1267 wpvulnerability-adminms.php:1540 +msgid "WP-Cron Status" +msgstr "WP-cron-status" + +#: wpvulnerability-admin.php:1270 wpvulnerability-adminms.php:1543 +msgid "" +"View and manage WP-Cron scheduled events. Compare expected schedules with " +"actual cron jobs to ensure automated tasks are running correctly." +msgstr "" +"WP-cron geplande gebeurtenissen weergeven en beheren. Vergelijk verwachte planningen met " +"werkelijke cron-taken om te controleren of geautomatiseerde taken correct worden uitgevoerd." + +#: wpvulnerability-admin.php:1275 wpvulnerability-adminms.php:1548 +msgid "No cron data available." +msgstr "Geen cron-gegevens beschikbaar." + +#: wpvulnerability-admin.php:1281 wpvulnerability-adminms.php:1554 +msgid "Hook" +msgstr "Hook" + +#: wpvulnerability-admin.php:1282 wpvulnerability-adminms.php:1555 +msgid "Expected" +msgstr "Verwacht" + +#: wpvulnerability-admin.php:1283 wpvulnerability-adminms.php:1556 +msgid "Found" +msgstr "Gevonden" + +#: wpvulnerability-admin.php:1284 wpvulnerability-adminms.php:1557 +msgid "Next Run" +msgstr "Volgende uitvoering" + +#: wpvulnerability-admin.php:1285 wpvulnerability-admin.php:3236 +#: wpvulnerability-admin.php:3559 wpvulnerability-adminms.php:1558 +#: wpvulnerability-adminms.php:3413 wpvulnerability-adminms.php:3753 +msgid "Status" +msgstr "Status" + +#: wpvulnerability-admin.php:1299 wpvulnerability-adminms.php:1572 +msgid "Not expected" +msgstr "Niet verwacht" + +#: wpvulnerability-admin.php:1321 wpvulnerability-adminms.php:1594 +#: wpvulnerability-general.php:1871 wpvulnerability-general.php:1872 +msgid "None" +msgstr "Geen" + +#: wpvulnerability-admin.php:1356 wpvulnerability-adminms.php:1629 +msgid "OK" +msgstr "OK" + +#: wpvulnerability-admin.php:1366 wpvulnerability-adminms.php:1639 +msgid "⚠️ Unexpected WPVulnerability Events" +msgstr "⚠️ Onverwachte WPVulnerability-gebeurtenissen" + +#: wpvulnerability-admin.php:1383 wpvulnerability-adminms.php:1656 +msgid "No interval" +msgstr "Geen interval" + +#: wpvulnerability-admin.php:1390 wpvulnerability-adminms.php:1663 +msgid "Next:" +msgstr "Volgende:" + +#: wpvulnerability-admin.php:1400 wpvulnerability-adminms.php:1673 +msgid "Repair Cron Events" +msgstr "Cron-gebeurtenissen repareren" + +#: wpvulnerability-admin.php:1408 wpvulnerability-adminms.php:1681 +msgid "Uninstall Data" +msgstr "Verwijderingsgegevens" + +#: wpvulnerability-admin.php:1410 wpvulnerability-adminms.php:1683 +msgid "" +"By default, all plugin data is preserved when WPVulnerability is deleted. " +"Enable the option below only if you want all options, logs, and cached data " +"permanently removed on uninstall." +msgstr "" +"Standaard worden alle plugin-gegevens bewaard wanneer WPVulnerability wordt verwijderd. " +"Schakel de onderstaande optie alleen in als u wilt dat alle opties, logboeken en gecachede gegevens " +"permanent worden verwijderd bij het verwijderen." + +#: wpvulnerability-admin.php:1420 wpvulnerability-adminms.php:1693 +msgid "Delete all plugin data on uninstall" +msgstr "Alle plugin-gegevens verwijderen bij het verwijderen" + +#: wpvulnerability-admin.php:1423 wpvulnerability-adminms.php:1696 +msgid "" +"Default: unchecked (data preserved). Check only if you want a clean removal." +msgstr "" +"Standaard: niet aangevinkt (gegevens bewaard). Alleen aanvinken als u een volledige verwijdering wilt." + +#: wpvulnerability-admin.php:1425 wpvulnerability-adminms.php:1698 +msgid "Save preference" +msgstr "Voorkeur opslaan" + +#: wpvulnerability-admin.php:1432 wpvulnerability-adminms.php:1705 +msgid "Reset WPVulnerability" +msgstr "WPVulnerability resetten" + +#: wpvulnerability-admin.php:1434 wpvulnerability-adminms.php:1707 +msgid "" +"Delete all WPVulnerability settings, cached data, logs, and scheduled " +"events, then restore defaults and reload data from the API." +msgstr "" +"Alle WPVulnerability-instellingen, gecachede gegevens, logboeken en geplande " +"gebeurtenissen verwijderen, daarna standaardinstellingen herstellen en gegevens opnieuw laden vanuit de API." + +#: wpvulnerability-admin.php:1436 wpvulnerability-adminms.php:1709 +msgid "This action cannot be undone." +msgstr "Deze actie kan niet ongedaan worden gemaakt." + +#: wpvulnerability-admin.php:1438 wpvulnerability-adminms.php:1711 +msgid "" +"Are you sure you want to reset all WPVulnerability data? This action cannot " +"be undone." +msgstr "" +"Weet u zeker dat u alle WPVulnerability-gegevens wilt resetten? Deze actie kan " +"niet ongedaan worden gemaakt." + +#: wpvulnerability-admin.php:1441 wpvulnerability-adminms.php:1713 +msgid "Reset Plugin" +msgstr "Plugin resetten" + +#: wpvulnerability-admin.php:1468 wpvulnerability-adminms.php:1740 +msgid "Vulnerability Database Statistics" +msgstr "Statistieken kwetsbaarhedendatabase" + +#. translators: number of vulnerabilities. +#: wpvulnerability-admin.php:1510 wpvulnerability-adminms.php:1782 +#, php-format +msgid "%s vulnerability" +msgid_plural "%s vulnerabilities" +msgstr[0] "%s kwetsbaarheid" +msgstr[1] "%s kwetsbaarheden" + +#. translators: number of products. +#: wpvulnerability-admin.php:1520 wpvulnerability-adminms.php:1792 +#, php-format +msgid "(%s product)" +msgid_plural "(%s products)" +msgstr[0] "(%s product)" +msgstr[1] "(%s producten)" + +#: wpvulnerability-admin.php:1527 wpvulnerability-adminms.php:1799 +msgid "No data" +msgstr "Geen gegevens" + +#. translators: date of last update. +#: wpvulnerability-admin.php:1544 wpvulnerability-adminms.php:1814 +#, php-format +msgid "Database last updated: %s" +msgstr "Database voor het laatste bijgewerkt: %s" + +#: wpvulnerability-admin.php:1566 wpvulnerability-adminms.php:1836 +msgid "Intelligence Sources" +msgstr "Informatiebronnen" + +#: wpvulnerability-admin.php:1567 wpvulnerability-adminms.php:1837 +msgid "Number of vulnerabilities contributed by each intelligence source." +msgstr "Aantal kwetsbaarheden bijgedragen door elke informatiebron." + +#: wpvulnerability-admin.php:1571 wpvulnerability-adminms.php:1841 +msgid "Source" +msgstr "Bron" + +#: wpvulnerability-admin.php:1572 wpvulnerability-admin.php:2104 +#: wpvulnerability-adminms.php:1842 wpvulnerability-adminms.php:2261 +msgid "Core" +msgstr "Core" + +#: wpvulnerability-admin.php:1603 wpvulnerability-adminms.php:1873 +msgid "Sponsors" +msgstr "Sponsors" + +#: wpvulnerability-admin.php:1626 wpvulnerability-adminms.php:1896 +msgid "No sponsor data available." +msgstr "Geen sponsorgegevens beschikbaar." + +#: wpvulnerability-admin.php:1633 wpvulnerability-adminms.php:1903 +msgid "Contributors" +msgstr "Bijdragers" + +#: wpvulnerability-admin.php:1656 wpvulnerability-adminms.php:1926 +msgid "No contributor data available." +msgstr "Geen gegevens over bijdragers beschikbaar." + +#: wpvulnerability-admin.php:1674 wpvulnerability-adminms.php:432 +msgid "You do not have sufficient permissions to access this page." +msgstr "U heeft onvoldoende rechten om deze pagina te openen." + +#: wpvulnerability-admin.php:1684 wpvulnerability-adminms.php:441 +msgid "WPVulnerability settings" +msgstr "WPVulnerability instellingen" + +#: wpvulnerability-admin.php:1801 wpvulnerability-adminms.php:1963 +msgid "Configure and save these settings to receive notifications." +msgstr "" +"Configureer en sla deze instellingen op om e-mailmeldingen te ontvangen." + +#: wpvulnerability-admin.php:1814 wpvulnerability-adminms.php:2071 +msgid "Configure and save these settings to hide vulnerabilities." +msgstr "Configureer en sla deze instellingen op om kwetsbaarheden te verbergen." + +#: wpvulnerability-admin.php:1845 wpvulnerability-adminms.php:1993 +msgid "Default administrator email" +msgstr "Standaard e-mailadres beheerder" + +#: wpvulnerability-admin.php:1909 wpvulnerability-adminms.php:2057 +msgid "Read more if you want to force the cache time." +msgstr "Meer lezen als u de cachetijd wilt forceren." + +#: wpvulnerability-admin.php:1939 wpvulnerability-adminms.php:2099 +msgid "Never" +msgstr "Nooit" + +#: wpvulnerability-admin.php:1944 wpvulnerability-adminms.php:2104 +msgid "Daily" +msgstr "Dagelijks" + +#: wpvulnerability-admin.php:1949 wpvulnerability-adminms.php:2109 +msgid "Weekly" +msgstr "Wekelijks" + +#: wpvulnerability-admin.php:1953 wpvulnerability-adminms.php:2113 +msgid "Day" +msgstr "Dag" + +#: wpvulnerability-admin.php:1966 wpvulnerability-adminms.php:2126 +msgid "Hour" +msgstr "Uur" + +#: wpvulnerability-admin.php:1968 wpvulnerability-adminms.php:2128 +msgid "Minute" +msgstr "Minuut" + +#: wpvulnerability-admin.php:2166 wpvulnerability-adminms.php:2323 +msgid "Read more about how to force the deactivation of an item." +msgstr "Meer lezen over het geforceerd deactiveren van een item." + +#: wpvulnerability-admin.php:2292 wpvulnerability-adminms.php:2870 +msgid "" +"Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com" +msgstr "" +"Ongeldige Slack webhook-URL. Moet een geldige HTTPS-URL zijn van hooks.slack.com." + +#: wpvulnerability-admin.php:2315 wpvulnerability-adminms.php:2893 +msgid "" +"Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office." +"com, office365.com, or api.hooks.microsoft.com" +msgstr "" +"Ongeldige Microsoft Teams webhook-URL. Moet een geldige HTTPS-URL zijn van office." +"com, office365.com of api.hooks.microsoft.com." + +#: wpvulnerability-admin.php:2338 wpvulnerability-adminms.php:2916 +msgid "" +"Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or " +"discordapp.com" +msgstr "" +"Ongeldige Discord webhook-URL. Moet een geldige HTTPS-URL zijn van discord.com of " +"discordapp.com." + +#: wpvulnerability-admin.php:2357 wpvulnerability-adminms.php:2935 +msgid "" +"Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-" +"zyx57W2v1u123ew11" +msgstr "" +"Ongeldig Telegram-bot-tokenformaat. Moet er zo uitzien: 123456:ABC-DEF1234ghIkl-" +"zyx57W2v1u123ew11." + +#: wpvulnerability-admin.php:2493 wpvulnerability-adminms.php:2400 +msgid "All Clear" +msgstr "Alles in orde" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2503 wpvulnerability-adminms.php:2410 +#, php-format +msgid "%d Critical Issue Found" +msgid_plural "%d Critical Issues Found" +msgstr[0] "%d kritiek probleem gevonden" +msgstr[1] "%d kritieke problemen gevonden" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2508 wpvulnerability-adminms.php:2415 +#, php-format +msgid "%d Issue Found" +msgid_plural "%d Issues Found" +msgstr[0] "%d probleem gevonden" +msgstr[1] "%d problemen gevonden" + +#: wpvulnerability-admin.php:2515 wpvulnerability-adminms.php:2422 +msgid "Never checked" +msgstr "Nooit gecontroleerd" + +#. translators: %d: number of minutes +#: wpvulnerability-admin.php:2523 wpvulnerability-adminms.php:2430 +#, php-format +msgid "%d minute ago" +msgid_plural "%d minutes ago" +msgstr[0] "%d minuut geleden" +msgstr[1] "%d minuten geleden" + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:2527 wpvulnerability-adminms.php:2434 +#, php-format +msgid "%d hour ago" +msgid_plural "%d hours ago" +msgstr[0] "%d uur geleden" +msgstr[1] "%d uur geleden" + +#. translators: %s: time since last check +#: wpvulnerability-admin.php:2539 wpvulnerability-adminms.php:2446 +#, php-format +msgid "Last checked: %s" +msgstr "Laatst gecontroleerd: %s" + +#: wpvulnerability-admin.php:2540 wpvulnerability-adminms.php:2447 +msgid "Refresh Now" +msgstr "Nu vernieuwen" + +#: wpvulnerability-admin.php:2547 wpvulnerability-adminms.php:2454 +msgid "No vulnerabilities detected" +msgstr "Geen kwetsbaarheden gedetecteerd" + +#: wpvulnerability-admin.php:2548 wpvulnerability-adminms.php:2455 +msgid "Your site is up to date and secure" +msgstr "Uw site is up-to-date en veilig" + +#: wpvulnerability-admin.php:2616 wpvulnerability-adminms.php:2523 +msgid "Server Software" +msgstr "Serversoftware" + +#: wpvulnerability-admin.php:2829 wpvulnerability-adminms.php:2736 +msgid "Site Health" +msgstr "Site-gezondheid" + +#: wpvulnerability-admin.php:2831 wpvulnerability-adminms.php:2738 +#: wpvulnerability-run.php:33 +msgid "Settings" +msgstr "Instellingen" + +#: wpvulnerability-admin.php:2846 wpvulnerability-adminms.php:2754 +msgid "WPVulnerability Status" +msgstr "WPVulnerability-status" + +#: wpvulnerability-admin.php:2878 wpvulnerability-adminms.php:3052 +msgid "Receive vulnerability notifications" +msgstr "Kwetsbaarheidsmeldingen ontvangen" + +#: wpvulnerability-admin.php:2886 wpvulnerability-adminms.php:3060 +msgid "Cache expiration time" +msgstr "Cache-vervaltijd" + +#: wpvulnerability-admin.php:2895 wpvulnerability-adminms.php:3069 +msgid "How often you want to receive notifications" +msgstr "Hoe vaak je meldingen wilt ontvangen" + +#: wpvulnerability-admin.php:2904 wpvulnerability-adminms.php:3078 +msgid "Where do you want to receive notifications?" +msgstr "Waar wilt u meldingen ontvangen?" + +#: wpvulnerability-admin.php:2913 wpvulnerability-adminms.php:3087 +msgid "Email addresses to notify (separated by commas)" +msgstr "E-mailadressen voor meldingen (gescheiden door komma's)" + +#: wpvulnerability-admin.php:2922 wpvulnerability-adminms.php:3096 +msgid "Slack webhook URL" +msgstr "Slack webhook-URL" + +#: wpvulnerability-admin.php:2931 wpvulnerability-adminms.php:3105 +msgid "Teams webhook URL" +msgstr "Teams webhook-URL" + +#: wpvulnerability-admin.php:2950 wpvulnerability-adminms.php:3126 +msgid "Vulnerabilities to hide" +msgstr "Te verbergen kwetsbaarheden" + +#: wpvulnerability-admin.php:2958 wpvulnerability-adminms.php:3134 +msgid "What do you want to hide?" +msgstr "Wat wilt u verbergen?" + +#: wpvulnerability-admin.php:3008 wpvulnerability-adminms.php:3185 +msgid "Standard (Hybrid Detection)" +msgstr "Standaard (hybride detectie)" + +#: wpvulnerability-admin.php:3009 wpvulnerability-adminms.php:3186 +msgid "Strict (Extensions Only)" +msgstr "Strikt (alleen extensies)" + +#: wpvulnerability-admin.php:3010 wpvulnerability-adminms.php:3187 +msgid "Disabled (No Detection)" +msgstr "Uitgeschakeld (geen detectie)" + +#: wpvulnerability-admin.php:3016 wpvulnerability-adminms.php:3193 +msgid "Security Status" +msgstr "Beveiligingsstatus" + +#: wpvulnerability-admin.php:3020 wpvulnerability-adminms.php:3197 +msgid "Security Mode" +msgstr "Beveiligingsmodus" + +#: wpvulnerability-admin.php:3025 wpvulnerability-adminms.php:3202 +msgid "Shell Execution" +msgstr "Shell-uitvoering" + +#: wpvulnerability-admin.php:3027 wpvulnerability-admin.php:3475 +#: wpvulnerability-admin.php:3483 wpvulnerability-adminms.php:3204 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Enabled" +msgstr "Ingeschakeld" + +#: wpvulnerability-admin.php:3034 wpvulnerability-adminms.php:3211 +msgid "Audit Logging" +msgstr "Auditregistratie" + +#. translators: %d: number of days +#: wpvulnerability-admin.php:3039 wpvulnerability-adminms.php:3216 +#, php-format +msgid "Enabled (%d days)" +msgstr "Ingeschakeld (%d dagen)" + +#: wpvulnerability-admin.php:3048 wpvulnerability-adminms.php:3225 +msgid "Total Log Entries" +msgstr "Totaal logboekvermeldingen" + +#: wpvulnerability-admin.php:3055 wpvulnerability-adminms.php:3232 +msgid "Last Shell Execution" +msgstr "Laatste shell-uitvoering" + +#. translators: %s: time ago +#: wpvulnerability-admin.php:3061 wpvulnerability-admin.php:3266 +#: wpvulnerability-adminms.php:3238 wpvulnerability-adminms.php:3441 +#, php-format +msgid "%s ago" +msgstr "%s geleden" + +#: wpvulnerability-admin.php:3073 wpvulnerability-adminms.php:3250 +msgid "" +"Configure security settings via wp-config.php constants: " +"WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, " +"WPVULNERABILITY_SHELL_EXEC_WHITELIST." +msgstr "" +"Beveiligingsinstellingen configureren via wp-config.php-constanten: " +"WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, " +"WPVULNERABILITY_SHELL_EXEC_WHITELIST." + +#. translators: %s: URL to security documentation +#: wpvulnerability-admin.php:3079 wpvulnerability-adminms.php:3256 +#, php-format +msgid "" +"See security " +"configuration documentation for details." +msgstr "" +"Zie documentatie over beveiligingsconfiguratie " +"voor details." + +#: wpvulnerability-admin.php:3103 wpvulnerability-adminms.php:3280 +msgid "Memcached" +msgstr "Memcached" + +#: wpvulnerability-admin.php:3131 wpvulnerability-adminms.php:3308 +msgid "Imagick Extension" +msgstr "Imagick-extensie" + +#: wpvulnerability-admin.php:3132 wpvulnerability-adminms.php:3309 +msgid "Redis Extension" +msgstr "Redis-extensie" + +#: wpvulnerability-admin.php:3133 wpvulnerability-adminms.php:3310 +msgid "Memcached Extension" +msgstr "Memcached-extensie" + +#: wpvulnerability-admin.php:3134 wpvulnerability-adminms.php:3311 +msgid "Memcache Extension" +msgstr "Memcache-extensie" + +#: wpvulnerability-admin.php:3135 wpvulnerability-adminms.php:3312 +msgid "SQLite3 Extension" +msgstr "SQLite3-extensie" + +#: wpvulnerability-admin.php:3136 wpvulnerability-adminms.php:3313 +msgid "PDO SQLite" +msgstr "PDO SQLite" + +#: wpvulnerability-admin.php:3137 wpvulnerability-adminms.php:3314 +msgid "Shell Command" +msgstr "Shell-commando" + +#: wpvulnerability-admin.php:3138 wpvulnerability-adminms.php:3315 +msgid "Binary Check" +msgstr "Binaire controle" + +#: wpvulnerability-admin.php:3139 wpvulnerability-adminms.php:3316 +msgid "Not Detected" +msgstr "Niet gedetecteerd" + +#: wpvulnerability-admin.php:3143 wpvulnerability-adminms.php:3320 +msgid "Software Detection Methods" +msgstr "Software-detectiemethoden" + +#: wpvulnerability-admin.php:3144 wpvulnerability-adminms.php:3321 +msgid "" +"Shows which detection method was used for each software component and the " +"reliability score." +msgstr "" +"Toont welke detectiemethode is gebruikt voor elk softwarecomponent en de " +"betrouwbaarheidsscore." + +#: wpvulnerability-admin.php:3149 wpvulnerability-admin.php:3234 +#: wpvulnerability-admin.php:3558 wpvulnerability-adminms.php:3326 +#: wpvulnerability-adminms.php:3411 wpvulnerability-adminms.php:3752 +msgid "Component" +msgstr "Component" + +#: wpvulnerability-admin.php:3150 wpvulnerability-adminms.php:3327 +msgid "Version" +msgstr "Versie" + +#: wpvulnerability-admin.php:3151 wpvulnerability-adminms.php:3328 +msgid "Detection Method" +msgstr "Detectiemethode" + +#: wpvulnerability-admin.php:3152 wpvulnerability-adminms.php:3329 +msgid "Reliability" +msgstr "Betrouwbaarheid" + +#: wpvulnerability-admin.php:3164 wpvulnerability-adminms.php:3341 +msgid "Not detected" +msgstr "Niet gedetecteerd" + +#: wpvulnerability-admin.php:3220 wpvulnerability-adminms.php:3397 +msgid "Shell Execution Audit Logs" +msgstr "Shell-uitvoering auditlogboeken" + +#: wpvulnerability-admin.php:3221 wpvulnerability-adminms.php:3398 +msgid "" +"Complete audit trail of shell command executions for security monitoring." +msgstr "" +"Volledig auditspoor van shell-opdrachtuitvoeringen voor beveiligingsmonitoring." + +#: wpvulnerability-admin.php:3226 wpvulnerability-adminms.php:3403 +msgid "No shell execution logs found." +msgstr "Geen shell-uitvoeringslogboeken gevonden." + +#: wpvulnerability-admin.php:3227 wpvulnerability-adminms.php:3404 +msgid "" +"Logs will appear here when shell commands are executed for software " +"detection." +msgstr "" +"Logboeken verschijnen hier wanneer shell-opdrachten worden uitgevoerd voor software-" +"detectie." + +#: wpvulnerability-admin.php:3233 wpvulnerability-adminms.php:3410 +msgid "Time" +msgstr "Tijd" + +#: wpvulnerability-admin.php:3235 wpvulnerability-adminms.php:3412 +msgid "Command" +msgstr "Opdracht" + +#: wpvulnerability-admin.php:3237 wpvulnerability-adminms.php:3414 +msgid "User" +msgstr "Gebruiker" + +#: wpvulnerability-admin.php:3238 wpvulnerability-adminms.php:3415 +msgid "Output" +msgstr "Uitvoer" + +#. translators: %d: number of logs shown +#: wpvulnerability-admin.php:3302 wpvulnerability-adminms.php:3477 +#, php-format +msgid "Showing the %d most recent log entries." +msgstr "De %d meest recente logboekvermeldingen worden weergegeven." + +#: wpvulnerability-admin.php:3320 wpvulnerability-adminms.php:3565 +msgid "Invalid nonce." +msgstr "Ongeldige nonce." + +#: wpvulnerability-admin.php:3325 wpvulnerability-adminms.php:3570 +msgid "Insufficient permissions." +msgstr "Onvoldoende rechten." + +#: wpvulnerability-admin.php:3331 wpvulnerability-adminms.php:3576 +msgid "No component specified." +msgstr "Geen component opgegeven." + +#: wpvulnerability-admin.php:3366 wpvulnerability-adminms.php:3524 +msgid "Debug Information" +msgstr "Debug-informatie" + +#: wpvulnerability-admin.php:3368 wpvulnerability-adminms.php:3526 +msgid "This tab is only visible when WP_DEBUG is enabled. Use with caution." +msgstr "Dit tabblad is alleen zichtbaar wanneer WP_DEBUG is ingeschakeld. Gebruik met voorzichtigheid." + +#: wpvulnerability-admin.php:3429 wpvulnerability-adminms.php:3623 +msgid "System Information" +msgstr "Systeeminformatie" + +#: wpvulnerability-admin.php:3433 wpvulnerability-adminms.php:3627 +msgid "WordPress Version" +msgstr "WordPress-versie" + +#: wpvulnerability-admin.php:3437 wpvulnerability-adminms.php:3631 +msgid "Multisite" +msgstr "Multisite" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "Yes" +msgstr "Ja" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "No" +msgstr "Nee" + +#: wpvulnerability-admin.php:3441 wpvulnerability-adminms.php:3635 +msgid "Language" +msgstr "Taal" + +#: wpvulnerability-admin.php:3445 wpvulnerability-adminms.php:3639 +msgid "PHP Version" +msgstr "PHP-versie" + +#: wpvulnerability-admin.php:3449 wpvulnerability-adminms.php:3643 +msgid "PHP Extensions" +msgstr "PHP-extensies" + +#: wpvulnerability-admin.php:3460 wpvulnerability-adminms.php:3654 +msgid "PHP Memory Limit" +msgstr "PHP-geheugenlimiet" + +#: wpvulnerability-admin.php:3464 wpvulnerability-adminms.php:3658 +msgid "Database" +msgstr "Database" + +#: wpvulnerability-admin.php:3468 wpvulnerability-adminms.php:3662 +msgid "Web Server" +msgstr "Webserver" + +#: wpvulnerability-admin.php:3472 wpvulnerability-adminms.php:3666 +msgid "WP_DEBUG" +msgstr "WP_DEBUG" + +#: wpvulnerability-admin.php:3480 wpvulnerability-adminms.php:3674 +msgid "WP_DEBUG_LOG" +msgstr "WP_DEBUG_LOG" + +#: wpvulnerability-admin.php:3490 wpvulnerability-adminms.php:3684 +msgid "Path:" +msgstr "Pad:" + +#. translators: %s: file size +#: wpvulnerability-admin.php:3499 wpvulnerability-adminms.php:3698 +#, php-format +msgid "Size: %s" +msgstr "Grootte: %s" + +#: wpvulnerability-admin.php:3510 wpvulnerability-adminms.php:3704 +msgid "View Log File" +msgstr "Logboekbestand bekijken" + +#: wpvulnerability-admin.php:3516 wpvulnerability-adminms.php:3710 +msgid "Log file is not web-accessible (outside wp-content)" +msgstr "Logboekbestand is niet toegankelijk via het web (buiten wp-content)" + +#: wpvulnerability-admin.php:3522 wpvulnerability-adminms.php:3716 +msgid "Log file does not exist yet" +msgstr "Logboekbestand bestaat nog niet" + +#: wpvulnerability-admin.php:3530 wpvulnerability-adminms.php:3724 +msgid "Plugin Version" +msgstr "Plugin-versie" + +#: wpvulnerability-admin.php:3554 wpvulnerability-adminms.php:3748 +msgid "Component Detection" +msgstr "Componentdetectie" + +#: wpvulnerability-admin.php:3560 wpvulnerability-adminms.php:3754 +msgid "Version Detected" +msgstr "Versie gedetecteerd" + +#: wpvulnerability-admin.php:3561 wpvulnerability-adminms.php:3755 +msgid "Analyzed" +msgstr "Geanalyseerd" + +#: wpvulnerability-admin.php:3562 wpvulnerability-adminms.php:3756 +msgid "Cache Status" +msgstr "Cache-status" + +#: wpvulnerability-admin.php:3622 wpvulnerability-adminms.php:3816 +msgid "Configuration Summary" +msgstr "Configuratieoverzicht" + +#: wpvulnerability-admin.php:3626 wpvulnerability-adminms.php:3820 +msgid "Cache Duration" +msgstr "Cache-duur" + +#: wpvulnerability-admin.php:3636 wpvulnerability-adminms.php:3830 +msgid "Log Retention" +msgstr "Logboekbewaring" + +#: wpvulnerability-admin.php:3646 wpvulnerability-adminms.php:3840 +msgid "Components Analyzed" +msgstr "Geanalyseerde componenten" + +#: wpvulnerability-admin.php:3661 wpvulnerability-adminms.php:3855 +msgid "Notification Email" +msgstr "Meldings-e-mail" + +#: wpvulnerability-admin.php:3682 wpvulnerability-adminms.php:3876 +msgid "Slack Webhook" +msgstr "Slack-webhook" + +#: wpvulnerability-admin.php:3692 wpvulnerability-admin.php:3712 +#: wpvulnerability-admin.php:3732 wpvulnerability-admin.php:3752 +#: wpvulnerability-adminms.php:3886 wpvulnerability-adminms.php:3906 +#: wpvulnerability-adminms.php:3926 wpvulnerability-adminms.php:3946 +msgid "Configured & Enabled" +msgstr "Geconfigureerd & ingeschakeld" + +#: wpvulnerability-admin.php:3694 wpvulnerability-admin.php:3714 +#: wpvulnerability-admin.php:3734 wpvulnerability-admin.php:3754 +#: wpvulnerability-adminms.php:3888 wpvulnerability-adminms.php:3908 +#: wpvulnerability-adminms.php:3928 wpvulnerability-adminms.php:3948 +msgid "Configured (Disabled)" +msgstr "Geconfigureerd (uitgeschakeld)" + +#: wpvulnerability-admin.php:3696 wpvulnerability-admin.php:3716 +#: wpvulnerability-admin.php:3736 wpvulnerability-admin.php:3756 +#: wpvulnerability-adminms.php:3890 wpvulnerability-adminms.php:3910 +#: wpvulnerability-adminms.php:3930 wpvulnerability-adminms.php:3950 +msgid "Not configured" +msgstr "Niet geconfigureerd" + +#: wpvulnerability-admin.php:3703 wpvulnerability-adminms.php:3897 +msgid "Teams Webhook" +msgstr "Teams-webhook" + +#: wpvulnerability-admin.php:3723 wpvulnerability-adminms.php:3917 +msgid "Discord Webhook" +msgstr "Discord-webhook" + +#: wpvulnerability-admin.php:3743 wpvulnerability-adminms.php:3937 +msgid "Telegram Bot" +msgstr "Telegram-bot" + +#: wpvulnerability-admin.php:3788 wpvulnerability-adminms.php:3982 +msgid "Cron Status" +msgstr "Cron-status" + +#: wpvulnerability-admin.php:3792 wpvulnerability-adminms.php:3986 +msgid "Update Database" +msgstr "Database bijwerken" + +#. translators: %s: date and time +#: wpvulnerability-admin.php:3797 wpvulnerability-admin.php:3810 +#: wpvulnerability-adminms.php:3991 wpvulnerability-adminms.php:4004 +#, php-format +msgid "Next run: %s" +msgstr "Volgende uitvoering: %s" + +#: wpvulnerability-admin.php:3800 wpvulnerability-admin.php:3813 +#: wpvulnerability-adminms.php:3994 wpvulnerability-adminms.php:4007 +msgid "Not scheduled" +msgstr "Niet gepland" + +#: wpvulnerability-admin.php:3805 wpvulnerability-adminms.php:3999 +msgid "Send Notification" +msgstr "Melding verzenden" + +#: wpvulnerability-admin.php:3826 wpvulnerability-adminms.php:4020 +msgid "Run Update Now" +msgstr "Update nu uitvoeren" + +#: wpvulnerability-admin.php:3834 wpvulnerability-adminms.php:4028 +msgid "Run Notification Now" +msgstr "Melding nu verzenden" + +#: wpvulnerability-admin.php:3840 wpvulnerability-adminms.php:4034 +msgid "You do not have permission to run these actions." +msgstr "U heeft geen toestemming om deze acties uit te voeren." + +#: wpvulnerability-admin.php:3859 wpvulnerability-adminms.php:4053 +msgid "API Testing" +msgstr "API-testen" + +#: wpvulnerability-admin.php:3862 wpvulnerability-adminms.php:4056 +msgid "" +"Test API connectivity for each component. Click a button to send a test " +"request." +msgstr "" +"API-verbinding testen voor elk component. Klik op een knop om een testverzoek " +"te sturen." + +#. translators: %s: component name +#: wpvulnerability-admin.php:3869 wpvulnerability-adminms.php:4063 +#, php-format +msgid "Test %s" +msgstr "%s testen" + +#: wpvulnerability-admin.php:3884 wpvulnerability-adminms.php:4078 +msgid "Testing..." +msgstr "Testen..." + +#: wpvulnerability-admin.php:3900 wpvulnerability-adminms.php:4094 +msgid "HTTP Code:" +msgstr "HTTP-code:" + +#: wpvulnerability-admin.php:3901 wpvulnerability-adminms.php:4095 +msgid "Response Time:" +msgstr "Responstijd:" + +#: wpvulnerability-admin.php:3903 wpvulnerability-adminms.php:4097 +msgid "Response Preview" +msgstr "Responsvoorbeeld" + +#: wpvulnerability-admin.php:3910 wpvulnerability-admin.php:3914 +#: wpvulnerability-adminms.php:4104 wpvulnerability-adminms.php:4108 +msgid "Test" +msgstr "Test" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "Error:" +msgstr "Fout:" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "AJAX request failed." +msgstr "AJAX-verzoek mislukt." + +#: wpvulnerability-admin.php:3922 wpvulnerability-adminms.php:4116 +msgid "You do not have permission to test API connectivity." +msgstr "U heeft geen toestemming om de API-verbinding te testen." + +#: wpvulnerability-admin.php:3943 wpvulnerability-adminms.php:4137 +msgid "Database Options Viewer" +msgstr "Database-optiesviewer" + +#: wpvulnerability-admin.php:3944 wpvulnerability-adminms.php:4138 +msgid "View the raw data stored in WordPress options." +msgstr "De ruwe gegevens bekijken die zijn opgeslagen in WordPress-opties." + +#: wpvulnerability-admin.php:3950 wpvulnerability-adminms.php:4144 +msgid "Select an option..." +msgstr "Selecteer een optie..." + +#: wpvulnerability-admin.php:3969 wpvulnerability-adminms.php:4163 +msgid "Option not found or empty." +msgstr "Optie niet gevonden of leeg." + +#: wpvulnerability-admin.php:3987 wpvulnerability-adminms.php:4182 +msgid "Quick Actions" +msgstr "Snelle acties" + +#: wpvulnerability-admin.php:3988 wpvulnerability-adminms.php:4183 +msgid "Perform debugging actions. Use with caution." +msgstr "Debug-acties uitvoeren. Gebruik met voorzichtigheid." + +#: wpvulnerability-admin.php:3992 wpvulnerability-adminms.php:4187 +msgid "Are you sure you want to clear all caches?" +msgstr "Weet u zeker dat u alle caches wilt wissen?" + +#: wpvulnerability-admin.php:3996 wpvulnerability-adminms.php:4191 +msgid "Clear All Caches" +msgstr "Alle caches wissen" + +#: wpvulnerability-admin.php:4000 wpvulnerability-adminms.php:4195 +msgid "Are you sure you want to reset signatures?" +msgstr "Weet u zeker dat u de handtekeningen wilt resetten?" + +#: wpvulnerability-admin.php:4004 wpvulnerability-adminms.php:4199 +msgid "Reset Signatures" +msgstr "Handtekeningen resetten" + +#: wpvulnerability-admin.php:4012 wpvulnerability-adminms.php:4207 +msgid "Export Debug Info" +msgstr "Debug-informatie exporteren" + +#: wpvulnerability-admin.php:4018 wpvulnerability-adminms.php:4213 +msgid "You do not have permission to perform these actions." +msgstr "U heeft geen toestemming om deze acties uit te voeren." + +#: wpvulnerability-adminms.php:101 wpvulnerability-adminms.php:199 +msgid "Settings saved." +msgstr "Instellingen opgeslagen." + +#: wpvulnerability-adminms.php:277 +msgid "WPVulnerability cron events have been repaired across the network." +msgstr "WPVulnerability-cron-gebeurtenissen zijn netwerk-breed gerepareerd." + +#: wpvulnerability-adminms.php:3512 +msgid "You do not have permission to access this page." +msgstr "U heeft geen toestemming om deze pagina te openen." + +#. translators: 1: core version +#: wpvulnerability-core.php:33 +#, php-format +msgid "" +"WordPress %1$s has a known vulnerability that may be affecting your " +"installed version." +msgstr "" +"WordPress %1$s heeft een bekende kwetsbaarheid die mogelijk uw " +"geïnstalleerde versie beïnvloedt." + +#: wpvulnerability-core.php:115 wpvulnerability-plugins.php:207 +#: wpvulnerability-process.php:335 wpvulnerability-process.php:443 +#: wpvulnerability-process.php:529 wpvulnerability-themes.php:173 +#: wpvulnerability-themes.php:469 +msgid "Actively exploited" +msgstr "Actief misbruikt" + +#: wpvulnerability-core.php:122 wpvulnerability-plugins.php:214 +#: wpvulnerability-process.php:342 wpvulnerability-process.php:450 +#: wpvulnerability-themes.php:180 wpvulnerability-themes.php:476 +msgid "Public exploit" +msgstr "Publiek exploit" + +#: wpvulnerability-core.php:125 wpvulnerability-plugins.php:217 +#: wpvulnerability-process.php:345 wpvulnerability-process.php:453 +#: wpvulnerability-themes.php:183 wpvulnerability-themes.php:479 +msgid "Automatable" +msgstr "Automatiseerbaar" + +#: wpvulnerability-core.php:139 wpvulnerability-plugins.php:245 +#: wpvulnerability-process.php:371 wpvulnerability-process.php:469 +#: wpvulnerability-process.php:544 wpvulnerability-themes.php:211 +#: wpvulnerability-themes.php:503 +msgid "References:" +msgstr "Referenties:" + +#: wpvulnerability-debug.php:399 +msgid "Invalid component specified." +msgstr "Ongeldig component opgegeven." + +#: wpvulnerability-debug.php:423 +msgid "Version not detected for this component." +msgstr "Versie niet gedetecteerd voor dit component." + +#: wpvulnerability-debug.php:453 +msgid "API request successful." +msgstr "API-verzoek geslaagd." + +#. translators: %d: HTTP status code +#: wpvulnerability-debug.php:469 +#, php-format +msgid "API returned HTTP code %d." +msgstr "API heeft HTTP-code %d geretourneerd." + +#: wpvulnerability-general.php:355 +msgid "WPVulnerability Logs" +msgstr "WPVulnerability-logboeken" + +#: wpvulnerability-general.php:356 +msgid "WPVulnerability Log" +msgstr "WPVulnerability-logboek" + +#: wpvulnerability-general.php:1873 wpvulnerability-general.php:1874 +msgid "Low" +msgstr "Laag" + +#: wpvulnerability-general.php:1875 wpvulnerability-general.php:1876 +msgid "Medium" +msgstr "Gemiddeld" + +#: wpvulnerability-general.php:1877 wpvulnerability-general.php:1878 +msgid "High" +msgstr "Hoog" + +#: wpvulnerability-general.php:1879 wpvulnerability-general.php:1880 +msgid "Critical" +msgstr "Kritiek" + +#: wpvulnerability-general.php:2684 +msgid "WPVulnerability Shell Logs" +msgstr "WPVulnerability shell-logboeken" + +#: wpvulnerability-general.php:2685 +msgid "WPVulnerability Shell Log" +msgstr "WPVulnerability shell-logboek" + +#: wpvulnerability-notifications.php:30 +msgid "Every week" +msgstr "Elke week" + +#: wpvulnerability-notifications.php:57 +msgid "Every day" +msgstr "Elke dag" + +#: wpvulnerability-notifications.php:84 +msgid "Invalid request." +msgstr "Ongeldig verzoek." + +#: wpvulnerability-notifications.php:104 +msgid "You have unsubscribed from WPVulnerability notifications." +msgstr "U heeft zich afgemeld voor WPVulnerability-meldingen." + +#. translators: %1$s the website of Database, %2$s database site name. +#: wpvulnerability-notifications.php:289 +#, php-format +msgid "" +"Learn more about the WordPress Vulnerability Database API at %2$s" +msgstr "" +"Leer meer over de WordPress Vulnerability Database API op %2$s" + +#. translators: %1$s unsubscribe URL. +#: wpvulnerability-notifications.php:300 +#, php-format +msgid "" +"Want to stop receiving these alerts? Unsubscribe or " +"change the email frequency to Never in the WPVulnerability " +"settings." +msgstr "" +"Wilt u deze meldingen niet meer ontvangen? Afmelden of " +"de e-mailfrequentie wijzigen naar Nooit in de WPVulnerability-" +"instellingen." + +#: wpvulnerability-notifications.php:595 +msgid "No vulnerabilities found" +msgstr "Geen kwetsbaarheden gevonden" + +#: wpvulnerability-notifications.php:596 +msgid "This is likely a test. The site does not have vulnerabilities." +msgstr "Dit is waarschijnlijk een test. De site heeft geen kwetsbaarheden." + +#: wpvulnerability-notifications.php:601 +msgid "Core vulnerabilities" +msgstr "Core kwetsbaarheden" + +#: wpvulnerability-notifications.php:607 +msgid "Plugins vulnerabilities" +msgstr "Plugins kwetsbaarheden" + +#: wpvulnerability-notifications.php:613 +msgid "Themes vulnerabilities" +msgstr "Thema's kwetsbaarheden" + +#: wpvulnerability-notifications.php:619 +msgid "PHP vulnerabilities" +msgstr "PHP-kwetsbaarheden" + +#: wpvulnerability-notifications.php:625 +msgid "Apache HTTPD vulnerabilities" +msgstr "Apache HTTPD-kwetsbaarheden" + +#: wpvulnerability-notifications.php:631 +msgid "Nginx vulnerabilities" +msgstr "Nginx-kwetsbaarheden" + +#: wpvulnerability-notifications.php:637 +msgid "MariaDB vulnerabilities" +msgstr "MariaDB-kwetsbaarheden" + +#: wpvulnerability-notifications.php:643 +msgid "MySQL vulnerabilities" +msgstr "MySQL-kwetsbaarheden" + +#: wpvulnerability-notifications.php:649 +msgid "ImageMagick vulnerabilities" +msgstr "ImageMagick-kwetsbaarheden" + +#: wpvulnerability-notifications.php:655 +msgid "curl vulnerabilities" +msgstr "curl-kwetsbaarheden" + +#: wpvulnerability-notifications.php:661 +msgid "memcached vulnerabilities" +msgstr "memcached-kwetsbaarheden" + +#: wpvulnerability-notifications.php:667 +msgid "Redis vulnerabilities" +msgstr "Redis-kwetsbaarheden" + +#: wpvulnerability-notifications.php:673 +msgid "SQLite vulnerabilities" +msgstr "SQLite-kwetsbaarheden" + +#. translators: Site name. +#: wpvulnerability-notifications.php:696 +#, php-format +msgid "Vulnerability found: %s" +msgstr "Kwetsbaarheid gevonden: %s" + +#: wpvulnerability-notifications.php:700 +msgid "Vulnerability found" +msgstr "Kwetsbaarheid gevonden" + +#. translators: 1: Plugin name +#. translators: 1: theme name +#: wpvulnerability-plugins.php:116 wpvulnerability-themes.php:82 +#, php-format +msgid "" +"%1$s has a known vulnerability that may be affecting your installed version." +msgstr "" +"%1$s heeft een bekende kwetsbaarheid die mogelijk uw geïnstalleerde versie beïnvloedt." + +#: wpvulnerability-plugins.php:230 wpvulnerability-process.php:358 +msgid "This plugin is closed. Please replace it with another." +msgstr "Dit plugin is gesloten. Gelieve het te vervangen door een ander." + +#: wpvulnerability-plugins.php:233 wpvulnerability-process.php:361 +msgid "" +"This vulnerability appears to be unpatched. Stay tuned for upcoming plugin " +"updates." +msgstr "" +"Deze kwetsbaarheid lijkt niet gepatcht te zijn. Blijf op de hoogte voor " +"toekomstige plugin updates." + +#: wpvulnerability-plugins.php:570 +msgid "It hasn't been updated in over a year." +msgstr "Het is meer dan een jaar niet bijgewerkt." + +#: wpvulnerability-plugins.php:576 +msgid "It may no longer be available (closed?)." +msgstr "Het is mogelijk niet meer beschikbaar (gesloten?)." + +#: wpvulnerability-plugins.php:614 wpvulnerability-plugins.php:621 +msgid "Last updated on" +msgstr "Laatste update op" + +#. translators: the number of vulnerabilities. +#: wpvulnerability-plugins.php:764 wpvulnerability-themes.php:704 +#, php-format +msgid "Vulnerabilities (%d)" +msgstr "Kwetsbaarheden (%d)" + +#. translators: %s: software name. +#: wpvulnerability-process.php:601 +#, php-format +msgid "%s running" +msgstr "%s actief" + +#: wpvulnerability-process.php:611 wpvulnerability-process.php:792 +msgid "End of Life" +msgstr "End of Life" + +#: wpvulnerability-process.php:613 wpvulnerability-process.php:618 +msgid "End of life:" +msgstr "End of life:" + +#: wpvulnerability-process.php:616 +msgid "Supported" +msgstr "Ondersteund" + +#: wpvulnerability-process.php:652 +msgid "Plugin" +msgstr "Plugin" + +#: wpvulnerability-process.php:721 +msgid "Theme" +msgstr "Thema" + +#. translators: %s: end-of-life date +#: wpvulnerability-process.php:790 +#, php-format +msgid "End of life: %s" +msgstr "End of life: %s" + +#: wpvulnerability-process.php:795 +msgid "EOL" +msgstr "EOL" + +#: wpvulnerability-run.php:30 +msgid "Network Settings" +msgstr "Netwerkinstellingen" + +#: wpvulnerability-run.php:731 wpvulnerability-run.php:781 +#: wpvulnerability-run.php:791 wpvulnerability-run.php:836 +msgid "Vulnerabilities" +msgstr "Kwetsbaarheden" + +#: wpvulnerability-schedule.php:30 +msgid "Every 6 hours" +msgstr "Elke 6 uur" + +#: wpvulnerability-schedule.php:303 +msgid "Database updates" +msgstr "Database-updates" + +#: wpvulnerability-schedule.php:309 +msgid "Log cleanup" +msgstr "Logboekopruiming" + +#: wpvulnerability-schedule.php:439 +msgid "" +"Notifications are scheduled, but settings currently disable them. Please " +"review the notifications tab." +msgstr "" +"Meldingen zijn gepland, maar instellingen schakelen ze momenteel uit. Controleer " +"het tabblad Meldingen." + +#: wpvulnerability-schedule.php:442 +msgid "This event should not be scheduled for this site." +msgstr "Dit evenement mag niet worden gepland voor deze site." + +#: wpvulnerability-schedule.php:446 +msgid "Not expected for this site." +msgstr "Niet verwacht voor deze site." + +#: wpvulnerability-schedule.php:450 +msgid "No instances found." +msgstr "Geen instanties gevonden." + +#: wpvulnerability-schedule.php:456 +msgid "Scheduled with an unexpected interval." +msgstr "Gepland met een onverwacht interval." + +#: wpvulnerability-schedule.php:460 +msgid "Multiple instances detected." +msgstr "Meerdere instanties gedetecteerd." + +#: wpvulnerability-schedule.php:465 +msgid "Scheduled as expected." +msgstr "Gepland zoals verwacht." + +#: wpvulnerability-sitehealth.php:22 +msgid "There aren't plugins vulnerabilities" +msgstr "Er zijn geen kwetsbaarheden in plugins" + +#: wpvulnerability-sitehealth.php:30 +msgid "Shows possible vulnerabilities that exist in installed plugins." +msgstr "Toont mogelijke kwetsbaarheden die bestaan in geïnstalleerde plugins." + +#. translators: Number of plugins vulnerabilities. +#: wpvulnerability-sitehealth.php:43 +#, php-format +msgid "There is %d plugin with vulnerabilities" +msgid_plural "There are %d plugins with vulnerabilities" +msgstr[0] "Er is %d plugin met kwetsbaarheden" +msgstr[1] "Er zijn %d plugins met kwetsbaarheden" + +#: wpvulnerability-sitehealth.php:49 +msgid "" +"We've detected potential vulnerabilities in installed plugins. Please check " +"them and keep them updated." +msgstr "" +"We hebben mogelijke kwetsbaarheden gedetecteerd in geïnstalleerde plugins. " +"Controleer ze en houd ze bijgewerkt." + +#: wpvulnerability-sitehealth.php:57 +msgid "Update plugins" +msgstr "Plugins bijwerken" + +#: wpvulnerability-sitehealth.php:74 +msgid "There aren't themes vulnerabilities" +msgstr "Er zijn geen thema's kwetsbaarheden" + +#: wpvulnerability-sitehealth.php:82 +msgid "Shows possible vulnerabilities that exist in installed themes." +msgstr "Toont mogelijke kwetsbaarheden die bestaan in geïnstalleerde thema's." + +#. translators: Number of themes vulnerabilities. +#: wpvulnerability-sitehealth.php:95 +#, php-format +msgid "There is %d theme with vulnerabilities" +msgid_plural "There are %d themes with vulnerabilities" +msgstr[0] "Er is %d thema met kwetsbaarheden" +msgstr[1] "Er zijn %d thema's met kwetsbaarheden" + +#: wpvulnerability-sitehealth.php:101 +msgid "" +"We've detected potential vulnerabilities in installed themes. Please check " +"them and keep them updated." +msgstr "" +"We hebben mogelijke kwetsbaarheden gedetecteerd in geïnstalleerde thema's. " +"Controleer ze en houd ze bijgewerkt." + +#: wpvulnerability-sitehealth.php:109 +msgid "Update themes" +msgstr "Thema's bijwerken" + +#: wpvulnerability-sitehealth.php:126 +msgid "There aren't WordPress vulnerabilities" +msgstr "Er zijn geen kwetsbaarheden in WordPress" + +#: wpvulnerability-sitehealth.php:134 +msgid "Shows possible vulnerabilities existing in the WordPress core." +msgstr "Toont mogelijke kwetsbaarheden die bestaan in de WordPress core." + +#. translators: Number of core vulnerabilities. +#: wpvulnerability-sitehealth.php:147 +#, php-format +msgid "There is %d core vulnerability" +msgid_plural "There are %d core vulnerabilities" +msgstr[0] "Er is %d core kwetsbaarheid" +msgstr[1] "Er zijn %d core kwetsbaarheden" + +#: wpvulnerability-sitehealth.php:153 +msgid "" +"We've detected potential vulnerabilities in this WordPress installation. " +"Please check them and keep your installation updated." +msgstr "" +"We hebben mogelijke kwetsbaarheden ontdekt in deze WordPress installatie. " +"Controleer deze en houd je installatie up-to-date." + +#: wpvulnerability-sitehealth.php:161 +msgid "Update WordPress" +msgstr "WordPress bijwerken" + +#: wpvulnerability-sitehealth.php:180 +msgid "Nginx" +msgstr "Nginx" + +#: wpvulnerability-sitehealth.php:189 +msgid "Invalid software type" +msgstr "Ongeldig softwaretype" + +#: wpvulnerability-sitehealth.php:192 +msgid "Error" +msgstr "Fout" + +#: wpvulnerability-sitehealth.php:197 +msgid "The specified software type is not valid." +msgstr "Het opgegeven softwaretype is niet geldig." + +#. translators: name of the software. +#: wpvulnerability-sitehealth.php:207 +#, php-format +msgid "There aren't %s vulnerabilities" +msgstr "Er zijn geen %s kwetsbaarheden" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:216 +#, php-format +msgid "Shows possible vulnerabilities existing in %s." +msgstr "Toont mogelijke kwetsbaarheden die bestaan in %s." + +#. translators: Software and number of vulnerabilities. +#: wpvulnerability-sitehealth.php:229 +#, php-format +msgid "There is %1$d %2$s vulnerability" +msgid_plural "There are %1$d %2$s vulnerabilities" +msgstr[0] "Er is %1$d %2$s kwetsbaarheid" +msgstr[1] "Er zijn %1$d %2$s kwetsbaarheden" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:237 +#, php-format +msgid "" +"We've detected potential vulnerabilities in %s. Please check them and keep " +"your installation updated." +msgstr "" +"We hebben mogelijke kwetsbaarheden in %s gedetecteerd. Controleer ze en houd " +"je installatie up-to-date." + +#: wpvulnerability-sitehealth.php:246 +msgid "How to update PHP" +msgstr "Hoe PHP bij te werken" + +#: wpvulnerability-sitehealth.php:386 +msgid "WPVulnerability Core" +msgstr "WPVulnerability core" + +#: wpvulnerability-sitehealth.php:394 +msgid "WPVulnerability Themes" +msgstr "WPVulnerability thema's" + +#: wpvulnerability-sitehealth.php:402 +msgid "WPVulnerability Plugins" +msgstr "WPVulnerability plugins" + +#: wpvulnerability-sitehealth.php:410 +msgid "WPVulnerability PHP" +msgstr "WPVulnerability PHP" + +#: wpvulnerability-sitehealth.php:418 +msgid "WPVulnerability Apache HTTPD" +msgstr "WPVulnerability Apache HTTPD" + +#: wpvulnerability-sitehealth.php:426 +msgid "WPVulnerability Nginx" +msgstr "WPVulnerability Nginx" + +#: wpvulnerability-sitehealth.php:434 +msgid "WPVulnerability MariaDB" +msgstr "WPVulnerability MariaDB" + +#: wpvulnerability-sitehealth.php:442 +msgid "WPVulnerability MySQL" +msgstr "WPVulnerability MySQL" + +#: wpvulnerability-sitehealth.php:450 +msgid "WPVulnerability ImageMagick" +msgstr "WPVulnerability ImageMagick" + +#: wpvulnerability-sitehealth.php:458 +msgid "WPVulnerability curl" +msgstr "WPVulnerability curl" + +#: wpvulnerability-sitehealth.php:466 +msgid "WPVulnerability memcached" +msgstr "WPVulnerability memcached" + +#: wpvulnerability-sitehealth.php:474 +msgid "WPVulnerability redis" +msgstr "WPVulnerability redis" + +#: wpvulnerability-sitehealth.php:482 +msgid "WPVulnerability sqlite" +msgstr "WPVulnerability sqlite" + +#: wpvulnerability-themes.php:196 wpvulnerability-themes.php:492 +msgid "This theme is closed. Please replace it with another." +msgstr "Dit thema is gesloten. Gelieve het te vervangen door een ander." + +#: wpvulnerability-themes.php:199 wpvulnerability-themes.php:495 +msgid "" +"This vulnerability appears to be unpatched. Stay tuned for upcoming theme " +"updates." +msgstr "" +"Deze kwetsbaarheid lijkt niet gepatcht te zijn. Blijf op de hoogte voor " +"toekomstige thema updates." + +#: wpvulnerability-themes.php:391 +msgid "" +"This theme has known vulnerabilities that may be affecting your installed " +"version." +msgstr "" +"Dit thema heeft bekende kwetsbaarheden die mogelijk uw geïnstalleerde " +"versie beïnvloeden." + +#~ msgid "%1$s has a known vulnerability that may be affecting this version." +#~ msgstr "" +#~ "%1$s heeft een bekende kwetsbaarheid die mogelijk van invloed is op deze " +#~ "versie." + +#~ msgid "Global score: " +#~ msgstr "Globale score: " + +#~ msgid "Severity: " +#~ msgstr "Ernst: " + +#~ msgid "" +#~ "WordPress %1$s has a known vulnerability that may be affecting this " +#~ "version." +#~ msgstr "" +#~ "WordPress %1$s heeft een bekende kwetsbaarheid die mogelijk van invloed " +#~ "is op deze versie." diff --git a/languages/wpvulnerability-nl.l10n.php b/languages/wpvulnerability-nl.l10n.php new file mode 100644 index 0000000..04e3833 --- /dev/null +++ b/languages/wpvulnerability-nl.l10n.php @@ -0,0 +1,2 @@ +NULL,'plural-forms'=>'nplurals=2; plural=n != 1;','language'=>'nl','project-id-version'=>'Plugins - WPVulnerability - Development (trunk)','pot-creation-date'=>'2026-05-27T16:32:22+00:00','po-revision-date'=>'2025-09-17 08:21:00+0000','x-generator'=>'GlotPress/4.0.3','messages'=>['WPVulnerability'=>'WPVulnerability','https://www.wpvulnerability.com/plugin/'=>'https://www.wpvulnerability.com/plugin/','Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API.'=>'Ontvang informatie over mogelijke kwetsbaarheden in uw WordPress via de WordPress Vulnerability Database API.','ROBOTSTXT'=>'ROBOTSTXT','https://www.robotstxt.es/'=>'https://www.robotstxt.es/','This command requires a WordPress administrator. Run with --user=.'=>'Dit commando vereist een WordPress-beheerder. Uitvoeren met --user=.','No core vulnerabilities found.'=>'Geen core-kwetsbaarheden gevonden.','No plugin vulnerabilities found.'=>'Geen plugin-kwetsbaarheden gevonden.','No theme vulnerabilities found.'=>'Geen thema-kwetsbaarheden gevonden.','No %s vulnerabilities found.'=>'Geen %s-kwetsbaarheden gevonden.','Data from source has been reloaded.'=>'Gegevens uit de bron zijn opnieuw geladen.','You do not have permission to reload data.'=>'U heeft geen toestemming om gegevens opnieuw te laden.','Test email has been sent.'=>'Test-e-mail is verzonden.','Test email has failed. Please, check your email settings.'=>'De test e-mail is mislukt. Controleer je e-mailinstellingen.','You do not have permission to send test emails.'=>'U heeft geen toestemming om test-e-mails te verzenden.','WPVulnerability cron events have been repaired.'=>'WPVulnerability-cron-gebeurtenissen zijn gerepareerd.','You do not have permission to repair cron events.'=>'U heeft geen toestemming om cron-gebeurtenissen te repareren.','All logs have been deleted.'=>'Alle logboeken zijn verwijderd.','You do not have permission to delete logs.'=>'U heeft geen toestemming om logboeken te verwijderen.','Uninstall preference saved.'=>'Verwijderingsvoorkeur opgeslagen.','WPVulnerability has been reset to defaults and reloaded.'=>'WPVulnerability is teruggezet naar standaardwaarden en opnieuw geladen.','You do not have permission to reset WPVulnerability.'=>'U heeft geen toestemming om WPVulnerability te resetten.','All caches have been cleared.'=>'Alle caches zijn gewist.','You do not have permission to clear caches.'=>'U heeft geen toestemming om caches te wissen.','Plugin and theme signatures have been reset.'=>'Plugin- en thema-handtekeningen zijn teruggezet.','You do not have permission to reset signatures.'=>'U heeft geen toestemming om handtekeningen te resetten.','You do not have permission to export debug information.'=>'U heeft geen toestemming om debug-informatie te exporteren.','Database update has been executed.'=>'Database-update is uitgevoerd.','You do not have permission to run database updates.'=>'U heeft geen toestemming om database-updates uit te voeren.','Notification has been sent.'=>'Melding is verzonden.','Notification sending failed.'=>'Verzenden van melding mislukt.','You do not have permission to send notifications.'=>'U heeft geen toestemming om meldingen te verzenden.','Notifications'=>'Meldingen','Analysis'=>'Analyse','Logs'=>'Logboeken','Security'=>'Beveiliging','Tools'=>'Hulpmiddelen','Debug'=>'Debug','About'=>'Over','Notification Settings'=>'Meldingsinstellingen','Configure how and when you want to receive vulnerability notifications.'=>'Configureer hoe en wanneer u kwetsbaarheidsmeldingen wilt ontvangen.','Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software.'=>'Blijf op de hoogte van beveiligingskwetsbaarheden in uw WordPress-installatie, plugins, thema\'s en serversoftware.','Cache Expiration Time'=>'Cache-vervaltijd','FORCED'=>'GEFORCEERD','How long to cache vulnerability data before refreshing from the API.'=>'Hoe lang kwetsbaarheidsgegevens worden gecached voordat ze worden vernieuwd vanuit de API.','%d hour'=>'%d uur' . "\0" . '%d uur','You can force the cache time via wp-config.php constant. Learn more →'=>'U kunt de cachetijd forceren via een wp-config.php-constante. Meer informatie →','Notification Frequency'=>'Meldingsfrequentie','Choose how often you want to receive vulnerability notifications.'=>'Kies hoe vaak u kwetsbaarheidsmeldingen wilt ontvangen.','Never - Disable automatic notifications'=>'Nooit – Automatische meldingen uitschakelen','Daily - Receive notifications every day'=>'Dagelijks – Elke dag meldingen ontvangen','Weekly - Receive notifications once a week'=>'Wekelijks – Eenmaal per week meldingen ontvangen','Day:'=>'Dag:','Monday'=>'Maandag','Tuesday'=>'Dinsdag','Wednesday'=>'Woensdag','Thursday'=>'Donderdag','Friday'=>'Vrijdag','Saturday'=>'Zaterdag','Sunday'=>'Zondag','Time:'=>'Tijd:','(24-hour format, server timezone)'=>'(24-uurs formaat, server-tijdzone)','Notification Channels'=>'Meldingskanalen','Select where you want to receive notifications.'=>'Selecteer waar u meldingen wilt ontvangen.','Email'=>'E-mail','Email Addresses (separated by commas):'=>'E-mailadressen (gescheiden door komma\'s):','Default:'=>'Standaard:','Slack'=>'Slack','Slack Webhook URL:'=>'Slack webhook-URL:','Learn how to create a Slack incoming webhook →'=>'Leer hoe u een inkomende Slack-webhook maakt →','Microsoft Teams'=>'Microsoft Teams','Teams Webhook URL:'=>'Teams webhook-URL:','Learn how to create a Teams incoming webhook →'=>'Leer hoe u een inkomende Teams-webhook maakt →','Discord'=>'Discord','Discord Webhook URL:'=>'Discord webhook-URL:','Learn how to create a Discord webhook →'=>'Leer hoe u een Discord-webhook maakt →','Telegram'=>'Telegram','Telegram Bot Token:'=>'Telegram-bot-token:','Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Formaat: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','Telegram Chat ID:'=>'Telegram chat-ID:','Learn how to create a Telegram bot and get Chat ID →'=>'Leer hoe u een Telegram-bot maakt en de chat-ID ophaalt →','Save Notification Settings'=>'Meldingsinstellingen opslaan','WordPress Components'=>'WordPress-componenten','WordPress Core'=>'WordPress Core','Plugins'=>'Plugins','Themes'=>'Thema\'s','Software & Languages'=>'Software & Talen','PHP'=>'PHP','Web Servers'=>'Webservers','Apache HTTPD'=>'Apache HTTPD','nginx'=>'nginx','Databases'=>'Databases','MariaDB'=>'MariaDB','MySQL'=>'MySQL','SQLite'=>'SQLite','Additional Tools'=>'Aanvullende hulpmiddelen','ImageMagick'=>'ImageMagick','curl'=>'curl','memcached'=>'memcached','Redis'=>'Redis','Component Analysis Settings'=>'Instellingen componentenanalyse','Enable or disable vulnerability analysis for specific components.'=>'Kwetsbaarheidsanalyse in- of uitschakelen voor specifieke componenten.','Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red.'=>'Selecteer de componenten die u wilt VERBERGEN voor kwetsbaarheidsscans en rapporten. Niet-geselecteerde componenten worden actief geanalyseerd. Componenten met actieve analyse worden groen weergegeven, verborgen componenten rood.','Hidden (forced by constant)'=>'Verborgen (geforceerd door constante)','🔴 Analysis disabled'=>'🔴 Analyse uitgeschakeld','🟢 Analysis active'=>'🟢 Analyse actief','Tip:'=>'Tip:','You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →'=>'U kunt componenten geforceerd uitschakelen via wp-config.php-constanten. Meer informatie over het geforceerd verbergen van controles →','Save Analysis Settings'=>'Analyse-instellingen opslaan','« Previous'=>'« Vorige','Next »'=>'Volgende »','Log entry not found or has been removed.'=>'Logboekvermelding niet gevonden of is verwijderd.','Unable to load the requested log entry.'=>'De gevraagde logboekvermelding kan niet worden geladen.','Log Configuration'=>'Logboekconfiguratie','Total Logs'=>'Totaal logboeken','Retention Period'=>'Bewaarperiode','Disabled'=>'Uitgeschakeld','%d day'=>'%d dag' . "\0" . '%d dagen','Log Retention Period'=>'Bewaarperiode logboek','None (Disabled)'=>'Geen (Uitgeschakeld)','This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant.'=>'Deze waarde wordt afgedwongen door de constante WPVULNERABILITY_LOG_RETENTION_DAYS.','Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted.'=>'Kies hoe lang WPVulnerability API-responslogboeken moet bewaren. Oudere logboeken worden automatisch verwijderd.','Save Configuration'=>'Configuratie opslaan','Log retention is currently disabled.'=>'Logboekbewaring is momenteel uitgeschakeld.','API responses are not being saved.'=>'API-reacties worden niet opgeslagen.','Log Details'=>'Logboekdetails','Date'=>'Datum','API Endpoint'=>'API-eindpunt','API Response'=>'API-respons','Back to Logs'=>'Terug naar logboeken','No logs available'=>'Geen logboeken beschikbaar','API response logs will appear here once the vulnerability scanner runs.'=>'API-responslogboeken verschijnen hier zodra de kwetsbaarheidsscanner wordt uitgevoerd.','API Response Logs'=>'API-responslogboeken','Show:'=>'Weergeven:','Apply'=>'Toepassen','Showing %1$s–%2$s of %3$s'=>'%1$s–%2$s van %3$s weergegeven','Actions'=>'Acties','View'=>'Bekijken','Danger Zone'=>'Gevarenzone','Permanently delete all API response logs. This action cannot be undone.'=>'Alle API-responslogboeken permanent verwijderen. Deze actie kan niet ongedaan worden gemaakt.','Are you sure you want to delete all logs? This action cannot be undone.'=>'Weet u zeker dat u alle logboeken wilt verwijderen? Deze actie kan niet ongedaan worden gemaakt.','Delete All Logs'=>'Alle logboeken verwijderen','Reload Data from API'=>'Gegevens opnieuw laden vanuit API','Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information.'=>'Alle Core-, plugin-, thema- en andere componenteninformatie direct opnieuw laden vanuit de API voor actuele gegevens. Dit wist de cache en haalt nieuwe kwetsbaarheidsinformatie op.','Reload Data'=>'Gegevens opnieuw laden','Test Email Notifications'=>'Test e-mailmeldingen','Send a test email notification with current vulnerability data to verify your email configuration is working correctly.'=>'Stuur een test-e-mailmelding met actuele kwetsbaarheidsgegevens om te controleren of uw e-mailconfiguratie correct werkt.','From address (configured via constant):'=>'Afzenderadres (geconfigureerd via constante):','From address (default):'=>'Afzenderadres (standaard):','Learn how to customize the email sender address →'=>'Leer hoe u het e-mailafzenderadres kunt aanpassen →','Send Test Email'=>'Test-e-mail verzenden','WP-Cron Status'=>'WP-cron-status','View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly.'=>'WP-cron geplande gebeurtenissen weergeven en beheren. Vergelijk verwachte planningen met werkelijke cron-taken om te controleren of geautomatiseerde taken correct worden uitgevoerd.','No cron data available.'=>'Geen cron-gegevens beschikbaar.','Hook'=>'Hook','Expected'=>'Verwacht','Found'=>'Gevonden','Next Run'=>'Volgende uitvoering','Status'=>'Status','Not expected'=>'Niet verwacht','None'=>'Geen','OK'=>'OK','⚠️ Unexpected WPVulnerability Events'=>'⚠️ Onverwachte WPVulnerability-gebeurtenissen','No interval'=>'Geen interval','Next:'=>'Volgende:','Repair Cron Events'=>'Cron-gebeurtenissen repareren','Uninstall Data'=>'Verwijderingsgegevens','By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall.'=>'Standaard worden alle plugin-gegevens bewaard wanneer WPVulnerability wordt verwijderd. Schakel de onderstaande optie alleen in als u wilt dat alle opties, logboeken en gecachede gegevens permanent worden verwijderd bij het verwijderen.','Delete all plugin data on uninstall'=>'Alle plugin-gegevens verwijderen bij het verwijderen','Default: unchecked (data preserved). Check only if you want a clean removal.'=>'Standaard: niet aangevinkt (gegevens bewaard). Alleen aanvinken als u een volledige verwijdering wilt.','Save preference'=>'Voorkeur opslaan','Reset WPVulnerability'=>'WPVulnerability resetten','Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API.'=>'Alle WPVulnerability-instellingen, gecachede gegevens, logboeken en geplande gebeurtenissen verwijderen, daarna standaardinstellingen herstellen en gegevens opnieuw laden vanuit de API.','This action cannot be undone.'=>'Deze actie kan niet ongedaan worden gemaakt.','Are you sure you want to reset all WPVulnerability data? This action cannot be undone.'=>'Weet u zeker dat u alle WPVulnerability-gegevens wilt resetten? Deze actie kan niet ongedaan worden gemaakt.','Reset Plugin'=>'Plugin resetten','Vulnerability Database Statistics'=>'Statistieken kwetsbaarhedendatabase','%s vulnerability'=>'%s kwetsbaarheid' . "\0" . '%s kwetsbaarheden','(%s product)'=>'(%s product)' . "\0" . '(%s producten)','No data'=>'Geen gegevens','Database last updated: %s'=>'Database voor het laatste bijgewerkt: %s','Intelligence Sources'=>'Informatiebronnen','Number of vulnerabilities contributed by each intelligence source.'=>'Aantal kwetsbaarheden bijgedragen door elke informatiebron.','Source'=>'Bron','Core'=>'Core','Sponsors'=>'Sponsors','No sponsor data available.'=>'Geen sponsorgegevens beschikbaar.','Contributors'=>'Bijdragers','No contributor data available.'=>'Geen gegevens over bijdragers beschikbaar.','You do not have sufficient permissions to access this page.'=>'U heeft onvoldoende rechten om deze pagina te openen.','WPVulnerability settings'=>'WPVulnerability instellingen','Configure and save these settings to receive notifications.'=>'Configureer en sla deze instellingen op om e-mailmeldingen te ontvangen.','Configure and save these settings to hide vulnerabilities.'=>'Configureer en sla deze instellingen op om kwetsbaarheden te verbergen.','Default administrator email'=>'Standaard e-mailadres beheerder','Read more if you want to force the cache time.'=>'Meer lezen als u de cachetijd wilt forceren.','Never'=>'Nooit','Daily'=>'Dagelijks','Weekly'=>'Wekelijks','Day'=>'Dag','Hour'=>'Uur','Minute'=>'Minuut','Read more about how to force the deactivation of an item.'=>'Meer lezen over het geforceerd deactiveren van een item.','Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com'=>'Ongeldige Slack webhook-URL. Moet een geldige HTTPS-URL zijn van hooks.slack.com.','Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com'=>'Ongeldige Microsoft Teams webhook-URL. Moet een geldige HTTPS-URL zijn van office.com, office365.com of api.hooks.microsoft.com.','Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com'=>'Ongeldige Discord webhook-URL. Moet een geldige HTTPS-URL zijn van discord.com of discordapp.com.','Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Ongeldig Telegram-bot-tokenformaat. Moet er zo uitzien: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11.','All Clear'=>'Alles in orde','%d Critical Issue Found'=>'%d kritiek probleem gevonden' . "\0" . '%d kritieke problemen gevonden','%d Issue Found'=>'%d probleem gevonden' . "\0" . '%d problemen gevonden','Never checked'=>'Nooit gecontroleerd','%d minute ago'=>'%d minuut geleden' . "\0" . '%d minuten geleden','%d hour ago'=>'%d uur geleden' . "\0" . '%d uur geleden','Last checked: %s'=>'Laatst gecontroleerd: %s','Refresh Now'=>'Nu vernieuwen','No vulnerabilities detected'=>'Geen kwetsbaarheden gedetecteerd','Your site is up to date and secure'=>'Uw site is up-to-date en veilig','Server Software'=>'Serversoftware','Site Health'=>'Site-gezondheid','Settings'=>'Instellingen','WPVulnerability Status'=>'WPVulnerability-status','Receive vulnerability notifications'=>'Kwetsbaarheidsmeldingen ontvangen','Cache expiration time'=>'Cache-vervaltijd','How often you want to receive notifications'=>'Hoe vaak je meldingen wilt ontvangen','Where do you want to receive notifications?'=>'Waar wilt u meldingen ontvangen?','Email addresses to notify (separated by commas)'=>'E-mailadressen voor meldingen (gescheiden door komma\'s)','Slack webhook URL'=>'Slack webhook-URL','Teams webhook URL'=>'Teams webhook-URL','Vulnerabilities to hide'=>'Te verbergen kwetsbaarheden','What do you want to hide?'=>'Wat wilt u verbergen?','Standard (Hybrid Detection)'=>'Standaard (hybride detectie)','Strict (Extensions Only)'=>'Strikt (alleen extensies)','Disabled (No Detection)'=>'Uitgeschakeld (geen detectie)','Security Status'=>'Beveiligingsstatus','Security Mode'=>'Beveiligingsmodus','Shell Execution'=>'Shell-uitvoering','Enabled'=>'Ingeschakeld','Audit Logging'=>'Auditregistratie','Enabled (%d days)'=>'Ingeschakeld (%d dagen)','Total Log Entries'=>'Totaal logboekvermeldingen','Last Shell Execution'=>'Laatste shell-uitvoering','%s ago'=>'%s geleden','Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.'=>'Beveiligingsinstellingen configureren via wp-config.php-constanten: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.','See security configuration documentation for details.'=>'Zie documentatie over beveiligingsconfiguratie voor details.','Memcached'=>'Memcached','Imagick Extension'=>'Imagick-extensie','Redis Extension'=>'Redis-extensie','Memcached Extension'=>'Memcached-extensie','Memcache Extension'=>'Memcache-extensie','SQLite3 Extension'=>'SQLite3-extensie','PDO SQLite'=>'PDO SQLite','Shell Command'=>'Shell-commando','Binary Check'=>'Binaire controle','Not Detected'=>'Niet gedetecteerd','Software Detection Methods'=>'Software-detectiemethoden','Shows which detection method was used for each software component and the reliability score.'=>'Toont welke detectiemethode is gebruikt voor elk softwarecomponent en de betrouwbaarheidsscore.','Component'=>'Component','Version'=>'Versie','Detection Method'=>'Detectiemethode','Reliability'=>'Betrouwbaarheid','Not detected'=>'Niet gedetecteerd','Shell Execution Audit Logs'=>'Shell-uitvoering auditlogboeken','Complete audit trail of shell command executions for security monitoring.'=>'Volledig auditspoor van shell-opdrachtuitvoeringen voor beveiligingsmonitoring.','No shell execution logs found.'=>'Geen shell-uitvoeringslogboeken gevonden.','Logs will appear here when shell commands are executed for software detection.'=>'Logboeken verschijnen hier wanneer shell-opdrachten worden uitgevoerd voor software-detectie.','Time'=>'Tijd','Command'=>'Opdracht','User'=>'Gebruiker','Output'=>'Uitvoer','Showing the %d most recent log entries.'=>'De %d meest recente logboekvermeldingen worden weergegeven.','Invalid nonce.'=>'Ongeldige nonce.','Insufficient permissions.'=>'Onvoldoende rechten.','No component specified.'=>'Geen component opgegeven.','Debug Information'=>'Debug-informatie','This tab is only visible when WP_DEBUG is enabled. Use with caution.'=>'Dit tabblad is alleen zichtbaar wanneer WP_DEBUG is ingeschakeld. Gebruik met voorzichtigheid.','System Information'=>'Systeeminformatie','WordPress Version'=>'WordPress-versie','Multisite'=>'Multisite','Yes'=>'Ja','No'=>'Nee','Language'=>'Taal','PHP Version'=>'PHP-versie','PHP Extensions'=>'PHP-extensies','PHP Memory Limit'=>'PHP-geheugenlimiet','Database'=>'Database','Web Server'=>'Webserver','WP_DEBUG'=>'WP_DEBUG','WP_DEBUG_LOG'=>'WP_DEBUG_LOG','Path:'=>'Pad:','Size: %s'=>'Grootte: %s','View Log File'=>'Logboekbestand bekijken','Log file is not web-accessible (outside wp-content)'=>'Logboekbestand is niet toegankelijk via het web (buiten wp-content)','Log file does not exist yet'=>'Logboekbestand bestaat nog niet','Plugin Version'=>'Plugin-versie','Component Detection'=>'Componentdetectie','Version Detected'=>'Versie gedetecteerd','Analyzed'=>'Geanalyseerd','Cache Status'=>'Cache-status','Configuration Summary'=>'Configuratieoverzicht','Cache Duration'=>'Cache-duur','Log Retention'=>'Logboekbewaring','Components Analyzed'=>'Geanalyseerde componenten','Notification Email'=>'Meldings-e-mail','Slack Webhook'=>'Slack-webhook','Configured & Enabled'=>'Geconfigureerd & ingeschakeld','Configured (Disabled)'=>'Geconfigureerd (uitgeschakeld)','Not configured'=>'Niet geconfigureerd','Teams Webhook'=>'Teams-webhook','Discord Webhook'=>'Discord-webhook','Telegram Bot'=>'Telegram-bot','Cron Status'=>'Cron-status','Update Database'=>'Database bijwerken','Next run: %s'=>'Volgende uitvoering: %s','Not scheduled'=>'Niet gepland','Send Notification'=>'Melding verzenden','Run Update Now'=>'Update nu uitvoeren','Run Notification Now'=>'Melding nu verzenden','You do not have permission to run these actions.'=>'U heeft geen toestemming om deze acties uit te voeren.','API Testing'=>'API-testen','Test API connectivity for each component. Click a button to send a test request.'=>'API-verbinding testen voor elk component. Klik op een knop om een testverzoek te sturen.','Test %s'=>'%s testen','Testing...'=>'Testen...','HTTP Code:'=>'HTTP-code:','Response Time:'=>'Responstijd:','Response Preview'=>'Responsvoorbeeld','Test'=>'Test','Error:'=>'Fout:','AJAX request failed.'=>'AJAX-verzoek mislukt.','You do not have permission to test API connectivity.'=>'U heeft geen toestemming om de API-verbinding te testen.','Database Options Viewer'=>'Database-optiesviewer','View the raw data stored in WordPress options.'=>'De ruwe gegevens bekijken die zijn opgeslagen in WordPress-opties.','Select an option...'=>'Selecteer een optie...','Option not found or empty.'=>'Optie niet gevonden of leeg.','Quick Actions'=>'Snelle acties','Perform debugging actions. Use with caution.'=>'Debug-acties uitvoeren. Gebruik met voorzichtigheid.','Are you sure you want to clear all caches?'=>'Weet u zeker dat u alle caches wilt wissen?','Clear All Caches'=>'Alle caches wissen','Are you sure you want to reset signatures?'=>'Weet u zeker dat u de handtekeningen wilt resetten?','Reset Signatures'=>'Handtekeningen resetten','Export Debug Info'=>'Debug-informatie exporteren','You do not have permission to perform these actions.'=>'U heeft geen toestemming om deze acties uit te voeren.','Settings saved.'=>'Instellingen opgeslagen.','WPVulnerability cron events have been repaired across the network.'=>'WPVulnerability-cron-gebeurtenissen zijn netwerk-breed gerepareerd.','You do not have permission to access this page.'=>'U heeft geen toestemming om deze pagina te openen.','WordPress %1$s has a known vulnerability that may be affecting your installed version.'=>'WordPress %1$s heeft een bekende kwetsbaarheid die mogelijk uw geïnstalleerde versie beïnvloedt.','Actively exploited'=>'Actief misbruikt','Public exploit'=>'Publiek exploit','Automatable'=>'Automatiseerbaar','References:'=>'Referenties:','Invalid component specified.'=>'Ongeldig component opgegeven.','Version not detected for this component.'=>'Versie niet gedetecteerd voor dit component.','API request successful.'=>'API-verzoek geslaagd.','API returned HTTP code %d.'=>'API heeft HTTP-code %d geretourneerd.','WPVulnerability Logs'=>'WPVulnerability-logboeken','WPVulnerability Log'=>'WPVulnerability-logboek','Low'=>'Laag','Medium'=>'Medium','High'=>'Hoog','Critical'=>'Kritiek','WPVulnerability Shell Logs'=>'WPVulnerability shell-logboeken','WPVulnerability Shell Log'=>'WPVulnerability shell-logboek','Every week'=>'Elke week','Every day'=>'Elke dag','Invalid request.'=>'Ongeldig verzoek.','You have unsubscribed from WPVulnerability notifications.'=>'U heeft zich afgemeld voor WPVulnerability-meldingen.','Learn more about the WordPress Vulnerability Database API at %2$s'=>'Leer meer over de WordPress Vulnerability Database API op %2$s','Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings.'=>'Wilt u deze meldingen niet meer ontvangen? Afmelden of de e-mailfrequentie wijzigen naar Nooit in de WPVulnerability-instellingen.','No vulnerabilities found'=>'Geen kwetsbaarheden gevonden','This is likely a test. The site does not have vulnerabilities.'=>'Dit is waarschijnlijk een test. De site heeft geen kwetsbaarheden.','Core vulnerabilities'=>'Core kwetsbaarheden','Plugins vulnerabilities'=>'Plugins kwetsbaarheden','Themes vulnerabilities'=>'Thema\'s kwetsbaarheden','PHP vulnerabilities'=>'PHP-kwetsbaarheden','Apache HTTPD vulnerabilities'=>'Apache HTTPD-kwetsbaarheden','Nginx vulnerabilities'=>'Nginx-kwetsbaarheden','MariaDB vulnerabilities'=>'MariaDB-kwetsbaarheden','MySQL vulnerabilities'=>'MySQL-kwetsbaarheden','ImageMagick vulnerabilities'=>'ImageMagick-kwetsbaarheden','curl vulnerabilities'=>'curl-kwetsbaarheden','memcached vulnerabilities'=>'memcached-kwetsbaarheden','Redis vulnerabilities'=>'Redis-kwetsbaarheden','SQLite vulnerabilities'=>'SQLite-kwetsbaarheden','Vulnerability found: %s'=>'Kwetsbaarheid gevonden: %s','Vulnerability found'=>'Kwetsbaarheid gevonden','%1$s has a known vulnerability that may be affecting your installed version.'=>'%1$s heeft een bekende kwetsbaarheid die mogelijk uw geïnstalleerde versie beïnvloedt.','This plugin is closed. Please replace it with another.'=>'Deze plugin is gesloten. Vervang het door een andere.','This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates.'=>'Deze kwetsbaarheid lijkt niet gepatcht te zijn. Blijf op de hoogte voor aankomende plugin updates.','It hasn\'t been updated in over a year.'=>'Het is meer dan een jaar niet bijgewerkt.','It may no longer be available (closed?).'=>'Het is mogelijk niet meer beschikbaar (gesloten?).','Last updated on'=>'Laatste update op','Vulnerabilities (%d)'=>'Kwetsbaarheden (%d)','%s running'=>'%s actief','End of Life'=>'End of Life','End of life:'=>'End of life:','Supported'=>'Ondersteund','Plugin'=>'Plugin','Theme'=>'Thema','End of life: %s'=>'End of life: %s','EOL'=>'EOL','Network Settings'=>'Netwerkinstellingen','Vulnerabilities'=>'Kwetsbaarheden','Every 6 hours'=>'Elke 6 uur','Database updates'=>'Database-updates','Log cleanup'=>'Logboekopruiming','Notifications are scheduled, but settings currently disable them. Please review the notifications tab.'=>'Meldingen zijn gepland, maar instellingen schakelen ze momenteel uit. Controleer het tabblad Meldingen.','This event should not be scheduled for this site.'=>'Dit evenement mag niet worden gepland voor deze site.','Not expected for this site.'=>'Niet verwacht voor deze site.','No instances found.'=>'Geen instanties gevonden.','Scheduled with an unexpected interval.'=>'Gepland met een onverwacht interval.','Multiple instances detected.'=>'Meerdere instanties gedetecteerd.','Scheduled as expected.'=>'Gepland zoals verwacht.','There aren\'t plugins vulnerabilities'=>'Er zijn geen plugins kwetsbaarheden','Shows possible vulnerabilities that exist in installed plugins.'=>'Toont mogelijke kwetsbaarheden die bestaan in geïnstalleerde plugins.','There is %d plugin with vulnerabilities'=>'Er is %d plugin met kwetsbaarheden' . "\0" . 'Er zijn %d plugins met kwetsbaarheden','We\'ve detected potential vulnerabilities in installed plugins. Please check them and keep them updated.'=>'We hebben mogelijke kwetsbaarheden gedetecteerd in geïnstalleerde plugins. Controleer ze en houd ze up-to-date.','Update plugins'=>'Plugins updaten','There aren\'t themes vulnerabilities'=>'Er zijn geen thema\'s kwetsbaarheden','Shows possible vulnerabilities that exist in installed themes.'=>'Toont mogelijke kwetsbaarheden die bestaan in geïnstalleerde thema\'s.','There is %d theme with vulnerabilities'=>'Er is %d thema met kwetsbaarheden' . "\0" . 'Er zijn %d thema\'s met kwetsbaarheden','We\'ve detected potential vulnerabilities in installed themes. Please check them and keep them updated.'=>'We hebben mogelijke kwetsbaarheden gedetecteerd in geïnstalleerde thema\'s. Controleer ze en houd ze up-to-date.','Update themes'=>'Thema\'s updaten','There aren\'t WordPress vulnerabilities'=>'Er zijn geen WordPress kwetsbaarheden','Shows possible vulnerabilities existing in the WordPress core.'=>'Toont mogelijke kwetsbaarheden in de WordPress core','There is %d core vulnerability'=>'Er is %d core kwetsbaarheid' . "\0" . 'Er zijn %d core kwetsbaarheden','We\'ve detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated.'=>'We hebben mogelijke kwetsbaarheden gedetecteerd in deze WordPress installatie. Controleer ze en houd je installatie up-to-date.','Update WordPress'=>'Update WordPress','Nginx'=>'Nginx','Invalid software type'=>'Ongeldig softwaretype','Error'=>'Fout','The specified software type is not valid.'=>'Het opgegeven softwaretype is niet geldig.','There aren\'t %s vulnerabilities'=>'Er zijn geen %s kwetsbaarheden','Shows possible vulnerabilities existing in %s.'=>'Toont mogelijke kwetsbaarheden die bestaan in %s.','There is %1$d %2$s vulnerability'=>'Er is %1$d %2$s kwetsbaarheid' . "\0" . 'Er zijn %1$d %2$s kwetsbaarheden','We\'ve detected potential vulnerabilities in %s. Please check them and keep your installation updated.'=>'We hebben mogelijke kwetsbaarheden in %s gedetecteerd. Controleer ze en houd je installatie up-to-date.','How to update PHP'=>'Hoe PHP bij te werken','WPVulnerability Core'=>'WPVulnerability core','WPVulnerability Themes'=>'WPVulnerability thema\'s','WPVulnerability Plugins'=>'WPVulnerability plugins','WPVulnerability PHP'=>'WPVulnerability PHP','WPVulnerability Apache HTTPD'=>'WPVulnerability Apache HTTPD','WPVulnerability Nginx'=>'WPVulnerability Nginx','WPVulnerability MariaDB'=>'WPVulnerability MariaDB','WPVulnerability MySQL'=>'WPVulnerability MySQL','WPVulnerability ImageMagick'=>'WPVulnerability ImageMagick','WPVulnerability curl'=>'WPVulnerability curl','WPVulnerability memcached'=>'WPVulnerability memcached','WPVulnerability redis'=>'WPVulnerability redis','WPVulnerability sqlite'=>'WPVulnerability sqlite','This theme is closed. Please replace it with another.'=>'Dit thema is gesloten. Vervang het door een ander.','This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates.'=>'Deze kwetsbaarheid lijkt niet gepatcht te zijn. Blijf op de hoogte voor aankomende thema updates.','This theme has known vulnerabilities that may be affecting your installed version.'=>'Dit thema heeft bekende kwetsbaarheden die mogelijk uw geïnstalleerde versie beïnvloeden.']]; \ No newline at end of file diff --git a/languages/wpvulnerability-nl.mo b/languages/wpvulnerability-nl.mo new file mode 100644 index 0000000000000000000000000000000000000000..4edc52032a824d98c5ce87d01e7be94c7cecae1c GIT binary patch literal 39427 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." +msgstr "" +"Dit commando vereist een WordPress-beheerder. Uitvoeren met --" +"user=." + +#: class-wpvulnerability-cli.php:156 +msgid "No core vulnerabilities found." +msgstr "Geen core-kwetsbaarheden gevonden." + +#: class-wpvulnerability-cli.php:275 +msgid "No plugin vulnerabilities found." +msgstr "Geen plugin-kwetsbaarheden gevonden." + +#: class-wpvulnerability-cli.php:393 +msgid "No theme vulnerabilities found." +msgstr "Geen thema-kwetsbaarheden gevonden." + +#. translators: %s is the software name (php, apache, nginx, etc.) +#: class-wpvulnerability-cli.php:490 +#, php-format +msgid "No %s vulnerabilities found." +msgstr "Geen %s-kwetsbaarheden gevonden." + +#: wpvulnerability-admin.php:63 wpvulnerability-adminms.php:227 +msgid "Data from source has been reloaded." +msgstr "Gegevens uit de bron zijn opnieuw geladen." + +#: wpvulnerability-admin.php:65 wpvulnerability-adminms.php:229 +msgid "You do not have permission to reload data." +msgstr "U heeft geen toestemming om gegevens opnieuw te laden." + +#: wpvulnerability-admin.php:93 wpvulnerability-adminms.php:255 +msgid "Test email has been sent." +msgstr "Test-e-mail is verzonden." + +#: wpvulnerability-admin.php:95 wpvulnerability-adminms.php:259 +msgid "Test email has failed. Please, check your email settings." +msgstr "De test e-mail is mislukt. Controleer je e-mailinstellingen." + +#: wpvulnerability-admin.php:98 wpvulnerability-adminms.php:263 +msgid "You do not have permission to send test emails." +msgstr "U heeft geen toestemming om test-e-mails te verzenden." + +#: wpvulnerability-admin.php:113 +msgid "WPVulnerability cron events have been repaired." +msgstr "WPVulnerability-cron-gebeurtenissen zijn gerepareerd." + +#: wpvulnerability-admin.php:115 wpvulnerability-adminms.php:279 +msgid "You do not have permission to repair cron events." +msgstr "U heeft geen toestemming om cron-gebeurtenissen te repareren." + +#: wpvulnerability-admin.php:127 wpvulnerability-adminms.php:291 +msgid "All logs have been deleted." +msgstr "Alle logboeken zijn verwijderd." + +#: wpvulnerability-admin.php:129 wpvulnerability-adminms.php:293 +msgid "You do not have permission to delete logs." +msgstr "U heeft geen toestemming om logboeken te verwijderen." + +#: wpvulnerability-admin.php:146 +msgid "Uninstall preference saved." +msgstr "Verwijderingsvoorkeur opgeslagen." + +#: wpvulnerability-admin.php:153 wpvulnerability-adminms.php:316 +msgid "WPVulnerability has been reset to defaults and reloaded." +msgstr "WPVulnerability is teruggezet naar standaardwaarden en opnieuw geladen." + +#: wpvulnerability-admin.php:155 wpvulnerability-adminms.php:318 +msgid "You do not have permission to reset WPVulnerability." +msgstr "U heeft geen toestemming om WPVulnerability te resetten." + +#: wpvulnerability-admin.php:170 wpvulnerability-adminms.php:333 +msgid "All caches have been cleared." +msgstr "Alle caches zijn gewist." + +#: wpvulnerability-admin.php:172 wpvulnerability-adminms.php:335 +msgid "You do not have permission to clear caches." +msgstr "U heeft geen toestemming om caches te wissen." + +#: wpvulnerability-admin.php:187 wpvulnerability-adminms.php:350 +msgid "Plugin and theme signatures have been reset." +msgstr "Plugin- en thema-handtekeningen zijn teruggezet." + +#: wpvulnerability-admin.php:189 wpvulnerability-adminms.php:352 +msgid "You do not have permission to reset signatures." +msgstr "U heeft geen toestemming om handtekeningen te resetten." + +#: wpvulnerability-admin.php:212 wpvulnerability-adminms.php:375 +msgid "You do not have permission to export debug information." +msgstr "U heeft geen toestemming om debug-informatie te exporteren." + +#: wpvulnerability-admin.php:224 wpvulnerability-adminms.php:387 +msgid "Database update has been executed." +msgstr "Database-update is uitgevoerd." + +#: wpvulnerability-admin.php:226 wpvulnerability-adminms.php:389 +msgid "You do not have permission to run database updates." +msgstr "U heeft geen toestemming om database-updates uit te voeren." + +#: wpvulnerability-admin.php:247 wpvulnerability-adminms.php:410 +msgid "Notification has been sent." +msgstr "Melding is verzonden." + +#: wpvulnerability-admin.php:249 wpvulnerability-adminms.php:412 +msgid "Notification sending failed." +msgstr "Verzenden van melding mislukt." + +#: wpvulnerability-admin.php:252 wpvulnerability-adminms.php:415 +msgid "You do not have permission to send notifications." +msgstr "U heeft geen toestemming om meldingen te verzenden." + +#: wpvulnerability-admin.php:266 wpvulnerability-adminms.php:539 +#: wpvulnerability-schedule.php:323 +msgid "Notifications" +msgstr "Meldingen" + +#: wpvulnerability-admin.php:269 wpvulnerability-adminms.php:542 +msgid "Analysis" +msgstr "Analyse" + +#: wpvulnerability-admin.php:272 wpvulnerability-adminms.php:545 +msgid "Logs" +msgstr "Logboeken" + +#: wpvulnerability-admin.php:275 wpvulnerability-adminms.php:548 +#: wpvulnerability-sitehealth.php:25 wpvulnerability-sitehealth.php:77 +#: wpvulnerability-sitehealth.php:129 wpvulnerability-sitehealth.php:210 +msgid "Security" +msgstr "Beveiliging" + +#: wpvulnerability-admin.php:278 wpvulnerability-adminms.php:551 +msgid "Tools" +msgstr "Hulpmiddelen" + +#: wpvulnerability-admin.php:285 wpvulnerability-adminms.php:558 +msgid "Debug" +msgstr "Debug" + +#: wpvulnerability-admin.php:290 wpvulnerability-adminms.php:563 +msgid "About" +msgstr "Over" + +#: wpvulnerability-admin.php:427 wpvulnerability-adminms.php:700 +msgid "Notification Settings" +msgstr "Meldingsinstellingen" + +#: wpvulnerability-admin.php:430 wpvulnerability-adminms.php:703 +msgid "Configure how and when you want to receive vulnerability notifications." +msgstr "Configureer hoe en wanneer u kwetsbaarheidsmeldingen wilt ontvangen." + +#: wpvulnerability-admin.php:431 wpvulnerability-adminms.php:704 +msgid "" +"Stay informed about security vulnerabilities in your WordPress installation, " +"plugins, themes, and server software." +msgstr "" +"Blijf op de hoogte van beveiligingskwetsbaarheden in uw WordPress-installatie, " +"plugins, thema's en serversoftware." + +#: wpvulnerability-admin.php:438 wpvulnerability-adminms.php:711 +msgid "Cache Expiration Time" +msgstr "Cache-vervaltijd" + +#: wpvulnerability-admin.php:440 wpvulnerability-admin.php:814 +#: wpvulnerability-adminms.php:713 wpvulnerability-adminms.php:1087 +msgid "FORCED" +msgstr "GEFORCEERD" + +#: wpvulnerability-admin.php:444 wpvulnerability-adminms.php:717 +msgid "How long to cache vulnerability data before refreshing from the API." +msgstr "Hoe lang kwetsbaarheidsgegevens worden gecached voordat ze worden vernieuwd vanuit de API." + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:453 wpvulnerability-admin.php:1891 +#: wpvulnerability-admin.php:3631 wpvulnerability-adminms.php:726 +#: wpvulnerability-adminms.php:2039 wpvulnerability-adminms.php:3825 +#, php-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d uur" +msgstr[1] "%d uur" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:469 wpvulnerability-adminms.php:742 +#, php-format +msgid "" +"You can force the cache time via wp-config.php constant. Learn more →" +msgstr "" +"U kunt de cachetijd forceren via een wp-config.php-constante. Meer informatie →" + +#: wpvulnerability-admin.php:481 wpvulnerability-admin.php:3665 +#: wpvulnerability-adminms.php:754 wpvulnerability-adminms.php:3859 +msgid "Notification Frequency" +msgstr "Meldingsfrequentie" + +#: wpvulnerability-admin.php:484 wpvulnerability-adminms.php:757 +msgid "Choose how often you want to receive vulnerability notifications." +msgstr "Kies hoe vaak u kwetsbaarheidsmeldingen wilt ontvangen." + +#: wpvulnerability-admin.php:489 wpvulnerability-adminms.php:762 +msgid "Never - Disable automatic notifications" +msgstr "Nooit – Automatische meldingen uitschakelen" + +#: wpvulnerability-admin.php:493 wpvulnerability-adminms.php:766 +msgid "Daily - Receive notifications every day" +msgstr "Dagelijks – Elke dag meldingen ontvangen" + +#: wpvulnerability-admin.php:497 wpvulnerability-adminms.php:770 +msgid "Weekly - Receive notifications once a week" +msgstr "Wekelijks – Eenmaal per week meldingen ontvangen" + +#: wpvulnerability-admin.php:503 wpvulnerability-adminms.php:776 +msgid "Day:" +msgstr "Dag:" + +#: wpvulnerability-admin.php:505 wpvulnerability-admin.php:1955 +#: wpvulnerability-adminms.php:778 wpvulnerability-adminms.php:2115 +msgid "Monday" +msgstr "Maandag" + +#: wpvulnerability-admin.php:506 wpvulnerability-admin.php:1956 +#: wpvulnerability-adminms.php:779 wpvulnerability-adminms.php:2116 +msgid "Tuesday" +msgstr "Dinsdag" + +#: wpvulnerability-admin.php:507 wpvulnerability-admin.php:1957 +#: wpvulnerability-adminms.php:780 wpvulnerability-adminms.php:2117 +msgid "Wednesday" +msgstr "Woensdag" + +#: wpvulnerability-admin.php:508 wpvulnerability-admin.php:1958 +#: wpvulnerability-adminms.php:781 wpvulnerability-adminms.php:2118 +msgid "Thursday" +msgstr "Donderdag" + +#: wpvulnerability-admin.php:509 wpvulnerability-admin.php:1959 +#: wpvulnerability-adminms.php:782 wpvulnerability-adminms.php:2119 +msgid "Friday" +msgstr "Vrijdag" + +#: wpvulnerability-admin.php:510 wpvulnerability-admin.php:1960 +#: wpvulnerability-adminms.php:783 wpvulnerability-adminms.php:2120 +msgid "Saturday" +msgstr "Zaterdag" + +#: wpvulnerability-admin.php:511 wpvulnerability-admin.php:1961 +#: wpvulnerability-adminms.php:784 wpvulnerability-adminms.php:2121 +msgid "Sunday" +msgstr "Zondag" + +#: wpvulnerability-admin.php:515 wpvulnerability-adminms.php:788 +msgid "Time:" +msgstr "Tijd:" + +#: wpvulnerability-admin.php:519 wpvulnerability-adminms.php:792 +msgid "(24-hour format, server timezone)" +msgstr "(24-uurs formaat, server-tijdzone)" + +#: wpvulnerability-admin.php:528 wpvulnerability-adminms.php:801 +msgid "Notification Channels" +msgstr "Meldingskanalen" + +#: wpvulnerability-admin.php:531 wpvulnerability-adminms.php:804 +msgid "Select where you want to receive notifications." +msgstr "Selecteer waar u meldingen wilt ontvangen." + +#: wpvulnerability-admin.php:536 wpvulnerability-admin.php:2011 +#: wpvulnerability-adminms.php:809 wpvulnerability-adminms.php:2169 +msgid "Email" +msgstr "E-mail" + +#: wpvulnerability-admin.php:539 wpvulnerability-adminms.php:812 +msgid "Email Addresses (separated by commas):" +msgstr "E-mailadressen (gescheiden door komma's):" + +#: wpvulnerability-admin.php:541 wpvulnerability-adminms.php:814 +msgid "Default:" +msgstr "Standaard:" + +#: wpvulnerability-admin.php:546 wpvulnerability-admin.php:2016 +#: wpvulnerability-adminms.php:819 wpvulnerability-adminms.php:2174 +msgid "Slack" +msgstr "Slack" + +#: wpvulnerability-admin.php:549 wpvulnerability-adminms.php:822 +msgid "Slack Webhook URL:" +msgstr "Slack webhook-URL:" + +#. translators: %s: Slack documentation URL +#: wpvulnerability-admin.php:555 wpvulnerability-adminms.php:828 +#, php-format +msgid "" +"Learn how to " +"create a Slack incoming webhook →" +msgstr "" +"Leer hoe u " +"een inkomende Slack-webhook maakt →" + +#: wpvulnerability-admin.php:564 wpvulnerability-admin.php:2021 +#: wpvulnerability-adminms.php:837 wpvulnerability-adminms.php:2179 +msgid "Microsoft Teams" +msgstr "Microsoft Teams" + +#: wpvulnerability-admin.php:567 wpvulnerability-adminms.php:840 +msgid "Teams Webhook URL:" +msgstr "Teams webhook-URL:" + +#. translators: %s: Microsoft Teams documentation URL +#: wpvulnerability-admin.php:573 wpvulnerability-adminms.php:846 +#, php-format +msgid "" +"Learn how to " +"create a Teams incoming webhook →" +msgstr "" +"Leer hoe u " +"een inkomende Teams-webhook maakt →" + +#: wpvulnerability-admin.php:582 wpvulnerability-adminms.php:855 +msgid "Discord" +msgstr "Discord" + +#: wpvulnerability-admin.php:585 wpvulnerability-adminms.php:858 +msgid "Discord Webhook URL:" +msgstr "Discord webhook-URL:" + +#. translators: %s: Discord documentation URL +#: wpvulnerability-admin.php:591 wpvulnerability-adminms.php:864 +#, php-format +msgid "" +"Learn how to " +"create a Discord webhook →" +msgstr "" +"Leer hoe u " +"een Discord-webhook maakt →" + +#: wpvulnerability-admin.php:600 wpvulnerability-adminms.php:873 +msgid "Telegram" +msgstr "Telegram" + +#: wpvulnerability-admin.php:603 wpvulnerability-adminms.php:876 +msgid "Telegram Bot Token:" +msgstr "Telegram-bot-token:" + +#: wpvulnerability-admin.php:605 wpvulnerability-adminms.php:878 +msgid "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "Formaat: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:607 wpvulnerability-adminms.php:880 +msgid "Telegram Chat ID:" +msgstr "Telegram chat-ID:" + +#. translators: %s: Telegram documentation URL +#: wpvulnerability-admin.php:613 wpvulnerability-adminms.php:886 +#, php-format +msgid "" +"Learn how to " +"create a Telegram bot and get Chat ID →" +msgstr "" +"Leer hoe u " +"een Telegram-bot maakt en de chat-ID ophaalt →" + +#: wpvulnerability-admin.php:623 wpvulnerability-adminms.php:896 +msgid "Save Notification Settings" +msgstr "Meldingsinstellingen opslaan" + +#: wpvulnerability-admin.php:700 wpvulnerability-admin.php:2552 +#: wpvulnerability-adminms.php:973 wpvulnerability-adminms.php:2459 +msgid "WordPress Components" +msgstr "WordPress-componenten" + +#: wpvulnerability-admin.php:703 wpvulnerability-admin.php:2560 +#: wpvulnerability-adminms.php:976 wpvulnerability-adminms.php:2467 +msgid "WordPress Core" +msgstr "WordPress Core" + +#: wpvulnerability-admin.php:707 wpvulnerability-admin.php:1472 +#: wpvulnerability-admin.php:1573 wpvulnerability-admin.php:2109 +#: wpvulnerability-admin.php:2571 wpvulnerability-adminms.php:980 +#: wpvulnerability-adminms.php:1744 wpvulnerability-adminms.php:1843 +#: wpvulnerability-adminms.php:2266 wpvulnerability-adminms.php:2478 +msgid "Plugins" +msgstr "Plugins" + +#: wpvulnerability-admin.php:711 wpvulnerability-admin.php:1473 +#: wpvulnerability-admin.php:1574 wpvulnerability-admin.php:2114 +#: wpvulnerability-admin.php:2587 wpvulnerability-adminms.php:984 +#: wpvulnerability-adminms.php:1745 wpvulnerability-adminms.php:1844 +#: wpvulnerability-adminms.php:2271 wpvulnerability-adminms.php:2494 +msgid "Themes" +msgstr "Thema's" + +#: wpvulnerability-admin.php:717 wpvulnerability-adminms.php:990 +msgid "Software & Languages" +msgstr "Software & Talen" + +#: wpvulnerability-admin.php:720 wpvulnerability-admin.php:1474 +#: wpvulnerability-admin.php:2119 wpvulnerability-adminms.php:993 +#: wpvulnerability-adminms.php:1746 wpvulnerability-adminms.php:2276 +#: wpvulnerability-sitehealth.php:178 +msgid "PHP" +msgstr "PHP" + +#: wpvulnerability-admin.php:726 wpvulnerability-adminms.php:999 +msgid "Web Servers" +msgstr "Webservers" + +#: wpvulnerability-admin.php:729 wpvulnerability-admin.php:1475 +#: wpvulnerability-admin.php:2124 wpvulnerability-adminms.php:1002 +#: wpvulnerability-adminms.php:1747 wpvulnerability-adminms.php:2281 +#: wpvulnerability-sitehealth.php:179 +msgid "Apache HTTPD" +msgstr "Apache HTTPD" + +#: wpvulnerability-admin.php:733 wpvulnerability-admin.php:1476 +#: wpvulnerability-admin.php:2129 wpvulnerability-adminms.php:1006 +#: wpvulnerability-adminms.php:1748 wpvulnerability-adminms.php:2286 +msgid "nginx" +msgstr "nginx" + +#: wpvulnerability-admin.php:739 wpvulnerability-adminms.php:1012 +msgid "Databases" +msgstr "Databases" + +#: wpvulnerability-admin.php:742 wpvulnerability-admin.php:1477 +#: wpvulnerability-admin.php:2134 wpvulnerability-adminms.php:1015 +#: wpvulnerability-adminms.php:1749 wpvulnerability-adminms.php:2291 +#: wpvulnerability-sitehealth.php:181 +msgid "MariaDB" +msgstr "MariaDB" + +#: wpvulnerability-admin.php:746 wpvulnerability-admin.php:1478 +#: wpvulnerability-admin.php:2139 wpvulnerability-adminms.php:1019 +#: wpvulnerability-adminms.php:1750 wpvulnerability-adminms.php:2296 +#: wpvulnerability-sitehealth.php:182 +msgid "MySQL" +msgstr "MySQL" + +#: wpvulnerability-admin.php:750 wpvulnerability-admin.php:1483 +#: wpvulnerability-admin.php:2164 wpvulnerability-admin.php:3104 +#: wpvulnerability-adminms.php:1023 wpvulnerability-adminms.php:1755 +#: wpvulnerability-adminms.php:2321 wpvulnerability-adminms.php:3281 +msgid "SQLite" +msgstr "SQLite" + +#: wpvulnerability-admin.php:756 wpvulnerability-adminms.php:1029 +msgid "Additional Tools" +msgstr "Aanvullende hulpmiddelen" + +#: wpvulnerability-admin.php:759 wpvulnerability-admin.php:1479 +#: wpvulnerability-admin.php:2144 wpvulnerability-admin.php:3101 +#: wpvulnerability-adminms.php:1032 wpvulnerability-adminms.php:1751 +#: wpvulnerability-adminms.php:2301 wpvulnerability-adminms.php:3278 +#: wpvulnerability-sitehealth.php:183 +msgid "ImageMagick" +msgstr "ImageMagick" + +#: wpvulnerability-admin.php:763 wpvulnerability-admin.php:1480 +#: wpvulnerability-admin.php:2149 wpvulnerability-adminms.php:1036 +#: wpvulnerability-adminms.php:1752 wpvulnerability-adminms.php:2306 +#: wpvulnerability-sitehealth.php:184 +msgid "curl" +msgstr "curl" + +#: wpvulnerability-admin.php:767 wpvulnerability-admin.php:1481 +#: wpvulnerability-admin.php:2154 wpvulnerability-adminms.php:1040 +#: wpvulnerability-adminms.php:1753 wpvulnerability-adminms.php:2311 +msgid "memcached" +msgstr "memcached" + +#: wpvulnerability-admin.php:771 wpvulnerability-admin.php:1482 +#: wpvulnerability-admin.php:2159 wpvulnerability-admin.php:3102 +#: wpvulnerability-adminms.php:1044 wpvulnerability-adminms.php:1754 +#: wpvulnerability-adminms.php:2316 wpvulnerability-adminms.php:3279 +msgid "Redis" +msgstr "Redis" + +#: wpvulnerability-admin.php:784 wpvulnerability-adminms.php:1057 +msgid "Component Analysis Settings" +msgstr "Instellingen componentenanalyse" + +#: wpvulnerability-admin.php:787 wpvulnerability-adminms.php:1060 +msgid "Enable or disable vulnerability analysis for specific components." +msgstr "Kwetsbaarheidsanalyse in- of uitschakelen voor specifieke componenten." + +#: wpvulnerability-admin.php:788 wpvulnerability-adminms.php:1061 +msgid "" +"Check the components you want to HIDE from vulnerability scans and reports. " +"Unchecked components will be actively analyzed. Components with active " +"analysis are shown in green, hidden components in red." +msgstr "" +"Selecteer de componenten die u wilt VERBERGEN voor kwetsbaarheidsscans en rapporten. " +"Niet-geselecteerde componenten worden actief geanalyseerd. Componenten met actieve " +"analyse worden groen weergegeven, verborgen componenten rood." + +#: wpvulnerability-admin.php:820 wpvulnerability-adminms.php:1093 +msgid "Hidden (forced by constant)" +msgstr "Verborgen (geforceerd door constante)" + +#: wpvulnerability-admin.php:823 wpvulnerability-adminms.php:1096 +msgid "🔴 Analysis disabled" +msgstr "🔴 Analyse uitgeschakeld" + +#: wpvulnerability-admin.php:826 wpvulnerability-adminms.php:1099 +msgid "🟢 Analysis active" +msgstr "🟢 Analyse actief" + +#: wpvulnerability-admin.php:848 wpvulnerability-adminms.php:1121 +msgid "Tip:" +msgstr "Tip:" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:852 wpvulnerability-adminms.php:1125 +#, php-format +msgid "" +"You can force-disable components via wp-config.php constants. Learn more about force-hiding " +"checks →" +msgstr "" +"U kunt componenten geforceerd uitschakelen via wp-config.php-constanten. Meer informatie over het geforceerd verbergen " +"van controles →" + +#: wpvulnerability-admin.php:860 wpvulnerability-adminms.php:1133 +msgid "Save Analysis Settings" +msgstr "Analyse-instellingen opslaan" + +#: wpvulnerability-admin.php:920 wpvulnerability-adminms.php:1193 +msgid "« Previous" +msgstr "« Vorige" + +#: wpvulnerability-admin.php:921 wpvulnerability-adminms.php:1194 +msgid "Next »" +msgstr "Volgende »" + +#: wpvulnerability-admin.php:932 wpvulnerability-adminms.php:1205 +msgid "Log entry not found or has been removed." +msgstr "Logboekvermelding niet gevonden of is verwijderd." + +#: wpvulnerability-admin.php:935 wpvulnerability-adminms.php:1208 +msgid "Unable to load the requested log entry." +msgstr "De gevraagde logboekvermelding kan niet worden geladen." + +#: wpvulnerability-admin.php:945 wpvulnerability-adminms.php:1218 +msgid "Log Configuration" +msgstr "Logboekconfiguratie" + +#: wpvulnerability-admin.php:950 wpvulnerability-adminms.php:1223 +msgid "Total Logs" +msgstr "Totaal logboeken" + +#: wpvulnerability-admin.php:954 wpvulnerability-adminms.php:1227 +msgid "Retention Period" +msgstr "Bewaarperiode" + +#: wpvulnerability-admin.php:959 wpvulnerability-admin.php:1301 +#: wpvulnerability-admin.php:3029 wpvulnerability-admin.php:3043 +#: wpvulnerability-admin.php:3475 wpvulnerability-admin.php:3483 +#: wpvulnerability-adminms.php:1232 wpvulnerability-adminms.php:1574 +#: wpvulnerability-adminms.php:3206 wpvulnerability-adminms.php:3220 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Disabled" +msgstr "Uitgeschakeld" + +#. translators: %d: Number of days. +#. translators: %d: number of days +#: wpvulnerability-admin.php:962 wpvulnerability-admin.php:984 +#: wpvulnerability-admin.php:3641 wpvulnerability-adminms.php:1235 +#: wpvulnerability-adminms.php:1257 wpvulnerability-adminms.php:3835 +#, php-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d dag" +msgstr[1] "%d dagen" + +#: wpvulnerability-admin.php:975 wpvulnerability-adminms.php:1248 +msgid "Log Retention Period" +msgstr "Bewaarperiode logboek" + +#: wpvulnerability-admin.php:981 wpvulnerability-adminms.php:1254 +msgid "None (Disabled)" +msgstr "Geen (Uitgeschakeld)" + +#: wpvulnerability-admin.php:1004 wpvulnerability-adminms.php:1277 +msgid "" +"This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant." +msgstr "" +"Deze waarde wordt afgedwongen door de constante WPVULNERABILITY_LOG_RETENTION_DAYS." + +#: wpvulnerability-admin.php:1009 wpvulnerability-adminms.php:1282 +msgid "" +"Choose how long WPVulnerability should keep API response logs. Older logs " +"are automatically deleted." +msgstr "" +"Kies hoe lang WPVulnerability API-responslogboeken moet bewaren. Oudere logboeken " +"worden automatisch verwijderd." + +#: wpvulnerability-admin.php:1013 wpvulnerability-adminms.php:1286 +msgid "Save Configuration" +msgstr "Configuratie opslaan" + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "Log retention is currently disabled." +msgstr "Logboekbewaring is momenteel uitgeschakeld." + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "API responses are not being saved." +msgstr "API-reacties worden niet opgeslagen." + +#: wpvulnerability-admin.php:1031 wpvulnerability-adminms.php:1304 +msgid "Log Details" +msgstr "Logboekdetails" + +#: wpvulnerability-admin.php:1035 wpvulnerability-admin.php:1104 +#: wpvulnerability-adminms.php:1308 wpvulnerability-adminms.php:1377 +msgid "Date" +msgstr "Datum" + +#: wpvulnerability-admin.php:1039 wpvulnerability-admin.php:1105 +#: wpvulnerability-adminms.php:1312 wpvulnerability-adminms.php:1378 +msgid "API Endpoint" +msgstr "API-eindpunt" + +#: wpvulnerability-admin.php:1044 wpvulnerability-adminms.php:1317 +msgid "API Response" +msgstr "API-respons" + +#: wpvulnerability-admin.php:1049 wpvulnerability-adminms.php:1322 +msgid "Back to Logs" +msgstr "Terug naar logboeken" + +#: wpvulnerability-admin.php:1058 wpvulnerability-adminms.php:1331 +msgid "No logs available" +msgstr "Geen logboeken beschikbaar" + +#: wpvulnerability-admin.php:1059 wpvulnerability-adminms.php:1332 +msgid "API response logs will appear here once the vulnerability scanner runs." +msgstr "API-responslogboeken verschijnen hier zodra de kwetsbaarheidsscanner wordt uitgevoerd." + +#: wpvulnerability-admin.php:1063 wpvulnerability-adminms.php:1336 +msgid "API Response Logs" +msgstr "API-responslogboeken" + +#: wpvulnerability-admin.php:1073 wpvulnerability-adminms.php:1346 +msgid "Show:" +msgstr "Weergeven:" + +#: wpvulnerability-admin.php:1082 wpvulnerability-adminms.php:1355 +msgid "Apply" +msgstr "Toepassen" + +#. translators: 1: first item, 2: last item, 3: total items +#: wpvulnerability-admin.php:1090 wpvulnerability-adminms.php:1363 +#, php-format +msgid "Showing %1$s–%2$s of %3$s" +msgstr "%1$s–%2$s van %3$s weergegeven" + +#: wpvulnerability-admin.php:1106 wpvulnerability-adminms.php:1379 +msgid "Actions" +msgstr "Acties" + +#: wpvulnerability-admin.php:1133 wpvulnerability-admin.php:3957 +#: wpvulnerability-adminms.php:1406 wpvulnerability-adminms.php:4151 +msgid "View" +msgstr "Bekijken" + +#: wpvulnerability-admin.php:1150 wpvulnerability-adminms.php:1423 +msgid "Danger Zone" +msgstr "Gevarenzone" + +#: wpvulnerability-admin.php:1152 wpvulnerability-adminms.php:1425 +msgid "Permanently delete all API response logs. This action cannot be undone." +msgstr "Alle API-responslogboeken permanent verwijderen. Deze actie kan niet ongedaan worden gemaakt." + +#: wpvulnerability-admin.php:1154 wpvulnerability-adminms.php:1427 +msgid "Are you sure you want to delete all logs? This action cannot be undone." +msgstr "Weet u zeker dat u alle logboeken wilt verwijderen? Deze actie kan niet ongedaan worden gemaakt." + +#: wpvulnerability-admin.php:1157 wpvulnerability-adminms.php:1430 +msgid "Delete All Logs" +msgstr "Alle logboeken verwijderen" + +#: wpvulnerability-admin.php:1201 wpvulnerability-adminms.php:1474 +msgid "Reload Data from API" +msgstr "Gegevens opnieuw laden vanuit API" + +#: wpvulnerability-admin.php:1204 wpvulnerability-adminms.php:1477 +msgid "" +"Reload all Core, Plugins, Themes and other components information directly " +"from the API to have updated data. This will clear the cache and fetch fresh " +"vulnerability information." +msgstr "" +"Alle Core-, plugin-, thema- en andere componenteninformatie direct " +"opnieuw laden vanuit de API voor actuele gegevens. Dit wist de cache en haalt nieuwe " +"kwetsbaarheidsinformatie op." + +#: wpvulnerability-admin.php:1209 wpvulnerability-adminms.php:1482 +msgid "Reload Data" +msgstr "Gegevens opnieuw laden" + +#: wpvulnerability-admin.php:1218 wpvulnerability-adminms.php:1491 +msgid "Test Email Notifications" +msgstr "Test e-mailmeldingen" + +#: wpvulnerability-admin.php:1221 wpvulnerability-adminms.php:1494 +msgid "" +"Send a test email notification with current vulnerability data to verify " +"your email configuration is working correctly." +msgstr "" +"Stuur een test-e-mailmelding met actuele kwetsbaarheidsgegevens om te controleren " +"of uw e-mailconfiguratie correct werkt." + +#: wpvulnerability-admin.php:1231 wpvulnerability-adminms.php:1504 +msgid "From address (configured via constant):" +msgstr "Afzenderadres (geconfigureerd via constante):" + +#: wpvulnerability-admin.php:1243 wpvulnerability-adminms.php:1516 +msgid "From address (default):" +msgstr "Afzenderadres (standaard):" + +#: wpvulnerability-admin.php:1252 wpvulnerability-adminms.php:1525 +msgid "Learn how to customize the email sender address →" +msgstr "Leer hoe u het e-mailafzenderadres kunt aanpassen →" + +#: wpvulnerability-admin.php:1258 wpvulnerability-adminms.php:1531 +msgid "Send Test Email" +msgstr "Test-e-mail verzenden" + +#: wpvulnerability-admin.php:1267 wpvulnerability-adminms.php:1540 +msgid "WP-Cron Status" +msgstr "WP-cron-status" + +#: wpvulnerability-admin.php:1270 wpvulnerability-adminms.php:1543 +msgid "" +"View and manage WP-Cron scheduled events. Compare expected schedules with " +"actual cron jobs to ensure automated tasks are running correctly." +msgstr "" +"WP-cron geplande gebeurtenissen weergeven en beheren. Vergelijk verwachte planningen met " +"werkelijke cron-taken om te controleren of geautomatiseerde taken correct worden uitgevoerd." + +#: wpvulnerability-admin.php:1275 wpvulnerability-adminms.php:1548 +msgid "No cron data available." +msgstr "Geen cron-gegevens beschikbaar." + +#: wpvulnerability-admin.php:1281 wpvulnerability-adminms.php:1554 +msgid "Hook" +msgstr "Hook" + +#: wpvulnerability-admin.php:1282 wpvulnerability-adminms.php:1555 +msgid "Expected" +msgstr "Verwacht" + +#: wpvulnerability-admin.php:1283 wpvulnerability-adminms.php:1556 +msgid "Found" +msgstr "Gevonden" + +#: wpvulnerability-admin.php:1284 wpvulnerability-adminms.php:1557 +msgid "Next Run" +msgstr "Volgende uitvoering" + +#: wpvulnerability-admin.php:1285 wpvulnerability-admin.php:3236 +#: wpvulnerability-admin.php:3559 wpvulnerability-adminms.php:1558 +#: wpvulnerability-adminms.php:3413 wpvulnerability-adminms.php:3753 +msgid "Status" +msgstr "Status" + +#: wpvulnerability-admin.php:1299 wpvulnerability-adminms.php:1572 +msgid "Not expected" +msgstr "Niet verwacht" + +#: wpvulnerability-admin.php:1321 wpvulnerability-adminms.php:1594 +#: wpvulnerability-general.php:1871 wpvulnerability-general.php:1872 +msgid "None" +msgstr "Geen" + +#: wpvulnerability-admin.php:1356 wpvulnerability-adminms.php:1629 +msgid "OK" +msgstr "OK" + +#: wpvulnerability-admin.php:1366 wpvulnerability-adminms.php:1639 +msgid "⚠️ Unexpected WPVulnerability Events" +msgstr "⚠️ Onverwachte WPVulnerability-gebeurtenissen" + +#: wpvulnerability-admin.php:1383 wpvulnerability-adminms.php:1656 +msgid "No interval" +msgstr "Geen interval" + +#: wpvulnerability-admin.php:1390 wpvulnerability-adminms.php:1663 +msgid "Next:" +msgstr "Volgende:" + +#: wpvulnerability-admin.php:1400 wpvulnerability-adminms.php:1673 +msgid "Repair Cron Events" +msgstr "Cron-gebeurtenissen repareren" + +#: wpvulnerability-admin.php:1408 wpvulnerability-adminms.php:1681 +msgid "Uninstall Data" +msgstr "Verwijderingsgegevens" + +#: wpvulnerability-admin.php:1410 wpvulnerability-adminms.php:1683 +msgid "" +"By default, all plugin data is preserved when WPVulnerability is deleted. " +"Enable the option below only if you want all options, logs, and cached data " +"permanently removed on uninstall." +msgstr "" +"Standaard worden alle plugin-gegevens bewaard wanneer WPVulnerability wordt verwijderd. " +"Schakel de onderstaande optie alleen in als u wilt dat alle opties, logboeken en gecachede gegevens " +"permanent worden verwijderd bij het verwijderen." + +#: wpvulnerability-admin.php:1420 wpvulnerability-adminms.php:1693 +msgid "Delete all plugin data on uninstall" +msgstr "Alle plugin-gegevens verwijderen bij het verwijderen" + +#: wpvulnerability-admin.php:1423 wpvulnerability-adminms.php:1696 +msgid "" +"Default: unchecked (data preserved). Check only if you want a clean removal." +msgstr "" +"Standaard: niet aangevinkt (gegevens bewaard). Alleen aanvinken als u een volledige verwijdering wilt." + +#: wpvulnerability-admin.php:1425 wpvulnerability-adminms.php:1698 +msgid "Save preference" +msgstr "Voorkeur opslaan" + +#: wpvulnerability-admin.php:1432 wpvulnerability-adminms.php:1705 +msgid "Reset WPVulnerability" +msgstr "WPVulnerability resetten" + +#: wpvulnerability-admin.php:1434 wpvulnerability-adminms.php:1707 +msgid "" +"Delete all WPVulnerability settings, cached data, logs, and scheduled " +"events, then restore defaults and reload data from the API." +msgstr "" +"Alle WPVulnerability-instellingen, gecachede gegevens, logboeken en geplande " +"gebeurtenissen verwijderen, daarna standaardinstellingen herstellen en gegevens opnieuw laden vanuit de API." + +#: wpvulnerability-admin.php:1436 wpvulnerability-adminms.php:1709 +msgid "This action cannot be undone." +msgstr "Deze actie kan niet ongedaan worden gemaakt." + +#: wpvulnerability-admin.php:1438 wpvulnerability-adminms.php:1711 +msgid "" +"Are you sure you want to reset all WPVulnerability data? This action cannot " +"be undone." +msgstr "" +"Weet u zeker dat u alle WPVulnerability-gegevens wilt resetten? Deze actie kan " +"niet ongedaan worden gemaakt." + +#: wpvulnerability-admin.php:1441 wpvulnerability-adminms.php:1713 +msgid "Reset Plugin" +msgstr "Plugin resetten" + +#: wpvulnerability-admin.php:1468 wpvulnerability-adminms.php:1740 +msgid "Vulnerability Database Statistics" +msgstr "Statistieken kwetsbaarhedendatabase" + +#. translators: number of vulnerabilities. +#: wpvulnerability-admin.php:1510 wpvulnerability-adminms.php:1782 +#, php-format +msgid "%s vulnerability" +msgid_plural "%s vulnerabilities" +msgstr[0] "%s kwetsbaarheid" +msgstr[1] "%s kwetsbaarheden" + +#. translators: number of products. +#: wpvulnerability-admin.php:1520 wpvulnerability-adminms.php:1792 +#, php-format +msgid "(%s product)" +msgid_plural "(%s products)" +msgstr[0] "(%s product)" +msgstr[1] "(%s producten)" + +#: wpvulnerability-admin.php:1527 wpvulnerability-adminms.php:1799 +msgid "No data" +msgstr "Geen gegevens" + +#. translators: date of last update. +#: wpvulnerability-admin.php:1544 wpvulnerability-adminms.php:1814 +#, php-format +msgid "Database last updated: %s" +msgstr "Database voor het laatste bijgewerkt: %s" + +#: wpvulnerability-admin.php:1566 wpvulnerability-adminms.php:1836 +msgid "Intelligence Sources" +msgstr "Informatiebronnen" + +#: wpvulnerability-admin.php:1567 wpvulnerability-adminms.php:1837 +msgid "Number of vulnerabilities contributed by each intelligence source." +msgstr "Aantal kwetsbaarheden bijgedragen door elke informatiebron." + +#: wpvulnerability-admin.php:1571 wpvulnerability-adminms.php:1841 +msgid "Source" +msgstr "Bron" + +#: wpvulnerability-admin.php:1572 wpvulnerability-admin.php:2104 +#: wpvulnerability-adminms.php:1842 wpvulnerability-adminms.php:2261 +msgid "Core" +msgstr "Core" + +#: wpvulnerability-admin.php:1603 wpvulnerability-adminms.php:1873 +msgid "Sponsors" +msgstr "Sponsors" + +#: wpvulnerability-admin.php:1626 wpvulnerability-adminms.php:1896 +msgid "No sponsor data available." +msgstr "Geen sponsorgegevens beschikbaar." + +#: wpvulnerability-admin.php:1633 wpvulnerability-adminms.php:1903 +msgid "Contributors" +msgstr "Bijdragers" + +#: wpvulnerability-admin.php:1656 wpvulnerability-adminms.php:1926 +msgid "No contributor data available." +msgstr "Geen gegevens over bijdragers beschikbaar." + +#: wpvulnerability-admin.php:1674 wpvulnerability-adminms.php:432 +msgid "You do not have sufficient permissions to access this page." +msgstr "U heeft onvoldoende rechten om deze pagina te openen." + +#: wpvulnerability-admin.php:1684 wpvulnerability-adminms.php:441 +msgid "WPVulnerability settings" +msgstr "WPVulnerability instellingen" + +#: wpvulnerability-admin.php:1801 wpvulnerability-adminms.php:1963 +msgid "Configure and save these settings to receive notifications." +msgstr "" +"Configureer en sla deze instellingen op om e-mailmeldingen te ontvangen." + +#: wpvulnerability-admin.php:1814 wpvulnerability-adminms.php:2071 +msgid "Configure and save these settings to hide vulnerabilities." +msgstr "Configureer en sla deze instellingen op om kwetsbaarheden te verbergen." + +#: wpvulnerability-admin.php:1845 wpvulnerability-adminms.php:1993 +msgid "Default administrator email" +msgstr "Standaard e-mailadres beheerder" + +#: wpvulnerability-admin.php:1909 wpvulnerability-adminms.php:2057 +msgid "Read more if you want to force the cache time." +msgstr "Meer lezen als u de cachetijd wilt forceren." + +#: wpvulnerability-admin.php:1939 wpvulnerability-adminms.php:2099 +msgid "Never" +msgstr "Nooit" + +#: wpvulnerability-admin.php:1944 wpvulnerability-adminms.php:2104 +msgid "Daily" +msgstr "Dagelijks" + +#: wpvulnerability-admin.php:1949 wpvulnerability-adminms.php:2109 +msgid "Weekly" +msgstr "Wekelijks" + +#: wpvulnerability-admin.php:1953 wpvulnerability-adminms.php:2113 +msgid "Day" +msgstr "Dag" + +#: wpvulnerability-admin.php:1966 wpvulnerability-adminms.php:2126 +msgid "Hour" +msgstr "Uur" + +#: wpvulnerability-admin.php:1968 wpvulnerability-adminms.php:2128 +msgid "Minute" +msgstr "Minuut" + +#: wpvulnerability-admin.php:2166 wpvulnerability-adminms.php:2323 +msgid "Read more about how to force the deactivation of an item." +msgstr "Meer lezen over het geforceerd deactiveren van een item." + +#: wpvulnerability-admin.php:2292 wpvulnerability-adminms.php:2870 +msgid "" +"Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com" +msgstr "" +"Ongeldige Slack webhook-URL. Moet een geldige HTTPS-URL zijn van hooks.slack.com." + +#: wpvulnerability-admin.php:2315 wpvulnerability-adminms.php:2893 +msgid "" +"Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office." +"com, office365.com, or api.hooks.microsoft.com" +msgstr "" +"Ongeldige Microsoft Teams webhook-URL. Moet een geldige HTTPS-URL zijn van office." +"com, office365.com of api.hooks.microsoft.com." + +#: wpvulnerability-admin.php:2338 wpvulnerability-adminms.php:2916 +msgid "" +"Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or " +"discordapp.com" +msgstr "" +"Ongeldige Discord webhook-URL. Moet een geldige HTTPS-URL zijn van discord.com of " +"discordapp.com." + +#: wpvulnerability-admin.php:2357 wpvulnerability-adminms.php:2935 +msgid "" +"Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-" +"zyx57W2v1u123ew11" +msgstr "" +"Ongeldig Telegram-bot-tokenformaat. Moet er zo uitzien: 123456:ABC-DEF1234ghIkl-" +"zyx57W2v1u123ew11." + +#: wpvulnerability-admin.php:2493 wpvulnerability-adminms.php:2400 +msgid "All Clear" +msgstr "Alles in orde" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2503 wpvulnerability-adminms.php:2410 +#, php-format +msgid "%d Critical Issue Found" +msgid_plural "%d Critical Issues Found" +msgstr[0] "%d kritiek probleem gevonden" +msgstr[1] "%d kritieke problemen gevonden" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2508 wpvulnerability-adminms.php:2415 +#, php-format +msgid "%d Issue Found" +msgid_plural "%d Issues Found" +msgstr[0] "%d probleem gevonden" +msgstr[1] "%d problemen gevonden" + +#: wpvulnerability-admin.php:2515 wpvulnerability-adminms.php:2422 +msgid "Never checked" +msgstr "Nooit gecontroleerd" + +#. translators: %d: number of minutes +#: wpvulnerability-admin.php:2523 wpvulnerability-adminms.php:2430 +#, php-format +msgid "%d minute ago" +msgid_plural "%d minutes ago" +msgstr[0] "%d minuut geleden" +msgstr[1] "%d minuten geleden" + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:2527 wpvulnerability-adminms.php:2434 +#, php-format +msgid "%d hour ago" +msgid_plural "%d hours ago" +msgstr[0] "%d uur geleden" +msgstr[1] "%d uur geleden" + +#. translators: %s: time since last check +#: wpvulnerability-admin.php:2539 wpvulnerability-adminms.php:2446 +#, php-format +msgid "Last checked: %s" +msgstr "Laatst gecontroleerd: %s" + +#: wpvulnerability-admin.php:2540 wpvulnerability-adminms.php:2447 +msgid "Refresh Now" +msgstr "Nu vernieuwen" + +#: wpvulnerability-admin.php:2547 wpvulnerability-adminms.php:2454 +msgid "No vulnerabilities detected" +msgstr "Geen kwetsbaarheden gedetecteerd" + +#: wpvulnerability-admin.php:2548 wpvulnerability-adminms.php:2455 +msgid "Your site is up to date and secure" +msgstr "Uw site is up-to-date en veilig" + +#: wpvulnerability-admin.php:2616 wpvulnerability-adminms.php:2523 +msgid "Server Software" +msgstr "Serversoftware" + +#: wpvulnerability-admin.php:2829 wpvulnerability-adminms.php:2736 +msgid "Site Health" +msgstr "Site-gezondheid" + +#: wpvulnerability-admin.php:2831 wpvulnerability-adminms.php:2738 +#: wpvulnerability-run.php:33 +msgid "Settings" +msgstr "Instellingen" + +#: wpvulnerability-admin.php:2846 wpvulnerability-adminms.php:2754 +msgid "WPVulnerability Status" +msgstr "WPVulnerability-status" + +#: wpvulnerability-admin.php:2878 wpvulnerability-adminms.php:3052 +msgid "Receive vulnerability notifications" +msgstr "Kwetsbaarheidsmeldingen ontvangen" + +#: wpvulnerability-admin.php:2886 wpvulnerability-adminms.php:3060 +msgid "Cache expiration time" +msgstr "Cache-vervaltijd" + +#: wpvulnerability-admin.php:2895 wpvulnerability-adminms.php:3069 +msgid "How often you want to receive notifications" +msgstr "Hoe vaak je meldingen wilt ontvangen" + +#: wpvulnerability-admin.php:2904 wpvulnerability-adminms.php:3078 +msgid "Where do you want to receive notifications?" +msgstr "Waar wilt u meldingen ontvangen?" + +#: wpvulnerability-admin.php:2913 wpvulnerability-adminms.php:3087 +msgid "Email addresses to notify (separated by commas)" +msgstr "E-mailadressen voor meldingen (gescheiden door komma's)" + +#: wpvulnerability-admin.php:2922 wpvulnerability-adminms.php:3096 +msgid "Slack webhook URL" +msgstr "Slack webhook-URL" + +#: wpvulnerability-admin.php:2931 wpvulnerability-adminms.php:3105 +msgid "Teams webhook URL" +msgstr "Teams webhook-URL" + +#: wpvulnerability-admin.php:2950 wpvulnerability-adminms.php:3126 +msgid "Vulnerabilities to hide" +msgstr "Te verbergen kwetsbaarheden" + +#: wpvulnerability-admin.php:2958 wpvulnerability-adminms.php:3134 +msgid "What do you want to hide?" +msgstr "Wat wilt u verbergen?" + +#: wpvulnerability-admin.php:3008 wpvulnerability-adminms.php:3185 +msgid "Standard (Hybrid Detection)" +msgstr "Standaard (hybride detectie)" + +#: wpvulnerability-admin.php:3009 wpvulnerability-adminms.php:3186 +msgid "Strict (Extensions Only)" +msgstr "Strikt (alleen extensies)" + +#: wpvulnerability-admin.php:3010 wpvulnerability-adminms.php:3187 +msgid "Disabled (No Detection)" +msgstr "Uitgeschakeld (geen detectie)" + +#: wpvulnerability-admin.php:3016 wpvulnerability-adminms.php:3193 +msgid "Security Status" +msgstr "Beveiligingsstatus" + +#: wpvulnerability-admin.php:3020 wpvulnerability-adminms.php:3197 +msgid "Security Mode" +msgstr "Beveiligingsmodus" + +#: wpvulnerability-admin.php:3025 wpvulnerability-adminms.php:3202 +msgid "Shell Execution" +msgstr "Shell-uitvoering" + +#: wpvulnerability-admin.php:3027 wpvulnerability-admin.php:3475 +#: wpvulnerability-admin.php:3483 wpvulnerability-adminms.php:3204 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Enabled" +msgstr "Ingeschakeld" + +#: wpvulnerability-admin.php:3034 wpvulnerability-adminms.php:3211 +msgid "Audit Logging" +msgstr "Auditregistratie" + +#. translators: %d: number of days +#: wpvulnerability-admin.php:3039 wpvulnerability-adminms.php:3216 +#, php-format +msgid "Enabled (%d days)" +msgstr "Ingeschakeld (%d dagen)" + +#: wpvulnerability-admin.php:3048 wpvulnerability-adminms.php:3225 +msgid "Total Log Entries" +msgstr "Totaal logboekvermeldingen" + +#: wpvulnerability-admin.php:3055 wpvulnerability-adminms.php:3232 +msgid "Last Shell Execution" +msgstr "Laatste shell-uitvoering" + +#. translators: %s: time ago +#: wpvulnerability-admin.php:3061 wpvulnerability-admin.php:3266 +#: wpvulnerability-adminms.php:3238 wpvulnerability-adminms.php:3441 +#, php-format +msgid "%s ago" +msgstr "%s geleden" + +#: wpvulnerability-admin.php:3073 wpvulnerability-adminms.php:3250 +msgid "" +"Configure security settings via wp-config.php constants: " +"WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, " +"WPVULNERABILITY_SHELL_EXEC_WHITELIST." +msgstr "" +"Beveiligingsinstellingen configureren via wp-config.php-constanten: " +"WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, " +"WPVULNERABILITY_SHELL_EXEC_WHITELIST." + +#. translators: %s: URL to security documentation +#: wpvulnerability-admin.php:3079 wpvulnerability-adminms.php:3256 +#, php-format +msgid "" +"See security " +"configuration documentation for details." +msgstr "" +"Zie documentatie over beveiligingsconfiguratie " +"voor details." + +#: wpvulnerability-admin.php:3103 wpvulnerability-adminms.php:3280 +msgid "Memcached" +msgstr "Memcached" + +#: wpvulnerability-admin.php:3131 wpvulnerability-adminms.php:3308 +msgid "Imagick Extension" +msgstr "Imagick-extensie" + +#: wpvulnerability-admin.php:3132 wpvulnerability-adminms.php:3309 +msgid "Redis Extension" +msgstr "Redis-extensie" + +#: wpvulnerability-admin.php:3133 wpvulnerability-adminms.php:3310 +msgid "Memcached Extension" +msgstr "Memcached-extensie" + +#: wpvulnerability-admin.php:3134 wpvulnerability-adminms.php:3311 +msgid "Memcache Extension" +msgstr "Memcache-extensie" + +#: wpvulnerability-admin.php:3135 wpvulnerability-adminms.php:3312 +msgid "SQLite3 Extension" +msgstr "SQLite3-extensie" + +#: wpvulnerability-admin.php:3136 wpvulnerability-adminms.php:3313 +msgid "PDO SQLite" +msgstr "PDO SQLite" + +#: wpvulnerability-admin.php:3137 wpvulnerability-adminms.php:3314 +msgid "Shell Command" +msgstr "Shell-commando" + +#: wpvulnerability-admin.php:3138 wpvulnerability-adminms.php:3315 +msgid "Binary Check" +msgstr "Binaire controle" + +#: wpvulnerability-admin.php:3139 wpvulnerability-adminms.php:3316 +msgid "Not Detected" +msgstr "Niet gedetecteerd" + +#: wpvulnerability-admin.php:3143 wpvulnerability-adminms.php:3320 +msgid "Software Detection Methods" +msgstr "Software-detectiemethoden" + +#: wpvulnerability-admin.php:3144 wpvulnerability-adminms.php:3321 +msgid "" +"Shows which detection method was used for each software component and the " +"reliability score." +msgstr "" +"Toont welke detectiemethode is gebruikt voor elk softwarecomponent en de " +"betrouwbaarheidsscore." + +#: wpvulnerability-admin.php:3149 wpvulnerability-admin.php:3234 +#: wpvulnerability-admin.php:3558 wpvulnerability-adminms.php:3326 +#: wpvulnerability-adminms.php:3411 wpvulnerability-adminms.php:3752 +msgid "Component" +msgstr "Component" + +#: wpvulnerability-admin.php:3150 wpvulnerability-adminms.php:3327 +msgid "Version" +msgstr "Versie" + +#: wpvulnerability-admin.php:3151 wpvulnerability-adminms.php:3328 +msgid "Detection Method" +msgstr "Detectiemethode" + +#: wpvulnerability-admin.php:3152 wpvulnerability-adminms.php:3329 +msgid "Reliability" +msgstr "Betrouwbaarheid" + +#: wpvulnerability-admin.php:3164 wpvulnerability-adminms.php:3341 +msgid "Not detected" +msgstr "Niet gedetecteerd" + +#: wpvulnerability-admin.php:3220 wpvulnerability-adminms.php:3397 +msgid "Shell Execution Audit Logs" +msgstr "Shell-uitvoering auditlogboeken" + +#: wpvulnerability-admin.php:3221 wpvulnerability-adminms.php:3398 +msgid "" +"Complete audit trail of shell command executions for security monitoring." +msgstr "" +"Volledig auditspoor van shell-opdrachtuitvoeringen voor beveiligingsmonitoring." + +#: wpvulnerability-admin.php:3226 wpvulnerability-adminms.php:3403 +msgid "No shell execution logs found." +msgstr "Geen shell-uitvoeringslogboeken gevonden." + +#: wpvulnerability-admin.php:3227 wpvulnerability-adminms.php:3404 +msgid "" +"Logs will appear here when shell commands are executed for software " +"detection." +msgstr "" +"Logboeken verschijnen hier wanneer shell-opdrachten worden uitgevoerd voor software-" +"detectie." + +#: wpvulnerability-admin.php:3233 wpvulnerability-adminms.php:3410 +msgid "Time" +msgstr "Tijd" + +#: wpvulnerability-admin.php:3235 wpvulnerability-adminms.php:3412 +msgid "Command" +msgstr "Opdracht" + +#: wpvulnerability-admin.php:3237 wpvulnerability-adminms.php:3414 +msgid "User" +msgstr "Gebruiker" + +#: wpvulnerability-admin.php:3238 wpvulnerability-adminms.php:3415 +msgid "Output" +msgstr "Uitvoer" + +#. translators: %d: number of logs shown +#: wpvulnerability-admin.php:3302 wpvulnerability-adminms.php:3477 +#, php-format +msgid "Showing the %d most recent log entries." +msgstr "De %d meest recente logboekvermeldingen worden weergegeven." + +#: wpvulnerability-admin.php:3320 wpvulnerability-adminms.php:3565 +msgid "Invalid nonce." +msgstr "Ongeldige nonce." + +#: wpvulnerability-admin.php:3325 wpvulnerability-adminms.php:3570 +msgid "Insufficient permissions." +msgstr "Onvoldoende rechten." + +#: wpvulnerability-admin.php:3331 wpvulnerability-adminms.php:3576 +msgid "No component specified." +msgstr "Geen component opgegeven." + +#: wpvulnerability-admin.php:3366 wpvulnerability-adminms.php:3524 +msgid "Debug Information" +msgstr "Debug-informatie" + +#: wpvulnerability-admin.php:3368 wpvulnerability-adminms.php:3526 +msgid "This tab is only visible when WP_DEBUG is enabled. Use with caution." +msgstr "Dit tabblad is alleen zichtbaar wanneer WP_DEBUG is ingeschakeld. Gebruik met voorzichtigheid." + +#: wpvulnerability-admin.php:3429 wpvulnerability-adminms.php:3623 +msgid "System Information" +msgstr "Systeeminformatie" + +#: wpvulnerability-admin.php:3433 wpvulnerability-adminms.php:3627 +msgid "WordPress Version" +msgstr "WordPress-versie" + +#: wpvulnerability-admin.php:3437 wpvulnerability-adminms.php:3631 +msgid "Multisite" +msgstr "Multisite" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "Yes" +msgstr "Ja" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "No" +msgstr "Nee" + +#: wpvulnerability-admin.php:3441 wpvulnerability-adminms.php:3635 +msgid "Language" +msgstr "Taal" + +#: wpvulnerability-admin.php:3445 wpvulnerability-adminms.php:3639 +msgid "PHP Version" +msgstr "PHP-versie" + +#: wpvulnerability-admin.php:3449 wpvulnerability-adminms.php:3643 +msgid "PHP Extensions" +msgstr "PHP-extensies" + +#: wpvulnerability-admin.php:3460 wpvulnerability-adminms.php:3654 +msgid "PHP Memory Limit" +msgstr "PHP-geheugenlimiet" + +#: wpvulnerability-admin.php:3464 wpvulnerability-adminms.php:3658 +msgid "Database" +msgstr "Database" + +#: wpvulnerability-admin.php:3468 wpvulnerability-adminms.php:3662 +msgid "Web Server" +msgstr "Webserver" + +#: wpvulnerability-admin.php:3472 wpvulnerability-adminms.php:3666 +msgid "WP_DEBUG" +msgstr "WP_DEBUG" + +#: wpvulnerability-admin.php:3480 wpvulnerability-adminms.php:3674 +msgid "WP_DEBUG_LOG" +msgstr "WP_DEBUG_LOG" + +#: wpvulnerability-admin.php:3490 wpvulnerability-adminms.php:3684 +msgid "Path:" +msgstr "Pad:" + +#. translators: %s: file size +#: wpvulnerability-admin.php:3499 wpvulnerability-adminms.php:3698 +#, php-format +msgid "Size: %s" +msgstr "Grootte: %s" + +#: wpvulnerability-admin.php:3510 wpvulnerability-adminms.php:3704 +msgid "View Log File" +msgstr "Logboekbestand bekijken" + +#: wpvulnerability-admin.php:3516 wpvulnerability-adminms.php:3710 +msgid "Log file is not web-accessible (outside wp-content)" +msgstr "Logboekbestand is niet toegankelijk via het web (buiten wp-content)" + +#: wpvulnerability-admin.php:3522 wpvulnerability-adminms.php:3716 +msgid "Log file does not exist yet" +msgstr "Logboekbestand bestaat nog niet" + +#: wpvulnerability-admin.php:3530 wpvulnerability-adminms.php:3724 +msgid "Plugin Version" +msgstr "Plugin-versie" + +#: wpvulnerability-admin.php:3554 wpvulnerability-adminms.php:3748 +msgid "Component Detection" +msgstr "Componentdetectie" + +#: wpvulnerability-admin.php:3560 wpvulnerability-adminms.php:3754 +msgid "Version Detected" +msgstr "Versie gedetecteerd" + +#: wpvulnerability-admin.php:3561 wpvulnerability-adminms.php:3755 +msgid "Analyzed" +msgstr "Geanalyseerd" + +#: wpvulnerability-admin.php:3562 wpvulnerability-adminms.php:3756 +msgid "Cache Status" +msgstr "Cache-status" + +#: wpvulnerability-admin.php:3622 wpvulnerability-adminms.php:3816 +msgid "Configuration Summary" +msgstr "Configuratieoverzicht" + +#: wpvulnerability-admin.php:3626 wpvulnerability-adminms.php:3820 +msgid "Cache Duration" +msgstr "Cache-duur" + +#: wpvulnerability-admin.php:3636 wpvulnerability-adminms.php:3830 +msgid "Log Retention" +msgstr "Logboekbewaring" + +#: wpvulnerability-admin.php:3646 wpvulnerability-adminms.php:3840 +msgid "Components Analyzed" +msgstr "Geanalyseerde componenten" + +#: wpvulnerability-admin.php:3661 wpvulnerability-adminms.php:3855 +msgid "Notification Email" +msgstr "Meldings-e-mail" + +#: wpvulnerability-admin.php:3682 wpvulnerability-adminms.php:3876 +msgid "Slack Webhook" +msgstr "Slack-webhook" + +#: wpvulnerability-admin.php:3692 wpvulnerability-admin.php:3712 +#: wpvulnerability-admin.php:3732 wpvulnerability-admin.php:3752 +#: wpvulnerability-adminms.php:3886 wpvulnerability-adminms.php:3906 +#: wpvulnerability-adminms.php:3926 wpvulnerability-adminms.php:3946 +msgid "Configured & Enabled" +msgstr "Geconfigureerd & ingeschakeld" + +#: wpvulnerability-admin.php:3694 wpvulnerability-admin.php:3714 +#: wpvulnerability-admin.php:3734 wpvulnerability-admin.php:3754 +#: wpvulnerability-adminms.php:3888 wpvulnerability-adminms.php:3908 +#: wpvulnerability-adminms.php:3928 wpvulnerability-adminms.php:3948 +msgid "Configured (Disabled)" +msgstr "Geconfigureerd (uitgeschakeld)" + +#: wpvulnerability-admin.php:3696 wpvulnerability-admin.php:3716 +#: wpvulnerability-admin.php:3736 wpvulnerability-admin.php:3756 +#: wpvulnerability-adminms.php:3890 wpvulnerability-adminms.php:3910 +#: wpvulnerability-adminms.php:3930 wpvulnerability-adminms.php:3950 +msgid "Not configured" +msgstr "Niet geconfigureerd" + +#: wpvulnerability-admin.php:3703 wpvulnerability-adminms.php:3897 +msgid "Teams Webhook" +msgstr "Teams-webhook" + +#: wpvulnerability-admin.php:3723 wpvulnerability-adminms.php:3917 +msgid "Discord Webhook" +msgstr "Discord-webhook" + +#: wpvulnerability-admin.php:3743 wpvulnerability-adminms.php:3937 +msgid "Telegram Bot" +msgstr "Telegram-bot" + +#: wpvulnerability-admin.php:3788 wpvulnerability-adminms.php:3982 +msgid "Cron Status" +msgstr "Cron-status" + +#: wpvulnerability-admin.php:3792 wpvulnerability-adminms.php:3986 +msgid "Update Database" +msgstr "Database bijwerken" + +#. translators: %s: date and time +#: wpvulnerability-admin.php:3797 wpvulnerability-admin.php:3810 +#: wpvulnerability-adminms.php:3991 wpvulnerability-adminms.php:4004 +#, php-format +msgid "Next run: %s" +msgstr "Volgende uitvoering: %s" + +#: wpvulnerability-admin.php:3800 wpvulnerability-admin.php:3813 +#: wpvulnerability-adminms.php:3994 wpvulnerability-adminms.php:4007 +msgid "Not scheduled" +msgstr "Niet gepland" + +#: wpvulnerability-admin.php:3805 wpvulnerability-adminms.php:3999 +msgid "Send Notification" +msgstr "Melding verzenden" + +#: wpvulnerability-admin.php:3826 wpvulnerability-adminms.php:4020 +msgid "Run Update Now" +msgstr "Update nu uitvoeren" + +#: wpvulnerability-admin.php:3834 wpvulnerability-adminms.php:4028 +msgid "Run Notification Now" +msgstr "Melding nu verzenden" + +#: wpvulnerability-admin.php:3840 wpvulnerability-adminms.php:4034 +msgid "You do not have permission to run these actions." +msgstr "U heeft geen toestemming om deze acties uit te voeren." + +#: wpvulnerability-admin.php:3859 wpvulnerability-adminms.php:4053 +msgid "API Testing" +msgstr "API-testen" + +#: wpvulnerability-admin.php:3862 wpvulnerability-adminms.php:4056 +msgid "" +"Test API connectivity for each component. Click a button to send a test " +"request." +msgstr "" +"API-verbinding testen voor elk component. Klik op een knop om een testverzoek " +"te sturen." + +#. translators: %s: component name +#: wpvulnerability-admin.php:3869 wpvulnerability-adminms.php:4063 +#, php-format +msgid "Test %s" +msgstr "%s testen" + +#: wpvulnerability-admin.php:3884 wpvulnerability-adminms.php:4078 +msgid "Testing..." +msgstr "Testen..." + +#: wpvulnerability-admin.php:3900 wpvulnerability-adminms.php:4094 +msgid "HTTP Code:" +msgstr "HTTP-code:" + +#: wpvulnerability-admin.php:3901 wpvulnerability-adminms.php:4095 +msgid "Response Time:" +msgstr "Responstijd:" + +#: wpvulnerability-admin.php:3903 wpvulnerability-adminms.php:4097 +msgid "Response Preview" +msgstr "Responsvoorbeeld" + +#: wpvulnerability-admin.php:3910 wpvulnerability-admin.php:3914 +#: wpvulnerability-adminms.php:4104 wpvulnerability-adminms.php:4108 +msgid "Test" +msgstr "Test" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "Error:" +msgstr "Fout:" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "AJAX request failed." +msgstr "AJAX-verzoek mislukt." + +#: wpvulnerability-admin.php:3922 wpvulnerability-adminms.php:4116 +msgid "You do not have permission to test API connectivity." +msgstr "U heeft geen toestemming om de API-verbinding te testen." + +#: wpvulnerability-admin.php:3943 wpvulnerability-adminms.php:4137 +msgid "Database Options Viewer" +msgstr "Database-optiesviewer" + +#: wpvulnerability-admin.php:3944 wpvulnerability-adminms.php:4138 +msgid "View the raw data stored in WordPress options." +msgstr "De ruwe gegevens bekijken die zijn opgeslagen in WordPress-opties." + +#: wpvulnerability-admin.php:3950 wpvulnerability-adminms.php:4144 +msgid "Select an option..." +msgstr "Selecteer een optie..." + +#: wpvulnerability-admin.php:3969 wpvulnerability-adminms.php:4163 +msgid "Option not found or empty." +msgstr "Optie niet gevonden of leeg." + +#: wpvulnerability-admin.php:3987 wpvulnerability-adminms.php:4182 +msgid "Quick Actions" +msgstr "Snelle acties" + +#: wpvulnerability-admin.php:3988 wpvulnerability-adminms.php:4183 +msgid "Perform debugging actions. Use with caution." +msgstr "Debug-acties uitvoeren. Gebruik met voorzichtigheid." + +#: wpvulnerability-admin.php:3992 wpvulnerability-adminms.php:4187 +msgid "Are you sure you want to clear all caches?" +msgstr "Weet u zeker dat u alle caches wilt wissen?" + +#: wpvulnerability-admin.php:3996 wpvulnerability-adminms.php:4191 +msgid "Clear All Caches" +msgstr "Alle caches wissen" + +#: wpvulnerability-admin.php:4000 wpvulnerability-adminms.php:4195 +msgid "Are you sure you want to reset signatures?" +msgstr "Weet u zeker dat u de handtekeningen wilt resetten?" + +#: wpvulnerability-admin.php:4004 wpvulnerability-adminms.php:4199 +msgid "Reset Signatures" +msgstr "Handtekeningen resetten" + +#: wpvulnerability-admin.php:4012 wpvulnerability-adminms.php:4207 +msgid "Export Debug Info" +msgstr "Debug-informatie exporteren" + +#: wpvulnerability-admin.php:4018 wpvulnerability-adminms.php:4213 +msgid "You do not have permission to perform these actions." +msgstr "U heeft geen toestemming om deze acties uit te voeren." + +#: wpvulnerability-adminms.php:101 wpvulnerability-adminms.php:199 +msgid "Settings saved." +msgstr "Instellingen opgeslagen." + +#: wpvulnerability-adminms.php:277 +msgid "WPVulnerability cron events have been repaired across the network." +msgstr "WPVulnerability-cron-gebeurtenissen zijn netwerk-breed gerepareerd." + +#: wpvulnerability-adminms.php:3512 +msgid "You do not have permission to access this page." +msgstr "U heeft geen toestemming om deze pagina te openen." + +#. translators: 1: core version +#: wpvulnerability-core.php:33 +#, php-format +msgid "" +"WordPress %1$s has a known vulnerability that may be affecting your " +"installed version." +msgstr "" +"WordPress %1$s heeft een bekende kwetsbaarheid die mogelijk uw " +"geïnstalleerde versie beïnvloedt." + +#: wpvulnerability-core.php:115 wpvulnerability-plugins.php:207 +#: wpvulnerability-process.php:335 wpvulnerability-process.php:443 +#: wpvulnerability-process.php:529 wpvulnerability-themes.php:173 +#: wpvulnerability-themes.php:469 +msgid "Actively exploited" +msgstr "Actief misbruikt" + +#: wpvulnerability-core.php:122 wpvulnerability-plugins.php:214 +#: wpvulnerability-process.php:342 wpvulnerability-process.php:450 +#: wpvulnerability-themes.php:180 wpvulnerability-themes.php:476 +msgid "Public exploit" +msgstr "Publiek exploit" + +#: wpvulnerability-core.php:125 wpvulnerability-plugins.php:217 +#: wpvulnerability-process.php:345 wpvulnerability-process.php:453 +#: wpvulnerability-themes.php:183 wpvulnerability-themes.php:479 +msgid "Automatable" +msgstr "Automatiseerbaar" + +#: wpvulnerability-core.php:139 wpvulnerability-plugins.php:245 +#: wpvulnerability-process.php:371 wpvulnerability-process.php:469 +#: wpvulnerability-process.php:544 wpvulnerability-themes.php:211 +#: wpvulnerability-themes.php:503 +msgid "References:" +msgstr "Referenties:" + +#: wpvulnerability-debug.php:399 +msgid "Invalid component specified." +msgstr "Ongeldig component opgegeven." + +#: wpvulnerability-debug.php:423 +msgid "Version not detected for this component." +msgstr "Versie niet gedetecteerd voor dit component." + +#: wpvulnerability-debug.php:453 +msgid "API request successful." +msgstr "API-verzoek geslaagd." + +#. translators: %d: HTTP status code +#: wpvulnerability-debug.php:469 +#, php-format +msgid "API returned HTTP code %d." +msgstr "API heeft HTTP-code %d geretourneerd." + +#: wpvulnerability-general.php:355 +msgid "WPVulnerability Logs" +msgstr "WPVulnerability-logboeken" + +#: wpvulnerability-general.php:356 +msgid "WPVulnerability Log" +msgstr "WPVulnerability-logboek" + +#: wpvulnerability-general.php:1873 wpvulnerability-general.php:1874 +msgid "Low" +msgstr "Laag" + +#: wpvulnerability-general.php:1875 wpvulnerability-general.php:1876 +msgid "Medium" +msgstr "Medium" + +#: wpvulnerability-general.php:1877 wpvulnerability-general.php:1878 +msgid "High" +msgstr "Hoog" + +#: wpvulnerability-general.php:1879 wpvulnerability-general.php:1880 +msgid "Critical" +msgstr "Kritiek" + +#: wpvulnerability-general.php:2684 +msgid "WPVulnerability Shell Logs" +msgstr "WPVulnerability shell-logboeken" + +#: wpvulnerability-general.php:2685 +msgid "WPVulnerability Shell Log" +msgstr "WPVulnerability shell-logboek" + +#: wpvulnerability-notifications.php:30 +msgid "Every week" +msgstr "Elke week" + +#: wpvulnerability-notifications.php:57 +msgid "Every day" +msgstr "Elke dag" + +#: wpvulnerability-notifications.php:84 +msgid "Invalid request." +msgstr "Ongeldig verzoek." + +#: wpvulnerability-notifications.php:104 +msgid "You have unsubscribed from WPVulnerability notifications." +msgstr "U heeft zich afgemeld voor WPVulnerability-meldingen." + +#. translators: %1$s the website of Database, %2$s database site name. +#: wpvulnerability-notifications.php:289 +#, php-format +msgid "" +"Learn more about the WordPress Vulnerability Database API at %2$s" +msgstr "" +"Leer meer over de WordPress Vulnerability Database API op %2$s" + +#. translators: %1$s unsubscribe URL. +#: wpvulnerability-notifications.php:300 +#, php-format +msgid "" +"Want to stop receiving these alerts? Unsubscribe or " +"change the email frequency to Never in the WPVulnerability " +"settings." +msgstr "" +"Wilt u deze meldingen niet meer ontvangen? Afmelden of " +"de e-mailfrequentie wijzigen naar Nooit in de WPVulnerability-" +"instellingen." + +#: wpvulnerability-notifications.php:595 +msgid "No vulnerabilities found" +msgstr "Geen kwetsbaarheden gevonden" + +#: wpvulnerability-notifications.php:596 +msgid "This is likely a test. The site does not have vulnerabilities." +msgstr "Dit is waarschijnlijk een test. De site heeft geen kwetsbaarheden." + +#: wpvulnerability-notifications.php:601 +msgid "Core vulnerabilities" +msgstr "Core kwetsbaarheden" + +#: wpvulnerability-notifications.php:607 +msgid "Plugins vulnerabilities" +msgstr "Plugins kwetsbaarheden" + +#: wpvulnerability-notifications.php:613 +msgid "Themes vulnerabilities" +msgstr "Thema's kwetsbaarheden" + +#: wpvulnerability-notifications.php:619 +msgid "PHP vulnerabilities" +msgstr "PHP-kwetsbaarheden" + +#: wpvulnerability-notifications.php:625 +msgid "Apache HTTPD vulnerabilities" +msgstr "Apache HTTPD-kwetsbaarheden" + +#: wpvulnerability-notifications.php:631 +msgid "Nginx vulnerabilities" +msgstr "Nginx-kwetsbaarheden" + +#: wpvulnerability-notifications.php:637 +msgid "MariaDB vulnerabilities" +msgstr "MariaDB-kwetsbaarheden" + +#: wpvulnerability-notifications.php:643 +msgid "MySQL vulnerabilities" +msgstr "MySQL-kwetsbaarheden" + +#: wpvulnerability-notifications.php:649 +msgid "ImageMagick vulnerabilities" +msgstr "ImageMagick-kwetsbaarheden" + +#: wpvulnerability-notifications.php:655 +msgid "curl vulnerabilities" +msgstr "curl-kwetsbaarheden" + +#: wpvulnerability-notifications.php:661 +msgid "memcached vulnerabilities" +msgstr "memcached-kwetsbaarheden" + +#: wpvulnerability-notifications.php:667 +msgid "Redis vulnerabilities" +msgstr "Redis-kwetsbaarheden" + +#: wpvulnerability-notifications.php:673 +msgid "SQLite vulnerabilities" +msgstr "SQLite-kwetsbaarheden" + +#. translators: Site name. +#: wpvulnerability-notifications.php:696 +#, php-format +msgid "Vulnerability found: %s" +msgstr "Kwetsbaarheid gevonden: %s" + +#: wpvulnerability-notifications.php:700 +msgid "Vulnerability found" +msgstr "Kwetsbaarheid gevonden" + +#. translators: 1: Plugin name +#. translators: 1: theme name +#: wpvulnerability-plugins.php:116 wpvulnerability-themes.php:82 +#, php-format +msgid "" +"%1$s has a known vulnerability that may be affecting your installed version." +msgstr "" +"%1$s heeft een bekende kwetsbaarheid die mogelijk uw geïnstalleerde versie beïnvloedt." + +#: wpvulnerability-plugins.php:230 wpvulnerability-process.php:358 +msgid "This plugin is closed. Please replace it with another." +msgstr "Deze plugin is gesloten. Vervang het door een andere." + +#: wpvulnerability-plugins.php:233 wpvulnerability-process.php:361 +msgid "" +"This vulnerability appears to be unpatched. Stay tuned for upcoming plugin " +"updates." +msgstr "" +"Deze kwetsbaarheid lijkt niet gepatcht te zijn. Blijf op de hoogte voor " +"aankomende plugin updates." + +#: wpvulnerability-plugins.php:570 +msgid "It hasn't been updated in over a year." +msgstr "Het is meer dan een jaar niet bijgewerkt." + +#: wpvulnerability-plugins.php:576 +msgid "It may no longer be available (closed?)." +msgstr "Het is mogelijk niet meer beschikbaar (gesloten?)." + +#: wpvulnerability-plugins.php:614 wpvulnerability-plugins.php:621 +msgid "Last updated on" +msgstr "Laatste update op" + +#. translators: the number of vulnerabilities. +#: wpvulnerability-plugins.php:764 wpvulnerability-themes.php:704 +#, php-format +msgid "Vulnerabilities (%d)" +msgstr "Kwetsbaarheden (%d)" + +#. translators: %s: software name. +#: wpvulnerability-process.php:601 +#, php-format +msgid "%s running" +msgstr "%s actief" + +#: wpvulnerability-process.php:611 wpvulnerability-process.php:792 +msgid "End of Life" +msgstr "End of Life" + +#: wpvulnerability-process.php:613 wpvulnerability-process.php:618 +msgid "End of life:" +msgstr "End of life:" + +#: wpvulnerability-process.php:616 +msgid "Supported" +msgstr "Ondersteund" + +#: wpvulnerability-process.php:652 +msgid "Plugin" +msgstr "Plugin" + +#: wpvulnerability-process.php:721 +msgid "Theme" +msgstr "Thema" + +#. translators: %s: end-of-life date +#: wpvulnerability-process.php:790 +#, php-format +msgid "End of life: %s" +msgstr "End of life: %s" + +#: wpvulnerability-process.php:795 +msgid "EOL" +msgstr "EOL" + +#: wpvulnerability-run.php:30 +msgid "Network Settings" +msgstr "Netwerkinstellingen" + +#: wpvulnerability-run.php:731 wpvulnerability-run.php:781 +#: wpvulnerability-run.php:791 wpvulnerability-run.php:836 +msgid "Vulnerabilities" +msgstr "Kwetsbaarheden" + +#: wpvulnerability-schedule.php:30 +msgid "Every 6 hours" +msgstr "Elke 6 uur" + +#: wpvulnerability-schedule.php:303 +msgid "Database updates" +msgstr "Database-updates" + +#: wpvulnerability-schedule.php:309 +msgid "Log cleanup" +msgstr "Logboekopruiming" + +#: wpvulnerability-schedule.php:439 +msgid "" +"Notifications are scheduled, but settings currently disable them. Please " +"review the notifications tab." +msgstr "" +"Meldingen zijn gepland, maar instellingen schakelen ze momenteel uit. Controleer " +"het tabblad Meldingen." + +#: wpvulnerability-schedule.php:442 +msgid "This event should not be scheduled for this site." +msgstr "Dit evenement mag niet worden gepland voor deze site." + +#: wpvulnerability-schedule.php:446 +msgid "Not expected for this site." +msgstr "Niet verwacht voor deze site." + +#: wpvulnerability-schedule.php:450 +msgid "No instances found." +msgstr "Geen instanties gevonden." + +#: wpvulnerability-schedule.php:456 +msgid "Scheduled with an unexpected interval." +msgstr "Gepland met een onverwacht interval." + +#: wpvulnerability-schedule.php:460 +msgid "Multiple instances detected." +msgstr "Meerdere instanties gedetecteerd." + +#: wpvulnerability-schedule.php:465 +msgid "Scheduled as expected." +msgstr "Gepland zoals verwacht." + +#: wpvulnerability-sitehealth.php:22 +msgid "There aren't plugins vulnerabilities" +msgstr "Er zijn geen plugins kwetsbaarheden" + +#: wpvulnerability-sitehealth.php:30 +msgid "Shows possible vulnerabilities that exist in installed plugins." +msgstr "Toont mogelijke kwetsbaarheden die bestaan in geïnstalleerde plugins." + +#. translators: Number of plugins vulnerabilities. +#: wpvulnerability-sitehealth.php:43 +#, php-format +msgid "There is %d plugin with vulnerabilities" +msgid_plural "There are %d plugins with vulnerabilities" +msgstr[0] "Er is %d plugin met kwetsbaarheden" +msgstr[1] "Er zijn %d plugins met kwetsbaarheden" + +#: wpvulnerability-sitehealth.php:49 +msgid "" +"We've detected potential vulnerabilities in installed plugins. Please check " +"them and keep them updated." +msgstr "" +"We hebben mogelijke kwetsbaarheden gedetecteerd in geïnstalleerde plugins. " +"Controleer ze en houd ze up-to-date." + +#: wpvulnerability-sitehealth.php:57 +msgid "Update plugins" +msgstr "Plugins updaten" + +#: wpvulnerability-sitehealth.php:74 +msgid "There aren't themes vulnerabilities" +msgstr "Er zijn geen thema's kwetsbaarheden" + +#: wpvulnerability-sitehealth.php:82 +msgid "Shows possible vulnerabilities that exist in installed themes." +msgstr "Toont mogelijke kwetsbaarheden die bestaan in geïnstalleerde thema's." + +#. translators: Number of themes vulnerabilities. +#: wpvulnerability-sitehealth.php:95 +#, php-format +msgid "There is %d theme with vulnerabilities" +msgid_plural "There are %d themes with vulnerabilities" +msgstr[0] "Er is %d thema met kwetsbaarheden" +msgstr[1] "Er zijn %d thema's met kwetsbaarheden" + +#: wpvulnerability-sitehealth.php:101 +msgid "" +"We've detected potential vulnerabilities in installed themes. Please check " +"them and keep them updated." +msgstr "" +"We hebben mogelijke kwetsbaarheden gedetecteerd in geïnstalleerde thema's. " +"Controleer ze en houd ze up-to-date." + +#: wpvulnerability-sitehealth.php:109 +msgid "Update themes" +msgstr "Thema's updaten" + +#: wpvulnerability-sitehealth.php:126 +msgid "There aren't WordPress vulnerabilities" +msgstr "Er zijn geen WordPress kwetsbaarheden" + +#: wpvulnerability-sitehealth.php:134 +msgid "Shows possible vulnerabilities existing in the WordPress core." +msgstr "Toont mogelijke kwetsbaarheden in de WordPress core" + +#. translators: Number of core vulnerabilities. +#: wpvulnerability-sitehealth.php:147 +#, php-format +msgid "There is %d core vulnerability" +msgid_plural "There are %d core vulnerabilities" +msgstr[0] "Er is %d core kwetsbaarheid" +msgstr[1] "Er zijn %d core kwetsbaarheden" + +#: wpvulnerability-sitehealth.php:153 +msgid "" +"We've detected potential vulnerabilities in this WordPress installation. " +"Please check them and keep your installation updated." +msgstr "" +"We hebben mogelijke kwetsbaarheden gedetecteerd in deze WordPress " +"installatie. Controleer ze en houd je installatie up-to-date." + +#: wpvulnerability-sitehealth.php:161 +msgid "Update WordPress" +msgstr "Update WordPress" + +#: wpvulnerability-sitehealth.php:180 +msgid "Nginx" +msgstr "Nginx" + +#: wpvulnerability-sitehealth.php:189 +msgid "Invalid software type" +msgstr "Ongeldig softwaretype" + +#: wpvulnerability-sitehealth.php:192 +msgid "Error" +msgstr "Fout" + +#: wpvulnerability-sitehealth.php:197 +msgid "The specified software type is not valid." +msgstr "Het opgegeven softwaretype is niet geldig." + +#. translators: name of the software. +#: wpvulnerability-sitehealth.php:207 +#, php-format +msgid "There aren't %s vulnerabilities" +msgstr "Er zijn geen %s kwetsbaarheden" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:216 +#, php-format +msgid "Shows possible vulnerabilities existing in %s." +msgstr "Toont mogelijke kwetsbaarheden die bestaan in %s." + +#. translators: Software and number of vulnerabilities. +#: wpvulnerability-sitehealth.php:229 +#, php-format +msgid "There is %1$d %2$s vulnerability" +msgid_plural "There are %1$d %2$s vulnerabilities" +msgstr[0] "Er is %1$d %2$s kwetsbaarheid" +msgstr[1] "Er zijn %1$d %2$s kwetsbaarheden" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:237 +#, php-format +msgid "" +"We've detected potential vulnerabilities in %s. Please check them and keep " +"your installation updated." +msgstr "" +"We hebben mogelijke kwetsbaarheden in %s gedetecteerd. Controleer ze en houd " +"je installatie up-to-date." + +#: wpvulnerability-sitehealth.php:246 +msgid "How to update PHP" +msgstr "Hoe PHP bij te werken" + +#: wpvulnerability-sitehealth.php:386 +msgid "WPVulnerability Core" +msgstr "WPVulnerability core" + +#: wpvulnerability-sitehealth.php:394 +msgid "WPVulnerability Themes" +msgstr "WPVulnerability thema's" + +#: wpvulnerability-sitehealth.php:402 +msgid "WPVulnerability Plugins" +msgstr "WPVulnerability plugins" + +#: wpvulnerability-sitehealth.php:410 +msgid "WPVulnerability PHP" +msgstr "WPVulnerability PHP" + +#: wpvulnerability-sitehealth.php:418 +msgid "WPVulnerability Apache HTTPD" +msgstr "WPVulnerability Apache HTTPD" + +#: wpvulnerability-sitehealth.php:426 +msgid "WPVulnerability Nginx" +msgstr "WPVulnerability Nginx" + +#: wpvulnerability-sitehealth.php:434 +msgid "WPVulnerability MariaDB" +msgstr "WPVulnerability MariaDB" + +#: wpvulnerability-sitehealth.php:442 +msgid "WPVulnerability MySQL" +msgstr "WPVulnerability MySQL" + +#: wpvulnerability-sitehealth.php:450 +msgid "WPVulnerability ImageMagick" +msgstr "WPVulnerability ImageMagick" + +#: wpvulnerability-sitehealth.php:458 +msgid "WPVulnerability curl" +msgstr "WPVulnerability curl" + +#: wpvulnerability-sitehealth.php:466 +msgid "WPVulnerability memcached" +msgstr "WPVulnerability memcached" + +#: wpvulnerability-sitehealth.php:474 +msgid "WPVulnerability redis" +msgstr "WPVulnerability redis" + +#: wpvulnerability-sitehealth.php:482 +msgid "WPVulnerability sqlite" +msgstr "WPVulnerability sqlite" + +#: wpvulnerability-themes.php:196 wpvulnerability-themes.php:492 +msgid "This theme is closed. Please replace it with another." +msgstr "Dit thema is gesloten. Vervang het door een ander." + +#: wpvulnerability-themes.php:199 wpvulnerability-themes.php:495 +msgid "" +"This vulnerability appears to be unpatched. Stay tuned for upcoming theme " +"updates." +msgstr "" +"Deze kwetsbaarheid lijkt niet gepatcht te zijn. Blijf op de hoogte voor " +"aankomende thema updates." + +#: wpvulnerability-themes.php:391 +msgid "" +"This theme has known vulnerabilities that may be affecting your installed " +"version." +msgstr "" +"Dit thema heeft bekende kwetsbaarheden die mogelijk uw geïnstalleerde " +"versie beïnvloeden." + +#~ msgid "%1$s has a known vulnerability that may be affecting this version." +#~ msgstr "" +#~ "%1$s heeft een bekende kwetsbaarheid die deze versie mogelijk beïnvloedt." + +#~ msgid "Global score: " +#~ msgstr "Globale score: " + +#~ msgid "Severity: " +#~ msgstr "Ernst: " diff --git a/languages/wpvulnerability-pl.l10n.php b/languages/wpvulnerability-pl.l10n.php new file mode 100644 index 0000000..abfd93c --- /dev/null +++ b/languages/wpvulnerability-pl.l10n.php @@ -0,0 +1,2 @@ +'wpvulnerability','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);','language'=>'pl','project-id-version'=>'WPVulnerability 5.0.0','pot-creation-date'=>'2026-05-27T16:32:22+00:00','po-revision-date'=>'2026-05-27 00:00+0000','messages'=>['WPVulnerability'=>'WPVulnerability','https://www.wpvulnerability.com/plugin/'=>'https://www.wpvulnerability.com/plugin/','Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API.'=>'Otrzymuj informacje o możliwych lukach w zabezpieczeniach Twojego WordPressa z API bazy danych podatności WordPress.','ROBOTSTXT'=>'ROBOTSTXT','https://www.robotstxt.es/'=>'https://www.robotstxt.es/','This command requires a WordPress administrator. Run with --user=.'=>'To polecenie wymaga administratora WordPress. Uruchom z --user=.','No core vulnerabilities found.'=>'Nie znaleziono podatności rdzenia.','No plugin vulnerabilities found.'=>'Nie znaleziono podatności wtyczek.','No theme vulnerabilities found.'=>'Nie znaleziono podatności motywów.','No %s vulnerabilities found.'=>'Nie znaleziono podatności %s.','Data from source has been reloaded.'=>'Dane ze źródła zostały ponownie załadowane.','You do not have permission to reload data.'=>'Nie masz uprawnień do ponownego ładowania danych.','Test email has been sent.'=>'Testowy e-mail został wysłany.','Test email has failed. Please, check your email settings.'=>'Wysyłanie testowego e-maila nie powiodło się. Sprawdź ustawienia poczty e-mail.','You do not have permission to send test emails.'=>'Nie masz uprawnień do wysyłania testowych e-maili.','WPVulnerability cron events have been repaired.'=>'Zdarzenia cron WPVulnerability zostały naprawione.','You do not have permission to repair cron events.'=>'Nie masz uprawnień do naprawiania zdarzeń cron.','All logs have been deleted.'=>'Wszystkie dzienniki zostały usunięte.','You do not have permission to delete logs.'=>'Nie masz uprawnień do usuwania dzienników.','Uninstall preference saved.'=>'Preferencje odinstalowania zapisane.','WPVulnerability has been reset to defaults and reloaded.'=>'WPVulnerability zostało zresetowane do ustawień domyślnych i ponownie załadowane.','You do not have permission to reset WPVulnerability.'=>'Nie masz uprawnień do resetowania WPVulnerability.','All caches have been cleared.'=>'Wszystkie pamięci podręczne zostały wyczyszczone.','You do not have permission to clear caches.'=>'Nie masz uprawnień do czyszczenia pamięci podręcznych.','Plugin and theme signatures have been reset.'=>'Sygnatury wtyczek i motywów zostały zresetowane.','You do not have permission to reset signatures.'=>'Nie masz uprawnień do resetowania sygnatur.','You do not have permission to export debug information.'=>'Nie masz uprawnień do eksportowania informacji debugowania.','Database update has been executed.'=>'Aktualizacja bazy danych została wykonana.','You do not have permission to run database updates.'=>'Nie masz uprawnień do uruchamiania aktualizacji bazy danych.','Notification has been sent.'=>'Powiadomienie zostało wysłane.','Notification sending failed.'=>'Wysyłanie powiadomienia nie powiodło się.','You do not have permission to send notifications.'=>'Nie masz uprawnień do wysyłania powiadomień.','Notifications'=>'Powiadomienia','Analysis'=>'Analiza','Logs'=>'Dzienniki','Security'=>'Bezpieczeństwo','Tools'=>'Narzędzia','Debug'=>'Debugowanie','About'=>'O wtyczce','Notification Settings'=>'Ustawienia powiadomień','Configure how and when you want to receive vulnerability notifications.'=>'Skonfiguruj jak i kiedy chcesz otrzymywać powiadomienia o podatnościach.','Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software.'=>'Bądź na bieżąco z lukami w zabezpieczeniach Twojej instalacji WordPress, wtyczek, motywów i oprogramowania serwera.','Cache Expiration Time'=>'Czas wygaśnięcia pamięci podręcznej','FORCED'=>'WYMUSZONE','How long to cache vulnerability data before refreshing from the API.'=>'Jak długo przechowywać w pamięci podręcznej dane o podatnościach przed odświeżeniem z API.','%d hour'=>'%d godzina' . "\0" . '%d godziny' . "\0" . '%d godzin' . "\0" . '%d godziny','You can force the cache time via wp-config.php constant. Learn more →'=>'Możesz wymusić czas pamięci podręcznej przez stałą w wp-config.php. Dowiedz się więcej →','Notification Frequency'=>'Częstotliwość powiadomień','Choose how often you want to receive vulnerability notifications.'=>'Wybierz jak często chcesz otrzymywać powiadomienia o podatnościach.','Never - Disable automatic notifications'=>'Nigdy — wyłącz automatyczne powiadomienia','Daily - Receive notifications every day'=>'Codziennie — otrzymuj powiadomienia każdego dnia','Weekly - Receive notifications once a week'=>'Tygodniowo — otrzymuj powiadomienia raz w tygodniu','Day:'=>'Dzień:','Monday'=>'Poniedziałek','Tuesday'=>'Wtorek','Wednesday'=>'Środa','Thursday'=>'Czwartek','Friday'=>'Piątek','Saturday'=>'Sobota','Sunday'=>'Niedziela','Time:'=>'Czas:','(24-hour format, server timezone)'=>'(format 24-godzinny, strefa czasowa serwera)','Notification Channels'=>'Kanały powiadomień','Select where you want to receive notifications.'=>'Wybierz, gdzie chcesz otrzymywać powiadomienia.','Email'=>'E-mail','Email Addresses (separated by commas):'=>'Adresy e-mail (oddzielone przecinkami):','Default:'=>'Domyślny:','Slack'=>'Slack','Slack Webhook URL:'=>'URL webhooka Slack:','Learn how to create a Slack incoming webhook →'=>'Dowiedz się jak utworzyć przychodzący webhook Slack →','Microsoft Teams'=>'Microsoft Teams','Teams Webhook URL:'=>'URL webhooka Teams:','Learn how to create a Teams incoming webhook →'=>'Dowiedz się jak utworzyć przychodzący webhook Teams →','Discord'=>'Discord','Discord Webhook URL:'=>'URL webhooka Discord:','Learn how to create a Discord webhook →'=>'Dowiedz się jak utworzyć webhook Discord →','Telegram'=>'Telegram','Telegram Bot Token:'=>'Token bota Telegram:','Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','Telegram Chat ID:'=>'ID czatu Telegram:','Learn how to create a Telegram bot and get Chat ID →'=>'Dowiedz się jak utworzyć bota Telegram i uzyskać ID czatu →','Save Notification Settings'=>'Zapisz ustawienia powiadomień','WordPress Components'=>'Komponenty WordPress','WordPress Core'=>'Rdzeń WordPress','Plugins'=>'Wtyczki','Themes'=>'Motywy','Software & Languages'=>'Oprogramowanie i języki','PHP'=>'PHP','Web Servers'=>'Serwery WWW','Apache HTTPD'=>'Apache HTTPD','nginx'=>'nginx','Databases'=>'Bazy danych','MariaDB'=>'MariaDB','MySQL'=>'MySQL','SQLite'=>'SQLite','Additional Tools'=>'Dodatkowe narzędzia','ImageMagick'=>'ImageMagick','curl'=>'curl','memcached'=>'memcached','Redis'=>'Redis','Component Analysis Settings'=>'Ustawienia analizy komponentów','Enable or disable vulnerability analysis for specific components.'=>'Włącz lub wyłącz analizę podatności dla określonych komponentów.','Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red.'=>'Zaznacz komponenty, które chcesz UKRYĆ przed skanowaniem i raportami podatności. Niezaznaczone komponenty będą aktywnie analizowane. Komponenty z aktywną analizą są wyświetlane na zielono, ukryte na czerwono.','Hidden (forced by constant)'=>'Ukryte (wymuszone przez stałą)','🔴 Analysis disabled'=>'🔴 Analiza wyłączona','🟢 Analysis active'=>'🟢 Analiza aktywna','Tip:'=>'Wskazówka:','You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →'=>'Możesz wymusić wyłączenie komponentów przez stałe wp-config.php. Dowiedz się więcej o wymuszonym ukrywaniu sprawdzeń →','Save Analysis Settings'=>'Zapisz ustawienia analizy','« Previous'=>'« Poprzednia','Next »'=>'Następna »','Log entry not found or has been removed.'=>'Wpis dziennika nie został znaleziony lub został usunięty.','Unable to load the requested log entry.'=>'Nie można załadować żądanego wpisu dziennika.','Log Configuration'=>'Konfiguracja dziennika','Total Logs'=>'Łączna liczba wpisów','Retention Period'=>'Okres przechowywania','Disabled'=>'Wyłączony','%d day'=>'%d dzień' . "\0" . '%d dni' . "\0" . '%d dni' . "\0" . '%d dnia','Log Retention Period'=>'Okres przechowywania dziennika','None (Disabled)'=>'Brak (wyłączony)','This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant.'=>'Ta wartość jest wymuszona przez stałą WPVULNERABILITY_LOG_RETENTION_DAYS.','Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted.'=>'Wybierz jak długo WPVulnerability powinno przechowywać dzienniki odpowiedzi API. Starsze dzienniki są automatycznie usuwane.','Save Configuration'=>'Zapisz konfigurację','Log retention is currently disabled.'=>'Przechowywanie dziennika jest obecnie wyłączone.','API responses are not being saved.'=>'Odpowiedzi API nie są zapisywane.','Log Details'=>'Szczegóły wpisu dziennika','Date'=>'Data','API Endpoint'=>'Punkt końcowy API','API Response'=>'Odpowiedź API','Back to Logs'=>'Wróć do dzienników','No logs available'=>'Brak dostępnych dzienników','API response logs will appear here once the vulnerability scanner runs.'=>'Dzienniki odpowiedzi API pojawią się tutaj po uruchomieniu skanera podatności.','API Response Logs'=>'Dzienniki odpowiedzi API','Show:'=>'Pokaż:','Apply'=>'Zastosuj','Showing %1$s–%2$s of %3$s'=>'Wyświetlanie %1$s–%2$s z %3$s','Actions'=>'Działania','View'=>'Wyświetl','Danger Zone'=>'Strefa niebezpieczna','Permanently delete all API response logs. This action cannot be undone.'=>'Trwale usuń wszystkie dzienniki odpowiedzi API. Tej akcji nie można cofnąć.','Are you sure you want to delete all logs? This action cannot be undone.'=>'Czy na pewno chcesz usunąć wszystkie dzienniki? Tej akcji nie można cofnąć.','Delete All Logs'=>'Usuń wszystkie dzienniki','Reload Data from API'=>'Załaduj ponownie dane z API','Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information.'=>'Załaduj ponownie wszystkie informacje o rdzeniu, wtyczkach, motywach i innych komponentach bezpośrednio z API, aby uzyskać zaktualizowane dane. Spowoduje to wyczyszczenie pamięci podręcznej i pobranie aktualnych informacji o podatnościach.','Reload Data'=>'Załaduj ponownie dane','Test Email Notifications'=>'Testowanie powiadomień e-mail','Send a test email notification with current vulnerability data to verify your email configuration is working correctly.'=>'Wyślij testowe powiadomienie e-mail z aktualnymi danymi o podatnościach, aby zweryfikować poprawność konfiguracji e-mail.','From address (configured via constant):'=>'Adres nadawcy (skonfigurowany przez stałą):','From address (default):'=>'Adres nadawcy (domyślny):','Learn how to customize the email sender address →'=>'Dowiedz się jak dostosować adres nadawcy e-mail →','Send Test Email'=>'Wyślij testowy e-mail','WP-Cron Status'=>'Status WP-Cron','View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly.'=>'Wyświetl i zarządzaj zaplanowanymi zdarzeniami WP-Cron. Porównaj oczekiwane harmonogramy z rzeczywistymi zadaniami cron, aby upewnić się, że zadania automatyczne działają poprawnie.','No cron data available.'=>'Brak dostępnych danych cron.','Hook'=>'Hook','Expected'=>'Oczekiwany','Found'=>'Znaleziony','Next Run'=>'Następne uruchomienie','Status'=>'Status','Not expected'=>'Nieoczekiwany','None'=>'Brak','OK'=>'OK','⚠️ Unexpected WPVulnerability Events'=>'⚠️ Nieoczekiwane zdarzenia WPVulnerability','No interval'=>'Brak interwału','Next:'=>'Następny:','Repair Cron Events'=>'Napraw zdarzenia cron','Uninstall Data'=>'Dane przy odinstalowaniu','By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall.'=>'Domyślnie wszystkie dane wtyczki są zachowywane po usunięciu WPVulnerability. Włącz opcję poniżej tylko jeśli chcesz, aby wszystkie opcje, dzienniki i dane z pamięci podręcznej zostały trwale usunięte podczas odinstalowania.','Delete all plugin data on uninstall'=>'Usuń wszystkie dane wtyczki podczas odinstalowania','Default: unchecked (data preserved). Check only if you want a clean removal.'=>'Domyślnie: niezaznaczone (dane zachowane). Zaznacz tylko jeśli chcesz całkowite usunięcie.','Save preference'=>'Zapisz preferencję','Reset WPVulnerability'=>'Zresetuj WPVulnerability','Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API.'=>'Usuń wszystkie ustawienia WPVulnerability, dane z pamięci podręcznej, dzienniki i zaplanowane zdarzenia, następnie przywróć ustawienia domyślne i załaduj ponownie dane z API.','This action cannot be undone.'=>'Tej akcji nie można cofnąć.','Are you sure you want to reset all WPVulnerability data? This action cannot be undone.'=>'Czy na pewno chcesz zresetować wszystkie dane WPVulnerability? Tej akcji nie można cofnąć.','Reset Plugin'=>'Zresetuj wtyczkę','Vulnerability Database Statistics'=>'Statystyki bazy danych podatności','%s vulnerability'=>'%s podatność' . "\0" . '%s podatności' . "\0" . '%s podatności' . "\0" . '%s podatności','(%s product)'=>'(%s produkt)' . "\0" . '(%s produkty)' . "\0" . '(%s produktów)' . "\0" . '(%s produktu)','No data'=>'Brak danych','Database last updated: %s'=>'Baza danych ostatnio zaktualizowana: %s','Intelligence Sources'=>'Źródła danych wywiadowczych','Number of vulnerabilities contributed by each intelligence source.'=>'Liczba podatności wniesiona przez każde źródło danych wywiadowczych.','Source'=>'Źródło','Core'=>'Rdzeń','Sponsors'=>'Sponsorzy','No sponsor data available.'=>'Brak dostępnych danych o sponsorach.','Contributors'=>'Współtwórcy','No contributor data available.'=>'Brak dostępnych danych o współtwórcach.','You do not have sufficient permissions to access this page.'=>'Nie masz wystarczających uprawnień, aby uzyskać dostęp do tej strony.','WPVulnerability settings'=>'Ustawienia WPVulnerability','Configure and save these settings to receive notifications.'=>'Skonfiguruj i zapisz te ustawienia, aby otrzymywać powiadomienia.','Configure and save these settings to hide vulnerabilities.'=>'Skonfiguruj i zapisz te ustawienia, aby ukryć podatności.','Default administrator email'=>'Domyślny adres e-mail administratora','Read more if you want to force the cache time.'=>'Przeczytaj więcej, jeśli chcesz wymusić czas pamięci podręcznej.','Never'=>'Nigdy','Daily'=>'Codziennie','Weekly'=>'Tygodniowo','Day'=>'Dzień','Hour'=>'Godzina','Minute'=>'Minuta','Read more about how to force the deactivation of an item.'=>'Przeczytaj więcej o tym, jak wymusić dezaktywację elementu.','Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com'=>'Nieprawidłowy URL webhooka Slack. Musi być prawidłowym adresem HTTPS z hooks.slack.com','Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com'=>'Nieprawidłowy URL webhooka Microsoft Teams. Musi być prawidłowym adresem HTTPS z office.com, office365.com lub api.hooks.microsoft.com','Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com'=>'Nieprawidłowy URL webhooka Discord. Musi być prawidłowym adresem HTTPS z discord.com lub discordapp.com','Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Nieprawidłowy format tokena bota Telegram. Musi wyglądać tak: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','All Clear'=>'Wszystko w porządku','%d Critical Issue Found'=>'Znaleziono %d krytyczny problem' . "\0" . 'Znaleziono %d krytyczne problemy' . "\0" . 'Znaleziono %d krytycznych problemów' . "\0" . 'Znaleziono %d krytycznego problemu','%d Issue Found'=>'Znaleziono %d problem' . "\0" . 'Znaleziono %d problemy' . "\0" . 'Znaleziono %d problemów' . "\0" . 'Znaleziono %d problemu','Never checked'=>'Nigdy nie sprawdzano','%d minute ago'=>'%d minutę temu' . "\0" . '%d minuty temu' . "\0" . '%d minut temu' . "\0" . '%d minuty temu','%d hour ago'=>'%d godzinę temu' . "\0" . '%d godziny temu' . "\0" . '%d godzin temu' . "\0" . '%d godziny temu','Last checked: %s'=>'Ostatnio sprawdzono: %s','Refresh Now'=>'Odśwież teraz','No vulnerabilities detected'=>'Nie wykryto podatności','Your site is up to date and secure'=>'Twoja strona jest aktualna i bezpieczna','Server Software'=>'Oprogramowanie serwera','Site Health'=>'Kondycja witryny','Settings'=>'Ustawienia','WPVulnerability Status'=>'Status WPVulnerability','Receive vulnerability notifications'=>'Otrzymuj powiadomienia o podatnościach','Cache expiration time'=>'Czas wygaśnięcia pamięci podręcznej','How often you want to receive notifications'=>'Jak często chcesz otrzymywać powiadomienia','Where do you want to receive notifications?'=>'Gdzie chcesz otrzymywać powiadomienia?','Email addresses to notify (separated by commas)'=>'Adresy e-mail do powiadamiania (oddzielone przecinkami)','Slack webhook URL'=>'URL webhooka Slack','Teams webhook URL'=>'URL webhooka Teams','Vulnerabilities to hide'=>'Podatności do ukrycia','What do you want to hide?'=>'Co chcesz ukryć?','Standard (Hybrid Detection)'=>'Standardowy (wykrywanie hybrydowe)','Strict (Extensions Only)'=>'Ścisły (tylko rozszerzenia)','Disabled (No Detection)'=>'Wyłączony (brak wykrywania)','Security Status'=>'Status bezpieczeństwa','Security Mode'=>'Tryb bezpieczeństwa','Shell Execution'=>'Wykonywanie poleceń powłoki','Enabled'=>'Włączony','Audit Logging'=>'Rejestrowanie audytu','Enabled (%d days)'=>'Włączony (%d dni)','Total Log Entries'=>'Łączna liczba wpisów w dzienniku','Last Shell Execution'=>'Ostatnie wykonanie polecenia powłoki','%s ago'=>'%s temu','Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.'=>'Skonfiguruj ustawienia bezpieczeństwa przez stałe wp-config.php: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.','See security configuration documentation for details.'=>'Więcej szczegółów w dokumentacji konfiguracji bezpieczeństwa.','Memcached'=>'Memcached','Imagick Extension'=>'Rozszerzenie Imagick','Redis Extension'=>'Rozszerzenie Redis','Memcached Extension'=>'Rozszerzenie Memcached','Memcache Extension'=>'Rozszerzenie Memcache','SQLite3 Extension'=>'Rozszerzenie SQLite3','PDO SQLite'=>'PDO SQLite','Shell Command'=>'Polecenie powłoki','Binary Check'=>'Sprawdzenie pliku binarnego','Not Detected'=>'Niewykryte','Software Detection Methods'=>'Metody wykrywania oprogramowania','Shows which detection method was used for each software component and the reliability score.'=>'Pokazuje, która metoda wykrywania była użyta dla każdego komponentu oprogramowania oraz ocenę niezawodności.','Component'=>'Komponent','Version'=>'Wersja','Detection Method'=>'Metoda wykrywania','Reliability'=>'Niezawodność','Not detected'=>'Niewykryte','Shell Execution Audit Logs'=>'Dzienniki audytu wykonania poleceń powłoki','Complete audit trail of shell command executions for security monitoring.'=>'Pełny ślad audytu wykonań poleceń powłoki do monitorowania bezpieczeństwa.','No shell execution logs found.'=>'Nie znaleziono dzienników wykonania poleceń powłoki.','Logs will appear here when shell commands are executed for software detection.'=>'Dzienniki pojawią się tutaj, gdy polecenia powłoki będą wykonywane w celu wykrywania oprogramowania.','Time'=>'Czas','Command'=>'Polecenie','User'=>'Użytkownik','Output'=>'Wyjście','Showing the %d most recent log entries.'=>'Wyświetlanie %d ostatnich wpisów dziennika.','Invalid nonce.'=>'Nieprawidłowy nonce.','Insufficient permissions.'=>'Niewystarczające uprawnienia.','No component specified.'=>'Nie podano komponentu.','Debug Information'=>'Informacje debugowania','This tab is only visible when WP_DEBUG is enabled. Use with caution.'=>'Ta karta jest widoczna tylko gdy WP_DEBUG jest włączony. Używaj ostrożnie.','System Information'=>'Informacje o systemie','WordPress Version'=>'Wersja WordPress','Multisite'=>'Multisajt','Yes'=>'Tak','No'=>'Nie','Language'=>'Język','PHP Version'=>'Wersja PHP','PHP Extensions'=>'Rozszerzenia PHP','PHP Memory Limit'=>'Limit pamięci PHP','Database'=>'Baza danych','Web Server'=>'Serwer WWW','WP_DEBUG'=>'WP_DEBUG','WP_DEBUG_LOG'=>'WP_DEBUG_LOG','Path:'=>'Ścieżka:','Size: %s'=>'Rozmiar: %s','View Log File'=>'Wyświetl plik dziennika','Log file is not web-accessible (outside wp-content)'=>'Plik dziennika nie jest dostępny przez sieć (poza wp-content)','Log file does not exist yet'=>'Plik dziennika jeszcze nie istnieje','Plugin Version'=>'Wersja wtyczki','Component Detection'=>'Wykrywanie komponentów','Version Detected'=>'Wykryta wersja','Analyzed'=>'Przeanalizowany','Cache Status'=>'Status pamięci podręcznej','Configuration Summary'=>'Podsumowanie konfiguracji','Cache Duration'=>'Czas trwania pamięci podręcznej','Log Retention'=>'Przechowywanie dziennika','Components Analyzed'=>'Przeanalizowane komponenty','Notification Email'=>'E-mail powiadomień','Slack Webhook'=>'Webhook Slack','Configured & Enabled'=>'Skonfigurowany i włączony','Configured (Disabled)'=>'Skonfigurowany (wyłączony)','Not configured'=>'Nieskonfigurowany','Teams Webhook'=>'Webhook Teams','Discord Webhook'=>'Webhook Discord','Telegram Bot'=>'Bot Telegram','Cron Status'=>'Status cron','Update Database'=>'Aktualizuj bazę danych','Next run: %s'=>'Następne uruchomienie: %s','Not scheduled'=>'Niezaplanowany','Send Notification'=>'Wyślij powiadomienie','Run Update Now'=>'Uruchom aktualizację teraz','Run Notification Now'=>'Wyślij powiadomienie teraz','You do not have permission to run these actions.'=>'Nie masz uprawnień do wykonywania tych działań.','API Testing'=>'Testowanie API','Test API connectivity for each component. Click a button to send a test request.'=>'Przetestuj łączność API dla każdego komponentu. Kliknij przycisk, aby wysłać żądanie testowe.','Test %s'=>'Testuj %s','Testing...'=>'Testowanie...','HTTP Code:'=>'Kod HTTP:','Response Time:'=>'Czas odpowiedzi:','Response Preview'=>'Podgląd odpowiedzi','Test'=>'Test','Error:'=>'Błąd:','AJAX request failed.'=>'Żądanie AJAX nie powiodło się.','You do not have permission to test API connectivity.'=>'Nie masz uprawnień do testowania łączności API.','Database Options Viewer'=>'Przeglądarka opcji bazy danych','View the raw data stored in WordPress options.'=>'Wyświetl surowe dane przechowywane w opcjach WordPress.','Select an option...'=>'Wybierz opcję...','Option not found or empty.'=>'Opcja nie została znaleziona lub jest pusta.','Quick Actions'=>'Szybkie działania','Perform debugging actions. Use with caution.'=>'Wykonaj działania debugowania. Używaj ostrożnie.','Are you sure you want to clear all caches?'=>'Czy na pewno chcesz wyczyścić wszystkie pamięci podręczne?','Clear All Caches'=>'Wyczyść wszystkie pamięci podręczne','Are you sure you want to reset signatures?'=>'Czy na pewno chcesz zresetować sygnatury?','Reset Signatures'=>'Zresetuj sygnatury','Export Debug Info'=>'Eksportuj informacje debugowania','You do not have permission to perform these actions.'=>'Nie masz uprawnień do wykonywania tych działań.','Settings saved.'=>'Ustawienia zapisane.','WPVulnerability cron events have been repaired across the network.'=>'Zdarzenia cron WPVulnerability zostały naprawione w całej sieci.','You do not have permission to access this page.'=>'Nie masz uprawnień dostępu do tej strony.','WordPress %1$s has a known vulnerability that may be affecting your installed version.'=>'WordPress %1$s ma znane luki w zabezpieczeniach, które mogą wpływać na zainstalowaną wersję.','Actively exploited'=>'Aktywnie eksploatowana','Public exploit'=>'Publiczny exploit','Automatable'=>'Automatyzowalne','References:'=>'Odniesienia:','Invalid component specified.'=>'Podano nieprawidłowy komponent.','Version not detected for this component.'=>'Nie wykryto wersji dla tego komponentu.','API request successful.'=>'Żądanie API zakończyło się sukcesem.','API returned HTTP code %d.'=>'API zwróciło kod HTTP %d.','WPVulnerability Logs'=>'Dzienniki WPVulnerability','WPVulnerability Log'=>'Dziennik WPVulnerability','Low'=>'Niskie','Medium'=>'Średnie','High'=>'Wysokie','Critical'=>'Krytyczne','WPVulnerability Shell Logs'=>'Dzienniki powłoki WPVulnerability','WPVulnerability Shell Log'=>'Dziennik powłoki WPVulnerability','Every week'=>'Co tydzień','Every day'=>'Codziennie','Invalid request.'=>'Nieprawidłowe żądanie.','You have unsubscribed from WPVulnerability notifications.'=>'Wypisałeś się z powiadomień WPVulnerability.','Learn more about the WordPress Vulnerability Database API at %2$s'=>'Dowiedz się więcej o API bazy danych podatności WordPress na %2$s','Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings.'=>'Chcesz przestać otrzymywać te alerty? Wypisz się lub zmień częstotliwość e-maili na Nigdy w ustawieniach WPVulnerability.','No vulnerabilities found'=>'Nie znaleziono podatności','This is likely a test. The site does not have vulnerabilities.'=>'To prawdopodobnie test. Witryna nie ma podatności.','Core vulnerabilities'=>'Podatności rdzenia','Plugins vulnerabilities'=>'Podatności wtyczek','Themes vulnerabilities'=>'Podatności motywów','PHP vulnerabilities'=>'Podatności PHP','Apache HTTPD vulnerabilities'=>'Podatności Apache HTTPD','Nginx vulnerabilities'=>'Podatności Nginx','MariaDB vulnerabilities'=>'Podatności MariaDB','MySQL vulnerabilities'=>'Podatności MySQL','ImageMagick vulnerabilities'=>'Podatności ImageMagick','curl vulnerabilities'=>'Podatności curl','memcached vulnerabilities'=>'Podatności memcached','Redis vulnerabilities'=>'Podatności Redis','SQLite vulnerabilities'=>'Podatności SQLite','Vulnerability found: %s'=>'Znaleziono podatność: %s','Vulnerability found'=>'Znaleziono podatność','%1$s has a known vulnerability that may be affecting your installed version.'=>'%1$s ma znane luki w zabezpieczeniach, które mogą wpływać na zainstalowaną wersję.','This plugin is closed. Please replace it with another.'=>'Ta wtyczka jest zamknięta. Proszę zastąpić ją inną.','This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates.'=>'Ta podatność wydaje się być niezałatana. Obserwuj nadchodzące aktualizacje wtyczki.','It hasn\'t been updated in over a year.'=>'Nie była aktualizowana przez ponad rok.','It may no longer be available (closed?).'=>'Może już być niedostępna (zamknięta?).','Last updated on'=>'Ostatnio zaktualizowana','Vulnerabilities (%d)'=>'Podatności (%d)','%s running'=>'%s uruchomiony','End of Life'=>'Koniec wsparcia','End of life:'=>'Koniec wsparcia:','Supported'=>'Wspierany','Plugin'=>'Wtyczka','Theme'=>'Motyw','End of life: %s'=>'Koniec wsparcia: %s','EOL'=>'EOL','Network Settings'=>'Ustawienia sieci','Vulnerabilities'=>'Podatności','Every 6 hours'=>'Co 6 godzin','Database updates'=>'Aktualizacje bazy danych','Log cleanup'=>'Czyszczenie dzienników','Notifications are scheduled, but settings currently disable them. Please review the notifications tab.'=>'Powiadomienia są zaplanowane, ale ustawienia je aktualnie wyłączają. Sprawdź kartę powiadomień.','This event should not be scheduled for this site.'=>'To zdarzenie nie powinno być zaplanowane dla tej witryny.','Not expected for this site.'=>'Nieoczekiwane dla tej witryny.','No instances found.'=>'Nie znaleziono wystąpień.','Scheduled with an unexpected interval.'=>'Zaplanowane z nieoczekiwanym interwałem.','Multiple instances detected.'=>'Wykryto wiele wystąpień.','Scheduled as expected.'=>'Zaplanowane zgodnie z oczekiwaniami.','There aren\'t plugins vulnerabilities'=>'Brak podatności wtyczek','Shows possible vulnerabilities that exist in installed plugins.'=>'Pokazuje możliwe podatności w zainstalowanych wtyczkach.','There is %d plugin with vulnerabilities'=>'Jest %d wtyczka z podatnościami' . "\0" . 'Są %d wtyczki z podatnościami' . "\0" . 'Jest %d wtyczek z podatnościami' . "\0" . 'Są %d wtyczki z podatnościami','We\'ve detected potential vulnerabilities in installed plugins. Please check them and keep them updated.'=>'Wykryliśmy potencjalne podatności w zainstalowanych wtyczkach. Sprawdź je i aktualizuj.','Update plugins'=>'Aktualizuj wtyczki','There aren\'t themes vulnerabilities'=>'Brak podatności motywów','Shows possible vulnerabilities that exist in installed themes.'=>'Pokazuje możliwe podatności w zainstalowanych motywach.','There is %d theme with vulnerabilities'=>'Jest %d motyw z podatnościami' . "\0" . 'Są %d motywy z podatnościami' . "\0" . 'Jest %d motywów z podatnościami' . "\0" . 'Są %d motywy z podatnościami','We\'ve detected potential vulnerabilities in installed themes. Please check them and keep them updated.'=>'Wykryliśmy potencjalne podatności w zainstalowanych motywach. Sprawdź je i aktualizuj.','Update themes'=>'Aktualizuj motywy','There aren\'t WordPress vulnerabilities'=>'Brak podatności WordPress','Shows possible vulnerabilities existing in the WordPress core.'=>'Pokazuje możliwe podatności w rdzeniu WordPress.','There is %d core vulnerability'=>'Jest %d podatność rdzenia' . "\0" . 'Są %d podatności rdzenia' . "\0" . 'Jest %d podatności rdzenia' . "\0" . 'Są %d podatności rdzenia','We\'ve detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated.'=>'Wykryliśmy potencjalne podatności w tej instalacji WordPress. Sprawdź je i aktualizuj instalację.','Update WordPress'=>'Aktualizuj WordPress','Nginx'=>'Nginx','Invalid software type'=>'Nieprawidłowy typ oprogramowania','Error'=>'Błąd','The specified software type is not valid.'=>'Podany typ oprogramowania jest nieprawidłowy.','There aren\'t %s vulnerabilities'=>'Brak podatności %s','Shows possible vulnerabilities existing in %s.'=>'Pokazuje możliwe podatności istniejące w %s.','There is %1$d %2$s vulnerability'=>'Jest %1$d podatność %2$s' . "\0" . 'Są %1$d podatności %2$s' . "\0" . 'Jest %1$d podatności %2$s' . "\0" . 'Są %1$d podatności %2$s','We\'ve detected potential vulnerabilities in %s. Please check them and keep your installation updated.'=>'Wykryliśmy potencjalne podatności w %s. Sprawdź je i aktualizuj instalację.','How to update PHP'=>'Jak zaktualizować PHP','WPVulnerability Core'=>'WPVulnerability Rdzeń','WPVulnerability Themes'=>'WPVulnerability Motywy','WPVulnerability Plugins'=>'WPVulnerability Wtyczki','WPVulnerability PHP'=>'WPVulnerability PHP','WPVulnerability Apache HTTPD'=>'WPVulnerability Apache HTTPD','WPVulnerability Nginx'=>'WPVulnerability Nginx','WPVulnerability MariaDB'=>'WPVulnerability MariaDB','WPVulnerability MySQL'=>'WPVulnerability MySQL','WPVulnerability ImageMagick'=>'WPVulnerability ImageMagick','WPVulnerability curl'=>'WPVulnerability curl','WPVulnerability memcached'=>'WPVulnerability memcached','WPVulnerability redis'=>'WPVulnerability redis','WPVulnerability sqlite'=>'WPVulnerability sqlite','This theme is closed. Please replace it with another.'=>'Ten motyw jest zamknięty. Proszę zastąpić go innym.','This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates.'=>'Ta podatność wydaje się być niezałatana. Obserwuj nadchodzące aktualizacje motywu.','This theme has known vulnerabilities that may be affecting your installed version.'=>'Ten motyw ma znane podatności, które mogą wpływać na zainstalowaną wersję.']]; \ No newline at end of file diff --git a/languages/wpvulnerability-pl.mo b/languages/wpvulnerability-pl.mo new file mode 100644 index 0000000000000000000000000000000000000000..893150d3892f57c47452edd3c8234647e80e4247 GIT binary patch literal 40743 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 literal 0 HcmV?d00001 diff --git a/languages/wpvulnerability-pl.po b/languages/wpvulnerability-pl.po new file mode 100644 index 0000000..fd8d0ac --- /dev/null +++ b/languages/wpvulnerability-pl.po @@ -0,0 +1,2054 @@ +# Copyright (C) 2026 ROBOTSTXT +msgid "" +msgstr "" +"Project-Id-Version: WPVulnerability 5.0.0\n" +"POT-Creation-Date: 2026-05-27T16:32:22+00:00\n" +"PO-Revision-Date: 2026-05-27 00:00+0000\n" +"Last-Translator: Automatically generated\n" +"Language-Team: Polish \n" +"Language: pl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\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" +"X-Domain: wpvulnerability\n" + +#. Plugin Name of the plugin +#: wpvulnerability.php wpvulnerability-admin.php:1782 +#: wpvulnerability-admin.php:1783 wpvulnerability-adminms.php:1945 +#: wpvulnerability-adminms.php:1946 wpvulnerability-notifications.php:105 +msgid "WPVulnerability" +msgstr "WPVulnerability" + +#. Plugin URI of the plugin +#: wpvulnerability.php +msgid "https://www.wpvulnerability.com/plugin/" +msgstr "https://www.wpvulnerability.com/plugin/" + +#. Description of the plugin +#: wpvulnerability.php +msgid "Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API." +msgstr "Otrzymuj informacje o możliwych lukach w zabezpieczeniach Twojego WordPressa z API bazy danych podatności WordPress." + +#. Author of the plugin +#: wpvulnerability.php +msgid "ROBOTSTXT" +msgstr "ROBOTSTXT" + +#. Author URI of the plugin +#: wpvulnerability.php +msgid "https://www.robotstxt.es/" +msgstr "https://www.robotstxt.es/" + +#: class-wpvulnerability-cli.php:35 class-wpvulnerability-config-cli.php:32 +msgid "This command requires a WordPress administrator. Run with --user=." +msgstr "To polecenie wymaga administratora WordPress. Uruchom z --user=." + +#: class-wpvulnerability-cli.php:156 +msgid "No core vulnerabilities found." +msgstr "Nie znaleziono podatności rdzenia." + +#: class-wpvulnerability-cli.php:275 +msgid "No plugin vulnerabilities found." +msgstr "Nie znaleziono podatności wtyczek." + +#: class-wpvulnerability-cli.php:393 +msgid "No theme vulnerabilities found." +msgstr "Nie znaleziono podatności motywów." + +#. translators: %s is the software name (php, apache, nginx, etc.) +#: class-wpvulnerability-cli.php:490 +#, php-format +msgid "No %s vulnerabilities found." +msgstr "Nie znaleziono podatności %s." + +#: wpvulnerability-admin.php:63 wpvulnerability-adminms.php:227 +msgid "Data from source has been reloaded." +msgstr "Dane ze źródła zostały ponownie załadowane." + +#: wpvulnerability-admin.php:65 wpvulnerability-adminms.php:229 +msgid "You do not have permission to reload data." +msgstr "Nie masz uprawnień do ponownego ładowania danych." + +#: wpvulnerability-admin.php:93 wpvulnerability-adminms.php:255 +msgid "Test email has been sent." +msgstr "Testowy e-mail został wysłany." + +#: wpvulnerability-admin.php:95 wpvulnerability-adminms.php:259 +msgid "Test email has failed. Please, check your email settings." +msgstr "Wysyłanie testowego e-maila nie powiodło się. Sprawdź ustawienia poczty e-mail." + +#: wpvulnerability-admin.php:98 wpvulnerability-adminms.php:263 +msgid "You do not have permission to send test emails." +msgstr "Nie masz uprawnień do wysyłania testowych e-maili." + +#: wpvulnerability-admin.php:113 +msgid "WPVulnerability cron events have been repaired." +msgstr "Zdarzenia cron WPVulnerability zostały naprawione." + +#: wpvulnerability-admin.php:115 wpvulnerability-adminms.php:279 +msgid "You do not have permission to repair cron events." +msgstr "Nie masz uprawnień do naprawiania zdarzeń cron." + +#: wpvulnerability-admin.php:127 wpvulnerability-adminms.php:291 +msgid "All logs have been deleted." +msgstr "Wszystkie dzienniki zostały usunięte." + +#: wpvulnerability-admin.php:129 wpvulnerability-adminms.php:293 +msgid "You do not have permission to delete logs." +msgstr "Nie masz uprawnień do usuwania dzienników." + +#: wpvulnerability-admin.php:146 +msgid "Uninstall preference saved." +msgstr "Preferencje odinstalowania zapisane." + +#: wpvulnerability-admin.php:153 wpvulnerability-adminms.php:316 +msgid "WPVulnerability has been reset to defaults and reloaded." +msgstr "WPVulnerability zostało zresetowane do ustawień domyślnych i ponownie załadowane." + +#: wpvulnerability-admin.php:155 wpvulnerability-adminms.php:318 +msgid "You do not have permission to reset WPVulnerability." +msgstr "Nie masz uprawnień do resetowania WPVulnerability." + +#: wpvulnerability-admin.php:170 wpvulnerability-adminms.php:333 +msgid "All caches have been cleared." +msgstr "Wszystkie pamięci podręczne zostały wyczyszczone." + +#: wpvulnerability-admin.php:172 wpvulnerability-adminms.php:335 +msgid "You do not have permission to clear caches." +msgstr "Nie masz uprawnień do czyszczenia pamięci podręcznych." + +#: wpvulnerability-admin.php:187 wpvulnerability-adminms.php:350 +msgid "Plugin and theme signatures have been reset." +msgstr "Sygnatury wtyczek i motywów zostały zresetowane." + +#: wpvulnerability-admin.php:189 wpvulnerability-adminms.php:352 +msgid "You do not have permission to reset signatures." +msgstr "Nie masz uprawnień do resetowania sygnatur." + +#: wpvulnerability-admin.php:212 wpvulnerability-adminms.php:375 +msgid "You do not have permission to export debug information." +msgstr "Nie masz uprawnień do eksportowania informacji debugowania." + +#: wpvulnerability-admin.php:224 wpvulnerability-adminms.php:387 +msgid "Database update has been executed." +msgstr "Aktualizacja bazy danych została wykonana." + +#: wpvulnerability-admin.php:226 wpvulnerability-adminms.php:389 +msgid "You do not have permission to run database updates." +msgstr "Nie masz uprawnień do uruchamiania aktualizacji bazy danych." + +#: wpvulnerability-admin.php:247 wpvulnerability-adminms.php:410 +msgid "Notification has been sent." +msgstr "Powiadomienie zostało wysłane." + +#: wpvulnerability-admin.php:249 wpvulnerability-adminms.php:412 +msgid "Notification sending failed." +msgstr "Wysyłanie powiadomienia nie powiodło się." + +#: wpvulnerability-admin.php:252 wpvulnerability-adminms.php:415 +msgid "You do not have permission to send notifications." +msgstr "Nie masz uprawnień do wysyłania powiadomień." + +#: wpvulnerability-admin.php:266 wpvulnerability-adminms.php:539 +#: wpvulnerability-schedule.php:323 +msgid "Notifications" +msgstr "Powiadomienia" + +#: wpvulnerability-admin.php:269 wpvulnerability-adminms.php:542 +msgid "Analysis" +msgstr "Analiza" + +#: wpvulnerability-admin.php:272 wpvulnerability-adminms.php:545 +msgid "Logs" +msgstr "Dzienniki" + +#: wpvulnerability-admin.php:275 wpvulnerability-adminms.php:548 +#: wpvulnerability-sitehealth.php:25 wpvulnerability-sitehealth.php:77 +#: wpvulnerability-sitehealth.php:129 wpvulnerability-sitehealth.php:210 +msgid "Security" +msgstr "Bezpieczeństwo" + +#: wpvulnerability-admin.php:278 wpvulnerability-adminms.php:551 +msgid "Tools" +msgstr "Narzędzia" + +#: wpvulnerability-admin.php:285 wpvulnerability-adminms.php:558 +msgid "Debug" +msgstr "Debugowanie" + +#: wpvulnerability-admin.php:290 wpvulnerability-adminms.php:563 +msgid "About" +msgstr "O wtyczce" + +#: wpvulnerability-admin.php:427 wpvulnerability-adminms.php:700 +msgid "Notification Settings" +msgstr "Ustawienia powiadomień" + +#: wpvulnerability-admin.php:430 wpvulnerability-adminms.php:703 +msgid "Configure how and when you want to receive vulnerability notifications." +msgstr "Skonfiguruj jak i kiedy chcesz otrzymywać powiadomienia o podatnościach." + +#: wpvulnerability-admin.php:431 wpvulnerability-adminms.php:704 +msgid "Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software." +msgstr "Bądź na bieżąco z lukami w zabezpieczeniach Twojej instalacji WordPress, wtyczek, motywów i oprogramowania serwera." + +#: wpvulnerability-admin.php:438 wpvulnerability-adminms.php:711 +msgid "Cache Expiration Time" +msgstr "Czas wygaśnięcia pamięci podręcznej" + +#: wpvulnerability-admin.php:440 wpvulnerability-admin.php:814 +#: wpvulnerability-adminms.php:713 wpvulnerability-adminms.php:1087 +msgid "FORCED" +msgstr "WYMUSZONE" + +#: wpvulnerability-admin.php:444 wpvulnerability-adminms.php:717 +msgid "How long to cache vulnerability data before refreshing from the API." +msgstr "Jak długo przechowywać w pamięci podręcznej dane o podatnościach przed odświeżeniem z API." + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:453 wpvulnerability-admin.php:1891 +#: wpvulnerability-admin.php:3631 wpvulnerability-adminms.php:726 +#: wpvulnerability-adminms.php:2039 wpvulnerability-adminms.php:3825 +#, php-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d godzina" +msgstr[1] "%d godziny" +msgstr[2] "%d godzin" +msgstr[3] "%d godziny" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:469 wpvulnerability-adminms.php:742 +#, php-format +msgid "You can force the cache time via wp-config.php constant. Learn more →" +msgstr "Możesz wymusić czas pamięci podręcznej przez stałą w wp-config.php. Dowiedz się więcej →" + +#: wpvulnerability-admin.php:481 wpvulnerability-admin.php:3665 +#: wpvulnerability-adminms.php:754 wpvulnerability-adminms.php:3859 +msgid "Notification Frequency" +msgstr "Częstotliwość powiadomień" + +#: wpvulnerability-admin.php:484 wpvulnerability-adminms.php:757 +msgid "Choose how often you want to receive vulnerability notifications." +msgstr "Wybierz jak często chcesz otrzymywać powiadomienia o podatnościach." + +#: wpvulnerability-admin.php:489 wpvulnerability-adminms.php:762 +msgid "Never - Disable automatic notifications" +msgstr "Nigdy — wyłącz automatyczne powiadomienia" + +#: wpvulnerability-admin.php:493 wpvulnerability-adminms.php:766 +msgid "Daily - Receive notifications every day" +msgstr "Codziennie — otrzymuj powiadomienia każdego dnia" + +#: wpvulnerability-admin.php:497 wpvulnerability-adminms.php:770 +msgid "Weekly - Receive notifications once a week" +msgstr "Tygodniowo — otrzymuj powiadomienia raz w tygodniu" + +#: wpvulnerability-admin.php:503 wpvulnerability-adminms.php:776 +msgid "Day:" +msgstr "Dzień:" + +#: wpvulnerability-admin.php:505 wpvulnerability-admin.php:1955 +#: wpvulnerability-adminms.php:778 wpvulnerability-adminms.php:2115 +msgid "Monday" +msgstr "Poniedziałek" + +#: wpvulnerability-admin.php:506 wpvulnerability-admin.php:1956 +#: wpvulnerability-adminms.php:779 wpvulnerability-adminms.php:2116 +msgid "Tuesday" +msgstr "Wtorek" + +#: wpvulnerability-admin.php:507 wpvulnerability-admin.php:1957 +#: wpvulnerability-adminms.php:780 wpvulnerability-adminms.php:2117 +msgid "Wednesday" +msgstr "Środa" + +#: wpvulnerability-admin.php:508 wpvulnerability-admin.php:1958 +#: wpvulnerability-adminms.php:781 wpvulnerability-adminms.php:2118 +msgid "Thursday" +msgstr "Czwartek" + +#: wpvulnerability-admin.php:509 wpvulnerability-admin.php:1959 +#: wpvulnerability-adminms.php:782 wpvulnerability-adminms.php:2119 +msgid "Friday" +msgstr "Piątek" + +#: wpvulnerability-admin.php:510 wpvulnerability-admin.php:1960 +#: wpvulnerability-adminms.php:783 wpvulnerability-adminms.php:2120 +msgid "Saturday" +msgstr "Sobota" + +#: wpvulnerability-admin.php:511 wpvulnerability-admin.php:1961 +#: wpvulnerability-adminms.php:784 wpvulnerability-adminms.php:2121 +msgid "Sunday" +msgstr "Niedziela" + +#: wpvulnerability-admin.php:515 wpvulnerability-adminms.php:788 +msgid "Time:" +msgstr "Czas:" + +#: wpvulnerability-admin.php:519 wpvulnerability-adminms.php:792 +msgid "(24-hour format, server timezone)" +msgstr "(format 24-godzinny, strefa czasowa serwera)" + +#: wpvulnerability-admin.php:528 wpvulnerability-adminms.php:801 +msgid "Notification Channels" +msgstr "Kanały powiadomień" + +#: wpvulnerability-admin.php:531 wpvulnerability-adminms.php:804 +msgid "Select where you want to receive notifications." +msgstr "Wybierz, gdzie chcesz otrzymywać powiadomienia." + +#: wpvulnerability-admin.php:536 wpvulnerability-admin.php:2011 +#: wpvulnerability-adminms.php:809 wpvulnerability-adminms.php:2169 +msgid "Email" +msgstr "E-mail" + +#: wpvulnerability-admin.php:539 wpvulnerability-adminms.php:812 +msgid "Email Addresses (separated by commas):" +msgstr "Adresy e-mail (oddzielone przecinkami):" + +#: wpvulnerability-admin.php:541 wpvulnerability-adminms.php:814 +msgid "Default:" +msgstr "Domyślny:" + +#: wpvulnerability-admin.php:546 wpvulnerability-admin.php:2016 +#: wpvulnerability-adminms.php:819 wpvulnerability-adminms.php:2174 +msgid "Slack" +msgstr "Slack" + +#: wpvulnerability-admin.php:549 wpvulnerability-adminms.php:822 +msgid "Slack Webhook URL:" +msgstr "URL webhooka Slack:" + +#. translators: %s: Slack documentation URL +#: wpvulnerability-admin.php:555 wpvulnerability-adminms.php:828 +#, php-format +msgid "Learn how to create a Slack incoming webhook →" +msgstr "Dowiedz się jak utworzyć przychodzący webhook Slack →" + +#: wpvulnerability-admin.php:564 wpvulnerability-admin.php:2021 +#: wpvulnerability-adminms.php:837 wpvulnerability-adminms.php:2179 +msgid "Microsoft Teams" +msgstr "Microsoft Teams" + +#: wpvulnerability-admin.php:567 wpvulnerability-adminms.php:840 +msgid "Teams Webhook URL:" +msgstr "URL webhooka Teams:" + +#. translators: %s: Microsoft Teams documentation URL +#: wpvulnerability-admin.php:573 wpvulnerability-adminms.php:846 +#, php-format +msgid "Learn how to create a Teams incoming webhook →" +msgstr "Dowiedz się jak utworzyć przychodzący webhook Teams →" + +#: wpvulnerability-admin.php:582 wpvulnerability-adminms.php:855 +msgid "Discord" +msgstr "Discord" + +#: wpvulnerability-admin.php:585 wpvulnerability-adminms.php:858 +msgid "Discord Webhook URL:" +msgstr "URL webhooka Discord:" + +#. translators: %s: Discord documentation URL +#: wpvulnerability-admin.php:591 wpvulnerability-adminms.php:864 +#, php-format +msgid "Learn how to create a Discord webhook →" +msgstr "Dowiedz się jak utworzyć webhook Discord →" + +#: wpvulnerability-admin.php:600 wpvulnerability-adminms.php:873 +msgid "Telegram" +msgstr "Telegram" + +#: wpvulnerability-admin.php:603 wpvulnerability-adminms.php:876 +msgid "Telegram Bot Token:" +msgstr "Token bota Telegram:" + +#: wpvulnerability-admin.php:605 wpvulnerability-adminms.php:878 +msgid "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:607 wpvulnerability-adminms.php:880 +msgid "Telegram Chat ID:" +msgstr "ID czatu Telegram:" + +#. translators: %s: Telegram documentation URL +#: wpvulnerability-admin.php:613 wpvulnerability-adminms.php:886 +#, php-format +msgid "Learn how to create a Telegram bot and get Chat ID →" +msgstr "Dowiedz się jak utworzyć bota Telegram i uzyskać ID czatu →" + +#: wpvulnerability-admin.php:623 wpvulnerability-adminms.php:896 +msgid "Save Notification Settings" +msgstr "Zapisz ustawienia powiadomień" + +#: wpvulnerability-admin.php:700 wpvulnerability-admin.php:2552 +#: wpvulnerability-adminms.php:973 wpvulnerability-adminms.php:2459 +msgid "WordPress Components" +msgstr "Komponenty WordPress" + +#: wpvulnerability-admin.php:703 wpvulnerability-admin.php:2560 +#: wpvulnerability-adminms.php:976 wpvulnerability-adminms.php:2467 +msgid "WordPress Core" +msgstr "Rdzeń WordPress" + +#: wpvulnerability-admin.php:707 wpvulnerability-admin.php:1472 +#: wpvulnerability-admin.php:1573 wpvulnerability-admin.php:2109 +#: wpvulnerability-admin.php:2571 wpvulnerability-adminms.php:980 +#: wpvulnerability-adminms.php:1744 wpvulnerability-adminms.php:1843 +#: wpvulnerability-adminms.php:2266 wpvulnerability-adminms.php:2478 +msgid "Plugins" +msgstr "Wtyczki" + +#: wpvulnerability-admin.php:711 wpvulnerability-admin.php:1473 +#: wpvulnerability-admin.php:1574 wpvulnerability-admin.php:2114 +#: wpvulnerability-admin.php:2587 wpvulnerability-adminms.php:984 +#: wpvulnerability-adminms.php:1745 wpvulnerability-adminms.php:1844 +#: wpvulnerability-adminms.php:2271 wpvulnerability-adminms.php:2494 +msgid "Themes" +msgstr "Motywy" + +#: wpvulnerability-admin.php:717 wpvulnerability-adminms.php:990 +msgid "Software & Languages" +msgstr "Oprogramowanie i języki" + +#: wpvulnerability-admin.php:720 wpvulnerability-admin.php:1474 +#: wpvulnerability-admin.php:2119 wpvulnerability-adminms.php:993 +#: wpvulnerability-adminms.php:1746 wpvulnerability-adminms.php:2276 +#: wpvulnerability-sitehealth.php:178 +msgid "PHP" +msgstr "PHP" + +#: wpvulnerability-admin.php:726 wpvulnerability-adminms.php:999 +msgid "Web Servers" +msgstr "Serwery WWW" + +#: wpvulnerability-admin.php:729 wpvulnerability-admin.php:1475 +#: wpvulnerability-admin.php:2124 wpvulnerability-adminms.php:1002 +#: wpvulnerability-adminms.php:1747 wpvulnerability-adminms.php:2281 +#: wpvulnerability-sitehealth.php:179 +msgid "Apache HTTPD" +msgstr "Apache HTTPD" + +#: wpvulnerability-admin.php:733 wpvulnerability-admin.php:1476 +#: wpvulnerability-admin.php:2129 wpvulnerability-adminms.php:1006 +#: wpvulnerability-adminms.php:1748 wpvulnerability-adminms.php:2286 +msgid "nginx" +msgstr "nginx" + +#: wpvulnerability-admin.php:739 wpvulnerability-adminms.php:1012 +msgid "Databases" +msgstr "Bazy danych" + +#: wpvulnerability-admin.php:742 wpvulnerability-admin.php:1477 +#: wpvulnerability-admin.php:2134 wpvulnerability-adminms.php:1015 +#: wpvulnerability-adminms.php:1749 wpvulnerability-adminms.php:2291 +#: wpvulnerability-sitehealth.php:181 +msgid "MariaDB" +msgstr "MariaDB" + +#: wpvulnerability-admin.php:746 wpvulnerability-admin.php:1478 +#: wpvulnerability-admin.php:2139 wpvulnerability-adminms.php:1019 +#: wpvulnerability-adminms.php:1750 wpvulnerability-adminms.php:2296 +#: wpvulnerability-sitehealth.php:182 +msgid "MySQL" +msgstr "MySQL" + +#: wpvulnerability-admin.php:750 wpvulnerability-admin.php:1483 +#: wpvulnerability-admin.php:2164 wpvulnerability-admin.php:3104 +#: wpvulnerability-adminms.php:1023 wpvulnerability-adminms.php:1755 +#: wpvulnerability-adminms.php:2321 wpvulnerability-adminms.php:3281 +msgid "SQLite" +msgstr "SQLite" + +#: wpvulnerability-admin.php:756 wpvulnerability-adminms.php:1029 +msgid "Additional Tools" +msgstr "Dodatkowe narzędzia" + +#: wpvulnerability-admin.php:759 wpvulnerability-admin.php:1479 +#: wpvulnerability-admin.php:2144 wpvulnerability-admin.php:3101 +#: wpvulnerability-adminms.php:1032 wpvulnerability-adminms.php:1751 +#: wpvulnerability-adminms.php:2301 wpvulnerability-adminms.php:3278 +#: wpvulnerability-sitehealth.php:183 +msgid "ImageMagick" +msgstr "ImageMagick" + +#: wpvulnerability-admin.php:763 wpvulnerability-admin.php:1480 +#: wpvulnerability-admin.php:2149 wpvulnerability-adminms.php:1036 +#: wpvulnerability-adminms.php:1752 wpvulnerability-adminms.php:2306 +#: wpvulnerability-sitehealth.php:184 +msgid "curl" +msgstr "curl" + +#: wpvulnerability-admin.php:767 wpvulnerability-admin.php:1481 +#: wpvulnerability-admin.php:2154 wpvulnerability-adminms.php:1040 +#: wpvulnerability-adminms.php:1753 wpvulnerability-adminms.php:2311 +msgid "memcached" +msgstr "memcached" + +#: wpvulnerability-admin.php:771 wpvulnerability-admin.php:1482 +#: wpvulnerability-admin.php:2159 wpvulnerability-admin.php:3102 +#: wpvulnerability-adminms.php:1044 wpvulnerability-adminms.php:1754 +#: wpvulnerability-adminms.php:2316 wpvulnerability-adminms.php:3279 +msgid "Redis" +msgstr "Redis" + +#: wpvulnerability-admin.php:784 wpvulnerability-adminms.php:1057 +msgid "Component Analysis Settings" +msgstr "Ustawienia analizy komponentów" + +#: wpvulnerability-admin.php:787 wpvulnerability-adminms.php:1060 +msgid "Enable or disable vulnerability analysis for specific components." +msgstr "Włącz lub wyłącz analizę podatności dla określonych komponentów." + +#: wpvulnerability-admin.php:788 wpvulnerability-adminms.php:1061 +msgid "Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red." +msgstr "Zaznacz komponenty, które chcesz UKRYĆ przed skanowaniem i raportami podatności. Niezaznaczone komponenty będą aktywnie analizowane. Komponenty z aktywną analizą są wyświetlane na zielono, ukryte na czerwono." + +#: wpvulnerability-admin.php:820 wpvulnerability-adminms.php:1093 +msgid "Hidden (forced by constant)" +msgstr "Ukryte (wymuszone przez stałą)" + +#: wpvulnerability-admin.php:823 wpvulnerability-adminms.php:1096 +msgid "🔴 Analysis disabled" +msgstr "🔴 Analiza wyłączona" + +#: wpvulnerability-admin.php:826 wpvulnerability-adminms.php:1099 +msgid "🟢 Analysis active" +msgstr "🟢 Analiza aktywna" + +#: wpvulnerability-admin.php:848 wpvulnerability-adminms.php:1121 +msgid "Tip:" +msgstr "Wskazówka:" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:852 wpvulnerability-adminms.php:1125 +#, php-format +msgid "You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →" +msgstr "Możesz wymusić wyłączenie komponentów przez stałe wp-config.php. Dowiedz się więcej o wymuszonym ukrywaniu sprawdzeń →" + +#: wpvulnerability-admin.php:860 wpvulnerability-adminms.php:1133 +msgid "Save Analysis Settings" +msgstr "Zapisz ustawienia analizy" + +#: wpvulnerability-admin.php:920 wpvulnerability-adminms.php:1193 +msgid "« Previous" +msgstr "« Poprzednia" + +#: wpvulnerability-admin.php:921 wpvulnerability-adminms.php:1194 +msgid "Next »" +msgstr "Następna »" + +#: wpvulnerability-admin.php:932 wpvulnerability-adminms.php:1205 +msgid "Log entry not found or has been removed." +msgstr "Wpis dziennika nie został znaleziony lub został usunięty." + +#: wpvulnerability-admin.php:935 wpvulnerability-adminms.php:1208 +msgid "Unable to load the requested log entry." +msgstr "Nie można załadować żądanego wpisu dziennika." + +#: wpvulnerability-admin.php:945 wpvulnerability-adminms.php:1218 +msgid "Log Configuration" +msgstr "Konfiguracja dziennika" + +#: wpvulnerability-admin.php:950 wpvulnerability-adminms.php:1223 +msgid "Total Logs" +msgstr "Łączna liczba wpisów" + +#: wpvulnerability-admin.php:954 wpvulnerability-adminms.php:1227 +msgid "Retention Period" +msgstr "Okres przechowywania" + +#: wpvulnerability-admin.php:959 wpvulnerability-admin.php:1301 +#: wpvulnerability-admin.php:3029 wpvulnerability-admin.php:3043 +#: wpvulnerability-admin.php:3475 wpvulnerability-admin.php:3483 +#: wpvulnerability-adminms.php:1232 wpvulnerability-adminms.php:1574 +#: wpvulnerability-adminms.php:3206 wpvulnerability-adminms.php:3220 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Disabled" +msgstr "Wyłączony" + +#. translators: %d: Number of days. +#. translators: %d: number of days +#: wpvulnerability-admin.php:962 wpvulnerability-admin.php:984 +#: wpvulnerability-admin.php:3641 wpvulnerability-adminms.php:1235 +#: wpvulnerability-adminms.php:1257 wpvulnerability-adminms.php:3835 +#, php-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d dzień" +msgstr[1] "%d dni" +msgstr[2] "%d dni" +msgstr[3] "%d dnia" + +#: wpvulnerability-admin.php:975 wpvulnerability-adminms.php:1248 +msgid "Log Retention Period" +msgstr "Okres przechowywania dziennika" + +#: wpvulnerability-admin.php:981 wpvulnerability-adminms.php:1254 +msgid "None (Disabled)" +msgstr "Brak (wyłączony)" + +#: wpvulnerability-admin.php:1004 wpvulnerability-adminms.php:1277 +msgid "This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant." +msgstr "Ta wartość jest wymuszona przez stałą WPVULNERABILITY_LOG_RETENTION_DAYS." + +#: wpvulnerability-admin.php:1009 wpvulnerability-adminms.php:1282 +msgid "Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted." +msgstr "Wybierz jak długo WPVulnerability powinno przechowywać dzienniki odpowiedzi API. Starsze dzienniki są automatycznie usuwane." + +#: wpvulnerability-admin.php:1013 wpvulnerability-adminms.php:1286 +msgid "Save Configuration" +msgstr "Zapisz konfigurację" + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "Log retention is currently disabled." +msgstr "Przechowywanie dziennika jest obecnie wyłączone." + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "API responses are not being saved." +msgstr "Odpowiedzi API nie są zapisywane." + +#: wpvulnerability-admin.php:1031 wpvulnerability-adminms.php:1304 +msgid "Log Details" +msgstr "Szczegóły wpisu dziennika" + +#: wpvulnerability-admin.php:1035 wpvulnerability-admin.php:1104 +#: wpvulnerability-adminms.php:1308 wpvulnerability-adminms.php:1377 +msgid "Date" +msgstr "Data" + +#: wpvulnerability-admin.php:1039 wpvulnerability-admin.php:1105 +#: wpvulnerability-adminms.php:1312 wpvulnerability-adminms.php:1378 +msgid "API Endpoint" +msgstr "Punkt końcowy API" + +#: wpvulnerability-admin.php:1044 wpvulnerability-adminms.php:1317 +msgid "API Response" +msgstr "Odpowiedź API" + +#: wpvulnerability-admin.php:1049 wpvulnerability-adminms.php:1322 +msgid "Back to Logs" +msgstr "Wróć do dzienników" + +#: wpvulnerability-admin.php:1058 wpvulnerability-adminms.php:1331 +msgid "No logs available" +msgstr "Brak dostępnych dzienników" + +#: wpvulnerability-admin.php:1059 wpvulnerability-adminms.php:1332 +msgid "API response logs will appear here once the vulnerability scanner runs." +msgstr "Dzienniki odpowiedzi API pojawią się tutaj po uruchomieniu skanera podatności." + +#: wpvulnerability-admin.php:1063 wpvulnerability-adminms.php:1336 +msgid "API Response Logs" +msgstr "Dzienniki odpowiedzi API" + +#: wpvulnerability-admin.php:1073 wpvulnerability-adminms.php:1346 +msgid "Show:" +msgstr "Pokaż:" + +#: wpvulnerability-admin.php:1082 wpvulnerability-adminms.php:1355 +msgid "Apply" +msgstr "Zastosuj" + +#. translators: 1: first item, 2: last item, 3: total items +#: wpvulnerability-admin.php:1090 wpvulnerability-adminms.php:1363 +#, php-format +msgid "Showing %1$s–%2$s of %3$s" +msgstr "Wyświetlanie %1$s–%2$s z %3$s" + +#: wpvulnerability-admin.php:1106 wpvulnerability-adminms.php:1379 +msgid "Actions" +msgstr "Działania" + +#: wpvulnerability-admin.php:1133 wpvulnerability-admin.php:3957 +#: wpvulnerability-adminms.php:1406 wpvulnerability-adminms.php:4151 +msgid "View" +msgstr "Wyświetl" + +#: wpvulnerability-admin.php:1150 wpvulnerability-adminms.php:1423 +msgid "Danger Zone" +msgstr "Strefa niebezpieczna" + +#: wpvulnerability-admin.php:1152 wpvulnerability-adminms.php:1425 +msgid "Permanently delete all API response logs. This action cannot be undone." +msgstr "Trwale usuń wszystkie dzienniki odpowiedzi API. Tej akcji nie można cofnąć." + +#: wpvulnerability-admin.php:1154 wpvulnerability-adminms.php:1427 +msgid "Are you sure you want to delete all logs? This action cannot be undone." +msgstr "Czy na pewno chcesz usunąć wszystkie dzienniki? Tej akcji nie można cofnąć." + +#: wpvulnerability-admin.php:1157 wpvulnerability-adminms.php:1430 +msgid "Delete All Logs" +msgstr "Usuń wszystkie dzienniki" + +#: wpvulnerability-admin.php:1201 wpvulnerability-adminms.php:1474 +msgid "Reload Data from API" +msgstr "Załaduj ponownie dane z API" + +#: wpvulnerability-admin.php:1204 wpvulnerability-adminms.php:1477 +msgid "Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information." +msgstr "Załaduj ponownie wszystkie informacje o rdzeniu, wtyczkach, motywach i innych komponentach bezpośrednio z API, aby uzyskać zaktualizowane dane. Spowoduje to wyczyszczenie pamięci podręcznej i pobranie aktualnych informacji o podatnościach." + +#: wpvulnerability-admin.php:1209 wpvulnerability-adminms.php:1482 +msgid "Reload Data" +msgstr "Załaduj ponownie dane" + +#: wpvulnerability-admin.php:1218 wpvulnerability-adminms.php:1491 +msgid "Test Email Notifications" +msgstr "Testowanie powiadomień e-mail" + +#: wpvulnerability-admin.php:1221 wpvulnerability-adminms.php:1494 +msgid "Send a test email notification with current vulnerability data to verify your email configuration is working correctly." +msgstr "Wyślij testowe powiadomienie e-mail z aktualnymi danymi o podatnościach, aby zweryfikować poprawność konfiguracji e-mail." + +#: wpvulnerability-admin.php:1231 wpvulnerability-adminms.php:1504 +msgid "From address (configured via constant):" +msgstr "Adres nadawcy (skonfigurowany przez stałą):" + +#: wpvulnerability-admin.php:1243 wpvulnerability-adminms.php:1516 +msgid "From address (default):" +msgstr "Adres nadawcy (domyślny):" + +#: wpvulnerability-admin.php:1252 wpvulnerability-adminms.php:1525 +msgid "Learn how to customize the email sender address →" +msgstr "Dowiedz się jak dostosować adres nadawcy e-mail →" + +#: wpvulnerability-admin.php:1258 wpvulnerability-adminms.php:1531 +msgid "Send Test Email" +msgstr "Wyślij testowy e-mail" + +#: wpvulnerability-admin.php:1267 wpvulnerability-adminms.php:1540 +msgid "WP-Cron Status" +msgstr "Status WP-Cron" + +#: wpvulnerability-admin.php:1270 wpvulnerability-adminms.php:1543 +msgid "View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly." +msgstr "Wyświetl i zarządzaj zaplanowanymi zdarzeniami WP-Cron. Porównaj oczekiwane harmonogramy z rzeczywistymi zadaniami cron, aby upewnić się, że zadania automatyczne działają poprawnie." + +#: wpvulnerability-admin.php:1275 wpvulnerability-adminms.php:1548 +msgid "No cron data available." +msgstr "Brak dostępnych danych cron." + +#: wpvulnerability-admin.php:1281 wpvulnerability-adminms.php:1554 +msgid "Hook" +msgstr "Hook" + +#: wpvulnerability-admin.php:1282 wpvulnerability-adminms.php:1555 +msgid "Expected" +msgstr "Oczekiwany" + +#: wpvulnerability-admin.php:1283 wpvulnerability-adminms.php:1556 +msgid "Found" +msgstr "Znaleziony" + +#: wpvulnerability-admin.php:1284 wpvulnerability-adminms.php:1557 +msgid "Next Run" +msgstr "Następne uruchomienie" + +#: wpvulnerability-admin.php:1285 wpvulnerability-admin.php:3236 +#: wpvulnerability-admin.php:3559 wpvulnerability-adminms.php:1558 +#: wpvulnerability-adminms.php:3413 wpvulnerability-adminms.php:3753 +msgid "Status" +msgstr "Status" + +#: wpvulnerability-admin.php:1299 wpvulnerability-adminms.php:1572 +msgid "Not expected" +msgstr "Nieoczekiwany" + +#: wpvulnerability-admin.php:1321 wpvulnerability-adminms.php:1594 +#: wpvulnerability-general.php:1871 wpvulnerability-general.php:1872 +msgid "None" +msgstr "Brak" + +#: wpvulnerability-admin.php:1356 wpvulnerability-adminms.php:1629 +msgid "OK" +msgstr "OK" + +#: wpvulnerability-admin.php:1366 wpvulnerability-adminms.php:1639 +msgid "⚠️ Unexpected WPVulnerability Events" +msgstr "⚠️ Nieoczekiwane zdarzenia WPVulnerability" + +#: wpvulnerability-admin.php:1383 wpvulnerability-adminms.php:1656 +msgid "No interval" +msgstr "Brak interwału" + +#: wpvulnerability-admin.php:1390 wpvulnerability-adminms.php:1663 +msgid "Next:" +msgstr "Następny:" + +#: wpvulnerability-admin.php:1400 wpvulnerability-adminms.php:1673 +msgid "Repair Cron Events" +msgstr "Napraw zdarzenia cron" + +#: wpvulnerability-admin.php:1408 wpvulnerability-adminms.php:1681 +msgid "Uninstall Data" +msgstr "Dane przy odinstalowaniu" + +#: wpvulnerability-admin.php:1410 wpvulnerability-adminms.php:1683 +msgid "By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall." +msgstr "Domyślnie wszystkie dane wtyczki są zachowywane po usunięciu WPVulnerability. Włącz opcję poniżej tylko jeśli chcesz, aby wszystkie opcje, dzienniki i dane z pamięci podręcznej zostały trwale usunięte podczas odinstalowania." + +#: wpvulnerability-admin.php:1420 wpvulnerability-adminms.php:1693 +msgid "Delete all plugin data on uninstall" +msgstr "Usuń wszystkie dane wtyczki podczas odinstalowania" + +#: wpvulnerability-admin.php:1423 wpvulnerability-adminms.php:1696 +msgid "Default: unchecked (data preserved). Check only if you want a clean removal." +msgstr "Domyślnie: niezaznaczone (dane zachowane). Zaznacz tylko jeśli chcesz całkowite usunięcie." + +#: wpvulnerability-admin.php:1425 wpvulnerability-adminms.php:1698 +msgid "Save preference" +msgstr "Zapisz preferencję" + +#: wpvulnerability-admin.php:1432 wpvulnerability-adminms.php:1705 +msgid "Reset WPVulnerability" +msgstr "Zresetuj WPVulnerability" + +#: wpvulnerability-admin.php:1434 wpvulnerability-adminms.php:1707 +msgid "Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API." +msgstr "Usuń wszystkie ustawienia WPVulnerability, dane z pamięci podręcznej, dzienniki i zaplanowane zdarzenia, następnie przywróć ustawienia domyślne i załaduj ponownie dane z API." + +#: wpvulnerability-admin.php:1436 wpvulnerability-adminms.php:1709 +msgid "This action cannot be undone." +msgstr "Tej akcji nie można cofnąć." + +#: wpvulnerability-admin.php:1438 wpvulnerability-adminms.php:1711 +msgid "Are you sure you want to reset all WPVulnerability data? This action cannot be undone." +msgstr "Czy na pewno chcesz zresetować wszystkie dane WPVulnerability? Tej akcji nie można cofnąć." + +#: wpvulnerability-admin.php:1441 wpvulnerability-adminms.php:1713 +msgid "Reset Plugin" +msgstr "Zresetuj wtyczkę" + +#: wpvulnerability-admin.php:1468 wpvulnerability-adminms.php:1740 +msgid "Vulnerability Database Statistics" +msgstr "Statystyki bazy danych podatności" + +#. translators: number of vulnerabilities. +#: wpvulnerability-admin.php:1510 wpvulnerability-adminms.php:1782 +#, php-format +msgid "%s vulnerability" +msgid_plural "%s vulnerabilities" +msgstr[0] "%s podatność" +msgstr[1] "%s podatności" +msgstr[2] "%s podatności" +msgstr[3] "%s podatności" + +#. translators: number of products. +#: wpvulnerability-admin.php:1520 wpvulnerability-adminms.php:1792 +#, php-format +msgid "(%s product)" +msgid_plural "(%s products)" +msgstr[0] "(%s produkt)" +msgstr[1] "(%s produkty)" +msgstr[2] "(%s produktów)" +msgstr[3] "(%s produktu)" + +#: wpvulnerability-admin.php:1527 wpvulnerability-adminms.php:1799 +msgid "No data" +msgstr "Brak danych" + +#. translators: date of last update. +#: wpvulnerability-admin.php:1544 wpvulnerability-adminms.php:1814 +#, php-format +msgid "Database last updated: %s" +msgstr "Baza danych ostatnio zaktualizowana: %s" + +#: wpvulnerability-admin.php:1566 wpvulnerability-adminms.php:1836 +msgid "Intelligence Sources" +msgstr "Źródła danych wywiadowczych" + +#: wpvulnerability-admin.php:1567 wpvulnerability-adminms.php:1837 +msgid "Number of vulnerabilities contributed by each intelligence source." +msgstr "Liczba podatności wniesiona przez każde źródło danych wywiadowczych." + +#: wpvulnerability-admin.php:1571 wpvulnerability-adminms.php:1841 +msgid "Source" +msgstr "Źródło" + +#: wpvulnerability-admin.php:1572 wpvulnerability-admin.php:2104 +#: wpvulnerability-adminms.php:1842 wpvulnerability-adminms.php:2261 +msgid "Core" +msgstr "Rdzeń" + +#: wpvulnerability-admin.php:1603 wpvulnerability-adminms.php:1873 +msgid "Sponsors" +msgstr "Sponsorzy" + +#: wpvulnerability-admin.php:1626 wpvulnerability-adminms.php:1896 +msgid "No sponsor data available." +msgstr "Brak dostępnych danych o sponsorach." + +#: wpvulnerability-admin.php:1633 wpvulnerability-adminms.php:1903 +msgid "Contributors" +msgstr "Współtwórcy" + +#: wpvulnerability-admin.php:1656 wpvulnerability-adminms.php:1926 +msgid "No contributor data available." +msgstr "Brak dostępnych danych o współtwórcach." + +#: wpvulnerability-admin.php:1674 wpvulnerability-adminms.php:432 +msgid "You do not have sufficient permissions to access this page." +msgstr "Nie masz wystarczających uprawnień, aby uzyskać dostęp do tej strony." + +#: wpvulnerability-admin.php:1684 wpvulnerability-adminms.php:441 +msgid "WPVulnerability settings" +msgstr "Ustawienia WPVulnerability" + +#: wpvulnerability-admin.php:1801 wpvulnerability-adminms.php:1963 +msgid "Configure and save these settings to receive notifications." +msgstr "Skonfiguruj i zapisz te ustawienia, aby otrzymywać powiadomienia." + +#: wpvulnerability-admin.php:1814 wpvulnerability-adminms.php:2071 +msgid "Configure and save these settings to hide vulnerabilities." +msgstr "Skonfiguruj i zapisz te ustawienia, aby ukryć podatności." + +#: wpvulnerability-admin.php:1845 wpvulnerability-adminms.php:1993 +msgid "Default administrator email" +msgstr "Domyślny adres e-mail administratora" + +#: wpvulnerability-admin.php:1909 wpvulnerability-adminms.php:2057 +msgid "Read more if you want to force the cache time." +msgstr "Przeczytaj więcej, jeśli chcesz wymusić czas pamięci podręcznej." + +#: wpvulnerability-admin.php:1939 wpvulnerability-adminms.php:2099 +msgid "Never" +msgstr "Nigdy" + +#: wpvulnerability-admin.php:1944 wpvulnerability-adminms.php:2104 +msgid "Daily" +msgstr "Codziennie" + +#: wpvulnerability-admin.php:1949 wpvulnerability-adminms.php:2109 +msgid "Weekly" +msgstr "Tygodniowo" + +#: wpvulnerability-admin.php:1953 wpvulnerability-adminms.php:2113 +msgid "Day" +msgstr "Dzień" + +#: wpvulnerability-admin.php:1966 wpvulnerability-adminms.php:2126 +msgid "Hour" +msgstr "Godzina" + +#: wpvulnerability-admin.php:1968 wpvulnerability-adminms.php:2128 +msgid "Minute" +msgstr "Minuta" + +#: wpvulnerability-admin.php:2166 wpvulnerability-adminms.php:2323 +msgid "Read more about how to force the deactivation of an item." +msgstr "Przeczytaj więcej o tym, jak wymusić dezaktywację elementu." + +#: wpvulnerability-admin.php:2292 wpvulnerability-adminms.php:2870 +msgid "Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com" +msgstr "Nieprawidłowy URL webhooka Slack. Musi być prawidłowym adresem HTTPS z hooks.slack.com" + +#: wpvulnerability-admin.php:2315 wpvulnerability-adminms.php:2893 +msgid "Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com" +msgstr "Nieprawidłowy URL webhooka Microsoft Teams. Musi być prawidłowym adresem HTTPS z office.com, office365.com lub api.hooks.microsoft.com" + +#: wpvulnerability-admin.php:2338 wpvulnerability-adminms.php:2916 +msgid "Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com" +msgstr "Nieprawidłowy URL webhooka Discord. Musi być prawidłowym adresem HTTPS z discord.com lub discordapp.com" + +#: wpvulnerability-admin.php:2357 wpvulnerability-adminms.php:2935 +msgid "Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "Nieprawidłowy format tokena bota Telegram. Musi wyglądać tak: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:2493 wpvulnerability-adminms.php:2400 +msgid "All Clear" +msgstr "Wszystko w porządku" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2503 wpvulnerability-adminms.php:2410 +#, php-format +msgid "%d Critical Issue Found" +msgid_plural "%d Critical Issues Found" +msgstr[0] "Znaleziono %d krytyczny problem" +msgstr[1] "Znaleziono %d krytyczne problemy" +msgstr[2] "Znaleziono %d krytycznych problemów" +msgstr[3] "Znaleziono %d krytycznego problemu" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2508 wpvulnerability-adminms.php:2415 +#, php-format +msgid "%d Issue Found" +msgid_plural "%d Issues Found" +msgstr[0] "Znaleziono %d problem" +msgstr[1] "Znaleziono %d problemy" +msgstr[2] "Znaleziono %d problemów" +msgstr[3] "Znaleziono %d problemu" + +#: wpvulnerability-admin.php:2515 wpvulnerability-adminms.php:2422 +msgid "Never checked" +msgstr "Nigdy nie sprawdzano" + +#. translators: %d: number of minutes +#: wpvulnerability-admin.php:2523 wpvulnerability-adminms.php:2430 +#, php-format +msgid "%d minute ago" +msgid_plural "%d minutes ago" +msgstr[0] "%d minutę temu" +msgstr[1] "%d minuty temu" +msgstr[2] "%d minut temu" +msgstr[3] "%d minuty temu" + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:2527 wpvulnerability-adminms.php:2434 +#, php-format +msgid "%d hour ago" +msgid_plural "%d hours ago" +msgstr[0] "%d godzinę temu" +msgstr[1] "%d godziny temu" +msgstr[2] "%d godzin temu" +msgstr[3] "%d godziny temu" + +#. translators: %s: time since last check +#: wpvulnerability-admin.php:2539 wpvulnerability-adminms.php:2446 +#, php-format +msgid "Last checked: %s" +msgstr "Ostatnio sprawdzono: %s" + +#: wpvulnerability-admin.php:2540 wpvulnerability-adminms.php:2447 +msgid "Refresh Now" +msgstr "Odśwież teraz" + +#: wpvulnerability-admin.php:2547 wpvulnerability-adminms.php:2454 +msgid "No vulnerabilities detected" +msgstr "Nie wykryto podatności" + +#: wpvulnerability-admin.php:2548 wpvulnerability-adminms.php:2455 +msgid "Your site is up to date and secure" +msgstr "Twoja strona jest aktualna i bezpieczna" + +#: wpvulnerability-admin.php:2616 wpvulnerability-adminms.php:2523 +msgid "Server Software" +msgstr "Oprogramowanie serwera" + +#: wpvulnerability-admin.php:2829 wpvulnerability-adminms.php:2736 +msgid "Site Health" +msgstr "Kondycja witryny" + +#: wpvulnerability-admin.php:2831 wpvulnerability-adminms.php:2738 +#: wpvulnerability-run.php:33 +msgid "Settings" +msgstr "Ustawienia" + +#: wpvulnerability-admin.php:2846 wpvulnerability-adminms.php:2754 +msgid "WPVulnerability Status" +msgstr "Status WPVulnerability" + +#: wpvulnerability-admin.php:2878 wpvulnerability-adminms.php:3052 +msgid "Receive vulnerability notifications" +msgstr "Otrzymuj powiadomienia o podatnościach" + +#: wpvulnerability-admin.php:2886 wpvulnerability-adminms.php:3060 +msgid "Cache expiration time" +msgstr "Czas wygaśnięcia pamięci podręcznej" + +#: wpvulnerability-admin.php:2895 wpvulnerability-adminms.php:3069 +msgid "How often you want to receive notifications" +msgstr "Jak często chcesz otrzymywać powiadomienia" + +#: wpvulnerability-admin.php:2904 wpvulnerability-adminms.php:3078 +msgid "Where do you want to receive notifications?" +msgstr "Gdzie chcesz otrzymywać powiadomienia?" + +#: wpvulnerability-admin.php:2913 wpvulnerability-adminms.php:3087 +msgid "Email addresses to notify (separated by commas)" +msgstr "Adresy e-mail do powiadamiania (oddzielone przecinkami)" + +#: wpvulnerability-admin.php:2922 wpvulnerability-adminms.php:3096 +msgid "Slack webhook URL" +msgstr "URL webhooka Slack" + +#: wpvulnerability-admin.php:2931 wpvulnerability-adminms.php:3105 +msgid "Teams webhook URL" +msgstr "URL webhooka Teams" + +#: wpvulnerability-admin.php:2950 wpvulnerability-adminms.php:3126 +msgid "Vulnerabilities to hide" +msgstr "Podatności do ukrycia" + +#: wpvulnerability-admin.php:2958 wpvulnerability-adminms.php:3134 +msgid "What do you want to hide?" +msgstr "Co chcesz ukryć?" + +#: wpvulnerability-admin.php:3008 wpvulnerability-adminms.php:3185 +msgid "Standard (Hybrid Detection)" +msgstr "Standardowy (wykrywanie hybrydowe)" + +#: wpvulnerability-admin.php:3009 wpvulnerability-adminms.php:3186 +msgid "Strict (Extensions Only)" +msgstr "Ścisły (tylko rozszerzenia)" + +#: wpvulnerability-admin.php:3010 wpvulnerability-adminms.php:3187 +msgid "Disabled (No Detection)" +msgstr "Wyłączony (brak wykrywania)" + +#: wpvulnerability-admin.php:3016 wpvulnerability-adminms.php:3193 +msgid "Security Status" +msgstr "Status bezpieczeństwa" + +#: wpvulnerability-admin.php:3020 wpvulnerability-adminms.php:3197 +msgid "Security Mode" +msgstr "Tryb bezpieczeństwa" + +#: wpvulnerability-admin.php:3025 wpvulnerability-adminms.php:3202 +msgid "Shell Execution" +msgstr "Wykonywanie poleceń powłoki" + +#: wpvulnerability-admin.php:3027 wpvulnerability-admin.php:3475 +#: wpvulnerability-admin.php:3483 wpvulnerability-adminms.php:3204 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Enabled" +msgstr "Włączony" + +#: wpvulnerability-admin.php:3034 wpvulnerability-adminms.php:3211 +msgid "Audit Logging" +msgstr "Rejestrowanie audytu" + +#. translators: %d: number of days +#: wpvulnerability-admin.php:3039 wpvulnerability-adminms.php:3216 +#, php-format +msgid "Enabled (%d days)" +msgstr "Włączony (%d dni)" + +#: wpvulnerability-admin.php:3048 wpvulnerability-adminms.php:3225 +msgid "Total Log Entries" +msgstr "Łączna liczba wpisów w dzienniku" + +#: wpvulnerability-admin.php:3055 wpvulnerability-adminms.php:3232 +msgid "Last Shell Execution" +msgstr "Ostatnie wykonanie polecenia powłoki" + +#. translators: %s: time ago +#: wpvulnerability-admin.php:3061 wpvulnerability-admin.php:3266 +#: wpvulnerability-adminms.php:3238 wpvulnerability-adminms.php:3441 +#, php-format +msgid "%s ago" +msgstr "%s temu" + +#: wpvulnerability-admin.php:3073 wpvulnerability-adminms.php:3250 +msgid "Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST." +msgstr "Skonfiguruj ustawienia bezpieczeństwa przez stałe wp-config.php: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST." + +#. translators: %s: URL to security documentation +#: wpvulnerability-admin.php:3079 wpvulnerability-adminms.php:3256 +#, php-format +msgid "See security configuration documentation for details." +msgstr "Więcej szczegółów w dokumentacji konfiguracji bezpieczeństwa." + +#: wpvulnerability-admin.php:3103 wpvulnerability-adminms.php:3280 +msgid "Memcached" +msgstr "Memcached" + +#: wpvulnerability-admin.php:3131 wpvulnerability-adminms.php:3308 +msgid "Imagick Extension" +msgstr "Rozszerzenie Imagick" + +#: wpvulnerability-admin.php:3132 wpvulnerability-adminms.php:3309 +msgid "Redis Extension" +msgstr "Rozszerzenie Redis" + +#: wpvulnerability-admin.php:3133 wpvulnerability-adminms.php:3310 +msgid "Memcached Extension" +msgstr "Rozszerzenie Memcached" + +#: wpvulnerability-admin.php:3134 wpvulnerability-adminms.php:3311 +msgid "Memcache Extension" +msgstr "Rozszerzenie Memcache" + +#: wpvulnerability-admin.php:3135 wpvulnerability-adminms.php:3312 +msgid "SQLite3 Extension" +msgstr "Rozszerzenie SQLite3" + +#: wpvulnerability-admin.php:3136 wpvulnerability-adminms.php:3313 +msgid "PDO SQLite" +msgstr "PDO SQLite" + +#: wpvulnerability-admin.php:3137 wpvulnerability-adminms.php:3314 +msgid "Shell Command" +msgstr "Polecenie powłoki" + +#: wpvulnerability-admin.php:3138 wpvulnerability-adminms.php:3315 +msgid "Binary Check" +msgstr "Sprawdzenie pliku binarnego" + +#: wpvulnerability-admin.php:3139 wpvulnerability-adminms.php:3316 +msgid "Not Detected" +msgstr "Niewykryte" + +#: wpvulnerability-admin.php:3143 wpvulnerability-adminms.php:3320 +msgid "Software Detection Methods" +msgstr "Metody wykrywania oprogramowania" + +#: wpvulnerability-admin.php:3144 wpvulnerability-adminms.php:3321 +msgid "Shows which detection method was used for each software component and the reliability score." +msgstr "Pokazuje, która metoda wykrywania była użyta dla każdego komponentu oprogramowania oraz ocenę niezawodności." + +#: wpvulnerability-admin.php:3149 wpvulnerability-admin.php:3234 +#: wpvulnerability-admin.php:3558 wpvulnerability-adminms.php:3326 +#: wpvulnerability-adminms.php:3411 wpvulnerability-adminms.php:3752 +msgid "Component" +msgstr "Komponent" + +#: wpvulnerability-admin.php:3150 wpvulnerability-adminms.php:3327 +msgid "Version" +msgstr "Wersja" + +#: wpvulnerability-admin.php:3151 wpvulnerability-adminms.php:3328 +msgid "Detection Method" +msgstr "Metoda wykrywania" + +#: wpvulnerability-admin.php:3152 wpvulnerability-adminms.php:3329 +msgid "Reliability" +msgstr "Niezawodność" + +#: wpvulnerability-admin.php:3164 wpvulnerability-adminms.php:3341 +msgid "Not detected" +msgstr "Niewykryte" + +#: wpvulnerability-admin.php:3220 wpvulnerability-adminms.php:3397 +msgid "Shell Execution Audit Logs" +msgstr "Dzienniki audytu wykonania poleceń powłoki" + +#: wpvulnerability-admin.php:3221 wpvulnerability-adminms.php:3398 +msgid "Complete audit trail of shell command executions for security monitoring." +msgstr "Pełny ślad audytu wykonań poleceń powłoki do monitorowania bezpieczeństwa." + +#: wpvulnerability-admin.php:3226 wpvulnerability-adminms.php:3403 +msgid "No shell execution logs found." +msgstr "Nie znaleziono dzienników wykonania poleceń powłoki." + +#: wpvulnerability-admin.php:3227 wpvulnerability-adminms.php:3404 +msgid "Logs will appear here when shell commands are executed for software detection." +msgstr "Dzienniki pojawią się tutaj, gdy polecenia powłoki będą wykonywane w celu wykrywania oprogramowania." + +#: wpvulnerability-admin.php:3233 wpvulnerability-adminms.php:3410 +msgid "Time" +msgstr "Czas" + +#: wpvulnerability-admin.php:3235 wpvulnerability-adminms.php:3412 +msgid "Command" +msgstr "Polecenie" + +#: wpvulnerability-admin.php:3237 wpvulnerability-adminms.php:3414 +msgid "User" +msgstr "Użytkownik" + +#: wpvulnerability-admin.php:3238 wpvulnerability-adminms.php:3415 +msgid "Output" +msgstr "Wyjście" + +#. translators: %d: number of logs shown +#: wpvulnerability-admin.php:3302 wpvulnerability-adminms.php:3477 +#, php-format +msgid "Showing the %d most recent log entries." +msgstr "Wyświetlanie %d ostatnich wpisów dziennika." + +#: wpvulnerability-admin.php:3320 wpvulnerability-adminms.php:3565 +msgid "Invalid nonce." +msgstr "Nieprawidłowy nonce." + +#: wpvulnerability-admin.php:3325 wpvulnerability-adminms.php:3570 +msgid "Insufficient permissions." +msgstr "Niewystarczające uprawnienia." + +#: wpvulnerability-admin.php:3331 wpvulnerability-adminms.php:3576 +msgid "No component specified." +msgstr "Nie podano komponentu." + +#: wpvulnerability-admin.php:3366 wpvulnerability-adminms.php:3524 +msgid "Debug Information" +msgstr "Informacje debugowania" + +#: wpvulnerability-admin.php:3368 wpvulnerability-adminms.php:3526 +msgid "This tab is only visible when WP_DEBUG is enabled. Use with caution." +msgstr "Ta karta jest widoczna tylko gdy WP_DEBUG jest włączony. Używaj ostrożnie." + +#: wpvulnerability-admin.php:3429 wpvulnerability-adminms.php:3623 +msgid "System Information" +msgstr "Informacje o systemie" + +#: wpvulnerability-admin.php:3433 wpvulnerability-adminms.php:3627 +msgid "WordPress Version" +msgstr "Wersja WordPress" + +#: wpvulnerability-admin.php:3437 wpvulnerability-adminms.php:3631 +msgid "Multisite" +msgstr "Multisajt" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "Yes" +msgstr "Tak" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "No" +msgstr "Nie" + +#: wpvulnerability-admin.php:3441 wpvulnerability-adminms.php:3635 +msgid "Language" +msgstr "Język" + +#: wpvulnerability-admin.php:3445 wpvulnerability-adminms.php:3639 +msgid "PHP Version" +msgstr "Wersja PHP" + +#: wpvulnerability-admin.php:3449 wpvulnerability-adminms.php:3643 +msgid "PHP Extensions" +msgstr "Rozszerzenia PHP" + +#: wpvulnerability-admin.php:3460 wpvulnerability-adminms.php:3654 +msgid "PHP Memory Limit" +msgstr "Limit pamięci PHP" + +#: wpvulnerability-admin.php:3464 wpvulnerability-adminms.php:3658 +msgid "Database" +msgstr "Baza danych" + +#: wpvulnerability-admin.php:3468 wpvulnerability-adminms.php:3662 +msgid "Web Server" +msgstr "Serwer WWW" + +#: wpvulnerability-admin.php:3472 wpvulnerability-adminms.php:3666 +msgid "WP_DEBUG" +msgstr "WP_DEBUG" + +#: wpvulnerability-admin.php:3480 wpvulnerability-adminms.php:3674 +msgid "WP_DEBUG_LOG" +msgstr "WP_DEBUG_LOG" + +#: wpvulnerability-admin.php:3490 wpvulnerability-adminms.php:3684 +msgid "Path:" +msgstr "Ścieżka:" + +#. translators: %s: file size +#: wpvulnerability-admin.php:3499 wpvulnerability-adminms.php:3698 +#, php-format +msgid "Size: %s" +msgstr "Rozmiar: %s" + +#: wpvulnerability-admin.php:3510 wpvulnerability-adminms.php:3704 +msgid "View Log File" +msgstr "Wyświetl plik dziennika" + +#: wpvulnerability-admin.php:3516 wpvulnerability-adminms.php:3710 +msgid "Log file is not web-accessible (outside wp-content)" +msgstr "Plik dziennika nie jest dostępny przez sieć (poza wp-content)" + +#: wpvulnerability-admin.php:3522 wpvulnerability-adminms.php:3716 +msgid "Log file does not exist yet" +msgstr "Plik dziennika jeszcze nie istnieje" + +#: wpvulnerability-admin.php:3530 wpvulnerability-adminms.php:3724 +msgid "Plugin Version" +msgstr "Wersja wtyczki" + +#: wpvulnerability-admin.php:3554 wpvulnerability-adminms.php:3748 +msgid "Component Detection" +msgstr "Wykrywanie komponentów" + +#: wpvulnerability-admin.php:3560 wpvulnerability-adminms.php:3754 +msgid "Version Detected" +msgstr "Wykryta wersja" + +#: wpvulnerability-admin.php:3561 wpvulnerability-adminms.php:3755 +msgid "Analyzed" +msgstr "Przeanalizowany" + +#: wpvulnerability-admin.php:3562 wpvulnerability-adminms.php:3756 +msgid "Cache Status" +msgstr "Status pamięci podręcznej" + +#: wpvulnerability-admin.php:3622 wpvulnerability-adminms.php:3816 +msgid "Configuration Summary" +msgstr "Podsumowanie konfiguracji" + +#: wpvulnerability-admin.php:3626 wpvulnerability-adminms.php:3820 +msgid "Cache Duration" +msgstr "Czas trwania pamięci podręcznej" + +#: wpvulnerability-admin.php:3636 wpvulnerability-adminms.php:3830 +msgid "Log Retention" +msgstr "Przechowywanie dziennika" + +#: wpvulnerability-admin.php:3646 wpvulnerability-adminms.php:3840 +msgid "Components Analyzed" +msgstr "Przeanalizowane komponenty" + +#: wpvulnerability-admin.php:3661 wpvulnerability-adminms.php:3855 +msgid "Notification Email" +msgstr "E-mail powiadomień" + +#: wpvulnerability-admin.php:3682 wpvulnerability-adminms.php:3876 +msgid "Slack Webhook" +msgstr "Webhook Slack" + +#: wpvulnerability-admin.php:3692 wpvulnerability-admin.php:3712 +#: wpvulnerability-admin.php:3732 wpvulnerability-admin.php:3752 +#: wpvulnerability-adminms.php:3886 wpvulnerability-adminms.php:3906 +#: wpvulnerability-adminms.php:3926 wpvulnerability-adminms.php:3946 +msgid "Configured & Enabled" +msgstr "Skonfigurowany i włączony" + +#: wpvulnerability-admin.php:3694 wpvulnerability-admin.php:3714 +#: wpvulnerability-admin.php:3734 wpvulnerability-admin.php:3754 +#: wpvulnerability-adminms.php:3888 wpvulnerability-adminms.php:3908 +#: wpvulnerability-adminms.php:3928 wpvulnerability-adminms.php:3948 +msgid "Configured (Disabled)" +msgstr "Skonfigurowany (wyłączony)" + +#: wpvulnerability-admin.php:3696 wpvulnerability-admin.php:3716 +#: wpvulnerability-admin.php:3736 wpvulnerability-admin.php:3756 +#: wpvulnerability-adminms.php:3890 wpvulnerability-adminms.php:3910 +#: wpvulnerability-adminms.php:3930 wpvulnerability-adminms.php:3950 +msgid "Not configured" +msgstr "Nieskonfigurowany" + +#: wpvulnerability-admin.php:3703 wpvulnerability-adminms.php:3897 +msgid "Teams Webhook" +msgstr "Webhook Teams" + +#: wpvulnerability-admin.php:3723 wpvulnerability-adminms.php:3917 +msgid "Discord Webhook" +msgstr "Webhook Discord" + +#: wpvulnerability-admin.php:3743 wpvulnerability-adminms.php:3937 +msgid "Telegram Bot" +msgstr "Bot Telegram" + +#: wpvulnerability-admin.php:3788 wpvulnerability-adminms.php:3982 +msgid "Cron Status" +msgstr "Status cron" + +#: wpvulnerability-admin.php:3792 wpvulnerability-adminms.php:3986 +msgid "Update Database" +msgstr "Aktualizuj bazę danych" + +#. translators: %s: date and time +#: wpvulnerability-admin.php:3797 wpvulnerability-admin.php:3810 +#: wpvulnerability-adminms.php:3991 wpvulnerability-adminms.php:4004 +#, php-format +msgid "Next run: %s" +msgstr "Następne uruchomienie: %s" + +#: wpvulnerability-admin.php:3800 wpvulnerability-admin.php:3813 +#: wpvulnerability-adminms.php:3994 wpvulnerability-adminms.php:4007 +msgid "Not scheduled" +msgstr "Niezaplanowany" + +#: wpvulnerability-admin.php:3805 wpvulnerability-adminms.php:3999 +msgid "Send Notification" +msgstr "Wyślij powiadomienie" + +#: wpvulnerability-admin.php:3826 wpvulnerability-adminms.php:4020 +msgid "Run Update Now" +msgstr "Uruchom aktualizację teraz" + +#: wpvulnerability-admin.php:3834 wpvulnerability-adminms.php:4028 +msgid "Run Notification Now" +msgstr "Wyślij powiadomienie teraz" + +#: wpvulnerability-admin.php:3840 wpvulnerability-adminms.php:4034 +msgid "You do not have permission to run these actions." +msgstr "Nie masz uprawnień do wykonywania tych działań." + +#: wpvulnerability-admin.php:3859 wpvulnerability-adminms.php:4053 +msgid "API Testing" +msgstr "Testowanie API" + +#: wpvulnerability-admin.php:3862 wpvulnerability-adminms.php:4056 +msgid "Test API connectivity for each component. Click a button to send a test request." +msgstr "Przetestuj łączność API dla każdego komponentu. Kliknij przycisk, aby wysłać żądanie testowe." + +#. translators: %s: component name +#: wpvulnerability-admin.php:3869 wpvulnerability-adminms.php:4063 +#, php-format +msgid "Test %s" +msgstr "Testuj %s" + +#: wpvulnerability-admin.php:3884 wpvulnerability-adminms.php:4078 +msgid "Testing..." +msgstr "Testowanie..." + +#: wpvulnerability-admin.php:3900 wpvulnerability-adminms.php:4094 +msgid "HTTP Code:" +msgstr "Kod HTTP:" + +#: wpvulnerability-admin.php:3901 wpvulnerability-adminms.php:4095 +msgid "Response Time:" +msgstr "Czas odpowiedzi:" + +#: wpvulnerability-admin.php:3903 wpvulnerability-adminms.php:4097 +msgid "Response Preview" +msgstr "Podgląd odpowiedzi" + +#: wpvulnerability-admin.php:3910 wpvulnerability-admin.php:3914 +#: wpvulnerability-adminms.php:4104 wpvulnerability-adminms.php:4108 +msgid "Test" +msgstr "Test" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "Error:" +msgstr "Błąd:" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "AJAX request failed." +msgstr "Żądanie AJAX nie powiodło się." + +#: wpvulnerability-admin.php:3922 wpvulnerability-adminms.php:4116 +msgid "You do not have permission to test API connectivity." +msgstr "Nie masz uprawnień do testowania łączności API." + +#: wpvulnerability-admin.php:3943 wpvulnerability-adminms.php:4137 +msgid "Database Options Viewer" +msgstr "Przeglądarka opcji bazy danych" + +#: wpvulnerability-admin.php:3944 wpvulnerability-adminms.php:4138 +msgid "View the raw data stored in WordPress options." +msgstr "Wyświetl surowe dane przechowywane w opcjach WordPress." + +#: wpvulnerability-admin.php:3950 wpvulnerability-adminms.php:4144 +msgid "Select an option..." +msgstr "Wybierz opcję..." + +#: wpvulnerability-admin.php:3969 wpvulnerability-adminms.php:4163 +msgid "Option not found or empty." +msgstr "Opcja nie została znaleziona lub jest pusta." + +#: wpvulnerability-admin.php:3987 wpvulnerability-adminms.php:4182 +msgid "Quick Actions" +msgstr "Szybkie działania" + +#: wpvulnerability-admin.php:3988 wpvulnerability-adminms.php:4183 +msgid "Perform debugging actions. Use with caution." +msgstr "Wykonaj działania debugowania. Używaj ostrożnie." + +#: wpvulnerability-admin.php:3992 wpvulnerability-adminms.php:4187 +msgid "Are you sure you want to clear all caches?" +msgstr "Czy na pewno chcesz wyczyścić wszystkie pamięci podręczne?" + +#: wpvulnerability-admin.php:3996 wpvulnerability-adminms.php:4191 +msgid "Clear All Caches" +msgstr "Wyczyść wszystkie pamięci podręczne" + +#: wpvulnerability-admin.php:4000 wpvulnerability-adminms.php:4195 +msgid "Are you sure you want to reset signatures?" +msgstr "Czy na pewno chcesz zresetować sygnatury?" + +#: wpvulnerability-admin.php:4004 wpvulnerability-adminms.php:4199 +msgid "Reset Signatures" +msgstr "Zresetuj sygnatury" + +#: wpvulnerability-admin.php:4012 wpvulnerability-adminms.php:4207 +msgid "Export Debug Info" +msgstr "Eksportuj informacje debugowania" + +#: wpvulnerability-admin.php:4018 wpvulnerability-adminms.php:4213 +msgid "You do not have permission to perform these actions." +msgstr "Nie masz uprawnień do wykonywania tych działań." + +#: wpvulnerability-adminms.php:101 wpvulnerability-adminms.php:199 +msgid "Settings saved." +msgstr "Ustawienia zapisane." + +#: wpvulnerability-adminms.php:277 +msgid "WPVulnerability cron events have been repaired across the network." +msgstr "Zdarzenia cron WPVulnerability zostały naprawione w całej sieci." + +#: wpvulnerability-adminms.php:3512 +msgid "You do not have permission to access this page." +msgstr "Nie masz uprawnień dostępu do tej strony." + +#. translators: 1: core version +#: wpvulnerability-core.php:33 +#, php-format +msgid "WordPress %1$s has a known vulnerability that may be affecting your installed version." +msgstr "WordPress %1$s ma znane luki w zabezpieczeniach, które mogą wpływać na zainstalowaną wersję." + +#: wpvulnerability-core.php:115 wpvulnerability-plugins.php:207 +#: wpvulnerability-process.php:335 wpvulnerability-process.php:443 +#: wpvulnerability-process.php:529 wpvulnerability-themes.php:173 +#: wpvulnerability-themes.php:469 +msgid "Actively exploited" +msgstr "Aktywnie eksploatowana" + +#: wpvulnerability-core.php:122 wpvulnerability-plugins.php:214 +#: wpvulnerability-process.php:342 wpvulnerability-process.php:450 +#: wpvulnerability-themes.php:180 wpvulnerability-themes.php:476 +msgid "Public exploit" +msgstr "Publiczny exploit" + +#: wpvulnerability-core.php:125 wpvulnerability-plugins.php:217 +#: wpvulnerability-process.php:345 wpvulnerability-process.php:453 +#: wpvulnerability-themes.php:183 wpvulnerability-themes.php:479 +msgid "Automatable" +msgstr "Automatyzowalne" + +#: wpvulnerability-core.php:139 wpvulnerability-plugins.php:245 +#: wpvulnerability-process.php:371 wpvulnerability-process.php:469 +#: wpvulnerability-process.php:544 wpvulnerability-themes.php:211 +#: wpvulnerability-themes.php:503 +msgid "References:" +msgstr "Odniesienia:" + +#: wpvulnerability-debug.php:399 +msgid "Invalid component specified." +msgstr "Podano nieprawidłowy komponent." + +#: wpvulnerability-debug.php:423 +msgid "Version not detected for this component." +msgstr "Nie wykryto wersji dla tego komponentu." + +#: wpvulnerability-debug.php:453 +msgid "API request successful." +msgstr "Żądanie API zakończyło się sukcesem." + +#. translators: %d: HTTP status code +#: wpvulnerability-debug.php:469 +#, php-format +msgid "API returned HTTP code %d." +msgstr "API zwróciło kod HTTP %d." + +#: wpvulnerability-general.php:355 +msgid "WPVulnerability Logs" +msgstr "Dzienniki WPVulnerability" + +#: wpvulnerability-general.php:356 +msgid "WPVulnerability Log" +msgstr "Dziennik WPVulnerability" + +#: wpvulnerability-general.php:1873 wpvulnerability-general.php:1874 +msgid "Low" +msgstr "Niskie" + +#: wpvulnerability-general.php:1875 wpvulnerability-general.php:1876 +msgid "Medium" +msgstr "Średnie" + +#: wpvulnerability-general.php:1877 wpvulnerability-general.php:1878 +msgid "High" +msgstr "Wysokie" + +#: wpvulnerability-general.php:1879 wpvulnerability-general.php:1880 +msgid "Critical" +msgstr "Krytyczne" + +#: wpvulnerability-general.php:2684 +msgid "WPVulnerability Shell Logs" +msgstr "Dzienniki powłoki WPVulnerability" + +#: wpvulnerability-general.php:2685 +msgid "WPVulnerability Shell Log" +msgstr "Dziennik powłoki WPVulnerability" + +#: wpvulnerability-notifications.php:30 +msgid "Every week" +msgstr "Co tydzień" + +#: wpvulnerability-notifications.php:57 +msgid "Every day" +msgstr "Codziennie" + +#: wpvulnerability-notifications.php:84 +msgid "Invalid request." +msgstr "Nieprawidłowe żądanie." + +#: wpvulnerability-notifications.php:104 +msgid "You have unsubscribed from WPVulnerability notifications." +msgstr "Wypisałeś się z powiadomień WPVulnerability." + +#. translators: %1$s the website of Database, %2$s database site name. +#: wpvulnerability-notifications.php:289 +#, php-format +msgid "Learn more about the WordPress Vulnerability Database API at %2$s" +msgstr "Dowiedz się więcej o API bazy danych podatności WordPress na %2$s" + +#. translators: %1$s unsubscribe URL. +#: wpvulnerability-notifications.php:300 +#, php-format +msgid "Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings." +msgstr "Chcesz przestać otrzymywać te alerty? Wypisz się lub zmień częstotliwość e-maili na Nigdy w ustawieniach WPVulnerability." + +#: wpvulnerability-notifications.php:595 +msgid "No vulnerabilities found" +msgstr "Nie znaleziono podatności" + +#: wpvulnerability-notifications.php:596 +msgid "This is likely a test. The site does not have vulnerabilities." +msgstr "To prawdopodobnie test. Witryna nie ma podatności." + +#: wpvulnerability-notifications.php:601 +msgid "Core vulnerabilities" +msgstr "Podatności rdzenia" + +#: wpvulnerability-notifications.php:607 +msgid "Plugins vulnerabilities" +msgstr "Podatności wtyczek" + +#: wpvulnerability-notifications.php:613 +msgid "Themes vulnerabilities" +msgstr "Podatności motywów" + +#: wpvulnerability-notifications.php:619 +msgid "PHP vulnerabilities" +msgstr "Podatności PHP" + +#: wpvulnerability-notifications.php:625 +msgid "Apache HTTPD vulnerabilities" +msgstr "Podatności Apache HTTPD" + +#: wpvulnerability-notifications.php:631 +msgid "Nginx vulnerabilities" +msgstr "Podatności Nginx" + +#: wpvulnerability-notifications.php:637 +msgid "MariaDB vulnerabilities" +msgstr "Podatności MariaDB" + +#: wpvulnerability-notifications.php:643 +msgid "MySQL vulnerabilities" +msgstr "Podatności MySQL" + +#: wpvulnerability-notifications.php:649 +msgid "ImageMagick vulnerabilities" +msgstr "Podatności ImageMagick" + +#: wpvulnerability-notifications.php:655 +msgid "curl vulnerabilities" +msgstr "Podatności curl" + +#: wpvulnerability-notifications.php:661 +msgid "memcached vulnerabilities" +msgstr "Podatności memcached" + +#: wpvulnerability-notifications.php:667 +msgid "Redis vulnerabilities" +msgstr "Podatności Redis" + +#: wpvulnerability-notifications.php:673 +msgid "SQLite vulnerabilities" +msgstr "Podatności SQLite" + +#. translators: Site name. +#: wpvulnerability-notifications.php:696 +#, php-format +msgid "Vulnerability found: %s" +msgstr "Znaleziono podatność: %s" + +#: wpvulnerability-notifications.php:700 +msgid "Vulnerability found" +msgstr "Znaleziono podatność" + +#. translators: 1: Plugin name +#. translators: 1: theme name +#: wpvulnerability-plugins.php:116 wpvulnerability-themes.php:82 +#, php-format +msgid "%1$s has a known vulnerability that may be affecting your installed version." +msgstr "%1$s ma znane luki w zabezpieczeniach, które mogą wpływać na zainstalowaną wersję." + +#: wpvulnerability-plugins.php:230 wpvulnerability-process.php:358 +msgid "This plugin is closed. Please replace it with another." +msgstr "Ta wtyczka jest zamknięta. Proszę zastąpić ją inną." + +#: wpvulnerability-plugins.php:233 wpvulnerability-process.php:361 +msgid "This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates." +msgstr "Ta podatność wydaje się być niezałatana. Obserwuj nadchodzące aktualizacje wtyczki." + +#: wpvulnerability-plugins.php:570 +msgid "It hasn't been updated in over a year." +msgstr "Nie była aktualizowana przez ponad rok." + +#: wpvulnerability-plugins.php:576 +msgid "It may no longer be available (closed?)." +msgstr "Może już być niedostępna (zamknięta?)." + +#: wpvulnerability-plugins.php:614 wpvulnerability-plugins.php:621 +msgid "Last updated on" +msgstr "Ostatnio zaktualizowana" + +#. translators: the number of vulnerabilities. +#: wpvulnerability-plugins.php:764 wpvulnerability-themes.php:704 +#, php-format +msgid "Vulnerabilities (%d)" +msgstr "Podatności (%d)" + +#. translators: %s: software name. +#: wpvulnerability-process.php:601 +#, php-format +msgid "%s running" +msgstr "%s uruchomiony" + +#: wpvulnerability-process.php:611 wpvulnerability-process.php:792 +msgid "End of Life" +msgstr "Koniec wsparcia" + +#: wpvulnerability-process.php:613 wpvulnerability-process.php:618 +msgid "End of life:" +msgstr "Koniec wsparcia:" + +#: wpvulnerability-process.php:616 +msgid "Supported" +msgstr "Wspierany" + +#: wpvulnerability-process.php:652 +msgid "Plugin" +msgstr "Wtyczka" + +#: wpvulnerability-process.php:721 +msgid "Theme" +msgstr "Motyw" + +#. translators: %s: end-of-life date +#: wpvulnerability-process.php:790 +#, php-format +msgid "End of life: %s" +msgstr "Koniec wsparcia: %s" + +#: wpvulnerability-process.php:795 +msgid "EOL" +msgstr "EOL" + +#: wpvulnerability-run.php:30 +msgid "Network Settings" +msgstr "Ustawienia sieci" + +#: wpvulnerability-run.php:731 wpvulnerability-run.php:781 +#: wpvulnerability-run.php:791 wpvulnerability-run.php:836 +msgid "Vulnerabilities" +msgstr "Podatności" + +#: wpvulnerability-schedule.php:30 +msgid "Every 6 hours" +msgstr "Co 6 godzin" + +#: wpvulnerability-schedule.php:303 +msgid "Database updates" +msgstr "Aktualizacje bazy danych" + +#: wpvulnerability-schedule.php:309 +msgid "Log cleanup" +msgstr "Czyszczenie dzienników" + +#: wpvulnerability-schedule.php:439 +msgid "Notifications are scheduled, but settings currently disable them. Please review the notifications tab." +msgstr "Powiadomienia są zaplanowane, ale ustawienia je aktualnie wyłączają. Sprawdź kartę powiadomień." + +#: wpvulnerability-schedule.php:442 +msgid "This event should not be scheduled for this site." +msgstr "To zdarzenie nie powinno być zaplanowane dla tej witryny." + +#: wpvulnerability-schedule.php:446 +msgid "Not expected for this site." +msgstr "Nieoczekiwane dla tej witryny." + +#: wpvulnerability-schedule.php:450 +msgid "No instances found." +msgstr "Nie znaleziono wystąpień." + +#: wpvulnerability-schedule.php:456 +msgid "Scheduled with an unexpected interval." +msgstr "Zaplanowane z nieoczekiwanym interwałem." + +#: wpvulnerability-schedule.php:460 +msgid "Multiple instances detected." +msgstr "Wykryto wiele wystąpień." + +#: wpvulnerability-schedule.php:465 +msgid "Scheduled as expected." +msgstr "Zaplanowane zgodnie z oczekiwaniami." + +#: wpvulnerability-sitehealth.php:22 +msgid "There aren't plugins vulnerabilities" +msgstr "Brak podatności wtyczek" + +#: wpvulnerability-sitehealth.php:30 +msgid "Shows possible vulnerabilities that exist in installed plugins." +msgstr "Pokazuje możliwe podatności w zainstalowanych wtyczkach." + +#. translators: Number of plugins vulnerabilities. +#: wpvulnerability-sitehealth.php:43 +#, php-format +msgid "There is %d plugin with vulnerabilities" +msgid_plural "There are %d plugins with vulnerabilities" +msgstr[0] "Jest %d wtyczka z podatnościami" +msgstr[1] "Są %d wtyczki z podatnościami" +msgstr[2] "Jest %d wtyczek z podatnościami" +msgstr[3] "Są %d wtyczki z podatnościami" + +#: wpvulnerability-sitehealth.php:49 +msgid "We've detected potential vulnerabilities in installed plugins. Please check them and keep them updated." +msgstr "Wykryliśmy potencjalne podatności w zainstalowanych wtyczkach. Sprawdź je i aktualizuj." + +#: wpvulnerability-sitehealth.php:57 +msgid "Update plugins" +msgstr "Aktualizuj wtyczki" + +#: wpvulnerability-sitehealth.php:74 +msgid "There aren't themes vulnerabilities" +msgstr "Brak podatności motywów" + +#: wpvulnerability-sitehealth.php:82 +msgid "Shows possible vulnerabilities that exist in installed themes." +msgstr "Pokazuje możliwe podatności w zainstalowanych motywach." + +#. translators: Number of themes vulnerabilities. +#: wpvulnerability-sitehealth.php:95 +#, php-format +msgid "There is %d theme with vulnerabilities" +msgid_plural "There are %d themes with vulnerabilities" +msgstr[0] "Jest %d motyw z podatnościami" +msgstr[1] "Są %d motywy z podatnościami" +msgstr[2] "Jest %d motywów z podatnościami" +msgstr[3] "Są %d motywy z podatnościami" + +#: wpvulnerability-sitehealth.php:101 +msgid "We've detected potential vulnerabilities in installed themes. Please check them and keep them updated." +msgstr "Wykryliśmy potencjalne podatności w zainstalowanych motywach. Sprawdź je i aktualizuj." + +#: wpvulnerability-sitehealth.php:109 +msgid "Update themes" +msgstr "Aktualizuj motywy" + +#: wpvulnerability-sitehealth.php:126 +msgid "There aren't WordPress vulnerabilities" +msgstr "Brak podatności WordPress" + +#: wpvulnerability-sitehealth.php:134 +msgid "Shows possible vulnerabilities existing in the WordPress core." +msgstr "Pokazuje możliwe podatności w rdzeniu WordPress." + +#. translators: Number of core vulnerabilities. +#: wpvulnerability-sitehealth.php:147 +#, php-format +msgid "There is %d core vulnerability" +msgid_plural "There are %d core vulnerabilities" +msgstr[0] "Jest %d podatność rdzenia" +msgstr[1] "Są %d podatności rdzenia" +msgstr[2] "Jest %d podatności rdzenia" +msgstr[3] "Są %d podatności rdzenia" + +#: wpvulnerability-sitehealth.php:153 +msgid "We've detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated." +msgstr "Wykryliśmy potencjalne podatności w tej instalacji WordPress. Sprawdź je i aktualizuj instalację." + +#: wpvulnerability-sitehealth.php:161 +msgid "Update WordPress" +msgstr "Aktualizuj WordPress" + +#: wpvulnerability-sitehealth.php:180 +msgid "Nginx" +msgstr "Nginx" + +#: wpvulnerability-sitehealth.php:189 +msgid "Invalid software type" +msgstr "Nieprawidłowy typ oprogramowania" + +#: wpvulnerability-sitehealth.php:192 +msgid "Error" +msgstr "Błąd" + +#: wpvulnerability-sitehealth.php:197 +msgid "The specified software type is not valid." +msgstr "Podany typ oprogramowania jest nieprawidłowy." + +#. translators: name of the software. +#: wpvulnerability-sitehealth.php:207 +#, php-format +msgid "There aren't %s vulnerabilities" +msgstr "Brak podatności %s" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:216 +#, php-format +msgid "Shows possible vulnerabilities existing in %s." +msgstr "Pokazuje możliwe podatności istniejące w %s." + +#. translators: Software and number of vulnerabilities. +#: wpvulnerability-sitehealth.php:229 +#, php-format +msgid "There is %1$d %2$s vulnerability" +msgid_plural "There are %1$d %2$s vulnerabilities" +msgstr[0] "Jest %1$d podatność %2$s" +msgstr[1] "Są %1$d podatności %2$s" +msgstr[2] "Jest %1$d podatności %2$s" +msgstr[3] "Są %1$d podatności %2$s" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:237 +#, php-format +msgid "We've detected potential vulnerabilities in %s. Please check them and keep your installation updated." +msgstr "Wykryliśmy potencjalne podatności w %s. Sprawdź je i aktualizuj instalację." + +#: wpvulnerability-sitehealth.php:246 +msgid "How to update PHP" +msgstr "Jak zaktualizować PHP" + +#: wpvulnerability-sitehealth.php:386 +msgid "WPVulnerability Core" +msgstr "WPVulnerability Rdzeń" + +#: wpvulnerability-sitehealth.php:394 +msgid "WPVulnerability Themes" +msgstr "WPVulnerability Motywy" + +#: wpvulnerability-sitehealth.php:402 +msgid "WPVulnerability Plugins" +msgstr "WPVulnerability Wtyczki" + +#: wpvulnerability-sitehealth.php:410 +msgid "WPVulnerability PHP" +msgstr "WPVulnerability PHP" + +#: wpvulnerability-sitehealth.php:418 +msgid "WPVulnerability Apache HTTPD" +msgstr "WPVulnerability Apache HTTPD" + +#: wpvulnerability-sitehealth.php:426 +msgid "WPVulnerability Nginx" +msgstr "WPVulnerability Nginx" + +#: wpvulnerability-sitehealth.php:434 +msgid "WPVulnerability MariaDB" +msgstr "WPVulnerability MariaDB" + +#: wpvulnerability-sitehealth.php:442 +msgid "WPVulnerability MySQL" +msgstr "WPVulnerability MySQL" + +#: wpvulnerability-sitehealth.php:450 +msgid "WPVulnerability ImageMagick" +msgstr "WPVulnerability ImageMagick" + +#: wpvulnerability-sitehealth.php:458 +msgid "WPVulnerability curl" +msgstr "WPVulnerability curl" + +#: wpvulnerability-sitehealth.php:466 +msgid "WPVulnerability memcached" +msgstr "WPVulnerability memcached" + +#: wpvulnerability-sitehealth.php:474 +msgid "WPVulnerability redis" +msgstr "WPVulnerability redis" + +#: wpvulnerability-sitehealth.php:482 +msgid "WPVulnerability sqlite" +msgstr "WPVulnerability sqlite" + +#: wpvulnerability-themes.php:196 wpvulnerability-themes.php:492 +msgid "This theme is closed. Please replace it with another." +msgstr "Ten motyw jest zamknięty. Proszę zastąpić go innym." + +#: wpvulnerability-themes.php:199 wpvulnerability-themes.php:495 +msgid "This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates." +msgstr "Ta podatność wydaje się być niezałatana. Obserwuj nadchodzące aktualizacje motywu." + +#: wpvulnerability-themes.php:391 +msgid "This theme has known vulnerabilities that may be affecting your installed version." +msgstr "Ten motyw ma znane podatności, które mogą wpływać na zainstalowaną wersję." diff --git a/languages/wpvulnerability-pt.l10n.php b/languages/wpvulnerability-pt.l10n.php new file mode 100644 index 0000000..411e8a1 --- /dev/null +++ b/languages/wpvulnerability-pt.l10n.php @@ -0,0 +1,2 @@ +'wpvulnerability','plural-forms'=>'nplurals=2; plural=(n != 1);','language'=>'pt','project-id-version'=>'WPVulnerability 5.0.0','pot-creation-date'=>'2026-05-27T16:32:22+00:00','po-revision-date'=>'2026-05-27 00:00+0000','x-generator'=>'AI Translation','messages'=>['This command requires a WordPress administrator. Run with --user=.'=>'Este comando requer um administrador WordPress. Execute com --user=.','No core vulnerabilities found.'=>'Nenhuma vulnerabilidade no núcleo encontrada.','No plugin vulnerabilities found.'=>'Nenhuma vulnerabilidade em plugins encontrada.','No theme vulnerabilities found.'=>'Nenhuma vulnerabilidade em temas encontrada.','No %s vulnerabilities found.'=>'Nenhuma vulnerabilidade em %s encontrada.','Data from source has been reloaded.'=>'Os dados da fonte foram recarregados.','You do not have permission to reload data.'=>'Não tem permissão para recarregar os dados.','Test email has been sent.'=>'O email de teste foi enviado.','Test email has failed. Please, check your email settings.'=>'O envio do email de teste falhou. Por favor, verifique as suas configurações de email.','You do not have permission to send test emails.'=>'Não tem permissão para enviar emails de teste.','WPVulnerability cron events have been repaired.'=>'Os eventos cron do WPVulnerability foram reparados.','You do not have permission to repair cron events.'=>'Não tem permissão para reparar eventos cron.','All logs have been deleted.'=>'Todos os registos foram eliminados.','You do not have permission to delete logs.'=>'Não tem permissão para eliminar registos.','Uninstall preference saved.'=>'Preferência de desinstalação guardada.','WPVulnerability has been reset to defaults and reloaded.'=>'O WPVulnerability foi reposto para os valores predefinidos e recarregado.','You do not have permission to reset WPVulnerability.'=>'Não tem permissão para repor o WPVulnerability.','All caches have been cleared.'=>'Todas as caches foram limpas.','You do not have permission to clear caches.'=>'Não tem permissão para limpar as caches.','Plugin and theme signatures have been reset.'=>'As assinaturas de plugins e temas foram repostas.','You do not have permission to reset signatures.'=>'Não tem permissão para repor as assinaturas.','You do not have permission to export debug information.'=>'Não tem permissão para exportar informações de depuração.','Database update has been executed.'=>'A atualização da base de dados foi executada.','You do not have permission to run database updates.'=>'Não tem permissão para executar atualizações da base de dados.','Notification has been sent.'=>'A notificação foi enviada.','Notification sending failed.'=>'O envio da notificação falhou.','You do not have permission to send notifications.'=>'Não tem permissão para enviar notificações.','Notifications'=>'Notificações','Analysis'=>'Análise','Logs'=>'Registos','Security'=>'Segurança','Tools'=>'Ferramentas','Debug'=>'Depuração','About'=>'Sobre','Notification Settings'=>'Configurações de Notificação','Configure how and when you want to receive vulnerability notifications.'=>'Configure como e quando pretende receber notificações de vulnerabilidades.','Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software.'=>'Mantenha-se informado sobre vulnerabilidades de segurança na sua instalação WordPress, plugins, temas e software do servidor.','Cache Expiration Time'=>'Tempo de Expiração da Cache','FORCED'=>'FORÇADO','How long to cache vulnerability data before refreshing from the API.'=>'Durante quanto tempo guardar em cache os dados de vulnerabilidades antes de atualizar a partir da API.','%d hour'=>'%d hora' . "\0" . '%d horas','You can force the cache time via wp-config.php constant. Learn more →'=>'Pode forçar o tempo de cache através de uma constante em wp-config.php. Saiba mais →','Notification Frequency'=>'Frequência de Notificação','Choose how often you want to receive vulnerability notifications.'=>'Escolha a frequência com que pretende receber notificações de vulnerabilidades.','Never - Disable automatic notifications'=>'Nunca - Desativar notificações automáticas','Daily - Receive notifications every day'=>'Diariamente - Receber notificações todos os dias','Weekly - Receive notifications once a week'=>'Semanalmente - Receber notificações uma vez por semana','Day:'=>'Dia:','Monday'=>'Segunda-feira','Tuesday'=>'Terça-feira','Wednesday'=>'Quarta-feira','Thursday'=>'Quinta-feira','Friday'=>'Sexta-feira','Saturday'=>'Sábado','Sunday'=>'Domingo','Time:'=>'Hora:','(24-hour format, server timezone)'=>'(formato de 24 horas, fuso horário do servidor)','Notification Channels'=>'Canais de Notificação','Select where you want to receive notifications.'=>'Selecione onde pretende receber as notificações.','Email'=>'Email','Email Addresses (separated by commas):'=>'Endereços de Email (separados por vírgulas):','Default:'=>'Predefinição:','Slack'=>'Slack','Slack Webhook URL:'=>'URL do Webhook do Slack:','Learn how to create a Slack incoming webhook →'=>'Saiba como criar um webhook de entrada do Slack →','Microsoft Teams'=>'Microsoft Teams','Teams Webhook URL:'=>'URL do Webhook do Teams:','Learn how to create a Teams incoming webhook →'=>'Saiba como criar um webhook de entrada do Teams →','Discord'=>'Discord','Discord Webhook URL:'=>'URL do Webhook do Discord:','Learn how to create a Discord webhook →'=>'Saiba como criar um webhook do Discord →','Telegram'=>'Telegram','Telegram Bot Token:'=>'Token do Bot do Telegram:','Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Formato: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','Telegram Chat ID:'=>'ID do Chat do Telegram:','Learn how to create a Telegram bot and get Chat ID →'=>'Saiba como criar um bot do Telegram e obter o ID do Chat →','Save Notification Settings'=>'Guardar Configurações de Notificação','WordPress Components'=>'Componentes WordPress','WordPress Core'=>'Núcleo WordPress','Plugins'=>'Plugins','Themes'=>'Temas','Software & Languages'=>'Software e Linguagens','PHP'=>'PHP','Web Servers'=>'Servidores Web','Apache HTTPD'=>'Apache HTTPD','nginx'=>'nginx','Databases'=>'Bases de Dados','MariaDB'=>'MariaDB','MySQL'=>'MySQL','SQLite'=>'SQLite','Additional Tools'=>'Ferramentas Adicionais','ImageMagick'=>'ImageMagick','curl'=>'curl','memcached'=>'memcached','Redis'=>'Redis','Component Analysis Settings'=>'Configurações de Análise de Componentes','Enable or disable vulnerability analysis for specific components.'=>'Ativar ou desativar a análise de vulnerabilidades para componentes específicos.','Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red.'=>'Marque os componentes que pretende OCULTAR das análises e relatórios de vulnerabilidades. Os componentes não marcados serão analisados ativamente. Os componentes com análise ativa são mostrados a verde, os componentes ocultos a vermelho.','Hidden (forced by constant)'=>'Oculto (forçado por constante)','🔴 Analysis disabled'=>'🔴 Análise desativada','🟢 Analysis active'=>'🟢 Análise ativa','Tip:'=>'Sugestão:','You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →'=>'Pode forçar a desativação de componentes através de constantes em wp-config.php. Saiba mais sobre como ocultar verificações forçadamente →','Save Analysis Settings'=>'Guardar Configurações de Análise','« Previous'=>'« Anterior','Next »'=>'Seguinte »','Log entry not found or has been removed.'=>'Entrada de registo não encontrada ou removida.','Unable to load the requested log entry.'=>'Não foi possível carregar a entrada de registo solicitada.','Log Configuration'=>'Configuração de Registos','Total Logs'=>'Total de Registos','Retention Period'=>'Período de Retenção','Disabled'=>'Desativado','%d day'=>'%d dia' . "\0" . '%d dias','Log Retention Period'=>'Período de Retenção de Registos','None (Disabled)'=>'Nenhum (Desativado)','This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant.'=>'Este valor é imposto pela constante WPVULNERABILITY_LOG_RETENTION_DAYS.','Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted.'=>'Escolha durante quanto tempo o WPVulnerability deve manter os registos de resposta da API. Os registos mais antigos são eliminados automaticamente.','Save Configuration'=>'Guardar Configuração','Log retention is currently disabled.'=>'A retenção de registos está atualmente desativada.','API responses are not being saved.'=>'As respostas da API não estão a ser guardadas.','Log Details'=>'Detalhes do Registo','Date'=>'Data','API Endpoint'=>'Endpoint da API','API Response'=>'Resposta da API','Back to Logs'=>'Voltar aos Registos','No logs available'=>'Sem registos disponíveis','API response logs will appear here once the vulnerability scanner runs.'=>'Os registos de resposta da API aparecerão aqui assim que o analisador de vulnerabilidades for executado.','API Response Logs'=>'Registos de Resposta da API','Show:'=>'Mostrar:','Apply'=>'Aplicar','Showing %1$s–%2$s of %3$s'=>'A mostrar %1$s–%2$s de %3$s','Actions'=>'Ações','View'=>'Ver','Danger Zone'=>'Zona de Perigo','Permanently delete all API response logs. This action cannot be undone.'=>'Eliminar permanentemente todos os registos de resposta da API. Esta ação não pode ser desfeita.','Are you sure you want to delete all logs? This action cannot be undone.'=>'Tem a certeza de que pretende eliminar todos os registos? Esta ação não pode ser desfeita.','Delete All Logs'=>'Eliminar Todos os Registos','Reload Data from API'=>'Recarregar Dados da API','Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information.'=>'Recarregue todas as informações do Núcleo, Plugins, Temas e outros componentes diretamente da API para obter dados atualizados. Isto irá limpar a cache e obter informações de vulnerabilidades atualizadas.','Reload Data'=>'Recarregar Dados','Test Email Notifications'=>'Testar Notificações por Email','Send a test email notification with current vulnerability data to verify your email configuration is working correctly.'=>'Envie uma notificação de email de teste com os dados de vulnerabilidades atuais para verificar se a sua configuração de email está a funcionar corretamente.','From address (configured via constant):'=>'Endereço de origem (configurado via constante):','From address (default):'=>'Endereço de origem (predefinição):','Learn how to customize the email sender address →'=>'Saiba como personalizar o endereço do remetente de email →','Send Test Email'=>'Enviar Email de Teste','WP-Cron Status'=>'Estado do WP-Cron','View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly.'=>'Veja e gira os eventos agendados do WP-Cron. Compare os agendamentos esperados com as tarefas cron reais para garantir que as tarefas automatizadas estão a funcionar corretamente.','No cron data available.'=>'Sem dados cron disponíveis.','Hook'=>'Hook','Expected'=>'Esperado','Found'=>'Encontrado','Next Run'=>'Próxima Execução','Status'=>'Estado','Not expected'=>'Não esperado','None'=>'Nenhum','OK'=>'OK','⚠️ Unexpected WPVulnerability Events'=>'⚠️ Eventos Inesperados do WPVulnerability','No interval'=>'Sem intervalo','Next:'=>'Próximo:','Repair Cron Events'=>'Reparar Eventos Cron','Uninstall Data'=>'Dados de Desinstalação','By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall.'=>'Por predefinição, todos os dados do plugin são preservados quando o WPVulnerability é eliminado. Ative a opção abaixo apenas se pretender que todas as opções, registos e dados em cache sejam removidos permanentemente na desinstalação.','Delete all plugin data on uninstall'=>'Eliminar todos os dados do plugin na desinstalação','Default: unchecked (data preserved). Check only if you want a clean removal.'=>'Predefinição: desmarcado (dados preservados). Marque apenas se pretender uma remoção limpa.','Save preference'=>'Guardar preferência','Reset WPVulnerability'=>'Repor WPVulnerability','Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API.'=>'Elimine todas as configurações do WPVulnerability, dados em cache, registos e eventos agendados, depois restaure os valores predefinidos e recarregue os dados da API.','This action cannot be undone.'=>'Esta ação não pode ser desfeita.','Are you sure you want to reset all WPVulnerability data? This action cannot be undone.'=>'Tem a certeza de que pretende repor todos os dados do WPVulnerability? Esta ação não pode ser desfeita.','Reset Plugin'=>'Repor Plugin','Vulnerability Database Statistics'=>'Estatísticas da Base de Dados de Vulnerabilidades','%s vulnerability'=>'%s vulnerabilidade' . "\0" . '%s vulnerabilidades','(%s product)'=>'(%s produto)' . "\0" . '(%s produtos)','No data'=>'Sem dados','Database last updated: %s'=>'Base de dados atualizada pela última vez: %s','Intelligence Sources'=>'Fontes de Inteligência','Number of vulnerabilities contributed by each intelligence source.'=>'Número de vulnerabilidades contribuídas por cada fonte de inteligência.','Source'=>'Fonte','Core'=>'Núcleo','Sponsors'=>'Patrocinadores','No sponsor data available.'=>'Sem dados de patrocinadores disponíveis.','Contributors'=>'Contribuidores','No contributor data available.'=>'Sem dados de contribuidores disponíveis.','You do not have sufficient permissions to access this page.'=>'Não tem permissões suficientes para aceder a esta página.','WPVulnerability settings'=>'Configurações do WPVulnerability','Configure and save these settings to receive notifications.'=>'Configure e guarde estas definições para receber notificações.','Configure and save these settings to hide vulnerabilities.'=>'Configure e guarde estas definições para ocultar vulnerabilidades.','Default administrator email'=>'Email predefinido do administrador','Read more if you want to force the cache time.'=>'Leia mais se pretender forçar o tempo de cache.','Never'=>'Nunca','Daily'=>'Diariamente','Weekly'=>'Semanalmente','Day'=>'Dia','Hour'=>'Hora','Minute'=>'Minuto','Read more about how to force the deactivation of an item.'=>'Leia mais sobre como forçar a desativação de um item.','Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com'=>'URL do webhook do Slack inválido. Deve ser um URL HTTPS válido de hooks.slack.com','Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com'=>'URL do webhook do Microsoft Teams inválido. Deve ser um URL HTTPS válido de office.com, office365.com ou api.hooks.microsoft.com','Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com'=>'URL do webhook do Discord inválido. Deve ser um URL HTTPS válido de discord.com ou discordapp.com','Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Formato do token do bot do Telegram inválido. Deve ser como: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','All Clear'=>'Tudo em Ordem','%d Critical Issue Found'=>'%d Problema Crítico Encontrado' . "\0" . '%d Problemas Críticos Encontrados','%d Issue Found'=>'%d Problema Encontrado' . "\0" . '%d Problemas Encontrados','Never checked'=>'Nunca verificado','%d minute ago'=>'há %d minuto' . "\0" . 'há %d minutos','%d hour ago'=>'há %d hora' . "\0" . 'há %d horas','Last checked: %s'=>'Última verificação: %s','Refresh Now'=>'Atualizar Agora','No vulnerabilities detected'=>'Nenhuma vulnerabilidade detetada','Your site is up to date and secure'=>'O seu site está atualizado e seguro','Server Software'=>'Software do Servidor','Site Health'=>'Saúde do Site','Settings'=>'Configurações','WPVulnerability Status'=>'Estado do WPVulnerability','Receive vulnerability notifications'=>'Receber notificações de vulnerabilidades','Cache expiration time'=>'Tempo de expiração da cache','How often you want to receive notifications'=>'Com que frequência pretende receber notificações','Where do you want to receive notifications?'=>'Onde pretende receber as notificações?','Email addresses to notify (separated by commas)'=>'Endereços de email a notificar (separados por vírgulas)','Slack webhook URL'=>'URL do webhook do Slack','Teams webhook URL'=>'URL do webhook do Teams','Vulnerabilities to hide'=>'Vulnerabilidades a ocultar','What do you want to hide?'=>'O que pretende ocultar?','Standard (Hybrid Detection)'=>'Padrão (Deteção Híbrida)','Strict (Extensions Only)'=>'Estrito (Apenas Extensões)','Disabled (No Detection)'=>'Desativado (Sem Deteção)','Security Status'=>'Estado de Segurança','Security Mode'=>'Modo de Segurança','Shell Execution'=>'Execução de Shell','Enabled'=>'Ativado','Audit Logging'=>'Registo de Auditoria','Enabled (%d days)'=>'Ativado (%d dias)','Total Log Entries'=>'Total de Entradas de Registo','Last Shell Execution'=>'Última Execução de Shell','%s ago'=>'há %s','Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.'=>'Configure as definições de segurança através de constantes em wp-config.php: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.','See security configuration documentation for details.'=>'Consulte a documentação de configuração de segurança para mais detalhes.','Memcached'=>'Memcached','Imagick Extension'=>'Extensão Imagick','Redis Extension'=>'Extensão Redis','Memcached Extension'=>'Extensão Memcached','Memcache Extension'=>'Extensão Memcache','SQLite3 Extension'=>'Extensão SQLite3','PDO SQLite'=>'PDO SQLite','Shell Command'=>'Comando Shell','Binary Check'=>'Verificação de Binário','Not Detected'=>'Não Detetado','Software Detection Methods'=>'Métodos de Deteção de Software','Shows which detection method was used for each software component and the reliability score.'=>'Mostra qual o método de deteção utilizado para cada componente de software e a pontuação de fiabilidade.','Component'=>'Componente','Version'=>'Versão','Detection Method'=>'Método de Deteção','Reliability'=>'Fiabilidade','Not detected'=>'Não detetado','Shell Execution Audit Logs'=>'Registos de Auditoria de Execução de Shell','Complete audit trail of shell command executions for security monitoring.'=>'Registo completo de auditoria das execuções de comandos shell para monitorização de segurança.','No shell execution logs found.'=>'Nenhum registo de execução de shell encontrado.','Logs will appear here when shell commands are executed for software detection.'=>'Os registos aparecerão aqui quando os comandos shell forem executados para deteção de software.','Time'=>'Hora','Command'=>'Comando','User'=>'Utilizador','Output'=>'Resultado','Showing the %d most recent log entries.'=>'A mostrar as %d entradas de registo mais recentes.','Invalid nonce.'=>'Nonce inválido.','Insufficient permissions.'=>'Permissões insuficientes.','No component specified.'=>'Nenhum componente especificado.','Debug Information'=>'Informações de Depuração','This tab is only visible when WP_DEBUG is enabled. Use with caution.'=>'Este separador só é visível quando o WP_DEBUG está ativado. Use com cautela.','System Information'=>'Informações do Sistema','WordPress Version'=>'Versão do WordPress','Multisite'=>'Multisite','Yes'=>'Sim','No'=>'Não','Language'=>'Idioma','PHP Version'=>'Versão do PHP','PHP Extensions'=>'Extensões PHP','PHP Memory Limit'=>'Limite de Memória PHP','Database'=>'Base de Dados','Web Server'=>'Servidor Web','WP_DEBUG'=>'WP_DEBUG','WP_DEBUG_LOG'=>'WP_DEBUG_LOG','Path:'=>'Caminho:','Size: %s'=>'Tamanho: %s','View Log File'=>'Ver Ficheiro de Registo','Log file is not web-accessible (outside wp-content)'=>'O ficheiro de registo não é acessível pela web (fora de wp-content)','Log file does not exist yet'=>'O ficheiro de registo ainda não existe','Plugin Version'=>'Versão do Plugin','Component Detection'=>'Deteção de Componentes','Version Detected'=>'Versão Detetada','Analyzed'=>'Analisado','Cache Status'=>'Estado da Cache','Configuration Summary'=>'Resumo da Configuração','Cache Duration'=>'Duração da Cache','Log Retention'=>'Retenção de Registos','Components Analyzed'=>'Componentes Analisados','Notification Email'=>'Email de Notificação','Slack Webhook'=>'Webhook do Slack','Configured & Enabled'=>'Configurado e Ativado','Configured (Disabled)'=>'Configurado (Desativado)','Not configured'=>'Não configurado','Teams Webhook'=>'Webhook do Teams','Discord Webhook'=>'Webhook do Discord','Telegram Bot'=>'Bot do Telegram','Cron Status'=>'Estado do Cron','Update Database'=>'Atualizar Base de Dados','Next run: %s'=>'Próxima execução: %s','Not scheduled'=>'Não agendado','Send Notification'=>'Enviar Notificação','Run Update Now'=>'Executar Atualização Agora','Run Notification Now'=>'Executar Notificação Agora','You do not have permission to run these actions.'=>'Não tem permissão para executar estas ações.','API Testing'=>'Teste da API','Test API connectivity for each component. Click a button to send a test request.'=>'Teste a conectividade da API para cada componente. Clique num botão para enviar um pedido de teste.','Test %s'=>'Testar %s','Testing...'=>'A testar...','HTTP Code:'=>'Código HTTP:','Response Time:'=>'Tempo de Resposta:','Response Preview'=>'Pré-visualização da Resposta','Test'=>'Teste','Error:'=>'Erro:','AJAX request failed.'=>'O pedido AJAX falhou.','You do not have permission to test API connectivity.'=>'Não tem permissão para testar a conectividade da API.','Database Options Viewer'=>'Visualizador de Opções da Base de Dados','View the raw data stored in WordPress options.'=>'Veja os dados brutos armazenados nas opções do WordPress.','Select an option...'=>'Selecione uma opção...','Option not found or empty.'=>'Opção não encontrada ou vazia.','Quick Actions'=>'Ações Rápidas','Perform debugging actions. Use with caution.'=>'Execute ações de depuração. Use com cautela.','Are you sure you want to clear all caches?'=>'Tem a certeza de que pretende limpar todas as caches?','Clear All Caches'=>'Limpar Todas as Caches','Are you sure you want to reset signatures?'=>'Tem a certeza de que pretende repor as assinaturas?','Reset Signatures'=>'Repor Assinaturas','Export Debug Info'=>'Exportar Informações de Depuração','You do not have permission to perform these actions.'=>'Não tem permissão para executar estas ações.','Settings saved.'=>'Configurações guardadas.','WPVulnerability cron events have been repaired across the network.'=>'Os eventos cron do WPVulnerability foram reparados em toda a rede.','You do not have permission to access this page.'=>'Não tem permissão para aceder a esta página.','WordPress %1$s has a known vulnerability that may be affecting your installed version.'=>'O WordPress %1$s tem uma vulnerabilidade conhecida que pode estar a afetar a sua versão instalada.','Actively exploited'=>'Explorado ativamente','Public exploit'=>'Exploit público','Automatable'=>'Automatizável','References:'=>'Referências:','Invalid component specified.'=>'Componente especificado inválido.','Version not detected for this component.'=>'Versão não detetada para este componente.','API request successful.'=>'Pedido à API efetuado com sucesso.','API returned HTTP code %d.'=>'A API devolveu o código HTTP %d.','WPVulnerability Logs'=>'Registos do WPVulnerability','WPVulnerability Log'=>'Registo do WPVulnerability','Low'=>'Baixo','Medium'=>'Médio','High'=>'Alto','Critical'=>'Crítico','WPVulnerability Shell Logs'=>'Registos de Shell do WPVulnerability','WPVulnerability Shell Log'=>'Registo de Shell do WPVulnerability','Every week'=>'Todas as semanas','Every day'=>'Todos os dias','Invalid request.'=>'Pedido inválido.','You have unsubscribed from WPVulnerability notifications.'=>'Cancelou a subscrição das notificações do WPVulnerability.','Learn more about the WordPress Vulnerability Database API at %2$s'=>'Saiba mais sobre a API da Base de Dados de Vulnerabilidades WordPress em %2$s','Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings.'=>'Pretende deixar de receber estes alertas? Cancelar subscrição ou altere a frequência de email para Nunca nas configurações do WPVulnerability.','No vulnerabilities found'=>'Nenhuma vulnerabilidade encontrada','This is likely a test. The site does not have vulnerabilities.'=>'Isto é provavelmente um teste. O site não tem vulnerabilidades.','Core vulnerabilities'=>'Vulnerabilidades no núcleo','Plugins vulnerabilities'=>'Vulnerabilidades em plugins','Themes vulnerabilities'=>'Vulnerabilidades em temas','PHP vulnerabilities'=>'Vulnerabilidades em PHP','Apache HTTPD vulnerabilities'=>'Vulnerabilidades em Apache HTTPD','Nginx vulnerabilities'=>'Vulnerabilidades em Nginx','MariaDB vulnerabilities'=>'Vulnerabilidades em MariaDB','MySQL vulnerabilities'=>'Vulnerabilidades em MySQL','ImageMagick vulnerabilities'=>'Vulnerabilidades em ImageMagick','curl vulnerabilities'=>'Vulnerabilidades em curl','memcached vulnerabilities'=>'Vulnerabilidades em memcached','Redis vulnerabilities'=>'Vulnerabilidades em Redis','SQLite vulnerabilities'=>'Vulnerabilidades em SQLite','Vulnerability found: %s'=>'Vulnerabilidade encontrada: %s','Vulnerability found'=>'Vulnerabilidade encontrada','%1$s has a known vulnerability that may be affecting your installed version.'=>'%1$s tem uma vulnerabilidade conhecida que pode estar a afetar a sua versão instalada.','This plugin is closed. Please replace it with another.'=>'Este plugin foi encerrado. Por favor, substitua-o por outro.','This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates.'=>'Esta vulnerabilidade parece não ter correção disponível. Fique atento às próximas atualizações do plugin.','It hasn\'t been updated in over a year.'=>'Não foi atualizado há mais de um ano.','It may no longer be available (closed?).'=>'Pode já não estar disponível (encerrado?).','Last updated on'=>'Última atualização em','Vulnerabilities (%d)'=>'Vulnerabilidades (%d)','%s running'=>'%s em execução','End of Life'=>'Fim de Vida','End of life:'=>'Fim de vida:','Supported'=>'Suportado','Plugin'=>'Plugin','Theme'=>'Tema','End of life: %s'=>'Fim de vida: %s','EOL'=>'EOL','Network Settings'=>'Configurações de Rede','Vulnerabilities'=>'Vulnerabilidades','Every 6 hours'=>'A cada 6 horas','Database updates'=>'Atualizações da base de dados','Log cleanup'=>'Limpeza de registos','Notifications are scheduled, but settings currently disable them. Please review the notifications tab.'=>'As notificações estão agendadas, mas as configurações atuais desativam-nas. Por favor, reveja o separador de notificações.','This event should not be scheduled for this site.'=>'Este evento não deve ser agendado para este site.','Not expected for this site.'=>'Não esperado para este site.','No instances found.'=>'Nenhuma instância encontrada.','Scheduled with an unexpected interval.'=>'Agendado com um intervalo inesperado.','Multiple instances detected.'=>'Múltiplas instâncias detetadas.','Scheduled as expected.'=>'Agendado conforme esperado.','There aren\'t plugins vulnerabilities'=>'Não existem vulnerabilidades em plugins','Shows possible vulnerabilities that exist in installed plugins.'=>'Mostra as possíveis vulnerabilidades existentes nos plugins instalados.','There is %d plugin with vulnerabilities'=>'Existe %d plugin com vulnerabilidades' . "\0" . 'Existem %d plugins com vulnerabilidades','We\'ve detected potential vulnerabilities in installed plugins. Please check them and keep them updated.'=>'Foram detetadas potenciais vulnerabilidades nos plugins instalados. Por favor, verifique-os e mantenha-os atualizados.','Update plugins'=>'Atualizar plugins','There aren\'t themes vulnerabilities'=>'Não existem vulnerabilidades em temas','Shows possible vulnerabilities that exist in installed themes.'=>'Mostra as possíveis vulnerabilidades existentes nos temas instalados.','There is %d theme with vulnerabilities'=>'Existe %d tema com vulnerabilidades' . "\0" . 'Existem %d temas com vulnerabilidades','We\'ve detected potential vulnerabilities in installed themes. Please check them and keep them updated.'=>'Foram detetadas potenciais vulnerabilidades nos temas instalados. Por favor, verifique-os e mantenha-os atualizados.','Update themes'=>'Atualizar temas','There aren\'t WordPress vulnerabilities'=>'Não existem vulnerabilidades no WordPress','Shows possible vulnerabilities existing in the WordPress core.'=>'Mostra as possíveis vulnerabilidades existentes no núcleo do WordPress.','There is %d core vulnerability'=>'Existe %d vulnerabilidade no núcleo' . "\0" . 'Existem %d vulnerabilidades no núcleo','We\'ve detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated.'=>'Foram detetadas potenciais vulnerabilidades nesta instalação WordPress. Por favor, verifique-as e mantenha a sua instalação atualizada.','Update WordPress'=>'Atualizar WordPress','Nginx'=>'Nginx','Invalid software type'=>'Tipo de software inválido','Error'=>'Erro','The specified software type is not valid.'=>'O tipo de software especificado não é válido.','There aren\'t %s vulnerabilities'=>'Não existem vulnerabilidades em %s','Shows possible vulnerabilities existing in %s.'=>'Mostra as possíveis vulnerabilidades existentes em %s.','There is %1$d %2$s vulnerability'=>'Existe %1$d vulnerabilidade em %2$s' . "\0" . 'Existem %1$d vulnerabilidades em %2$s','We\'ve detected potential vulnerabilities in %s. Please check them and keep your installation updated.'=>'Foram detetadas potenciais vulnerabilidades em %s. Por favor, verifique-as e mantenha a sua instalação atualizada.','How to update PHP'=>'Como atualizar PHP','WPVulnerability Core'=>'WPVulnerability Core','WPVulnerability Themes'=>'WPVulnerability Themes','WPVulnerability Plugins'=>'WPVulnerability Plugins','WPVulnerability PHP'=>'WPVulnerability PHP','WPVulnerability Apache HTTPD'=>'WPVulnerability Apache HTTPD','WPVulnerability Nginx'=>'WPVulnerability Nginx','WPVulnerability MariaDB'=>'WPVulnerability MariaDB','WPVulnerability MySQL'=>'WPVulnerability MySQL','WPVulnerability ImageMagick'=>'WPVulnerability ImageMagick','WPVulnerability curl'=>'WPVulnerability curl','WPVulnerability memcached'=>'WPVulnerability memcached','WPVulnerability redis'=>'WPVulnerability redis','WPVulnerability sqlite'=>'WPVulnerability sqlite','This theme is closed. Please replace it with another.'=>'Este tema foi encerrado. Por favor, substitua-o por outro.','This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates.'=>'Esta vulnerabilidade parece não ter correção disponível. Fique atento às próximas atualizações do tema.','This theme has known vulnerabilities that may be affecting your installed version.'=>'Este tema tem vulnerabilidades conhecidas que podem estar a afetar a sua versão instalada.']]; \ No newline at end of file diff --git a/languages/wpvulnerability-pt.mo b/languages/wpvulnerability-pt.mo new file mode 100644 index 0000000000000000000000000000000000000000..4c67c96b7ac6b6582964b6e72873a882473749c2 GIT binary patch literal 40303 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 bS9}S=J`myV{z)fwHk4fai3lHIp~3$Hhk0m! literal 0 HcmV?d00001 diff --git a/languages/wpvulnerability-pt.po b/languages/wpvulnerability-pt.po new file mode 100644 index 0000000..e1321dc --- /dev/null +++ b/languages/wpvulnerability-pt.po @@ -0,0 +1,2474 @@ +# Copyright (C) 2026 ROBOTSTXT +# This file is distributed under the GPL-3.0-or-later. +msgid "" +msgstr "" +"Project-Id-Version: WPVulnerability 5.0.0\n" +"POT-Creation-Date: 2026-05-27T16:32:22+00:00\n" +"PO-Revision-Date: 2026-05-27 00:00+0000\n" +"Last-Translator: Automatically generated\n" +"Language-Team: Portuguese \n" +"Language: pt\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: AI Translation\n" +"X-Domain: wpvulnerability\n" + +#. Plugin Name of the plugin +#: wpvulnerability.php +#: wpvulnerability-admin.php:1782 +#: wpvulnerability-admin.php:1783 +#: wpvulnerability-adminms.php:1945 +#: wpvulnerability-adminms.php:1946 +#: wpvulnerability-notifications.php:105 +msgid "WPVulnerability" +msgstr "" + +#. Plugin URI of the plugin +#: wpvulnerability.php +msgid "https://www.wpvulnerability.com/plugin/" +msgstr "" + +#. Description of the plugin +#: wpvulnerability.php +msgid "Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API." +msgstr "" + +#. Author of the plugin +#: wpvulnerability.php +msgid "ROBOTSTXT" +msgstr "" + +#. Author URI of the plugin +#: wpvulnerability.php +msgid "https://www.robotstxt.es/" +msgstr "" + +#: class-wpvulnerability-cli.php:35 +#: class-wpvulnerability-config-cli.php:32 +msgid "This command requires a WordPress administrator. Run with --user=." +msgstr "Este comando requer um administrador WordPress. Execute com --user=." + +#: class-wpvulnerability-cli.php:156 +msgid "No core vulnerabilities found." +msgstr "Nenhuma vulnerabilidade no núcleo encontrada." + +#: class-wpvulnerability-cli.php:275 +msgid "No plugin vulnerabilities found." +msgstr "Nenhuma vulnerabilidade em plugins encontrada." + +#: class-wpvulnerability-cli.php:393 +msgid "No theme vulnerabilities found." +msgstr "Nenhuma vulnerabilidade em temas encontrada." + +#. translators: %s is the software name (php, apache, nginx, etc.) +#: class-wpvulnerability-cli.php:490 +#, php-format +msgid "No %s vulnerabilities found." +msgstr "Nenhuma vulnerabilidade em %s encontrada." + +#: wpvulnerability-admin.php:63 +#: wpvulnerability-adminms.php:227 +msgid "Data from source has been reloaded." +msgstr "Os dados da fonte foram recarregados." + +#: wpvulnerability-admin.php:65 +#: wpvulnerability-adminms.php:229 +msgid "You do not have permission to reload data." +msgstr "Não tem permissão para recarregar os dados." + +#: wpvulnerability-admin.php:93 +#: wpvulnerability-adminms.php:255 +msgid "Test email has been sent." +msgstr "O email de teste foi enviado." + +#: wpvulnerability-admin.php:95 +#: wpvulnerability-adminms.php:259 +msgid "Test email has failed. Please, check your email settings." +msgstr "O envio do email de teste falhou. Por favor, verifique as suas configurações de email." + +#: wpvulnerability-admin.php:98 +#: wpvulnerability-adminms.php:263 +msgid "You do not have permission to send test emails." +msgstr "Não tem permissão para enviar emails de teste." + +#: wpvulnerability-admin.php:113 +msgid "WPVulnerability cron events have been repaired." +msgstr "Os eventos cron do WPVulnerability foram reparados." + +#: wpvulnerability-admin.php:115 +#: wpvulnerability-adminms.php:279 +msgid "You do not have permission to repair cron events." +msgstr "Não tem permissão para reparar eventos cron." + +#: wpvulnerability-admin.php:127 +#: wpvulnerability-adminms.php:291 +msgid "All logs have been deleted." +msgstr "Todos os registos foram eliminados." + +#: wpvulnerability-admin.php:129 +#: wpvulnerability-adminms.php:293 +msgid "You do not have permission to delete logs." +msgstr "Não tem permissão para eliminar registos." + +#: wpvulnerability-admin.php:146 +msgid "Uninstall preference saved." +msgstr "Preferência de desinstalação guardada." + +#: wpvulnerability-admin.php:153 +#: wpvulnerability-adminms.php:316 +msgid "WPVulnerability has been reset to defaults and reloaded." +msgstr "O WPVulnerability foi reposto para os valores predefinidos e recarregado." + +#: wpvulnerability-admin.php:155 +#: wpvulnerability-adminms.php:318 +msgid "You do not have permission to reset WPVulnerability." +msgstr "Não tem permissão para repor o WPVulnerability." + +#: wpvulnerability-admin.php:170 +#: wpvulnerability-adminms.php:333 +msgid "All caches have been cleared." +msgstr "Todas as caches foram limpas." + +#: wpvulnerability-admin.php:172 +#: wpvulnerability-adminms.php:335 +msgid "You do not have permission to clear caches." +msgstr "Não tem permissão para limpar as caches." + +#: wpvulnerability-admin.php:187 +#: wpvulnerability-adminms.php:350 +msgid "Plugin and theme signatures have been reset." +msgstr "As assinaturas de plugins e temas foram repostas." + +#: wpvulnerability-admin.php:189 +#: wpvulnerability-adminms.php:352 +msgid "You do not have permission to reset signatures." +msgstr "Não tem permissão para repor as assinaturas." + +#: wpvulnerability-admin.php:212 +#: wpvulnerability-adminms.php:375 +msgid "You do not have permission to export debug information." +msgstr "Não tem permissão para exportar informações de depuração." + +#: wpvulnerability-admin.php:224 +#: wpvulnerability-adminms.php:387 +msgid "Database update has been executed." +msgstr "A atualização da base de dados foi executada." + +#: wpvulnerability-admin.php:226 +#: wpvulnerability-adminms.php:389 +msgid "You do not have permission to run database updates." +msgstr "Não tem permissão para executar atualizações da base de dados." + +#: wpvulnerability-admin.php:247 +#: wpvulnerability-adminms.php:410 +msgid "Notification has been sent." +msgstr "A notificação foi enviada." + +#: wpvulnerability-admin.php:249 +#: wpvulnerability-adminms.php:412 +msgid "Notification sending failed." +msgstr "O envio da notificação falhou." + +#: wpvulnerability-admin.php:252 +#: wpvulnerability-adminms.php:415 +msgid "You do not have permission to send notifications." +msgstr "Não tem permissão para enviar notificações." + +#: wpvulnerability-admin.php:266 +#: wpvulnerability-adminms.php:539 +#: wpvulnerability-schedule.php:323 +msgid "Notifications" +msgstr "Notificações" + +#: wpvulnerability-admin.php:269 +#: wpvulnerability-adminms.php:542 +msgid "Analysis" +msgstr "Análise" + +#: wpvulnerability-admin.php:272 +#: wpvulnerability-adminms.php:545 +msgid "Logs" +msgstr "Registos" + +#: wpvulnerability-admin.php:275 +#: wpvulnerability-adminms.php:548 +#: wpvulnerability-sitehealth.php:25 +#: wpvulnerability-sitehealth.php:77 +#: wpvulnerability-sitehealth.php:129 +#: wpvulnerability-sitehealth.php:210 +msgid "Security" +msgstr "Segurança" + +#: wpvulnerability-admin.php:278 +#: wpvulnerability-adminms.php:551 +msgid "Tools" +msgstr "Ferramentas" + +#: wpvulnerability-admin.php:285 +#: wpvulnerability-adminms.php:558 +msgid "Debug" +msgstr "Depuração" + +#: wpvulnerability-admin.php:290 +#: wpvulnerability-adminms.php:563 +msgid "About" +msgstr "Sobre" + +#: wpvulnerability-admin.php:427 +#: wpvulnerability-adminms.php:700 +msgid "Notification Settings" +msgstr "Configurações de Notificação" + +#: wpvulnerability-admin.php:430 +#: wpvulnerability-adminms.php:703 +msgid "Configure how and when you want to receive vulnerability notifications." +msgstr "Configure como e quando pretende receber notificações de vulnerabilidades." + +#: wpvulnerability-admin.php:431 +#: wpvulnerability-adminms.php:704 +msgid "Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software." +msgstr "Mantenha-se informado sobre vulnerabilidades de segurança na sua instalação WordPress, plugins, temas e software do servidor." + +#: wpvulnerability-admin.php:438 +#: wpvulnerability-adminms.php:711 +msgid "Cache Expiration Time" +msgstr "Tempo de Expiração da Cache" + +#: wpvulnerability-admin.php:440 +#: wpvulnerability-admin.php:814 +#: wpvulnerability-adminms.php:713 +#: wpvulnerability-adminms.php:1087 +msgid "FORCED" +msgstr "FORÇADO" + +#: wpvulnerability-admin.php:444 +#: wpvulnerability-adminms.php:717 +msgid "How long to cache vulnerability data before refreshing from the API." +msgstr "Durante quanto tempo guardar em cache os dados de vulnerabilidades antes de atualizar a partir da API." + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:453 +#: wpvulnerability-admin.php:1891 +#: wpvulnerability-admin.php:3631 +#: wpvulnerability-adminms.php:726 +#: wpvulnerability-adminms.php:2039 +#: wpvulnerability-adminms.php:3825 +#, php-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d hora" +msgstr[1] "%d horas" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:469 +#: wpvulnerability-adminms.php:742 +#, php-format +msgid "You can force the cache time via wp-config.php constant. Learn more →" +msgstr "Pode forçar o tempo de cache através de uma constante em wp-config.php. Saiba mais →" + +#: wpvulnerability-admin.php:481 +#: wpvulnerability-admin.php:3665 +#: wpvulnerability-adminms.php:754 +#: wpvulnerability-adminms.php:3859 +msgid "Notification Frequency" +msgstr "Frequência de Notificação" + +#: wpvulnerability-admin.php:484 +#: wpvulnerability-adminms.php:757 +msgid "Choose how often you want to receive vulnerability notifications." +msgstr "Escolha a frequência com que pretende receber notificações de vulnerabilidades." + +#: wpvulnerability-admin.php:489 +#: wpvulnerability-adminms.php:762 +msgid "Never - Disable automatic notifications" +msgstr "Nunca - Desativar notificações automáticas" + +#: wpvulnerability-admin.php:493 +#: wpvulnerability-adminms.php:766 +msgid "Daily - Receive notifications every day" +msgstr "Diariamente - Receber notificações todos os dias" + +#: wpvulnerability-admin.php:497 +#: wpvulnerability-adminms.php:770 +msgid "Weekly - Receive notifications once a week" +msgstr "Semanalmente - Receber notificações uma vez por semana" + +#: wpvulnerability-admin.php:503 +#: wpvulnerability-adminms.php:776 +msgid "Day:" +msgstr "Dia:" + +#: wpvulnerability-admin.php:505 +#: wpvulnerability-admin.php:1955 +#: wpvulnerability-adminms.php:778 +#: wpvulnerability-adminms.php:2115 +msgid "Monday" +msgstr "Segunda-feira" + +#: wpvulnerability-admin.php:506 +#: wpvulnerability-admin.php:1956 +#: wpvulnerability-adminms.php:779 +#: wpvulnerability-adminms.php:2116 +msgid "Tuesday" +msgstr "Terça-feira" + +#: wpvulnerability-admin.php:507 +#: wpvulnerability-admin.php:1957 +#: wpvulnerability-adminms.php:780 +#: wpvulnerability-adminms.php:2117 +msgid "Wednesday" +msgstr "Quarta-feira" + +#: wpvulnerability-admin.php:508 +#: wpvulnerability-admin.php:1958 +#: wpvulnerability-adminms.php:781 +#: wpvulnerability-adminms.php:2118 +msgid "Thursday" +msgstr "Quinta-feira" + +#: wpvulnerability-admin.php:509 +#: wpvulnerability-admin.php:1959 +#: wpvulnerability-adminms.php:782 +#: wpvulnerability-adminms.php:2119 +msgid "Friday" +msgstr "Sexta-feira" + +#: wpvulnerability-admin.php:510 +#: wpvulnerability-admin.php:1960 +#: wpvulnerability-adminms.php:783 +#: wpvulnerability-adminms.php:2120 +msgid "Saturday" +msgstr "Sábado" + +#: wpvulnerability-admin.php:511 +#: wpvulnerability-admin.php:1961 +#: wpvulnerability-adminms.php:784 +#: wpvulnerability-adminms.php:2121 +msgid "Sunday" +msgstr "Domingo" + +#: wpvulnerability-admin.php:515 +#: wpvulnerability-adminms.php:788 +msgid "Time:" +msgstr "Hora:" + +#: wpvulnerability-admin.php:519 +#: wpvulnerability-adminms.php:792 +msgid "(24-hour format, server timezone)" +msgstr "(formato de 24 horas, fuso horário do servidor)" + +#: wpvulnerability-admin.php:528 +#: wpvulnerability-adminms.php:801 +msgid "Notification Channels" +msgstr "Canais de Notificação" + +#: wpvulnerability-admin.php:531 +#: wpvulnerability-adminms.php:804 +msgid "Select where you want to receive notifications." +msgstr "Selecione onde pretende receber as notificações." + +#: wpvulnerability-admin.php:536 +#: wpvulnerability-admin.php:2011 +#: wpvulnerability-adminms.php:809 +#: wpvulnerability-adminms.php:2169 +msgid "Email" +msgstr "Email" + +#: wpvulnerability-admin.php:539 +#: wpvulnerability-adminms.php:812 +msgid "Email Addresses (separated by commas):" +msgstr "Endereços de Email (separados por vírgulas):" + +#: wpvulnerability-admin.php:541 +#: wpvulnerability-adminms.php:814 +msgid "Default:" +msgstr "Predefinição:" + +#: wpvulnerability-admin.php:546 +#: wpvulnerability-admin.php:2016 +#: wpvulnerability-adminms.php:819 +#: wpvulnerability-adminms.php:2174 +msgid "Slack" +msgstr "Slack" + +#: wpvulnerability-admin.php:549 +#: wpvulnerability-adminms.php:822 +msgid "Slack Webhook URL:" +msgstr "URL do Webhook do Slack:" + +#. translators: %s: Slack documentation URL +#: wpvulnerability-admin.php:555 +#: wpvulnerability-adminms.php:828 +#, php-format +msgid "Learn how to create a Slack incoming webhook →" +msgstr "Saiba como criar um webhook de entrada do Slack →" + +#: wpvulnerability-admin.php:564 +#: wpvulnerability-admin.php:2021 +#: wpvulnerability-adminms.php:837 +#: wpvulnerability-adminms.php:2179 +msgid "Microsoft Teams" +msgstr "Microsoft Teams" + +#: wpvulnerability-admin.php:567 +#: wpvulnerability-adminms.php:840 +msgid "Teams Webhook URL:" +msgstr "URL do Webhook do Teams:" + +#. translators: %s: Microsoft Teams documentation URL +#: wpvulnerability-admin.php:573 +#: wpvulnerability-adminms.php:846 +#, php-format +msgid "Learn how to create a Teams incoming webhook →" +msgstr "Saiba como criar um webhook de entrada do Teams →" + +#: wpvulnerability-admin.php:582 +#: wpvulnerability-adminms.php:855 +msgid "Discord" +msgstr "Discord" + +#: wpvulnerability-admin.php:585 +#: wpvulnerability-adminms.php:858 +msgid "Discord Webhook URL:" +msgstr "URL do Webhook do Discord:" + +#. translators: %s: Discord documentation URL +#: wpvulnerability-admin.php:591 +#: wpvulnerability-adminms.php:864 +#, php-format +msgid "Learn how to create a Discord webhook →" +msgstr "Saiba como criar um webhook do Discord →" + +#: wpvulnerability-admin.php:600 +#: wpvulnerability-adminms.php:873 +msgid "Telegram" +msgstr "Telegram" + +#: wpvulnerability-admin.php:603 +#: wpvulnerability-adminms.php:876 +msgid "Telegram Bot Token:" +msgstr "Token do Bot do Telegram:" + +#: wpvulnerability-admin.php:605 +#: wpvulnerability-adminms.php:878 +msgid "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "Formato: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:607 +#: wpvulnerability-adminms.php:880 +msgid "Telegram Chat ID:" +msgstr "ID do Chat do Telegram:" + +#. translators: %s: Telegram documentation URL +#: wpvulnerability-admin.php:613 +#: wpvulnerability-adminms.php:886 +#, php-format +msgid "Learn how to create a Telegram bot and get Chat ID →" +msgstr "Saiba como criar um bot do Telegram e obter o ID do Chat →" + +#: wpvulnerability-admin.php:623 +#: wpvulnerability-adminms.php:896 +msgid "Save Notification Settings" +msgstr "Guardar Configurações de Notificação" + +#: wpvulnerability-admin.php:700 +#: wpvulnerability-admin.php:2552 +#: wpvulnerability-adminms.php:973 +#: wpvulnerability-adminms.php:2459 +msgid "WordPress Components" +msgstr "Componentes WordPress" + +#: wpvulnerability-admin.php:703 +#: wpvulnerability-admin.php:2560 +#: wpvulnerability-adminms.php:976 +#: wpvulnerability-adminms.php:2467 +msgid "WordPress Core" +msgstr "Núcleo WordPress" + +#: wpvulnerability-admin.php:707 +#: wpvulnerability-admin.php:1472 +#: wpvulnerability-admin.php:1573 +#: wpvulnerability-admin.php:2109 +#: wpvulnerability-admin.php:2571 +#: wpvulnerability-adminms.php:980 +#: wpvulnerability-adminms.php:1744 +#: wpvulnerability-adminms.php:1843 +#: wpvulnerability-adminms.php:2266 +#: wpvulnerability-adminms.php:2478 +msgid "Plugins" +msgstr "Plugins" + +#: wpvulnerability-admin.php:711 +#: wpvulnerability-admin.php:1473 +#: wpvulnerability-admin.php:1574 +#: wpvulnerability-admin.php:2114 +#: wpvulnerability-admin.php:2587 +#: wpvulnerability-adminms.php:984 +#: wpvulnerability-adminms.php:1745 +#: wpvulnerability-adminms.php:1844 +#: wpvulnerability-adminms.php:2271 +#: wpvulnerability-adminms.php:2494 +msgid "Themes" +msgstr "Temas" + +#: wpvulnerability-admin.php:717 +#: wpvulnerability-adminms.php:990 +msgid "Software & Languages" +msgstr "Software e Linguagens" + +#: wpvulnerability-admin.php:720 +#: wpvulnerability-admin.php:1474 +#: wpvulnerability-admin.php:2119 +#: wpvulnerability-adminms.php:993 +#: wpvulnerability-adminms.php:1746 +#: wpvulnerability-adminms.php:2276 +#: wpvulnerability-sitehealth.php:178 +msgid "PHP" +msgstr "PHP" + +#: wpvulnerability-admin.php:726 +#: wpvulnerability-adminms.php:999 +msgid "Web Servers" +msgstr "Servidores Web" + +#: wpvulnerability-admin.php:729 +#: wpvulnerability-admin.php:1475 +#: wpvulnerability-admin.php:2124 +#: wpvulnerability-adminms.php:1002 +#: wpvulnerability-adminms.php:1747 +#: wpvulnerability-adminms.php:2281 +#: wpvulnerability-sitehealth.php:179 +msgid "Apache HTTPD" +msgstr "Apache HTTPD" + +#: wpvulnerability-admin.php:733 +#: wpvulnerability-admin.php:1476 +#: wpvulnerability-admin.php:2129 +#: wpvulnerability-adminms.php:1006 +#: wpvulnerability-adminms.php:1748 +#: wpvulnerability-adminms.php:2286 +msgid "nginx" +msgstr "nginx" + +#: wpvulnerability-admin.php:739 +#: wpvulnerability-adminms.php:1012 +msgid "Databases" +msgstr "Bases de Dados" + +#: wpvulnerability-admin.php:742 +#: wpvulnerability-admin.php:1477 +#: wpvulnerability-admin.php:2134 +#: wpvulnerability-adminms.php:1015 +#: wpvulnerability-adminms.php:1749 +#: wpvulnerability-adminms.php:2291 +#: wpvulnerability-sitehealth.php:181 +msgid "MariaDB" +msgstr "MariaDB" + +#: wpvulnerability-admin.php:746 +#: wpvulnerability-admin.php:1478 +#: wpvulnerability-admin.php:2139 +#: wpvulnerability-adminms.php:1019 +#: wpvulnerability-adminms.php:1750 +#: wpvulnerability-adminms.php:2296 +#: wpvulnerability-sitehealth.php:182 +msgid "MySQL" +msgstr "MySQL" + +#: wpvulnerability-admin.php:750 +#: wpvulnerability-admin.php:1483 +#: wpvulnerability-admin.php:2164 +#: wpvulnerability-admin.php:3104 +#: wpvulnerability-adminms.php:1023 +#: wpvulnerability-adminms.php:1755 +#: wpvulnerability-adminms.php:2321 +#: wpvulnerability-adminms.php:3281 +msgid "SQLite" +msgstr "SQLite" + +#: wpvulnerability-admin.php:756 +#: wpvulnerability-adminms.php:1029 +msgid "Additional Tools" +msgstr "Ferramentas Adicionais" + +#: wpvulnerability-admin.php:759 +#: wpvulnerability-admin.php:1479 +#: wpvulnerability-admin.php:2144 +#: wpvulnerability-admin.php:3101 +#: wpvulnerability-adminms.php:1032 +#: wpvulnerability-adminms.php:1751 +#: wpvulnerability-adminms.php:2301 +#: wpvulnerability-adminms.php:3278 +#: wpvulnerability-sitehealth.php:183 +msgid "ImageMagick" +msgstr "ImageMagick" + +#: wpvulnerability-admin.php:763 +#: wpvulnerability-admin.php:1480 +#: wpvulnerability-admin.php:2149 +#: wpvulnerability-adminms.php:1036 +#: wpvulnerability-adminms.php:1752 +#: wpvulnerability-adminms.php:2306 +#: wpvulnerability-sitehealth.php:184 +msgid "curl" +msgstr "curl" + +#: wpvulnerability-admin.php:767 +#: wpvulnerability-admin.php:1481 +#: wpvulnerability-admin.php:2154 +#: wpvulnerability-adminms.php:1040 +#: wpvulnerability-adminms.php:1753 +#: wpvulnerability-adminms.php:2311 +msgid "memcached" +msgstr "memcached" + +#: wpvulnerability-admin.php:771 +#: wpvulnerability-admin.php:1482 +#: wpvulnerability-admin.php:2159 +#: wpvulnerability-admin.php:3102 +#: wpvulnerability-adminms.php:1044 +#: wpvulnerability-adminms.php:1754 +#: wpvulnerability-adminms.php:2316 +#: wpvulnerability-adminms.php:3279 +msgid "Redis" +msgstr "Redis" + +#: wpvulnerability-admin.php:784 +#: wpvulnerability-adminms.php:1057 +msgid "Component Analysis Settings" +msgstr "Configurações de Análise de Componentes" + +#: wpvulnerability-admin.php:787 +#: wpvulnerability-adminms.php:1060 +msgid "Enable or disable vulnerability analysis for specific components." +msgstr "Ativar ou desativar a análise de vulnerabilidades para componentes específicos." + +#: wpvulnerability-admin.php:788 +#: wpvulnerability-adminms.php:1061 +msgid "Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red." +msgstr "Marque os componentes que pretende OCULTAR das análises e relatórios de vulnerabilidades. Os componentes não marcados serão analisados ativamente. Os componentes com análise ativa são mostrados a verde, os componentes ocultos a vermelho." + +#: wpvulnerability-admin.php:820 +#: wpvulnerability-adminms.php:1093 +msgid "Hidden (forced by constant)" +msgstr "Oculto (forçado por constante)" + +#: wpvulnerability-admin.php:823 +#: wpvulnerability-adminms.php:1096 +msgid "🔴 Analysis disabled" +msgstr "🔴 Análise desativada" + +#: wpvulnerability-admin.php:826 +#: wpvulnerability-adminms.php:1099 +msgid "🟢 Analysis active" +msgstr "🟢 Análise ativa" + +#: wpvulnerability-admin.php:848 +#: wpvulnerability-adminms.php:1121 +msgid "Tip:" +msgstr "Sugestão:" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:852 +#: wpvulnerability-adminms.php:1125 +#, php-format +msgid "You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →" +msgstr "Pode forçar a desativação de componentes através de constantes em wp-config.php. Saiba mais sobre como ocultar verificações forçadamente →" + +#: wpvulnerability-admin.php:860 +#: wpvulnerability-adminms.php:1133 +msgid "Save Analysis Settings" +msgstr "Guardar Configurações de Análise" + +#: wpvulnerability-admin.php:920 +#: wpvulnerability-adminms.php:1193 +msgid "« Previous" +msgstr "« Anterior" + +#: wpvulnerability-admin.php:921 +#: wpvulnerability-adminms.php:1194 +msgid "Next »" +msgstr "Seguinte »" + +#: wpvulnerability-admin.php:932 +#: wpvulnerability-adminms.php:1205 +msgid "Log entry not found or has been removed." +msgstr "Entrada de registo não encontrada ou removida." + +#: wpvulnerability-admin.php:935 +#: wpvulnerability-adminms.php:1208 +msgid "Unable to load the requested log entry." +msgstr "Não foi possível carregar a entrada de registo solicitada." + +#: wpvulnerability-admin.php:945 +#: wpvulnerability-adminms.php:1218 +msgid "Log Configuration" +msgstr "Configuração de Registos" + +#: wpvulnerability-admin.php:950 +#: wpvulnerability-adminms.php:1223 +msgid "Total Logs" +msgstr "Total de Registos" + +#: wpvulnerability-admin.php:954 +#: wpvulnerability-adminms.php:1227 +msgid "Retention Period" +msgstr "Período de Retenção" + +#: wpvulnerability-admin.php:959 +#: wpvulnerability-admin.php:1301 +#: wpvulnerability-admin.php:3029 +#: wpvulnerability-admin.php:3043 +#: wpvulnerability-admin.php:3475 +#: wpvulnerability-admin.php:3483 +#: wpvulnerability-adminms.php:1232 +#: wpvulnerability-adminms.php:1574 +#: wpvulnerability-adminms.php:3206 +#: wpvulnerability-adminms.php:3220 +#: wpvulnerability-adminms.php:3669 +#: wpvulnerability-adminms.php:3677 +msgid "Disabled" +msgstr "Desativado" + +#. translators: %d: Number of days. +#. translators: %d: number of days +#: wpvulnerability-admin.php:962 +#: wpvulnerability-admin.php:984 +#: wpvulnerability-admin.php:3641 +#: wpvulnerability-adminms.php:1235 +#: wpvulnerability-adminms.php:1257 +#: wpvulnerability-adminms.php:3835 +#, php-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d dia" +msgstr[1] "%d dias" + +#: wpvulnerability-admin.php:975 +#: wpvulnerability-adminms.php:1248 +msgid "Log Retention Period" +msgstr "Período de Retenção de Registos" + +#: wpvulnerability-admin.php:981 +#: wpvulnerability-adminms.php:1254 +msgid "None (Disabled)" +msgstr "Nenhum (Desativado)" + +#: wpvulnerability-admin.php:1004 +#: wpvulnerability-adminms.php:1277 +msgid "This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant." +msgstr "Este valor é imposto pela constante WPVULNERABILITY_LOG_RETENTION_DAYS." + +#: wpvulnerability-admin.php:1009 +#: wpvulnerability-adminms.php:1282 +msgid "Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted." +msgstr "Escolha durante quanto tempo o WPVulnerability deve manter os registos de resposta da API. Os registos mais antigos são eliminados automaticamente." + +#: wpvulnerability-admin.php:1013 +#: wpvulnerability-adminms.php:1286 +msgid "Save Configuration" +msgstr "Guardar Configuração" + +#: wpvulnerability-admin.php:1018 +#: wpvulnerability-adminms.php:1291 +msgid "Log retention is currently disabled." +msgstr "A retenção de registos está atualmente desativada." + +#: wpvulnerability-admin.php:1018 +#: wpvulnerability-adminms.php:1291 +msgid "API responses are not being saved." +msgstr "As respostas da API não estão a ser guardadas." + +#: wpvulnerability-admin.php:1031 +#: wpvulnerability-adminms.php:1304 +msgid "Log Details" +msgstr "Detalhes do Registo" + +#: wpvulnerability-admin.php:1035 +#: wpvulnerability-admin.php:1104 +#: wpvulnerability-adminms.php:1308 +#: wpvulnerability-adminms.php:1377 +msgid "Date" +msgstr "Data" + +#: wpvulnerability-admin.php:1039 +#: wpvulnerability-admin.php:1105 +#: wpvulnerability-adminms.php:1312 +#: wpvulnerability-adminms.php:1378 +msgid "API Endpoint" +msgstr "Endpoint da API" + +#: wpvulnerability-admin.php:1044 +#: wpvulnerability-adminms.php:1317 +msgid "API Response" +msgstr "Resposta da API" + +#: wpvulnerability-admin.php:1049 +#: wpvulnerability-adminms.php:1322 +msgid "Back to Logs" +msgstr "Voltar aos Registos" + +#: wpvulnerability-admin.php:1058 +#: wpvulnerability-adminms.php:1331 +msgid "No logs available" +msgstr "Sem registos disponíveis" + +#: wpvulnerability-admin.php:1059 +#: wpvulnerability-adminms.php:1332 +msgid "API response logs will appear here once the vulnerability scanner runs." +msgstr "Os registos de resposta da API aparecerão aqui assim que o analisador de vulnerabilidades for executado." + +#: wpvulnerability-admin.php:1063 +#: wpvulnerability-adminms.php:1336 +msgid "API Response Logs" +msgstr "Registos de Resposta da API" + +#: wpvulnerability-admin.php:1073 +#: wpvulnerability-adminms.php:1346 +msgid "Show:" +msgstr "Mostrar:" + +#: wpvulnerability-admin.php:1082 +#: wpvulnerability-adminms.php:1355 +msgid "Apply" +msgstr "Aplicar" + +#. translators: 1: first item, 2: last item, 3: total items +#: wpvulnerability-admin.php:1090 +#: wpvulnerability-adminms.php:1363 +#, php-format +msgid "Showing %1$s–%2$s of %3$s" +msgstr "A mostrar %1$s–%2$s de %3$s" + +#: wpvulnerability-admin.php:1106 +#: wpvulnerability-adminms.php:1379 +msgid "Actions" +msgstr "Ações" + +#: wpvulnerability-admin.php:1133 +#: wpvulnerability-admin.php:3957 +#: wpvulnerability-adminms.php:1406 +#: wpvulnerability-adminms.php:4151 +msgid "View" +msgstr "Ver" + +#: wpvulnerability-admin.php:1150 +#: wpvulnerability-adminms.php:1423 +msgid "Danger Zone" +msgstr "Zona de Perigo" + +#: wpvulnerability-admin.php:1152 +#: wpvulnerability-adminms.php:1425 +msgid "Permanently delete all API response logs. This action cannot be undone." +msgstr "Eliminar permanentemente todos os registos de resposta da API. Esta ação não pode ser desfeita." + +#: wpvulnerability-admin.php:1154 +#: wpvulnerability-adminms.php:1427 +msgid "Are you sure you want to delete all logs? This action cannot be undone." +msgstr "Tem a certeza de que pretende eliminar todos os registos? Esta ação não pode ser desfeita." + +#: wpvulnerability-admin.php:1157 +#: wpvulnerability-adminms.php:1430 +msgid "Delete All Logs" +msgstr "Eliminar Todos os Registos" + +#: wpvulnerability-admin.php:1201 +#: wpvulnerability-adminms.php:1474 +msgid "Reload Data from API" +msgstr "Recarregar Dados da API" + +#: wpvulnerability-admin.php:1204 +#: wpvulnerability-adminms.php:1477 +msgid "Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information." +msgstr "Recarregue todas as informações do Núcleo, Plugins, Temas e outros componentes diretamente da API para obter dados atualizados. Isto irá limpar a cache e obter informações de vulnerabilidades atualizadas." + +#: wpvulnerability-admin.php:1209 +#: wpvulnerability-adminms.php:1482 +msgid "Reload Data" +msgstr "Recarregar Dados" + +#: wpvulnerability-admin.php:1218 +#: wpvulnerability-adminms.php:1491 +msgid "Test Email Notifications" +msgstr "Testar Notificações por Email" + +#: wpvulnerability-admin.php:1221 +#: wpvulnerability-adminms.php:1494 +msgid "Send a test email notification with current vulnerability data to verify your email configuration is working correctly." +msgstr "Envie uma notificação de email de teste com os dados de vulnerabilidades atuais para verificar se a sua configuração de email está a funcionar corretamente." + +#: wpvulnerability-admin.php:1231 +#: wpvulnerability-adminms.php:1504 +msgid "From address (configured via constant):" +msgstr "Endereço de origem (configurado via constante):" + +#: wpvulnerability-admin.php:1243 +#: wpvulnerability-adminms.php:1516 +msgid "From address (default):" +msgstr "Endereço de origem (predefinição):" + +#: wpvulnerability-admin.php:1252 +#: wpvulnerability-adminms.php:1525 +msgid "Learn how to customize the email sender address →" +msgstr "Saiba como personalizar o endereço do remetente de email →" + +#: wpvulnerability-admin.php:1258 +#: wpvulnerability-adminms.php:1531 +msgid "Send Test Email" +msgstr "Enviar Email de Teste" + +#: wpvulnerability-admin.php:1267 +#: wpvulnerability-adminms.php:1540 +msgid "WP-Cron Status" +msgstr "Estado do WP-Cron" + +#: wpvulnerability-admin.php:1270 +#: wpvulnerability-adminms.php:1543 +msgid "View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly." +msgstr "Veja e gira os eventos agendados do WP-Cron. Compare os agendamentos esperados com as tarefas cron reais para garantir que as tarefas automatizadas estão a funcionar corretamente." + +#: wpvulnerability-admin.php:1275 +#: wpvulnerability-adminms.php:1548 +msgid "No cron data available." +msgstr "Sem dados cron disponíveis." + +#: wpvulnerability-admin.php:1281 +#: wpvulnerability-adminms.php:1554 +msgid "Hook" +msgstr "Hook" + +#: wpvulnerability-admin.php:1282 +#: wpvulnerability-adminms.php:1555 +msgid "Expected" +msgstr "Esperado" + +#: wpvulnerability-admin.php:1283 +#: wpvulnerability-adminms.php:1556 +msgid "Found" +msgstr "Encontrado" + +#: wpvulnerability-admin.php:1284 +#: wpvulnerability-adminms.php:1557 +msgid "Next Run" +msgstr "Próxima Execução" + +#: wpvulnerability-admin.php:1285 +#: wpvulnerability-admin.php:3236 +#: wpvulnerability-admin.php:3559 +#: wpvulnerability-adminms.php:1558 +#: wpvulnerability-adminms.php:3413 +#: wpvulnerability-adminms.php:3753 +msgid "Status" +msgstr "Estado" + +#: wpvulnerability-admin.php:1299 +#: wpvulnerability-adminms.php:1572 +msgid "Not expected" +msgstr "Não esperado" + +#: wpvulnerability-admin.php:1321 +#: wpvulnerability-adminms.php:1594 +#: wpvulnerability-general.php:1871 +#: wpvulnerability-general.php:1872 +msgid "None" +msgstr "Nenhum" + +#: wpvulnerability-admin.php:1356 +#: wpvulnerability-adminms.php:1629 +msgid "OK" +msgstr "OK" + +#: wpvulnerability-admin.php:1366 +#: wpvulnerability-adminms.php:1639 +msgid "⚠️ Unexpected WPVulnerability Events" +msgstr "⚠️ Eventos Inesperados do WPVulnerability" + +#: wpvulnerability-admin.php:1383 +#: wpvulnerability-adminms.php:1656 +msgid "No interval" +msgstr "Sem intervalo" + +#: wpvulnerability-admin.php:1390 +#: wpvulnerability-adminms.php:1663 +msgid "Next:" +msgstr "Próximo:" + +#: wpvulnerability-admin.php:1400 +#: wpvulnerability-adminms.php:1673 +msgid "Repair Cron Events" +msgstr "Reparar Eventos Cron" + +#: wpvulnerability-admin.php:1408 +#: wpvulnerability-adminms.php:1681 +msgid "Uninstall Data" +msgstr "Dados de Desinstalação" + +#: wpvulnerability-admin.php:1410 +#: wpvulnerability-adminms.php:1683 +msgid "By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall." +msgstr "Por predefinição, todos os dados do plugin são preservados quando o WPVulnerability é eliminado. Ative a opção abaixo apenas se pretender que todas as opções, registos e dados em cache sejam removidos permanentemente na desinstalação." + +#: wpvulnerability-admin.php:1420 +#: wpvulnerability-adminms.php:1693 +msgid "Delete all plugin data on uninstall" +msgstr "Eliminar todos os dados do plugin na desinstalação" + +#: wpvulnerability-admin.php:1423 +#: wpvulnerability-adminms.php:1696 +msgid "Default: unchecked (data preserved). Check only if you want a clean removal." +msgstr "Predefinição: desmarcado (dados preservados). Marque apenas se pretender uma remoção limpa." + +#: wpvulnerability-admin.php:1425 +#: wpvulnerability-adminms.php:1698 +msgid "Save preference" +msgstr "Guardar preferência" + +#: wpvulnerability-admin.php:1432 +#: wpvulnerability-adminms.php:1705 +msgid "Reset WPVulnerability" +msgstr "Repor WPVulnerability" + +#: wpvulnerability-admin.php:1434 +#: wpvulnerability-adminms.php:1707 +msgid "Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API." +msgstr "Elimine todas as configurações do WPVulnerability, dados em cache, registos e eventos agendados, depois restaure os valores predefinidos e recarregue os dados da API." + +#: wpvulnerability-admin.php:1436 +#: wpvulnerability-adminms.php:1709 +msgid "This action cannot be undone." +msgstr "Esta ação não pode ser desfeita." + +#: wpvulnerability-admin.php:1438 +#: wpvulnerability-adminms.php:1711 +msgid "Are you sure you want to reset all WPVulnerability data? This action cannot be undone." +msgstr "Tem a certeza de que pretende repor todos os dados do WPVulnerability? Esta ação não pode ser desfeita." + +#: wpvulnerability-admin.php:1441 +#: wpvulnerability-adminms.php:1713 +msgid "Reset Plugin" +msgstr "Repor Plugin" + +#: wpvulnerability-admin.php:1468 +#: wpvulnerability-adminms.php:1740 +msgid "Vulnerability Database Statistics" +msgstr "Estatísticas da Base de Dados de Vulnerabilidades" + +#. translators: number of vulnerabilities. +#: wpvulnerability-admin.php:1510 +#: wpvulnerability-adminms.php:1782 +#, php-format +msgid "%s vulnerability" +msgid_plural "%s vulnerabilities" +msgstr[0] "%s vulnerabilidade" +msgstr[1] "%s vulnerabilidades" + +#. translators: number of products. +#: wpvulnerability-admin.php:1520 +#: wpvulnerability-adminms.php:1792 +#, php-format +msgid "(%s product)" +msgid_plural "(%s products)" +msgstr[0] "(%s produto)" +msgstr[1] "(%s produtos)" + +#: wpvulnerability-admin.php:1527 +#: wpvulnerability-adminms.php:1799 +msgid "No data" +msgstr "Sem dados" + +#. translators: date of last update. +#: wpvulnerability-admin.php:1544 +#: wpvulnerability-adminms.php:1814 +#, php-format +msgid "Database last updated: %s" +msgstr "Base de dados atualizada pela última vez: %s" + +#: wpvulnerability-admin.php:1566 +#: wpvulnerability-adminms.php:1836 +msgid "Intelligence Sources" +msgstr "Fontes de Inteligência" + +#: wpvulnerability-admin.php:1567 +#: wpvulnerability-adminms.php:1837 +msgid "Number of vulnerabilities contributed by each intelligence source." +msgstr "Número de vulnerabilidades contribuídas por cada fonte de inteligência." + +#: wpvulnerability-admin.php:1571 +#: wpvulnerability-adminms.php:1841 +msgid "Source" +msgstr "Fonte" + +#: wpvulnerability-admin.php:1572 +#: wpvulnerability-admin.php:2104 +#: wpvulnerability-adminms.php:1842 +#: wpvulnerability-adminms.php:2261 +msgid "Core" +msgstr "Núcleo" + +#: wpvulnerability-admin.php:1603 +#: wpvulnerability-adminms.php:1873 +msgid "Sponsors" +msgstr "Patrocinadores" + +#: wpvulnerability-admin.php:1626 +#: wpvulnerability-adminms.php:1896 +msgid "No sponsor data available." +msgstr "Sem dados de patrocinadores disponíveis." + +#: wpvulnerability-admin.php:1633 +#: wpvulnerability-adminms.php:1903 +msgid "Contributors" +msgstr "Contribuidores" + +#: wpvulnerability-admin.php:1656 +#: wpvulnerability-adminms.php:1926 +msgid "No contributor data available." +msgstr "Sem dados de contribuidores disponíveis." + +#: wpvulnerability-admin.php:1674 +#: wpvulnerability-adminms.php:432 +msgid "You do not have sufficient permissions to access this page." +msgstr "Não tem permissões suficientes para aceder a esta página." + +#: wpvulnerability-admin.php:1684 +#: wpvulnerability-adminms.php:441 +msgid "WPVulnerability settings" +msgstr "Configurações do WPVulnerability" + +#: wpvulnerability-admin.php:1801 +#: wpvulnerability-adminms.php:1963 +msgid "Configure and save these settings to receive notifications." +msgstr "Configure e guarde estas definições para receber notificações." + +#: wpvulnerability-admin.php:1814 +#: wpvulnerability-adminms.php:2071 +msgid "Configure and save these settings to hide vulnerabilities." +msgstr "Configure e guarde estas definições para ocultar vulnerabilidades." + +#: wpvulnerability-admin.php:1845 +#: wpvulnerability-adminms.php:1993 +msgid "Default administrator email" +msgstr "Email predefinido do administrador" + +#: wpvulnerability-admin.php:1909 +#: wpvulnerability-adminms.php:2057 +msgid "Read more if you want to force the cache time." +msgstr "Leia mais se pretender forçar o tempo de cache." + +#: wpvulnerability-admin.php:1939 +#: wpvulnerability-adminms.php:2099 +msgid "Never" +msgstr "Nunca" + +#: wpvulnerability-admin.php:1944 +#: wpvulnerability-adminms.php:2104 +msgid "Daily" +msgstr "Diariamente" + +#: wpvulnerability-admin.php:1949 +#: wpvulnerability-adminms.php:2109 +msgid "Weekly" +msgstr "Semanalmente" + +#: wpvulnerability-admin.php:1953 +#: wpvulnerability-adminms.php:2113 +msgid "Day" +msgstr "Dia" + +#: wpvulnerability-admin.php:1966 +#: wpvulnerability-adminms.php:2126 +msgid "Hour" +msgstr "Hora" + +#: wpvulnerability-admin.php:1968 +#: wpvulnerability-adminms.php:2128 +msgid "Minute" +msgstr "Minuto" + +#: wpvulnerability-admin.php:2166 +#: wpvulnerability-adminms.php:2323 +msgid "Read more about how to force the deactivation of an item." +msgstr "Leia mais sobre como forçar a desativação de um item." + +#: wpvulnerability-admin.php:2292 +#: wpvulnerability-adminms.php:2870 +msgid "Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com" +msgstr "URL do webhook do Slack inválido. Deve ser um URL HTTPS válido de hooks.slack.com" + +#: wpvulnerability-admin.php:2315 +#: wpvulnerability-adminms.php:2893 +msgid "Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com" +msgstr "URL do webhook do Microsoft Teams inválido. Deve ser um URL HTTPS válido de office.com, office365.com ou api.hooks.microsoft.com" + +#: wpvulnerability-admin.php:2338 +#: wpvulnerability-adminms.php:2916 +msgid "Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com" +msgstr "URL do webhook do Discord inválido. Deve ser um URL HTTPS válido de discord.com ou discordapp.com" + +#: wpvulnerability-admin.php:2357 +#: wpvulnerability-adminms.php:2935 +msgid "Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "Formato do token do bot do Telegram inválido. Deve ser como: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:2493 +#: wpvulnerability-adminms.php:2400 +msgid "All Clear" +msgstr "Tudo em Ordem" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2503 +#: wpvulnerability-adminms.php:2410 +#, php-format +msgid "%d Critical Issue Found" +msgid_plural "%d Critical Issues Found" +msgstr[0] "%d Problema Crítico Encontrado" +msgstr[1] "%d Problemas Críticos Encontrados" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2508 +#: wpvulnerability-adminms.php:2415 +#, php-format +msgid "%d Issue Found" +msgid_plural "%d Issues Found" +msgstr[0] "%d Problema Encontrado" +msgstr[1] "%d Problemas Encontrados" + +#: wpvulnerability-admin.php:2515 +#: wpvulnerability-adminms.php:2422 +msgid "Never checked" +msgstr "Nunca verificado" + +#. translators: %d: number of minutes +#: wpvulnerability-admin.php:2523 +#: wpvulnerability-adminms.php:2430 +#, php-format +msgid "%d minute ago" +msgid_plural "%d minutes ago" +msgstr[0] "há %d minuto" +msgstr[1] "há %d minutos" + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:2527 +#: wpvulnerability-adminms.php:2434 +#, php-format +msgid "%d hour ago" +msgid_plural "%d hours ago" +msgstr[0] "há %d hora" +msgstr[1] "há %d horas" + +#. translators: %s: time since last check +#: wpvulnerability-admin.php:2539 +#: wpvulnerability-adminms.php:2446 +#, php-format +msgid "Last checked: %s" +msgstr "Última verificação: %s" + +#: wpvulnerability-admin.php:2540 +#: wpvulnerability-adminms.php:2447 +msgid "Refresh Now" +msgstr "Atualizar Agora" + +#: wpvulnerability-admin.php:2547 +#: wpvulnerability-adminms.php:2454 +msgid "No vulnerabilities detected" +msgstr "Nenhuma vulnerabilidade detetada" + +#: wpvulnerability-admin.php:2548 +#: wpvulnerability-adminms.php:2455 +msgid "Your site is up to date and secure" +msgstr "O seu site está atualizado e seguro" + +#: wpvulnerability-admin.php:2616 +#: wpvulnerability-adminms.php:2523 +msgid "Server Software" +msgstr "Software do Servidor" + +#: wpvulnerability-admin.php:2829 +#: wpvulnerability-adminms.php:2736 +msgid "Site Health" +msgstr "Saúde do Site" + +#: wpvulnerability-admin.php:2831 +#: wpvulnerability-adminms.php:2738 +#: wpvulnerability-run.php:33 +msgid "Settings" +msgstr "Configurações" + +#: wpvulnerability-admin.php:2846 +#: wpvulnerability-adminms.php:2754 +msgid "WPVulnerability Status" +msgstr "Estado do WPVulnerability" + +#: wpvulnerability-admin.php:2878 +#: wpvulnerability-adminms.php:3052 +msgid "Receive vulnerability notifications" +msgstr "Receber notificações de vulnerabilidades" + +#: wpvulnerability-admin.php:2886 +#: wpvulnerability-adminms.php:3060 +msgid "Cache expiration time" +msgstr "Tempo de expiração da cache" + +#: wpvulnerability-admin.php:2895 +#: wpvulnerability-adminms.php:3069 +msgid "How often you want to receive notifications" +msgstr "Com que frequência pretende receber notificações" + +#: wpvulnerability-admin.php:2904 +#: wpvulnerability-adminms.php:3078 +msgid "Where do you want to receive notifications?" +msgstr "Onde pretende receber as notificações?" + +#: wpvulnerability-admin.php:2913 +#: wpvulnerability-adminms.php:3087 +msgid "Email addresses to notify (separated by commas)" +msgstr "Endereços de email a notificar (separados por vírgulas)" + +#: wpvulnerability-admin.php:2922 +#: wpvulnerability-adminms.php:3096 +msgid "Slack webhook URL" +msgstr "URL do webhook do Slack" + +#: wpvulnerability-admin.php:2931 +#: wpvulnerability-adminms.php:3105 +msgid "Teams webhook URL" +msgstr "URL do webhook do Teams" + +#: wpvulnerability-admin.php:2950 +#: wpvulnerability-adminms.php:3126 +msgid "Vulnerabilities to hide" +msgstr "Vulnerabilidades a ocultar" + +#: wpvulnerability-admin.php:2958 +#: wpvulnerability-adminms.php:3134 +msgid "What do you want to hide?" +msgstr "O que pretende ocultar?" + +#: wpvulnerability-admin.php:3008 +#: wpvulnerability-adminms.php:3185 +msgid "Standard (Hybrid Detection)" +msgstr "Padrão (Deteção Híbrida)" + +#: wpvulnerability-admin.php:3009 +#: wpvulnerability-adminms.php:3186 +msgid "Strict (Extensions Only)" +msgstr "Estrito (Apenas Extensões)" + +#: wpvulnerability-admin.php:3010 +#: wpvulnerability-adminms.php:3187 +msgid "Disabled (No Detection)" +msgstr "Desativado (Sem Deteção)" + +#: wpvulnerability-admin.php:3016 +#: wpvulnerability-adminms.php:3193 +msgid "Security Status" +msgstr "Estado de Segurança" + +#: wpvulnerability-admin.php:3020 +#: wpvulnerability-adminms.php:3197 +msgid "Security Mode" +msgstr "Modo de Segurança" + +#: wpvulnerability-admin.php:3025 +#: wpvulnerability-adminms.php:3202 +msgid "Shell Execution" +msgstr "Execução de Shell" + +#: wpvulnerability-admin.php:3027 +#: wpvulnerability-admin.php:3475 +#: wpvulnerability-admin.php:3483 +#: wpvulnerability-adminms.php:3204 +#: wpvulnerability-adminms.php:3669 +#: wpvulnerability-adminms.php:3677 +msgid "Enabled" +msgstr "Ativado" + +#: wpvulnerability-admin.php:3034 +#: wpvulnerability-adminms.php:3211 +msgid "Audit Logging" +msgstr "Registo de Auditoria" + +#. translators: %d: number of days +#: wpvulnerability-admin.php:3039 +#: wpvulnerability-adminms.php:3216 +#, php-format +msgid "Enabled (%d days)" +msgstr "Ativado (%d dias)" + +#: wpvulnerability-admin.php:3048 +#: wpvulnerability-adminms.php:3225 +msgid "Total Log Entries" +msgstr "Total de Entradas de Registo" + +#: wpvulnerability-admin.php:3055 +#: wpvulnerability-adminms.php:3232 +msgid "Last Shell Execution" +msgstr "Última Execução de Shell" + +#. translators: %s: time ago +#: wpvulnerability-admin.php:3061 +#: wpvulnerability-admin.php:3266 +#: wpvulnerability-adminms.php:3238 +#: wpvulnerability-adminms.php:3441 +#, php-format +msgid "%s ago" +msgstr "há %s" + +#: wpvulnerability-admin.php:3073 +#: wpvulnerability-adminms.php:3250 +msgid "Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST." +msgstr "Configure as definições de segurança através de constantes em wp-config.php: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST." + +#. translators: %s: URL to security documentation +#: wpvulnerability-admin.php:3079 +#: wpvulnerability-adminms.php:3256 +#, php-format +msgid "See security configuration documentation for details." +msgstr "Consulte a documentação de configuração de segurança para mais detalhes." + +#: wpvulnerability-admin.php:3103 +#: wpvulnerability-adminms.php:3280 +msgid "Memcached" +msgstr "Memcached" + +#: wpvulnerability-admin.php:3131 +#: wpvulnerability-adminms.php:3308 +msgid "Imagick Extension" +msgstr "Extensão Imagick" + +#: wpvulnerability-admin.php:3132 +#: wpvulnerability-adminms.php:3309 +msgid "Redis Extension" +msgstr "Extensão Redis" + +#: wpvulnerability-admin.php:3133 +#: wpvulnerability-adminms.php:3310 +msgid "Memcached Extension" +msgstr "Extensão Memcached" + +#: wpvulnerability-admin.php:3134 +#: wpvulnerability-adminms.php:3311 +msgid "Memcache Extension" +msgstr "Extensão Memcache" + +#: wpvulnerability-admin.php:3135 +#: wpvulnerability-adminms.php:3312 +msgid "SQLite3 Extension" +msgstr "Extensão SQLite3" + +#: wpvulnerability-admin.php:3136 +#: wpvulnerability-adminms.php:3313 +msgid "PDO SQLite" +msgstr "PDO SQLite" + +#: wpvulnerability-admin.php:3137 +#: wpvulnerability-adminms.php:3314 +msgid "Shell Command" +msgstr "Comando Shell" + +#: wpvulnerability-admin.php:3138 +#: wpvulnerability-adminms.php:3315 +msgid "Binary Check" +msgstr "Verificação de Binário" + +#: wpvulnerability-admin.php:3139 +#: wpvulnerability-adminms.php:3316 +msgid "Not Detected" +msgstr "Não Detetado" + +#: wpvulnerability-admin.php:3143 +#: wpvulnerability-adminms.php:3320 +msgid "Software Detection Methods" +msgstr "Métodos de Deteção de Software" + +#: wpvulnerability-admin.php:3144 +#: wpvulnerability-adminms.php:3321 +msgid "Shows which detection method was used for each software component and the reliability score." +msgstr "Mostra qual o método de deteção utilizado para cada componente de software e a pontuação de fiabilidade." + +#: wpvulnerability-admin.php:3149 +#: wpvulnerability-admin.php:3234 +#: wpvulnerability-admin.php:3558 +#: wpvulnerability-adminms.php:3326 +#: wpvulnerability-adminms.php:3411 +#: wpvulnerability-adminms.php:3752 +msgid "Component" +msgstr "Componente" + +#: wpvulnerability-admin.php:3150 +#: wpvulnerability-adminms.php:3327 +msgid "Version" +msgstr "Versão" + +#: wpvulnerability-admin.php:3151 +#: wpvulnerability-adminms.php:3328 +msgid "Detection Method" +msgstr "Método de Deteção" + +#: wpvulnerability-admin.php:3152 +#: wpvulnerability-adminms.php:3329 +msgid "Reliability" +msgstr "Fiabilidade" + +#: wpvulnerability-admin.php:3164 +#: wpvulnerability-adminms.php:3341 +msgid "Not detected" +msgstr "Não detetado" + +#: wpvulnerability-admin.php:3220 +#: wpvulnerability-adminms.php:3397 +msgid "Shell Execution Audit Logs" +msgstr "Registos de Auditoria de Execução de Shell" + +#: wpvulnerability-admin.php:3221 +#: wpvulnerability-adminms.php:3398 +msgid "Complete audit trail of shell command executions for security monitoring." +msgstr "Registo completo de auditoria das execuções de comandos shell para monitorização de segurança." + +#: wpvulnerability-admin.php:3226 +#: wpvulnerability-adminms.php:3403 +msgid "No shell execution logs found." +msgstr "Nenhum registo de execução de shell encontrado." + +#: wpvulnerability-admin.php:3227 +#: wpvulnerability-adminms.php:3404 +msgid "Logs will appear here when shell commands are executed for software detection." +msgstr "Os registos aparecerão aqui quando os comandos shell forem executados para deteção de software." + +#: wpvulnerability-admin.php:3233 +#: wpvulnerability-adminms.php:3410 +msgid "Time" +msgstr "Hora" + +#: wpvulnerability-admin.php:3235 +#: wpvulnerability-adminms.php:3412 +msgid "Command" +msgstr "Comando" + +#: wpvulnerability-admin.php:3237 +#: wpvulnerability-adminms.php:3414 +msgid "User" +msgstr "Utilizador" + +#: wpvulnerability-admin.php:3238 +#: wpvulnerability-adminms.php:3415 +msgid "Output" +msgstr "Resultado" + +#. translators: %d: number of logs shown +#: wpvulnerability-admin.php:3302 +#: wpvulnerability-adminms.php:3477 +#, php-format +msgid "Showing the %d most recent log entries." +msgstr "A mostrar as %d entradas de registo mais recentes." + +#: wpvulnerability-admin.php:3320 +#: wpvulnerability-adminms.php:3565 +msgid "Invalid nonce." +msgstr "Nonce inválido." + +#: wpvulnerability-admin.php:3325 +#: wpvulnerability-adminms.php:3570 +msgid "Insufficient permissions." +msgstr "Permissões insuficientes." + +#: wpvulnerability-admin.php:3331 +#: wpvulnerability-adminms.php:3576 +msgid "No component specified." +msgstr "Nenhum componente especificado." + +#: wpvulnerability-admin.php:3366 +#: wpvulnerability-adminms.php:3524 +msgid "Debug Information" +msgstr "Informações de Depuração" + +#: wpvulnerability-admin.php:3368 +#: wpvulnerability-adminms.php:3526 +msgid "This tab is only visible when WP_DEBUG is enabled. Use with caution." +msgstr "Este separador só é visível quando o WP_DEBUG está ativado. Use com cautela." + +#: wpvulnerability-admin.php:3429 +#: wpvulnerability-adminms.php:3623 +msgid "System Information" +msgstr "Informações do Sistema" + +#: wpvulnerability-admin.php:3433 +#: wpvulnerability-adminms.php:3627 +msgid "WordPress Version" +msgstr "Versão do WordPress" + +#: wpvulnerability-admin.php:3437 +#: wpvulnerability-adminms.php:3631 +msgid "Multisite" +msgstr "Multisite" + +#: wpvulnerability-admin.php:3438 +#: wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 +#: wpvulnerability-adminms.php:3778 +msgid "Yes" +msgstr "Sim" + +#: wpvulnerability-admin.php:3438 +#: wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 +#: wpvulnerability-adminms.php:3778 +msgid "No" +msgstr "Não" + +#: wpvulnerability-admin.php:3441 +#: wpvulnerability-adminms.php:3635 +msgid "Language" +msgstr "Idioma" + +#: wpvulnerability-admin.php:3445 +#: wpvulnerability-adminms.php:3639 +msgid "PHP Version" +msgstr "Versão do PHP" + +#: wpvulnerability-admin.php:3449 +#: wpvulnerability-adminms.php:3643 +msgid "PHP Extensions" +msgstr "Extensões PHP" + +#: wpvulnerability-admin.php:3460 +#: wpvulnerability-adminms.php:3654 +msgid "PHP Memory Limit" +msgstr "Limite de Memória PHP" + +#: wpvulnerability-admin.php:3464 +#: wpvulnerability-adminms.php:3658 +msgid "Database" +msgstr "Base de Dados" + +#: wpvulnerability-admin.php:3468 +#: wpvulnerability-adminms.php:3662 +msgid "Web Server" +msgstr "Servidor Web" + +#: wpvulnerability-admin.php:3472 +#: wpvulnerability-adminms.php:3666 +msgid "WP_DEBUG" +msgstr "WP_DEBUG" + +#: wpvulnerability-admin.php:3480 +#: wpvulnerability-adminms.php:3674 +msgid "WP_DEBUG_LOG" +msgstr "WP_DEBUG_LOG" + +#: wpvulnerability-admin.php:3490 +#: wpvulnerability-adminms.php:3684 +msgid "Path:" +msgstr "Caminho:" + +#. translators: %s: file size +#: wpvulnerability-admin.php:3499 +#: wpvulnerability-adminms.php:3698 +#, php-format +msgid "Size: %s" +msgstr "Tamanho: %s" + +#: wpvulnerability-admin.php:3510 +#: wpvulnerability-adminms.php:3704 +msgid "View Log File" +msgstr "Ver Ficheiro de Registo" + +#: wpvulnerability-admin.php:3516 +#: wpvulnerability-adminms.php:3710 +msgid "Log file is not web-accessible (outside wp-content)" +msgstr "O ficheiro de registo não é acessível pela web (fora de wp-content)" + +#: wpvulnerability-admin.php:3522 +#: wpvulnerability-adminms.php:3716 +msgid "Log file does not exist yet" +msgstr "O ficheiro de registo ainda não existe" + +#: wpvulnerability-admin.php:3530 +#: wpvulnerability-adminms.php:3724 +msgid "Plugin Version" +msgstr "Versão do Plugin" + +#: wpvulnerability-admin.php:3554 +#: wpvulnerability-adminms.php:3748 +msgid "Component Detection" +msgstr "Deteção de Componentes" + +#: wpvulnerability-admin.php:3560 +#: wpvulnerability-adminms.php:3754 +msgid "Version Detected" +msgstr "Versão Detetada" + +#: wpvulnerability-admin.php:3561 +#: wpvulnerability-adminms.php:3755 +msgid "Analyzed" +msgstr "Analisado" + +#: wpvulnerability-admin.php:3562 +#: wpvulnerability-adminms.php:3756 +msgid "Cache Status" +msgstr "Estado da Cache" + +#: wpvulnerability-admin.php:3622 +#: wpvulnerability-adminms.php:3816 +msgid "Configuration Summary" +msgstr "Resumo da Configuração" + +#: wpvulnerability-admin.php:3626 +#: wpvulnerability-adminms.php:3820 +msgid "Cache Duration" +msgstr "Duração da Cache" + +#: wpvulnerability-admin.php:3636 +#: wpvulnerability-adminms.php:3830 +msgid "Log Retention" +msgstr "Retenção de Registos" + +#: wpvulnerability-admin.php:3646 +#: wpvulnerability-adminms.php:3840 +msgid "Components Analyzed" +msgstr "Componentes Analisados" + +#: wpvulnerability-admin.php:3661 +#: wpvulnerability-adminms.php:3855 +msgid "Notification Email" +msgstr "Email de Notificação" + +#: wpvulnerability-admin.php:3682 +#: wpvulnerability-adminms.php:3876 +msgid "Slack Webhook" +msgstr "Webhook do Slack" + +#: wpvulnerability-admin.php:3692 +#: wpvulnerability-admin.php:3712 +#: wpvulnerability-admin.php:3732 +#: wpvulnerability-admin.php:3752 +#: wpvulnerability-adminms.php:3886 +#: wpvulnerability-adminms.php:3906 +#: wpvulnerability-adminms.php:3926 +#: wpvulnerability-adminms.php:3946 +msgid "Configured & Enabled" +msgstr "Configurado e Ativado" + +#: wpvulnerability-admin.php:3694 +#: wpvulnerability-admin.php:3714 +#: wpvulnerability-admin.php:3734 +#: wpvulnerability-admin.php:3754 +#: wpvulnerability-adminms.php:3888 +#: wpvulnerability-adminms.php:3908 +#: wpvulnerability-adminms.php:3928 +#: wpvulnerability-adminms.php:3948 +msgid "Configured (Disabled)" +msgstr "Configurado (Desativado)" + +#: wpvulnerability-admin.php:3696 +#: wpvulnerability-admin.php:3716 +#: wpvulnerability-admin.php:3736 +#: wpvulnerability-admin.php:3756 +#: wpvulnerability-adminms.php:3890 +#: wpvulnerability-adminms.php:3910 +#: wpvulnerability-adminms.php:3930 +#: wpvulnerability-adminms.php:3950 +msgid "Not configured" +msgstr "Não configurado" + +#: wpvulnerability-admin.php:3703 +#: wpvulnerability-adminms.php:3897 +msgid "Teams Webhook" +msgstr "Webhook do Teams" + +#: wpvulnerability-admin.php:3723 +#: wpvulnerability-adminms.php:3917 +msgid "Discord Webhook" +msgstr "Webhook do Discord" + +#: wpvulnerability-admin.php:3743 +#: wpvulnerability-adminms.php:3937 +msgid "Telegram Bot" +msgstr "Bot do Telegram" + +#: wpvulnerability-admin.php:3788 +#: wpvulnerability-adminms.php:3982 +msgid "Cron Status" +msgstr "Estado do Cron" + +#: wpvulnerability-admin.php:3792 +#: wpvulnerability-adminms.php:3986 +msgid "Update Database" +msgstr "Atualizar Base de Dados" + +#. translators: %s: date and time +#: wpvulnerability-admin.php:3797 +#: wpvulnerability-admin.php:3810 +#: wpvulnerability-adminms.php:3991 +#: wpvulnerability-adminms.php:4004 +#, php-format +msgid "Next run: %s" +msgstr "Próxima execução: %s" + +#: wpvulnerability-admin.php:3800 +#: wpvulnerability-admin.php:3813 +#: wpvulnerability-adminms.php:3994 +#: wpvulnerability-adminms.php:4007 +msgid "Not scheduled" +msgstr "Não agendado" + +#: wpvulnerability-admin.php:3805 +#: wpvulnerability-adminms.php:3999 +msgid "Send Notification" +msgstr "Enviar Notificação" + +#: wpvulnerability-admin.php:3826 +#: wpvulnerability-adminms.php:4020 +msgid "Run Update Now" +msgstr "Executar Atualização Agora" + +#: wpvulnerability-admin.php:3834 +#: wpvulnerability-adminms.php:4028 +msgid "Run Notification Now" +msgstr "Executar Notificação Agora" + +#: wpvulnerability-admin.php:3840 +#: wpvulnerability-adminms.php:4034 +msgid "You do not have permission to run these actions." +msgstr "Não tem permissão para executar estas ações." + +#: wpvulnerability-admin.php:3859 +#: wpvulnerability-adminms.php:4053 +msgid "API Testing" +msgstr "Teste da API" + +#: wpvulnerability-admin.php:3862 +#: wpvulnerability-adminms.php:4056 +msgid "Test API connectivity for each component. Click a button to send a test request." +msgstr "Teste a conectividade da API para cada componente. Clique num botão para enviar um pedido de teste." + +#. translators: %s: component name +#: wpvulnerability-admin.php:3869 +#: wpvulnerability-adminms.php:4063 +#, php-format +msgid "Test %s" +msgstr "Testar %s" + +#: wpvulnerability-admin.php:3884 +#: wpvulnerability-adminms.php:4078 +msgid "Testing..." +msgstr "A testar..." + +#: wpvulnerability-admin.php:3900 +#: wpvulnerability-adminms.php:4094 +msgid "HTTP Code:" +msgstr "Código HTTP:" + +#: wpvulnerability-admin.php:3901 +#: wpvulnerability-adminms.php:4095 +msgid "Response Time:" +msgstr "Tempo de Resposta:" + +#: wpvulnerability-admin.php:3903 +#: wpvulnerability-adminms.php:4097 +msgid "Response Preview" +msgstr "Pré-visualização da Resposta" + +#: wpvulnerability-admin.php:3910 +#: wpvulnerability-admin.php:3914 +#: wpvulnerability-adminms.php:4104 +#: wpvulnerability-adminms.php:4108 +msgid "Test" +msgstr "Teste" + +#: wpvulnerability-admin.php:3913 +#: wpvulnerability-adminms.php:4107 +msgid "Error:" +msgstr "Erro:" + +#: wpvulnerability-admin.php:3913 +#: wpvulnerability-adminms.php:4107 +msgid "AJAX request failed." +msgstr "O pedido AJAX falhou." + +#: wpvulnerability-admin.php:3922 +#: wpvulnerability-adminms.php:4116 +msgid "You do not have permission to test API connectivity." +msgstr "Não tem permissão para testar a conectividade da API." + +#: wpvulnerability-admin.php:3943 +#: wpvulnerability-adminms.php:4137 +msgid "Database Options Viewer" +msgstr "Visualizador de Opções da Base de Dados" + +#: wpvulnerability-admin.php:3944 +#: wpvulnerability-adminms.php:4138 +msgid "View the raw data stored in WordPress options." +msgstr "Veja os dados brutos armazenados nas opções do WordPress." + +#: wpvulnerability-admin.php:3950 +#: wpvulnerability-adminms.php:4144 +msgid "Select an option..." +msgstr "Selecione uma opção..." + +#: wpvulnerability-admin.php:3969 +#: wpvulnerability-adminms.php:4163 +msgid "Option not found or empty." +msgstr "Opção não encontrada ou vazia." + +#: wpvulnerability-admin.php:3987 +#: wpvulnerability-adminms.php:4182 +msgid "Quick Actions" +msgstr "Ações Rápidas" + +#: wpvulnerability-admin.php:3988 +#: wpvulnerability-adminms.php:4183 +msgid "Perform debugging actions. Use with caution." +msgstr "Execute ações de depuração. Use com cautela." + +#: wpvulnerability-admin.php:3992 +#: wpvulnerability-adminms.php:4187 +msgid "Are you sure you want to clear all caches?" +msgstr "Tem a certeza de que pretende limpar todas as caches?" + +#: wpvulnerability-admin.php:3996 +#: wpvulnerability-adminms.php:4191 +msgid "Clear All Caches" +msgstr "Limpar Todas as Caches" + +#: wpvulnerability-admin.php:4000 +#: wpvulnerability-adminms.php:4195 +msgid "Are you sure you want to reset signatures?" +msgstr "Tem a certeza de que pretende repor as assinaturas?" + +#: wpvulnerability-admin.php:4004 +#: wpvulnerability-adminms.php:4199 +msgid "Reset Signatures" +msgstr "Repor Assinaturas" + +#: wpvulnerability-admin.php:4012 +#: wpvulnerability-adminms.php:4207 +msgid "Export Debug Info" +msgstr "Exportar Informações de Depuração" + +#: wpvulnerability-admin.php:4018 +#: wpvulnerability-adminms.php:4213 +msgid "You do not have permission to perform these actions." +msgstr "Não tem permissão para executar estas ações." + +#: wpvulnerability-adminms.php:101 +#: wpvulnerability-adminms.php:199 +msgid "Settings saved." +msgstr "Configurações guardadas." + +#: wpvulnerability-adminms.php:277 +msgid "WPVulnerability cron events have been repaired across the network." +msgstr "Os eventos cron do WPVulnerability foram reparados em toda a rede." + +#: wpvulnerability-adminms.php:3512 +msgid "You do not have permission to access this page." +msgstr "Não tem permissão para aceder a esta página." + +#. translators: 1: core version +#: wpvulnerability-core.php:33 +#, php-format +msgid "WordPress %1$s has a known vulnerability that may be affecting your installed version." +msgstr "O WordPress %1$s tem uma vulnerabilidade conhecida que pode estar a afetar a sua versão instalada." + +#: wpvulnerability-core.php:115 +#: wpvulnerability-plugins.php:207 +#: wpvulnerability-process.php:335 +#: wpvulnerability-process.php:443 +#: wpvulnerability-process.php:529 +#: wpvulnerability-themes.php:173 +#: wpvulnerability-themes.php:469 +msgid "Actively exploited" +msgstr "Explorado ativamente" + +#: wpvulnerability-core.php:122 +#: wpvulnerability-plugins.php:214 +#: wpvulnerability-process.php:342 +#: wpvulnerability-process.php:450 +#: wpvulnerability-themes.php:180 +#: wpvulnerability-themes.php:476 +msgid "Public exploit" +msgstr "Exploit público" + +#: wpvulnerability-core.php:125 +#: wpvulnerability-plugins.php:217 +#: wpvulnerability-process.php:345 +#: wpvulnerability-process.php:453 +#: wpvulnerability-themes.php:183 +#: wpvulnerability-themes.php:479 +msgid "Automatable" +msgstr "Automatizável" + +#: wpvulnerability-core.php:139 +#: wpvulnerability-plugins.php:245 +#: wpvulnerability-process.php:371 +#: wpvulnerability-process.php:469 +#: wpvulnerability-process.php:544 +#: wpvulnerability-themes.php:211 +#: wpvulnerability-themes.php:503 +msgid "References:" +msgstr "Referências:" + +#: wpvulnerability-debug.php:399 +msgid "Invalid component specified." +msgstr "Componente especificado inválido." + +#: wpvulnerability-debug.php:423 +msgid "Version not detected for this component." +msgstr "Versão não detetada para este componente." + +#: wpvulnerability-debug.php:453 +msgid "API request successful." +msgstr "Pedido à API efetuado com sucesso." + +#. translators: %d: HTTP status code +#: wpvulnerability-debug.php:469 +#, php-format +msgid "API returned HTTP code %d." +msgstr "A API devolveu o código HTTP %d." + +#: wpvulnerability-general.php:355 +msgid "WPVulnerability Logs" +msgstr "Registos do WPVulnerability" + +#: wpvulnerability-general.php:356 +msgid "WPVulnerability Log" +msgstr "Registo do WPVulnerability" + +#: wpvulnerability-general.php:1873 +#: wpvulnerability-general.php:1874 +msgid "Low" +msgstr "Baixo" + +#: wpvulnerability-general.php:1875 +#: wpvulnerability-general.php:1876 +msgid "Medium" +msgstr "Médio" + +#: wpvulnerability-general.php:1877 +#: wpvulnerability-general.php:1878 +msgid "High" +msgstr "Alto" + +#: wpvulnerability-general.php:1879 +#: wpvulnerability-general.php:1880 +msgid "Critical" +msgstr "Crítico" + +#: wpvulnerability-general.php:2684 +msgid "WPVulnerability Shell Logs" +msgstr "Registos de Shell do WPVulnerability" + +#: wpvulnerability-general.php:2685 +msgid "WPVulnerability Shell Log" +msgstr "Registo de Shell do WPVulnerability" + +#: wpvulnerability-notifications.php:30 +msgid "Every week" +msgstr "Todas as semanas" + +#: wpvulnerability-notifications.php:57 +msgid "Every day" +msgstr "Todos os dias" + +#: wpvulnerability-notifications.php:84 +msgid "Invalid request." +msgstr "Pedido inválido." + +#: wpvulnerability-notifications.php:104 +msgid "You have unsubscribed from WPVulnerability notifications." +msgstr "Cancelou a subscrição das notificações do WPVulnerability." + +#. translators: %1$s the website of Database, %2$s database site name. +#: wpvulnerability-notifications.php:289 +#, php-format +msgid "Learn more about the WordPress Vulnerability Database API at %2$s" +msgstr "Saiba mais sobre a API da Base de Dados de Vulnerabilidades WordPress em %2$s" + +#. translators: %1$s unsubscribe URL. +#: wpvulnerability-notifications.php:300 +#, php-format +msgid "Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings." +msgstr "Pretende deixar de receber estes alertas? Cancelar subscrição ou altere a frequência de email para Nunca nas configurações do WPVulnerability." + +#: wpvulnerability-notifications.php:595 +msgid "No vulnerabilities found" +msgstr "Nenhuma vulnerabilidade encontrada" + +#: wpvulnerability-notifications.php:596 +msgid "This is likely a test. The site does not have vulnerabilities." +msgstr "Isto é provavelmente um teste. O site não tem vulnerabilidades." + +#: wpvulnerability-notifications.php:601 +msgid "Core vulnerabilities" +msgstr "Vulnerabilidades no núcleo" + +#: wpvulnerability-notifications.php:607 +msgid "Plugins vulnerabilities" +msgstr "Vulnerabilidades em plugins" + +#: wpvulnerability-notifications.php:613 +msgid "Themes vulnerabilities" +msgstr "Vulnerabilidades em temas" + +#: wpvulnerability-notifications.php:619 +msgid "PHP vulnerabilities" +msgstr "Vulnerabilidades em PHP" + +#: wpvulnerability-notifications.php:625 +msgid "Apache HTTPD vulnerabilities" +msgstr "Vulnerabilidades em Apache HTTPD" + +#: wpvulnerability-notifications.php:631 +msgid "Nginx vulnerabilities" +msgstr "Vulnerabilidades em Nginx" + +#: wpvulnerability-notifications.php:637 +msgid "MariaDB vulnerabilities" +msgstr "Vulnerabilidades em MariaDB" + +#: wpvulnerability-notifications.php:643 +msgid "MySQL vulnerabilities" +msgstr "Vulnerabilidades em MySQL" + +#: wpvulnerability-notifications.php:649 +msgid "ImageMagick vulnerabilities" +msgstr "Vulnerabilidades em ImageMagick" + +#: wpvulnerability-notifications.php:655 +msgid "curl vulnerabilities" +msgstr "Vulnerabilidades em curl" + +#: wpvulnerability-notifications.php:661 +msgid "memcached vulnerabilities" +msgstr "Vulnerabilidades em memcached" + +#: wpvulnerability-notifications.php:667 +msgid "Redis vulnerabilities" +msgstr "Vulnerabilidades em Redis" + +#: wpvulnerability-notifications.php:673 +msgid "SQLite vulnerabilities" +msgstr "Vulnerabilidades em SQLite" + +#. translators: Site name. +#: wpvulnerability-notifications.php:696 +#, php-format +msgid "Vulnerability found: %s" +msgstr "Vulnerabilidade encontrada: %s" + +#: wpvulnerability-notifications.php:700 +msgid "Vulnerability found" +msgstr "Vulnerabilidade encontrada" + +#. translators: 1: Plugin name +#. translators: 1: theme name +#: wpvulnerability-plugins.php:116 +#: wpvulnerability-themes.php:82 +#, php-format +msgid "%1$s has a known vulnerability that may be affecting your installed version." +msgstr "%1$s tem uma vulnerabilidade conhecida que pode estar a afetar a sua versão instalada." + +#: wpvulnerability-plugins.php:230 +#: wpvulnerability-process.php:358 +msgid "This plugin is closed. Please replace it with another." +msgstr "Este plugin foi encerrado. Por favor, substitua-o por outro." + +#: wpvulnerability-plugins.php:233 +#: wpvulnerability-process.php:361 +msgid "This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates." +msgstr "Esta vulnerabilidade parece não ter correção disponível. Fique atento às próximas atualizações do plugin." + +#: wpvulnerability-plugins.php:570 +msgid "It hasn't been updated in over a year." +msgstr "Não foi atualizado há mais de um ano." + +#: wpvulnerability-plugins.php:576 +msgid "It may no longer be available (closed?)." +msgstr "Pode já não estar disponível (encerrado?)." + +#: wpvulnerability-plugins.php:614 +#: wpvulnerability-plugins.php:621 +msgid "Last updated on" +msgstr "Última atualização em" + +#. translators: the number of vulnerabilities. +#: wpvulnerability-plugins.php:764 +#: wpvulnerability-themes.php:704 +#, php-format +msgid "Vulnerabilities (%d)" +msgstr "Vulnerabilidades (%d)" + +#. translators: %s: software name. +#: wpvulnerability-process.php:601 +#, php-format +msgid "%s running" +msgstr "%s em execução" + +#: wpvulnerability-process.php:611 +#: wpvulnerability-process.php:792 +msgid "End of Life" +msgstr "Fim de Vida" + +#: wpvulnerability-process.php:613 +#: wpvulnerability-process.php:618 +msgid "End of life:" +msgstr "Fim de vida:" + +#: wpvulnerability-process.php:616 +msgid "Supported" +msgstr "Suportado" + +#: wpvulnerability-process.php:652 +msgid "Plugin" +msgstr "Plugin" + +#: wpvulnerability-process.php:721 +msgid "Theme" +msgstr "Tema" + +#. translators: %s: end-of-life date +#: wpvulnerability-process.php:790 +#, php-format +msgid "End of life: %s" +msgstr "Fim de vida: %s" + +#: wpvulnerability-process.php:795 +msgid "EOL" +msgstr "EOL" + +#: wpvulnerability-run.php:30 +msgid "Network Settings" +msgstr "Configurações de Rede" + +#: wpvulnerability-run.php:731 +#: wpvulnerability-run.php:781 +#: wpvulnerability-run.php:791 +#: wpvulnerability-run.php:836 +msgid "Vulnerabilities" +msgstr "Vulnerabilidades" + +#: wpvulnerability-schedule.php:30 +msgid "Every 6 hours" +msgstr "A cada 6 horas" + +#: wpvulnerability-schedule.php:303 +msgid "Database updates" +msgstr "Atualizações da base de dados" + +#: wpvulnerability-schedule.php:309 +msgid "Log cleanup" +msgstr "Limpeza de registos" + +#: wpvulnerability-schedule.php:439 +msgid "Notifications are scheduled, but settings currently disable them. Please review the notifications tab." +msgstr "As notificações estão agendadas, mas as configurações atuais desativam-nas. Por favor, reveja o separador de notificações." + +#: wpvulnerability-schedule.php:442 +msgid "This event should not be scheduled for this site." +msgstr "Este evento não deve ser agendado para este site." + +#: wpvulnerability-schedule.php:446 +msgid "Not expected for this site." +msgstr "Não esperado para este site." + +#: wpvulnerability-schedule.php:450 +msgid "No instances found." +msgstr "Nenhuma instância encontrada." + +#: wpvulnerability-schedule.php:456 +msgid "Scheduled with an unexpected interval." +msgstr "Agendado com um intervalo inesperado." + +#: wpvulnerability-schedule.php:460 +msgid "Multiple instances detected." +msgstr "Múltiplas instâncias detetadas." + +#: wpvulnerability-schedule.php:465 +msgid "Scheduled as expected." +msgstr "Agendado conforme esperado." + +#: wpvulnerability-sitehealth.php:22 +msgid "There aren't plugins vulnerabilities" +msgstr "Não existem vulnerabilidades em plugins" + +#: wpvulnerability-sitehealth.php:30 +msgid "Shows possible vulnerabilities that exist in installed plugins." +msgstr "Mostra as possíveis vulnerabilidades existentes nos plugins instalados." + +#. translators: Number of plugins vulnerabilities. +#: wpvulnerability-sitehealth.php:43 +#, php-format +msgid "There is %d plugin with vulnerabilities" +msgid_plural "There are %d plugins with vulnerabilities" +msgstr[0] "Existe %d plugin com vulnerabilidades" +msgstr[1] "Existem %d plugins com vulnerabilidades" + +#: wpvulnerability-sitehealth.php:49 +msgid "We've detected potential vulnerabilities in installed plugins. Please check them and keep them updated." +msgstr "Foram detetadas potenciais vulnerabilidades nos plugins instalados. Por favor, verifique-os e mantenha-os atualizados." + +#: wpvulnerability-sitehealth.php:57 +msgid "Update plugins" +msgstr "Atualizar plugins" + +#: wpvulnerability-sitehealth.php:74 +msgid "There aren't themes vulnerabilities" +msgstr "Não existem vulnerabilidades em temas" + +#: wpvulnerability-sitehealth.php:82 +msgid "Shows possible vulnerabilities that exist in installed themes." +msgstr "Mostra as possíveis vulnerabilidades existentes nos temas instalados." + +#. translators: Number of themes vulnerabilities. +#: wpvulnerability-sitehealth.php:95 +#, php-format +msgid "There is %d theme with vulnerabilities" +msgid_plural "There are %d themes with vulnerabilities" +msgstr[0] "Existe %d tema com vulnerabilidades" +msgstr[1] "Existem %d temas com vulnerabilidades" + +#: wpvulnerability-sitehealth.php:101 +msgid "We've detected potential vulnerabilities in installed themes. Please check them and keep them updated." +msgstr "Foram detetadas potenciais vulnerabilidades nos temas instalados. Por favor, verifique-os e mantenha-os atualizados." + +#: wpvulnerability-sitehealth.php:109 +msgid "Update themes" +msgstr "Atualizar temas" + +#: wpvulnerability-sitehealth.php:126 +msgid "There aren't WordPress vulnerabilities" +msgstr "Não existem vulnerabilidades no WordPress" + +#: wpvulnerability-sitehealth.php:134 +msgid "Shows possible vulnerabilities existing in the WordPress core." +msgstr "Mostra as possíveis vulnerabilidades existentes no núcleo do WordPress." + +#. translators: Number of core vulnerabilities. +#: wpvulnerability-sitehealth.php:147 +#, php-format +msgid "There is %d core vulnerability" +msgid_plural "There are %d core vulnerabilities" +msgstr[0] "Existe %d vulnerabilidade no núcleo" +msgstr[1] "Existem %d vulnerabilidades no núcleo" + +#: wpvulnerability-sitehealth.php:153 +msgid "We've detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated." +msgstr "Foram detetadas potenciais vulnerabilidades nesta instalação WordPress. Por favor, verifique-as e mantenha a sua instalação atualizada." + +#: wpvulnerability-sitehealth.php:161 +msgid "Update WordPress" +msgstr "Atualizar WordPress" + +#: wpvulnerability-sitehealth.php:180 +msgid "Nginx" +msgstr "Nginx" + +#: wpvulnerability-sitehealth.php:189 +msgid "Invalid software type" +msgstr "Tipo de software inválido" + +#: wpvulnerability-sitehealth.php:192 +msgid "Error" +msgstr "Erro" + +#: wpvulnerability-sitehealth.php:197 +msgid "The specified software type is not valid." +msgstr "O tipo de software especificado não é válido." + +#. translators: name of the software. +#: wpvulnerability-sitehealth.php:207 +#, php-format +msgid "There aren't %s vulnerabilities" +msgstr "Não existem vulnerabilidades em %s" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:216 +#, php-format +msgid "Shows possible vulnerabilities existing in %s." +msgstr "Mostra as possíveis vulnerabilidades existentes em %s." + +#. translators: Software and number of vulnerabilities. +#: wpvulnerability-sitehealth.php:229 +#, php-format +msgid "There is %1$d %2$s vulnerability" +msgid_plural "There are %1$d %2$s vulnerabilities" +msgstr[0] "Existe %1$d vulnerabilidade em %2$s" +msgstr[1] "Existem %1$d vulnerabilidades em %2$s" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:237 +#, php-format +msgid "We've detected potential vulnerabilities in %s. Please check them and keep your installation updated." +msgstr "Foram detetadas potenciais vulnerabilidades em %s. Por favor, verifique-as e mantenha a sua instalação atualizada." + +#: wpvulnerability-sitehealth.php:246 +msgid "How to update PHP" +msgstr "Como atualizar PHP" + +#: wpvulnerability-sitehealth.php:386 +msgid "WPVulnerability Core" +msgstr "WPVulnerability Core" + +#: wpvulnerability-sitehealth.php:394 +msgid "WPVulnerability Themes" +msgstr "WPVulnerability Themes" + +#: wpvulnerability-sitehealth.php:402 +msgid "WPVulnerability Plugins" +msgstr "WPVulnerability Plugins" + +#: wpvulnerability-sitehealth.php:410 +msgid "WPVulnerability PHP" +msgstr "WPVulnerability PHP" + +#: wpvulnerability-sitehealth.php:418 +msgid "WPVulnerability Apache HTTPD" +msgstr "WPVulnerability Apache HTTPD" + +#: wpvulnerability-sitehealth.php:426 +msgid "WPVulnerability Nginx" +msgstr "WPVulnerability Nginx" + +#: wpvulnerability-sitehealth.php:434 +msgid "WPVulnerability MariaDB" +msgstr "WPVulnerability MariaDB" + +#: wpvulnerability-sitehealth.php:442 +msgid "WPVulnerability MySQL" +msgstr "WPVulnerability MySQL" + +#: wpvulnerability-sitehealth.php:450 +msgid "WPVulnerability ImageMagick" +msgstr "WPVulnerability ImageMagick" + +#: wpvulnerability-sitehealth.php:458 +msgid "WPVulnerability curl" +msgstr "WPVulnerability curl" + +#: wpvulnerability-sitehealth.php:466 +msgid "WPVulnerability memcached" +msgstr "WPVulnerability memcached" + +#: wpvulnerability-sitehealth.php:474 +msgid "WPVulnerability redis" +msgstr "WPVulnerability redis" + +#: wpvulnerability-sitehealth.php:482 +msgid "WPVulnerability sqlite" +msgstr "WPVulnerability sqlite" + +#: wpvulnerability-themes.php:196 +#: wpvulnerability-themes.php:492 +msgid "This theme is closed. Please replace it with another." +msgstr "Este tema foi encerrado. Por favor, substitua-o por outro." + +#: wpvulnerability-themes.php:199 +#: wpvulnerability-themes.php:495 +msgid "This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates." +msgstr "Esta vulnerabilidade parece não ter correção disponível. Fique atento às próximas atualizações do tema." + +#: wpvulnerability-themes.php:391 +msgid "This theme has known vulnerabilities that may be affecting your installed version." +msgstr "Este tema tem vulnerabilidades conhecidas que podem estar a afetar a sua versão instalada." diff --git a/languages/wpvulnerability-ro.l10n.php b/languages/wpvulnerability-ro.l10n.php new file mode 100644 index 0000000..0863c42 --- /dev/null +++ b/languages/wpvulnerability-ro.l10n.php @@ -0,0 +1,2 @@ +'wpvulnerability','plural-forms'=>'nplurals=3; plural=(n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < 20)) ? 1 : 2);','language'=>'ro','project-id-version'=>'WPVulnerability 5.0.0','pot-creation-date'=>'2026-05-27T16:32:22+00:00','po-revision-date'=>'2026-05-27 00:00+0000','x-generator'=>'AI Translation','messages'=>['This command requires a WordPress administrator. Run with --user=.'=>'Această comandă necesită un administrator WordPress. Rulați cu --user=.','No core vulnerabilities found.'=>'Nu au fost găsite vulnerabilități în nucleu.','No plugin vulnerabilities found.'=>'Nu au fost găsite vulnerabilități în plugin-uri.','No theme vulnerabilities found.'=>'Nu au fost găsite vulnerabilități în teme.','No %s vulnerabilities found.'=>'Nu au fost găsite vulnerabilități pentru %s.','Data from source has been reloaded.'=>'Datele din sursă au fost reîncărcate.','You do not have permission to reload data.'=>'Nu aveți permisiunea de a reîncărca datele.','Test email has been sent.'=>'E-mailul de test a fost trimis.','Test email has failed. Please, check your email settings.'=>'Trimiterea e-mailului de test a eșuat. Verificați setările de e-mail.','You do not have permission to send test emails.'=>'Nu aveți permisiunea de a trimite e-mailuri de test.','WPVulnerability cron events have been repaired.'=>'Evenimentele cron ale WPVulnerability au fost reparate.','You do not have permission to repair cron events.'=>'Nu aveți permisiunea de a repara evenimentele cron.','All logs have been deleted.'=>'Toate jurnalele au fost șterse.','You do not have permission to delete logs.'=>'Nu aveți permisiunea de a șterge jurnalele.','Uninstall preference saved.'=>'Preferința de dezinstalare a fost salvată.','WPVulnerability has been reset to defaults and reloaded.'=>'WPVulnerability a fost resetat la valorile implicite și reîncărcat.','You do not have permission to reset WPVulnerability.'=>'Nu aveți permisiunea de a reseta WPVulnerability.','All caches have been cleared.'=>'Toate cache-urile au fost șterse.','You do not have permission to clear caches.'=>'Nu aveți permisiunea de a șterge cache-urile.','Plugin and theme signatures have been reset.'=>'Semnăturile plugin-urilor și temelor au fost resetate.','You do not have permission to reset signatures.'=>'Nu aveți permisiunea de a reseta semnăturile.','You do not have permission to export debug information.'=>'Nu aveți permisiunea de a exporta informații de depanare.','Database update has been executed.'=>'Actualizarea bazei de date a fost executată.','You do not have permission to run database updates.'=>'Nu aveți permisiunea de a rula actualizări ale bazei de date.','Notification has been sent.'=>'Notificarea a fost trimisă.','Notification sending failed.'=>'Trimiterea notificării a eșuat.','You do not have permission to send notifications.'=>'Nu aveți permisiunea de a trimite notificări.','Notifications'=>'Notificări','Analysis'=>'Analiză','Logs'=>'Jurnale','Security'=>'Securitate','Tools'=>'Instrumente','Debug'=>'Depanare','About'=>'Despre','Notification Settings'=>'Setări de notificare','Configure how and when you want to receive vulnerability notifications.'=>'Configurați cum și când doriți să primiți notificări privind vulnerabilitățile.','Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software.'=>'Fiți informat cu privire la vulnerabilitățile de securitate din instalarea dumneavoastră WordPress, plugin-uri, teme și software-ul serverului.','Cache Expiration Time'=>'Timp de expirare a cache-ului','FORCED'=>'FORȚAT','How long to cache vulnerability data before refreshing from the API.'=>'Cât timp să se păstreze în cache datele privind vulnerabilitățile înainte de reîmprospătare din API.','%d hour'=>'%d oră' . "\0" . '%d ore' . "\0" . '%d de ore','You can force the cache time via wp-config.php constant. Learn more →'=>'Puteți forța durata cache-ului prin intermediul constantei din wp-config.php. Aflați mai multe →','Notification Frequency'=>'Frecvența notificărilor','Choose how often you want to receive vulnerability notifications.'=>'Alegeți cât de des doriți să primiți notificări privind vulnerabilitățile.','Never - Disable automatic notifications'=>'Niciodată - Dezactivați notificările automate','Daily - Receive notifications every day'=>'Zilnic - Primiți notificări în fiecare zi','Weekly - Receive notifications once a week'=>'Săptămânal - Primiți notificări o dată pe săptămână','Day:'=>'Zi:','Monday'=>'Luni','Tuesday'=>'Marți','Wednesday'=>'Miercuri','Thursday'=>'Joi','Friday'=>'Vineri','Saturday'=>'Sâmbătă','Sunday'=>'Duminică','Time:'=>'Ora:','(24-hour format, server timezone)'=>'(Format 24 de ore, fusul orar al serverului)','Notification Channels'=>'Canale de notificare','Select where you want to receive notifications.'=>'Selectați unde doriți să primiți notificări.','Email'=>'E-mail','Email Addresses (separated by commas):'=>'Adrese de e-mail (separate prin virgule):','Default:'=>'Implicit:','Slack'=>'Slack','Slack Webhook URL:'=>'URL webhook Slack:','Learn how to create a Slack incoming webhook →'=>'Aflați cum să creați un webhook de intrare Slack →','Microsoft Teams'=>'Microsoft Teams','Teams Webhook URL:'=>'URL webhook Teams:','Learn how to create a Teams incoming webhook →'=>'Aflați cum să creați un webhook de intrare Teams →','Discord'=>'Discord','Discord Webhook URL:'=>'URL webhook Discord:','Learn how to create a Discord webhook →'=>'Aflați cum să creați un webhook Discord →','Telegram'=>'Telegram','Telegram Bot Token:'=>'Token bot Telegram:','Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','Telegram Chat ID:'=>'ID chat Telegram:','Learn how to create a Telegram bot and get Chat ID →'=>'Aflați cum să creați un bot Telegram și să obțineți ID-ul chat-ului →','Save Notification Settings'=>'Salvați setările de notificare','WordPress Components'=>'Componente WordPress','WordPress Core'=>'Nucleu WordPress','Plugins'=>'Plugin-uri','Themes'=>'Teme','Software & Languages'=>'Software și limbaje','PHP'=>'PHP','Web Servers'=>'Servere web','Apache HTTPD'=>'Apache HTTPD','nginx'=>'nginx','Databases'=>'Baze de date','MariaDB'=>'MariaDB','MySQL'=>'MySQL','SQLite'=>'SQLite','Additional Tools'=>'Instrumente suplimentare','ImageMagick'=>'ImageMagick','curl'=>'curl','memcached'=>'memcached','Redis'=>'Redis','Component Analysis Settings'=>'Setări de analiză a componentelor','Enable or disable vulnerability analysis for specific components.'=>'Activați sau dezactivați analiza vulnerabilităților pentru componente specifice.','Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red.'=>'Bifați componentele pe care doriți să le ASCUNDEȚI din scanările și rapoartele de vulnerabilitate. Componentele nebifate vor fi analizate activ. Componentele cu analiză activă sunt afișate în verde, iar cele ascunse în roșu.','Hidden (forced by constant)'=>'Ascuns (forțat prin constantă)','🔴 Analysis disabled'=>'🔴 Analiză dezactivată','🟢 Analysis active'=>'🟢 Analiză activă','Tip:'=>'Sfat:','You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →'=>'Puteți forța dezactivarea componentelor prin constantele din wp-config.php. Aflați mai multe despre dezactivarea forțată a verificărilor →','Save Analysis Settings'=>'Salvați setările de analiză','« Previous'=>'« Anterior','Next »'=>'Următor »','Log entry not found or has been removed.'=>'Intrarea din jurnal nu a fost găsită sau a fost eliminată.','Unable to load the requested log entry.'=>'Imposibil de încărcat intrarea solicitată din jurnal.','Log Configuration'=>'Configurare jurnal','Total Logs'=>'Total jurnale','Retention Period'=>'Perioadă de retenție','Disabled'=>'Dezactivat','%d day'=>'%d zi' . "\0" . '%d zile' . "\0" . '%d de zile','Log Retention Period'=>'Perioadă de retenție a jurnalelor','None (Disabled)'=>'Niciuna (Dezactivat)','This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant.'=>'Această valoare este impusă de constanta WPVULNERABILITY_LOG_RETENTION_DAYS.','Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted.'=>'Alegeți cât timp WPVulnerability să păstreze jurnalele de răspuns API. Jurnalele mai vechi sunt șterse automat.','Save Configuration'=>'Salvați configurația','Log retention is currently disabled.'=>'Retenția jurnalelor este dezactivată în prezent.','API responses are not being saved.'=>'Răspunsurile API nu sunt salvate.','Log Details'=>'Detalii jurnal','Date'=>'Dată','API Endpoint'=>'Endpoint API','API Response'=>'Răspuns API','Back to Logs'=>'Înapoi la jurnale','No logs available'=>'Nu există jurnale disponibile','API response logs will appear here once the vulnerability scanner runs.'=>'Jurnalele de răspuns API vor apărea aici după ce scanerul de vulnerabilități rulează.','API Response Logs'=>'Jurnale de răspuns API','Show:'=>'Afișare:','Apply'=>'Aplicați','Showing %1$s–%2$s of %3$s'=>'Afișare %1$s–%2$s din %3$s','Actions'=>'Acțiuni','View'=>'Vizualizare','Danger Zone'=>'Zonă periculoasă','Permanently delete all API response logs. This action cannot be undone.'=>'Ștergeți definitiv toate jurnalele de răspuns API. Această acțiune nu poate fi anulată.','Are you sure you want to delete all logs? This action cannot be undone.'=>'Sigur doriți să ștergeți toate jurnalele? Această acțiune nu poate fi anulată.','Delete All Logs'=>'Ștergeți toate jurnalele','Reload Data from API'=>'Reîncărcați datele din API','Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information.'=>'Reîncărcați toate informațiile despre Nucleu, Plugin-uri, Teme și alte componente direct din API pentru a obține date actualizate. Aceasta va șterge cache-ul și va prelua informații proaspete despre vulnerabilități.','Reload Data'=>'Reîncărcați datele','Test Email Notifications'=>'Testați notificările prin e-mail','Send a test email notification with current vulnerability data to verify your email configuration is working correctly.'=>'Trimiteți o notificare de test prin e-mail cu datele actuale despre vulnerabilități pentru a verifica că configurația de e-mail funcționează corect.','From address (configured via constant):'=>'Adresă expeditor (configurată prin constantă):','From address (default):'=>'Adresă expeditor (implicită):','Learn how to customize the email sender address →'=>'Aflați cum să personalizați adresa expeditorului de e-mail →','Send Test Email'=>'Trimiteți e-mail de test','WP-Cron Status'=>'Status WP-Cron','View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly.'=>'Vizualizați și gestionați evenimentele programate WP-Cron. Comparați programările așteptate cu sarcinile cron efective pentru a vă asigura că sarcinile automate rulează corect.','No cron data available.'=>'Nu există date cron disponibile.','Hook'=>'Hook','Expected'=>'Așteptat','Found'=>'Găsit','Next Run'=>'Următoarea rulare','Status'=>'Status','Not expected'=>'Neașteptat','None'=>'Niciunul','OK'=>'OK','⚠️ Unexpected WPVulnerability Events'=>'⚠️ Evenimente neașteptate WPVulnerability','No interval'=>'Fără interval','Next:'=>'Următor:','Repair Cron Events'=>'Reparați evenimentele cron','Uninstall Data'=>'Date de dezinstalare','By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall.'=>'În mod implicit, toate datele plugin-ului sunt păstrate atunci când WPVulnerability este șters. Activați opțiunea de mai jos numai dacă doriți ca toate opțiunile, jurnalele și datele din cache să fie eliminate definitiv la dezinstalare.','Delete all plugin data on uninstall'=>'Ștergeți toate datele plugin-ului la dezinstalare','Default: unchecked (data preserved). Check only if you want a clean removal.'=>'Implicit: nebifat (datele sunt păstrate). Bifați numai dacă doriți o eliminare curată.','Save preference'=>'Salvați preferința','Reset WPVulnerability'=>'Resetați WPVulnerability','Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API.'=>'Ștergeți toate setările WPVulnerability, datele din cache, jurnalele și evenimentele programate, apoi restaurați valorile implicite și reîncărcați datele din API.','This action cannot be undone.'=>'Această acțiune nu poate fi anulată.','Are you sure you want to reset all WPVulnerability data? This action cannot be undone.'=>'Sigur doriți să resetați toate datele WPVulnerability? Această acțiune nu poate fi anulată.','Reset Plugin'=>'Resetați plugin-ul','Vulnerability Database Statistics'=>'Statistici bază de date de vulnerabilități','%s vulnerability'=>'%s vulnerabilitate' . "\0" . '%s vulnerabilități' . "\0" . '%s de vulnerabilități','(%s product)'=>'(%s produs)' . "\0" . '(%s produse)' . "\0" . '(%s de produse)','No data'=>'Fără date','Database last updated: %s'=>'Ultima actualizare a bazei de date: %s','Intelligence Sources'=>'Surse de informații','Number of vulnerabilities contributed by each intelligence source.'=>'Numărul de vulnerabilități contribuite de fiecare sursă de informații.','Source'=>'Sursă','Core'=>'Nucleu','Sponsors'=>'Sponsori','No sponsor data available.'=>'Nu există date despre sponsori disponibile.','Contributors'=>'Contribuitori','No contributor data available.'=>'Nu există date despre contribuitori disponibile.','You do not have sufficient permissions to access this page.'=>'Nu aveți permisiuni suficiente pentru a accesa această pagină.','WPVulnerability settings'=>'Setări WPVulnerability','Configure and save these settings to receive notifications.'=>'Configurați și salvați aceste setări pentru a primi notificări.','Configure and save these settings to hide vulnerabilities.'=>'Configurați și salvați aceste setări pentru a ascunde vulnerabilitățile.','Default administrator email'=>'E-mail implicit al administratorului','Read more if you want to force the cache time.'=>'Citiți mai mult dacă doriți să forțați durata cache-ului.','Never'=>'Niciodată','Daily'=>'Zilnic','Weekly'=>'Săptămânal','Day'=>'Zi','Hour'=>'Oră','Minute'=>'Minut','Read more about how to force the deactivation of an item.'=>'Citiți mai mult despre cum să forțați dezactivarea unui element.','Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com'=>'URL webhook Slack invalid. Trebuie să fie un URL HTTPS valid de la hooks.slack.com','Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com'=>'URL webhook Microsoft Teams invalid. Trebuie să fie un URL HTTPS valid de la office.com, office365.com sau api.hooks.microsoft.com','Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com'=>'URL webhook Discord invalid. Trebuie să fie un URL HTTPS valid de la discord.com sau discordapp.com','Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Format token bot Telegram invalid. Trebuie să fie de forma: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','All Clear'=>'Totul în regulă','%d Critical Issue Found'=>'%d problemă critică găsită' . "\0" . '%d probleme critice găsite' . "\0" . '%d de probleme critice găsite','%d Issue Found'=>'%d problemă găsită' . "\0" . '%d probleme găsite' . "\0" . '%d de probleme găsite','Never checked'=>'Niciodată verificat','%d minute ago'=>'acum %d minut' . "\0" . 'acum %d minute' . "\0" . 'acum %d de minute','%d hour ago'=>'acum %d oră' . "\0" . 'acum %d ore' . "\0" . 'acum %d de ore','Last checked: %s'=>'Ultima verificare: %s','Refresh Now'=>'Reîmprospătați acum','No vulnerabilities detected'=>'Nu au fost detectate vulnerabilități','Your site is up to date and secure'=>'Site-ul dumneavoastră este actualizat și securizat','Server Software'=>'Software server','Site Health'=>'Sănătate site','Settings'=>'Setări','WPVulnerability Status'=>'Status WPVulnerability','Receive vulnerability notifications'=>'Primiți notificări privind vulnerabilitățile','Cache expiration time'=>'Timp de expirare a cache-ului','How often you want to receive notifications'=>'Cât de des doriți să primiți notificări','Where do you want to receive notifications?'=>'Unde doriți să primiți notificări?','Email addresses to notify (separated by commas)'=>'Adrese de e-mail de notificat (separate prin virgule)','Slack webhook URL'=>'URL webhook Slack','Teams webhook URL'=>'URL webhook Teams','Vulnerabilities to hide'=>'Vulnerabilități de ascuns','What do you want to hide?'=>'Ce doriți să ascundeți?','Standard (Hybrid Detection)'=>'Standard (Detecție hibridă)','Strict (Extensions Only)'=>'Strict (Numai extensii)','Disabled (No Detection)'=>'Dezactivat (Fără detecție)','Security Status'=>'Status securitate','Security Mode'=>'Mod de securitate','Shell Execution'=>'Execuție shell','Enabled'=>'Activat','Audit Logging'=>'Jurnalizare audit','Enabled (%d days)'=>'Activat (%d zile)','Total Log Entries'=>'Total intrări jurnal','Last Shell Execution'=>'Ultima execuție shell','%s ago'=>'acum %s','Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.'=>'Configurați setările de securitate prin constantele din wp-config.php: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.','See security configuration documentation for details.'=>'Consultați documentația de configurare a securității pentru detalii.','Memcached'=>'Memcached','Imagick Extension'=>'Extensie Imagick','Redis Extension'=>'Extensie Redis','Memcached Extension'=>'Extensie Memcached','Memcache Extension'=>'Extensie Memcache','SQLite3 Extension'=>'Extensie SQLite3','PDO SQLite'=>'PDO SQLite','Shell Command'=>'Comandă shell','Binary Check'=>'Verificare binar','Not Detected'=>'Nedetectat','Software Detection Methods'=>'Metode de detecție a software-ului','Shows which detection method was used for each software component and the reliability score.'=>'Afișează metoda de detecție utilizată pentru fiecare componentă software și scorul de fiabilitate.','Component'=>'Componentă','Version'=>'Versiune','Detection Method'=>'Metodă de detecție','Reliability'=>'Fiabilitate','Not detected'=>'Nedetectat','Shell Execution Audit Logs'=>'Jurnale audit execuție shell','Complete audit trail of shell command executions for security monitoring.'=>'Traseu de audit complet al execuțiilor comenzilor shell pentru monitorizarea securității.','No shell execution logs found.'=>'Nu au fost găsite jurnale de execuție shell.','Logs will appear here when shell commands are executed for software detection.'=>'Jurnalele vor apărea aici când comenzile shell sunt executate pentru detecția software-ului.','Time'=>'Timp','Command'=>'Comandă','User'=>'Utilizator','Output'=>'Ieșire','Showing the %d most recent log entries.'=>'Se afișează cele mai recente %d intrări din jurnal.','Invalid nonce.'=>'Nonce invalid.','Insufficient permissions.'=>'Permisiuni insuficiente.','No component specified.'=>'Nicio componentă specificată.','Debug Information'=>'Informații de depanare','This tab is only visible when WP_DEBUG is enabled. Use with caution.'=>'Această filă este vizibilă numai când WP_DEBUG este activat. Utilizați cu precauție.','System Information'=>'Informații sistem','WordPress Version'=>'Versiune WordPress','Multisite'=>'Multisite','Yes'=>'Da','No'=>'Nu','Language'=>'Limbă','PHP Version'=>'Versiune PHP','PHP Extensions'=>'Extensii PHP','PHP Memory Limit'=>'Limită memorie PHP','Database'=>'Bază de date','Web Server'=>'Server web','WP_DEBUG'=>'WP_DEBUG','WP_DEBUG_LOG'=>'WP_DEBUG_LOG','Path:'=>'Cale:','Size: %s'=>'Dimensiune: %s','View Log File'=>'Vizualizați fișierul jurnal','Log file is not web-accessible (outside wp-content)'=>'Fișierul jurnal nu este accesibil web (în afara wp-content)','Log file does not exist yet'=>'Fișierul jurnal nu există încă','Plugin Version'=>'Versiune plugin','Component Detection'=>'Detecție componentă','Version Detected'=>'Versiune detectată','Analyzed'=>'Analizat','Cache Status'=>'Status cache','Configuration Summary'=>'Rezumat configurație','Cache Duration'=>'Durată cache','Log Retention'=>'Retenție jurnale','Components Analyzed'=>'Componente analizate','Notification Email'=>'E-mail de notificare','Slack Webhook'=>'Webhook Slack','Configured & Enabled'=>'Configurat și activat','Configured (Disabled)'=>'Configurat (Dezactivat)','Not configured'=>'Neconfigurat','Teams Webhook'=>'Webhook Teams','Discord Webhook'=>'Webhook Discord','Telegram Bot'=>'Bot Telegram','Cron Status'=>'Status cron','Update Database'=>'Actualizați baza de date','Next run: %s'=>'Următoarea rulare: %s','Not scheduled'=>'Neprogramat','Send Notification'=>'Trimiteți notificarea','Run Update Now'=>'Rulați actualizarea acum','Run Notification Now'=>'Trimiteți notificarea acum','You do not have permission to run these actions.'=>'Nu aveți permisiunea de a rula aceste acțiuni.','API Testing'=>'Testare API','Test API connectivity for each component. Click a button to send a test request.'=>'Testați conectivitatea API pentru fiecare componentă. Faceți clic pe un buton pentru a trimite o cerere de test.','Test %s'=>'Testați %s','Testing...'=>'Se testează...','HTTP Code:'=>'Cod HTTP:','Response Time:'=>'Timp de răspuns:','Response Preview'=>'Previzualizare răspuns','Test'=>'Test','Error:'=>'Eroare:','AJAX request failed.'=>'Cererea AJAX a eșuat.','You do not have permission to test API connectivity.'=>'Nu aveți permisiunea de a testa conectivitatea API.','Database Options Viewer'=>'Vizualizator opțiuni bază de date','View the raw data stored in WordPress options.'=>'Vizualizați datele brute stocate în opțiunile WordPress.','Select an option...'=>'Selectați o opțiune...','Option not found or empty.'=>'Opțiunea nu a fost găsită sau este goală.','Quick Actions'=>'Acțiuni rapide','Perform debugging actions. Use with caution.'=>'Efectuați acțiuni de depanare. Utilizați cu precauție.','Are you sure you want to clear all caches?'=>'Sigur doriți să ștergeți toate cache-urile?','Clear All Caches'=>'Ștergeți toate cache-urile','Are you sure you want to reset signatures?'=>'Sigur doriți să resetați semnăturile?','Reset Signatures'=>'Resetați semnăturile','Export Debug Info'=>'Exportați informații de depanare','You do not have permission to perform these actions.'=>'Nu aveți permisiunea de a efectua aceste acțiuni.','Settings saved.'=>'Setările au fost salvate.','WPVulnerability cron events have been repaired across the network.'=>'Evenimentele cron ale WPVulnerability au fost reparate în întreaga rețea.','You do not have permission to access this page.'=>'Nu aveți permisiunea de a accesa această pagină.','WordPress %1$s has a known vulnerability that may be affecting your installed version.'=>'WordPress %1$s are o vulnerabilitate cunoscută care poate afecta versiunea dumneavoastră instalată.','Actively exploited'=>'Exploatată activ','Public exploit'=>'Exploit public','Automatable'=>'Automatizabil','References:'=>'Referințe:','Invalid component specified.'=>'Componentă specificată invalidă.','Version not detected for this component.'=>'Versiunea nu a fost detectată pentru această componentă.','API request successful.'=>'Cererea API a fost efectuată cu succes.','API returned HTTP code %d.'=>'API a returnat codul HTTP %d.','WPVulnerability Logs'=>'Jurnale WPVulnerability','WPVulnerability Log'=>'Jurnal WPVulnerability','Low'=>'Scăzut','Medium'=>'Mediu','High'=>'Ridicat','Critical'=>'Critic','WPVulnerability Shell Logs'=>'Jurnale shell WPVulnerability','WPVulnerability Shell Log'=>'Jurnal shell WPVulnerability','Every week'=>'În fiecare săptămână','Every day'=>'În fiecare zi','Invalid request.'=>'Cerere invalidă.','You have unsubscribed from WPVulnerability notifications.'=>'V-ați dezabonat de la notificările WPVulnerability.','Learn more about the WordPress Vulnerability Database API at %2$s'=>'Aflați mai multe despre API-ul bazei de date de vulnerabilități WordPress la %2$s','Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings.'=>'Doriți să nu mai primiți aceste alerte? Dezabonați-vă sau schimbați frecvența e-mailurilor la Niciodată în setările WPVulnerability.','No vulnerabilities found'=>'Nu au fost găsite vulnerabilități','This is likely a test. The site does not have vulnerabilities.'=>'Acesta este probabil un test. Site-ul nu are vulnerabilități.','Core vulnerabilities'=>'Vulnerabilități nucleu','Plugins vulnerabilities'=>'Vulnerabilități plugin-uri','Themes vulnerabilities'=>'Vulnerabilități teme','PHP vulnerabilities'=>'Vulnerabilități PHP','Apache HTTPD vulnerabilities'=>'Vulnerabilități Apache HTTPD','Nginx vulnerabilities'=>'Vulnerabilități Nginx','MariaDB vulnerabilities'=>'Vulnerabilități MariaDB','MySQL vulnerabilities'=>'Vulnerabilități MySQL','ImageMagick vulnerabilities'=>'Vulnerabilități ImageMagick','curl vulnerabilities'=>'Vulnerabilități curl','memcached vulnerabilities'=>'Vulnerabilități memcached','Redis vulnerabilities'=>'Vulnerabilități Redis','SQLite vulnerabilities'=>'Vulnerabilități SQLite','Vulnerability found: %s'=>'Vulnerabilitate găsită: %s','Vulnerability found'=>'Vulnerabilitate găsită','%1$s has a known vulnerability that may be affecting your installed version.'=>'%1$s are o vulnerabilitate cunoscută care poate afecta versiunea dumneavoastră instalată.','This plugin is closed. Please replace it with another.'=>'Acest plugin este închis. Înlocuiți-l cu altul.','This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates.'=>'Această vulnerabilitate pare să nu fie remediată. Fiți atent la actualizările viitoare ale plugin-ului.','It hasn\'t been updated in over a year.'=>'Nu a fost actualizat de mai mult de un an.','It may no longer be available (closed?).'=>'Este posibil să nu mai fie disponibil (închis?).','Last updated on'=>'Ultima actualizare la','Vulnerabilities (%d)'=>'Vulnerabilități (%d)','%s running'=>'%s rulează','End of Life'=>'Sfârșit de viață','End of life:'=>'Sfârșit de viață:','Supported'=>'Suportat','Plugin'=>'Plugin','Theme'=>'Temă','End of life: %s'=>'Sfârșit de viață: %s','EOL'=>'EOL','Network Settings'=>'Setări rețea','Vulnerabilities'=>'Vulnerabilități','Every 6 hours'=>'La fiecare 6 ore','Database updates'=>'Actualizări bază de date','Log cleanup'=>'Curățare jurnale','Notifications are scheduled, but settings currently disable them. Please review the notifications tab.'=>'Notificările sunt programate, dar setările le dezactivează în prezent. Consultați fila de notificări.','This event should not be scheduled for this site.'=>'Acest eveniment nu ar trebui programat pentru acest site.','Not expected for this site.'=>'Neașteptat pentru acest site.','No instances found.'=>'Nu au fost găsite instanțe.','Scheduled with an unexpected interval.'=>'Programat cu un interval neașteptat.','Multiple instances detected.'=>'Au fost detectate instanțe multiple.','Scheduled as expected.'=>'Programat conform așteptărilor.','There aren\'t plugins vulnerabilities'=>'Nu există vulnerabilități ale plugin-urilor','Shows possible vulnerabilities that exist in installed plugins.'=>'Afișează posibilele vulnerabilități existente în plugin-urile instalate.','There is %d plugin with vulnerabilities'=>'Există %d plugin cu vulnerabilități' . "\0" . 'Există %d plugin-uri cu vulnerabilități' . "\0" . 'Există %d de plugin-uri cu vulnerabilități','We\'ve detected potential vulnerabilities in installed plugins. Please check them and keep them updated.'=>'Am detectat vulnerabilități potențiale în plugin-urile instalate. Verificați-le și mențineți-le actualizate.','Update plugins'=>'Actualizați plugin-urile','There aren\'t themes vulnerabilities'=>'Nu există vulnerabilități ale temelor','Shows possible vulnerabilities that exist in installed themes.'=>'Afișează posibilele vulnerabilități existente în temele instalate.','There is %d theme with vulnerabilities'=>'Există %d temă cu vulnerabilități' . "\0" . 'Există %d teme cu vulnerabilități' . "\0" . 'Există %d de teme cu vulnerabilități','We\'ve detected potential vulnerabilities in installed themes. Please check them and keep them updated.'=>'Am detectat vulnerabilități potențiale în temele instalate. Verificați-le și mențineți-le actualizate.','Update themes'=>'Actualizați temele','There aren\'t WordPress vulnerabilities'=>'Nu există vulnerabilități WordPress','Shows possible vulnerabilities existing in the WordPress core.'=>'Afișează posibilele vulnerabilități existente în nucleul WordPress.','There is %d core vulnerability'=>'Există %d vulnerabilitate de nucleu' . "\0" . 'Există %d vulnerabilități de nucleu' . "\0" . 'Există %d de vulnerabilități de nucleu','We\'ve detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated.'=>'Am detectat vulnerabilități potențiale în această instalare WordPress. Verificați-le și mențineți instalarea actualizată.','Update WordPress'=>'Actualizați WordPress','Nginx'=>'Nginx','Invalid software type'=>'Tip de software invalid','Error'=>'Eroare','The specified software type is not valid.'=>'Tipul de software specificat nu este valid.','There aren\'t %s vulnerabilities'=>'Nu există vulnerabilități %s','Shows possible vulnerabilities existing in %s.'=>'Afișează posibilele vulnerabilități existente în %s.','There is %1$d %2$s vulnerability'=>'Există %1$d vulnerabilitate %2$s' . "\0" . 'Există %1$d vulnerabilități %2$s' . "\0" . 'Există %1$d de vulnerabilități %2$s','We\'ve detected potential vulnerabilities in %s. Please check them and keep your installation updated.'=>'Am detectat vulnerabilități potențiale în %s. Verificați-le și mențineți instalarea actualizată.','How to update PHP'=>'Cum să actualizați PHP','WPVulnerability Core'=>'WPVulnerability Core','WPVulnerability Themes'=>'WPVulnerability Themes','WPVulnerability Plugins'=>'WPVulnerability Plugins','WPVulnerability PHP'=>'WPVulnerability PHP','WPVulnerability Apache HTTPD'=>'WPVulnerability Apache HTTPD','WPVulnerability Nginx'=>'WPVulnerability Nginx','WPVulnerability MariaDB'=>'WPVulnerability MariaDB','WPVulnerability MySQL'=>'WPVulnerability MySQL','WPVulnerability ImageMagick'=>'WPVulnerability ImageMagick','WPVulnerability curl'=>'WPVulnerability curl','WPVulnerability memcached'=>'WPVulnerability memcached','WPVulnerability redis'=>'WPVulnerability redis','WPVulnerability sqlite'=>'WPVulnerability sqlite','This theme is closed. Please replace it with another.'=>'Această temă este închisă. Înlocuiți-o cu alta.','This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates.'=>'Această vulnerabilitate pare să nu fie remediată. Fiți atent la actualizările viitoare ale temei.','This theme has known vulnerabilities that may be affecting your installed version.'=>'Această temă are vulnerabilități cunoscute care pot afecta versiunea dumneavoastră instalată.']]; \ No newline at end of file diff --git a/languages/wpvulnerability-ro.mo b/languages/wpvulnerability-ro.mo new file mode 100644 index 0000000000000000000000000000000000000000..d42e8cb15879c6316e4de52bef1767112d3cbf35 GIT binary patch literal 40486 zcmc(o37lM2mH(eC0%6~g#XKSjiKLq(kbn(INV+?up|gBOMMVd31r^c%kU?A+8O3q?Gx|sIKcl!0=#0qxzrSKJ@=e*?|u1~19o{=!0(}#1i_KuUi$>WIXeZx^G7H&2+o}z1pVN7;2iL7@a5q5 zK#~T}f%}2G&Ip3Tz(YXgb3FJ`upgWP4uG!!Ujr)r<>2Aqjo{JXy>m-{r%f z0r$p#=y9&T(?R7k*W)7ae*9;G>ffDb2f@MM0ie>&^#1wa*OU%aza88W1WUlppxW^u zsP;Vu_JQ98_W-AMy7tTh55(W=@jOuFjDcO?72ql0L!jF6pWvO~(&ODY{0vn3{{U65 zedh$hF5r=%#_4EK{j~tx6I=|cf6fGt1<&%~9C{@?;o?+1Gbe-MNugO|*A<#m8IuAtsO(}$0O8n8T)zb#3Vsh%fByzN0DKPAxb4BDIuJY%R6UOcmF^^ui$L{5FR1iGpvJEVsvoML z+If`^zXjBI-T|sTUj;=+-v!k_PkH|@LFMx&k1v4AZ}2axEWOa zKMd{ze#ZMB_V_rc_n!pS-v0pAj@=fzem)931pgdR;irRE9(W}FaZvBQ8yo>Y2rdQp zT;%#;C3ragvp|hY5!C#sfg0yGfU4K!pvK{PQ0>19RDawHs-OQJoDDt-o(?_>D!+w` z-TOVD;s-$W=bJ$F`&B;v{h;dk2@ui=z68R0gFk}ePcu$)<(vVk-&TWa?`uKTXQRi< zJzneaR#5bQH~1;=i=gPU#G;{ozYJ8nt_79f9p3+0Q0;!i`@ah+pP&2iKZ9!D6gpG= zzdtB?mVK7we-AhV|0h7b_s^jE;m4rT{R*sre*x9srEbSx zF9%iLr$D9K0&W7I@c#ZDm)`}T;v-P`HoX4|Q1!VH)cD;Cif%pwYJNQqs{j84GL*rw zz3@_S1eE`7@B;8@Q2oDjnJaH4xGVm1K$UkPsP=CFRo^#&>c{IqmH#2|rQlaUwg0Q2 z>hZV_e+I1L{{yJ`GXinF6nrBnesLwJ{I3I5-Uqz@lc37m0$RU<8t)&2>c?k%e6ZZj z#{aQQ)t=f3Gv$`gQ@R{=XJv2?-tpmCr8y@Gh_q zoDbd(@@nvHZ~#1Ng^Rx!+#UZGa2N0~Q1$<|_kZ8}p9Ix^KLw|N&w}b7Eds{^yMvk^ zb3l#PVo-GUYEbiO1Go=(DY!RyHK_7#0hQ1DK&87IoC)6V<9`Aw{nOyp;2*$F@Qrke z^1l}p{X7JUe|!f#8vG@waowB2Q~1%~KH#fB@xkSw-ituhcQdH;@Al#MfO_xCp!mS| zJpKw)x}6yu#UBca9*ze^zkQ&_JMZyzAX7EC0X!c3E~s*MWpGXg4+r)B0H|`tK+)M1 zpz^sL)cAZF+zWgVydC@+7=a@U<|z10a0EPYkU0h325OuRU+d=MbZ`&+b3x6QQ@~e( zOF@-C1|A2#6+9dKG^lz`!J~eg3hobff;)q!ftQ0l;GN)CLA9@Nj?3p3Q2GA@coO(q z@I-Ltxi0)da4!CHxJJNr{TXI z6kUA=RQ*2>s@?wxz6|_6DEj_AC_4KScnEm(t6ln&!JA)#+yxpx;}1mzOD}Zu@^


l|OZ+T#o0+X%n- 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\n" +"Language: ro\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < 20)) ? 1 : 2);\n" +"X-Generator: AI Translation\n" +"X-Domain: wpvulnerability\n" + +#. Plugin Name of the plugin +#: wpvulnerability.php +#: wpvulnerability-admin.php:1782 +#: wpvulnerability-admin.php:1783 +#: wpvulnerability-adminms.php:1945 +#: wpvulnerability-adminms.php:1946 +#: wpvulnerability-notifications.php:105 +msgid "WPVulnerability" +msgstr "" + +#. Plugin URI of the plugin +#: wpvulnerability.php +msgid "https://www.wpvulnerability.com/plugin/" +msgstr "" + +#. Description of the plugin +#: wpvulnerability.php +msgid "Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API." +msgstr "" + +#. Author of the plugin +#: wpvulnerability.php +msgid "ROBOTSTXT" +msgstr "" + +#. Author URI of the plugin +#: wpvulnerability.php +msgid "https://www.robotstxt.es/" +msgstr "" + +#: class-wpvulnerability-cli.php:35 +#: class-wpvulnerability-config-cli.php:32 +msgid "This command requires a WordPress administrator. Run with --user=." +msgstr "Această comandă necesită un administrator WordPress. Rulați cu --user=." + +#: class-wpvulnerability-cli.php:156 +msgid "No core vulnerabilities found." +msgstr "Nu au fost găsite vulnerabilități în nucleu." + +#: class-wpvulnerability-cli.php:275 +msgid "No plugin vulnerabilities found." +msgstr "Nu au fost găsite vulnerabilități în plugin-uri." + +#: class-wpvulnerability-cli.php:393 +msgid "No theme vulnerabilities found." +msgstr "Nu au fost găsite vulnerabilități în teme." + +#. translators: %s is the software name (php, apache, nginx, etc.) +#: class-wpvulnerability-cli.php:490 +#, php-format +msgid "No %s vulnerabilities found." +msgstr "Nu au fost găsite vulnerabilități pentru %s." + +#: wpvulnerability-admin.php:63 +#: wpvulnerability-adminms.php:227 +msgid "Data from source has been reloaded." +msgstr "Datele din sursă au fost reîncărcate." + +#: wpvulnerability-admin.php:65 +#: wpvulnerability-adminms.php:229 +msgid "You do not have permission to reload data." +msgstr "Nu aveți permisiunea de a reîncărca datele." + +#: wpvulnerability-admin.php:93 +#: wpvulnerability-adminms.php:255 +msgid "Test email has been sent." +msgstr "E-mailul de test a fost trimis." + +#: wpvulnerability-admin.php:95 +#: wpvulnerability-adminms.php:259 +msgid "Test email has failed. Please, check your email settings." +msgstr "Trimiterea e-mailului de test a eșuat. Verificați setările de e-mail." + +#: wpvulnerability-admin.php:98 +#: wpvulnerability-adminms.php:263 +msgid "You do not have permission to send test emails." +msgstr "Nu aveți permisiunea de a trimite e-mailuri de test." + +#: wpvulnerability-admin.php:113 +msgid "WPVulnerability cron events have been repaired." +msgstr "Evenimentele cron ale WPVulnerability au fost reparate." + +#: wpvulnerability-admin.php:115 +#: wpvulnerability-adminms.php:279 +msgid "You do not have permission to repair cron events." +msgstr "Nu aveți permisiunea de a repara evenimentele cron." + +#: wpvulnerability-admin.php:127 +#: wpvulnerability-adminms.php:291 +msgid "All logs have been deleted." +msgstr "Toate jurnalele au fost șterse." + +#: wpvulnerability-admin.php:129 +#: wpvulnerability-adminms.php:293 +msgid "You do not have permission to delete logs." +msgstr "Nu aveți permisiunea de a șterge jurnalele." + +#: wpvulnerability-admin.php:146 +msgid "Uninstall preference saved." +msgstr "Preferința de dezinstalare a fost salvată." + +#: wpvulnerability-admin.php:153 +#: wpvulnerability-adminms.php:316 +msgid "WPVulnerability has been reset to defaults and reloaded." +msgstr "WPVulnerability a fost resetat la valorile implicite și reîncărcat." + +#: wpvulnerability-admin.php:155 +#: wpvulnerability-adminms.php:318 +msgid "You do not have permission to reset WPVulnerability." +msgstr "Nu aveți permisiunea de a reseta WPVulnerability." + +#: wpvulnerability-admin.php:170 +#: wpvulnerability-adminms.php:333 +msgid "All caches have been cleared." +msgstr "Toate cache-urile au fost șterse." + +#: wpvulnerability-admin.php:172 +#: wpvulnerability-adminms.php:335 +msgid "You do not have permission to clear caches." +msgstr "Nu aveți permisiunea de a șterge cache-urile." + +#: wpvulnerability-admin.php:187 +#: wpvulnerability-adminms.php:350 +msgid "Plugin and theme signatures have been reset." +msgstr "Semnăturile plugin-urilor și temelor au fost resetate." + +#: wpvulnerability-admin.php:189 +#: wpvulnerability-adminms.php:352 +msgid "You do not have permission to reset signatures." +msgstr "Nu aveți permisiunea de a reseta semnăturile." + +#: wpvulnerability-admin.php:212 +#: wpvulnerability-adminms.php:375 +msgid "You do not have permission to export debug information." +msgstr "Nu aveți permisiunea de a exporta informații de depanare." + +#: wpvulnerability-admin.php:224 +#: wpvulnerability-adminms.php:387 +msgid "Database update has been executed." +msgstr "Actualizarea bazei de date a fost executată." + +#: wpvulnerability-admin.php:226 +#: wpvulnerability-adminms.php:389 +msgid "You do not have permission to run database updates." +msgstr "Nu aveți permisiunea de a rula actualizări ale bazei de date." + +#: wpvulnerability-admin.php:247 +#: wpvulnerability-adminms.php:410 +msgid "Notification has been sent." +msgstr "Notificarea a fost trimisă." + +#: wpvulnerability-admin.php:249 +#: wpvulnerability-adminms.php:412 +msgid "Notification sending failed." +msgstr "Trimiterea notificării a eșuat." + +#: wpvulnerability-admin.php:252 +#: wpvulnerability-adminms.php:415 +msgid "You do not have permission to send notifications." +msgstr "Nu aveți permisiunea de a trimite notificări." + +#: wpvulnerability-admin.php:266 +#: wpvulnerability-adminms.php:539 +#: wpvulnerability-schedule.php:323 +msgid "Notifications" +msgstr "Notificări" + +#: wpvulnerability-admin.php:269 +#: wpvulnerability-adminms.php:542 +msgid "Analysis" +msgstr "Analiză" + +#: wpvulnerability-admin.php:272 +#: wpvulnerability-adminms.php:545 +msgid "Logs" +msgstr "Jurnale" + +#: wpvulnerability-admin.php:275 +#: wpvulnerability-adminms.php:548 +#: wpvulnerability-sitehealth.php:25 +#: wpvulnerability-sitehealth.php:77 +#: wpvulnerability-sitehealth.php:129 +#: wpvulnerability-sitehealth.php:210 +msgid "Security" +msgstr "Securitate" + +#: wpvulnerability-admin.php:278 +#: wpvulnerability-adminms.php:551 +msgid "Tools" +msgstr "Instrumente" + +#: wpvulnerability-admin.php:285 +#: wpvulnerability-adminms.php:558 +msgid "Debug" +msgstr "Depanare" + +#: wpvulnerability-admin.php:290 +#: wpvulnerability-adminms.php:563 +msgid "About" +msgstr "Despre" + +#: wpvulnerability-admin.php:427 +#: wpvulnerability-adminms.php:700 +msgid "Notification Settings" +msgstr "Setări de notificare" + +#: wpvulnerability-admin.php:430 +#: wpvulnerability-adminms.php:703 +msgid "Configure how and when you want to receive vulnerability notifications." +msgstr "Configurați cum și când doriți să primiți notificări privind vulnerabilitățile." + +#: wpvulnerability-admin.php:431 +#: wpvulnerability-adminms.php:704 +msgid "Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software." +msgstr "Fiți informat cu privire la vulnerabilitățile de securitate din instalarea dumneavoastră WordPress, plugin-uri, teme și software-ul serverului." + +#: wpvulnerability-admin.php:438 +#: wpvulnerability-adminms.php:711 +msgid "Cache Expiration Time" +msgstr "Timp de expirare a cache-ului" + +#: wpvulnerability-admin.php:440 +#: wpvulnerability-admin.php:814 +#: wpvulnerability-adminms.php:713 +#: wpvulnerability-adminms.php:1087 +msgid "FORCED" +msgstr "FORȚAT" + +#: wpvulnerability-admin.php:444 +#: wpvulnerability-adminms.php:717 +msgid "How long to cache vulnerability data before refreshing from the API." +msgstr "Cât timp să se păstreze în cache datele privind vulnerabilitățile înainte de reîmprospătare din API." + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:453 +#: wpvulnerability-admin.php:1891 +#: wpvulnerability-admin.php:3631 +#: wpvulnerability-adminms.php:726 +#: wpvulnerability-adminms.php:2039 +#: wpvulnerability-adminms.php:3825 +#, php-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d oră" +msgstr[1] "%d ore" +msgstr[2] "%d de ore" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:469 +#: wpvulnerability-adminms.php:742 +#, php-format +msgid "You can force the cache time via wp-config.php constant. Learn more →" +msgstr "Puteți forța durata cache-ului prin intermediul constantei din wp-config.php. Aflați mai multe →" + +#: wpvulnerability-admin.php:481 +#: wpvulnerability-admin.php:3665 +#: wpvulnerability-adminms.php:754 +#: wpvulnerability-adminms.php:3859 +msgid "Notification Frequency" +msgstr "Frecvența notificărilor" + +#: wpvulnerability-admin.php:484 +#: wpvulnerability-adminms.php:757 +msgid "Choose how often you want to receive vulnerability notifications." +msgstr "Alegeți cât de des doriți să primiți notificări privind vulnerabilitățile." + +#: wpvulnerability-admin.php:489 +#: wpvulnerability-adminms.php:762 +msgid "Never - Disable automatic notifications" +msgstr "Niciodată - Dezactivați notificările automate" + +#: wpvulnerability-admin.php:493 +#: wpvulnerability-adminms.php:766 +msgid "Daily - Receive notifications every day" +msgstr "Zilnic - Primiți notificări în fiecare zi" + +#: wpvulnerability-admin.php:497 +#: wpvulnerability-adminms.php:770 +msgid "Weekly - Receive notifications once a week" +msgstr "Săptămânal - Primiți notificări o dată pe săptămână" + +#: wpvulnerability-admin.php:503 +#: wpvulnerability-adminms.php:776 +msgid "Day:" +msgstr "Zi:" + +#: wpvulnerability-admin.php:505 +#: wpvulnerability-admin.php:1955 +#: wpvulnerability-adminms.php:778 +#: wpvulnerability-adminms.php:2115 +msgid "Monday" +msgstr "Luni" + +#: wpvulnerability-admin.php:506 +#: wpvulnerability-admin.php:1956 +#: wpvulnerability-adminms.php:779 +#: wpvulnerability-adminms.php:2116 +msgid "Tuesday" +msgstr "Marți" + +#: wpvulnerability-admin.php:507 +#: wpvulnerability-admin.php:1957 +#: wpvulnerability-adminms.php:780 +#: wpvulnerability-adminms.php:2117 +msgid "Wednesday" +msgstr "Miercuri" + +#: wpvulnerability-admin.php:508 +#: wpvulnerability-admin.php:1958 +#: wpvulnerability-adminms.php:781 +#: wpvulnerability-adminms.php:2118 +msgid "Thursday" +msgstr "Joi" + +#: wpvulnerability-admin.php:509 +#: wpvulnerability-admin.php:1959 +#: wpvulnerability-adminms.php:782 +#: wpvulnerability-adminms.php:2119 +msgid "Friday" +msgstr "Vineri" + +#: wpvulnerability-admin.php:510 +#: wpvulnerability-admin.php:1960 +#: wpvulnerability-adminms.php:783 +#: wpvulnerability-adminms.php:2120 +msgid "Saturday" +msgstr "Sâmbătă" + +#: wpvulnerability-admin.php:511 +#: wpvulnerability-admin.php:1961 +#: wpvulnerability-adminms.php:784 +#: wpvulnerability-adminms.php:2121 +msgid "Sunday" +msgstr "Duminică" + +#: wpvulnerability-admin.php:515 +#: wpvulnerability-adminms.php:788 +msgid "Time:" +msgstr "Ora:" + +#: wpvulnerability-admin.php:519 +#: wpvulnerability-adminms.php:792 +msgid "(24-hour format, server timezone)" +msgstr "(Format 24 de ore, fusul orar al serverului)" + +#: wpvulnerability-admin.php:528 +#: wpvulnerability-adminms.php:801 +msgid "Notification Channels" +msgstr "Canale de notificare" + +#: wpvulnerability-admin.php:531 +#: wpvulnerability-adminms.php:804 +msgid "Select where you want to receive notifications." +msgstr "Selectați unde doriți să primiți notificări." + +#: wpvulnerability-admin.php:536 +#: wpvulnerability-admin.php:2011 +#: wpvulnerability-adminms.php:809 +#: wpvulnerability-adminms.php:2169 +msgid "Email" +msgstr "E-mail" + +#: wpvulnerability-admin.php:539 +#: wpvulnerability-adminms.php:812 +msgid "Email Addresses (separated by commas):" +msgstr "Adrese de e-mail (separate prin virgule):" + +#: wpvulnerability-admin.php:541 +#: wpvulnerability-adminms.php:814 +msgid "Default:" +msgstr "Implicit:" + +#: wpvulnerability-admin.php:546 +#: wpvulnerability-admin.php:2016 +#: wpvulnerability-adminms.php:819 +#: wpvulnerability-adminms.php:2174 +msgid "Slack" +msgstr "Slack" + +#: wpvulnerability-admin.php:549 +#: wpvulnerability-adminms.php:822 +msgid "Slack Webhook URL:" +msgstr "URL webhook Slack:" + +#. translators: %s: Slack documentation URL +#: wpvulnerability-admin.php:555 +#: wpvulnerability-adminms.php:828 +#, php-format +msgid "Learn how to create a Slack incoming webhook →" +msgstr "Aflați cum să creați un webhook de intrare Slack →" + +#: wpvulnerability-admin.php:564 +#: wpvulnerability-admin.php:2021 +#: wpvulnerability-adminms.php:837 +#: wpvulnerability-adminms.php:2179 +msgid "Microsoft Teams" +msgstr "Microsoft Teams" + +#: wpvulnerability-admin.php:567 +#: wpvulnerability-adminms.php:840 +msgid "Teams Webhook URL:" +msgstr "URL webhook Teams:" + +#. translators: %s: Microsoft Teams documentation URL +#: wpvulnerability-admin.php:573 +#: wpvulnerability-adminms.php:846 +#, php-format +msgid "Learn how to create a Teams incoming webhook →" +msgstr "Aflați cum să creați un webhook de intrare Teams →" + +#: wpvulnerability-admin.php:582 +#: wpvulnerability-adminms.php:855 +msgid "Discord" +msgstr "Discord" + +#: wpvulnerability-admin.php:585 +#: wpvulnerability-adminms.php:858 +msgid "Discord Webhook URL:" +msgstr "URL webhook Discord:" + +#. translators: %s: Discord documentation URL +#: wpvulnerability-admin.php:591 +#: wpvulnerability-adminms.php:864 +#, php-format +msgid "Learn how to create a Discord webhook →" +msgstr "Aflați cum să creați un webhook Discord →" + +#: wpvulnerability-admin.php:600 +#: wpvulnerability-adminms.php:873 +msgid "Telegram" +msgstr "Telegram" + +#: wpvulnerability-admin.php:603 +#: wpvulnerability-adminms.php:876 +msgid "Telegram Bot Token:" +msgstr "Token bot Telegram:" + +#: wpvulnerability-admin.php:605 +#: wpvulnerability-adminms.php:878 +msgid "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:607 +#: wpvulnerability-adminms.php:880 +msgid "Telegram Chat ID:" +msgstr "ID chat Telegram:" + +#. translators: %s: Telegram documentation URL +#: wpvulnerability-admin.php:613 +#: wpvulnerability-adminms.php:886 +#, php-format +msgid "Learn how to create a Telegram bot and get Chat ID →" +msgstr "Aflați cum să creați un bot Telegram și să obțineți ID-ul chat-ului →" + +#: wpvulnerability-admin.php:623 +#: wpvulnerability-adminms.php:896 +msgid "Save Notification Settings" +msgstr "Salvați setările de notificare" + +#: wpvulnerability-admin.php:700 +#: wpvulnerability-admin.php:2552 +#: wpvulnerability-adminms.php:973 +#: wpvulnerability-adminms.php:2459 +msgid "WordPress Components" +msgstr "Componente WordPress" + +#: wpvulnerability-admin.php:703 +#: wpvulnerability-admin.php:2560 +#: wpvulnerability-adminms.php:976 +#: wpvulnerability-adminms.php:2467 +msgid "WordPress Core" +msgstr "Nucleu WordPress" + +#: wpvulnerability-admin.php:707 +#: wpvulnerability-admin.php:1472 +#: wpvulnerability-admin.php:1573 +#: wpvulnerability-admin.php:2109 +#: wpvulnerability-admin.php:2571 +#: wpvulnerability-adminms.php:980 +#: wpvulnerability-adminms.php:1744 +#: wpvulnerability-adminms.php:1843 +#: wpvulnerability-adminms.php:2266 +#: wpvulnerability-adminms.php:2478 +msgid "Plugins" +msgstr "Plugin-uri" + +#: wpvulnerability-admin.php:711 +#: wpvulnerability-admin.php:1473 +#: wpvulnerability-admin.php:1574 +#: wpvulnerability-admin.php:2114 +#: wpvulnerability-admin.php:2587 +#: wpvulnerability-adminms.php:984 +#: wpvulnerability-adminms.php:1745 +#: wpvulnerability-adminms.php:1844 +#: wpvulnerability-adminms.php:2271 +#: wpvulnerability-adminms.php:2494 +msgid "Themes" +msgstr "Teme" + +#: wpvulnerability-admin.php:717 +#: wpvulnerability-adminms.php:990 +msgid "Software & Languages" +msgstr "Software și limbaje" + +#: wpvulnerability-admin.php:720 +#: wpvulnerability-admin.php:1474 +#: wpvulnerability-admin.php:2119 +#: wpvulnerability-adminms.php:993 +#: wpvulnerability-adminms.php:1746 +#: wpvulnerability-adminms.php:2276 +#: wpvulnerability-sitehealth.php:178 +msgid "PHP" +msgstr "PHP" + +#: wpvulnerability-admin.php:726 +#: wpvulnerability-adminms.php:999 +msgid "Web Servers" +msgstr "Servere web" + +#: wpvulnerability-admin.php:729 +#: wpvulnerability-admin.php:1475 +#: wpvulnerability-admin.php:2124 +#: wpvulnerability-adminms.php:1002 +#: wpvulnerability-adminms.php:1747 +#: wpvulnerability-adminms.php:2281 +#: wpvulnerability-sitehealth.php:179 +msgid "Apache HTTPD" +msgstr "Apache HTTPD" + +#: wpvulnerability-admin.php:733 +#: wpvulnerability-admin.php:1476 +#: wpvulnerability-admin.php:2129 +#: wpvulnerability-adminms.php:1006 +#: wpvulnerability-adminms.php:1748 +#: wpvulnerability-adminms.php:2286 +msgid "nginx" +msgstr "nginx" + +#: wpvulnerability-admin.php:739 +#: wpvulnerability-adminms.php:1012 +msgid "Databases" +msgstr "Baze de date" + +#: wpvulnerability-admin.php:742 +#: wpvulnerability-admin.php:1477 +#: wpvulnerability-admin.php:2134 +#: wpvulnerability-adminms.php:1015 +#: wpvulnerability-adminms.php:1749 +#: wpvulnerability-adminms.php:2291 +#: wpvulnerability-sitehealth.php:181 +msgid "MariaDB" +msgstr "MariaDB" + +#: wpvulnerability-admin.php:746 +#: wpvulnerability-admin.php:1478 +#: wpvulnerability-admin.php:2139 +#: wpvulnerability-adminms.php:1019 +#: wpvulnerability-adminms.php:1750 +#: wpvulnerability-adminms.php:2296 +#: wpvulnerability-sitehealth.php:182 +msgid "MySQL" +msgstr "MySQL" + +#: wpvulnerability-admin.php:750 +#: wpvulnerability-admin.php:1483 +#: wpvulnerability-admin.php:2164 +#: wpvulnerability-admin.php:3104 +#: wpvulnerability-adminms.php:1023 +#: wpvulnerability-adminms.php:1755 +#: wpvulnerability-adminms.php:2321 +#: wpvulnerability-adminms.php:3281 +msgid "SQLite" +msgstr "SQLite" + +#: wpvulnerability-admin.php:756 +#: wpvulnerability-adminms.php:1029 +msgid "Additional Tools" +msgstr "Instrumente suplimentare" + +#: wpvulnerability-admin.php:759 +#: wpvulnerability-admin.php:1479 +#: wpvulnerability-admin.php:2144 +#: wpvulnerability-admin.php:3101 +#: wpvulnerability-adminms.php:1032 +#: wpvulnerability-adminms.php:1751 +#: wpvulnerability-adminms.php:2301 +#: wpvulnerability-adminms.php:3278 +#: wpvulnerability-sitehealth.php:183 +msgid "ImageMagick" +msgstr "ImageMagick" + +#: wpvulnerability-admin.php:763 +#: wpvulnerability-admin.php:1480 +#: wpvulnerability-admin.php:2149 +#: wpvulnerability-adminms.php:1036 +#: wpvulnerability-adminms.php:1752 +#: wpvulnerability-adminms.php:2306 +#: wpvulnerability-sitehealth.php:184 +msgid "curl" +msgstr "curl" + +#: wpvulnerability-admin.php:767 +#: wpvulnerability-admin.php:1481 +#: wpvulnerability-admin.php:2154 +#: wpvulnerability-adminms.php:1040 +#: wpvulnerability-adminms.php:1753 +#: wpvulnerability-adminms.php:2311 +msgid "memcached" +msgstr "memcached" + +#: wpvulnerability-admin.php:771 +#: wpvulnerability-admin.php:1482 +#: wpvulnerability-admin.php:2159 +#: wpvulnerability-admin.php:3102 +#: wpvulnerability-adminms.php:1044 +#: wpvulnerability-adminms.php:1754 +#: wpvulnerability-adminms.php:2316 +#: wpvulnerability-adminms.php:3279 +msgid "Redis" +msgstr "Redis" + +#: wpvulnerability-admin.php:784 +#: wpvulnerability-adminms.php:1057 +msgid "Component Analysis Settings" +msgstr "Setări de analiză a componentelor" + +#: wpvulnerability-admin.php:787 +#: wpvulnerability-adminms.php:1060 +msgid "Enable or disable vulnerability analysis for specific components." +msgstr "Activați sau dezactivați analiza vulnerabilităților pentru componente specifice." + +#: wpvulnerability-admin.php:788 +#: wpvulnerability-adminms.php:1061 +msgid "Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red." +msgstr "Bifați componentele pe care doriți să le ASCUNDEȚI din scanările și rapoartele de vulnerabilitate. Componentele nebifate vor fi analizate activ. Componentele cu analiză activă sunt afișate în verde, iar cele ascunse în roșu." + +#: wpvulnerability-admin.php:820 +#: wpvulnerability-adminms.php:1093 +msgid "Hidden (forced by constant)" +msgstr "Ascuns (forțat prin constantă)" + +#: wpvulnerability-admin.php:823 +#: wpvulnerability-adminms.php:1096 +msgid "🔴 Analysis disabled" +msgstr "🔴 Analiză dezactivată" + +#: wpvulnerability-admin.php:826 +#: wpvulnerability-adminms.php:1099 +msgid "🟢 Analysis active" +msgstr "🟢 Analiză activă" + +#: wpvulnerability-admin.php:848 +#: wpvulnerability-adminms.php:1121 +msgid "Tip:" +msgstr "Sfat:" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:852 +#: wpvulnerability-adminms.php:1125 +#, php-format +msgid "You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →" +msgstr "Puteți forța dezactivarea componentelor prin constantele din wp-config.php. Aflați mai multe despre dezactivarea forțată a verificărilor →" + +#: wpvulnerability-admin.php:860 +#: wpvulnerability-adminms.php:1133 +msgid "Save Analysis Settings" +msgstr "Salvați setările de analiză" + +#: wpvulnerability-admin.php:920 +#: wpvulnerability-adminms.php:1193 +msgid "« Previous" +msgstr "« Anterior" + +#: wpvulnerability-admin.php:921 +#: wpvulnerability-adminms.php:1194 +msgid "Next »" +msgstr "Următor »" + +#: wpvulnerability-admin.php:932 +#: wpvulnerability-adminms.php:1205 +msgid "Log entry not found or has been removed." +msgstr "Intrarea din jurnal nu a fost găsită sau a fost eliminată." + +#: wpvulnerability-admin.php:935 +#: wpvulnerability-adminms.php:1208 +msgid "Unable to load the requested log entry." +msgstr "Imposibil de încărcat intrarea solicitată din jurnal." + +#: wpvulnerability-admin.php:945 +#: wpvulnerability-adminms.php:1218 +msgid "Log Configuration" +msgstr "Configurare jurnal" + +#: wpvulnerability-admin.php:950 +#: wpvulnerability-adminms.php:1223 +msgid "Total Logs" +msgstr "Total jurnale" + +#: wpvulnerability-admin.php:954 +#: wpvulnerability-adminms.php:1227 +msgid "Retention Period" +msgstr "Perioadă de retenție" + +#: wpvulnerability-admin.php:959 +#: wpvulnerability-admin.php:1301 +#: wpvulnerability-admin.php:3029 +#: wpvulnerability-admin.php:3043 +#: wpvulnerability-admin.php:3475 +#: wpvulnerability-admin.php:3483 +#: wpvulnerability-adminms.php:1232 +#: wpvulnerability-adminms.php:1574 +#: wpvulnerability-adminms.php:3206 +#: wpvulnerability-adminms.php:3220 +#: wpvulnerability-adminms.php:3669 +#: wpvulnerability-adminms.php:3677 +msgid "Disabled" +msgstr "Dezactivat" + +#. translators: %d: Number of days. +#. translators: %d: number of days +#: wpvulnerability-admin.php:962 +#: wpvulnerability-admin.php:984 +#: wpvulnerability-admin.php:3641 +#: wpvulnerability-adminms.php:1235 +#: wpvulnerability-adminms.php:1257 +#: wpvulnerability-adminms.php:3835 +#, php-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d zi" +msgstr[1] "%d zile" +msgstr[2] "%d de zile" + +#: wpvulnerability-admin.php:975 +#: wpvulnerability-adminms.php:1248 +msgid "Log Retention Period" +msgstr "Perioadă de retenție a jurnalelor" + +#: wpvulnerability-admin.php:981 +#: wpvulnerability-adminms.php:1254 +msgid "None (Disabled)" +msgstr "Niciuna (Dezactivat)" + +#: wpvulnerability-admin.php:1004 +#: wpvulnerability-adminms.php:1277 +msgid "This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant." +msgstr "Această valoare este impusă de constanta WPVULNERABILITY_LOG_RETENTION_DAYS." + +#: wpvulnerability-admin.php:1009 +#: wpvulnerability-adminms.php:1282 +msgid "Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted." +msgstr "Alegeți cât timp WPVulnerability să păstreze jurnalele de răspuns API. Jurnalele mai vechi sunt șterse automat." + +#: wpvulnerability-admin.php:1013 +#: wpvulnerability-adminms.php:1286 +msgid "Save Configuration" +msgstr "Salvați configurația" + +#: wpvulnerability-admin.php:1018 +#: wpvulnerability-adminms.php:1291 +msgid "Log retention is currently disabled." +msgstr "Retenția jurnalelor este dezactivată în prezent." + +#: wpvulnerability-admin.php:1018 +#: wpvulnerability-adminms.php:1291 +msgid "API responses are not being saved." +msgstr "Răspunsurile API nu sunt salvate." + +#: wpvulnerability-admin.php:1031 +#: wpvulnerability-adminms.php:1304 +msgid "Log Details" +msgstr "Detalii jurnal" + +#: wpvulnerability-admin.php:1035 +#: wpvulnerability-admin.php:1104 +#: wpvulnerability-adminms.php:1308 +#: wpvulnerability-adminms.php:1377 +msgid "Date" +msgstr "Dată" + +#: wpvulnerability-admin.php:1039 +#: wpvulnerability-admin.php:1105 +#: wpvulnerability-adminms.php:1312 +#: wpvulnerability-adminms.php:1378 +msgid "API Endpoint" +msgstr "Endpoint API" + +#: wpvulnerability-admin.php:1044 +#: wpvulnerability-adminms.php:1317 +msgid "API Response" +msgstr "Răspuns API" + +#: wpvulnerability-admin.php:1049 +#: wpvulnerability-adminms.php:1322 +msgid "Back to Logs" +msgstr "Înapoi la jurnale" + +#: wpvulnerability-admin.php:1058 +#: wpvulnerability-adminms.php:1331 +msgid "No logs available" +msgstr "Nu există jurnale disponibile" + +#: wpvulnerability-admin.php:1059 +#: wpvulnerability-adminms.php:1332 +msgid "API response logs will appear here once the vulnerability scanner runs." +msgstr "Jurnalele de răspuns API vor apărea aici după ce scanerul de vulnerabilități rulează." + +#: wpvulnerability-admin.php:1063 +#: wpvulnerability-adminms.php:1336 +msgid "API Response Logs" +msgstr "Jurnale de răspuns API" + +#: wpvulnerability-admin.php:1073 +#: wpvulnerability-adminms.php:1346 +msgid "Show:" +msgstr "Afișare:" + +#: wpvulnerability-admin.php:1082 +#: wpvulnerability-adminms.php:1355 +msgid "Apply" +msgstr "Aplicați" + +#. translators: 1: first item, 2: last item, 3: total items +#: wpvulnerability-admin.php:1090 +#: wpvulnerability-adminms.php:1363 +#, php-format +msgid "Showing %1$s–%2$s of %3$s" +msgstr "Afișare %1$s–%2$s din %3$s" + +#: wpvulnerability-admin.php:1106 +#: wpvulnerability-adminms.php:1379 +msgid "Actions" +msgstr "Acțiuni" + +#: wpvulnerability-admin.php:1133 +#: wpvulnerability-admin.php:3957 +#: wpvulnerability-adminms.php:1406 +#: wpvulnerability-adminms.php:4151 +msgid "View" +msgstr "Vizualizare" + +#: wpvulnerability-admin.php:1150 +#: wpvulnerability-adminms.php:1423 +msgid "Danger Zone" +msgstr "Zonă periculoasă" + +#: wpvulnerability-admin.php:1152 +#: wpvulnerability-adminms.php:1425 +msgid "Permanently delete all API response logs. This action cannot be undone." +msgstr "Ștergeți definitiv toate jurnalele de răspuns API. Această acțiune nu poate fi anulată." + +#: wpvulnerability-admin.php:1154 +#: wpvulnerability-adminms.php:1427 +msgid "Are you sure you want to delete all logs? This action cannot be undone." +msgstr "Sigur doriți să ștergeți toate jurnalele? Această acțiune nu poate fi anulată." + +#: wpvulnerability-admin.php:1157 +#: wpvulnerability-adminms.php:1430 +msgid "Delete All Logs" +msgstr "Ștergeți toate jurnalele" + +#: wpvulnerability-admin.php:1201 +#: wpvulnerability-adminms.php:1474 +msgid "Reload Data from API" +msgstr "Reîncărcați datele din API" + +#: wpvulnerability-admin.php:1204 +#: wpvulnerability-adminms.php:1477 +msgid "Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information." +msgstr "Reîncărcați toate informațiile despre Nucleu, Plugin-uri, Teme și alte componente direct din API pentru a obține date actualizate. Aceasta va șterge cache-ul și va prelua informații proaspete despre vulnerabilități." + +#: wpvulnerability-admin.php:1209 +#: wpvulnerability-adminms.php:1482 +msgid "Reload Data" +msgstr "Reîncărcați datele" + +#: wpvulnerability-admin.php:1218 +#: wpvulnerability-adminms.php:1491 +msgid "Test Email Notifications" +msgstr "Testați notificările prin e-mail" + +#: wpvulnerability-admin.php:1221 +#: wpvulnerability-adminms.php:1494 +msgid "Send a test email notification with current vulnerability data to verify your email configuration is working correctly." +msgstr "Trimiteți o notificare de test prin e-mail cu datele actuale despre vulnerabilități pentru a verifica că configurația de e-mail funcționează corect." + +#: wpvulnerability-admin.php:1231 +#: wpvulnerability-adminms.php:1504 +msgid "From address (configured via constant):" +msgstr "Adresă expeditor (configurată prin constantă):" + +#: wpvulnerability-admin.php:1243 +#: wpvulnerability-adminms.php:1516 +msgid "From address (default):" +msgstr "Adresă expeditor (implicită):" + +#: wpvulnerability-admin.php:1252 +#: wpvulnerability-adminms.php:1525 +msgid "Learn how to customize the email sender address →" +msgstr "Aflați cum să personalizați adresa expeditorului de e-mail →" + +#: wpvulnerability-admin.php:1258 +#: wpvulnerability-adminms.php:1531 +msgid "Send Test Email" +msgstr "Trimiteți e-mail de test" + +#: wpvulnerability-admin.php:1267 +#: wpvulnerability-adminms.php:1540 +msgid "WP-Cron Status" +msgstr "Status WP-Cron" + +#: wpvulnerability-admin.php:1270 +#: wpvulnerability-adminms.php:1543 +msgid "View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly." +msgstr "Vizualizați și gestionați evenimentele programate WP-Cron. Comparați programările așteptate cu sarcinile cron efective pentru a vă asigura că sarcinile automate rulează corect." + +#: wpvulnerability-admin.php:1275 +#: wpvulnerability-adminms.php:1548 +msgid "No cron data available." +msgstr "Nu există date cron disponibile." + +#: wpvulnerability-admin.php:1281 +#: wpvulnerability-adminms.php:1554 +msgid "Hook" +msgstr "Hook" + +#: wpvulnerability-admin.php:1282 +#: wpvulnerability-adminms.php:1555 +msgid "Expected" +msgstr "Așteptat" + +#: wpvulnerability-admin.php:1283 +#: wpvulnerability-adminms.php:1556 +msgid "Found" +msgstr "Găsit" + +#: wpvulnerability-admin.php:1284 +#: wpvulnerability-adminms.php:1557 +msgid "Next Run" +msgstr "Următoarea rulare" + +#: wpvulnerability-admin.php:1285 +#: wpvulnerability-admin.php:3236 +#: wpvulnerability-admin.php:3559 +#: wpvulnerability-adminms.php:1558 +#: wpvulnerability-adminms.php:3413 +#: wpvulnerability-adminms.php:3753 +msgid "Status" +msgstr "Status" + +#: wpvulnerability-admin.php:1299 +#: wpvulnerability-adminms.php:1572 +msgid "Not expected" +msgstr "Neașteptat" + +#: wpvulnerability-admin.php:1321 +#: wpvulnerability-adminms.php:1594 +#: wpvulnerability-general.php:1871 +#: wpvulnerability-general.php:1872 +msgid "None" +msgstr "Niciunul" + +#: wpvulnerability-admin.php:1356 +#: wpvulnerability-adminms.php:1629 +msgid "OK" +msgstr "OK" + +#: wpvulnerability-admin.php:1366 +#: wpvulnerability-adminms.php:1639 +msgid "⚠️ Unexpected WPVulnerability Events" +msgstr "⚠️ Evenimente neașteptate WPVulnerability" + +#: wpvulnerability-admin.php:1383 +#: wpvulnerability-adminms.php:1656 +msgid "No interval" +msgstr "Fără interval" + +#: wpvulnerability-admin.php:1390 +#: wpvulnerability-adminms.php:1663 +msgid "Next:" +msgstr "Următor:" + +#: wpvulnerability-admin.php:1400 +#: wpvulnerability-adminms.php:1673 +msgid "Repair Cron Events" +msgstr "Reparați evenimentele cron" + +#: wpvulnerability-admin.php:1408 +#: wpvulnerability-adminms.php:1681 +msgid "Uninstall Data" +msgstr "Date de dezinstalare" + +#: wpvulnerability-admin.php:1410 +#: wpvulnerability-adminms.php:1683 +msgid "By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall." +msgstr "În mod implicit, toate datele plugin-ului sunt păstrate atunci când WPVulnerability este șters. Activați opțiunea de mai jos numai dacă doriți ca toate opțiunile, jurnalele și datele din cache să fie eliminate definitiv la dezinstalare." + +#: wpvulnerability-admin.php:1420 +#: wpvulnerability-adminms.php:1693 +msgid "Delete all plugin data on uninstall" +msgstr "Ștergeți toate datele plugin-ului la dezinstalare" + +#: wpvulnerability-admin.php:1423 +#: wpvulnerability-adminms.php:1696 +msgid "Default: unchecked (data preserved). Check only if you want a clean removal." +msgstr "Implicit: nebifat (datele sunt păstrate). Bifați numai dacă doriți o eliminare curată." + +#: wpvulnerability-admin.php:1425 +#: wpvulnerability-adminms.php:1698 +msgid "Save preference" +msgstr "Salvați preferința" + +#: wpvulnerability-admin.php:1432 +#: wpvulnerability-adminms.php:1705 +msgid "Reset WPVulnerability" +msgstr "Resetați WPVulnerability" + +#: wpvulnerability-admin.php:1434 +#: wpvulnerability-adminms.php:1707 +msgid "Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API." +msgstr "Ștergeți toate setările WPVulnerability, datele din cache, jurnalele și evenimentele programate, apoi restaurați valorile implicite și reîncărcați datele din API." + +#: wpvulnerability-admin.php:1436 +#: wpvulnerability-adminms.php:1709 +msgid "This action cannot be undone." +msgstr "Această acțiune nu poate fi anulată." + +#: wpvulnerability-admin.php:1438 +#: wpvulnerability-adminms.php:1711 +msgid "Are you sure you want to reset all WPVulnerability data? This action cannot be undone." +msgstr "Sigur doriți să resetați toate datele WPVulnerability? Această acțiune nu poate fi anulată." + +#: wpvulnerability-admin.php:1441 +#: wpvulnerability-adminms.php:1713 +msgid "Reset Plugin" +msgstr "Resetați plugin-ul" + +#: wpvulnerability-admin.php:1468 +#: wpvulnerability-adminms.php:1740 +msgid "Vulnerability Database Statistics" +msgstr "Statistici bază de date de vulnerabilități" + +#. translators: number of vulnerabilities. +#: wpvulnerability-admin.php:1510 +#: wpvulnerability-adminms.php:1782 +#, php-format +msgid "%s vulnerability" +msgid_plural "%s vulnerabilities" +msgstr[0] "%s vulnerabilitate" +msgstr[1] "%s vulnerabilități" +msgstr[2] "%s de vulnerabilități" + +#. translators: number of products. +#: wpvulnerability-admin.php:1520 +#: wpvulnerability-adminms.php:1792 +#, php-format +msgid "(%s product)" +msgid_plural "(%s products)" +msgstr[0] "(%s produs)" +msgstr[1] "(%s produse)" +msgstr[2] "(%s de produse)" + +#: wpvulnerability-admin.php:1527 +#: wpvulnerability-adminms.php:1799 +msgid "No data" +msgstr "Fără date" + +#. translators: date of last update. +#: wpvulnerability-admin.php:1544 +#: wpvulnerability-adminms.php:1814 +#, php-format +msgid "Database last updated: %s" +msgstr "Ultima actualizare a bazei de date: %s" + +#: wpvulnerability-admin.php:1566 +#: wpvulnerability-adminms.php:1836 +msgid "Intelligence Sources" +msgstr "Surse de informații" + +#: wpvulnerability-admin.php:1567 +#: wpvulnerability-adminms.php:1837 +msgid "Number of vulnerabilities contributed by each intelligence source." +msgstr "Numărul de vulnerabilități contribuite de fiecare sursă de informații." + +#: wpvulnerability-admin.php:1571 +#: wpvulnerability-adminms.php:1841 +msgid "Source" +msgstr "Sursă" + +#: wpvulnerability-admin.php:1572 +#: wpvulnerability-admin.php:2104 +#: wpvulnerability-adminms.php:1842 +#: wpvulnerability-adminms.php:2261 +msgid "Core" +msgstr "Nucleu" + +#: wpvulnerability-admin.php:1603 +#: wpvulnerability-adminms.php:1873 +msgid "Sponsors" +msgstr "Sponsori" + +#: wpvulnerability-admin.php:1626 +#: wpvulnerability-adminms.php:1896 +msgid "No sponsor data available." +msgstr "Nu există date despre sponsori disponibile." + +#: wpvulnerability-admin.php:1633 +#: wpvulnerability-adminms.php:1903 +msgid "Contributors" +msgstr "Contribuitori" + +#: wpvulnerability-admin.php:1656 +#: wpvulnerability-adminms.php:1926 +msgid "No contributor data available." +msgstr "Nu există date despre contribuitori disponibile." + +#: wpvulnerability-admin.php:1674 +#: wpvulnerability-adminms.php:432 +msgid "You do not have sufficient permissions to access this page." +msgstr "Nu aveți permisiuni suficiente pentru a accesa această pagină." + +#: wpvulnerability-admin.php:1684 +#: wpvulnerability-adminms.php:441 +msgid "WPVulnerability settings" +msgstr "Setări WPVulnerability" + +#: wpvulnerability-admin.php:1801 +#: wpvulnerability-adminms.php:1963 +msgid "Configure and save these settings to receive notifications." +msgstr "Configurați și salvați aceste setări pentru a primi notificări." + +#: wpvulnerability-admin.php:1814 +#: wpvulnerability-adminms.php:2071 +msgid "Configure and save these settings to hide vulnerabilities." +msgstr "Configurați și salvați aceste setări pentru a ascunde vulnerabilitățile." + +#: wpvulnerability-admin.php:1845 +#: wpvulnerability-adminms.php:1993 +msgid "Default administrator email" +msgstr "E-mail implicit al administratorului" + +#: wpvulnerability-admin.php:1909 +#: wpvulnerability-adminms.php:2057 +msgid "Read more if you want to force the cache time." +msgstr "Citiți mai mult dacă doriți să forțați durata cache-ului." + +#: wpvulnerability-admin.php:1939 +#: wpvulnerability-adminms.php:2099 +msgid "Never" +msgstr "Niciodată" + +#: wpvulnerability-admin.php:1944 +#: wpvulnerability-adminms.php:2104 +msgid "Daily" +msgstr "Zilnic" + +#: wpvulnerability-admin.php:1949 +#: wpvulnerability-adminms.php:2109 +msgid "Weekly" +msgstr "Săptămânal" + +#: wpvulnerability-admin.php:1953 +#: wpvulnerability-adminms.php:2113 +msgid "Day" +msgstr "Zi" + +#: wpvulnerability-admin.php:1966 +#: wpvulnerability-adminms.php:2126 +msgid "Hour" +msgstr "Oră" + +#: wpvulnerability-admin.php:1968 +#: wpvulnerability-adminms.php:2128 +msgid "Minute" +msgstr "Minut" + +#: wpvulnerability-admin.php:2166 +#: wpvulnerability-adminms.php:2323 +msgid "Read more about how to force the deactivation of an item." +msgstr "Citiți mai mult despre cum să forțați dezactivarea unui element." + +#: wpvulnerability-admin.php:2292 +#: wpvulnerability-adminms.php:2870 +msgid "Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com" +msgstr "URL webhook Slack invalid. Trebuie să fie un URL HTTPS valid de la hooks.slack.com" + +#: wpvulnerability-admin.php:2315 +#: wpvulnerability-adminms.php:2893 +msgid "Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com" +msgstr "URL webhook Microsoft Teams invalid. Trebuie să fie un URL HTTPS valid de la office.com, office365.com sau api.hooks.microsoft.com" + +#: wpvulnerability-admin.php:2338 +#: wpvulnerability-adminms.php:2916 +msgid "Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com" +msgstr "URL webhook Discord invalid. Trebuie să fie un URL HTTPS valid de la discord.com sau discordapp.com" + +#: wpvulnerability-admin.php:2357 +#: wpvulnerability-adminms.php:2935 +msgid "Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "Format token bot Telegram invalid. Trebuie să fie de forma: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:2493 +#: wpvulnerability-adminms.php:2400 +msgid "All Clear" +msgstr "Totul în regulă" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2503 +#: wpvulnerability-adminms.php:2410 +#, php-format +msgid "%d Critical Issue Found" +msgid_plural "%d Critical Issues Found" +msgstr[0] "%d problemă critică găsită" +msgstr[1] "%d probleme critice găsite" +msgstr[2] "%d de probleme critice găsite" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2508 +#: wpvulnerability-adminms.php:2415 +#, php-format +msgid "%d Issue Found" +msgid_plural "%d Issues Found" +msgstr[0] "%d problemă găsită" +msgstr[1] "%d probleme găsite" +msgstr[2] "%d de probleme găsite" + +#: wpvulnerability-admin.php:2515 +#: wpvulnerability-adminms.php:2422 +msgid "Never checked" +msgstr "Niciodată verificat" + +#. translators: %d: number of minutes +#: wpvulnerability-admin.php:2523 +#: wpvulnerability-adminms.php:2430 +#, php-format +msgid "%d minute ago" +msgid_plural "%d minutes ago" +msgstr[0] "acum %d minut" +msgstr[1] "acum %d minute" +msgstr[2] "acum %d de minute" + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:2527 +#: wpvulnerability-adminms.php:2434 +#, php-format +msgid "%d hour ago" +msgid_plural "%d hours ago" +msgstr[0] "acum %d oră" +msgstr[1] "acum %d ore" +msgstr[2] "acum %d de ore" + +#. translators: %s: time since last check +#: wpvulnerability-admin.php:2539 +#: wpvulnerability-adminms.php:2446 +#, php-format +msgid "Last checked: %s" +msgstr "Ultima verificare: %s" + +#: wpvulnerability-admin.php:2540 +#: wpvulnerability-adminms.php:2447 +msgid "Refresh Now" +msgstr "Reîmprospătați acum" + +#: wpvulnerability-admin.php:2547 +#: wpvulnerability-adminms.php:2454 +msgid "No vulnerabilities detected" +msgstr "Nu au fost detectate vulnerabilități" + +#: wpvulnerability-admin.php:2548 +#: wpvulnerability-adminms.php:2455 +msgid "Your site is up to date and secure" +msgstr "Site-ul dumneavoastră este actualizat și securizat" + +#: wpvulnerability-admin.php:2616 +#: wpvulnerability-adminms.php:2523 +msgid "Server Software" +msgstr "Software server" + +#: wpvulnerability-admin.php:2829 +#: wpvulnerability-adminms.php:2736 +msgid "Site Health" +msgstr "Sănătate site" + +#: wpvulnerability-admin.php:2831 +#: wpvulnerability-adminms.php:2738 +#: wpvulnerability-run.php:33 +msgid "Settings" +msgstr "Setări" + +#: wpvulnerability-admin.php:2846 +#: wpvulnerability-adminms.php:2754 +msgid "WPVulnerability Status" +msgstr "Status WPVulnerability" + +#: wpvulnerability-admin.php:2878 +#: wpvulnerability-adminms.php:3052 +msgid "Receive vulnerability notifications" +msgstr "Primiți notificări privind vulnerabilitățile" + +#: wpvulnerability-admin.php:2886 +#: wpvulnerability-adminms.php:3060 +msgid "Cache expiration time" +msgstr "Timp de expirare a cache-ului" + +#: wpvulnerability-admin.php:2895 +#: wpvulnerability-adminms.php:3069 +msgid "How often you want to receive notifications" +msgstr "Cât de des doriți să primiți notificări" + +#: wpvulnerability-admin.php:2904 +#: wpvulnerability-adminms.php:3078 +msgid "Where do you want to receive notifications?" +msgstr "Unde doriți să primiți notificări?" + +#: wpvulnerability-admin.php:2913 +#: wpvulnerability-adminms.php:3087 +msgid "Email addresses to notify (separated by commas)" +msgstr "Adrese de e-mail de notificat (separate prin virgule)" + +#: wpvulnerability-admin.php:2922 +#: wpvulnerability-adminms.php:3096 +msgid "Slack webhook URL" +msgstr "URL webhook Slack" + +#: wpvulnerability-admin.php:2931 +#: wpvulnerability-adminms.php:3105 +msgid "Teams webhook URL" +msgstr "URL webhook Teams" + +#: wpvulnerability-admin.php:2950 +#: wpvulnerability-adminms.php:3126 +msgid "Vulnerabilities to hide" +msgstr "Vulnerabilități de ascuns" + +#: wpvulnerability-admin.php:2958 +#: wpvulnerability-adminms.php:3134 +msgid "What do you want to hide?" +msgstr "Ce doriți să ascundeți?" + +#: wpvulnerability-admin.php:3008 +#: wpvulnerability-adminms.php:3185 +msgid "Standard (Hybrid Detection)" +msgstr "Standard (Detecție hibridă)" + +#: wpvulnerability-admin.php:3009 +#: wpvulnerability-adminms.php:3186 +msgid "Strict (Extensions Only)" +msgstr "Strict (Numai extensii)" + +#: wpvulnerability-admin.php:3010 +#: wpvulnerability-adminms.php:3187 +msgid "Disabled (No Detection)" +msgstr "Dezactivat (Fără detecție)" + +#: wpvulnerability-admin.php:3016 +#: wpvulnerability-adminms.php:3193 +msgid "Security Status" +msgstr "Status securitate" + +#: wpvulnerability-admin.php:3020 +#: wpvulnerability-adminms.php:3197 +msgid "Security Mode" +msgstr "Mod de securitate" + +#: wpvulnerability-admin.php:3025 +#: wpvulnerability-adminms.php:3202 +msgid "Shell Execution" +msgstr "Execuție shell" + +#: wpvulnerability-admin.php:3027 +#: wpvulnerability-admin.php:3475 +#: wpvulnerability-admin.php:3483 +#: wpvulnerability-adminms.php:3204 +#: wpvulnerability-adminms.php:3669 +#: wpvulnerability-adminms.php:3677 +msgid "Enabled" +msgstr "Activat" + +#: wpvulnerability-admin.php:3034 +#: wpvulnerability-adminms.php:3211 +msgid "Audit Logging" +msgstr "Jurnalizare audit" + +#. translators: %d: number of days +#: wpvulnerability-admin.php:3039 +#: wpvulnerability-adminms.php:3216 +#, php-format +msgid "Enabled (%d days)" +msgstr "Activat (%d zile)" + +#: wpvulnerability-admin.php:3048 +#: wpvulnerability-adminms.php:3225 +msgid "Total Log Entries" +msgstr "Total intrări jurnal" + +#: wpvulnerability-admin.php:3055 +#: wpvulnerability-adminms.php:3232 +msgid "Last Shell Execution" +msgstr "Ultima execuție shell" + +#. translators: %s: time ago +#: wpvulnerability-admin.php:3061 +#: wpvulnerability-admin.php:3266 +#: wpvulnerability-adminms.php:3238 +#: wpvulnerability-adminms.php:3441 +#, php-format +msgid "%s ago" +msgstr "acum %s" + +#: wpvulnerability-admin.php:3073 +#: wpvulnerability-adminms.php:3250 +msgid "Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST." +msgstr "Configurați setările de securitate prin constantele din wp-config.php: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST." + +#. translators: %s: URL to security documentation +#: wpvulnerability-admin.php:3079 +#: wpvulnerability-adminms.php:3256 +#, php-format +msgid "See security configuration documentation for details." +msgstr "Consultați documentația de configurare a securității pentru detalii." + +#: wpvulnerability-admin.php:3103 +#: wpvulnerability-adminms.php:3280 +msgid "Memcached" +msgstr "Memcached" + +#: wpvulnerability-admin.php:3131 +#: wpvulnerability-adminms.php:3308 +msgid "Imagick Extension" +msgstr "Extensie Imagick" + +#: wpvulnerability-admin.php:3132 +#: wpvulnerability-adminms.php:3309 +msgid "Redis Extension" +msgstr "Extensie Redis" + +#: wpvulnerability-admin.php:3133 +#: wpvulnerability-adminms.php:3310 +msgid "Memcached Extension" +msgstr "Extensie Memcached" + +#: wpvulnerability-admin.php:3134 +#: wpvulnerability-adminms.php:3311 +msgid "Memcache Extension" +msgstr "Extensie Memcache" + +#: wpvulnerability-admin.php:3135 +#: wpvulnerability-adminms.php:3312 +msgid "SQLite3 Extension" +msgstr "Extensie SQLite3" + +#: wpvulnerability-admin.php:3136 +#: wpvulnerability-adminms.php:3313 +msgid "PDO SQLite" +msgstr "PDO SQLite" + +#: wpvulnerability-admin.php:3137 +#: wpvulnerability-adminms.php:3314 +msgid "Shell Command" +msgstr "Comandă shell" + +#: wpvulnerability-admin.php:3138 +#: wpvulnerability-adminms.php:3315 +msgid "Binary Check" +msgstr "Verificare binar" + +#: wpvulnerability-admin.php:3139 +#: wpvulnerability-adminms.php:3316 +msgid "Not Detected" +msgstr "Nedetectat" + +#: wpvulnerability-admin.php:3143 +#: wpvulnerability-adminms.php:3320 +msgid "Software Detection Methods" +msgstr "Metode de detecție a software-ului" + +#: wpvulnerability-admin.php:3144 +#: wpvulnerability-adminms.php:3321 +msgid "Shows which detection method was used for each software component and the reliability score." +msgstr "Afișează metoda de detecție utilizată pentru fiecare componentă software și scorul de fiabilitate." + +#: wpvulnerability-admin.php:3149 +#: wpvulnerability-admin.php:3234 +#: wpvulnerability-admin.php:3558 +#: wpvulnerability-adminms.php:3326 +#: wpvulnerability-adminms.php:3411 +#: wpvulnerability-adminms.php:3752 +msgid "Component" +msgstr "Componentă" + +#: wpvulnerability-admin.php:3150 +#: wpvulnerability-adminms.php:3327 +msgid "Version" +msgstr "Versiune" + +#: wpvulnerability-admin.php:3151 +#: wpvulnerability-adminms.php:3328 +msgid "Detection Method" +msgstr "Metodă de detecție" + +#: wpvulnerability-admin.php:3152 +#: wpvulnerability-adminms.php:3329 +msgid "Reliability" +msgstr "Fiabilitate" + +#: wpvulnerability-admin.php:3164 +#: wpvulnerability-adminms.php:3341 +msgid "Not detected" +msgstr "Nedetectat" + +#: wpvulnerability-admin.php:3220 +#: wpvulnerability-adminms.php:3397 +msgid "Shell Execution Audit Logs" +msgstr "Jurnale audit execuție shell" + +#: wpvulnerability-admin.php:3221 +#: wpvulnerability-adminms.php:3398 +msgid "Complete audit trail of shell command executions for security monitoring." +msgstr "Traseu de audit complet al execuțiilor comenzilor shell pentru monitorizarea securității." + +#: wpvulnerability-admin.php:3226 +#: wpvulnerability-adminms.php:3403 +msgid "No shell execution logs found." +msgstr "Nu au fost găsite jurnale de execuție shell." + +#: wpvulnerability-admin.php:3227 +#: wpvulnerability-adminms.php:3404 +msgid "Logs will appear here when shell commands are executed for software detection." +msgstr "Jurnalele vor apărea aici când comenzile shell sunt executate pentru detecția software-ului." + +#: wpvulnerability-admin.php:3233 +#: wpvulnerability-adminms.php:3410 +msgid "Time" +msgstr "Timp" + +#: wpvulnerability-admin.php:3235 +#: wpvulnerability-adminms.php:3412 +msgid "Command" +msgstr "Comandă" + +#: wpvulnerability-admin.php:3237 +#: wpvulnerability-adminms.php:3414 +msgid "User" +msgstr "Utilizator" + +#: wpvulnerability-admin.php:3238 +#: wpvulnerability-adminms.php:3415 +msgid "Output" +msgstr "Ieșire" + +#. translators: %d: number of logs shown +#: wpvulnerability-admin.php:3302 +#: wpvulnerability-adminms.php:3477 +#, php-format +msgid "Showing the %d most recent log entries." +msgstr "Se afișează cele mai recente %d intrări din jurnal." + +#: wpvulnerability-admin.php:3320 +#: wpvulnerability-adminms.php:3565 +msgid "Invalid nonce." +msgstr "Nonce invalid." + +#: wpvulnerability-admin.php:3325 +#: wpvulnerability-adminms.php:3570 +msgid "Insufficient permissions." +msgstr "Permisiuni insuficiente." + +#: wpvulnerability-admin.php:3331 +#: wpvulnerability-adminms.php:3576 +msgid "No component specified." +msgstr "Nicio componentă specificată." + +#: wpvulnerability-admin.php:3366 +#: wpvulnerability-adminms.php:3524 +msgid "Debug Information" +msgstr "Informații de depanare" + +#: wpvulnerability-admin.php:3368 +#: wpvulnerability-adminms.php:3526 +msgid "This tab is only visible when WP_DEBUG is enabled. Use with caution." +msgstr "Această filă este vizibilă numai când WP_DEBUG este activat. Utilizați cu precauție." + +#: wpvulnerability-admin.php:3429 +#: wpvulnerability-adminms.php:3623 +msgid "System Information" +msgstr "Informații sistem" + +#: wpvulnerability-admin.php:3433 +#: wpvulnerability-adminms.php:3627 +msgid "WordPress Version" +msgstr "Versiune WordPress" + +#: wpvulnerability-admin.php:3437 +#: wpvulnerability-adminms.php:3631 +msgid "Multisite" +msgstr "Multisite" + +#: wpvulnerability-admin.php:3438 +#: wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 +#: wpvulnerability-adminms.php:3778 +msgid "Yes" +msgstr "Da" + +#: wpvulnerability-admin.php:3438 +#: wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 +#: wpvulnerability-adminms.php:3778 +msgid "No" +msgstr "Nu" + +#: wpvulnerability-admin.php:3441 +#: wpvulnerability-adminms.php:3635 +msgid "Language" +msgstr "Limbă" + +#: wpvulnerability-admin.php:3445 +#: wpvulnerability-adminms.php:3639 +msgid "PHP Version" +msgstr "Versiune PHP" + +#: wpvulnerability-admin.php:3449 +#: wpvulnerability-adminms.php:3643 +msgid "PHP Extensions" +msgstr "Extensii PHP" + +#: wpvulnerability-admin.php:3460 +#: wpvulnerability-adminms.php:3654 +msgid "PHP Memory Limit" +msgstr "Limită memorie PHP" + +#: wpvulnerability-admin.php:3464 +#: wpvulnerability-adminms.php:3658 +msgid "Database" +msgstr "Bază de date" + +#: wpvulnerability-admin.php:3468 +#: wpvulnerability-adminms.php:3662 +msgid "Web Server" +msgstr "Server web" + +#: wpvulnerability-admin.php:3472 +#: wpvulnerability-adminms.php:3666 +msgid "WP_DEBUG" +msgstr "WP_DEBUG" + +#: wpvulnerability-admin.php:3480 +#: wpvulnerability-adminms.php:3674 +msgid "WP_DEBUG_LOG" +msgstr "WP_DEBUG_LOG" + +#: wpvulnerability-admin.php:3490 +#: wpvulnerability-adminms.php:3684 +msgid "Path:" +msgstr "Cale:" + +#. translators: %s: file size +#: wpvulnerability-admin.php:3499 +#: wpvulnerability-adminms.php:3698 +#, php-format +msgid "Size: %s" +msgstr "Dimensiune: %s" + +#: wpvulnerability-admin.php:3510 +#: wpvulnerability-adminms.php:3704 +msgid "View Log File" +msgstr "Vizualizați fișierul jurnal" + +#: wpvulnerability-admin.php:3516 +#: wpvulnerability-adminms.php:3710 +msgid "Log file is not web-accessible (outside wp-content)" +msgstr "Fișierul jurnal nu este accesibil web (în afara wp-content)" + +#: wpvulnerability-admin.php:3522 +#: wpvulnerability-adminms.php:3716 +msgid "Log file does not exist yet" +msgstr "Fișierul jurnal nu există încă" + +#: wpvulnerability-admin.php:3530 +#: wpvulnerability-adminms.php:3724 +msgid "Plugin Version" +msgstr "Versiune plugin" + +#: wpvulnerability-admin.php:3554 +#: wpvulnerability-adminms.php:3748 +msgid "Component Detection" +msgstr "Detecție componentă" + +#: wpvulnerability-admin.php:3560 +#: wpvulnerability-adminms.php:3754 +msgid "Version Detected" +msgstr "Versiune detectată" + +#: wpvulnerability-admin.php:3561 +#: wpvulnerability-adminms.php:3755 +msgid "Analyzed" +msgstr "Analizat" + +#: wpvulnerability-admin.php:3562 +#: wpvulnerability-adminms.php:3756 +msgid "Cache Status" +msgstr "Status cache" + +#: wpvulnerability-admin.php:3622 +#: wpvulnerability-adminms.php:3816 +msgid "Configuration Summary" +msgstr "Rezumat configurație" + +#: wpvulnerability-admin.php:3626 +#: wpvulnerability-adminms.php:3820 +msgid "Cache Duration" +msgstr "Durată cache" + +#: wpvulnerability-admin.php:3636 +#: wpvulnerability-adminms.php:3830 +msgid "Log Retention" +msgstr "Retenție jurnale" + +#: wpvulnerability-admin.php:3646 +#: wpvulnerability-adminms.php:3840 +msgid "Components Analyzed" +msgstr "Componente analizate" + +#: wpvulnerability-admin.php:3661 +#: wpvulnerability-adminms.php:3855 +msgid "Notification Email" +msgstr "E-mail de notificare" + +#: wpvulnerability-admin.php:3682 +#: wpvulnerability-adminms.php:3876 +msgid "Slack Webhook" +msgstr "Webhook Slack" + +#: wpvulnerability-admin.php:3692 +#: wpvulnerability-admin.php:3712 +#: wpvulnerability-admin.php:3732 +#: wpvulnerability-admin.php:3752 +#: wpvulnerability-adminms.php:3886 +#: wpvulnerability-adminms.php:3906 +#: wpvulnerability-adminms.php:3926 +#: wpvulnerability-adminms.php:3946 +msgid "Configured & Enabled" +msgstr "Configurat și activat" + +#: wpvulnerability-admin.php:3694 +#: wpvulnerability-admin.php:3714 +#: wpvulnerability-admin.php:3734 +#: wpvulnerability-admin.php:3754 +#: wpvulnerability-adminms.php:3888 +#: wpvulnerability-adminms.php:3908 +#: wpvulnerability-adminms.php:3928 +#: wpvulnerability-adminms.php:3948 +msgid "Configured (Disabled)" +msgstr "Configurat (Dezactivat)" + +#: wpvulnerability-admin.php:3696 +#: wpvulnerability-admin.php:3716 +#: wpvulnerability-admin.php:3736 +#: wpvulnerability-admin.php:3756 +#: wpvulnerability-adminms.php:3890 +#: wpvulnerability-adminms.php:3910 +#: wpvulnerability-adminms.php:3930 +#: wpvulnerability-adminms.php:3950 +msgid "Not configured" +msgstr "Neconfigurat" + +#: wpvulnerability-admin.php:3703 +#: wpvulnerability-adminms.php:3897 +msgid "Teams Webhook" +msgstr "Webhook Teams" + +#: wpvulnerability-admin.php:3723 +#: wpvulnerability-adminms.php:3917 +msgid "Discord Webhook" +msgstr "Webhook Discord" + +#: wpvulnerability-admin.php:3743 +#: wpvulnerability-adminms.php:3937 +msgid "Telegram Bot" +msgstr "Bot Telegram" + +#: wpvulnerability-admin.php:3788 +#: wpvulnerability-adminms.php:3982 +msgid "Cron Status" +msgstr "Status cron" + +#: wpvulnerability-admin.php:3792 +#: wpvulnerability-adminms.php:3986 +msgid "Update Database" +msgstr "Actualizați baza de date" + +#. translators: %s: date and time +#: wpvulnerability-admin.php:3797 +#: wpvulnerability-admin.php:3810 +#: wpvulnerability-adminms.php:3991 +#: wpvulnerability-adminms.php:4004 +#, php-format +msgid "Next run: %s" +msgstr "Următoarea rulare: %s" + +#: wpvulnerability-admin.php:3800 +#: wpvulnerability-admin.php:3813 +#: wpvulnerability-adminms.php:3994 +#: wpvulnerability-adminms.php:4007 +msgid "Not scheduled" +msgstr "Neprogramat" + +#: wpvulnerability-admin.php:3805 +#: wpvulnerability-adminms.php:3999 +msgid "Send Notification" +msgstr "Trimiteți notificarea" + +#: wpvulnerability-admin.php:3826 +#: wpvulnerability-adminms.php:4020 +msgid "Run Update Now" +msgstr "Rulați actualizarea acum" + +#: wpvulnerability-admin.php:3834 +#: wpvulnerability-adminms.php:4028 +msgid "Run Notification Now" +msgstr "Trimiteți notificarea acum" + +#: wpvulnerability-admin.php:3840 +#: wpvulnerability-adminms.php:4034 +msgid "You do not have permission to run these actions." +msgstr "Nu aveți permisiunea de a rula aceste acțiuni." + +#: wpvulnerability-admin.php:3859 +#: wpvulnerability-adminms.php:4053 +msgid "API Testing" +msgstr "Testare API" + +#: wpvulnerability-admin.php:3862 +#: wpvulnerability-adminms.php:4056 +msgid "Test API connectivity for each component. Click a button to send a test request." +msgstr "Testați conectivitatea API pentru fiecare componentă. Faceți clic pe un buton pentru a trimite o cerere de test." + +#. translators: %s: component name +#: wpvulnerability-admin.php:3869 +#: wpvulnerability-adminms.php:4063 +#, php-format +msgid "Test %s" +msgstr "Testați %s" + +#: wpvulnerability-admin.php:3884 +#: wpvulnerability-adminms.php:4078 +msgid "Testing..." +msgstr "Se testează..." + +#: wpvulnerability-admin.php:3900 +#: wpvulnerability-adminms.php:4094 +msgid "HTTP Code:" +msgstr "Cod HTTP:" + +#: wpvulnerability-admin.php:3901 +#: wpvulnerability-adminms.php:4095 +msgid "Response Time:" +msgstr "Timp de răspuns:" + +#: wpvulnerability-admin.php:3903 +#: wpvulnerability-adminms.php:4097 +msgid "Response Preview" +msgstr "Previzualizare răspuns" + +#: wpvulnerability-admin.php:3910 +#: wpvulnerability-admin.php:3914 +#: wpvulnerability-adminms.php:4104 +#: wpvulnerability-adminms.php:4108 +msgid "Test" +msgstr "Test" + +#: wpvulnerability-admin.php:3913 +#: wpvulnerability-adminms.php:4107 +msgid "Error:" +msgstr "Eroare:" + +#: wpvulnerability-admin.php:3913 +#: wpvulnerability-adminms.php:4107 +msgid "AJAX request failed." +msgstr "Cererea AJAX a eșuat." + +#: wpvulnerability-admin.php:3922 +#: wpvulnerability-adminms.php:4116 +msgid "You do not have permission to test API connectivity." +msgstr "Nu aveți permisiunea de a testa conectivitatea API." + +#: wpvulnerability-admin.php:3943 +#: wpvulnerability-adminms.php:4137 +msgid "Database Options Viewer" +msgstr "Vizualizator opțiuni bază de date" + +#: wpvulnerability-admin.php:3944 +#: wpvulnerability-adminms.php:4138 +msgid "View the raw data stored in WordPress options." +msgstr "Vizualizați datele brute stocate în opțiunile WordPress." + +#: wpvulnerability-admin.php:3950 +#: wpvulnerability-adminms.php:4144 +msgid "Select an option..." +msgstr "Selectați o opțiune..." + +#: wpvulnerability-admin.php:3969 +#: wpvulnerability-adminms.php:4163 +msgid "Option not found or empty." +msgstr "Opțiunea nu a fost găsită sau este goală." + +#: wpvulnerability-admin.php:3987 +#: wpvulnerability-adminms.php:4182 +msgid "Quick Actions" +msgstr "Acțiuni rapide" + +#: wpvulnerability-admin.php:3988 +#: wpvulnerability-adminms.php:4183 +msgid "Perform debugging actions. Use with caution." +msgstr "Efectuați acțiuni de depanare. Utilizați cu precauție." + +#: wpvulnerability-admin.php:3992 +#: wpvulnerability-adminms.php:4187 +msgid "Are you sure you want to clear all caches?" +msgstr "Sigur doriți să ștergeți toate cache-urile?" + +#: wpvulnerability-admin.php:3996 +#: wpvulnerability-adminms.php:4191 +msgid "Clear All Caches" +msgstr "Ștergeți toate cache-urile" + +#: wpvulnerability-admin.php:4000 +#: wpvulnerability-adminms.php:4195 +msgid "Are you sure you want to reset signatures?" +msgstr "Sigur doriți să resetați semnăturile?" + +#: wpvulnerability-admin.php:4004 +#: wpvulnerability-adminms.php:4199 +msgid "Reset Signatures" +msgstr "Resetați semnăturile" + +#: wpvulnerability-admin.php:4012 +#: wpvulnerability-adminms.php:4207 +msgid "Export Debug Info" +msgstr "Exportați informații de depanare" + +#: wpvulnerability-admin.php:4018 +#: wpvulnerability-adminms.php:4213 +msgid "You do not have permission to perform these actions." +msgstr "Nu aveți permisiunea de a efectua aceste acțiuni." + +#: wpvulnerability-adminms.php:101 +#: wpvulnerability-adminms.php:199 +msgid "Settings saved." +msgstr "Setările au fost salvate." + +#: wpvulnerability-adminms.php:277 +msgid "WPVulnerability cron events have been repaired across the network." +msgstr "Evenimentele cron ale WPVulnerability au fost reparate în întreaga rețea." + +#: wpvulnerability-adminms.php:3512 +msgid "You do not have permission to access this page." +msgstr "Nu aveți permisiunea de a accesa această pagină." + +#. translators: 1: core version +#: wpvulnerability-core.php:33 +#, php-format +msgid "WordPress %1$s has a known vulnerability that may be affecting your installed version." +msgstr "WordPress %1$s are o vulnerabilitate cunoscută care poate afecta versiunea dumneavoastră instalată." + +#: wpvulnerability-core.php:115 +#: wpvulnerability-plugins.php:207 +#: wpvulnerability-process.php:335 +#: wpvulnerability-process.php:443 +#: wpvulnerability-process.php:529 +#: wpvulnerability-themes.php:173 +#: wpvulnerability-themes.php:469 +msgid "Actively exploited" +msgstr "Exploatată activ" + +#: wpvulnerability-core.php:122 +#: wpvulnerability-plugins.php:214 +#: wpvulnerability-process.php:342 +#: wpvulnerability-process.php:450 +#: wpvulnerability-themes.php:180 +#: wpvulnerability-themes.php:476 +msgid "Public exploit" +msgstr "Exploit public" + +#: wpvulnerability-core.php:125 +#: wpvulnerability-plugins.php:217 +#: wpvulnerability-process.php:345 +#: wpvulnerability-process.php:453 +#: wpvulnerability-themes.php:183 +#: wpvulnerability-themes.php:479 +msgid "Automatable" +msgstr "Automatizabil" + +#: wpvulnerability-core.php:139 +#: wpvulnerability-plugins.php:245 +#: wpvulnerability-process.php:371 +#: wpvulnerability-process.php:469 +#: wpvulnerability-process.php:544 +#: wpvulnerability-themes.php:211 +#: wpvulnerability-themes.php:503 +msgid "References:" +msgstr "Referințe:" + +#: wpvulnerability-debug.php:399 +msgid "Invalid component specified." +msgstr "Componentă specificată invalidă." + +#: wpvulnerability-debug.php:423 +msgid "Version not detected for this component." +msgstr "Versiunea nu a fost detectată pentru această componentă." + +#: wpvulnerability-debug.php:453 +msgid "API request successful." +msgstr "Cererea API a fost efectuată cu succes." + +#. translators: %d: HTTP status code +#: wpvulnerability-debug.php:469 +#, php-format +msgid "API returned HTTP code %d." +msgstr "API a returnat codul HTTP %d." + +#: wpvulnerability-general.php:355 +msgid "WPVulnerability Logs" +msgstr "Jurnale WPVulnerability" + +#: wpvulnerability-general.php:356 +msgid "WPVulnerability Log" +msgstr "Jurnal WPVulnerability" + +#: wpvulnerability-general.php:1873 +#: wpvulnerability-general.php:1874 +msgid "Low" +msgstr "Scăzut" + +#: wpvulnerability-general.php:1875 +#: wpvulnerability-general.php:1876 +msgid "Medium" +msgstr "Mediu" + +#: wpvulnerability-general.php:1877 +#: wpvulnerability-general.php:1878 +msgid "High" +msgstr "Ridicat" + +#: wpvulnerability-general.php:1879 +#: wpvulnerability-general.php:1880 +msgid "Critical" +msgstr "Critic" + +#: wpvulnerability-general.php:2684 +msgid "WPVulnerability Shell Logs" +msgstr "Jurnale shell WPVulnerability" + +#: wpvulnerability-general.php:2685 +msgid "WPVulnerability Shell Log" +msgstr "Jurnal shell WPVulnerability" + +#: wpvulnerability-notifications.php:30 +msgid "Every week" +msgstr "În fiecare săptămână" + +#: wpvulnerability-notifications.php:57 +msgid "Every day" +msgstr "În fiecare zi" + +#: wpvulnerability-notifications.php:84 +msgid "Invalid request." +msgstr "Cerere invalidă." + +#: wpvulnerability-notifications.php:104 +msgid "You have unsubscribed from WPVulnerability notifications." +msgstr "V-ați dezabonat de la notificările WPVulnerability." + +#. translators: %1$s the website of Database, %2$s database site name. +#: wpvulnerability-notifications.php:289 +#, php-format +msgid "Learn more about the WordPress Vulnerability Database API at %2$s" +msgstr "Aflați mai multe despre API-ul bazei de date de vulnerabilități WordPress la %2$s" + +#. translators: %1$s unsubscribe URL. +#: wpvulnerability-notifications.php:300 +#, php-format +msgid "Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings." +msgstr "Doriți să nu mai primiți aceste alerte? Dezabonați-vă sau schimbați frecvența e-mailurilor la Niciodată în setările WPVulnerability." + +#: wpvulnerability-notifications.php:595 +msgid "No vulnerabilities found" +msgstr "Nu au fost găsite vulnerabilități" + +#: wpvulnerability-notifications.php:596 +msgid "This is likely a test. The site does not have vulnerabilities." +msgstr "Acesta este probabil un test. Site-ul nu are vulnerabilități." + +#: wpvulnerability-notifications.php:601 +msgid "Core vulnerabilities" +msgstr "Vulnerabilități nucleu" + +#: wpvulnerability-notifications.php:607 +msgid "Plugins vulnerabilities" +msgstr "Vulnerabilități plugin-uri" + +#: wpvulnerability-notifications.php:613 +msgid "Themes vulnerabilities" +msgstr "Vulnerabilități teme" + +#: wpvulnerability-notifications.php:619 +msgid "PHP vulnerabilities" +msgstr "Vulnerabilități PHP" + +#: wpvulnerability-notifications.php:625 +msgid "Apache HTTPD vulnerabilities" +msgstr "Vulnerabilități Apache HTTPD" + +#: wpvulnerability-notifications.php:631 +msgid "Nginx vulnerabilities" +msgstr "Vulnerabilități Nginx" + +#: wpvulnerability-notifications.php:637 +msgid "MariaDB vulnerabilities" +msgstr "Vulnerabilități MariaDB" + +#: wpvulnerability-notifications.php:643 +msgid "MySQL vulnerabilities" +msgstr "Vulnerabilități MySQL" + +#: wpvulnerability-notifications.php:649 +msgid "ImageMagick vulnerabilities" +msgstr "Vulnerabilități ImageMagick" + +#: wpvulnerability-notifications.php:655 +msgid "curl vulnerabilities" +msgstr "Vulnerabilități curl" + +#: wpvulnerability-notifications.php:661 +msgid "memcached vulnerabilities" +msgstr "Vulnerabilități memcached" + +#: wpvulnerability-notifications.php:667 +msgid "Redis vulnerabilities" +msgstr "Vulnerabilități Redis" + +#: wpvulnerability-notifications.php:673 +msgid "SQLite vulnerabilities" +msgstr "Vulnerabilități SQLite" + +#. translators: Site name. +#: wpvulnerability-notifications.php:696 +#, php-format +msgid "Vulnerability found: %s" +msgstr "Vulnerabilitate găsită: %s" + +#: wpvulnerability-notifications.php:700 +msgid "Vulnerability found" +msgstr "Vulnerabilitate găsită" + +#. translators: 1: Plugin name +#. translators: 1: theme name +#: wpvulnerability-plugins.php:116 +#: wpvulnerability-themes.php:82 +#, php-format +msgid "%1$s has a known vulnerability that may be affecting your installed version." +msgstr "%1$s are o vulnerabilitate cunoscută care poate afecta versiunea dumneavoastră instalată." + +#: wpvulnerability-plugins.php:230 +#: wpvulnerability-process.php:358 +msgid "This plugin is closed. Please replace it with another." +msgstr "Acest plugin este închis. Înlocuiți-l cu altul." + +#: wpvulnerability-plugins.php:233 +#: wpvulnerability-process.php:361 +msgid "This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates." +msgstr "Această vulnerabilitate pare să nu fie remediată. Fiți atent la actualizările viitoare ale plugin-ului." + +#: wpvulnerability-plugins.php:570 +msgid "It hasn't been updated in over a year." +msgstr "Nu a fost actualizat de mai mult de un an." + +#: wpvulnerability-plugins.php:576 +msgid "It may no longer be available (closed?)." +msgstr "Este posibil să nu mai fie disponibil (închis?)." + +#: wpvulnerability-plugins.php:614 +#: wpvulnerability-plugins.php:621 +msgid "Last updated on" +msgstr "Ultima actualizare la" + +#. translators: the number of vulnerabilities. +#: wpvulnerability-plugins.php:764 +#: wpvulnerability-themes.php:704 +#, php-format +msgid "Vulnerabilities (%d)" +msgstr "Vulnerabilități (%d)" + +#. translators: %s: software name. +#: wpvulnerability-process.php:601 +#, php-format +msgid "%s running" +msgstr "%s rulează" + +#: wpvulnerability-process.php:611 +#: wpvulnerability-process.php:792 +msgid "End of Life" +msgstr "Sfârșit de viață" + +#: wpvulnerability-process.php:613 +#: wpvulnerability-process.php:618 +msgid "End of life:" +msgstr "Sfârșit de viață:" + +#: wpvulnerability-process.php:616 +msgid "Supported" +msgstr "Suportat" + +#: wpvulnerability-process.php:652 +msgid "Plugin" +msgstr "Plugin" + +#: wpvulnerability-process.php:721 +msgid "Theme" +msgstr "Temă" + +#. translators: %s: end-of-life date +#: wpvulnerability-process.php:790 +#, php-format +msgid "End of life: %s" +msgstr "Sfârșit de viață: %s" + +#: wpvulnerability-process.php:795 +msgid "EOL" +msgstr "EOL" + +#: wpvulnerability-run.php:30 +msgid "Network Settings" +msgstr "Setări rețea" + +#: wpvulnerability-run.php:731 +#: wpvulnerability-run.php:781 +#: wpvulnerability-run.php:791 +#: wpvulnerability-run.php:836 +msgid "Vulnerabilities" +msgstr "Vulnerabilități" + +#: wpvulnerability-schedule.php:30 +msgid "Every 6 hours" +msgstr "La fiecare 6 ore" + +#: wpvulnerability-schedule.php:303 +msgid "Database updates" +msgstr "Actualizări bază de date" + +#: wpvulnerability-schedule.php:309 +msgid "Log cleanup" +msgstr "Curățare jurnale" + +#: wpvulnerability-schedule.php:439 +msgid "Notifications are scheduled, but settings currently disable them. Please review the notifications tab." +msgstr "Notificările sunt programate, dar setările le dezactivează în prezent. Consultați fila de notificări." + +#: wpvulnerability-schedule.php:442 +msgid "This event should not be scheduled for this site." +msgstr "Acest eveniment nu ar trebui programat pentru acest site." + +#: wpvulnerability-schedule.php:446 +msgid "Not expected for this site." +msgstr "Neașteptat pentru acest site." + +#: wpvulnerability-schedule.php:450 +msgid "No instances found." +msgstr "Nu au fost găsite instanțe." + +#: wpvulnerability-schedule.php:456 +msgid "Scheduled with an unexpected interval." +msgstr "Programat cu un interval neașteptat." + +#: wpvulnerability-schedule.php:460 +msgid "Multiple instances detected." +msgstr "Au fost detectate instanțe multiple." + +#: wpvulnerability-schedule.php:465 +msgid "Scheduled as expected." +msgstr "Programat conform așteptărilor." + +#: wpvulnerability-sitehealth.php:22 +msgid "There aren't plugins vulnerabilities" +msgstr "Nu există vulnerabilități ale plugin-urilor" + +#: wpvulnerability-sitehealth.php:30 +msgid "Shows possible vulnerabilities that exist in installed plugins." +msgstr "Afișează posibilele vulnerabilități existente în plugin-urile instalate." + +#. translators: Number of plugins vulnerabilities. +#: wpvulnerability-sitehealth.php:43 +#, php-format +msgid "There is %d plugin with vulnerabilities" +msgid_plural "There are %d plugins with vulnerabilities" +msgstr[0] "Există %d plugin cu vulnerabilități" +msgstr[1] "Există %d plugin-uri cu vulnerabilități" +msgstr[2] "Există %d de plugin-uri cu vulnerabilități" + +#: wpvulnerability-sitehealth.php:49 +msgid "We've detected potential vulnerabilities in installed plugins. Please check them and keep them updated." +msgstr "Am detectat vulnerabilități potențiale în plugin-urile instalate. Verificați-le și mențineți-le actualizate." + +#: wpvulnerability-sitehealth.php:57 +msgid "Update plugins" +msgstr "Actualizați plugin-urile" + +#: wpvulnerability-sitehealth.php:74 +msgid "There aren't themes vulnerabilities" +msgstr "Nu există vulnerabilități ale temelor" + +#: wpvulnerability-sitehealth.php:82 +msgid "Shows possible vulnerabilities that exist in installed themes." +msgstr "Afișează posibilele vulnerabilități existente în temele instalate." + +#. translators: Number of themes vulnerabilities. +#: wpvulnerability-sitehealth.php:95 +#, php-format +msgid "There is %d theme with vulnerabilities" +msgid_plural "There are %d themes with vulnerabilities" +msgstr[0] "Există %d temă cu vulnerabilități" +msgstr[1] "Există %d teme cu vulnerabilități" +msgstr[2] "Există %d de teme cu vulnerabilități" + +#: wpvulnerability-sitehealth.php:101 +msgid "We've detected potential vulnerabilities in installed themes. Please check them and keep them updated." +msgstr "Am detectat vulnerabilități potențiale în temele instalate. Verificați-le și mențineți-le actualizate." + +#: wpvulnerability-sitehealth.php:109 +msgid "Update themes" +msgstr "Actualizați temele" + +#: wpvulnerability-sitehealth.php:126 +msgid "There aren't WordPress vulnerabilities" +msgstr "Nu există vulnerabilități WordPress" + +#: wpvulnerability-sitehealth.php:134 +msgid "Shows possible vulnerabilities existing in the WordPress core." +msgstr "Afișează posibilele vulnerabilități existente în nucleul WordPress." + +#. translators: Number of core vulnerabilities. +#: wpvulnerability-sitehealth.php:147 +#, php-format +msgid "There is %d core vulnerability" +msgid_plural "There are %d core vulnerabilities" +msgstr[0] "Există %d vulnerabilitate de nucleu" +msgstr[1] "Există %d vulnerabilități de nucleu" +msgstr[2] "Există %d de vulnerabilități de nucleu" + +#: wpvulnerability-sitehealth.php:153 +msgid "We've detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated." +msgstr "Am detectat vulnerabilități potențiale în această instalare WordPress. Verificați-le și mențineți instalarea actualizată." + +#: wpvulnerability-sitehealth.php:161 +msgid "Update WordPress" +msgstr "Actualizați WordPress" + +#: wpvulnerability-sitehealth.php:180 +msgid "Nginx" +msgstr "Nginx" + +#: wpvulnerability-sitehealth.php:189 +msgid "Invalid software type" +msgstr "Tip de software invalid" + +#: wpvulnerability-sitehealth.php:192 +msgid "Error" +msgstr "Eroare" + +#: wpvulnerability-sitehealth.php:197 +msgid "The specified software type is not valid." +msgstr "Tipul de software specificat nu este valid." + +#. translators: name of the software. +#: wpvulnerability-sitehealth.php:207 +#, php-format +msgid "There aren't %s vulnerabilities" +msgstr "Nu există vulnerabilități %s" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:216 +#, php-format +msgid "Shows possible vulnerabilities existing in %s." +msgstr "Afișează posibilele vulnerabilități existente în %s." + +#. translators: Software and number of vulnerabilities. +#: wpvulnerability-sitehealth.php:229 +#, php-format +msgid "There is %1$d %2$s vulnerability" +msgid_plural "There are %1$d %2$s vulnerabilities" +msgstr[0] "Există %1$d vulnerabilitate %2$s" +msgstr[1] "Există %1$d vulnerabilități %2$s" +msgstr[2] "Există %1$d de vulnerabilități %2$s" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:237 +#, php-format +msgid "We've detected potential vulnerabilities in %s. Please check them and keep your installation updated." +msgstr "Am detectat vulnerabilități potențiale în %s. Verificați-le și mențineți instalarea actualizată." + +#: wpvulnerability-sitehealth.php:246 +msgid "How to update PHP" +msgstr "Cum să actualizați PHP" + +#: wpvulnerability-sitehealth.php:386 +msgid "WPVulnerability Core" +msgstr "WPVulnerability Core" + +#: wpvulnerability-sitehealth.php:394 +msgid "WPVulnerability Themes" +msgstr "WPVulnerability Themes" + +#: wpvulnerability-sitehealth.php:402 +msgid "WPVulnerability Plugins" +msgstr "WPVulnerability Plugins" + +#: wpvulnerability-sitehealth.php:410 +msgid "WPVulnerability PHP" +msgstr "WPVulnerability PHP" + +#: wpvulnerability-sitehealth.php:418 +msgid "WPVulnerability Apache HTTPD" +msgstr "WPVulnerability Apache HTTPD" + +#: wpvulnerability-sitehealth.php:426 +msgid "WPVulnerability Nginx" +msgstr "WPVulnerability Nginx" + +#: wpvulnerability-sitehealth.php:434 +msgid "WPVulnerability MariaDB" +msgstr "WPVulnerability MariaDB" + +#: wpvulnerability-sitehealth.php:442 +msgid "WPVulnerability MySQL" +msgstr "WPVulnerability MySQL" + +#: wpvulnerability-sitehealth.php:450 +msgid "WPVulnerability ImageMagick" +msgstr "WPVulnerability ImageMagick" + +#: wpvulnerability-sitehealth.php:458 +msgid "WPVulnerability curl" +msgstr "WPVulnerability curl" + +#: wpvulnerability-sitehealth.php:466 +msgid "WPVulnerability memcached" +msgstr "WPVulnerability memcached" + +#: wpvulnerability-sitehealth.php:474 +msgid "WPVulnerability redis" +msgstr "WPVulnerability redis" + +#: wpvulnerability-sitehealth.php:482 +msgid "WPVulnerability sqlite" +msgstr "WPVulnerability sqlite" + +#: wpvulnerability-themes.php:196 +#: wpvulnerability-themes.php:492 +msgid "This theme is closed. Please replace it with another." +msgstr "Această temă este închisă. Înlocuiți-o cu alta." + +#: wpvulnerability-themes.php:199 +#: wpvulnerability-themes.php:495 +msgid "This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates." +msgstr "Această vulnerabilitate pare să nu fie remediată. Fiți atent la actualizările viitoare ale temei." + +#: wpvulnerability-themes.php:391 +msgid "This theme has known vulnerabilities that may be affecting your installed version." +msgstr "Această temă are vulnerabilități cunoscute care pot afecta versiunea dumneavoastră instalată." diff --git a/languages/wpvulnerability-ru.l10n.php b/languages/wpvulnerability-ru.l10n.php new file mode 100644 index 0000000..fcdc9bd --- /dev/null +++ b/languages/wpvulnerability-ru.l10n.php @@ -0,0 +1,2 @@ +NULL,'plural-forms'=>'nplurals=3; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : ((n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14)) ? 1 : 2);','language'=>'ru','project-id-version'=>'Plugins - WPVulnerability - Development (trunk)','pot-creation-date'=>'2026-05-27T16:32:22+00:00','po-revision-date'=>'2026-05-27 00:00+0000','x-generator'=>'GlotPress/4.0.3','messages'=>['WPVulnerability'=>'WPVulnerability','https://www.wpvulnerability.com/plugin/'=>'https://www.wpvulnerability.com/plugin/','Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API.'=>'Получайте информацию о возможных уязвимостях в Вашем WordPress от WordPress Vulnerability Database API.','ROBOTSTXT'=>'ROBOTSTXT','https://www.robotstxt.es/'=>'https://www.robotstxt.es/','This command requires a WordPress administrator. Run with --user=.'=>'Эта команда требует прав администратора WordPress. Запустите с --user=.','No core vulnerabilities found.'=>'Уязвимостей ядра не найдено.','No plugin vulnerabilities found.'=>'Уязвимостей плагинов не найдено.','No theme vulnerabilities found.'=>'Уязвимостей тем не найдено.','No %s vulnerabilities found.'=>'Уязвимостей %s не найдено.','Data from source has been reloaded.'=>'Данные из источника были перезагружены.','You do not have permission to reload data.'=>'У вас нет разрешения на перезагрузку данных.','Test email has been sent.'=>'Тестовое письмо отправлено.','Test email has failed. Please, check your email settings.'=>'Тестовое письмо не удалось отправить. Пожалуйста, проверьте настройки Вашей электронной почты.','You do not have permission to send test emails.'=>'У вас нет разрешения на отправку тестовых писем.','WPVulnerability cron events have been repaired.'=>'Cron-события WPVulnerability были восстановлены.','You do not have permission to repair cron events.'=>'У вас нет разрешения на восстановление cron-событий.','All logs have been deleted.'=>'Все журналы были удалены.','You do not have permission to delete logs.'=>'У вас нет разрешения на удаление журналов.','Uninstall preference saved.'=>'Настройки удаления сохранены.','WPVulnerability has been reset to defaults and reloaded.'=>'WPVulnerability сброшен до настроек по умолчанию и перезагружен.','You do not have permission to reset WPVulnerability.'=>'У вас нет разрешения на сброс WPVulnerability.','All caches have been cleared.'=>'Все кэши были очищены.','You do not have permission to clear caches.'=>'У вас нет разрешения на очистку кэшей.','Plugin and theme signatures have been reset.'=>'Сигнатуры плагинов и тем были сброшены.','You do not have permission to reset signatures.'=>'У вас нет разрешения на сброс сигнатур.','You do not have permission to export debug information.'=>'У вас нет разрешения на экспорт отладочной информации.','Database update has been executed.'=>'Обновление базы данных выполнено.','You do not have permission to run database updates.'=>'У вас нет разрешения на запуск обновлений базы данных.','Notification has been sent.'=>'Уведомление отправлено.','Notification sending failed.'=>'Не удалось отправить уведомление.','You do not have permission to send notifications.'=>'У вас нет разрешения на отправку уведомлений.','Notifications'=>'Уведомления','Analysis'=>'Анализ','Logs'=>'Журналы','Security'=>'Безопасность','Tools'=>'Инструменты','Debug'=>'Отладка','About'=>'О плагине','Notification Settings'=>'Настройки уведомлений','Configure how and when you want to receive vulnerability notifications.'=>'Настройте, как и когда вы хотите получать уведомления об уязвимостях.','Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software.'=>'Будьте в курсе уязвимостей безопасности в вашей установке WordPress, плагинах, темах и серверном программном обеспечении.','Cache Expiration Time'=>'Время истечения кэша','FORCED'=>'ПРИНУДИТЕЛЬНО','How long to cache vulnerability data before refreshing from the API.'=>'Как долго кэшировать данные об уязвимостях перед обновлением из API.','%d hour'=>'%d час' . "\0" . '%d часа' . "\0" . '%d часов','You can force the cache time via wp-config.php constant. Learn more →'=>'Вы можете принудительно задать время кэша через константу wp-config.php. Узнать больше →','Notification Frequency'=>'Частота уведомлений','Choose how often you want to receive vulnerability notifications.'=>'Выберите, как часто вы хотите получать уведомления об уязвимостях.','Never - Disable automatic notifications'=>'Никогда — отключить автоматические уведомления','Daily - Receive notifications every day'=>'Ежедневно — получать уведомления каждый день','Weekly - Receive notifications once a week'=>'Еженедельно — получать уведомления раз в неделю','Day:'=>'День:','Monday'=>'Понедельник','Tuesday'=>'Вторник','Wednesday'=>'Среда','Thursday'=>'Четверг','Friday'=>'Пятница','Saturday'=>'Суббота','Sunday'=>'Воскресенье','Time:'=>'Время:','(24-hour format, server timezone)'=>'(24-часовой формат, часовой пояс сервера)','Notification Channels'=>'Каналы уведомлений','Select where you want to receive notifications.'=>'Выберите, где вы хотите получать уведомления.','Email'=>'Email','Email Addresses (separated by commas):'=>'Адреса электронной почты (через запятую):','Default:'=>'По умолчанию:','Slack'=>'Slack','Slack Webhook URL:'=>'URL вебхука Slack:','Learn how to create a Slack incoming webhook →'=>'Узнайте, как создать входящий вебхук Slack →','Microsoft Teams'=>'Microsoft Teams','Teams Webhook URL:'=>'URL вебхука Teams:','Learn how to create a Teams incoming webhook →'=>'Узнайте, как создать входящий вебхук Teams →','Discord'=>'Discord','Discord Webhook URL:'=>'URL вебхука Discord:','Learn how to create a Discord webhook →'=>'Узнайте, как создать вебхук Discord →','Telegram'=>'Telegram','Telegram Bot Token:'=>'Токен бота Telegram:','Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Формат: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','Telegram Chat ID:'=>'ID чата Telegram:','Learn how to create a Telegram bot and get Chat ID →'=>'Узнайте, как создать бота Telegram и получить ID чата →','Save Notification Settings'=>'Сохранить настройки уведомлений','WordPress Components'=>'Компоненты WordPress','WordPress Core'=>'Ядро WordPress','Plugins'=>'Плагины','Themes'=>'Темы','Software & Languages'=>'Программное обеспечение и языки','PHP'=>'PHP','Web Servers'=>'Веб-серверы','Apache HTTPD'=>'Apache HTTPD','nginx'=>'nginx','Databases'=>'Базы данных','MariaDB'=>'MariaDB','MySQL'=>'MySQL','SQLite'=>'SQLite','Additional Tools'=>'Дополнительные инструменты','ImageMagick'=>'ImageMagick','curl'=>'curl','memcached'=>'memcached','Redis'=>'Redis','Component Analysis Settings'=>'Настройки анализа компонентов','Enable or disable vulnerability analysis for specific components.'=>'Включить или отключить анализ уязвимостей для конкретных компонентов.','Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red.'=>'Отметьте компоненты, которые вы хотите СКРЫТЬ от сканирования уязвимостей и отчётов. Не отмеченные компоненты будут активно анализироваться. Компоненты с активным анализом показаны зелёным, скрытые — красным.','Hidden (forced by constant)'=>'Скрыто (принудительно константой)','🔴 Analysis disabled'=>'🔴 Анализ отключён','🟢 Analysis active'=>'🟢 Анализ активен','Tip:'=>'Совет:','You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →'=>'Вы можете принудительно отключить компоненты через константы wp-config.php. Узнайте больше о принудительном скрытии проверок →','Save Analysis Settings'=>'Сохранить настройки анализа','« Previous'=>'« Предыдущая','Next »'=>'Следующая »','Log entry not found or has been removed.'=>'Запись журнала не найдена или была удалена.','Unable to load the requested log entry.'=>'Не удалось загрузить запрошенную запись журнала.','Log Configuration'=>'Конфигурация журнала','Total Logs'=>'Всего записей в журнале','Retention Period'=>'Период хранения','Disabled'=>'Отключено','%d day'=>'%d день' . "\0" . '%d дня' . "\0" . '%d дней','Log Retention Period'=>'Период хранения журнала','None (Disabled)'=>'Нет (отключено)','This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant.'=>'Это значение задано константой WPVULNERABILITY_LOG_RETENTION_DAYS.','Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted.'=>'Выберите, как долго WPVulnerability должен хранить журналы ответов API. Устаревшие журналы удаляются автоматически.','Save Configuration'=>'Сохранить конфигурацию','Log retention is currently disabled.'=>'Хранение журнала в настоящее время отключено.','API responses are not being saved.'=>'Ответы API не сохраняются.','Log Details'=>'Детали записи журнала','Date'=>'Дата','API Endpoint'=>'Конечная точка API','API Response'=>'Ответ API','Back to Logs'=>'Назад к журналам','No logs available'=>'Журналы недоступны','API response logs will appear here once the vulnerability scanner runs.'=>'Журналы ответов API появятся здесь после запуска сканера уязвимостей.','API Response Logs'=>'Журналы ответов API','Show:'=>'Показать:','Apply'=>'Применить','Showing %1$s–%2$s of %3$s'=>'Показано %1$s–%2$s из %3$s','Actions'=>'Действия','View'=>'Просмотр','Danger Zone'=>'Опасная зона','Permanently delete all API response logs. This action cannot be undone.'=>'Навсегда удалить все журналы ответов API. Это действие нельзя отменить.','Are you sure you want to delete all logs? This action cannot be undone.'=>'Вы уверены, что хотите удалить все журналы? Это действие нельзя отменить.','Delete All Logs'=>'Удалить все журналы','Reload Data from API'=>'Перезагрузить данные из API','Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information.'=>'Перезагрузить всю информацию о ядре, плагинах, темах и других компонентах непосредственно из API для получения обновлённых данных. Это очистит кэш и загрузит свежую информацию об уязвимостях.','Reload Data'=>'Перезагрузка данных','Test Email Notifications'=>'Тестирование уведомлений по email','Send a test email notification with current vulnerability data to verify your email configuration is working correctly.'=>'Отправьте тестовое уведомление по email с текущими данными об уязвимостях, чтобы убедиться в правильной работе конфигурации email.','From address (configured via constant):'=>'Адрес отправителя (задан через константу):','From address (default):'=>'Адрес отправителя (по умолчанию):','Learn how to customize the email sender address →'=>'Узнайте, как настроить адрес отправителя email →','Send Test Email'=>'Отправить тестовое письмо','WP-Cron Status'=>'Статус WP-Cron','View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly.'=>'Просмотр и управление запланированными событиями WP-Cron. Сравните ожидаемое расписание с фактическими cron-заданиями для проверки правильной работы автоматических задач.','No cron data available.'=>'Данные cron недоступны.','Hook'=>'Хук','Expected'=>'Ожидается','Found'=>'Найдено','Next Run'=>'Следующий запуск','Status'=>'Статус','Not expected'=>'Не ожидается','None'=>'отсутствует','OK'=>'OK','⚠️ Unexpected WPVulnerability Events'=>'⚠️ Непредвиденные события WPVulnerability','No interval'=>'Без интервала','Next:'=>'Следующий:','Repair Cron Events'=>'Восстановить cron-события','Uninstall Data'=>'Данные при удалении','By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall.'=>'По умолчанию все данные плагина сохраняются при удалении WPVulnerability. Включите параметр ниже только в том случае, если вы хотите, чтобы все настройки, журналы и кэшированные данные были безвозвратно удалены при удалении.','Delete all plugin data on uninstall'=>'Удалить все данные плагина при удалении','Default: unchecked (data preserved). Check only if you want a clean removal.'=>'По умолчанию: не отмечено (данные сохраняются). Отмечайте только если хотите чистое удаление.','Save preference'=>'Сохранить настройку','Reset WPVulnerability'=>'Сбросить WPVulnerability','Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API.'=>'Удалить все настройки WPVulnerability, кэшированные данные, журналы и запланированные события, затем восстановить настройки по умолчанию и перезагрузить данные из API.','This action cannot be undone.'=>'Это действие нельзя отменить.','Are you sure you want to reset all WPVulnerability data? This action cannot be undone.'=>'Вы уверены, что хотите сбросить все данные WPVulnerability? Это действие нельзя отменить.','Reset Plugin'=>'Сбросить плагин','Vulnerability Database Statistics'=>'Статистика базы данных уязвимостей','%s vulnerability'=>'%s уязвимость' . "\0" . '%s уязвимости' . "\0" . '%s уязвимостей','(%s product)'=>'(%s продукт)' . "\0" . '(%s продукта)' . "\0" . '(%s продуктов)','No data'=>'Нет данных','Database last updated: %s'=>'База данных последний раз обновлена: %s','Intelligence Sources'=>'Источники данных','Number of vulnerabilities contributed by each intelligence source.'=>'Количество уязвимостей, предоставленных каждым источником данных.','Source'=>'Источник','Core'=>'Ядро','Sponsors'=>'Спонсоры','No sponsor data available.'=>'Данные о спонсорах недоступны.','Contributors'=>'Участники разработки','No contributor data available.'=>'Данные об участниках недоступны.','You do not have sufficient permissions to access this page.'=>'У вас недостаточно прав для доступа к этой странице.','WPVulnerability settings'=>'Настройки WPVulnerability','Configure and save these settings to receive notifications.'=>'Конфигурируйте и сохраните эти настройки для получения уведомлений.','Configure and save these settings to hide vulnerabilities.'=>'Настройте и сохраните эти параметры, чтобы скрыть уязвимости.','Default administrator email'=>'Электронная почта администратора по умолчанию','Read more if you want to force the cache time.'=>'Прочитайте больше, если Вы хотите увеличить время кэширования.','Never'=>'Никогда','Daily'=>'Ежедневно','Weekly'=>'Еженедельно','Day'=>'День','Hour'=>'Час','Minute'=>'Минута','Read more about how to force the deactivation of an item.'=>'Подробнее о том, как принудительно деактивировать элемент.','Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com'=>'Неверный URL вебхука Slack. Должен быть действительным HTTPS URL с hooks.slack.com','Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com'=>'Неверный URL вебхука Microsoft Teams. Должен быть действительным HTTPS URL с office.com, office365.com или api.hooks.microsoft.com','Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com'=>'Неверный URL вебхука Discord. Должен быть действительным HTTPS URL с discord.com или discordapp.com','Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Неверный формат токена бота Telegram. Должен быть вида: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','All Clear'=>'Всё в порядке','%d Critical Issue Found'=>'Найдена %d критическая проблема' . "\0" . 'Найдено %d критические проблемы' . "\0" . 'Найдено %d критических проблем','%d Issue Found'=>'Найдена %d проблема' . "\0" . 'Найдено %d проблемы' . "\0" . 'Найдено %d проблем','Never checked'=>'Никогда не проверялось','%d minute ago'=>'%d минуту назад' . "\0" . '%d минуты назад' . "\0" . '%d минут назад','%d hour ago'=>'%d час назад' . "\0" . '%d часа назад' . "\0" . '%d часов назад','Last checked: %s'=>'Последняя проверка: %s','Refresh Now'=>'Обновить сейчас','No vulnerabilities detected'=>'Уязвимости не обнаружены','Your site is up to date and secure'=>'Ваш сайт обновлён и защищён','Server Software'=>'Серверное программное обеспечение','Site Health'=>'Здоровье сайта','Settings'=>'Настройки','WPVulnerability Status'=>'Статус WPVulnerability','Receive vulnerability notifications'=>'Получайте уведомления об уязвимостях','Cache expiration time'=>'Время истечения кэша','How often you want to receive notifications'=>'Как часто вы хотите получать уведомления','Where do you want to receive notifications?'=>'Где Вы хотите получать уведомления?','Email addresses to notify (separated by commas)'=>'Адреса email для уведомлений (через запятую)','Slack webhook URL'=>'URL вебхука Slack','Teams webhook URL'=>'URL вебхука Teams','Vulnerabilities to hide'=>'Уязвимые места, которые нужно скрывать','What do you want to hide?'=>'Что Вы хотите скрыть?','Standard (Hybrid Detection)'=>'Стандартный (гибридное обнаружение)','Strict (Extensions Only)'=>'Строгий (только расширения)','Disabled (No Detection)'=>'Отключено (без обнаружения)','Security Status'=>'Статус безопасности','Security Mode'=>'Режим безопасности','Shell Execution'=>'Выполнение команд оболочки','Enabled'=>'Включено','Audit Logging'=>'Журналирование аудита','Enabled (%d days)'=>'Включено (%d дней)','Total Log Entries'=>'Всего записей в журнале','Last Shell Execution'=>'Последнее выполнение команды оболочки','%s ago'=>'%s назад','Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.'=>'Настройте параметры безопасности через константы wp-config.php: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.','See security configuration documentation for details.'=>'Подробнее см. документацию по настройке безопасности.','Memcached'=>'Memcached','Imagick Extension'=>'Расширение Imagick','Redis Extension'=>'Расширение Redis','Memcached Extension'=>'Расширение Memcached','Memcache Extension'=>'Расширение Memcache','SQLite3 Extension'=>'Расширение SQLite3','PDO SQLite'=>'PDO SQLite','Shell Command'=>'Команда оболочки','Binary Check'=>'Проверка бинарного файла','Not Detected'=>'Не обнаружено','Software Detection Methods'=>'Методы обнаружения программного обеспечения','Shows which detection method was used for each software component and the reliability score.'=>'Показывает, какой метод обнаружения использовался для каждого программного компонента и оценку надёжности.','Component'=>'Компонент','Version'=>'Версия','Detection Method'=>'Метод обнаружения','Reliability'=>'Надёжность','Not detected'=>'Не обнаружено','Shell Execution Audit Logs'=>'Журналы аудита выполнения команд оболочки','Complete audit trail of shell command executions for security monitoring.'=>'Полный журнал аудита выполнения команд оболочки для мониторинга безопасности.','No shell execution logs found.'=>'Журналы выполнения команд оболочки не найдены.','Logs will appear here when shell commands are executed for software detection.'=>'Журналы появятся здесь, когда команды оболочки будут выполняться для обнаружения программного обеспечения.','Time'=>'Время','Command'=>'Команда','User'=>'Пользователь','Output'=>'Вывод','Showing the %d most recent log entries.'=>'Показано %d последних записей журнала.','Invalid nonce.'=>'Неверный nonce.','Insufficient permissions.'=>'Недостаточно прав.','No component specified.'=>'Компонент не указан.','Debug Information'=>'Отладочная информация','This tab is only visible when WP_DEBUG is enabled. Use with caution.'=>'Эта вкладка видна только при включённом WP_DEBUG. Используйте с осторожностью.','System Information'=>'Системная информация','WordPress Version'=>'Версия WordPress','Multisite'=>'Мультисайт','Yes'=>'Да','No'=>'Нет','Language'=>'Язык','PHP Version'=>'Версия PHP','PHP Extensions'=>'Расширения PHP','PHP Memory Limit'=>'Лимит памяти PHP','Database'=>'База данных','Web Server'=>'Веб-сервер','WP_DEBUG'=>'WP_DEBUG','WP_DEBUG_LOG'=>'WP_DEBUG_LOG','Path:'=>'Путь:','Size: %s'=>'Размер: %s','View Log File'=>'Просмотреть файл журнала','Log file is not web-accessible (outside wp-content)'=>'Файл журнала недоступен через веб (находится за пределами wp-content)','Log file does not exist yet'=>'Файл журнала ещё не существует','Plugin Version'=>'Версия плагина','Component Detection'=>'Обнаружение компонентов','Version Detected'=>'Версия обнаружена','Analyzed'=>'Проанализировано','Cache Status'=>'Статус кэша','Configuration Summary'=>'Сводка конфигурации','Cache Duration'=>'Продолжительность кэша','Log Retention'=>'Хранение журнала','Components Analyzed'=>'Проанализированные компоненты','Notification Email'=>'Email для уведомлений','Slack Webhook'=>'Вебхук Slack','Configured & Enabled'=>'Настроено и включено','Configured (Disabled)'=>'Настроено (отключено)','Not configured'=>'Не настроено','Teams Webhook'=>'Вебхук Teams','Discord Webhook'=>'Вебхук Discord','Telegram Bot'=>'Бот Telegram','Cron Status'=>'Статус cron','Update Database'=>'Обновить базу данных','Next run: %s'=>'Следующий запуск: %s','Not scheduled'=>'Не запланировано','Send Notification'=>'Отправить уведомление','Run Update Now'=>'Запустить обновление сейчас','Run Notification Now'=>'Отправить уведомление сейчас','You do not have permission to run these actions.'=>'У вас нет разрешения на выполнение этих действий.','API Testing'=>'Тестирование API','Test API connectivity for each component. Click a button to send a test request.'=>'Проверьте подключение к API для каждого компонента. Нажмите кнопку, чтобы отправить тестовый запрос.','Test %s'=>'Тест %s','Testing...'=>'Тестирование...','HTTP Code:'=>'HTTP код:','Response Time:'=>'Время ответа:','Response Preview'=>'Предварительный просмотр ответа','Test'=>'Тест','Error:'=>'Ошибка:','AJAX request failed.'=>'AJAX-запрос не удался.','You do not have permission to test API connectivity.'=>'У вас нет разрешения на тестирование подключения к API.','Database Options Viewer'=>'Просмотр параметров базы данных','View the raw data stored in WordPress options.'=>'Просмотр необработанных данных, хранящихся в параметрах WordPress.','Select an option...'=>'Выберите параметр...','Option not found or empty.'=>'Параметр не найден или пуст.','Quick Actions'=>'Быстрые действия','Perform debugging actions. Use with caution.'=>'Выполнить отладочные действия. Используйте с осторожностью.','Are you sure you want to clear all caches?'=>'Вы уверены, что хотите очистить все кэши?','Clear All Caches'=>'Очистить все кэши','Are you sure you want to reset signatures?'=>'Вы уверены, что хотите сбросить сигнатуры?','Reset Signatures'=>'Сбросить сигнатуры','Export Debug Info'=>'Экспортировать отладочную информацию','You do not have permission to perform these actions.'=>'У вас нет разрешения на выполнение этих действий.','Settings saved.'=>'Настройки сохранены.','WPVulnerability cron events have been repaired across the network.'=>'Cron-события WPVulnerability были восстановлены по всей сети.','You do not have permission to access this page.'=>'У вас нет разрешения на доступ к этой странице.','WordPress %1$s has a known vulnerability that may be affecting your installed version.'=>'WordPress %1$s имеет известную уязвимость, которая может затрагивать вашу установленную версию.','Actively exploited'=>'Активно эксплуатируется','Public exploit'=>'Публичный эксплойт','Automatable'=>'Автоматизируемое','References:'=>'Ссылки:','Invalid component specified.'=>'Указан неверный компонент.','Version not detected for this component.'=>'Версия для этого компонента не обнаружена.','API request successful.'=>'Запрос к API выполнен успешно.','API returned HTTP code %d.'=>'API вернул HTTP код %d.','WPVulnerability Logs'=>'Журналы WPVulnerability','WPVulnerability Log'=>'Журнал WPVulnerability','Low'=>'низкая','Medium'=>'Средняя','High'=>'высокая','Critical'=>'критическая','WPVulnerability Shell Logs'=>'Журналы команд оболочки WPVulnerability','WPVulnerability Shell Log'=>'Журнал команд оболочки WPVulnerability','Every week'=>'Каждую неделю','Every day'=>'Ежедневно','Invalid request.'=>'Неверный запрос.','You have unsubscribed from WPVulnerability notifications.'=>'Вы отписались от уведомлений WPVulnerability.','Learn more about the WordPress Vulnerability Database API at %2$s'=>'Узнайте больше об API базы данных уязвимостей WordPress на странице %2$s','Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings.'=>'Хотите прекратить получать эти уведомления? Отпишитесь или измените частоту email на Никогда в настройках WPVulnerability.','No vulnerabilities found'=>'Уязвимости не найдены','This is likely a test. The site does not have vulnerabilities.'=>'Это, вероятно, тест. На сайте нет уязвимостей.','Core vulnerabilities'=>'Уязвимости ядра','Plugins vulnerabilities'=>'Уязвимости плагинов','Themes vulnerabilities'=>'Уязвимости тем','PHP vulnerabilities'=>'Уязвимости PHP','Apache HTTPD vulnerabilities'=>'Уязвимости Apache HTTPD','Nginx vulnerabilities'=>'Уязвимости Nginx','MariaDB vulnerabilities'=>'Уязвимости в MariaDB','MySQL vulnerabilities'=>'Уязвимости MySQL','ImageMagick vulnerabilities'=>'Уязвимости в ImageMagick','curl vulnerabilities'=>'Уязвимости curl','memcached vulnerabilities'=>'Уязвимости memcached','Redis vulnerabilities'=>'Уязвимости Redis','SQLite vulnerabilities'=>'Уязвимости SQLite','Vulnerability found: %s'=>'Найдена уязвимость: %s','Vulnerability found'=>'Найдена уязвимость','%1$s has a known vulnerability that may be affecting your installed version.'=>'%1$s имеет известную уязвимость, которая может затрагивать вашу установленную версию.','This plugin is closed. Please replace it with another.'=>'Этот плагин закрыт. Пожалуйста, замените его на другой.','This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates.'=>'Эта уязвимость, похоже, не исправлена. Следите за обновлениями плагина.','It hasn\'t been updated in over a year.'=>'Он не обновлялся уже более года.','It may no longer be available (closed?).'=>'Возможно, он больше не доступен (закрыт?).','Last updated on'=>'Последнее обновление на','Vulnerabilities (%d)'=>'Уязвимости (%d)','%s running'=>'%s запущен','End of Life'=>'Конец поддержки','End of life:'=>'Конец поддержки:','Supported'=>'Поддерживается','Plugin'=>'Плагин','Theme'=>'Тема','End of life: %s'=>'Конец поддержки: %s','EOL'=>'EOL','Network Settings'=>'Настройки сети','Vulnerabilities'=>'Уязвимости','Every 6 hours'=>'Каждые 6 часов','Database updates'=>'Обновления базы данных','Log cleanup'=>'Очистка журналов','Notifications are scheduled, but settings currently disable them. Please review the notifications tab.'=>'Уведомления запланированы, но текущие настройки их отключают. Пожалуйста, проверьте вкладку уведомлений.','This event should not be scheduled for this site.'=>'Это событие не должно быть запланировано для этого сайта.','Not expected for this site.'=>'Не ожидается для этого сайта.','No instances found.'=>'Экземпляры не найдены.','Scheduled with an unexpected interval.'=>'Запланировано с неожиданным интервалом.','Multiple instances detected.'=>'Обнаружено несколько экземпляров.','Scheduled as expected.'=>'Запланировано согласно ожиданиям.','There aren\'t plugins vulnerabilities'=>'Уязвимостей плагинов нет','Shows possible vulnerabilities that exist in installed plugins.'=>'Показывает возможные уязвимости в установленных плагинах.','There is %d plugin with vulnerabilities'=>'Плагинов с уязвимостями: %d' . "\0" . 'Плагинов с уязвимостями: %d' . "\0" . 'Плагинов с уязвимостями: %d','We\'ve detected potential vulnerabilities in installed plugins. Please check them and keep them updated.'=>'Обнаружены потенциальные уязвимости в установленных плагинах. Пожалуйста, проверьте их и обновите.','Update plugins'=>'Обновить плагины','There aren\'t themes vulnerabilities'=>'Нет уязвимостей в темах','Shows possible vulnerabilities that exist in installed themes.'=>'Показывает возможные уязвимости в установленных темах.','There is %d theme with vulnerabilities'=>'Тем с уязвимостями: %d' . "\0" . 'Тем с уязвимостями: %d' . "\0" . 'Тем с уязвимостями: %d','We\'ve detected potential vulnerabilities in installed themes. Please check them and keep them updated.'=>'Обнаружены потенциальные уязвимости в установленных темах. Пожалуйста, проверьте их и обновите.','Update themes'=>'Обновить темы','There aren\'t WordPress vulnerabilities'=>'В WordPress нет уязвимостей','Shows possible vulnerabilities existing in the WordPress core.'=>'Показывает возможные уязвимости в ядре WordPress.','There is %d core vulnerability'=>'Уязвимости ядра: %d' . "\0" . 'Уязвимости ядра: %d' . "\0" . 'Уязвимости ядра: %d','We\'ve detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated.'=>'Обнаружены потенциальные уязвимости в этой установке WordPress. Пожалуйста, проверьте их и обновляйте установку.','Update WordPress'=>'Обновить WordPress','Nginx'=>'NGINX','Invalid software type'=>'Неверный тип программного обеспечения','Error'=>'Ошибка','The specified software type is not valid.'=>'Указанный тип программного обеспечения недействителен.','There aren\'t %s vulnerabilities'=>'Не существует %s уязвимостей','Shows possible vulnerabilities existing in %s.'=>'Показывает возможные уязвимости, существующие в %s.','There is %1$d %2$s vulnerability'=>'Уязвимостей %2$s: %1$d' . "\0" . 'Уязвимостей %2$s: %1$d' . "\0" . 'Уязвимостей %2$s: %1$d','We\'ve detected potential vulnerabilities in %s. Please check them and keep your installation updated.'=>'Мы обнаружили потенциальные уязвимости в %s. Пожалуйста, проверьте их и обновите Вашу установку.','How to update PHP'=>'Как обновить PHP','WPVulnerability Core'=>'WPVulnerability для ядра','WPVulnerability Themes'=>'WPVulnerability для тем','WPVulnerability Plugins'=>'WPVulnerability для плагинов','WPVulnerability PHP'=>'WPVulnerability PHP','WPVulnerability Apache HTTPD'=>'WPVulnerability Apache HTTPD','WPVulnerability Nginx'=>'WPVulnerability Nginx','WPVulnerability MariaDB'=>'WPVulnerability MariaDB','WPVulnerability MySQL'=>'WPVulnerability MySQL','WPVulnerability ImageMagick'=>'WPVulnerability ImageMagick','WPVulnerability curl'=>'WPVulnerability curl','WPVulnerability memcached'=>'WPVulnerability memcached','WPVulnerability redis'=>'WPVulnerability redis','WPVulnerability sqlite'=>'WPVulnerability sqlite','This theme is closed. Please replace it with another.'=>'Эта тема закрыта. Пожалуйста, замените её другой.','This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates.'=>'Эта уязвимость, похоже, не исправлена. Следите за обновлениями темы.','This theme has known vulnerabilities that may be affecting your installed version.'=>'Эта тема имеет известные уязвимости, которые могут затрагивать вашу установленную версию.']]; \ No newline at end of file diff --git a/languages/wpvulnerability-ru.mo b/languages/wpvulnerability-ru.mo new file mode 100644 index 0000000000000000000000000000000000000000..e5d44ba4fd81b172072b83b15123c371188325f1 GIT binary patch literal 49975 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 XKAkA*t*njO{^go= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14)) ? 1 : 2);\n" +"X-Generator: GlotPress/4.0.3\n" + +#. Plugin Name of the plugin +#: wpvulnerability.php wpvulnerability-admin.php:1782 +#: wpvulnerability-admin.php:1783 wpvulnerability-adminms.php:1945 +#: wpvulnerability-adminms.php:1946 wpvulnerability-notifications.php:105 +msgid "WPVulnerability" +msgstr "WPVulnerability" + +#. Plugin URI of the plugin +#: wpvulnerability.php +msgid "https://www.wpvulnerability.com/plugin/" +msgstr "https://www.wpvulnerability.com/plugin/" + +#. Description of the plugin +#: wpvulnerability.php +msgid "" +"Receive information about possible vulnerabilities in your WordPress from " +"WordPress Vulnerability Database API." +msgstr "" +"Получайте информацию о возможных уязвимостях в Вашем WordPress от WordPress " +"Vulnerability Database API." + +#. Author of the plugin +#: wpvulnerability.php +msgid "ROBOTSTXT" +msgstr "ROBOTSTXT" + +#. Author URI of the plugin +#: wpvulnerability.php +msgid "https://www.robotstxt.es/" +msgstr "https://www.robotstxt.es/" + +#: class-wpvulnerability-cli.php:35 class-wpvulnerability-config-cli.php:32 +msgid "" +"This command requires a WordPress administrator. Run with --" +"user=." +msgstr "" +"Эта команда требует прав администратора WordPress. Запустите с --" +"user=." + +#: class-wpvulnerability-cli.php:156 +msgid "No core vulnerabilities found." +msgstr "Уязвимостей ядра не найдено." + +#: class-wpvulnerability-cli.php:275 +msgid "No plugin vulnerabilities found." +msgstr "Уязвимостей плагинов не найдено." + +#: class-wpvulnerability-cli.php:393 +msgid "No theme vulnerabilities found." +msgstr "Уязвимостей тем не найдено." + +#. translators: %s is the software name (php, apache, nginx, etc.) +#: class-wpvulnerability-cli.php:490 +#, php-format +msgid "No %s vulnerabilities found." +msgstr "Уязвимостей %s не найдено." + +#: wpvulnerability-admin.php:63 wpvulnerability-adminms.php:227 +msgid "Data from source has been reloaded." +msgstr "Данные из источника были перезагружены." + +#: wpvulnerability-admin.php:65 wpvulnerability-adminms.php:229 +msgid "You do not have permission to reload data." +msgstr "У вас нет разрешения на перезагрузку данных." + +#: wpvulnerability-admin.php:93 wpvulnerability-adminms.php:255 +msgid "Test email has been sent." +msgstr "Тестовое письмо отправлено." + +#: wpvulnerability-admin.php:95 wpvulnerability-adminms.php:259 +msgid "Test email has failed. Please, check your email settings." +msgstr "" +"Тестовое письмо не удалось отправить. Пожалуйста, проверьте настройки Вашей " +"электронной почты." + +#: wpvulnerability-admin.php:98 wpvulnerability-adminms.php:263 +msgid "You do not have permission to send test emails." +msgstr "У вас нет разрешения на отправку тестовых писем." + +#: wpvulnerability-admin.php:113 +msgid "WPVulnerability cron events have been repaired." +msgstr "Cron-события WPVulnerability были восстановлены." + +#: wpvulnerability-admin.php:115 wpvulnerability-adminms.php:279 +msgid "You do not have permission to repair cron events." +msgstr "У вас нет разрешения на восстановление cron-событий." + +#: wpvulnerability-admin.php:127 wpvulnerability-adminms.php:291 +msgid "All logs have been deleted." +msgstr "Все журналы были удалены." + +#: wpvulnerability-admin.php:129 wpvulnerability-adminms.php:293 +msgid "You do not have permission to delete logs." +msgstr "У вас нет разрешения на удаление журналов." + +#: wpvulnerability-admin.php:146 +msgid "Uninstall preference saved." +msgstr "Настройки удаления сохранены." + +#: wpvulnerability-admin.php:153 wpvulnerability-adminms.php:316 +msgid "WPVulnerability has been reset to defaults and reloaded." +msgstr "WPVulnerability сброшен до настроек по умолчанию и перезагружен." + +#: wpvulnerability-admin.php:155 wpvulnerability-adminms.php:318 +msgid "You do not have permission to reset WPVulnerability." +msgstr "У вас нет разрешения на сброс WPVulnerability." + +#: wpvulnerability-admin.php:170 wpvulnerability-adminms.php:333 +msgid "All caches have been cleared." +msgstr "Все кэши были очищены." + +#: wpvulnerability-admin.php:172 wpvulnerability-adminms.php:335 +msgid "You do not have permission to clear caches." +msgstr "У вас нет разрешения на очистку кэшей." + +#: wpvulnerability-admin.php:187 wpvulnerability-adminms.php:350 +msgid "Plugin and theme signatures have been reset." +msgstr "Сигнатуры плагинов и тем были сброшены." + +#: wpvulnerability-admin.php:189 wpvulnerability-adminms.php:352 +msgid "You do not have permission to reset signatures." +msgstr "У вас нет разрешения на сброс сигнатур." + +#: wpvulnerability-admin.php:212 wpvulnerability-adminms.php:375 +msgid "You do not have permission to export debug information." +msgstr "У вас нет разрешения на экспорт отладочной информации." + +#: wpvulnerability-admin.php:224 wpvulnerability-adminms.php:387 +msgid "Database update has been executed." +msgstr "Обновление базы данных выполнено." + +#: wpvulnerability-admin.php:226 wpvulnerability-adminms.php:389 +msgid "You do not have permission to run database updates." +msgstr "У вас нет разрешения на запуск обновлений базы данных." + +#: wpvulnerability-admin.php:247 wpvulnerability-adminms.php:410 +msgid "Notification has been sent." +msgstr "Уведомление отправлено." + +#: wpvulnerability-admin.php:249 wpvulnerability-adminms.php:412 +msgid "Notification sending failed." +msgstr "Не удалось отправить уведомление." + +#: wpvulnerability-admin.php:252 wpvulnerability-adminms.php:415 +msgid "You do not have permission to send notifications." +msgstr "У вас нет разрешения на отправку уведомлений." + +#: wpvulnerability-admin.php:266 wpvulnerability-adminms.php:539 +#: wpvulnerability-schedule.php:323 +msgid "Notifications" +msgstr "Уведомления" + +#: wpvulnerability-admin.php:269 wpvulnerability-adminms.php:542 +msgid "Analysis" +msgstr "Анализ" + +#: wpvulnerability-admin.php:272 wpvulnerability-adminms.php:545 +msgid "Logs" +msgstr "Журналы" + +#: wpvulnerability-admin.php:275 wpvulnerability-adminms.php:548 +#: wpvulnerability-sitehealth.php:25 wpvulnerability-sitehealth.php:77 +#: wpvulnerability-sitehealth.php:129 wpvulnerability-sitehealth.php:210 +msgid "Security" +msgstr "Безопасность" + +#: wpvulnerability-admin.php:278 wpvulnerability-adminms.php:551 +msgid "Tools" +msgstr "Инструменты" + +#: wpvulnerability-admin.php:285 wpvulnerability-adminms.php:558 +msgid "Debug" +msgstr "Отладка" + +#: wpvulnerability-admin.php:290 wpvulnerability-adminms.php:563 +msgid "About" +msgstr "О плагине" + +#: wpvulnerability-admin.php:427 wpvulnerability-adminms.php:700 +msgid "Notification Settings" +msgstr "Настройки уведомлений" + +#: wpvulnerability-admin.php:430 wpvulnerability-adminms.php:703 +msgid "Configure how and when you want to receive vulnerability notifications." +msgstr "Настройте, как и когда вы хотите получать уведомления об уязвимостях." + +#: wpvulnerability-admin.php:431 wpvulnerability-adminms.php:704 +msgid "" +"Stay informed about security vulnerabilities in your WordPress installation, " +"plugins, themes, and server software." +msgstr "" +"Будьте в курсе уязвимостей безопасности в вашей установке WordPress, " +"плагинах, темах и серверном программном обеспечении." + +#: wpvulnerability-admin.php:438 wpvulnerability-adminms.php:711 +msgid "Cache Expiration Time" +msgstr "Время истечения кэша" + +#: wpvulnerability-admin.php:440 wpvulnerability-admin.php:814 +#: wpvulnerability-adminms.php:713 wpvulnerability-adminms.php:1087 +msgid "FORCED" +msgstr "ПРИНУДИТЕЛЬНО" + +#: wpvulnerability-admin.php:444 wpvulnerability-adminms.php:717 +msgid "How long to cache vulnerability data before refreshing from the API." +msgstr "Как долго кэшировать данные об уязвимостях перед обновлением из API." + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:453 wpvulnerability-admin.php:1891 +#: wpvulnerability-admin.php:3631 wpvulnerability-adminms.php:726 +#: wpvulnerability-adminms.php:2039 wpvulnerability-adminms.php:3825 +#, php-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d час" +msgstr[1] "%d часа" +msgstr[2] "%d часов" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:469 wpvulnerability-adminms.php:742 +#, php-format +msgid "" +"You can force the cache time via wp-config.php constant. Learn more →" +msgstr "" +"Вы можете принудительно задать время кэша через константу wp-config.php. Узнать больше →" + +#: wpvulnerability-admin.php:481 wpvulnerability-admin.php:3665 +#: wpvulnerability-adminms.php:754 wpvulnerability-adminms.php:3859 +msgid "Notification Frequency" +msgstr "Частота уведомлений" + +#: wpvulnerability-admin.php:484 wpvulnerability-adminms.php:757 +msgid "Choose how often you want to receive vulnerability notifications." +msgstr "Выберите, как часто вы хотите получать уведомления об уязвимостях." + +#: wpvulnerability-admin.php:489 wpvulnerability-adminms.php:762 +msgid "Never - Disable automatic notifications" +msgstr "Никогда — отключить автоматические уведомления" + +#: wpvulnerability-admin.php:493 wpvulnerability-adminms.php:766 +msgid "Daily - Receive notifications every day" +msgstr "Ежедневно — получать уведомления каждый день" + +#: wpvulnerability-admin.php:497 wpvulnerability-adminms.php:770 +msgid "Weekly - Receive notifications once a week" +msgstr "Еженедельно — получать уведомления раз в неделю" + +#: wpvulnerability-admin.php:503 wpvulnerability-adminms.php:776 +msgid "Day:" +msgstr "День:" + +#: wpvulnerability-admin.php:505 wpvulnerability-admin.php:1955 +#: wpvulnerability-adminms.php:778 wpvulnerability-adminms.php:2115 +msgid "Monday" +msgstr "Понедельник" + +#: wpvulnerability-admin.php:506 wpvulnerability-admin.php:1956 +#: wpvulnerability-adminms.php:779 wpvulnerability-adminms.php:2116 +msgid "Tuesday" +msgstr "Вторник" + +#: wpvulnerability-admin.php:507 wpvulnerability-admin.php:1957 +#: wpvulnerability-adminms.php:780 wpvulnerability-adminms.php:2117 +msgid "Wednesday" +msgstr "Среда" + +#: wpvulnerability-admin.php:508 wpvulnerability-admin.php:1958 +#: wpvulnerability-adminms.php:781 wpvulnerability-adminms.php:2118 +msgid "Thursday" +msgstr "Четверг" + +#: wpvulnerability-admin.php:509 wpvulnerability-admin.php:1959 +#: wpvulnerability-adminms.php:782 wpvulnerability-adminms.php:2119 +msgid "Friday" +msgstr "Пятница" + +#: wpvulnerability-admin.php:510 wpvulnerability-admin.php:1960 +#: wpvulnerability-adminms.php:783 wpvulnerability-adminms.php:2120 +msgid "Saturday" +msgstr "Суббота" + +#: wpvulnerability-admin.php:511 wpvulnerability-admin.php:1961 +#: wpvulnerability-adminms.php:784 wpvulnerability-adminms.php:2121 +msgid "Sunday" +msgstr "Воскресенье" + +#: wpvulnerability-admin.php:515 wpvulnerability-adminms.php:788 +msgid "Time:" +msgstr "Время:" + +#: wpvulnerability-admin.php:519 wpvulnerability-adminms.php:792 +msgid "(24-hour format, server timezone)" +msgstr "(24-часовой формат, часовой пояс сервера)" + +#: wpvulnerability-admin.php:528 wpvulnerability-adminms.php:801 +msgid "Notification Channels" +msgstr "Каналы уведомлений" + +#: wpvulnerability-admin.php:531 wpvulnerability-adminms.php:804 +msgid "Select where you want to receive notifications." +msgstr "Выберите, где вы хотите получать уведомления." + +#: wpvulnerability-admin.php:536 wpvulnerability-admin.php:2011 +#: wpvulnerability-adminms.php:809 wpvulnerability-adminms.php:2169 +msgid "Email" +msgstr "Email" + +#: wpvulnerability-admin.php:539 wpvulnerability-adminms.php:812 +msgid "Email Addresses (separated by commas):" +msgstr "Адреса электронной почты (через запятую):" + +#: wpvulnerability-admin.php:541 wpvulnerability-adminms.php:814 +msgid "Default:" +msgstr "По умолчанию:" + +#: wpvulnerability-admin.php:546 wpvulnerability-admin.php:2016 +#: wpvulnerability-adminms.php:819 wpvulnerability-adminms.php:2174 +msgid "Slack" +msgstr "Slack" + +#: wpvulnerability-admin.php:549 wpvulnerability-adminms.php:822 +msgid "Slack Webhook URL:" +msgstr "URL вебхука Slack:" + +#. translators: %s: Slack documentation URL +#: wpvulnerability-admin.php:555 wpvulnerability-adminms.php:828 +#, php-format +msgid "" +"Learn how to " +"create a Slack incoming webhook →" +msgstr "" +"Узнайте, как " +"создать входящий вебхук Slack →" + +#: wpvulnerability-admin.php:564 wpvulnerability-admin.php:2021 +#: wpvulnerability-adminms.php:837 wpvulnerability-adminms.php:2179 +msgid "Microsoft Teams" +msgstr "Microsoft Teams" + +#: wpvulnerability-admin.php:567 wpvulnerability-adminms.php:840 +msgid "Teams Webhook URL:" +msgstr "URL вебхука Teams:" + +#. translators: %s: Microsoft Teams documentation URL +#: wpvulnerability-admin.php:573 wpvulnerability-adminms.php:846 +#, php-format +msgid "" +"Learn how to " +"create a Teams incoming webhook →" +msgstr "" +"Узнайте, как " +"создать входящий вебхук Teams →" + +#: wpvulnerability-admin.php:582 wpvulnerability-adminms.php:855 +msgid "Discord" +msgstr "Discord" + +#: wpvulnerability-admin.php:585 wpvulnerability-adminms.php:858 +msgid "Discord Webhook URL:" +msgstr "URL вебхука Discord:" + +#. translators: %s: Discord documentation URL +#: wpvulnerability-admin.php:591 wpvulnerability-adminms.php:864 +#, php-format +msgid "" +"Learn how to " +"create a Discord webhook →" +msgstr "" +"Узнайте, как " +"создать вебхук Discord →" + +#: wpvulnerability-admin.php:600 wpvulnerability-adminms.php:873 +msgid "Telegram" +msgstr "Telegram" + +#: wpvulnerability-admin.php:603 wpvulnerability-adminms.php:876 +msgid "Telegram Bot Token:" +msgstr "Токен бота Telegram:" + +#: wpvulnerability-admin.php:605 wpvulnerability-adminms.php:878 +msgid "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "Формат: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:607 wpvulnerability-adminms.php:880 +msgid "Telegram Chat ID:" +msgstr "ID чата Telegram:" + +#. translators: %s: Telegram documentation URL +#: wpvulnerability-admin.php:613 wpvulnerability-adminms.php:886 +#, php-format +msgid "" +"Learn how to " +"create a Telegram bot and get Chat ID →" +msgstr "" +"Узнайте, как " +"создать бота Telegram и получить ID чата →" + +#: wpvulnerability-admin.php:623 wpvulnerability-adminms.php:896 +msgid "Save Notification Settings" +msgstr "Сохранить настройки уведомлений" + +#: wpvulnerability-admin.php:700 wpvulnerability-admin.php:2552 +#: wpvulnerability-adminms.php:973 wpvulnerability-adminms.php:2459 +msgid "WordPress Components" +msgstr "Компоненты WordPress" + +#: wpvulnerability-admin.php:703 wpvulnerability-admin.php:2560 +#: wpvulnerability-adminms.php:976 wpvulnerability-adminms.php:2467 +msgid "WordPress Core" +msgstr "Ядро WordPress" + +#: wpvulnerability-admin.php:707 wpvulnerability-admin.php:1472 +#: wpvulnerability-admin.php:1573 wpvulnerability-admin.php:2109 +#: wpvulnerability-admin.php:2571 wpvulnerability-adminms.php:980 +#: wpvulnerability-adminms.php:1744 wpvulnerability-adminms.php:1843 +#: wpvulnerability-adminms.php:2266 wpvulnerability-adminms.php:2478 +msgid "Plugins" +msgstr "Плагины" + +#: wpvulnerability-admin.php:711 wpvulnerability-admin.php:1473 +#: wpvulnerability-admin.php:1574 wpvulnerability-admin.php:2114 +#: wpvulnerability-admin.php:2587 wpvulnerability-adminms.php:984 +#: wpvulnerability-adminms.php:1745 wpvulnerability-adminms.php:1844 +#: wpvulnerability-adminms.php:2271 wpvulnerability-adminms.php:2494 +msgid "Themes" +msgstr "Темы" + +#: wpvulnerability-admin.php:717 wpvulnerability-adminms.php:990 +msgid "Software & Languages" +msgstr "Программное обеспечение и языки" + +#: wpvulnerability-admin.php:720 wpvulnerability-admin.php:1474 +#: wpvulnerability-admin.php:2119 wpvulnerability-adminms.php:993 +#: wpvulnerability-adminms.php:1746 wpvulnerability-adminms.php:2276 +#: wpvulnerability-sitehealth.php:178 +msgid "PHP" +msgstr "PHP" + +#: wpvulnerability-admin.php:726 wpvulnerability-adminms.php:999 +msgid "Web Servers" +msgstr "Веб-серверы" + +#: wpvulnerability-admin.php:729 wpvulnerability-admin.php:1475 +#: wpvulnerability-admin.php:2124 wpvulnerability-adminms.php:1002 +#: wpvulnerability-adminms.php:1747 wpvulnerability-adminms.php:2281 +#: wpvulnerability-sitehealth.php:179 +msgid "Apache HTTPD" +msgstr "Apache HTTPD" + +#: wpvulnerability-admin.php:733 wpvulnerability-admin.php:1476 +#: wpvulnerability-admin.php:2129 wpvulnerability-adminms.php:1006 +#: wpvulnerability-adminms.php:1748 wpvulnerability-adminms.php:2286 +msgid "nginx" +msgstr "nginx" + +#: wpvulnerability-admin.php:739 wpvulnerability-adminms.php:1012 +msgid "Databases" +msgstr "Базы данных" + +#: wpvulnerability-admin.php:742 wpvulnerability-admin.php:1477 +#: wpvulnerability-admin.php:2134 wpvulnerability-adminms.php:1015 +#: wpvulnerability-adminms.php:1749 wpvulnerability-adminms.php:2291 +#: wpvulnerability-sitehealth.php:181 +msgid "MariaDB" +msgstr "MariaDB" + +#: wpvulnerability-admin.php:746 wpvulnerability-admin.php:1478 +#: wpvulnerability-admin.php:2139 wpvulnerability-adminms.php:1019 +#: wpvulnerability-adminms.php:1750 wpvulnerability-adminms.php:2296 +#: wpvulnerability-sitehealth.php:182 +msgid "MySQL" +msgstr "MySQL" + +#: wpvulnerability-admin.php:750 wpvulnerability-admin.php:1483 +#: wpvulnerability-admin.php:2164 wpvulnerability-admin.php:3104 +#: wpvulnerability-adminms.php:1023 wpvulnerability-adminms.php:1755 +#: wpvulnerability-adminms.php:2321 wpvulnerability-adminms.php:3281 +msgid "SQLite" +msgstr "SQLite" + +#: wpvulnerability-admin.php:756 wpvulnerability-adminms.php:1029 +msgid "Additional Tools" +msgstr "Дополнительные инструменты" + +#: wpvulnerability-admin.php:759 wpvulnerability-admin.php:1479 +#: wpvulnerability-admin.php:2144 wpvulnerability-admin.php:3101 +#: wpvulnerability-adminms.php:1032 wpvulnerability-adminms.php:1751 +#: wpvulnerability-adminms.php:2301 wpvulnerability-adminms.php:3278 +#: wpvulnerability-sitehealth.php:183 +msgid "ImageMagick" +msgstr "ImageMagick" + +#: wpvulnerability-admin.php:763 wpvulnerability-admin.php:1480 +#: wpvulnerability-admin.php:2149 wpvulnerability-adminms.php:1036 +#: wpvulnerability-adminms.php:1752 wpvulnerability-adminms.php:2306 +#: wpvulnerability-sitehealth.php:184 +msgid "curl" +msgstr "curl" + +#: wpvulnerability-admin.php:767 wpvulnerability-admin.php:1481 +#: wpvulnerability-admin.php:2154 wpvulnerability-adminms.php:1040 +#: wpvulnerability-adminms.php:1753 wpvulnerability-adminms.php:2311 +msgid "memcached" +msgstr "memcached" + +#: wpvulnerability-admin.php:771 wpvulnerability-admin.php:1482 +#: wpvulnerability-admin.php:2159 wpvulnerability-admin.php:3102 +#: wpvulnerability-adminms.php:1044 wpvulnerability-adminms.php:1754 +#: wpvulnerability-adminms.php:2316 wpvulnerability-adminms.php:3279 +msgid "Redis" +msgstr "Redis" + +#: wpvulnerability-admin.php:784 wpvulnerability-adminms.php:1057 +msgid "Component Analysis Settings" +msgstr "Настройки анализа компонентов" + +#: wpvulnerability-admin.php:787 wpvulnerability-adminms.php:1060 +msgid "Enable or disable vulnerability analysis for specific components." +msgstr "Включить или отключить анализ уязвимостей для конкретных компонентов." + +#: wpvulnerability-admin.php:788 wpvulnerability-adminms.php:1061 +msgid "" +"Check the components you want to HIDE from vulnerability scans and reports. " +"Unchecked components will be actively analyzed. Components with active " +"analysis are shown in green, hidden components in red." +msgstr "" +"Отметьте компоненты, которые вы хотите СКРЫТЬ от сканирования уязвимостей и " +"отчётов. Не отмеченные компоненты будут активно анализироваться. Компоненты с " +"активным анализом показаны зелёным, скрытые — красным." + +#: wpvulnerability-admin.php:820 wpvulnerability-adminms.php:1093 +msgid "Hidden (forced by constant)" +msgstr "Скрыто (принудительно константой)" + +#: wpvulnerability-admin.php:823 wpvulnerability-adminms.php:1096 +msgid "🔴 Analysis disabled" +msgstr "🔴 Анализ отключён" + +#: wpvulnerability-admin.php:826 wpvulnerability-adminms.php:1099 +msgid "🟢 Analysis active" +msgstr "🟢 Анализ активен" + +#: wpvulnerability-admin.php:848 wpvulnerability-adminms.php:1121 +msgid "Tip:" +msgstr "Совет:" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:852 wpvulnerability-adminms.php:1125 +#, php-format +msgid "" +"You can force-disable components via wp-config.php constants. Learn more about force-hiding " +"checks →" +msgstr "" +"Вы можете принудительно отключить компоненты через константы wp-config.php. Узнайте больше о принудительном скрытии " +"проверок →" + +#: wpvulnerability-admin.php:860 wpvulnerability-adminms.php:1133 +msgid "Save Analysis Settings" +msgstr "Сохранить настройки анализа" + +#: wpvulnerability-admin.php:920 wpvulnerability-adminms.php:1193 +msgid "« Previous" +msgstr "« Предыдущая" + +#: wpvulnerability-admin.php:921 wpvulnerability-adminms.php:1194 +msgid "Next »" +msgstr "Следующая »" + +#: wpvulnerability-admin.php:932 wpvulnerability-adminms.php:1205 +msgid "Log entry not found or has been removed." +msgstr "Запись журнала не найдена или была удалена." + +#: wpvulnerability-admin.php:935 wpvulnerability-adminms.php:1208 +msgid "Unable to load the requested log entry." +msgstr "Не удалось загрузить запрошенную запись журнала." + +#: wpvulnerability-admin.php:945 wpvulnerability-adminms.php:1218 +msgid "Log Configuration" +msgstr "Конфигурация журнала" + +#: wpvulnerability-admin.php:950 wpvulnerability-adminms.php:1223 +msgid "Total Logs" +msgstr "Всего записей в журнале" + +#: wpvulnerability-admin.php:954 wpvulnerability-adminms.php:1227 +msgid "Retention Period" +msgstr "Период хранения" + +#: wpvulnerability-admin.php:959 wpvulnerability-admin.php:1301 +#: wpvulnerability-admin.php:3029 wpvulnerability-admin.php:3043 +#: wpvulnerability-admin.php:3475 wpvulnerability-admin.php:3483 +#: wpvulnerability-adminms.php:1232 wpvulnerability-adminms.php:1574 +#: wpvulnerability-adminms.php:3206 wpvulnerability-adminms.php:3220 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Disabled" +msgstr "Отключено" + +#. translators: %d: Number of days. +#. translators: %d: number of days +#: wpvulnerability-admin.php:962 wpvulnerability-admin.php:984 +#: wpvulnerability-admin.php:3641 wpvulnerability-adminms.php:1235 +#: wpvulnerability-adminms.php:1257 wpvulnerability-adminms.php:3835 +#, php-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d день" +msgstr[1] "%d дня" +msgstr[2] "%d дней" + +#: wpvulnerability-admin.php:975 wpvulnerability-adminms.php:1248 +msgid "Log Retention Period" +msgstr "Период хранения журнала" + +#: wpvulnerability-admin.php:981 wpvulnerability-adminms.php:1254 +msgid "None (Disabled)" +msgstr "Нет (отключено)" + +#: wpvulnerability-admin.php:1004 wpvulnerability-adminms.php:1277 +msgid "" +"This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant." +msgstr "" +"Это значение задано константой WPVULNERABILITY_LOG_RETENTION_DAYS." + +#: wpvulnerability-admin.php:1009 wpvulnerability-adminms.php:1282 +msgid "" +"Choose how long WPVulnerability should keep API response logs. Older logs " +"are automatically deleted." +msgstr "" +"Выберите, как долго WPVulnerability должен хранить журналы ответов API. " +"Устаревшие журналы удаляются автоматически." + +#: wpvulnerability-admin.php:1013 wpvulnerability-adminms.php:1286 +msgid "Save Configuration" +msgstr "Сохранить конфигурацию" + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "Log retention is currently disabled." +msgstr "Хранение журнала в настоящее время отключено." + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "API responses are not being saved." +msgstr "Ответы API не сохраняются." + +#: wpvulnerability-admin.php:1031 wpvulnerability-adminms.php:1304 +msgid "Log Details" +msgstr "Детали записи журнала" + +#: wpvulnerability-admin.php:1035 wpvulnerability-admin.php:1104 +#: wpvulnerability-adminms.php:1308 wpvulnerability-adminms.php:1377 +msgid "Date" +msgstr "Дата" + +#: wpvulnerability-admin.php:1039 wpvulnerability-admin.php:1105 +#: wpvulnerability-adminms.php:1312 wpvulnerability-adminms.php:1378 +msgid "API Endpoint" +msgstr "Конечная точка API" + +#: wpvulnerability-admin.php:1044 wpvulnerability-adminms.php:1317 +msgid "API Response" +msgstr "Ответ API" + +#: wpvulnerability-admin.php:1049 wpvulnerability-adminms.php:1322 +msgid "Back to Logs" +msgstr "Назад к журналам" + +#: wpvulnerability-admin.php:1058 wpvulnerability-adminms.php:1331 +msgid "No logs available" +msgstr "Журналы недоступны" + +#: wpvulnerability-admin.php:1059 wpvulnerability-adminms.php:1332 +msgid "API response logs will appear here once the vulnerability scanner runs." +msgstr "Журналы ответов API появятся здесь после запуска сканера уязвимостей." + +#: wpvulnerability-admin.php:1063 wpvulnerability-adminms.php:1336 +msgid "API Response Logs" +msgstr "Журналы ответов API" + +#: wpvulnerability-admin.php:1073 wpvulnerability-adminms.php:1346 +msgid "Show:" +msgstr "Показать:" + +#: wpvulnerability-admin.php:1082 wpvulnerability-adminms.php:1355 +msgid "Apply" +msgstr "Применить" + +#. translators: 1: first item, 2: last item, 3: total items +#: wpvulnerability-admin.php:1090 wpvulnerability-adminms.php:1363 +#, php-format +msgid "Showing %1$s–%2$s of %3$s" +msgstr "Показано %1$s–%2$s из %3$s" + +#: wpvulnerability-admin.php:1106 wpvulnerability-adminms.php:1379 +msgid "Actions" +msgstr "Действия" + +#: wpvulnerability-admin.php:1133 wpvulnerability-admin.php:3957 +#: wpvulnerability-adminms.php:1406 wpvulnerability-adminms.php:4151 +msgid "View" +msgstr "Просмотр" + +#: wpvulnerability-admin.php:1150 wpvulnerability-adminms.php:1423 +msgid "Danger Zone" +msgstr "Опасная зона" + +#: wpvulnerability-admin.php:1152 wpvulnerability-adminms.php:1425 +msgid "Permanently delete all API response logs. This action cannot be undone." +msgstr "Навсегда удалить все журналы ответов API. Это действие нельзя отменить." + +#: wpvulnerability-admin.php:1154 wpvulnerability-adminms.php:1427 +msgid "Are you sure you want to delete all logs? This action cannot be undone." +msgstr "Вы уверены, что хотите удалить все журналы? Это действие нельзя отменить." + +#: wpvulnerability-admin.php:1157 wpvulnerability-adminms.php:1430 +msgid "Delete All Logs" +msgstr "Удалить все журналы" + +#: wpvulnerability-admin.php:1201 wpvulnerability-adminms.php:1474 +msgid "Reload Data from API" +msgstr "Перезагрузить данные из API" + +#: wpvulnerability-admin.php:1204 wpvulnerability-adminms.php:1477 +msgid "" +"Reload all Core, Plugins, Themes and other components information directly " +"from the API to have updated data. This will clear the cache and fetch fresh " +"vulnerability information." +msgstr "" +"Перезагрузить всю информацию о ядре, плагинах, темах и других компонентах " +"непосредственно из API для получения обновлённых данных. Это очистит кэш и " +"загрузит свежую информацию об уязвимостях." + +#: wpvulnerability-admin.php:1209 wpvulnerability-adminms.php:1482 +msgid "Reload Data" +msgstr "Перезагрузка данных" + +#: wpvulnerability-admin.php:1218 wpvulnerability-adminms.php:1491 +msgid "Test Email Notifications" +msgstr "Тестирование уведомлений по email" + +#: wpvulnerability-admin.php:1221 wpvulnerability-adminms.php:1494 +msgid "" +"Send a test email notification with current vulnerability data to verify " +"your email configuration is working correctly." +msgstr "" +"Отправьте тестовое уведомление по email с текущими данными об уязвимостях, " +"чтобы убедиться в правильной работе конфигурации email." + +#: wpvulnerability-admin.php:1231 wpvulnerability-adminms.php:1504 +msgid "From address (configured via constant):" +msgstr "Адрес отправителя (задан через константу):" + +#: wpvulnerability-admin.php:1243 wpvulnerability-adminms.php:1516 +msgid "From address (default):" +msgstr "Адрес отправителя (по умолчанию):" + +#: wpvulnerability-admin.php:1252 wpvulnerability-adminms.php:1525 +msgid "Learn how to customize the email sender address →" +msgstr "Узнайте, как настроить адрес отправителя email →" + +#: wpvulnerability-admin.php:1258 wpvulnerability-adminms.php:1531 +msgid "Send Test Email" +msgstr "Отправить тестовое письмо" + +#: wpvulnerability-admin.php:1267 wpvulnerability-adminms.php:1540 +msgid "WP-Cron Status" +msgstr "Статус WP-Cron" + +#: wpvulnerability-admin.php:1270 wpvulnerability-adminms.php:1543 +msgid "" +"View and manage WP-Cron scheduled events. Compare expected schedules with " +"actual cron jobs to ensure automated tasks are running correctly." +msgstr "" +"Просмотр и управление запланированными событиями WP-Cron. Сравните ожидаемое " +"расписание с фактическими cron-заданиями для проверки правильной работы " +"автоматических задач." + +#: wpvulnerability-admin.php:1275 wpvulnerability-adminms.php:1548 +msgid "No cron data available." +msgstr "Данные cron недоступны." + +#: wpvulnerability-admin.php:1281 wpvulnerability-adminms.php:1554 +msgid "Hook" +msgstr "Хук" + +#: wpvulnerability-admin.php:1282 wpvulnerability-adminms.php:1555 +msgid "Expected" +msgstr "Ожидается" + +#: wpvulnerability-admin.php:1283 wpvulnerability-adminms.php:1556 +msgid "Found" +msgstr "Найдено" + +#: wpvulnerability-admin.php:1284 wpvulnerability-adminms.php:1557 +msgid "Next Run" +msgstr "Следующий запуск" + +#: wpvulnerability-admin.php:1285 wpvulnerability-admin.php:3236 +#: wpvulnerability-admin.php:3559 wpvulnerability-adminms.php:1558 +#: wpvulnerability-adminms.php:3413 wpvulnerability-adminms.php:3753 +msgid "Status" +msgstr "Статус" + +#: wpvulnerability-admin.php:1299 wpvulnerability-adminms.php:1572 +msgid "Not expected" +msgstr "Не ожидается" + +#: wpvulnerability-admin.php:1321 wpvulnerability-adminms.php:1594 +#: wpvulnerability-general.php:1871 wpvulnerability-general.php:1872 +msgid "None" +msgstr "отсутствует" + +#: wpvulnerability-admin.php:1356 wpvulnerability-adminms.php:1629 +msgid "OK" +msgstr "OK" + +#: wpvulnerability-admin.php:1366 wpvulnerability-adminms.php:1639 +msgid "⚠️ Unexpected WPVulnerability Events" +msgstr "⚠️ Непредвиденные события WPVulnerability" + +#: wpvulnerability-admin.php:1383 wpvulnerability-adminms.php:1656 +msgid "No interval" +msgstr "Без интервала" + +#: wpvulnerability-admin.php:1390 wpvulnerability-adminms.php:1663 +msgid "Next:" +msgstr "Следующий:" + +#: wpvulnerability-admin.php:1400 wpvulnerability-adminms.php:1673 +msgid "Repair Cron Events" +msgstr "Восстановить cron-события" + +#: wpvulnerability-admin.php:1408 wpvulnerability-adminms.php:1681 +msgid "Uninstall Data" +msgstr "Данные при удалении" + +#: wpvulnerability-admin.php:1410 wpvulnerability-adminms.php:1683 +msgid "" +"By default, all plugin data is preserved when WPVulnerability is deleted. " +"Enable the option below only if you want all options, logs, and cached data " +"permanently removed on uninstall." +msgstr "" +"По умолчанию все данные плагина сохраняются при удалении WPVulnerability. " +"Включите параметр ниже только в том случае, если вы хотите, чтобы все " +"настройки, журналы и кэшированные данные были безвозвратно удалены при удалении." + +#: wpvulnerability-admin.php:1420 wpvulnerability-adminms.php:1693 +msgid "Delete all plugin data on uninstall" +msgstr "Удалить все данные плагина при удалении" + +#: wpvulnerability-admin.php:1423 wpvulnerability-adminms.php:1696 +msgid "" +"Default: unchecked (data preserved). Check only if you want a clean removal." +msgstr "" +"По умолчанию: не отмечено (данные сохраняются). Отмечайте только если " +"хотите чистое удаление." + +#: wpvulnerability-admin.php:1425 wpvulnerability-adminms.php:1698 +msgid "Save preference" +msgstr "Сохранить настройку" + +#: wpvulnerability-admin.php:1432 wpvulnerability-adminms.php:1705 +msgid "Reset WPVulnerability" +msgstr "Сбросить WPVulnerability" + +#: wpvulnerability-admin.php:1434 wpvulnerability-adminms.php:1707 +msgid "" +"Delete all WPVulnerability settings, cached data, logs, and scheduled " +"events, then restore defaults and reload data from the API." +msgstr "" +"Удалить все настройки WPVulnerability, кэшированные данные, журналы и " +"запланированные события, затем восстановить настройки по умолчанию и " +"перезагрузить данные из API." + +#: wpvulnerability-admin.php:1436 wpvulnerability-adminms.php:1709 +msgid "This action cannot be undone." +msgstr "Это действие нельзя отменить." + +#: wpvulnerability-admin.php:1438 wpvulnerability-adminms.php:1711 +msgid "" +"Are you sure you want to reset all WPVulnerability data? This action cannot " +"be undone." +msgstr "" +"Вы уверены, что хотите сбросить все данные WPVulnerability? Это действие " +"нельзя отменить." + +#: wpvulnerability-admin.php:1441 wpvulnerability-adminms.php:1713 +msgid "Reset Plugin" +msgstr "Сбросить плагин" + +#: wpvulnerability-admin.php:1468 wpvulnerability-adminms.php:1740 +msgid "Vulnerability Database Statistics" +msgstr "Статистика базы данных уязвимостей" + +#. translators: number of vulnerabilities. +#: wpvulnerability-admin.php:1510 wpvulnerability-adminms.php:1782 +#, php-format +msgid "%s vulnerability" +msgid_plural "%s vulnerabilities" +msgstr[0] "%s уязвимость" +msgstr[1] "%s уязвимости" +msgstr[2] "%s уязвимостей" + +#. translators: number of products. +#: wpvulnerability-admin.php:1520 wpvulnerability-adminms.php:1792 +#, php-format +msgid "(%s product)" +msgid_plural "(%s products)" +msgstr[0] "(%s продукт)" +msgstr[1] "(%s продукта)" +msgstr[2] "(%s продуктов)" + +#: wpvulnerability-admin.php:1527 wpvulnerability-adminms.php:1799 +msgid "No data" +msgstr "Нет данных" + +#. translators: date of last update. +#: wpvulnerability-admin.php:1544 wpvulnerability-adminms.php:1814 +#, php-format +msgid "Database last updated: %s" +msgstr "База данных последний раз обновлена: %s" + +#: wpvulnerability-admin.php:1566 wpvulnerability-adminms.php:1836 +msgid "Intelligence Sources" +msgstr "Источники данных" + +#: wpvulnerability-admin.php:1567 wpvulnerability-adminms.php:1837 +msgid "Number of vulnerabilities contributed by each intelligence source." +msgstr "Количество уязвимостей, предоставленных каждым источником данных." + +#: wpvulnerability-admin.php:1571 wpvulnerability-adminms.php:1841 +msgid "Source" +msgstr "Источник" + +#: wpvulnerability-admin.php:1572 wpvulnerability-admin.php:2104 +#: wpvulnerability-adminms.php:1842 wpvulnerability-adminms.php:2261 +msgid "Core" +msgstr "Ядро" + +#: wpvulnerability-admin.php:1603 wpvulnerability-adminms.php:1873 +msgid "Sponsors" +msgstr "Спонсоры" + +#: wpvulnerability-admin.php:1626 wpvulnerability-adminms.php:1896 +msgid "No sponsor data available." +msgstr "Данные о спонсорах недоступны." + +#: wpvulnerability-admin.php:1633 wpvulnerability-adminms.php:1903 +msgid "Contributors" +msgstr "Участники разработки" + +#: wpvulnerability-admin.php:1656 wpvulnerability-adminms.php:1926 +msgid "No contributor data available." +msgstr "Данные об участниках недоступны." + +#: wpvulnerability-admin.php:1674 wpvulnerability-adminms.php:432 +msgid "You do not have sufficient permissions to access this page." +msgstr "У вас недостаточно прав для доступа к этой странице." + +#: wpvulnerability-admin.php:1684 wpvulnerability-adminms.php:441 +msgid "WPVulnerability settings" +msgstr "Настройки WPVulnerability" + +#: wpvulnerability-admin.php:1801 wpvulnerability-adminms.php:1963 +msgid "Configure and save these settings to receive notifications." +msgstr "Конфигурируйте и сохраните эти настройки для получения уведомлений." + +#: wpvulnerability-admin.php:1814 wpvulnerability-adminms.php:2071 +msgid "Configure and save these settings to hide vulnerabilities." +msgstr "Настройте и сохраните эти параметры, чтобы скрыть уязвимости." + +#: wpvulnerability-admin.php:1845 wpvulnerability-adminms.php:1993 +msgid "Default administrator email" +msgstr "Электронная почта администратора по умолчанию" + +#: wpvulnerability-admin.php:1909 wpvulnerability-adminms.php:2057 +msgid "Read more if you want to force the cache time." +msgstr "Прочитайте больше, если Вы хотите увеличить время кэширования." + +#: wpvulnerability-admin.php:1939 wpvulnerability-adminms.php:2099 +msgid "Never" +msgstr "Никогда" + +#: wpvulnerability-admin.php:1944 wpvulnerability-adminms.php:2104 +msgid "Daily" +msgstr "Ежедневно" + +#: wpvulnerability-admin.php:1949 wpvulnerability-adminms.php:2109 +msgid "Weekly" +msgstr "Еженедельно" + +#: wpvulnerability-admin.php:1953 wpvulnerability-adminms.php:2113 +msgid "Day" +msgstr "День" + +#: wpvulnerability-admin.php:1966 wpvulnerability-adminms.php:2126 +msgid "Hour" +msgstr "Час" + +#: wpvulnerability-admin.php:1968 wpvulnerability-adminms.php:2128 +msgid "Minute" +msgstr "Минута" + +#: wpvulnerability-admin.php:2166 wpvulnerability-adminms.php:2323 +msgid "Read more about how to force the deactivation of an item." +msgstr "Подробнее о том, как принудительно деактивировать элемент." + +#: wpvulnerability-admin.php:2292 wpvulnerability-adminms.php:2870 +msgid "" +"Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com" +msgstr "" +"Неверный URL вебхука Slack. Должен быть действительным HTTPS URL с hooks.slack.com" + +#: wpvulnerability-admin.php:2315 wpvulnerability-adminms.php:2893 +msgid "" +"Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office." +"com, office365.com, or api.hooks.microsoft.com" +msgstr "" +"Неверный URL вебхука Microsoft Teams. Должен быть действительным HTTPS URL с office." +"com, office365.com или api.hooks.microsoft.com" + +#: wpvulnerability-admin.php:2338 wpvulnerability-adminms.php:2916 +msgid "" +"Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or " +"discordapp.com" +msgstr "" +"Неверный URL вебхука Discord. Должен быть действительным HTTPS URL с discord.com или " +"discordapp.com" + +#: wpvulnerability-admin.php:2357 wpvulnerability-adminms.php:2935 +msgid "" +"Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-" +"zyx57W2v1u123ew11" +msgstr "" +"Неверный формат токена бота Telegram. Должен быть вида: 123456:ABC-DEF1234ghIkl-" +"zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:2493 wpvulnerability-adminms.php:2400 +msgid "All Clear" +msgstr "Всё в порядке" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2503 wpvulnerability-adminms.php:2410 +#, php-format +msgid "%d Critical Issue Found" +msgid_plural "%d Critical Issues Found" +msgstr[0] "Найдена %d критическая проблема" +msgstr[1] "Найдено %d критические проблемы" +msgstr[2] "Найдено %d критических проблем" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2508 wpvulnerability-adminms.php:2415 +#, php-format +msgid "%d Issue Found" +msgid_plural "%d Issues Found" +msgstr[0] "Найдена %d проблема" +msgstr[1] "Найдено %d проблемы" +msgstr[2] "Найдено %d проблем" + +#: wpvulnerability-admin.php:2515 wpvulnerability-adminms.php:2422 +msgid "Never checked" +msgstr "Никогда не проверялось" + +#. translators: %d: number of minutes +#: wpvulnerability-admin.php:2523 wpvulnerability-adminms.php:2430 +#, php-format +msgid "%d minute ago" +msgid_plural "%d minutes ago" +msgstr[0] "%d минуту назад" +msgstr[1] "%d минуты назад" +msgstr[2] "%d минут назад" + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:2527 wpvulnerability-adminms.php:2434 +#, php-format +msgid "%d hour ago" +msgid_plural "%d hours ago" +msgstr[0] "%d час назад" +msgstr[1] "%d часа назад" +msgstr[2] "%d часов назад" + +#. translators: %s: time since last check +#: wpvulnerability-admin.php:2539 wpvulnerability-adminms.php:2446 +#, php-format +msgid "Last checked: %s" +msgstr "Последняя проверка: %s" + +#: wpvulnerability-admin.php:2540 wpvulnerability-adminms.php:2447 +msgid "Refresh Now" +msgstr "Обновить сейчас" + +#: wpvulnerability-admin.php:2547 wpvulnerability-adminms.php:2454 +msgid "No vulnerabilities detected" +msgstr "Уязвимости не обнаружены" + +#: wpvulnerability-admin.php:2548 wpvulnerability-adminms.php:2455 +msgid "Your site is up to date and secure" +msgstr "Ваш сайт обновлён и защищён" + +#: wpvulnerability-admin.php:2616 wpvulnerability-adminms.php:2523 +msgid "Server Software" +msgstr "Серверное программное обеспечение" + +#: wpvulnerability-admin.php:2829 wpvulnerability-adminms.php:2736 +msgid "Site Health" +msgstr "Здоровье сайта" + +#: wpvulnerability-admin.php:2831 wpvulnerability-adminms.php:2738 +#: wpvulnerability-run.php:33 +msgid "Settings" +msgstr "Настройки" + +#: wpvulnerability-admin.php:2846 wpvulnerability-adminms.php:2754 +msgid "WPVulnerability Status" +msgstr "Статус WPVulnerability" + +#: wpvulnerability-admin.php:2878 wpvulnerability-adminms.php:3052 +msgid "Receive vulnerability notifications" +msgstr "Получайте уведомления об уязвимостях" + +#: wpvulnerability-admin.php:2886 wpvulnerability-adminms.php:3060 +msgid "Cache expiration time" +msgstr "Время истечения кэша" + +#: wpvulnerability-admin.php:2895 wpvulnerability-adminms.php:3069 +msgid "How often you want to receive notifications" +msgstr "Как часто вы хотите получать уведомления" + +#: wpvulnerability-admin.php:2904 wpvulnerability-adminms.php:3078 +msgid "Where do you want to receive notifications?" +msgstr "Где Вы хотите получать уведомления?" + +#: wpvulnerability-admin.php:2913 wpvulnerability-adminms.php:3087 +msgid "Email addresses to notify (separated by commas)" +msgstr "Адреса email для уведомлений (через запятую)" + +#: wpvulnerability-admin.php:2922 wpvulnerability-adminms.php:3096 +msgid "Slack webhook URL" +msgstr "URL вебхука Slack" + +#: wpvulnerability-admin.php:2931 wpvulnerability-adminms.php:3105 +msgid "Teams webhook URL" +msgstr "URL вебхука Teams" + +#: wpvulnerability-admin.php:2950 wpvulnerability-adminms.php:3126 +msgid "Vulnerabilities to hide" +msgstr "Уязвимые места, которые нужно скрывать" + +#: wpvulnerability-admin.php:2958 wpvulnerability-adminms.php:3134 +msgid "What do you want to hide?" +msgstr "Что Вы хотите скрыть?" + +#: wpvulnerability-admin.php:3008 wpvulnerability-adminms.php:3185 +msgid "Standard (Hybrid Detection)" +msgstr "Стандартный (гибридное обнаружение)" + +#: wpvulnerability-admin.php:3009 wpvulnerability-adminms.php:3186 +msgid "Strict (Extensions Only)" +msgstr "Строгий (только расширения)" + +#: wpvulnerability-admin.php:3010 wpvulnerability-adminms.php:3187 +msgid "Disabled (No Detection)" +msgstr "Отключено (без обнаружения)" + +#: wpvulnerability-admin.php:3016 wpvulnerability-adminms.php:3193 +msgid "Security Status" +msgstr "Статус безопасности" + +#: wpvulnerability-admin.php:3020 wpvulnerability-adminms.php:3197 +msgid "Security Mode" +msgstr "Режим безопасности" + +#: wpvulnerability-admin.php:3025 wpvulnerability-adminms.php:3202 +msgid "Shell Execution" +msgstr "Выполнение команд оболочки" + +#: wpvulnerability-admin.php:3027 wpvulnerability-admin.php:3475 +#: wpvulnerability-admin.php:3483 wpvulnerability-adminms.php:3204 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Enabled" +msgstr "Включено" + +#: wpvulnerability-admin.php:3034 wpvulnerability-adminms.php:3211 +msgid "Audit Logging" +msgstr "Журналирование аудита" + +#. translators: %d: number of days +#: wpvulnerability-admin.php:3039 wpvulnerability-adminms.php:3216 +#, php-format +msgid "Enabled (%d days)" +msgstr "Включено (%d дней)" + +#: wpvulnerability-admin.php:3048 wpvulnerability-adminms.php:3225 +msgid "Total Log Entries" +msgstr "Всего записей в журнале" + +#: wpvulnerability-admin.php:3055 wpvulnerability-adminms.php:3232 +msgid "Last Shell Execution" +msgstr "Последнее выполнение команды оболочки" + +#. translators: %s: time ago +#: wpvulnerability-admin.php:3061 wpvulnerability-admin.php:3266 +#: wpvulnerability-adminms.php:3238 wpvulnerability-adminms.php:3441 +#, php-format +msgid "%s ago" +msgstr "%s назад" + +#: wpvulnerability-admin.php:3073 wpvulnerability-adminms.php:3250 +msgid "" +"Configure security settings via wp-config.php constants: " +"WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, " +"WPVULNERABILITY_SHELL_EXEC_WHITELIST." +msgstr "" +"Настройте параметры безопасности через константы wp-config.php: " +"WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, " +"WPVULNERABILITY_SHELL_EXEC_WHITELIST." + +#. translators: %s: URL to security documentation +#: wpvulnerability-admin.php:3079 wpvulnerability-adminms.php:3256 +#, php-format +msgid "" +"See security " +"configuration documentation for details." +msgstr "" +"Подробнее см. документацию по " +"настройке безопасности." + +#: wpvulnerability-admin.php:3103 wpvulnerability-adminms.php:3280 +msgid "Memcached" +msgstr "Memcached" + +#: wpvulnerability-admin.php:3131 wpvulnerability-adminms.php:3308 +msgid "Imagick Extension" +msgstr "Расширение Imagick" + +#: wpvulnerability-admin.php:3132 wpvulnerability-adminms.php:3309 +msgid "Redis Extension" +msgstr "Расширение Redis" + +#: wpvulnerability-admin.php:3133 wpvulnerability-adminms.php:3310 +msgid "Memcached Extension" +msgstr "Расширение Memcached" + +#: wpvulnerability-admin.php:3134 wpvulnerability-adminms.php:3311 +msgid "Memcache Extension" +msgstr "Расширение Memcache" + +#: wpvulnerability-admin.php:3135 wpvulnerability-adminms.php:3312 +msgid "SQLite3 Extension" +msgstr "Расширение SQLite3" + +#: wpvulnerability-admin.php:3136 wpvulnerability-adminms.php:3313 +msgid "PDO SQLite" +msgstr "PDO SQLite" + +#: wpvulnerability-admin.php:3137 wpvulnerability-adminms.php:3314 +msgid "Shell Command" +msgstr "Команда оболочки" + +#: wpvulnerability-admin.php:3138 wpvulnerability-adminms.php:3315 +msgid "Binary Check" +msgstr "Проверка бинарного файла" + +#: wpvulnerability-admin.php:3139 wpvulnerability-adminms.php:3316 +msgid "Not Detected" +msgstr "Не обнаружено" + +#: wpvulnerability-admin.php:3143 wpvulnerability-adminms.php:3320 +msgid "Software Detection Methods" +msgstr "Методы обнаружения программного обеспечения" + +#: wpvulnerability-admin.php:3144 wpvulnerability-adminms.php:3321 +msgid "" +"Shows which detection method was used for each software component and the " +"reliability score." +msgstr "" +"Показывает, какой метод обнаружения использовался для каждого программного " +"компонента и оценку надёжности." + +#: wpvulnerability-admin.php:3149 wpvulnerability-admin.php:3234 +#: wpvulnerability-admin.php:3558 wpvulnerability-adminms.php:3326 +#: wpvulnerability-adminms.php:3411 wpvulnerability-adminms.php:3752 +msgid "Component" +msgstr "Компонент" + +#: wpvulnerability-admin.php:3150 wpvulnerability-adminms.php:3327 +msgid "Version" +msgstr "Версия" + +#: wpvulnerability-admin.php:3151 wpvulnerability-adminms.php:3328 +msgid "Detection Method" +msgstr "Метод обнаружения" + +#: wpvulnerability-admin.php:3152 wpvulnerability-adminms.php:3329 +msgid "Reliability" +msgstr "Надёжность" + +#: wpvulnerability-admin.php:3164 wpvulnerability-adminms.php:3341 +msgid "Not detected" +msgstr "Не обнаружено" + +#: wpvulnerability-admin.php:3220 wpvulnerability-adminms.php:3397 +msgid "Shell Execution Audit Logs" +msgstr "Журналы аудита выполнения команд оболочки" + +#: wpvulnerability-admin.php:3221 wpvulnerability-adminms.php:3398 +msgid "" +"Complete audit trail of shell command executions for security monitoring." +msgstr "" +"Полный журнал аудита выполнения команд оболочки для мониторинга безопасности." + +#: wpvulnerability-admin.php:3226 wpvulnerability-adminms.php:3403 +msgid "No shell execution logs found." +msgstr "Журналы выполнения команд оболочки не найдены." + +#: wpvulnerability-admin.php:3227 wpvulnerability-adminms.php:3404 +msgid "" +"Logs will appear here when shell commands are executed for software " +"detection." +msgstr "" +"Журналы появятся здесь, когда команды оболочки будут выполняться для " +"обнаружения программного обеспечения." + +#: wpvulnerability-admin.php:3233 wpvulnerability-adminms.php:3410 +msgid "Time" +msgstr "Время" + +#: wpvulnerability-admin.php:3235 wpvulnerability-adminms.php:3412 +msgid "Command" +msgstr "Команда" + +#: wpvulnerability-admin.php:3237 wpvulnerability-adminms.php:3414 +msgid "User" +msgstr "Пользователь" + +#: wpvulnerability-admin.php:3238 wpvulnerability-adminms.php:3415 +msgid "Output" +msgstr "Вывод" + +#. translators: %d: number of logs shown +#: wpvulnerability-admin.php:3302 wpvulnerability-adminms.php:3477 +#, php-format +msgid "Showing the %d most recent log entries." +msgstr "Показано %d последних записей журнала." + +#: wpvulnerability-admin.php:3320 wpvulnerability-adminms.php:3565 +msgid "Invalid nonce." +msgstr "Неверный nonce." + +#: wpvulnerability-admin.php:3325 wpvulnerability-adminms.php:3570 +msgid "Insufficient permissions." +msgstr "Недостаточно прав." + +#: wpvulnerability-admin.php:3331 wpvulnerability-adminms.php:3576 +msgid "No component specified." +msgstr "Компонент не указан." + +#: wpvulnerability-admin.php:3366 wpvulnerability-adminms.php:3524 +msgid "Debug Information" +msgstr "Отладочная информация" + +#: wpvulnerability-admin.php:3368 wpvulnerability-adminms.php:3526 +msgid "This tab is only visible when WP_DEBUG is enabled. Use with caution." +msgstr "Эта вкладка видна только при включённом WP_DEBUG. Используйте с осторожностью." + +#: wpvulnerability-admin.php:3429 wpvulnerability-adminms.php:3623 +msgid "System Information" +msgstr "Системная информация" + +#: wpvulnerability-admin.php:3433 wpvulnerability-adminms.php:3627 +msgid "WordPress Version" +msgstr "Версия WordPress" + +#: wpvulnerability-admin.php:3437 wpvulnerability-adminms.php:3631 +msgid "Multisite" +msgstr "Мультисайт" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "Yes" +msgstr "Да" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "No" +msgstr "Нет" + +#: wpvulnerability-admin.php:3441 wpvulnerability-adminms.php:3635 +msgid "Language" +msgstr "Язык" + +#: wpvulnerability-admin.php:3445 wpvulnerability-adminms.php:3639 +msgid "PHP Version" +msgstr "Версия PHP" + +#: wpvulnerability-admin.php:3449 wpvulnerability-adminms.php:3643 +msgid "PHP Extensions" +msgstr "Расширения PHP" + +#: wpvulnerability-admin.php:3460 wpvulnerability-adminms.php:3654 +msgid "PHP Memory Limit" +msgstr "Лимит памяти PHP" + +#: wpvulnerability-admin.php:3464 wpvulnerability-adminms.php:3658 +msgid "Database" +msgstr "База данных" + +#: wpvulnerability-admin.php:3468 wpvulnerability-adminms.php:3662 +msgid "Web Server" +msgstr "Веб-сервер" + +#: wpvulnerability-admin.php:3472 wpvulnerability-adminms.php:3666 +msgid "WP_DEBUG" +msgstr "WP_DEBUG" + +#: wpvulnerability-admin.php:3480 wpvulnerability-adminms.php:3674 +msgid "WP_DEBUG_LOG" +msgstr "WP_DEBUG_LOG" + +#: wpvulnerability-admin.php:3490 wpvulnerability-adminms.php:3684 +msgid "Path:" +msgstr "Путь:" + +#. translators: %s: file size +#: wpvulnerability-admin.php:3499 wpvulnerability-adminms.php:3698 +#, php-format +msgid "Size: %s" +msgstr "Размер: %s" + +#: wpvulnerability-admin.php:3510 wpvulnerability-adminms.php:3704 +msgid "View Log File" +msgstr "Просмотреть файл журнала" + +#: wpvulnerability-admin.php:3516 wpvulnerability-adminms.php:3710 +msgid "Log file is not web-accessible (outside wp-content)" +msgstr "Файл журнала недоступен через веб (находится за пределами wp-content)" + +#: wpvulnerability-admin.php:3522 wpvulnerability-adminms.php:3716 +msgid "Log file does not exist yet" +msgstr "Файл журнала ещё не существует" + +#: wpvulnerability-admin.php:3530 wpvulnerability-adminms.php:3724 +msgid "Plugin Version" +msgstr "Версия плагина" + +#: wpvulnerability-admin.php:3554 wpvulnerability-adminms.php:3748 +msgid "Component Detection" +msgstr "Обнаружение компонентов" + +#: wpvulnerability-admin.php:3560 wpvulnerability-adminms.php:3754 +msgid "Version Detected" +msgstr "Версия обнаружена" + +#: wpvulnerability-admin.php:3561 wpvulnerability-adminms.php:3755 +msgid "Analyzed" +msgstr "Проанализировано" + +#: wpvulnerability-admin.php:3562 wpvulnerability-adminms.php:3756 +msgid "Cache Status" +msgstr "Статус кэша" + +#: wpvulnerability-admin.php:3622 wpvulnerability-adminms.php:3816 +msgid "Configuration Summary" +msgstr "Сводка конфигурации" + +#: wpvulnerability-admin.php:3626 wpvulnerability-adminms.php:3820 +msgid "Cache Duration" +msgstr "Продолжительность кэша" + +#: wpvulnerability-admin.php:3636 wpvulnerability-adminms.php:3830 +msgid "Log Retention" +msgstr "Хранение журнала" + +#: wpvulnerability-admin.php:3646 wpvulnerability-adminms.php:3840 +msgid "Components Analyzed" +msgstr "Проанализированные компоненты" + +#: wpvulnerability-admin.php:3661 wpvulnerability-adminms.php:3855 +msgid "Notification Email" +msgstr "Email для уведомлений" + +#: wpvulnerability-admin.php:3682 wpvulnerability-adminms.php:3876 +msgid "Slack Webhook" +msgstr "Вебхук Slack" + +#: wpvulnerability-admin.php:3692 wpvulnerability-admin.php:3712 +#: wpvulnerability-admin.php:3732 wpvulnerability-admin.php:3752 +#: wpvulnerability-adminms.php:3886 wpvulnerability-adminms.php:3906 +#: wpvulnerability-adminms.php:3926 wpvulnerability-adminms.php:3946 +msgid "Configured & Enabled" +msgstr "Настроено и включено" + +#: wpvulnerability-admin.php:3694 wpvulnerability-admin.php:3714 +#: wpvulnerability-admin.php:3734 wpvulnerability-admin.php:3754 +#: wpvulnerability-adminms.php:3888 wpvulnerability-adminms.php:3908 +#: wpvulnerability-adminms.php:3928 wpvulnerability-adminms.php:3948 +msgid "Configured (Disabled)" +msgstr "Настроено (отключено)" + +#: wpvulnerability-admin.php:3696 wpvulnerability-admin.php:3716 +#: wpvulnerability-admin.php:3736 wpvulnerability-admin.php:3756 +#: wpvulnerability-adminms.php:3890 wpvulnerability-adminms.php:3910 +#: wpvulnerability-adminms.php:3930 wpvulnerability-adminms.php:3950 +msgid "Not configured" +msgstr "Не настроено" + +#: wpvulnerability-admin.php:3703 wpvulnerability-adminms.php:3897 +msgid "Teams Webhook" +msgstr "Вебхук Teams" + +#: wpvulnerability-admin.php:3723 wpvulnerability-adminms.php:3917 +msgid "Discord Webhook" +msgstr "Вебхук Discord" + +#: wpvulnerability-admin.php:3743 wpvulnerability-adminms.php:3937 +msgid "Telegram Bot" +msgstr "Бот Telegram" + +#: wpvulnerability-admin.php:3788 wpvulnerability-adminms.php:3982 +msgid "Cron Status" +msgstr "Статус cron" + +#: wpvulnerability-admin.php:3792 wpvulnerability-adminms.php:3986 +msgid "Update Database" +msgstr "Обновить базу данных" + +#. translators: %s: date and time +#: wpvulnerability-admin.php:3797 wpvulnerability-admin.php:3810 +#: wpvulnerability-adminms.php:3991 wpvulnerability-adminms.php:4004 +#, php-format +msgid "Next run: %s" +msgstr "Следующий запуск: %s" + +#: wpvulnerability-admin.php:3800 wpvulnerability-admin.php:3813 +#: wpvulnerability-adminms.php:3994 wpvulnerability-adminms.php:4007 +msgid "Not scheduled" +msgstr "Не запланировано" + +#: wpvulnerability-admin.php:3805 wpvulnerability-adminms.php:3999 +msgid "Send Notification" +msgstr "Отправить уведомление" + +#: wpvulnerability-admin.php:3826 wpvulnerability-adminms.php:4020 +msgid "Run Update Now" +msgstr "Запустить обновление сейчас" + +#: wpvulnerability-admin.php:3834 wpvulnerability-adminms.php:4028 +msgid "Run Notification Now" +msgstr "Отправить уведомление сейчас" + +#: wpvulnerability-admin.php:3840 wpvulnerability-adminms.php:4034 +msgid "You do not have permission to run these actions." +msgstr "У вас нет разрешения на выполнение этих действий." + +#: wpvulnerability-admin.php:3859 wpvulnerability-adminms.php:4053 +msgid "API Testing" +msgstr "Тестирование API" + +#: wpvulnerability-admin.php:3862 wpvulnerability-adminms.php:4056 +msgid "" +"Test API connectivity for each component. Click a button to send a test " +"request." +msgstr "" +"Проверьте подключение к API для каждого компонента. Нажмите кнопку, чтобы " +"отправить тестовый запрос." + +#. translators: %s: component name +#: wpvulnerability-admin.php:3869 wpvulnerability-adminms.php:4063 +#, php-format +msgid "Test %s" +msgstr "Тест %s" + +#: wpvulnerability-admin.php:3884 wpvulnerability-adminms.php:4078 +msgid "Testing..." +msgstr "Тестирование..." + +#: wpvulnerability-admin.php:3900 wpvulnerability-adminms.php:4094 +msgid "HTTP Code:" +msgstr "HTTP код:" + +#: wpvulnerability-admin.php:3901 wpvulnerability-adminms.php:4095 +msgid "Response Time:" +msgstr "Время ответа:" + +#: wpvulnerability-admin.php:3903 wpvulnerability-adminms.php:4097 +msgid "Response Preview" +msgstr "Предварительный просмотр ответа" + +#: wpvulnerability-admin.php:3910 wpvulnerability-admin.php:3914 +#: wpvulnerability-adminms.php:4104 wpvulnerability-adminms.php:4108 +msgid "Test" +msgstr "Тест" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "Error:" +msgstr "Ошибка:" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "AJAX request failed." +msgstr "AJAX-запрос не удался." + +#: wpvulnerability-admin.php:3922 wpvulnerability-adminms.php:4116 +msgid "You do not have permission to test API connectivity." +msgstr "У вас нет разрешения на тестирование подключения к API." + +#: wpvulnerability-admin.php:3943 wpvulnerability-adminms.php:4137 +msgid "Database Options Viewer" +msgstr "Просмотр параметров базы данных" + +#: wpvulnerability-admin.php:3944 wpvulnerability-adminms.php:4138 +msgid "View the raw data stored in WordPress options." +msgstr "Просмотр необработанных данных, хранящихся в параметрах WordPress." + +#: wpvulnerability-admin.php:3950 wpvulnerability-adminms.php:4144 +msgid "Select an option..." +msgstr "Выберите параметр..." + +#: wpvulnerability-admin.php:3969 wpvulnerability-adminms.php:4163 +msgid "Option not found or empty." +msgstr "Параметр не найден или пуст." + +#: wpvulnerability-admin.php:3987 wpvulnerability-adminms.php:4182 +msgid "Quick Actions" +msgstr "Быстрые действия" + +#: wpvulnerability-admin.php:3988 wpvulnerability-adminms.php:4183 +msgid "Perform debugging actions. Use with caution." +msgstr "Выполнить отладочные действия. Используйте с осторожностью." + +#: wpvulnerability-admin.php:3992 wpvulnerability-adminms.php:4187 +msgid "Are you sure you want to clear all caches?" +msgstr "Вы уверены, что хотите очистить все кэши?" + +#: wpvulnerability-admin.php:3996 wpvulnerability-adminms.php:4191 +msgid "Clear All Caches" +msgstr "Очистить все кэши" + +#: wpvulnerability-admin.php:4000 wpvulnerability-adminms.php:4195 +msgid "Are you sure you want to reset signatures?" +msgstr "Вы уверены, что хотите сбросить сигнатуры?" + +#: wpvulnerability-admin.php:4004 wpvulnerability-adminms.php:4199 +msgid "Reset Signatures" +msgstr "Сбросить сигнатуры" + +#: wpvulnerability-admin.php:4012 wpvulnerability-adminms.php:4207 +msgid "Export Debug Info" +msgstr "Экспортировать отладочную информацию" + +#: wpvulnerability-admin.php:4018 wpvulnerability-adminms.php:4213 +msgid "You do not have permission to perform these actions." +msgstr "У вас нет разрешения на выполнение этих действий." + +#: wpvulnerability-adminms.php:101 wpvulnerability-adminms.php:199 +msgid "Settings saved." +msgstr "Настройки сохранены." + +#: wpvulnerability-adminms.php:277 +msgid "WPVulnerability cron events have been repaired across the network." +msgstr "Cron-события WPVulnerability были восстановлены по всей сети." + +#: wpvulnerability-adminms.php:3512 +msgid "You do not have permission to access this page." +msgstr "У вас нет разрешения на доступ к этой странице." + +#. translators: 1: core version +#: wpvulnerability-core.php:33 +#, php-format +msgid "" +"WordPress %1$s has a known vulnerability that may be affecting your " +"installed version." +msgstr "" +"WordPress %1$s имеет известную уязвимость, которая может затрагивать " +"вашу установленную версию." + +#: wpvulnerability-core.php:115 wpvulnerability-plugins.php:207 +#: wpvulnerability-process.php:335 wpvulnerability-process.php:443 +#: wpvulnerability-process.php:529 wpvulnerability-themes.php:173 +#: wpvulnerability-themes.php:469 +msgid "Actively exploited" +msgstr "Активно эксплуатируется" + +#: wpvulnerability-core.php:122 wpvulnerability-plugins.php:214 +#: wpvulnerability-process.php:342 wpvulnerability-process.php:450 +#: wpvulnerability-themes.php:180 wpvulnerability-themes.php:476 +msgid "Public exploit" +msgstr "Публичный эксплойт" + +#: wpvulnerability-core.php:125 wpvulnerability-plugins.php:217 +#: wpvulnerability-process.php:345 wpvulnerability-process.php:453 +#: wpvulnerability-themes.php:183 wpvulnerability-themes.php:479 +msgid "Automatable" +msgstr "Автоматизируемое" + +#: wpvulnerability-core.php:139 wpvulnerability-plugins.php:245 +#: wpvulnerability-process.php:371 wpvulnerability-process.php:469 +#: wpvulnerability-process.php:544 wpvulnerability-themes.php:211 +#: wpvulnerability-themes.php:503 +msgid "References:" +msgstr "Ссылки:" + +#: wpvulnerability-debug.php:399 +msgid "Invalid component specified." +msgstr "Указан неверный компонент." + +#: wpvulnerability-debug.php:423 +msgid "Version not detected for this component." +msgstr "Версия для этого компонента не обнаружена." + +#: wpvulnerability-debug.php:453 +msgid "API request successful." +msgstr "Запрос к API выполнен успешно." + +#. translators: %d: HTTP status code +#: wpvulnerability-debug.php:469 +#, php-format +msgid "API returned HTTP code %d." +msgstr "API вернул HTTP код %d." + +#: wpvulnerability-general.php:355 +msgid "WPVulnerability Logs" +msgstr "Журналы WPVulnerability" + +#: wpvulnerability-general.php:356 +msgid "WPVulnerability Log" +msgstr "Журнал WPVulnerability" + +#: wpvulnerability-general.php:1873 wpvulnerability-general.php:1874 +msgid "Low" +msgstr "низкая" + +#: wpvulnerability-general.php:1875 wpvulnerability-general.php:1876 +msgid "Medium" +msgstr "Средняя" + +#: wpvulnerability-general.php:1877 wpvulnerability-general.php:1878 +msgid "High" +msgstr "высокая" + +#: wpvulnerability-general.php:1879 wpvulnerability-general.php:1880 +msgid "Critical" +msgstr "критическая" + +#: wpvulnerability-general.php:2684 +msgid "WPVulnerability Shell Logs" +msgstr "Журналы команд оболочки WPVulnerability" + +#: wpvulnerability-general.php:2685 +msgid "WPVulnerability Shell Log" +msgstr "Журнал команд оболочки WPVulnerability" + +#: wpvulnerability-notifications.php:30 +msgid "Every week" +msgstr "Каждую неделю" + +#: wpvulnerability-notifications.php:57 +msgid "Every day" +msgstr "Ежедневно" + +#: wpvulnerability-notifications.php:84 +msgid "Invalid request." +msgstr "Неверный запрос." + +#: wpvulnerability-notifications.php:104 +msgid "You have unsubscribed from WPVulnerability notifications." +msgstr "Вы отписались от уведомлений WPVulnerability." + +#. translators: %1$s the website of Database, %2$s database site name. +#: wpvulnerability-notifications.php:289 +#, php-format +msgid "" +"Learn more about the WordPress Vulnerability Database API at %2$s" +msgstr "" +"Узнайте больше об API базы данных уязвимостей WordPress на странице %2$s" + +#. translators: %1$s unsubscribe URL. +#: wpvulnerability-notifications.php:300 +#, php-format +msgid "" +"Want to stop receiving these alerts? Unsubscribe or " +"change the email frequency to Never in the WPVulnerability " +"settings." +msgstr "" +"Хотите прекратить получать эти уведомления? Отпишитесь или " +"измените частоту email на Никогда в настройках WPVulnerability." + +#: wpvulnerability-notifications.php:595 +msgid "No vulnerabilities found" +msgstr "Уязвимости не найдены" + +#: wpvulnerability-notifications.php:596 +msgid "This is likely a test. The site does not have vulnerabilities." +msgstr "Это, вероятно, тест. На сайте нет уязвимостей." + +#: wpvulnerability-notifications.php:601 +msgid "Core vulnerabilities" +msgstr "Уязвимости ядра" + +#: wpvulnerability-notifications.php:607 +msgid "Plugins vulnerabilities" +msgstr "Уязвимости плагинов" + +#: wpvulnerability-notifications.php:613 +msgid "Themes vulnerabilities" +msgstr "Уязвимости тем" + +#: wpvulnerability-notifications.php:619 +msgid "PHP vulnerabilities" +msgstr "Уязвимости PHP" + +#: wpvulnerability-notifications.php:625 +msgid "Apache HTTPD vulnerabilities" +msgstr "Уязвимости Apache HTTPD" + +#: wpvulnerability-notifications.php:631 +msgid "Nginx vulnerabilities" +msgstr "Уязвимости Nginx" + +#: wpvulnerability-notifications.php:637 +msgid "MariaDB vulnerabilities" +msgstr "Уязвимости в MariaDB" + +#: wpvulnerability-notifications.php:643 +msgid "MySQL vulnerabilities" +msgstr "Уязвимости MySQL" + +#: wpvulnerability-notifications.php:649 +msgid "ImageMagick vulnerabilities" +msgstr "Уязвимости в ImageMagick" + +#: wpvulnerability-notifications.php:655 +msgid "curl vulnerabilities" +msgstr "Уязвимости curl" + +#: wpvulnerability-notifications.php:661 +msgid "memcached vulnerabilities" +msgstr "Уязвимости memcached" + +#: wpvulnerability-notifications.php:667 +msgid "Redis vulnerabilities" +msgstr "Уязвимости Redis" + +#: wpvulnerability-notifications.php:673 +msgid "SQLite vulnerabilities" +msgstr "Уязвимости SQLite" + +#. translators: Site name. +#: wpvulnerability-notifications.php:696 +#, php-format +msgid "Vulnerability found: %s" +msgstr "Найдена уязвимость: %s" + +#: wpvulnerability-notifications.php:700 +msgid "Vulnerability found" +msgstr "Найдена уязвимость" + +#. translators: 1: Plugin name +#. translators: 1: theme name +#: wpvulnerability-plugins.php:116 wpvulnerability-themes.php:82 +#, php-format +msgid "" +"%1$s has a known vulnerability that may be affecting your installed version." +msgstr "" +"%1$s имеет известную уязвимость, которая может затрагивать вашу " +"установленную версию." + +#: wpvulnerability-plugins.php:230 wpvulnerability-process.php:358 +msgid "This plugin is closed. Please replace it with another." +msgstr "Этот плагин закрыт. Пожалуйста, замените его на другой." + +#: wpvulnerability-plugins.php:233 wpvulnerability-process.php:361 +msgid "" +"This vulnerability appears to be unpatched. Stay tuned for upcoming plugin " +"updates." +msgstr "" +"Эта уязвимость, похоже, не исправлена. Следите за обновлениями плагина." + +#: wpvulnerability-plugins.php:570 +msgid "It hasn't been updated in over a year." +msgstr "Он не обновлялся уже более года." + +#: wpvulnerability-plugins.php:576 +msgid "It may no longer be available (closed?)." +msgstr "Возможно, он больше не доступен (закрыт?)." + +#: wpvulnerability-plugins.php:614 wpvulnerability-plugins.php:621 +msgid "Last updated on" +msgstr "Последнее обновление на" + +#. translators: the number of vulnerabilities. +#: wpvulnerability-plugins.php:764 wpvulnerability-themes.php:704 +#, php-format +msgid "Vulnerabilities (%d)" +msgstr "Уязвимости (%d)" + +#. translators: %s: software name. +#: wpvulnerability-process.php:601 +#, php-format +msgid "%s running" +msgstr "%s запущен" + +#: wpvulnerability-process.php:611 wpvulnerability-process.php:792 +msgid "End of Life" +msgstr "Конец поддержки" + +#: wpvulnerability-process.php:613 wpvulnerability-process.php:618 +msgid "End of life:" +msgstr "Конец поддержки:" + +#: wpvulnerability-process.php:616 +msgid "Supported" +msgstr "Поддерживается" + +#: wpvulnerability-process.php:652 +msgid "Plugin" +msgstr "Плагин" + +#: wpvulnerability-process.php:721 +msgid "Theme" +msgstr "Тема" + +#. translators: %s: end-of-life date +#: wpvulnerability-process.php:790 +#, php-format +msgid "End of life: %s" +msgstr "Конец поддержки: %s" + +#: wpvulnerability-process.php:795 +msgid "EOL" +msgstr "EOL" + +#: wpvulnerability-run.php:30 +msgid "Network Settings" +msgstr "Настройки сети" + +#: wpvulnerability-run.php:731 wpvulnerability-run.php:781 +#: wpvulnerability-run.php:791 wpvulnerability-run.php:836 +msgid "Vulnerabilities" +msgstr "Уязвимости" + +#: wpvulnerability-schedule.php:30 +msgid "Every 6 hours" +msgstr "Каждые 6 часов" + +#: wpvulnerability-schedule.php:303 +msgid "Database updates" +msgstr "Обновления базы данных" + +#: wpvulnerability-schedule.php:309 +msgid "Log cleanup" +msgstr "Очистка журналов" + +#: wpvulnerability-schedule.php:439 +msgid "" +"Notifications are scheduled, but settings currently disable them. Please " +"review the notifications tab." +msgstr "" +"Уведомления запланированы, но текущие настройки их отключают. Пожалуйста, " +"проверьте вкладку уведомлений." + +#: wpvulnerability-schedule.php:442 +msgid "This event should not be scheduled for this site." +msgstr "Это событие не должно быть запланировано для этого сайта." + +#: wpvulnerability-schedule.php:446 +msgid "Not expected for this site." +msgstr "Не ожидается для этого сайта." + +#: wpvulnerability-schedule.php:450 +msgid "No instances found." +msgstr "Экземпляры не найдены." + +#: wpvulnerability-schedule.php:456 +msgid "Scheduled with an unexpected interval." +msgstr "Запланировано с неожиданным интервалом." + +#: wpvulnerability-schedule.php:460 +msgid "Multiple instances detected." +msgstr "Обнаружено несколько экземпляров." + +#: wpvulnerability-schedule.php:465 +msgid "Scheduled as expected." +msgstr "Запланировано согласно ожиданиям." + +#: wpvulnerability-sitehealth.php:22 +msgid "There aren't plugins vulnerabilities" +msgstr "Уязвимостей плагинов нет" + +#: wpvulnerability-sitehealth.php:30 +msgid "Shows possible vulnerabilities that exist in installed plugins." +msgstr "Показывает возможные уязвимости в установленных плагинах." + +#. translators: Number of plugins vulnerabilities. +#: wpvulnerability-sitehealth.php:43 +#, php-format +msgid "There is %d plugin with vulnerabilities" +msgid_plural "There are %d plugins with vulnerabilities" +msgstr[0] "Плагинов с уязвимостями: %d" +msgstr[1] "Плагинов с уязвимостями: %d" +msgstr[2] "Плагинов с уязвимостями: %d" + +#: wpvulnerability-sitehealth.php:49 +msgid "" +"We've detected potential vulnerabilities in installed plugins. Please check " +"them and keep them updated." +msgstr "" +"Обнаружены потенциальные уязвимости в установленных плагинах. Пожалуйста, " +"проверьте их и обновите." + +#: wpvulnerability-sitehealth.php:57 +msgid "Update plugins" +msgstr "Обновить плагины" + +#: wpvulnerability-sitehealth.php:74 +msgid "There aren't themes vulnerabilities" +msgstr "Нет уязвимостей в темах" + +#: wpvulnerability-sitehealth.php:82 +msgid "Shows possible vulnerabilities that exist in installed themes." +msgstr "Показывает возможные уязвимости в установленных темах." + +#. translators: Number of themes vulnerabilities. +#: wpvulnerability-sitehealth.php:95 +#, php-format +msgid "There is %d theme with vulnerabilities" +msgid_plural "There are %d themes with vulnerabilities" +msgstr[0] "Тем с уязвимостями: %d" +msgstr[1] "Тем с уязвимостями: %d" +msgstr[2] "Тем с уязвимостями: %d" + +#: wpvulnerability-sitehealth.php:101 +msgid "" +"We've detected potential vulnerabilities in installed themes. Please check " +"them and keep them updated." +msgstr "" +"Обнаружены потенциальные уязвимости в установленных темах. Пожалуйста, " +"проверьте их и обновите." + +#: wpvulnerability-sitehealth.php:109 +msgid "Update themes" +msgstr "Обновить темы" + +#: wpvulnerability-sitehealth.php:126 +msgid "There aren't WordPress vulnerabilities" +msgstr "В WordPress нет уязвимостей" + +#: wpvulnerability-sitehealth.php:134 +msgid "Shows possible vulnerabilities existing in the WordPress core." +msgstr "Показывает возможные уязвимости в ядре WordPress." + +#. translators: Number of core vulnerabilities. +#: wpvulnerability-sitehealth.php:147 +#, php-format +msgid "There is %d core vulnerability" +msgid_plural "There are %d core vulnerabilities" +msgstr[0] "Уязвимости ядра: %d" +msgstr[1] "Уязвимости ядра: %d" +msgstr[2] "Уязвимости ядра: %d" + +#: wpvulnerability-sitehealth.php:153 +msgid "" +"We've detected potential vulnerabilities in this WordPress installation. " +"Please check them and keep your installation updated." +msgstr "" +"Обнаружены потенциальные уязвимости в этой установке WordPress. Пожалуйста, " +"проверьте их и обновляйте установку." + +#: wpvulnerability-sitehealth.php:161 +msgid "Update WordPress" +msgstr "Обновить WordPress" + +#: wpvulnerability-sitehealth.php:180 +msgid "Nginx" +msgstr "NGINX" + +#: wpvulnerability-sitehealth.php:189 +msgid "Invalid software type" +msgstr "Неверный тип программного обеспечения" + +#: wpvulnerability-sitehealth.php:192 +msgid "Error" +msgstr "Ошибка" + +#: wpvulnerability-sitehealth.php:197 +msgid "The specified software type is not valid." +msgstr "Указанный тип программного обеспечения недействителен." + +#. translators: name of the software. +#: wpvulnerability-sitehealth.php:207 +#, php-format +msgid "There aren't %s vulnerabilities" +msgstr "Не существует %s уязвимостей" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:216 +#, php-format +msgid "Shows possible vulnerabilities existing in %s." +msgstr "Показывает возможные уязвимости, существующие в %s." + +#. translators: Software and number of vulnerabilities. +#: wpvulnerability-sitehealth.php:229 +#, php-format +msgid "There is %1$d %2$s vulnerability" +msgid_plural "There are %1$d %2$s vulnerabilities" +msgstr[0] "Уязвимостей %2$s: %1$d" +msgstr[1] "Уязвимостей %2$s: %1$d" +msgstr[2] "Уязвимостей %2$s: %1$d" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:237 +#, php-format +msgid "" +"We've detected potential vulnerabilities in %s. Please check them and keep " +"your installation updated." +msgstr "" +"Мы обнаружили потенциальные уязвимости в %s. Пожалуйста, проверьте их и " +"обновите Вашу установку." + +#: wpvulnerability-sitehealth.php:246 +msgid "How to update PHP" +msgstr "Как обновить PHP" + +#: wpvulnerability-sitehealth.php:386 +msgid "WPVulnerability Core" +msgstr "WPVulnerability для ядра" + +#: wpvulnerability-sitehealth.php:394 +msgid "WPVulnerability Themes" +msgstr "WPVulnerability для тем" + +#: wpvulnerability-sitehealth.php:402 +msgid "WPVulnerability Plugins" +msgstr "WPVulnerability для плагинов" + +#: wpvulnerability-sitehealth.php:410 +msgid "WPVulnerability PHP" +msgstr "WPVulnerability PHP" + +#: wpvulnerability-sitehealth.php:418 +msgid "WPVulnerability Apache HTTPD" +msgstr "WPVulnerability Apache HTTPD" + +#: wpvulnerability-sitehealth.php:426 +msgid "WPVulnerability Nginx" +msgstr "WPVulnerability Nginx" + +#: wpvulnerability-sitehealth.php:434 +msgid "WPVulnerability MariaDB" +msgstr "WPVulnerability MariaDB" + +#: wpvulnerability-sitehealth.php:442 +msgid "WPVulnerability MySQL" +msgstr "WPVulnerability MySQL" + +#: wpvulnerability-sitehealth.php:450 +msgid "WPVulnerability ImageMagick" +msgstr "WPVulnerability ImageMagick" + +#: wpvulnerability-sitehealth.php:458 +msgid "WPVulnerability curl" +msgstr "WPVulnerability curl" + +#: wpvulnerability-sitehealth.php:466 +msgid "WPVulnerability memcached" +msgstr "WPVulnerability memcached" + +#: wpvulnerability-sitehealth.php:474 +msgid "WPVulnerability redis" +msgstr "WPVulnerability redis" + +#: wpvulnerability-sitehealth.php:482 +msgid "WPVulnerability sqlite" +msgstr "WPVulnerability sqlite" + +#: wpvulnerability-themes.php:196 wpvulnerability-themes.php:492 +msgid "This theme is closed. Please replace it with another." +msgstr "Эта тема закрыта. Пожалуйста, замените её другой." + +#: wpvulnerability-themes.php:199 wpvulnerability-themes.php:495 +msgid "" +"This vulnerability appears to be unpatched. Stay tuned for upcoming theme " +"updates." +msgstr "Эта уязвимость, похоже, не исправлена. Следите за обновлениями темы." + +#: wpvulnerability-themes.php:391 +msgid "" +"This theme has known vulnerabilities that may be affecting your installed " +"version." +msgstr "" +"Эта тема имеет известные уязвимости, которые могут затрагивать вашу " +"установленную версию." + +#~ msgid "%1$s has a known vulnerability that may be affecting this version." +#~ msgstr "" +#~ "%1$s имеет известную уязвимость, которая может затрагивать эту версию." + +#~ msgid "Global score: " +#~ msgstr "Глобальная оценка: " + +#~ msgid "Severity: " +#~ msgstr "Опасность: " + +#~ msgid "" +#~ "WordPress %1$s has a known vulnerability that may be affecting this " +#~ "version." +#~ msgstr "" +#~ "WordPress %1$s имеет известную уязвимость, которая может затрагивать эту " +#~ "версию." diff --git a/languages/wpvulnerability-sw.l10n.php b/languages/wpvulnerability-sw.l10n.php new file mode 100644 index 0000000..b7620b1 --- /dev/null +++ b/languages/wpvulnerability-sw.l10n.php @@ -0,0 +1,2 @@ +'wpvulnerability','plural-forms'=>'nplurals=2; plural=(n != 1);','language'=>'sw','project-id-version'=>'WPVulnerability 5.0.0','pot-creation-date'=>'2026-05-27T16:32:22+00:00','po-revision-date'=>'2026-05-27 00:00+0000','x-generator'=>'AI Translation','messages'=>['WPVulnerability'=>'WPVulnerability','https://www.wpvulnerability.com/plugin/'=>'https://www.wpvulnerability.com/plugin/','Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API.'=>'Pokea habari kuhusu udhaifu unaowezekana katika WordPress yako kutoka kwa WordPress Vulnerability Database API.','ROBOTSTXT'=>'ROBOTSTXT','https://www.robotstxt.es/'=>'https://www.robotstxt.es/','This command requires a WordPress administrator. Run with --user=.'=>'Amri hii inahitaji msimamizi wa WordPress. Endesha na --user=.','No core vulnerabilities found.'=>'Hakuna udhaifu wa msingi uliokupatikana.','No plugin vulnerabilities found.'=>'Hakuna udhaifu wa programu jalizi uliokupatikana.','No theme vulnerabilities found.'=>'Hakuna udhaifu wa mandhari uliokupatikana.','No %s vulnerabilities found.'=>'Hakuna udhaifu wa %s uliokupatikana.','Data from source has been reloaded.'=>'Data kutoka chanzo imepakiwa upya.','You do not have permission to reload data.'=>'Huna ruhusa ya kupakia data upya.','Test email has been sent.'=>'Barua pepe ya majaribio imetumwa.','Test email has failed. Please, check your email settings.'=>'Kutuma barua pepe ya majaribio kumeshindwa. Tafadhali angalia mipangilio yako ya barua pepe.','You do not have permission to send test emails.'=>'Huna ruhusa ya kutuma barua pepe za majaribio.','WPVulnerability cron events have been repaired.'=>'Matukio ya cron ya WPVulnerability yamerekebishwa.','You do not have permission to repair cron events.'=>'Huna ruhusa ya kurekebisha matukio ya cron.','All logs have been deleted.'=>'Kumbukumbu zote zimefutwa.','You do not have permission to delete logs.'=>'Huna ruhusa ya kufuta kumbukumbu.','Uninstall preference saved.'=>'Upendeleo wa kuondoa programu umehifadhiwa.','WPVulnerability has been reset to defaults and reloaded.'=>'WPVulnerability imewekwa upya kwa mipangilio ya awali na imepakiwa upya.','You do not have permission to reset WPVulnerability.'=>'Huna ruhusa ya kuweka upya WPVulnerability.','All caches have been cleared.'=>'Hifadhi zote za muda zimefutwa.','You do not have permission to clear caches.'=>'Huna ruhusa ya kufuta hifadhi za muda.','Plugin and theme signatures have been reset.'=>'Saini za programu jalizi na mandhari zimewekwa upya.','You do not have permission to reset signatures.'=>'Huna ruhusa ya kuweka upya saini.','You do not have permission to export debug information.'=>'Huna ruhusa ya kuhamisha taarifa za utatuzi wa hitilafu.','Database update has been executed.'=>'Sasisho la hifadhidata limetekelezwa.','You do not have permission to run database updates.'=>'Huna ruhusa ya kuendesha masasisho ya hifadhidata.','Notification has been sent.'=>'Arifa imetumwa.','Notification sending failed.'=>'Kutuma arifa kumeshindwa.','You do not have permission to send notifications.'=>'Huna ruhusa ya kutuma arifa.','Notifications'=>'Arifa','Analysis'=>'Uchambuzi','Logs'=>'Kumbukumbu','Security'=>'Usalama','Tools'=>'Zana','Debug'=>'Utatuzi wa hitilafu','About'=>'Kuhusu','Notification Settings'=>'Mipangilio ya arifa','Configure how and when you want to receive vulnerability notifications.'=>'Sanidi jinsi na wakati unapotaka kupokea arifa za udhaifu.','Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software.'=>'Kuwa na habari kuhusu udhaifu wa usalama katika usanikishaji wako wa WordPress, programu jalizi, mandhari, na programu ya seva.','Cache Expiration Time'=>'Wakati wa kumalizika kwa hifadhi ya muda','FORCED'=>'LAZIMA','How long to cache vulnerability data before refreshing from the API.'=>'Muda wa kuhifadhi data ya udhaifu kabla ya kusasisha kutoka API.','%d hour'=>'%d saa' . "\0" . '%d saa','You can force the cache time via wp-config.php constant. Learn more →'=>'Unaweza kulazimisha wakati wa hifadhi ya muda kupitia kibainishi cha wp-config.php. Jifunze zaidi →','Notification Frequency'=>'Mara za arifa','Choose how often you want to receive vulnerability notifications.'=>'Chagua mara ngapi unataka kupokea arifa za udhaifu.','Never - Disable automatic notifications'=>'Kamwe - Zima arifa za kiotomatiki','Daily - Receive notifications every day'=>'Kila siku - Pokea arifa kila siku','Weekly - Receive notifications once a week'=>'Kila wiki - Pokea arifa mara moja kwa wiki','Day:'=>'Siku:','Monday'=>'Jumatatu','Tuesday'=>'Jumanne','Wednesday'=>'Jumatano','Thursday'=>'Alhamisi','Friday'=>'Ijumaa','Saturday'=>'Jumamosi','Sunday'=>'Jumapili','Time:'=>'Muda:','(24-hour format, server timezone)'=>'(Muundo wa saa 24, eneo la saa la seva)','Notification Channels'=>'Njia za arifa','Select where you want to receive notifications.'=>'Chagua mahali unapotaka kupokea arifa.','Email'=>'Barua pepe','Email Addresses (separated by commas):'=>'Anwani za barua pepe (tenganishwa na makoma):','Default:'=>'Chaguo msingi:','Slack'=>'Slack','Slack Webhook URL:'=>'URL ya Slack Webhook:','Learn how to create a Slack incoming webhook →'=>'Jifunze jinsi ya kuunda webhook inayoingia ya Slack →','Microsoft Teams'=>'Microsoft Teams','Teams Webhook URL:'=>'URL ya Teams Webhook:','Learn how to create a Teams incoming webhook →'=>'Jifunze jinsi ya kuunda webhook inayoingia ya Teams →','Discord'=>'Discord','Discord Webhook URL:'=>'URL ya Discord Webhook:','Learn how to create a Discord webhook →'=>'Jifunze jinsi ya kuunda webhook ya Discord →','Telegram'=>'Telegram','Telegram Bot Token:'=>'Token ya Telegram Bot:','Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Muundo: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','Telegram Chat ID:'=>'Kitambulisho cha Telegram Chat:','Learn how to create a Telegram bot and get Chat ID →'=>'Jifunze jinsi ya kuunda bot ya Telegram na kupata Chat ID →','Save Notification Settings'=>'Hifadhi mipangilio ya arifa','WordPress Components'=>'Vipengele vya WordPress','WordPress Core'=>'WordPress Core','Plugins'=>'Programu jalizi','Themes'=>'Mandhari','Software & Languages'=>'Programu na Lugha','PHP'=>'PHP','Web Servers'=>'Seva za Wavuti','Apache HTTPD'=>'Apache HTTPD','nginx'=>'nginx','Databases'=>'Hifadhidata','MariaDB'=>'MariaDB','MySQL'=>'MySQL','SQLite'=>'SQLite','Additional Tools'=>'Zana za ziada','ImageMagick'=>'ImageMagick','curl'=>'curl','memcached'=>'memcached','Redis'=>'Redis','Component Analysis Settings'=>'Mipangilio ya uchambuzi wa vipengele','Enable or disable vulnerability analysis for specific components.'=>'Wezesha au zima uchambuzi wa udhaifu kwa vipengele maalum.','Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red.'=>'Angalia vipengele unavyotaka KUFICHA kutoka kwa uchunguzi na ripoti za udhaifu. Vipengele visivyochaguliwa vitachambuliwa kikamilifu. Vipengele vyenye uchambuzi wa kikamilifu vinaonyeshwa kwa kijani, vipengele vilivyofichwa kwa nyekundu.','Hidden (forced by constant)'=>'Imefichwa (kulazimishwa na kibainishi)','🔴 Analysis disabled'=>'🔴 Uchambuzi umezimwa','🟢 Analysis active'=>'🟢 Uchambuzi unafanya kazi','Tip:'=>'Kidokezo:','You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →'=>'Unaweza kulazimisha kuzima vipengele kupitia vibainishi vya wp-config.php. Jifunze zaidi kuhusu kuficha ukaguzi kwa nguvu →','Save Analysis Settings'=>'Hifadhi mipangilio ya uchambuzi','« Previous'=>'« Iliyotangulia','Next »'=>'Inayofuata »','Log entry not found or has been removed.'=>'Ingizo la kumbukumbu halipatikani au limeondolewa.','Unable to load the requested log entry.'=>'Haiwezekani kupakia ingizo la kumbukumbu lililoombiwa.','Log Configuration'=>'Usanidi wa kumbukumbu','Total Logs'=>'Jumla ya kumbukumbu','Retention Period'=>'Kipindi cha uhifadhi','Disabled'=>'Imezimwa','%d day'=>'%d siku' . "\0" . '%d siku','Log Retention Period'=>'Kipindi cha uhifadhi wa kumbukumbu','None (Disabled)'=>'Hakuna (Imezimwa)','This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant.'=>'Thamani hii inatekelezwa na kibainishi cha WPVULNERABILITY_LOG_RETENTION_DAYS.','Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted.'=>'Chagua muda gani WPVulnerability inapaswa kushikilia kumbukumbu za majibu ya API. Kumbukumbu za zamani zinafutwa kiotomatiki.','Save Configuration'=>'Hifadhi usanidi','Log retention is currently disabled.'=>'Uhifadhi wa kumbukumbu umezimwa kwa sasa.','API responses are not being saved.'=>'Majibu ya API hayahifadhiwi.','Log Details'=>'Maelezo ya kumbukumbu','Date'=>'Tarehe','API Endpoint'=>'Hatua ya mwisho ya API','API Response'=>'Jibu la API','Back to Logs'=>'Rudi kwa kumbukumbu','No logs available'=>'Hakuna kumbukumbu zinazopatikana','API response logs will appear here once the vulnerability scanner runs.'=>'Kumbukumbu za majibu ya API zitaonekana hapa baada ya skena ya udhaifu kukimbia.','API Response Logs'=>'Kumbukumbu za majibu ya API','Show:'=>'Onyesha:','Apply'=>'Tekeleza','Showing %1$s–%2$s of %3$s'=>'Inaonyesha %1$s–%2$s ya %3$s','Actions'=>'Vitendo','View'=>'Tazama','Danger Zone'=>'Eneo la hatari','Permanently delete all API response logs. This action cannot be undone.'=>'Futa kumbukumbu zote za majibu ya API kwa kudumu. Kitendo hiki hakiwezi kutenduliwa.','Are you sure you want to delete all logs? This action cannot be undone.'=>'Je, una uhakika unataka kufuta kumbukumbu zote? Kitendo hiki hakiwezi kutenduliwa.','Delete All Logs'=>'Futa kumbukumbu zote','Reload Data from API'=>'Pakia data upya kutoka API','Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information.'=>'Pakia upya taarifa zote za Core, Programu jalizi, Mandhari na vipengele vingine moja kwa moja kutoka API ili kupata data iliyosasishwa. Hii itafuta hifadhi ya muda na kupata taarifa mpya za udhaifu.','Reload Data'=>'Pakia data upya','Test Email Notifications'=>'Jaribu arifa za barua pepe','Send a test email notification with current vulnerability data to verify your email configuration is working correctly.'=>'Tuma arifa ya barua pepe ya majaribio na data ya udhaifu ya sasa ili kuthibitisha kwamba usanidi wako wa barua pepe unafanya kazi vizuri.','From address (configured via constant):'=>'Anwani ya mtumaji (iliyosanidiwa kupitia kibainishi):','From address (default):'=>'Anwani ya mtumaji (chaguo msingi):','Learn how to customize the email sender address →'=>'Jifunze jinsi ya kubinafsisha anwani ya mtumaji wa barua pepe →','Send Test Email'=>'Tuma barua pepe ya majaribio','WP-Cron Status'=>'Hali ya WP-Cron','View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly.'=>'Tazama na simamia matukio ya ratiba ya WPCron. Hakikisha kazi za kiotomatiki zinafanya kazi vizuri.','No cron data available.'=>'Hakuna data ya cron inayopatikana.','Hook'=>'Ndoana','Expected'=>'Inayotarajiwa','Found'=>'Ilipatikana','Next Run'=>'Uendeshaji unaofuata','Status'=>'Hali','Not expected'=>'Haitarajiwa','None'=>'Hakuna','OK'=>'Sawa','⚠️ Unexpected WPVulnerability Events'=>'⚠️ Matukio yasiyotarajiwa ya WPVulnerability','No interval'=>'Hakuna muda','Next:'=>'Inayofuata:','Repair Cron Events'=>'Rekebisha matukio ya Cron','Uninstall Data'=>'Data ya kuondoa programu','By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall.'=>'Kwa chaguo msingi, data yote ya programu jalizi inahifadhiwa wakati WPVulnerability inafutwa. Wezesha chaguo hapa chini tu ikiwa unataka mipangilio yote, kumbukumbu, na data ya hifadhi ya muda ziondolewe kabisa wakati wa kuondoa programu.','Delete all plugin data on uninstall'=>'Futa data yote ya programu jalizi wakati wa kuondoa programu','Default: unchecked (data preserved). Check only if you want a clean removal.'=>'Chaguo msingi: haijachaguliwa (data imehifadhiwa). Chagua tu ukitaka kuondolewa safi.','Save preference'=>'Hifadhi upendeleo','Reset WPVulnerability'=>'Weka upya WPVulnerability','Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API.'=>'Futa mipangilio yote ya WPVulnerability, data ya hifadhi ya muda, kumbukumbu, na matukio ya ratiba, kisha rejesha chaguo msingi na upakue data upya kutoka API.','This action cannot be undone.'=>'Kitendo hiki hakiwezi kutenduliwa.','Are you sure you want to reset all WPVulnerability data? This action cannot be undone.'=>'Je, una uhakika unataka kuweka upya data yote ya WPVulnerability? Kitendo hiki hakiwezi kutenduliwa.','Reset Plugin'=>'Weka upya programu jalizi','Vulnerability Database Statistics'=>'Takwimu za hifadhidata ya udhaifu','%s vulnerability'=>'%s udhaifu' . "\0" . '%s udhaifu','(%s product)'=>'(%s bidhaa)' . "\0" . '(%s bidhaa)','No data'=>'Hakuna data','Database last updated: %s'=>'Hifadhidata ilisasishwa mara ya mwisho: %s','Intelligence Sources'=>'Vyanzo vya taarifa','Number of vulnerabilities contributed by each intelligence source.'=>'Idadi ya udhaifu uliochangiwa na kila chanzo cha taarifa.','Source'=>'Chanzo','Core'=>'Core','Sponsors'=>'Wadhamini','No sponsor data available.'=>'Hakuna data ya wadhamini inayopatikana.','Contributors'=>'Wachangiaji','No contributor data available.'=>'Hakuna data ya wachangiaji inayopatikana.','You do not have sufficient permissions to access this page.'=>'Huna ruhusa za kutosha kufikia ukurasa huu.','WPVulnerability settings'=>'Mipangilio ya WPVulnerability','Configure and save these settings to receive notifications.'=>'Sanidi na uhifadhi mipangilio hii ili kupokea arifa.','Configure and save these settings to hide vulnerabilities.'=>'Sanidi na uhifadhi mipangilio hii ili kuficha udhaifu.','Default administrator email'=>'Barua pepe ya msimamizi chaguo msingi','Read more if you want to force the cache time.'=>'Soma zaidi ikiwa unataka kulazimisha wakati wa hifadhi ya muda.','Never'=>'Kamwe','Daily'=>'Kila siku','Weekly'=>'Kila wiki','Day'=>'Siku','Hour'=>'Saa','Minute'=>'Dakika','Read more about how to force the deactivation of an item.'=>'Soma zaidi kuhusu jinsi ya kulazimisha kuzima kipengele.','Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com'=>'URL ya Slack webhook si sahihi. Lazima iwe URL ya HTTPS halali kutoka hooks.slack.com.','Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com'=>'URL ya Microsoft Teams webhook si sahihi. Lazima iwe URL ya HTTPS halali kutoka office.com, office365.com, au api.hooks.microsoft.com.','Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com'=>'URL ya Discord webhook si sahihi. Lazima iwe URL ya HTTPS halali kutoka discord.com au discordapp.com.','Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Muundo wa token ya Telegram bot si sahihi. Lazima iwe kama: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','All Clear'=>'Kila kitu kiko sawa','%d Critical Issue Found'=>'Tatizo %d Zito Limepatikana' . "\0" . 'Matatizo %d Mazito Yamepatikana','%d Issue Found'=>'Tatizo %d Limepatikana' . "\0" . 'Matatizo %d Yamepatikana','Never checked'=>'Haijawahi kukaguliwa','%d minute ago'=>'dakika %d iliyopita' . "\0" . 'dakika %d zilizopita','%d hour ago'=>'saa %d iliyopita' . "\0" . 'saa %d zilizopita','Last checked: %s'=>'Ilikaguliwa mara ya mwisho: %s','Refresh Now'=>'Onyesha upya sasa','No vulnerabilities detected'=>'Hakuna udhaifu uliogunduliwa','Your site is up to date and secure'=>'Tovuti yako imesasishwa na iko salama','Server Software'=>'Programu ya seva','Site Health'=>'Afya ya tovuti','Settings'=>'Mipangilio','WPVulnerability Status'=>'Hali ya WPVulnerability','Receive vulnerability notifications'=>'Pokea arifa za udhaifu','Cache expiration time'=>'Wakati wa kumalizika kwa hifadhi ya muda','How often you want to receive notifications'=>'Mara ngapi unataka kupokea arifa','Where do you want to receive notifications?'=>'Unataka kupokea arifa wapi?','Email addresses to notify (separated by commas)'=>'Anwani za barua pepe za kuarifiwa (tenganishwa na makoma)','Slack webhook URL'=>'URL ya Slack webhook','Teams webhook URL'=>'URL ya Teams webhook','Vulnerabilities to hide'=>'Udhaifu wa kuficha','What do you want to hide?'=>'Unataka kuficha nini?','Standard (Hybrid Detection)'=>'Kawaida (Ugunduzi mseto)','Strict (Extensions Only)'=>'Kali (Nyongeza tu)','Disabled (No Detection)'=>'Imezimwa (Hakuna ugunduzi)','Security Status'=>'Hali ya usalama','Security Mode'=>'Hali ya usalama','Shell Execution'=>'Utekelezaji wa Shell','Enabled'=>'Imewezeshwa','Audit Logging'=>'Ukaguzi wa kumbukumbu','Enabled (%d days)'=>'Imewezeshwa (siku %d)','Total Log Entries'=>'Jumla ya maingizo ya kumbukumbu','Last Shell Execution'=>'Utekelezaji wa mwisho wa Shell','%s ago'=>'%s iliyopita','Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.'=>'Sanidi mipangilio ya usalama kupitia vibainishi vya wp-config.php: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.','See security configuration documentation for details.'=>'Angalia nyaraka za usanidi wa usalama kwa maelezo zaidi.','Memcached'=>'Memcached','Imagick Extension'=>'Nyongeza ya Imagick','Redis Extension'=>'Nyongeza ya Redis','Memcached Extension'=>'Nyongeza ya Memcached','Memcache Extension'=>'Nyongeza ya Memcache','SQLite3 Extension'=>'Nyongeza ya SQLite3','PDO SQLite'=>'PDO SQLite','Shell Command'=>'Amri ya Shell','Binary Check'=>'Ukaguzi wa binary','Not Detected'=>'Haijagunduliwa','Software Detection Methods'=>'Njia za ugunduzi wa programu','Shows which detection method was used for each software component and the reliability score.'=>'Inaonyesha njia gani ya ugunduzi iliyotumiwa kwa kila kipengele cha programu na alama ya uaminifu.','Component'=>'Kipengele','Version'=>'Toleo','Detection Method'=>'Njia ya ugunduzi','Reliability'=>'Uaminifu','Not detected'=>'Haijagunduliwa','Shell Execution Audit Logs'=>'Kumbukumbu za ukaguzi wa utekelezaji wa Shell','Complete audit trail of shell command executions for security monitoring.'=>'Rekodi kamili ya ukaguzi wa utekelezaji wa amri za shell kwa ufuatiliaji wa usalama.','No shell execution logs found.'=>'Hakuna kumbukumbu za utekelezaji wa shell zilizopatikana.','Logs will appear here when shell commands are executed for software detection.'=>'Kumbukumbu zitaonekana hapa wakati amri za shell zinatekelezwa kwa ugunduzi wa programu.','Time'=>'Wakati','Command'=>'Amri','User'=>'Mtumiaji','Output'=>'Matokeo','Showing the %d most recent log entries.'=>'Inaonyesha maingizo %d ya hivi karibuni ya kumbukumbu.','Invalid nonce.'=>'Nonce si sahihi.','Insufficient permissions.'=>'Ruhusa haitoshi.','No component specified.'=>'Hakuna kipengele kilichoainishwa.','Debug Information'=>'Taarifa za utatuzi wa hitilafu','This tab is only visible when WP_DEBUG is enabled. Use with caution.'=>'Kichupo hiki kinaonekana tu WP_DEBUG ikiwa imewezeshwa. Tumia kwa tahadhari.','System Information'=>'Taarifa za mfumo','WordPress Version'=>'Toleo la WordPress','Multisite'=>'Tovuti nyingi','Yes'=>'Ndiyo','No'=>'Hapana','Language'=>'Lugha','PHP Version'=>'Toleo la PHP','PHP Extensions'=>'Nyongeza za PHP','PHP Memory Limit'=>'Kikomo cha kumbukumbu ya PHP','Database'=>'Hifadhidata','Web Server'=>'Seva ya wavuti','WP_DEBUG'=>'WP_DEBUG','WP_DEBUG_LOG'=>'WP_DEBUG_LOG','Path:'=>'Njia:','Size: %s'=>'Ukubwa: %s','View Log File'=>'Tazama faili la kumbukumbu','Log file is not web-accessible (outside wp-content)'=>'Faili la kumbukumbu haliwezi kufikiwa kupitia wavuti (nje ya wp-content)','Log file does not exist yet'=>'Faili la kumbukumbu bado halipo','Plugin Version'=>'Toleo la programu jalizi','Component Detection'=>'Ugunduzi wa kipengele','Version Detected'=>'Toleo lililogunduliwa','Analyzed'=>'Imechambuliwa','Cache Status'=>'Hali ya hifadhi ya muda','Configuration Summary'=>'Muhtasari wa usanidi','Cache Duration'=>'Muda wa hifadhi ya muda','Log Retention'=>'Uhifadhi wa kumbukumbu','Components Analyzed'=>'Vipengele vilivyochambuliwa','Notification Email'=>'Barua pepe ya arifa','Slack Webhook'=>'Slack Webhook','Configured & Enabled'=>'Imesanidiwa na kuwezeshwa','Configured (Disabled)'=>'Imesanidiwa (Imezimwa)','Not configured'=>'Haijasanidiwa','Teams Webhook'=>'Teams Webhook','Discord Webhook'=>'Discord Webhook','Telegram Bot'=>'Telegram Bot','Cron Status'=>'Hali ya Cron','Update Database'=>'Sasisha hifadhidata','Next run: %s'=>'Uendeshaji unaofuata: %s','Not scheduled'=>'Haijapangwa','Send Notification'=>'Tuma arifa','Run Update Now'=>'Endesha sasisho sasa','Run Notification Now'=>'Tuma arifa sasa','You do not have permission to run these actions.'=>'Huna ruhusa ya kuendesha vitendo hivi.','API Testing'=>'Majaribio ya API','Test API connectivity for each component. Click a button to send a test request.'=>'Jaribu muunganisho wa API kwa kila kipengele. Bonyeza kitufe ili kutuma ombi la majaribio.','Test %s'=>'Jaribu %s','Testing...'=>'Inafanya majaribio...','HTTP Code:'=>'Msimbo wa HTTP:','Response Time:'=>'Muda wa jibu:','Response Preview'=>'Hakiki ya jibu','Test'=>'Jaribio','Error:'=>'Hitilafu:','AJAX request failed.'=>'Ombi la AJAX limeshindwa.','You do not have permission to test API connectivity.'=>'Huna ruhusa ya kujaribu muunganisho wa API.','Database Options Viewer'=>'Mtazamaji wa chaguo za hifadhidata','View the raw data stored in WordPress options.'=>'Tazama data ghafi iliyohifadhiwa katika chaguo za WordPress.','Select an option...'=>'Chagua chaguo...','Option not found or empty.'=>'Chaguo halipatikani au liko wazi.','Quick Actions'=>'Vitendo vya haraka','Perform debugging actions. Use with caution.'=>'Fanya vitendo vya utatuzi wa hitilafu. Tumia kwa tahadhari.','Are you sure you want to clear all caches?'=>'Je, una uhakika unataka kufuta hifadhi zote za muda?','Clear All Caches'=>'Futa hifadhi zote za muda','Are you sure you want to reset signatures?'=>'Je, una uhakika unataka kuweka upya saini?','Reset Signatures'=>'Weka upya saini','Export Debug Info'=>'Hamisha taarifa za utatuzi wa hitilafu','You do not have permission to perform these actions.'=>'Huna ruhusa ya kufanya vitendo hivi.','Settings saved.'=>'Mipangilio imehifadhiwa.','WPVulnerability cron events have been repaired across the network.'=>'Matukio ya cron ya WPVulnerability yamerekebishwa katika mtandao wote.','You do not have permission to access this page.'=>'Huna ruhusa ya kufikia ukurasa huu.','WordPress %1$s has a known vulnerability that may be affecting your installed version.'=>'WordPress %1$s ina udhaifu unaojulikana ambao unaweza kuathiri toleo lako lililosanikishwa.','Actively exploited'=>'Inanyonywa kikamilifu','Public exploit'=>'Unyonyaji wa umma','Automatable'=>'Inayoweza kufanywa kiotomatiki','References:'=>'Marejeo:','Invalid component specified.'=>'Kipengele si sahihi kilicho ainishwa.','Version not detected for this component.'=>'Toleo halijagunduliwa kwa kipengele hiki.','API request successful.'=>'Ombi la API limefanikiwa.','API returned HTTP code %d.'=>'API ilirudisha msimbo wa HTTP %d.','WPVulnerability Logs'=>'Kumbukumbu za WPVulnerability','WPVulnerability Log'=>'Kumbukumbu ya WPVulnerability','Low'=>'Chini','Medium'=>'Wastani','High'=>'Juu','Critical'=>'Muhimu sana','WPVulnerability Shell Logs'=>'Kumbukumbu za Shell za WPVulnerability','WPVulnerability Shell Log'=>'Kumbukumbu ya Shell ya WPVulnerability','Every week'=>'Kila wiki','Every day'=>'Kila siku','Invalid request.'=>'Ombi si sahihi.','You have unsubscribed from WPVulnerability notifications.'=>'Umejisimamia kutoka kwa arifa za WPVulnerability.','Learn more about the WordPress Vulnerability Database API at %2$s'=>'Jifunze zaidi kuhusu WordPress Vulnerability Database API kwenye %2$s','Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings.'=>'Unataka kuacha kupokea arifa hizi? Jiondoe au badilisha mara za barua pepe kuwa Kamwe katika mipangilio ya WPVulnerability.','No vulnerabilities found'=>'Hakuna udhaifu uliopatikana','This is likely a test. The site does not have vulnerabilities.'=>'Hii labda ni jaribio. Tovuti haina udhaifu.','Core vulnerabilities'=>'Udhaifu wa msingi','Plugins vulnerabilities'=>'Udhaifu wa programu jalizi','Themes vulnerabilities'=>'Udhaifu wa mandhari','PHP vulnerabilities'=>'Udhaifu wa PHP','Apache HTTPD vulnerabilities'=>'Udhaifu wa Apache HTTPD','Nginx vulnerabilities'=>'Udhaifu wa Nginx','MariaDB vulnerabilities'=>'Udhaifu wa MariaDB','MySQL vulnerabilities'=>'Udhaifu wa MySQL','ImageMagick vulnerabilities'=>'Udhaifu wa ImageMagick','curl vulnerabilities'=>'Udhaifu wa curl','memcached vulnerabilities'=>'Udhaifu wa memcached','Redis vulnerabilities'=>'Udhaifu wa Redis','SQLite vulnerabilities'=>'Udhaifu wa SQLite','Vulnerability found: %s'=>'Udhaifu uliokupatikana: %s','Vulnerability found'=>'Udhaifu uliokupatikana','%1$s has a known vulnerability that may be affecting your installed version.'=>'%1$s ina udhaifu unaojulikana ambao unaweza kuathiri toleo lako lililosanikishwa.','This plugin is closed. Please replace it with another.'=>'Programu jalizi hii imefungwa. Tafadhali ibadilishe na nyingine.','This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates.'=>'Udhaifu huu unaonekana kutobandikwa. Subiri masasisho ya programu jalizi yanayokuja.','It hasn\'t been updated in over a year.'=>'Haijasasishwa kwa zaidi ya mwaka mmoja.','It may no longer be available (closed?).'=>'Inaweza isipatikane tena (imefungwa?).','Last updated on'=>'Ilisasishwa mara ya mwisho','Vulnerabilities (%d)'=>'Udhaifu (%d)','%s running'=>'%s inafanya kazi','End of Life'=>'Mwisho wa msaada','End of life:'=>'Mwisho wa msaada:','Supported'=>'Inasaidiwa','Plugin'=>'Programu jalizi','Theme'=>'Mandhari','End of life: %s'=>'Mwisho wa msaada: %s','EOL'=>'EOL','Network Settings'=>'Mipangilio ya mtandao','Vulnerabilities'=>'Udhaifu','Every 6 hours'=>'Kila masaa 6','Database updates'=>'Masasisho ya hifadhidata','Log cleanup'=>'Usafi wa kumbukumbu','Notifications are scheduled, but settings currently disable them. Please review the notifications tab.'=>'Arifa zimepangwa, lakini mipangilio imezizima kwa sasa. Tafadhali kagua kichupo cha arifa.','This event should not be scheduled for this site.'=>'Tukio hili halifai kupangwa kwa tovuti hii.','Not expected for this site.'=>'Haitarajiwa kwa tovuti hii.','No instances found.'=>'Hakuna mifano iliyopatikana.','Scheduled with an unexpected interval.'=>'Imepangwa na muda usiotarajiwa.','Multiple instances detected.'=>'Mifano mingi imegunduliwa.','Scheduled as expected.'=>'Imepangwa kama inavyotarajiwa.','There aren\'t plugins vulnerabilities'=>'Hakuna udhaifu katika programu jalizi','Shows possible vulnerabilities that exist in installed plugins.'=>'Inaonyesha udhaifu unaowezekana uliopo katika programu jalizi zilizosanikishwa.','There is %d plugin with vulnerabilities'=>'Kuna programu jalizi %d yenye udhaifu' . "\0" . 'Kuna programu jalizi %d zenye udhaifu','We\'ve detected potential vulnerabilities in installed plugins. Please check them and keep them updated.'=>'Tumegunduliwa udhaifu unaowezekana katika programu jalizi zilizosanikishwa. Tafadhali zikague na uzisasishe.','Update plugins'=>'Sasisha programu jalizi','There aren\'t themes vulnerabilities'=>'Hakuna udhaifu katika mandhari','Shows possible vulnerabilities that exist in installed themes.'=>'Inaonyesha udhaifu unaowezekana uliopo katika mandhari zilizosanikishwa.','There is %d theme with vulnerabilities'=>'Kuna mandhari %d yenye udhaifu' . "\0" . 'Kuna mandhari %d zenye udhaifu','We\'ve detected potential vulnerabilities in installed themes. Please check them and keep them updated.'=>'Tumegunduliwa udhaifu unaowezekana katika mandhari zilizosanikishwa. Tafadhali zikague na uzisasishe.','Update themes'=>'Sasisha mandhari','There aren\'t WordPress vulnerabilities'=>'Hakuna udhaifu katika WordPress','Shows possible vulnerabilities existing in the WordPress core.'=>'Inaonyesha udhaifu unaowezekana uliopo katika msingi wa WordPress.','There is %d core vulnerability'=>'Kuna udhaifu %d wa msingi' . "\0" . 'Kuna udhaifu %d wa msingi','We\'ve detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated.'=>'Tumegunduliwa udhaifu unaowezekana katika usanikishaji huu wa WordPress. Tafadhali ukague na uweke usanikishaji wako ukisasishwa.','Update WordPress'=>'Sasisha WordPress','Nginx'=>'Nginx','Invalid software type'=>'Aina ya programu si sahihi','Error'=>'Hitilafu','The specified software type is not valid.'=>'Aina ya programu iliyoainishwa si sahihi.','There aren\'t %s vulnerabilities'=>'Hakuna udhaifu wa %s','Shows possible vulnerabilities existing in %s.'=>'Inaonyesha udhaifu unaowezekana uliopo katika %s.','There is %1$d %2$s vulnerability'=>'Kuna udhaifu %1$d wa %2$s' . "\0" . 'Kuna udhaifu %1$d wa %2$s','We\'ve detected potential vulnerabilities in %s. Please check them and keep your installation updated.'=>'Tumegunduliwa udhaifu unaowezekana katika %s. Tafadhali ukague na uweke usanikishaji wako ukisasishwa.','How to update PHP'=>'Jinsi ya kusasisha PHP','WPVulnerability Core'=>'WPVulnerability Core','WPVulnerability Themes'=>'WPVulnerability Themes','WPVulnerability Plugins'=>'WPVulnerability Plugins','WPVulnerability PHP'=>'WPVulnerability PHP','WPVulnerability Apache HTTPD'=>'WPVulnerability Apache HTTPD','WPVulnerability Nginx'=>'WPVulnerability Nginx','WPVulnerability MariaDB'=>'WPVulnerability MariaDB','WPVulnerability MySQL'=>'WPVulnerability MySQL','WPVulnerability ImageMagick'=>'WPVulnerability ImageMagick','WPVulnerability curl'=>'WPVulnerability curl','WPVulnerability memcached'=>'WPVulnerability memcached','WPVulnerability redis'=>'WPVulnerability redis','WPVulnerability sqlite'=>'WPVulnerability sqlite','This theme is closed. Please replace it with another.'=>'Mandhari hii imefungwa. Tafadhali ibadilishe na nyingine.','This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates.'=>'Udhaifu huu unaonekana kutobandikwa. Subiri masasisho ya mandhari yanayokuja.','This theme has known vulnerabilities that may be affecting your installed version.'=>'Mandhari hii ina udhaifu unaojulikana ambao unaweza kuathiri toleo lako lililosanikishwa.']]; \ No newline at end of file diff --git a/languages/wpvulnerability-sw.mo b/languages/wpvulnerability-sw.mo new file mode 100644 index 0000000000000000000000000000000000000000..af2ddf3e24d60e4556c4442661ca53e9578d9573 GIT binary patch literal 39502 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 literal 0 HcmV?d00001 diff --git a/languages/wpvulnerability-sw.po b/languages/wpvulnerability-sw.po new file mode 100644 index 0000000..978d1cb --- /dev/null +++ b/languages/wpvulnerability-sw.po @@ -0,0 +1,1437 @@ +# Copyright (C) 2026 ROBOTSTXT +# This file is distributed under the GPL-3.0-or-later. +msgid "" +msgstr "" +"Project-Id-Version: WPVulnerability 5.0.0\n" +"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wpvulnerability\n" +"POT-Creation-Date: 2026-05-27T16:32:22+00:00\n" +"PO-Revision-Date: 2026-05-27 00:00+0000\n" +"Last-Translator: Automatically generated\n" +"Language-Team: Swahili \n" +"Language: sw\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: AI Translation\n" +"X-Domain: wpvulnerability\n" + +#. Plugin Name of the plugin +msgid "WPVulnerability" +msgstr "WPVulnerability" + +#. Plugin URI of the plugin +msgid "https://www.wpvulnerability.com/plugin/" +msgstr "https://www.wpvulnerability.com/plugin/" + +#. Description of the plugin +msgid "Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API." +msgstr "Pokea habari kuhusu udhaifu unaowezekana katika WordPress yako kutoka kwa WordPress Vulnerability Database API." + +#. Author of the plugin +msgid "ROBOTSTXT" +msgstr "ROBOTSTXT" + +#. Author URI of the plugin +msgid "https://www.robotstxt.es/" +msgstr "https://www.robotstxt.es/" + +msgid "This command requires a WordPress administrator. Run with --user=." +msgstr "Amri hii inahitaji msimamizi wa WordPress. Endesha na --user=." + +msgid "No core vulnerabilities found." +msgstr "Hakuna udhaifu wa msingi uliokupatikana." + +msgid "No plugin vulnerabilities found." +msgstr "Hakuna udhaifu wa programu jalizi uliokupatikana." + +msgid "No theme vulnerabilities found." +msgstr "Hakuna udhaifu wa mandhari uliokupatikana." + +#, php-format +msgid "No %s vulnerabilities found." +msgstr "Hakuna udhaifu wa %s uliokupatikana." + +msgid "Data from source has been reloaded." +msgstr "Data kutoka chanzo imepakiwa upya." + +msgid "You do not have permission to reload data." +msgstr "Huna ruhusa ya kupakia data upya." + +msgid "Test email has been sent." +msgstr "Barua pepe ya majaribio imetumwa." + +msgid "Test email has failed. Please, check your email settings." +msgstr "Kutuma barua pepe ya majaribio kumeshindwa. Tafadhali angalia mipangilio yako ya barua pepe." + +msgid "You do not have permission to send test emails." +msgstr "Huna ruhusa ya kutuma barua pepe za majaribio." + +msgid "WPVulnerability cron events have been repaired." +msgstr "Matukio ya cron ya WPVulnerability yamerekebishwa." + +msgid "You do not have permission to repair cron events." +msgstr "Huna ruhusa ya kurekebisha matukio ya cron." + +msgid "All logs have been deleted." +msgstr "Kumbukumbu zote zimefutwa." + +msgid "You do not have permission to delete logs." +msgstr "Huna ruhusa ya kufuta kumbukumbu." + +msgid "Uninstall preference saved." +msgstr "Upendeleo wa kuondoa programu umehifadhiwa." + +msgid "WPVulnerability has been reset to defaults and reloaded." +msgstr "WPVulnerability imewekwa upya kwa mipangilio ya awali na imepakiwa upya." + +msgid "You do not have permission to reset WPVulnerability." +msgstr "Huna ruhusa ya kuweka upya WPVulnerability." + +msgid "All caches have been cleared." +msgstr "Hifadhi zote za muda zimefutwa." + +msgid "You do not have permission to clear caches." +msgstr "Huna ruhusa ya kufuta hifadhi za muda." + +msgid "Plugin and theme signatures have been reset." +msgstr "Saini za programu jalizi na mandhari zimewekwa upya." + +msgid "You do not have permission to reset signatures." +msgstr "Huna ruhusa ya kuweka upya saini." + +msgid "You do not have permission to export debug information." +msgstr "Huna ruhusa ya kuhamisha taarifa za utatuzi wa hitilafu." + +msgid "Database update has been executed." +msgstr "Sasisho la hifadhidata limetekelezwa." + +msgid "You do not have permission to run database updates." +msgstr "Huna ruhusa ya kuendesha masasisho ya hifadhidata." + +msgid "Notification has been sent." +msgstr "Arifa imetumwa." + +msgid "Notification sending failed." +msgstr "Kutuma arifa kumeshindwa." + +msgid "You do not have permission to send notifications." +msgstr "Huna ruhusa ya kutuma arifa." + +msgid "Notifications" +msgstr "Arifa" + +msgid "Analysis" +msgstr "Uchambuzi" + +msgid "Logs" +msgstr "Kumbukumbu" + +msgid "Security" +msgstr "Usalama" + +msgid "Tools" +msgstr "Zana" + +msgid "Debug" +msgstr "Utatuzi wa hitilafu" + +msgid "About" +msgstr "Kuhusu" + +msgid "Notification Settings" +msgstr "Mipangilio ya arifa" + +msgid "Configure how and when you want to receive vulnerability notifications." +msgstr "Sanidi jinsi na wakati unapotaka kupokea arifa za udhaifu." + +msgid "Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software." +msgstr "Kuwa na habari kuhusu udhaifu wa usalama katika usanikishaji wako wa WordPress, programu jalizi, mandhari, na programu ya seva." + +msgid "Cache Expiration Time" +msgstr "Wakati wa kumalizika kwa hifadhi ya muda" + +msgid "FORCED" +msgstr "LAZIMA" + +msgid "How long to cache vulnerability data before refreshing from the API." +msgstr "Muda wa kuhifadhi data ya udhaifu kabla ya kusasisha kutoka API." + +#, php-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d saa" +msgstr[1] "%d saa" + +#, php-format +msgid "You can force the cache time via wp-config.php constant. Learn more →" +msgstr "Unaweza kulazimisha wakati wa hifadhi ya muda kupitia kibainishi cha wp-config.php. Jifunze zaidi →" + +msgid "Notification Frequency" +msgstr "Mara za arifa" + +msgid "Choose how often you want to receive vulnerability notifications." +msgstr "Chagua mara ngapi unataka kupokea arifa za udhaifu." + +msgid "Never - Disable automatic notifications" +msgstr "Kamwe - Zima arifa za kiotomatiki" + +msgid "Daily - Receive notifications every day" +msgstr "Kila siku - Pokea arifa kila siku" + +msgid "Weekly - Receive notifications once a week" +msgstr "Kila wiki - Pokea arifa mara moja kwa wiki" + +msgid "Day:" +msgstr "Siku:" + +msgid "Monday" +msgstr "Jumatatu" + +msgid "Tuesday" +msgstr "Jumanne" + +msgid "Wednesday" +msgstr "Jumatano" + +msgid "Thursday" +msgstr "Alhamisi" + +msgid "Friday" +msgstr "Ijumaa" + +msgid "Saturday" +msgstr "Jumamosi" + +msgid "Sunday" +msgstr "Jumapili" + +msgid "Time:" +msgstr "Muda:" + +msgid "(24-hour format, server timezone)" +msgstr "(Muundo wa saa 24, eneo la saa la seva)" + +msgid "Notification Channels" +msgstr "Njia za arifa" + +msgid "Select where you want to receive notifications." +msgstr "Chagua mahali unapotaka kupokea arifa." + +msgid "Email" +msgstr "Barua pepe" + +msgid "Email Addresses (separated by commas):" +msgstr "Anwani za barua pepe (tenganishwa na makoma):" + +msgid "Default:" +msgstr "Chaguo msingi:" + +msgid "Slack" +msgstr "Slack" + +msgid "Slack Webhook URL:" +msgstr "URL ya Slack Webhook:" + +#, php-format +msgid "Learn how to create a Slack incoming webhook →" +msgstr "Jifunze jinsi ya kuunda webhook inayoingia ya Slack →" + +msgid "Microsoft Teams" +msgstr "Microsoft Teams" + +msgid "Teams Webhook URL:" +msgstr "URL ya Teams Webhook:" + +#, php-format +msgid "Learn how to create a Teams incoming webhook →" +msgstr "Jifunze jinsi ya kuunda webhook inayoingia ya Teams →" + +msgid "Discord" +msgstr "Discord" + +msgid "Discord Webhook URL:" +msgstr "URL ya Discord Webhook:" + +#, php-format +msgid "Learn how to create a Discord webhook →" +msgstr "Jifunze jinsi ya kuunda webhook ya Discord →" + +msgid "Telegram" +msgstr "Telegram" + +msgid "Telegram Bot Token:" +msgstr "Token ya Telegram Bot:" + +msgid "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "Muundo: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +msgid "Telegram Chat ID:" +msgstr "Kitambulisho cha Telegram Chat:" + +#, php-format +msgid "Learn how to create a Telegram bot and get Chat ID →" +msgstr "Jifunze jinsi ya kuunda bot ya Telegram na kupata Chat ID →" + +msgid "Save Notification Settings" +msgstr "Hifadhi mipangilio ya arifa" + +msgid "WordPress Components" +msgstr "Vipengele vya WordPress" + +msgid "WordPress Core" +msgstr "WordPress Core" + +msgid "Plugins" +msgstr "Programu jalizi" + +msgid "Themes" +msgstr "Mandhari" + +msgid "Software & Languages" +msgstr "Programu na Lugha" + +msgid "PHP" +msgstr "PHP" + +msgid "Web Servers" +msgstr "Seva za Wavuti" + +msgid "Apache HTTPD" +msgstr "Apache HTTPD" + +msgid "nginx" +msgstr "nginx" + +msgid "Databases" +msgstr "Hifadhidata" + +msgid "MariaDB" +msgstr "MariaDB" + +msgid "MySQL" +msgstr "MySQL" + +msgid "SQLite" +msgstr "SQLite" + +msgid "Additional Tools" +msgstr "Zana za ziada" + +msgid "ImageMagick" +msgstr "ImageMagick" + +msgid "curl" +msgstr "curl" + +msgid "memcached" +msgstr "memcached" + +msgid "Redis" +msgstr "Redis" + +msgid "Component Analysis Settings" +msgstr "Mipangilio ya uchambuzi wa vipengele" + +msgid "Enable or disable vulnerability analysis for specific components." +msgstr "Wezesha au zima uchambuzi wa udhaifu kwa vipengele maalum." + +msgid "Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red." +msgstr "Angalia vipengele unavyotaka KUFICHA kutoka kwa uchunguzi na ripoti za udhaifu. Vipengele visivyochaguliwa vitachambuliwa kikamilifu. Vipengele vyenye uchambuzi wa kikamilifu vinaonyeshwa kwa kijani, vipengele vilivyofichwa kwa nyekundu." + +msgid "Hidden (forced by constant)" +msgstr "Imefichwa (kulazimishwa na kibainishi)" + +msgid "🔴 Analysis disabled" +msgstr "🔴 Uchambuzi umezimwa" + +msgid "🟢 Analysis active" +msgstr "🟢 Uchambuzi unafanya kazi" + +msgid "Tip:" +msgstr "Kidokezo:" + +#, php-format +msgid "You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →" +msgstr "Unaweza kulazimisha kuzima vipengele kupitia vibainishi vya wp-config.php. Jifunze zaidi kuhusu kuficha ukaguzi kwa nguvu →" + +msgid "Save Analysis Settings" +msgstr "Hifadhi mipangilio ya uchambuzi" + +msgid "« Previous" +msgstr "« Iliyotangulia" + +msgid "Next »" +msgstr "Inayofuata »" + +msgid "Log entry not found or has been removed." +msgstr "Ingizo la kumbukumbu halipatikani au limeondolewa." + +msgid "Unable to load the requested log entry." +msgstr "Haiwezekani kupakia ingizo la kumbukumbu lililoombiwa." + +msgid "Log Configuration" +msgstr "Usanidi wa kumbukumbu" + +msgid "Total Logs" +msgstr "Jumla ya kumbukumbu" + +msgid "Retention Period" +msgstr "Kipindi cha uhifadhi" + +msgid "Disabled" +msgstr "Imezimwa" + +#, php-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d siku" +msgstr[1] "%d siku" + +msgid "Log Retention Period" +msgstr "Kipindi cha uhifadhi wa kumbukumbu" + +msgid "None (Disabled)" +msgstr "Hakuna (Imezimwa)" + +msgid "This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant." +msgstr "Thamani hii inatekelezwa na kibainishi cha WPVULNERABILITY_LOG_RETENTION_DAYS." + +msgid "Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted." +msgstr "Chagua muda gani WPVulnerability inapaswa kushikilia kumbukumbu za majibu ya API. Kumbukumbu za zamani zinafutwa kiotomatiki." + +msgid "Save Configuration" +msgstr "Hifadhi usanidi" + +msgid "Log retention is currently disabled." +msgstr "Uhifadhi wa kumbukumbu umezimwa kwa sasa." + +msgid "API responses are not being saved." +msgstr "Majibu ya API hayahifadhiwi." + +msgid "Log Details" +msgstr "Maelezo ya kumbukumbu" + +msgid "Date" +msgstr "Tarehe" + +msgid "API Endpoint" +msgstr "Hatua ya mwisho ya API" + +msgid "API Response" +msgstr "Jibu la API" + +msgid "Back to Logs" +msgstr "Rudi kwa kumbukumbu" + +msgid "No logs available" +msgstr "Hakuna kumbukumbu zinazopatikana" + +msgid "API response logs will appear here once the vulnerability scanner runs." +msgstr "Kumbukumbu za majibu ya API zitaonekana hapa baada ya skena ya udhaifu kukimbia." + +msgid "API Response Logs" +msgstr "Kumbukumbu za majibu ya API" + +msgid "Show:" +msgstr "Onyesha:" + +msgid "Apply" +msgstr "Tekeleza" + +#, php-format +msgid "Showing %1$s–%2$s of %3$s" +msgstr "Inaonyesha %1$s–%2$s ya %3$s" + +msgid "Actions" +msgstr "Vitendo" + +msgid "View" +msgstr "Tazama" + +msgid "Danger Zone" +msgstr "Eneo la hatari" + +msgid "Permanently delete all API response logs. This action cannot be undone." +msgstr "Futa kumbukumbu zote za majibu ya API kwa kudumu. Kitendo hiki hakiwezi kutenduliwa." + +msgid "Are you sure you want to delete all logs? This action cannot be undone." +msgstr "Je, una uhakika unataka kufuta kumbukumbu zote? Kitendo hiki hakiwezi kutenduliwa." + +msgid "Delete All Logs" +msgstr "Futa kumbukumbu zote" + +msgid "Reload Data from API" +msgstr "Pakia data upya kutoka API" + +msgid "Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information." +msgstr "Pakia upya taarifa zote za Core, Programu jalizi, Mandhari na vipengele vingine moja kwa moja kutoka API ili kupata data iliyosasishwa. Hii itafuta hifadhi ya muda na kupata taarifa mpya za udhaifu." + +msgid "Reload Data" +msgstr "Pakia data upya" + +msgid "Test Email Notifications" +msgstr "Jaribu arifa za barua pepe" + +msgid "Send a test email notification with current vulnerability data to verify your email configuration is working correctly." +msgstr "Tuma arifa ya barua pepe ya majaribio na data ya udhaifu ya sasa ili kuthibitisha kwamba usanidi wako wa barua pepe unafanya kazi vizuri." + +msgid "From address (configured via constant):" +msgstr "Anwani ya mtumaji (iliyosanidiwa kupitia kibainishi):" + +msgid "From address (default):" +msgstr "Anwani ya mtumaji (chaguo msingi):" + +msgid "Learn how to customize the email sender address →" +msgstr "Jifunze jinsi ya kubinafsisha anwani ya mtumaji wa barua pepe →" + +msgid "Send Test Email" +msgstr "Tuma barua pepe ya majaribio" + +msgid "WP-Cron Status" +msgstr "Hali ya WP-Cron" + +msgid "View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly." +msgstr "Tazama na simamia matukio ya ratiba ya WPCron. Hakikisha kazi za kiotomatiki zinafanya kazi vizuri." + +msgid "No cron data available." +msgstr "Hakuna data ya cron inayopatikana." + +msgid "Hook" +msgstr "Ndoana" + +msgid "Expected" +msgstr "Inayotarajiwa" + +msgid "Found" +msgstr "Ilipatikana" + +msgid "Next Run" +msgstr "Uendeshaji unaofuata" + +msgid "Status" +msgstr "Hali" + +msgid "Not expected" +msgstr "Haitarajiwa" + +msgid "None" +msgstr "Hakuna" + +msgid "OK" +msgstr "Sawa" + +msgid "⚠️ Unexpected WPVulnerability Events" +msgstr "⚠️ Matukio yasiyotarajiwa ya WPVulnerability" + +msgid "No interval" +msgstr "Hakuna muda" + +msgid "Next:" +msgstr "Inayofuata:" + +msgid "Repair Cron Events" +msgstr "Rekebisha matukio ya Cron" + +msgid "Uninstall Data" +msgstr "Data ya kuondoa programu" + +msgid "By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall." +msgstr "Kwa chaguo msingi, data yote ya programu jalizi inahifadhiwa wakati WPVulnerability inafutwa. Wezesha chaguo hapa chini tu ikiwa unataka mipangilio yote, kumbukumbu, na data ya hifadhi ya muda ziondolewe kabisa wakati wa kuondoa programu." + +msgid "Delete all plugin data on uninstall" +msgstr "Futa data yote ya programu jalizi wakati wa kuondoa programu" + +msgid "Default: unchecked (data preserved). Check only if you want a clean removal." +msgstr "Chaguo msingi: haijachaguliwa (data imehifadhiwa). Chagua tu ukitaka kuondolewa safi." + +msgid "Save preference" +msgstr "Hifadhi upendeleo" + +msgid "Reset WPVulnerability" +msgstr "Weka upya WPVulnerability" + +msgid "Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API." +msgstr "Futa mipangilio yote ya WPVulnerability, data ya hifadhi ya muda, kumbukumbu, na matukio ya ratiba, kisha rejesha chaguo msingi na upakue data upya kutoka API." + +msgid "This action cannot be undone." +msgstr "Kitendo hiki hakiwezi kutenduliwa." + +msgid "Are you sure you want to reset all WPVulnerability data? This action cannot be undone." +msgstr "Je, una uhakika unataka kuweka upya data yote ya WPVulnerability? Kitendo hiki hakiwezi kutenduliwa." + +msgid "Reset Plugin" +msgstr "Weka upya programu jalizi" + +msgid "Vulnerability Database Statistics" +msgstr "Takwimu za hifadhidata ya udhaifu" + +#, php-format +msgid "%s vulnerability" +msgid_plural "%s vulnerabilities" +msgstr[0] "%s udhaifu" +msgstr[1] "%s udhaifu" + +#, php-format +msgid "(%s product)" +msgid_plural "(%s products)" +msgstr[0] "(%s bidhaa)" +msgstr[1] "(%s bidhaa)" + +msgid "No data" +msgstr "Hakuna data" + +#, php-format +msgid "Database last updated: %s" +msgstr "Hifadhidata ilisasishwa mara ya mwisho: %s" + +msgid "Intelligence Sources" +msgstr "Vyanzo vya taarifa" + +msgid "Number of vulnerabilities contributed by each intelligence source." +msgstr "Idadi ya udhaifu uliochangiwa na kila chanzo cha taarifa." + +msgid "Source" +msgstr "Chanzo" + +msgid "Core" +msgstr "Core" + +msgid "Sponsors" +msgstr "Wadhamini" + +msgid "No sponsor data available." +msgstr "Hakuna data ya wadhamini inayopatikana." + +msgid "Contributors" +msgstr "Wachangiaji" + +msgid "No contributor data available." +msgstr "Hakuna data ya wachangiaji inayopatikana." + +msgid "You do not have sufficient permissions to access this page." +msgstr "Huna ruhusa za kutosha kufikia ukurasa huu." + +msgid "WPVulnerability settings" +msgstr "Mipangilio ya WPVulnerability" + +msgid "Configure and save these settings to receive notifications." +msgstr "Sanidi na uhifadhi mipangilio hii ili kupokea arifa." + +msgid "Configure and save these settings to hide vulnerabilities." +msgstr "Sanidi na uhifadhi mipangilio hii ili kuficha udhaifu." + +msgid "Default administrator email" +msgstr "Barua pepe ya msimamizi chaguo msingi" + +msgid "Read more if you want to force the cache time." +msgstr "Soma zaidi ikiwa unataka kulazimisha wakati wa hifadhi ya muda." + +msgid "Never" +msgstr "Kamwe" + +msgid "Daily" +msgstr "Kila siku" + +msgid "Weekly" +msgstr "Kila wiki" + +msgid "Day" +msgstr "Siku" + +msgid "Hour" +msgstr "Saa" + +msgid "Minute" +msgstr "Dakika" + +msgid "Read more about how to force the deactivation of an item." +msgstr "Soma zaidi kuhusu jinsi ya kulazimisha kuzima kipengele." + +msgid "Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com" +msgstr "URL ya Slack webhook si sahihi. Lazima iwe URL ya HTTPS halali kutoka hooks.slack.com." + +msgid "Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com" +msgstr "URL ya Microsoft Teams webhook si sahihi. Lazima iwe URL ya HTTPS halali kutoka office.com, office365.com, au api.hooks.microsoft.com." + +msgid "Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com" +msgstr "URL ya Discord webhook si sahihi. Lazima iwe URL ya HTTPS halali kutoka discord.com au discordapp.com." + +msgid "Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "Muundo wa token ya Telegram bot si sahihi. Lazima iwe kama: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +msgid "All Clear" +msgstr "Kila kitu kiko sawa" + +#, php-format +msgid "%d Critical Issue Found" +msgid_plural "%d Critical Issues Found" +msgstr[0] "Tatizo %d Zito Limepatikana" +msgstr[1] "Matatizo %d Mazito Yamepatikana" + +#, php-format +msgid "%d Issue Found" +msgid_plural "%d Issues Found" +msgstr[0] "Tatizo %d Limepatikana" +msgstr[1] "Matatizo %d Yamepatikana" + +msgid "Never checked" +msgstr "Haijawahi kukaguliwa" + +#, php-format +msgid "%d minute ago" +msgid_plural "%d minutes ago" +msgstr[0] "dakika %d iliyopita" +msgstr[1] "dakika %d zilizopita" + +#, php-format +msgid "%d hour ago" +msgid_plural "%d hours ago" +msgstr[0] "saa %d iliyopita" +msgstr[1] "saa %d zilizopita" + +#, php-format +msgid "Last checked: %s" +msgstr "Ilikaguliwa mara ya mwisho: %s" + +msgid "Refresh Now" +msgstr "Onyesha upya sasa" + +msgid "No vulnerabilities detected" +msgstr "Hakuna udhaifu uliogunduliwa" + +msgid "Your site is up to date and secure" +msgstr "Tovuti yako imesasishwa na iko salama" + +msgid "Server Software" +msgstr "Programu ya seva" + +msgid "Site Health" +msgstr "Afya ya tovuti" + +msgid "Settings" +msgstr "Mipangilio" + +msgid "WPVulnerability Status" +msgstr "Hali ya WPVulnerability" + +msgid "Receive vulnerability notifications" +msgstr "Pokea arifa za udhaifu" + +msgid "Cache expiration time" +msgstr "Wakati wa kumalizika kwa hifadhi ya muda" + +msgid "How often you want to receive notifications" +msgstr "Mara ngapi unataka kupokea arifa" + +msgid "Where do you want to receive notifications?" +msgstr "Unataka kupokea arifa wapi?" + +msgid "Email addresses to notify (separated by commas)" +msgstr "Anwani za barua pepe za kuarifiwa (tenganishwa na makoma)" + +msgid "Slack webhook URL" +msgstr "URL ya Slack webhook" + +msgid "Teams webhook URL" +msgstr "URL ya Teams webhook" + +msgid "Vulnerabilities to hide" +msgstr "Udhaifu wa kuficha" + +msgid "What do you want to hide?" +msgstr "Unataka kuficha nini?" + +msgid "Standard (Hybrid Detection)" +msgstr "Kawaida (Ugunduzi mseto)" + +msgid "Strict (Extensions Only)" +msgstr "Kali (Nyongeza tu)" + +msgid "Disabled (No Detection)" +msgstr "Imezimwa (Hakuna ugunduzi)" + +msgid "Security Status" +msgstr "Hali ya usalama" + +msgid "Security Mode" +msgstr "Hali ya usalama" + +msgid "Shell Execution" +msgstr "Utekelezaji wa Shell" + +msgid "Enabled" +msgstr "Imewezeshwa" + +msgid "Audit Logging" +msgstr "Ukaguzi wa kumbukumbu" + +#, php-format +msgid "Enabled (%d days)" +msgstr "Imewezeshwa (siku %d)" + +msgid "Total Log Entries" +msgstr "Jumla ya maingizo ya kumbukumbu" + +msgid "Last Shell Execution" +msgstr "Utekelezaji wa mwisho wa Shell" + +#, php-format +msgid "%s ago" +msgstr "%s iliyopita" + +msgid "Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST." +msgstr "Sanidi mipangilio ya usalama kupitia vibainishi vya wp-config.php: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST." + +#, php-format +msgid "See security configuration documentation for details." +msgstr "Angalia nyaraka za usanidi wa usalama kwa maelezo zaidi." + +msgid "Memcached" +msgstr "Memcached" + +msgid "Imagick Extension" +msgstr "Nyongeza ya Imagick" + +msgid "Redis Extension" +msgstr "Nyongeza ya Redis" + +msgid "Memcached Extension" +msgstr "Nyongeza ya Memcached" + +msgid "Memcache Extension" +msgstr "Nyongeza ya Memcache" + +msgid "SQLite3 Extension" +msgstr "Nyongeza ya SQLite3" + +msgid "PDO SQLite" +msgstr "PDO SQLite" + +msgid "Shell Command" +msgstr "Amri ya Shell" + +msgid "Binary Check" +msgstr "Ukaguzi wa binary" + +msgid "Not Detected" +msgstr "Haijagunduliwa" + +msgid "Software Detection Methods" +msgstr "Njia za ugunduzi wa programu" + +msgid "Shows which detection method was used for each software component and the reliability score." +msgstr "Inaonyesha njia gani ya ugunduzi iliyotumiwa kwa kila kipengele cha programu na alama ya uaminifu." + +msgid "Component" +msgstr "Kipengele" + +msgid "Version" +msgstr "Toleo" + +msgid "Detection Method" +msgstr "Njia ya ugunduzi" + +msgid "Reliability" +msgstr "Uaminifu" + +msgid "Not detected" +msgstr "Haijagunduliwa" + +msgid "Shell Execution Audit Logs" +msgstr "Kumbukumbu za ukaguzi wa utekelezaji wa Shell" + +msgid "Complete audit trail of shell command executions for security monitoring." +msgstr "Rekodi kamili ya ukaguzi wa utekelezaji wa amri za shell kwa ufuatiliaji wa usalama." + +msgid "No shell execution logs found." +msgstr "Hakuna kumbukumbu za utekelezaji wa shell zilizopatikana." + +msgid "Logs will appear here when shell commands are executed for software detection." +msgstr "Kumbukumbu zitaonekana hapa wakati amri za shell zinatekelezwa kwa ugunduzi wa programu." + +msgid "Time" +msgstr "Wakati" + +msgid "Command" +msgstr "Amri" + +msgid "User" +msgstr "Mtumiaji" + +msgid "Output" +msgstr "Matokeo" + +#, php-format +msgid "Showing the %d most recent log entries." +msgstr "Inaonyesha maingizo %d ya hivi karibuni ya kumbukumbu." + +msgid "Invalid nonce." +msgstr "Nonce si sahihi." + +msgid "Insufficient permissions." +msgstr "Ruhusa haitoshi." + +msgid "No component specified." +msgstr "Hakuna kipengele kilichoainishwa." + +msgid "Debug Information" +msgstr "Taarifa za utatuzi wa hitilafu" + +msgid "This tab is only visible when WP_DEBUG is enabled. Use with caution." +msgstr "Kichupo hiki kinaonekana tu WP_DEBUG ikiwa imewezeshwa. Tumia kwa tahadhari." + +msgid "System Information" +msgstr "Taarifa za mfumo" + +msgid "WordPress Version" +msgstr "Toleo la WordPress" + +msgid "Multisite" +msgstr "Tovuti nyingi" + +msgid "Yes" +msgstr "Ndiyo" + +msgid "No" +msgstr "Hapana" + +msgid "Language" +msgstr "Lugha" + +msgid "PHP Version" +msgstr "Toleo la PHP" + +msgid "PHP Extensions" +msgstr "Nyongeza za PHP" + +msgid "PHP Memory Limit" +msgstr "Kikomo cha kumbukumbu ya PHP" + +msgid "Database" +msgstr "Hifadhidata" + +msgid "Web Server" +msgstr "Seva ya wavuti" + +msgid "WP_DEBUG" +msgstr "WP_DEBUG" + +msgid "WP_DEBUG_LOG" +msgstr "WP_DEBUG_LOG" + +msgid "Path:" +msgstr "Njia:" + +#, php-format +msgid "Size: %s" +msgstr "Ukubwa: %s" + +msgid "View Log File" +msgstr "Tazama faili la kumbukumbu" + +msgid "Log file is not web-accessible (outside wp-content)" +msgstr "Faili la kumbukumbu haliwezi kufikiwa kupitia wavuti (nje ya wp-content)" + +msgid "Log file does not exist yet" +msgstr "Faili la kumbukumbu bado halipo" + +msgid "Plugin Version" +msgstr "Toleo la programu jalizi" + +msgid "Component Detection" +msgstr "Ugunduzi wa kipengele" + +msgid "Version Detected" +msgstr "Toleo lililogunduliwa" + +msgid "Analyzed" +msgstr "Imechambuliwa" + +msgid "Cache Status" +msgstr "Hali ya hifadhi ya muda" + +msgid "Configuration Summary" +msgstr "Muhtasari wa usanidi" + +msgid "Cache Duration" +msgstr "Muda wa hifadhi ya muda" + +msgid "Log Retention" +msgstr "Uhifadhi wa kumbukumbu" + +msgid "Components Analyzed" +msgstr "Vipengele vilivyochambuliwa" + +msgid "Notification Email" +msgstr "Barua pepe ya arifa" + +msgid "Slack Webhook" +msgstr "Slack Webhook" + +msgid "Configured & Enabled" +msgstr "Imesanidiwa na kuwezeshwa" + +msgid "Configured (Disabled)" +msgstr "Imesanidiwa (Imezimwa)" + +msgid "Not configured" +msgstr "Haijasanidiwa" + +msgid "Teams Webhook" +msgstr "Teams Webhook" + +msgid "Discord Webhook" +msgstr "Discord Webhook" + +msgid "Telegram Bot" +msgstr "Telegram Bot" + +msgid "Cron Status" +msgstr "Hali ya Cron" + +msgid "Update Database" +msgstr "Sasisha hifadhidata" + +#, php-format +msgid "Next run: %s" +msgstr "Uendeshaji unaofuata: %s" + +msgid "Not scheduled" +msgstr "Haijapangwa" + +msgid "Send Notification" +msgstr "Tuma arifa" + +msgid "Run Update Now" +msgstr "Endesha sasisho sasa" + +msgid "Run Notification Now" +msgstr "Tuma arifa sasa" + +msgid "You do not have permission to run these actions." +msgstr "Huna ruhusa ya kuendesha vitendo hivi." + +msgid "API Testing" +msgstr "Majaribio ya API" + +msgid "Test API connectivity for each component. Click a button to send a test request." +msgstr "Jaribu muunganisho wa API kwa kila kipengele. Bonyeza kitufe ili kutuma ombi la majaribio." + +#, php-format +msgid "Test %s" +msgstr "Jaribu %s" + +msgid "Testing..." +msgstr "Inafanya majaribio..." + +msgid "HTTP Code:" +msgstr "Msimbo wa HTTP:" + +msgid "Response Time:" +msgstr "Muda wa jibu:" + +msgid "Response Preview" +msgstr "Hakiki ya jibu" + +msgid "Test" +msgstr "Jaribio" + +msgid "Error:" +msgstr "Hitilafu:" + +msgid "AJAX request failed." +msgstr "Ombi la AJAX limeshindwa." + +msgid "You do not have permission to test API connectivity." +msgstr "Huna ruhusa ya kujaribu muunganisho wa API." + +msgid "Database Options Viewer" +msgstr "Mtazamaji wa chaguo za hifadhidata" + +msgid "View the raw data stored in WordPress options." +msgstr "Tazama data ghafi iliyohifadhiwa katika chaguo za WordPress." + +msgid "Select an option..." +msgstr "Chagua chaguo..." + +msgid "Option not found or empty." +msgstr "Chaguo halipatikani au liko wazi." + +msgid "Quick Actions" +msgstr "Vitendo vya haraka" + +msgid "Perform debugging actions. Use with caution." +msgstr "Fanya vitendo vya utatuzi wa hitilafu. Tumia kwa tahadhari." + +msgid "Are you sure you want to clear all caches?" +msgstr "Je, una uhakika unataka kufuta hifadhi zote za muda?" + +msgid "Clear All Caches" +msgstr "Futa hifadhi zote za muda" + +msgid "Are you sure you want to reset signatures?" +msgstr "Je, una uhakika unataka kuweka upya saini?" + +msgid "Reset Signatures" +msgstr "Weka upya saini" + +msgid "Export Debug Info" +msgstr "Hamisha taarifa za utatuzi wa hitilafu" + +msgid "You do not have permission to perform these actions." +msgstr "Huna ruhusa ya kufanya vitendo hivi." + +msgid "Settings saved." +msgstr "Mipangilio imehifadhiwa." + +msgid "WPVulnerability cron events have been repaired across the network." +msgstr "Matukio ya cron ya WPVulnerability yamerekebishwa katika mtandao wote." + +msgid "You do not have permission to access this page." +msgstr "Huna ruhusa ya kufikia ukurasa huu." + +#, php-format +msgid "WordPress %1$s has a known vulnerability that may be affecting your installed version." +msgstr "WordPress %1$s ina udhaifu unaojulikana ambao unaweza kuathiri toleo lako lililosanikishwa." + +msgid "Actively exploited" +msgstr "Inanyonywa kikamilifu" + +msgid "Public exploit" +msgstr "Unyonyaji wa umma" + +msgid "Automatable" +msgstr "Inayoweza kufanywa kiotomatiki" + +msgid "References:" +msgstr "Marejeo:" + +msgid "Invalid component specified." +msgstr "Kipengele si sahihi kilicho ainishwa." + +msgid "Version not detected for this component." +msgstr "Toleo halijagunduliwa kwa kipengele hiki." + +msgid "API request successful." +msgstr "Ombi la API limefanikiwa." + +#, php-format +msgid "API returned HTTP code %d." +msgstr "API ilirudisha msimbo wa HTTP %d." + +msgid "WPVulnerability Logs" +msgstr "Kumbukumbu za WPVulnerability" + +msgid "WPVulnerability Log" +msgstr "Kumbukumbu ya WPVulnerability" + +msgid "Low" +msgstr "Chini" + +msgid "Medium" +msgstr "Wastani" + +msgid "High" +msgstr "Juu" + +msgid "Critical" +msgstr "Muhimu sana" + +msgid "WPVulnerability Shell Logs" +msgstr "Kumbukumbu za Shell za WPVulnerability" + +msgid "WPVulnerability Shell Log" +msgstr "Kumbukumbu ya Shell ya WPVulnerability" + +msgid "Every week" +msgstr "Kila wiki" + +msgid "Every day" +msgstr "Kila siku" + +msgid "Invalid request." +msgstr "Ombi si sahihi." + +msgid "You have unsubscribed from WPVulnerability notifications." +msgstr "Umejisimamia kutoka kwa arifa za WPVulnerability." + +#, php-format +msgid "Learn more about the WordPress Vulnerability Database API at %2$s" +msgstr "Jifunze zaidi kuhusu WordPress Vulnerability Database API kwenye %2$s" + +#, php-format +msgid "Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings." +msgstr "Unataka kuacha kupokea arifa hizi? Jiondoe au badilisha mara za barua pepe kuwa Kamwe katika mipangilio ya WPVulnerability." + +msgid "No vulnerabilities found" +msgstr "Hakuna udhaifu uliopatikana" + +msgid "This is likely a test. The site does not have vulnerabilities." +msgstr "Hii labda ni jaribio. Tovuti haina udhaifu." + +msgid "Core vulnerabilities" +msgstr "Udhaifu wa msingi" + +msgid "Plugins vulnerabilities" +msgstr "Udhaifu wa programu jalizi" + +msgid "Themes vulnerabilities" +msgstr "Udhaifu wa mandhari" + +msgid "PHP vulnerabilities" +msgstr "Udhaifu wa PHP" + +msgid "Apache HTTPD vulnerabilities" +msgstr "Udhaifu wa Apache HTTPD" + +msgid "Nginx vulnerabilities" +msgstr "Udhaifu wa Nginx" + +msgid "MariaDB vulnerabilities" +msgstr "Udhaifu wa MariaDB" + +msgid "MySQL vulnerabilities" +msgstr "Udhaifu wa MySQL" + +msgid "ImageMagick vulnerabilities" +msgstr "Udhaifu wa ImageMagick" + +msgid "curl vulnerabilities" +msgstr "Udhaifu wa curl" + +msgid "memcached vulnerabilities" +msgstr "Udhaifu wa memcached" + +msgid "Redis vulnerabilities" +msgstr "Udhaifu wa Redis" + +msgid "SQLite vulnerabilities" +msgstr "Udhaifu wa SQLite" + +#, php-format +msgid "Vulnerability found: %s" +msgstr "Udhaifu uliokupatikana: %s" + +msgid "Vulnerability found" +msgstr "Udhaifu uliokupatikana" + +#, php-format +msgid "%1$s has a known vulnerability that may be affecting your installed version." +msgstr "%1$s ina udhaifu unaojulikana ambao unaweza kuathiri toleo lako lililosanikishwa." + +msgid "This plugin is closed. Please replace it with another." +msgstr "Programu jalizi hii imefungwa. Tafadhali ibadilishe na nyingine." + +msgid "This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates." +msgstr "Udhaifu huu unaonekana kutobandikwa. Subiri masasisho ya programu jalizi yanayokuja." + +msgid "It hasn't been updated in over a year." +msgstr "Haijasasishwa kwa zaidi ya mwaka mmoja." + +msgid "It may no longer be available (closed?)." +msgstr "Inaweza isipatikane tena (imefungwa?)." + +msgid "Last updated on" +msgstr "Ilisasishwa mara ya mwisho" + +#, php-format +msgid "Vulnerabilities (%d)" +msgstr "Udhaifu (%d)" + +#, php-format +msgid "%s running" +msgstr "%s inafanya kazi" + +msgid "End of Life" +msgstr "Mwisho wa msaada" + +msgid "End of life:" +msgstr "Mwisho wa msaada:" + +msgid "Supported" +msgstr "Inasaidiwa" + +msgid "Plugin" +msgstr "Programu jalizi" + +msgid "Theme" +msgstr "Mandhari" + +#, php-format +msgid "End of life: %s" +msgstr "Mwisho wa msaada: %s" + +msgid "EOL" +msgstr "EOL" + +msgid "Network Settings" +msgstr "Mipangilio ya mtandao" + +msgid "Vulnerabilities" +msgstr "Udhaifu" + +msgid "Every 6 hours" +msgstr "Kila masaa 6" + +msgid "Database updates" +msgstr "Masasisho ya hifadhidata" + +msgid "Log cleanup" +msgstr "Usafi wa kumbukumbu" + +msgid "Notifications are scheduled, but settings currently disable them. Please review the notifications tab." +msgstr "Arifa zimepangwa, lakini mipangilio imezizima kwa sasa. Tafadhali kagua kichupo cha arifa." + +msgid "This event should not be scheduled for this site." +msgstr "Tukio hili halifai kupangwa kwa tovuti hii." + +msgid "Not expected for this site." +msgstr "Haitarajiwa kwa tovuti hii." + +msgid "No instances found." +msgstr "Hakuna mifano iliyopatikana." + +msgid "Scheduled with an unexpected interval." +msgstr "Imepangwa na muda usiotarajiwa." + +msgid "Multiple instances detected." +msgstr "Mifano mingi imegunduliwa." + +msgid "Scheduled as expected." +msgstr "Imepangwa kama inavyotarajiwa." + +msgid "There aren't plugins vulnerabilities" +msgstr "Hakuna udhaifu katika programu jalizi" + +msgid "Shows possible vulnerabilities that exist in installed plugins." +msgstr "Inaonyesha udhaifu unaowezekana uliopo katika programu jalizi zilizosanikishwa." + +#, php-format +msgid "There is %d plugin with vulnerabilities" +msgid_plural "There are %d plugins with vulnerabilities" +msgstr[0] "Kuna programu jalizi %d yenye udhaifu" +msgstr[1] "Kuna programu jalizi %d zenye udhaifu" + +msgid "We've detected potential vulnerabilities in installed plugins. Please check them and keep them updated." +msgstr "Tumegunduliwa udhaifu unaowezekana katika programu jalizi zilizosanikishwa. Tafadhali zikague na uzisasishe." + +msgid "Update plugins" +msgstr "Sasisha programu jalizi" + +msgid "There aren't themes vulnerabilities" +msgstr "Hakuna udhaifu katika mandhari" + +msgid "Shows possible vulnerabilities that exist in installed themes." +msgstr "Inaonyesha udhaifu unaowezekana uliopo katika mandhari zilizosanikishwa." + +#, php-format +msgid "There is %d theme with vulnerabilities" +msgid_plural "There are %d themes with vulnerabilities" +msgstr[0] "Kuna mandhari %d yenye udhaifu" +msgstr[1] "Kuna mandhari %d zenye udhaifu" + +msgid "We've detected potential vulnerabilities in installed themes. Please check them and keep them updated." +msgstr "Tumegunduliwa udhaifu unaowezekana katika mandhari zilizosanikishwa. Tafadhali zikague na uzisasishe." + +msgid "Update themes" +msgstr "Sasisha mandhari" + +msgid "There aren't WordPress vulnerabilities" +msgstr "Hakuna udhaifu katika WordPress" + +msgid "Shows possible vulnerabilities existing in the WordPress core." +msgstr "Inaonyesha udhaifu unaowezekana uliopo katika msingi wa WordPress." + +#, php-format +msgid "There is %d core vulnerability" +msgid_plural "There are %d core vulnerabilities" +msgstr[0] "Kuna udhaifu %d wa msingi" +msgstr[1] "Kuna udhaifu %d wa msingi" + +msgid "We've detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated." +msgstr "Tumegunduliwa udhaifu unaowezekana katika usanikishaji huu wa WordPress. Tafadhali ukague na uweke usanikishaji wako ukisasishwa." + +msgid "Update WordPress" +msgstr "Sasisha WordPress" + +msgid "Nginx" +msgstr "Nginx" + +msgid "Invalid software type" +msgstr "Aina ya programu si sahihi" + +msgid "Error" +msgstr "Hitilafu" + +msgid "The specified software type is not valid." +msgstr "Aina ya programu iliyoainishwa si sahihi." + +#, php-format +msgid "There aren't %s vulnerabilities" +msgstr "Hakuna udhaifu wa %s" + +#, php-format +msgid "Shows possible vulnerabilities existing in %s." +msgstr "Inaonyesha udhaifu unaowezekana uliopo katika %s." + +#, php-format +msgid "There is %1$d %2$s vulnerability" +msgid_plural "There are %1$d %2$s vulnerabilities" +msgstr[0] "Kuna udhaifu %1$d wa %2$s" +msgstr[1] "Kuna udhaifu %1$d wa %2$s" + +#, php-format +msgid "We've detected potential vulnerabilities in %s. Please check them and keep your installation updated." +msgstr "Tumegunduliwa udhaifu unaowezekana katika %s. Tafadhali ukague na uweke usanikishaji wako ukisasishwa." + +msgid "How to update PHP" +msgstr "Jinsi ya kusasisha PHP" + +msgid "WPVulnerability Core" +msgstr "WPVulnerability Core" + +msgid "WPVulnerability Themes" +msgstr "WPVulnerability Themes" + +msgid "WPVulnerability Plugins" +msgstr "WPVulnerability Plugins" + +msgid "WPVulnerability PHP" +msgstr "WPVulnerability PHP" + +msgid "WPVulnerability Apache HTTPD" +msgstr "WPVulnerability Apache HTTPD" + +msgid "WPVulnerability Nginx" +msgstr "WPVulnerability Nginx" + +msgid "WPVulnerability MariaDB" +msgstr "WPVulnerability MariaDB" + +msgid "WPVulnerability MySQL" +msgstr "WPVulnerability MySQL" + +msgid "WPVulnerability ImageMagick" +msgstr "WPVulnerability ImageMagick" + +msgid "WPVulnerability curl" +msgstr "WPVulnerability curl" + +msgid "WPVulnerability memcached" +msgstr "WPVulnerability memcached" + +msgid "WPVulnerability redis" +msgstr "WPVulnerability redis" + +msgid "WPVulnerability sqlite" +msgstr "WPVulnerability sqlite" + +msgid "This theme is closed. Please replace it with another." +msgstr "Mandhari hii imefungwa. Tafadhali ibadilishe na nyingine." + +msgid "This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates." +msgstr "Udhaifu huu unaonekana kutobandikwa. Subiri masasisho ya mandhari yanayokuja." + +msgid "This theme has known vulnerabilities that may be affecting your installed version." +msgstr "Mandhari hii ina udhaifu unaojulikana ambao unaweza kuathiri toleo lako lililosanikishwa." diff --git a/languages/wpvulnerability-uk.l10n.php b/languages/wpvulnerability-uk.l10n.php new file mode 100644 index 0000000..552bc9b --- /dev/null +++ b/languages/wpvulnerability-uk.l10n.php @@ -0,0 +1,2 @@ +'wpvulnerability','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);','language'=>'uk','project-id-version'=>'WPVulnerability 5.0.0','pot-creation-date'=>'2026-05-27T16:32:22+00:00','po-revision-date'=>'2026-05-27 00:00+0000','x-generator'=>'AI Translation','messages'=>['This command requires a WordPress administrator. Run with --user=.'=>'Ця команда потребує прав адміністратора WordPress. Запустіть з --user=.','No core vulnerabilities found.'=>'Вразливостей ядра не знайдено.','No plugin vulnerabilities found.'=>'Вразливостей плагінів не знайдено.','No theme vulnerabilities found.'=>'Вразливостей тем не знайдено.','No %s vulnerabilities found.'=>'Вразливостей %s не знайдено.','Data from source has been reloaded.'=>'Дані з джерела перезавантажено.','You do not have permission to reload data.'=>'У вас немає дозволу на перезавантаження даних.','Test email has been sent.'=>'Тестовий лист надіслано.','Test email has failed. Please, check your email settings.'=>'Не вдалося надіслати тестовий лист. Будь ласка, перевірте налаштування електронної пошти.','You do not have permission to send test emails.'=>'У вас немає дозволу надсилати тестові листи.','WPVulnerability cron events have been repaired.'=>'Події cron WPVulnerability відновлено.','You do not have permission to repair cron events.'=>'У вас немає дозволу на відновлення подій cron.','All logs have been deleted.'=>'Усі журнали видалено.','You do not have permission to delete logs.'=>'У вас немає дозволу на видалення журналів.','Uninstall preference saved.'=>'Налаштування видалення збережено.','WPVulnerability has been reset to defaults and reloaded.'=>'WPVulnerability скинуто до стандартних налаштувань та перезавантажено.','You do not have permission to reset WPVulnerability.'=>'У вас немає дозволу на скидання WPVulnerability.','All caches have been cleared.'=>'Усі кеші очищено.','You do not have permission to clear caches.'=>'У вас немає дозволу на очищення кешів.','Plugin and theme signatures have been reset.'=>'Сигнатури плагінів та тем скинуто.','You do not have permission to reset signatures.'=>'У вас немає дозволу на скидання сигнатур.','You do not have permission to export debug information.'=>'У вас немає дозволу на експорт налагоджувальної інформації.','Database update has been executed.'=>'Оновлення бази даних виконано.','You do not have permission to run database updates.'=>'У вас немає дозволу на виконання оновлень бази даних.','Notification has been sent.'=>'Сповіщення надіслано.','Notification sending failed.'=>'Не вдалося надіслати сповіщення.','You do not have permission to send notifications.'=>'У вас немає дозволу на надсилання сповіщень.','Notifications'=>'Сповіщення','Analysis'=>'Аналіз','Logs'=>'Журнали','Security'=>'Безпека','Tools'=>'Інструменти','Debug'=>'Налагодження','About'=>'Про плагін','Notification Settings'=>'Налаштування сповіщень','Configure how and when you want to receive vulnerability notifications.'=>'Налаштуйте, як і коли ви хочете отримувати сповіщення про вразливості.','Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software.'=>'Будьте в курсі вразливостей безпеки у вашій інсталяції WordPress, плагінах, темах та серверному програмному забезпеченні.','Cache Expiration Time'=>'Час закінчення дії кешу','FORCED'=>'ПРИМУСОВО','How long to cache vulnerability data before refreshing from the API.'=>'Як довго кешувати дані про вразливості перед оновленням через API.','%d hour'=>'%d година' . "\0" . '%d години' . "\0" . '%d годин','You can force the cache time via wp-config.php constant. Learn more →'=>'Ви можете примусово встановити час кешу через константу wp-config.php. Дізнатися більше →','Notification Frequency'=>'Частота сповіщень','Choose how often you want to receive vulnerability notifications.'=>'Оберіть, як часто ви хочете отримувати сповіщення про вразливості.','Never - Disable automatic notifications'=>'Ніколи — вимкнути автоматичні сповіщення','Daily - Receive notifications every day'=>'Щодня — отримувати сповіщення кожного дня','Weekly - Receive notifications once a week'=>'Щотижня — отримувати сповіщення раз на тиждень','Day:'=>'День:','Monday'=>'Понеділок','Tuesday'=>'Вівторок','Wednesday'=>'Середа','Thursday'=>'Четвер','Friday'=>'П\'ятниця','Saturday'=>'Субота','Sunday'=>'Неділя','Time:'=>'Час:','(24-hour format, server timezone)'=>'(24-годинний формат, часовий пояс сервера)','Notification Channels'=>'Канали сповіщень','Select where you want to receive notifications.'=>'Оберіть, де ви хочете отримувати сповіщення.','Email'=>'Електронна пошта','Email Addresses (separated by commas):'=>'Адреси електронної пошти (через кому):','Default:'=>'За замовчуванням:','Slack'=>'Slack','Slack Webhook URL:'=>'URL webhook Slack:','Learn how to create a Slack incoming webhook →'=>'Дізнайтесь, як створити вхідний webhook для Slack →','Microsoft Teams'=>'Microsoft Teams','Teams Webhook URL:'=>'URL webhook Teams:','Learn how to create a Teams incoming webhook →'=>'Дізнайтесь, як створити вхідний webhook для Teams →','Discord'=>'Discord','Discord Webhook URL:'=>'URL webhook Discord:','Learn how to create a Discord webhook →'=>'Дізнайтесь, як створити webhook для Discord →','Telegram'=>'Telegram','Telegram Bot Token:'=>'Токен бота Telegram:','Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Формат: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','Telegram Chat ID:'=>'ID чату Telegram:','Learn how to create a Telegram bot and get Chat ID →'=>'Дізнайтесь, як створити бота Telegram та отримати Chat ID →','Save Notification Settings'=>'Зберегти налаштування сповіщень','WordPress Components'=>'Компоненти WordPress','WordPress Core'=>'Ядро WordPress','Plugins'=>'Плагіни','Themes'=>'Теми','Software & Languages'=>'Програмне забезпечення та мови','PHP'=>'PHP','Web Servers'=>'Веб-сервери','Apache HTTPD'=>'Apache HTTPD','nginx'=>'nginx','Databases'=>'Бази даних','MariaDB'=>'MariaDB','MySQL'=>'MySQL','SQLite'=>'SQLite','Additional Tools'=>'Додаткові інструменти','ImageMagick'=>'ImageMagick','curl'=>'curl','memcached'=>'memcached','Redis'=>'Redis','Component Analysis Settings'=>'Налаштування аналізу компонентів','Enable or disable vulnerability analysis for specific components.'=>'Увімкніть або вимкніть аналіз вразливостей для окремих компонентів.','Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red.'=>'Позначте компоненти, які ви хочете ПРИХОВАТИ від сканування та звітів про вразливості. Непозначені компоненти будуть активно аналізуватися. Компоненти з активним аналізом відображаються зеленим кольором, приховані — червоним.','Hidden (forced by constant)'=>'Приховано (примусово через константу)','🔴 Analysis disabled'=>'🔴 Аналіз вимкнено','🟢 Analysis active'=>'🟢 Аналіз активний','Tip:'=>'Порада:','You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →'=>'Ви можете примусово вимкнути компоненти через константи wp-config.php. Дізнатися більше про примусове приховування перевірок →','Save Analysis Settings'=>'Зберегти налаштування аналізу','« Previous'=>'« Попередня','Next »'=>'Наступна »','Log entry not found or has been removed.'=>'Запис журналу не знайдено або він був видалений.','Unable to load the requested log entry.'=>'Не вдалося завантажити запитаний запис журналу.','Log Configuration'=>'Конфігурація журналу','Total Logs'=>'Усього записів у журналі','Retention Period'=>'Термін зберігання','Disabled'=>'Вимкнено','%d day'=>'%d день' . "\0" . '%d дні' . "\0" . '%d днів','Log Retention Period'=>'Термін зберігання журналу','None (Disabled)'=>'Немає (вимкнено)','This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant.'=>'Це значення задано константою WPVULNERABILITY_LOG_RETENTION_DAYS.','Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted.'=>'Оберіть, як довго WPVulnerability повинен зберігати журнали відповідей API. Старіші журнали видаляються автоматично.','Save Configuration'=>'Зберегти конфігурацію','Log retention is currently disabled.'=>'Зберігання журналів наразі вимкнено.','API responses are not being saved.'=>'Відповіді API не зберігаються.','Log Details'=>'Деталі журналу','Date'=>'Дата','API Endpoint'=>'Точка доступу API','API Response'=>'Відповідь API','Back to Logs'=>'Назад до журналів','No logs available'=>'Журнали недоступні','API response logs will appear here once the vulnerability scanner runs.'=>'Журнали відповідей API з\'являться тут після запуску сканера вразливостей.','API Response Logs'=>'Журнали відповідей API','Show:'=>'Показати:','Apply'=>'Застосувати','Showing %1$s–%2$s of %3$s'=>'Показано %1$s–%2$s з %3$s','Actions'=>'Дії','View'=>'Перегляд','Danger Zone'=>'Небезпечна зона','Permanently delete all API response logs. This action cannot be undone.'=>'Остаточно видалити всі журнали відповідей API. Цю дію неможливо скасувати.','Are you sure you want to delete all logs? This action cannot be undone.'=>'Ви впевнені, що хочете видалити всі журнали? Цю дію неможливо скасувати.','Delete All Logs'=>'Видалити всі журнали','Reload Data from API'=>'Перезавантажити дані з API','Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information.'=>'Перезавантажити всю інформацію про ядро, плагіни, теми та інші компоненти безпосередньо з API для отримання актуальних даних. Це очистить кеш та завантажить свіжу інформацію про вразливості.','Reload Data'=>'Перезавантажити дані','Test Email Notifications'=>'Тестові сповіщення електронної пошти','Send a test email notification with current vulnerability data to verify your email configuration is working correctly.'=>'Надіслати тестове сповіщення електронною поштою з поточними даними про вразливості, щоб перевірити правильність налаштування електронної пошти.','From address (configured via constant):'=>'Адреса відправника (налаштована через константу):','From address (default):'=>'Адреса відправника (за замовчуванням):','Learn how to customize the email sender address →'=>'Дізнайтесь, як налаштувати адресу відправника електронної пошти →','Send Test Email'=>'Надіслати тестовий лист','WP-Cron Status'=>'Статус WP-Cron','View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly.'=>'Перегляньте та керуйте запланованими подіями WP-Cron. Порівняйте очікуваний розклад з фактичними завданнями cron, щоб переконатися, що автоматичні задачі виконуються правильно.','No cron data available.'=>'Дані cron недоступні.','Hook'=>'Хук','Expected'=>'Очікується','Found'=>'Знайдено','Next Run'=>'Наступний запуск','Status'=>'Статус','Not expected'=>'Не очікується','None'=>'Немає','OK'=>'OK','⚠️ Unexpected WPVulnerability Events'=>'⚠️ Неочікувані події WPVulnerability','No interval'=>'Без інтервалу','Next:'=>'Наступний:','Repair Cron Events'=>'Відновити події cron','Uninstall Data'=>'Дані при видаленні','By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall.'=>'За замовчуванням усі дані плагіна зберігаються при видаленні WPVulnerability. Увімкніть параметр нижче лише у тому випадку, якщо ви хочете, щоб усі налаштування, журнали та кешовані дані були остаточно видалені при деінсталяції.','Delete all plugin data on uninstall'=>'Видалити всі дані плагіна при деінсталяції','Default: unchecked (data preserved). Check only if you want a clean removal.'=>'За замовчуванням: не позначено (дані зберігаються). Позначте лише якщо хочете повністю видалити всі дані.','Save preference'=>'Зберегти налаштування','Reset WPVulnerability'=>'Скинути WPVulnerability','Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API.'=>'Видалити всі налаштування WPVulnerability, кешовані дані, журнали та заплановані події, потім відновити стандартні параметри та перезавантажити дані з API.','This action cannot be undone.'=>'Цю дію неможливо скасувати.','Are you sure you want to reset all WPVulnerability data? This action cannot be undone.'=>'Ви впевнені, що хочете скинути всі дані WPVulnerability? Цю дію неможливо скасувати.','Reset Plugin'=>'Скинути плагін','Vulnerability Database Statistics'=>'Статистика бази даних вразливостей','%s vulnerability'=>'%s вразливість' . "\0" . '%s вразливості' . "\0" . '%s вразливостей','(%s product)'=>'(%s продукт)' . "\0" . '(%s продукти)' . "\0" . '(%s продуктів)','No data'=>'Немає даних','Database last updated: %s'=>'База даних останнє оновлення: %s','Intelligence Sources'=>'Джерела даних','Number of vulnerabilities contributed by each intelligence source.'=>'Кількість вразливостей, наданих кожним джерелом даних.','Source'=>'Джерело','Core'=>'Ядро','Sponsors'=>'Спонсори','No sponsor data available.'=>'Дані про спонсорів відсутні.','Contributors'=>'Учасники','No contributor data available.'=>'Дані про учасників відсутні.','You do not have sufficient permissions to access this page.'=>'У вас недостатньо прав для доступу до цієї сторінки.','WPVulnerability settings'=>'Налаштування WPVulnerability','Configure and save these settings to receive notifications.'=>'Налаштуйте та збережіть ці параметри для отримання сповіщень.','Configure and save these settings to hide vulnerabilities.'=>'Налаштуйте та збережіть ці параметри для приховування вразливостей.','Default administrator email'=>'Електронна пошта адміністратора за замовчуванням','Read more if you want to force the cache time.'=>'Докладніше, якщо хочете примусово встановити час кешу.','Never'=>'Ніколи','Daily'=>'Щодня','Weekly'=>'Щотижня','Day'=>'День','Hour'=>'Година','Minute'=>'Хвилина','Read more about how to force the deactivation of an item.'=>'Докладніше про примусову деактивацію елемента.','Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com'=>'Недійсний URL webhook Slack. Повинен бути дійсним HTTPS URL з hooks.slack.com','Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com'=>'Недійсний URL webhook Microsoft Teams. Повинен бути дійсним HTTPS URL з office.com, office365.com або api.hooks.microsoft.com','Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com'=>'Недійсний URL webhook Discord. Повинен бути дійсним HTTPS URL з discord.com або discordapp.com','Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'Недійсний формат токена бота Telegram. Повинен бути у вигляді: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','All Clear'=>'Все в порядку','%d Critical Issue Found'=>'Знайдено %d критичну проблему' . "\0" . 'Знайдено %d критичні проблеми' . "\0" . 'Знайдено %d критичних проблем','%d Issue Found'=>'Знайдено %d проблему' . "\0" . 'Знайдено %d проблеми' . "\0" . 'Знайдено %d проблем','Never checked'=>'Ніколи не перевірявся','%d minute ago'=>'%d хвилину тому' . "\0" . '%d хвилини тому' . "\0" . '%d хвилин тому','%d hour ago'=>'%d годину тому' . "\0" . '%d години тому' . "\0" . '%d годин тому','Last checked: %s'=>'Остання перевірка: %s','Refresh Now'=>'Оновити зараз','No vulnerabilities detected'=>'Вразливостей не виявлено','Your site is up to date and secure'=>'Ваш сайт актуальний та захищений','Server Software'=>'Серверне програмне забезпечення','Site Health'=>'Стан сайту','Settings'=>'Налаштування','WPVulnerability Status'=>'Статус WPVulnerability','Receive vulnerability notifications'=>'Отримувати сповіщення про вразливості','Cache expiration time'=>'Час закінчення дії кешу','How often you want to receive notifications'=>'Як часто ви хочете отримувати сповіщення','Where do you want to receive notifications?'=>'Де ви хочете отримувати сповіщення?','Email addresses to notify (separated by commas)'=>'Адреси електронної пошти для сповіщень (через кому)','Slack webhook URL'=>'URL webhook Slack','Teams webhook URL'=>'URL webhook Teams','Vulnerabilities to hide'=>'Вразливості для приховування','What do you want to hide?'=>'Що ви хочете приховати?','Standard (Hybrid Detection)'=>'Стандартний (гібридне виявлення)','Strict (Extensions Only)'=>'Суворий (лише розширення)','Disabled (No Detection)'=>'Вимкнено (без виявлення)','Security Status'=>'Стан безпеки','Security Mode'=>'Режим безпеки','Shell Execution'=>'Виконання команд оболонки','Enabled'=>'Увімкнено','Audit Logging'=>'Журналювання аудиту','Enabled (%d days)'=>'Увімкнено (%d днів)','Total Log Entries'=>'Усього записів у журналі','Last Shell Execution'=>'Останнє виконання команди оболонки','%s ago'=>'%s тому','Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.'=>'Налаштуйте параметри безпеки через константи wp-config.php: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.','See security configuration documentation for details.'=>'Дивіться документацію з налаштування безпеки для отримання детальної інформації.','Memcached'=>'Memcached','Imagick Extension'=>'Розширення Imagick','Redis Extension'=>'Розширення Redis','Memcached Extension'=>'Розширення Memcached','Memcache Extension'=>'Розширення Memcache','SQLite3 Extension'=>'Розширення SQLite3','PDO SQLite'=>'PDO SQLite','Shell Command'=>'Команда оболонки','Binary Check'=>'Перевірка бінарного файлу','Not Detected'=>'Не виявлено','Software Detection Methods'=>'Методи виявлення програмного забезпечення','Shows which detection method was used for each software component and the reliability score.'=>'Показує, який метод виявлення використовувався для кожного компонента програмного забезпечення та оцінку надійності.','Component'=>'Компонент','Version'=>'Версія','Detection Method'=>'Метод виявлення','Reliability'=>'Надійність','Not detected'=>'Не виявлено','Shell Execution Audit Logs'=>'Журнали аудиту виконання команд оболонки','Complete audit trail of shell command executions for security monitoring.'=>'Повний журнал аудиту виконання команд оболонки для моніторингу безпеки.','No shell execution logs found.'=>'Журналів виконання команд оболонки не знайдено.','Logs will appear here when shell commands are executed for software detection.'=>'Журнали з\'являться тут, коли команди оболонки будуть виконані для виявлення програмного забезпечення.','Time'=>'Час','Command'=>'Команда','User'=>'Користувач','Output'=>'Виведення','Showing the %d most recent log entries.'=>'Показано %d найновіших записів журналу.','Invalid nonce.'=>'Недійсний nonce.','Insufficient permissions.'=>'Недостатньо прав.','No component specified.'=>'Компонент не вказано.','Debug Information'=>'Налагоджувальна інформація','This tab is only visible when WP_DEBUG is enabled. Use with caution.'=>'Ця вкладка видима лише якщо увімкнено WP_DEBUG. Використовуйте з обережністю.','System Information'=>'Системна інформація','WordPress Version'=>'Версія WordPress','Multisite'=>'Мережа сайтів','Yes'=>'Так','No'=>'Ні','Language'=>'Мова','PHP Version'=>'Версія PHP','PHP Extensions'=>'Розширення PHP','PHP Memory Limit'=>'Обмеження пам\'яті PHP','Database'=>'База даних','Web Server'=>'Веб-сервер','WP_DEBUG'=>'WP_DEBUG','WP_DEBUG_LOG'=>'WP_DEBUG_LOG','Path:'=>'Шлях:','Size: %s'=>'Розмір: %s','View Log File'=>'Переглянути файл журналу','Log file is not web-accessible (outside wp-content)'=>'Файл журналу не доступний через веб (знаходиться поза wp-content)','Log file does not exist yet'=>'Файл журналу ще не існує','Plugin Version'=>'Версія плагіна','Component Detection'=>'Виявлення компонентів','Version Detected'=>'Виявлена версія','Analyzed'=>'Проаналізовано','Cache Status'=>'Стан кешу','Configuration Summary'=>'Підсумок конфігурації','Cache Duration'=>'Тривалість кешу','Log Retention'=>'Зберігання журналів','Components Analyzed'=>'Проаналізовані компоненти','Notification Email'=>'Електронна пошта для сповіщень','Slack Webhook'=>'Webhook Slack','Configured & Enabled'=>'Налаштовано та увімкнено','Configured (Disabled)'=>'Налаштовано (вимкнено)','Not configured'=>'Не налаштовано','Teams Webhook'=>'Webhook Teams','Discord Webhook'=>'Webhook Discord','Telegram Bot'=>'Бот Telegram','Cron Status'=>'Статус cron','Update Database'=>'Оновити базу даних','Next run: %s'=>'Наступний запуск: %s','Not scheduled'=>'Не заплановано','Send Notification'=>'Надіслати сповіщення','Run Update Now'=>'Запустити оновлення зараз','Run Notification Now'=>'Надіслати сповіщення зараз','You do not have permission to run these actions.'=>'У вас немає дозволу на виконання цих дій.','API Testing'=>'Тестування API','Test API connectivity for each component. Click a button to send a test request.'=>'Перевірте підключення API для кожного компонента. Натисніть кнопку для надсилання тестового запиту.','Test %s'=>'Тест %s','Testing...'=>'Тестування...','HTTP Code:'=>'HTTP-код:','Response Time:'=>'Час відповіді:','Response Preview'=>'Попередній перегляд відповіді','Test'=>'Тест','Error:'=>'Помилка:','AJAX request failed.'=>'Запит AJAX не вдався.','You do not have permission to test API connectivity.'=>'У вас немає дозволу на тестування підключення API.','Database Options Viewer'=>'Переглядач параметрів бази даних','View the raw data stored in WordPress options.'=>'Перегляд необроблених даних, збережених у параметрах WordPress.','Select an option...'=>'Оберіть параметр...','Option not found or empty.'=>'Параметр не знайдено або він порожній.','Quick Actions'=>'Швидкі дії','Perform debugging actions. Use with caution.'=>'Виконати налагоджувальні дії. Використовуйте з обережністю.','Are you sure you want to clear all caches?'=>'Ви впевнені, що хочете очистити всі кеші?','Clear All Caches'=>'Очистити всі кеші','Are you sure you want to reset signatures?'=>'Ви впевнені, що хочете скинути сигнатури?','Reset Signatures'=>'Скинути сигнатури','Export Debug Info'=>'Експортувати налагоджувальну інформацію','You do not have permission to perform these actions.'=>'У вас немає дозволу на виконання цих дій.','Settings saved.'=>'Налаштування збережено.','WPVulnerability cron events have been repaired across the network.'=>'Події cron WPVulnerability відновлено в усій мережі.','You do not have permission to access this page.'=>'У вас немає дозволу для доступу до цієї сторінки.','WordPress %1$s has a known vulnerability that may be affecting your installed version.'=>'WordPress %1$s має відому вразливість, яка може впливати на вашу встановлену версію.','Actively exploited'=>'Активно використовується','Public exploit'=>'Публічний експлойт','Automatable'=>'Автоматизоване','References:'=>'Посилання:','Invalid component specified.'=>'Вказано недійсний компонент.','Version not detected for this component.'=>'Версію для цього компонента не виявлено.','API request successful.'=>'Запит API виконано успішно.','API returned HTTP code %d.'=>'API повернув HTTP-код %d.','WPVulnerability Logs'=>'Журнали WPVulnerability','WPVulnerability Log'=>'Журнал WPVulnerability','Low'=>'Низький','Medium'=>'Середній','High'=>'Високий','Critical'=>'Критичний','WPVulnerability Shell Logs'=>'Журнали оболонки WPVulnerability','WPVulnerability Shell Log'=>'Журнал оболонки WPVulnerability','Every week'=>'Щотижня','Every day'=>'Щодня','Invalid request.'=>'Недійсний запит.','You have unsubscribed from WPVulnerability notifications.'=>'Ви відписалися від сповіщень WPVulnerability.','Learn more about the WordPress Vulnerability Database API at %2$s'=>'Дізнайтеся більше про API бази даних вразливостей WordPress на %2$s','Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings.'=>'Хочете припинити отримувати ці сповіщення? Відписатися або змінити частоту електронних листів на Ніколи в налаштуваннях WPVulnerability.','No vulnerabilities found'=>'Вразливостей не знайдено','This is likely a test. The site does not have vulnerabilities.'=>'Це, мабуть, тест. На сайті немає вразливостей.','Core vulnerabilities'=>'Вразливості ядра','Plugins vulnerabilities'=>'Вразливості плагінів','Themes vulnerabilities'=>'Вразливості тем','PHP vulnerabilities'=>'Вразливості PHP','Apache HTTPD vulnerabilities'=>'Вразливості Apache HTTPD','Nginx vulnerabilities'=>'Вразливості Nginx','MariaDB vulnerabilities'=>'Вразливості MariaDB','MySQL vulnerabilities'=>'Вразливості MySQL','ImageMagick vulnerabilities'=>'Вразливості ImageMagick','curl vulnerabilities'=>'Вразливості curl','memcached vulnerabilities'=>'Вразливості memcached','Redis vulnerabilities'=>'Вразливості Redis','SQLite vulnerabilities'=>'Вразливості SQLite','Vulnerability found: %s'=>'Знайдено вразливість: %s','Vulnerability found'=>'Знайдено вразливість','%1$s has a known vulnerability that may be affecting your installed version.'=>'%1$s має відому вразливість, яка може впливати на вашу встановлену версію.','This plugin is closed. Please replace it with another.'=>'Цей плагін закрито. Будь ласка, замініть його іншим.','This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates.'=>'Ця вразливість, мабуть, не виправлена. Слідкуйте за майбутніми оновленнями плагіна.','It hasn\'t been updated in over a year.'=>'Цей плагін не оновлювався більше року.','It may no longer be available (closed?).'=>'Можливо, він більше недоступний (закритий?).','Last updated on'=>'Останнє оновлення','Vulnerabilities (%d)'=>'Вразливості (%d)','%s running'=>'%s працює','End of Life'=>'Кінець підтримки','End of life:'=>'Кінець підтримки:','Supported'=>'Підтримується','Plugin'=>'Плагін','Theme'=>'Тема','End of life: %s'=>'Кінець підтримки: %s','EOL'=>'EOL','Network Settings'=>'Налаштування мережі','Vulnerabilities'=>'Вразливості','Every 6 hours'=>'Кожні 6 годин','Database updates'=>'Оновлення бази даних','Log cleanup'=>'Очищення журналів','Notifications are scheduled, but settings currently disable them. Please review the notifications tab.'=>'Сповіщення заплановані, але поточні налаштування їх вимикають. Будь ласка, перегляньте вкладку сповіщень.','This event should not be scheduled for this site.'=>'Ця подія не повинна бути запланована для цього сайту.','Not expected for this site.'=>'Не очікується для цього сайту.','No instances found.'=>'Екземплярів не знайдено.','Scheduled with an unexpected interval.'=>'Заплановано з неочікуваним інтервалом.','Multiple instances detected.'=>'Виявлено декілька екземплярів.','Scheduled as expected.'=>'Заплановано відповідно до очікувань.','There aren\'t plugins vulnerabilities'=>'Вразливостей плагінів немає','Shows possible vulnerabilities that exist in installed plugins.'=>'Показує можливі вразливості у встановлених плагінах.','There is %d plugin with vulnerabilities'=>'Є %d плагін з вразливостями' . "\0" . 'Є %d плагіни з вразливостями' . "\0" . 'Є %d плагінів з вразливостями','We\'ve detected potential vulnerabilities in installed plugins. Please check them and keep them updated.'=>'Виявлено можливі вразливості у встановлених плагінах. Будь ласка, перевірте їх та оновлюйте.','Update plugins'=>'Оновити плагіни','There aren\'t themes vulnerabilities'=>'Вразливостей тем немає','Shows possible vulnerabilities that exist in installed themes.'=>'Показує можливі вразливості у встановлених темах.','There is %d theme with vulnerabilities'=>'Є %d тема з вразливостями' . "\0" . 'Є %d теми з вразливостями' . "\0" . 'Є %d тем з вразливостями','We\'ve detected potential vulnerabilities in installed themes. Please check them and keep them updated.'=>'Виявлено можливі вразливості у встановлених темах. Будь ласка, перевірте їх та оновлюйте.','Update themes'=>'Оновити теми','There aren\'t WordPress vulnerabilities'=>'Вразливостей WordPress немає','Shows possible vulnerabilities existing in the WordPress core.'=>'Показує можливі вразливості в ядрі WordPress.','There is %d core vulnerability'=>'Є %d вразливість ядра' . "\0" . 'Є %d вразливості ядра' . "\0" . 'Є %d вразливостей ядра','We\'ve detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated.'=>'Виявлено можливі вразливості в цій інсталяції WordPress. Будь ласка, перевірте їх та оновлюйте свою інсталяцію.','Update WordPress'=>'Оновити WordPress','Nginx'=>'Nginx','Invalid software type'=>'Недійсний тип програмного забезпечення','Error'=>'Помилка','The specified software type is not valid.'=>'Вказаний тип програмного забезпечення недійсний.','There aren\'t %s vulnerabilities'=>'Вразливостей %s немає','Shows possible vulnerabilities existing in %s.'=>'Показує можливі вразливості в %s.','There is %1$d %2$s vulnerability'=>'Є %1$d вразливість %2$s' . "\0" . 'Є %1$d вразливості %2$s' . "\0" . 'Є %1$d вразливостей %2$s','We\'ve detected potential vulnerabilities in %s. Please check them and keep your installation updated.'=>'Виявлено можливі вразливості в %s. Будь ласка, перевірте їх та оновлюйте свою інсталяцію.','How to update PHP'=>'Як оновити PHP','WPVulnerability Core'=>'WPVulnerability Core','WPVulnerability Themes'=>'WPVulnerability Themes','WPVulnerability Plugins'=>'WPVulnerability Plugins','WPVulnerability PHP'=>'WPVulnerability PHP','WPVulnerability Apache HTTPD'=>'WPVulnerability Apache HTTPD','WPVulnerability Nginx'=>'WPVulnerability Nginx','WPVulnerability MariaDB'=>'WPVulnerability MariaDB','WPVulnerability MySQL'=>'WPVulnerability MySQL','WPVulnerability ImageMagick'=>'WPVulnerability ImageMagick','WPVulnerability curl'=>'WPVulnerability curl','WPVulnerability memcached'=>'WPVulnerability memcached','WPVulnerability redis'=>'WPVulnerability redis','WPVulnerability sqlite'=>'WPVulnerability sqlite','This theme is closed. Please replace it with another.'=>'Цю тему закрито. Будь ласка, замініть її іншою.','This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates.'=>'Ця вразливість, мабуть, не виправлена. Слідкуйте за майбутніми оновленнями теми.','This theme has known vulnerabilities that may be affecting your installed version.'=>'Ця тема має відомі вразливості, які можуть впливати на вашу встановлену версію.']]; \ No newline at end of file diff --git a/languages/wpvulnerability-uk.mo b/languages/wpvulnerability-uk.mo new file mode 100644 index 0000000000000000000000000000000000000000..543b83c79812f9472691485bbbc643955b0659aa GIT binary patch literal 49120 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�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 Dpu}F_ literal 0 HcmV?d00001 diff --git a/languages/wpvulnerability-uk.po b/languages/wpvulnerability-uk.po new file mode 100644 index 0000000..18c370a --- /dev/null +++ b/languages/wpvulnerability-uk.po @@ -0,0 +1,2486 @@ +# Copyright (C) 2026 ROBOTSTXT +# This file is distributed under the GPL-3.0-or-later. +msgid "" +msgstr "" +"Project-Id-Version: WPVulnerability 5.0.0\n" +"POT-Creation-Date: 2026-05-27T16:32:22+00:00\n" +"PO-Revision-Date: 2026-05-27 00:00+0000\n" +"Last-Translator: Automatically generated\n" +"Language-Team: Ukrainian \n" +"Language: uk\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\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" +"X-Generator: AI Translation\n" +"X-Domain: wpvulnerability\n" + +#. Plugin Name of the plugin +#: wpvulnerability.php +#: wpvulnerability-admin.php:1782 +#: wpvulnerability-admin.php:1783 +#: wpvulnerability-adminms.php:1945 +#: wpvulnerability-adminms.php:1946 +#: wpvulnerability-notifications.php:105 +msgid "WPVulnerability" +msgstr "" + +#. Plugin URI of the plugin +#: wpvulnerability.php +msgid "https://www.wpvulnerability.com/plugin/" +msgstr "" + +#. Description of the plugin +#: wpvulnerability.php +msgid "Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API." +msgstr "" + +#. Author of the plugin +#: wpvulnerability.php +msgid "ROBOTSTXT" +msgstr "" + +#. Author URI of the plugin +#: wpvulnerability.php +msgid "https://www.robotstxt.es/" +msgstr "" + +#: class-wpvulnerability-cli.php:35 +#: class-wpvulnerability-config-cli.php:32 +msgid "This command requires a WordPress administrator. Run with --user=." +msgstr "Ця команда потребує прав адміністратора WordPress. Запустіть з --user=." + +#: class-wpvulnerability-cli.php:156 +msgid "No core vulnerabilities found." +msgstr "Вразливостей ядра не знайдено." + +#: class-wpvulnerability-cli.php:275 +msgid "No plugin vulnerabilities found." +msgstr "Вразливостей плагінів не знайдено." + +#: class-wpvulnerability-cli.php:393 +msgid "No theme vulnerabilities found." +msgstr "Вразливостей тем не знайдено." + +#. translators: %s is the software name (php, apache, nginx, etc.) +#: class-wpvulnerability-cli.php:490 +#, php-format +msgid "No %s vulnerabilities found." +msgstr "Вразливостей %s не знайдено." + +#: wpvulnerability-admin.php:63 +#: wpvulnerability-adminms.php:227 +msgid "Data from source has been reloaded." +msgstr "Дані з джерела перезавантажено." + +#: wpvulnerability-admin.php:65 +#: wpvulnerability-adminms.php:229 +msgid "You do not have permission to reload data." +msgstr "У вас немає дозволу на перезавантаження даних." + +#: wpvulnerability-admin.php:93 +#: wpvulnerability-adminms.php:255 +msgid "Test email has been sent." +msgstr "Тестовий лист надіслано." + +#: wpvulnerability-admin.php:95 +#: wpvulnerability-adminms.php:259 +msgid "Test email has failed. Please, check your email settings." +msgstr "Не вдалося надіслати тестовий лист. Будь ласка, перевірте налаштування електронної пошти." + +#: wpvulnerability-admin.php:98 +#: wpvulnerability-adminms.php:263 +msgid "You do not have permission to send test emails." +msgstr "У вас немає дозволу надсилати тестові листи." + +#: wpvulnerability-admin.php:113 +msgid "WPVulnerability cron events have been repaired." +msgstr "Події cron WPVulnerability відновлено." + +#: wpvulnerability-admin.php:115 +#: wpvulnerability-adminms.php:279 +msgid "You do not have permission to repair cron events." +msgstr "У вас немає дозволу на відновлення подій cron." + +#: wpvulnerability-admin.php:127 +#: wpvulnerability-adminms.php:291 +msgid "All logs have been deleted." +msgstr "Усі журнали видалено." + +#: wpvulnerability-admin.php:129 +#: wpvulnerability-adminms.php:293 +msgid "You do not have permission to delete logs." +msgstr "У вас немає дозволу на видалення журналів." + +#: wpvulnerability-admin.php:146 +msgid "Uninstall preference saved." +msgstr "Налаштування видалення збережено." + +#: wpvulnerability-admin.php:153 +#: wpvulnerability-adminms.php:316 +msgid "WPVulnerability has been reset to defaults and reloaded." +msgstr "WPVulnerability скинуто до стандартних налаштувань та перезавантажено." + +#: wpvulnerability-admin.php:155 +#: wpvulnerability-adminms.php:318 +msgid "You do not have permission to reset WPVulnerability." +msgstr "У вас немає дозволу на скидання WPVulnerability." + +#: wpvulnerability-admin.php:170 +#: wpvulnerability-adminms.php:333 +msgid "All caches have been cleared." +msgstr "Усі кеші очищено." + +#: wpvulnerability-admin.php:172 +#: wpvulnerability-adminms.php:335 +msgid "You do not have permission to clear caches." +msgstr "У вас немає дозволу на очищення кешів." + +#: wpvulnerability-admin.php:187 +#: wpvulnerability-adminms.php:350 +msgid "Plugin and theme signatures have been reset." +msgstr "Сигнатури плагінів та тем скинуто." + +#: wpvulnerability-admin.php:189 +#: wpvulnerability-adminms.php:352 +msgid "You do not have permission to reset signatures." +msgstr "У вас немає дозволу на скидання сигнатур." + +#: wpvulnerability-admin.php:212 +#: wpvulnerability-adminms.php:375 +msgid "You do not have permission to export debug information." +msgstr "У вас немає дозволу на експорт налагоджувальної інформації." + +#: wpvulnerability-admin.php:224 +#: wpvulnerability-adminms.php:387 +msgid "Database update has been executed." +msgstr "Оновлення бази даних виконано." + +#: wpvulnerability-admin.php:226 +#: wpvulnerability-adminms.php:389 +msgid "You do not have permission to run database updates." +msgstr "У вас немає дозволу на виконання оновлень бази даних." + +#: wpvulnerability-admin.php:247 +#: wpvulnerability-adminms.php:410 +msgid "Notification has been sent." +msgstr "Сповіщення надіслано." + +#: wpvulnerability-admin.php:249 +#: wpvulnerability-adminms.php:412 +msgid "Notification sending failed." +msgstr "Не вдалося надіслати сповіщення." + +#: wpvulnerability-admin.php:252 +#: wpvulnerability-adminms.php:415 +msgid "You do not have permission to send notifications." +msgstr "У вас немає дозволу на надсилання сповіщень." + +#: wpvulnerability-admin.php:266 +#: wpvulnerability-adminms.php:539 +#: wpvulnerability-schedule.php:323 +msgid "Notifications" +msgstr "Сповіщення" + +#: wpvulnerability-admin.php:269 +#: wpvulnerability-adminms.php:542 +msgid "Analysis" +msgstr "Аналіз" + +#: wpvulnerability-admin.php:272 +#: wpvulnerability-adminms.php:545 +msgid "Logs" +msgstr "Журнали" + +#: wpvulnerability-admin.php:275 +#: wpvulnerability-adminms.php:548 +#: wpvulnerability-sitehealth.php:25 +#: wpvulnerability-sitehealth.php:77 +#: wpvulnerability-sitehealth.php:129 +#: wpvulnerability-sitehealth.php:210 +msgid "Security" +msgstr "Безпека" + +#: wpvulnerability-admin.php:278 +#: wpvulnerability-adminms.php:551 +msgid "Tools" +msgstr "Інструменти" + +#: wpvulnerability-admin.php:285 +#: wpvulnerability-adminms.php:558 +msgid "Debug" +msgstr "Налагодження" + +#: wpvulnerability-admin.php:290 +#: wpvulnerability-adminms.php:563 +msgid "About" +msgstr "Про плагін" + +#: wpvulnerability-admin.php:427 +#: wpvulnerability-adminms.php:700 +msgid "Notification Settings" +msgstr "Налаштування сповіщень" + +#: wpvulnerability-admin.php:430 +#: wpvulnerability-adminms.php:703 +msgid "Configure how and when you want to receive vulnerability notifications." +msgstr "Налаштуйте, як і коли ви хочете отримувати сповіщення про вразливості." + +#: wpvulnerability-admin.php:431 +#: wpvulnerability-adminms.php:704 +msgid "Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software." +msgstr "Будьте в курсі вразливостей безпеки у вашій інсталяції WordPress, плагінах, темах та серверному програмному забезпеченні." + +#: wpvulnerability-admin.php:438 +#: wpvulnerability-adminms.php:711 +msgid "Cache Expiration Time" +msgstr "Час закінчення дії кешу" + +#: wpvulnerability-admin.php:440 +#: wpvulnerability-admin.php:814 +#: wpvulnerability-adminms.php:713 +#: wpvulnerability-adminms.php:1087 +msgid "FORCED" +msgstr "ПРИМУСОВО" + +#: wpvulnerability-admin.php:444 +#: wpvulnerability-adminms.php:717 +msgid "How long to cache vulnerability data before refreshing from the API." +msgstr "Як довго кешувати дані про вразливості перед оновленням через API." + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:453 +#: wpvulnerability-admin.php:1891 +#: wpvulnerability-admin.php:3631 +#: wpvulnerability-adminms.php:726 +#: wpvulnerability-adminms.php:2039 +#: wpvulnerability-adminms.php:3825 +#, php-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d година" +msgstr[1] "%d години" +msgstr[2] "%d годин" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:469 +#: wpvulnerability-adminms.php:742 +#, php-format +msgid "You can force the cache time via wp-config.php constant. Learn more →" +msgstr "Ви можете примусово встановити час кешу через константу wp-config.php. Дізнатися більше →" + +#: wpvulnerability-admin.php:481 +#: wpvulnerability-admin.php:3665 +#: wpvulnerability-adminms.php:754 +#: wpvulnerability-adminms.php:3859 +msgid "Notification Frequency" +msgstr "Частота сповіщень" + +#: wpvulnerability-admin.php:484 +#: wpvulnerability-adminms.php:757 +msgid "Choose how often you want to receive vulnerability notifications." +msgstr "Оберіть, як часто ви хочете отримувати сповіщення про вразливості." + +#: wpvulnerability-admin.php:489 +#: wpvulnerability-adminms.php:762 +msgid "Never - Disable automatic notifications" +msgstr "Ніколи — вимкнути автоматичні сповіщення" + +#: wpvulnerability-admin.php:493 +#: wpvulnerability-adminms.php:766 +msgid "Daily - Receive notifications every day" +msgstr "Щодня — отримувати сповіщення кожного дня" + +#: wpvulnerability-admin.php:497 +#: wpvulnerability-adminms.php:770 +msgid "Weekly - Receive notifications once a week" +msgstr "Щотижня — отримувати сповіщення раз на тиждень" + +#: wpvulnerability-admin.php:503 +#: wpvulnerability-adminms.php:776 +msgid "Day:" +msgstr "День:" + +#: wpvulnerability-admin.php:505 +#: wpvulnerability-admin.php:1955 +#: wpvulnerability-adminms.php:778 +#: wpvulnerability-adminms.php:2115 +msgid "Monday" +msgstr "Понеділок" + +#: wpvulnerability-admin.php:506 +#: wpvulnerability-admin.php:1956 +#: wpvulnerability-adminms.php:779 +#: wpvulnerability-adminms.php:2116 +msgid "Tuesday" +msgstr "Вівторок" + +#: wpvulnerability-admin.php:507 +#: wpvulnerability-admin.php:1957 +#: wpvulnerability-adminms.php:780 +#: wpvulnerability-adminms.php:2117 +msgid "Wednesday" +msgstr "Середа" + +#: wpvulnerability-admin.php:508 +#: wpvulnerability-admin.php:1958 +#: wpvulnerability-adminms.php:781 +#: wpvulnerability-adminms.php:2118 +msgid "Thursday" +msgstr "Четвер" + +#: wpvulnerability-admin.php:509 +#: wpvulnerability-admin.php:1959 +#: wpvulnerability-adminms.php:782 +#: wpvulnerability-adminms.php:2119 +msgid "Friday" +msgstr "П'ятниця" + +#: wpvulnerability-admin.php:510 +#: wpvulnerability-admin.php:1960 +#: wpvulnerability-adminms.php:783 +#: wpvulnerability-adminms.php:2120 +msgid "Saturday" +msgstr "Субота" + +#: wpvulnerability-admin.php:511 +#: wpvulnerability-admin.php:1961 +#: wpvulnerability-adminms.php:784 +#: wpvulnerability-adminms.php:2121 +msgid "Sunday" +msgstr "Неділя" + +#: wpvulnerability-admin.php:515 +#: wpvulnerability-adminms.php:788 +msgid "Time:" +msgstr "Час:" + +#: wpvulnerability-admin.php:519 +#: wpvulnerability-adminms.php:792 +msgid "(24-hour format, server timezone)" +msgstr "(24-годинний формат, часовий пояс сервера)" + +#: wpvulnerability-admin.php:528 +#: wpvulnerability-adminms.php:801 +msgid "Notification Channels" +msgstr "Канали сповіщень" + +#: wpvulnerability-admin.php:531 +#: wpvulnerability-adminms.php:804 +msgid "Select where you want to receive notifications." +msgstr "Оберіть, де ви хочете отримувати сповіщення." + +#: wpvulnerability-admin.php:536 +#: wpvulnerability-admin.php:2011 +#: wpvulnerability-adminms.php:809 +#: wpvulnerability-adminms.php:2169 +msgid "Email" +msgstr "Електронна пошта" + +#: wpvulnerability-admin.php:539 +#: wpvulnerability-adminms.php:812 +msgid "Email Addresses (separated by commas):" +msgstr "Адреси електронної пошти (через кому):" + +#: wpvulnerability-admin.php:541 +#: wpvulnerability-adminms.php:814 +msgid "Default:" +msgstr "За замовчуванням:" + +#: wpvulnerability-admin.php:546 +#: wpvulnerability-admin.php:2016 +#: wpvulnerability-adminms.php:819 +#: wpvulnerability-adminms.php:2174 +msgid "Slack" +msgstr "Slack" + +#: wpvulnerability-admin.php:549 +#: wpvulnerability-adminms.php:822 +msgid "Slack Webhook URL:" +msgstr "URL webhook Slack:" + +#. translators: %s: Slack documentation URL +#: wpvulnerability-admin.php:555 +#: wpvulnerability-adminms.php:828 +#, php-format +msgid "Learn how to create a Slack incoming webhook →" +msgstr "Дізнайтесь, як створити вхідний webhook для Slack →" + +#: wpvulnerability-admin.php:564 +#: wpvulnerability-admin.php:2021 +#: wpvulnerability-adminms.php:837 +#: wpvulnerability-adminms.php:2179 +msgid "Microsoft Teams" +msgstr "Microsoft Teams" + +#: wpvulnerability-admin.php:567 +#: wpvulnerability-adminms.php:840 +msgid "Teams Webhook URL:" +msgstr "URL webhook Teams:" + +#. translators: %s: Microsoft Teams documentation URL +#: wpvulnerability-admin.php:573 +#: wpvulnerability-adminms.php:846 +#, php-format +msgid "Learn how to create a Teams incoming webhook →" +msgstr "Дізнайтесь, як створити вхідний webhook для Teams →" + +#: wpvulnerability-admin.php:582 +#: wpvulnerability-adminms.php:855 +msgid "Discord" +msgstr "Discord" + +#: wpvulnerability-admin.php:585 +#: wpvulnerability-adminms.php:858 +msgid "Discord Webhook URL:" +msgstr "URL webhook Discord:" + +#. translators: %s: Discord documentation URL +#: wpvulnerability-admin.php:591 +#: wpvulnerability-adminms.php:864 +#, php-format +msgid "Learn how to create a Discord webhook →" +msgstr "Дізнайтесь, як створити webhook для Discord →" + +#: wpvulnerability-admin.php:600 +#: wpvulnerability-adminms.php:873 +msgid "Telegram" +msgstr "Telegram" + +#: wpvulnerability-admin.php:603 +#: wpvulnerability-adminms.php:876 +msgid "Telegram Bot Token:" +msgstr "Токен бота Telegram:" + +#: wpvulnerability-admin.php:605 +#: wpvulnerability-adminms.php:878 +msgid "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "Формат: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:607 +#: wpvulnerability-adminms.php:880 +msgid "Telegram Chat ID:" +msgstr "ID чату Telegram:" + +#. translators: %s: Telegram documentation URL +#: wpvulnerability-admin.php:613 +#: wpvulnerability-adminms.php:886 +#, php-format +msgid "Learn how to create a Telegram bot and get Chat ID →" +msgstr "Дізнайтесь, як створити бота Telegram та отримати Chat ID →" + +#: wpvulnerability-admin.php:623 +#: wpvulnerability-adminms.php:896 +msgid "Save Notification Settings" +msgstr "Зберегти налаштування сповіщень" + +#: wpvulnerability-admin.php:700 +#: wpvulnerability-admin.php:2552 +#: wpvulnerability-adminms.php:973 +#: wpvulnerability-adminms.php:2459 +msgid "WordPress Components" +msgstr "Компоненти WordPress" + +#: wpvulnerability-admin.php:703 +#: wpvulnerability-admin.php:2560 +#: wpvulnerability-adminms.php:976 +#: wpvulnerability-adminms.php:2467 +msgid "WordPress Core" +msgstr "Ядро WordPress" + +#: wpvulnerability-admin.php:707 +#: wpvulnerability-admin.php:1472 +#: wpvulnerability-admin.php:1573 +#: wpvulnerability-admin.php:2109 +#: wpvulnerability-admin.php:2571 +#: wpvulnerability-adminms.php:980 +#: wpvulnerability-adminms.php:1744 +#: wpvulnerability-adminms.php:1843 +#: wpvulnerability-adminms.php:2266 +#: wpvulnerability-adminms.php:2478 +msgid "Plugins" +msgstr "Плагіни" + +#: wpvulnerability-admin.php:711 +#: wpvulnerability-admin.php:1473 +#: wpvulnerability-admin.php:1574 +#: wpvulnerability-admin.php:2114 +#: wpvulnerability-admin.php:2587 +#: wpvulnerability-adminms.php:984 +#: wpvulnerability-adminms.php:1745 +#: wpvulnerability-adminms.php:1844 +#: wpvulnerability-adminms.php:2271 +#: wpvulnerability-adminms.php:2494 +msgid "Themes" +msgstr "Теми" + +#: wpvulnerability-admin.php:717 +#: wpvulnerability-adminms.php:990 +msgid "Software & Languages" +msgstr "Програмне забезпечення та мови" + +#: wpvulnerability-admin.php:720 +#: wpvulnerability-admin.php:1474 +#: wpvulnerability-admin.php:2119 +#: wpvulnerability-adminms.php:993 +#: wpvulnerability-adminms.php:1746 +#: wpvulnerability-adminms.php:2276 +#: wpvulnerability-sitehealth.php:178 +msgid "PHP" +msgstr "PHP" + +#: wpvulnerability-admin.php:726 +#: wpvulnerability-adminms.php:999 +msgid "Web Servers" +msgstr "Веб-сервери" + +#: wpvulnerability-admin.php:729 +#: wpvulnerability-admin.php:1475 +#: wpvulnerability-admin.php:2124 +#: wpvulnerability-adminms.php:1002 +#: wpvulnerability-adminms.php:1747 +#: wpvulnerability-adminms.php:2281 +#: wpvulnerability-sitehealth.php:179 +msgid "Apache HTTPD" +msgstr "Apache HTTPD" + +#: wpvulnerability-admin.php:733 +#: wpvulnerability-admin.php:1476 +#: wpvulnerability-admin.php:2129 +#: wpvulnerability-adminms.php:1006 +#: wpvulnerability-adminms.php:1748 +#: wpvulnerability-adminms.php:2286 +msgid "nginx" +msgstr "nginx" + +#: wpvulnerability-admin.php:739 +#: wpvulnerability-adminms.php:1012 +msgid "Databases" +msgstr "Бази даних" + +#: wpvulnerability-admin.php:742 +#: wpvulnerability-admin.php:1477 +#: wpvulnerability-admin.php:2134 +#: wpvulnerability-adminms.php:1015 +#: wpvulnerability-adminms.php:1749 +#: wpvulnerability-adminms.php:2291 +#: wpvulnerability-sitehealth.php:181 +msgid "MariaDB" +msgstr "MariaDB" + +#: wpvulnerability-admin.php:746 +#: wpvulnerability-admin.php:1478 +#: wpvulnerability-admin.php:2139 +#: wpvulnerability-adminms.php:1019 +#: wpvulnerability-adminms.php:1750 +#: wpvulnerability-adminms.php:2296 +#: wpvulnerability-sitehealth.php:182 +msgid "MySQL" +msgstr "MySQL" + +#: wpvulnerability-admin.php:750 +#: wpvulnerability-admin.php:1483 +#: wpvulnerability-admin.php:2164 +#: wpvulnerability-admin.php:3104 +#: wpvulnerability-adminms.php:1023 +#: wpvulnerability-adminms.php:1755 +#: wpvulnerability-adminms.php:2321 +#: wpvulnerability-adminms.php:3281 +msgid "SQLite" +msgstr "SQLite" + +#: wpvulnerability-admin.php:756 +#: wpvulnerability-adminms.php:1029 +msgid "Additional Tools" +msgstr "Додаткові інструменти" + +#: wpvulnerability-admin.php:759 +#: wpvulnerability-admin.php:1479 +#: wpvulnerability-admin.php:2144 +#: wpvulnerability-admin.php:3101 +#: wpvulnerability-adminms.php:1032 +#: wpvulnerability-adminms.php:1751 +#: wpvulnerability-adminms.php:2301 +#: wpvulnerability-adminms.php:3278 +#: wpvulnerability-sitehealth.php:183 +msgid "ImageMagick" +msgstr "ImageMagick" + +#: wpvulnerability-admin.php:763 +#: wpvulnerability-admin.php:1480 +#: wpvulnerability-admin.php:2149 +#: wpvulnerability-adminms.php:1036 +#: wpvulnerability-adminms.php:1752 +#: wpvulnerability-adminms.php:2306 +#: wpvulnerability-sitehealth.php:184 +msgid "curl" +msgstr "curl" + +#: wpvulnerability-admin.php:767 +#: wpvulnerability-admin.php:1481 +#: wpvulnerability-admin.php:2154 +#: wpvulnerability-adminms.php:1040 +#: wpvulnerability-adminms.php:1753 +#: wpvulnerability-adminms.php:2311 +msgid "memcached" +msgstr "memcached" + +#: wpvulnerability-admin.php:771 +#: wpvulnerability-admin.php:1482 +#: wpvulnerability-admin.php:2159 +#: wpvulnerability-admin.php:3102 +#: wpvulnerability-adminms.php:1044 +#: wpvulnerability-adminms.php:1754 +#: wpvulnerability-adminms.php:2316 +#: wpvulnerability-adminms.php:3279 +msgid "Redis" +msgstr "Redis" + +#: wpvulnerability-admin.php:784 +#: wpvulnerability-adminms.php:1057 +msgid "Component Analysis Settings" +msgstr "Налаштування аналізу компонентів" + +#: wpvulnerability-admin.php:787 +#: wpvulnerability-adminms.php:1060 +msgid "Enable or disable vulnerability analysis for specific components." +msgstr "Увімкніть або вимкніть аналіз вразливостей для окремих компонентів." + +#: wpvulnerability-admin.php:788 +#: wpvulnerability-adminms.php:1061 +msgid "Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red." +msgstr "Позначте компоненти, які ви хочете ПРИХОВАТИ від сканування та звітів про вразливості. Непозначені компоненти будуть активно аналізуватися. Компоненти з активним аналізом відображаються зеленим кольором, приховані — червоним." + +#: wpvulnerability-admin.php:820 +#: wpvulnerability-adminms.php:1093 +msgid "Hidden (forced by constant)" +msgstr "Приховано (примусово через константу)" + +#: wpvulnerability-admin.php:823 +#: wpvulnerability-adminms.php:1096 +msgid "🔴 Analysis disabled" +msgstr "🔴 Аналіз вимкнено" + +#: wpvulnerability-admin.php:826 +#: wpvulnerability-adminms.php:1099 +msgid "🟢 Analysis active" +msgstr "🟢 Аналіз активний" + +#: wpvulnerability-admin.php:848 +#: wpvulnerability-adminms.php:1121 +msgid "Tip:" +msgstr "Порада:" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:852 +#: wpvulnerability-adminms.php:1125 +#, php-format +msgid "You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →" +msgstr "Ви можете примусово вимкнути компоненти через константи wp-config.php. Дізнатися більше про примусове приховування перевірок →" + +#: wpvulnerability-admin.php:860 +#: wpvulnerability-adminms.php:1133 +msgid "Save Analysis Settings" +msgstr "Зберегти налаштування аналізу" + +#: wpvulnerability-admin.php:920 +#: wpvulnerability-adminms.php:1193 +msgid "« Previous" +msgstr "« Попередня" + +#: wpvulnerability-admin.php:921 +#: wpvulnerability-adminms.php:1194 +msgid "Next »" +msgstr "Наступна »" + +#: wpvulnerability-admin.php:932 +#: wpvulnerability-adminms.php:1205 +msgid "Log entry not found or has been removed." +msgstr "Запис журналу не знайдено або він був видалений." + +#: wpvulnerability-admin.php:935 +#: wpvulnerability-adminms.php:1208 +msgid "Unable to load the requested log entry." +msgstr "Не вдалося завантажити запитаний запис журналу." + +#: wpvulnerability-admin.php:945 +#: wpvulnerability-adminms.php:1218 +msgid "Log Configuration" +msgstr "Конфігурація журналу" + +#: wpvulnerability-admin.php:950 +#: wpvulnerability-adminms.php:1223 +msgid "Total Logs" +msgstr "Усього записів у журналі" + +#: wpvulnerability-admin.php:954 +#: wpvulnerability-adminms.php:1227 +msgid "Retention Period" +msgstr "Термін зберігання" + +#: wpvulnerability-admin.php:959 +#: wpvulnerability-admin.php:1301 +#: wpvulnerability-admin.php:3029 +#: wpvulnerability-admin.php:3043 +#: wpvulnerability-admin.php:3475 +#: wpvulnerability-admin.php:3483 +#: wpvulnerability-adminms.php:1232 +#: wpvulnerability-adminms.php:1574 +#: wpvulnerability-adminms.php:3206 +#: wpvulnerability-adminms.php:3220 +#: wpvulnerability-adminms.php:3669 +#: wpvulnerability-adminms.php:3677 +msgid "Disabled" +msgstr "Вимкнено" + +#. translators: %d: Number of days. +#. translators: %d: number of days +#: wpvulnerability-admin.php:962 +#: wpvulnerability-admin.php:984 +#: wpvulnerability-admin.php:3641 +#: wpvulnerability-adminms.php:1235 +#: wpvulnerability-adminms.php:1257 +#: wpvulnerability-adminms.php:3835 +#, php-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d день" +msgstr[1] "%d дні" +msgstr[2] "%d днів" + +#: wpvulnerability-admin.php:975 +#: wpvulnerability-adminms.php:1248 +msgid "Log Retention Period" +msgstr "Термін зберігання журналу" + +#: wpvulnerability-admin.php:981 +#: wpvulnerability-adminms.php:1254 +msgid "None (Disabled)" +msgstr "Немає (вимкнено)" + +#: wpvulnerability-admin.php:1004 +#: wpvulnerability-adminms.php:1277 +msgid "This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant." +msgstr "Це значення задано константою WPVULNERABILITY_LOG_RETENTION_DAYS." + +#: wpvulnerability-admin.php:1009 +#: wpvulnerability-adminms.php:1282 +msgid "Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted." +msgstr "Оберіть, як довго WPVulnerability повинен зберігати журнали відповідей API. Старіші журнали видаляються автоматично." + +#: wpvulnerability-admin.php:1013 +#: wpvulnerability-adminms.php:1286 +msgid "Save Configuration" +msgstr "Зберегти конфігурацію" + +#: wpvulnerability-admin.php:1018 +#: wpvulnerability-adminms.php:1291 +msgid "Log retention is currently disabled." +msgstr "Зберігання журналів наразі вимкнено." + +#: wpvulnerability-admin.php:1018 +#: wpvulnerability-adminms.php:1291 +msgid "API responses are not being saved." +msgstr "Відповіді API не зберігаються." + +#: wpvulnerability-admin.php:1031 +#: wpvulnerability-adminms.php:1304 +msgid "Log Details" +msgstr "Деталі журналу" + +#: wpvulnerability-admin.php:1035 +#: wpvulnerability-admin.php:1104 +#: wpvulnerability-adminms.php:1308 +#: wpvulnerability-adminms.php:1377 +msgid "Date" +msgstr "Дата" + +#: wpvulnerability-admin.php:1039 +#: wpvulnerability-admin.php:1105 +#: wpvulnerability-adminms.php:1312 +#: wpvulnerability-adminms.php:1378 +msgid "API Endpoint" +msgstr "Точка доступу API" + +#: wpvulnerability-admin.php:1044 +#: wpvulnerability-adminms.php:1317 +msgid "API Response" +msgstr "Відповідь API" + +#: wpvulnerability-admin.php:1049 +#: wpvulnerability-adminms.php:1322 +msgid "Back to Logs" +msgstr "Назад до журналів" + +#: wpvulnerability-admin.php:1058 +#: wpvulnerability-adminms.php:1331 +msgid "No logs available" +msgstr "Журнали недоступні" + +#: wpvulnerability-admin.php:1059 +#: wpvulnerability-adminms.php:1332 +msgid "API response logs will appear here once the vulnerability scanner runs." +msgstr "Журнали відповідей API з'являться тут після запуску сканера вразливостей." + +#: wpvulnerability-admin.php:1063 +#: wpvulnerability-adminms.php:1336 +msgid "API Response Logs" +msgstr "Журнали відповідей API" + +#: wpvulnerability-admin.php:1073 +#: wpvulnerability-adminms.php:1346 +msgid "Show:" +msgstr "Показати:" + +#: wpvulnerability-admin.php:1082 +#: wpvulnerability-adminms.php:1355 +msgid "Apply" +msgstr "Застосувати" + +#. translators: 1: first item, 2: last item, 3: total items +#: wpvulnerability-admin.php:1090 +#: wpvulnerability-adminms.php:1363 +#, php-format +msgid "Showing %1$s–%2$s of %3$s" +msgstr "Показано %1$s–%2$s з %3$s" + +#: wpvulnerability-admin.php:1106 +#: wpvulnerability-adminms.php:1379 +msgid "Actions" +msgstr "Дії" + +#: wpvulnerability-admin.php:1133 +#: wpvulnerability-admin.php:3957 +#: wpvulnerability-adminms.php:1406 +#: wpvulnerability-adminms.php:4151 +msgid "View" +msgstr "Перегляд" + +#: wpvulnerability-admin.php:1150 +#: wpvulnerability-adminms.php:1423 +msgid "Danger Zone" +msgstr "Небезпечна зона" + +#: wpvulnerability-admin.php:1152 +#: wpvulnerability-adminms.php:1425 +msgid "Permanently delete all API response logs. This action cannot be undone." +msgstr "Остаточно видалити всі журнали відповідей API. Цю дію неможливо скасувати." + +#: wpvulnerability-admin.php:1154 +#: wpvulnerability-adminms.php:1427 +msgid "Are you sure you want to delete all logs? This action cannot be undone." +msgstr "Ви впевнені, що хочете видалити всі журнали? Цю дію неможливо скасувати." + +#: wpvulnerability-admin.php:1157 +#: wpvulnerability-adminms.php:1430 +msgid "Delete All Logs" +msgstr "Видалити всі журнали" + +#: wpvulnerability-admin.php:1201 +#: wpvulnerability-adminms.php:1474 +msgid "Reload Data from API" +msgstr "Перезавантажити дані з API" + +#: wpvulnerability-admin.php:1204 +#: wpvulnerability-adminms.php:1477 +msgid "Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information." +msgstr "Перезавантажити всю інформацію про ядро, плагіни, теми та інші компоненти безпосередньо з API для отримання актуальних даних. Це очистить кеш та завантажить свіжу інформацію про вразливості." + +#: wpvulnerability-admin.php:1209 +#: wpvulnerability-adminms.php:1482 +msgid "Reload Data" +msgstr "Перезавантажити дані" + +#: wpvulnerability-admin.php:1218 +#: wpvulnerability-adminms.php:1491 +msgid "Test Email Notifications" +msgstr "Тестові сповіщення електронної пошти" + +#: wpvulnerability-admin.php:1221 +#: wpvulnerability-adminms.php:1494 +msgid "Send a test email notification with current vulnerability data to verify your email configuration is working correctly." +msgstr "Надіслати тестове сповіщення електронною поштою з поточними даними про вразливості, щоб перевірити правильність налаштування електронної пошти." + +#: wpvulnerability-admin.php:1231 +#: wpvulnerability-adminms.php:1504 +msgid "From address (configured via constant):" +msgstr "Адреса відправника (налаштована через константу):" + +#: wpvulnerability-admin.php:1243 +#: wpvulnerability-adminms.php:1516 +msgid "From address (default):" +msgstr "Адреса відправника (за замовчуванням):" + +#: wpvulnerability-admin.php:1252 +#: wpvulnerability-adminms.php:1525 +msgid "Learn how to customize the email sender address →" +msgstr "Дізнайтесь, як налаштувати адресу відправника електронної пошти →" + +#: wpvulnerability-admin.php:1258 +#: wpvulnerability-adminms.php:1531 +msgid "Send Test Email" +msgstr "Надіслати тестовий лист" + +#: wpvulnerability-admin.php:1267 +#: wpvulnerability-adminms.php:1540 +msgid "WP-Cron Status" +msgstr "Статус WP-Cron" + +#: wpvulnerability-admin.php:1270 +#: wpvulnerability-adminms.php:1543 +msgid "View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly." +msgstr "Перегляньте та керуйте запланованими подіями WP-Cron. Порівняйте очікуваний розклад з фактичними завданнями cron, щоб переконатися, що автоматичні задачі виконуються правильно." + +#: wpvulnerability-admin.php:1275 +#: wpvulnerability-adminms.php:1548 +msgid "No cron data available." +msgstr "Дані cron недоступні." + +#: wpvulnerability-admin.php:1281 +#: wpvulnerability-adminms.php:1554 +msgid "Hook" +msgstr "Хук" + +#: wpvulnerability-admin.php:1282 +#: wpvulnerability-adminms.php:1555 +msgid "Expected" +msgstr "Очікується" + +#: wpvulnerability-admin.php:1283 +#: wpvulnerability-adminms.php:1556 +msgid "Found" +msgstr "Знайдено" + +#: wpvulnerability-admin.php:1284 +#: wpvulnerability-adminms.php:1557 +msgid "Next Run" +msgstr "Наступний запуск" + +#: wpvulnerability-admin.php:1285 +#: wpvulnerability-admin.php:3236 +#: wpvulnerability-admin.php:3559 +#: wpvulnerability-adminms.php:1558 +#: wpvulnerability-adminms.php:3413 +#: wpvulnerability-adminms.php:3753 +msgid "Status" +msgstr "Статус" + +#: wpvulnerability-admin.php:1299 +#: wpvulnerability-adminms.php:1572 +msgid "Not expected" +msgstr "Не очікується" + +#: wpvulnerability-admin.php:1321 +#: wpvulnerability-adminms.php:1594 +#: wpvulnerability-general.php:1871 +#: wpvulnerability-general.php:1872 +msgid "None" +msgstr "Немає" + +#: wpvulnerability-admin.php:1356 +#: wpvulnerability-adminms.php:1629 +msgid "OK" +msgstr "OK" + +#: wpvulnerability-admin.php:1366 +#: wpvulnerability-adminms.php:1639 +msgid "⚠️ Unexpected WPVulnerability Events" +msgstr "⚠️ Неочікувані події WPVulnerability" + +#: wpvulnerability-admin.php:1383 +#: wpvulnerability-adminms.php:1656 +msgid "No interval" +msgstr "Без інтервалу" + +#: wpvulnerability-admin.php:1390 +#: wpvulnerability-adminms.php:1663 +msgid "Next:" +msgstr "Наступний:" + +#: wpvulnerability-admin.php:1400 +#: wpvulnerability-adminms.php:1673 +msgid "Repair Cron Events" +msgstr "Відновити події cron" + +#: wpvulnerability-admin.php:1408 +#: wpvulnerability-adminms.php:1681 +msgid "Uninstall Data" +msgstr "Дані при видаленні" + +#: wpvulnerability-admin.php:1410 +#: wpvulnerability-adminms.php:1683 +msgid "By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall." +msgstr "За замовчуванням усі дані плагіна зберігаються при видаленні WPVulnerability. Увімкніть параметр нижче лише у тому випадку, якщо ви хочете, щоб усі налаштування, журнали та кешовані дані були остаточно видалені при деінсталяції." + +#: wpvulnerability-admin.php:1420 +#: wpvulnerability-adminms.php:1693 +msgid "Delete all plugin data on uninstall" +msgstr "Видалити всі дані плагіна при деінсталяції" + +#: wpvulnerability-admin.php:1423 +#: wpvulnerability-adminms.php:1696 +msgid "Default: unchecked (data preserved). Check only if you want a clean removal." +msgstr "За замовчуванням: не позначено (дані зберігаються). Позначте лише якщо хочете повністю видалити всі дані." + +#: wpvulnerability-admin.php:1425 +#: wpvulnerability-adminms.php:1698 +msgid "Save preference" +msgstr "Зберегти налаштування" + +#: wpvulnerability-admin.php:1432 +#: wpvulnerability-adminms.php:1705 +msgid "Reset WPVulnerability" +msgstr "Скинути WPVulnerability" + +#: wpvulnerability-admin.php:1434 +#: wpvulnerability-adminms.php:1707 +msgid "Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API." +msgstr "Видалити всі налаштування WPVulnerability, кешовані дані, журнали та заплановані події, потім відновити стандартні параметри та перезавантажити дані з API." + +#: wpvulnerability-admin.php:1436 +#: wpvulnerability-adminms.php:1709 +msgid "This action cannot be undone." +msgstr "Цю дію неможливо скасувати." + +#: wpvulnerability-admin.php:1438 +#: wpvulnerability-adminms.php:1711 +msgid "Are you sure you want to reset all WPVulnerability data? This action cannot be undone." +msgstr "Ви впевнені, що хочете скинути всі дані WPVulnerability? Цю дію неможливо скасувати." + +#: wpvulnerability-admin.php:1441 +#: wpvulnerability-adminms.php:1713 +msgid "Reset Plugin" +msgstr "Скинути плагін" + +#: wpvulnerability-admin.php:1468 +#: wpvulnerability-adminms.php:1740 +msgid "Vulnerability Database Statistics" +msgstr "Статистика бази даних вразливостей" + +#. translators: number of vulnerabilities. +#: wpvulnerability-admin.php:1510 +#: wpvulnerability-adminms.php:1782 +#, php-format +msgid "%s vulnerability" +msgid_plural "%s vulnerabilities" +msgstr[0] "%s вразливість" +msgstr[1] "%s вразливості" +msgstr[2] "%s вразливостей" + +#. translators: number of products. +#: wpvulnerability-admin.php:1520 +#: wpvulnerability-adminms.php:1792 +#, php-format +msgid "(%s product)" +msgid_plural "(%s products)" +msgstr[0] "(%s продукт)" +msgstr[1] "(%s продукти)" +msgstr[2] "(%s продуктів)" + +#: wpvulnerability-admin.php:1527 +#: wpvulnerability-adminms.php:1799 +msgid "No data" +msgstr "Немає даних" + +#. translators: date of last update. +#: wpvulnerability-admin.php:1544 +#: wpvulnerability-adminms.php:1814 +#, php-format +msgid "Database last updated: %s" +msgstr "База даних останнє оновлення: %s" + +#: wpvulnerability-admin.php:1566 +#: wpvulnerability-adminms.php:1836 +msgid "Intelligence Sources" +msgstr "Джерела даних" + +#: wpvulnerability-admin.php:1567 +#: wpvulnerability-adminms.php:1837 +msgid "Number of vulnerabilities contributed by each intelligence source." +msgstr "Кількість вразливостей, наданих кожним джерелом даних." + +#: wpvulnerability-admin.php:1571 +#: wpvulnerability-adminms.php:1841 +msgid "Source" +msgstr "Джерело" + +#: wpvulnerability-admin.php:1572 +#: wpvulnerability-admin.php:2104 +#: wpvulnerability-adminms.php:1842 +#: wpvulnerability-adminms.php:2261 +msgid "Core" +msgstr "Ядро" + +#: wpvulnerability-admin.php:1603 +#: wpvulnerability-adminms.php:1873 +msgid "Sponsors" +msgstr "Спонсори" + +#: wpvulnerability-admin.php:1626 +#: wpvulnerability-adminms.php:1896 +msgid "No sponsor data available." +msgstr "Дані про спонсорів відсутні." + +#: wpvulnerability-admin.php:1633 +#: wpvulnerability-adminms.php:1903 +msgid "Contributors" +msgstr "Учасники" + +#: wpvulnerability-admin.php:1656 +#: wpvulnerability-adminms.php:1926 +msgid "No contributor data available." +msgstr "Дані про учасників відсутні." + +#: wpvulnerability-admin.php:1674 +#: wpvulnerability-adminms.php:432 +msgid "You do not have sufficient permissions to access this page." +msgstr "У вас недостатньо прав для доступу до цієї сторінки." + +#: wpvulnerability-admin.php:1684 +#: wpvulnerability-adminms.php:441 +msgid "WPVulnerability settings" +msgstr "Налаштування WPVulnerability" + +#: wpvulnerability-admin.php:1801 +#: wpvulnerability-adminms.php:1963 +msgid "Configure and save these settings to receive notifications." +msgstr "Налаштуйте та збережіть ці параметри для отримання сповіщень." + +#: wpvulnerability-admin.php:1814 +#: wpvulnerability-adminms.php:2071 +msgid "Configure and save these settings to hide vulnerabilities." +msgstr "Налаштуйте та збережіть ці параметри для приховування вразливостей." + +#: wpvulnerability-admin.php:1845 +#: wpvulnerability-adminms.php:1993 +msgid "Default administrator email" +msgstr "Електронна пошта адміністратора за замовчуванням" + +#: wpvulnerability-admin.php:1909 +#: wpvulnerability-adminms.php:2057 +msgid "Read more if you want to force the cache time." +msgstr "Докладніше, якщо хочете примусово встановити час кешу." + +#: wpvulnerability-admin.php:1939 +#: wpvulnerability-adminms.php:2099 +msgid "Never" +msgstr "Ніколи" + +#: wpvulnerability-admin.php:1944 +#: wpvulnerability-adminms.php:2104 +msgid "Daily" +msgstr "Щодня" + +#: wpvulnerability-admin.php:1949 +#: wpvulnerability-adminms.php:2109 +msgid "Weekly" +msgstr "Щотижня" + +#: wpvulnerability-admin.php:1953 +#: wpvulnerability-adminms.php:2113 +msgid "Day" +msgstr "День" + +#: wpvulnerability-admin.php:1966 +#: wpvulnerability-adminms.php:2126 +msgid "Hour" +msgstr "Година" + +#: wpvulnerability-admin.php:1968 +#: wpvulnerability-adminms.php:2128 +msgid "Minute" +msgstr "Хвилина" + +#: wpvulnerability-admin.php:2166 +#: wpvulnerability-adminms.php:2323 +msgid "Read more about how to force the deactivation of an item." +msgstr "Докладніше про примусову деактивацію елемента." + +#: wpvulnerability-admin.php:2292 +#: wpvulnerability-adminms.php:2870 +msgid "Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com" +msgstr "Недійсний URL webhook Slack. Повинен бути дійсним HTTPS URL з hooks.slack.com" + +#: wpvulnerability-admin.php:2315 +#: wpvulnerability-adminms.php:2893 +msgid "Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com" +msgstr "Недійсний URL webhook Microsoft Teams. Повинен бути дійсним HTTPS URL з office.com, office365.com або api.hooks.microsoft.com" + +#: wpvulnerability-admin.php:2338 +#: wpvulnerability-adminms.php:2916 +msgid "Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com" +msgstr "Недійсний URL webhook Discord. Повинен бути дійсним HTTPS URL з discord.com або discordapp.com" + +#: wpvulnerability-admin.php:2357 +#: wpvulnerability-adminms.php:2935 +msgid "Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "Недійсний формат токена бота Telegram. Повинен бути у вигляді: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:2493 +#: wpvulnerability-adminms.php:2400 +msgid "All Clear" +msgstr "Все в порядку" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2503 +#: wpvulnerability-adminms.php:2410 +#, php-format +msgid "%d Critical Issue Found" +msgid_plural "%d Critical Issues Found" +msgstr[0] "Знайдено %d критичну проблему" +msgstr[1] "Знайдено %d критичні проблеми" +msgstr[2] "Знайдено %d критичних проблем" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2508 +#: wpvulnerability-adminms.php:2415 +#, php-format +msgid "%d Issue Found" +msgid_plural "%d Issues Found" +msgstr[0] "Знайдено %d проблему" +msgstr[1] "Знайдено %d проблеми" +msgstr[2] "Знайдено %d проблем" + +#: wpvulnerability-admin.php:2515 +#: wpvulnerability-adminms.php:2422 +msgid "Never checked" +msgstr "Ніколи не перевірявся" + +#. translators: %d: number of minutes +#: wpvulnerability-admin.php:2523 +#: wpvulnerability-adminms.php:2430 +#, php-format +msgid "%d minute ago" +msgid_plural "%d minutes ago" +msgstr[0] "%d хвилину тому" +msgstr[1] "%d хвилини тому" +msgstr[2] "%d хвилин тому" + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:2527 +#: wpvulnerability-adminms.php:2434 +#, php-format +msgid "%d hour ago" +msgid_plural "%d hours ago" +msgstr[0] "%d годину тому" +msgstr[1] "%d години тому" +msgstr[2] "%d годин тому" + +#. translators: %s: time since last check +#: wpvulnerability-admin.php:2539 +#: wpvulnerability-adminms.php:2446 +#, php-format +msgid "Last checked: %s" +msgstr "Остання перевірка: %s" + +#: wpvulnerability-admin.php:2540 +#: wpvulnerability-adminms.php:2447 +msgid "Refresh Now" +msgstr "Оновити зараз" + +#: wpvulnerability-admin.php:2547 +#: wpvulnerability-adminms.php:2454 +msgid "No vulnerabilities detected" +msgstr "Вразливостей не виявлено" + +#: wpvulnerability-admin.php:2548 +#: wpvulnerability-adminms.php:2455 +msgid "Your site is up to date and secure" +msgstr "Ваш сайт актуальний та захищений" + +#: wpvulnerability-admin.php:2616 +#: wpvulnerability-adminms.php:2523 +msgid "Server Software" +msgstr "Серверне програмне забезпечення" + +#: wpvulnerability-admin.php:2829 +#: wpvulnerability-adminms.php:2736 +msgid "Site Health" +msgstr "Стан сайту" + +#: wpvulnerability-admin.php:2831 +#: wpvulnerability-adminms.php:2738 +#: wpvulnerability-run.php:33 +msgid "Settings" +msgstr "Налаштування" + +#: wpvulnerability-admin.php:2846 +#: wpvulnerability-adminms.php:2754 +msgid "WPVulnerability Status" +msgstr "Статус WPVulnerability" + +#: wpvulnerability-admin.php:2878 +#: wpvulnerability-adminms.php:3052 +msgid "Receive vulnerability notifications" +msgstr "Отримувати сповіщення про вразливості" + +#: wpvulnerability-admin.php:2886 +#: wpvulnerability-adminms.php:3060 +msgid "Cache expiration time" +msgstr "Час закінчення дії кешу" + +#: wpvulnerability-admin.php:2895 +#: wpvulnerability-adminms.php:3069 +msgid "How often you want to receive notifications" +msgstr "Як часто ви хочете отримувати сповіщення" + +#: wpvulnerability-admin.php:2904 +#: wpvulnerability-adminms.php:3078 +msgid "Where do you want to receive notifications?" +msgstr "Де ви хочете отримувати сповіщення?" + +#: wpvulnerability-admin.php:2913 +#: wpvulnerability-adminms.php:3087 +msgid "Email addresses to notify (separated by commas)" +msgstr "Адреси електронної пошти для сповіщень (через кому)" + +#: wpvulnerability-admin.php:2922 +#: wpvulnerability-adminms.php:3096 +msgid "Slack webhook URL" +msgstr "URL webhook Slack" + +#: wpvulnerability-admin.php:2931 +#: wpvulnerability-adminms.php:3105 +msgid "Teams webhook URL" +msgstr "URL webhook Teams" + +#: wpvulnerability-admin.php:2950 +#: wpvulnerability-adminms.php:3126 +msgid "Vulnerabilities to hide" +msgstr "Вразливості для приховування" + +#: wpvulnerability-admin.php:2958 +#: wpvulnerability-adminms.php:3134 +msgid "What do you want to hide?" +msgstr "Що ви хочете приховати?" + +#: wpvulnerability-admin.php:3008 +#: wpvulnerability-adminms.php:3185 +msgid "Standard (Hybrid Detection)" +msgstr "Стандартний (гібридне виявлення)" + +#: wpvulnerability-admin.php:3009 +#: wpvulnerability-adminms.php:3186 +msgid "Strict (Extensions Only)" +msgstr "Суворий (лише розширення)" + +#: wpvulnerability-admin.php:3010 +#: wpvulnerability-adminms.php:3187 +msgid "Disabled (No Detection)" +msgstr "Вимкнено (без виявлення)" + +#: wpvulnerability-admin.php:3016 +#: wpvulnerability-adminms.php:3193 +msgid "Security Status" +msgstr "Стан безпеки" + +#: wpvulnerability-admin.php:3020 +#: wpvulnerability-adminms.php:3197 +msgid "Security Mode" +msgstr "Режим безпеки" + +#: wpvulnerability-admin.php:3025 +#: wpvulnerability-adminms.php:3202 +msgid "Shell Execution" +msgstr "Виконання команд оболонки" + +#: wpvulnerability-admin.php:3027 +#: wpvulnerability-admin.php:3475 +#: wpvulnerability-admin.php:3483 +#: wpvulnerability-adminms.php:3204 +#: wpvulnerability-adminms.php:3669 +#: wpvulnerability-adminms.php:3677 +msgid "Enabled" +msgstr "Увімкнено" + +#: wpvulnerability-admin.php:3034 +#: wpvulnerability-adminms.php:3211 +msgid "Audit Logging" +msgstr "Журналювання аудиту" + +#. translators: %d: number of days +#: wpvulnerability-admin.php:3039 +#: wpvulnerability-adminms.php:3216 +#, php-format +msgid "Enabled (%d days)" +msgstr "Увімкнено (%d днів)" + +#: wpvulnerability-admin.php:3048 +#: wpvulnerability-adminms.php:3225 +msgid "Total Log Entries" +msgstr "Усього записів у журналі" + +#: wpvulnerability-admin.php:3055 +#: wpvulnerability-adminms.php:3232 +msgid "Last Shell Execution" +msgstr "Останнє виконання команди оболонки" + +#. translators: %s: time ago +#: wpvulnerability-admin.php:3061 +#: wpvulnerability-admin.php:3266 +#: wpvulnerability-adminms.php:3238 +#: wpvulnerability-adminms.php:3441 +#, php-format +msgid "%s ago" +msgstr "%s тому" + +#: wpvulnerability-admin.php:3073 +#: wpvulnerability-adminms.php:3250 +msgid "Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST." +msgstr "Налаштуйте параметри безпеки через константи wp-config.php: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST." + +#. translators: %s: URL to security documentation +#: wpvulnerability-admin.php:3079 +#: wpvulnerability-adminms.php:3256 +#, php-format +msgid "See security configuration documentation for details." +msgstr "Дивіться документацію з налаштування безпеки для отримання детальної інформації." + +#: wpvulnerability-admin.php:3103 +#: wpvulnerability-adminms.php:3280 +msgid "Memcached" +msgstr "Memcached" + +#: wpvulnerability-admin.php:3131 +#: wpvulnerability-adminms.php:3308 +msgid "Imagick Extension" +msgstr "Розширення Imagick" + +#: wpvulnerability-admin.php:3132 +#: wpvulnerability-adminms.php:3309 +msgid "Redis Extension" +msgstr "Розширення Redis" + +#: wpvulnerability-admin.php:3133 +#: wpvulnerability-adminms.php:3310 +msgid "Memcached Extension" +msgstr "Розширення Memcached" + +#: wpvulnerability-admin.php:3134 +#: wpvulnerability-adminms.php:3311 +msgid "Memcache Extension" +msgstr "Розширення Memcache" + +#: wpvulnerability-admin.php:3135 +#: wpvulnerability-adminms.php:3312 +msgid "SQLite3 Extension" +msgstr "Розширення SQLite3" + +#: wpvulnerability-admin.php:3136 +#: wpvulnerability-adminms.php:3313 +msgid "PDO SQLite" +msgstr "PDO SQLite" + +#: wpvulnerability-admin.php:3137 +#: wpvulnerability-adminms.php:3314 +msgid "Shell Command" +msgstr "Команда оболонки" + +#: wpvulnerability-admin.php:3138 +#: wpvulnerability-adminms.php:3315 +msgid "Binary Check" +msgstr "Перевірка бінарного файлу" + +#: wpvulnerability-admin.php:3139 +#: wpvulnerability-adminms.php:3316 +msgid "Not Detected" +msgstr "Не виявлено" + +#: wpvulnerability-admin.php:3143 +#: wpvulnerability-adminms.php:3320 +msgid "Software Detection Methods" +msgstr "Методи виявлення програмного забезпечення" + +#: wpvulnerability-admin.php:3144 +#: wpvulnerability-adminms.php:3321 +msgid "Shows which detection method was used for each software component and the reliability score." +msgstr "Показує, який метод виявлення використовувався для кожного компонента програмного забезпечення та оцінку надійності." + +#: wpvulnerability-admin.php:3149 +#: wpvulnerability-admin.php:3234 +#: wpvulnerability-admin.php:3558 +#: wpvulnerability-adminms.php:3326 +#: wpvulnerability-adminms.php:3411 +#: wpvulnerability-adminms.php:3752 +msgid "Component" +msgstr "Компонент" + +#: wpvulnerability-admin.php:3150 +#: wpvulnerability-adminms.php:3327 +msgid "Version" +msgstr "Версія" + +#: wpvulnerability-admin.php:3151 +#: wpvulnerability-adminms.php:3328 +msgid "Detection Method" +msgstr "Метод виявлення" + +#: wpvulnerability-admin.php:3152 +#: wpvulnerability-adminms.php:3329 +msgid "Reliability" +msgstr "Надійність" + +#: wpvulnerability-admin.php:3164 +#: wpvulnerability-adminms.php:3341 +msgid "Not detected" +msgstr "Не виявлено" + +#: wpvulnerability-admin.php:3220 +#: wpvulnerability-adminms.php:3397 +msgid "Shell Execution Audit Logs" +msgstr "Журнали аудиту виконання команд оболонки" + +#: wpvulnerability-admin.php:3221 +#: wpvulnerability-adminms.php:3398 +msgid "Complete audit trail of shell command executions for security monitoring." +msgstr "Повний журнал аудиту виконання команд оболонки для моніторингу безпеки." + +#: wpvulnerability-admin.php:3226 +#: wpvulnerability-adminms.php:3403 +msgid "No shell execution logs found." +msgstr "Журналів виконання команд оболонки не знайдено." + +#: wpvulnerability-admin.php:3227 +#: wpvulnerability-adminms.php:3404 +msgid "Logs will appear here when shell commands are executed for software detection." +msgstr "Журнали з'являться тут, коли команди оболонки будуть виконані для виявлення програмного забезпечення." + +#: wpvulnerability-admin.php:3233 +#: wpvulnerability-adminms.php:3410 +msgid "Time" +msgstr "Час" + +#: wpvulnerability-admin.php:3235 +#: wpvulnerability-adminms.php:3412 +msgid "Command" +msgstr "Команда" + +#: wpvulnerability-admin.php:3237 +#: wpvulnerability-adminms.php:3414 +msgid "User" +msgstr "Користувач" + +#: wpvulnerability-admin.php:3238 +#: wpvulnerability-adminms.php:3415 +msgid "Output" +msgstr "Виведення" + +#. translators: %d: number of logs shown +#: wpvulnerability-admin.php:3302 +#: wpvulnerability-adminms.php:3477 +#, php-format +msgid "Showing the %d most recent log entries." +msgstr "Показано %d найновіших записів журналу." + +#: wpvulnerability-admin.php:3320 +#: wpvulnerability-adminms.php:3565 +msgid "Invalid nonce." +msgstr "Недійсний nonce." + +#: wpvulnerability-admin.php:3325 +#: wpvulnerability-adminms.php:3570 +msgid "Insufficient permissions." +msgstr "Недостатньо прав." + +#: wpvulnerability-admin.php:3331 +#: wpvulnerability-adminms.php:3576 +msgid "No component specified." +msgstr "Компонент не вказано." + +#: wpvulnerability-admin.php:3366 +#: wpvulnerability-adminms.php:3524 +msgid "Debug Information" +msgstr "Налагоджувальна інформація" + +#: wpvulnerability-admin.php:3368 +#: wpvulnerability-adminms.php:3526 +msgid "This tab is only visible when WP_DEBUG is enabled. Use with caution." +msgstr "Ця вкладка видима лише якщо увімкнено WP_DEBUG. Використовуйте з обережністю." + +#: wpvulnerability-admin.php:3429 +#: wpvulnerability-adminms.php:3623 +msgid "System Information" +msgstr "Системна інформація" + +#: wpvulnerability-admin.php:3433 +#: wpvulnerability-adminms.php:3627 +msgid "WordPress Version" +msgstr "Версія WordPress" + +#: wpvulnerability-admin.php:3437 +#: wpvulnerability-adminms.php:3631 +msgid "Multisite" +msgstr "Мережа сайтів" + +#: wpvulnerability-admin.php:3438 +#: wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 +#: wpvulnerability-adminms.php:3778 +msgid "Yes" +msgstr "Так" + +#: wpvulnerability-admin.php:3438 +#: wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 +#: wpvulnerability-adminms.php:3778 +msgid "No" +msgstr "Ні" + +#: wpvulnerability-admin.php:3441 +#: wpvulnerability-adminms.php:3635 +msgid "Language" +msgstr "Мова" + +#: wpvulnerability-admin.php:3445 +#: wpvulnerability-adminms.php:3639 +msgid "PHP Version" +msgstr "Версія PHP" + +#: wpvulnerability-admin.php:3449 +#: wpvulnerability-adminms.php:3643 +msgid "PHP Extensions" +msgstr "Розширення PHP" + +#: wpvulnerability-admin.php:3460 +#: wpvulnerability-adminms.php:3654 +msgid "PHP Memory Limit" +msgstr "Обмеження пам'яті PHP" + +#: wpvulnerability-admin.php:3464 +#: wpvulnerability-adminms.php:3658 +msgid "Database" +msgstr "База даних" + +#: wpvulnerability-admin.php:3468 +#: wpvulnerability-adminms.php:3662 +msgid "Web Server" +msgstr "Веб-сервер" + +#: wpvulnerability-admin.php:3472 +#: wpvulnerability-adminms.php:3666 +msgid "WP_DEBUG" +msgstr "WP_DEBUG" + +#: wpvulnerability-admin.php:3480 +#: wpvulnerability-adminms.php:3674 +msgid "WP_DEBUG_LOG" +msgstr "WP_DEBUG_LOG" + +#: wpvulnerability-admin.php:3490 +#: wpvulnerability-adminms.php:3684 +msgid "Path:" +msgstr "Шлях:" + +#. translators: %s: file size +#: wpvulnerability-admin.php:3499 +#: wpvulnerability-adminms.php:3698 +#, php-format +msgid "Size: %s" +msgstr "Розмір: %s" + +#: wpvulnerability-admin.php:3510 +#: wpvulnerability-adminms.php:3704 +msgid "View Log File" +msgstr "Переглянути файл журналу" + +#: wpvulnerability-admin.php:3516 +#: wpvulnerability-adminms.php:3710 +msgid "Log file is not web-accessible (outside wp-content)" +msgstr "Файл журналу не доступний через веб (знаходиться поза wp-content)" + +#: wpvulnerability-admin.php:3522 +#: wpvulnerability-adminms.php:3716 +msgid "Log file does not exist yet" +msgstr "Файл журналу ще не існує" + +#: wpvulnerability-admin.php:3530 +#: wpvulnerability-adminms.php:3724 +msgid "Plugin Version" +msgstr "Версія плагіна" + +#: wpvulnerability-admin.php:3554 +#: wpvulnerability-adminms.php:3748 +msgid "Component Detection" +msgstr "Виявлення компонентів" + +#: wpvulnerability-admin.php:3560 +#: wpvulnerability-adminms.php:3754 +msgid "Version Detected" +msgstr "Виявлена версія" + +#: wpvulnerability-admin.php:3561 +#: wpvulnerability-adminms.php:3755 +msgid "Analyzed" +msgstr "Проаналізовано" + +#: wpvulnerability-admin.php:3562 +#: wpvulnerability-adminms.php:3756 +msgid "Cache Status" +msgstr "Стан кешу" + +#: wpvulnerability-admin.php:3622 +#: wpvulnerability-adminms.php:3816 +msgid "Configuration Summary" +msgstr "Підсумок конфігурації" + +#: wpvulnerability-admin.php:3626 +#: wpvulnerability-adminms.php:3820 +msgid "Cache Duration" +msgstr "Тривалість кешу" + +#: wpvulnerability-admin.php:3636 +#: wpvulnerability-adminms.php:3830 +msgid "Log Retention" +msgstr "Зберігання журналів" + +#: wpvulnerability-admin.php:3646 +#: wpvulnerability-adminms.php:3840 +msgid "Components Analyzed" +msgstr "Проаналізовані компоненти" + +#: wpvulnerability-admin.php:3661 +#: wpvulnerability-adminms.php:3855 +msgid "Notification Email" +msgstr "Електронна пошта для сповіщень" + +#: wpvulnerability-admin.php:3682 +#: wpvulnerability-adminms.php:3876 +msgid "Slack Webhook" +msgstr "Webhook Slack" + +#: wpvulnerability-admin.php:3692 +#: wpvulnerability-admin.php:3712 +#: wpvulnerability-admin.php:3732 +#: wpvulnerability-admin.php:3752 +#: wpvulnerability-adminms.php:3886 +#: wpvulnerability-adminms.php:3906 +#: wpvulnerability-adminms.php:3926 +#: wpvulnerability-adminms.php:3946 +msgid "Configured & Enabled" +msgstr "Налаштовано та увімкнено" + +#: wpvulnerability-admin.php:3694 +#: wpvulnerability-admin.php:3714 +#: wpvulnerability-admin.php:3734 +#: wpvulnerability-admin.php:3754 +#: wpvulnerability-adminms.php:3888 +#: wpvulnerability-adminms.php:3908 +#: wpvulnerability-adminms.php:3928 +#: wpvulnerability-adminms.php:3948 +msgid "Configured (Disabled)" +msgstr "Налаштовано (вимкнено)" + +#: wpvulnerability-admin.php:3696 +#: wpvulnerability-admin.php:3716 +#: wpvulnerability-admin.php:3736 +#: wpvulnerability-admin.php:3756 +#: wpvulnerability-adminms.php:3890 +#: wpvulnerability-adminms.php:3910 +#: wpvulnerability-adminms.php:3930 +#: wpvulnerability-adminms.php:3950 +msgid "Not configured" +msgstr "Не налаштовано" + +#: wpvulnerability-admin.php:3703 +#: wpvulnerability-adminms.php:3897 +msgid "Teams Webhook" +msgstr "Webhook Teams" + +#: wpvulnerability-admin.php:3723 +#: wpvulnerability-adminms.php:3917 +msgid "Discord Webhook" +msgstr "Webhook Discord" + +#: wpvulnerability-admin.php:3743 +#: wpvulnerability-adminms.php:3937 +msgid "Telegram Bot" +msgstr "Бот Telegram" + +#: wpvulnerability-admin.php:3788 +#: wpvulnerability-adminms.php:3982 +msgid "Cron Status" +msgstr "Статус cron" + +#: wpvulnerability-admin.php:3792 +#: wpvulnerability-adminms.php:3986 +msgid "Update Database" +msgstr "Оновити базу даних" + +#. translators: %s: date and time +#: wpvulnerability-admin.php:3797 +#: wpvulnerability-admin.php:3810 +#: wpvulnerability-adminms.php:3991 +#: wpvulnerability-adminms.php:4004 +#, php-format +msgid "Next run: %s" +msgstr "Наступний запуск: %s" + +#: wpvulnerability-admin.php:3800 +#: wpvulnerability-admin.php:3813 +#: wpvulnerability-adminms.php:3994 +#: wpvulnerability-adminms.php:4007 +msgid "Not scheduled" +msgstr "Не заплановано" + +#: wpvulnerability-admin.php:3805 +#: wpvulnerability-adminms.php:3999 +msgid "Send Notification" +msgstr "Надіслати сповіщення" + +#: wpvulnerability-admin.php:3826 +#: wpvulnerability-adminms.php:4020 +msgid "Run Update Now" +msgstr "Запустити оновлення зараз" + +#: wpvulnerability-admin.php:3834 +#: wpvulnerability-adminms.php:4028 +msgid "Run Notification Now" +msgstr "Надіслати сповіщення зараз" + +#: wpvulnerability-admin.php:3840 +#: wpvulnerability-adminms.php:4034 +msgid "You do not have permission to run these actions." +msgstr "У вас немає дозволу на виконання цих дій." + +#: wpvulnerability-admin.php:3859 +#: wpvulnerability-adminms.php:4053 +msgid "API Testing" +msgstr "Тестування API" + +#: wpvulnerability-admin.php:3862 +#: wpvulnerability-adminms.php:4056 +msgid "Test API connectivity for each component. Click a button to send a test request." +msgstr "Перевірте підключення API для кожного компонента. Натисніть кнопку для надсилання тестового запиту." + +#. translators: %s: component name +#: wpvulnerability-admin.php:3869 +#: wpvulnerability-adminms.php:4063 +#, php-format +msgid "Test %s" +msgstr "Тест %s" + +#: wpvulnerability-admin.php:3884 +#: wpvulnerability-adminms.php:4078 +msgid "Testing..." +msgstr "Тестування..." + +#: wpvulnerability-admin.php:3900 +#: wpvulnerability-adminms.php:4094 +msgid "HTTP Code:" +msgstr "HTTP-код:" + +#: wpvulnerability-admin.php:3901 +#: wpvulnerability-adminms.php:4095 +msgid "Response Time:" +msgstr "Час відповіді:" + +#: wpvulnerability-admin.php:3903 +#: wpvulnerability-adminms.php:4097 +msgid "Response Preview" +msgstr "Попередній перегляд відповіді" + +#: wpvulnerability-admin.php:3910 +#: wpvulnerability-admin.php:3914 +#: wpvulnerability-adminms.php:4104 +#: wpvulnerability-adminms.php:4108 +msgid "Test" +msgstr "Тест" + +#: wpvulnerability-admin.php:3913 +#: wpvulnerability-adminms.php:4107 +msgid "Error:" +msgstr "Помилка:" + +#: wpvulnerability-admin.php:3913 +#: wpvulnerability-adminms.php:4107 +msgid "AJAX request failed." +msgstr "Запит AJAX не вдався." + +#: wpvulnerability-admin.php:3922 +#: wpvulnerability-adminms.php:4116 +msgid "You do not have permission to test API connectivity." +msgstr "У вас немає дозволу на тестування підключення API." + +#: wpvulnerability-admin.php:3943 +#: wpvulnerability-adminms.php:4137 +msgid "Database Options Viewer" +msgstr "Переглядач параметрів бази даних" + +#: wpvulnerability-admin.php:3944 +#: wpvulnerability-adminms.php:4138 +msgid "View the raw data stored in WordPress options." +msgstr "Перегляд необроблених даних, збережених у параметрах WordPress." + +#: wpvulnerability-admin.php:3950 +#: wpvulnerability-adminms.php:4144 +msgid "Select an option..." +msgstr "Оберіть параметр..." + +#: wpvulnerability-admin.php:3969 +#: wpvulnerability-adminms.php:4163 +msgid "Option not found or empty." +msgstr "Параметр не знайдено або він порожній." + +#: wpvulnerability-admin.php:3987 +#: wpvulnerability-adminms.php:4182 +msgid "Quick Actions" +msgstr "Швидкі дії" + +#: wpvulnerability-admin.php:3988 +#: wpvulnerability-adminms.php:4183 +msgid "Perform debugging actions. Use with caution." +msgstr "Виконати налагоджувальні дії. Використовуйте з обережністю." + +#: wpvulnerability-admin.php:3992 +#: wpvulnerability-adminms.php:4187 +msgid "Are you sure you want to clear all caches?" +msgstr "Ви впевнені, що хочете очистити всі кеші?" + +#: wpvulnerability-admin.php:3996 +#: wpvulnerability-adminms.php:4191 +msgid "Clear All Caches" +msgstr "Очистити всі кеші" + +#: wpvulnerability-admin.php:4000 +#: wpvulnerability-adminms.php:4195 +msgid "Are you sure you want to reset signatures?" +msgstr "Ви впевнені, що хочете скинути сигнатури?" + +#: wpvulnerability-admin.php:4004 +#: wpvulnerability-adminms.php:4199 +msgid "Reset Signatures" +msgstr "Скинути сигнатури" + +#: wpvulnerability-admin.php:4012 +#: wpvulnerability-adminms.php:4207 +msgid "Export Debug Info" +msgstr "Експортувати налагоджувальну інформацію" + +#: wpvulnerability-admin.php:4018 +#: wpvulnerability-adminms.php:4213 +msgid "You do not have permission to perform these actions." +msgstr "У вас немає дозволу на виконання цих дій." + +#: wpvulnerability-adminms.php:101 +#: wpvulnerability-adminms.php:199 +msgid "Settings saved." +msgstr "Налаштування збережено." + +#: wpvulnerability-adminms.php:277 +msgid "WPVulnerability cron events have been repaired across the network." +msgstr "Події cron WPVulnerability відновлено в усій мережі." + +#: wpvulnerability-adminms.php:3512 +msgid "You do not have permission to access this page." +msgstr "У вас немає дозволу для доступу до цієї сторінки." + +#. translators: 1: core version +#: wpvulnerability-core.php:33 +#, php-format +msgid "WordPress %1$s has a known vulnerability that may be affecting your installed version." +msgstr "WordPress %1$s має відому вразливість, яка може впливати на вашу встановлену версію." + +#: wpvulnerability-core.php:115 +#: wpvulnerability-plugins.php:207 +#: wpvulnerability-process.php:335 +#: wpvulnerability-process.php:443 +#: wpvulnerability-process.php:529 +#: wpvulnerability-themes.php:173 +#: wpvulnerability-themes.php:469 +msgid "Actively exploited" +msgstr "Активно використовується" + +#: wpvulnerability-core.php:122 +#: wpvulnerability-plugins.php:214 +#: wpvulnerability-process.php:342 +#: wpvulnerability-process.php:450 +#: wpvulnerability-themes.php:180 +#: wpvulnerability-themes.php:476 +msgid "Public exploit" +msgstr "Публічний експлойт" + +#: wpvulnerability-core.php:125 +#: wpvulnerability-plugins.php:217 +#: wpvulnerability-process.php:345 +#: wpvulnerability-process.php:453 +#: wpvulnerability-themes.php:183 +#: wpvulnerability-themes.php:479 +msgid "Automatable" +msgstr "Автоматизоване" + +#: wpvulnerability-core.php:139 +#: wpvulnerability-plugins.php:245 +#: wpvulnerability-process.php:371 +#: wpvulnerability-process.php:469 +#: wpvulnerability-process.php:544 +#: wpvulnerability-themes.php:211 +#: wpvulnerability-themes.php:503 +msgid "References:" +msgstr "Посилання:" + +#: wpvulnerability-debug.php:399 +msgid "Invalid component specified." +msgstr "Вказано недійсний компонент." + +#: wpvulnerability-debug.php:423 +msgid "Version not detected for this component." +msgstr "Версію для цього компонента не виявлено." + +#: wpvulnerability-debug.php:453 +msgid "API request successful." +msgstr "Запит API виконано успішно." + +#. translators: %d: HTTP status code +#: wpvulnerability-debug.php:469 +#, php-format +msgid "API returned HTTP code %d." +msgstr "API повернув HTTP-код %d." + +#: wpvulnerability-general.php:355 +msgid "WPVulnerability Logs" +msgstr "Журнали WPVulnerability" + +#: wpvulnerability-general.php:356 +msgid "WPVulnerability Log" +msgstr "Журнал WPVulnerability" + +#: wpvulnerability-general.php:1873 +#: wpvulnerability-general.php:1874 +msgid "Low" +msgstr "Низький" + +#: wpvulnerability-general.php:1875 +#: wpvulnerability-general.php:1876 +msgid "Medium" +msgstr "Середній" + +#: wpvulnerability-general.php:1877 +#: wpvulnerability-general.php:1878 +msgid "High" +msgstr "Високий" + +#: wpvulnerability-general.php:1879 +#: wpvulnerability-general.php:1880 +msgid "Critical" +msgstr "Критичний" + +#: wpvulnerability-general.php:2684 +msgid "WPVulnerability Shell Logs" +msgstr "Журнали оболонки WPVulnerability" + +#: wpvulnerability-general.php:2685 +msgid "WPVulnerability Shell Log" +msgstr "Журнал оболонки WPVulnerability" + +#: wpvulnerability-notifications.php:30 +msgid "Every week" +msgstr "Щотижня" + +#: wpvulnerability-notifications.php:57 +msgid "Every day" +msgstr "Щодня" + +#: wpvulnerability-notifications.php:84 +msgid "Invalid request." +msgstr "Недійсний запит." + +#: wpvulnerability-notifications.php:104 +msgid "You have unsubscribed from WPVulnerability notifications." +msgstr "Ви відписалися від сповіщень WPVulnerability." + +#. translators: %1$s the website of Database, %2$s database site name. +#: wpvulnerability-notifications.php:289 +#, php-format +msgid "Learn more about the WordPress Vulnerability Database API at %2$s" +msgstr "Дізнайтеся більше про API бази даних вразливостей WordPress на %2$s" + +#. translators: %1$s unsubscribe URL. +#: wpvulnerability-notifications.php:300 +#, php-format +msgid "Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings." +msgstr "Хочете припинити отримувати ці сповіщення? Відписатися або змінити частоту електронних листів на Ніколи в налаштуваннях WPVulnerability." + +#: wpvulnerability-notifications.php:595 +msgid "No vulnerabilities found" +msgstr "Вразливостей не знайдено" + +#: wpvulnerability-notifications.php:596 +msgid "This is likely a test. The site does not have vulnerabilities." +msgstr "Це, мабуть, тест. На сайті немає вразливостей." + +#: wpvulnerability-notifications.php:601 +msgid "Core vulnerabilities" +msgstr "Вразливості ядра" + +#: wpvulnerability-notifications.php:607 +msgid "Plugins vulnerabilities" +msgstr "Вразливості плагінів" + +#: wpvulnerability-notifications.php:613 +msgid "Themes vulnerabilities" +msgstr "Вразливості тем" + +#: wpvulnerability-notifications.php:619 +msgid "PHP vulnerabilities" +msgstr "Вразливості PHP" + +#: wpvulnerability-notifications.php:625 +msgid "Apache HTTPD vulnerabilities" +msgstr "Вразливості Apache HTTPD" + +#: wpvulnerability-notifications.php:631 +msgid "Nginx vulnerabilities" +msgstr "Вразливості Nginx" + +#: wpvulnerability-notifications.php:637 +msgid "MariaDB vulnerabilities" +msgstr "Вразливості MariaDB" + +#: wpvulnerability-notifications.php:643 +msgid "MySQL vulnerabilities" +msgstr "Вразливості MySQL" + +#: wpvulnerability-notifications.php:649 +msgid "ImageMagick vulnerabilities" +msgstr "Вразливості ImageMagick" + +#: wpvulnerability-notifications.php:655 +msgid "curl vulnerabilities" +msgstr "Вразливості curl" + +#: wpvulnerability-notifications.php:661 +msgid "memcached vulnerabilities" +msgstr "Вразливості memcached" + +#: wpvulnerability-notifications.php:667 +msgid "Redis vulnerabilities" +msgstr "Вразливості Redis" + +#: wpvulnerability-notifications.php:673 +msgid "SQLite vulnerabilities" +msgstr "Вразливості SQLite" + +#. translators: Site name. +#: wpvulnerability-notifications.php:696 +#, php-format +msgid "Vulnerability found: %s" +msgstr "Знайдено вразливість: %s" + +#: wpvulnerability-notifications.php:700 +msgid "Vulnerability found" +msgstr "Знайдено вразливість" + +#. translators: 1: Plugin name +#. translators: 1: theme name +#: wpvulnerability-plugins.php:116 +#: wpvulnerability-themes.php:82 +#, php-format +msgid "%1$s has a known vulnerability that may be affecting your installed version." +msgstr "%1$s має відому вразливість, яка може впливати на вашу встановлену версію." + +#: wpvulnerability-plugins.php:230 +#: wpvulnerability-process.php:358 +msgid "This plugin is closed. Please replace it with another." +msgstr "Цей плагін закрито. Будь ласка, замініть його іншим." + +#: wpvulnerability-plugins.php:233 +#: wpvulnerability-process.php:361 +msgid "This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates." +msgstr "Ця вразливість, мабуть, не виправлена. Слідкуйте за майбутніми оновленнями плагіна." + +#: wpvulnerability-plugins.php:570 +msgid "It hasn't been updated in over a year." +msgstr "Цей плагін не оновлювався більше року." + +#: wpvulnerability-plugins.php:576 +msgid "It may no longer be available (closed?)." +msgstr "Можливо, він більше недоступний (закритий?)." + +#: wpvulnerability-plugins.php:614 +#: wpvulnerability-plugins.php:621 +msgid "Last updated on" +msgstr "Останнє оновлення" + +#. translators: the number of vulnerabilities. +#: wpvulnerability-plugins.php:764 +#: wpvulnerability-themes.php:704 +#, php-format +msgid "Vulnerabilities (%d)" +msgstr "Вразливості (%d)" + +#. translators: %s: software name. +#: wpvulnerability-process.php:601 +#, php-format +msgid "%s running" +msgstr "%s працює" + +#: wpvulnerability-process.php:611 +#: wpvulnerability-process.php:792 +msgid "End of Life" +msgstr "Кінець підтримки" + +#: wpvulnerability-process.php:613 +#: wpvulnerability-process.php:618 +msgid "End of life:" +msgstr "Кінець підтримки:" + +#: wpvulnerability-process.php:616 +msgid "Supported" +msgstr "Підтримується" + +#: wpvulnerability-process.php:652 +msgid "Plugin" +msgstr "Плагін" + +#: wpvulnerability-process.php:721 +msgid "Theme" +msgstr "Тема" + +#. translators: %s: end-of-life date +#: wpvulnerability-process.php:790 +#, php-format +msgid "End of life: %s" +msgstr "Кінець підтримки: %s" + +#: wpvulnerability-process.php:795 +msgid "EOL" +msgstr "EOL" + +#: wpvulnerability-run.php:30 +msgid "Network Settings" +msgstr "Налаштування мережі" + +#: wpvulnerability-run.php:731 +#: wpvulnerability-run.php:781 +#: wpvulnerability-run.php:791 +#: wpvulnerability-run.php:836 +msgid "Vulnerabilities" +msgstr "Вразливості" + +#: wpvulnerability-schedule.php:30 +msgid "Every 6 hours" +msgstr "Кожні 6 годин" + +#: wpvulnerability-schedule.php:303 +msgid "Database updates" +msgstr "Оновлення бази даних" + +#: wpvulnerability-schedule.php:309 +msgid "Log cleanup" +msgstr "Очищення журналів" + +#: wpvulnerability-schedule.php:439 +msgid "Notifications are scheduled, but settings currently disable them. Please review the notifications tab." +msgstr "Сповіщення заплановані, але поточні налаштування їх вимикають. Будь ласка, перегляньте вкладку сповіщень." + +#: wpvulnerability-schedule.php:442 +msgid "This event should not be scheduled for this site." +msgstr "Ця подія не повинна бути запланована для цього сайту." + +#: wpvulnerability-schedule.php:446 +msgid "Not expected for this site." +msgstr "Не очікується для цього сайту." + +#: wpvulnerability-schedule.php:450 +msgid "No instances found." +msgstr "Екземплярів не знайдено." + +#: wpvulnerability-schedule.php:456 +msgid "Scheduled with an unexpected interval." +msgstr "Заплановано з неочікуваним інтервалом." + +#: wpvulnerability-schedule.php:460 +msgid "Multiple instances detected." +msgstr "Виявлено декілька екземплярів." + +#: wpvulnerability-schedule.php:465 +msgid "Scheduled as expected." +msgstr "Заплановано відповідно до очікувань." + +#: wpvulnerability-sitehealth.php:22 +msgid "There aren't plugins vulnerabilities" +msgstr "Вразливостей плагінів немає" + +#: wpvulnerability-sitehealth.php:30 +msgid "Shows possible vulnerabilities that exist in installed plugins." +msgstr "Показує можливі вразливості у встановлених плагінах." + +#. translators: Number of plugins vulnerabilities. +#: wpvulnerability-sitehealth.php:43 +#, php-format +msgid "There is %d plugin with vulnerabilities" +msgid_plural "There are %d plugins with vulnerabilities" +msgstr[0] "Є %d плагін з вразливостями" +msgstr[1] "Є %d плагіни з вразливостями" +msgstr[2] "Є %d плагінів з вразливостями" + +#: wpvulnerability-sitehealth.php:49 +msgid "We've detected potential vulnerabilities in installed plugins. Please check them and keep them updated." +msgstr "Виявлено можливі вразливості у встановлених плагінах. Будь ласка, перевірте їх та оновлюйте." + +#: wpvulnerability-sitehealth.php:57 +msgid "Update plugins" +msgstr "Оновити плагіни" + +#: wpvulnerability-sitehealth.php:74 +msgid "There aren't themes vulnerabilities" +msgstr "Вразливостей тем немає" + +#: wpvulnerability-sitehealth.php:82 +msgid "Shows possible vulnerabilities that exist in installed themes." +msgstr "Показує можливі вразливості у встановлених темах." + +#. translators: Number of themes vulnerabilities. +#: wpvulnerability-sitehealth.php:95 +#, php-format +msgid "There is %d theme with vulnerabilities" +msgid_plural "There are %d themes with vulnerabilities" +msgstr[0] "Є %d тема з вразливостями" +msgstr[1] "Є %d теми з вразливостями" +msgstr[2] "Є %d тем з вразливостями" + +#: wpvulnerability-sitehealth.php:101 +msgid "We've detected potential vulnerabilities in installed themes. Please check them and keep them updated." +msgstr "Виявлено можливі вразливості у встановлених темах. Будь ласка, перевірте їх та оновлюйте." + +#: wpvulnerability-sitehealth.php:109 +msgid "Update themes" +msgstr "Оновити теми" + +#: wpvulnerability-sitehealth.php:126 +msgid "There aren't WordPress vulnerabilities" +msgstr "Вразливостей WordPress немає" + +#: wpvulnerability-sitehealth.php:134 +msgid "Shows possible vulnerabilities existing in the WordPress core." +msgstr "Показує можливі вразливості в ядрі WordPress." + +#. translators: Number of core vulnerabilities. +#: wpvulnerability-sitehealth.php:147 +#, php-format +msgid "There is %d core vulnerability" +msgid_plural "There are %d core vulnerabilities" +msgstr[0] "Є %d вразливість ядра" +msgstr[1] "Є %d вразливості ядра" +msgstr[2] "Є %d вразливостей ядра" + +#: wpvulnerability-sitehealth.php:153 +msgid "We've detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated." +msgstr "Виявлено можливі вразливості в цій інсталяції WordPress. Будь ласка, перевірте їх та оновлюйте свою інсталяцію." + +#: wpvulnerability-sitehealth.php:161 +msgid "Update WordPress" +msgstr "Оновити WordPress" + +#: wpvulnerability-sitehealth.php:180 +msgid "Nginx" +msgstr "Nginx" + +#: wpvulnerability-sitehealth.php:189 +msgid "Invalid software type" +msgstr "Недійсний тип програмного забезпечення" + +#: wpvulnerability-sitehealth.php:192 +msgid "Error" +msgstr "Помилка" + +#: wpvulnerability-sitehealth.php:197 +msgid "The specified software type is not valid." +msgstr "Вказаний тип програмного забезпечення недійсний." + +#. translators: name of the software. +#: wpvulnerability-sitehealth.php:207 +#, php-format +msgid "There aren't %s vulnerabilities" +msgstr "Вразливостей %s немає" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:216 +#, php-format +msgid "Shows possible vulnerabilities existing in %s." +msgstr "Показує можливі вразливості в %s." + +#. translators: Software and number of vulnerabilities. +#: wpvulnerability-sitehealth.php:229 +#, php-format +msgid "There is %1$d %2$s vulnerability" +msgid_plural "There are %1$d %2$s vulnerabilities" +msgstr[0] "Є %1$d вразливість %2$s" +msgstr[1] "Є %1$d вразливості %2$s" +msgstr[2] "Є %1$d вразливостей %2$s" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:237 +#, php-format +msgid "We've detected potential vulnerabilities in %s. Please check them and keep your installation updated." +msgstr "Виявлено можливі вразливості в %s. Будь ласка, перевірте їх та оновлюйте свою інсталяцію." + +#: wpvulnerability-sitehealth.php:246 +msgid "How to update PHP" +msgstr "Як оновити PHP" + +#: wpvulnerability-sitehealth.php:386 +msgid "WPVulnerability Core" +msgstr "WPVulnerability Core" + +#: wpvulnerability-sitehealth.php:394 +msgid "WPVulnerability Themes" +msgstr "WPVulnerability Themes" + +#: wpvulnerability-sitehealth.php:402 +msgid "WPVulnerability Plugins" +msgstr "WPVulnerability Plugins" + +#: wpvulnerability-sitehealth.php:410 +msgid "WPVulnerability PHP" +msgstr "WPVulnerability PHP" + +#: wpvulnerability-sitehealth.php:418 +msgid "WPVulnerability Apache HTTPD" +msgstr "WPVulnerability Apache HTTPD" + +#: wpvulnerability-sitehealth.php:426 +msgid "WPVulnerability Nginx" +msgstr "WPVulnerability Nginx" + +#: wpvulnerability-sitehealth.php:434 +msgid "WPVulnerability MariaDB" +msgstr "WPVulnerability MariaDB" + +#: wpvulnerability-sitehealth.php:442 +msgid "WPVulnerability MySQL" +msgstr "WPVulnerability MySQL" + +#: wpvulnerability-sitehealth.php:450 +msgid "WPVulnerability ImageMagick" +msgstr "WPVulnerability ImageMagick" + +#: wpvulnerability-sitehealth.php:458 +msgid "WPVulnerability curl" +msgstr "WPVulnerability curl" + +#: wpvulnerability-sitehealth.php:466 +msgid "WPVulnerability memcached" +msgstr "WPVulnerability memcached" + +#: wpvulnerability-sitehealth.php:474 +msgid "WPVulnerability redis" +msgstr "WPVulnerability redis" + +#: wpvulnerability-sitehealth.php:482 +msgid "WPVulnerability sqlite" +msgstr "WPVulnerability sqlite" + +#: wpvulnerability-themes.php:196 +#: wpvulnerability-themes.php:492 +msgid "This theme is closed. Please replace it with another." +msgstr "Цю тему закрито. Будь ласка, замініть її іншою." + +#: wpvulnerability-themes.php:199 +#: wpvulnerability-themes.php:495 +msgid "This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates." +msgstr "Ця вразливість, мабуть, не виправлена. Слідкуйте за майбутніми оновленнями теми." + +#: wpvulnerability-themes.php:391 +msgid "This theme has known vulnerabilities that may be affecting your installed version." +msgstr "Ця тема має відомі вразливості, які можуть впливати на вашу встановлену версію." diff --git a/languages/wpvulnerability-ur.l10n.php b/languages/wpvulnerability-ur.l10n.php new file mode 100644 index 0000000..a478d60 --- /dev/null +++ b/languages/wpvulnerability-ur.l10n.php @@ -0,0 +1,2 @@ +'wpvulnerability','plural-forms'=>'nplurals=2; plural=(n != 1);','language'=>'ur','project-id-version'=>'WPVulnerability 5.0.0','pot-creation-date'=>'2026-05-27T16:32:22+00:00','po-revision-date'=>'2026-05-27 00:00+0000','x-generator'=>'AI Translation','messages'=>['WPVulnerability'=>'WPVulnerability','https://www.wpvulnerability.com/plugin/'=>'https://www.wpvulnerability.com/plugin/','Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API.'=>'WordPress Vulnerability Database API سے اپنے WordPress میں ممکنہ کمزوریوں کے بارے میں معلومات حاصل کریں۔','ROBOTSTXT'=>'ROBOTSTXT','https://www.robotstxt.es/'=>'https://www.robotstxt.es/','This command requires a WordPress administrator. Run with --user=.'=>'اس کمانڈ کے لیے WordPress منتظم کی ضرورت ہے۔ --user= کے ساتھ چلائیں۔','No core vulnerabilities found.'=>'کوئی بنیادی کمزوری نہیں ملی۔','No plugin vulnerabilities found.'=>'کوئی پلگ ان کمزوری نہیں ملی۔','No theme vulnerabilities found.'=>'کوئی تھیم کمزوری نہیں ملی۔','No %s vulnerabilities found.'=>'کوئی %s کمزوری نہیں ملی۔','Data from source has been reloaded.'=>'ماخذ سے ڈیٹا دوبارہ لوڈ کر دیا گیا ہے۔','You do not have permission to reload data.'=>'آپ کو ڈیٹا دوبارہ لوڈ کرنے کی اجازت نہیں ہے۔','Test email has been sent.'=>'آزمائشی ای میل بھیج دی گئی ہے۔','Test email has failed. Please, check your email settings.'=>'آزمائشی ای میل ناکام رہی۔ براہ کرم اپنی ای میل ترتیبات جانچیں۔','You do not have permission to send test emails.'=>'آپ کو آزمائشی ای میل بھیجنے کی اجازت نہیں ہے۔','WPVulnerability cron events have been repaired.'=>'WPVulnerability cron واقعات ٹھیک کر دیے گئے ہیں۔','You do not have permission to repair cron events.'=>'آپ کو cron واقعات ٹھیک کرنے کی اجازت نہیں ہے۔','All logs have been deleted.'=>'تمام لاگ حذف کر دیے گئے ہیں۔','You do not have permission to delete logs.'=>'آپ کو لاگ حذف کرنے کی اجازت نہیں ہے۔','Uninstall preference saved.'=>'انسٹال ہٹانے کی ترجیح محفوظ کر لی گئی۔','WPVulnerability has been reset to defaults and reloaded.'=>'WPVulnerability کو ڈیفالٹ پر ری سیٹ کر کے دوبارہ لوڈ کر دیا گیا ہے۔','You do not have permission to reset WPVulnerability.'=>'آپ کو WPVulnerability ری سیٹ کرنے کی اجازت نہیں ہے۔','All caches have been cleared.'=>'تمام کیشے صاف کر دیے گئے ہیں۔','You do not have permission to clear caches.'=>'آپ کو کیشے صاف کرنے کی اجازت نہیں ہے۔','Plugin and theme signatures have been reset.'=>'پلگ ان اور تھیم دستخط ری سیٹ کر دیے گئے ہیں۔','You do not have permission to reset signatures.'=>'آپ کو دستخط ری سیٹ کرنے کی اجازت نہیں ہے۔','You do not have permission to export debug information.'=>'آپ کو ڈیبگ معلومات برآمد کرنے کی اجازت نہیں ہے۔','Database update has been executed.'=>'ڈیٹا بیس اپ ڈیٹ انجام دے دیا گیا ہے۔','You do not have permission to run database updates.'=>'آپ کو ڈیٹا بیس اپ ڈیٹ چلانے کی اجازت نہیں ہے۔','Notification has been sent.'=>'اطلاع بھیج دی گئی ہے۔','Notification sending failed.'=>'اطلاع بھیجنا ناکام رہا۔','You do not have permission to send notifications.'=>'آپ کو اطلاعات بھیجنے کی اجازت نہیں ہے۔','Notifications'=>'اطلاعات','Analysis'=>'تجزیہ','Logs'=>'لاگ','Security'=>'سلامتی','Tools'=>'اوزار','Debug'=>'ڈیبگ','About'=>'بارے میں','Notification Settings'=>'اطلاع ترتیبات','Configure how and when you want to receive vulnerability notifications.'=>'ترتیب دیں کہ آپ کمزوری کی اطلاعات کیسے اور کب وصول کرنا چاہتے ہیں۔','Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software.'=>'اپنی WordPress تنصیب، پلگ ان، تھیم اور سرور سافٹ ویئر میں سلامتی کمزوریوں کے بارے میں باخبر رہیں۔','Cache Expiration Time'=>'کیشے میعاد ختم ہونے کا وقت','FORCED'=>'زبردستی','How long to cache vulnerability data before refreshing from the API.'=>'API سے تازہ کاری سے پہلے کمزوری کا ڈیٹا کتنی دیر تک کیشے میں رکھنا ہے۔','%d hour'=>'%d گھنٹہ' . "\0" . '%d گھنٹے','You can force the cache time via wp-config.php constant. Learn more →'=>'آپ wp-config.php کانسٹینٹ کے ذریعے کیشے وقت زبردستی مقرر کر سکتے ہیں۔ مزید جانیں →','Notification Frequency'=>'اطلاع تعدد','Choose how often you want to receive vulnerability notifications.'=>'اختیار کریں کہ آپ کتنی بار کمزوری کی اطلاعات وصول کرنا چاہتے ہیں۔','Never - Disable automatic notifications'=>'کبھی نہیں - خودکار اطلاعات بند کریں','Daily - Receive notifications every day'=>'روزانہ - ہر روز اطلاعات وصول کریں','Weekly - Receive notifications once a week'=>'ہفتہ وار - ہفتے میں ایک بار اطلاعات وصول کریں','Day:'=>'دن:','Monday'=>'پیر','Tuesday'=>'منگل','Wednesday'=>'بدھ','Thursday'=>'جمعرات','Friday'=>'جمعہ','Saturday'=>'ہفتہ','Sunday'=>'اتوار','Time:'=>'وقت:','(24-hour format, server timezone)'=>'(۲۴ گھنٹے کی شکل، سرور ٹائم زون)','Notification Channels'=>'اطلاع چینلز','Select where you want to receive notifications.'=>'منتخب کریں کہ آپ اطلاعات کہاں وصول کرنا چاہتے ہیں۔','Email'=>'ای میل','Email Addresses (separated by commas):'=>'ای میل پتے (کوما سے الگ کریں):','Default:'=>'ڈیفالٹ:','Slack'=>'Slack','Slack Webhook URL:'=>'Slack Webhook URL:','Learn how to create a Slack incoming webhook →'=>'Slack آنے والا webhook کیسے بنائیں →','Microsoft Teams'=>'Microsoft Teams','Teams Webhook URL:'=>'Teams Webhook URL:','Learn how to create a Teams incoming webhook →'=>'Teams آنے والا webhook کیسے بنائیں →','Discord'=>'Discord','Discord Webhook URL:'=>'Discord Webhook URL:','Learn how to create a Discord webhook →'=>'Discord webhook کیسے بنائیں →','Telegram'=>'Telegram','Telegram Bot Token:'=>'Telegram Bot Token:','Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'شکل: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','Telegram Chat ID:'=>'Telegram Chat ID:','Learn how to create a Telegram bot and get Chat ID →'=>'Telegram بوٹ کیسے بنائیں اور Chat ID کیسے حاصل کریں →','Save Notification Settings'=>'اطلاع ترتیبات محفوظ کریں','WordPress Components'=>'WordPress اجزاء','WordPress Core'=>'WordPress Core','Plugins'=>'پلگ ان','Themes'=>'تھیم','Software & Languages'=>'سافٹ ویئر اور زبانیں','PHP'=>'PHP','Web Servers'=>'ویب سرورز','Apache HTTPD'=>'Apache HTTPD','nginx'=>'nginx','Databases'=>'ڈیٹا بیسز','MariaDB'=>'MariaDB','MySQL'=>'MySQL','SQLite'=>'SQLite','Additional Tools'=>'اضافی اوزار','ImageMagick'=>'ImageMagick','curl'=>'curl','memcached'=>'memcached','Redis'=>'Redis','Component Analysis Settings'=>'جزو تجزیہ ترتیبات','Enable or disable vulnerability analysis for specific components.'=>'مخصوص اجزاء کے لیے کمزوری تجزیہ فعال یا غیر فعال کریں۔','Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red.'=>'وہ اجزاء منتخب کریں جو آپ کمزوری اسکین اور رپورٹس سے چھپانا چاہتے ہیں۔ غیر منتخب اجزاء فعال طور پر تجزیہ کیے جائیں گے۔ فعال تجزیہ والے اجزاء سبز میں اور چھپے اجزاء سرخ میں دکھائے جاتے ہیں۔','Hidden (forced by constant)'=>'چھپا ہوا (کانسٹینٹ کے ذریعے زبردستی)','🔴 Analysis disabled'=>'🔴 تجزیہ غیر فعال','🟢 Analysis active'=>'🟢 تجزیہ فعال','Tip:'=>'نکتہ:','You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →'=>'آپ wp-config.php کانسٹینٹس کے ذریعے اجزاء زبردستی غیر فعال کر سکتے ہیں۔ زبردستی چھپانے کی جانچ کے بارے میں مزید جانیں →','Save Analysis Settings'=>'تجزیہ ترتیبات محفوظ کریں','« Previous'=>'« پچھلا','Next »'=>'اگلا »','Log entry not found or has been removed.'=>'لاگ اندراج نہیں ملی یا ہٹا دی گئی ہے۔','Unable to load the requested log entry.'=>'درخواست کی گئی لاگ اندراج لوڈ کرنے سے قاصر۔','Log Configuration'=>'لاگ ترتیب','Total Logs'=>'کل لاگ','Retention Period'=>'برقراری مدت','Disabled'=>'غیر فعال','%d day'=>'%d دن' . "\0" . '%d دن','Log Retention Period'=>'لاگ برقراری مدت','None (Disabled)'=>'کوئی نہیں (غیر فعال)','This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant.'=>'یہ قدر WPVULNERABILITY_LOG_RETENTION_DAYS کانسٹینٹ کے ذریعے نافذ ہے۔','Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted.'=>'اختیار کریں کہ WPVulnerability کو API ردعمل لاگ کتنی دیر تک رکھنے چاہئیں۔ پرانے لاگ خودکار طور پر حذف ہو جاتے ہیں۔','Save Configuration'=>'ترتیب محفوظ کریں','Log retention is currently disabled.'=>'لاگ برقراری فی الحال غیر فعال ہے۔','API responses are not being saved.'=>'API ردعمل محفوظ نہیں کیے جا رہے۔','Log Details'=>'لاگ تفصیلات','Date'=>'تاریخ','API Endpoint'=>'API اینڈ پوائنٹ','API Response'=>'API ردعمل','Back to Logs'=>'لاگ پر واپس جائیں','No logs available'=>'کوئی لاگ دستیاب نہیں','API response logs will appear here once the vulnerability scanner runs.'=>'کمزوری اسکینر چلنے کے بعد یہاں API ردعمل لاگ ظاہر ہوں گے۔','API Response Logs'=>'API ردعمل لاگ','Show:'=>'دکھائیں:','Apply'=>'لاگو کریں','Showing %1$s–%2$s of %3$s'=>'%3$s میں سے %1$s–%2$s دکھایا جا رہا ہے','Actions'=>'اعمال','View'=>'دیکھیں','Danger Zone'=>'خطرناک علاقہ','Permanently delete all API response logs. This action cannot be undone.'=>'تمام API ردعمل لاگ مستقل طور پر حذف کریں۔ یہ عمل واپس نہیں ہو سکتا۔','Are you sure you want to delete all logs? This action cannot be undone.'=>'کیا آپ تمام لاگ حذف کرنا چاہتے ہیں؟ یہ عمل واپس نہیں ہو سکتا۔','Delete All Logs'=>'تمام لاگ حذف کریں','Reload Data from API'=>'API سے ڈیٹا دوبارہ لوڈ کریں','Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information.'=>'اپ ڈیٹ شدہ ڈیٹا حاصل کرنے کے لیے تمام Core، پلگ ان، تھیم اور دیگر اجزاء کی معلومات براہ راست API سے دوبارہ لوڈ کریں۔ یہ کیشے صاف کرے گا اور تازہ کمزوری معلومات لائے گا۔','Reload Data'=>'ڈیٹا دوبارہ لوڈ کریں','Test Email Notifications'=>'آزمائشی ای میل اطلاعات','Send a test email notification with current vulnerability data to verify your email configuration is working correctly.'=>'اپنی ای میل ترتیب درست طور پر کام کر رہی ہے یا نہیں تصدیق کرنے کے لیے موجودہ کمزوری ڈیٹا کے ساتھ آزمائشی ای میل اطلاع بھیجیں۔','From address (configured via constant):'=>'بھیجنے والے کا پتہ (کانسٹینٹ کے ذریعے ترتیب دیا گیا):','From address (default):'=>'بھیجنے والے کا پتہ (ڈیفالٹ):','Learn how to customize the email sender address →'=>'ای میل بھیجنے والے کا پتہ کیسے تبدیل کریں →','Send Test Email'=>'آزمائشی ای میل بھیجیں','WP-Cron Status'=>'WP-Cron کی حیثیت','View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly.'=>'WP-Cron مقررہ واقعات دیکھیں اور منظم کریں۔ یقینی بنائیں کہ خودکار کام درست طریقے سے چل رہے ہیں۔','No cron data available.'=>'کوئی cron ڈیٹا دستیاب نہیں۔','Hook'=>'ہک','Expected'=>'متوقع','Found'=>'ملا','Next Run'=>'اگلا رن','Status'=>'حیثیت','Not expected'=>'متوقع نہیں','None'=>'کوئی نہیں','OK'=>'ٹھیک ہے','⚠️ Unexpected WPVulnerability Events'=>'⚠️ غیر متوقع WPVulnerability واقعات','No interval'=>'کوئی وقفہ نہیں','Next:'=>'اگلا:','Repair Cron Events'=>'Cron واقعات ٹھیک کریں','Uninstall Data'=>'انسٹال ہٹانے کا ڈیٹا','By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall.'=>'ڈیفالٹ کے طور پر، WPVulnerability حذف ہونے پر تمام پلگ ان ڈیٹا محفوظ رہتا ہے۔ نیچے دیا گیا اختیار صرف تبھی فعال کریں جب آپ انسٹال ہٹانے پر تمام اختیارات، لاگ اور کیشے ڈیٹا مستقل طور پر ہٹانا چاہتے ہوں۔','Delete all plugin data on uninstall'=>'انسٹال ہٹانے پر تمام پلگ ان ڈیٹا حذف کریں','Default: unchecked (data preserved). Check only if you want a clean removal.'=>'ڈیفالٹ: غیر نشان زد (ڈیٹا محفوظ)۔ صرف تبھی نشان لگائیں جب صاف ہٹانا چاہتے ہوں۔','Save preference'=>'ترجیح محفوظ کریں','Reset WPVulnerability'=>'WPVulnerability ری سیٹ کریں','Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API.'=>'تمام WPVulnerability ترتیبات، کیشے ڈیٹا، لاگ اور مقررہ واقعات حذف کریں، پھر ڈیفالٹ بحال کریں اور API سے ڈیٹا دوبارہ لوڈ کریں۔','This action cannot be undone.'=>'یہ عمل واپس نہیں ہو سکتا۔','Are you sure you want to reset all WPVulnerability data? This action cannot be undone.'=>'کیا آپ تمام WPVulnerability ڈیٹا ری سیٹ کرنا چاہتے ہیں؟ یہ عمل واپس نہیں ہو سکتا۔','Reset Plugin'=>'پلگ ان ری سیٹ کریں','Vulnerability Database Statistics'=>'کمزوری ڈیٹا بیس اعداد و شمار','%s vulnerability'=>'%s کمزوری' . "\0" . '%s کمزوریاں','(%s product)'=>'(%s مصنوع)' . "\0" . '(%s مصنوعات)','No data'=>'کوئی ڈیٹا نہیں','Database last updated: %s'=>'ڈیٹا بیس آخری بار اپ ڈیٹ: %s','Intelligence Sources'=>'معلوماتی ذرائع','Number of vulnerabilities contributed by each intelligence source.'=>'ہر معلوماتی ذریعے کی طرف سے شامل کمزوریوں کی تعداد۔','Source'=>'ذریعہ','Core'=>'Core','Sponsors'=>'سرپرست','No sponsor data available.'=>'کوئی سرپرست ڈیٹا دستیاب نہیں۔','Contributors'=>'حصہ ڈالنے والے','No contributor data available.'=>'کوئی حصہ ڈالنے والے کا ڈیٹا دستیاب نہیں۔','You do not have sufficient permissions to access this page.'=>'اس صفحے تک رسائی کے لیے آپ کے پاس کافی اجازتیں نہیں ہیں۔','WPVulnerability settings'=>'WPVulnerability ترتیبات','Configure and save these settings to receive notifications.'=>'اطلاعات وصول کرنے کے لیے یہ ترتیبات ترتیب دیں اور محفوظ کریں۔','Configure and save these settings to hide vulnerabilities.'=>'کمزوریاں چھپانے کے لیے یہ ترتیبات ترتیب دیں اور محفوظ کریں۔','Default administrator email'=>'ڈیفالٹ منتظم ای میل','Read more if you want to force the cache time.'=>'اگر آپ کیشے وقت زبردستی مقرر کرنا چاہتے ہیں تو مزید پڑھیں۔','Never'=>'کبھی نہیں','Daily'=>'روزانہ','Weekly'=>'ہفتہ وار','Day'=>'دن','Hour'=>'گھنٹہ','Minute'=>'منٹ','Read more about how to force the deactivation of an item.'=>'کسی آئٹم کو زبردستی غیر فعال کرنے کے بارے میں مزید پڑھیں۔','Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com'=>'غلط Slack webhook URL۔ hooks.slack.com سے ایک درست HTTPS URL ہونا چاہیے۔','Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com'=>'غلط Microsoft Teams webhook URL۔ office.com، office365.com یا api.hooks.microsoft.com سے ایک درست HTTPS URL ہونا چاہیے۔','Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com'=>'غلط Discord webhook URL۔ discord.com یا discordapp.com سے ایک درست HTTPS URL ہونا چاہیے۔','Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'غلط Telegram bot token شکل۔ اس طرح ہونا چاہیے: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','All Clear'=>'سب صاف','%d Critical Issue Found'=>'%d اہم مسئلہ ملا' . "\0" . '%d اہم مسائل ملے','%d Issue Found'=>'%d مسئلہ ملا' . "\0" . '%d مسائل ملے','Never checked'=>'کبھی جانچا نہیں گیا','%d minute ago'=>'%d منٹ پہلے' . "\0" . '%d منٹ پہلے','%d hour ago'=>'%d گھنٹہ پہلے' . "\0" . '%d گھنٹے پہلے','Last checked: %s'=>'آخری جانچ: %s','Refresh Now'=>'ابھی تازہ کریں','No vulnerabilities detected'=>'کوئی کمزوری نہیں ملی','Your site is up to date and secure'=>'آپ کی سائٹ تازہ ترین اور محفوظ ہے','Server Software'=>'سرور سافٹ ویئر','Site Health'=>'سائٹ کی صحت','Settings'=>'ترتیبات','WPVulnerability Status'=>'WPVulnerability حیثیت','Receive vulnerability notifications'=>'کمزوری کی اطلاعات وصول کریں','Cache expiration time'=>'کیشے میعاد ختم ہونے کا وقت','How often you want to receive notifications'=>'آپ کتنی بار اطلاعات وصول کرنا چاہتے ہیں','Where do you want to receive notifications?'=>'آپ اطلاعات کہاں وصول کرنا چاہتے ہیں؟','Email addresses to notify (separated by commas)'=>'مطلع کرنے کے لیے ای میل پتے (کوما سے الگ کریں)','Slack webhook URL'=>'Slack webhook URL','Teams webhook URL'=>'Teams webhook URL','Vulnerabilities to hide'=>'چھپانے کے لیے کمزوریاں','What do you want to hide?'=>'آپ کیا چھپانا چاہتے ہیں؟','Standard (Hybrid Detection)'=>'معیاری (ہائبرڈ شناخت)','Strict (Extensions Only)'=>'سخت (صرف ایکسٹینشن)','Disabled (No Detection)'=>'غیر فعال (کوئی شناخت نہیں)','Security Status'=>'سلامتی کی حیثیت','Security Mode'=>'سلامتی موڈ','Shell Execution'=>'Shell عمل','Enabled'=>'فعال','Audit Logging'=>'آڈٹ لاگنگ','Enabled (%d days)'=>'فعال (%d دن)','Total Log Entries'=>'کل لاگ اندراجات','Last Shell Execution'=>'آخری Shell عمل','%s ago'=>'%s پہلے','Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.'=>'wp-config.php کانسٹینٹس کے ذریعے سلامتی ترتیبات ترتیب دیں: WPVULNERABILITY_DISABLE_SHELL_EXEC، WPVULNERABILITY_SECURITY_MODE، WPVULNERABILITY_SHELL_EXEC_WHITELIST۔','See security configuration documentation for details.'=>'تفصیلات کے لیے سلامتی ترتیب دستاویزات دیکھیں۔','Memcached'=>'Memcached','Imagick Extension'=>'Imagick ایکسٹینشن','Redis Extension'=>'Redis ایکسٹینشن','Memcached Extension'=>'Memcached ایکسٹینشن','Memcache Extension'=>'Memcache ایکسٹینشن','SQLite3 Extension'=>'SQLite3 ایکسٹینشن','PDO SQLite'=>'PDO SQLite','Shell Command'=>'Shell کمانڈ','Binary Check'=>'بائنری جانچ','Not Detected'=>'شناخت نہیں ہوا','Software Detection Methods'=>'سافٹ ویئر شناخت کے طریقے','Shows which detection method was used for each software component and the reliability score.'=>'دکھاتا ہے کہ ہر سافٹ ویئر جزو کے لیے کون سا شناخت طریقہ استعمال ہوا اور اعتماد کا اسکور کیا ہے۔','Component'=>'جزو','Version'=>'نسخہ','Detection Method'=>'شناخت طریقہ','Reliability'=>'اعتماد','Not detected'=>'شناخت نہیں ہوا','Shell Execution Audit Logs'=>'Shell عمل آڈٹ لاگ','Complete audit trail of shell command executions for security monitoring.'=>'سلامتی نگرانی کے لیے shell کمانڈ اعمال کا مکمل آڈٹ سراغ۔','No shell execution logs found.'=>'کوئی shell عمل لاگ نہیں ملی۔','Logs will appear here when shell commands are executed for software detection.'=>'سافٹ ویئر شناخت کے لیے shell کمانڈ چلانے پر یہاں لاگ ظاہر ہوں گے۔','Time'=>'وقت','Command'=>'کمانڈ','User'=>'صارف','Output'=>'نتیجہ','Showing the %d most recent log entries.'=>'سب سے حالیہ %d لاگ اندراجات دکھائی جا رہی ہیں۔','Invalid nonce.'=>'غلط nonce۔','Insufficient permissions.'=>'ناکافی اجازتیں۔','No component specified.'=>'کوئی جزو متعین نہیں کیا گیا۔','Debug Information'=>'ڈیبگ معلومات','This tab is only visible when WP_DEBUG is enabled. Use with caution.'=>'یہ ٹیب صرف اس وقت نظر آتا ہے جب WP_DEBUG فعال ہو۔ احتیاط سے استعمال کریں۔','System Information'=>'نظام معلومات','WordPress Version'=>'WordPress نسخہ','Multisite'=>'ملٹی سائٹ','Yes'=>'ہاں','No'=>'نہیں','Language'=>'زبان','PHP Version'=>'PHP نسخہ','PHP Extensions'=>'PHP ایکسٹینشنز','PHP Memory Limit'=>'PHP میموری حد','Database'=>'ڈیٹا بیس','Web Server'=>'ویب سرور','WP_DEBUG'=>'WP_DEBUG','WP_DEBUG_LOG'=>'WP_DEBUG_LOG','Path:'=>'راستہ:','Size: %s'=>'حجم: %s','View Log File'=>'لاگ فائل دیکھیں','Log file is not web-accessible (outside wp-content)'=>'لاگ فائل ویب سے قابل رسائی نہیں ہے (wp-content سے باہر)','Log file does not exist yet'=>'لاگ فائل ابھی موجود نہیں ہے','Plugin Version'=>'پلگ ان نسخہ','Component Detection'=>'جزو شناخت','Version Detected'=>'نسخہ شناخت ہوا','Analyzed'=>'تجزیہ شدہ','Cache Status'=>'کیشے حیثیت','Configuration Summary'=>'ترتیب خلاصہ','Cache Duration'=>'کیشے مدت','Log Retention'=>'لاگ برقراری','Components Analyzed'=>'تجزیہ شدہ اجزاء','Notification Email'=>'اطلاع ای میل','Slack Webhook'=>'Slack Webhook','Configured & Enabled'=>'ترتیب دیا گیا اور فعال','Configured (Disabled)'=>'ترتیب دیا گیا (غیر فعال)','Not configured'=>'ترتیب نہیں دیا گیا','Teams Webhook'=>'Teams Webhook','Discord Webhook'=>'Discord Webhook','Telegram Bot'=>'Telegram Bot','Cron Status'=>'Cron حیثیت','Update Database'=>'ڈیٹا بیس اپ ڈیٹ کریں','Next run: %s'=>'اگلا رن: %s','Not scheduled'=>'مقرر نہیں','Send Notification'=>'اطلاع بھیجیں','Run Update Now'=>'ابھی اپ ڈیٹ چلائیں','Run Notification Now'=>'ابھی اطلاع بھیجیں','You do not have permission to run these actions.'=>'آپ کو یہ اعمال چلانے کی اجازت نہیں ہے۔','API Testing'=>'API آزمائش','Test API connectivity for each component. Click a button to send a test request.'=>'ہر جزو کے لیے API رابطہ آزمائیں۔ آزمائشی درخواست بھیجنے کے لیے بٹن دبائیں۔','Test %s'=>'%s آزمائش','Testing...'=>'آزمائش ہو رہی ہے...','HTTP Code:'=>'HTTP کوڈ:','Response Time:'=>'ردعمل وقت:','Response Preview'=>'ردعمل پیش نظارہ','Test'=>'آزمائش','Error:'=>'غلطی:','AJAX request failed.'=>'AJAX درخواست ناکام رہی۔','You do not have permission to test API connectivity.'=>'آپ کو API رابطہ آزمانے کی اجازت نہیں ہے۔','Database Options Viewer'=>'ڈیٹا بیس اختیارات دیکھنے والا','View the raw data stored in WordPress options.'=>'WordPress اختیارات میں محفوظ خام ڈیٹا دیکھیں۔','Select an option...'=>'ایک اختیار منتخب کریں...','Option not found or empty.'=>'اختیار نہیں ملا یا خالی ہے۔','Quick Actions'=>'فوری اعمال','Perform debugging actions. Use with caution.'=>'ڈیبگنگ اعمال انجام دیں۔ احتیاط سے استعمال کریں۔','Are you sure you want to clear all caches?'=>'کیا آپ تمام کیشے صاف کرنا چاہتے ہیں؟','Clear All Caches'=>'تمام کیشے صاف کریں','Are you sure you want to reset signatures?'=>'کیا آپ دستخط ری سیٹ کرنا چاہتے ہیں؟','Reset Signatures'=>'دستخط ری سیٹ کریں','Export Debug Info'=>'ڈیبگ معلومات برآمد کریں','You do not have permission to perform these actions.'=>'آپ کو یہ اعمال انجام دینے کی اجازت نہیں ہے۔','Settings saved.'=>'ترتیبات محفوظ ہو گئی ہیں۔','WPVulnerability cron events have been repaired across the network.'=>'نیٹ ورک میں WPVulnerability cron واقعات ٹھیک کر دیے گئے ہیں۔','You do not have permission to access this page.'=>'اس صفحے تک رسائی کی آپ کو اجازت نہیں ہے۔','WordPress %1$s has a known vulnerability that may be affecting your installed version.'=>'WordPress %1$s میں ایک معلوم کمزوری ہے جو آپ کے انسٹال شدہ نسخے کو متاثر کر سکتی ہے۔','Actively exploited'=>'فعال طور پر استحصال شدہ','Public exploit'=>'عوامی استحصال','Automatable'=>'خودکار','References:'=>'حوالہ جات:','Invalid component specified.'=>'غلط جزو متعین کیا گیا۔','Version not detected for this component.'=>'اس جزو کے لیے نسخہ شناخت نہیں ہوا۔','API request successful.'=>'API درخواست کامیاب رہی۔','API returned HTTP code %d.'=>'API نے HTTP کوڈ %d واپس کیا۔','WPVulnerability Logs'=>'WPVulnerability لاگ','WPVulnerability Log'=>'WPVulnerability لاگ','Low'=>'کم','Medium'=>'درمیانہ','High'=>'زیادہ','Critical'=>'اہم','WPVulnerability Shell Logs'=>'WPVulnerability Shell لاگ','WPVulnerability Shell Log'=>'WPVulnerability Shell لاگ','Every week'=>'ہر ہفتہ','Every day'=>'ہر روز','Invalid request.'=>'غلط درخواست۔','You have unsubscribed from WPVulnerability notifications.'=>'آپ نے WPVulnerability اطلاعات سے اشتراک ختم کر لیا ہے۔','Learn more about the WordPress Vulnerability Database API at %2$s'=>'WordPress Vulnerability Database API کے بارے میں %2$s پر مزید جانیں','Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings.'=>'کیا آپ یہ اطلاعات وصول کرنا بند کرنا چاہتے ہیں؟ اشتراک ختم کریں یا WPVulnerability ترتیبات میں ای میل تعدد کو کبھی نہیں میں تبدیل کریں۔','No vulnerabilities found'=>'کوئی کمزوری نہیں ملی','This is likely a test. The site does not have vulnerabilities.'=>'یہ شاید ایک آزمائش ہے۔ سائٹ میں کوئی کمزوری نہیں ہے۔','Core vulnerabilities'=>'بنیادی کمزوریاں','Plugins vulnerabilities'=>'پلگ ان کمزوریاں','Themes vulnerabilities'=>'تھیم کمزوریاں','PHP vulnerabilities'=>'PHP کمزوریاں','Apache HTTPD vulnerabilities'=>'Apache HTTPD کمزوریاں','Nginx vulnerabilities'=>'Nginx کمزوریاں','MariaDB vulnerabilities'=>'MariaDB کمزوریاں','MySQL vulnerabilities'=>'MySQL کمزوریاں','ImageMagick vulnerabilities'=>'ImageMagick کمزوریاں','curl vulnerabilities'=>'curl کمزوریاں','memcached vulnerabilities'=>'memcached کمزوریاں','Redis vulnerabilities'=>'Redis کمزوریاں','SQLite vulnerabilities'=>'SQLite کمزوریاں','Vulnerability found: %s'=>'کمزوری ملی: %s','Vulnerability found'=>'کمزوری ملی','%1$s has a known vulnerability that may be affecting your installed version.'=>'%1$s میں ایک معلوم کمزوری ہے جو آپ کے انسٹال شدہ نسخے کو متاثر کر سکتی ہے۔','This plugin is closed. Please replace it with another.'=>'یہ پلگ ان بند ہے۔ براہ کرم اسے کسی دوسرے سے بدلیں۔','This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates.'=>'یہ کمزوری غیر پیوند شدہ لگتی ہے۔ آنے والے پلگ ان اپ ڈیٹس کا انتظار کریں۔','It hasn\'t been updated in over a year.'=>'اسے ایک سال سے زیادہ عرصے سے اپ ڈیٹ نہیں کیا گیا۔','It may no longer be available (closed?).'=>'یہ اب دستیاب نہ ہو (بند؟)۔','Last updated on'=>'آخری بار اپ ڈیٹ','Vulnerabilities (%d)'=>'کمزوریاں (%d)','%s running'=>'%s چل رہا ہے','End of Life'=>'زندگی کا اختتام','End of life:'=>'زندگی کا اختتام:','Supported'=>'تعاون یافتہ','Plugin'=>'پلگ ان','Theme'=>'تھیم','End of life: %s'=>'زندگی کا اختتام: %s','EOL'=>'EOL','Network Settings'=>'نیٹ ورک ترتیبات','Vulnerabilities'=>'کمزوریاں','Every 6 hours'=>'ہر ۶ گھنٹے','Database updates'=>'ڈیٹا بیس اپ ڈیٹس','Log cleanup'=>'لاگ صفائی','Notifications are scheduled, but settings currently disable them. Please review the notifications tab.'=>'اطلاعات مقرر ہیں، لیکن ترتیبات فی الحال انہیں غیر فعال کرتی ہیں۔ براہ کرم اطلاعات ٹیب کا جائزہ لیں۔','This event should not be scheduled for this site.'=>'یہ واقعہ اس سائٹ کے لیے مقرر نہیں ہونا چاہیے۔','Not expected for this site.'=>'اس سائٹ کے لیے متوقع نہیں۔','No instances found.'=>'کوئی نمونہ نہیں ملا۔','Scheduled with an unexpected interval.'=>'غیر متوقع وقفے کے ساتھ مقرر کیا گیا۔','Multiple instances detected.'=>'متعدد نمونے شناخت ہوئے۔','Scheduled as expected.'=>'توقع کے مطابق مقرر کیا گیا۔','There aren\'t plugins vulnerabilities'=>'پلگ ان میں کوئی کمزوری نہیں ہے','Shows possible vulnerabilities that exist in installed plugins.'=>'انسٹال کیے گئے پلگ ان میں موجود ممکنہ کمزوریاں دکھاتا ہے۔','There is %d plugin with vulnerabilities'=>'%d پلگ ان میں کمزوری ہے' . "\0" . '%d پلگ ان میں کمزوریاں ہیں','We\'ve detected potential vulnerabilities in installed plugins. Please check them and keep them updated.'=>'ہم نے انسٹال کیے گئے پلگ ان میں ممکنہ کمزوریاں پائی ہیں۔ براہ کرم انہیں جانچیں اور اپ ڈیٹ رکھیں۔','Update plugins'=>'پلگ ان اپ ڈیٹ کریں','There aren\'t themes vulnerabilities'=>'تھیم میں کوئی کمزوری نہیں ہے','Shows possible vulnerabilities that exist in installed themes.'=>'انسٹال کیے گئے تھیم میں موجود ممکنہ کمزوریاں دکھاتا ہے۔','There is %d theme with vulnerabilities'=>'%d تھیم میں کمزوری ہے' . "\0" . '%d تھیم میں کمزوریاں ہیں','We\'ve detected potential vulnerabilities in installed themes. Please check them and keep them updated.'=>'ہم نے انسٹال کیے گئے تھیم میں ممکنہ کمزوریاں پائی ہیں۔ براہ کرم انہیں جانچیں اور اپ ڈیٹ رکھیں۔','Update themes'=>'تھیم اپ ڈیٹ کریں','There aren\'t WordPress vulnerabilities'=>'WordPress میں کوئی کمزوری نہیں ہے','Shows possible vulnerabilities existing in the WordPress core.'=>'WordPress core میں موجود ممکنہ کمزوریاں دکھاتا ہے۔','There is %d core vulnerability'=>'%d بنیادی کمزوری ہے' . "\0" . '%d بنیادی کمزوریاں ہیں','We\'ve detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated.'=>'ہم نے اس WordPress تنصیب میں ممکنہ کمزوریاں پائی ہیں۔ براہ کرم انہیں جانچیں اور اپنی تنصیب اپ ڈیٹ رکھیں۔','Update WordPress'=>'WordPress اپ ڈیٹ کریں','Nginx'=>'Nginx','Invalid software type'=>'غلط سافٹ ویئر قسم','Error'=>'غلطی','The specified software type is not valid.'=>'متعین سافٹ ویئر قسم درست نہیں ہے۔','There aren\'t %s vulnerabilities'=>'%s میں کوئی کمزوری نہیں ہے','Shows possible vulnerabilities existing in %s.'=>'%s میں موجود ممکنہ کمزوریاں دکھاتا ہے۔','There is %1$d %2$s vulnerability'=>'%2$s میں %1$d کمزوری ہے' . "\0" . '%2$s میں %1$d کمزوریاں ہیں','We\'ve detected potential vulnerabilities in %s. Please check them and keep your installation updated.'=>'ہم نے %s میں ممکنہ کمزوریاں پائی ہیں۔ براہ کرم انہیں جانچیں اور اپنی تنصیب اپ ڈیٹ رکھیں۔','How to update PHP'=>'PHP کیسے اپ ڈیٹ کریں','WPVulnerability Core'=>'WPVulnerability Core','WPVulnerability Themes'=>'WPVulnerability Themes','WPVulnerability Plugins'=>'WPVulnerability Plugins','WPVulnerability PHP'=>'WPVulnerability PHP','WPVulnerability Apache HTTPD'=>'WPVulnerability Apache HTTPD','WPVulnerability Nginx'=>'WPVulnerability Nginx','WPVulnerability MariaDB'=>'WPVulnerability MariaDB','WPVulnerability MySQL'=>'WPVulnerability MySQL','WPVulnerability ImageMagick'=>'WPVulnerability ImageMagick','WPVulnerability curl'=>'WPVulnerability curl','WPVulnerability memcached'=>'WPVulnerability memcached','WPVulnerability redis'=>'WPVulnerability redis','WPVulnerability sqlite'=>'WPVulnerability sqlite','This theme is closed. Please replace it with another.'=>'یہ تھیم بند ہے۔ براہ کرم اسے کسی دوسرے سے بدلیں۔','This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates.'=>'یہ کمزوری غیر پیوند شدہ لگتی ہے۔ آنے والے تھیم اپ ڈیٹس کا انتظار کریں۔','This theme has known vulnerabilities that may be affecting your installed version.'=>'اس تھیم میں معلوم کمزوریاں ہیں جو آپ کے انسٹال شدہ نسخے کو متاثر کر سکتی ہیں۔']]; \ No newline at end of file diff --git a/languages/wpvulnerability-ur.mo b/languages/wpvulnerability-ur.mo new file mode 100644 index 0000000000000000000000000000000000000000..7dc2b6fe1d5cbd59776714b5e84432f07fd1a1c1 GIT binary patch literal 45473 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 literal 0 HcmV?d00001 diff --git a/languages/wpvulnerability-ur.po b/languages/wpvulnerability-ur.po new file mode 100644 index 0000000..32ad1ba --- /dev/null +++ b/languages/wpvulnerability-ur.po @@ -0,0 +1,1437 @@ +# Copyright (C) 2026 ROBOTSTXT +# This file is distributed under the GPL-3.0-or-later. +msgid "" +msgstr "" +"Project-Id-Version: WPVulnerability 5.0.0\n" +"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wpvulnerability\n" +"POT-Creation-Date: 2026-05-27T16:32:22+00:00\n" +"PO-Revision-Date: 2026-05-27 00:00+0000\n" +"Last-Translator: Automatically generated\n" +"Language-Team: Urdu \n" +"Language: ur\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: AI Translation\n" +"X-Domain: wpvulnerability\n" + +#. Plugin Name of the plugin +msgid "WPVulnerability" +msgstr "WPVulnerability" + +#. Plugin URI of the plugin +msgid "https://www.wpvulnerability.com/plugin/" +msgstr "https://www.wpvulnerability.com/plugin/" + +#. Description of the plugin +msgid "Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API." +msgstr "WordPress Vulnerability Database API سے اپنے WordPress میں ممکنہ کمزوریوں کے بارے میں معلومات حاصل کریں۔" + +#. Author of the plugin +msgid "ROBOTSTXT" +msgstr "ROBOTSTXT" + +#. Author URI of the plugin +msgid "https://www.robotstxt.es/" +msgstr "https://www.robotstxt.es/" + +msgid "This command requires a WordPress administrator. Run with --user=." +msgstr "اس کمانڈ کے لیے WordPress منتظم کی ضرورت ہے۔ --user= کے ساتھ چلائیں۔" + +msgid "No core vulnerabilities found." +msgstr "کوئی بنیادی کمزوری نہیں ملی۔" + +msgid "No plugin vulnerabilities found." +msgstr "کوئی پلگ ان کمزوری نہیں ملی۔" + +msgid "No theme vulnerabilities found." +msgstr "کوئی تھیم کمزوری نہیں ملی۔" + +#, php-format +msgid "No %s vulnerabilities found." +msgstr "کوئی %s کمزوری نہیں ملی۔" + +msgid "Data from source has been reloaded." +msgstr "ماخذ سے ڈیٹا دوبارہ لوڈ کر دیا گیا ہے۔" + +msgid "You do not have permission to reload data." +msgstr "آپ کو ڈیٹا دوبارہ لوڈ کرنے کی اجازت نہیں ہے۔" + +msgid "Test email has been sent." +msgstr "آزمائشی ای میل بھیج دی گئی ہے۔" + +msgid "Test email has failed. Please, check your email settings." +msgstr "آزمائشی ای میل ناکام رہی۔ براہ کرم اپنی ای میل ترتیبات جانچیں۔" + +msgid "You do not have permission to send test emails." +msgstr "آپ کو آزمائشی ای میل بھیجنے کی اجازت نہیں ہے۔" + +msgid "WPVulnerability cron events have been repaired." +msgstr "WPVulnerability cron واقعات ٹھیک کر دیے گئے ہیں۔" + +msgid "You do not have permission to repair cron events." +msgstr "آپ کو cron واقعات ٹھیک کرنے کی اجازت نہیں ہے۔" + +msgid "All logs have been deleted." +msgstr "تمام لاگ حذف کر دیے گئے ہیں۔" + +msgid "You do not have permission to delete logs." +msgstr "آپ کو لاگ حذف کرنے کی اجازت نہیں ہے۔" + +msgid "Uninstall preference saved." +msgstr "انسٹال ہٹانے کی ترجیح محفوظ کر لی گئی۔" + +msgid "WPVulnerability has been reset to defaults and reloaded." +msgstr "WPVulnerability کو ڈیفالٹ پر ری سیٹ کر کے دوبارہ لوڈ کر دیا گیا ہے۔" + +msgid "You do not have permission to reset WPVulnerability." +msgstr "آپ کو WPVulnerability ری سیٹ کرنے کی اجازت نہیں ہے۔" + +msgid "All caches have been cleared." +msgstr "تمام کیشے صاف کر دیے گئے ہیں۔" + +msgid "You do not have permission to clear caches." +msgstr "آپ کو کیشے صاف کرنے کی اجازت نہیں ہے۔" + +msgid "Plugin and theme signatures have been reset." +msgstr "پلگ ان اور تھیم دستخط ری سیٹ کر دیے گئے ہیں۔" + +msgid "You do not have permission to reset signatures." +msgstr "آپ کو دستخط ری سیٹ کرنے کی اجازت نہیں ہے۔" + +msgid "You do not have permission to export debug information." +msgstr "آپ کو ڈیبگ معلومات برآمد کرنے کی اجازت نہیں ہے۔" + +msgid "Database update has been executed." +msgstr "ڈیٹا بیس اپ ڈیٹ انجام دے دیا گیا ہے۔" + +msgid "You do not have permission to run database updates." +msgstr "آپ کو ڈیٹا بیس اپ ڈیٹ چلانے کی اجازت نہیں ہے۔" + +msgid "Notification has been sent." +msgstr "اطلاع بھیج دی گئی ہے۔" + +msgid "Notification sending failed." +msgstr "اطلاع بھیجنا ناکام رہا۔" + +msgid "You do not have permission to send notifications." +msgstr "آپ کو اطلاعات بھیجنے کی اجازت نہیں ہے۔" + +msgid "Notifications" +msgstr "اطلاعات" + +msgid "Analysis" +msgstr "تجزیہ" + +msgid "Logs" +msgstr "لاگ" + +msgid "Security" +msgstr "سلامتی" + +msgid "Tools" +msgstr "اوزار" + +msgid "Debug" +msgstr "ڈیبگ" + +msgid "About" +msgstr "بارے میں" + +msgid "Notification Settings" +msgstr "اطلاع ترتیبات" + +msgid "Configure how and when you want to receive vulnerability notifications." +msgstr "ترتیب دیں کہ آپ کمزوری کی اطلاعات کیسے اور کب وصول کرنا چاہتے ہیں۔" + +msgid "Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software." +msgstr "اپنی WordPress تنصیب، پلگ ان، تھیم اور سرور سافٹ ویئر میں سلامتی کمزوریوں کے بارے میں باخبر رہیں۔" + +msgid "Cache Expiration Time" +msgstr "کیشے میعاد ختم ہونے کا وقت" + +msgid "FORCED" +msgstr "زبردستی" + +msgid "How long to cache vulnerability data before refreshing from the API." +msgstr "API سے تازہ کاری سے پہلے کمزوری کا ڈیٹا کتنی دیر تک کیشے میں رکھنا ہے۔" + +#, php-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d گھنٹہ" +msgstr[1] "%d گھنٹے" + +#, php-format +msgid "You can force the cache time via wp-config.php constant. Learn more →" +msgstr "آپ wp-config.php کانسٹینٹ کے ذریعے کیشے وقت زبردستی مقرر کر سکتے ہیں۔ مزید جانیں →" + +msgid "Notification Frequency" +msgstr "اطلاع تعدد" + +msgid "Choose how often you want to receive vulnerability notifications." +msgstr "اختیار کریں کہ آپ کتنی بار کمزوری کی اطلاعات وصول کرنا چاہتے ہیں۔" + +msgid "Never - Disable automatic notifications" +msgstr "کبھی نہیں - خودکار اطلاعات بند کریں" + +msgid "Daily - Receive notifications every day" +msgstr "روزانہ - ہر روز اطلاعات وصول کریں" + +msgid "Weekly - Receive notifications once a week" +msgstr "ہفتہ وار - ہفتے میں ایک بار اطلاعات وصول کریں" + +msgid "Day:" +msgstr "دن:" + +msgid "Monday" +msgstr "پیر" + +msgid "Tuesday" +msgstr "منگل" + +msgid "Wednesday" +msgstr "بدھ" + +msgid "Thursday" +msgstr "جمعرات" + +msgid "Friday" +msgstr "جمعہ" + +msgid "Saturday" +msgstr "ہفتہ" + +msgid "Sunday" +msgstr "اتوار" + +msgid "Time:" +msgstr "وقت:" + +msgid "(24-hour format, server timezone)" +msgstr "(۲۴ گھنٹے کی شکل، سرور ٹائم زون)" + +msgid "Notification Channels" +msgstr "اطلاع چینلز" + +msgid "Select where you want to receive notifications." +msgstr "منتخب کریں کہ آپ اطلاعات کہاں وصول کرنا چاہتے ہیں۔" + +msgid "Email" +msgstr "ای میل" + +msgid "Email Addresses (separated by commas):" +msgstr "ای میل پتے (کوما سے الگ کریں):" + +msgid "Default:" +msgstr "ڈیفالٹ:" + +msgid "Slack" +msgstr "Slack" + +msgid "Slack Webhook URL:" +msgstr "Slack Webhook URL:" + +#, php-format +msgid "Learn how to create a Slack incoming webhook →" +msgstr "Slack آنے والا webhook کیسے بنائیں →" + +msgid "Microsoft Teams" +msgstr "Microsoft Teams" + +msgid "Teams Webhook URL:" +msgstr "Teams Webhook URL:" + +#, php-format +msgid "Learn how to create a Teams incoming webhook →" +msgstr "Teams آنے والا webhook کیسے بنائیں →" + +msgid "Discord" +msgstr "Discord" + +msgid "Discord Webhook URL:" +msgstr "Discord Webhook URL:" + +#, php-format +msgid "Learn how to create a Discord webhook →" +msgstr "Discord webhook کیسے بنائیں →" + +msgid "Telegram" +msgstr "Telegram" + +msgid "Telegram Bot Token:" +msgstr "Telegram Bot Token:" + +msgid "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "شکل: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +msgid "Telegram Chat ID:" +msgstr "Telegram Chat ID:" + +#, php-format +msgid "Learn how to create a Telegram bot and get Chat ID →" +msgstr "Telegram بوٹ کیسے بنائیں اور Chat ID کیسے حاصل کریں →" + +msgid "Save Notification Settings" +msgstr "اطلاع ترتیبات محفوظ کریں" + +msgid "WordPress Components" +msgstr "WordPress اجزاء" + +msgid "WordPress Core" +msgstr "WordPress Core" + +msgid "Plugins" +msgstr "پلگ ان" + +msgid "Themes" +msgstr "تھیم" + +msgid "Software & Languages" +msgstr "سافٹ ویئر اور زبانیں" + +msgid "PHP" +msgstr "PHP" + +msgid "Web Servers" +msgstr "ویب سرورز" + +msgid "Apache HTTPD" +msgstr "Apache HTTPD" + +msgid "nginx" +msgstr "nginx" + +msgid "Databases" +msgstr "ڈیٹا بیسز" + +msgid "MariaDB" +msgstr "MariaDB" + +msgid "MySQL" +msgstr "MySQL" + +msgid "SQLite" +msgstr "SQLite" + +msgid "Additional Tools" +msgstr "اضافی اوزار" + +msgid "ImageMagick" +msgstr "ImageMagick" + +msgid "curl" +msgstr "curl" + +msgid "memcached" +msgstr "memcached" + +msgid "Redis" +msgstr "Redis" + +msgid "Component Analysis Settings" +msgstr "جزو تجزیہ ترتیبات" + +msgid "Enable or disable vulnerability analysis for specific components." +msgstr "مخصوص اجزاء کے لیے کمزوری تجزیہ فعال یا غیر فعال کریں۔" + +msgid "Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red." +msgstr "وہ اجزاء منتخب کریں جو آپ کمزوری اسکین اور رپورٹس سے چھپانا چاہتے ہیں۔ غیر منتخب اجزاء فعال طور پر تجزیہ کیے جائیں گے۔ فعال تجزیہ والے اجزاء سبز میں اور چھپے اجزاء سرخ میں دکھائے جاتے ہیں۔" + +msgid "Hidden (forced by constant)" +msgstr "چھپا ہوا (کانسٹینٹ کے ذریعے زبردستی)" + +msgid "🔴 Analysis disabled" +msgstr "🔴 تجزیہ غیر فعال" + +msgid "🟢 Analysis active" +msgstr "🟢 تجزیہ فعال" + +msgid "Tip:" +msgstr "نکتہ:" + +#, php-format +msgid "You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →" +msgstr "آپ wp-config.php کانسٹینٹس کے ذریعے اجزاء زبردستی غیر فعال کر سکتے ہیں۔ زبردستی چھپانے کی جانچ کے بارے میں مزید جانیں →" + +msgid "Save Analysis Settings" +msgstr "تجزیہ ترتیبات محفوظ کریں" + +msgid "« Previous" +msgstr "« پچھلا" + +msgid "Next »" +msgstr "اگلا »" + +msgid "Log entry not found or has been removed." +msgstr "لاگ اندراج نہیں ملی یا ہٹا دی گئی ہے۔" + +msgid "Unable to load the requested log entry." +msgstr "درخواست کی گئی لاگ اندراج لوڈ کرنے سے قاصر۔" + +msgid "Log Configuration" +msgstr "لاگ ترتیب" + +msgid "Total Logs" +msgstr "کل لاگ" + +msgid "Retention Period" +msgstr "برقراری مدت" + +msgid "Disabled" +msgstr "غیر فعال" + +#, php-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d دن" +msgstr[1] "%d دن" + +msgid "Log Retention Period" +msgstr "لاگ برقراری مدت" + +msgid "None (Disabled)" +msgstr "کوئی نہیں (غیر فعال)" + +msgid "This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant." +msgstr "یہ قدر WPVULNERABILITY_LOG_RETENTION_DAYS کانسٹینٹ کے ذریعے نافذ ہے۔" + +msgid "Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted." +msgstr "اختیار کریں کہ WPVulnerability کو API ردعمل لاگ کتنی دیر تک رکھنے چاہئیں۔ پرانے لاگ خودکار طور پر حذف ہو جاتے ہیں۔" + +msgid "Save Configuration" +msgstr "ترتیب محفوظ کریں" + +msgid "Log retention is currently disabled." +msgstr "لاگ برقراری فی الحال غیر فعال ہے۔" + +msgid "API responses are not being saved." +msgstr "API ردعمل محفوظ نہیں کیے جا رہے۔" + +msgid "Log Details" +msgstr "لاگ تفصیلات" + +msgid "Date" +msgstr "تاریخ" + +msgid "API Endpoint" +msgstr "API اینڈ پوائنٹ" + +msgid "API Response" +msgstr "API ردعمل" + +msgid "Back to Logs" +msgstr "لاگ پر واپس جائیں" + +msgid "No logs available" +msgstr "کوئی لاگ دستیاب نہیں" + +msgid "API response logs will appear here once the vulnerability scanner runs." +msgstr "کمزوری اسکینر چلنے کے بعد یہاں API ردعمل لاگ ظاہر ہوں گے۔" + +msgid "API Response Logs" +msgstr "API ردعمل لاگ" + +msgid "Show:" +msgstr "دکھائیں:" + +msgid "Apply" +msgstr "لاگو کریں" + +#, php-format +msgid "Showing %1$s–%2$s of %3$s" +msgstr "%3$s میں سے %1$s–%2$s دکھایا جا رہا ہے" + +msgid "Actions" +msgstr "اعمال" + +msgid "View" +msgstr "دیکھیں" + +msgid "Danger Zone" +msgstr "خطرناک علاقہ" + +msgid "Permanently delete all API response logs. This action cannot be undone." +msgstr "تمام API ردعمل لاگ مستقل طور پر حذف کریں۔ یہ عمل واپس نہیں ہو سکتا۔" + +msgid "Are you sure you want to delete all logs? This action cannot be undone." +msgstr "کیا آپ تمام لاگ حذف کرنا چاہتے ہیں؟ یہ عمل واپس نہیں ہو سکتا۔" + +msgid "Delete All Logs" +msgstr "تمام لاگ حذف کریں" + +msgid "Reload Data from API" +msgstr "API سے ڈیٹا دوبارہ لوڈ کریں" + +msgid "Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information." +msgstr "اپ ڈیٹ شدہ ڈیٹا حاصل کرنے کے لیے تمام Core، پلگ ان، تھیم اور دیگر اجزاء کی معلومات براہ راست API سے دوبارہ لوڈ کریں۔ یہ کیشے صاف کرے گا اور تازہ کمزوری معلومات لائے گا۔" + +msgid "Reload Data" +msgstr "ڈیٹا دوبارہ لوڈ کریں" + +msgid "Test Email Notifications" +msgstr "آزمائشی ای میل اطلاعات" + +msgid "Send a test email notification with current vulnerability data to verify your email configuration is working correctly." +msgstr "اپنی ای میل ترتیب درست طور پر کام کر رہی ہے یا نہیں تصدیق کرنے کے لیے موجودہ کمزوری ڈیٹا کے ساتھ آزمائشی ای میل اطلاع بھیجیں۔" + +msgid "From address (configured via constant):" +msgstr "بھیجنے والے کا پتہ (کانسٹینٹ کے ذریعے ترتیب دیا گیا):" + +msgid "From address (default):" +msgstr "بھیجنے والے کا پتہ (ڈیفالٹ):" + +msgid "Learn how to customize the email sender address →" +msgstr "ای میل بھیجنے والے کا پتہ کیسے تبدیل کریں →" + +msgid "Send Test Email" +msgstr "آزمائشی ای میل بھیجیں" + +msgid "WP-Cron Status" +msgstr "WP-Cron کی حیثیت" + +msgid "View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly." +msgstr "WP-Cron مقررہ واقعات دیکھیں اور منظم کریں۔ یقینی بنائیں کہ خودکار کام درست طریقے سے چل رہے ہیں۔" + +msgid "No cron data available." +msgstr "کوئی cron ڈیٹا دستیاب نہیں۔" + +msgid "Hook" +msgstr "ہک" + +msgid "Expected" +msgstr "متوقع" + +msgid "Found" +msgstr "ملا" + +msgid "Next Run" +msgstr "اگلا رن" + +msgid "Status" +msgstr "حیثیت" + +msgid "Not expected" +msgstr "متوقع نہیں" + +msgid "None" +msgstr "کوئی نہیں" + +msgid "OK" +msgstr "ٹھیک ہے" + +msgid "⚠️ Unexpected WPVulnerability Events" +msgstr "⚠️ غیر متوقع WPVulnerability واقعات" + +msgid "No interval" +msgstr "کوئی وقفہ نہیں" + +msgid "Next:" +msgstr "اگلا:" + +msgid "Repair Cron Events" +msgstr "Cron واقعات ٹھیک کریں" + +msgid "Uninstall Data" +msgstr "انسٹال ہٹانے کا ڈیٹا" + +msgid "By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall." +msgstr "ڈیفالٹ کے طور پر، WPVulnerability حذف ہونے پر تمام پلگ ان ڈیٹا محفوظ رہتا ہے۔ نیچے دیا گیا اختیار صرف تبھی فعال کریں جب آپ انسٹال ہٹانے پر تمام اختیارات، لاگ اور کیشے ڈیٹا مستقل طور پر ہٹانا چاہتے ہوں۔" + +msgid "Delete all plugin data on uninstall" +msgstr "انسٹال ہٹانے پر تمام پلگ ان ڈیٹا حذف کریں" + +msgid "Default: unchecked (data preserved). Check only if you want a clean removal." +msgstr "ڈیفالٹ: غیر نشان زد (ڈیٹا محفوظ)۔ صرف تبھی نشان لگائیں جب صاف ہٹانا چاہتے ہوں۔" + +msgid "Save preference" +msgstr "ترجیح محفوظ کریں" + +msgid "Reset WPVulnerability" +msgstr "WPVulnerability ری سیٹ کریں" + +msgid "Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API." +msgstr "تمام WPVulnerability ترتیبات، کیشے ڈیٹا، لاگ اور مقررہ واقعات حذف کریں، پھر ڈیفالٹ بحال کریں اور API سے ڈیٹا دوبارہ لوڈ کریں۔" + +msgid "This action cannot be undone." +msgstr "یہ عمل واپس نہیں ہو سکتا۔" + +msgid "Are you sure you want to reset all WPVulnerability data? This action cannot be undone." +msgstr "کیا آپ تمام WPVulnerability ڈیٹا ری سیٹ کرنا چاہتے ہیں؟ یہ عمل واپس نہیں ہو سکتا۔" + +msgid "Reset Plugin" +msgstr "پلگ ان ری سیٹ کریں" + +msgid "Vulnerability Database Statistics" +msgstr "کمزوری ڈیٹا بیس اعداد و شمار" + +#, php-format +msgid "%s vulnerability" +msgid_plural "%s vulnerabilities" +msgstr[0] "%s کمزوری" +msgstr[1] "%s کمزوریاں" + +#, php-format +msgid "(%s product)" +msgid_plural "(%s products)" +msgstr[0] "(%s مصنوع)" +msgstr[1] "(%s مصنوعات)" + +msgid "No data" +msgstr "کوئی ڈیٹا نہیں" + +#, php-format +msgid "Database last updated: %s" +msgstr "ڈیٹا بیس آخری بار اپ ڈیٹ: %s" + +msgid "Intelligence Sources" +msgstr "معلوماتی ذرائع" + +msgid "Number of vulnerabilities contributed by each intelligence source." +msgstr "ہر معلوماتی ذریعے کی طرف سے شامل کمزوریوں کی تعداد۔" + +msgid "Source" +msgstr "ذریعہ" + +msgid "Core" +msgstr "Core" + +msgid "Sponsors" +msgstr "سرپرست" + +msgid "No sponsor data available." +msgstr "کوئی سرپرست ڈیٹا دستیاب نہیں۔" + +msgid "Contributors" +msgstr "حصہ ڈالنے والے" + +msgid "No contributor data available." +msgstr "کوئی حصہ ڈالنے والے کا ڈیٹا دستیاب نہیں۔" + +msgid "You do not have sufficient permissions to access this page." +msgstr "اس صفحے تک رسائی کے لیے آپ کے پاس کافی اجازتیں نہیں ہیں۔" + +msgid "WPVulnerability settings" +msgstr "WPVulnerability ترتیبات" + +msgid "Configure and save these settings to receive notifications." +msgstr "اطلاعات وصول کرنے کے لیے یہ ترتیبات ترتیب دیں اور محفوظ کریں۔" + +msgid "Configure and save these settings to hide vulnerabilities." +msgstr "کمزوریاں چھپانے کے لیے یہ ترتیبات ترتیب دیں اور محفوظ کریں۔" + +msgid "Default administrator email" +msgstr "ڈیفالٹ منتظم ای میل" + +msgid "Read more if you want to force the cache time." +msgstr "اگر آپ کیشے وقت زبردستی مقرر کرنا چاہتے ہیں تو مزید پڑھیں۔" + +msgid "Never" +msgstr "کبھی نہیں" + +msgid "Daily" +msgstr "روزانہ" + +msgid "Weekly" +msgstr "ہفتہ وار" + +msgid "Day" +msgstr "دن" + +msgid "Hour" +msgstr "گھنٹہ" + +msgid "Minute" +msgstr "منٹ" + +msgid "Read more about how to force the deactivation of an item." +msgstr "کسی آئٹم کو زبردستی غیر فعال کرنے کے بارے میں مزید پڑھیں۔" + +msgid "Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com" +msgstr "غلط Slack webhook URL۔ hooks.slack.com سے ایک درست HTTPS URL ہونا چاہیے۔" + +msgid "Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com" +msgstr "غلط Microsoft Teams webhook URL۔ office.com، office365.com یا api.hooks.microsoft.com سے ایک درست HTTPS URL ہونا چاہیے۔" + +msgid "Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com" +msgstr "غلط Discord webhook URL۔ discord.com یا discordapp.com سے ایک درست HTTPS URL ہونا چاہیے۔" + +msgid "Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "غلط Telegram bot token شکل۔ اس طرح ہونا چاہیے: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +msgid "All Clear" +msgstr "سب صاف" + +#, php-format +msgid "%d Critical Issue Found" +msgid_plural "%d Critical Issues Found" +msgstr[0] "%d اہم مسئلہ ملا" +msgstr[1] "%d اہم مسائل ملے" + +#, php-format +msgid "%d Issue Found" +msgid_plural "%d Issues Found" +msgstr[0] "%d مسئلہ ملا" +msgstr[1] "%d مسائل ملے" + +msgid "Never checked" +msgstr "کبھی جانچا نہیں گیا" + +#, php-format +msgid "%d minute ago" +msgid_plural "%d minutes ago" +msgstr[0] "%d منٹ پہلے" +msgstr[1] "%d منٹ پہلے" + +#, php-format +msgid "%d hour ago" +msgid_plural "%d hours ago" +msgstr[0] "%d گھنٹہ پہلے" +msgstr[1] "%d گھنٹے پہلے" + +#, php-format +msgid "Last checked: %s" +msgstr "آخری جانچ: %s" + +msgid "Refresh Now" +msgstr "ابھی تازہ کریں" + +msgid "No vulnerabilities detected" +msgstr "کوئی کمزوری نہیں ملی" + +msgid "Your site is up to date and secure" +msgstr "آپ کی سائٹ تازہ ترین اور محفوظ ہے" + +msgid "Server Software" +msgstr "سرور سافٹ ویئر" + +msgid "Site Health" +msgstr "سائٹ کی صحت" + +msgid "Settings" +msgstr "ترتیبات" + +msgid "WPVulnerability Status" +msgstr "WPVulnerability حیثیت" + +msgid "Receive vulnerability notifications" +msgstr "کمزوری کی اطلاعات وصول کریں" + +msgid "Cache expiration time" +msgstr "کیشے میعاد ختم ہونے کا وقت" + +msgid "How often you want to receive notifications" +msgstr "آپ کتنی بار اطلاعات وصول کرنا چاہتے ہیں" + +msgid "Where do you want to receive notifications?" +msgstr "آپ اطلاعات کہاں وصول کرنا چاہتے ہیں؟" + +msgid "Email addresses to notify (separated by commas)" +msgstr "مطلع کرنے کے لیے ای میل پتے (کوما سے الگ کریں)" + +msgid "Slack webhook URL" +msgstr "Slack webhook URL" + +msgid "Teams webhook URL" +msgstr "Teams webhook URL" + +msgid "Vulnerabilities to hide" +msgstr "چھپانے کے لیے کمزوریاں" + +msgid "What do you want to hide?" +msgstr "آپ کیا چھپانا چاہتے ہیں؟" + +msgid "Standard (Hybrid Detection)" +msgstr "معیاری (ہائبرڈ شناخت)" + +msgid "Strict (Extensions Only)" +msgstr "سخت (صرف ایکسٹینشن)" + +msgid "Disabled (No Detection)" +msgstr "غیر فعال (کوئی شناخت نہیں)" + +msgid "Security Status" +msgstr "سلامتی کی حیثیت" + +msgid "Security Mode" +msgstr "سلامتی موڈ" + +msgid "Shell Execution" +msgstr "Shell عمل" + +msgid "Enabled" +msgstr "فعال" + +msgid "Audit Logging" +msgstr "آڈٹ لاگنگ" + +#, php-format +msgid "Enabled (%d days)" +msgstr "فعال (%d دن)" + +msgid "Total Log Entries" +msgstr "کل لاگ اندراجات" + +msgid "Last Shell Execution" +msgstr "آخری Shell عمل" + +#, php-format +msgid "%s ago" +msgstr "%s پہلے" + +msgid "Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST." +msgstr "wp-config.php کانسٹینٹس کے ذریعے سلامتی ترتیبات ترتیب دیں: WPVULNERABILITY_DISABLE_SHELL_EXEC، WPVULNERABILITY_SECURITY_MODE، WPVULNERABILITY_SHELL_EXEC_WHITELIST۔" + +#, php-format +msgid "See security configuration documentation for details." +msgstr "تفصیلات کے لیے سلامتی ترتیب دستاویزات دیکھیں۔" + +msgid "Memcached" +msgstr "Memcached" + +msgid "Imagick Extension" +msgstr "Imagick ایکسٹینشن" + +msgid "Redis Extension" +msgstr "Redis ایکسٹینشن" + +msgid "Memcached Extension" +msgstr "Memcached ایکسٹینشن" + +msgid "Memcache Extension" +msgstr "Memcache ایکسٹینشن" + +msgid "SQLite3 Extension" +msgstr "SQLite3 ایکسٹینشن" + +msgid "PDO SQLite" +msgstr "PDO SQLite" + +msgid "Shell Command" +msgstr "Shell کمانڈ" + +msgid "Binary Check" +msgstr "بائنری جانچ" + +msgid "Not Detected" +msgstr "شناخت نہیں ہوا" + +msgid "Software Detection Methods" +msgstr "سافٹ ویئر شناخت کے طریقے" + +msgid "Shows which detection method was used for each software component and the reliability score." +msgstr "دکھاتا ہے کہ ہر سافٹ ویئر جزو کے لیے کون سا شناخت طریقہ استعمال ہوا اور اعتماد کا اسکور کیا ہے۔" + +msgid "Component" +msgstr "جزو" + +msgid "Version" +msgstr "نسخہ" + +msgid "Detection Method" +msgstr "شناخت طریقہ" + +msgid "Reliability" +msgstr "اعتماد" + +msgid "Not detected" +msgstr "شناخت نہیں ہوا" + +msgid "Shell Execution Audit Logs" +msgstr "Shell عمل آڈٹ لاگ" + +msgid "Complete audit trail of shell command executions for security monitoring." +msgstr "سلامتی نگرانی کے لیے shell کمانڈ اعمال کا مکمل آڈٹ سراغ۔" + +msgid "No shell execution logs found." +msgstr "کوئی shell عمل لاگ نہیں ملی۔" + +msgid "Logs will appear here when shell commands are executed for software detection." +msgstr "سافٹ ویئر شناخت کے لیے shell کمانڈ چلانے پر یہاں لاگ ظاہر ہوں گے۔" + +msgid "Time" +msgstr "وقت" + +msgid "Command" +msgstr "کمانڈ" + +msgid "User" +msgstr "صارف" + +msgid "Output" +msgstr "نتیجہ" + +#, php-format +msgid "Showing the %d most recent log entries." +msgstr "سب سے حالیہ %d لاگ اندراجات دکھائی جا رہی ہیں۔" + +msgid "Invalid nonce." +msgstr "غلط nonce۔" + +msgid "Insufficient permissions." +msgstr "ناکافی اجازتیں۔" + +msgid "No component specified." +msgstr "کوئی جزو متعین نہیں کیا گیا۔" + +msgid "Debug Information" +msgstr "ڈیبگ معلومات" + +msgid "This tab is only visible when WP_DEBUG is enabled. Use with caution." +msgstr "یہ ٹیب صرف اس وقت نظر آتا ہے جب WP_DEBUG فعال ہو۔ احتیاط سے استعمال کریں۔" + +msgid "System Information" +msgstr "نظام معلومات" + +msgid "WordPress Version" +msgstr "WordPress نسخہ" + +msgid "Multisite" +msgstr "ملٹی سائٹ" + +msgid "Yes" +msgstr "ہاں" + +msgid "No" +msgstr "نہیں" + +msgid "Language" +msgstr "زبان" + +msgid "PHP Version" +msgstr "PHP نسخہ" + +msgid "PHP Extensions" +msgstr "PHP ایکسٹینشنز" + +msgid "PHP Memory Limit" +msgstr "PHP میموری حد" + +msgid "Database" +msgstr "ڈیٹا بیس" + +msgid "Web Server" +msgstr "ویب سرور" + +msgid "WP_DEBUG" +msgstr "WP_DEBUG" + +msgid "WP_DEBUG_LOG" +msgstr "WP_DEBUG_LOG" + +msgid "Path:" +msgstr "راستہ:" + +#, php-format +msgid "Size: %s" +msgstr "حجم: %s" + +msgid "View Log File" +msgstr "لاگ فائل دیکھیں" + +msgid "Log file is not web-accessible (outside wp-content)" +msgstr "لاگ فائل ویب سے قابل رسائی نہیں ہے (wp-content سے باہر)" + +msgid "Log file does not exist yet" +msgstr "لاگ فائل ابھی موجود نہیں ہے" + +msgid "Plugin Version" +msgstr "پلگ ان نسخہ" + +msgid "Component Detection" +msgstr "جزو شناخت" + +msgid "Version Detected" +msgstr "نسخہ شناخت ہوا" + +msgid "Analyzed" +msgstr "تجزیہ شدہ" + +msgid "Cache Status" +msgstr "کیشے حیثیت" + +msgid "Configuration Summary" +msgstr "ترتیب خلاصہ" + +msgid "Cache Duration" +msgstr "کیشے مدت" + +msgid "Log Retention" +msgstr "لاگ برقراری" + +msgid "Components Analyzed" +msgstr "تجزیہ شدہ اجزاء" + +msgid "Notification Email" +msgstr "اطلاع ای میل" + +msgid "Slack Webhook" +msgstr "Slack Webhook" + +msgid "Configured & Enabled" +msgstr "ترتیب دیا گیا اور فعال" + +msgid "Configured (Disabled)" +msgstr "ترتیب دیا گیا (غیر فعال)" + +msgid "Not configured" +msgstr "ترتیب نہیں دیا گیا" + +msgid "Teams Webhook" +msgstr "Teams Webhook" + +msgid "Discord Webhook" +msgstr "Discord Webhook" + +msgid "Telegram Bot" +msgstr "Telegram Bot" + +msgid "Cron Status" +msgstr "Cron حیثیت" + +msgid "Update Database" +msgstr "ڈیٹا بیس اپ ڈیٹ کریں" + +#, php-format +msgid "Next run: %s" +msgstr "اگلا رن: %s" + +msgid "Not scheduled" +msgstr "مقرر نہیں" + +msgid "Send Notification" +msgstr "اطلاع بھیجیں" + +msgid "Run Update Now" +msgstr "ابھی اپ ڈیٹ چلائیں" + +msgid "Run Notification Now" +msgstr "ابھی اطلاع بھیجیں" + +msgid "You do not have permission to run these actions." +msgstr "آپ کو یہ اعمال چلانے کی اجازت نہیں ہے۔" + +msgid "API Testing" +msgstr "API آزمائش" + +msgid "Test API connectivity for each component. Click a button to send a test request." +msgstr "ہر جزو کے لیے API رابطہ آزمائیں۔ آزمائشی درخواست بھیجنے کے لیے بٹن دبائیں۔" + +#, php-format +msgid "Test %s" +msgstr "%s آزمائش" + +msgid "Testing..." +msgstr "آزمائش ہو رہی ہے..." + +msgid "HTTP Code:" +msgstr "HTTP کوڈ:" + +msgid "Response Time:" +msgstr "ردعمل وقت:" + +msgid "Response Preview" +msgstr "ردعمل پیش نظارہ" + +msgid "Test" +msgstr "آزمائش" + +msgid "Error:" +msgstr "غلطی:" + +msgid "AJAX request failed." +msgstr "AJAX درخواست ناکام رہی۔" + +msgid "You do not have permission to test API connectivity." +msgstr "آپ کو API رابطہ آزمانے کی اجازت نہیں ہے۔" + +msgid "Database Options Viewer" +msgstr "ڈیٹا بیس اختیارات دیکھنے والا" + +msgid "View the raw data stored in WordPress options." +msgstr "WordPress اختیارات میں محفوظ خام ڈیٹا دیکھیں۔" + +msgid "Select an option..." +msgstr "ایک اختیار منتخب کریں..." + +msgid "Option not found or empty." +msgstr "اختیار نہیں ملا یا خالی ہے۔" + +msgid "Quick Actions" +msgstr "فوری اعمال" + +msgid "Perform debugging actions. Use with caution." +msgstr "ڈیبگنگ اعمال انجام دیں۔ احتیاط سے استعمال کریں۔" + +msgid "Are you sure you want to clear all caches?" +msgstr "کیا آپ تمام کیشے صاف کرنا چاہتے ہیں؟" + +msgid "Clear All Caches" +msgstr "تمام کیشے صاف کریں" + +msgid "Are you sure you want to reset signatures?" +msgstr "کیا آپ دستخط ری سیٹ کرنا چاہتے ہیں؟" + +msgid "Reset Signatures" +msgstr "دستخط ری سیٹ کریں" + +msgid "Export Debug Info" +msgstr "ڈیبگ معلومات برآمد کریں" + +msgid "You do not have permission to perform these actions." +msgstr "آپ کو یہ اعمال انجام دینے کی اجازت نہیں ہے۔" + +msgid "Settings saved." +msgstr "ترتیبات محفوظ ہو گئی ہیں۔" + +msgid "WPVulnerability cron events have been repaired across the network." +msgstr "نیٹ ورک میں WPVulnerability cron واقعات ٹھیک کر دیے گئے ہیں۔" + +msgid "You do not have permission to access this page." +msgstr "اس صفحے تک رسائی کی آپ کو اجازت نہیں ہے۔" + +#, php-format +msgid "WordPress %1$s has a known vulnerability that may be affecting your installed version." +msgstr "WordPress %1$s میں ایک معلوم کمزوری ہے جو آپ کے انسٹال شدہ نسخے کو متاثر کر سکتی ہے۔" + +msgid "Actively exploited" +msgstr "فعال طور پر استحصال شدہ" + +msgid "Public exploit" +msgstr "عوامی استحصال" + +msgid "Automatable" +msgstr "خودکار" + +msgid "References:" +msgstr "حوالہ جات:" + +msgid "Invalid component specified." +msgstr "غلط جزو متعین کیا گیا۔" + +msgid "Version not detected for this component." +msgstr "اس جزو کے لیے نسخہ شناخت نہیں ہوا۔" + +msgid "API request successful." +msgstr "API درخواست کامیاب رہی۔" + +#, php-format +msgid "API returned HTTP code %d." +msgstr "API نے HTTP کوڈ %d واپس کیا۔" + +msgid "WPVulnerability Logs" +msgstr "WPVulnerability لاگ" + +msgid "WPVulnerability Log" +msgstr "WPVulnerability لاگ" + +msgid "Low" +msgstr "کم" + +msgid "Medium" +msgstr "درمیانہ" + +msgid "High" +msgstr "زیادہ" + +msgid "Critical" +msgstr "اہم" + +msgid "WPVulnerability Shell Logs" +msgstr "WPVulnerability Shell لاگ" + +msgid "WPVulnerability Shell Log" +msgstr "WPVulnerability Shell لاگ" + +msgid "Every week" +msgstr "ہر ہفتہ" + +msgid "Every day" +msgstr "ہر روز" + +msgid "Invalid request." +msgstr "غلط درخواست۔" + +msgid "You have unsubscribed from WPVulnerability notifications." +msgstr "آپ نے WPVulnerability اطلاعات سے اشتراک ختم کر لیا ہے۔" + +#, php-format +msgid "Learn more about the WordPress Vulnerability Database API at %2$s" +msgstr "WordPress Vulnerability Database API کے بارے میں %2$s پر مزید جانیں" + +#, php-format +msgid "Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings." +msgstr "کیا آپ یہ اطلاعات وصول کرنا بند کرنا چاہتے ہیں؟ اشتراک ختم کریں یا WPVulnerability ترتیبات میں ای میل تعدد کو کبھی نہیں میں تبدیل کریں۔" + +msgid "No vulnerabilities found" +msgstr "کوئی کمزوری نہیں ملی" + +msgid "This is likely a test. The site does not have vulnerabilities." +msgstr "یہ شاید ایک آزمائش ہے۔ سائٹ میں کوئی کمزوری نہیں ہے۔" + +msgid "Core vulnerabilities" +msgstr "بنیادی کمزوریاں" + +msgid "Plugins vulnerabilities" +msgstr "پلگ ان کمزوریاں" + +msgid "Themes vulnerabilities" +msgstr "تھیم کمزوریاں" + +msgid "PHP vulnerabilities" +msgstr "PHP کمزوریاں" + +msgid "Apache HTTPD vulnerabilities" +msgstr "Apache HTTPD کمزوریاں" + +msgid "Nginx vulnerabilities" +msgstr "Nginx کمزوریاں" + +msgid "MariaDB vulnerabilities" +msgstr "MariaDB کمزوریاں" + +msgid "MySQL vulnerabilities" +msgstr "MySQL کمزوریاں" + +msgid "ImageMagick vulnerabilities" +msgstr "ImageMagick کمزوریاں" + +msgid "curl vulnerabilities" +msgstr "curl کمزوریاں" + +msgid "memcached vulnerabilities" +msgstr "memcached کمزوریاں" + +msgid "Redis vulnerabilities" +msgstr "Redis کمزوریاں" + +msgid "SQLite vulnerabilities" +msgstr "SQLite کمزوریاں" + +#, php-format +msgid "Vulnerability found: %s" +msgstr "کمزوری ملی: %s" + +msgid "Vulnerability found" +msgstr "کمزوری ملی" + +#, php-format +msgid "%1$s has a known vulnerability that may be affecting your installed version." +msgstr "%1$s میں ایک معلوم کمزوری ہے جو آپ کے انسٹال شدہ نسخے کو متاثر کر سکتی ہے۔" + +msgid "This plugin is closed. Please replace it with another." +msgstr "یہ پلگ ان بند ہے۔ براہ کرم اسے کسی دوسرے سے بدلیں۔" + +msgid "This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates." +msgstr "یہ کمزوری غیر پیوند شدہ لگتی ہے۔ آنے والے پلگ ان اپ ڈیٹس کا انتظار کریں۔" + +msgid "It hasn't been updated in over a year." +msgstr "اسے ایک سال سے زیادہ عرصے سے اپ ڈیٹ نہیں کیا گیا۔" + +msgid "It may no longer be available (closed?)." +msgstr "یہ اب دستیاب نہ ہو (بند؟)۔" + +msgid "Last updated on" +msgstr "آخری بار اپ ڈیٹ" + +#, php-format +msgid "Vulnerabilities (%d)" +msgstr "کمزوریاں (%d)" + +#, php-format +msgid "%s running" +msgstr "%s چل رہا ہے" + +msgid "End of Life" +msgstr "زندگی کا اختتام" + +msgid "End of life:" +msgstr "زندگی کا اختتام:" + +msgid "Supported" +msgstr "تعاون یافتہ" + +msgid "Plugin" +msgstr "پلگ ان" + +msgid "Theme" +msgstr "تھیم" + +#, php-format +msgid "End of life: %s" +msgstr "زندگی کا اختتام: %s" + +msgid "EOL" +msgstr "EOL" + +msgid "Network Settings" +msgstr "نیٹ ورک ترتیبات" + +msgid "Vulnerabilities" +msgstr "کمزوریاں" + +msgid "Every 6 hours" +msgstr "ہر ۶ گھنٹے" + +msgid "Database updates" +msgstr "ڈیٹا بیس اپ ڈیٹس" + +msgid "Log cleanup" +msgstr "لاگ صفائی" + +msgid "Notifications are scheduled, but settings currently disable them. Please review the notifications tab." +msgstr "اطلاعات مقرر ہیں، لیکن ترتیبات فی الحال انہیں غیر فعال کرتی ہیں۔ براہ کرم اطلاعات ٹیب کا جائزہ لیں۔" + +msgid "This event should not be scheduled for this site." +msgstr "یہ واقعہ اس سائٹ کے لیے مقرر نہیں ہونا چاہیے۔" + +msgid "Not expected for this site." +msgstr "اس سائٹ کے لیے متوقع نہیں۔" + +msgid "No instances found." +msgstr "کوئی نمونہ نہیں ملا۔" + +msgid "Scheduled with an unexpected interval." +msgstr "غیر متوقع وقفے کے ساتھ مقرر کیا گیا۔" + +msgid "Multiple instances detected." +msgstr "متعدد نمونے شناخت ہوئے۔" + +msgid "Scheduled as expected." +msgstr "توقع کے مطابق مقرر کیا گیا۔" + +msgid "There aren't plugins vulnerabilities" +msgstr "پلگ ان میں کوئی کمزوری نہیں ہے" + +msgid "Shows possible vulnerabilities that exist in installed plugins." +msgstr "انسٹال کیے گئے پلگ ان میں موجود ممکنہ کمزوریاں دکھاتا ہے۔" + +#, php-format +msgid "There is %d plugin with vulnerabilities" +msgid_plural "There are %d plugins with vulnerabilities" +msgstr[0] "%d پلگ ان میں کمزوری ہے" +msgstr[1] "%d پلگ ان میں کمزوریاں ہیں" + +msgid "We've detected potential vulnerabilities in installed plugins. Please check them and keep them updated." +msgstr "ہم نے انسٹال کیے گئے پلگ ان میں ممکنہ کمزوریاں پائی ہیں۔ براہ کرم انہیں جانچیں اور اپ ڈیٹ رکھیں۔" + +msgid "Update plugins" +msgstr "پلگ ان اپ ڈیٹ کریں" + +msgid "There aren't themes vulnerabilities" +msgstr "تھیم میں کوئی کمزوری نہیں ہے" + +msgid "Shows possible vulnerabilities that exist in installed themes." +msgstr "انسٹال کیے گئے تھیم میں موجود ممکنہ کمزوریاں دکھاتا ہے۔" + +#, php-format +msgid "There is %d theme with vulnerabilities" +msgid_plural "There are %d themes with vulnerabilities" +msgstr[0] "%d تھیم میں کمزوری ہے" +msgstr[1] "%d تھیم میں کمزوریاں ہیں" + +msgid "We've detected potential vulnerabilities in installed themes. Please check them and keep them updated." +msgstr "ہم نے انسٹال کیے گئے تھیم میں ممکنہ کمزوریاں پائی ہیں۔ براہ کرم انہیں جانچیں اور اپ ڈیٹ رکھیں۔" + +msgid "Update themes" +msgstr "تھیم اپ ڈیٹ کریں" + +msgid "There aren't WordPress vulnerabilities" +msgstr "WordPress میں کوئی کمزوری نہیں ہے" + +msgid "Shows possible vulnerabilities existing in the WordPress core." +msgstr "WordPress core میں موجود ممکنہ کمزوریاں دکھاتا ہے۔" + +#, php-format +msgid "There is %d core vulnerability" +msgid_plural "There are %d core vulnerabilities" +msgstr[0] "%d بنیادی کمزوری ہے" +msgstr[1] "%d بنیادی کمزوریاں ہیں" + +msgid "We've detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated." +msgstr "ہم نے اس WordPress تنصیب میں ممکنہ کمزوریاں پائی ہیں۔ براہ کرم انہیں جانچیں اور اپنی تنصیب اپ ڈیٹ رکھیں۔" + +msgid "Update WordPress" +msgstr "WordPress اپ ڈیٹ کریں" + +msgid "Nginx" +msgstr "Nginx" + +msgid "Invalid software type" +msgstr "غلط سافٹ ویئر قسم" + +msgid "Error" +msgstr "غلطی" + +msgid "The specified software type is not valid." +msgstr "متعین سافٹ ویئر قسم درست نہیں ہے۔" + +#, php-format +msgid "There aren't %s vulnerabilities" +msgstr "%s میں کوئی کمزوری نہیں ہے" + +#, php-format +msgid "Shows possible vulnerabilities existing in %s." +msgstr "%s میں موجود ممکنہ کمزوریاں دکھاتا ہے۔" + +#, php-format +msgid "There is %1$d %2$s vulnerability" +msgid_plural "There are %1$d %2$s vulnerabilities" +msgstr[0] "%2$s میں %1$d کمزوری ہے" +msgstr[1] "%2$s میں %1$d کمزوریاں ہیں" + +#, php-format +msgid "We've detected potential vulnerabilities in %s. Please check them and keep your installation updated." +msgstr "ہم نے %s میں ممکنہ کمزوریاں پائی ہیں۔ براہ کرم انہیں جانچیں اور اپنی تنصیب اپ ڈیٹ رکھیں۔" + +msgid "How to update PHP" +msgstr "PHP کیسے اپ ڈیٹ کریں" + +msgid "WPVulnerability Core" +msgstr "WPVulnerability Core" + +msgid "WPVulnerability Themes" +msgstr "WPVulnerability Themes" + +msgid "WPVulnerability Plugins" +msgstr "WPVulnerability Plugins" + +msgid "WPVulnerability PHP" +msgstr "WPVulnerability PHP" + +msgid "WPVulnerability Apache HTTPD" +msgstr "WPVulnerability Apache HTTPD" + +msgid "WPVulnerability Nginx" +msgstr "WPVulnerability Nginx" + +msgid "WPVulnerability MariaDB" +msgstr "WPVulnerability MariaDB" + +msgid "WPVulnerability MySQL" +msgstr "WPVulnerability MySQL" + +msgid "WPVulnerability ImageMagick" +msgstr "WPVulnerability ImageMagick" + +msgid "WPVulnerability curl" +msgstr "WPVulnerability curl" + +msgid "WPVulnerability memcached" +msgstr "WPVulnerability memcached" + +msgid "WPVulnerability redis" +msgstr "WPVulnerability redis" + +msgid "WPVulnerability sqlite" +msgstr "WPVulnerability sqlite" + +msgid "This theme is closed. Please replace it with another." +msgstr "یہ تھیم بند ہے۔ براہ کرم اسے کسی دوسرے سے بدلیں۔" + +msgid "This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates." +msgstr "یہ کمزوری غیر پیوند شدہ لگتی ہے۔ آنے والے تھیم اپ ڈیٹس کا انتظار کریں۔" + +msgid "This theme has known vulnerabilities that may be affecting your installed version." +msgstr "اس تھیم میں معلوم کمزوریاں ہیں جو آپ کے انسٹال شدہ نسخے کو متاثر کر سکتی ہیں۔" diff --git a/languages/wpvulnerability-zh-tw.l10n.php b/languages/wpvulnerability-zh-tw.l10n.php new file mode 100644 index 0000000..8ab9129 --- /dev/null +++ b/languages/wpvulnerability-zh-tw.l10n.php @@ -0,0 +1,2 @@ +NULL,'plural-forms'=>'nplurals=1; plural=0;','language'=>'zh_TW','project-id-version'=>'Plugins - WPVulnerability - Development (trunk)','pot-creation-date'=>'2026-05-27T16:32:22+00:00','po-revision-date'=>'2025-12-09 21:50:02+0000','x-generator'=>'GlotPress/4.0.3','messages'=>['WPVulnerability'=>'WPVulnerability','https://www.wpvulnerability.com/plugin/'=>'https://www.wpvulnerability.com/plugin/','Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API.'=>'從 WordPress Vulnerability Database API 接收 WordPress 網站可能存在的漏洞資訊。','ROBOTSTXT'=>'ROBOTSTXT','https://www.robotstxt.es/'=>'https://www.robotstxt.es/','This command requires a WordPress administrator. Run with --user=.'=>'此指令需要 WordPress 網站管理員身份。請以 --user= 執行。','No core vulnerabilities found.'=>'未發現核心程式漏洞。','No plugin vulnerabilities found.'=>'未發現外掛漏洞。','No theme vulnerabilities found.'=>'未發現佈景主題漏洞。','No %s vulnerabilities found.'=>'未發現 %s 漏洞。','Data from source has been reloaded.'=>'來源資料已重新載入。','You do not have permission to reload data.'=>'您沒有重新載入資料的權限。','Test email has been sent.'=>'測試用電子郵件已傳送。','Test email has failed. Please, check your email settings.'=>'測試用電子郵件傳送失敗。請檢查電子郵件設定。','You do not have permission to send test emails.'=>'您沒有傳送測試電子郵件的權限。','WPVulnerability cron events have been repaired.'=>'WPVulnerability cron 事件已修復。','You do not have permission to repair cron events.'=>'您沒有修復 cron 事件的權限。','All logs have been deleted.'=>'所有記錄已刪除。','You do not have permission to delete logs.'=>'您沒有刪除記錄的權限。','Uninstall preference saved.'=>'解除安裝偏好設定已儲存。','WPVulnerability has been reset to defaults and reloaded.'=>'WPVulnerability 已重設為預設值並重新載入。','You do not have permission to reset WPVulnerability.'=>'您沒有重設 WPVulnerability 的權限。','All caches have been cleared.'=>'所有快取已清除。','You do not have permission to clear caches.'=>'您沒有清除快取的權限。','Plugin and theme signatures have been reset.'=>'外掛和佈景主題的簽名已重設。','You do not have permission to reset signatures.'=>'您沒有重設簽名的權限。','You do not have permission to export debug information.'=>'您沒有匯出除錯資訊的權限。','Database update has been executed.'=>'資料庫更新已執行。','You do not have permission to run database updates.'=>'您沒有執行資料庫更新的權限。','Notification has been sent.'=>'通知已傳送。','Notification sending failed.'=>'通知傳送失敗。','You do not have permission to send notifications.'=>'您沒有傳送通知的權限。','Notifications'=>'通知','Analysis'=>'分析','Logs'=>'記錄','Security'=>'安全性','Tools'=>'工具','Debug'=>'除錯','About'=>'關於','Notification Settings'=>'通知設定','Configure how and when you want to receive vulnerability notifications.'=>'設定接收漏洞通知的方式和時間。','Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software.'=>'隨時掌握 WordPress 安裝、外掛、佈景主題及伺服器軟體的安全漏洞資訊。','Cache Expiration Time'=>'快取到期時間','FORCED'=>'強制','How long to cache vulnerability data before refreshing from the API.'=>'在從 API 重新整理之前,快取漏洞資料的時間長度。','%d hour'=>'%d 小時','You can force the cache time via wp-config.php constant. Learn more →'=>'您可以透過 wp-config.php 常數強制設定快取時間。了解更多 →','Notification Frequency'=>'通知頻率','Choose how often you want to receive vulnerability notifications.'=>'選擇接收漏洞通知的頻率。','Never - Disable automatic notifications'=>'永不 — 停用自動通知','Daily - Receive notifications every day'=>'每日 — 每天接收通知','Weekly - Receive notifications once a week'=>'每週 — 每週接收一次通知','Day:'=>'星期:','Monday'=>'星期一','Tuesday'=>'星期二','Wednesday'=>'星期三','Thursday'=>'星期四','Friday'=>'星期五','Saturday'=>'星期六','Sunday'=>'星期日','Time:'=>'時間:','(24-hour format, server timezone)'=>'(24 小時制,伺服器時區)','Notification Channels'=>'通知管道','Select where you want to receive notifications.'=>'選擇接收通知的管道。','Email'=>'電子郵件','Email Addresses (separated by commas):'=>'電子郵件地址(以逗號分隔):','Default:'=>'預設:','Slack'=>'Slack','Slack Webhook URL:'=>'Slack Webhook 網址:','Learn how to create a Slack incoming webhook →'=>'了解如何建立 Slack 傳入 webhook →','Microsoft Teams'=>'Microsoft Teams','Teams Webhook URL:'=>'Teams Webhook 網址:','Learn how to create a Teams incoming webhook →'=>'了解如何建立 Teams 傳入 webhook →','Discord'=>'Discord','Discord Webhook URL:'=>'Discord Webhook 網址:','Learn how to create a Discord webhook →'=>'了解如何建立 Discord webhook →','Telegram'=>'Telegram','Telegram Bot Token:'=>'Telegram 機器人權杖:','Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'格式:123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','Telegram Chat ID:'=>'Telegram 聊天 ID:','Learn how to create a Telegram bot and get Chat ID →'=>'了解如何建立 Telegram 機器人並取得聊天 ID →','Save Notification Settings'=>'儲存通知設定','WordPress Components'=>'WordPress 元件','WordPress Core'=>'WordPress 核心程式','Plugins'=>'外掛','Themes'=>'佈景主題','Software & Languages'=>'軟體與程式語言','PHP'=>'PHP','Web Servers'=>'網頁伺服器','Apache HTTPD'=>'Apache HTTPD','nginx'=>'NGINX','Databases'=>'資料庫','MariaDB'=>'MariaDB','MySQL'=>'MySQL','SQLite'=>'SQLite','Additional Tools'=>'其他工具','ImageMagick'=>'ImageMagick','curl'=>'curl','memcached'=>'Memcached','Redis'=>'Redis','Component Analysis Settings'=>'元件分析設定','Enable or disable vulnerability analysis for specific components.'=>'啟用或停用特定元件的漏洞分析。','Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red.'=>'勾選要從漏洞掃描和報告中隱藏的元件。未勾選的元件將被積極分析。啟用分析的元件以綠色顯示,隱藏的元件以紅色顯示。','Hidden (forced by constant)'=>'已隱藏(由常數強制)','🔴 Analysis disabled'=>'🔴 分析已停用','🟢 Analysis active'=>'🟢 分析進行中','Tip:'=>'提示:','You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →'=>'您可以透過 wp-config.php 常數強制停用元件。進一步了解強制隱藏檢查 →','Save Analysis Settings'=>'儲存分析設定','« Previous'=>'« 上一頁','Next »'=>'下一頁 »','Log entry not found or has been removed.'=>'找不到條件相符的記錄項目或已移除。','Unable to load the requested log entry.'=>'無法載入要求的記錄項目。','Log Configuration'=>'記錄設定','Total Logs'=>'記錄總數','Retention Period'=>'保留期間','Disabled'=>'已停用','%d day'=>'%d 天','Log Retention Period'=>'記錄保留期間','None (Disabled)'=>'無(已停用)','This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant.'=>'這項設定會由 WPVULNERABILITY_LOG_RETENTION_DAYS 常數強制執行。','Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted.'=>'選擇 WPVulnerability 保留 API 回應記錄的時間長度。較舊的記錄將自動刪除。','Save Configuration'=>'儲存設定','Log retention is currently disabled.'=>'記錄保留目前已停用。','API responses are not being saved.'=>'API 回應目前未被儲存。','Log Details'=>'記錄詳細資料','Date'=>'日期','API Endpoint'=>'API 端點','API Response'=>'API 回應','Back to Logs'=>'返回記錄','No logs available'=>'沒有可用的記錄','API response logs will appear here once the vulnerability scanner runs.'=>'漏洞掃描器執行後,API 回應記錄將顯示在此處。','API Response Logs'=>'API 回應記錄','Show:'=>'顯示:','Apply'=>'套用','Showing %1$s–%2$s of %3$s'=>'顯示第 %1$s–%2$s 筆,共 %3$s 筆','Actions'=>'可用操作','View'=>'檢視','Danger Zone'=>'危險操作區','Permanently delete all API response logs. This action cannot be undone.'=>'永久刪除所有 API 回應記錄。此操作無法復原。','Are you sure you want to delete all logs? This action cannot be undone.'=>'確定要刪除所有記錄嗎?此操作無法復原。','Delete All Logs'=>'刪除所有記錄','Reload Data from API'=>'從 API 重新載入資料','Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information.'=>'直接從 API 重新載入所有核心程式、外掛、佈景主題和其他元件資訊以取得最新資料。這將清除快取並擷取最新的漏洞資訊。','Reload Data'=>'重新載入資料','Test Email Notifications'=>'測試電子郵件通知','Send a test email notification with current vulnerability data to verify your email configuration is working correctly.'=>'傳送含有目前漏洞資料的測試電子郵件通知,以驗證電子郵件設定是否正常運作。','From address (configured via constant):'=>'寄件者地址(透過常數設定):','From address (default):'=>'寄件者地址(預設):','Learn how to customize the email sender address →'=>'了解如何自訂電子郵件寄件者地址 →','Send Test Email'=>'傳送測試電子郵件','WP-Cron Status'=>'WP-Cron 狀態','View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly.'=>'檢視和管理 WP-Cron 排程事件。比較預期排程與實際 cron 任務,確保自動化任務正常執行。','No cron data available.'=>'沒有可用的 cron 資料。','Hook'=>'Hook','Expected'=>'預期','Found'=>'已找到','Next Run'=>'下次執行','Status'=>'狀態','Not expected'=>'非預期','None'=>'無','OK'=>'確定','⚠️ Unexpected WPVulnerability Events'=>'⚠️ 非預期的 WPVulnerability 事件','No interval'=>'無間隔','Next:'=>'下次:','Repair Cron Events'=>'修復 Cron 事件','Uninstall Data'=>'解除安裝資料','By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall.'=>'預設情況下,刪除 WPVulnerability 時,所有外掛資料都會保留。只有在您希望解除安裝時永久刪除所有選項、記錄和快取資料,才啟用下方的選項。','Delete all plugin data on uninstall'=>'解除安裝時刪除所有外掛資料','Default: unchecked (data preserved). Check only if you want a clean removal.'=>'預設:未勾選(保留資料)。只有在希望完全移除時才勾選。','Save preference'=>'儲存偏好設定','Reset WPVulnerability'=>'重設 WPVulnerability','Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API.'=>'刪除所有 WPVulnerability 設定、快取資料、記錄和排程事件,然後還原為預設值並從API 重新載入資料。','This action cannot be undone.'=>'此操作無法復原。','Are you sure you want to reset all WPVulnerability data? This action cannot be undone.'=>'確定要重設所有 WPVulnerability 資料嗎?此操作無法復原。','Reset Plugin'=>'重設外掛','Vulnerability Database Statistics'=>'漏洞資料庫統計資料','%s vulnerability'=>'%s 個漏洞','(%s product)'=>'(%s 個產品)','No data'=>'無資料','Database last updated: %s'=>'資料庫最後更新:%s','Intelligence Sources'=>'情報來源','Number of vulnerabilities contributed by each intelligence source.'=>'各情報來源提供的漏洞數量。','Source'=>'來源','Core'=>'核心程式','Sponsors'=>'贊助者','No sponsor data available.'=>'沒有可用的贊助者資料。','Contributors'=>'參與者','No contributor data available.'=>'沒有可用的參與者資料。','You do not have sufficient permissions to access this page.'=>'您沒有足夠的權限存取此頁面。','WPVulnerability settings'=>'WPVulnerability 設定','Configure and save these settings to receive notifications.'=>'請組態接收通知的相關設定並儲存設定。','Configure and save these settings to hide vulnerabilities.'=>'請在下方組態隱藏漏洞的相關設定並儲存設定。','Default administrator email'=>'預設網站管理員電子郵件地址','Read more if you want to force the cache time.'=>'進一步了解強制設定快取到期時間的方式','Never'=>'永不使用','Daily'=>'每日','Weekly'=>'每週','Day'=>'日','Hour'=>'小時','Minute'=>'分鐘','Read more about how to force the deactivation of an item.'=>'進一步了解強制停用漏洞項目來源的方式','Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com'=>'無效的 Slack webhook 網址。必須是來自 hooks.slack.com 的有效 HTTPS 網址。','Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com'=>'無效的 Microsoft Teams webhook 網址。必須是來自 office.com、office365.com 或 api.hooks.microsoft.com 的有效 HTTPS 網址。','Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com'=>'無效的 Discord webhook 網址。必須是來自 discord.com 或 discordapp.com 的有效 HTTPS 網址。','Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11'=>'無效的 Telegram 機器人權杖格式。必須類似:123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11','All Clear'=>'一切正常','%d Critical Issue Found'=>'發現 %d 個嚴重問題','%d Issue Found'=>'發現 %d 個問題','Never checked'=>'從未檢查','%d minute ago'=>'%d 分鐘前','%d hour ago'=>'%d 小時前','Last checked: %s'=>'上次檢查:%s','Refresh Now'=>'立即重新整理','No vulnerabilities detected'=>'未偵測到漏洞','Your site is up to date and secure'=>'您的網站已是最新版本且安全無虞','Server Software'=>'伺服器軟體','Site Health'=>'網站狀態','Settings'=>'設定','WPVulnerability Status'=>'WPVulnerability 狀態','Receive vulnerability notifications'=>'接收漏洞通知','Cache expiration time'=>'快取到期時間','How often you want to receive notifications'=>'接收通知週期','Where do you want to receive notifications?'=>'接收通知的方式','Email addresses to notify (separated by commas)'=>'電子郵件通知對象 (使用逗號分隔)','Slack webhook URL'=>'Slack Webhook 網址','Teams webhook URL'=>'Microsoft Teams Webhook 網址','Vulnerabilities to hide'=>'要隱藏的漏洞','What do you want to hide?'=>'要隱藏的漏洞項目來源','Standard (Hybrid Detection)'=>'標準(混合偵測)','Strict (Extensions Only)'=>'嚴格(僅限擴充功能)','Disabled (No Detection)'=>'已停用(無偵測)','Security Status'=>'安全性狀態','Security Mode'=>'安全性模式','Shell Execution'=>'Shell 執行','Enabled'=>'已啟用','Audit Logging'=>'稽核記錄','Enabled (%d days)'=>'已啟用(%d 天)','Total Log Entries'=>'記錄項目總數','Last Shell Execution'=>'上次 Shell 執行','%s ago'=>'%s 前','Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST.'=>'透過 wp-config.php 常數設定安全性設定:WPVULNERABILITY_DISABLE_SHELL_EXEC、WPVULNERABILITY_SECURITY_MODE、WPVULNERABILITY_SHELL_EXEC_WHITELIST。','See security configuration documentation for details.'=>'請參閱安全性設定說明文件以了解詳細資訊。','Memcached'=>'Memcached','Imagick Extension'=>'Imagick 擴充功能','Redis Extension'=>'Redis 擴充功能','Memcached Extension'=>'Memcached 擴充功能','Memcache Extension'=>'Memcache 擴充功能','SQLite3 Extension'=>'SQLite3 擴充功能','PDO SQLite'=>'PDO SQLite','Shell Command'=>'Shell 指令','Binary Check'=>'二進位檔案檢查','Not Detected'=>'未偵測到','Software Detection Methods'=>'軟體偵測方法','Shows which detection method was used for each software component and the reliability score.'=>'顯示每個軟體元件所使用的偵測方法及可靠性分數。','Component'=>'元件','Version'=>'版本','Detection Method'=>'偵測方法','Reliability'=>'可靠性','Not detected'=>'未偵測到','Shell Execution Audit Logs'=>'Shell 執行稽核記錄','Complete audit trail of shell command executions for security monitoring.'=>'用於安全性監控的 Shell 指令執行完整稽核記錄。','No shell execution logs found.'=>'找不到 Shell 執行記錄。','Logs will appear here when shell commands are executed for software detection.'=>'執行 Shell 指令進行軟體偵測時,記錄將顯示在此處。','Time'=>'時間','Command'=>'指令','User'=>'使用者','Output'=>'輸出','Showing the %d most recent log entries.'=>'顯示最近的 %d 筆記錄項目。','Invalid nonce.'=>'無效的 nonce。','Insufficient permissions.'=>'權限不足。','No component specified.'=>'未指定元件。','Debug Information'=>'除錯資訊','This tab is only visible when WP_DEBUG is enabled. Use with caution.'=>'此標籤頁僅在啟用 WP_DEBUG 時顯示。請謹慎使用。','System Information'=>'系統資訊','WordPress Version'=>'WordPress 版本','Multisite'=>'多站網路','Yes'=>'是','No'=>'否','Language'=>'語言','PHP Version'=>'PHP 版本','PHP Extensions'=>'PHP 擴充功能','PHP Memory Limit'=>'PHP 記憶體限制','Database'=>'資料庫','Web Server'=>'網頁伺服器','WP_DEBUG'=>'WP_DEBUG','WP_DEBUG_LOG'=>'WP_DEBUG_LOG','Path:'=>'路徑:','Size: %s'=>'大小:%s','View Log File'=>'檢視記錄檔','Log file is not web-accessible (outside wp-content)'=>'記錄檔無法透過網頁存取(位於 wp-content 外部)','Log file does not exist yet'=>'記錄檔尚不存在','Plugin Version'=>'外掛版本','Component Detection'=>'元件偵測','Version Detected'=>'已偵測到的版本','Analyzed'=>'已分析','Cache Status'=>'快取狀態','Configuration Summary'=>'設定摘要','Cache Duration'=>'快取持續時間','Log Retention'=>'記錄保留','Components Analyzed'=>'已分析的元件','Notification Email'=>'通知電子郵件','Slack Webhook'=>'Slack Webhook','Configured & Enabled'=>'已設定且已啟用','Configured (Disabled)'=>'已設定(已停用)','Not configured'=>'未設定','Teams Webhook'=>'Teams Webhook','Discord Webhook'=>'Discord Webhook','Telegram Bot'=>'Telegram 機器人','Cron Status'=>'Cron 狀態','Update Database'=>'更新資料庫','Next run: %s'=>'下次執行:%s','Not scheduled'=>'未排程','Send Notification'=>'傳送通知','Run Update Now'=>'立即執行更新','Run Notification Now'=>'立即執行通知','You do not have permission to run these actions.'=>'您沒有執行這些操作的權限。','API Testing'=>'API 測試','Test API connectivity for each component. Click a button to send a test request.'=>'測試每個元件的 API 連線能力。按一下按鈕以傳送測試要求。','Test %s'=>'測試 %s','Testing...'=>'測試中...','HTTP Code:'=>'HTTP 代碼:','Response Time:'=>'回應時間:','Response Preview'=>'回應預覽','Test'=>'測試','Error:'=>'錯誤:','AJAX request failed.'=>'AJAX 要求失敗。','You do not have permission to test API connectivity.'=>'您沒有測試 API 連線能力的權限。','Database Options Viewer'=>'資料庫選項檢視器','View the raw data stored in WordPress options.'=>'檢視儲存在 WordPress 選項中的原始資料。','Select an option...'=>'選取一個選項...','Option not found or empty.'=>'找不到選項或選項為空。','Quick Actions'=>'快速動作','Perform debugging actions. Use with caution.'=>'執行除錯動作。請謹慎使用。','Are you sure you want to clear all caches?'=>'確定要清除所有快取嗎?','Clear All Caches'=>'清除所有快取','Are you sure you want to reset signatures?'=>'確定要重設簽名嗎?','Reset Signatures'=>'重設簽名','Export Debug Info'=>'匯出除錯資訊','You do not have permission to perform these actions.'=>'您沒有執行這些動作的權限。','Settings saved.'=>'設定已儲存。','WPVulnerability cron events have been repaired across the network.'=>'已修復整個網路中的 WPVulnerability cron 事件。','You do not have permission to access this page.'=>'您沒有存取此頁面的權限。','WordPress %1$s has a known vulnerability that may be affecting your installed version.'=>'WordPress %1$s 有一個已知漏洞,可能影響您安裝的版本。','Actively exploited'=>'正被積極利用','Public exploit'=>'公開的漏洞利用程式','Automatable'=>'可自動化','References:'=>'參考資料:','Invalid component specified.'=>'指定的元件無效。','Version not detected for this component.'=>'未偵測到此元件的版本。','API request successful.'=>'API 要求成功。','API returned HTTP code %d.'=>'API 傳回 HTTP 代碼 %d。','WPVulnerability Logs'=>'WPVulnerability 記錄','WPVulnerability Log'=>'WPVulnerability 記錄','Low'=>'低','Medium'=>'中','High'=>'高','Critical'=>'嚴重','WPVulnerability Shell Logs'=>'WPVulnerability Shell 記錄','WPVulnerability Shell Log'=>'WPVulnerability Shell 記錄','Every week'=>'每週','Every day'=>'每日','Invalid request.'=>'無效的要求。','You have unsubscribed from WPVulnerability notifications.'=>'你已取消訂閱 WPVulnerability 通知。','Learn more about the WordPress Vulnerability Database API at %2$s'=>'進一步了解 %2$s 的 WordPress Vulnerability Database API','Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings.'=>'如需停止接收這些通知,請取消訂閱或在 WPVulnerability 設定中將電子郵件接收通知週期變更為 [永不使用]。','No vulnerabilities found'=>'找不到網站漏洞','This is likely a test. The site does not have vulnerabilities.'=>'這是可能一項測試。這個網站沒有漏洞。','Core vulnerabilities'=>'核心程式漏洞','Plugins vulnerabilities'=>'外掛漏洞','Themes vulnerabilities'=>'佈景主題漏洞','PHP vulnerabilities'=>'PHP 漏洞','Apache HTTPD vulnerabilities'=>'Apache HTTPD 漏洞','Nginx vulnerabilities'=>'NGINX 漏洞','MariaDB vulnerabilities'=>'MariaDB 漏洞','MySQL vulnerabilities'=>'MySQL 漏洞','ImageMagick vulnerabilities'=>'ImageMagick 漏洞','curl vulnerabilities'=>'curl 漏洞','memcached vulnerabilities'=>'Memcached 漏洞','Redis vulnerabilities'=>'Redis 漏洞','SQLite vulnerabilities'=>'SQLite 漏洞','Vulnerability found: %s'=>'《%s》通知:網站漏洞已找到','Vulnerability found'=>'網站漏洞已找到','%1$s has a known vulnerability that may be affecting your installed version.'=>'%1$s 有一個已知漏洞,可能影響您安裝的版本。','This plugin is closed. Please replace it with another.'=>'這個外掛已關閉,請改用其他外掛取代。','This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates.'=>'這個漏洞似乎尚未修補,請持續追蹤未來的外掛更新。','It hasn\'t been updated in over a year.'=>'這個外掛已超過 1 年未更新。','It may no longer be available (closed?).'=>'這個外掛已不再提供 (可能已關閉)。','Last updated on'=>'最後更新日期','Vulnerabilities (%d)'=>'漏洞 (%d)','%s running'=>'執行的 %s 版本','End of Life'=>'終止支援','End of life:'=>'終止支援:','Supported'=>'支援中','Plugin'=>'外掛','Theme'=>'佈景主題','End of life: %s'=>'終止支援:%s','EOL'=>'EOL','Network Settings'=>'多站網路設定','Vulnerabilities'=>'漏洞','Every 6 hours'=>'每 6 小時','Database updates'=>'資料庫更新','Log cleanup'=>'記錄清理','Notifications are scheduled, but settings currently disable them. Please review the notifications tab.'=>'通知已排程,但目前設定已停用通知。請檢閱通知標籤頁。','This event should not be scheduled for this site.'=>'此事件不應為此網站排程。','Not expected for this site.'=>'此網站不需要此設定。','No instances found.'=>'找不到任何執行個體。','Scheduled with an unexpected interval.'=>'以非預期的間隔排程。','Multiple instances detected.'=>'偵測到多個執行個體。','Scheduled as expected.'=>'已按預期排程。','There aren\'t plugins vulnerabilities'=>'這個網站的外掛沒有發現漏洞','Shows possible vulnerabilities that exist in installed plugins.'=>'顯示已安裝的外掛中可能存在的漏洞。','There is %d plugin with vulnerabilities'=>'這個網站有 %d 個外掛發現漏洞','We\'ve detected potential vulnerabilities in installed plugins. Please check them and keep them updated.'=>'系統在已安裝的外掛中偵測到潛在的漏洞。請檢查這些外掛並更新至最新版本。','Update plugins'=>'更新外掛','There aren\'t themes vulnerabilities'=>'這個網站的佈景主題沒有發現漏洞','Shows possible vulnerabilities that exist in installed themes.'=>'顯示已安裝的佈景主題中可能存在的漏洞。','There is %d theme with vulnerabilities'=>'這個網站有 %d 個佈景主題發現漏洞','We\'ve detected potential vulnerabilities in installed themes. Please check them and keep them updated.'=>'系統在已安裝的佈景主題中偵測到潛在的漏洞。請檢查這些佈景主題並更新至最新版本。','Update themes'=>'更新佈景主題','There aren\'t WordPress vulnerabilities'=>'這個網站的 WordPress 核心程式沒有發現漏洞','Shows possible vulnerabilities existing in the WordPress core.'=>'顯示 WordPress 核心程式中可能存在的漏洞。','There is %d core vulnerability'=>'這個網站有 %d 個核心程式漏洞','We\'ve detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated.'=>'系統在 WordPress 核心程式中偵測到潛在的漏洞。請檢查核心程式並更新至最新版本。','Update WordPress'=>'更新 WordPress','Nginx'=>'NGINX','Invalid software type'=>'無效的軟體類型','Error'=>'錯誤','The specified software type is not valid.'=>'指定的軟體類型無效。','There aren\'t %s vulnerabilities'=>'這個網站的 %s 沒有發現漏洞','Shows possible vulnerabilities existing in %s.'=>'顯示 %s 中可能存在的漏洞。','There is %1$d %2$s vulnerability'=>'這個網站有 %1$d 個 %2$s 漏洞','We\'ve detected potential vulnerabilities in %s. Please check them and keep your installation updated.'=>'系統已偵測到 %s 中的潛在漏洞。請檢查這些漏洞並安裝最新版本。','How to update PHP'=>'如何更新 PHP','WPVulnerability Core'=>'核心程式的 WPVulnerability 測試','WPVulnerability Themes'=>'佈景主題的 WPVulnerability 測試','WPVulnerability Plugins'=>'外掛的 WPVulnerability 測試','WPVulnerability PHP'=>'PHP 的 WPVulnerability 測試','WPVulnerability Apache HTTPD'=>'Apache HTTPD 的 WPVulnerability 測試','WPVulnerability Nginx'=>'NGINX 的 WPVulnerability 測試','WPVulnerability MariaDB'=>'MariaDB 的 WPVulnerability 測試','WPVulnerability MySQL'=>'MySQL 的 WPVulnerability 測試','WPVulnerability ImageMagick'=>'ImageMagick 的 WPVulnerability 測試','WPVulnerability curl'=>'curl 的 WPVulnerability 測試','WPVulnerability memcached'=>'Memcached 的 WPVulnerability 測試','WPVulnerability redis'=>'Redis 的 WPVulnerability 測試','WPVulnerability sqlite'=>'SQLite 的 WPVulnerability 測試','This theme is closed. Please replace it with another.'=>'這個佈景主題已關閉,請改用其他佈景主題取代。','This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates.'=>'這個漏洞似乎尚未修補,請持續追蹤未來的佈景主題更新。','This theme has known vulnerabilities that may be affecting your installed version.'=>'此佈景主題有已知漏洞,可能影響您安裝的版本。']]; \ No newline at end of file diff --git a/languages/wpvulnerability-zh-tw.mo b/languages/wpvulnerability-zh-tw.mo new file mode 100644 index 0000000000000000000000000000000000000000..16a2eca72b970bb0f967456b2516e87fbdb46edb GIT binary patch literal 37442 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 Hu^;?@{9-dO literal 0 HcmV?d00001 diff --git a/languages/wpvulnerability-zh-tw.po b/languages/wpvulnerability-zh-tw.po new file mode 100644 index 0000000..cda617f --- /dev/null +++ b/languages/wpvulnerability-zh-tw.po @@ -0,0 +1,2164 @@ +msgid "" +msgstr "" +"Project-Id-Version: Plugins - WPVulnerability - Development (trunk)\n" +"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wpvulnerability\n" +"POT-Creation-Date: 2026-05-27T16:32:22+00:00\n" +"PO-Revision-Date: 2025-12-09 21:50:02+0000\n" +"Language: zh_TW\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: GlotPress/4.0.3\n" + +#. Plugin Name of the plugin +#: wpvulnerability.php wpvulnerability-admin.php:1782 +#: wpvulnerability-admin.php:1783 wpvulnerability-adminms.php:1945 +#: wpvulnerability-adminms.php:1946 wpvulnerability-notifications.php:105 +msgid "WPVulnerability" +msgstr "WPVulnerability" + +#. Plugin URI of the plugin +#: wpvulnerability.php +msgid "https://www.wpvulnerability.com/plugin/" +msgstr "https://www.wpvulnerability.com/plugin/" + +#. Description of the plugin +#: wpvulnerability.php +msgid "" +"Receive information about possible vulnerabilities in your WordPress from " +"WordPress Vulnerability Database API." +msgstr "" +"從 WordPress Vulnerability Database API 接收 WordPress 網站可能存在的漏洞資" +"訊。" + +#. Author of the plugin +#: wpvulnerability.php +msgid "ROBOTSTXT" +msgstr "ROBOTSTXT" + +#. Author URI of the plugin +#: wpvulnerability.php +msgid "https://www.robotstxt.es/" +msgstr "https://www.robotstxt.es/" + +#: class-wpvulnerability-cli.php:35 class-wpvulnerability-config-cli.php:32 +msgid "" +"This command requires a WordPress administrator. Run with --" +"user=." +msgstr "" +"此指令需要 WordPress 網站管理員身份。請以 --user= 執行。" + +#: class-wpvulnerability-cli.php:156 +msgid "No core vulnerabilities found." +msgstr "未發現核心程式漏洞。" + +#: class-wpvulnerability-cli.php:275 +msgid "No plugin vulnerabilities found." +msgstr "未發現外掛漏洞。" + +#: class-wpvulnerability-cli.php:393 +msgid "No theme vulnerabilities found." +msgstr "未發現佈景主題漏洞。" + +#. translators: %s is the software name (php, apache, nginx, etc.) +#: class-wpvulnerability-cli.php:490 +#, php-format +msgid "No %s vulnerabilities found." +msgstr "未發現 %s 漏洞。" + +#: wpvulnerability-admin.php:63 wpvulnerability-adminms.php:227 +msgid "Data from source has been reloaded." +msgstr "來源資料已重新載入。" + +#: wpvulnerability-admin.php:65 wpvulnerability-adminms.php:229 +msgid "You do not have permission to reload data." +msgstr "您沒有重新載入資料的權限。" + +#: wpvulnerability-admin.php:93 wpvulnerability-adminms.php:255 +msgid "Test email has been sent." +msgstr "測試用電子郵件已傳送。" + +#: wpvulnerability-admin.php:95 wpvulnerability-adminms.php:259 +msgid "Test email has failed. Please, check your email settings." +msgstr "測試用電子郵件傳送失敗。請檢查電子郵件設定。" + +#: wpvulnerability-admin.php:98 wpvulnerability-adminms.php:263 +msgid "You do not have permission to send test emails." +msgstr "您沒有傳送測試電子郵件的權限。" + +#: wpvulnerability-admin.php:113 +msgid "WPVulnerability cron events have been repaired." +msgstr "WPVulnerability cron 事件已修復。" + +#: wpvulnerability-admin.php:115 wpvulnerability-adminms.php:279 +msgid "You do not have permission to repair cron events." +msgstr "您沒有修復 cron 事件的權限。" + +#: wpvulnerability-admin.php:127 wpvulnerability-adminms.php:291 +msgid "All logs have been deleted." +msgstr "所有記錄已刪除。" + +#: wpvulnerability-admin.php:129 wpvulnerability-adminms.php:293 +msgid "You do not have permission to delete logs." +msgstr "您沒有刪除記錄的權限。" + +#: wpvulnerability-admin.php:146 +msgid "Uninstall preference saved." +msgstr "解除安裝偏好設定已儲存。" + +#: wpvulnerability-admin.php:153 wpvulnerability-adminms.php:316 +msgid "WPVulnerability has been reset to defaults and reloaded." +msgstr "WPVulnerability 已重設為預設值並重新載入。" + +#: wpvulnerability-admin.php:155 wpvulnerability-adminms.php:318 +msgid "You do not have permission to reset WPVulnerability." +msgstr "您沒有重設 WPVulnerability 的權限。" + +#: wpvulnerability-admin.php:170 wpvulnerability-adminms.php:333 +msgid "All caches have been cleared." +msgstr "所有快取已清除。" + +#: wpvulnerability-admin.php:172 wpvulnerability-adminms.php:335 +msgid "You do not have permission to clear caches." +msgstr "您沒有清除快取的權限。" + +#: wpvulnerability-admin.php:187 wpvulnerability-adminms.php:350 +msgid "Plugin and theme signatures have been reset." +msgstr "外掛和佈景主題的簽名已重設。" + +#: wpvulnerability-admin.php:189 wpvulnerability-adminms.php:352 +msgid "You do not have permission to reset signatures." +msgstr "您沒有重設簽名的權限。" + +#: wpvulnerability-admin.php:212 wpvulnerability-adminms.php:375 +msgid "You do not have permission to export debug information." +msgstr "您沒有匯出除錯資訊的權限。" + +#: wpvulnerability-admin.php:224 wpvulnerability-adminms.php:387 +msgid "Database update has been executed." +msgstr "資料庫更新已執行。" + +#: wpvulnerability-admin.php:226 wpvulnerability-adminms.php:389 +msgid "You do not have permission to run database updates." +msgstr "您沒有執行資料庫更新的權限。" + +#: wpvulnerability-admin.php:247 wpvulnerability-adminms.php:410 +msgid "Notification has been sent." +msgstr "通知已傳送。" + +#: wpvulnerability-admin.php:249 wpvulnerability-adminms.php:412 +msgid "Notification sending failed." +msgstr "通知傳送失敗。" + +#: wpvulnerability-admin.php:252 wpvulnerability-adminms.php:415 +msgid "You do not have permission to send notifications." +msgstr "您沒有傳送通知的權限。" + +#: wpvulnerability-admin.php:266 wpvulnerability-adminms.php:539 +#: wpvulnerability-schedule.php:323 +msgid "Notifications" +msgstr "通知" + +#: wpvulnerability-admin.php:269 wpvulnerability-adminms.php:542 +msgid "Analysis" +msgstr "分析" + +#: wpvulnerability-admin.php:272 wpvulnerability-adminms.php:545 +msgid "Logs" +msgstr "記錄" + +#: wpvulnerability-admin.php:275 wpvulnerability-adminms.php:548 +#: wpvulnerability-sitehealth.php:25 wpvulnerability-sitehealth.php:77 +#: wpvulnerability-sitehealth.php:129 wpvulnerability-sitehealth.php:210 +msgid "Security" +msgstr "安全性" + +#: wpvulnerability-admin.php:278 wpvulnerability-adminms.php:551 +msgid "Tools" +msgstr "工具" + +#: wpvulnerability-admin.php:285 wpvulnerability-adminms.php:558 +msgid "Debug" +msgstr "除錯" + +#: wpvulnerability-admin.php:290 wpvulnerability-adminms.php:563 +msgid "About" +msgstr "關於" + +#: wpvulnerability-admin.php:427 wpvulnerability-adminms.php:700 +msgid "Notification Settings" +msgstr "通知設定" + +#: wpvulnerability-admin.php:430 wpvulnerability-adminms.php:703 +msgid "Configure how and when you want to receive vulnerability notifications." +msgstr "設定接收漏洞通知的方式和時間。" + +#: wpvulnerability-admin.php:431 wpvulnerability-adminms.php:704 +msgid "" +"Stay informed about security vulnerabilities in your WordPress installation, " +"plugins, themes, and server software." +msgstr "" +"隨時掌握 WordPress 安裝、外掛、佈景主題及伺服器軟體的安全漏洞資訊。" + +#: wpvulnerability-admin.php:438 wpvulnerability-adminms.php:711 +msgid "Cache Expiration Time" +msgstr "快取到期時間" + +#: wpvulnerability-admin.php:440 wpvulnerability-admin.php:814 +#: wpvulnerability-adminms.php:713 wpvulnerability-adminms.php:1087 +msgid "FORCED" +msgstr "強制" + +#: wpvulnerability-admin.php:444 wpvulnerability-adminms.php:717 +msgid "How long to cache vulnerability data before refreshing from the API." +msgstr "在從 API 重新整理之前,快取漏洞資料的時間長度。" + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:453 wpvulnerability-admin.php:1891 +#: wpvulnerability-admin.php:3631 wpvulnerability-adminms.php:726 +#: wpvulnerability-adminms.php:2039 wpvulnerability-adminms.php:3825 +#, php-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d 小時" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:469 wpvulnerability-adminms.php:742 +#, php-format +msgid "" +"You can force the cache time via wp-config.php constant. Learn more →" +msgstr "" +"您可以透過 wp-config.php 常數強制設定快取時間。了解更多 →" + +#: wpvulnerability-admin.php:481 wpvulnerability-admin.php:3665 +#: wpvulnerability-adminms.php:754 wpvulnerability-adminms.php:3859 +msgid "Notification Frequency" +msgstr "通知頻率" + +#: wpvulnerability-admin.php:484 wpvulnerability-adminms.php:757 +msgid "Choose how often you want to receive vulnerability notifications." +msgstr "選擇接收漏洞通知的頻率。" + +#: wpvulnerability-admin.php:489 wpvulnerability-adminms.php:762 +msgid "Never - Disable automatic notifications" +msgstr "永不 — 停用自動通知" + +#: wpvulnerability-admin.php:493 wpvulnerability-adminms.php:766 +msgid "Daily - Receive notifications every day" +msgstr "每日 — 每天接收通知" + +#: wpvulnerability-admin.php:497 wpvulnerability-adminms.php:770 +msgid "Weekly - Receive notifications once a week" +msgstr "每週 — 每週接收一次通知" + +#: wpvulnerability-admin.php:503 wpvulnerability-adminms.php:776 +msgid "Day:" +msgstr "星期:" + +#: wpvulnerability-admin.php:505 wpvulnerability-admin.php:1955 +#: wpvulnerability-adminms.php:778 wpvulnerability-adminms.php:2115 +msgid "Monday" +msgstr "星期一" + +#: wpvulnerability-admin.php:506 wpvulnerability-admin.php:1956 +#: wpvulnerability-adminms.php:779 wpvulnerability-adminms.php:2116 +msgid "Tuesday" +msgstr "星期二" + +#: wpvulnerability-admin.php:507 wpvulnerability-admin.php:1957 +#: wpvulnerability-adminms.php:780 wpvulnerability-adminms.php:2117 +msgid "Wednesday" +msgstr "星期三" + +#: wpvulnerability-admin.php:508 wpvulnerability-admin.php:1958 +#: wpvulnerability-adminms.php:781 wpvulnerability-adminms.php:2118 +msgid "Thursday" +msgstr "星期四" + +#: wpvulnerability-admin.php:509 wpvulnerability-admin.php:1959 +#: wpvulnerability-adminms.php:782 wpvulnerability-adminms.php:2119 +msgid "Friday" +msgstr "星期五" + +#: wpvulnerability-admin.php:510 wpvulnerability-admin.php:1960 +#: wpvulnerability-adminms.php:783 wpvulnerability-adminms.php:2120 +msgid "Saturday" +msgstr "星期六" + +#: wpvulnerability-admin.php:511 wpvulnerability-admin.php:1961 +#: wpvulnerability-adminms.php:784 wpvulnerability-adminms.php:2121 +msgid "Sunday" +msgstr "星期日" + +#: wpvulnerability-admin.php:515 wpvulnerability-adminms.php:788 +msgid "Time:" +msgstr "時間:" + +#: wpvulnerability-admin.php:519 wpvulnerability-adminms.php:792 +msgid "(24-hour format, server timezone)" +msgstr "(24 小時制,伺服器時區)" + +#: wpvulnerability-admin.php:528 wpvulnerability-adminms.php:801 +msgid "Notification Channels" +msgstr "通知管道" + +#: wpvulnerability-admin.php:531 wpvulnerability-adminms.php:804 +msgid "Select where you want to receive notifications." +msgstr "選擇接收通知的管道。" + +#: wpvulnerability-admin.php:536 wpvulnerability-admin.php:2011 +#: wpvulnerability-adminms.php:809 wpvulnerability-adminms.php:2169 +msgid "Email" +msgstr "電子郵件" + +#: wpvulnerability-admin.php:539 wpvulnerability-adminms.php:812 +msgid "Email Addresses (separated by commas):" +msgstr "電子郵件地址(以逗號分隔):" + +#: wpvulnerability-admin.php:541 wpvulnerability-adminms.php:814 +msgid "Default:" +msgstr "預設:" + +#: wpvulnerability-admin.php:546 wpvulnerability-admin.php:2016 +#: wpvulnerability-adminms.php:819 wpvulnerability-adminms.php:2174 +msgid "Slack" +msgstr "Slack" + +#: wpvulnerability-admin.php:549 wpvulnerability-adminms.php:822 +msgid "Slack Webhook URL:" +msgstr "Slack Webhook 網址:" + +#. translators: %s: Slack documentation URL +#: wpvulnerability-admin.php:555 wpvulnerability-adminms.php:828 +#, php-format +msgid "" +"Learn how to " +"create a Slack incoming webhook →" +msgstr "" +"了解如何建立 Slack " +"傳入 webhook →" + +#: wpvulnerability-admin.php:564 wpvulnerability-admin.php:2021 +#: wpvulnerability-adminms.php:837 wpvulnerability-adminms.php:2179 +msgid "Microsoft Teams" +msgstr "Microsoft Teams" + +#: wpvulnerability-admin.php:567 wpvulnerability-adminms.php:840 +msgid "Teams Webhook URL:" +msgstr "Teams Webhook 網址:" + +#. translators: %s: Microsoft Teams documentation URL +#: wpvulnerability-admin.php:573 wpvulnerability-adminms.php:846 +#, php-format +msgid "" +"Learn how to " +"create a Teams incoming webhook →" +msgstr "" +"了解如何建立 Teams " +"傳入 webhook →" + +#: wpvulnerability-admin.php:582 wpvulnerability-adminms.php:855 +msgid "Discord" +msgstr "Discord" + +#: wpvulnerability-admin.php:585 wpvulnerability-adminms.php:858 +msgid "Discord Webhook URL:" +msgstr "Discord Webhook 網址:" + +#. translators: %s: Discord documentation URL +#: wpvulnerability-admin.php:591 wpvulnerability-adminms.php:864 +#, php-format +msgid "" +"Learn how to " +"create a Discord webhook →" +msgstr "" +"了解如何建立 Discord " +"webhook →" + +#: wpvulnerability-admin.php:600 wpvulnerability-adminms.php:873 +msgid "Telegram" +msgstr "Telegram" + +#: wpvulnerability-admin.php:603 wpvulnerability-adminms.php:876 +msgid "Telegram Bot Token:" +msgstr "Telegram 機器人權杖:" + +#: wpvulnerability-admin.php:605 wpvulnerability-adminms.php:878 +msgid "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "格式:123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:607 wpvulnerability-adminms.php:880 +msgid "Telegram Chat ID:" +msgstr "Telegram 聊天 ID:" + +#. translators: %s: Telegram documentation URL +#: wpvulnerability-admin.php:613 wpvulnerability-adminms.php:886 +#, php-format +msgid "" +"Learn how to " +"create a Telegram bot and get Chat ID →" +msgstr "" +"了解如何建立 Telegram " +"機器人並取得聊天 ID →" + +#: wpvulnerability-admin.php:623 wpvulnerability-adminms.php:896 +msgid "Save Notification Settings" +msgstr "儲存通知設定" + +#: wpvulnerability-admin.php:700 wpvulnerability-admin.php:2552 +#: wpvulnerability-adminms.php:973 wpvulnerability-adminms.php:2459 +msgid "WordPress Components" +msgstr "WordPress 元件" + +#: wpvulnerability-admin.php:703 wpvulnerability-admin.php:2560 +#: wpvulnerability-adminms.php:976 wpvulnerability-adminms.php:2467 +msgid "WordPress Core" +msgstr "WordPress 核心程式" + +#: wpvulnerability-admin.php:707 wpvulnerability-admin.php:1472 +#: wpvulnerability-admin.php:1573 wpvulnerability-admin.php:2109 +#: wpvulnerability-admin.php:2571 wpvulnerability-adminms.php:980 +#: wpvulnerability-adminms.php:1744 wpvulnerability-adminms.php:1843 +#: wpvulnerability-adminms.php:2266 wpvulnerability-adminms.php:2478 +msgid "Plugins" +msgstr "外掛" + +#: wpvulnerability-admin.php:711 wpvulnerability-admin.php:1473 +#: wpvulnerability-admin.php:1574 wpvulnerability-admin.php:2114 +#: wpvulnerability-admin.php:2587 wpvulnerability-adminms.php:984 +#: wpvulnerability-adminms.php:1745 wpvulnerability-adminms.php:1844 +#: wpvulnerability-adminms.php:2271 wpvulnerability-adminms.php:2494 +msgid "Themes" +msgstr "佈景主題" + +#: wpvulnerability-admin.php:717 wpvulnerability-adminms.php:990 +msgid "Software & Languages" +msgstr "軟體與程式語言" + +#: wpvulnerability-admin.php:720 wpvulnerability-admin.php:1474 +#: wpvulnerability-admin.php:2119 wpvulnerability-adminms.php:993 +#: wpvulnerability-adminms.php:1746 wpvulnerability-adminms.php:2276 +#: wpvulnerability-sitehealth.php:178 +msgid "PHP" +msgstr "PHP" + +#: wpvulnerability-admin.php:726 wpvulnerability-adminms.php:999 +msgid "Web Servers" +msgstr "網頁伺服器" + +#: wpvulnerability-admin.php:729 wpvulnerability-admin.php:1475 +#: wpvulnerability-admin.php:2124 wpvulnerability-adminms.php:1002 +#: wpvulnerability-adminms.php:1747 wpvulnerability-adminms.php:2281 +#: wpvulnerability-sitehealth.php:179 +msgid "Apache HTTPD" +msgstr "Apache HTTPD" + +#: wpvulnerability-admin.php:733 wpvulnerability-admin.php:1476 +#: wpvulnerability-admin.php:2129 wpvulnerability-adminms.php:1006 +#: wpvulnerability-adminms.php:1748 wpvulnerability-adminms.php:2286 +msgid "nginx" +msgstr "NGINX" + +#: wpvulnerability-admin.php:739 wpvulnerability-adminms.php:1012 +msgid "Databases" +msgstr "資料庫" + +#: wpvulnerability-admin.php:742 wpvulnerability-admin.php:1477 +#: wpvulnerability-admin.php:2134 wpvulnerability-adminms.php:1015 +#: wpvulnerability-adminms.php:1749 wpvulnerability-adminms.php:2291 +#: wpvulnerability-sitehealth.php:181 +msgid "MariaDB" +msgstr "MariaDB" + +#: wpvulnerability-admin.php:746 wpvulnerability-admin.php:1478 +#: wpvulnerability-admin.php:2139 wpvulnerability-adminms.php:1019 +#: wpvulnerability-adminms.php:1750 wpvulnerability-adminms.php:2296 +#: wpvulnerability-sitehealth.php:182 +msgid "MySQL" +msgstr "MySQL" + +#: wpvulnerability-admin.php:750 wpvulnerability-admin.php:1483 +#: wpvulnerability-admin.php:2164 wpvulnerability-admin.php:3104 +#: wpvulnerability-adminms.php:1023 wpvulnerability-adminms.php:1755 +#: wpvulnerability-adminms.php:2321 wpvulnerability-adminms.php:3281 +msgid "SQLite" +msgstr "SQLite" + +#: wpvulnerability-admin.php:756 wpvulnerability-adminms.php:1029 +msgid "Additional Tools" +msgstr "其他工具" + +#: wpvulnerability-admin.php:759 wpvulnerability-admin.php:1479 +#: wpvulnerability-admin.php:2144 wpvulnerability-admin.php:3101 +#: wpvulnerability-adminms.php:1032 wpvulnerability-adminms.php:1751 +#: wpvulnerability-adminms.php:2301 wpvulnerability-adminms.php:3278 +#: wpvulnerability-sitehealth.php:183 +msgid "ImageMagick" +msgstr "ImageMagick" + +#: wpvulnerability-admin.php:763 wpvulnerability-admin.php:1480 +#: wpvulnerability-admin.php:2149 wpvulnerability-adminms.php:1036 +#: wpvulnerability-adminms.php:1752 wpvulnerability-adminms.php:2306 +#: wpvulnerability-sitehealth.php:184 +msgid "curl" +msgstr "curl" + +#: wpvulnerability-admin.php:767 wpvulnerability-admin.php:1481 +#: wpvulnerability-admin.php:2154 wpvulnerability-adminms.php:1040 +#: wpvulnerability-adminms.php:1753 wpvulnerability-adminms.php:2311 +msgid "memcached" +msgstr "Memcached" + +#: wpvulnerability-admin.php:771 wpvulnerability-admin.php:1482 +#: wpvulnerability-admin.php:2159 wpvulnerability-admin.php:3102 +#: wpvulnerability-adminms.php:1044 wpvulnerability-adminms.php:1754 +#: wpvulnerability-adminms.php:2316 wpvulnerability-adminms.php:3279 +msgid "Redis" +msgstr "Redis" + +#: wpvulnerability-admin.php:784 wpvulnerability-adminms.php:1057 +msgid "Component Analysis Settings" +msgstr "元件分析設定" + +#: wpvulnerability-admin.php:787 wpvulnerability-adminms.php:1060 +msgid "Enable or disable vulnerability analysis for specific components." +msgstr "啟用或停用特定元件的漏洞分析。" + +#: wpvulnerability-admin.php:788 wpvulnerability-adminms.php:1061 +msgid "" +"Check the components you want to HIDE from vulnerability scans and reports. " +"Unchecked components will be actively analyzed. Components with active " +"analysis are shown in green, hidden components in red." +msgstr "" +"勾選要從漏洞掃描和報告中隱藏的元件。未勾選的元件將被積極分析。啟用分析的元件" +"以綠色顯示,隱藏的元件以紅色顯示。" + +#: wpvulnerability-admin.php:820 wpvulnerability-adminms.php:1093 +msgid "Hidden (forced by constant)" +msgstr "已隱藏(由常數強制)" + +#: wpvulnerability-admin.php:823 wpvulnerability-adminms.php:1096 +msgid "🔴 Analysis disabled" +msgstr "🔴 分析已停用" + +#: wpvulnerability-admin.php:826 wpvulnerability-adminms.php:1099 +msgid "🟢 Analysis active" +msgstr "🟢 分析進行中" + +#: wpvulnerability-admin.php:848 wpvulnerability-adminms.php:1121 +msgid "Tip:" +msgstr "提示:" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:852 wpvulnerability-adminms.php:1125 +#, php-format +msgid "" +"You can force-disable components via wp-config.php constants. Learn more about force-hiding " +"checks →" +msgstr "" +"您可以透過 wp-config.php 常數強制停用元件。進一步了解強制隱藏檢查 →" + +#: wpvulnerability-admin.php:860 wpvulnerability-adminms.php:1133 +msgid "Save Analysis Settings" +msgstr "儲存分析設定" + +#: wpvulnerability-admin.php:920 wpvulnerability-adminms.php:1193 +msgid "« Previous" +msgstr "« 上一頁" + +#: wpvulnerability-admin.php:921 wpvulnerability-adminms.php:1194 +msgid "Next »" +msgstr "下一頁 »" + +#: wpvulnerability-admin.php:932 wpvulnerability-adminms.php:1205 +msgid "Log entry not found or has been removed." +msgstr "找不到條件相符的記錄項目或已移除。" + +#: wpvulnerability-admin.php:935 wpvulnerability-adminms.php:1208 +msgid "Unable to load the requested log entry." +msgstr "無法載入要求的記錄項目。" + +#: wpvulnerability-admin.php:945 wpvulnerability-adminms.php:1218 +msgid "Log Configuration" +msgstr "記錄設定" + +#: wpvulnerability-admin.php:950 wpvulnerability-adminms.php:1223 +msgid "Total Logs" +msgstr "記錄總數" + +#: wpvulnerability-admin.php:954 wpvulnerability-adminms.php:1227 +msgid "Retention Period" +msgstr "保留期間" + +#: wpvulnerability-admin.php:959 wpvulnerability-admin.php:1301 +#: wpvulnerability-admin.php:3029 wpvulnerability-admin.php:3043 +#: wpvulnerability-admin.php:3475 wpvulnerability-admin.php:3483 +#: wpvulnerability-adminms.php:1232 wpvulnerability-adminms.php:1574 +#: wpvulnerability-adminms.php:3206 wpvulnerability-adminms.php:3220 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Disabled" +msgstr "已停用" + +#. translators: %d: Number of days. +#. translators: %d: number of days +#: wpvulnerability-admin.php:962 wpvulnerability-admin.php:984 +#: wpvulnerability-admin.php:3641 wpvulnerability-adminms.php:1235 +#: wpvulnerability-adminms.php:1257 wpvulnerability-adminms.php:3835 +#, php-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d 天" + +#: wpvulnerability-admin.php:975 wpvulnerability-adminms.php:1248 +msgid "Log Retention Period" +msgstr "記錄保留期間" + +#: wpvulnerability-admin.php:981 wpvulnerability-adminms.php:1254 +msgid "None (Disabled)" +msgstr "無(已停用)" + +#: wpvulnerability-admin.php:1004 wpvulnerability-adminms.php:1277 +msgid "" +"This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant." +msgstr "這項設定會由 WPVULNERABILITY_LOG_RETENTION_DAYS 常數強制執行。" + +#: wpvulnerability-admin.php:1009 wpvulnerability-adminms.php:1282 +msgid "" +"Choose how long WPVulnerability should keep API response logs. Older logs " +"are automatically deleted." +msgstr "" +"選擇 WPVulnerability 保留 API 回應記錄的時間長度。較舊的記錄將自動刪除。" + +#: wpvulnerability-admin.php:1013 wpvulnerability-adminms.php:1286 +msgid "Save Configuration" +msgstr "儲存設定" + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "Log retention is currently disabled." +msgstr "記錄保留目前已停用。" + +#: wpvulnerability-admin.php:1018 wpvulnerability-adminms.php:1291 +msgid "API responses are not being saved." +msgstr "API 回應目前未被儲存。" + +#: wpvulnerability-admin.php:1031 wpvulnerability-adminms.php:1304 +msgid "Log Details" +msgstr "記錄詳細資料" + +#: wpvulnerability-admin.php:1035 wpvulnerability-admin.php:1104 +#: wpvulnerability-adminms.php:1308 wpvulnerability-adminms.php:1377 +msgid "Date" +msgstr "日期" + +#: wpvulnerability-admin.php:1039 wpvulnerability-admin.php:1105 +#: wpvulnerability-adminms.php:1312 wpvulnerability-adminms.php:1378 +msgid "API Endpoint" +msgstr "API 端點" + +#: wpvulnerability-admin.php:1044 wpvulnerability-adminms.php:1317 +msgid "API Response" +msgstr "API 回應" + +#: wpvulnerability-admin.php:1049 wpvulnerability-adminms.php:1322 +msgid "Back to Logs" +msgstr "返回記錄" + +#: wpvulnerability-admin.php:1058 wpvulnerability-adminms.php:1331 +msgid "No logs available" +msgstr "沒有可用的記錄" + +#: wpvulnerability-admin.php:1059 wpvulnerability-adminms.php:1332 +msgid "API response logs will appear here once the vulnerability scanner runs." +msgstr "漏洞掃描器執行後,API 回應記錄將顯示在此處。" + +#: wpvulnerability-admin.php:1063 wpvulnerability-adminms.php:1336 +msgid "API Response Logs" +msgstr "API 回應記錄" + +#: wpvulnerability-admin.php:1073 wpvulnerability-adminms.php:1346 +msgid "Show:" +msgstr "顯示:" + +#: wpvulnerability-admin.php:1082 wpvulnerability-adminms.php:1355 +msgid "Apply" +msgstr "套用" + +#. translators: 1: first item, 2: last item, 3: total items +#: wpvulnerability-admin.php:1090 wpvulnerability-adminms.php:1363 +#, php-format +msgid "Showing %1$s–%2$s of %3$s" +msgstr "顯示第 %1$s–%2$s 筆,共 %3$s 筆" + +#: wpvulnerability-admin.php:1106 wpvulnerability-adminms.php:1379 +msgid "Actions" +msgstr "可用操作" + +#: wpvulnerability-admin.php:1133 wpvulnerability-admin.php:3957 +#: wpvulnerability-adminms.php:1406 wpvulnerability-adminms.php:4151 +msgid "View" +msgstr "檢視" + +#: wpvulnerability-admin.php:1150 wpvulnerability-adminms.php:1423 +msgid "Danger Zone" +msgstr "危險操作區" + +#: wpvulnerability-admin.php:1152 wpvulnerability-adminms.php:1425 +msgid "Permanently delete all API response logs. This action cannot be undone." +msgstr "永久刪除所有 API 回應記錄。此操作無法復原。" + +#: wpvulnerability-admin.php:1154 wpvulnerability-adminms.php:1427 +msgid "Are you sure you want to delete all logs? This action cannot be undone." +msgstr "確定要刪除所有記錄嗎?此操作無法復原。" + +#: wpvulnerability-admin.php:1157 wpvulnerability-adminms.php:1430 +msgid "Delete All Logs" +msgstr "刪除所有記錄" + +#: wpvulnerability-admin.php:1201 wpvulnerability-adminms.php:1474 +msgid "Reload Data from API" +msgstr "從 API 重新載入資料" + +#: wpvulnerability-admin.php:1204 wpvulnerability-adminms.php:1477 +msgid "" +"Reload all Core, Plugins, Themes and other components information directly " +"from the API to have updated data. This will clear the cache and fetch fresh " +"vulnerability information." +msgstr "" +"直接從 API 重新載入所有核心程式、外掛、佈景主題和其他元件資訊以取得最新資料。" +"這將清除快取並擷取最新的漏洞資訊。" + +#: wpvulnerability-admin.php:1209 wpvulnerability-adminms.php:1482 +msgid "Reload Data" +msgstr "重新載入資料" + +#: wpvulnerability-admin.php:1218 wpvulnerability-adminms.php:1491 +msgid "Test Email Notifications" +msgstr "測試電子郵件通知" + +#: wpvulnerability-admin.php:1221 wpvulnerability-adminms.php:1494 +msgid "" +"Send a test email notification with current vulnerability data to verify " +"your email configuration is working correctly." +msgstr "" +"傳送含有目前漏洞資料的測試電子郵件通知,以驗證電子郵件設定是否正常運作。" + +#: wpvulnerability-admin.php:1231 wpvulnerability-adminms.php:1504 +msgid "From address (configured via constant):" +msgstr "寄件者地址(透過常數設定):" + +#: wpvulnerability-admin.php:1243 wpvulnerability-adminms.php:1516 +msgid "From address (default):" +msgstr "寄件者地址(預設):" + +#: wpvulnerability-admin.php:1252 wpvulnerability-adminms.php:1525 +msgid "Learn how to customize the email sender address →" +msgstr "了解如何自訂電子郵件寄件者地址 →" + +#: wpvulnerability-admin.php:1258 wpvulnerability-adminms.php:1531 +msgid "Send Test Email" +msgstr "傳送測試電子郵件" + +#: wpvulnerability-admin.php:1267 wpvulnerability-adminms.php:1540 +msgid "WP-Cron Status" +msgstr "WP-Cron 狀態" + +#: wpvulnerability-admin.php:1270 wpvulnerability-adminms.php:1543 +msgid "" +"View and manage WP-Cron scheduled events. Compare expected schedules with " +"actual cron jobs to ensure automated tasks are running correctly." +msgstr "" +"檢視和管理 WP-Cron 排程事件。比較預期排程與實際 cron 任務,確保自動化任務正常" +"執行。" + +#: wpvulnerability-admin.php:1275 wpvulnerability-adminms.php:1548 +msgid "No cron data available." +msgstr "沒有可用的 cron 資料。" + +#: wpvulnerability-admin.php:1281 wpvulnerability-adminms.php:1554 +msgid "Hook" +msgstr "Hook" + +#: wpvulnerability-admin.php:1282 wpvulnerability-adminms.php:1555 +msgid "Expected" +msgstr "預期" + +#: wpvulnerability-admin.php:1283 wpvulnerability-adminms.php:1556 +msgid "Found" +msgstr "已找到" + +#: wpvulnerability-admin.php:1284 wpvulnerability-adminms.php:1557 +msgid "Next Run" +msgstr "下次執行" + +#: wpvulnerability-admin.php:1285 wpvulnerability-admin.php:3236 +#: wpvulnerability-admin.php:3559 wpvulnerability-adminms.php:1558 +#: wpvulnerability-adminms.php:3413 wpvulnerability-adminms.php:3753 +msgid "Status" +msgstr "狀態" + +#: wpvulnerability-admin.php:1299 wpvulnerability-adminms.php:1572 +msgid "Not expected" +msgstr "非預期" + +#: wpvulnerability-admin.php:1321 wpvulnerability-adminms.php:1594 +#: wpvulnerability-general.php:1871 wpvulnerability-general.php:1872 +msgid "None" +msgstr "無" + +#: wpvulnerability-admin.php:1356 wpvulnerability-adminms.php:1629 +msgid "OK" +msgstr "確定" + +#: wpvulnerability-admin.php:1366 wpvulnerability-adminms.php:1639 +msgid "⚠️ Unexpected WPVulnerability Events" +msgstr "⚠️ 非預期的 WPVulnerability 事件" + +#: wpvulnerability-admin.php:1383 wpvulnerability-adminms.php:1656 +msgid "No interval" +msgstr "無間隔" + +#: wpvulnerability-admin.php:1390 wpvulnerability-adminms.php:1663 +msgid "Next:" +msgstr "下次:" + +#: wpvulnerability-admin.php:1400 wpvulnerability-adminms.php:1673 +msgid "Repair Cron Events" +msgstr "修復 Cron 事件" + +#: wpvulnerability-admin.php:1408 wpvulnerability-adminms.php:1681 +msgid "Uninstall Data" +msgstr "解除安裝資料" + +#: wpvulnerability-admin.php:1410 wpvulnerability-adminms.php:1683 +msgid "" +"By default, all plugin data is preserved when WPVulnerability is deleted. " +"Enable the option below only if you want all options, logs, and cached data " +"permanently removed on uninstall." +msgstr "" +"預設情況下,刪除 WPVulnerability 時,所有外掛資料都會保留。只有在您希望解除安" +"裝時永久刪除所有選項、記錄和快取資料,才啟用下方的選項。" + +#: wpvulnerability-admin.php:1420 wpvulnerability-adminms.php:1693 +msgid "Delete all plugin data on uninstall" +msgstr "解除安裝時刪除所有外掛資料" + +#: wpvulnerability-admin.php:1423 wpvulnerability-adminms.php:1696 +msgid "" +"Default: unchecked (data preserved). Check only if you want a clean removal." +msgstr "預設:未勾選(保留資料)。只有在希望完全移除時才勾選。" + +#: wpvulnerability-admin.php:1425 wpvulnerability-adminms.php:1698 +msgid "Save preference" +msgstr "儲存偏好設定" + +#: wpvulnerability-admin.php:1432 wpvulnerability-adminms.php:1705 +msgid "Reset WPVulnerability" +msgstr "重設 WPVulnerability" + +#: wpvulnerability-admin.php:1434 wpvulnerability-adminms.php:1707 +msgid "" +"Delete all WPVulnerability settings, cached data, logs, and scheduled " +"events, then restore defaults and reload data from the API." +msgstr "" +"刪除所有 WPVulnerability 設定、快取資料、記錄和排程事件,然後還原為預設值並從" +"API 重新載入資料。" + +#: wpvulnerability-admin.php:1436 wpvulnerability-adminms.php:1709 +msgid "This action cannot be undone." +msgstr "此操作無法復原。" + +#: wpvulnerability-admin.php:1438 wpvulnerability-adminms.php:1711 +msgid "" +"Are you sure you want to reset all WPVulnerability data? This action cannot " +"be undone." +msgstr "" +"確定要重設所有 WPVulnerability 資料嗎?此操作無法復原。" + +#: wpvulnerability-admin.php:1441 wpvulnerability-adminms.php:1713 +msgid "Reset Plugin" +msgstr "重設外掛" + +#: wpvulnerability-admin.php:1468 wpvulnerability-adminms.php:1740 +msgid "Vulnerability Database Statistics" +msgstr "漏洞資料庫統計資料" + +#. translators: number of vulnerabilities. +#: wpvulnerability-admin.php:1510 wpvulnerability-adminms.php:1782 +#, php-format +msgid "%s vulnerability" +msgid_plural "%s vulnerabilities" +msgstr[0] "%s 個漏洞" + +#. translators: number of products. +#: wpvulnerability-admin.php:1520 wpvulnerability-adminms.php:1792 +#, php-format +msgid "(%s product)" +msgid_plural "(%s products)" +msgstr[0] "(%s 個產品)" + +#: wpvulnerability-admin.php:1527 wpvulnerability-adminms.php:1799 +msgid "No data" +msgstr "無資料" + +#. translators: date of last update. +#: wpvulnerability-admin.php:1544 wpvulnerability-adminms.php:1814 +#, php-format +msgid "Database last updated: %s" +msgstr "資料庫最後更新:%s" + +#: wpvulnerability-admin.php:1566 wpvulnerability-adminms.php:1836 +msgid "Intelligence Sources" +msgstr "情報來源" + +#: wpvulnerability-admin.php:1567 wpvulnerability-adminms.php:1837 +msgid "Number of vulnerabilities contributed by each intelligence source." +msgstr "各情報來源提供的漏洞數量。" + +#: wpvulnerability-admin.php:1571 wpvulnerability-adminms.php:1841 +msgid "Source" +msgstr "來源" + +#: wpvulnerability-admin.php:1572 wpvulnerability-admin.php:2104 +#: wpvulnerability-adminms.php:1842 wpvulnerability-adminms.php:2261 +msgid "Core" +msgstr "核心程式" + +#: wpvulnerability-admin.php:1603 wpvulnerability-adminms.php:1873 +msgid "Sponsors" +msgstr "贊助者" + +#: wpvulnerability-admin.php:1626 wpvulnerability-adminms.php:1896 +msgid "No sponsor data available." +msgstr "沒有可用的贊助者資料。" + +#: wpvulnerability-admin.php:1633 wpvulnerability-adminms.php:1903 +msgid "Contributors" +msgstr "參與者" + +#: wpvulnerability-admin.php:1656 wpvulnerability-adminms.php:1926 +msgid "No contributor data available." +msgstr "沒有可用的參與者資料。" + +#: wpvulnerability-admin.php:1674 wpvulnerability-adminms.php:432 +msgid "You do not have sufficient permissions to access this page." +msgstr "您沒有足夠的權限存取此頁面。" + +#: wpvulnerability-admin.php:1684 wpvulnerability-adminms.php:441 +msgid "WPVulnerability settings" +msgstr "WPVulnerability 設定" + +#: wpvulnerability-admin.php:1801 wpvulnerability-adminms.php:1963 +msgid "Configure and save these settings to receive notifications." +msgstr "請組態接收通知的相關設定並儲存設定。" + +#: wpvulnerability-admin.php:1814 wpvulnerability-adminms.php:2071 +msgid "Configure and save these settings to hide vulnerabilities." +msgstr "請在下方組態隱藏漏洞的相關設定並儲存設定。" + +#: wpvulnerability-admin.php:1845 wpvulnerability-adminms.php:1993 +msgid "Default administrator email" +msgstr "預設網站管理員電子郵件地址" + +#: wpvulnerability-admin.php:1909 wpvulnerability-adminms.php:2057 +msgid "Read more if you want to force the cache time." +msgstr "進一步了解強制設定快取到期時間的方式" + +#: wpvulnerability-admin.php:1939 wpvulnerability-adminms.php:2099 +msgid "Never" +msgstr "永不使用" + +#: wpvulnerability-admin.php:1944 wpvulnerability-adminms.php:2104 +msgid "Daily" +msgstr "每日" + +#: wpvulnerability-admin.php:1949 wpvulnerability-adminms.php:2109 +msgid "Weekly" +msgstr "每週" + +#: wpvulnerability-admin.php:1953 wpvulnerability-adminms.php:2113 +msgid "Day" +msgstr "日" + +#: wpvulnerability-admin.php:1966 wpvulnerability-adminms.php:2126 +msgid "Hour" +msgstr "小時" + +#: wpvulnerability-admin.php:1968 wpvulnerability-adminms.php:2128 +msgid "Minute" +msgstr "分鐘" + +#: wpvulnerability-admin.php:2166 wpvulnerability-adminms.php:2323 +msgid "Read more about how to force the deactivation of an item." +msgstr "進一步了解強制停用漏洞項目來源的方式" + +#: wpvulnerability-admin.php:2292 wpvulnerability-adminms.php:2870 +msgid "" +"Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com" +msgstr "" +"無效的 Slack webhook 網址。必須是來自 hooks.slack.com 的有效 HTTPS 網址。" + +#: wpvulnerability-admin.php:2315 wpvulnerability-adminms.php:2893 +msgid "" +"Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office." +"com, office365.com, or api.hooks.microsoft.com" +msgstr "" +"無效的 Microsoft Teams webhook 網址。必須是來自 office.com、office365.com 或 " +"api.hooks.microsoft.com 的有效 HTTPS 網址。" + +#: wpvulnerability-admin.php:2338 wpvulnerability-adminms.php:2916 +msgid "" +"Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or " +"discordapp.com" +msgstr "" +"無效的 Discord webhook 網址。必須是來自 discord.com 或 discordapp.com 的有效 " +"HTTPS 網址。" + +#: wpvulnerability-admin.php:2357 wpvulnerability-adminms.php:2935 +msgid "" +"Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-" +"zyx57W2v1u123ew11" +msgstr "" +"無效的 Telegram 機器人權杖格式。必須類似:123456:ABC-DEF1234ghIkl-" +"zyx57W2v1u123ew11" + +#: wpvulnerability-admin.php:2493 wpvulnerability-adminms.php:2400 +msgid "All Clear" +msgstr "一切正常" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2503 wpvulnerability-adminms.php:2410 +#, php-format +msgid "%d Critical Issue Found" +msgid_plural "%d Critical Issues Found" +msgstr[0] "發現 %d 個嚴重問題" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2508 wpvulnerability-adminms.php:2415 +#, php-format +msgid "%d Issue Found" +msgid_plural "%d Issues Found" +msgstr[0] "發現 %d 個問題" + +#: wpvulnerability-admin.php:2515 wpvulnerability-adminms.php:2422 +msgid "Never checked" +msgstr "從未檢查" + +#. translators: %d: number of minutes +#: wpvulnerability-admin.php:2523 wpvulnerability-adminms.php:2430 +#, php-format +msgid "%d minute ago" +msgid_plural "%d minutes ago" +msgstr[0] "%d 分鐘前" + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:2527 wpvulnerability-adminms.php:2434 +#, php-format +msgid "%d hour ago" +msgid_plural "%d hours ago" +msgstr[0] "%d 小時前" + +#. translators: %s: time since last check +#: wpvulnerability-admin.php:2539 wpvulnerability-adminms.php:2446 +#, php-format +msgid "Last checked: %s" +msgstr "上次檢查:%s" + +#: wpvulnerability-admin.php:2540 wpvulnerability-adminms.php:2447 +msgid "Refresh Now" +msgstr "立即重新整理" + +#: wpvulnerability-admin.php:2547 wpvulnerability-adminms.php:2454 +msgid "No vulnerabilities detected" +msgstr "未偵測到漏洞" + +#: wpvulnerability-admin.php:2548 wpvulnerability-adminms.php:2455 +msgid "Your site is up to date and secure" +msgstr "您的網站已是最新版本且安全無虞" + +#: wpvulnerability-admin.php:2616 wpvulnerability-adminms.php:2523 +msgid "Server Software" +msgstr "伺服器軟體" + +#: wpvulnerability-admin.php:2829 wpvulnerability-adminms.php:2736 +msgid "Site Health" +msgstr "網站狀態" + +#: wpvulnerability-admin.php:2831 wpvulnerability-adminms.php:2738 +#: wpvulnerability-run.php:33 +msgid "Settings" +msgstr "設定" + +#: wpvulnerability-admin.php:2846 wpvulnerability-adminms.php:2754 +msgid "WPVulnerability Status" +msgstr "WPVulnerability 狀態" + +#: wpvulnerability-admin.php:2878 wpvulnerability-adminms.php:3052 +msgid "Receive vulnerability notifications" +msgstr "接收漏洞通知" + +#: wpvulnerability-admin.php:2886 wpvulnerability-adminms.php:3060 +msgid "Cache expiration time" +msgstr "快取到期時間" + +#: wpvulnerability-admin.php:2895 wpvulnerability-adminms.php:3069 +msgid "How often you want to receive notifications" +msgstr "接收通知週期" + +#: wpvulnerability-admin.php:2904 wpvulnerability-adminms.php:3078 +msgid "Where do you want to receive notifications?" +msgstr "接收通知的方式" + +#: wpvulnerability-admin.php:2913 wpvulnerability-adminms.php:3087 +msgid "Email addresses to notify (separated by commas)" +msgstr "電子郵件通知對象 (使用逗號分隔)" + +#: wpvulnerability-admin.php:2922 wpvulnerability-adminms.php:3096 +msgid "Slack webhook URL" +msgstr "Slack Webhook 網址" + +#: wpvulnerability-admin.php:2931 wpvulnerability-adminms.php:3105 +msgid "Teams webhook URL" +msgstr "Microsoft Teams Webhook 網址" + +#: wpvulnerability-admin.php:2950 wpvulnerability-adminms.php:3126 +msgid "Vulnerabilities to hide" +msgstr "要隱藏的漏洞" + +#: wpvulnerability-admin.php:2958 wpvulnerability-adminms.php:3134 +msgid "What do you want to hide?" +msgstr "要隱藏的漏洞項目來源" + +#: wpvulnerability-admin.php:3008 wpvulnerability-adminms.php:3185 +msgid "Standard (Hybrid Detection)" +msgstr "標準(混合偵測)" + +#: wpvulnerability-admin.php:3009 wpvulnerability-adminms.php:3186 +msgid "Strict (Extensions Only)" +msgstr "嚴格(僅限擴充功能)" + +#: wpvulnerability-admin.php:3010 wpvulnerability-adminms.php:3187 +msgid "Disabled (No Detection)" +msgstr "已停用(無偵測)" + +#: wpvulnerability-admin.php:3016 wpvulnerability-adminms.php:3193 +msgid "Security Status" +msgstr "安全性狀態" + +#: wpvulnerability-admin.php:3020 wpvulnerability-adminms.php:3197 +msgid "Security Mode" +msgstr "安全性模式" + +#: wpvulnerability-admin.php:3025 wpvulnerability-adminms.php:3202 +msgid "Shell Execution" +msgstr "Shell 執行" + +#: wpvulnerability-admin.php:3027 wpvulnerability-admin.php:3475 +#: wpvulnerability-admin.php:3483 wpvulnerability-adminms.php:3204 +#: wpvulnerability-adminms.php:3669 wpvulnerability-adminms.php:3677 +msgid "Enabled" +msgstr "已啟用" + +#: wpvulnerability-admin.php:3034 wpvulnerability-adminms.php:3211 +msgid "Audit Logging" +msgstr "稽核記錄" + +#. translators: %d: number of days +#: wpvulnerability-admin.php:3039 wpvulnerability-adminms.php:3216 +#, php-format +msgid "Enabled (%d days)" +msgstr "已啟用(%d 天)" + +#: wpvulnerability-admin.php:3048 wpvulnerability-adminms.php:3225 +msgid "Total Log Entries" +msgstr "記錄項目總數" + +#: wpvulnerability-admin.php:3055 wpvulnerability-adminms.php:3232 +msgid "Last Shell Execution" +msgstr "上次 Shell 執行" + +#. translators: %s: time ago +#: wpvulnerability-admin.php:3061 wpvulnerability-admin.php:3266 +#: wpvulnerability-adminms.php:3238 wpvulnerability-adminms.php:3441 +#, php-format +msgid "%s ago" +msgstr "%s 前" + +#: wpvulnerability-admin.php:3073 wpvulnerability-adminms.php:3250 +msgid "" +"Configure security settings via wp-config.php constants: " +"WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, " +"WPVULNERABILITY_SHELL_EXEC_WHITELIST." +msgstr "" +"透過 wp-config.php 常數設定安全性設定:WPVULNERABILITY_DISABLE_SHELL_EXEC、" +"WPVULNERABILITY_SECURITY_MODE、WPVULNERABILITY_SHELL_EXEC_WHITELIST。" + +#. translators: %s: URL to security documentation +#: wpvulnerability-admin.php:3079 wpvulnerability-adminms.php:3256 +#, php-format +msgid "" +"See security " +"configuration documentation for details." +msgstr "" +"請參閱安全性設定" +"說明文件以了解詳細資訊。" + +#: wpvulnerability-admin.php:3103 wpvulnerability-adminms.php:3280 +msgid "Memcached" +msgstr "Memcached" + +#: wpvulnerability-admin.php:3131 wpvulnerability-adminms.php:3308 +msgid "Imagick Extension" +msgstr "Imagick 擴充功能" + +#: wpvulnerability-admin.php:3132 wpvulnerability-adminms.php:3309 +msgid "Redis Extension" +msgstr "Redis 擴充功能" + +#: wpvulnerability-admin.php:3133 wpvulnerability-adminms.php:3310 +msgid "Memcached Extension" +msgstr "Memcached 擴充功能" + +#: wpvulnerability-admin.php:3134 wpvulnerability-adminms.php:3311 +msgid "Memcache Extension" +msgstr "Memcache 擴充功能" + +#: wpvulnerability-admin.php:3135 wpvulnerability-adminms.php:3312 +msgid "SQLite3 Extension" +msgstr "SQLite3 擴充功能" + +#: wpvulnerability-admin.php:3136 wpvulnerability-adminms.php:3313 +msgid "PDO SQLite" +msgstr "PDO SQLite" + +#: wpvulnerability-admin.php:3137 wpvulnerability-adminms.php:3314 +msgid "Shell Command" +msgstr "Shell 指令" + +#: wpvulnerability-admin.php:3138 wpvulnerability-adminms.php:3315 +msgid "Binary Check" +msgstr "二進位檔案檢查" + +#: wpvulnerability-admin.php:3139 wpvulnerability-adminms.php:3316 +msgid "Not Detected" +msgstr "未偵測到" + +#: wpvulnerability-admin.php:3143 wpvulnerability-adminms.php:3320 +msgid "Software Detection Methods" +msgstr "軟體偵測方法" + +#: wpvulnerability-admin.php:3144 wpvulnerability-adminms.php:3321 +msgid "" +"Shows which detection method was used for each software component and the " +"reliability score." +msgstr "顯示每個軟體元件所使用的偵測方法及可靠性分數。" + +#: wpvulnerability-admin.php:3149 wpvulnerability-admin.php:3234 +#: wpvulnerability-admin.php:3558 wpvulnerability-adminms.php:3326 +#: wpvulnerability-adminms.php:3411 wpvulnerability-adminms.php:3752 +msgid "Component" +msgstr "元件" + +#: wpvulnerability-admin.php:3150 wpvulnerability-adminms.php:3327 +msgid "Version" +msgstr "版本" + +#: wpvulnerability-admin.php:3151 wpvulnerability-adminms.php:3328 +msgid "Detection Method" +msgstr "偵測方法" + +#: wpvulnerability-admin.php:3152 wpvulnerability-adminms.php:3329 +msgid "Reliability" +msgstr "可靠性" + +#: wpvulnerability-admin.php:3164 wpvulnerability-adminms.php:3341 +msgid "Not detected" +msgstr "未偵測到" + +#: wpvulnerability-admin.php:3220 wpvulnerability-adminms.php:3397 +msgid "Shell Execution Audit Logs" +msgstr "Shell 執行稽核記錄" + +#: wpvulnerability-admin.php:3221 wpvulnerability-adminms.php:3398 +msgid "" +"Complete audit trail of shell command executions for security monitoring." +msgstr "用於安全性監控的 Shell 指令執行完整稽核記錄。" + +#: wpvulnerability-admin.php:3226 wpvulnerability-adminms.php:3403 +msgid "No shell execution logs found." +msgstr "找不到 Shell 執行記錄。" + +#: wpvulnerability-admin.php:3227 wpvulnerability-adminms.php:3404 +msgid "" +"Logs will appear here when shell commands are executed for software " +"detection." +msgstr "執行 Shell 指令進行軟體偵測時,記錄將顯示在此處。" + +#: wpvulnerability-admin.php:3233 wpvulnerability-adminms.php:3410 +msgid "Time" +msgstr "時間" + +#: wpvulnerability-admin.php:3235 wpvulnerability-adminms.php:3412 +msgid "Command" +msgstr "指令" + +#: wpvulnerability-admin.php:3237 wpvulnerability-adminms.php:3414 +msgid "User" +msgstr "使用者" + +#: wpvulnerability-admin.php:3238 wpvulnerability-adminms.php:3415 +msgid "Output" +msgstr "輸出" + +#. translators: %d: number of logs shown +#: wpvulnerability-admin.php:3302 wpvulnerability-adminms.php:3477 +#, php-format +msgid "Showing the %d most recent log entries." +msgstr "顯示最近的 %d 筆記錄項目。" + +#: wpvulnerability-admin.php:3320 wpvulnerability-adminms.php:3565 +msgid "Invalid nonce." +msgstr "無效的 nonce。" + +#: wpvulnerability-admin.php:3325 wpvulnerability-adminms.php:3570 +msgid "Insufficient permissions." +msgstr "權限不足。" + +#: wpvulnerability-admin.php:3331 wpvulnerability-adminms.php:3576 +msgid "No component specified." +msgstr "未指定元件。" + +#: wpvulnerability-admin.php:3366 wpvulnerability-adminms.php:3524 +msgid "Debug Information" +msgstr "除錯資訊" + +#: wpvulnerability-admin.php:3368 wpvulnerability-adminms.php:3526 +msgid "This tab is only visible when WP_DEBUG is enabled. Use with caution." +msgstr "此標籤頁僅在啟用 WP_DEBUG 時顯示。請謹慎使用。" + +#: wpvulnerability-admin.php:3429 wpvulnerability-adminms.php:3623 +msgid "System Information" +msgstr "系統資訊" + +#: wpvulnerability-admin.php:3433 wpvulnerability-adminms.php:3627 +msgid "WordPress Version" +msgstr "WordPress 版本" + +#: wpvulnerability-admin.php:3437 wpvulnerability-adminms.php:3631 +msgid "Multisite" +msgstr "多站網路" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "Yes" +msgstr "是" + +#: wpvulnerability-admin.php:3438 wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 wpvulnerability-adminms.php:3778 +msgid "No" +msgstr "否" + +#: wpvulnerability-admin.php:3441 wpvulnerability-adminms.php:3635 +msgid "Language" +msgstr "語言" + +#: wpvulnerability-admin.php:3445 wpvulnerability-adminms.php:3639 +msgid "PHP Version" +msgstr "PHP 版本" + +#: wpvulnerability-admin.php:3449 wpvulnerability-adminms.php:3643 +msgid "PHP Extensions" +msgstr "PHP 擴充功能" + +#: wpvulnerability-admin.php:3460 wpvulnerability-adminms.php:3654 +msgid "PHP Memory Limit" +msgstr "PHP 記憶體限制" + +#: wpvulnerability-admin.php:3464 wpvulnerability-adminms.php:3658 +msgid "Database" +msgstr "資料庫" + +#: wpvulnerability-admin.php:3468 wpvulnerability-adminms.php:3662 +msgid "Web Server" +msgstr "網頁伺服器" + +#: wpvulnerability-admin.php:3472 wpvulnerability-adminms.php:3666 +msgid "WP_DEBUG" +msgstr "WP_DEBUG" + +#: wpvulnerability-admin.php:3480 wpvulnerability-adminms.php:3674 +msgid "WP_DEBUG_LOG" +msgstr "WP_DEBUG_LOG" + +#: wpvulnerability-admin.php:3490 wpvulnerability-adminms.php:3684 +msgid "Path:" +msgstr "路徑:" + +#. translators: %s: file size +#: wpvulnerability-admin.php:3499 wpvulnerability-adminms.php:3698 +#, php-format +msgid "Size: %s" +msgstr "大小:%s" + +#: wpvulnerability-admin.php:3510 wpvulnerability-adminms.php:3704 +msgid "View Log File" +msgstr "檢視記錄檔" + +#: wpvulnerability-admin.php:3516 wpvulnerability-adminms.php:3710 +msgid "Log file is not web-accessible (outside wp-content)" +msgstr "記錄檔無法透過網頁存取(位於 wp-content 外部)" + +#: wpvulnerability-admin.php:3522 wpvulnerability-adminms.php:3716 +msgid "Log file does not exist yet" +msgstr "記錄檔尚不存在" + +#: wpvulnerability-admin.php:3530 wpvulnerability-adminms.php:3724 +msgid "Plugin Version" +msgstr "外掛版本" + +#: wpvulnerability-admin.php:3554 wpvulnerability-adminms.php:3748 +msgid "Component Detection" +msgstr "元件偵測" + +#: wpvulnerability-admin.php:3560 wpvulnerability-adminms.php:3754 +msgid "Version Detected" +msgstr "已偵測到的版本" + +#: wpvulnerability-admin.php:3561 wpvulnerability-adminms.php:3755 +msgid "Analyzed" +msgstr "已分析" + +#: wpvulnerability-admin.php:3562 wpvulnerability-adminms.php:3756 +msgid "Cache Status" +msgstr "快取狀態" + +#: wpvulnerability-admin.php:3622 wpvulnerability-adminms.php:3816 +msgid "Configuration Summary" +msgstr "設定摘要" + +#: wpvulnerability-admin.php:3626 wpvulnerability-adminms.php:3820 +msgid "Cache Duration" +msgstr "快取持續時間" + +#: wpvulnerability-admin.php:3636 wpvulnerability-adminms.php:3830 +msgid "Log Retention" +msgstr "記錄保留" + +#: wpvulnerability-admin.php:3646 wpvulnerability-adminms.php:3840 +msgid "Components Analyzed" +msgstr "已分析的元件" + +#: wpvulnerability-admin.php:3661 wpvulnerability-adminms.php:3855 +msgid "Notification Email" +msgstr "通知電子郵件" + +#: wpvulnerability-admin.php:3682 wpvulnerability-adminms.php:3876 +msgid "Slack Webhook" +msgstr "Slack Webhook" + +#: wpvulnerability-admin.php:3692 wpvulnerability-admin.php:3712 +#: wpvulnerability-admin.php:3732 wpvulnerability-admin.php:3752 +#: wpvulnerability-adminms.php:3886 wpvulnerability-adminms.php:3906 +#: wpvulnerability-adminms.php:3926 wpvulnerability-adminms.php:3946 +msgid "Configured & Enabled" +msgstr "已設定且已啟用" + +#: wpvulnerability-admin.php:3694 wpvulnerability-admin.php:3714 +#: wpvulnerability-admin.php:3734 wpvulnerability-admin.php:3754 +#: wpvulnerability-adminms.php:3888 wpvulnerability-adminms.php:3908 +#: wpvulnerability-adminms.php:3928 wpvulnerability-adminms.php:3948 +msgid "Configured (Disabled)" +msgstr "已設定(已停用)" + +#: wpvulnerability-admin.php:3696 wpvulnerability-admin.php:3716 +#: wpvulnerability-admin.php:3736 wpvulnerability-admin.php:3756 +#: wpvulnerability-adminms.php:3890 wpvulnerability-adminms.php:3910 +#: wpvulnerability-adminms.php:3930 wpvulnerability-adminms.php:3950 +msgid "Not configured" +msgstr "未設定" + +#: wpvulnerability-admin.php:3703 wpvulnerability-adminms.php:3897 +msgid "Teams Webhook" +msgstr "Teams Webhook" + +#: wpvulnerability-admin.php:3723 wpvulnerability-adminms.php:3917 +msgid "Discord Webhook" +msgstr "Discord Webhook" + +#: wpvulnerability-admin.php:3743 wpvulnerability-adminms.php:3937 +msgid "Telegram Bot" +msgstr "Telegram 機器人" + +#: wpvulnerability-admin.php:3788 wpvulnerability-adminms.php:3982 +msgid "Cron Status" +msgstr "Cron 狀態" + +#: wpvulnerability-admin.php:3792 wpvulnerability-adminms.php:3986 +msgid "Update Database" +msgstr "更新資料庫" + +#. translators: %s: date and time +#: wpvulnerability-admin.php:3797 wpvulnerability-admin.php:3810 +#: wpvulnerability-adminms.php:3991 wpvulnerability-adminms.php:4004 +#, php-format +msgid "Next run: %s" +msgstr "下次執行:%s" + +#: wpvulnerability-admin.php:3800 wpvulnerability-admin.php:3813 +#: wpvulnerability-adminms.php:3994 wpvulnerability-adminms.php:4007 +msgid "Not scheduled" +msgstr "未排程" + +#: wpvulnerability-admin.php:3805 wpvulnerability-adminms.php:3999 +msgid "Send Notification" +msgstr "傳送通知" + +#: wpvulnerability-admin.php:3826 wpvulnerability-adminms.php:4020 +msgid "Run Update Now" +msgstr "立即執行更新" + +#: wpvulnerability-admin.php:3834 wpvulnerability-adminms.php:4028 +msgid "Run Notification Now" +msgstr "立即執行通知" + +#: wpvulnerability-admin.php:3840 wpvulnerability-adminms.php:4034 +msgid "You do not have permission to run these actions." +msgstr "您沒有執行這些操作的權限。" + +#: wpvulnerability-admin.php:3859 wpvulnerability-adminms.php:4053 +msgid "API Testing" +msgstr "API 測試" + +#: wpvulnerability-admin.php:3862 wpvulnerability-adminms.php:4056 +msgid "" +"Test API connectivity for each component. Click a button to send a test " +"request." +msgstr "測試每個元件的 API 連線能力。按一下按鈕以傳送測試要求。" + +#. translators: %s: component name +#: wpvulnerability-admin.php:3869 wpvulnerability-adminms.php:4063 +#, php-format +msgid "Test %s" +msgstr "測試 %s" + +#: wpvulnerability-admin.php:3884 wpvulnerability-adminms.php:4078 +msgid "Testing..." +msgstr "測試中..." + +#: wpvulnerability-admin.php:3900 wpvulnerability-adminms.php:4094 +msgid "HTTP Code:" +msgstr "HTTP 代碼:" + +#: wpvulnerability-admin.php:3901 wpvulnerability-adminms.php:4095 +msgid "Response Time:" +msgstr "回應時間:" + +#: wpvulnerability-admin.php:3903 wpvulnerability-adminms.php:4097 +msgid "Response Preview" +msgstr "回應預覽" + +#: wpvulnerability-admin.php:3910 wpvulnerability-admin.php:3914 +#: wpvulnerability-adminms.php:4104 wpvulnerability-adminms.php:4108 +msgid "Test" +msgstr "測試" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "Error:" +msgstr "錯誤:" + +#: wpvulnerability-admin.php:3913 wpvulnerability-adminms.php:4107 +msgid "AJAX request failed." +msgstr "AJAX 要求失敗。" + +#: wpvulnerability-admin.php:3922 wpvulnerability-adminms.php:4116 +msgid "You do not have permission to test API connectivity." +msgstr "您沒有測試 API 連線能力的權限。" + +#: wpvulnerability-admin.php:3943 wpvulnerability-adminms.php:4137 +msgid "Database Options Viewer" +msgstr "資料庫選項檢視器" + +#: wpvulnerability-admin.php:3944 wpvulnerability-adminms.php:4138 +msgid "View the raw data stored in WordPress options." +msgstr "檢視儲存在 WordPress 選項中的原始資料。" + +#: wpvulnerability-admin.php:3950 wpvulnerability-adminms.php:4144 +msgid "Select an option..." +msgstr "選取一個選項..." + +#: wpvulnerability-admin.php:3969 wpvulnerability-adminms.php:4163 +msgid "Option not found or empty." +msgstr "找不到選項或選項為空。" + +#: wpvulnerability-admin.php:3987 wpvulnerability-adminms.php:4182 +msgid "Quick Actions" +msgstr "快速動作" + +#: wpvulnerability-admin.php:3988 wpvulnerability-adminms.php:4183 +msgid "Perform debugging actions. Use with caution." +msgstr "執行除錯動作。請謹慎使用。" + +#: wpvulnerability-admin.php:3992 wpvulnerability-adminms.php:4187 +msgid "Are you sure you want to clear all caches?" +msgstr "確定要清除所有快取嗎?" + +#: wpvulnerability-admin.php:3996 wpvulnerability-adminms.php:4191 +msgid "Clear All Caches" +msgstr "清除所有快取" + +#: wpvulnerability-admin.php:4000 wpvulnerability-adminms.php:4195 +msgid "Are you sure you want to reset signatures?" +msgstr "確定要重設簽名嗎?" + +#: wpvulnerability-admin.php:4004 wpvulnerability-adminms.php:4199 +msgid "Reset Signatures" +msgstr "重設簽名" + +#: wpvulnerability-admin.php:4012 wpvulnerability-adminms.php:4207 +msgid "Export Debug Info" +msgstr "匯出除錯資訊" + +#: wpvulnerability-admin.php:4018 wpvulnerability-adminms.php:4213 +msgid "You do not have permission to perform these actions." +msgstr "您沒有執行這些動作的權限。" + +#: wpvulnerability-adminms.php:101 wpvulnerability-adminms.php:199 +msgid "Settings saved." +msgstr "設定已儲存。" + +#: wpvulnerability-adminms.php:277 +msgid "WPVulnerability cron events have been repaired across the network." +msgstr "已修復整個網路中的 WPVulnerability cron 事件。" + +#: wpvulnerability-adminms.php:3512 +msgid "You do not have permission to access this page." +msgstr "您沒有存取此頁面的權限。" + +#. translators: 1: core version +#: wpvulnerability-core.php:33 +#, php-format +msgid "" +"WordPress %1$s has a known vulnerability that may be affecting your " +"installed version." +msgstr "" +"WordPress %1$s 有一個已知漏洞,可能影響您安裝的版本。" + +#: wpvulnerability-core.php:115 wpvulnerability-plugins.php:207 +#: wpvulnerability-process.php:335 wpvulnerability-process.php:443 +#: wpvulnerability-process.php:529 wpvulnerability-themes.php:173 +#: wpvulnerability-themes.php:469 +msgid "Actively exploited" +msgstr "正被積極利用" + +#: wpvulnerability-core.php:122 wpvulnerability-plugins.php:214 +#: wpvulnerability-process.php:342 wpvulnerability-process.php:450 +#: wpvulnerability-themes.php:180 wpvulnerability-themes.php:476 +msgid "Public exploit" +msgstr "公開的漏洞利用程式" + +#: wpvulnerability-core.php:125 wpvulnerability-plugins.php:217 +#: wpvulnerability-process.php:345 wpvulnerability-process.php:453 +#: wpvulnerability-themes.php:183 wpvulnerability-themes.php:479 +msgid "Automatable" +msgstr "可自動化" + +#: wpvulnerability-core.php:139 wpvulnerability-plugins.php:245 +#: wpvulnerability-process.php:371 wpvulnerability-process.php:469 +#: wpvulnerability-process.php:544 wpvulnerability-themes.php:211 +#: wpvulnerability-themes.php:503 +msgid "References:" +msgstr "參考資料:" + +#: wpvulnerability-debug.php:399 +msgid "Invalid component specified." +msgstr "指定的元件無效。" + +#: wpvulnerability-debug.php:423 +msgid "Version not detected for this component." +msgstr "未偵測到此元件的版本。" + +#: wpvulnerability-debug.php:453 +msgid "API request successful." +msgstr "API 要求成功。" + +#. translators: %d: HTTP status code +#: wpvulnerability-debug.php:469 +#, php-format +msgid "API returned HTTP code %d." +msgstr "API 傳回 HTTP 代碼 %d。" + +#: wpvulnerability-general.php:355 +msgid "WPVulnerability Logs" +msgstr "WPVulnerability 記錄" + +#: wpvulnerability-general.php:356 +msgid "WPVulnerability Log" +msgstr "WPVulnerability 記錄" + +#: wpvulnerability-general.php:1873 wpvulnerability-general.php:1874 +msgid "Low" +msgstr "低" + +#: wpvulnerability-general.php:1875 wpvulnerability-general.php:1876 +msgid "Medium" +msgstr "中" + +#: wpvulnerability-general.php:1877 wpvulnerability-general.php:1878 +msgid "High" +msgstr "高" + +#: wpvulnerability-general.php:1879 wpvulnerability-general.php:1880 +msgid "Critical" +msgstr "嚴重" + +#: wpvulnerability-general.php:2684 +msgid "WPVulnerability Shell Logs" +msgstr "WPVulnerability Shell 記錄" + +#: wpvulnerability-general.php:2685 +msgid "WPVulnerability Shell Log" +msgstr "WPVulnerability Shell 記錄" + +#: wpvulnerability-notifications.php:30 +msgid "Every week" +msgstr "每週" + +#: wpvulnerability-notifications.php:57 +msgid "Every day" +msgstr "每日" + +#: wpvulnerability-notifications.php:84 +msgid "Invalid request." +msgstr "無效的要求。" + +#: wpvulnerability-notifications.php:104 +msgid "You have unsubscribed from WPVulnerability notifications." +msgstr "你已取消訂閱 WPVulnerability 通知。" + +#. translators: %1$s the website of Database, %2$s database site name. +#: wpvulnerability-notifications.php:289 +#, php-format +msgid "" +"Learn more about the WordPress Vulnerability Database API at %2$s" +msgstr "" +"進一步了解 %2$s 的 WordPress " +"Vulnerability Database API" + +#. translators: %1$s unsubscribe URL. +#: wpvulnerability-notifications.php:300 +#, php-format +msgid "" +"Want to stop receiving these alerts? Unsubscribe or " +"change the email frequency to Never in the WPVulnerability " +"settings." +msgstr "" +"如需停止接收這些通知,請取消訂閱或在 WPVulnerability 設" +"定中將電子郵件接收通知週期變更為 [永不使用]。" + +#: wpvulnerability-notifications.php:595 +msgid "No vulnerabilities found" +msgstr "找不到網站漏洞" + +#: wpvulnerability-notifications.php:596 +msgid "This is likely a test. The site does not have vulnerabilities." +msgstr "這是可能一項測試。這個網站沒有漏洞。" + +#: wpvulnerability-notifications.php:601 +msgid "Core vulnerabilities" +msgstr "核心程式漏洞" + +#: wpvulnerability-notifications.php:607 +msgid "Plugins vulnerabilities" +msgstr "外掛漏洞" + +#: wpvulnerability-notifications.php:613 +msgid "Themes vulnerabilities" +msgstr "佈景主題漏洞" + +#: wpvulnerability-notifications.php:619 +msgid "PHP vulnerabilities" +msgstr "PHP 漏洞" + +#: wpvulnerability-notifications.php:625 +msgid "Apache HTTPD vulnerabilities" +msgstr "Apache HTTPD 漏洞" + +#: wpvulnerability-notifications.php:631 +msgid "Nginx vulnerabilities" +msgstr "NGINX 漏洞" + +#: wpvulnerability-notifications.php:637 +msgid "MariaDB vulnerabilities" +msgstr "MariaDB 漏洞" + +#: wpvulnerability-notifications.php:643 +msgid "MySQL vulnerabilities" +msgstr "MySQL 漏洞" + +#: wpvulnerability-notifications.php:649 +msgid "ImageMagick vulnerabilities" +msgstr "ImageMagick 漏洞" + +#: wpvulnerability-notifications.php:655 +msgid "curl vulnerabilities" +msgstr "curl 漏洞" + +#: wpvulnerability-notifications.php:661 +msgid "memcached vulnerabilities" +msgstr "Memcached 漏洞" + +#: wpvulnerability-notifications.php:667 +msgid "Redis vulnerabilities" +msgstr "Redis 漏洞" + +#: wpvulnerability-notifications.php:673 +msgid "SQLite vulnerabilities" +msgstr "SQLite 漏洞" + +#. translators: Site name. +#: wpvulnerability-notifications.php:696 +#, php-format +msgid "Vulnerability found: %s" +msgstr "《%s》通知:網站漏洞已找到" + +#: wpvulnerability-notifications.php:700 +msgid "Vulnerability found" +msgstr "網站漏洞已找到" + +#. translators: 1: Plugin name +#. translators: 1: theme name +#: wpvulnerability-plugins.php:116 wpvulnerability-themes.php:82 +#, php-format +msgid "" +"%1$s has a known vulnerability that may be affecting your installed version." +msgstr "" +"%1$s 有一個已知漏洞,可能影響您安裝的版本。" + +#: wpvulnerability-plugins.php:230 wpvulnerability-process.php:358 +msgid "This plugin is closed. Please replace it with another." +msgstr "這個外掛已關閉,請改用其他外掛取代。" + +#: wpvulnerability-plugins.php:233 wpvulnerability-process.php:361 +msgid "" +"This vulnerability appears to be unpatched. Stay tuned for upcoming plugin " +"updates." +msgstr "這個漏洞似乎尚未修補,請持續追蹤未來的外掛更新。" + +#: wpvulnerability-plugins.php:570 +msgid "It hasn't been updated in over a year." +msgstr "這個外掛已超過 1 年未更新。" + +#: wpvulnerability-plugins.php:576 +msgid "It may no longer be available (closed?)." +msgstr "這個外掛已不再提供 (可能已關閉)。" + +#: wpvulnerability-plugins.php:614 wpvulnerability-plugins.php:621 +msgid "Last updated on" +msgstr "最後更新日期" + +#. translators: the number of vulnerabilities. +#: wpvulnerability-plugins.php:764 wpvulnerability-themes.php:704 +#, php-format +msgid "Vulnerabilities (%d)" +msgstr "漏洞 (%d)" + +#. translators: %s: software name. +#: wpvulnerability-process.php:601 +#, php-format +msgid "%s running" +msgstr "執行的 %s 版本" + +#: wpvulnerability-process.php:611 wpvulnerability-process.php:792 +msgid "End of Life" +msgstr "終止支援" + +#: wpvulnerability-process.php:613 wpvulnerability-process.php:618 +msgid "End of life:" +msgstr "終止支援:" + +#: wpvulnerability-process.php:616 +msgid "Supported" +msgstr "支援中" + +#: wpvulnerability-process.php:652 +msgid "Plugin" +msgstr "外掛" + +#: wpvulnerability-process.php:721 +msgid "Theme" +msgstr "佈景主題" + +#. translators: %s: end-of-life date +#: wpvulnerability-process.php:790 +#, php-format +msgid "End of life: %s" +msgstr "終止支援:%s" + +#: wpvulnerability-process.php:795 +msgid "EOL" +msgstr "EOL" + +#: wpvulnerability-run.php:30 +msgid "Network Settings" +msgstr "多站網路設定" + +#: wpvulnerability-run.php:731 wpvulnerability-run.php:781 +#: wpvulnerability-run.php:791 wpvulnerability-run.php:836 +msgid "Vulnerabilities" +msgstr "漏洞" + +#: wpvulnerability-schedule.php:30 +msgid "Every 6 hours" +msgstr "每 6 小時" + +#: wpvulnerability-schedule.php:303 +msgid "Database updates" +msgstr "資料庫更新" + +#: wpvulnerability-schedule.php:309 +msgid "Log cleanup" +msgstr "記錄清理" + +#: wpvulnerability-schedule.php:439 +msgid "" +"Notifications are scheduled, but settings currently disable them. Please " +"review the notifications tab." +msgstr "" +"通知已排程,但目前設定已停用通知。請檢閱通知標籤頁。" + +#: wpvulnerability-schedule.php:442 +msgid "This event should not be scheduled for this site." +msgstr "此事件不應為此網站排程。" + +#: wpvulnerability-schedule.php:446 +msgid "Not expected for this site." +msgstr "此網站不需要此設定。" + +#: wpvulnerability-schedule.php:450 +msgid "No instances found." +msgstr "找不到任何執行個體。" + +#: wpvulnerability-schedule.php:456 +msgid "Scheduled with an unexpected interval." +msgstr "以非預期的間隔排程。" + +#: wpvulnerability-schedule.php:460 +msgid "Multiple instances detected." +msgstr "偵測到多個執行個體。" + +#: wpvulnerability-schedule.php:465 +msgid "Scheduled as expected." +msgstr "已按預期排程。" + +#: wpvulnerability-sitehealth.php:22 +msgid "There aren't plugins vulnerabilities" +msgstr "這個網站的外掛沒有發現漏洞" + +#: wpvulnerability-sitehealth.php:30 +msgid "Shows possible vulnerabilities that exist in installed plugins." +msgstr "顯示已安裝的外掛中可能存在的漏洞。" + +#. translators: Number of plugins vulnerabilities. +#: wpvulnerability-sitehealth.php:43 +#, php-format +msgid "There is %d plugin with vulnerabilities" +msgid_plural "There are %d plugins with vulnerabilities" +msgstr[0] "這個網站有 %d 個外掛發現漏洞" + +#: wpvulnerability-sitehealth.php:49 +msgid "" +"We've detected potential vulnerabilities in installed plugins. Please check " +"them and keep them updated." +msgstr "系統在已安裝的外掛中偵測到潛在的漏洞。請檢查這些外掛並更新至最新版本。" + +#: wpvulnerability-sitehealth.php:57 +msgid "Update plugins" +msgstr "更新外掛" + +#: wpvulnerability-sitehealth.php:74 +msgid "There aren't themes vulnerabilities" +msgstr "這個網站的佈景主題沒有發現漏洞" + +#: wpvulnerability-sitehealth.php:82 +msgid "Shows possible vulnerabilities that exist in installed themes." +msgstr "顯示已安裝的佈景主題中可能存在的漏洞。" + +#. translators: Number of themes vulnerabilities. +#: wpvulnerability-sitehealth.php:95 +#, php-format +msgid "There is %d theme with vulnerabilities" +msgid_plural "There are %d themes with vulnerabilities" +msgstr[0] "這個網站有 %d 個佈景主題發現漏洞" + +#: wpvulnerability-sitehealth.php:101 +msgid "" +"We've detected potential vulnerabilities in installed themes. Please check " +"them and keep them updated." +msgstr "" +"系統在已安裝的佈景主題中偵測到潛在的漏洞。請檢查這些佈景主題並更新至最新版" +"本。" + +#: wpvulnerability-sitehealth.php:109 +msgid "Update themes" +msgstr "更新佈景主題" + +#: wpvulnerability-sitehealth.php:126 +msgid "There aren't WordPress vulnerabilities" +msgstr "這個網站的 WordPress 核心程式沒有發現漏洞" + +#: wpvulnerability-sitehealth.php:134 +msgid "Shows possible vulnerabilities existing in the WordPress core." +msgstr "顯示 WordPress 核心程式中可能存在的漏洞。" + +#. translators: Number of core vulnerabilities. +#: wpvulnerability-sitehealth.php:147 +#, php-format +msgid "There is %d core vulnerability" +msgid_plural "There are %d core vulnerabilities" +msgstr[0] "這個網站有 %d 個核心程式漏洞" + +#: wpvulnerability-sitehealth.php:153 +msgid "" +"We've detected potential vulnerabilities in this WordPress installation. " +"Please check them and keep your installation updated." +msgstr "" +"系統在 WordPress 核心程式中偵測到潛在的漏洞。請檢查核心程式並更新至最新版本。" + +#: wpvulnerability-sitehealth.php:161 +msgid "Update WordPress" +msgstr "更新 WordPress" + +#: wpvulnerability-sitehealth.php:180 +msgid "Nginx" +msgstr "NGINX" + +#: wpvulnerability-sitehealth.php:189 +msgid "Invalid software type" +msgstr "無效的軟體類型" + +#: wpvulnerability-sitehealth.php:192 +msgid "Error" +msgstr "錯誤" + +#: wpvulnerability-sitehealth.php:197 +msgid "The specified software type is not valid." +msgstr "指定的軟體類型無效。" + +#. translators: name of the software. +#: wpvulnerability-sitehealth.php:207 +#, php-format +msgid "There aren't %s vulnerabilities" +msgstr "這個網站的 %s 沒有發現漏洞" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:216 +#, php-format +msgid "Shows possible vulnerabilities existing in %s." +msgstr "顯示 %s 中可能存在的漏洞。" + +#. translators: Software and number of vulnerabilities. +#: wpvulnerability-sitehealth.php:229 +#, php-format +msgid "There is %1$d %2$s vulnerability" +msgid_plural "There are %1$d %2$s vulnerabilities" +msgstr[0] "這個網站有 %1$d 個 %2$s 漏洞" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:237 +#, php-format +msgid "" +"We've detected potential vulnerabilities in %s. Please check them and keep " +"your installation updated." +msgstr "系統已偵測到 %s 中的潛在漏洞。請檢查這些漏洞並安裝最新版本。" + +#: wpvulnerability-sitehealth.php:246 +msgid "How to update PHP" +msgstr "如何更新 PHP" + +#: wpvulnerability-sitehealth.php:386 +msgid "WPVulnerability Core" +msgstr "核心程式的 WPVulnerability 測試" + +#: wpvulnerability-sitehealth.php:394 +msgid "WPVulnerability Themes" +msgstr "佈景主題的 WPVulnerability 測試" + +#: wpvulnerability-sitehealth.php:402 +msgid "WPVulnerability Plugins" +msgstr "外掛的 WPVulnerability 測試" + +#: wpvulnerability-sitehealth.php:410 +msgid "WPVulnerability PHP" +msgstr "PHP 的 WPVulnerability 測試" + +#: wpvulnerability-sitehealth.php:418 +msgid "WPVulnerability Apache HTTPD" +msgstr "Apache HTTPD 的 WPVulnerability 測試" + +#: wpvulnerability-sitehealth.php:426 +msgid "WPVulnerability Nginx" +msgstr "NGINX 的 WPVulnerability 測試" + +#: wpvulnerability-sitehealth.php:434 +msgid "WPVulnerability MariaDB" +msgstr "MariaDB 的 WPVulnerability 測試" + +#: wpvulnerability-sitehealth.php:442 +msgid "WPVulnerability MySQL" +msgstr "MySQL 的 WPVulnerability 測試" + +#: wpvulnerability-sitehealth.php:450 +msgid "WPVulnerability ImageMagick" +msgstr "ImageMagick 的 WPVulnerability 測試" + +#: wpvulnerability-sitehealth.php:458 +msgid "WPVulnerability curl" +msgstr "curl 的 WPVulnerability 測試" + +#: wpvulnerability-sitehealth.php:466 +msgid "WPVulnerability memcached" +msgstr "Memcached 的 WPVulnerability 測試" + +#: wpvulnerability-sitehealth.php:474 +msgid "WPVulnerability redis" +msgstr "Redis 的 WPVulnerability 測試" + +#: wpvulnerability-sitehealth.php:482 +msgid "WPVulnerability sqlite" +msgstr "SQLite 的 WPVulnerability 測試" + +#: wpvulnerability-themes.php:196 wpvulnerability-themes.php:492 +msgid "This theme is closed. Please replace it with another." +msgstr "這個佈景主題已關閉,請改用其他佈景主題取代。" + +#: wpvulnerability-themes.php:199 wpvulnerability-themes.php:495 +msgid "" +"This vulnerability appears to be unpatched. Stay tuned for upcoming theme " +"updates." +msgstr "這個漏洞似乎尚未修補,請持續追蹤未來的佈景主題更新。" + +#: wpvulnerability-themes.php:391 +msgid "" +"This theme has known vulnerabilities that may be affecting your installed " +"version." +msgstr "" +"此佈景主題有已知漏洞,可能影響您安裝的版本。" + +#~ msgid "%1$s has a known vulnerability that may be affecting this version." +#~ msgstr "在 %1$s 中發現會影響目前安裝版本的已公開漏洞。" + +#~ msgid "Global score: " +#~ msgstr "整體分數: " + +#~ msgid "Severity: " +#~ msgstr "嚴重性: " + +#~ msgid "" +#~ "WordPress %1$s has a known vulnerability that may be affecting this " +#~ "version." +#~ msgstr "在 WordPress %1$s 中發現會影響目前安裝版本的已公開漏洞。" diff --git a/languages/wpvulnerability.pot b/languages/wpvulnerability.pot new file mode 100644 index 0000000..6f4227b --- /dev/null +++ b/languages/wpvulnerability.pot @@ -0,0 +1,2473 @@ +# Copyright (C) 2026 ROBOTSTXT +# This file is distributed under the GPL-3.0-or-later. +msgid "" +msgstr "" +"Project-Id-Version: WPVulnerability 5.0.0\n" +"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wpvulnerability\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"POT-Creation-Date: 2026-05-27T16:32:22+00:00\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"X-Generator: WP-CLI 2.12.0\n" +"X-Domain: wpvulnerability\n" + +#. Plugin Name of the plugin +#: wpvulnerability.php +#: wpvulnerability-admin.php:1782 +#: wpvulnerability-admin.php:1783 +#: wpvulnerability-adminms.php:1945 +#: wpvulnerability-adminms.php:1946 +#: wpvulnerability-notifications.php:105 +msgid "WPVulnerability" +msgstr "" + +#. Plugin URI of the plugin +#: wpvulnerability.php +msgid "https://www.wpvulnerability.com/plugin/" +msgstr "" + +#. Description of the plugin +#: wpvulnerability.php +msgid "Receive information about possible vulnerabilities in your WordPress from WordPress Vulnerability Database API." +msgstr "" + +#. Author of the plugin +#: wpvulnerability.php +msgid "ROBOTSTXT" +msgstr "" + +#. Author URI of the plugin +#: wpvulnerability.php +msgid "https://www.robotstxt.es/" +msgstr "" + +#: class-wpvulnerability-cli.php:35 +#: class-wpvulnerability-config-cli.php:32 +msgid "This command requires a WordPress administrator. Run with --user=." +msgstr "" + +#: class-wpvulnerability-cli.php:156 +msgid "No core vulnerabilities found." +msgstr "" + +#: class-wpvulnerability-cli.php:275 +msgid "No plugin vulnerabilities found." +msgstr "" + +#: class-wpvulnerability-cli.php:393 +msgid "No theme vulnerabilities found." +msgstr "" + +#. translators: %s is the software name (php, apache, nginx, etc.) +#: class-wpvulnerability-cli.php:490 +#, php-format +msgid "No %s vulnerabilities found." +msgstr "" + +#: wpvulnerability-admin.php:63 +#: wpvulnerability-adminms.php:227 +msgid "Data from source has been reloaded." +msgstr "" + +#: wpvulnerability-admin.php:65 +#: wpvulnerability-adminms.php:229 +msgid "You do not have permission to reload data." +msgstr "" + +#: wpvulnerability-admin.php:93 +#: wpvulnerability-adminms.php:255 +msgid "Test email has been sent." +msgstr "" + +#: wpvulnerability-admin.php:95 +#: wpvulnerability-adminms.php:259 +msgid "Test email has failed. Please, check your email settings." +msgstr "" + +#: wpvulnerability-admin.php:98 +#: wpvulnerability-adminms.php:263 +msgid "You do not have permission to send test emails." +msgstr "" + +#: wpvulnerability-admin.php:113 +msgid "WPVulnerability cron events have been repaired." +msgstr "" + +#: wpvulnerability-admin.php:115 +#: wpvulnerability-adminms.php:279 +msgid "You do not have permission to repair cron events." +msgstr "" + +#: wpvulnerability-admin.php:127 +#: wpvulnerability-adminms.php:291 +msgid "All logs have been deleted." +msgstr "" + +#: wpvulnerability-admin.php:129 +#: wpvulnerability-adminms.php:293 +msgid "You do not have permission to delete logs." +msgstr "" + +#: wpvulnerability-admin.php:146 +msgid "Uninstall preference saved." +msgstr "" + +#: wpvulnerability-admin.php:153 +#: wpvulnerability-adminms.php:316 +msgid "WPVulnerability has been reset to defaults and reloaded." +msgstr "" + +#: wpvulnerability-admin.php:155 +#: wpvulnerability-adminms.php:318 +msgid "You do not have permission to reset WPVulnerability." +msgstr "" + +#: wpvulnerability-admin.php:170 +#: wpvulnerability-adminms.php:333 +msgid "All caches have been cleared." +msgstr "" + +#: wpvulnerability-admin.php:172 +#: wpvulnerability-adminms.php:335 +msgid "You do not have permission to clear caches." +msgstr "" + +#: wpvulnerability-admin.php:187 +#: wpvulnerability-adminms.php:350 +msgid "Plugin and theme signatures have been reset." +msgstr "" + +#: wpvulnerability-admin.php:189 +#: wpvulnerability-adminms.php:352 +msgid "You do not have permission to reset signatures." +msgstr "" + +#: wpvulnerability-admin.php:212 +#: wpvulnerability-adminms.php:375 +msgid "You do not have permission to export debug information." +msgstr "" + +#: wpvulnerability-admin.php:224 +#: wpvulnerability-adminms.php:387 +msgid "Database update has been executed." +msgstr "" + +#: wpvulnerability-admin.php:226 +#: wpvulnerability-adminms.php:389 +msgid "You do not have permission to run database updates." +msgstr "" + +#: wpvulnerability-admin.php:247 +#: wpvulnerability-adminms.php:410 +msgid "Notification has been sent." +msgstr "" + +#: wpvulnerability-admin.php:249 +#: wpvulnerability-adminms.php:412 +msgid "Notification sending failed." +msgstr "" + +#: wpvulnerability-admin.php:252 +#: wpvulnerability-adminms.php:415 +msgid "You do not have permission to send notifications." +msgstr "" + +#: wpvulnerability-admin.php:266 +#: wpvulnerability-adminms.php:539 +#: wpvulnerability-schedule.php:323 +msgid "Notifications" +msgstr "" + +#: wpvulnerability-admin.php:269 +#: wpvulnerability-adminms.php:542 +msgid "Analysis" +msgstr "" + +#: wpvulnerability-admin.php:272 +#: wpvulnerability-adminms.php:545 +msgid "Logs" +msgstr "" + +#: wpvulnerability-admin.php:275 +#: wpvulnerability-adminms.php:548 +#: wpvulnerability-sitehealth.php:25 +#: wpvulnerability-sitehealth.php:77 +#: wpvulnerability-sitehealth.php:129 +#: wpvulnerability-sitehealth.php:210 +msgid "Security" +msgstr "" + +#: wpvulnerability-admin.php:278 +#: wpvulnerability-adminms.php:551 +msgid "Tools" +msgstr "" + +#: wpvulnerability-admin.php:285 +#: wpvulnerability-adminms.php:558 +msgid "Debug" +msgstr "" + +#: wpvulnerability-admin.php:290 +#: wpvulnerability-adminms.php:563 +msgid "About" +msgstr "" + +#: wpvulnerability-admin.php:427 +#: wpvulnerability-adminms.php:700 +msgid "Notification Settings" +msgstr "" + +#: wpvulnerability-admin.php:430 +#: wpvulnerability-adminms.php:703 +msgid "Configure how and when you want to receive vulnerability notifications." +msgstr "" + +#: wpvulnerability-admin.php:431 +#: wpvulnerability-adminms.php:704 +msgid "Stay informed about security vulnerabilities in your WordPress installation, plugins, themes, and server software." +msgstr "" + +#: wpvulnerability-admin.php:438 +#: wpvulnerability-adminms.php:711 +msgid "Cache Expiration Time" +msgstr "" + +#: wpvulnerability-admin.php:440 +#: wpvulnerability-admin.php:814 +#: wpvulnerability-adminms.php:713 +#: wpvulnerability-adminms.php:1087 +msgid "FORCED" +msgstr "" + +#: wpvulnerability-admin.php:444 +#: wpvulnerability-adminms.php:717 +msgid "How long to cache vulnerability data before refreshing from the API." +msgstr "" + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:453 +#: wpvulnerability-admin.php:1891 +#: wpvulnerability-admin.php:3631 +#: wpvulnerability-adminms.php:726 +#: wpvulnerability-adminms.php:2039 +#: wpvulnerability-adminms.php:3825 +#, php-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "" +msgstr[1] "" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:469 +#: wpvulnerability-adminms.php:742 +#, php-format +msgid "You can force the cache time via wp-config.php constant. Learn more →" +msgstr "" + +#: wpvulnerability-admin.php:481 +#: wpvulnerability-admin.php:3665 +#: wpvulnerability-adminms.php:754 +#: wpvulnerability-adminms.php:3859 +msgid "Notification Frequency" +msgstr "" + +#: wpvulnerability-admin.php:484 +#: wpvulnerability-adminms.php:757 +msgid "Choose how often you want to receive vulnerability notifications." +msgstr "" + +#: wpvulnerability-admin.php:489 +#: wpvulnerability-adminms.php:762 +msgid "Never - Disable automatic notifications" +msgstr "" + +#: wpvulnerability-admin.php:493 +#: wpvulnerability-adminms.php:766 +msgid "Daily - Receive notifications every day" +msgstr "" + +#: wpvulnerability-admin.php:497 +#: wpvulnerability-adminms.php:770 +msgid "Weekly - Receive notifications once a week" +msgstr "" + +#: wpvulnerability-admin.php:503 +#: wpvulnerability-adminms.php:776 +msgid "Day:" +msgstr "" + +#: wpvulnerability-admin.php:505 +#: wpvulnerability-admin.php:1955 +#: wpvulnerability-adminms.php:778 +#: wpvulnerability-adminms.php:2115 +msgid "Monday" +msgstr "" + +#: wpvulnerability-admin.php:506 +#: wpvulnerability-admin.php:1956 +#: wpvulnerability-adminms.php:779 +#: wpvulnerability-adminms.php:2116 +msgid "Tuesday" +msgstr "" + +#: wpvulnerability-admin.php:507 +#: wpvulnerability-admin.php:1957 +#: wpvulnerability-adminms.php:780 +#: wpvulnerability-adminms.php:2117 +msgid "Wednesday" +msgstr "" + +#: wpvulnerability-admin.php:508 +#: wpvulnerability-admin.php:1958 +#: wpvulnerability-adminms.php:781 +#: wpvulnerability-adminms.php:2118 +msgid "Thursday" +msgstr "" + +#: wpvulnerability-admin.php:509 +#: wpvulnerability-admin.php:1959 +#: wpvulnerability-adminms.php:782 +#: wpvulnerability-adminms.php:2119 +msgid "Friday" +msgstr "" + +#: wpvulnerability-admin.php:510 +#: wpvulnerability-admin.php:1960 +#: wpvulnerability-adminms.php:783 +#: wpvulnerability-adminms.php:2120 +msgid "Saturday" +msgstr "" + +#: wpvulnerability-admin.php:511 +#: wpvulnerability-admin.php:1961 +#: wpvulnerability-adminms.php:784 +#: wpvulnerability-adminms.php:2121 +msgid "Sunday" +msgstr "" + +#: wpvulnerability-admin.php:515 +#: wpvulnerability-adminms.php:788 +msgid "Time:" +msgstr "" + +#: wpvulnerability-admin.php:519 +#: wpvulnerability-adminms.php:792 +msgid "(24-hour format, server timezone)" +msgstr "" + +#: wpvulnerability-admin.php:528 +#: wpvulnerability-adminms.php:801 +msgid "Notification Channels" +msgstr "" + +#: wpvulnerability-admin.php:531 +#: wpvulnerability-adminms.php:804 +msgid "Select where you want to receive notifications." +msgstr "" + +#: wpvulnerability-admin.php:536 +#: wpvulnerability-admin.php:2011 +#: wpvulnerability-adminms.php:809 +#: wpvulnerability-adminms.php:2169 +msgid "Email" +msgstr "" + +#: wpvulnerability-admin.php:539 +#: wpvulnerability-adminms.php:812 +msgid "Email Addresses (separated by commas):" +msgstr "" + +#: wpvulnerability-admin.php:541 +#: wpvulnerability-adminms.php:814 +msgid "Default:" +msgstr "" + +#: wpvulnerability-admin.php:546 +#: wpvulnerability-admin.php:2016 +#: wpvulnerability-adminms.php:819 +#: wpvulnerability-adminms.php:2174 +msgid "Slack" +msgstr "" + +#: wpvulnerability-admin.php:549 +#: wpvulnerability-adminms.php:822 +msgid "Slack Webhook URL:" +msgstr "" + +#. translators: %s: Slack documentation URL +#: wpvulnerability-admin.php:555 +#: wpvulnerability-adminms.php:828 +#, php-format +msgid "Learn how to create a Slack incoming webhook →" +msgstr "" + +#: wpvulnerability-admin.php:564 +#: wpvulnerability-admin.php:2021 +#: wpvulnerability-adminms.php:837 +#: wpvulnerability-adminms.php:2179 +msgid "Microsoft Teams" +msgstr "" + +#: wpvulnerability-admin.php:567 +#: wpvulnerability-adminms.php:840 +msgid "Teams Webhook URL:" +msgstr "" + +#. translators: %s: Microsoft Teams documentation URL +#: wpvulnerability-admin.php:573 +#: wpvulnerability-adminms.php:846 +#, php-format +msgid "Learn how to create a Teams incoming webhook →" +msgstr "" + +#: wpvulnerability-admin.php:582 +#: wpvulnerability-adminms.php:855 +msgid "Discord" +msgstr "" + +#: wpvulnerability-admin.php:585 +#: wpvulnerability-adminms.php:858 +msgid "Discord Webhook URL:" +msgstr "" + +#. translators: %s: Discord documentation URL +#: wpvulnerability-admin.php:591 +#: wpvulnerability-adminms.php:864 +#, php-format +msgid "Learn how to create a Discord webhook →" +msgstr "" + +#: wpvulnerability-admin.php:600 +#: wpvulnerability-adminms.php:873 +msgid "Telegram" +msgstr "" + +#: wpvulnerability-admin.php:603 +#: wpvulnerability-adminms.php:876 +msgid "Telegram Bot Token:" +msgstr "" + +#: wpvulnerability-admin.php:605 +#: wpvulnerability-adminms.php:878 +msgid "Format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "" + +#: wpvulnerability-admin.php:607 +#: wpvulnerability-adminms.php:880 +msgid "Telegram Chat ID:" +msgstr "" + +#. translators: %s: Telegram documentation URL +#: wpvulnerability-admin.php:613 +#: wpvulnerability-adminms.php:886 +#, php-format +msgid "Learn how to create a Telegram bot and get Chat ID →" +msgstr "" + +#: wpvulnerability-admin.php:623 +#: wpvulnerability-adminms.php:896 +msgid "Save Notification Settings" +msgstr "" + +#: wpvulnerability-admin.php:700 +#: wpvulnerability-admin.php:2552 +#: wpvulnerability-adminms.php:973 +#: wpvulnerability-adminms.php:2459 +msgid "WordPress Components" +msgstr "" + +#: wpvulnerability-admin.php:703 +#: wpvulnerability-admin.php:2560 +#: wpvulnerability-adminms.php:976 +#: wpvulnerability-adminms.php:2467 +msgid "WordPress Core" +msgstr "" + +#: wpvulnerability-admin.php:707 +#: wpvulnerability-admin.php:1472 +#: wpvulnerability-admin.php:1573 +#: wpvulnerability-admin.php:2109 +#: wpvulnerability-admin.php:2571 +#: wpvulnerability-adminms.php:980 +#: wpvulnerability-adminms.php:1744 +#: wpvulnerability-adminms.php:1843 +#: wpvulnerability-adminms.php:2266 +#: wpvulnerability-adminms.php:2478 +msgid "Plugins" +msgstr "" + +#: wpvulnerability-admin.php:711 +#: wpvulnerability-admin.php:1473 +#: wpvulnerability-admin.php:1574 +#: wpvulnerability-admin.php:2114 +#: wpvulnerability-admin.php:2587 +#: wpvulnerability-adminms.php:984 +#: wpvulnerability-adminms.php:1745 +#: wpvulnerability-adminms.php:1844 +#: wpvulnerability-adminms.php:2271 +#: wpvulnerability-adminms.php:2494 +msgid "Themes" +msgstr "" + +#: wpvulnerability-admin.php:717 +#: wpvulnerability-adminms.php:990 +msgid "Software & Languages" +msgstr "" + +#: wpvulnerability-admin.php:720 +#: wpvulnerability-admin.php:1474 +#: wpvulnerability-admin.php:2119 +#: wpvulnerability-adminms.php:993 +#: wpvulnerability-adminms.php:1746 +#: wpvulnerability-adminms.php:2276 +#: wpvulnerability-sitehealth.php:178 +msgid "PHP" +msgstr "" + +#: wpvulnerability-admin.php:726 +#: wpvulnerability-adminms.php:999 +msgid "Web Servers" +msgstr "" + +#: wpvulnerability-admin.php:729 +#: wpvulnerability-admin.php:1475 +#: wpvulnerability-admin.php:2124 +#: wpvulnerability-adminms.php:1002 +#: wpvulnerability-adminms.php:1747 +#: wpvulnerability-adminms.php:2281 +#: wpvulnerability-sitehealth.php:179 +msgid "Apache HTTPD" +msgstr "" + +#: wpvulnerability-admin.php:733 +#: wpvulnerability-admin.php:1476 +#: wpvulnerability-admin.php:2129 +#: wpvulnerability-adminms.php:1006 +#: wpvulnerability-adminms.php:1748 +#: wpvulnerability-adminms.php:2286 +msgid "nginx" +msgstr "" + +#: wpvulnerability-admin.php:739 +#: wpvulnerability-adminms.php:1012 +msgid "Databases" +msgstr "" + +#: wpvulnerability-admin.php:742 +#: wpvulnerability-admin.php:1477 +#: wpvulnerability-admin.php:2134 +#: wpvulnerability-adminms.php:1015 +#: wpvulnerability-adminms.php:1749 +#: wpvulnerability-adminms.php:2291 +#: wpvulnerability-sitehealth.php:181 +msgid "MariaDB" +msgstr "" + +#: wpvulnerability-admin.php:746 +#: wpvulnerability-admin.php:1478 +#: wpvulnerability-admin.php:2139 +#: wpvulnerability-adminms.php:1019 +#: wpvulnerability-adminms.php:1750 +#: wpvulnerability-adminms.php:2296 +#: wpvulnerability-sitehealth.php:182 +msgid "MySQL" +msgstr "" + +#: wpvulnerability-admin.php:750 +#: wpvulnerability-admin.php:1483 +#: wpvulnerability-admin.php:2164 +#: wpvulnerability-admin.php:3104 +#: wpvulnerability-adminms.php:1023 +#: wpvulnerability-adminms.php:1755 +#: wpvulnerability-adminms.php:2321 +#: wpvulnerability-adminms.php:3281 +msgid "SQLite" +msgstr "" + +#: wpvulnerability-admin.php:756 +#: wpvulnerability-adminms.php:1029 +msgid "Additional Tools" +msgstr "" + +#: wpvulnerability-admin.php:759 +#: wpvulnerability-admin.php:1479 +#: wpvulnerability-admin.php:2144 +#: wpvulnerability-admin.php:3101 +#: wpvulnerability-adminms.php:1032 +#: wpvulnerability-adminms.php:1751 +#: wpvulnerability-adminms.php:2301 +#: wpvulnerability-adminms.php:3278 +#: wpvulnerability-sitehealth.php:183 +msgid "ImageMagick" +msgstr "" + +#: wpvulnerability-admin.php:763 +#: wpvulnerability-admin.php:1480 +#: wpvulnerability-admin.php:2149 +#: wpvulnerability-adminms.php:1036 +#: wpvulnerability-adminms.php:1752 +#: wpvulnerability-adminms.php:2306 +#: wpvulnerability-sitehealth.php:184 +msgid "curl" +msgstr "" + +#: wpvulnerability-admin.php:767 +#: wpvulnerability-admin.php:1481 +#: wpvulnerability-admin.php:2154 +#: wpvulnerability-adminms.php:1040 +#: wpvulnerability-adminms.php:1753 +#: wpvulnerability-adminms.php:2311 +msgid "memcached" +msgstr "" + +#: wpvulnerability-admin.php:771 +#: wpvulnerability-admin.php:1482 +#: wpvulnerability-admin.php:2159 +#: wpvulnerability-admin.php:3102 +#: wpvulnerability-adminms.php:1044 +#: wpvulnerability-adminms.php:1754 +#: wpvulnerability-adminms.php:2316 +#: wpvulnerability-adminms.php:3279 +msgid "Redis" +msgstr "" + +#: wpvulnerability-admin.php:784 +#: wpvulnerability-adminms.php:1057 +msgid "Component Analysis Settings" +msgstr "" + +#: wpvulnerability-admin.php:787 +#: wpvulnerability-adminms.php:1060 +msgid "Enable or disable vulnerability analysis for specific components." +msgstr "" + +#: wpvulnerability-admin.php:788 +#: wpvulnerability-adminms.php:1061 +msgid "Check the components you want to HIDE from vulnerability scans and reports. Unchecked components will be actively analyzed. Components with active analysis are shown in green, hidden components in red." +msgstr "" + +#: wpvulnerability-admin.php:820 +#: wpvulnerability-adminms.php:1093 +msgid "Hidden (forced by constant)" +msgstr "" + +#: wpvulnerability-admin.php:823 +#: wpvulnerability-adminms.php:1096 +msgid "🔴 Analysis disabled" +msgstr "" + +#: wpvulnerability-admin.php:826 +#: wpvulnerability-adminms.php:1099 +msgid "🟢 Analysis active" +msgstr "" + +#: wpvulnerability-admin.php:848 +#: wpvulnerability-adminms.php:1121 +msgid "Tip:" +msgstr "" + +#. translators: %s: documentation URL +#: wpvulnerability-admin.php:852 +#: wpvulnerability-adminms.php:1125 +#, php-format +msgid "You can force-disable components via wp-config.php constants. Learn more about force-hiding checks →" +msgstr "" + +#: wpvulnerability-admin.php:860 +#: wpvulnerability-adminms.php:1133 +msgid "Save Analysis Settings" +msgstr "" + +#: wpvulnerability-admin.php:920 +#: wpvulnerability-adminms.php:1193 +msgid "« Previous" +msgstr "" + +#: wpvulnerability-admin.php:921 +#: wpvulnerability-adminms.php:1194 +msgid "Next »" +msgstr "" + +#: wpvulnerability-admin.php:932 +#: wpvulnerability-adminms.php:1205 +msgid "Log entry not found or has been removed." +msgstr "" + +#: wpvulnerability-admin.php:935 +#: wpvulnerability-adminms.php:1208 +msgid "Unable to load the requested log entry." +msgstr "" + +#: wpvulnerability-admin.php:945 +#: wpvulnerability-adminms.php:1218 +msgid "Log Configuration" +msgstr "" + +#: wpvulnerability-admin.php:950 +#: wpvulnerability-adminms.php:1223 +msgid "Total Logs" +msgstr "" + +#: wpvulnerability-admin.php:954 +#: wpvulnerability-adminms.php:1227 +msgid "Retention Period" +msgstr "" + +#: wpvulnerability-admin.php:959 +#: wpvulnerability-admin.php:1301 +#: wpvulnerability-admin.php:3029 +#: wpvulnerability-admin.php:3043 +#: wpvulnerability-admin.php:3475 +#: wpvulnerability-admin.php:3483 +#: wpvulnerability-adminms.php:1232 +#: wpvulnerability-adminms.php:1574 +#: wpvulnerability-adminms.php:3206 +#: wpvulnerability-adminms.php:3220 +#: wpvulnerability-adminms.php:3669 +#: wpvulnerability-adminms.php:3677 +msgid "Disabled" +msgstr "" + +#. translators: %d: Number of days. +#. translators: %d: number of days +#: wpvulnerability-admin.php:962 +#: wpvulnerability-admin.php:984 +#: wpvulnerability-admin.php:3641 +#: wpvulnerability-adminms.php:1235 +#: wpvulnerability-adminms.php:1257 +#: wpvulnerability-adminms.php:3835 +#, php-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "" +msgstr[1] "" + +#: wpvulnerability-admin.php:975 +#: wpvulnerability-adminms.php:1248 +msgid "Log Retention Period" +msgstr "" + +#: wpvulnerability-admin.php:981 +#: wpvulnerability-adminms.php:1254 +msgid "None (Disabled)" +msgstr "" + +#: wpvulnerability-admin.php:1004 +#: wpvulnerability-adminms.php:1277 +msgid "This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant." +msgstr "" + +#: wpvulnerability-admin.php:1009 +#: wpvulnerability-adminms.php:1282 +msgid "Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted." +msgstr "" + +#: wpvulnerability-admin.php:1013 +#: wpvulnerability-adminms.php:1286 +msgid "Save Configuration" +msgstr "" + +#: wpvulnerability-admin.php:1018 +#: wpvulnerability-adminms.php:1291 +msgid "Log retention is currently disabled." +msgstr "" + +#: wpvulnerability-admin.php:1018 +#: wpvulnerability-adminms.php:1291 +msgid "API responses are not being saved." +msgstr "" + +#: wpvulnerability-admin.php:1031 +#: wpvulnerability-adminms.php:1304 +msgid "Log Details" +msgstr "" + +#: wpvulnerability-admin.php:1035 +#: wpvulnerability-admin.php:1104 +#: wpvulnerability-adminms.php:1308 +#: wpvulnerability-adminms.php:1377 +msgid "Date" +msgstr "" + +#: wpvulnerability-admin.php:1039 +#: wpvulnerability-admin.php:1105 +#: wpvulnerability-adminms.php:1312 +#: wpvulnerability-adminms.php:1378 +msgid "API Endpoint" +msgstr "" + +#: wpvulnerability-admin.php:1044 +#: wpvulnerability-adminms.php:1317 +msgid "API Response" +msgstr "" + +#: wpvulnerability-admin.php:1049 +#: wpvulnerability-adminms.php:1322 +msgid "Back to Logs" +msgstr "" + +#: wpvulnerability-admin.php:1058 +#: wpvulnerability-adminms.php:1331 +msgid "No logs available" +msgstr "" + +#: wpvulnerability-admin.php:1059 +#: wpvulnerability-adminms.php:1332 +msgid "API response logs will appear here once the vulnerability scanner runs." +msgstr "" + +#: wpvulnerability-admin.php:1063 +#: wpvulnerability-adminms.php:1336 +msgid "API Response Logs" +msgstr "" + +#: wpvulnerability-admin.php:1073 +#: wpvulnerability-adminms.php:1346 +msgid "Show:" +msgstr "" + +#: wpvulnerability-admin.php:1082 +#: wpvulnerability-adminms.php:1355 +msgid "Apply" +msgstr "" + +#. translators: 1: first item, 2: last item, 3: total items +#: wpvulnerability-admin.php:1090 +#: wpvulnerability-adminms.php:1363 +#, php-format +msgid "Showing %1$s–%2$s of %3$s" +msgstr "" + +#: wpvulnerability-admin.php:1106 +#: wpvulnerability-adminms.php:1379 +msgid "Actions" +msgstr "" + +#: wpvulnerability-admin.php:1133 +#: wpvulnerability-admin.php:3957 +#: wpvulnerability-adminms.php:1406 +#: wpvulnerability-adminms.php:4151 +msgid "View" +msgstr "" + +#: wpvulnerability-admin.php:1150 +#: wpvulnerability-adminms.php:1423 +msgid "Danger Zone" +msgstr "" + +#: wpvulnerability-admin.php:1152 +#: wpvulnerability-adminms.php:1425 +msgid "Permanently delete all API response logs. This action cannot be undone." +msgstr "" + +#: wpvulnerability-admin.php:1154 +#: wpvulnerability-adminms.php:1427 +msgid "Are you sure you want to delete all logs? This action cannot be undone." +msgstr "" + +#: wpvulnerability-admin.php:1157 +#: wpvulnerability-adminms.php:1430 +msgid "Delete All Logs" +msgstr "" + +#: wpvulnerability-admin.php:1201 +#: wpvulnerability-adminms.php:1474 +msgid "Reload Data from API" +msgstr "" + +#: wpvulnerability-admin.php:1204 +#: wpvulnerability-adminms.php:1477 +msgid "Reload all Core, Plugins, Themes and other components information directly from the API to have updated data. This will clear the cache and fetch fresh vulnerability information." +msgstr "" + +#: wpvulnerability-admin.php:1209 +#: wpvulnerability-adminms.php:1482 +msgid "Reload Data" +msgstr "" + +#: wpvulnerability-admin.php:1218 +#: wpvulnerability-adminms.php:1491 +msgid "Test Email Notifications" +msgstr "" + +#: wpvulnerability-admin.php:1221 +#: wpvulnerability-adminms.php:1494 +msgid "Send a test email notification with current vulnerability data to verify your email configuration is working correctly." +msgstr "" + +#: wpvulnerability-admin.php:1231 +#: wpvulnerability-adminms.php:1504 +msgid "From address (configured via constant):" +msgstr "" + +#: wpvulnerability-admin.php:1243 +#: wpvulnerability-adminms.php:1516 +msgid "From address (default):" +msgstr "" + +#: wpvulnerability-admin.php:1252 +#: wpvulnerability-adminms.php:1525 +msgid "Learn how to customize the email sender address →" +msgstr "" + +#: wpvulnerability-admin.php:1258 +#: wpvulnerability-adminms.php:1531 +msgid "Send Test Email" +msgstr "" + +#: wpvulnerability-admin.php:1267 +#: wpvulnerability-adminms.php:1540 +msgid "WP-Cron Status" +msgstr "" + +#: wpvulnerability-admin.php:1270 +#: wpvulnerability-adminms.php:1543 +msgid "View and manage WP-Cron scheduled events. Compare expected schedules with actual cron jobs to ensure automated tasks are running correctly." +msgstr "" + +#: wpvulnerability-admin.php:1275 +#: wpvulnerability-adminms.php:1548 +msgid "No cron data available." +msgstr "" + +#: wpvulnerability-admin.php:1281 +#: wpvulnerability-adminms.php:1554 +msgid "Hook" +msgstr "" + +#: wpvulnerability-admin.php:1282 +#: wpvulnerability-adminms.php:1555 +msgid "Expected" +msgstr "" + +#: wpvulnerability-admin.php:1283 +#: wpvulnerability-adminms.php:1556 +msgid "Found" +msgstr "" + +#: wpvulnerability-admin.php:1284 +#: wpvulnerability-adminms.php:1557 +msgid "Next Run" +msgstr "" + +#: wpvulnerability-admin.php:1285 +#: wpvulnerability-admin.php:3236 +#: wpvulnerability-admin.php:3559 +#: wpvulnerability-adminms.php:1558 +#: wpvulnerability-adminms.php:3413 +#: wpvulnerability-adminms.php:3753 +msgid "Status" +msgstr "" + +#: wpvulnerability-admin.php:1299 +#: wpvulnerability-adminms.php:1572 +msgid "Not expected" +msgstr "" + +#: wpvulnerability-admin.php:1321 +#: wpvulnerability-adminms.php:1594 +#: wpvulnerability-general.php:1871 +#: wpvulnerability-general.php:1872 +msgid "None" +msgstr "" + +#: wpvulnerability-admin.php:1356 +#: wpvulnerability-adminms.php:1629 +msgid "OK" +msgstr "" + +#: wpvulnerability-admin.php:1366 +#: wpvulnerability-adminms.php:1639 +msgid "⚠️ Unexpected WPVulnerability Events" +msgstr "" + +#: wpvulnerability-admin.php:1383 +#: wpvulnerability-adminms.php:1656 +msgid "No interval" +msgstr "" + +#: wpvulnerability-admin.php:1390 +#: wpvulnerability-adminms.php:1663 +msgid "Next:" +msgstr "" + +#: wpvulnerability-admin.php:1400 +#: wpvulnerability-adminms.php:1673 +msgid "Repair Cron Events" +msgstr "" + +#: wpvulnerability-admin.php:1408 +#: wpvulnerability-adminms.php:1681 +msgid "Uninstall Data" +msgstr "" + +#: wpvulnerability-admin.php:1410 +#: wpvulnerability-adminms.php:1683 +msgid "By default, all plugin data is preserved when WPVulnerability is deleted. Enable the option below only if you want all options, logs, and cached data permanently removed on uninstall." +msgstr "" + +#: wpvulnerability-admin.php:1420 +#: wpvulnerability-adminms.php:1693 +msgid "Delete all plugin data on uninstall" +msgstr "" + +#: wpvulnerability-admin.php:1423 +#: wpvulnerability-adminms.php:1696 +msgid "Default: unchecked (data preserved). Check only if you want a clean removal." +msgstr "" + +#: wpvulnerability-admin.php:1425 +#: wpvulnerability-adminms.php:1698 +msgid "Save preference" +msgstr "" + +#: wpvulnerability-admin.php:1432 +#: wpvulnerability-adminms.php:1705 +msgid "Reset WPVulnerability" +msgstr "" + +#: wpvulnerability-admin.php:1434 +#: wpvulnerability-adminms.php:1707 +msgid "Delete all WPVulnerability settings, cached data, logs, and scheduled events, then restore defaults and reload data from the API." +msgstr "" + +#: wpvulnerability-admin.php:1436 +#: wpvulnerability-adminms.php:1709 +msgid "This action cannot be undone." +msgstr "" + +#: wpvulnerability-admin.php:1438 +#: wpvulnerability-adminms.php:1711 +msgid "Are you sure you want to reset all WPVulnerability data? This action cannot be undone." +msgstr "" + +#: wpvulnerability-admin.php:1441 +#: wpvulnerability-adminms.php:1713 +msgid "Reset Plugin" +msgstr "" + +#: wpvulnerability-admin.php:1468 +#: wpvulnerability-adminms.php:1740 +msgid "Vulnerability Database Statistics" +msgstr "" + +#. translators: number of vulnerabilities. +#: wpvulnerability-admin.php:1510 +#: wpvulnerability-adminms.php:1782 +#, php-format +msgid "%s vulnerability" +msgid_plural "%s vulnerabilities" +msgstr[0] "" +msgstr[1] "" + +#. translators: number of products. +#: wpvulnerability-admin.php:1520 +#: wpvulnerability-adminms.php:1792 +#, php-format +msgid "(%s product)" +msgid_plural "(%s products)" +msgstr[0] "" +msgstr[1] "" + +#: wpvulnerability-admin.php:1527 +#: wpvulnerability-adminms.php:1799 +msgid "No data" +msgstr "" + +#. translators: date of last update. +#: wpvulnerability-admin.php:1544 +#: wpvulnerability-adminms.php:1814 +#, php-format +msgid "Database last updated: %s" +msgstr "" + +#: wpvulnerability-admin.php:1566 +#: wpvulnerability-adminms.php:1836 +msgid "Intelligence Sources" +msgstr "" + +#: wpvulnerability-admin.php:1567 +#: wpvulnerability-adminms.php:1837 +msgid "Number of vulnerabilities contributed by each intelligence source." +msgstr "" + +#: wpvulnerability-admin.php:1571 +#: wpvulnerability-adminms.php:1841 +msgid "Source" +msgstr "" + +#: wpvulnerability-admin.php:1572 +#: wpvulnerability-admin.php:2104 +#: wpvulnerability-adminms.php:1842 +#: wpvulnerability-adminms.php:2261 +msgid "Core" +msgstr "" + +#: wpvulnerability-admin.php:1603 +#: wpvulnerability-adminms.php:1873 +msgid "Sponsors" +msgstr "" + +#: wpvulnerability-admin.php:1626 +#: wpvulnerability-adminms.php:1896 +msgid "No sponsor data available." +msgstr "" + +#: wpvulnerability-admin.php:1633 +#: wpvulnerability-adminms.php:1903 +msgid "Contributors" +msgstr "" + +#: wpvulnerability-admin.php:1656 +#: wpvulnerability-adminms.php:1926 +msgid "No contributor data available." +msgstr "" + +#: wpvulnerability-admin.php:1674 +#: wpvulnerability-adminms.php:432 +msgid "You do not have sufficient permissions to access this page." +msgstr "" + +#: wpvulnerability-admin.php:1684 +#: wpvulnerability-adminms.php:441 +msgid "WPVulnerability settings" +msgstr "" + +#: wpvulnerability-admin.php:1801 +#: wpvulnerability-adminms.php:1963 +msgid "Configure and save these settings to receive notifications." +msgstr "" + +#: wpvulnerability-admin.php:1814 +#: wpvulnerability-adminms.php:2071 +msgid "Configure and save these settings to hide vulnerabilities." +msgstr "" + +#: wpvulnerability-admin.php:1845 +#: wpvulnerability-adminms.php:1993 +msgid "Default administrator email" +msgstr "" + +#: wpvulnerability-admin.php:1909 +#: wpvulnerability-adminms.php:2057 +msgid "Read more if you want to force the cache time." +msgstr "" + +#: wpvulnerability-admin.php:1939 +#: wpvulnerability-adminms.php:2099 +msgid "Never" +msgstr "" + +#: wpvulnerability-admin.php:1944 +#: wpvulnerability-adminms.php:2104 +msgid "Daily" +msgstr "" + +#: wpvulnerability-admin.php:1949 +#: wpvulnerability-adminms.php:2109 +msgid "Weekly" +msgstr "" + +#: wpvulnerability-admin.php:1953 +#: wpvulnerability-adminms.php:2113 +msgid "Day" +msgstr "" + +#: wpvulnerability-admin.php:1966 +#: wpvulnerability-adminms.php:2126 +msgid "Hour" +msgstr "" + +#: wpvulnerability-admin.php:1968 +#: wpvulnerability-adminms.php:2128 +msgid "Minute" +msgstr "" + +#: wpvulnerability-admin.php:2166 +#: wpvulnerability-adminms.php:2323 +msgid "Read more about how to force the deactivation of an item." +msgstr "" + +#: wpvulnerability-admin.php:2292 +#: wpvulnerability-adminms.php:2870 +msgid "Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com" +msgstr "" + +#: wpvulnerability-admin.php:2315 +#: wpvulnerability-adminms.php:2893 +msgid "Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com" +msgstr "" + +#: wpvulnerability-admin.php:2338 +#: wpvulnerability-adminms.php:2916 +msgid "Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com" +msgstr "" + +#: wpvulnerability-admin.php:2357 +#: wpvulnerability-adminms.php:2935 +msgid "Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" +msgstr "" + +#: wpvulnerability-admin.php:2493 +#: wpvulnerability-adminms.php:2400 +msgid "All Clear" +msgstr "" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2503 +#: wpvulnerability-adminms.php:2410 +#, php-format +msgid "%d Critical Issue Found" +msgid_plural "%d Critical Issues Found" +msgstr[0] "" +msgstr[1] "" + +#. translators: %d: number of vulnerabilities +#: wpvulnerability-admin.php:2508 +#: wpvulnerability-adminms.php:2415 +#, php-format +msgid "%d Issue Found" +msgid_plural "%d Issues Found" +msgstr[0] "" +msgstr[1] "" + +#: wpvulnerability-admin.php:2515 +#: wpvulnerability-adminms.php:2422 +msgid "Never checked" +msgstr "" + +#. translators: %d: number of minutes +#: wpvulnerability-admin.php:2523 +#: wpvulnerability-adminms.php:2430 +#, php-format +msgid "%d minute ago" +msgid_plural "%d minutes ago" +msgstr[0] "" +msgstr[1] "" + +#. translators: %d: number of hours +#: wpvulnerability-admin.php:2527 +#: wpvulnerability-adminms.php:2434 +#, php-format +msgid "%d hour ago" +msgid_plural "%d hours ago" +msgstr[0] "" +msgstr[1] "" + +#. translators: %s: time since last check +#: wpvulnerability-admin.php:2539 +#: wpvulnerability-adminms.php:2446 +#, php-format +msgid "Last checked: %s" +msgstr "" + +#: wpvulnerability-admin.php:2540 +#: wpvulnerability-adminms.php:2447 +msgid "Refresh Now" +msgstr "" + +#: wpvulnerability-admin.php:2547 +#: wpvulnerability-adminms.php:2454 +msgid "No vulnerabilities detected" +msgstr "" + +#: wpvulnerability-admin.php:2548 +#: wpvulnerability-adminms.php:2455 +msgid "Your site is up to date and secure" +msgstr "" + +#: wpvulnerability-admin.php:2616 +#: wpvulnerability-adminms.php:2523 +msgid "Server Software" +msgstr "" + +#: wpvulnerability-admin.php:2829 +#: wpvulnerability-adminms.php:2736 +msgid "Site Health" +msgstr "" + +#: wpvulnerability-admin.php:2831 +#: wpvulnerability-adminms.php:2738 +#: wpvulnerability-run.php:33 +msgid "Settings" +msgstr "" + +#: wpvulnerability-admin.php:2846 +#: wpvulnerability-adminms.php:2754 +msgid "WPVulnerability Status" +msgstr "" + +#: wpvulnerability-admin.php:2878 +#: wpvulnerability-adminms.php:3052 +msgid "Receive vulnerability notifications" +msgstr "" + +#: wpvulnerability-admin.php:2886 +#: wpvulnerability-adminms.php:3060 +msgid "Cache expiration time" +msgstr "" + +#: wpvulnerability-admin.php:2895 +#: wpvulnerability-adminms.php:3069 +msgid "How often you want to receive notifications" +msgstr "" + +#: wpvulnerability-admin.php:2904 +#: wpvulnerability-adminms.php:3078 +msgid "Where do you want to receive notifications?" +msgstr "" + +#: wpvulnerability-admin.php:2913 +#: wpvulnerability-adminms.php:3087 +msgid "Email addresses to notify (separated by commas)" +msgstr "" + +#: wpvulnerability-admin.php:2922 +#: wpvulnerability-adminms.php:3096 +msgid "Slack webhook URL" +msgstr "" + +#: wpvulnerability-admin.php:2931 +#: wpvulnerability-adminms.php:3105 +msgid "Teams webhook URL" +msgstr "" + +#: wpvulnerability-admin.php:2950 +#: wpvulnerability-adminms.php:3126 +msgid "Vulnerabilities to hide" +msgstr "" + +#: wpvulnerability-admin.php:2958 +#: wpvulnerability-adminms.php:3134 +msgid "What do you want to hide?" +msgstr "" + +#: wpvulnerability-admin.php:3008 +#: wpvulnerability-adminms.php:3185 +msgid "Standard (Hybrid Detection)" +msgstr "" + +#: wpvulnerability-admin.php:3009 +#: wpvulnerability-adminms.php:3186 +msgid "Strict (Extensions Only)" +msgstr "" + +#: wpvulnerability-admin.php:3010 +#: wpvulnerability-adminms.php:3187 +msgid "Disabled (No Detection)" +msgstr "" + +#: wpvulnerability-admin.php:3016 +#: wpvulnerability-adminms.php:3193 +msgid "Security Status" +msgstr "" + +#: wpvulnerability-admin.php:3020 +#: wpvulnerability-adminms.php:3197 +msgid "Security Mode" +msgstr "" + +#: wpvulnerability-admin.php:3025 +#: wpvulnerability-adminms.php:3202 +msgid "Shell Execution" +msgstr "" + +#: wpvulnerability-admin.php:3027 +#: wpvulnerability-admin.php:3475 +#: wpvulnerability-admin.php:3483 +#: wpvulnerability-adminms.php:3204 +#: wpvulnerability-adminms.php:3669 +#: wpvulnerability-adminms.php:3677 +msgid "Enabled" +msgstr "" + +#: wpvulnerability-admin.php:3034 +#: wpvulnerability-adminms.php:3211 +msgid "Audit Logging" +msgstr "" + +#. translators: %d: number of days +#: wpvulnerability-admin.php:3039 +#: wpvulnerability-adminms.php:3216 +#, php-format +msgid "Enabled (%d days)" +msgstr "" + +#: wpvulnerability-admin.php:3048 +#: wpvulnerability-adminms.php:3225 +msgid "Total Log Entries" +msgstr "" + +#: wpvulnerability-admin.php:3055 +#: wpvulnerability-adminms.php:3232 +msgid "Last Shell Execution" +msgstr "" + +#. translators: %s: time ago +#: wpvulnerability-admin.php:3061 +#: wpvulnerability-admin.php:3266 +#: wpvulnerability-adminms.php:3238 +#: wpvulnerability-adminms.php:3441 +#, php-format +msgid "%s ago" +msgstr "" + +#: wpvulnerability-admin.php:3073 +#: wpvulnerability-adminms.php:3250 +msgid "Configure security settings via wp-config.php constants: WPVULNERABILITY_DISABLE_SHELL_EXEC, WPVULNERABILITY_SECURITY_MODE, WPVULNERABILITY_SHELL_EXEC_WHITELIST." +msgstr "" + +#. translators: %s: URL to security documentation +#: wpvulnerability-admin.php:3079 +#: wpvulnerability-adminms.php:3256 +#, php-format +msgid "See security configuration documentation for details." +msgstr "" + +#: wpvulnerability-admin.php:3103 +#: wpvulnerability-adminms.php:3280 +msgid "Memcached" +msgstr "" + +#: wpvulnerability-admin.php:3131 +#: wpvulnerability-adminms.php:3308 +msgid "Imagick Extension" +msgstr "" + +#: wpvulnerability-admin.php:3132 +#: wpvulnerability-adminms.php:3309 +msgid "Redis Extension" +msgstr "" + +#: wpvulnerability-admin.php:3133 +#: wpvulnerability-adminms.php:3310 +msgid "Memcached Extension" +msgstr "" + +#: wpvulnerability-admin.php:3134 +#: wpvulnerability-adminms.php:3311 +msgid "Memcache Extension" +msgstr "" + +#: wpvulnerability-admin.php:3135 +#: wpvulnerability-adminms.php:3312 +msgid "SQLite3 Extension" +msgstr "" + +#: wpvulnerability-admin.php:3136 +#: wpvulnerability-adminms.php:3313 +msgid "PDO SQLite" +msgstr "" + +#: wpvulnerability-admin.php:3137 +#: wpvulnerability-adminms.php:3314 +msgid "Shell Command" +msgstr "" + +#: wpvulnerability-admin.php:3138 +#: wpvulnerability-adminms.php:3315 +msgid "Binary Check" +msgstr "" + +#: wpvulnerability-admin.php:3139 +#: wpvulnerability-adminms.php:3316 +msgid "Not Detected" +msgstr "" + +#: wpvulnerability-admin.php:3143 +#: wpvulnerability-adminms.php:3320 +msgid "Software Detection Methods" +msgstr "" + +#: wpvulnerability-admin.php:3144 +#: wpvulnerability-adminms.php:3321 +msgid "Shows which detection method was used for each software component and the reliability score." +msgstr "" + +#: wpvulnerability-admin.php:3149 +#: wpvulnerability-admin.php:3234 +#: wpvulnerability-admin.php:3558 +#: wpvulnerability-adminms.php:3326 +#: wpvulnerability-adminms.php:3411 +#: wpvulnerability-adminms.php:3752 +msgid "Component" +msgstr "" + +#: wpvulnerability-admin.php:3150 +#: wpvulnerability-adminms.php:3327 +msgid "Version" +msgstr "" + +#: wpvulnerability-admin.php:3151 +#: wpvulnerability-adminms.php:3328 +msgid "Detection Method" +msgstr "" + +#: wpvulnerability-admin.php:3152 +#: wpvulnerability-adminms.php:3329 +msgid "Reliability" +msgstr "" + +#: wpvulnerability-admin.php:3164 +#: wpvulnerability-adminms.php:3341 +msgid "Not detected" +msgstr "" + +#: wpvulnerability-admin.php:3220 +#: wpvulnerability-adminms.php:3397 +msgid "Shell Execution Audit Logs" +msgstr "" + +#: wpvulnerability-admin.php:3221 +#: wpvulnerability-adminms.php:3398 +msgid "Complete audit trail of shell command executions for security monitoring." +msgstr "" + +#: wpvulnerability-admin.php:3226 +#: wpvulnerability-adminms.php:3403 +msgid "No shell execution logs found." +msgstr "" + +#: wpvulnerability-admin.php:3227 +#: wpvulnerability-adminms.php:3404 +msgid "Logs will appear here when shell commands are executed for software detection." +msgstr "" + +#: wpvulnerability-admin.php:3233 +#: wpvulnerability-adminms.php:3410 +msgid "Time" +msgstr "" + +#: wpvulnerability-admin.php:3235 +#: wpvulnerability-adminms.php:3412 +msgid "Command" +msgstr "" + +#: wpvulnerability-admin.php:3237 +#: wpvulnerability-adminms.php:3414 +msgid "User" +msgstr "" + +#: wpvulnerability-admin.php:3238 +#: wpvulnerability-adminms.php:3415 +msgid "Output" +msgstr "" + +#. translators: %d: number of logs shown +#: wpvulnerability-admin.php:3302 +#: wpvulnerability-adminms.php:3477 +#, php-format +msgid "Showing the %d most recent log entries." +msgstr "" + +#: wpvulnerability-admin.php:3320 +#: wpvulnerability-adminms.php:3565 +msgid "Invalid nonce." +msgstr "" + +#: wpvulnerability-admin.php:3325 +#: wpvulnerability-adminms.php:3570 +msgid "Insufficient permissions." +msgstr "" + +#: wpvulnerability-admin.php:3331 +#: wpvulnerability-adminms.php:3576 +msgid "No component specified." +msgstr "" + +#: wpvulnerability-admin.php:3366 +#: wpvulnerability-adminms.php:3524 +msgid "Debug Information" +msgstr "" + +#: wpvulnerability-admin.php:3368 +#: wpvulnerability-adminms.php:3526 +msgid "This tab is only visible when WP_DEBUG is enabled. Use with caution." +msgstr "" + +#: wpvulnerability-admin.php:3429 +#: wpvulnerability-adminms.php:3623 +msgid "System Information" +msgstr "" + +#: wpvulnerability-admin.php:3433 +#: wpvulnerability-adminms.php:3627 +msgid "WordPress Version" +msgstr "" + +#: wpvulnerability-admin.php:3437 +#: wpvulnerability-adminms.php:3631 +msgid "Multisite" +msgstr "" + +#: wpvulnerability-admin.php:3438 +#: wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 +#: wpvulnerability-adminms.php:3778 +msgid "Yes" +msgstr "" + +#: wpvulnerability-admin.php:3438 +#: wpvulnerability-admin.php:3584 +#: wpvulnerability-adminms.php:3632 +#: wpvulnerability-adminms.php:3778 +msgid "No" +msgstr "" + +#: wpvulnerability-admin.php:3441 +#: wpvulnerability-adminms.php:3635 +msgid "Language" +msgstr "" + +#: wpvulnerability-admin.php:3445 +#: wpvulnerability-adminms.php:3639 +msgid "PHP Version" +msgstr "" + +#: wpvulnerability-admin.php:3449 +#: wpvulnerability-adminms.php:3643 +msgid "PHP Extensions" +msgstr "" + +#: wpvulnerability-admin.php:3460 +#: wpvulnerability-adminms.php:3654 +msgid "PHP Memory Limit" +msgstr "" + +#: wpvulnerability-admin.php:3464 +#: wpvulnerability-adminms.php:3658 +msgid "Database" +msgstr "" + +#: wpvulnerability-admin.php:3468 +#: wpvulnerability-adminms.php:3662 +msgid "Web Server" +msgstr "" + +#: wpvulnerability-admin.php:3472 +#: wpvulnerability-adminms.php:3666 +msgid "WP_DEBUG" +msgstr "" + +#: wpvulnerability-admin.php:3480 +#: wpvulnerability-adminms.php:3674 +msgid "WP_DEBUG_LOG" +msgstr "" + +#: wpvulnerability-admin.php:3490 +#: wpvulnerability-adminms.php:3684 +msgid "Path:" +msgstr "" + +#. translators: %s: file size +#: wpvulnerability-admin.php:3499 +#: wpvulnerability-adminms.php:3698 +#, php-format +msgid "Size: %s" +msgstr "" + +#: wpvulnerability-admin.php:3510 +#: wpvulnerability-adminms.php:3704 +msgid "View Log File" +msgstr "" + +#: wpvulnerability-admin.php:3516 +#: wpvulnerability-adminms.php:3710 +msgid "Log file is not web-accessible (outside wp-content)" +msgstr "" + +#: wpvulnerability-admin.php:3522 +#: wpvulnerability-adminms.php:3716 +msgid "Log file does not exist yet" +msgstr "" + +#: wpvulnerability-admin.php:3530 +#: wpvulnerability-adminms.php:3724 +msgid "Plugin Version" +msgstr "" + +#: wpvulnerability-admin.php:3554 +#: wpvulnerability-adminms.php:3748 +msgid "Component Detection" +msgstr "" + +#: wpvulnerability-admin.php:3560 +#: wpvulnerability-adminms.php:3754 +msgid "Version Detected" +msgstr "" + +#: wpvulnerability-admin.php:3561 +#: wpvulnerability-adminms.php:3755 +msgid "Analyzed" +msgstr "" + +#: wpvulnerability-admin.php:3562 +#: wpvulnerability-adminms.php:3756 +msgid "Cache Status" +msgstr "" + +#: wpvulnerability-admin.php:3622 +#: wpvulnerability-adminms.php:3816 +msgid "Configuration Summary" +msgstr "" + +#: wpvulnerability-admin.php:3626 +#: wpvulnerability-adminms.php:3820 +msgid "Cache Duration" +msgstr "" + +#: wpvulnerability-admin.php:3636 +#: wpvulnerability-adminms.php:3830 +msgid "Log Retention" +msgstr "" + +#: wpvulnerability-admin.php:3646 +#: wpvulnerability-adminms.php:3840 +msgid "Components Analyzed" +msgstr "" + +#: wpvulnerability-admin.php:3661 +#: wpvulnerability-adminms.php:3855 +msgid "Notification Email" +msgstr "" + +#: wpvulnerability-admin.php:3682 +#: wpvulnerability-adminms.php:3876 +msgid "Slack Webhook" +msgstr "" + +#: wpvulnerability-admin.php:3692 +#: wpvulnerability-admin.php:3712 +#: wpvulnerability-admin.php:3732 +#: wpvulnerability-admin.php:3752 +#: wpvulnerability-adminms.php:3886 +#: wpvulnerability-adminms.php:3906 +#: wpvulnerability-adminms.php:3926 +#: wpvulnerability-adminms.php:3946 +msgid "Configured & Enabled" +msgstr "" + +#: wpvulnerability-admin.php:3694 +#: wpvulnerability-admin.php:3714 +#: wpvulnerability-admin.php:3734 +#: wpvulnerability-admin.php:3754 +#: wpvulnerability-adminms.php:3888 +#: wpvulnerability-adminms.php:3908 +#: wpvulnerability-adminms.php:3928 +#: wpvulnerability-adminms.php:3948 +msgid "Configured (Disabled)" +msgstr "" + +#: wpvulnerability-admin.php:3696 +#: wpvulnerability-admin.php:3716 +#: wpvulnerability-admin.php:3736 +#: wpvulnerability-admin.php:3756 +#: wpvulnerability-adminms.php:3890 +#: wpvulnerability-adminms.php:3910 +#: wpvulnerability-adminms.php:3930 +#: wpvulnerability-adminms.php:3950 +msgid "Not configured" +msgstr "" + +#: wpvulnerability-admin.php:3703 +#: wpvulnerability-adminms.php:3897 +msgid "Teams Webhook" +msgstr "" + +#: wpvulnerability-admin.php:3723 +#: wpvulnerability-adminms.php:3917 +msgid "Discord Webhook" +msgstr "" + +#: wpvulnerability-admin.php:3743 +#: wpvulnerability-adminms.php:3937 +msgid "Telegram Bot" +msgstr "" + +#: wpvulnerability-admin.php:3788 +#: wpvulnerability-adminms.php:3982 +msgid "Cron Status" +msgstr "" + +#: wpvulnerability-admin.php:3792 +#: wpvulnerability-adminms.php:3986 +msgid "Update Database" +msgstr "" + +#. translators: %s: date and time +#: wpvulnerability-admin.php:3797 +#: wpvulnerability-admin.php:3810 +#: wpvulnerability-adminms.php:3991 +#: wpvulnerability-adminms.php:4004 +#, php-format +msgid "Next run: %s" +msgstr "" + +#: wpvulnerability-admin.php:3800 +#: wpvulnerability-admin.php:3813 +#: wpvulnerability-adminms.php:3994 +#: wpvulnerability-adminms.php:4007 +msgid "Not scheduled" +msgstr "" + +#: wpvulnerability-admin.php:3805 +#: wpvulnerability-adminms.php:3999 +msgid "Send Notification" +msgstr "" + +#: wpvulnerability-admin.php:3826 +#: wpvulnerability-adminms.php:4020 +msgid "Run Update Now" +msgstr "" + +#: wpvulnerability-admin.php:3834 +#: wpvulnerability-adminms.php:4028 +msgid "Run Notification Now" +msgstr "" + +#: wpvulnerability-admin.php:3840 +#: wpvulnerability-adminms.php:4034 +msgid "You do not have permission to run these actions." +msgstr "" + +#: wpvulnerability-admin.php:3859 +#: wpvulnerability-adminms.php:4053 +msgid "API Testing" +msgstr "" + +#: wpvulnerability-admin.php:3862 +#: wpvulnerability-adminms.php:4056 +msgid "Test API connectivity for each component. Click a button to send a test request." +msgstr "" + +#. translators: %s: component name +#: wpvulnerability-admin.php:3869 +#: wpvulnerability-adminms.php:4063 +#, php-format +msgid "Test %s" +msgstr "" + +#: wpvulnerability-admin.php:3884 +#: wpvulnerability-adminms.php:4078 +msgid "Testing..." +msgstr "" + +#: wpvulnerability-admin.php:3900 +#: wpvulnerability-adminms.php:4094 +msgid "HTTP Code:" +msgstr "" + +#: wpvulnerability-admin.php:3901 +#: wpvulnerability-adminms.php:4095 +msgid "Response Time:" +msgstr "" + +#: wpvulnerability-admin.php:3903 +#: wpvulnerability-adminms.php:4097 +msgid "Response Preview" +msgstr "" + +#: wpvulnerability-admin.php:3910 +#: wpvulnerability-admin.php:3914 +#: wpvulnerability-adminms.php:4104 +#: wpvulnerability-adminms.php:4108 +msgid "Test" +msgstr "" + +#: wpvulnerability-admin.php:3913 +#: wpvulnerability-adminms.php:4107 +msgid "Error:" +msgstr "" + +#: wpvulnerability-admin.php:3913 +#: wpvulnerability-adminms.php:4107 +msgid "AJAX request failed." +msgstr "" + +#: wpvulnerability-admin.php:3922 +#: wpvulnerability-adminms.php:4116 +msgid "You do not have permission to test API connectivity." +msgstr "" + +#: wpvulnerability-admin.php:3943 +#: wpvulnerability-adminms.php:4137 +msgid "Database Options Viewer" +msgstr "" + +#: wpvulnerability-admin.php:3944 +#: wpvulnerability-adminms.php:4138 +msgid "View the raw data stored in WordPress options." +msgstr "" + +#: wpvulnerability-admin.php:3950 +#: wpvulnerability-adminms.php:4144 +msgid "Select an option..." +msgstr "" + +#: wpvulnerability-admin.php:3969 +#: wpvulnerability-adminms.php:4163 +msgid "Option not found or empty." +msgstr "" + +#: wpvulnerability-admin.php:3987 +#: wpvulnerability-adminms.php:4182 +msgid "Quick Actions" +msgstr "" + +#: wpvulnerability-admin.php:3988 +#: wpvulnerability-adminms.php:4183 +msgid "Perform debugging actions. Use with caution." +msgstr "" + +#: wpvulnerability-admin.php:3992 +#: wpvulnerability-adminms.php:4187 +msgid "Are you sure you want to clear all caches?" +msgstr "" + +#: wpvulnerability-admin.php:3996 +#: wpvulnerability-adminms.php:4191 +msgid "Clear All Caches" +msgstr "" + +#: wpvulnerability-admin.php:4000 +#: wpvulnerability-adminms.php:4195 +msgid "Are you sure you want to reset signatures?" +msgstr "" + +#: wpvulnerability-admin.php:4004 +#: wpvulnerability-adminms.php:4199 +msgid "Reset Signatures" +msgstr "" + +#: wpvulnerability-admin.php:4012 +#: wpvulnerability-adminms.php:4207 +msgid "Export Debug Info" +msgstr "" + +#: wpvulnerability-admin.php:4018 +#: wpvulnerability-adminms.php:4213 +msgid "You do not have permission to perform these actions." +msgstr "" + +#: wpvulnerability-adminms.php:101 +#: wpvulnerability-adminms.php:199 +msgid "Settings saved." +msgstr "" + +#: wpvulnerability-adminms.php:277 +msgid "WPVulnerability cron events have been repaired across the network." +msgstr "" + +#: wpvulnerability-adminms.php:3512 +msgid "You do not have permission to access this page." +msgstr "" + +#. translators: 1: core version +#: wpvulnerability-core.php:33 +#, php-format +msgid "WordPress %1$s has a known vulnerability that may be affecting your installed version." +msgstr "" + +#: wpvulnerability-core.php:115 +#: wpvulnerability-plugins.php:207 +#: wpvulnerability-process.php:335 +#: wpvulnerability-process.php:443 +#: wpvulnerability-process.php:529 +#: wpvulnerability-themes.php:173 +#: wpvulnerability-themes.php:469 +msgid "Actively exploited" +msgstr "" + +#: wpvulnerability-core.php:122 +#: wpvulnerability-plugins.php:214 +#: wpvulnerability-process.php:342 +#: wpvulnerability-process.php:450 +#: wpvulnerability-themes.php:180 +#: wpvulnerability-themes.php:476 +msgid "Public exploit" +msgstr "" + +#: wpvulnerability-core.php:125 +#: wpvulnerability-plugins.php:217 +#: wpvulnerability-process.php:345 +#: wpvulnerability-process.php:453 +#: wpvulnerability-themes.php:183 +#: wpvulnerability-themes.php:479 +msgid "Automatable" +msgstr "" + +#: wpvulnerability-core.php:139 +#: wpvulnerability-plugins.php:245 +#: wpvulnerability-process.php:371 +#: wpvulnerability-process.php:469 +#: wpvulnerability-process.php:544 +#: wpvulnerability-themes.php:211 +#: wpvulnerability-themes.php:503 +msgid "References:" +msgstr "" + +#: wpvulnerability-debug.php:399 +msgid "Invalid component specified." +msgstr "" + +#: wpvulnerability-debug.php:423 +msgid "Version not detected for this component." +msgstr "" + +#: wpvulnerability-debug.php:453 +msgid "API request successful." +msgstr "" + +#. translators: %d: HTTP status code +#: wpvulnerability-debug.php:469 +#, php-format +msgid "API returned HTTP code %d." +msgstr "" + +#: wpvulnerability-general.php:355 +msgid "WPVulnerability Logs" +msgstr "" + +#: wpvulnerability-general.php:356 +msgid "WPVulnerability Log" +msgstr "" + +#: wpvulnerability-general.php:1873 +#: wpvulnerability-general.php:1874 +msgid "Low" +msgstr "" + +#: wpvulnerability-general.php:1875 +#: wpvulnerability-general.php:1876 +msgid "Medium" +msgstr "" + +#: wpvulnerability-general.php:1877 +#: wpvulnerability-general.php:1878 +msgid "High" +msgstr "" + +#: wpvulnerability-general.php:1879 +#: wpvulnerability-general.php:1880 +msgid "Critical" +msgstr "" + +#: wpvulnerability-general.php:2684 +msgid "WPVulnerability Shell Logs" +msgstr "" + +#: wpvulnerability-general.php:2685 +msgid "WPVulnerability Shell Log" +msgstr "" + +#: wpvulnerability-notifications.php:30 +msgid "Every week" +msgstr "" + +#: wpvulnerability-notifications.php:57 +msgid "Every day" +msgstr "" + +#: wpvulnerability-notifications.php:84 +msgid "Invalid request." +msgstr "" + +#: wpvulnerability-notifications.php:104 +msgid "You have unsubscribed from WPVulnerability notifications." +msgstr "" + +#. translators: %1$s the website of Database, %2$s database site name. +#: wpvulnerability-notifications.php:289 +#, php-format +msgid "Learn more about the WordPress Vulnerability Database API at %2$s" +msgstr "" + +#. translators: %1$s unsubscribe URL. +#: wpvulnerability-notifications.php:300 +#, php-format +msgid "Want to stop receiving these alerts? Unsubscribe or change the email frequency to Never in the WPVulnerability settings." +msgstr "" + +#: wpvulnerability-notifications.php:595 +msgid "No vulnerabilities found" +msgstr "" + +#: wpvulnerability-notifications.php:596 +msgid "This is likely a test. The site does not have vulnerabilities." +msgstr "" + +#: wpvulnerability-notifications.php:601 +msgid "Core vulnerabilities" +msgstr "" + +#: wpvulnerability-notifications.php:607 +msgid "Plugins vulnerabilities" +msgstr "" + +#: wpvulnerability-notifications.php:613 +msgid "Themes vulnerabilities" +msgstr "" + +#: wpvulnerability-notifications.php:619 +msgid "PHP vulnerabilities" +msgstr "" + +#: wpvulnerability-notifications.php:625 +msgid "Apache HTTPD vulnerabilities" +msgstr "" + +#: wpvulnerability-notifications.php:631 +msgid "Nginx vulnerabilities" +msgstr "" + +#: wpvulnerability-notifications.php:637 +msgid "MariaDB vulnerabilities" +msgstr "" + +#: wpvulnerability-notifications.php:643 +msgid "MySQL vulnerabilities" +msgstr "" + +#: wpvulnerability-notifications.php:649 +msgid "ImageMagick vulnerabilities" +msgstr "" + +#: wpvulnerability-notifications.php:655 +msgid "curl vulnerabilities" +msgstr "" + +#: wpvulnerability-notifications.php:661 +msgid "memcached vulnerabilities" +msgstr "" + +#: wpvulnerability-notifications.php:667 +msgid "Redis vulnerabilities" +msgstr "" + +#: wpvulnerability-notifications.php:673 +msgid "SQLite vulnerabilities" +msgstr "" + +#. translators: Site name. +#: wpvulnerability-notifications.php:696 +#, php-format +msgid "Vulnerability found: %s" +msgstr "" + +#: wpvulnerability-notifications.php:700 +msgid "Vulnerability found" +msgstr "" + +#. translators: 1: Plugin name +#. translators: 1: theme name +#: wpvulnerability-plugins.php:116 +#: wpvulnerability-themes.php:82 +#, php-format +msgid "%1$s has a known vulnerability that may be affecting your installed version." +msgstr "" + +#: wpvulnerability-plugins.php:230 +#: wpvulnerability-process.php:358 +msgid "This plugin is closed. Please replace it with another." +msgstr "" + +#: wpvulnerability-plugins.php:233 +#: wpvulnerability-process.php:361 +msgid "This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates." +msgstr "" + +#: wpvulnerability-plugins.php:570 +msgid "It hasn't been updated in over a year." +msgstr "" + +#: wpvulnerability-plugins.php:576 +msgid "It may no longer be available (closed?)." +msgstr "" + +#: wpvulnerability-plugins.php:614 +#: wpvulnerability-plugins.php:621 +msgid "Last updated on" +msgstr "" + +#. translators: the number of vulnerabilities. +#: wpvulnerability-plugins.php:764 +#: wpvulnerability-themes.php:704 +#, php-format +msgid "Vulnerabilities (%d)" +msgstr "" + +#. translators: %s: software name. +#: wpvulnerability-process.php:601 +#, php-format +msgid "%s running" +msgstr "" + +#: wpvulnerability-process.php:611 +#: wpvulnerability-process.php:792 +msgid "End of Life" +msgstr "" + +#: wpvulnerability-process.php:613 +#: wpvulnerability-process.php:618 +msgid "End of life:" +msgstr "" + +#: wpvulnerability-process.php:616 +msgid "Supported" +msgstr "" + +#: wpvulnerability-process.php:652 +msgid "Plugin" +msgstr "" + +#: wpvulnerability-process.php:721 +msgid "Theme" +msgstr "" + +#. translators: %s: end-of-life date +#: wpvulnerability-process.php:790 +#, php-format +msgid "End of life: %s" +msgstr "" + +#: wpvulnerability-process.php:795 +msgid "EOL" +msgstr "" + +#: wpvulnerability-run.php:30 +msgid "Network Settings" +msgstr "" + +#: wpvulnerability-run.php:731 +#: wpvulnerability-run.php:781 +#: wpvulnerability-run.php:791 +#: wpvulnerability-run.php:836 +msgid "Vulnerabilities" +msgstr "" + +#: wpvulnerability-schedule.php:30 +msgid "Every 6 hours" +msgstr "" + +#: wpvulnerability-schedule.php:303 +msgid "Database updates" +msgstr "" + +#: wpvulnerability-schedule.php:309 +msgid "Log cleanup" +msgstr "" + +#: wpvulnerability-schedule.php:439 +msgid "Notifications are scheduled, but settings currently disable them. Please review the notifications tab." +msgstr "" + +#: wpvulnerability-schedule.php:442 +msgid "This event should not be scheduled for this site." +msgstr "" + +#: wpvulnerability-schedule.php:446 +msgid "Not expected for this site." +msgstr "" + +#: wpvulnerability-schedule.php:450 +msgid "No instances found." +msgstr "" + +#: wpvulnerability-schedule.php:456 +msgid "Scheduled with an unexpected interval." +msgstr "" + +#: wpvulnerability-schedule.php:460 +msgid "Multiple instances detected." +msgstr "" + +#: wpvulnerability-schedule.php:465 +msgid "Scheduled as expected." +msgstr "" + +#: wpvulnerability-sitehealth.php:22 +msgid "There aren't plugins vulnerabilities" +msgstr "" + +#: wpvulnerability-sitehealth.php:30 +msgid "Shows possible vulnerabilities that exist in installed plugins." +msgstr "" + +#. translators: Number of plugins vulnerabilities. +#: wpvulnerability-sitehealth.php:43 +#, php-format +msgid "There is %d plugin with vulnerabilities" +msgid_plural "There are %d plugins with vulnerabilities" +msgstr[0] "" +msgstr[1] "" + +#: wpvulnerability-sitehealth.php:49 +msgid "We've detected potential vulnerabilities in installed plugins. Please check them and keep them updated." +msgstr "" + +#: wpvulnerability-sitehealth.php:57 +msgid "Update plugins" +msgstr "" + +#: wpvulnerability-sitehealth.php:74 +msgid "There aren't themes vulnerabilities" +msgstr "" + +#: wpvulnerability-sitehealth.php:82 +msgid "Shows possible vulnerabilities that exist in installed themes." +msgstr "" + +#. translators: Number of themes vulnerabilities. +#: wpvulnerability-sitehealth.php:95 +#, php-format +msgid "There is %d theme with vulnerabilities" +msgid_plural "There are %d themes with vulnerabilities" +msgstr[0] "" +msgstr[1] "" + +#: wpvulnerability-sitehealth.php:101 +msgid "We've detected potential vulnerabilities in installed themes. Please check them and keep them updated." +msgstr "" + +#: wpvulnerability-sitehealth.php:109 +msgid "Update themes" +msgstr "" + +#: wpvulnerability-sitehealth.php:126 +msgid "There aren't WordPress vulnerabilities" +msgstr "" + +#: wpvulnerability-sitehealth.php:134 +msgid "Shows possible vulnerabilities existing in the WordPress core." +msgstr "" + +#. translators: Number of core vulnerabilities. +#: wpvulnerability-sitehealth.php:147 +#, php-format +msgid "There is %d core vulnerability" +msgid_plural "There are %d core vulnerabilities" +msgstr[0] "" +msgstr[1] "" + +#: wpvulnerability-sitehealth.php:153 +msgid "We've detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated." +msgstr "" + +#: wpvulnerability-sitehealth.php:161 +msgid "Update WordPress" +msgstr "" + +#: wpvulnerability-sitehealth.php:180 +msgid "Nginx" +msgstr "" + +#: wpvulnerability-sitehealth.php:189 +msgid "Invalid software type" +msgstr "" + +#: wpvulnerability-sitehealth.php:192 +msgid "Error" +msgstr "" + +#: wpvulnerability-sitehealth.php:197 +msgid "The specified software type is not valid." +msgstr "" + +#. translators: name of the software. +#: wpvulnerability-sitehealth.php:207 +#, php-format +msgid "There aren't %s vulnerabilities" +msgstr "" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:216 +#, php-format +msgid "Shows possible vulnerabilities existing in %s." +msgstr "" + +#. translators: Software and number of vulnerabilities. +#: wpvulnerability-sitehealth.php:229 +#, php-format +msgid "There is %1$d %2$s vulnerability" +msgid_plural "There are %1$d %2$s vulnerabilities" +msgstr[0] "" +msgstr[1] "" + +#. translators: software with vulnerabilities. +#: wpvulnerability-sitehealth.php:237 +#, php-format +msgid "We've detected potential vulnerabilities in %s. Please check them and keep your installation updated." +msgstr "" + +#: wpvulnerability-sitehealth.php:246 +msgid "How to update PHP" +msgstr "" + +#: wpvulnerability-sitehealth.php:386 +msgid "WPVulnerability Core" +msgstr "" + +#: wpvulnerability-sitehealth.php:394 +msgid "WPVulnerability Themes" +msgstr "" + +#: wpvulnerability-sitehealth.php:402 +msgid "WPVulnerability Plugins" +msgstr "" + +#: wpvulnerability-sitehealth.php:410 +msgid "WPVulnerability PHP" +msgstr "" + +#: wpvulnerability-sitehealth.php:418 +msgid "WPVulnerability Apache HTTPD" +msgstr "" + +#: wpvulnerability-sitehealth.php:426 +msgid "WPVulnerability Nginx" +msgstr "" + +#: wpvulnerability-sitehealth.php:434 +msgid "WPVulnerability MariaDB" +msgstr "" + +#: wpvulnerability-sitehealth.php:442 +msgid "WPVulnerability MySQL" +msgstr "" + +#: wpvulnerability-sitehealth.php:450 +msgid "WPVulnerability ImageMagick" +msgstr "" + +#: wpvulnerability-sitehealth.php:458 +msgid "WPVulnerability curl" +msgstr "" + +#: wpvulnerability-sitehealth.php:466 +msgid "WPVulnerability memcached" +msgstr "" + +#: wpvulnerability-sitehealth.php:474 +msgid "WPVulnerability redis" +msgstr "" + +#: wpvulnerability-sitehealth.php:482 +msgid "WPVulnerability sqlite" +msgstr "" + +#: wpvulnerability-themes.php:196 +#: wpvulnerability-themes.php:492 +msgid "This theme is closed. Please replace it with another." +msgstr "" + +#: wpvulnerability-themes.php:199 +#: wpvulnerability-themes.php:495 +msgid "This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates." +msgstr "" + +#: wpvulnerability-themes.php:391 +msgid "This theme has known vulnerabilities that may be affecting your installed version." +msgstr "" diff --git a/readme.txt b/readme.txt new file mode 100644 index 0000000..a1f3865 --- /dev/null +++ b/readme.txt @@ -0,0 +1,497 @@ +=== WPVulnerability === +Contributors: javiercasares, davidperez, lbonomo, alexclassroom +Tags: security, vulnerability, site-health +Requires at least: 5.6 +Tested up to: 7.1 +Stable tag: 5.0.0 +Requires PHP: 7.0 +Version: 5.0.0 +License: GPL-3.0-or-later +License URI: https://spdx.org/licenses/GPL-3.0-or-later.html + +Get WordPress vulnerability alerts from the [WPVulnerability Database API](https://www.wpvulnerability.com/). + +== Description == + +This plugin integrates with the WPVulnerability API to provide real-time vulnerability assessments for your WordPress core, plugins, themes, PHP version, Apache HTTPD, nginx, MariaDB, MySQL, ImageMagick, curl, memcached, Redis, and SQLite. + +It delivers detailed reports directly within your WordPress dashboard, helping you stay aware of potential security risks. Configure the plugin to send periodic notifications about your site's security status, ensuring you remain informed without being overwhelmed. Designed for ease of use, it supports proactive security measures without storing or retrieving any personal data from your site. + += Data reliability = + +The information provided by the information database comes from different sources that have been reviewed by third parties. There is no liability of any kind for the information. Act at your own risk. + +== Using the plugin == + += WP-CLI = + +You can use the following WP-CLI commands to manage and check vulnerabilities: + +* Core: `wp wpvulnerability core` +* Plugins: `wp wpvulnerability plugins` +* Themes: `wp wpvulnerability themes` +* PHP: `wp wpvulnerability php` +* Apache HTTPD: `wp wpvulnerability apache` +* nginx: `wp wpvulnerability nginx` +* MariaDB: `wp wpvulnerability mariadb` +* MySQL: `wp wpvulnerability mysql` +* ImageMagick: `wp wpvulnerability imagemagick` +* curl: `wp wpvulnerability curl` +* memcached: `wp wpvulnerability memcached` +* Redis: `wp wpvulnerability redis` +* SQLite: `wp wpvulnerability sqlite` + +To configure the plugin you can use: + +* Hide component: `wp wpvulnerability config hide [on|off]` +* Notification email: `wp wpvulnerability config email ` (comma separatted) +* Notification period: `wp wpvulnerability config period ` +* Log retention: `wp wpvulnerability config log-retention <0|1|7|14|28>` (in days) +* Cache duration: `wp wpvulnerability config cache <1|6|12|24>` (in hours) + +All commands support the `--format` option to specify the output format: + +* `--format=table`: Displays the results in a table format (default). +* `--format=json`: Displays the results in JSON format. + +Need help? + +* `wp wpvulnerability --help`: Displays help information for WPVulnerability commands. +* `wp wpvulnerability [command] --help`: Displays help information for a WPVulnerability command. + += REST API = + +The WPVulnerability plugin provides several **REST API endpoints** to fetch vulnerability information for different components of your WordPress site. + +* Core: `/wpvulnerability/v1/core` +* Plugins: `/wpvulnerability/v1/plugins` +* Themes: `/wpvulnerability/v1/themes` +* PHP: `/wpvulnerability/v1/php` +* Apache HTTPD: `/wpvulnerability/v1/apache` +* nginx: `/wpvulnerability/v1/nginx` +* MariaDB: `/wpvulnerability/v1/mariadb` +* MySQL: `/wpvulnerability/v1/mysql` +* ImageMagick: `/wpvulnerability/v1/imagemagick` +* curl: `/wpvulnerability/v1/curl` +* memcached: `/wpvulnerability/v1/memcached` +* Redis: `/wpvulnerability/v1/redis` +* SQLite: `/wpvulnerability/v1/sqlite` + +The WPVulnerability REST API uses **Application Passwords** for authentication. You need to include a valid Application Password in the Authorization header of your requests. + +Example Request with Authentication + +`curl -X GET https://example.com/wp-json/wpvulnerability/v1/plugins -u username:application_password` + +Replace username with your WordPress `username` and `application_password` with your [Application Password](https://make.wordpress.org/core/2020/11/05/application-passwords-integration-guide/). + +== Extra Configurations == + += "From:" mail (since: 3.2.2) = + +If, for some reason, you need the emails sent by the plugin to have a From different from the site administrator, you can change it from the `wp-config.php` by adding a constant: + +`define( 'WPVULNERABILITY_MAIL', 'sender@example.com' );` + +If the constant is active, it will be visible in the configuration screen. + += Force hiding checks (since: 4.1.0) = + +If you want to always hide a specific component, you can define a constant in `wp-config.php`. When set to `true`, the option will be checked automatically in the settings screen and the related analysis will be skipped. + +Example: + +`define( 'WPVULNERABILITY_HIDE_APACHE', true );` + +Available constants: `WPVULNERABILITY_HIDE_CORE`, `WPVULNERABILITY_HIDE_PLUGINS`, `WPVULNERABILITY_HIDE_THEMES`, `WPVULNERABILITY_HIDE_PHP`, `WPVULNERABILITY_HIDE_APACHE`, `WPVULNERABILITY_HIDE_NGINX`, `WPVULNERABILITY_HIDE_MARIADB`, `WPVULNERABILITY_HIDE_MYSQL`, `WPVULNERABILITY_HIDE_IMAGEMAGICK`, `WPVULNERABILITY_HIDE_CURL`, `WPVULNERABILITY_HIDE_MEMCACHED`, `WPVULNERABILITY_HIDE_REDIS`, `WPVULNERABILITY_HIDE_SQLITE`. + += Cache duration (since: 4.1.0) = + +By default, data from the API is cached for 12 hours. To change this, define `WPVULNERABILITY_CACHE_HOURS` in `wp-config.php` with one of `1`, `6`, `12` or `24`. This value overrides the setting screen and WP-CLI command. + +`define( 'WPVULNERABILITY_CACHE_HOURS', 24 );` + += Log rotation (since: 4.2.0) = + +WPVulnerability stores the most recent API responses so you can review recent calls from the new log tab. Define `WPVULNERABILITY_LOG_RETENTION_DAYS` in `wp-config.php` to control how many days of entries are preserved. Supported values are `0`, `1`, `7`, `14` or `28`; using `0` disables logging entirely. + +`define( 'WPVULNERABILITY_LOG_RETENTION_DAYS', 14 );` + +When the constant is present its value is enforced in the settings UI and through WP-CLI, ensuring consistent log rotation across environments. + += Security configuration (since: 4.3.0) = + +WPVulnerability uses a hybrid detection approach for server software (ImageMagick, Redis, Memcached, SQLite): PHP extensions first (most secure), then shell commands as fallback (most accurate). You can control this behavior using security configuration constants in `wp-config.php`. + +**Global disable of shell commands:** + +`define( 'WPVULNERABILITY_DISABLE_SHELL_EXEC', true );` + +Completely disables shell command usage. Falls back to PHP extensions only. Use for maximum security when accuracy loss is acceptable. + +**Security mode (standard/strict/disabled):** + +`define( 'WPVULNERABILITY_SECURITY_MODE', 'strict' );` + +* `standard` - Hybrid detection: PHP extensions first, shell commands fallback (default, best accuracy) +* `strict` - PHP extensions only, no shell commands (high security, lower accuracy) +* `disabled` - No software detection at all (maximum security) + +**Component whitelist:** + +`define( 'WPVULNERABILITY_SHELL_EXEC_WHITELIST', 'imagemagick,redis' );` + +Allows shell commands only for specified components. Available components: `imagemagick`, `redis`, `memcached`, `sqlite`. Use for granular control. + +**Examples:** + +Maximum security (no shell commands): + +`define( 'WPVULNERABILITY_SECURITY_MODE', 'strict' );` + +Only allow ImageMagick shell detection: + +`define( 'WPVULNERABILITY_SHELL_EXEC_WHITELIST', 'imagemagick' );` + +Complete disable: + +`define( 'WPVULNERABILITY_DISABLE_SHELL_EXEC', true );` + +All shell commands are hardcoded and validated - no user input is involved. Commands are logged for security auditing. + +== Installation == + += Automatic download = + +Visit the plugin section in your WordPress, search for [wpvulnerability]; download and install the plugin. + += Manual download = + +Extract the contents of the ZIP and upload the contents to the `/wp-content/plugins/wpvulnerability/` directory. Once uploaded, it will appear in your plugin list. + +== Frequently Asked Questions == + += Where does the vulnerability information come from? = + +The origin is in the WPVulnerability.com API. The vulnerabilities that appear in this API come from different sources, such as CVEs. + += Is data from my site sent anywhere? = + +No. Never. Your privacy is very important to us. We do not commercialize with your data. + += What vulnerabilities will I find? = + +Vulnerabilities in WordPress Core, Plugins, Themes, PHP, Apache HTTPD, nginx, MariaDB, MySQL, ImageMagick, curl, memcached, Redis, and SQLite are documented. + += What do I do if my site has a vulnerability? = + +First of all, peace of mind. Investigate what the vulnerability is and, above all, check that you have the latest version of the compromised element. We actively recommend that you keep all your WordPress and its plugins up to date. Contact your hosting provider to patch non-WordPress vulnerabilities (like web server, databases, and other software). + +== Screenshots == + +1. WP-Admin Dashboard widget. +2. Vulnerability list at Plugins list. +3. Vulnerability list at Site Health. + +== Compatibility == + +* WordPress: 5.6 - 7.1 +* PHP: 7.0 - 8.5 +* WP-CLI: 2.3.0 - 2.12.0 + +== Changelog == + += [5.0.0] - 2026-05-26 = + +**Added** + +* Vulnerability detail panels fully redesigned: Bootstrap-inspired score/severity badge, source attribution pills (hostname extracted from URL), and a structured "References:" row on the same line as the pills. +* CVSS priority order: CVSS 4 > CVSS 3 > CVSS 2 > legacy CVSS. The highest available score and severity are always shown. +* `ssvc.exploitation` field displayed: `poc` → "⚡ Public exploit" badge; `active` → included in the "Actively exploited" KEV label. +* `ssvc.automatable: yes` → "⚙ Automatable" badge alongside KEV/PoC. +* `ssvc.kev_date` → date appended to the "Actively exploited" label (e.g. "⚠ Actively exploited · 2024-03-15"). +* `epss` field → "EPSS X.X%" badge on the same line as the CVSS score badge. +* CVE description (`source[].description`) now displayed for all vulnerability types: plugins, themes, core, and server software. Language prefix (e.g. `[en-US]`) stripped automatically. +* CWE name and description displayed in server software vulnerability details (was missing). +* Core vulnerabilities on `update-core.php` now rendered with the same badges, description, and pills as plugin/theme rows (replaces the old plain table). +* Theme details modal (single-site): vulnerability section injected after the Tags field using the `wp_prepare_themes_for_js` filter and a JS template patch. Shows the same version range + badge + description + references layout as the plugin rows. +* Version range display: leading `-` or `*` stripped when there is no lower bound (e.g. `- < 1.3.28` → `< 1.3.28`). +* Helper functions added to `wpvulnerability-process.php`: `wpvulnerability_source_css_slug()`, `wpvulnerability_render_source_pills()`, `wpvulnerability_render_score_badge()`, `wpvulnerability_clean_version_range()`, `wpvulnerability_get_source_description()`. +* Helper functions added to `wpvulnerability-themes.php`: `wpvulnerability_theme_modal_html()`, `wpvulnerability_filter_prepare_themes_for_js()`, `wpvulnerability_theme_modal_template_patch()`. +* KEV badge displayed in vulnerability details when the CVE is listed in the CISA Known Exploited Vulnerabilities (KEV) catalog (`impact.ssvc.kev` for plugins/themes/core; `impact.kev` for server software). +* Vulnerability severity now uses the full-word value from `cvss3.severity` (`"critical"`, `"high"`, `"medium"`, `"low"`) when available, falling back to the legacy single-character `cvss.severity` code. +* Publication date shown next to each source link in vulnerability details (`source[].date` field from the API). +* Server software lifecycle status (Supported / End of Life + EOL date) in vulnerability details and dashboard grid (`data.status`, `data.date_end` fields from the API). +* EOL badge in the dashboard software grid (PHP, Apache, nginx, MariaDB, MySQL, ImageMagick, curl, memcached, Redis, SQLite) when the detected version has reached end-of-life. +* REST API: all vulnerability endpoints now expose `uuid`, `kev` (boolean), `ssvc` block, and `severity` from `cvss3`. Source entries include a `date` field. +* About tab: new **Intelligence Sources** table showing per-source vulnerability counts (CVE, EUVD, JVN, Patchstack, WPScan, Wordfence) broken down by Core / Plugins / Themes. + +**Security** + +* `wpvulnerability-adminms.php`: config form handler now requires `manage_network_options` capability (via `current_user_can()`) in addition to the nonce check. Previously a user with a valid nonce could update plugin options without the required capability. +* WP-CLI: all vulnerability commands (`core`, `plugins`, `themes`, and all software components) and all config commands (`hide`, `email`, `cache`, `log-retention`, `period`) now require `manage_options` / `manage_network_options`. Commands abort with a clear error and `--user=` hint if the check fails. +* REST API permission check now passes strict mode (`true`) to `base64_decode()` when parsing the HTTP Basic Authorization header. A malformed or padding-stripped token is immediately rejected instead of decoding unpredictable bytes. +* Debug web server detection (LiteSpeed, OpenLiteSpeed, Caddy) now routes through the `wpvulnerability_safe_shell_exec()` wrapper, ensuring `WPVULNERABILITY_DISABLE_SHELL_EXEC`, security mode, command whitelist, and audit logging are respected even when `WP_DEBUG` is enabled. +* Page render callbacks (`wpvulnerability_create_admin_page`, `wpvulnerability_admin_dashboard_content`) now include explicit `current_user_can()` / `wp_die()` guards as defense-in-depth, per the WordPress Plugin Handbook. + +**Fixed** + +* Forced test email on a fresh install (no email address configured yet) no longer produces an `E_WARNING` on PHP 7.x or a `TypeError` on PHP 8.x. +* `determine_locale()` call is now guarded by `function_exists()` instead of `version_compare()`, which is more forward-compatible and correctly recognised by static analysis. +* `preg_replace()` return values in the HTML-to-plain-text converter are now handled safely when `null` is returned on error. +* `DOMDocument::$documentElement` null check added in the HTML-to-plain-text converter. +* JSON-encoded vulnerability count options are validated as strings before `json_decode()` throughout the codebase. +* `cron_schedules` callbacks now use `did_action('init')` guard before `__()`, eliminating the textdomain-too-early notice introduced in WordPress 6.7. +* WP-CLI vulnerability commands now display a clear success message when no vulnerabilities are found, instead of an empty table. +* WP-CLI `config period monthly` now returns a proper error. Valid periods: `daily`, `weekly`, `never`. +* `uninstall.php` created. Plugin data is preserved by default; a new "Delete all plugin data on uninstall" checkbox in the Tools tab allows opting in to full removal. +* Large vulnerability data options are now stored with `autoload=false`, preventing unnecessary loading of JSON blobs on every WordPress request. + +**Changed** + +* Minimum required PHP version raised from 5.6 to 7.0. The null coalescing operator (`??`) used throughout for improved type safety requires PHP 7.0. PHP 5.6 reached end-of-life in December 2018. +* Minimum required WordPress version raised from 4.7 to 5.6, enabling full use of Application Passwords, `wp_timezone()`, `wp_date()`, and `determine_locale()` without version guards. +* `wpvulnerability_get_cron_snapshot()` now uses only public WordPress Cron API functions (`wp_next_scheduled()`, `wp_get_schedule()`); `_get_cron_array()` (private WP API) removed. + +**Developer** + +* PHPStan level 9: 0 errors across all 18 PHP files; 1,092 pre-existing type errors resolved; baseline is now empty. +* Added dev tooling: `composer.json`, `phpstan.neon` (level 9), `phpcs.xml`, `phpunit.xml.dist`, `bin/deploy.sh`, `docs/`. +* Added 18 PHPUnit plugin header tests. + +**Compatibility** + +* WordPress: 5.6 - 7.1 +* PHP: 7.0 - 8.5 +* WP-CLI: 2.3.0 - 2.12.0 + +**Tests** + +* PHP Coding Standards: 3.13.5 +* WordPress Coding Standards: 3.3.0 +* PHPStan: 2.1.55 (level 9, 0 errors) +* PHPUnit: 9.6.34 (18 tests) +* Plugin Check (PCP): 1.8.0 + += [4.3.2] - 2026-05-20 = + +**Performance** + +* Notification scheduling no longer rewrites the `cron` row in `wp_options` on every WordPress request. The boot-time call now verifies the current schedule with `wp_get_schedule()` and only clears or reschedules the `wpvulnerability_notification` event when the desired period actually differs from the currently scheduled one. This eliminates 1-2 unnecessary `UPDATE wp_options` queries per page load, removing lock contention under concurrent load and the corresponding entries from the MariaDB/MySQL slow query log. + +**Changed** + +* `wpvulnerability_schedule_notification_event()` gained an optional `$force` parameter (default `true`, backwards compatible). The boot-time invocation passes `false` to opt into the idempotent path; all other callers (admin save handlers, WP-CLI config command, update flow, repair helpers) keep the default and continue forcing a reschedule so that changes to hour/minute/day still update the next-run timestamp. + +**Compatibility** + +* WordPress: 4.7 - 6.9 +* PHP: 5.6 - 8.5 +* WP-CLI: 2.3.0 - 2.11.0 + +**Tests** + +* PHP Coding Standards: 3.13.5 +* WordPress Coding Standards: 3.3.0 +* Plugin Check (PCP): 1.8.0 + += [4.3.1] - 2026-01-20 = + +**Fixed** + +* Dashboard widget now correctly counts only vulnerabilities from enabled components, excluding disabled ones from settings. +* Status badge calculation (Critical/Warning) now properly considers only enabled components when determining severity level. +* Fixed PHPCS warnings for global variables without plugin prefix in wpvulnerability-admin.php and wpvulnerability-adminms.php. + +**Compatibility** + +* WordPress: 4.7 - 6.9 +* PHP: 5.6 - 8.5 +* WP-CLI: 2.3.0 - 2.11.0 + +**Tests** + +* PHP Coding Standards: 3.13.5 +* WordPress Coding Standards: 3.3.0 +* Plugin Check (PCP): 1.8.0 + += [4.3.0] - 2026-01-19 = + +**Highlights** + +This major release brings a complete redesign of the admin interface, comprehensive debugging tools, enhanced security, and new notification channels. + +* **Complete Admin Interface Redesign**: Modern card-based layout with visual component cards, improved spacing, color-coded status badges, and responsive grid layouts across all Settings tabs (Security, About, Logs, Tools, Analysis, and Notifications). +* **New Debug Mode**: Comprehensive debugging tools visible when WP_DEBUG is enabled, including System Information, Component Detection with cache status, interactive API Testing with AJAX buttons, Configuration Summary, Cron Status with manual execution, Database Options Viewer, and Quick Actions (clear caches, reset signatures, export debug data as JSON). Includes enhanced web server detection for 9 different servers. +* **Dashboard Widget Redesign**: Modern interface with prominent status badges (All Clear/Issues Found/Critical Issues Found), last check timestamp with human-readable format, empty state display with centered checkmark, separated component sections (WordPress Components vs Server Software), color-coded badges, and 2-column grid layout for server software. +* **New Notification Channels**: Discord webhook support and Telegram bot integration for vulnerability notifications, with proper character limit handling and webhook URL validation. +* **Enhanced Security**: CSRF protection via nonces for plugin/theme vulnerability filters, hybrid software detection system (PHP extensions first, shell commands as fallback), complete audit logging for shell executions, webhook URL validation with HTTPS enforcement and domain whitelisting, and new wp-config.php security constants. +* **Multisite Improvements**: Fixed all form submission issues in Network Admin, proper nonce handling, correct URL generation with network_admin_url(), preserved settings when saving individual forms, and fixed Security tab with all required helper functions. +* **Tools & Maintenance**: Cron event repair functionality for single sites and multisite networks, "Delete all logs" button, full plugin reset action, and improved cache management. + +**Added** + +* Tools tab now lists expected WPVulnerability cron events, shows the scheduled instances, and lets administrators repair them on single sites. +* Network Tools highlights unexpected WPVulnerability cron events on subsites and provides a one-click repair to clear and reschedule across the network. +* Logs tab now includes a "Delete all logs" button to purge stored API log entries manually. +* Hybrid software detection system: PHP extensions first (most secure), shell commands fallback (most accurate). +* Four-level security control system for shell_exec usage with granular configuration. +* Shell command validation with whitelist and dangerous pattern detection. +* Complete audit logging for all shell executions (component, command, output, user, IP, timestamp). +* New wp-config.php constants: `WPVULNERABILITY_DISABLE_SHELL_EXEC`, `WPVULNERABILITY_SECURITY_MODE`, `WPVULNERABILITY_SHELL_EXEC_WHITELIST`. +* Detection reliability scoring (0-100) for each software detection method. +* Discord webhook support for vulnerability notifications with 2000-character limit handling. +* Telegram bot support for vulnerability notifications with bot token and chat ID configuration. +* Documentation links for Discord webhook setup (https://support.discord.com/hc/articles/228383668). +* Documentation links for Telegram bot setup (https://core.telegram.org/bots). +* Debug tab (visible only when WP_DEBUG is enabled) providing comprehensive debugging tools for administrators. +* wpvulnerability-debug.php file with 11 helper functions for debug functionality (~18KB). +* Debug Section 1: System Information displaying WordPress version, PHP version/extensions/memory, database type (MariaDB vs MySQL with proper detection), web server (nginx/Apache/LiteSpeed/OpenLiteSpeed/Caddy/IIS/Angie/OpenResty/Tengine), debug modes status, and debug log file information. +* Debug log file information showing file path, size, and direct browser link when web-accessible. +* Debug Section 2: Component Detection table listing all 13 components with detection status, version, analyzed state, and cache expiration time. +* Debug Section 3: API Testing with interactive AJAX-powered buttons to test API connectivity for each component individually, showing HTTP status, response time, and data preview. +* Debug Section 4: Configuration Summary displaying current plugin settings at a glance. +* Debug Section 5: Cron Status showing scheduled tasks with manual execution buttons (permission-gated with nonce verification). +* Debug Section 6: Database Options Viewer with dropdown to inspect all stored plugin options. +* Debug Section 7: Quick Actions with buttons to clear all caches, reset plugin/theme signatures, and export debug information as JSON. +* Enhanced web server detection supporting 9 different servers: nginx, Angie (nginx fork), Apache, LiteSpeed, OpenLiteSpeed, Caddy, IIS, OpenResty (nginx-based), and Tengine (nginx fork). +* Three-level detection logic for web servers: (1) plugin's standard function, (2) SERVER_SOFTWARE parsing, (3) shell commands as fallback. +* Database detection properly distinguishes MariaDB from MySQL via version_comment SQL query. +* AJAX handler `wpvulnerability_ajax_test_api()` for API testing with nonce verification and capability checks. +* Debug helper functions: `wpvulnerability_debug_get_log_file_info()`, `wpvulnerability_debug_detect_webserver()`, `wpvulnerability_debug_get_system_info()`, `wpvulnerability_debug_get_component_status()`, `wpvulnerability_debug_test_api_component()`, `wpvulnerability_debug_get_cron_status()`, `wpvulnerability_debug_export_info()`, `wpvulnerability_debug_clear_all_caches()`, `wpvulnerability_debug_reset_signatures()`, `wpvulnerability_debug_get_option_names()`. +* Debug tab POST handlers in both wpvulnerability-admin.php and wpvulnerability-adminms.php with nonce verification for all actions. +* Debug tab render functions in wpvulnerability-admin.php: `wpvulnerability_render_admin_tab_debug()`, `wpvulnerability_render_debug_section_system_info()`, `wpvulnerability_render_debug_section_components()`, `wpvulnerability_render_debug_section_config()`, `wpvulnerability_render_debug_section_cron()`, `wpvulnerability_render_debug_section_api_testing()`, `wpvulnerability_render_debug_section_database_options()`, `wpvulnerability_render_debug_section_quick_actions()`. + +**Security** + +* Added CSRF protection via nonces for plugin vulnerability filter links to prevent forced navigation attacks. +* Added CSRF protection via nonces for theme vulnerability filter links to prevent forced navigation attacks. +* Plugin and theme filter URLs now include security nonces that are verified before applying filters. +* Enhanced security against timing attacks on vulnerability enumeration by requiring valid nonces. +* Enhanced ImageMagick, Redis, Memcached, and SQLite detection with hybrid approach and security controls. +* All shell commands hardcoded and validated - no user input involved. +* Shell execution wrapper with complete security checks and logging. +* Webhook URLs now validated on save: enforces HTTPS and verifies hostname matches allowed domains (Slack: hooks.slack.com, Teams: office.com/office365.com/api.hooks.microsoft.com, Discord: discord.com/discordapp.com). +* Telegram bot token validation with regex pattern check (format: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11). +* Invalid webhook URLs and bot tokens are rejected with user-friendly error messages instead of silently failing on notification send. +* Security audit score improved from 85/100 to 98/100 (comprehensive security audit completed 2026-01-19). + +**Changed** + +* Database error hook now fires the prefixed `wpvulnerability_wpdb_last_error` action while keeping the legacy hook deprecated. +* Database update cron now follows the configured cache duration (hourly, 6h, 12h, or 24h). +* Translations load on init to avoid early textdomain warnings. +* Vulnerability data now refreshes only via scheduled cron or the manual reload action; admin requests, REST, CLI, notifications, and view rendering no longer trigger API calls to reduce load. +* Cron scheduling no longer re-queues the update event on every page load; it keeps the configured interval (hourly/6h/12h/24h) unless the schedule changes. +* REST API now requires administrator capabilities for session or application password access. +* Admin reset and test email actions enforce admin capabilities. +* API client timeouts corrected to 2.5 seconds to avoid long hangs. +* Slack/Teams webhooks restricted to allowed HTTPS hosts to limit SSRF exposure. +* Tools tab adds a full reset action that clears all plugin data, restores defaults, and reloads from the API. +* Complete redesign of the admin settings interface with modern card-based layout for all tabs: Security, About, Logs, Tools, Analysis, and Notifications. +* Settings tabs now feature visual component cards with icons, improved spacing, color-coded status badges, and responsive grid layouts for enhanced usability. +* Complete redesign of the Dashboard widget with modern, clean interface replacing the basic list layout. +* Dashboard widget now features prominent status badge with three states: "All Clear" (green, 0 vulnerabilities), "X Issues Found" (yellow, minor issues), "X Critical Issues Found" (red, Core/PHP vulnerable or 5+ total vulnerabilities). +* Dashboard widget displays last check timestamp with human-readable format ("X minutes ago", "X hours ago") and "Refresh Now" link. +* Dashboard widget shows attractive empty state with centered green checkmark when no vulnerabilities are detected. +* Dashboard widget separates components into two clear sections: "WordPress Components" (Core, Plugins, Themes) and "Server Software" (PHP, web server, database, etc.). +* Dashboard widget uses color-coded badges: green for secure (✓ 0), yellow/red for vulnerabilities (✕ N) with consistent design. +* Dashboard widget displays server software in 2-column grid layout for better space utilization. +* Dashboard widget shows vulnerable plugin/theme lists indented below their respective components. +* Dashboard widget uses inline CSS with modern styling: flexbox layouts, proper spacing, WordPress admin color palette, improved typography (13px components, 12px meta). +* Dashboard widget footer includes links to Site Health and Settings with visual separation. +* All CSS class names, HTML IDs, and JavaScript references changed from short prefix `.wpv-` to full prefix `.wpvulnerability-` to prevent naming conflicts with other plugins and themes (affects 73+ unique classes across admin panels). +* All inline CSS from admin panels moved to external assets/admin.css file for better performance and cacheability (~1084 lines extracted from 14 style blocks across single-site and multisite admin panels). +* License updated from GPL2+ to GPL3+. + +**Fixed** + +* Saving partial forms (e.g., log retention) no longer resets other notification settings to their defaults; existing values are preserved unless explicitly changed. +* Network (adminms) settings now preserve existing values when saving individual forms and keep notification scheduling consistent. +* Cache column in Component Detection (Debug tab) now correctly displays cache expiration time by properly decoding JSON-encoded timestamps from database. +* Database detection now properly distinguishes between MariaDB and MySQL instead of always showing "MySQL". +* Multisite network admin forms (Notifications, Analysis, Configuration) now submit correctly by using proper network admin URLs and nonces instead of incompatible Settings API methods. +* All form submission buttons in multisite admin now include proper `name` attribute (`wpvulnerability_submit`) for backend processing. +* Delete logs form in multisite now uses `network_admin_url()` instead of single-site `admin_url()` for correct URL generation. +* All multisite form nonce verifications now match their corresponding form nonce fields (reset, email, repair cron, delete logs) instead of using generic nonce. +* Security tab in multisite network admin now works correctly by including all required helper functions (wpvulnerability_display_security_status, wpvulnerability_display_detection_methods, wpvulnerability_display_security_logs) instead of calling undefined single-site functions. +* Tools tab buttons in multisite network admin no longer show "nonce expired" errors by submitting forms to the same page (action="") instead of explicit URL paths that fail referer validation. +* Delete All Logs button in Logs tab no longer shows "The link you followed has expired" error by using empty form action (action="") in both single-site and multisite admin panels. +* Logs tab pagination now displays horizontally instead of vertically by properly targeting list elements (ul with inline-flex) and individual page links (a and span within li) to work correctly with WordPress paginate_links() 'type' => 'list' output. + +**Compatibility** + +* WordPress: 4.7 - 6.9 +* PHP: 5.6 - 8.5 +* WP-CLI: 2.3.0 - 2.11.0 + +**Tests** + +* PHP Coding Standards: 3.13.5 +* WordPress Coding Standards: 3.3.0 +* Plugin Check (PCP): 1.8.0 + += [4.2.2.1] - 2026-01-16 = + +**Security** + +* Fixed authorization vulnerability in REST API endpoints that allowed low-privileged users to access sensitive vulnerability data. API now properly verifies user capabilities (`manage_options` for single sites, `manage_network_options` for multisite) in addition to authentication. +* Added direct access protection to wpvulnerability-api.php to prevent direct file execution outside WordPress context. + +**Compatibility** + +* WordPress: 4.7 - 6.9 +* PHP: 5.6 - 8.4 +* WP-CLI: 2.3.0 - 2.11.0 + +**Tests** + +* PHP Coding Standards: 3.13.5 +* WordPress Coding Standards: 3.3.0 +* Plugin Check (PCP): 1.8.0 + += [4.2.1] - 2025-12-17 = + +**Fixed** + +* Clear legacy WPVulnerability cron events from multisite subsites so updates and log cleanup only run on the main site. + +**Compatibility** + +* WordPress: 4.7 - 6.9 +* PHP: 5.6 - 8.4 +* WP-CLI: 2.3.0 - 2.11.0 + +**Tests** + +* PHP Coding Standards: 3.13.5 +* WordPress Coding Standards: 3.3.0 +* Plugin Check (PCP): 1.7.0 + += Previous versions = + +If you want to see the full changelog, visit the [changelog.txt](https://plugins.trac.wordpress.org/browser/wpvulnerability/trunk/changelog.txt) file. + +== Security == + +This plugin adheres to the following security measures and review protocols for each version: + +* [WordPress Plugin Handbook](https://developer.wordpress.org/plugins/) +* [WordPress Plugin Security](https://developer.wordpress.org/plugins/wordpress-org/plugin-security/) +* [WordPress APIs Security](https://developer.wordpress.org/apis/security/) +* [WordPress Coding Standards](https://github.com/WordPress/WordPress-Coding-Standards) +* [Plugin Check (PCP)](https://wordpress.org/plugins/plugin-check/) + +== Privacy == + +* This plugin or the WordPress Vulnerability Database API does not collect any information about your site, your identity, the plugins, themes or content the site has. + +== Vulnerabilities == + +* A security vulnerability was found and fixed in version 4.2.2.1. All previous versions (3.3.0 - 4.2.1) are affected. Please update to version 4.2.2.1 or later. + +Found a security vulnerability? Please report it to us privately at the [WPVulnerability GitHub repository](https://github.com/javiercasares/wpvulnerability/security/advisories/new). + +== Contributors == + +You can contribute to this plugin at the [WPVulnerability GitHub repository](https://github.com/javiercasares/wpvulnerability). diff --git a/security.txt b/security.txt new file mode 100644 index 0000000..7f9185c --- /dev/null +++ b/security.txt @@ -0,0 +1,3 @@ +Contact: https://github.com/javiercasares/wpvulnerability/security +Expires: 2027-01-10T23:00:00.000Z +Preferred-Languages: en, es, ca \ No newline at end of file diff --git a/uninstall.php b/uninstall.php new file mode 100644 index 0000000..a0d23bc --- /dev/null +++ b/uninstall.php @@ -0,0 +1,39 @@ +> An associative array of tab slugs and their labels. + */ +function wpvulnerability_get_admin_tabs() { + $tabs = array( + 'notifications' => array( + 'label' => __( 'Notifications', 'wpvulnerability' ), + ), + 'analysis' => array( + 'label' => __( 'Analysis', 'wpvulnerability' ), + ), + 'logs' => array( + 'label' => __( 'Logs', 'wpvulnerability' ), + ), + 'security' => array( + 'label' => __( 'Security', 'wpvulnerability' ), + ), + 'tools' => array( + 'label' => __( 'Tools', 'wpvulnerability' ), + ), + ); + + // Add Debug tab only if WP_DEBUG is enabled. + if ( defined( 'WP_DEBUG' ) && WP_DEBUG ) { + $tabs['debug'] = array( + 'label' => __( 'Debug', 'wpvulnerability' ), + ); + } + + $tabs['about'] = array( + 'label' => __( 'About', 'wpvulnerability' ), + ); + + return $tabs; +} + + /** + * Determines the active admin tab for the settings screen. + * + * @since 4.1.2 + * + * @param array> $tabs Registered admin tabs. + * + * @return string The active tab slug. + */ +function wpvulnerability_get_current_admin_tab( $tabs ) { + $tab_keys = array_keys( $tabs ); + $default = reset( $tab_keys ); + $tab_filter = filter_input( INPUT_GET, 'tab', FILTER_SANITIZE_SPECIAL_CHARS ); + + if ( $tab_filter ) { + $tab_filter = sanitize_key( $tab_filter ); + } + + if ( $tab_filter && isset( $tabs[ $tab_filter ] ) ) { + return $tab_filter; + } + + return $default ? $default : 'notifications'; +} + + /** + * Renders the requested admin tab content. + * + * @since 4.1.2 + * + * @param string $tab Tab slug to render. + * + * @return void + */ +function wpvulnerability_render_admin_tab( $tab ) { + switch ( $tab ) { + case 'analysis': + wpvulnerability_render_admin_tab_analysis(); + break; + case 'logs': + wpvulnerability_render_admin_tab_logs(); + break; + case 'security': + wpvulnerability_render_admin_tab_security(); + break; + case 'tools': + wpvulnerability_render_admin_tab_tools(); + break; + case 'debug': + if ( defined( 'WP_DEBUG' ) && WP_DEBUG ) { + wpvulnerability_render_admin_tab_debug(); + } + break; + case 'about': + wpvulnerability_render_admin_tab_about(); + break; + case 'notifications': + default: + wpvulnerability_render_admin_tab_notifications(); + break; + } +} + + /** + * Outputs the Notifications tab contents. + * + * @since 4.1.2 + * + * @return void + */ +function wpvulnerability_render_admin_tab_notifications() { + $wpvulnerability_settings = get_option( 'wpvulnerability-config', array() ); + if ( ! is_array( $wpvulnerability_settings ) ) { + $wpvulnerability_settings = array(); + } + $defaults = array( + 'cache' => 12, + 'period' => 'weekly', + 'day' => 'monday', + 'hour' => 0, + 'minute' => 0, + 'emails' => '', + 'slack_webhook' => '', + 'teams_webhook' => '', + 'discord_webhook' => '', + 'telegram_bot_token' => '', + 'telegram_chat_id' => '', + 'notify' => array( + 'email' => 'y', + 'slack' => 'n', + 'teams' => 'n', + 'discord' => 'n', + 'telegram' => 'n', + ), + ); + $wpvulnerability_settings = wp_parse_args( $wpvulnerability_settings, $defaults ); + + // Normalize notify settings. + if ( ! is_array( $wpvulnerability_settings['notify'] ) ) { + $wpvulnerability_settings['notify'] = $defaults['notify']; + } else { + $wpvulnerability_settings['notify'] = wp_parse_args( $wpvulnerability_settings['notify'], $defaults['notify'] ); + } + $wpvulnerability_settings['notify'] = wpvulnerability_normalize_notify_settings( $wpvulnerability_settings['notify'] ); + + $email_enabled = wpvulnerability_is_yes( $wpvulnerability_settings['notify']['email'] ); + $slack_enabled = wpvulnerability_is_yes( $wpvulnerability_settings['notify']['slack'] ); + $teams_enabled = wpvulnerability_is_yes( $wpvulnerability_settings['notify']['teams'] ); + $discord_enabled = wpvulnerability_is_yes( $wpvulnerability_settings['notify']['discord'] ); + $telegram_enabled = wpvulnerability_is_yes( $wpvulnerability_settings['notify']['telegram'] ); + + // Check if cache is forced. + $forced_cache = null; + $cache_options = array( 1, 6, 12, 24 ); + if ( defined( 'WPVULNERABILITY_CACHE_HOURS' ) ) { + $forced_cache = (int) WPVULNERABILITY_CACHE_HOURS; + if ( ! in_array( $forced_cache, $cache_options, true ) ) { + $cache_options[] = $forced_cache; + sort( $cache_options, SORT_NUMERIC ); + } + } + $current_cache = null !== $forced_cache ? $forced_cache : (int) $wpvulnerability_settings['cache']; + + $admin_email = get_bloginfo( 'admin_email' ); + ?> +
+ +
+ + +
+

+ +
+

+

+
+ + +
+
+ ⏱️ + + + + +
+
+ +
+ + + + +
+

+ Learn more →', 'wpvulnerability' ) ), + esc_url( 'https://www.wpvulnerability.com/plugin/#cache-duration' ) + ); + ?> +

+
+
+ + +
+
+ 📅 + +
+
+ +
+
+ + + +
+ +
+
+ + +
+
+ + + : + + +
+
+
+ + +
+
+ 📢 + +
+
+ +
+
+ +
+ + + +
+ + +
+ + + + Learn how to create a Slack incoming webhook →', 'wpvulnerability' ) ), + esc_url( 'https://docs.slack.dev/messaging/sending-messages-using-incoming-webhooks/' ) + ); + ?> + +
+ + +
+ + + + Learn how to create a Teams incoming webhook →', 'wpvulnerability' ) ), + esc_url( 'https://learn.microsoft.com/microsoftteams/platform/webhooks-and-connectors/how-to/add-incoming-webhook' ) + ); + ?> + +
+ + +
+ + + + Learn how to create a Discord webhook →', 'wpvulnerability' ) ), + esc_url( 'https://support.discord.com/hc/articles/228383668' ) + ); + ?> + +
+ + +
+ + + + + + + + Learn how to create a Telegram bot and get Chat ID →', 'wpvulnerability' ) ), + esc_url( 'https://core.telegram.org/bots' ) + ); + ?> + +
+
+
+ +
+ +
+
+
+ + +
+ array( + 'label' => __( 'WordPress Components', 'wpvulnerability' ), + 'items' => array( + 'core' => array( + 'label' => __( 'WordPress Core', 'wpvulnerability' ), + 'icon' => '🌐', + ), + 'plugins' => array( + 'label' => __( 'Plugins', 'wpvulnerability' ), + 'icon' => '🧩', + ), + 'themes' => array( + 'label' => __( 'Themes', 'wpvulnerability' ), + 'icon' => '🎨', + ), + ), + ), + 'software' => array( + 'label' => __( 'Software & Languages', 'wpvulnerability' ), + 'items' => array( + 'php' => array( + 'label' => __( 'PHP', 'wpvulnerability' ), + 'icon' => '🐘', + ), + ), + ), + 'webservers' => array( + 'label' => __( 'Web Servers', 'wpvulnerability' ), + 'items' => array( + 'apache' => array( + 'label' => __( 'Apache HTTPD', 'wpvulnerability' ), + 'icon' => '🪶', + ), + 'nginx' => array( + 'label' => __( 'nginx', 'wpvulnerability' ), + 'icon' => '🟩', + ), + ), + ), + 'databases' => array( + 'label' => __( 'Databases', 'wpvulnerability' ), + 'items' => array( + 'mariadb' => array( + 'label' => __( 'MariaDB', 'wpvulnerability' ), + 'icon' => '🐬', + ), + 'mysql' => array( + 'label' => __( 'MySQL', 'wpvulnerability' ), + 'icon' => '🐬', + ), + 'sqlite' => array( + 'label' => __( 'SQLite', 'wpvulnerability' ), + 'icon' => '💾', + ), + ), + ), + 'tools' => array( + 'label' => __( 'Additional Tools', 'wpvulnerability' ), + 'items' => array( + 'imagemagick' => array( + 'label' => __( 'ImageMagick', 'wpvulnerability' ), + 'icon' => '🖼️', + ), + 'curl' => array( + 'label' => __( 'curl', 'wpvulnerability' ), + 'icon' => '🌐', + ), + 'memcached' => array( + 'label' => __( 'memcached', 'wpvulnerability' ), + 'icon' => '⚡', + ), + 'redis' => array( + 'label' => __( 'Redis', 'wpvulnerability' ), + 'icon' => '🔴', + ), + ), + ), + ); + ?> +
+ +
+ + +
+

+ +
+

+

+
+ + $category_data ) : ?> +
+
+
+ $component_data ) : ?> + +
+ +
+ +
+
+ + +
+

+ + Learn more about force-hiding checks →', 'wpvulnerability' ) ), + esc_url( 'https://www.wpvulnerability.com/plugin/#force-hiding-checks' ) + ); + ?> +

+
+ +
+ +
+
+
+
+ $total_pages ) { + $current_page = $total_pages; + } + $logs = wpvulnerability_get_api_logs( $logs_per_page, $current_page ); + $logs_page_url = add_query_arg( + array( + 'page' => 'wpvulnerability-options', + 'tab' => 'logs', + 'logs_per_page' => $logs_per_page, + 'log_page' => $current_page, + ), + admin_url( 'options-general.php' ) + ); + $requested_log = isset( $_GET['log'] ) && is_string( $_GET['log'] ) ? absint( (int) wp_unslash( $_GET['log'] ) ) : 0; // phpcs:ignore WordPress.Security.NonceVerification.Recommended + $view_log = null; + $log_error = ''; + $pagination = ''; + + if ( $total_pages > 1 ) { + $pagination_base = remove_query_arg( + array( 'log', 'log_page' ), + $logs_page_url + ); + $pagination = paginate_links( + array( + 'base' => add_query_arg( 'log_page', '%#%', $pagination_base ), + 'format' => '', + 'current' => $current_page, + 'total' => $total_pages, + 'prev_text' => __( '« Previous', 'wpvulnerability' ), + 'next_text' => __( 'Next »', 'wpvulnerability' ), + 'type' => 'list', + ) + ); + } + + if ( $requested_log > 0 ) { + $nonce = isset( $_GET['_wpnonce'] ) && is_string( $_GET['_wpnonce'] ) ? sanitize_text_field( wp_unslash( $_GET['_wpnonce'] ) ) : ''; // phpcs:ignore WordPress.Security.NonceVerification.Recommended + if ( $nonce && wp_verify_nonce( $nonce, 'wpvulnerability_view_log_' . $requested_log ) ) { + $view_log = wpvulnerability_get_api_log( $requested_log ); + if ( ! $view_log ) { + $log_error = __( 'Log entry not found or has been removed.', 'wpvulnerability' ); + } + } else { + $log_error = __( 'Unable to load the requested log entry.', 'wpvulnerability' ); + } + } + + ?> +
+ + + +
+

+ + +
+
+
+
+
+
+
+
+ +
+
+
+ + +
+ + + + ', + esc_attr( (string) $forced ) + ); + printf( + '

%s

', + esc_html__( 'This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant.', 'wpvulnerability' ) + ); + } else { + printf( + '

%s

', + esc_html__( 'Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted.', 'wpvulnerability' ) + ); + } + ?> + +
+ + +
+

+
+ +
+ + +

+ + + + + +
+

+ +
+
+
+
+
+
+
+
+
+
+ +

+
post_content ) ); ?>
+ +

+ + ← + +

+
+ + + +
+
📋
+

+

+
+ +
+

+ + +
+
+
+ + + + + + 'margin: 0; padding: 4px 12px; height: auto;' ) ); ?> +
+
+
+ + + +
+
+ + + + + + + + + + + + + + + + + + + +
+ + + + + 'wpvulnerability-options', + 'tab' => 'logs', + 'log' => $log->ID, + 'logs_per_page' => $logs_per_page, + 'log_page' => $current_page, + ), + admin_url( 'options-general.php' ) + ); + $view_url = wp_nonce_url( $view_url, 'wpvulnerability_view_log_' . $log->ID ); + ?> + + + +
+ + + +
+ +
+ + + +
+

+

+ +

+
+ + + +
+
+
+ + +
+ 'wpvulnerability-options', + 'tab' => 'tools', + ), + admin_url( 'options-general.php' ) + ); + + $wpvulnerability_cron_config = is_multisite() ? get_site_option( 'wpvulnerability-config', array() ) : get_option( 'wpvulnerability-config', array() ); + if ( ! is_array( $wpvulnerability_cron_config ) ) { + $wpvulnerability_cron_config = array(); + } + $is_main_site = ( ! is_multisite() || is_main_site() ); + $cron_status = wpvulnerability_get_cron_status( $wpvulnerability_cron_config, $is_main_site ); + $cron_schedules = function_exists( 'wp_get_schedules' ) ? wp_get_schedules() : array(); + $_df = get_option( 'date_format' ); + $_tf = get_option( 'time_format' ); + $date_format = ( is_scalar( $_df ) ? (string) $_df : '' ) . ' ' . ( is_scalar( $_tf ) ? (string) $_tf : '' ); + ?> +
+ + +
+

+ 🔄 + +

+

+ +

+
+
+ + +
+
+
+ + +
+

+ 📧 + +

+

+ +

+ +
+

+ + +

+
+ +
+

+ + +

+
+ +

+ + + +

+
+
+ + +
+
+
+ + +
+

+ + +

+

+ +

+ + +
+

+
+ + + + + + + + + + + + + + 0 ? implode( ', ', $found_schedules ) : __( 'None', 'wpvulnerability' ); + $next_run = ( $row_next_run_raw && is_numeric( $row_next_run_raw ) ) ? date_i18n( $date_format, (int) $row_next_run_raw ) : '—'; + $row_messages = isset( $row['messages'] ) && is_array( $row['messages'] ) ? $row['messages'] : array(); + $status_text = implode( + ' ', + array_map( + static function ( $m ) { + return is_scalar( $m ) ? (string) $m : ''; + }, + $row_messages + ) + ); + + // Determine status badge class. + $status_class = 'success'; + if ( strpos( $status_text, 'Missing' ) !== false || strpos( $status_text, 'Duplicate' ) !== false ) { + $status_class = 'error'; + } elseif ( strpos( $status_text, 'legacy' ) !== false ) { + $status_class = 'warning'; + } + ?> + + + + + + + + + +
+
+ +
+ + + + + + + +
+ + +
+

+
    + + +
  • + + – + – +
  • + +
+
+ + +
+
+ + +
+
+ +
+ + +
+

+

+ +

+
+ + + +

+ +

+ +
+
+ + +
+
+

⚠️

+

+ +
+ +

+
+ + + +
+
+
+
+ +
+ + +
+

+ + __( 'Plugins', 'wpvulnerability' ), + 'themes' => __( 'Themes', 'wpvulnerability' ), + 'php' => __( 'PHP', 'wpvulnerability' ), + 'apache' => __( 'Apache HTTPD', 'wpvulnerability' ), + 'nginx' => __( 'nginx', 'wpvulnerability' ), + 'mariadb' => __( 'MariaDB', 'wpvulnerability' ), + 'mysql' => __( 'MySQL', 'wpvulnerability' ), + 'imagemagick' => __( 'ImageMagick', 'wpvulnerability' ), + 'curl' => __( 'curl', 'wpvulnerability' ), + 'memcached' => __( 'memcached', 'wpvulnerability' ), + 'redis' => __( 'Redis', 'wpvulnerability' ), + 'sqlite' => __( 'SQLite', 'wpvulnerability' ), + ); + ?> + +
+ $label ) : ?> + +
+
+ + +
+ +
+
+ + + +
+ + +
+ +
+ +
+ +
+ + +
+

+ ' . esc_html( $formatted_datetime ) . '' ); + restore_previous_locale(); + ?> +

+
+ +
+ + + 'CVE', + 'euvd' => 'EUVD', + 'jvn' => 'JVN', + 'patchstack' => 'Patchstack', + 'wpscan' => 'WPScan', + 'wordfence' => 'Wordfence', + ); + if ( ! empty( $sources_stat ) ) : + ?> +
+

+

+ + + + + + + + + + + $src_label ) : ?> + + + + + + + + + + +
+
+ + + +
+

+ + + +
+ + +
+ <?php echo esc_attr( isset( $sponsor['name'] ) && is_scalar( $sponsor['name'] ) ? (string) $sponsor['name'] : '' ); ?> + + + +
+ +
+ +
+
💎
+

+
+ +
+ + +
+

+ + + +
+ + +
+ <?php echo esc_attr( isset( $contributor['name'] ) && is_scalar( $contributor['name'] ) ? (string) $contributor['name'] : '' ); ?> + + + +
+ +
+ +
+
👥
+

+
+ +
+
+ +
+
+
+ +
+
+
+

' . esc_html( is_scalar( $wpvulnerability_message_manual_success ) ? (string) $wpvulnerability_message_manual_success : '' ) . '

'; + delete_transient( 'wpvulnerability_message_manual_success' ); + unset( $wpvulnerability_message_manual_success ); + } + $wpvulnerability_message_manual_error = get_transient( 'wpvulnerability_message_manual_error' ); + if ( $wpvulnerability_message_manual_error ) { + echo '

' . esc_html( is_scalar( $wpvulnerability_message_manual_error ) ? (string) $wpvulnerability_message_manual_error : '' ) . '

'; + delete_transient( 'wpvulnerability_message_manual_error' ); + unset( $wpvulnerability_message_manual_error ); + } + settings_errors( 'admin_wpvulnerability_settings' ); + settings_errors( 'admin_wpvulnerability_analyze' ); + + $tabs = wpvulnerability_get_admin_tabs(); + + if ( empty( $tabs ) ) { + return; + } + + $current_tab = wpvulnerability_get_current_admin_tab( $tabs ); + + if ( ! isset( $tabs[ $current_tab ] ) ) { + $tab_keys = array_keys( $tabs ); + $current_tab = reset( $tab_keys ); + } + + ?> +
+
+ +
+ +
+
+
+ + +
: + '; + foreach ( $options as $hours ) { + printf( + '', + esc_attr( (string) $hours ), + selected( $current, $hours, false ), + esc_html( + sprintf( + /* translators: %d: number of hours */ + _n( '%d hour', '%d hours', $hours, 'wpvulnerability' ), + $hours + ) + ) + ); + } + echo ''; + + if ( null !== $forced_cache ) { + printf( + '', + esc_attr( (string) $current ) + ); + } + + printf( + '

%2$s

', + esc_url( 'https://www.wpvulnerability.com/plugin/#cache-duration' ), + esc_html__( 'Read more if you want to force the cache time.', 'wpvulnerability' ) + ); +} + + /** + * Print when to send the vulnerability scan emails. + * + * @since 2.0.0 + * + * @return void + */ +function wpvulnerability_admin_period_callback() { + + // Get the saved plugin settings. + $wpvulnerability_settings = get_option( 'wpvulnerability-config', array() ); + if ( ! is_array( $wpvulnerability_settings ) ) { + $wpvulnerability_settings = array(); + } + $defaults = array( + 'period' => 'weekly', + 'day' => 'monday', + 'hour' => 0, + 'minute' => 0, + ); + $wpvulnerability_settings = wp_parse_args( $wpvulnerability_settings, $defaults ); + + ?> +
+ +
+ +
+ +
+
+ + +
+
+
+ + + + +
+
+ 'y', + 'slack' => 'n', + 'teams' => 'n', + ); + + if ( ! isset( $wpvulnerability_settings['notify'] ) || ! is_array( $wpvulnerability_settings['notify'] ) ) { + $wpvulnerability_settings['notify'] = $defaults; + } else { + $wpvulnerability_settings['notify'] = wp_parse_args( $wpvulnerability_settings['notify'], $defaults ); + } + + $wpvulnerability_settings['notify'] = wpvulnerability_normalize_notify_settings( $wpvulnerability_settings['notify'] ); + + $email_enabled = wpvulnerability_is_yes( $wpvulnerability_settings['notify']['email'] ); + $slack_enabled = wpvulnerability_is_yes( $wpvulnerability_settings['notify']['slack'] ); + $teams_enabled = wpvulnerability_is_yes( $wpvulnerability_settings['notify']['teams'] ); + + ?> +
+ +
+ +
+ +
+ + + + + +
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+ +

+
+ $input The input fields to sanitize. + * + * @return array The sanitized values. + */ +function wpvulnerability_admin_sanitize( $input ) { + + $input_emails = array(); + $defaults = array( + 'notify' => array( + 'email' => 'n', + 'slack' => 'n', + 'teams' => 'n', + ), + 'slack_webhook' => '', + 'teams_webhook' => '', + 'day' => 'monday', + 'hour' => 0, + 'minute' => 0, + 'cache' => 12, + 'log_retention' => 0, + 'emails' => null, + 'period' => 'weekly', + ); + + $current_values = is_multisite() ? get_site_option( 'wpvulnerability-config', array() ) : get_option( 'wpvulnerability-config', array() ); + if ( ! is_array( $current_values ) ) { + $current_values = array(); + } + + $sanitized_values = $current_values; + + if ( isset( $input['emails'] ) ) { + $input_email_text = explode( ',', is_scalar( $input['emails'] ) ? (string) $input['emails'] : '' ); + + foreach ( $input_email_text as $input_email ) { + $input_email = sanitize_email( trim( (string) $input_email ) ); + + if ( $input_email ) { + $input_emails[] = $input_email; + } + } + + if ( count( $input_emails ) ) { + $sanitized_values['emails'] = implode( ',', $input_emails ); + } else { + $sanitized_values['emails'] = null; + } + } + + if ( isset( $input['period'] ) ) { + + // Check the value of the period field and sanitize it. + switch ( $input['period'] ) { + case 'never': + $sanitized_values['period'] = 'never'; + break; + case 'daily': + $sanitized_values['period'] = 'daily'; + break; + case 'weekly': + $sanitized_values['period'] = 'weekly'; + break; + default: + $sanitized_values['period'] = 'weekly'; + break; + } + } + + if ( isset( $input['day'] ) ) { + $day = strtolower( sanitize_text_field( is_scalar( $input['day'] ) ? (string) $input['day'] : '' ) ); + $valid_days = array( 'sunday', 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday' ); + $sanitized_values['day'] = in_array( $day, $valid_days, true ) ? $day : 'monday'; + } + + if ( isset( $input['hour'] ) ) { + $hour = is_scalar( $input['hour'] ) ? (int) $input['hour'] : 0; + $sanitized_values['hour'] = max( 0, min( 23, $hour ) ); + } + + if ( isset( $input['minute'] ) ) { + $minute = is_scalar( $input['minute'] ) ? (int) $input['minute'] : 0; + $sanitized_values['minute'] = max( 0, min( 59, $minute ) ); + } + + if ( isset( $input['cache'] ) ) { + $cache = is_scalar( $input['cache'] ) ? (int) $input['cache'] : 0; + $sanitized_values['cache'] = in_array( $cache, array( 1, 6, 12, 24 ), true ) ? $cache : 12; + } + + if ( isset( $input['log_retention'] ) ) { + $retention = is_scalar( $input['log_retention'] ) ? (int) $input['log_retention'] : 0; + if ( in_array( $retention, wpvulnerability_get_log_retention_values(), true ) ) { + $sanitized_values['log_retention'] = $retention; + } + } + + if ( isset( $input['notify'] ) && is_array( $input['notify'] ) ) { + $notify_raw = (array) wp_unslash( $input['notify'] ); + $notify_input = array(); + foreach ( $notify_raw as $k => $v ) { + $notify_input[ (string) $k ] = sanitize_text_field( is_scalar( $v ) ? (string) $v : '' ); + } + $sanitized_values['notify'] = wpvulnerability_normalize_notify_settings( $notify_input ); + } + + if ( isset( $input['slack_webhook'] ) ) { + $slack_url = trim( is_scalar( $input['slack_webhook'] ) ? (string) $input['slack_webhook'] : '' ); + if ( '' !== $slack_url ) { + $validated_slack = wpvulnerability_validate_webhook_url( + $slack_url, + array( 'hooks.slack.com' ) + ); + if ( '' === $validated_slack ) { + add_settings_error( + 'wpvulnerability-config', + 'invalid-slack-webhook', + __( 'Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com', 'wpvulnerability' ), + 'error' + ); + $sanitized_values['slack_webhook'] = ''; + } else { + $sanitized_values['slack_webhook'] = $validated_slack; + } + } else { + $sanitized_values['slack_webhook'] = ''; + } + } + + if ( isset( $input['teams_webhook'] ) ) { + $teams_url = trim( is_scalar( $input['teams_webhook'] ) ? (string) $input['teams_webhook'] : '' ); + if ( '' !== $teams_url ) { + $validated_teams = wpvulnerability_validate_webhook_url( + $teams_url, + array( 'office.com', 'office365.com', 'api.hooks.microsoft.com' ) + ); + if ( '' === $validated_teams ) { + add_settings_error( + 'wpvulnerability-config', + 'invalid-teams-webhook', + __( 'Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com', 'wpvulnerability' ), + 'error' + ); + $sanitized_values['teams_webhook'] = ''; + } else { + $sanitized_values['teams_webhook'] = $validated_teams; + } + } else { + $sanitized_values['teams_webhook'] = ''; + } + } + + if ( isset( $input['discord_webhook'] ) ) { + $discord_url = trim( is_scalar( $input['discord_webhook'] ) ? (string) $input['discord_webhook'] : '' ); + if ( '' !== $discord_url ) { + $validated_discord = wpvulnerability_validate_webhook_url( + $discord_url, + array( 'discord.com', 'discordapp.com' ) + ); + if ( '' === $validated_discord ) { + add_settings_error( + 'wpvulnerability-config', + 'invalid-discord-webhook', + __( 'Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com', 'wpvulnerability' ), + 'error' + ); + $sanitized_values['discord_webhook'] = ''; + } else { + $sanitized_values['discord_webhook'] = $validated_discord; + } + } else { + $sanitized_values['discord_webhook'] = ''; + } + } + + if ( isset( $input['telegram_bot_token'] ) ) { + $telegram_bot_token = sanitize_text_field( trim( is_scalar( $input['telegram_bot_token'] ) ? (string) $input['telegram_bot_token'] : '' ) ); + if ( '' !== $telegram_bot_token ) { + if ( ! preg_match( '/^\d+:[A-Za-z0-9_-]+$/', $telegram_bot_token ) ) { + add_settings_error( + 'wpvulnerability-config', + 'invalid-telegram-token', + __( 'Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11', 'wpvulnerability' ), + 'error' + ); + $sanitized_values['telegram_bot_token'] = ''; + } else { + $sanitized_values['telegram_bot_token'] = $telegram_bot_token; + } + } else { + $sanitized_values['telegram_bot_token'] = ''; + } + } + + if ( isset( $input['telegram_chat_id'] ) ) { + $sanitized_values['telegram_chat_id'] = sanitize_text_field( trim( is_scalar( $input['telegram_chat_id'] ) ? (string) $input['telegram_chat_id'] : '' ) ); + } + + $sanitized_values = wp_parse_args( $sanitized_values, $defaults ); + + // Schedule notification based on sanitized values. + wpvulnerability_schedule_notification_event( $sanitized_values ); + return $sanitized_values; +} + + /** + * Sanitizes the input fields for vulnerability analysis. + * + * This function takes an array of input fields and sanitizes them by setting + * the corresponding values in the output array to 1 if they are present in + * the input. The possible fields are 'core', 'plugins', 'themes', 'php', + * 'apache', and 'nginx'. + * + * @since 3.3.0 + * + * @param array $input The input fields to sanitize. + * + * @return array The sanitized values with keys 'core', 'plugins', 'themes', 'php', 'apache', and 'nginx'. + */ +function wpvulnerability_analyze_sanitize( $input ) { + $sanitized_values = array( + 'core' => isset( $input['core'] ) ? 1 : 0, + 'plugins' => isset( $input['plugins'] ) ? 1 : 0, + 'themes' => isset( $input['themes'] ) ? 1 : 0, + 'php' => isset( $input['php'] ) ? 1 : 0, + 'apache' => isset( $input['apache'] ) ? 1 : 0, + 'nginx' => isset( $input['nginx'] ) ? 1 : 0, + 'mariadb' => isset( $input['mariadb'] ) ? 1 : 0, + 'mysql' => isset( $input['mysql'] ) ? 1 : 0, + 'imagemagick' => isset( $input['imagemagick'] ) ? 1 : 0, + 'curl' => isset( $input['curl'] ) ? 1 : 0, + 'memcached' => isset( $input['memcached'] ) ? 1 : 0, + 'redis' => isset( $input['redis'] ) ? 1 : 0, + 'sqlite' => isset( $input['sqlite'] ) ? 1 : 0, + ); + + foreach ( $sanitized_values as $component => $value ) { + $constant = 'WPVULNERABILITY_HIDE_' . strtoupper( (string) $component ); + if ( defined( $constant ) && constant( $constant ) ) { + $sanitized_values[ $component ] = 1; + } + } + + return $sanitized_values; +} + + /** + * Content for the Dashboard Widget + * + * @since 2.2.0 + * + * @return void + */ +function wpvulnerability_admin_dashboard_content() { + + if ( ! wpvulnerability_capabilities() ) { + return; + } + + // Get vulnerability counts for all components. + $core_count = wpvulnerability_get_component_count( 'core' ); + $plugins_count = wpvulnerability_get_component_count( 'plugins' ); + $themes_count = wpvulnerability_get_component_count( 'themes' ); + $php_count = wpvulnerability_get_component_count( 'php' ); + $apache_count = wpvulnerability_get_component_count( 'apache' ); + $nginx_count = wpvulnerability_get_component_count( 'nginx' ); + $mariadb_count = wpvulnerability_get_component_count( 'mariadb' ); + $mysql_count = wpvulnerability_get_component_count( 'mysql' ); + $imagemagick_count = wpvulnerability_get_component_count( 'imagemagick' ); + $curl_count = wpvulnerability_get_component_count( 'curl' ); + $memcached_count = wpvulnerability_get_component_count( 'memcached' ); + $redis_count = wpvulnerability_get_component_count( 'redis' ); + $sqlite_count = wpvulnerability_get_component_count( 'sqlite' ); + + // Calculate total vulnerabilities (only for enabled components). + $total_vulnerabilities = 0; + if ( wpvulnerability_analyze_filter( 'core' ) ) { + $total_vulnerabilities += $core_count; + } + if ( wpvulnerability_analyze_filter( 'plugins' ) ) { + $total_vulnerabilities += $plugins_count; + } + if ( wpvulnerability_analyze_filter( 'themes' ) ) { + $total_vulnerabilities += $themes_count; + } + if ( wpvulnerability_analyze_filter( 'php' ) ) { + $total_vulnerabilities += $php_count; + } + if ( wpvulnerability_analyze_filter( 'apache' ) ) { + $total_vulnerabilities += $apache_count; + } + if ( wpvulnerability_analyze_filter( 'nginx' ) ) { + $total_vulnerabilities += $nginx_count; + } + if ( wpvulnerability_analyze_filter( 'mariadb' ) ) { + $total_vulnerabilities += $mariadb_count; + } + if ( wpvulnerability_analyze_filter( 'mysql' ) ) { + $total_vulnerabilities += $mysql_count; + } + if ( wpvulnerability_analyze_filter( 'imagemagick' ) ) { + $total_vulnerabilities += $imagemagick_count; + } + if ( wpvulnerability_analyze_filter( 'curl' ) ) { + $total_vulnerabilities += $curl_count; + } + if ( wpvulnerability_analyze_filter( 'memcached' ) ) { + $total_vulnerabilities += $memcached_count; + } + if ( wpvulnerability_analyze_filter( 'redis' ) ) { + $total_vulnerabilities += $redis_count; + } + if ( wpvulnerability_analyze_filter( 'sqlite' ) ) { + $total_vulnerabilities += $sqlite_count; + } + + // Determine status badge. + $status_class = 'wpvuln-status-secure'; + $status_text = '✓ ' . __( 'All Clear', 'wpvulnerability' ); + $status_icon = '✓'; + + if ( $total_vulnerabilities > 0 ) { + if ( ( wpvulnerability_analyze_filter( 'core' ) && $core_count > 0 ) || + ( wpvulnerability_analyze_filter( 'php' ) && $php_count > 0 ) || + $total_vulnerabilities > 5 ) { + $status_class = 'wpvuln-status-critical'; + $status_icon = '✕'; + /* translators: %d: number of vulnerabilities */ + $status_text = sprintf( _n( '%d Critical Issue Found', '%d Critical Issues Found', $total_vulnerabilities, 'wpvulnerability' ), $total_vulnerabilities ); + } else { + $status_class = 'wpvuln-status-warning'; + $status_icon = '⚠'; + /* translators: %d: number of vulnerabilities */ + $status_text = sprintf( _n( '%d Issue Found', '%d Issues Found', $total_vulnerabilities, 'wpvulnerability' ), $total_vulnerabilities ); + } + } + + // Get last check time. + $raw_core_cache = get_option( 'wpvulnerability-core-cache', '' ); + $core_cache = json_decode( is_string( $raw_core_cache ) ? $raw_core_cache : '', true ); + $last_check_text = __( 'Never checked', 'wpvulnerability' ); + if ( $core_cache && is_numeric( $core_cache ) ) { + $cache_hours = wpvulnerability_cache_hours(); + $last_check_time = $core_cache - ( $cache_hours * 3600 ); + $time_diff = time() - $last_check_time; + if ( $time_diff < 3600 ) { + $minutes_ago = (int) floor( $time_diff / 60 ); + /* translators: %d: number of minutes */ + $last_check_text = sprintf( _n( '%d minute ago', '%d minutes ago', $minutes_ago, 'wpvulnerability' ), $minutes_ago ); + } else { + $hours_ago = (int) floor( $time_diff / 3600 ); + /* translators: %d: number of hours */ + $last_check_text = sprintf( _n( '%d hour ago', '%d hours ago', $hours_ago, 'wpvulnerability' ), $hours_ago ); + } + } + + // Status badge. + echo '
'; + echo esc_html( $status_text ); + echo '
'; + + // Meta information. + echo '
'; + /* translators: %s: time since last check */ + echo esc_html( sprintf( __( 'Last checked: %s', 'wpvulnerability' ), $last_check_text ) ); + echo ' | ↻ ' . esc_html( __( 'Refresh Now', 'wpvulnerability' ) ) . ''; + echo '
'; + + // If no vulnerabilities, show empty state. + if ( 0 === $total_vulnerabilities ) { + echo '
'; + echo '
'; + echo '
' . esc_html( __( 'No vulnerabilities detected', 'wpvulnerability' ) ) . '
'; + echo '
' . esc_html( __( 'Your site is up to date and secure', 'wpvulnerability' ) ) . '
'; + echo '
'; + } else { + // WordPress Components section. + echo '
' . esc_html( __( 'WordPress Components', 'wpvulnerability' ) ) . '
'; + + // Core. + if ( wpvulnerability_analyze_filter( 'core' ) ) { + $badge_class = $core_count > 0 ? 'wpvuln-badge-critical' : 'wpvuln-badge-secure'; + $badge_icon = $core_count > 0 ? '✕' : '✓'; + echo '
'; + echo ''; + echo '' . esc_html( __( 'WordPress Core', 'wpvulnerability' ) ) . ''; + echo '' . esc_html( $badge_icon ) . ' ' . esc_html( (string) $core_count ) . ''; + echo '
'; + } + + // Plugins. + if ( wpvulnerability_analyze_filter( 'plugins' ) ) { + $badge_class = $plugins_count > 0 ? 'wpvuln-badge-critical' : 'wpvuln-badge-secure'; + $badge_icon = $plugins_count > 0 ? '✕' : '✓'; + echo '
'; + echo ''; + echo '' . esc_html( __( 'Plugins', 'wpvulnerability' ) ) . ''; + echo '' . esc_html( $badge_icon ) . ' ' . esc_html( (string) $plugins_count ) . ''; + echo '
'; + if ( $plugins_count > 0 ) { + echo '
'; + echo wpvulnerability_list_plugins(); // phpcs:ignore + echo '
'; + } + } + + // Themes. + if ( wpvulnerability_analyze_filter( 'themes' ) ) { + $badge_class = $themes_count > 0 ? 'wpvuln-badge-critical' : 'wpvuln-badge-secure'; + $badge_icon = $themes_count > 0 ? '✕' : '✓'; + echo '
'; + echo ''; + echo '' . esc_html( __( 'Themes', 'wpvulnerability' ) ) . ''; + echo '' . esc_html( $badge_icon ) . ' ' . esc_html( (string) $themes_count ) . ''; + echo '
'; + if ( $themes_count > 0 ) { + echo '
'; + echo wpvulnerability_list_themes(); // phpcs:ignore + echo '
'; + } + } + + // Server Software section. + $php_version = wpvulnerability_detect_php(); + $webserver = wpvulnerability_detect_webserver(); + $sqlserver = wpvulnerability_detect_sqlserver(); + $show_server_section = false; + + // Check if any server software is detected. + if ( ( wpvulnerability_analyze_filter( 'php' ) && $php_version ) || + ( isset( $webserver['id'] ) && isset( $webserver['version'] ) ) || + ( isset( $sqlserver['id'] ) && isset( $sqlserver['version'] ) ) || + wpvulnerability_get_software_version( 'imagemagick' ) || + wpvulnerability_get_software_version( 'curl' ) || + wpvulnerability_get_software_version( 'memcached' ) || + wpvulnerability_get_software_version( 'redis' ) || + wpvulnerability_get_software_version( 'sqlite' ) ) { + $show_server_section = true; + } + + if ( $show_server_section ) { + echo '
' . esc_html( __( 'Server Software', 'wpvulnerability' ) ) . '
'; + echo '
'; + + // PHP. + if ( wpvulnerability_analyze_filter( 'php' ) && $php_version ) { + $badge_class = $php_count > 0 ? 'wpvuln-badge-critical' : 'wpvuln-badge-secure'; + $badge_icon = $php_count > 0 ? '✕' : '✓'; + echo '
'; + echo ''; + echo 'PHP ' . esc_html( $php_version ) . ''; + echo '' . esc_html( $badge_icon ) . ' ' . esc_html( (string) $php_count ) . ''; + echo wp_kses( + wpvulnerability_eol_badge_html( 'php' ), + array( + 'span' => array( + 'class' => array(), + 'title' => array(), + ), + ) + ); + echo '
'; + } + + // Web server (Apache/nginx). + if ( isset( $webserver['id'] ) && isset( $webserver['version'] ) ) { + if ( 'apache' === $webserver['id'] && wpvulnerability_analyze_filter( 'apache' ) ) { + $badge_class = $apache_count > 0 ? 'wpvuln-badge-warning' : 'wpvuln-badge-secure'; + $badge_icon = $apache_count > 0 ? '✕' : '✓'; + echo '
'; + echo ''; + echo 'Apache ' . esc_html( $webserver['version'] ) . ''; + echo '' . esc_html( $badge_icon ) . ' ' . esc_html( (string) $apache_count ) . ''; + echo wp_kses( + wpvulnerability_eol_badge_html( 'apache' ), + array( + 'span' => array( + 'class' => array(), + 'title' => array(), + ), + ) + ); + echo '
'; + } elseif ( 'nginx' === $webserver['id'] && wpvulnerability_analyze_filter( 'nginx' ) ) { + $badge_class = $nginx_count > 0 ? 'wpvuln-badge-warning' : 'wpvuln-badge-secure'; + $badge_icon = $nginx_count > 0 ? '✕' : '✓'; + echo '
'; + echo ''; + echo 'nginx ' . esc_html( $webserver['version'] ) . ''; + echo '' . esc_html( $badge_icon ) . ' ' . esc_html( (string) $nginx_count ) . ''; + echo wp_kses( + wpvulnerability_eol_badge_html( 'nginx' ), + array( + 'span' => array( + 'class' => array(), + 'title' => array(), + ), + ) + ); + echo '
'; + } + } + + // Database (MariaDB/MySQL). + if ( isset( $sqlserver['id'] ) && isset( $sqlserver['version'] ) ) { + if ( 'mariadb' === $sqlserver['id'] && wpvulnerability_analyze_filter( 'mariadb' ) ) { + $badge_class = $mariadb_count > 0 ? 'wpvuln-badge-warning' : 'wpvuln-badge-secure'; + $badge_icon = $mariadb_count > 0 ? '✕' : '✓'; + echo '
'; + echo ''; + echo 'MariaDB ' . esc_html( $sqlserver['version'] ) . ''; + echo '' . esc_html( $badge_icon ) . ' ' . esc_html( (string) $mariadb_count ) . ''; + echo wp_kses( + wpvulnerability_eol_badge_html( 'mariadb' ), + array( + 'span' => array( + 'class' => array(), + 'title' => array(), + ), + ) + ); + echo '
'; + } elseif ( 'mysql' === $sqlserver['id'] && wpvulnerability_analyze_filter( 'mysql' ) ) { + $badge_class = $mysql_count > 0 ? 'wpvuln-badge-warning' : 'wpvuln-badge-secure'; + $badge_icon = $mysql_count > 0 ? '✕' : '✓'; + echo '
'; + echo ''; + echo 'MySQL ' . esc_html( $sqlserver['version'] ) . ''; + echo '' . esc_html( $badge_icon ) . ' ' . esc_html( (string) $mysql_count ) . ''; + echo wp_kses( + wpvulnerability_eol_badge_html( 'mysql' ), + array( + 'span' => array( + 'class' => array(), + 'title' => array(), + ), + ) + ); + echo '
'; + } + } + + // ImageMagick. + $imagemagick_version = wpvulnerability_get_software_version( 'imagemagick' ); + if ( $imagemagick_version && wpvulnerability_analyze_filter( 'imagemagick' ) ) { + $badge_class = $imagemagick_count > 0 ? 'wpvuln-badge-warning' : 'wpvuln-badge-secure'; + $badge_icon = $imagemagick_count > 0 ? '✕' : '✓'; + echo '
'; + echo ''; + echo 'ImageMagick ' . esc_html( $imagemagick_version ) . ''; + echo '' . esc_html( $badge_icon ) . ' ' . esc_html( (string) $imagemagick_count ) . ''; + echo wp_kses( + wpvulnerability_eol_badge_html( 'imagemagick' ), + array( + 'span' => array( + 'class' => array(), + 'title' => array(), + ), + ) + ); + echo '
'; + } + + // curl. + $curl_version = wpvulnerability_get_software_version( 'curl' ); + if ( $curl_version && wpvulnerability_analyze_filter( 'curl' ) ) { + $badge_class = $curl_count > 0 ? 'wpvuln-badge-warning' : 'wpvuln-badge-secure'; + $badge_icon = $curl_count > 0 ? '✕' : '✓'; + echo '
'; + echo ''; + echo 'curl ' . esc_html( $curl_version ) . ''; + echo '' . esc_html( $badge_icon ) . ' ' . esc_html( (string) $curl_count ) . ''; + echo wp_kses( + wpvulnerability_eol_badge_html( 'curl' ), + array( + 'span' => array( + 'class' => array(), + 'title' => array(), + ), + ) + ); + echo '
'; + } + + // memcached. + $memcached_version = wpvulnerability_get_software_version( 'memcached' ); + if ( $memcached_version && wpvulnerability_analyze_filter( 'memcached' ) ) { + $badge_class = $memcached_count > 0 ? 'wpvuln-badge-warning' : 'wpvuln-badge-secure'; + $badge_icon = $memcached_count > 0 ? '✕' : '✓'; + echo '
'; + echo ''; + echo 'memcached ' . esc_html( $memcached_version ) . ''; + echo '' . esc_html( $badge_icon ) . ' ' . esc_html( (string) $memcached_count ) . ''; + echo wp_kses( + wpvulnerability_eol_badge_html( 'memcached' ), + array( + 'span' => array( + 'class' => array(), + 'title' => array(), + ), + ) + ); + echo '
'; + } + + // Redis. + $redis_version = wpvulnerability_get_software_version( 'redis' ); + if ( $redis_version && wpvulnerability_analyze_filter( 'redis' ) ) { + $badge_class = $redis_count > 0 ? 'wpvuln-badge-warning' : 'wpvuln-badge-secure'; + $badge_icon = $redis_count > 0 ? '✕' : '✓'; + echo '
'; + echo ''; + echo 'Redis ' . esc_html( $redis_version ) . ''; + echo '' . esc_html( $badge_icon ) . ' ' . esc_html( (string) $redis_count ) . ''; + echo wp_kses( + wpvulnerability_eol_badge_html( 'redis' ), + array( + 'span' => array( + 'class' => array(), + 'title' => array(), + ), + ) + ); + echo '
'; + } + + // SQLite. + $sqlite_version = wpvulnerability_get_software_version( 'sqlite' ); + if ( $sqlite_version && wpvulnerability_analyze_filter( 'sqlite' ) ) { + $badge_class = $sqlite_count > 0 ? 'wpvuln-badge-warning' : 'wpvuln-badge-secure'; + $badge_icon = $sqlite_count > 0 ? '✕' : '✓'; + echo '
'; + echo ''; + echo 'SQLite ' . esc_html( $sqlite_version ) . ''; + echo '' . esc_html( $badge_icon ) . ' ' . esc_html( (string) $sqlite_count ) . ''; + echo wp_kses( + wpvulnerability_eol_badge_html( 'sqlite' ), + array( + 'span' => array( + 'class' => array(), + 'title' => array(), + ), + ) + ); + echo '
'; + } + + echo '
'; + } + } + + // Footer links. + echo ''; +} + + /** + * Created a widget in the WordPress dashboard with vulnerability info. + * + * @since 2.2.0 + * + * @return void + */ +function wpvulnerability_admin_dashboard() { + if ( wpvulnerability_capabilities() ) { + wp_add_dashboard_widget( + 'wpvulnerability', + __( 'WPVulnerability Status', 'wpvulnerability' ), + 'wpvulnerability_admin_dashboard_content', + null, + null, + 'side', + 'high' + ); + } +} + add_action( 'wp_dashboard_setup', 'wpvulnerability_admin_dashboard' ); + + /** + * Initializes the WP-Admin settings page for the WP Vulnerability plugin + * + * @since 2.0.0 + * + * @return void + */ +function wpvulnerability_admin_init() { + // Register the plugin settings to be saved in the database. + register_setting( + 'admin_wpvulnerability_settings', + 'wpvulnerability-config', + array( + 'sanitize_callback' => 'wpvulnerability_admin_sanitize', + 'default' => array(), + ) + ); + + // Add a section to the settings page. + add_settings_section( + 'admin_wpvulnerability_settings', + __( 'Receive vulnerability notifications', 'wpvulnerability' ), + 'wpvulnerability_admin_section_notifications', + 'wpvulnerability-config' + ); + + // Add a field for the cache expiration time. + add_settings_field( + 'wpvulnerability_cache', + __( 'Cache expiration time', 'wpvulnerability' ), + 'wpvulnerability_admin_cache_callback', + 'wpvulnerability-config', + 'admin_wpvulnerability_settings' + ); + + // Add a field for the notification period. + add_settings_field( + 'wpvulnerability_period', + __( 'How often you want to receive notifications', 'wpvulnerability' ), + 'wpvulnerability_admin_period_callback', + 'wpvulnerability-config', + 'admin_wpvulnerability_settings' + ); + + // Add a field for notification methods. + add_settings_field( + 'wpvulnerability_notify', + __( 'Where do you want to receive notifications?', 'wpvulnerability' ), + 'wpvulnerability_admin_notify_callback', + 'wpvulnerability-config', + 'admin_wpvulnerability_settings' + ); + + // Add a field for the email addresses. + add_settings_field( + 'wpvulnerability_emails', + __( 'Email addresses to notify (separated by commas)', 'wpvulnerability' ), + 'wpvulnerability_admin_emails_callback', + 'wpvulnerability-config', + 'admin_wpvulnerability_settings' + ); + + // Add a field for the Slack webhook. + add_settings_field( + 'wpvulnerability_slack_webhook', + __( 'Slack webhook URL', 'wpvulnerability' ), + 'wpvulnerability_admin_slack_callback', + 'wpvulnerability-config', + 'admin_wpvulnerability_settings' + ); + + // Add a field for the Teams webhook. + add_settings_field( + 'wpvulnerability_teams_webhook', + __( 'Teams webhook URL', 'wpvulnerability' ), + 'wpvulnerability_admin_teams_callback', + 'wpvulnerability-config', + 'admin_wpvulnerability_settings' + ); + + // Register the settings for analysis. + register_setting( + 'admin_wpvulnerability_analyze', + 'wpvulnerability-analyze', + array( + 'sanitize_callback' => 'wpvulnerability_analyze_sanitize', + 'default' => array(), + ) + ); + + // Add a section for analyzing settings. + add_settings_section( + 'admin_wpvulnerability_analyze', + __( 'Vulnerabilities to hide', 'wpvulnerability' ), + 'wpvulnerability_admin_section_analyze', + 'wpvulnerability-analyze' + ); + + // Add a field for analysis options. + add_settings_field( + 'wpvulnerability_analyze', + __( 'What do you want to hide?', 'wpvulnerability' ), + 'wpvulnerability_admin_analyze_callback', + 'wpvulnerability-analyze', + 'admin_wpvulnerability_analyze' + ); +} + add_action( 'admin_init', 'wpvulnerability_admin_init' ); + +/** + * Outputs the Security tab contents. + * + * Displays shell_exec security status, detection methods, and audit logs. + * + * @since 4.3.0 + * + * @return void + */ +function wpvulnerability_render_admin_tab_security() { + ?> +
+ + + + +
+ __( 'Standard (Hybrid Detection)', 'wpvulnerability' ), + 'strict' => __( 'Strict (Extensions Only)', 'wpvulnerability' ), + 'disabled' => __( 'Disabled (No Detection)', 'wpvulnerability' ), + ); + + $mode_label = isset( $mode_labels[ $security_mode ] ) ? $mode_labels[ $security_mode ] : $security_mode; + ?> +
+

+ +
+
+ + +
+ +
+ + + + + + +
+ +
+ + 0 ) : ?> + + + + + + +
+ +
+ + +
+
+ + +
+ + + post_date ) ), time() ) + ) + ); + ?> + +
+ + +
+

+ +
+ security configuration documentation for details.', 'wpvulnerability' ) ), + esc_url( 'https://www.wpvulnerability.com/plugin/#security-configuration' ) + ); + ?> +

+
+
+ __( 'ImageMagick', 'wpvulnerability' ), + 'redis' => __( 'Redis', 'wpvulnerability' ), + 'memcached' => __( 'Memcached', 'wpvulnerability' ), + 'sqlite' => __( 'SQLite', 'wpvulnerability' ), + ); + + $detections = array(); + + foreach ( array_keys( $components ) as $component ) { + $detection = null; + + switch ( $component ) { + case 'imagemagick': + $detection = wpvulnerability_detect_imagemagick(); + break; + case 'redis': + $detection = wpvulnerability_detect_redis(); + break; + case 'memcached': + $detection = wpvulnerability_detect_memcached(); + break; + case 'sqlite': + $detection = wpvulnerability_detect_sqlite(); + break; + } + + $detections[ $component ] = $detection; + } + + $method_labels = array( + 'imagick_extension' => __( 'Imagick Extension', 'wpvulnerability' ), + 'redis_extension' => __( 'Redis Extension', 'wpvulnerability' ), + 'memcached_extension' => __( 'Memcached Extension', 'wpvulnerability' ), + 'memcache_extension' => __( 'Memcache Extension', 'wpvulnerability' ), + 'sqlite3_extension' => __( 'SQLite3 Extension', 'wpvulnerability' ), + 'pdo_sqlite' => __( 'PDO SQLite', 'wpvulnerability' ), + 'shell_exec' => __( 'Shell Command', 'wpvulnerability' ), + 'binary_exists' => __( 'Binary Check', 'wpvulnerability' ), + 'none' => __( 'Not Detected', 'wpvulnerability' ), + ); + ?> +
+

+

+ + + + + + + + + + + + $detection ) : ?> + + + + + + + + +
+ ' . esc_html__( 'Not detected', 'wpvulnerability' ) . ''; + } + ?> + + + + 0 ) { + $reliability_class = 'low'; + if ( $reliability >= 80 ) { + $reliability_class = ''; + } elseif ( $reliability >= 50 ) { + $reliability_class = 'medium'; + } + ?> + + + + % + + + +
+
+ +
+

+

+ + +
+
🔒
+

+

+
+ + + + + + + + + + + + + + + post_content, true ); + if ( ! is_array( $log_data ) ) { + $log_data = array(); + } + if ( empty( $log_data ) ) { + continue; + } + ?> + + + + + + + + + + + +
+ post_date ) ), time() ) + ) + ); + ?> + + + + + + + + +
+ + 50 ) : ?> + ... + +
+ + + +
+ +

+ +

+ +
+ __( 'Invalid nonce.', 'wpvulnerability' ) ) ); + } + + // Check permissions. + if ( ! current_user_can( 'manage_options' ) ) { + wp_send_json_error( array( 'message' => __( 'Insufficient permissions.', 'wpvulnerability' ) ) ); + } + + // Get component. + $component = isset( $_POST['component'] ) ? sanitize_key( is_string( $_POST['component'] ) ? $_POST['component'] : '' ) : ''; + if ( empty( $component ) ) { + wp_send_json_error( array( 'message' => __( 'No component specified.', 'wpvulnerability' ) ) ); + } + + // Load debug functions. + if ( ! function_exists( 'wpvulnerability_debug_test_api_component' ) ) { + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-debug.php'; + } + + // Test API. + $wpvulnerability_result = wpvulnerability_debug_test_api_component( $component ); + + wp_send_json_success( $wpvulnerability_result ); +} +add_action( 'wp_ajax_wpvulnerability_test_api', 'wpvulnerability_ajax_test_api' ); + +/** + * Outputs the Debug tab contents. + * + * @since 4.3.0 + * + * @return void + */ +function wpvulnerability_render_admin_tab_debug() { + // Security check: only show in debug mode. + if ( ! defined( 'WP_DEBUG' ) || ! WP_DEBUG ) { + return; + } + + // Load debug functions if not already loaded. + if ( ! function_exists( 'wpvulnerability_debug_get_system_info' ) ) { + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-debug.php'; + } + + ?> +
+

+

+ +

+ + +
+ +
+

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ $loaded ) : ?> + + + + + +
+ + + +
+ + + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + + +
+
+ +
+

+ + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + +
+
+ +
+

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ +
+ + + + +
+ + + + +
+ + + + +
+ + + + +
+
+ +
+

+ + + + + + + + + + + +
+ + + + + +
+ + + + + +
+ + +
+
+ + + +
+ +
+ + + +
+
+ +

+ +

+ +
+ +
+

+ + +

+ +
+ + + +
+ +
+ + + +

+ +

+ +
+ +
+

+

+ +
+ + + + +
+ + + +
+

+ +
+ +

+ +
+ +
+ +
+

+

+ + +
+
+ + + +
+ +
+ + + +
+ +
+ + + +
+
+ +

+ +

+ +
+ admin_url( 'admin-ajax.php' ), + ) + ); +} +add_action( 'admin_enqueue_scripts', 'wpvulnerability_admin_enqueue_scripts' ); + + +/** + * Processes the form submission for the WPVulnerability plugin settings in a multisite network admin context. + * + * Checks if the current request is a submission from the WPVulnerability settings page. + * Verifies the security nonce to prevent CSRF attacks. If the verification fails or if the request + * is not from a network admin or the admin dashboard, the function will halt execution and display an error. + * Otherwise, it sanitizes and updates the plugin settings, reschedules any relevant wp-cron events, + * and registers a settings error to notify the user that the information has been updated. + * + * @since 3.0.0 + * @return void + */ +function wpvulnerability_process_network_config_forms() { + // Only process config forms that have the wpvulnerability_submit button. + // Other action forms (delete logs, reset, etc.) have their own handlers. + if ( ! isset( $_POST['wpvulnerability_submit'] ) ) { + return; + } + + if ( isset( $_GET['page'] ) && 'wpvulnerability-options' === $_GET['page'] ) { + + if ( check_admin_referer( 'wpvulnerability_nonce', 'wpauto_nonce' ) ) { + + if ( ! current_user_can( 'manage_network_options' ) ) { + return; + } + + if ( isset( $_POST['wpvulnerability-config'] ) ) { + + $post_config = filter_input( INPUT_POST, 'wpvulnerability-config', FILTER_DEFAULT, FILTER_REQUIRE_ARRAY ); + if ( ! is_array( $post_config ) ) { + $post_config = array(); + } + + $wpvulnerability_sanitized_values = wpvulnerability_sanitize_config( $post_config ); + + update_site_option( 'wpvulnerability-config', $wpvulnerability_sanitized_values ); + + unset( $wpvulnerability_sanitized_values ); + + add_settings_error( + 'wpvulnerability-messages', + 'wpvulnerability-updated', + __( 'Settings saved.', 'wpvulnerability' ), + 'success' + ); + + } + + if ( isset( $_POST['wpvulnerability-analyze'] ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Missing + + $wpvulnerability_sanitized_values = array( + 'core' => 0, + 'plugins' => 0, + 'themes' => 0, + 'php' => 0, + 'apache' => 0, + 'nginx' => 0, + 'mariadb' => 0, + 'mysql' => 0, + 'imagemagick' => 0, + 'curl' => 0, + 'memcached' => 0, + 'redis' => 0, + 'sqlite' => 0, + ); + + $wpvulnerability_analyze_raw = (array) wp_unslash( $_POST['wpvulnerability-analyze'] ); + $wpvulnerability_values = array(); + foreach ( $wpvulnerability_analyze_raw as $v ) { + $wpvulnerability_values[] = sanitize_text_field( is_scalar( $v ) ? (string) $v : '' ); + } + + foreach ( $wpvulnerability_values as $data ) { + switch ( $data ) { + case 'core': + $wpvulnerability_sanitized_values['core'] = 1; + break; + case 'plugins': + $wpvulnerability_sanitized_values['plugins'] = 1; + break; + case 'themes': + $wpvulnerability_sanitized_values['themes'] = 1; + break; + case 'php': + $wpvulnerability_sanitized_values['php'] = 1; + break; + case 'apache': + $wpvulnerability_sanitized_values['apache'] = 1; + break; + case 'nginx': + $wpvulnerability_sanitized_values['nginx'] = 1; + break; + case 'mariadb': + $wpvulnerability_sanitized_values['mariadb'] = 1; + break; + case 'mysql': + $wpvulnerability_sanitized_values['mysql'] = 1; + break; + case 'imagemagick': + $wpvulnerability_sanitized_values['imagemagick'] = 1; + break; + case 'curl': + $wpvulnerability_sanitized_values['curl'] = 1; + break; + case 'memcached': + $wpvulnerability_sanitized_values['memcached'] = 1; + break; + case 'redis': + $wpvulnerability_sanitized_values['redis'] = 1; + break; + case 'sqlite': + $wpvulnerability_sanitized_values['sqlite'] = 1; + break; + } + } + + update_site_option( + 'wpvulnerability-analyze', + array( + 'core' => $wpvulnerability_sanitized_values['core'], + 'plugins' => $wpvulnerability_sanitized_values['plugins'], + 'themes' => $wpvulnerability_sanitized_values['themes'], + 'php' => $wpvulnerability_sanitized_values['php'], + 'apache' => $wpvulnerability_sanitized_values['apache'], + 'nginx' => $wpvulnerability_sanitized_values['nginx'], + 'mariadb' => $wpvulnerability_sanitized_values['mariadb'], + 'mysql' => $wpvulnerability_sanitized_values['mysql'], + 'imagemagick' => $wpvulnerability_sanitized_values['imagemagick'], + 'curl' => $wpvulnerability_sanitized_values['curl'], + 'memcached' => $wpvulnerability_sanitized_values['memcached'], + 'redis' => $wpvulnerability_sanitized_values['redis'], + 'sqlite' => $wpvulnerability_sanitized_values['sqlite'], + ) + ); + + unset( $wpvulnerability_sanitized_values ); + + add_settings_error( + 'wpvulnerability-messages', + 'wpvulnerability-updated', + __( 'Settings saved.', 'wpvulnerability' ), + 'success' + ); + + } + } + } +} +add_action( 'admin_init', 'wpvulnerability_process_network_config_forms' ); + +/** + * Process action form submissions (delete logs, reset, test email, etc.). + * + * @since 4.3.0 + * @return void + */ +function wpvulnerability_process_network_action_forms() { + /** + * Reset the data + * + * @since 3.0.0 + */ + if ( isset( $_POST['wpvulnerability_reset'] ) && check_admin_referer( 'wpvulnerability_reset_action', 'wpvulnerability_reset_nonce' ) ) { + + if ( current_user_can( 'manage_network_options' ) ) { + // Calls the reset function. + wpvulnerability_update_database_data(); + + set_transient( 'wpvulnerability_message_manual_success', __( 'Data from source has been reloaded.', 'wpvulnerability' ), 10 ); + } else { + set_transient( 'wpvulnerability_message_manual_error', __( 'You do not have permission to reload data.', 'wpvulnerability' ), 10 ); + } + } + + /** + * Send an test email + * + * @since 3.0.0 + */ + if ( isset( $_POST['wpvulnerability_email'] ) && check_admin_referer( 'wpvulnerability_email_action', 'wpvulnerability_email_nonce' ) ) { + + if ( ! function_exists( 'wpvulnerability_execute_notification' ) ) { + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-core.php'; + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-plugins.php'; + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-themes.php'; + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-software.php'; + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-process.php'; + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-notifications.php'; + } + + // Calls the notifications function, forced. + if ( current_user_can( 'manage_network_options' ) ) { + $wpmail = wpvulnerability_execute_notification( true ); + + if ( $wpmail ) { + + set_transient( 'wpvulnerability_message_manual_success', __( 'Test email has been sent.', 'wpvulnerability' ), 10 ); + + } else { + + set_transient( 'wpvulnerability_message_manual_error', __( 'Test email has failed. Please, check your email settings.', 'wpvulnerability' ), 10 ); + + } + } else { + set_transient( 'wpvulnerability_message_manual_error', __( 'You do not have permission to send test emails.', 'wpvulnerability' ), 10 ); + } + } + + /** + * Repairs scheduled cron events across the network. + * + * @since 4.3.0 + */ + if ( isset( $_POST['wpvulnerability_repair_cron'] ) && check_admin_referer( 'wpvulnerability_cron_action', 'wpvulnerability_cron_nonce' ) ) { + if ( current_user_can( 'manage_network_options' ) ) { + $wpvulnerability_settings = get_site_option( 'wpvulnerability-config', array() ); + $cron_config = is_array( $wpvulnerability_settings ) ? $wpvulnerability_settings : array(); + wpvulnerability_repair_network_cron_events( $cron_config ); + set_transient( 'wpvulnerability_message_manual_success', __( 'WPVulnerability cron events have been repaired across the network.', 'wpvulnerability' ), 10 ); + } else { + set_transient( 'wpvulnerability_message_manual_error', __( 'You do not have permission to repair cron events.', 'wpvulnerability' ), 10 ); + } + } + + /** + * Delete all stored API logs across the network. + * + * @since 4.3.0 + */ + if ( isset( $_POST['wpvulnerability_delete_logs'] ) && check_admin_referer( 'wpvulnerability_delete_logs_action', 'wpvulnerability_delete_logs_nonce' ) ) { + if ( current_user_can( 'manage_network_options' ) ) { + wpvulnerability_delete_all_logs(); + set_transient( 'wpvulnerability_message_manual_success', __( 'All logs have been deleted.', 'wpvulnerability' ), 10 ); + } else { + set_transient( 'wpvulnerability_message_manual_error', __( 'You do not have permission to delete logs.', 'wpvulnerability' ), 10 ); + } + } + + /** + * Fully resets plugin data, settings, and cached API content across the network. + * + * @since 4.3.0 + */ + if ( isset( $_POST['wpvulnerability_delete_on_uninstall'] ) && check_admin_referer( 'wpvulnerability_uninstall_action', 'wpvulnerability_uninstall_nonce' ) ) { + if ( current_user_can( 'manage_network_options' ) ) { + $wpvulnerability_settings = get_site_option( 'wpvulnerability-config', array() ); + if ( ! is_array( $wpvulnerability_settings ) ) { + $wpvulnerability_settings = array(); + } + $wpvulnerability_settings['delete_on_uninstall'] = isset( $_POST['delete_on_uninstall'] ) ? 1 : 0; + update_site_option( 'wpvulnerability-config', $wpvulnerability_settings ); + } + } + + if ( isset( $_POST['wpvulnerability_full_reset'] ) && check_admin_referer( 'wpvulnerability_full_reset_action', 'wpvulnerability_full_reset_nonce' ) ) { + if ( current_user_can( 'manage_network_options' ) ) { + wpvulnerability_reset_plugin_data(); + set_transient( 'wpvulnerability_message_manual_success', __( 'WPVulnerability has been reset to defaults and reloaded.', 'wpvulnerability' ), 10 ); + } else { + set_transient( 'wpvulnerability_message_manual_error', __( 'You do not have permission to reset WPVulnerability.', 'wpvulnerability' ), 10 ); + } + } + + /** + * Handles debug action: Clear all caches. + * + * @since 4.3.0 + */ + if ( isset( $_POST['wpvulnerability_debug_clear_caches'] ) && check_admin_referer( 'wpvulnerability_debug_action', 'wpvulnerability_debug_nonce' ) ) { + if ( current_user_can( 'manage_network_options' ) ) { + if ( ! function_exists( 'wpvulnerability_debug_clear_all_caches' ) ) { + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-debug.php'; + } + wpvulnerability_debug_clear_all_caches(); + set_transient( 'wpvulnerability_message_manual_success', __( 'All caches have been cleared.', 'wpvulnerability' ), 10 ); + } else { + set_transient( 'wpvulnerability_message_manual_error', __( 'You do not have permission to clear caches.', 'wpvulnerability' ), 10 ); + } + } + + /** + * Handles debug action: Reset signatures. + * + * @since 4.3.0 + */ + if ( isset( $_POST['wpvulnerability_debug_reset_signatures'] ) && check_admin_referer( 'wpvulnerability_debug_action', 'wpvulnerability_debug_nonce' ) ) { + if ( current_user_can( 'manage_network_options' ) ) { + if ( ! function_exists( 'wpvulnerability_debug_reset_signatures' ) ) { + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-debug.php'; + } + wpvulnerability_debug_reset_signatures(); + set_transient( 'wpvulnerability_message_manual_success', __( 'Plugin and theme signatures have been reset.', 'wpvulnerability' ), 10 ); + } else { + set_transient( 'wpvulnerability_message_manual_error', __( 'You do not have permission to reset signatures.', 'wpvulnerability' ), 10 ); + } + } + + /** + * Handles debug action: Export debug info. + * + * @since 4.3.0 + */ + if ( isset( $_POST['wpvulnerability_debug_export'] ) && check_admin_referer( 'wpvulnerability_debug_action', 'wpvulnerability_debug_nonce' ) ) { + if ( current_user_can( 'manage_network_options' ) ) { + if ( ! function_exists( 'wpvulnerability_debug_export_info' ) ) { + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-debug.php'; + } + $wpvulnerability_debug_info = wpvulnerability_debug_export_info(); + $wpvulnerability_filename = 'wpvulnerability-debug-' . gmdate( 'Y-m-d-His' ) . '.json'; + + header( 'Content-Type: application/json' ); + header( 'Content-Disposition: attachment; filename="' . $wpvulnerability_filename . '"' ); + header( 'Content-Length: ' . strlen( $wpvulnerability_debug_info ) ); + echo $wpvulnerability_debug_info; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped + exit; + } else { + set_transient( 'wpvulnerability_message_manual_error', __( 'You do not have permission to export debug information.', 'wpvulnerability' ), 10 ); + } + } + + /** + * Handles debug action: Run update database now. + * + * @since 4.3.0 + */ + if ( isset( $_POST['wpvulnerability_run_update'] ) && check_admin_referer( 'wpvulnerability_cron_action', 'wpvulnerability_cron_nonce' ) ) { + if ( current_user_can( 'manage_network_options' ) ) { + wpvulnerability_update_database_data(); + set_transient( 'wpvulnerability_message_manual_success', __( 'Database update has been executed.', 'wpvulnerability' ), 10 ); + } else { + set_transient( 'wpvulnerability_message_manual_error', __( 'You do not have permission to run database updates.', 'wpvulnerability' ), 10 ); + } + } + + /** + * Handles debug action: Run notification now. + * + * @since 4.3.0 + */ + if ( isset( $_POST['wpvulnerability_run_notification'] ) && check_admin_referer( 'wpvulnerability_cron_action', 'wpvulnerability_cron_nonce' ) ) { + if ( current_user_can( 'manage_network_options' ) ) { + if ( ! function_exists( 'wpvulnerability_execute_notification' ) ) { + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-core.php'; + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-plugins.php'; + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-themes.php'; + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-software.php'; + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-process.php'; + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-notifications.php'; + } + $wpvulnerability_result = wpvulnerability_execute_notification( true ); + if ( $wpvulnerability_result ) { + set_transient( 'wpvulnerability_message_manual_success', __( 'Notification has been sent.', 'wpvulnerability' ), 10 ); + } else { + set_transient( 'wpvulnerability_message_manual_error', __( 'Notification sending failed.', 'wpvulnerability' ), 10 ); + } + } else { + set_transient( 'wpvulnerability_message_manual_error', __( 'You do not have permission to send notifications.', 'wpvulnerability' ), 10 ); + } + } +} +add_action( 'admin_init', 'wpvulnerability_process_network_action_forms' ); + +/** + * Create the WP-Admin options page + * This function generates the HTML output for the WPVulnerability settings page in the WP-Admin. + * + * @since 2.0.0 + * + * @return void + */ +function wpvulnerability_create_admin_page() { + + if ( ! current_user_can( 'manage_network_options' ) ) { + wp_die( esc_html__( 'You do not have sufficient permissions to access this page.', 'wpvulnerability' ) ); + } + + ?> +
+
+
+ +
+
+
+

' . esc_html( is_scalar( $wpvulnerability_message_manual_success ) ? (string) $wpvulnerability_message_manual_success : '' ) . '

'; + delete_transient( 'wpvulnerability_message_manual_success' ); + unset( $wpvulnerability_message_manual_success ); + } + $wpvulnerability_message_manual_error = get_transient( 'wpvulnerability_message_manual_error' ); + if ( $wpvulnerability_message_manual_error ) { + echo '

' . esc_html( is_scalar( $wpvulnerability_message_manual_error ) ? (string) $wpvulnerability_message_manual_error : '' ) . '

'; + delete_transient( 'wpvulnerability_message_manual_error' ); + unset( $wpvulnerability_message_manual_error ); + } + ?> + + + +
+
+ +
+ +
+
+
+ > An associative array of tab slugs and their labels. + */ +function wpvulnerability_get_network_admin_tabs() { + $tabs = array( + 'notifications' => array( + 'label' => __( 'Notifications', 'wpvulnerability' ), + ), + 'analysis' => array( + 'label' => __( 'Analysis', 'wpvulnerability' ), + ), + 'logs' => array( + 'label' => __( 'Logs', 'wpvulnerability' ), + ), + 'security' => array( + 'label' => __( 'Security', 'wpvulnerability' ), + ), + 'tools' => array( + 'label' => __( 'Tools', 'wpvulnerability' ), + ), + ); + + // Add Debug tab only if WP_DEBUG is enabled. + if ( defined( 'WP_DEBUG' ) && WP_DEBUG ) { + $tabs['debug'] = array( + 'label' => __( 'Debug', 'wpvulnerability' ), + ); + } + + $tabs['about'] = array( + 'label' => __( 'About', 'wpvulnerability' ), + ); + + return $tabs; +} + +/** + * Determines the active multisite admin tab. + * + * @since 4.1.2 + * + * @param array> $tabs Registered multisite admin tabs. + * + * @return string The active tab slug. + */ +function wpvulnerability_get_current_network_admin_tab( $tabs ) { + $tab_keys = array_keys( $tabs ); + $default = reset( $tab_keys ); + $tab_filter = filter_input( INPUT_GET, 'tab', FILTER_SANITIZE_SPECIAL_CHARS ); + + if ( $tab_filter ) { + $tab_filter = sanitize_key( $tab_filter ); + } + + if ( $tab_filter && isset( $tabs[ $tab_filter ] ) ) { + return $tab_filter; + } + + return $default ? $default : 'notifications'; +} + +/** + * Renders the requested multisite admin tab content. + * + * @since 4.1.2 + * + * @param string $tab Tab slug to render. + * + * @return void + */ +function wpvulnerability_render_network_admin_tab( $tab ) { + switch ( $tab ) { + case 'analysis': + wpvulnerability_render_network_admin_tab_analysis(); + break; + case 'logs': + wpvulnerability_render_network_admin_tab_logs(); + break; + case 'security': + wpvulnerability_render_network_admin_tab_security(); + break; + case 'tools': + wpvulnerability_render_network_admin_tab_tools(); + break; + case 'debug': + if ( defined( 'WP_DEBUG' ) && WP_DEBUG ) { + wpvulnerability_render_network_admin_tab_debug(); + } + break; + case 'about': + wpvulnerability_render_network_admin_tab_about(); + break; + case 'notifications': + default: + wpvulnerability_render_network_admin_tab_notifications(); + break; + } +} + +/** + * Outputs the Notifications tab contents for the multisite settings screen. + * + * @since 4.1.2 + * + * @return void + */ +function wpvulnerability_render_network_admin_tab_notifications() { + $wpvulnerability_settings = get_site_option( 'wpvulnerability-config', array() ); + if ( ! is_array( $wpvulnerability_settings ) ) { + $wpvulnerability_settings = array(); + } + $defaults = array( + 'cache' => 12, + 'period' => 'weekly', + 'day' => 'monday', + 'hour' => 0, + 'minute' => 0, + 'emails' => '', + 'slack_webhook' => '', + 'teams_webhook' => '', + 'discord_webhook' => '', + 'telegram_bot_token' => '', + 'telegram_chat_id' => '', + 'notify' => array( + 'email' => 'y', + 'slack' => 'n', + 'teams' => 'n', + 'discord' => 'n', + 'telegram' => 'n', + ), + ); + $wpvulnerability_settings = wp_parse_args( $wpvulnerability_settings, $defaults ); + + // Normalize notify settings. + if ( ! is_array( $wpvulnerability_settings['notify'] ) ) { + $wpvulnerability_settings['notify'] = $defaults['notify']; + } else { + $wpvulnerability_settings['notify'] = wp_parse_args( $wpvulnerability_settings['notify'], $defaults['notify'] ); + } + $wpvulnerability_settings['notify'] = wpvulnerability_normalize_notify_settings( $wpvulnerability_settings['notify'] ); + + $email_enabled = wpvulnerability_is_yes( $wpvulnerability_settings['notify']['email'] ); + $slack_enabled = wpvulnerability_is_yes( $wpvulnerability_settings['notify']['slack'] ); + $teams_enabled = wpvulnerability_is_yes( $wpvulnerability_settings['notify']['teams'] ); + $discord_enabled = wpvulnerability_is_yes( $wpvulnerability_settings['notify']['discord'] ); + $telegram_enabled = wpvulnerability_is_yes( $wpvulnerability_settings['notify']['telegram'] ); + + // Check if cache is forced. + $forced_cache = null; + $cache_options = array( 1, 6, 12, 24 ); + if ( defined( 'WPVULNERABILITY_CACHE_HOURS' ) ) { + $forced_cache = (int) WPVULNERABILITY_CACHE_HOURS; + if ( ! in_array( $forced_cache, $cache_options, true ) ) { + $cache_options[] = $forced_cache; + sort( $cache_options, SORT_NUMERIC ); + } + } + $current_cache = null !== $forced_cache ? $forced_cache : (int) $wpvulnerability_settings['cache']; + + $admin_email = get_site_option( 'admin_email' ); + ?> +
+ +
+ + +
+

+ +
+

+

+
+ + +
+
+ ⏱️ + + + + +
+
+ +
+ + + + +
+

+ Learn more →', 'wpvulnerability' ) ), + esc_url( 'https://www.wpvulnerability.com/plugin/#cache-duration' ) + ); + ?> +

+
+
+ + +
+
+ 📅 + +
+
+ +
+
+ + + +
+ +
+
+ + +
+
+ + + : + + +
+
+
+ + +
+
+ 📢 + +
+
+ +
+
+ +
+ + + +
+ + +
+ + + + Learn how to create a Slack incoming webhook →', 'wpvulnerability' ) ), + esc_url( 'https://docs.slack.dev/messaging/sending-messages-using-incoming-webhooks/' ) + ); + ?> + +
+ + +
+ + + + Learn how to create a Teams incoming webhook →', 'wpvulnerability' ) ), + esc_url( 'https://learn.microsoft.com/microsoftteams/platform/webhooks-and-connectors/how-to/add-incoming-webhook' ) + ); + ?> + +
+ + +
+ + + + Learn how to create a Discord webhook →', 'wpvulnerability' ) ), + esc_url( 'https://support.discord.com/hc/articles/228383668' ) + ); + ?> + +
+ + +
+ + + + + + + + Learn how to create a Telegram bot and get Chat ID →', 'wpvulnerability' ) ), + esc_url( 'https://core.telegram.org/bots' ) + ); + ?> + +
+
+
+ +
+ +
+
+
+ + +
+ array( + 'label' => __( 'WordPress Components', 'wpvulnerability' ), + 'items' => array( + 'core' => array( + 'label' => __( 'WordPress Core', 'wpvulnerability' ), + 'icon' => '🌐', + ), + 'plugins' => array( + 'label' => __( 'Plugins', 'wpvulnerability' ), + 'icon' => '🧩', + ), + 'themes' => array( + 'label' => __( 'Themes', 'wpvulnerability' ), + 'icon' => '🎨', + ), + ), + ), + 'software' => array( + 'label' => __( 'Software & Languages', 'wpvulnerability' ), + 'items' => array( + 'php' => array( + 'label' => __( 'PHP', 'wpvulnerability' ), + 'icon' => '🐘', + ), + ), + ), + 'webservers' => array( + 'label' => __( 'Web Servers', 'wpvulnerability' ), + 'items' => array( + 'apache' => array( + 'label' => __( 'Apache HTTPD', 'wpvulnerability' ), + 'icon' => '🪶', + ), + 'nginx' => array( + 'label' => __( 'nginx', 'wpvulnerability' ), + 'icon' => '🟩', + ), + ), + ), + 'databases' => array( + 'label' => __( 'Databases', 'wpvulnerability' ), + 'items' => array( + 'mariadb' => array( + 'label' => __( 'MariaDB', 'wpvulnerability' ), + 'icon' => '🐬', + ), + 'mysql' => array( + 'label' => __( 'MySQL', 'wpvulnerability' ), + 'icon' => '🐬', + ), + 'sqlite' => array( + 'label' => __( 'SQLite', 'wpvulnerability' ), + 'icon' => '💾', + ), + ), + ), + 'tools' => array( + 'label' => __( 'Additional Tools', 'wpvulnerability' ), + 'items' => array( + 'imagemagick' => array( + 'label' => __( 'ImageMagick', 'wpvulnerability' ), + 'icon' => '🖼️', + ), + 'curl' => array( + 'label' => __( 'curl', 'wpvulnerability' ), + 'icon' => '🌐', + ), + 'memcached' => array( + 'label' => __( 'memcached', 'wpvulnerability' ), + 'icon' => '⚡', + ), + 'redis' => array( + 'label' => __( 'Redis', 'wpvulnerability' ), + 'icon' => '🔴', + ), + ), + ), + ); + ?> +
+ +
+ + +
+

+ +
+

+

+
+ + $category_data ) : ?> +
+
+
+ $component_data ) : ?> + +
+ +
+ +
+
+ + +
+

+ + Learn more about force-hiding checks →', 'wpvulnerability' ) ), + esc_url( 'https://www.wpvulnerability.com/plugin/#force-hiding-checks' ) + ); + ?> +

+
+ +
+ +
+
+
+
+ $total_pages ) { + $current_page = $total_pages; + } + $logs = wpvulnerability_get_api_logs( $logs_per_page, $current_page ); + $logs_page_url = add_query_arg( + array( + 'page' => 'wpvulnerability-options', + 'tab' => 'logs', + 'logs_per_page' => $logs_per_page, + 'log_page' => $current_page, + ), + network_admin_url( 'settings.php' ) + ); + $requested_log = isset( $_GET['log'] ) ? absint( (int) wp_unslash( is_string( $_GET['log'] ) ? $_GET['log'] : '' ) ) : 0; // phpcs:ignore WordPress.Security.NonceVerification.Recommended + $view_log = null; + $log_error = ''; + $pagination = ''; + + if ( $total_pages > 1 ) { + $pagination_base = remove_query_arg( + array( 'log', 'log_page' ), + $logs_page_url + ); + $pagination = paginate_links( + array( + 'base' => add_query_arg( 'log_page', '%#%', $pagination_base ), + 'format' => '', + 'current' => $current_page, + 'total' => $total_pages, + 'prev_text' => __( '« Previous', 'wpvulnerability' ), + 'next_text' => __( 'Next »', 'wpvulnerability' ), + 'type' => 'list', + ) + ); + } + + if ( $requested_log > 0 ) { + $nonce = isset( $_GET['_wpnonce'] ) ? sanitize_text_field( wp_unslash( is_string( $_GET['_wpnonce'] ) ? $_GET['_wpnonce'] : '' ) ) : ''; // phpcs:ignore WordPress.Security.NonceVerification.Recommended + if ( $nonce && wp_verify_nonce( $nonce, 'wpvulnerability_view_log_' . $requested_log ) ) { + $view_log = wpvulnerability_get_api_log( $requested_log ); + if ( ! $view_log ) { + $log_error = __( 'Log entry not found or has been removed.', 'wpvulnerability' ); + } + } else { + $log_error = __( 'Unable to load the requested log entry.', 'wpvulnerability' ); + } + } + + ?> +
+ + + +
+

+ + +
+
+
+
+
+
+
+
+ +
+
+
+ + +
+ + + + ', + esc_attr( (string) $forced ) + ); + printf( + '

%s

', + esc_html__( 'This value is enforced by the WPVULNERABILITY_LOG_RETENTION_DAYS constant.', 'wpvulnerability' ) + ); + } else { + printf( + '

%s

', + esc_html__( 'Choose how long WPVulnerability should keep API response logs. Older logs are automatically deleted.', 'wpvulnerability' ) + ); + } + ?> + +
+ + +
+

+
+ +
+ + +

+ + + + + +
+

+ +
+
+
+
+
+
+
+
+
+
+ +

+
post_content ) ); ?>
+ +

+ + ← + +

+
+ + + +
+
📋
+

+

+
+ +
+

+ + +
+
+
+ + + + + + 'margin: 0; padding: 4px 12px; height: auto;' ) ); ?> +
+
+
+ + + +
+
+ + + + + + + + + + + + + + + + + + + +
+ + + + + 'wpvulnerability-options', + 'tab' => 'logs', + 'log' => $log->ID, + 'logs_per_page' => $logs_per_page, + 'log_page' => $current_page, + ), + network_admin_url( 'settings.php' ) + ); + $view_url = wp_nonce_url( $view_url, 'wpvulnerability_view_log_' . $log->ID ); + ?> + + + +
+ + + +
+ +
+ + + +
+

+

+ +

+
+ + + +
+
+
+ + +
+ 'wpvulnerability-options', + 'tab' => 'tools', + ), + network_admin_url( 'settings.php' ) + ); + + $wpvulnerability_cron_config = is_multisite() ? get_site_option( 'wpvulnerability-config', array() ) : get_option( 'wpvulnerability-config', array() ); + if ( ! is_array( $wpvulnerability_cron_config ) ) { + $wpvulnerability_cron_config = array(); + } + $is_main_site = ( ! is_multisite() || is_main_site() ); + $cron_status = wpvulnerability_get_cron_status( $wpvulnerability_cron_config, $is_main_site ); + $cron_schedules = function_exists( 'wp_get_schedules' ) ? wp_get_schedules() : array(); + $_df = get_option( 'date_format' ); + $_tf = get_option( 'time_format' ); + $date_format = ( is_scalar( $_df ) ? (string) $_df : '' ) . ' ' . ( is_scalar( $_tf ) ? (string) $_tf : '' ); + ?> +
+ + +
+

+ 🔄 + +

+

+ +

+
+
+ + +
+
+
+ + +
+

+ 📧 + +

+

+ +

+ +
+

+ + +

+
+ +
+

+ + +

+
+ +

+ + + +

+
+
+ + +
+
+
+ + +
+

+ + +

+

+ +

+ + +
+

+
+ + + + + + + + + + + + + + 0 ? implode( ', ', $found_schedules ) : __( 'None', 'wpvulnerability' ); + $next_run = ( $row_next_run_raw && is_numeric( $row_next_run_raw ) ) ? date_i18n( $date_format, (int) $row_next_run_raw ) : '—'; + $row_messages = isset( $row['messages'] ) && is_array( $row['messages'] ) ? $row['messages'] : array(); + $status_text = implode( + ' ', + array_map( + static function ( $m ) { + return is_scalar( $m ) ? (string) $m : ''; + }, + $row_messages + ) + ); + + // Determine status badge class. + $status_class = 'success'; + if ( strpos( $status_text, 'Missing' ) !== false || strpos( $status_text, 'Duplicate' ) !== false ) { + $status_class = 'error'; + } elseif ( strpos( $status_text, 'legacy' ) !== false ) { + $status_class = 'warning'; + } + ?> + + + + + + + + + +
+
+ +
+ + + + + + + +
+ + +
+

+
    + + +
  • + + – + – +
  • + +
+
+ + +
+
+ + +
+
+ +
+ + +
+

+

+ +

+
+ + + +

+ +

+ +
+
+ + +
+
+

⚠️

+

+ +
+ +

+
+ + +
+
+
+
+ +
+ + +
+

+ + __( 'Plugins', 'wpvulnerability' ), + 'themes' => __( 'Themes', 'wpvulnerability' ), + 'php' => __( 'PHP', 'wpvulnerability' ), + 'apache' => __( 'Apache HTTPD', 'wpvulnerability' ), + 'nginx' => __( 'nginx', 'wpvulnerability' ), + 'mariadb' => __( 'MariaDB', 'wpvulnerability' ), + 'mysql' => __( 'MySQL', 'wpvulnerability' ), + 'imagemagick' => __( 'ImageMagick', 'wpvulnerability' ), + 'curl' => __( 'curl', 'wpvulnerability' ), + 'memcached' => __( 'memcached', 'wpvulnerability' ), + 'redis' => __( 'Redis', 'wpvulnerability' ), + 'sqlite' => __( 'SQLite', 'wpvulnerability' ), + ); + ?> + +
+ $label ) : ?> + +
+
+ + +
+ +
+
+ + + +
+ + +
+ +
+ +
+ +
+ + +
+

+ ' . esc_html( $formatted_datetime ) . '' ); + restore_previous_locale(); + ?> +

+
+ +
+ + + 'CVE', + 'euvd' => 'EUVD', + 'jvn' => 'JVN', + 'patchstack' => 'Patchstack', + 'wpscan' => 'WPScan', + 'wordfence' => 'Wordfence', + ); + if ( ! empty( $sources_stat ) ) : + ?> +
+

+

+ + + + + + + + + + + $src_label ) : ?> + + + + + + + + + + +
+
+ + + +
+

+ + + +
+ + +
+ <?php echo esc_attr( isset( $sponsor['name'] ) && is_scalar( $sponsor['name'] ) ? (string) $sponsor['name'] : '' ); ?> + + + +
+ +
+ +
+
💎
+

+
+ +
+ + +
+

+ + + +
+ + +
+ <?php echo esc_attr( isset( $contributor['name'] ) && is_scalar( $contributor['name'] ) ? (string) $contributor['name'] : '' ); ?> + + + +
+ +
+ +
+
👥
+

+
+ +
+
+ + +
: + '; + foreach ( $options as $hours ) { + printf( + '', + esc_attr( (string) $hours ), + selected( $current, $hours, false ), + esc_html( + sprintf( + /* translators: %d: number of hours */ + _n( '%d hour', '%d hours', $hours, 'wpvulnerability' ), + $hours + ) + ) + ); + } + echo ''; + + if ( null !== $forced_cache ) { + printf( + '', + esc_attr( (string) $current ) + ); + } + + printf( + '

%2$s

', + esc_url( 'https://www.wpvulnerability.com/plugin/#cache-duration' ), + esc_html__( 'Read more if you want to force the cache time.', 'wpvulnerability' ) + ); +} + + +/** + * Print the settings header information for the analyze section. + * + * @since 3.3.0 + * + * @return void + */ +function wpvulnerability_admin_section_analyze() { + // Output the header information for the analyze section. + esc_html_e( 'Configure and save these settings to hide vulnerabilities.', 'wpvulnerability' ); +} + +/** + * Print when to send the vulnerability scan emails. + * + * @since 2.0.0 + * + * @return void + */ +function wpvulnerability_admin_period_callback() { + // Get the saved plugin settings. + $wpvulnerability_settings = get_site_option( 'wpvulnerability-config', array() ); + if ( ! is_array( $wpvulnerability_settings ) ) { + $wpvulnerability_settings = array(); + } + $defaults = array( + 'period' => 'weekly', + 'day' => 'monday', + 'hour' => 0, + 'minute' => 0, + ); + $wpvulnerability_settings = wp_parse_args( $wpvulnerability_settings, $defaults ); + + ?> +
+ +
+ +
+ +
+
+ + +
+
+
+ + + + +
+
+ 'y', + 'slack' => 'n', + 'teams' => 'n', + ); + + if ( ! isset( $wpvulnerability_settings['notify'] ) || ! is_array( $wpvulnerability_settings['notify'] ) ) { + $wpvulnerability_settings['notify'] = $defaults; + } else { + $wpvulnerability_settings['notify'] = wp_parse_args( $wpvulnerability_settings['notify'], $defaults ); + } + + $wpvulnerability_settings['notify'] = wpvulnerability_normalize_notify_settings( $wpvulnerability_settings['notify'] ); + + $email_enabled = wpvulnerability_is_yes( $wpvulnerability_settings['notify']['email'] ); + $slack_enabled = wpvulnerability_is_yes( $wpvulnerability_settings['notify']['slack'] ); + $teams_enabled = wpvulnerability_is_yes( $wpvulnerability_settings['notify']['teams'] ); + + ?> +
+ +
+ +
+ +
+ + + + + +
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+ +

+
+ 0 ) { + if ( ( wpvulnerability_analyze_filter( 'core' ) && $core_count > 0 ) || + ( wpvulnerability_analyze_filter( 'php' ) && $php_count > 0 ) || + $total_vulnerabilities > 5 ) { + $status_class = 'wpvuln-status-critical'; + $status_icon = '✕'; + /* translators: %d: number of vulnerabilities */ + $status_text = sprintf( _n( '%d Critical Issue Found', '%d Critical Issues Found', $total_vulnerabilities, 'wpvulnerability' ), $total_vulnerabilities ); + } else { + $status_class = 'wpvuln-status-warning'; + $status_icon = '⚠'; + /* translators: %d: number of vulnerabilities */ + $status_text = sprintf( _n( '%d Issue Found', '%d Issues Found', $total_vulnerabilities, 'wpvulnerability' ), $total_vulnerabilities ); + } + } + + // Get last check time. + $raw_core_cache = get_site_option( 'wpvulnerability-core-cache', '' ); + $core_cache = json_decode( is_string( $raw_core_cache ) ? $raw_core_cache : '', true ); + $last_check_text = __( 'Never checked', 'wpvulnerability' ); + if ( $core_cache && is_numeric( $core_cache ) ) { + $cache_hours = wpvulnerability_cache_hours(); + $last_check_time = $core_cache - ( $cache_hours * 3600 ); + $time_diff = time() - $last_check_time; + if ( $time_diff < 3600 ) { + $minutes_ago = (int) floor( $time_diff / 60 ); + /* translators: %d: number of minutes */ + $last_check_text = sprintf( _n( '%d minute ago', '%d minutes ago', $minutes_ago, 'wpvulnerability' ), $minutes_ago ); + } else { + $hours_ago = (int) floor( $time_diff / 3600 ); + /* translators: %d: number of hours */ + $last_check_text = sprintf( _n( '%d hour ago', '%d hours ago', $hours_ago, 'wpvulnerability' ), $hours_ago ); + } + } + + // Status badge. + echo '
'; + echo esc_html( $status_text ); + echo '
'; + + // Meta information. + echo '
'; + /* translators: %s: time since last check */ + echo esc_html( sprintf( __( 'Last checked: %s', 'wpvulnerability' ), $last_check_text ) ); + echo ' | ↻ ' . esc_html( __( 'Refresh Now', 'wpvulnerability' ) ) . ''; + echo '
'; + + // If no vulnerabilities, show empty state. + if ( 0 === $total_vulnerabilities ) { + echo '
'; + echo '
'; + echo '
' . esc_html( __( 'No vulnerabilities detected', 'wpvulnerability' ) ) . '
'; + echo '
' . esc_html( __( 'Your site is up to date and secure', 'wpvulnerability' ) ) . '
'; + echo '
'; + } else { + // WordPress Components section. + echo '
' . esc_html( __( 'WordPress Components', 'wpvulnerability' ) ) . '
'; + + // Core. + if ( wpvulnerability_analyze_filter( 'core' ) ) { + $badge_class = $core_count > 0 ? 'wpvuln-badge-critical' : 'wpvuln-badge-secure'; + $badge_icon = $core_count > 0 ? '✕' : '✓'; + echo '
'; + echo ''; + echo '' . esc_html( __( 'WordPress Core', 'wpvulnerability' ) ) . ''; + echo '' . esc_html( $badge_icon ) . ' ' . esc_html( (string) $core_count ) . ''; + echo '
'; + } + + // Plugins. + if ( wpvulnerability_analyze_filter( 'plugins' ) ) { + $badge_class = $plugins_count > 0 ? 'wpvuln-badge-critical' : 'wpvuln-badge-secure'; + $badge_icon = $plugins_count > 0 ? '✕' : '✓'; + echo '
'; + echo ''; + echo '' . esc_html( __( 'Plugins', 'wpvulnerability' ) ) . ''; + echo '' . esc_html( $badge_icon ) . ' ' . esc_html( (string) $plugins_count ) . ''; + echo '
'; + if ( $plugins_count > 0 ) { + echo '
'; + echo wpvulnerability_list_plugins(); // phpcs:ignore + echo '
'; + } + } + + // Themes. + if ( wpvulnerability_analyze_filter( 'themes' ) ) { + $badge_class = $themes_count > 0 ? 'wpvuln-badge-critical' : 'wpvuln-badge-secure'; + $badge_icon = $themes_count > 0 ? '✕' : '✓'; + echo '
'; + echo ''; + echo '' . esc_html( __( 'Themes', 'wpvulnerability' ) ) . ''; + echo '' . esc_html( $badge_icon ) . ' ' . esc_html( (string) $themes_count ) . ''; + echo '
'; + if ( $themes_count > 0 ) { + echo '
'; + echo wpvulnerability_list_themes(); // phpcs:ignore + echo '
'; + } + } + + // Server Software section. + $php_version = wpvulnerability_detect_php(); + $webserver = wpvulnerability_detect_webserver(); + $sqlserver = wpvulnerability_detect_sqlserver(); + $show_server_section = false; + + // Check if any server software is detected. + if ( ( wpvulnerability_analyze_filter( 'php' ) && $php_version ) || + ( isset( $webserver['id'] ) && isset( $webserver['version'] ) ) || + ( isset( $sqlserver['id'] ) && isset( $sqlserver['version'] ) ) || + wpvulnerability_get_software_version( 'imagemagick' ) || + wpvulnerability_get_software_version( 'curl' ) || + wpvulnerability_get_software_version( 'memcached' ) || + wpvulnerability_get_software_version( 'redis' ) || + wpvulnerability_get_software_version( 'sqlite' ) ) { + $show_server_section = true; + } + + if ( $show_server_section ) { + echo '
' . esc_html( __( 'Server Software', 'wpvulnerability' ) ) . '
'; + echo '
'; + + // PHP. + if ( wpvulnerability_analyze_filter( 'php' ) && $php_version ) { + $badge_class = $php_count > 0 ? 'wpvuln-badge-critical' : 'wpvuln-badge-secure'; + $badge_icon = $php_count > 0 ? '✕' : '✓'; + echo '
'; + echo ''; + echo 'PHP ' . esc_html( $php_version ) . ''; + echo '' . esc_html( $badge_icon ) . ' ' . esc_html( (string) $php_count ) . ''; + echo wp_kses( + wpvulnerability_eol_badge_html( 'php' ), + array( + 'span' => array( + 'class' => array(), + 'title' => array(), + ), + ) + ); + echo '
'; + } + + // Web server (Apache/nginx). + if ( isset( $webserver['id'] ) && isset( $webserver['version'] ) ) { + if ( 'apache' === $webserver['id'] && wpvulnerability_analyze_filter( 'apache' ) ) { + $badge_class = $apache_count > 0 ? 'wpvuln-badge-warning' : 'wpvuln-badge-secure'; + $badge_icon = $apache_count > 0 ? '✕' : '✓'; + echo '
'; + echo ''; + echo 'Apache ' . esc_html( $webserver['version'] ) . ''; + echo '' . esc_html( $badge_icon ) . ' ' . esc_html( (string) $apache_count ) . ''; + echo wp_kses( + wpvulnerability_eol_badge_html( 'apache' ), + array( + 'span' => array( + 'class' => array(), + 'title' => array(), + ), + ) + ); + echo '
'; + } elseif ( 'nginx' === $webserver['id'] && wpvulnerability_analyze_filter( 'nginx' ) ) { + $badge_class = $nginx_count > 0 ? 'wpvuln-badge-warning' : 'wpvuln-badge-secure'; + $badge_icon = $nginx_count > 0 ? '✕' : '✓'; + echo '
'; + echo ''; + echo 'nginx ' . esc_html( $webserver['version'] ) . ''; + echo '' . esc_html( $badge_icon ) . ' ' . esc_html( (string) $nginx_count ) . ''; + echo wp_kses( + wpvulnerability_eol_badge_html( 'nginx' ), + array( + 'span' => array( + 'class' => array(), + 'title' => array(), + ), + ) + ); + echo '
'; + } + } + + // Database (MariaDB/MySQL). + if ( isset( $sqlserver['id'] ) && isset( $sqlserver['version'] ) ) { + if ( 'mariadb' === $sqlserver['id'] && wpvulnerability_analyze_filter( 'mariadb' ) ) { + $badge_class = $mariadb_count > 0 ? 'wpvuln-badge-warning' : 'wpvuln-badge-secure'; + $badge_icon = $mariadb_count > 0 ? '✕' : '✓'; + echo '
'; + echo ''; + echo 'MariaDB ' . esc_html( $sqlserver['version'] ) . ''; + echo '' . esc_html( $badge_icon ) . ' ' . esc_html( (string) $mariadb_count ) . ''; + echo wp_kses( + wpvulnerability_eol_badge_html( 'mariadb' ), + array( + 'span' => array( + 'class' => array(), + 'title' => array(), + ), + ) + ); + echo '
'; + } elseif ( 'mysql' === $sqlserver['id'] && wpvulnerability_analyze_filter( 'mysql' ) ) { + $badge_class = $mysql_count > 0 ? 'wpvuln-badge-warning' : 'wpvuln-badge-secure'; + $badge_icon = $mysql_count > 0 ? '✕' : '✓'; + echo '
'; + echo ''; + echo 'MySQL ' . esc_html( $sqlserver['version'] ) . ''; + echo '' . esc_html( $badge_icon ) . ' ' . esc_html( (string) $mysql_count ) . ''; + echo wp_kses( + wpvulnerability_eol_badge_html( 'mysql' ), + array( + 'span' => array( + 'class' => array(), + 'title' => array(), + ), + ) + ); + echo '
'; + } + } + + // ImageMagick. + $imagemagick_version = wpvulnerability_get_software_version( 'imagemagick' ); + if ( $imagemagick_version && wpvulnerability_analyze_filter( 'imagemagick' ) ) { + $badge_class = $imagemagick_count > 0 ? 'wpvuln-badge-warning' : 'wpvuln-badge-secure'; + $badge_icon = $imagemagick_count > 0 ? '✕' : '✓'; + echo '
'; + echo ''; + echo 'ImageMagick ' . esc_html( $imagemagick_version ) . ''; + echo '' . esc_html( $badge_icon ) . ' ' . esc_html( (string) $imagemagick_count ) . ''; + echo wp_kses( + wpvulnerability_eol_badge_html( 'imagemagick' ), + array( + 'span' => array( + 'class' => array(), + 'title' => array(), + ), + ) + ); + echo '
'; + } + + // curl. + $curl_version = wpvulnerability_get_software_version( 'curl' ); + if ( $curl_version && wpvulnerability_analyze_filter( 'curl' ) ) { + $badge_class = $curl_count > 0 ? 'wpvuln-badge-warning' : 'wpvuln-badge-secure'; + $badge_icon = $curl_count > 0 ? '✕' : '✓'; + echo '
'; + echo ''; + echo 'curl ' . esc_html( $curl_version ) . ''; + echo '' . esc_html( $badge_icon ) . ' ' . esc_html( (string) $curl_count ) . ''; + echo wp_kses( + wpvulnerability_eol_badge_html( 'curl' ), + array( + 'span' => array( + 'class' => array(), + 'title' => array(), + ), + ) + ); + echo '
'; + } + + // memcached. + $memcached_version = wpvulnerability_get_software_version( 'memcached' ); + if ( $memcached_version && wpvulnerability_analyze_filter( 'memcached' ) ) { + $badge_class = $memcached_count > 0 ? 'wpvuln-badge-warning' : 'wpvuln-badge-secure'; + $badge_icon = $memcached_count > 0 ? '✕' : '✓'; + echo '
'; + echo ''; + echo 'memcached ' . esc_html( $memcached_version ) . ''; + echo '' . esc_html( $badge_icon ) . ' ' . esc_html( (string) $memcached_count ) . ''; + echo wp_kses( + wpvulnerability_eol_badge_html( 'memcached' ), + array( + 'span' => array( + 'class' => array(), + 'title' => array(), + ), + ) + ); + echo '
'; + } + + // Redis. + $redis_version = wpvulnerability_get_software_version( 'redis' ); + if ( $redis_version && wpvulnerability_analyze_filter( 'redis' ) ) { + $badge_class = $redis_count > 0 ? 'wpvuln-badge-warning' : 'wpvuln-badge-secure'; + $badge_icon = $redis_count > 0 ? '✕' : '✓'; + echo '
'; + echo ''; + echo 'Redis ' . esc_html( $redis_version ) . ''; + echo '' . esc_html( $badge_icon ) . ' ' . esc_html( (string) $redis_count ) . ''; + echo wp_kses( + wpvulnerability_eol_badge_html( 'redis' ), + array( + 'span' => array( + 'class' => array(), + 'title' => array(), + ), + ) + ); + echo '
'; + } + + // SQLite. + $sqlite_version = wpvulnerability_get_software_version( 'sqlite' ); + if ( $sqlite_version && wpvulnerability_analyze_filter( 'sqlite' ) ) { + $badge_class = $sqlite_count > 0 ? 'wpvuln-badge-warning' : 'wpvuln-badge-secure'; + $badge_icon = $sqlite_count > 0 ? '✕' : '✓'; + echo '
'; + echo ''; + echo 'SQLite ' . esc_html( $sqlite_version ) . ''; + echo '' . esc_html( $badge_icon ) . ' ' . esc_html( (string) $sqlite_count ) . ''; + echo wp_kses( + wpvulnerability_eol_badge_html( 'sqlite' ), + array( + 'span' => array( + 'class' => array(), + 'title' => array(), + ), + ) + ); + echo '
'; + } + + echo '
'; + } + } + + // Footer links. + echo ''; +} + +/** + * Created a widget in the WordPress dashboard with vulnerability info. + * + * @since 2.2.0 + * + * @return void + */ +function wpvulnerability_admin_dashboard() { + + if ( wpvulnerability_capabilities() ) { + wp_add_dashboard_widget( + 'wpvulnerability', + __( 'WPVulnerability Status', 'wpvulnerability' ), + 'wpvulnerability_admin_dashboard_content', + null, + null, + 'side', + 'high' + ); + } +} +add_action( 'wp_network_dashboard_setup', 'wpvulnerability_admin_dashboard' ); + +/** + * Strictly sanitizes the main configuration (emails and periods). + * + * @since 2.0.0 + * + * @param array $input Input values. + * @return array Sanitized values. + */ +function wpvulnerability_sanitize_config( $input ) { + $defaults = array( + 'emails' => null, + 'period' => 'weekly', + 'day' => 'monday', + 'hour' => 0, + 'minute' => 0, + 'cache' => 12, + 'log_retention' => 0, + 'notify' => array( + 'email' => 'n', + 'slack' => 'n', + 'teams' => 'n', + ), + 'slack_webhook' => '', + 'teams_webhook' => '', + ); + + $current_values = get_site_option( 'wpvulnerability-config', array() ); + if ( ! is_array( $current_values ) ) { + $current_values = array(); + } + + $sanitized = $current_values; + + // Emails (comma-separated list). + if ( isset( $input['emails'] ) ) { + $emails_raw = explode( ',', is_scalar( $input['emails'] ) ? (string) $input['emails'] : '' ); + $sanitized_emails = array(); + + foreach ( $emails_raw as $email ) { + $email = sanitize_email( trim( (string) $email ) ); + if ( is_email( $email ) ) { + $sanitized_emails[] = $email; + } + } + + $sanitized['emails'] = count( $sanitized_emails ) ? implode( ',', $sanitized_emails ) : null; + } + + // Period (daily, weekly, never). + $allowed_periods = array( 'daily', 'weekly', 'never' ); + if ( isset( $input['period'] ) && in_array( $input['period'], $allowed_periods, true ) ) { + $sanitized['period'] = $input['period']; + } + + // Day of week for weekly schedule. + if ( isset( $input['day'] ) ) { + $day = strtolower( is_scalar( $input['day'] ) ? (string) $input['day'] : '' ); + $valid = array( 'sunday', 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday' ); + $sanitized['day'] = in_array( $day, $valid, true ) ? $day : 'monday'; + } + + // Time (hour and minute). + if ( isset( $input['hour'] ) ) { + $hour = is_scalar( $input['hour'] ) ? (int) $input['hour'] : 0; + $sanitized['hour'] = max( 0, min( 23, $hour ) ); + } + if ( isset( $input['minute'] ) ) { + $minute = is_scalar( $input['minute'] ) ? (int) $input['minute'] : 0; + $sanitized['minute'] = max( 0, min( 59, $minute ) ); + } + + // Cache expiration. + if ( isset( $input['cache'] ) ) { + $cache = is_scalar( $input['cache'] ) ? (int) $input['cache'] : 0; + $sanitized['cache'] = in_array( $cache, array( 1, 6, 12, 24 ), true ) ? $cache : 12; + } + if ( isset( $input['log_retention'] ) ) { + $retention = is_scalar( $input['log_retention'] ) ? (int) $input['log_retention'] : 0; + if ( in_array( $retention, wpvulnerability_get_log_retention_values(), true ) ) { + $sanitized['log_retention'] = $retention; + } + } + + // Notification methods. + if ( isset( $input['notify'] ) && is_array( $input['notify'] ) ) { + $notify_raw = (array) wp_unslash( $input['notify'] ); + $notify_input = array(); + foreach ( $notify_raw as $k => $v ) { + $notify_input[ (string) $k ] = sanitize_text_field( is_scalar( $v ) ? (string) $v : '' ); + } + $sanitized['notify'] = wpvulnerability_normalize_notify_settings( $notify_input ); + } + + // Webhooks. + if ( isset( $input['slack_webhook'] ) ) { + $slack_url = trim( is_scalar( $input['slack_webhook'] ) ? (string) $input['slack_webhook'] : '' ); + if ( '' !== $slack_url ) { + $validated_slack = wpvulnerability_validate_webhook_url( + $slack_url, + array( 'hooks.slack.com' ) + ); + if ( '' === $validated_slack ) { + add_settings_error( + 'wpvulnerability-config', + 'invalid-slack-webhook', + __( 'Invalid Slack webhook URL. Must be a valid HTTPS URL from hooks.slack.com', 'wpvulnerability' ), + 'error' + ); + $sanitized['slack_webhook'] = ''; + } else { + $sanitized['slack_webhook'] = $validated_slack; + } + } else { + $sanitized['slack_webhook'] = ''; + } + } + + if ( isset( $input['teams_webhook'] ) ) { + $teams_url = trim( is_scalar( $input['teams_webhook'] ) ? (string) $input['teams_webhook'] : '' ); + if ( '' !== $teams_url ) { + $validated_teams = wpvulnerability_validate_webhook_url( + $teams_url, + array( 'office.com', 'office365.com', 'api.hooks.microsoft.com' ) + ); + if ( '' === $validated_teams ) { + add_settings_error( + 'wpvulnerability-config', + 'invalid-teams-webhook', + __( 'Invalid Microsoft Teams webhook URL. Must be a valid HTTPS URL from office.com, office365.com, or api.hooks.microsoft.com', 'wpvulnerability' ), + 'error' + ); + $sanitized['teams_webhook'] = ''; + } else { + $sanitized['teams_webhook'] = $validated_teams; + } + } else { + $sanitized['teams_webhook'] = ''; + } + } + + if ( isset( $input['discord_webhook'] ) ) { + $discord_url = trim( is_scalar( $input['discord_webhook'] ) ? (string) $input['discord_webhook'] : '' ); + if ( '' !== $discord_url ) { + $validated_discord = wpvulnerability_validate_webhook_url( + $discord_url, + array( 'discord.com', 'discordapp.com' ) + ); + if ( '' === $validated_discord ) { + add_settings_error( + 'wpvulnerability-config', + 'invalid-discord-webhook', + __( 'Invalid Discord webhook URL. Must be a valid HTTPS URL from discord.com or discordapp.com', 'wpvulnerability' ), + 'error' + ); + $sanitized['discord_webhook'] = ''; + } else { + $sanitized['discord_webhook'] = $validated_discord; + } + } else { + $sanitized['discord_webhook'] = ''; + } + } + + if ( isset( $input['telegram_bot_token'] ) ) { + $telegram_bot_token = sanitize_text_field( trim( is_scalar( $input['telegram_bot_token'] ) ? (string) $input['telegram_bot_token'] : '' ) ); + if ( '' !== $telegram_bot_token ) { + if ( ! preg_match( '/^\d+:[A-Za-z0-9_-]+$/', $telegram_bot_token ) ) { + add_settings_error( + 'wpvulnerability-config', + 'invalid-telegram-token', + __( 'Invalid Telegram bot token format. Must be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11', 'wpvulnerability' ), + 'error' + ); + $sanitized['telegram_bot_token'] = ''; + } else { + $sanitized['telegram_bot_token'] = $telegram_bot_token; + } + } else { + $sanitized['telegram_bot_token'] = ''; + } + } + + if ( isset( $input['telegram_chat_id'] ) ) { + $sanitized['telegram_chat_id'] = sanitize_text_field( trim( is_scalar( $input['telegram_chat_id'] ) ? (string) $input['telegram_chat_id'] : '' ) ); + } + + $sanitized = wp_parse_args( $sanitized, $defaults ); + + // Schedule notification based on sanitized values. + wpvulnerability_schedule_notification_event( $sanitized ); + + return $sanitized; +} + +/** + * Sanitizes the messages generated by the plugin (simple messages). + * + * @since 2.0.0 + * + * @param array $input Input values. + * @return array Sanitized values. + */ +function wpvulnerability_sanitize_messages( $input ) { + $sanitized = array(); + + foreach ( $input as $key => $message ) { + $sanitized[ sanitize_key( (string) $key ) ] = sanitize_text_field( is_scalar( $message ) ? (string) $message : '' ); + } + + return $sanitized; +} + +/** + * Strictly sanitizes the analysis options (booleans). + * + * @since 3.3.0 + * + * @param array $input Input values. + * @return array Sanitized values. + */ +function wpvulnerability_sanitize_analyze( $input ) { + $components = array( + 'core', + 'plugins', + 'themes', + 'php', + 'apache', + 'nginx', + 'mariadb', + 'mysql', + 'imagemagick', + 'curl', + 'memcached', + 'redis', + 'sqlite', + ); + + $sanitized = array(); + + foreach ( $components as $component ) { + $sanitized[ $component ] = isset( $input[ $component ] ) ? (bool) $input[ $component ] : false; + + $constant = 'WPVULNERABILITY_HIDE_' . strtoupper( (string) $component ); + if ( defined( $constant ) && constant( $constant ) ) { + $sanitized[ $component ] = true; + } + } + + return $sanitized; +} + +/** + * Initializes the WP-Admin settings page for the WP Vulnerability plugin. + * + * @since 2.0.0 + * + * @return void + */ +function wpvulnerability_admin_init() { + + // Register the plugin settings to be saved in the database. + register_setting( + 'admin_wpvulnerability_settings', + 'wpvulnerability-config', + array( + 'sanitize_callback' => 'wpvulnerability_sanitize_config', + 'default' => array(), + 'show_in_rest' => false, + 'type' => 'array', + ) + ); + + // Register messages. + register_setting( + 'admin_wpvulnerability_settings', + 'wpvulnerability-messages', + array( + 'sanitize_callback' => 'wpvulnerability_sanitize_messages', + 'default' => array(), + 'show_in_rest' => false, + 'type' => 'array', + ) + ); + + // Add a section to the settings page. + add_settings_section( + 'admin_wpvulnerability_settings', + __( 'Receive vulnerability notifications', 'wpvulnerability' ), + 'wpvulnerability_admin_section_notifications', + 'wpvulnerability-config' + ); + + // Add a field to the settings page for the cache expiration time. + add_settings_field( + 'wpvulnerability_cache', + __( 'Cache expiration time', 'wpvulnerability' ), + 'wpvulnerability_admin_cache_callback', + 'wpvulnerability-config', + 'admin_wpvulnerability_settings' + ); + + // Add a field to the settings page for the notification period. + add_settings_field( + 'wpvulnerability_period', + __( 'How often you want to receive notifications', 'wpvulnerability' ), + 'wpvulnerability_admin_period_callback', + 'wpvulnerability-config', + 'admin_wpvulnerability_settings' + ); + + // Add a field for notification methods. + add_settings_field( + 'wpvulnerability_notify', + __( 'Where do you want to receive notifications?', 'wpvulnerability' ), + 'wpvulnerability_admin_notify_callback', + 'wpvulnerability-config', + 'admin_wpvulnerability_settings' + ); + + // Add a field to the settings page for the email addresses. + add_settings_field( + 'wpvulnerability_emails', + __( 'Email addresses to notify (separated by commas)', 'wpvulnerability' ), + 'wpvulnerability_admin_emails_callback', + 'wpvulnerability-config', + 'admin_wpvulnerability_settings' + ); + + // Add a field for the Slack webhook. + add_settings_field( + 'wpvulnerability_slack_webhook', + __( 'Slack webhook URL', 'wpvulnerability' ), + 'wpvulnerability_admin_slack_callback', + 'wpvulnerability-config', + 'admin_wpvulnerability_settings' + ); + + // Add a field for the Teams webhook. + add_settings_field( + 'wpvulnerability_teams_webhook', + __( 'Teams webhook URL', 'wpvulnerability' ), + 'wpvulnerability_admin_teams_callback', + 'wpvulnerability-config', + 'admin_wpvulnerability_settings' + ); + + // Register the plugin settings to be saved in the database. + register_setting( + 'admin_wpvulnerability_analyze', + 'wpvulnerability-analyze', + array( + 'sanitize_callback' => 'wpvulnerability_sanitize_analyze', + 'default' => array(), + 'show_in_rest' => false, + 'type' => 'array', + ) + ); + + // Add a section to the settings page. + add_settings_section( + 'admin_wpvulnerability_analyze', + __( 'Vulnerabilities to hide', 'wpvulnerability' ), + 'wpvulnerability_admin_section_analyze', + 'wpvulnerability-analyze' + ); + + // Add a field to the settings page for analyzing components. + add_settings_field( + 'wpvulnerability_analyze', + __( 'What do you want to hide?', 'wpvulnerability' ), + 'wpvulnerability_admin_analyze_callback', + 'wpvulnerability-analyze', + 'admin_wpvulnerability_analyze' + ); +} +add_action( 'admin_init', 'wpvulnerability_admin_init' ); + +/** + * Outputs the Security tab contents for the multisite network admin. + * + * Reuses the single-site security display functions since the functionality + * is identical for both single-site and multisite contexts. + * + * @since 4.3.0 + * + * @return void + */ +function wpvulnerability_render_network_admin_tab_security() { + ?> +
+ + + + +
+ __( 'Standard (Hybrid Detection)', 'wpvulnerability' ), + 'strict' => __( 'Strict (Extensions Only)', 'wpvulnerability' ), + 'disabled' => __( 'Disabled (No Detection)', 'wpvulnerability' ), + ); + + $mode_label = isset( $mode_labels[ $security_mode ] ) ? $mode_labels[ $security_mode ] : $security_mode; + ?> +
+

+ +
+
+ + +
+ +
+ + + + + + +
+ +
+ + 0 ) : ?> + + + + + + +
+ +
+ + +
+
+ + +
+ + + post_date ) ), time() ) + ) + ); + ?> + +
+ + +
+

+ +
+ security configuration documentation for details.', 'wpvulnerability' ) ), + esc_url( 'https://www.wpvulnerability.com/plugin/#security-configuration' ) + ); + ?> +

+
+
+ __( 'ImageMagick', 'wpvulnerability' ), + 'redis' => __( 'Redis', 'wpvulnerability' ), + 'memcached' => __( 'Memcached', 'wpvulnerability' ), + 'sqlite' => __( 'SQLite', 'wpvulnerability' ), + ); + + $detections = array(); + + foreach ( array_keys( $components ) as $component ) { + $detection = null; + + switch ( $component ) { + case 'imagemagick': + $detection = wpvulnerability_detect_imagemagick(); + break; + case 'redis': + $detection = wpvulnerability_detect_redis(); + break; + case 'memcached': + $detection = wpvulnerability_detect_memcached(); + break; + case 'sqlite': + $detection = wpvulnerability_detect_sqlite(); + break; + } + + $detections[ $component ] = $detection; + } + + $method_labels = array( + 'imagick_extension' => __( 'Imagick Extension', 'wpvulnerability' ), + 'redis_extension' => __( 'Redis Extension', 'wpvulnerability' ), + 'memcached_extension' => __( 'Memcached Extension', 'wpvulnerability' ), + 'memcache_extension' => __( 'Memcache Extension', 'wpvulnerability' ), + 'sqlite3_extension' => __( 'SQLite3 Extension', 'wpvulnerability' ), + 'pdo_sqlite' => __( 'PDO SQLite', 'wpvulnerability' ), + 'shell_exec' => __( 'Shell Command', 'wpvulnerability' ), + 'binary_exists' => __( 'Binary Check', 'wpvulnerability' ), + 'none' => __( 'Not Detected', 'wpvulnerability' ), + ); + ?> +
+

+

+ + + + + + + + + + + + $detection ) : ?> + + + + + + + + +
+ ' . esc_html__( 'Not detected', 'wpvulnerability' ) . ''; + } + ?> + + + + 0 ) { + $reliability_class = 'low'; + if ( $reliability >= 80 ) { + $reliability_class = ''; + } elseif ( $reliability >= 50 ) { + $reliability_class = 'medium'; + } + ?> + + + + % + + + +
+
+ +
+

+

+ + +
+
🔒
+

+

+
+ + + + + + + + + + + + + + + post_content, true ); + if ( ! is_array( $log_data ) ) { + $log_data = array(); + } + if ( empty( $log_data ) ) { + continue; + } + $log_component = isset( $log_data['component'] ) && is_string( $log_data['component'] ) ? $log_data['component'] : ''; + $log_command = isset( $log_data['command'] ) && is_string( $log_data['command'] ) ? $log_data['command'] : ''; + $log_reason = isset( $log_data['reason'] ) && is_string( $log_data['reason'] ) ? $log_data['reason'] : ''; + $log_user = isset( $log_data['user'] ) && is_string( $log_data['user'] ) ? $log_data['user'] : ''; + $log_output = isset( $log_data['output'] ) && is_string( $log_data['output'] ) ? $log_data['output'] : ''; + $log_success = ! empty( $log_data['success'] ); + ?> + + + + + + + + + + +
+ post_date ) ), time() ) + ) + ); + ?> + + + + + + + + +
+ + 50 ) : ?> + ... + +
+ + + +
+ +

+ +

+ +
+

'; + esc_html_e( 'You do not have permission to access this page.', 'wpvulnerability' ); + echo '

'; + return; + } + + // Load debug functions if not already loaded. + if ( ! function_exists( 'wpvulnerability_debug_get_system_info' ) ) { + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-debug.php'; + } + + ?> +
+

+

+ +

+ + +
+ __( 'Invalid nonce.', 'wpvulnerability' ) ) ); + } + + // Check permissions. + if ( ! current_user_can( 'manage_network_options' ) ) { + wp_send_json_error( array( 'message' => __( 'Insufficient permissions.', 'wpvulnerability' ) ) ); + } + + // Get component. + $component = isset( $_POST['component'] ) ? sanitize_key( is_string( $_POST['component'] ) ? $_POST['component'] : '' ) : ''; + if ( empty( $component ) ) { + wp_send_json_error( array( 'message' => __( 'No component specified.', 'wpvulnerability' ) ) ); + } + + // Load debug functions. + if ( ! function_exists( 'wpvulnerability_debug_test_api_component' ) ) { + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-debug.php'; + } + + // Test API. + $wpvulnerability_result = wpvulnerability_debug_test_api_component( $component ); + + wp_send_json_success( $wpvulnerability_result ); +} +add_action( 'wp_ajax_wpvulnerability_test_api', 'wpvulnerability_ajax_network_test_api' ); + +/** + * Renders Section 1: System Information. + * + * @since 4.3.0 + * + * @return void + */ +function wpvulnerability_render_debug_section_system_info() { + $system_info = wpvulnerability_debug_get_system_info(); + + // Extract typed sub-arrays from the mixed return value. + $si_wordpress = isset( $system_info['wordpress'] ) && is_array( $system_info['wordpress'] ) ? $system_info['wordpress'] : array(); + $si_php = isset( $system_info['php'] ) && is_array( $system_info['php'] ) ? $system_info['php'] : array(); + $si_database = isset( $system_info['database'] ) && is_array( $system_info['database'] ) ? $system_info['database'] : array(); + $si_webserver = isset( $system_info['webserver'] ) && is_array( $system_info['webserver'] ) ? $system_info['webserver'] : array(); + $si_debug = isset( $system_info['debug'] ) && is_array( $system_info['debug'] ) ? $system_info['debug'] : array(); + + $si_wp_version = isset( $si_wordpress['version'] ) && is_scalar( $si_wordpress['version'] ) ? (string) $si_wordpress['version'] : ''; + $si_multisite = ! empty( $si_wordpress['multisite'] ); + $si_language = isset( $si_wordpress['language'] ) && is_scalar( $si_wordpress['language'] ) ? (string) $si_wordpress['language'] : ''; + $si_php_version = isset( $si_php['version'] ) && is_scalar( $si_php['version'] ) ? (string) $si_php['version'] : ''; + $si_extensions = isset( $si_php['extensions'] ) && is_array( $si_php['extensions'] ) ? $si_php['extensions'] : array(); + $si_memory = isset( $si_php['memory'] ) && is_array( $si_php['memory'] ) ? $si_php['memory'] : array(); + $si_mem_limit = isset( $si_memory['limit'] ) && is_scalar( $si_memory['limit'] ) ? (string) $si_memory['limit'] : ''; + $si_db_type = isset( $si_database['type'] ) && is_scalar( $si_database['type'] ) ? (string) $si_database['type'] : ''; + $si_db_version = isset( $si_database['version'] ) && is_scalar( $si_database['version'] ) ? (string) $si_database['version'] : ''; + $si_webserver_s = isset( $si_webserver['software'] ) && is_scalar( $si_webserver['software'] ) ? (string) $si_webserver['software'] : ''; + $si_wp_debug = ! empty( $si_debug['wp_debug'] ); + $si_debug_log = ! empty( $si_debug['wp_debug_log'] ); + $si_log_file = isset( $si_debug['log_file'] ) && is_array( $si_debug['log_file'] ) ? $si_debug['log_file'] : array(); + ?> +
+

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ $loaded ) : ?> + + + + + +
+ + + +
+ + + + + + +
+ + + + + + +
+ + + + +
+ + + + + +
+ + + + + +
+ + + + + + +
+
+ +
+

+ + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + +
+
+ +
+

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ +
+ + + + +
+ + + + +
+ + + + +
+ + + + +
+
+ +
+

+ + + + + + + + + + + +
+ + + + + +
+ + + + + +
+ + +
+
+ + + +
+ +
+ + + +
+
+ +

+ +

+ +
+ +
+

+ + +

+ +
+ + + +
+ +
+ + + +

+ +

+ +
+ +
+

+

+ +
+ + + + +
+ + + +
+

+ +
+ +

+ +
+ +
+ +
+

+

+ + +
+
+ + + +
+ +
+ + + +
+ +
+ + + +
+
+ +

+ +

+ +
+ is_scalar( $vuln_ssvc['exploitation'] ?? '' ) ? (string) ( $vuln_ssvc['exploitation'] ?? '' ) : '', + 'automatable' => is_scalar( $vuln_ssvc['automatable'] ?? '' ) ? (string) ( $vuln_ssvc['automatable'] ?? '' ) : '', + 'technical_impact' => is_scalar( $vuln_ssvc['technical_impact'] ?? '' ) ? (string) ( $vuln_ssvc['technical_impact'] ?? '' ) : '', + ); + } else { + $core_complete_temp['ssvc'] = null; + } + + // Process CWE details. + $core_complete_temp['cwe'] = array(); + foreach ( $vuln_cwe as $vulnerability_cwe ) { + if ( ! is_array( $vulnerability_cwe ) ) { + continue; } + $core_complete_temp['cwe'][] = array( + 'name' => trim( html_entity_decode( wp_kses( ( is_scalar( $vulnerability_cwe['name'] ?? null ) ? (string) $vulnerability_cwe['name'] : '' ), 'strip' ) ) ), + 'description' => trim( html_entity_decode( wp_kses( ( is_scalar( $vulnerability_cwe['description'] ?? null ) ? (string) $vulnerability_cwe['description'] : '' ), 'strip' ) ) ), + ); + } + + // Process CVSS score. + $core_complete_temp['score'] = isset( $vuln_cvss['score'] ) ? number_format( is_scalar( $vuln_cvss['score'] ) ? (float) $vuln_cvss['score'] : 0.0, 1, '.', '' ) : null; + + // Process vulnerability sources. + $core_complete_temp['source'] = array(); + foreach ( $vuln_sources as $vulnerability_source ) { + if ( ! is_array( $vulnerability_source ) ) { + continue; } + $core_complete_temp['source'][] = array( + 'name' => trim( html_entity_decode( wp_kses( ( is_scalar( $vulnerability_source['name'] ?? null ) ? (string) $vulnerability_source['name'] : '' ), 'strip' ) ) ), + 'link' => esc_url_raw( ( is_scalar( $vulnerability_source['link'] ?? null ) ? (string) $vulnerability_source['link'] : '' ) ), + 'description' => trim( html_entity_decode( wp_kses( ( is_scalar( $vulnerability_source['description'] ?? null ) ? (string) $vulnerability_source['description'] : '' ), 'strip' ) ) ), + 'date' => is_scalar( $vulnerability_source['date'] ?? '' ) ? (string) ( $vulnerability_source['date'] ?? '' ) : '', + ); + } + + $core_complete[] = $core_complete_temp; + unset( $core_complete_temp ); + } + } + + // Return the vulnerabilities in the response. + return new WP_REST_Response( $core_complete, 200 ); +} + +/** + * Handle the plugins vulnerabilities REST API request. + * + * This function handles the request for retrieving plugins vulnerabilities. + * It includes the necessary files and fetches the vulnerabilities data. + * + * @since 3.3.0 + * + * @return WP_REST_Response Plugins vulnerabilities data or a message if none found. + */ +function wpvulnerability_rest_plugins_vulnerabilities() { + // Include the files containing the functions to get plugins vulnerabilities. + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-general.php'; + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-plugins.php'; + + // Get the plugins vulnerabilities. + $plugins_vulnerabilities = wpvulnerability_plugin_get_vulnerabilities(); + + $plugins_complete = array(); + + // Loop through each plugin vulnerability. + foreach ( $plugins_vulnerabilities as $plugin ) { + if ( ! is_array( $plugin ) ) { + continue; } + // Check if the plugin is vulnerable. + if ( 1 === ( is_scalar( $plugin['vulnerable'] ?? null ) ? (int) $plugin['vulnerable'] : 0 ) ) { + $plugins_complete_temp = array(); + + // Process plugin name and slug. + $plugins_complete_temp['name'] = trim( html_entity_decode( wp_kses( ( is_scalar( $plugin['Name'] ?? null ) ? (string) $plugin['Name'] : '' ), 'strip' ) ) ); + $plugins_complete_temp['slug'] = trim( html_entity_decode( wp_kses( ( is_scalar( $plugin['slug'] ?? null ) ? (string) $plugin['slug'] : '' ), 'strip' ) ) ); + + // Prepare the vulnerabilities array for output. + $p_vulns = isset( $plugin['vulnerabilities'] ) && is_array( $plugin['vulnerabilities'] ) ? $plugin['vulnerabilities'] : array(); + foreach ( $p_vulns as $vulnerability ) { + if ( ! is_array( $vulnerability ) ) { + continue; } + $vuln_impact = isset( $vulnerability['impact'] ) && is_array( $vulnerability['impact'] ) ? $vulnerability['impact'] : array(); + $vuln_cvss = isset( $vuln_impact['cvss'] ) && is_array( $vuln_impact['cvss'] ) ? $vuln_impact['cvss'] : array(); + $vuln_cvss3 = isset( $vuln_impact['cvss3'] ) && is_array( $vuln_impact['cvss3'] ) ? $vuln_impact['cvss3'] : array(); + $vuln_ssvc = isset( $vuln_impact['ssvc'] ) && is_array( $vuln_impact['ssvc'] ) ? $vuln_impact['ssvc'] : array(); + $vuln_cwe = isset( $vuln_impact['cwe'] ) && is_array( $vuln_impact['cwe'] ) ? $vuln_impact['cwe'] : array(); + $vuln_sources = isset( $vulnerability['source'] ) && is_array( $vulnerability['source'] ) ? $vulnerability['source'] : array(); + + $plugins_complete_temp_vulnerabilities = array(); + + // UUID — unique vulnerability identifier. + $plugins_complete_temp_vulnerabilities['uuid'] = is_scalar( $vulnerability['uuid'] ?? '' ) ? (string) ( $vulnerability['uuid'] ?? '' ) : ''; + + // Process vulnerability severity — prefer cvss3 full-word value. + $cvss3_sev_raw = isset( $vuln_cvss3['severity'] ) ? $vuln_cvss3['severity'] : null; + $cvss3_sev = is_string( $cvss3_sev_raw ) && '' !== $cvss3_sev_raw ? $cvss3_sev_raw : null; + $cvss_sev = isset( $vuln_cvss['severity'] ) && is_scalar( $vuln_cvss['severity'] ) ? (string) $vuln_cvss['severity'] : null; + $sev_input = null !== $cvss3_sev ? $cvss3_sev : $cvss_sev; + $plugins_complete_temp_vulnerabilities['severity'] = null !== $sev_input ? wpvulnerability_severity( $sev_input ) : null; + + // KEV flag — Known Exploited Vulnerability (CISA KEV catalog). + $plugins_complete_temp_vulnerabilities['kev'] = isset( $vuln_ssvc['kev'] ) && true === $vuln_ssvc['kev']; + + // SSVC block. + if ( ! empty( $vuln_ssvc ) ) { + $plugins_complete_temp_vulnerabilities['ssvc'] = array( + 'exploitation' => is_scalar( $vuln_ssvc['exploitation'] ?? '' ) ? (string) ( $vuln_ssvc['exploitation'] ?? '' ) : '', + 'automatable' => is_scalar( $vuln_ssvc['automatable'] ?? '' ) ? (string) ( $vuln_ssvc['automatable'] ?? '' ) : '', + 'technical_impact' => is_scalar( $vuln_ssvc['technical_impact'] ?? '' ) ? (string) ( $vuln_ssvc['technical_impact'] ?? '' ) : '', + ); + } else { + $plugins_complete_temp_vulnerabilities['ssvc'] = null; + } + + // Process vulnerability details. + $plugins_complete_temp_vulnerabilities['version'] = trim( html_entity_decode( wp_kses( ( is_scalar( $vulnerability['version'] ?? null ) ? (string) $vulnerability['version'] : '' ), 'strip' ) ) ); + $plugins_complete_temp_vulnerabilities['affected'] = trim( html_entity_decode( wp_kses( ( is_scalar( $vulnerability['versions'] ?? null ) ? (string) $vulnerability['versions'] : '' ), 'strip' ) ) ); + $plugins_complete_temp_vulnerabilities['name'] = trim( html_entity_decode( wp_kses( ( is_scalar( $vulnerability['name'] ?? null ) ? (string) $vulnerability['name'] : '' ), 'strip' ) ) ); + $plugins_complete_temp_vulnerabilities['closed'] = is_numeric( $vulnerability['closed'] ?? 0 ) ? (int) ( $vulnerability['closed'] ?? 0 ) : 0; + $plugins_complete_temp_vulnerabilities['unfixed'] = is_numeric( $vulnerability['unfixed'] ?? 0 ) ? (int) ( $vulnerability['unfixed'] ?? 0 ) : 0; + + // Process CWE details. + $plugins_complete_temp_vulnerabilities['cwe'] = array(); + foreach ( $vuln_cwe as $vulnerability_cwe ) { + if ( ! is_array( $vulnerability_cwe ) ) { + continue; } + $plugins_complete_temp_vulnerabilities['cwe'][] = array( + 'name' => trim( html_entity_decode( wp_kses( ( is_scalar( $vulnerability_cwe['name'] ?? null ) ? (string) $vulnerability_cwe['name'] : '' ), 'strip' ) ) ), + 'description' => trim( html_entity_decode( wp_kses( ( is_scalar( $vulnerability_cwe['description'] ?? null ) ? (string) $vulnerability_cwe['description'] : '' ), 'strip' ) ) ), + ); + } + + // Process CVSS score. + $plugins_complete_temp_vulnerabilities['score'] = isset( $vuln_cvss['score'] ) ? number_format( is_scalar( $vuln_cvss['score'] ) ? (float) $vuln_cvss['score'] : 0.0, 1, '.', '' ) : null; + + // Process vulnerability sources. + $plugins_complete_temp_vulnerabilities['source'] = array(); + foreach ( $vuln_sources as $vulnerability_source ) { + if ( ! is_array( $vulnerability_source ) ) { + continue; } + $plugins_complete_temp_vulnerabilities['source'][] = array( + 'name' => trim( html_entity_decode( wp_kses( ( is_scalar( $vulnerability_source['name'] ?? null ) ? (string) $vulnerability_source['name'] : '' ), 'strip' ) ) ), + 'link' => esc_url_raw( ( is_scalar( $vulnerability_source['link'] ?? null ) ? (string) $vulnerability_source['link'] : '' ) ), + 'date' => is_scalar( $vulnerability_source['date'] ?? '' ) ? (string) ( $vulnerability_source['date'] ?? '' ) : '', + ); + } + + // Add processed vulnerability to the temporary array. + $plugins_complete_temp['vulnerabilities'][] = $plugins_complete_temp_vulnerabilities; + } + + // Add processed plugin data to the complete array. + $plugins_complete[] = $plugins_complete_temp; + } + } + + // Return the vulnerabilities in the response. + return new WP_REST_Response( $plugins_complete, 200 ); +} + +/** + * Handle the themes vulnerabilities REST API request. + * + * This function handles the request for retrieving themes vulnerabilities. + * It includes the necessary files and fetches the vulnerabilities data. + * + * @since 3.3.0 + * + * @return WP_REST_Response Themes vulnerabilities data or a message if none found. + */ +function wpvulnerability_rest_themes_vulnerabilities() { + // Include the file containing the function to get themes vulnerabilities. + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-general.php'; + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-themes.php'; + + // Get the themes vulnerabilities. + $themes_vulnerabilities = wpvulnerability_theme_get_vulnerabilities(); + + $themes_complete = array(); + + // Loop through each theme vulnerability. + foreach ( $themes_vulnerabilities as $theme ) { + if ( ! is_array( $theme ) ) { + continue; + } + $theme_wpv = isset( $theme['wpvulnerability'] ) && is_array( $theme['wpvulnerability'] ) ? $theme['wpvulnerability'] : array(); + // Check if the theme is vulnerable. + if ( 1 === ( is_numeric( $theme_wpv['vulnerable'] ?? 0 ) ? (int) ( $theme_wpv['vulnerable'] ?? 0 ) : 0 ) ) { + $themes_complete_temp = array(); + + // Process theme name and slug. + $themes_complete_temp['name'] = trim( html_entity_decode( wp_kses( ( is_scalar( $theme_wpv['name'] ?? null ) ? (string) $theme_wpv['name'] : '' ), 'strip' ) ) ); + $themes_complete_temp['slug'] = trim( html_entity_decode( wp_kses( ( is_scalar( $theme_wpv['slug'] ?? null ) ? (string) $theme_wpv['slug'] : '' ), 'strip' ) ) ); + + // Prepare the vulnerabilities array for output. + $theme_vulns = isset( $theme_wpv['vulnerabilities'] ) && is_array( $theme_wpv['vulnerabilities'] ) ? $theme_wpv['vulnerabilities'] : array(); + foreach ( $theme_vulns as $vulnerability ) { + if ( ! is_array( $vulnerability ) ) { + continue; } + $vuln_impact = isset( $vulnerability['impact'] ) && is_array( $vulnerability['impact'] ) ? $vulnerability['impact'] : array(); + $vuln_cvss = isset( $vuln_impact['cvss'] ) && is_array( $vuln_impact['cvss'] ) ? $vuln_impact['cvss'] : array(); + $vuln_cvss3 = isset( $vuln_impact['cvss3'] ) && is_array( $vuln_impact['cvss3'] ) ? $vuln_impact['cvss3'] : array(); + $vuln_ssvc = isset( $vuln_impact['ssvc'] ) && is_array( $vuln_impact['ssvc'] ) ? $vuln_impact['ssvc'] : array(); + $vuln_cwe = isset( $vuln_impact['cwe'] ) && is_array( $vuln_impact['cwe'] ) ? $vuln_impact['cwe'] : array(); + $vuln_sources = isset( $vulnerability['source'] ) && is_array( $vulnerability['source'] ) ? $vulnerability['source'] : array(); + + $themes_complete_temp_vulnerabilities = array(); + + // UUID — unique vulnerability identifier. + $themes_complete_temp_vulnerabilities['uuid'] = is_scalar( $vulnerability['uuid'] ?? '' ) ? (string) ( $vulnerability['uuid'] ?? '' ) : ''; + + // Process vulnerability severity — prefer cvss3 full-word value. + $cvss3_sev_raw = isset( $vuln_cvss3['severity'] ) ? $vuln_cvss3['severity'] : null; + $cvss3_sev = is_string( $cvss3_sev_raw ) && '' !== $cvss3_sev_raw ? $cvss3_sev_raw : null; + $cvss_sev = isset( $vuln_cvss['severity'] ) && is_scalar( $vuln_cvss['severity'] ) ? (string) $vuln_cvss['severity'] : null; + $sev_input = null !== $cvss3_sev ? $cvss3_sev : $cvss_sev; + $themes_complete_temp_vulnerabilities['severity'] = null !== $sev_input ? wpvulnerability_severity( $sev_input ) : null; + + // KEV flag — Known Exploited Vulnerability (CISA KEV catalog). + $themes_complete_temp_vulnerabilities['kev'] = isset( $vuln_ssvc['kev'] ) && true === $vuln_ssvc['kev']; + + // SSVC block. + if ( ! empty( $vuln_ssvc ) ) { + $themes_complete_temp_vulnerabilities['ssvc'] = array( + 'exploitation' => is_scalar( $vuln_ssvc['exploitation'] ?? '' ) ? (string) ( $vuln_ssvc['exploitation'] ?? '' ) : '', + 'automatable' => is_scalar( $vuln_ssvc['automatable'] ?? '' ) ? (string) ( $vuln_ssvc['automatable'] ?? '' ) : '', + 'technical_impact' => is_scalar( $vuln_ssvc['technical_impact'] ?? '' ) ? (string) ( $vuln_ssvc['technical_impact'] ?? '' ) : '', + ); + } else { + $themes_complete_temp_vulnerabilities['ssvc'] = null; + } + + // Process vulnerability details. + $themes_complete_temp_vulnerabilities['version'] = trim( html_entity_decode( wp_kses( ( is_scalar( $vulnerability['version'] ?? null ) ? (string) $vulnerability['version'] : '' ), 'strip' ) ) ); + $themes_complete_temp_vulnerabilities['affected'] = trim( html_entity_decode( wp_kses( ( is_scalar( $vulnerability['versions'] ?? null ) ? (string) $vulnerability['versions'] : '' ), 'strip' ) ) ); + $themes_complete_temp_vulnerabilities['name'] = trim( html_entity_decode( wp_kses( ( is_scalar( $vulnerability['name'] ?? null ) ? (string) $vulnerability['name'] : '' ), 'strip' ) ) ); + $themes_complete_temp_vulnerabilities['closed'] = ( is_scalar( $vulnerability['closed'] ?? null ) ? (int) $vulnerability['closed'] : 0 ); + $themes_complete_temp_vulnerabilities['unfixed'] = ( is_scalar( $vulnerability['unfixed'] ?? null ) ? (int) $vulnerability['unfixed'] : 0 ); + + // Process CWE details. + $themes_complete_temp_vulnerabilities['cwe'] = array(); + foreach ( $vuln_cwe as $vulnerability_cwe ) { + if ( ! is_array( $vulnerability_cwe ) ) { + continue; } + $themes_complete_temp_vulnerabilities['cwe'][] = array( + 'name' => trim( html_entity_decode( wp_kses( ( is_scalar( $vulnerability_cwe['name'] ?? null ) ? (string) $vulnerability_cwe['name'] : '' ), 'strip' ) ) ), + 'description' => trim( html_entity_decode( wp_kses( ( is_scalar( $vulnerability_cwe['description'] ?? null ) ? (string) $vulnerability_cwe['description'] : '' ), 'strip' ) ) ), + ); + } + + // Process CVSS score. + $themes_complete_temp_vulnerabilities['score'] = isset( $vuln_cvss['score'] ) ? number_format( is_scalar( $vuln_cvss['score'] ) ? (float) $vuln_cvss['score'] : 0.0, 1, '.', '' ) : null; + + // Process vulnerability sources. + $themes_complete_temp_vulnerabilities['source'] = array(); + foreach ( $vuln_sources as $vulnerability_source ) { + if ( ! is_array( $vulnerability_source ) ) { + continue; } + $themes_complete_temp_vulnerabilities['source'][] = array( + 'name' => trim( html_entity_decode( wp_kses( ( is_scalar( $vulnerability_source['name'] ?? null ) ? (string) $vulnerability_source['name'] : '' ), 'strip' ) ) ), + 'link' => esc_url_raw( ( is_scalar( $vulnerability_source['link'] ?? null ) ? (string) $vulnerability_source['link'] : '' ) ), + 'date' => is_scalar( $vulnerability_source['date'] ?? '' ) ? (string) ( $vulnerability_source['date'] ?? '' ) : '', + ); + } + + // Add processed vulnerability to the temporary array. + $themes_complete_temp['vulnerabilities'][] = $themes_complete_temp_vulnerabilities; + } + + // Add processed theme data to the complete array. + $themes_complete[] = $themes_complete_temp; + } + } + + // Return the vulnerabilities in the response. + return new WP_REST_Response( $themes_complete, 200 ); +} + +/** + * Handle vulnerabilities REST API request for different software types. + * + * This function processes the request to retrieve vulnerabilities for the specified software type. + * It loads the necessary files and fetches the vulnerability data, then returns the data in a structured format. + * + * @since 3.5.0 + * + * @param string $software_type The type of software to retrieve vulnerabilities for. + * @return WP_REST_Response The vulnerabilities data or an empty array if none found. + */ +function wpvulnerability_rest_software_vulnerabilities( $software_type ) { + // Include the general file for retrieving vulnerabilities. + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-general.php'; + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-software.php'; + + // Get vulnerabilities based on the software type. + $software_data = array(); + $vulnerabilities = array(); + switch ( $software_type ) { + case 'php': + case 'apache': + case 'nginx': + case 'mariadb': + case 'mysql': + case 'imagemagick': + case 'curl': + case 'memcached': + case 'redis': + case 'sqlite': + $software_data = wpvulnerability_software_get_vulnerabilities( $software_type ); + if ( is_array( $software_data ) && isset( $software_data['vulnerabilities'] ) && is_array( $software_data['vulnerabilities'] ) ) { + $vulnerabilities = $software_data['vulnerabilities']; + } + break; + default: + return new WP_REST_Response( array(), 400 ); // Invalid software type. + } + + $complete_vulnerabilities = array(); + + // Process each vulnerability. + foreach ( $vulnerabilities as $vulnerability ) { + if ( ! is_array( $vulnerability ) ) { + continue; } + $sw_sources = isset( $vulnerability['source'] ) && is_array( $vulnerability['source'] ) ? $vulnerability['source'] : array(); + $sw_impact = isset( $vulnerability['impact'] ) && is_array( $vulnerability['impact'] ) ? $vulnerability['impact'] : array(); + $sw_cvss3 = isset( $sw_impact['cvss3'] ) && is_array( $sw_impact['cvss3'] ) ? $sw_impact['cvss3'] : array(); + $raw_unfixed = $vulnerability['unfixed'] ?? 0; + + $temp = array(); + $temp['uuid'] = is_scalar( $vulnerability['uuid'] ?? '' ) ? (string) ( $vulnerability['uuid'] ?? '' ) : ''; + + // Severity from cvss3 if available. + $sw_cvss3_sev_raw = isset( $sw_cvss3['severity'] ) ? $sw_cvss3['severity'] : null; + $sw_cvss3_sev = is_string( $sw_cvss3_sev_raw ) && '' !== $sw_cvss3_sev_raw ? $sw_cvss3_sev_raw : null; + $temp['severity'] = null !== $sw_cvss3_sev ? wpvulnerability_severity( $sw_cvss3_sev ) : null; + + // KEV flag — for software, kev is at impact level (not inside ssvc). + $temp['kev'] = isset( $sw_impact['kev'] ) && true === $sw_impact['kev']; + + $temp['version'] = trim( html_entity_decode( wp_kses( ( is_scalar( $vulnerability['version'] ?? null ) ? (string) $vulnerability['version'] : '' ), 'strip' ) ) ); + $temp['affected'] = trim( html_entity_decode( wp_kses( ( is_scalar( $vulnerability['versions'] ?? null ) ? (string) $vulnerability['versions'] : '' ), 'strip' ) ) ); + $temp['unfixed'] = is_numeric( $raw_unfixed ) ? (int) $raw_unfixed : 0; + + // Process vulnerability sources. + $temp['source'] = array(); + foreach ( $sw_sources as $source ) { + if ( ! is_array( $source ) ) { + continue; } + $temp['source'][] = array( + 'name' => trim( html_entity_decode( wp_kses( ( is_scalar( $source['id'] ?? null ) ? (string) $source['id'] : '' ), 'strip' ) ) ), + 'description' => trim( html_entity_decode( wp_kses( ( is_scalar( $source['description'] ?? null ) ? (string) $source['description'] : '' ), 'strip' ) ) ), + 'link' => esc_url_raw( ( is_scalar( $source['link'] ?? null ) ? (string) $source['link'] : '' ) ), + 'date' => is_scalar( $source['date'] ?? '' ) ? (string) ( $source['date'] ?? '' ) : '', + ); + } + + // Add processed vulnerability to the complete array. + $complete_vulnerabilities[] = $temp; + } + + // Return the vulnerabilities in the response. + return new WP_REST_Response( $complete_vulnerabilities, 200 ); +} + +/** + * Handle the PHP vulnerabilities REST API request. + * + * @since 3.3.0 + * + * @return WP_REST_Response PHP vulnerabilities data or a message if none found. + */ +function wpvulnerability_rest_php_vulnerabilities() { + return wpvulnerability_rest_software_vulnerabilities( 'php' ); +} + +/** + * Handle the Apache vulnerabilities REST API request. + * + * @since 3.3.0 + * + * @return WP_REST_Response Apache vulnerabilities data or a message if none found. + */ +function wpvulnerability_rest_apache_vulnerabilities() { + return wpvulnerability_rest_software_vulnerabilities( 'apache' ); +} + +/** + * Handle the Nginx vulnerabilities REST API request. + * + * @since 3.3.0 + * + * @return WP_REST_Response Nginx vulnerabilities data or a message if none found. + */ +function wpvulnerability_rest_nginx_vulnerabilities() { + return wpvulnerability_rest_software_vulnerabilities( 'nginx' ); +} + +/** + * Handle the MariaDB vulnerabilities REST API request. + * + * @since 3.4.0 + * + * @return WP_REST_Response MariaDB vulnerabilities data or an empty array if none found. + */ +function wpvulnerability_rest_mariadb_vulnerabilities() { + return wpvulnerability_rest_software_vulnerabilities( 'mariadb' ); +} + +/** + * Handle the MySQL vulnerabilities REST API request. + * + * @since 3.4.0 + * + * @return WP_REST_Response MySQL vulnerabilities data or an empty array if none found. + */ +function wpvulnerability_rest_mysql_vulnerabilities() { + return wpvulnerability_rest_software_vulnerabilities( 'mysql' ); +} + +/** + * Handle the ImageMagick vulnerabilities REST API request. + * + * @since 3.5.0 + * + * @return WP_REST_Response ImageMagick vulnerabilities data or an empty array if none found. + */ +function wpvulnerability_rest_imagemagick_vulnerabilities() { + return wpvulnerability_rest_software_vulnerabilities( 'imagemagick' ); +} + +/** + * Handle the curl vulnerabilities REST API request. + * + * @since 3.5.0 + * + * @return WP_REST_Response curl vulnerabilities data or an empty array if none found. + */ +function wpvulnerability_rest_curl_vulnerabilities() { + return wpvulnerability_rest_software_vulnerabilities( 'curl' ); +} + +/** + * Handle the memcached vulnerabilities REST API request. + * + * @since 3.5.0 + * + * @return WP_REST_Response memcached vulnerabilities data or an empty array if none found. + */ +function wpvulnerability_rest_memcached_vulnerabilities() { + return wpvulnerability_rest_software_vulnerabilities( 'memcached' ); +} + +/** + * Handle the Redis vulnerabilities REST API request. + * + * @since 3.5.0 + * + * @return WP_REST_Response Redis vulnerabilities data or an empty array if none found. + */ +function wpvulnerability_rest_redis_vulnerabilities() { + return wpvulnerability_rest_software_vulnerabilities( 'redis' ); +} + +/** + * Handle the SQLite vulnerabilities REST API request. + * + * @since 3.5.0 + * + * @return WP_REST_Response SQLite vulnerabilities data or an empty array if none found. + */ +function wpvulnerability_rest_sqlite_vulnerabilities() { + return wpvulnerability_rest_software_vulnerabilities( 'sqlite' ); +} + +/** + * Custom permission check for the WPVulnerability REST API. + * + * This function checks if the request is authenticated using an Application Password or + * an authenticated session and verifies the user has admin capabilities. + * + * @since 3.3.0 + * + * @param WP_REST_Request $request The REST API request. + * + * @return bool True if the user has permission, false otherwise. + */ +function wpvulnerability_permission_check( WP_REST_Request $request ) { + + $capability = is_multisite() ? 'manage_network_options' : 'manage_options'; + + if ( is_user_logged_in() && current_user_can( $capability ) ) { + return true; + } + + // Check if application passwords are available. + if ( wp_is_application_passwords_available() ) { + $authorization_header = $request->get_header( 'authorization' ); + + // Check if the authorization header is present and properly formatted. + if ( $authorization_header && preg_match( '/^Basic\s(.+)$/i', $authorization_header, $matches ) ) { + $auth_string = base64_decode( (string) $matches[1], true ); // phpcs:ignore WordPress.PHP.DiscouragedPHPFunctions.obfuscation_base64_decode -- Decoding HTTP Basic auth; strict mode enforced. + + if ( false === $auth_string ) { + return false; + } + + $credentials = explode( ':', $auth_string, 2 ); + + if ( 2 !== count( $credentials ) ) { + return false; + } + + $user = $credentials[0]; + $password = $credentials[1]; + + // Authenticate the user using the application password. + $authenticated_user = wp_authenticate_application_password( null, $user, $password ); + + if ( $authenticated_user instanceof WP_User ) { + // Check if user has the required capability. + // For multisite, require manage_network_options. + // For single site, require manage_options. + if ( is_multisite() ) { + return user_can( $authenticated_user, 'manage_network_options' ); + } + + return user_can( $authenticated_user, 'manage_options' ); + } + } + } + + return false; +} + +/** + * Registers REST API routes for WPVulnerability. + * + * This function sets up the REST API routes for WPVulnerability to handle requests + * related to vulnerabilities in various components like core, plugins, themes, PHP, and more. + * + * @since 3.3.0 + * + * @return void + */ +function wpvulnerability_register_rest_routes() { + + // Define the endpoints to be registered. + $endpoints = array( + 'core', + 'plugins', + 'themes', + 'php', + 'apache', + 'nginx', + 'mariadb', + 'mysql', + 'imagemagick', + 'curl', + 'memcached', + 'redis', + 'sqlite', + ); + + // Loop through each endpoint and register it. + foreach ( $endpoints as $endpoint ) { + register_rest_route( + 'wpvulnerability/v1', // Namespace and version. + '/' . $endpoint, // Endpoint URL. + array( + 'methods' => 'GET', // HTTP method. + 'callback' => 'wpvulnerability_rest_' . $endpoint . '_vulnerabilities', // Callback function. + 'permission_callback' => 'wpvulnerability_permission_check', // Permission check callback. + ) + ); + } +} + +// Hook to initialize REST API endpoints. +add_action( 'rest_api_init', 'wpvulnerability_register_rest_routes' ); diff --git a/wpvulnerability-core.php b/wpvulnerability-core.php new file mode 100644 index 0000000..af1d466 --- /dev/null +++ b/wpvulnerability-core.php @@ -0,0 +1,286 @@ + ' . esc_html( $message ) . '

'; + $information .= ''; + + // Loop through all vulnerabilities for the current version. + $core_vuln_array = is_array( $core_vulnerabilities ) ? $core_vulnerabilities : array(); + foreach ( $core_vuln_array as $vulnerability ) { + if ( ! is_array( $vulnerability ) ) { + continue; + } + $vuln_impact_raw = $vulnerability['impact'] ?? null; + $vuln_impact = is_array( $vuln_impact_raw ) ? $vuln_impact_raw : array(); + $vuln_cvss_raw = $vuln_impact['cvss'] ?? null; + $vuln_cvss = is_array( $vuln_cvss_raw ) ? $vuln_cvss_raw : array(); + $vuln_cvss2_raw = $vuln_impact['cvss2'] ?? null; + $vuln_cvss2 = is_array( $vuln_cvss2_raw ) ? $vuln_cvss2_raw : array(); + $vuln_cvss3_raw = $vuln_impact['cvss3'] ?? null; + $vuln_cvss3 = is_array( $vuln_cvss3_raw ) ? $vuln_cvss3_raw : array(); + $vuln_cvss4_raw = $vuln_impact['cvss4'] ?? null; + $vuln_cvss4 = is_array( $vuln_cvss4_raw ) ? $vuln_cvss4_raw : array(); + $vuln_ssvc_raw = $vuln_impact['ssvc'] ?? null; + $vuln_ssvc = is_array( $vuln_ssvc_raw ) ? $vuln_ssvc_raw : array(); + $vuln_cwe_raw = $vuln_impact['cwe'] ?? null; + $vuln_cwe = is_array( $vuln_cwe_raw ) ? $vuln_cwe_raw : array(); + $vuln_src_raw = $vulnerability['source'] ?? null; + $vuln_sources = is_array( $vuln_src_raw ) ? $vuln_src_raw : array(); + + $kev = ( isset( $vuln_ssvc['kev'] ) && true === $vuln_ssvc['kev'] ); + $exploitation = isset( $vuln_ssvc['exploitation'] ) && is_string( $vuln_ssvc['exploitation'] ) ? $vuln_ssvc['exploitation'] : ''; + $automatable = isset( $vuln_ssvc['automatable'] ) && is_string( $vuln_ssvc['automatable'] ) ? $vuln_ssvc['automatable'] : ''; + $kev_date_raw = $vuln_ssvc['kev_date'] ?? null; + $kev_date = is_string( $kev_date_raw ) && '' !== $kev_date_raw ? $kev_date_raw : null; + $epss_raw = $vuln_impact['epss'] ?? null; + $epss = is_numeric( $epss_raw ) ? (float) $epss_raw : null; + $description = wpvulnerability_get_source_description( $vuln_sources ); + + $what = array(); + foreach ( $vuln_cwe as $vulnerability_cwe ) { + if ( ! is_array( $vulnerability_cwe ) ) { + continue; + } + $cwe_name = is_scalar( $vulnerability_cwe['name'] ?? '' ) ? (string) ( $vulnerability_cwe['name'] ?? '' ) : ''; + $cwe_desc = is_scalar( $vulnerability_cwe['description'] ?? '' ) ? (string) ( $vulnerability_cwe['description'] ?? '' ) : ''; + $what[] = '
' . wp_kses( $cwe_name, 'strip' ) . '
' . esc_html( $cwe_desc ) . '
'; + } + + $source_pills = wpvulnerability_render_source_pills( $vuln_sources ); + + // Best available CVSS score and severity: cvss4 > cvss3 > cvss2 > legacy cvss. + $score = null; + $sev_raw = null; + foreach ( array( $vuln_cvss4, $vuln_cvss3, $vuln_cvss2, $vuln_cvss ) as $cvss_c ) { + if ( empty( $cvss_c ) ) { + continue; + } + $s_raw = $cvss_c['score'] ?? null; + $v_raw = $cvss_c['severity'] ?? null; + $s = is_numeric( $s_raw ) ? number_format( (float) $s_raw, 1, '.', '' ) : null; + $v = is_string( $v_raw ) && '' !== $v_raw ? $v_raw : null; + if ( null !== $s || null !== $v ) { + $score = $s; + $sev_raw = $v; + break; + } + } + + $vuln_name = is_scalar( $vulnerability['name'] ?? '' ) ? (string) ( $vulnerability['name'] ?? '' ) : ''; + $score_badge = wpvulnerability_render_score_badge( $score, $sev_raw, $epss ); + $show_active = $kev || 'active' === $exploitation; + $show_poc = 'poc' === $exploitation; + $show_auto = 'yes' === $automatable; + + $information .= ''; + $information .= ''; + $information .= ''; + $information .= ''; + } + + $information .= '
WordPress ' . wp_kses( $vuln_name, 'strip' ) . ''; + + if ( $show_active || $show_poc || $show_auto || '' !== $score_badge ) { + $information .= '
'; + if ( $show_active ) { + $information .= '⚠ ' . esc_html__( 'Actively exploited', 'wpvulnerability' ); + if ( $kev && null !== $kev_date ) { + $information .= ' · ' . esc_html( $kev_date ); + } + $information .= ''; + } + if ( $show_poc ) { + $information .= '⚡ ' . esc_html__( 'Public exploit', 'wpvulnerability' ) . ''; + } + if ( $show_auto ) { + $information .= '⚙ ' . esc_html__( 'Automatable', 'wpvulnerability' ) . ''; + } + if ( '' !== $score_badge ) { + $information .= $score_badge; + } + $information .= '
'; + } + if ( null !== $description ) { + $information .= '
' . esc_html( $description ) . '
'; + } + if ( count( $what ) ) { + $information .= '
' . implode( '', $what ) . '
'; + } + if ( '' !== $source_pills ) { + $information .= '
' . esc_html__( 'References:', 'wpvulnerability' ) . ''; + $information .= $source_pills; + $information .= '
'; + } + + $information .= '
'; + + echo $information; // phpcs:ignore +} + +/** + * Retrieves vulnerabilities for a given WordPress core version and updates its data. + * + * @since 2.0.0 + * + * @return array>|false The updated core data array or false if no vulnerabilities are found. + */ +function wpvulnerability_get_fresh_core_vulnerabilities() { + + // Get the core version and sanitize it. + $version = wpvulnerability_sanitize_version( get_bloginfo( 'version' ) ); + + // Retrieve vulnerabilities for the core version. + $response = wpvulnerability_get_core( $version, 0 ); + + $core_data = array(); + + // If no vulnerabilities are found, return false. + if ( empty( $response ) ) { + return false; + } + + // If vulnerabilities are found, update the core data. + foreach ( $response as $v ) { + if ( isset( $v['name'], $v['source'], $v['impact'] ) ) { // Ensure expected keys exist. + $core_data[] = array( + 'name' => wp_kses( is_scalar( $v['name'] ) ? (string) $v['name'] : '', 'strip' ), + 'source' => $v['source'], + 'impact' => $v['impact'], + 'uuid' => is_scalar( $v['uuid'] ?? '' ) ? (string) ( $v['uuid'] ?? '' ) : '', + ); + } + } + + return ! empty( $core_data ) ? $core_data : false; // Return false if core_data is empty. +} + +/** + * Get Vulnerabilities + * + * Retrieves and caches the vulnerabilities for the installed WordPress core version. + * + * @since 2.0.0 + * + * @return string JSON-encoded array of core data with vulnerabilities and vulnerable status. + */ +function wpvulnerability_core_get_installed() { + + $wpvulnerability_core_vulnerable = 0; + $current_version = wpvulnerability_sanitize_version( get_bloginfo( 'version' ) ); + + // Get fresh core vulnerabilities. + $core = wpvulnerability_get_fresh_core_vulnerabilities(); + + // Check if vulnerabilities were found and count them. + if ( is_array( $core ) && count( $core ) > 0 ) { + $wpvulnerability_core_vulnerable = count( $core ); + } + + // Cache the vulnerability data and the timestamp for cache expiration. + if ( is_multisite() ) { + update_site_option( 'wpvulnerability-core', wp_json_encode( $core ) ); + update_site_option( 'wpvulnerability-core-vulnerable', wp_json_encode( number_format( $wpvulnerability_core_vulnerable, 0, '.', '' ) ) ); + update_site_option( 'wpvulnerability-core-cache', wp_json_encode( number_format( time() + ( 3600 * wpvulnerability_cache_hours() ), 0, '.', '' ) ) ); + update_site_option( 'wpvulnerability-core-version', wp_json_encode( $current_version ) ); + } else { + update_option( 'wpvulnerability-core', wp_json_encode( $core ), false ); + update_option( 'wpvulnerability-core-vulnerable', wp_json_encode( number_format( $wpvulnerability_core_vulnerable, 0, '.', '' ) ), false ); + update_option( 'wpvulnerability-core-cache', wp_json_encode( number_format( time() + ( 3600 * wpvulnerability_cache_hours() ), 0, '.', '' ) ), false ); + update_option( 'wpvulnerability-core-version', wp_json_encode( $current_version ), false ); + } + + // Return the JSON-encoded array of core vulnerabilities. + $encoded = wp_json_encode( $core ); + return false !== $encoded ? $encoded : ''; +} + +/** + * Get cached core vulnerabilities without refreshing external data. + * + * @since 2.0.0 + * @since 4.1.2 Refreshes when the stored WordPress core version differs from the running version. + * + * @return array Array of core with their vulnerabilities. + */ +function wpvulnerability_core_get_vulnerabilities() { + + if ( is_multisite() ) { + $raw = get_site_option( 'wpvulnerability-core' ); + $core_data = json_decode( is_string( $raw ) ? $raw : '', true ); + } else { + $raw = get_option( 'wpvulnerability-core' ); + $core_data = json_decode( is_string( $raw ) ? $raw : '', true ); + } + + return is_array( $core_data ) ? $core_data : array(); +} + +/** + * Update the core cache and remove any old cache data. + * + * @since 2.0.0 + * + * @return void + */ +function wpvulnerability_core_get_vulnerabilities_clean() { + wpvulnerability_clear_cache( 'core' ); + wpvulnerability_core_get_installed(); +} + +/** + * Adds vulnerability information after the core version and notices on the update-core.php page. + * + * @since 2.0.0 + * + * @return void + */ +function wpvulnerability_core_page() { + + // Check if the current page is the update-core.php page. + global $pagenow; + if ( wpvulnerability_analyze_filter( 'core' ) && 'update-core.php' === $pagenow && wpvulnerability_capabilities() ) { + + // Get the vulnerabilities for the core. + $core = wpvulnerability_core_get_vulnerabilities(); + + // If there are vulnerabilities, add an action to display them after the core auto updates settings. + if ( ! empty( $core ) ) { + add_action( 'after_core_auto_updates_settings', 'wpvulnerability_core_info_after' ); + } + } +} +// Add notices for vulnerable core on the core page. +add_action( 'admin_head', 'wpvulnerability_core_page' ); diff --git a/wpvulnerability-debug.php b/wpvulnerability-debug.php new file mode 100644 index 0000000..149c087 --- /dev/null +++ b/wpvulnerability-debug.php @@ -0,0 +1,661 @@ + Array with 'path', 'exists', 'size', 'url', and 'accessible' keys. + */ +function wpvulnerability_debug_get_log_file_info() { + $log_info = array( + 'path' => null, + 'exists' => false, + 'size' => 0, + 'url' => null, + 'accessible' => false, + ); + + // Check if WP_DEBUG_LOG is enabled. + if ( ! defined( 'WP_DEBUG_LOG' ) || ! WP_DEBUG_LOG ) { + return $log_info; + } + + // Determine log file path. + // WP_DEBUG_LOG can be a string (custom path) or true/false. + // phpcs:ignore WordPress.PHP.DiscouragedPHPFunctions.runtime_configuration_constant -- need runtime value for type narrowing + $wp_debug_log_value = defined( 'WP_DEBUG_LOG' ) ? WP_DEBUG_LOG : false; + if ( is_string( $wp_debug_log_value ) ) { // @phpstan-ignore function.impossibleType (WP_DEBUG_LOG may be a string path at runtime) + // Custom path specified. + $log_file = $wp_debug_log_value; + } else { + // Default path: wp-content/debug.log. + $log_file = WP_CONTENT_DIR . '/debug.log'; + } + + $log_info['path'] = $log_file; + + // Check if file exists. + if ( file_exists( $log_file ) ) { + $log_info['exists'] = true; + + // Get file size. + $size = filesize( $log_file ); + if ( false !== $size ) { + $log_info['size'] = $size; + } + + // Check if file is within wp-content (accessible via web). + $wp_content_dir = realpath( WP_CONTENT_DIR ); + $log_file_real = realpath( $log_file ); + + if ( $wp_content_dir && $log_file_real && 0 === strpos( $log_file_real, $wp_content_dir ) ) { + // File is within wp-content, generate URL. + $relative_path = str_replace( $wp_content_dir, '', $log_file_real ); + $relative_path = str_replace( '\\', '/', $relative_path ); + $log_info['url'] = content_url() . $relative_path; + $log_info['accessible'] = true; + } + } + + return $log_info; +} + +/** + * Enhanced web server detection for debug purposes. + * + * Detects a wider range of web servers including nginx, Apache, LiteSpeed, + * Caddy, IIS, Angie, OpenLiteSpeed, and others. + * + * @since 4.3.0 + * + * @return array Array with 'name' and 'version' keys. + */ +function wpvulnerability_debug_detect_webserver() { + $webserver = array( + 'name' => 'Unknown', + 'version' => '', + ); + + // First try the plugin's standard detection. + $detected = wpvulnerability_detect_webserver(); + if ( ! empty( $detected['name'] ) ) { + $webserver['name'] = $detected['name']; + if ( ! empty( $detected['version'] ) ) { + $webserver['version'] = $detected['version']; + } + } + + // If still unknown, try enhanced detection from SERVER_SOFTWARE. + if ( 'Unknown' === $webserver['name'] && isset( $_SERVER['SERVER_SOFTWARE'] ) ) { + $server_software = sanitize_text_field( wp_unslash( is_string( $_SERVER['SERVER_SOFTWARE'] ) ? $_SERVER['SERVER_SOFTWARE'] : '' ) ); + $server_lower = strtolower( $server_software ); + + // LiteSpeed detection. + if ( false !== stripos( $server_lower, 'litespeed' ) ) { + if ( preg_match( '/litespeed/i', $server_software, $match ) ) { + $webserver['name'] = 'LiteSpeed'; + if ( preg_match( '/litespeed\/?v?(\d+\.\d+(?:\.\d+)?)/i', $server_software, $version_match ) ) { + $webserver['version'] = $version_match[1]; + } + } + } + + // OpenLiteSpeed detection. + if ( false !== stripos( $server_lower, 'openlitespeed' ) ) { + $webserver['name'] = 'OpenLiteSpeed'; + if ( preg_match( '/openlitespeed\/?v?(\d+\.\d+(?:\.\d+)?)/i', $server_software, $version_match ) ) { + $webserver['version'] = $version_match[1]; + } + } + + // Caddy detection. + if ( false !== stripos( $server_lower, 'caddy' ) ) { + $webserver['name'] = 'Caddy'; + if ( preg_match( '/caddy\/?v?(\d+\.\d+(?:\.\d+)?)/i', $server_software, $version_match ) ) { + $webserver['version'] = $version_match[1]; + } + } + + // IIS detection. + if ( false !== stripos( $server_lower, 'microsoft-iis' ) || false !== stripos( $server_lower, 'iis' ) ) { + $webserver['name'] = 'Microsoft IIS'; + if ( preg_match( '/(?:microsoft-)?iis\/?(\d+\.\d+(?:\.\d+)?)/i', $server_software, $version_match ) ) { + $webserver['version'] = $version_match[1]; + } + } + + // Angie detection (nginx fork). + if ( false !== stripos( $server_lower, 'angie' ) ) { + $webserver['name'] = 'Angie'; + if ( preg_match( '/angie\/?(\d+\.\d+(?:\.\d+)?)/i', $server_software, $version_match ) ) { + $webserver['version'] = $version_match[1]; + } + } + + // OpenResty detection (nginx-based). + if ( false !== stripos( $server_lower, 'openresty' ) ) { + $webserver['name'] = 'OpenResty'; + if ( preg_match( '/openresty\/?(\d+\.\d+(?:\.\d+)?(?:\.\d+)?)/i', $server_software, $version_match ) ) { + $webserver['version'] = $version_match[1]; + } + } + + // Tengine detection (nginx fork). + if ( false !== stripos( $server_lower, 'tengine' ) ) { + $webserver['name'] = 'Tengine'; + if ( preg_match( '/tengine\/?(\d+\.\d+(?:\.\d+)?)/i', $server_software, $version_match ) ) { + $webserver['version'] = $version_match[1]; + } + } + } + + // Try shell commands for additional detection if shell_exec is allowed. + if ( 'Unknown' === $webserver['name'] && function_exists( 'wpvulnerability_safe_shell_exec' ) ) { + // Try LiteSpeed. + $litespeed_test = wpvulnerability_safe_shell_exec( 'apache', 'which litespeed 2>/dev/null' ); + if ( ! empty( $litespeed_test ) ) { + $webserver['name'] = 'LiteSpeed'; + } + + // Try OpenLiteSpeed. + $openlitespeed_test = wpvulnerability_safe_shell_exec( 'apache', 'which openlitespeed 2>/dev/null' ); + if ( ! empty( $openlitespeed_test ) ) { + $webserver['name'] = 'OpenLiteSpeed'; + } + + // Try Caddy. + $caddy_version = wpvulnerability_safe_shell_exec( 'apache', 'caddy version 2>/dev/null' ); + if ( ! empty( $caddy_version ) && preg_match( '/v?(\d+\.\d+\.\d+)/', $caddy_version, $version_match ) ) { + $webserver['name'] = 'Caddy'; + $webserver['version'] = $version_match[1]; + } + } + + return $webserver; +} + +/** + * Retrieves comprehensive system information for debugging. + * + * @since 4.3.0 + * + * @return array Associative array containing system information. + */ +function wpvulnerability_debug_get_system_info() { + global $wp_version, $wpdb; + + // Detect database type (MariaDB vs MySQL). + $sqlserver = wpvulnerability_detect_sqlserver(); + $db_type = ! empty( $sqlserver['name'] ) ? $sqlserver['name'] : 'MySQL'; + $db_version = ! empty( $sqlserver['version'] ) ? $sqlserver['version'] : $wpdb->db_version(); + + // Detect web server with enhanced detection. + $webserver = wpvulnerability_debug_detect_webserver(); + $webserver_name = $webserver['name']; + if ( ! empty( $webserver['version'] ) ) { + $webserver_name .= ' ' . $webserver['version']; + } + + $info = array( + 'wordpress' => array( + 'version' => $wp_version, + 'multisite' => is_multisite(), + 'language' => get_locale(), + 'home_url' => home_url(), + 'site_url' => site_url(), + ), + 'php' => array( + 'version' => phpversion(), + 'extensions' => array( + 'curl' => extension_loaded( 'curl' ), + 'json' => extension_loaded( 'json' ), + 'mbstring' => extension_loaded( 'mbstring' ), + 'xml' => extension_loaded( 'xml' ), + 'zip' => extension_loaded( 'zip' ), + ), + 'memory' => array( + 'limit' => ini_get( 'memory_limit' ), + 'usage' => size_format( memory_get_usage( true ) ), + 'peak' => size_format( memory_get_peak_usage( true ) ), + ), + ), + 'database' => array( + 'type' => $db_type, + 'version' => $db_version, + ), + 'webserver' => array( + 'software' => $webserver_name, + ), + 'debug' => array( + 'wp_debug' => defined( 'WP_DEBUG' ) && WP_DEBUG, + 'wp_debug_log' => defined( 'WP_DEBUG_LOG' ) && WP_DEBUG_LOG, + 'wp_debug_display' => defined( 'WP_DEBUG_DISPLAY' ) && WP_DEBUG_DISPLAY, + 'script_debug' => defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG, + 'log_file' => wpvulnerability_debug_get_log_file_info(), + ), + 'plugin' => array( + 'version' => WPVULNERABILITY_PLUGIN_VERSION, + 'path' => WPVULNERABILITY_PLUGIN_PATH, + ), + ); + + return $info; +} + +/** + * Retrieves the status of all trackable components. + * + * @since 4.3.0 + * + * @return array> Array of component statuses. + */ +function wpvulnerability_debug_get_component_status() { + $components = array( + 'core', + 'plugins', + 'themes', + 'php', + 'apache', + 'nginx', + 'mysql', + 'mariadb', + 'imagemagick', + 'curl', + 'memcached', + 'redis', + 'sqlite', + ); + + $status = array(); + + foreach ( $components as $component ) { + $version = null; + $detected = false; + $analyzed = wpvulnerability_analyze_filter( $component ); + $cache_time = is_multisite() + ? get_site_option( 'wpvulnerability-' . $component . '-cache' ) + : get_option( 'wpvulnerability-' . $component . '-cache' ); + + // Decode cache time if it's JSON-encoded. + if ( $cache_time && is_string( $cache_time ) ) { + $decoded = json_decode( $cache_time ); + if ( null !== $decoded ) { + $cache_time = $decoded; + } + } + + // Determine detection status and version. + switch ( $component ) { + case 'core': + global $wp_version; + $version = $wp_version; + $detected = true; + break; + + case 'plugins': + if ( ! function_exists( 'get_plugins' ) ) { + require_once ABSPATH . 'wp-admin/includes/plugin.php'; + } + $all_plugins = get_plugins(); + $version = count( $all_plugins ) . ' installed'; + $detected = true; + break; + + case 'themes': + $all_themes = wp_get_themes(); + $version = count( $all_themes ) . ' installed'; + $detected = true; + break; + + case 'php': + case 'apache': + case 'nginx': + case 'mysql': + case 'mariadb': + case 'imagemagick': + case 'curl': + case 'memcached': + case 'redis': + case 'sqlite': + if ( function_exists( 'wpvulnerability_get_software_version' ) ) { + $version = wpvulnerability_get_software_version( $component ); + if ( null !== $version ) { + $detected = true; + } + } + break; + } + + // Calculate cache status. + $cache_status = 'No cache'; + if ( $cache_time && is_numeric( $cache_time ) ) { + $cache_time_int = (int) $cache_time; + $time_left = $cache_time_int - time(); + if ( $time_left > 0 ) { + $hours = floor( $time_left / 3600 ); + $cache_status = sprintf( 'Fresh (%dh left)', $hours ); + } else { + $cache_status = 'Expired'; + } + } + + $status[] = array( + 'component' => $component, + 'detected' => $detected, + 'version' => $version ? $version : '-', + 'analyzed' => $analyzed, + 'cache_status' => $cache_status, + 'cache_time' => $cache_time, + ); + } + + return $status; +} + +/** + * Tests API connectivity for a specific component. + * + * @since 4.3.0 + * + * @param string $component The component to test (e.g., 'core', 'plugins', 'php'). + * + * @return array Result array with success status, response data, and timing. + */ +function wpvulnerability_debug_test_api_component( $component ) { + $result = array( + 'success' => false, + 'component' => $component, + 'http_code' => 0, + 'response_time' => 0, + 'message' => '', + 'data_preview' => '', + ); + + // Validate component. + $valid_components = array( 'core', 'plugins', 'themes', 'php', 'apache', 'nginx', 'mysql', 'mariadb', 'imagemagick', 'curl', 'memcached', 'redis', 'sqlite' ); + if ( ! in_array( $component, $valid_components, true ) ) { + $result['message'] = __( 'Invalid component specified.', 'wpvulnerability' ); + return $result; + } + + // Get version for the component. + $version = null; + switch ( $component ) { + case 'core': + global $wp_version; + $version = $wp_version; + break; + case 'plugins': + case 'themes': + // Use a generic version for testing. + $version = '1.0.0'; + break; + default: + if ( function_exists( 'wpvulnerability_get_software_version' ) ) { + $version = wpvulnerability_get_software_version( $component ); + } + break; + } + + if ( ! $version ) { + $result['message'] = __( 'Version not detected for this component.', 'wpvulnerability' ); + return $result; + } + + // Build API URL. + $url = WPVULNERABILITY_API_HOST . $component . '/' . $version . '/'; + + // Execute request with timing. + $start_time = microtime( true ); + $response = wp_remote_get( + $url, + array( + 'timeout' => 10, + ) + ); + $end_time = microtime( true ); + + $result['response_time'] = round( ( $end_time - $start_time ) * 1000, 2 ); + + // Process response. + if ( is_wp_error( $response ) ) { + $result['message'] = $response->get_error_message(); + return $result; + } + + $result['http_code'] = wp_remote_retrieve_response_code( $response ); + $body = wp_remote_retrieve_body( $response ); + + if ( 200 === $result['http_code'] ) { + $result['success'] = true; + $result['message'] = __( 'API request successful.', 'wpvulnerability' ); + + // Create a preview of the response data. + $decoded = json_decode( $body, true ); + if ( $decoded ) { + $encoded = wp_json_encode( $decoded, JSON_PRETTY_PRINT ); + $preview = false !== $encoded ? $encoded : ''; + if ( strlen( $preview ) > 500 ) { + $preview = substr( $preview, 0, 500 ) . '...'; + } + $result['data_preview'] = $preview; + } else { + $result['data_preview'] = substr( $body, 0, 500 ); + } + } else { + $result['message'] = sprintf( + /* translators: %d: HTTP status code */ + __( 'API returned HTTP code %d.', 'wpvulnerability' ), + $result['http_code'] + ); + } + + return $result; +} + +/** + * Retrieves cron job status information. + * + * @since 4.3.0 + * + * @return array> Cron status information. + */ +function wpvulnerability_debug_get_cron_status() { + $cron_status = array( + 'update_database' => array( + 'hook' => 'wpvulnerability_update_database', + 'next_run' => null, + 'last_run' => null, + 'scheduled' => false, + ), + 'send_notification' => array( + 'hook' => 'wpvulnerability_send_notification', + 'next_run' => null, + 'last_run' => null, + 'scheduled' => false, + ), + ); + + // Check update database cron. + $next_update = wp_next_scheduled( 'wpvulnerability_update_database' ); + if ( $next_update ) { + $cron_status['update_database']['next_run'] = $next_update; + $cron_status['update_database']['scheduled'] = true; + } + + // Check notification cron. + $next_notification = wp_next_scheduled( 'wpvulnerability_send_notification' ); + if ( $next_notification ) { + $cron_status['send_notification']['next_run'] = $next_notification; + $cron_status['send_notification']['scheduled'] = true; + } + + // Try to get last run times from logs. + $logs_raw = is_multisite() ? get_site_option( 'wpvulnerability-logs', array() ) : get_option( 'wpvulnerability-logs', array() ); + $logs = is_array( $logs_raw ) ? $logs_raw : array(); + if ( ! empty( $logs ) ) { + // Get the most recent log entry for each type. + foreach ( array_reverse( $logs ) as $log ) { + if ( ! is_array( $log ) ) { + continue; } + if ( isset( $log['time'] ) && isset( $log['url'] ) ) { + $timestamp = $log['time']; + + // Check if this is an update-related log. + if ( ! $cron_status['update_database']['last_run'] ) { + $cron_status['update_database']['last_run'] = $timestamp; + } + } + } + } + + return $cron_status; +} + +/** + * Exports comprehensive debug information as JSON. + * + * @since 4.3.0 + * + * @return string JSON-encoded debug information. + */ +function wpvulnerability_debug_export_info() { + $config = is_multisite() + ? get_site_option( 'wpvulnerability-config', array() ) + : get_option( 'wpvulnerability-config', array() ); + + $debug_data = array( + 'timestamp' => current_time( 'mysql' ), + 'system_info' => wpvulnerability_debug_get_system_info(), + 'components' => wpvulnerability_debug_get_component_status(), + 'configuration' => $config, + 'cron_status' => wpvulnerability_debug_get_cron_status(), + 'vulnerability_counts' => array(), + ); + + // Add vulnerability counts for each component. + $components = array( 'core', 'plugins', 'themes', 'php', 'apache', 'nginx', 'mysql', 'mariadb', 'imagemagick', 'curl', 'memcached', 'redis', 'sqlite' ); + foreach ( $components as $component ) { + $vulnerable_option = is_multisite() + ? get_site_option( 'wpvulnerability-' . $component . '-vulnerable', 0 ) + : get_option( 'wpvulnerability-' . $component . '-vulnerable', 0 ); + $count = is_numeric( $vulnerable_option ) ? (int) $vulnerable_option : 0; + $debug_data['vulnerability_counts'][ $component ] = $count; + } + + $encoded_debug = wp_json_encode( $debug_data, JSON_PRETTY_PRINT ); + return false !== $encoded_debug ? $encoded_debug : ''; +} + +/** + * Clears all plugin caches and transients. + * + * @since 4.3.0 + * + * @return bool True if successful, false otherwise. + */ +function wpvulnerability_debug_clear_all_caches() { + $components = array( 'core', 'plugins', 'themes', 'php', 'apache', 'nginx', 'mysql', 'mariadb', 'imagemagick', 'curl', 'memcached', 'redis', 'sqlite' ); + + foreach ( $components as $component ) { + $key = 'wpvulnerability_' . $component; + + if ( is_multisite() ) { + delete_site_transient( $key ); + delete_site_option( 'wpvulnerability-' . $component . '-cache' ); + } else { + delete_transient( $key ); + delete_option( 'wpvulnerability-' . $component . '-cache' ); + } + } + + return true; +} + +/** + * Resets plugin signatures (MD5 hashes) for plugins and themes. + * + * @since 4.3.0 + * + * @return bool True if successful, false otherwise. + */ +function wpvulnerability_debug_reset_signatures() { + if ( is_multisite() ) { + delete_site_option( 'wpvulnerability-plugins-signature' ); + delete_site_option( 'wpvulnerability-themes-signature' ); + } else { + delete_option( 'wpvulnerability-plugins-signature' ); + delete_option( 'wpvulnerability-themes-signature' ); + } + + return true; +} + +/** + * Retrieves all database options related to WPVulnerability. + * + * @since 4.3.0 + * + * @return array Array of option names. + */ +function wpvulnerability_debug_get_option_names() { + $options = array( + 'wpvulnerability-config', + 'wpvulnerability-analyze', + 'wpvulnerability-statistics', + 'wpvulnerability-logs', + ); + + $components = array( 'core', 'plugins', 'themes', 'php', 'apache', 'nginx', 'mysql', 'mariadb', 'imagemagick', 'curl', 'memcached', 'redis', 'sqlite' ); + + foreach ( $components as $component ) { + $options[] = 'wpvulnerability-' . $component; + $options[] = 'wpvulnerability-' . $component . '-cache'; + $options[] = 'wpvulnerability-' . $component . '-version'; + $options[] = 'wpvulnerability-' . $component . '-vulnerable'; + } + + $options[] = 'wpvulnerability-plugins-signature'; + $options[] = 'wpvulnerability-themes-signature'; + + return $options; +} + +/** + * Retrieves the value of a specific WPVulnerability option. + * + * @since 4.3.0 + * + * @param string $option_name The option name to retrieve. + * + * @return mixed|null The option value or null if not found. + */ +function wpvulnerability_debug_get_option_value( $option_name ) { + if ( is_multisite() ) { + return get_site_option( $option_name, null ); + } else { + return get_option( $option_name, null ); + } +} diff --git a/wpvulnerability-general.php b/wpvulnerability-general.php new file mode 100644 index 0000000..be80c5c --- /dev/null +++ b/wpvulnerability-general.php @@ -0,0 +1,2887 @@ + array( 'wpvulnerability-core-version' ), + 'plugins' => array( + 'wpvulnerability-plugins-signature', + 'wpvulnerability-plugins-data', + 'wpvulnerability-plugins-cache-data', + ), + 'themes' => array( 'wpvulnerability-themes-signature' ), + ); + + if ( is_multisite() ) { + delete_site_option( "wpvulnerability-{$type}" ); + delete_site_option( "wpvulnerability-{$type}-vulnerable" ); + delete_site_option( "wpvulnerability-{$type}-cache" ); + + if ( isset( $additional_keys[ $type ] ) ) { + foreach ( $additional_keys[ $type ] as $option_name ) { + delete_site_option( $option_name ); + } + } + } else { + delete_option( "wpvulnerability-{$type}" ); + delete_option( "wpvulnerability-{$type}-vulnerable" ); + delete_option( "wpvulnerability-{$type}-cache" ); + + if ( isset( $additional_keys[ $type ] ) ) { + foreach ( $additional_keys[ $type ] as $option_name ) { + delete_option( $option_name ); + } + } + } +} + +/** + * Checks and validates user capabilities for managing vulnerability settings in a WordPress environment. + * + * This function verifies if the current user has the appropriate permissions to manage network settings + * in a multisite installation or manage options in a single site installation. It ensures that only + * Administrators in a single site and Super Administrators in multisite can access these settings. + * + * @since 3.0.0 + * + * @return bool Returns true if the current user has the required capabilities, false otherwise. + */ +function wpvulnerability_capabilities() { + // Check if the user is logged in. + if ( ! is_user_logged_in() ) { + return false; + } + + // Check if in a Multisite environment. + if ( is_multisite() && is_super_admin() && ( is_network_admin() || is_main_site() ) ) { + return true; + } elseif ( is_admin() && current_user_can( 'manage_options' ) ) { + return true; + } + + // Return false if the user does not have the required capabilities. + return false; +} + +/** + * Checks if the `shell_exec` function can be used. + * + * This function implements a 4-level security check system: + * 1. Global disable via constant + * 2. Security mode (strict/standard/disabled) + * 3. Component-specific whitelist + * 4. PHP configuration check + * + * @since 3.4.0 + * @since 4.3.0 Enhanced with 4-level security checks and component-specific control. + * + * @param string $component Optional. Component name for granular control. + * + * @return bool True if `shell_exec` is available and allowed, false otherwise. + */ +function wpvulnerability_can_shell_exec( $component = '' ) { + // Level 1: Global disable via constant. + if ( defined( 'WPVULNERABILITY_DISABLE_SHELL_EXEC' ) && WPVULNERABILITY_DISABLE_SHELL_EXEC ) { + return false; + } + + // Level 2: Security mode. + $security_mode = wpvulnerability_get_security_mode(); + if ( 'disabled' === $security_mode ) { + return false; + } + + if ( 'strict' === $security_mode ) { + return false; + } + + // Level 3: Component-specific whitelist (when specified). + if ( ! empty( $component ) && defined( 'WPVULNERABILITY_SHELL_EXEC_WHITELIST' ) ) { + $whitelist = WPVULNERABILITY_SHELL_EXEC_WHITELIST; + + if ( is_string( $whitelist ) ) { + $whitelist = array_map( 'trim', explode( ',', $whitelist ) ); + } + + if ( is_array( $whitelist ) && ! empty( $whitelist ) ) { + if ( ! in_array( $component, $whitelist, true ) ) { + return false; + } + } + } + + // Level 4: PHP configuration check. + if ( ! function_exists( 'shell_exec' ) ) { + return false; + } + + // Check if `shell_exec` is disabled in PHP configuration. + if ( in_array( 'shell_exec', array_map( 'trim', explode( ',', (string) ini_get( 'disable_functions' ) ) ), true ) ) { + return false; + } + + // Try to execute a simple command to confirm functionality. + $test = @shell_exec( escapeshellcmd( 'echo test' ) ); // phpcs:ignore + + // If the command execution failed or returned null, shell_exec is not working. + return null !== $test; +} + +/** + * Conditionally log diagnostic messages for the plugin. + * + * This helper respects the WordPress debug mode and allows developers to hook into the + * decision using the {@see 'wpvulnerability_should_log'} filter. Logged messages are + * encoded as JSON when possible to provide structured context without breaking the + * WordPress Coding Standards that discourage verbose debugging in production. + * + * @since 4.1.7 + * + * @param string $message Message to record in the debug log. + * @param array $context Optional. Additional context about the message. Default empty array. + * + * @return void + */ +function wpvulnerability_maybe_log( $message, $context = array() ) { + if ( empty( $message ) ) { + return; + } + + $should_log = defined( 'WP_DEBUG' ) && WP_DEBUG; + + /** + * Filter whether a diagnostic message should be logged. + * + * @since 4.1.7 + * + * @param bool $should_log Whether the message should be logged. + * @param string $message Message to log. + * @param array $context Additional context data. + */ + $should_log = apply_filters( 'wpvulnerability_should_log', $should_log, $message, $context ); + + if ( ! $should_log ) { + return; + } + + $log_entry = array( + 'plugin' => 'wpvulnerability', + 'message' => (string) $message, + ); + + if ( ! empty( $context ) ) { + $log_entry['context'] = (array) $context; + } + + $encoded_entry = wp_json_encode( $log_entry ); + + if ( false === $encoded_entry ) { + $encoded_entry = sprintf( + 'wpvulnerability: %s', + sanitize_text_field( $log_entry['message'] ) + ); + } + + error_log( $encoded_entry ); // phpcs:ignore WordPress.PHP.DevelopmentFunctions.error_log_error_log +} + +/** + * Retrieve the cache expiration in hours. + * + * The value can be defined via the WPVULNERABILITY_CACHE_HOURS constant, + * configured in the plugin settings, or falls back to 12 hours. + * + * @since 4.1.0 + * + * @return int Cache duration in hours. + */ +function wpvulnerability_cache_hours() { + $default = 12; + + if ( defined( 'WPVULNERABILITY_CACHE_HOURS' ) && WPVULNERABILITY_CACHE_HOURS !== $default ) { + return (int) WPVULNERABILITY_CACHE_HOURS; + } + + $settings = is_multisite() ? get_site_option( 'wpvulnerability-config', array() ) : get_option( 'wpvulnerability-config', array() ); + if ( ! is_array( $settings ) ) { + $settings = array(); + } + if ( isset( $settings['cache'] ) ) { + $cache_raw = $settings['cache']; + $cache = is_scalar( $cache_raw ) ? (int) $cache_raw : 0; + if ( in_array( $cache, array( 1, 6, 12, 24 ), true ) ) { + return $cache; + } + } + + return $default; +} + +/** + * Retrieve a JSON-encoded vulnerability count option as an integer. + * + * Centralises the `(int) json_decode( get_*_option( ... ), true )` pattern used + * in the admin dashboard and analysis tabs, providing a properly typed return + * value that satisfies PHPStan level 9. + * + * @since 4.3.3 + * + * @param string $option_key Option name (without the `wpvulnerability-` prefix). + * + * @return int Decoded integer count, or 0 when the option is empty or invalid. + */ +function wpvulnerability_get_component_count( string $option_key ): int { + $raw = is_multisite() + ? get_site_option( 'wpvulnerability-' . $option_key . '-vulnerable', '0' ) + : get_option( 'wpvulnerability-' . $option_key . '-vulnerable', '0' ); + + $decoded = json_decode( is_string( $raw ) ? $raw : '0', true ); + return is_scalar( $decoded ) ? (int) $decoded : 0; +} + +/** + * Retrieve the plugin configuration array, always returning a typed array. + * + * Wraps `get_option`/`get_site_option` for the `wpvulnerability-config` key and + * ensures the return value is an `array`, merging defaults so + * that callers can safely access keys without additional type guards. + * + * @since 4.3.3 + * + * @param array $defaults Optional default values to merge. + * + * @return array Plugin configuration. + */ +function wpvulnerability_get_config( array $defaults = array() ): array { + $raw = is_multisite() + ? get_site_option( 'wpvulnerability-config', array() ) + : get_option( 'wpvulnerability-config', array() ); + + $config = is_array( $raw ) ? $raw : array(); + + return empty( $defaults ) ? $config : wp_parse_args( $config, $defaults ); +} + +/** + * Retrieve the supported log retention values. + * + * @since 4.2.0 + * + * @return int[] Valid log retention periods expressed in days. The value "0" disables retention. + */ +function wpvulnerability_get_log_retention_values() { + return array( 0, 1, 7, 14, 28 ); +} + +/** + * Determine whether log retention is forced via a constant. + * + * @since 4.2.0 + * + * @return int|null Number of days when forced, or null when editable. + */ +function wpvulnerability_forced_log_retention() { + if ( defined( 'WPVULNERABILITY_LOG_RETENTION_DAYS' ) ) { + $forced = (int) WPVULNERABILITY_LOG_RETENTION_DAYS; + if ( in_array( $forced, wpvulnerability_get_log_retention_values(), true ) ) { + return $forced; + } + } + + return null; +} + +/** + * Retrieve the configured log retention period in days. + * + * The value can be defined through the WPVULNERABILITY_LOG_RETENTION_DAYS constant, + * configured via the settings UI, or falls back to zero (disabled). + * + * @since 4.2.0 + * + * @return int Log retention in days. Zero disables retention. + */ +function wpvulnerability_log_retention_days() { + $default = 0; + + $forced = wpvulnerability_forced_log_retention(); + if ( null !== $forced ) { + return $forced; + } + + $settings = is_multisite() ? get_site_option( 'wpvulnerability-config', array() ) : get_option( 'wpvulnerability-config', array() ); + if ( ! is_array( $settings ) ) { + $settings = array(); + } + if ( isset( $settings['log_retention'] ) ) { + $retention_raw = $settings['log_retention']; + $retention = is_scalar( $retention_raw ) ? (int) $retention_raw : 0; + if ( in_array( $retention, wpvulnerability_get_log_retention_values(), true ) ) { + return $retention; + } + } + + return $default; +} + +/** + * Register the custom post type used to store API logs. + * + * @since 4.2.0 + * + * @return void + */ +function wpvulnerability_register_log_post_type() { + register_post_type( + 'wpvulnerability_log', + array( + 'labels' => array( + 'name' => __( 'WPVulnerability Logs', 'wpvulnerability' ), + 'singular_name' => __( 'WPVulnerability Log', 'wpvulnerability' ), + ), + 'public' => false, + 'exclude_from_search' => true, + 'publicly_queryable' => false, + 'show_ui' => false, + 'show_in_menu' => false, + 'supports' => array( 'title', 'editor' ), + ) + ); +} +add_action( 'init', 'wpvulnerability_register_log_post_type' ); + +/** + * Determine whether a URL should be logged as an API call. + * + * @since 4.2.0 + * + * @param string $url Requested URL. + * + * @return bool True when the URL targets the configured API host, false otherwise. + */ +function wpvulnerability_should_log_api_request( $url ) { + if ( 0 >= wpvulnerability_log_retention_days() ) { + return false; + } + + $target_host = wp_parse_url( $url, PHP_URL_HOST ); + $api_host = wp_parse_url( WPVULNERABILITY_API_HOST, PHP_URL_HOST ); + + if ( ! is_string( $target_host ) || '' === $target_host ) { + return false; + } + + return 0 === strcasecmp( $target_host, (string) $api_host ); +} + +/** + * Convert the HTTP response into a storable string for the log entry. + * + * @since 4.2.0 + * + * @param array|WP_Error $response Response returned by wp_remote_get(). + * + * @return string Encoded response body ready for storage. + */ +function wpvulnerability_prepare_log_body( $response ) { + if ( is_wp_error( $response ) ) { + $error_data = array( + 'code' => $response->get_error_code(), + 'message' => $response->get_error_message(), + 'errors' => $response->errors, + 'data' => $response->error_data, + ); + $body = wp_json_encode( $error_data ); + if ( false === $body ) { + $body = serialize( $error_data ); // phpcs:ignore WordPress.PHP.DiscouragedPHPFunctions.serialize_serialize + } + return $body; + } + + $body = wp_remote_retrieve_body( $response ); + if ( '' === $body ) { + $encoded = wp_json_encode( array( 'message' => 'empty body' ) ); + return false !== $encoded ? $encoded : '{"message":"empty body"}'; + } + + return $body; +} + +/** + * Persist an API log entry when appropriate. + * + * @since 4.2.0 + * + * @param string $url Requested URL. + * @param array|WP_Error $response Response returned by wp_remote_get(). + * + * @return void + */ +function wpvulnerability_maybe_log_api_response( $url, $response ) { + if ( ! wpvulnerability_should_log_api_request( $url ) ) { + return; + } + + $log_id = wp_insert_post( + array( + 'post_type' => 'wpvulnerability_log', + 'post_status' => 'publish', + 'post_title' => wp_strip_all_tags( $url ), + 'post_content' => wp_slash( wpvulnerability_prepare_log_body( $response ) ), + 'post_author' => 0, + ), + true + ); + + if ( is_wp_error( $log_id ) ) { + return; + } +} + +/** + * Retrieve the pagination sizes available for the logs table. + * + * @since 4.3.0 + * + * @return int[] Array of valid per-page options. + */ +function wpvulnerability_get_log_per_page_options() { + return array( 10, 50, 100, 250, 1000 ); +} + +/** + * Retrieve the default pagination size for the logs table. + * + * @since 4.3.0 + * + * @return int Default per-page value. + */ +function wpvulnerability_get_default_log_per_page() { + return 100; +} + +/** + * Retrieve log posts for the administration table. + * + * @since 4.2.0 + * @since 4.3.0 Added the $paged argument and updated the default page size. + * + * @param int $per_page Optional. Number of logs to return per page. Default 100. + * @param int $paged Optional. Page number to retrieve. Default 1. + * + * @return WP_Post[] Array of log posts. + */ +function wpvulnerability_get_api_logs( $per_page = 100, $paged = 1 ) { + $per_page = max( 1, (int) $per_page ); + $paged = max( 1, (int) $paged ); + $offset = ( $paged - 1 ) * $per_page; + + return get_posts( + array( + 'post_type' => 'wpvulnerability_log', + 'post_status' => 'publish', + 'posts_per_page' => $per_page, + 'orderby' => 'date', + 'order' => 'DESC', + 'offset' => $offset, + 'no_found_rows' => true, + ) + ); +} + +/** + * Count the total amount of stored API log entries. + * + * @since 4.3.0 + * + * @return int Number of log posts. + */ +function wpvulnerability_count_api_logs() { + $counts = wp_count_posts( 'wpvulnerability_log' ); + + if ( ! isset( $counts->publish ) ) { + return 0; + } + + return (int) $counts->publish; +} + +/** + * Retrieve a single log entry ensuring it belongs to the plugin log post type. + * + * @since 4.2.0 + * + * @param int $log_id Log post ID. + * + * @return WP_Post|null Post object on success, null otherwise. + */ +function wpvulnerability_get_api_log( $log_id ) { + $log_id = (int) $log_id; + if ( $log_id <= 0 ) { + return null; + } + + $log = get_post( $log_id ); + if ( ! $log || 'wpvulnerability_log' !== $log->post_type ) { + return null; + } + + return $log; +} + +/** + * Format stored log content into a pretty printed JSON string when possible. + * + * @since 4.2.0 + * + * @param string $content Stored log body. + * + * @return string Formatted content. + */ +function wpvulnerability_format_log_content( $content ) { + $content = (string) $content; + if ( '' === $content ) { + return ''; + } + + $decoded = json_decode( $content, true ); + if ( null === $decoded || JSON_ERROR_NONE !== json_last_error() ) { + return $content; + } + + $pretty = wp_json_encode( $decoded, JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES ); + if ( false === $pretty ) { + return $content; + } + + return $pretty; +} + +/** + * Format the log date using the site's date and time settings. + * + * @since 4.2.0 + * + * @param WP_Post $log Log post. + * + * @return string Formatted date string. + */ +function wpvulnerability_format_log_date( WP_Post $log ) { + $date_fmt = get_option( 'date_format' ); + $time_fmt = get_option( 'time_format' ); + $format = trim( ( is_scalar( $date_fmt ) ? (string) $date_fmt : '' ) . ' ' . ( is_scalar( $time_fmt ) ? (string) $time_fmt : '' ) ); + if ( '' === $format ) { + $format = 'Y-m-d H:i:s'; + } + + return (string) mysql2date( $format, $log->post_date, true ); +} + +/** + * Delete logs that fall outside of the configured retention window. + * + * @since 4.2.0 + * + * @return void + */ +function wpvulnerability_delete_expired_logs() { + $retention = wpvulnerability_log_retention_days(); + if ( $retention <= 0 ) { + return; + } + + $threshold_ts = strtotime( '-' . $retention . ' days', time() ); + $threshold = gmdate( 'Y-m-d H:i:s', false !== $threshold_ts ? $threshold_ts : time() ); + + do { + $logs = get_posts( + array( + 'post_type' => 'wpvulnerability_log', + 'post_status' => 'publish', + 'fields' => 'ids', + 'posts_per_page' => 100, + 'orderby' => 'date', + 'order' => 'ASC', + 'no_found_rows' => true, + 'cache_results' => false, + 'update_post_term_cache' => false, + 'update_post_meta_cache' => false, + 'date_query' => array( + array( + 'before' => $threshold, + 'inclusive' => false, + ), + ), + ) + ); + + if ( empty( $logs ) ) { + break; + } + + foreach ( $logs as $log_id ) { + wp_delete_post( $log_id, true ); + } + $logs_count = count( $logs ); + } while ( $logs_count >= 100 ); +} + +add_action( 'wpvulnerability_cleanup_logs', 'wpvulnerability_delete_expired_logs' ); + +/** + * Delete all stored API logs. + * + * @since 4.3.0 + * + * @return void + */ +function wpvulnerability_delete_all_logs() { + do { + $logs = get_posts( + array( + 'post_type' => 'wpvulnerability_log', + 'post_status' => 'publish', + 'fields' => 'ids', + 'posts_per_page' => 100, + 'orderby' => 'date', + 'order' => 'ASC', + 'no_found_rows' => true, + 'cache_results' => false, + 'update_post_term_cache' => false, + 'update_post_meta_cache' => false, + ) + ); + + if ( empty( $logs ) ) { + break; + } + + foreach ( $logs as $log_id ) { + wp_delete_post( $log_id, true ); + } + $logs_count = count( $logs ); + } while ( $logs_count >= 100 ); +} + +/** + * Normalize various truthy and falsy values into the expected 'y' or 'n' format. + * + * This helper ensures that configuration options stored as booleans or integers + * in previous plugin versions are converted into the new string-based format. + * + * @since 4.1.1 + * + * @param mixed $value Value to normalize. + * + * @return string Returns 'y' when enabled, 'n' otherwise. + */ +function wpvulnerability_normalize_yes_no( $value ) { + if ( is_string( $value ) ) { + $value = strtolower( trim( (string) $value ) ); + } + + $truthy = array( 'y', 'yes', '1', 1, true, 'true', 'on' ); + + return in_array( $value, $truthy, true ) ? 'y' : 'n'; +} + +/** + * Determine if a stored yes/no value should be treated as enabled. + * + * @since 4.1.1 + * + * @param mixed $value Value to evaluate. + * + * @return bool True when enabled, false otherwise. + */ +function wpvulnerability_is_yes( $value ) { + return 'y' === wpvulnerability_normalize_yes_no( $value ); +} + +/** + * Normalize the notification configuration array. + * + * @since 4.1.1 + * + * @param mixed $notify Notification configuration values. + * + * @return array Normalized notification configuration containing 'email', 'slack', 'teams', 'discord', and 'telegram'. + */ +function wpvulnerability_normalize_notify_settings( $notify ) { + $defaults = array( + 'email' => 'n', + 'slack' => 'n', + 'teams' => 'n', + 'discord' => 'n', + 'telegram' => 'n', + ); + $normalized = array(); + + if ( is_array( $notify ) ) { + foreach ( $notify as $channel => $value ) { + $normalized[ $channel ] = wpvulnerability_normalize_yes_no( $value ); + } + } + + return array_merge( $defaults, $normalized ); +} + +/** + * Sanitize a version string. + * + * This function removes any leading or trailing whitespace from the version string + * and strips out any non-alphanumeric characters except for hyphens, underscores, and dots. + * + * @since 2.0.0 + * + * @param string|null $version The version string to sanitize. + * + * @return string The sanitized version string. + */ +function wpvulnerability_sanitize_version( $version ) { + // Remove any leading or trailing whitespace. + $version = trim( (string) $version ); + + // Strip out any non-alphanumeric characters except for hyphens, underscores, and dots. + $replaced = preg_replace( '/[^a-zA-Z0-9_\-.]+/', '', $version ); + $version = null !== $replaced ? $replaced : ''; + + // Normalize WordPress pre-release build suffixes such as "-beta1-12345" to "-beta1". + if ( preg_match( '/^(\d+\.\d+(?:\.\d+)?-(?:beta|rc)\d+)(?:-\d+)$/i', $version, $matches ) ) { + $version = $matches[1]; + } + + return $version; +} + +/** + * Sanitize a version string and validate its format. + * + * This function sanitizes the input version string and checks it against a regular expression + * to match the standard versioning format (major.minor[.patch[.build]]). It returns the matched version + * if it conforms to the expected format; otherwise, it returns the original version. + * + * @since 3.5.0 Introduced. + * + * @param string|null $version The version string to sanitize and validate. + * @return string|null The sanitized version string if it matches the standard format; otherwise, the original version string, or null when empty. + */ +function wpvulnerability_sanitize_and_validate_version( $version ) { + if ( null === $version ) { + return null; + } + + // Sanitize the version string using the base sanitizer. + $version = wpvulnerability_sanitize_version( $version ); + + if ( '' === $version ) { + return null; + } + + // Validate format (major.minor[.patch[.build]]) and sanitize. + if ( preg_match( '/^\d+\.\d+(\.\d+){0,2}(\.\d+)?/', $version, $match ) ) { + return trim( $match[0] ); + } + + return $version; +} + +/** + * Detects the version of SQLite using the SQLite3 extension or system commands. + * + * Uses a hybrid detection approach: + * 1. PHP SQLite3 extension (most secure, reliability 90) + * 2. PDO SQLite (secondary secure method, reliability 90) + * 3. shell_exec commands (most accurate, reliability 95) + * 4. Binary existence check (basic fallback, reliability 30) + * + * @since 3.5.0 Introduced. + * @since 4.3.0 Enhanced with hybrid detection and reliability scoring. + * + * @return array{version: string|null, method: string, reliability: int, attempts: list} + */ +function wpvulnerability_detect_sqlite() { + $result = array( + 'version' => null, + 'method' => 'none', + 'reliability' => 0, + 'attempts' => array(), + ); + + // Method 1: PHP SQLite3 extension (most secure). + if ( class_exists( 'SQLite3' ) ) { + $result['attempts'][] = 'sqlite3_extension'; + + try { + $sqlite = new SQLite3( ':memory:' ); + $version_info = $sqlite->version(); + + if ( isset( $version_info['versionString'] ) ) { + $version = $version_info['versionString']; + if ( preg_match( '/-(\d+)$/', $version, $suffix_matches ) ) { + $version = preg_replace( '/-(\d+)$/', '.' . $suffix_matches[1], $version ); + } + $version = wpvulnerability_sanitize_and_validate_version( $version ); + + if ( $version ) { + $result['version'] = $version; + $result['method'] = 'sqlite3_extension'; + $result['reliability'] = 90; + return $result; + } + } + } catch ( Exception $e ) { + wpvulnerability_maybe_log( 'SQLite3 extension detection failed', array( 'error' => $e->getMessage() ) ); + } + } + + // Method 2: PDO SQLite extension (secondary secure method). + if ( ! class_exists( 'SQLite3' ) && class_exists( 'PDO' ) ) { + $result['attempts'][] = 'pdo_sqlite'; + + $drivers = \PDO::getAvailableDrivers(); // phpcs:ignore WordPress.DB.DirectDatabaseQuery.DirectQuery,WordPress.DB.DirectDatabaseQuery.NoCaching,WordPress.DB.RestrictedClasses.mysql__PDO + + if ( in_array( 'sqlite', $drivers, true ) ) { + try { + $pdo = new \PDO( 'sqlite::memory:' ); // phpcs:ignore WordPress.DB.DirectDatabaseQuery.DirectQuery,WordPress.DB.DirectDatabaseQuery.NoCaching,WordPress.DB.RestrictedClasses.mysql__PDO + $pdo->setAttribute( \PDO::ATTR_ERRMODE, \PDO::ERRMODE_EXCEPTION ); // phpcs:ignore WordPress.DB.DirectDatabaseQuery.DirectQuery,WordPress.DB.DirectDatabaseQuery.NoCaching,WordPress.DB.RestrictedClasses.mysql__PDO + $statement = $pdo->query( 'SELECT sqlite_version()' ); // phpcs:ignore WordPress.DB.DirectDatabaseQuery.DirectQuery,WordPress.DB.DirectDatabaseQuery.NoCaching,WordPress.DB.RestrictedClasses.mysql__PDO + + if ( $statement ) { + $version_result = $statement->fetchColumn(); + + if ( false !== $version_result ) { + $version = (string) $version_result; + if ( preg_match( '/-(\d+)$/', $version, $suffix_matches ) ) { + $version = preg_replace( '/-(\d+)$/', '.' . $suffix_matches[1], $version ); + } + $version = wpvulnerability_sanitize_and_validate_version( $version ); + + if ( $version ) { + $result['version'] = $version; + $result['method'] = 'pdo_sqlite'; + $result['reliability'] = 90; + + $pdo = null; + return $result; + } + } + } + + $pdo = null; + } catch ( Exception $exception ) { + wpvulnerability_maybe_log( 'PDO SQLite detection failed', array( 'error' => $exception->getMessage() ) ); + if ( isset( $pdo ) ) { + $pdo = null; + } + } + } + } + + // Method 3: shell_exec command (most accurate). + if ( wpvulnerability_can_shell_exec( 'sqlite' ) ) { + $result['attempts'][] = 'shell_sqlite3'; + + $version_output = wpvulnerability_safe_shell_exec( 'sqlite', 'sqlite3 --version' ); + + if ( ! empty( $version_output ) && preg_match( '/(\d+\.\d+(?:\.\d+)?(?:-\d+)?)/', $version_output, $matches ) ) { + $version = $matches[1]; + if ( preg_match( '/-(\d+)$/', $version, $suffix_matches ) ) { + $version = preg_replace( '/-(\d+)$/', '.' . $suffix_matches[1], $version ); + } + $version = wpvulnerability_sanitize_and_validate_version( $version ); + + if ( $version ) { + $result['version'] = $version; + $result['method'] = 'shell_exec'; + $result['reliability'] = 95; + return $result; + } + } + } + + // Method 4: Binary existence check (basic fallback). + if ( wpvulnerability_can_shell_exec( 'sqlite' ) ) { + $result['attempts'][] = 'which_sqlite3'; + + $which_output = wpvulnerability_safe_shell_exec( 'sqlite', 'which sqlite3' ); + + if ( ! empty( $which_output ) ) { + $result['version'] = 'unknown'; + $result['method'] = 'binary_exists'; + $result['reliability'] = 30; + return $result; + } + } + + return $result; +} + +/** + * Detects the version of Redis using the Redis extension or system commands. + * + * Uses a hybrid detection approach: + * 1. PHP Redis extension (most secure, reliability 90) + * 2. shell_exec commands (most accurate, reliability 95) + * 3. Binary existence check (basic fallback, reliability 30) + * + * @since 3.5.0 Introduced. + * @since 4.3.0 Enhanced with hybrid detection and reliability scoring. + * + * @return array{version: string|null, method: string, reliability: int, attempts: list} + */ +function wpvulnerability_detect_redis() { + $result = array( + 'version' => null, + 'method' => 'none', + 'reliability' => 0, + 'attempts' => array(), + ); + + // Method 1: PHP Redis extension (most secure). + if ( class_exists( 'Redis' ) ) { + $result['attempts'][] = 'redis_extension'; + + $redis_client = null; + $temporary_connection = false; + + // Attempt to reuse an existing Redis connection from WordPress object cache implementations. + $cache_instance = null; + if ( function_exists( 'wp_cache_get_instance' ) ) { + $cache_instance = wp_cache_get_instance(); + } elseif ( isset( $GLOBALS['wp_object_cache'] ) && is_object( $GLOBALS['wp_object_cache'] ) ) { + $cache_instance = $GLOBALS['wp_object_cache']; + } + + if ( is_object( $cache_instance ) ) { + foreach ( array( 'redis', 'redis_client', 'client', 'redis_instance', 'connection' ) as $property ) { + if ( isset( $cache_instance->{$property} ) && $cache_instance->{$property} instanceof Redis ) { + $redis_client = $cache_instance->{$property}; + break; + } + } + + if ( ! $redis_client instanceof Redis ) { + foreach ( array( 'get_redis', 'get_client', 'redis', 'redis_instance' ) as $method ) { + if ( ! method_exists( $cache_instance, $method ) ) { + continue; + } + + try { + $reflection_method = new ReflectionMethod( $cache_instance, $method ); + if ( $reflection_method->getNumberOfRequiredParameters() > 0 || ! $reflection_method->isPublic() ) { + continue; + } + } catch ( ReflectionException $exception ) { + continue; + } + + if ( ! is_callable( array( $cache_instance, $method ) ) ) { + continue; + } + + $maybe_client = $cache_instance->{$method}(); + if ( $maybe_client instanceof Redis ) { + $redis_client = $maybe_client; + break; + } + } + } + } + + if ( ! $redis_client instanceof Redis ) { + $redis_client = new Redis(); + $temporary_connection = true; + + $host = defined( 'WP_REDIS_HOST' ) ? (string) WP_REDIS_HOST : '127.0.0.1'; + $port = defined( 'WP_REDIS_PORT' ) ? (int) WP_REDIS_PORT : 6379; + $timeout = defined( 'WP_REDIS_TIMEOUT' ) ? (float) WP_REDIS_TIMEOUT : 0.0; + $connected = false; + + try { + if ( defined( 'WP_REDIS_PATH' ) && '' !== (string) WP_REDIS_PATH ) { + $connected = $redis_client->connect( (string) WP_REDIS_PATH ); + } elseif ( $timeout > 0 ) { + $connected = $redis_client->connect( $host, $port, $timeout ); + } else { + $connected = $redis_client->connect( $host, $port ); + } + + if ( $connected ) { + $username = defined( 'WP_REDIS_USERNAME' ) ? (string) WP_REDIS_USERNAME : ''; + $password = null; + if ( defined( 'WP_REDIS_PASSWORD' ) ) { + $password = (string) WP_REDIS_PASSWORD; + } elseif ( defined( 'WP_REDIS_AUTH' ) ) { + $password = (string) WP_REDIS_AUTH; + } + + if ( '' !== $username && null !== $password ) { + $redis_client->auth( array( $username, $password ) ); + } elseif ( null !== $password && '' !== $password ) { + $redis_client->auth( $password ); + } + + if ( defined( 'WP_REDIS_DATABASE' ) ) { + $redis_client->select( (int) WP_REDIS_DATABASE ); + } + } else { + $redis_client = null; + $temporary_connection = false; + } + } catch ( RedisException $e ) { + $redis_client = null; + $temporary_connection = false; + } catch ( Exception $e ) { + $redis_client = null; + $temporary_connection = false; + } + } + + if ( $redis_client instanceof Redis ) { + try { + $redis_info = $redis_client->info(); + + if ( isset( $redis_info['redis_version'] ) ) { + $version = $redis_info['redis_version']; + if ( preg_match( '/-(\d+)$/', $version, $suffix_matches ) ) { + $version = preg_replace( '/-(\d+)$/', '.' . $suffix_matches[1], $version ); + } + $version = wpvulnerability_sanitize_and_validate_version( $version ); + + if ( $version ) { + $result['version'] = $version; + $result['method'] = 'redis_extension'; + $result['reliability'] = 90; + + if ( $temporary_connection ) { + $redis_client->close(); + } + + return $result; + } + } + } catch ( RedisException $e ) { + wpvulnerability_maybe_log( + 'Redis extension available but info() call failed', + array( + 'exception' => array( + 'code' => $e->getCode(), + 'message' => $e->getMessage(), + ), + ) + ); + } catch ( Exception $e ) { + wpvulnerability_maybe_log( + 'Redis detection failed', + array( + 'exception' => array( + 'code' => $e->getCode(), + 'message' => $e->getMessage(), + ), + ) + ); + } finally { + if ( $temporary_connection ) { + $redis_client->close(); + } + } + } + } + + // Method 2: shell_exec command (most accurate). + if ( wpvulnerability_can_shell_exec( 'redis' ) ) { + $result['attempts'][] = 'shell_redis_server'; + + $version_output = wpvulnerability_safe_shell_exec( 'redis', 'redis-server --version' ); + + if ( ! empty( $version_output ) && preg_match( '/redis-server\s+v=([\d.]+)/i', $version_output, $matches ) ) { + $version = $matches[1]; + if ( preg_match( '/-(\d+)$/', $version, $suffix_matches ) ) { + $version = preg_replace( '/-(\d+)$/', '.' . $suffix_matches[1], $version ); + } + $version = wpvulnerability_sanitize_and_validate_version( $version ); + + if ( $version ) { + $result['version'] = $version; + $result['method'] = 'shell_exec'; + $result['reliability'] = 95; + return $result; + } + } + } + + // Method 3: Binary existence check (basic fallback). + if ( wpvulnerability_can_shell_exec( 'redis' ) ) { + $result['attempts'][] = 'which_redis_server'; + + $which_output = wpvulnerability_safe_shell_exec( 'redis', 'which redis-server' ); + + if ( ! empty( $which_output ) ) { + $result['version'] = 'unknown'; + $result['method'] = 'binary_exists'; + $result['reliability'] = 30; + return $result; + } + } + + return $result; +} + +/** + * Normalizes Memcached version information returned by PHP extensions. + * + * @since 4.1.7 + * + * @param mixed $version_info Version information as returned by Memcached::getVersion() or Memcache::getVersion(). + * @return string|null Normalized version string or null when it cannot be determined. + */ +function wpvulnerability_normalize_memcached_version_info( $version_info ) { + $reported_versions = array(); + + if ( is_array( $version_info ) ) { + $reported_versions = $version_info; + } elseif ( is_string( $version_info ) ) { + $trimmed_version = trim( $version_info ); + if ( '' !== $trimmed_version ) { + $reported_versions = array( $trimmed_version ); + } + } + + foreach ( $reported_versions as $reported_version ) { + if ( ! is_scalar( $reported_version ) ) { + continue; + } + $reported_version = trim( (string) $reported_version ); + + if ( '' === $reported_version || '255.255.255' === $reported_version ) { + continue; + } + + if ( preg_match( '/-(\d+)$/', $reported_version, $suffix_matches ) ) { + $reported_version = preg_replace( '/-(\d+)$/', '.' . $suffix_matches[1], $reported_version ); + } + + return $reported_version; + } + + return null; +} + +/** + * Detects the version of Memcached using the Memcached extension or system commands. + * + * Uses a hybrid detection approach: + * 1. PHP Memcached/Memcache extension (most secure, reliability 90) + * 2. shell_exec commands (most accurate, reliability 95) + * 3. Binary existence check (basic fallback, reliability 30) + * + * @since 3.5.0 Introduced. + * @since 4.3.0 Enhanced with hybrid detection and reliability scoring. + * + * @return array{version: string|null, method: string, reliability: int, attempts: list} + */ +function wpvulnerability_detect_memcached() { + $result = array( + 'version' => null, + 'method' => 'none', + 'reliability' => 0, + 'attempts' => array(), + ); + + // Method 1: PHP Memcached extension (most secure). + if ( class_exists( 'Memcached' ) ) { + $result['attempts'][] = 'memcached_extension'; + + try { + $memcached = new Memcached(); + $version_info = $memcached->getVersion(); + $version = wpvulnerability_normalize_memcached_version_info( $version_info ); + + if ( empty( $version ) ) { + $servers = $memcached->getServerList(); + + if ( ! empty( $servers ) ) { + $memcached->resetServerList(); + + foreach ( $servers as $server ) { + if ( ! is_array( $server ) || empty( $server['host'] ) ) { + continue; + } + + $host_raw = $server['host']; + $host = is_scalar( $host_raw ) ? (string) $host_raw : ''; + $port_raw = $server['port'] ?? 11211; + $port = is_scalar( $port_raw ) ? (int) $port_raw : 11211; + $weight_raw = $server['weight'] ?? 0; + $weight = is_scalar( $weight_raw ) ? (int) $weight_raw : 0; + + $memcached->addServer( $host, $port, $weight ); + } + + $version_info = $memcached->getVersion(); + $version = wpvulnerability_normalize_memcached_version_info( $version_info ); + } + } + + if ( $version ) { + $version = wpvulnerability_sanitize_and_validate_version( $version ); + if ( $version ) { + $result['version'] = $version; + $result['method'] = 'memcached_extension'; + $result['reliability'] = 90; + return $result; + } + } + } catch ( MemcachedException $e ) { + // Extension available but service not running. + unset( $memcached ); + } catch ( Exception $e ) { + unset( $memcached ); + } + } + + // Try legacy Memcache extension. + if ( class_exists( 'Memcache' ) ) { + $result['attempts'][] = 'memcache_extension'; + + try { + $memcache = new Memcache(); + $version_info = $memcache->getVersion(); + $version = wpvulnerability_normalize_memcached_version_info( $version_info ); + + if ( $version ) { + $version = wpvulnerability_sanitize_and_validate_version( $version ); + if ( $version ) { + $result['version'] = $version; + $result['method'] = 'memcache_extension'; + $result['reliability'] = 90; + return $result; + } + } + } catch ( Exception $e ) { + unset( $memcache ); + } + } + + // Method 2: shell_exec command (most accurate). + if ( wpvulnerability_can_shell_exec( 'memcached' ) ) { + $result['attempts'][] = 'shell_memcached'; + + $version_output = wpvulnerability_safe_shell_exec( 'memcached', 'memcached -h' ); + + if ( ! empty( $version_output ) && preg_match( '/memcached\s+(\d+\.\d+(?:\.\d+)?(?:-\d+)?)/i', $version_output, $matches ) ) { + $version = $matches[1]; + if ( preg_match( '/-(\d+)$/', $version, $suffix_matches ) ) { + $version = preg_replace( '/-(\d+)$/', '.' . $suffix_matches[1], $version ); + } + $version = wpvulnerability_sanitize_and_validate_version( $version ); + + if ( $version ) { + $result['version'] = $version; + $result['method'] = 'shell_exec'; + $result['reliability'] = 95; + return $result; + } + } + } + + // Method 3: Binary existence check (basic fallback). + if ( wpvulnerability_can_shell_exec( 'memcached' ) ) { + $result['attempts'][] = 'which_memcached'; + + $which_output = wpvulnerability_safe_shell_exec( 'memcached', 'which memcached' ); + + if ( ! empty( $which_output ) ) { + $result['version'] = 'unknown'; + $result['method'] = 'binary_exists'; + $result['reliability'] = 30; + return $result; + } + } + + return $result; +} + +/** + * Detects the installed PHP version using available runtime information. + * + * @since 2.0.0 + * + * @return string|null The detected PHP version in N.n or N.n.n format, or null if unavailable. + */ +function wpvulnerability_detect_php() { + // Initialize the version variable. + $version = null; + + // First method: use the PHP_VERSION constant. + if ( defined( 'PHP_VERSION' ) ) { + $version = PHP_VERSION; + } + + // First method: use the phpversion function. + if ( empty( $version ) && function_exists( 'phpversion' ) ) { + $version = phpversion(); + } + + // Second method: use system commands if the first fails and shell_exec is available. + if ( empty( $version ) && wpvulnerability_can_shell_exec() ) { + // Command to check PHP version. + $version_output = shell_exec( escapeshellcmd( 'php -v' ) ); // phpcs:ignore + + if ( ! empty( $version_output ) && preg_match( '/PHP\s+(\d+\.\d+(?:\.\d+)?(?:-\d+)?)/i', $version_output, $matches ) ) { + $version = $matches[1]; + // Replace "-N" at the end with ".N" if present. + if ( preg_match( '/-(\d+)$/', $version, $suffix_matches ) ) { + $version = preg_replace( '/-(\d+)$/', '.' . $suffix_matches[1], $version ); + } + } + } + + // Return the sanitized and validated PHP version or null if it cannot be detected. + return wpvulnerability_sanitize_and_validate_version( $version ); +} + +/** + * Detects the version of cURL using the cURL extension or system commands. + * + * @since 3.5.0 Introduced. + * + * @return string|null The version of cURL in the format N.n.n, N.n, etc., or null if it cannot be detected. + */ +function wpvulnerability_detect_curl() { + // Product name for consistency. + $version = null; + + // First method: use the cURL extension of PHP. + if ( function_exists( 'curl_version' ) ) { + $curl_info = curl_version(); + $version = isset( $curl_info['version'] ) ? $curl_info['version'] : null; + } + + // Second method: use system commands if the first fails and shell_exec is available. + if ( empty( $version ) && wpvulnerability_can_shell_exec() ) { + // Command to check cURL version. + $version_output = shell_exec( escapeshellcmd( 'curl --version' ) ); // phpcs:ignore + + if ( ! empty( $version_output ) && preg_match( '/curl\s+(\d+\.\d+(?:\.\d+)?(?:-\d+)?)/i', $version_output, $matches ) ) { + $version = $matches[1]; + // Replace "-N" at the end with ".N" if present. + if ( preg_match( '/-(\d+)$/', $version, $suffix_matches ) ) { + $version = preg_replace( '/-(\d+)$/', '.' . $suffix_matches[1], $version ); + } + } + } + + // Return the sanitized and validated version or null if it cannot be detected. + return wpvulnerability_sanitize_and_validate_version( $version ); +} + +/** + * Detects the version of ImageMagick using the Imagick extension or system commands. + * + * Uses a hybrid detection approach: + * 1. PHP Imagick extension (most secure, reliability 90) + * 2. shell_exec commands (most accurate, reliability 95-100) + * 3. Binary existence check (basic fallback, reliability 30) + * + * @since 3.5.0 Introduced. + * @since 4.3.0 Enhanced with hybrid detection and reliability scoring. + * @since 5.0.0 Version regex updated to handle IMEI-installed ImageMagick builds + * (format: `ImageMagick (IMEI - ...) 7.x.y-z`). + * + * @return array{version: string|null, method: string, reliability: int, attempts: list} + */ +function wpvulnerability_detect_imagemagick() { + $result = array( + 'version' => null, + 'method' => 'none', + 'reliability' => 0, + 'attempts' => array(), + ); + + // Method 1: PHP Imagick extension (most secure). + if ( extension_loaded( 'imagick' ) && class_exists( 'Imagick' ) ) { + $result['attempts'][] = 'imagick_extension'; + + try { + $imagick = new Imagick(); + $version_info = $imagick->getVersion(); + + if ( preg_match( '/ImageMagick(?:\s*\([^)]+\))?\s+(\d+\.\d+(?:\.\d+)?(?:-\d+)?)/i', $version_info['versionString'], $matches ) ) { + $version = $matches[1]; + if ( preg_match( '/-(\d+)$/', $version, $suffix_matches ) ) { + $version = preg_replace( '/-(\d+)$/', '.' . $suffix_matches[1], $version ); + } + $version = wpvulnerability_sanitize_and_validate_version( $version ); + + if ( $version ) { + $result['version'] = $version; + $result['method'] = 'imagick_extension'; + $result['reliability'] = 90; + return $result; + } + } + } catch ( \ImagickException $exception ) { + wpvulnerability_maybe_log( + 'ImageMagick version detection via the Imagick PHP extension failed.', + array( + 'exception' => get_class( $exception ), + 'error' => $exception->getMessage(), + ) + ); + } + } + + // Method 2: shell_exec commands (most accurate). + if ( wpvulnerability_can_shell_exec( 'imagemagick' ) ) { + $commands = array( 'magick -version', 'convert -version', 'identify -version' ); + + foreach ( $commands as $cmd ) { + $result['attempts'][] = 'shell_' . explode( ' ', $cmd )[0]; + + $version_output = wpvulnerability_safe_shell_exec( 'imagemagick', $cmd ); + + if ( ! empty( $version_output ) && preg_match( '/ImageMagick(?:\s*\([^)]+\))?\s+(\d+\.\d+(?:\.\d+)?(?:-\d+)?)/i', $version_output, $matches ) ) { + $version = $matches[1]; + if ( preg_match( '/-(\d+)$/', $version, $suffix_matches ) ) { + $version = preg_replace( '/-(\d+)$/', '.' . $suffix_matches[1], $version ); + } + $version = wpvulnerability_sanitize_and_validate_version( $version ); + + if ( $version ) { + $result['version'] = $version; + $result['method'] = 'shell_exec'; + $result['reliability'] = 95; + return $result; + } + } + } + } + + // Method 3: Binary existence check (basic fallback). + if ( wpvulnerability_can_shell_exec( 'imagemagick' ) ) { + $binaries = array( 'convert', 'magick', 'identify' ); + + foreach ( $binaries as $binary ) { + $result['attempts'][] = 'which_' . $binary; + + $which_output = wpvulnerability_safe_shell_exec( 'imagemagick', 'which ' . $binary ); + + if ( ! empty( $which_output ) ) { + $result['version'] = 'unknown'; + $result['method'] = 'binary_exists'; + $result['reliability'] = 30; + return $result; + } + } + } + + return $result; +} + +/** + * Retrieves the Apache HTTP Server version using available PHP APIs. + * + * The version is first gathered using the {@see apache_get_version()} function if it exists. The detected + * version is sanitized and validated to ensure it matches the expected `major.minor.patch` format. The numeric + * portion is extracted before sanitization so that decorated version strings are normalized. A filter + * allows overriding the detected version, which is helpful for testing environments where the Apache API is + * unavailable. + * + * @since 4.1.7 + * + * @return string|null The sanitized Apache version or null when it cannot be determined. + */ +function wpvulnerability_get_apache_version() { + $apache_version = null; + $normalize_apache_version = static function ( $value ) { + if ( ! is_string( $value ) ) { + return null; + } + + $value = trim( $value ); + + if ( '' === $value ) { + return null; + } + + if ( preg_match( '/(\d+\.\d+(?:\.\d+){0,2})/', $value, $matches ) ) { + $value = $matches[1]; + } + + $value = wpvulnerability_sanitize_and_validate_version( $value ); + + if ( null === $value ) { + return null; + } + + if ( ! preg_match( '/^\d/', $value ) ) { + return null; + } + + return $value; + }; + + if ( function_exists( 'apache_get_version' ) ) { + $raw_version = apache_get_version(); + + if ( is_string( $raw_version ) ) { + $apache_version = $normalize_apache_version( $raw_version ); + } + } + + /** + * Filter the detected Apache version. + * + * This filter allows overriding the detected Apache HTTP Server version. Returning a falsy value will cause + * the detection routine to fall back to other discovery mechanisms. + * + * @since 4.1.7 + * + * @param string|null $apache_version The sanitized Apache version, or null if detection failed. + */ + $apache_version = apply_filters( 'wpvulnerability_detect_webserver_apache_version', $apache_version ); + + if ( null !== $apache_version ) { + $apache_version = $normalize_apache_version( $apache_version ); + } + + return $apache_version; +} + +/** + * Detects the web server software and version from the SERVER_SOFTWARE server variable. + * + * This function attempts to identify the web server software (e.g., Apache, nginx) and its version + * based on the 'SERVER_SOFTWARE' environment variable provided by the server. It uses regular expressions + * to parse the web server name and version. The function also sanitizes the detected version number + * to a standard format (major.minor.patch). + * + * @since 3.2.0 Introduced. + * + * @return array{id: string|null, name: string|null, version: string|null} Web server information. + */ +function wpvulnerability_detect_webserver() { + // Initialize an array to hold the web server information. + $webserver = array( + 'id' => null, + 'name' => null, + 'version' => null, + ); + + $apache_version = wpvulnerability_get_apache_version(); + + if ( null !== $apache_version ) { + $webserver['id'] = 'apache'; + $webserver['name'] = 'Apache HTTPD'; + $webserver['version'] = $apache_version; + + return $webserver; + } + + // Check if the SERVER_SOFTWARE variable is set. + if ( isset( $_SERVER['SERVER_SOFTWARE'] ) ) { + // Trim and sanitize the server software string. + $server_sw_raw = $_SERVER['SERVER_SOFTWARE']; // phpcs:ignore + $webserver_software = trim( wp_kses( is_string( $server_sw_raw ) ? wp_unslash( $server_sw_raw ) : '', 'strip' ) ); + + // Use regular expressions to extract the web server name and version. + if ( preg_match( '/^([^\s\/]+)\/?([^\s]*)/', $webserver_software, $matches ) ) { + $webserver['name'] = trim( (string) $matches[1] ); + $webserver['version'] = trim( (string) $matches[2] ); + + // Replace "-N" at the end of the version with ".N" if present. + if ( preg_match( '/-(\d+)$/', $webserver['version'], $suffix_matches ) ) { + $webserver['version'] = preg_replace( '/-(\d+)$/', '.' . $suffix_matches[1], $webserver['version'] ); + } + } + } + + // Normalize and set the web server ID based on the detected name. + if ( ! empty( $webserver['name'] ) ) { + $normalized_name = strtolower( (string) $webserver['name'] ); + $webserver['id'] = trim( (string) preg_replace( '/[^a-z0-9]+/', '-', $normalized_name ), '-' ); + switch ( $normalized_name ) { + case 'httpd': + case 'apache': + $webserver['id'] = 'apache'; + $webserver['name'] = 'Apache HTTPD'; + break; + case 'nginx': + $webserver['id'] = 'nginx'; + $webserver['name'] = 'nginx'; + break; + case 'openresty': + $webserver['id'] = 'nginx'; + $webserver['name'] = 'OpenResty'; + break; + case 'tengine': + $webserver['id'] = 'nginx'; + $webserver['name'] = 'Tengine'; + break; + // Additional web servers can be added here. + } + } + + // If the version is not detected, try to get it from the OS. + if ( empty( $webserver['version'] ) && wpvulnerability_can_shell_exec() ) { + if ( 'apache' === $webserver['id'] ) { + $apache_version = shell_exec( escapeshellcmd( 'apache2 -v 2>&1' ) ); // phpcs:ignore + if ( empty( $apache_version ) ) { + $apache_version = shell_exec( escapeshellcmd( 'httpd -v 2>&1' ) ); // phpcs:ignore + } + if ( ! empty( $apache_version ) && preg_match( '/Apache\/([\d.]+)/', $apache_version, $version_matches ) ) { + $webserver['version'] = $version_matches[1]; + // Replace "-N" at the end with ".N" if present. + if ( preg_match( '/-(\d+)$/', $webserver['version'], $suffix_matches ) ) { + $webserver['version'] = preg_replace( '/-(\d+)$/', '.' . $suffix_matches[1], $webserver['version'] ); + } + } + } elseif ( 'nginx' === $webserver['id'] ) { + $nginx_version = shell_exec( escapeshellcmd( 'nginx -v 2>&1' ) ); // phpcs:ignore + if ( ! empty( $nginx_version ) && preg_match( '/nginx\/([\d.]+)/', $nginx_version, $version_matches ) ) { + $webserver['version'] = $version_matches[1]; + // Replace "-N" at the end with ".N" if present. + if ( preg_match( '/-(\d+)$/', $webserver['version'], $suffix_matches ) ) { + $webserver['version'] = preg_replace( '/-(\d+)$/', '.' . $suffix_matches[1], $webserver['version'] ); + } + } else { + $angie_version = shell_exec( escapeshellcmd( 'angie -v 2>&1' ) ); // phpcs:ignore + if ( ! empty( $angie_version ) && preg_match( '/angie\/([\d.]+)/', $angie_version, $version_matches ) ) { + $webserver['version'] = $version_matches[1]; + // Replace "-N" at the end with ".N" if present. + if ( preg_match( '/-(\d+)$/', $webserver['version'], $suffix_matches ) ) { + $webserver['version'] = preg_replace( '/-(\d+)$/', '.' . $suffix_matches[1], $webserver['version'] ); + } + } + } + } + } + + // Sanitize and validate the web server version format. + if ( null !== $webserver['version'] && '' !== $webserver['version'] ) { + // Sanitize the version number to ensure it's in a 'major.minor.patch' format. + $webserver['version'] = wpvulnerability_sanitize_and_validate_version( $webserver['version'] ); + + if ( null !== $webserver['version'] && ! preg_match( '/^\d+(?:\.\d+)*$/', $webserver['version'] ) ) { + $webserver['version'] = null; + } + } + + // Return the detected web server information. + return $webserver; +} + +/** + * Fires plugin and legacy hooks when the database reports an error. + * + * @since 4.3.0 + * + * @param string $last_error The database error message. + * + * @return void + */ +function wpvulnerability_handle_wpdb_last_error( $last_error ) { + $last_error = trim( (string) $last_error ); + + if ( '' === $last_error ) { + return; + } + + /** + * Fires when WPVulnerability detects a database error while debugging is enabled. + * + * @since 4.3.0 + * + * @param string $last_error The database error message. + */ + do_action( 'wpvulnerability_wpdb_last_error', $last_error ); + + // Preserve backward compatibility with the legacy hook name. + do_action_deprecated( 'wpdb_last_error', array( $last_error ), '4.3.0', 'wpvulnerability_wpdb_last_error' ); // phpcs:ignore WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedHooknameFound +} + +/** + * Detects the SQL server software and version from the database server. + * + * This function identifies the SQL server software (e.g., MariaDB, MySQL) and its version + * by querying the database using the 'SHOW VARIABLES' command. It parses the server name + * and version using the results and sanitizes the detected version number to a standard format (major.minor.patch). + * + * @since 3.4.0 + * + * @return array{id: string|null, name: string|null, version: string|null} SQL server information. + */ +function wpvulnerability_detect_sqlserver() { + // Initialize an array to hold the SQL server information. + $sqlserver = array( + 'id' => null, + 'name' => null, + 'version' => null, + ); + + global $wpdb; + + $version_source = ''; + $server_info_string = ''; + + // Query to get the database server type (version_comment). + $database_results = $wpdb->get_results( $wpdb->prepare( 'SHOW VARIABLES LIKE %s', 'version_comment' ) ); // phpcs:ignore + if ( $wpdb->last_error && defined( 'WP_DEBUG' ) && WP_DEBUG ) { + wpvulnerability_handle_wpdb_last_error( $wpdb->last_error ); + } + + // Process the results to determine the database type. + if ( ! empty( $database_results ) && isset( $database_results[0]->Value ) ) { + $possible_database = trim( (string) $database_results[0]->Value ); + + if ( false !== stripos( $possible_database, 'mariadb' ) ) { + $sqlserver['id'] = 'mariadb'; + $sqlserver['name'] = 'MariaDB'; + } elseif ( false !== stripos( $possible_database, 'mysql' ) ) { + $sqlserver['id'] = 'mysql'; + $sqlserver['name'] = 'MySQL'; + } + } + + // Query to get the database server version. + $version_results = $wpdb->get_results( $wpdb->prepare( 'SHOW VARIABLES LIKE %s', 'version' ) ); // phpcs:ignore + if ( $wpdb->last_error && defined( 'WP_DEBUG' ) && WP_DEBUG ) { + wpvulnerability_handle_wpdb_last_error( $wpdb->last_error ); + } + + if ( ! empty( $version_results ) && isset( $version_results[0]->Value ) ) { + $version_source = trim( (string) $version_results[0]->Value ); + } + + if ( empty( $sqlserver['id'] ) ) { + $server_info_string = trim( (string) $wpdb->db_server_info() ); + + if ( '' === $server_info_string ) { + $server_info_string = $wpdb->get_var( 'SELECT VERSION()' ); // phpcs:ignore + if ( $wpdb->last_error && defined( 'WP_DEBUG' ) && WP_DEBUG ) { + wpvulnerability_handle_wpdb_last_error( $wpdb->last_error ); + } + $server_info_string = is_string( $server_info_string ) ? trim( $server_info_string ) : ''; + } + + if ( '' !== $server_info_string ) { + if ( false !== stripos( $server_info_string, 'mariadb' ) ) { + $sqlserver['id'] = 'mariadb'; + $sqlserver['name'] = 'MariaDB'; + } elseif ( false !== stripos( $server_info_string, 'mysql' ) ) { + $sqlserver['id'] = 'mysql'; + $sqlserver['name'] = 'MySQL'; + } + + if ( '' === $version_source ) { + $version_source = $server_info_string; + } + } + } + + if ( '' !== $version_source ) { + if ( preg_match( '/(\d+\.\d+\.\d+(?:-\d+)?)/', $version_source, $match ) || + preg_match( '/(\d+\.\d+(?:-\d+)?)/', $version_source, $match ) ) { + $sqlserver['version'] = $match[1]; + } elseif ( 'mysql' === $sqlserver['id'] ) { + // Fallback to the entire version string if regex doesn't match. + $sqlserver['version'] = $version_source; + } + } + + // Replace "-N" at the end with ".N" if present. + if ( ! empty( $sqlserver['version'] ) && preg_match( '/-(\d+)$/', $sqlserver['version'], $suffix_matches ) ) { + $sqlserver['version'] = preg_replace( '/-(\d+)$/', '.' . $suffix_matches[1], $sqlserver['version'] ); + } + + // Sanitize and validate the version format. + if ( ! empty( $sqlserver['version'] ) ) { + $sqlserver['version'] = wpvulnerability_sanitize_and_validate_version( $sqlserver['version'] ); + } + + // Return the detected SQL server information. + return $sqlserver; +} + +/** + * Returns a human-readable HTML entity for the given comparison operator. + * + * This function takes a comparison operator in string format and returns + * its corresponding HTML entity for better readability in web contexts. + * + * @since 2.0.0 + * + * @param string $op The operator string to prettify. + * + * @return string The pretty operator HTML string. + */ +function wpvulnerability_pretty_operator( $op ) { + // Normalize the operator string to lowercase and trim whitespace. + $op = trim( strtolower( (string) $op ) ); + + // Define an associative array mapping operators to their HTML entities. + $operator_map = array( + 'lt' => '< ', // Less than. + 'le' => '≤ ', // Less than or equal to. + 'gt' => '> ', // Greater than. + 'ge' => '≥ ', // Greater than or equal to. + 'eq' => '= ', // Equal to. + 'ne' => '≠ ', // Not equal to. + ); + + // Return the corresponding HTML entity, or the original operator if not recognized. + return isset( $operator_map[ $op ] ) ? $operator_map[ $op ] : $op; +} + +/** + * Returns a human-readable severity level. + * + * This function takes a severity string and returns a human-readable + * severity level, localized for translation. + * + * @since 2.0.0 + * + * @param string $severity The severity string to prettify. + * + * @return string The human-readable severity string. + */ +function wpvulnerability_severity( $severity ) { + // Normalize the severity string to lowercase and trim whitespace. + $severity = trim( strtolower( (string) $severity ) ); + + // Define an associative array mapping severity codes to their human-readable equivalents. + // Handles both legacy single-char codes (cvss.severity) and full-word values (cvss3.severity). + $severity_map = array( + 'n' => __( 'None', 'wpvulnerability' ), + 'none' => __( 'None', 'wpvulnerability' ), + 'l' => __( 'Low', 'wpvulnerability' ), + 'low' => __( 'Low', 'wpvulnerability' ), + 'm' => __( 'Medium', 'wpvulnerability' ), + 'medium' => __( 'Medium', 'wpvulnerability' ), + 'h' => __( 'High', 'wpvulnerability' ), + 'high' => __( 'High', 'wpvulnerability' ), + 'c' => __( 'Critical', 'wpvulnerability' ), + 'critical' => __( 'Critical', 'wpvulnerability' ), + ); + + // Return the corresponding human-readable severity, or the original if not recognized. + return isset( $severity_map[ $severity ] ) ? $severity_map[ $severity ] : $severity; +} + +/** + * Retrieves vulnerabilities information from the API. + * + * This function fetches vulnerability information based on the provided type and slug. + * It supports caching to minimize API requests and improve performance. + * + * @since 2.0.0 + * + * @param string $type The type of vulnerability. Can be 'core', 'plugin', or 'theme'. + * @param string $slug The slug of the plugin or theme. For core vulnerabilities, it is the version string. + * @param int $cache Optional. Whether to use cache. Default is 1 (true). + * + * @return array|false An array with the vulnerability information or false if there's an error. + */ +function wpvulnerability_get( $type, $slug = '', $cache = 1 ) { + // Validate vulnerability type and normalize. + $type = strtolower( trim( (string) $type ) ); + $valid_types = array( 'core', 'plugin', 'theme' ); + + if ( ! in_array( $type, $valid_types, true ) ) { + wp_die( 'Unknown vulnerability type sent.' ); + } + + // Validate slug for plugin or theme. + if ( ( 'plugin' === $type || 'theme' === $type ) && empty( sanitize_title( $slug ) ) ) { + return false; + } + + // Validate slug for core. + if ( 'core' === $type && ! wpvulnerability_sanitize_version( $slug ) ) { + return false; + } + + // Cache key. + $key = 'wpvulnerability_' . $type . '_' . $slug; + + // Attempt to retrieve cached data. + $vulnerability_data = $cache ? ( is_multisite() ? get_site_transient( $key ) : get_transient( $key ) ) : null; + + // If not cached, fetch updated data. + if ( empty( $vulnerability_data ) ) { + $url = WPVULNERABILITY_API_HOST . $type . '/' . $slug . '/'; + $response = wp_remote_get( $url, array( 'timeout' => 2.5 ) ); + wpvulnerability_maybe_log_api_response( $url, $response ); + + if ( ! is_wp_error( $response ) ) { + $body = wp_remote_retrieve_body( $response ); + + // Cache the response data. + if ( is_multisite() ) { + set_site_transient( $key, $body, HOUR_IN_SECONDS * wpvulnerability_cache_hours() ); + } else { + set_transient( $key, $body, HOUR_IN_SECONDS * wpvulnerability_cache_hours() ); + } + + $vulnerability_data = $body; // Use the fresh data. + } + } + + if ( ! is_string( $vulnerability_data ) || '' === $vulnerability_data ) { + return false; + } + $decoded = json_decode( $vulnerability_data, true ); + return is_array( $decoded ) ? $decoded : false; +} + +/** + * Retrieve vulnerabilities for a specific version of WordPress Core. + * + * This function fetches vulnerability information for a given version of WordPress Core. + * If no version is provided, it retrieves vulnerabilities for the currently installed version. + * It supports caching to minimize API requests and improve performance. + * + * @since 2.0.0 + * + * @param string|null $version The version number of WordPress Core. If null, retrieves for the installed version. + * @param int $cache Optional. Whether to use cache. Default is 1 (true). + * + * @return list>|false Array of vulnerabilities, or false on error. + */ +function wpvulnerability_get_core( $version = null, $cache = 1 ) { + // Sanitize the version number. + if ( ! wpvulnerability_sanitize_version( $version ) ) { + $version = null; // Reset version if sanitization fails. + } + + // If version number is null, retrieve for the installed version. + if ( is_null( $version ) ) { + $version = get_bloginfo( 'version' ); + } + + // Get vulnerabilities from the API. + $response = wpvulnerability_get( 'core', $version, $cache ); + + // Check for errors in the response. + if ( ! is_array( $response ) || ( isset( $response['error'] ) && $response['error'] ) ) { + return false; + } + + $data_section = isset( $response['data'] ) && is_array( $response['data'] ) ? $response['data'] : array(); + $vuln_raw = isset( $data_section['vulnerability'] ) && is_array( $data_section['vulnerability'] ) ? $data_section['vulnerability'] : array(); + + if ( empty( $vuln_raw ) ) { + return false; + } + + // Process vulnerabilities and return as an array. + $vulnerabilities = array(); + foreach ( $vuln_raw as $v ) { + if ( ! is_array( $v ) ) { + continue; + } + $v_name = $v['name'] ?? null; + $v_link = $v['link'] ?? null; + $vulnerabilities[] = array( + 'name' => is_scalar( $v_name ) ? wp_kses( (string) $v_name, 'strip' ) : null, + 'link' => is_scalar( $v_link ) ? esc_url_raw( (string) $v_link ) : null, + 'source' => isset( $v['source'] ) ? $v['source'] : null, + 'impact' => isset( $v['impact'] ) ? $v['impact'] : null, + 'uuid' => is_scalar( $v['uuid'] ?? '' ) ? (string) ( $v['uuid'] ?? '' ) : '', + ); + } + + return $vulnerabilities; +} + +/** + * Determines if a vulnerability applies to the specified version of the plugin. + * + * @since 3.5.0 Introduced. + * + * @param array $v The vulnerability data. + * @param string $version The version of the plugin. + * + * @return bool True if the vulnerability applies, false otherwise. + */ +function wpvulnerability_is_vulnerability_applicable( $v, $version ) { + $op = isset( $v['operator'] ) && is_array( $v['operator'] ) ? $v['operator'] : array(); + + $min_op = isset( $op['min_operator'] ) && is_scalar( $op['min_operator'] ) ? (string) $op['min_operator'] : ''; + $max_op = isset( $op['max_operator'] ) && is_scalar( $op['max_operator'] ) ? (string) $op['max_operator'] : ''; + $min_ver = isset( $op['min_version'] ) && is_scalar( $op['min_version'] ) ? (string) $op['min_version'] : ''; + $max_ver = isset( $op['max_version'] ) && is_scalar( $op['max_version'] ) ? (string) $op['max_version'] : ''; + + // Check if the vulnerability has minimum and maximum versions. + if ( '' !== $min_op && '' !== $max_op ) { + return version_compare( $version, $min_ver, $min_op ) && + version_compare( $version, $max_ver, $max_op ); + } + + // Check if the vulnerability has only a maximum version. + if ( '' !== $max_op ) { + return version_compare( $version, $max_ver, $max_op ); + } + + // Check if the vulnerability has only a minimum version. + if ( '' !== $min_op ) { + return version_compare( $version, $min_ver, $min_op ); + } + + return false; +} + +/** + * Retrieves vulnerabilities for a specified plugin, optionally returning general plugin data. + * + * This function sanitizes the plugin slug and verifies the version number before querying the vulnerability API. + * If `$data` is set to 1, it returns general information about the plugin instead of vulnerabilities. + * The function returns an array of vulnerabilities or plugin data based on the `$data` parameter, or `false` + * if no vulnerabilities are found or the version number is invalid and `$data` is not set. + * + * @since 2.0.0 Introduced. + * + * @param string $slug The slug of the plugin to check for vulnerabilities. + * @param string $version The version of the plugin to check. The function may return `false` if this is invalid and `$data` is not set. + * @param int $data Optional. Set to 1 to return general plugin data instead of vulnerabilities. Default 0 (return vulnerabilities). + * @param int $cache Optional. Whether to use cache. Default is 1 (true). + * + * @return list>|array|false An array of vulnerabilities or plugin data if `$data` is set to 1, or `false` if no vulnerabilities are found or the version number is invalid and `$data` is not set. + */ +function wpvulnerability_get_plugin( $slug, $version, $data = 0, $cache = 1 ) { + // Sanitize the plugin slug. + $slug = sanitize_title( $slug ); + + // If the version number is invalid, return false unless $data is set. + if ( ! wpvulnerability_sanitize_version( $version ) && ! $data ) { + return false; + } + + // Get the response from the vulnerability API. + $response = wpvulnerability_get( 'plugin', $slug, $cache ); + + // If $data is set to 1, return general plugin data. + if ( 1 === $data && is_array( $response ) ) { + $resp_data = isset( $response['data'] ) && is_array( $response['data'] ) ? $response['data'] : array(); + $name_raw = $resp_data['name'] ?? ''; + $link_raw = $resp_data['link'] ?? ''; + $latest_raw = $resp_data['latest'] ?? 0; + $closed_raw = $resp_data['closed'] ?? 0; + return array( + 'name' => wp_kses( is_scalar( $name_raw ) ? (string) $name_raw : '', 'strip' ), + 'link' => esc_url( is_scalar( $link_raw ) ? (string) $link_raw : '' ), + 'latest' => number_format( is_scalar( $latest_raw ) ? (int) $latest_raw : 0, 0, '.', '' ), + 'closed' => number_format( is_scalar( $closed_raw ) ? (int) $closed_raw : 0, 0, '.', '' ), + ); + } + + // Check for errors in the response. + if ( ! is_array( $response ) || ( isset( $response['error'] ) && $response['error'] ) ) { + return false; + } + + $resp_data2 = isset( $response['data'] ) && is_array( $response['data'] ) ? $response['data'] : array(); + $vuln_list = isset( $resp_data2['vulnerability'] ) && is_array( $resp_data2['vulnerability'] ) ? $resp_data2['vulnerability'] : array(); + + if ( empty( $vuln_list ) ) { + return false; + } + + // Create an empty array to store vulnerabilities. + $vulnerabilities = array(); + + // Loop through each vulnerability. + foreach ( $vuln_list as $v ) { + if ( ! is_array( $v ) ) { + continue; + } + // Check version constraints and add vulnerabilities accordingly. + if ( wpvulnerability_is_vulnerability_applicable( $v, $version ) ) { + $op = isset( $v['operator'] ) && is_array( $v['operator'] ) ? $v['operator'] : array(); + $min_op_raw = $op['min_operator'] ?? ''; + $max_op_raw = $op['max_operator'] ?? ''; + $min_ver_raw = $op['min_version'] ?? ''; + $max_ver_raw = $op['max_version'] ?? ''; + $unfixed_raw = $op['unfixed'] ?? 0; + $closed_raw2 = $op['closed'] ?? 0; + $min_op = is_scalar( $min_op_raw ) ? (string) $min_op_raw : ''; + $max_op = is_scalar( $max_op_raw ) ? (string) $max_op_raw : ''; + $min_ver = is_scalar( $min_ver_raw ) ? (string) $min_ver_raw : ''; + $max_ver = is_scalar( $max_ver_raw ) ? (string) $max_ver_raw : ''; + $v_name_raw = $v['name'] ?? ''; + $v_desc_raw = $v['description'] ?? ''; + $vulnerabilities[] = array( + 'name' => wp_kses( is_scalar( $v_name_raw ) ? (string) $v_name_raw : '', 'strip' ), + 'description' => wp_kses_post( is_scalar( $v_desc_raw ) ? (string) $v_desc_raw : '' ), + 'versions' => wp_kses( + wpvulnerability_pretty_operator( $min_op ) . $min_ver . ' - ' . + wpvulnerability_pretty_operator( $max_op ) . $max_ver, + 'strip' + ), + 'version' => wp_kses( '' !== $min_ver ? $min_ver : $max_ver, 'strip' ), + 'unfixed' => is_scalar( $unfixed_raw ) ? (int) $unfixed_raw : 0, + 'closed' => is_scalar( $closed_raw2 ) ? (int) $closed_raw2 : 0, + 'source' => isset( $v['source'] ) ? $v['source'] : null, + 'impact' => isset( $v['impact'] ) ? $v['impact'] : null, + 'uuid' => is_scalar( $v['uuid'] ?? '' ) ? (string) ( $v['uuid'] ?? '' ) : '', + ); + } + } + + return $vulnerabilities; +} + +/** + * Get vulnerabilities for a specific theme. + * + * This function retrieves and sanitizes the theme slug and version before querying the vulnerability API. + * It returns an array of vulnerabilities if any are found, or false if there are none. + * + * @since 3.5.0 + * + * @param string $slug Slug of the theme. + * @param string $version Version of the theme. + * @param int $cache Optional. Whether to use cache. Default is 1 (true). + * + * @return list>|false Returns an array of vulnerabilities, or false if there are none. + */ +function wpvulnerability_get_theme( $slug, $version, $cache = 1 ) { + // Sanitize the theme slug. + $slug = sanitize_title( $slug ); + + // Validate the version number. + if ( ! wpvulnerability_sanitize_version( $version ) ) { + return false; // Return false if the version is invalid. + } + + // Get the response from the vulnerability API. + $response = wpvulnerability_get( 'theme', $slug, $cache ); + + // Check for errors in the response. + if ( ! is_array( $response ) || ( isset( $response['error'] ) && $response['error'] ) ) { + return false; + } + + $theme_data = isset( $response['data'] ) && is_array( $response['data'] ) ? $response['data'] : array(); + $vuln_list = isset( $theme_data['vulnerability'] ) && is_array( $theme_data['vulnerability'] ) ? $theme_data['vulnerability'] : array(); + + if ( empty( $vuln_list ) ) { + return false; + } + + // Process each vulnerability. + $vulnerabilities = array(); + foreach ( $vuln_list as $v ) { + if ( ! is_array( $v ) ) { + continue; + } + // Check if the version falls within the min and max operator range. + if ( wpvulnerability_is_vulnerability_applicable( $v, $version ) ) { + $op = isset( $v['operator'] ) && is_array( $v['operator'] ) ? $v['operator'] : array(); + $min_op_raw = $op['min_operator'] ?? ''; + $max_op_raw = $op['max_operator'] ?? ''; + $min_ver_raw = $op['min_version'] ?? ''; + $max_ver_raw = $op['max_version'] ?? ''; + $unfixed_raw = $op['unfixed'] ?? 0; + $closed_raw = $op['closed'] ?? 0; + $min_op = is_scalar( $min_op_raw ) ? (string) $min_op_raw : ''; + $max_op = is_scalar( $max_op_raw ) ? (string) $max_op_raw : ''; + $min_ver = is_scalar( $min_ver_raw ) ? (string) $min_ver_raw : ''; + $max_ver = is_scalar( $max_ver_raw ) ? (string) $max_ver_raw : ''; + $v_name_raw = $v['name'] ?? ''; + $v_desc_raw = $v['description'] ?? ''; + $vulnerabilities[] = array( + 'name' => wp_kses( is_scalar( $v_name_raw ) ? (string) $v_name_raw : '', 'strip' ), + 'description' => wp_kses_post( is_scalar( $v_desc_raw ) ? (string) $v_desc_raw : '' ), + 'versions' => wp_kses( + wpvulnerability_pretty_operator( $min_op ) . $min_ver . ' - ' . + wpvulnerability_pretty_operator( $max_op ) . $max_ver, + 'strip' + ), + 'version' => wp_kses( '' !== $min_ver ? $min_ver : $max_ver, 'strip' ), + 'unfixed' => is_scalar( $unfixed_raw ) ? (int) $unfixed_raw : 0, + 'closed' => is_scalar( $closed_raw ) ? (int) $closed_raw : 0, + 'source' => isset( $v['source'] ) ? $v['source'] : null, + 'impact' => isset( $v['impact'] ) ? $v['impact'] : null, + 'uuid' => is_scalar( $v['uuid'] ?? '' ) ? (string) ( $v['uuid'] ?? '' ) : '', + ); + } + } + + return $vulnerabilities; +} + +/** + * Get statistics. + * + * Returns an array with statistical information about vulnerabilities and their respective products. + * + * @since 2.0.0 + * + * @param int $cache Optional. Whether to use cache. Default is 1 (true). + * + * @return array|false Returns an array with the statistical information if successful, false otherwise. + */ +function wpvulnerability_get_statistics( $cache = 1 ) { + $key = 'wpvulnerability_stats'; + + // Attempt to get cached statistics. + $vulnerability = $cache ? ( is_multisite() ? get_site_transient( $key ) : get_transient( $key ) ) : null; + + // If cached statistics are not available, retrieve them from the API. + if ( empty( $vulnerability ) ) { + $url = WPVULNERABILITY_API_HOST; + $response = wp_remote_get( $url, array( 'timeout' => 2.5 ) ); + wpvulnerability_maybe_log_api_response( $url, $response ); + + if ( ! is_wp_error( $response ) ) { + $body = wp_remote_retrieve_body( $response ); + // Cache the response data. + if ( is_multisite() ) { + set_site_transient( $key, $body, HOUR_IN_SECONDS * wpvulnerability_cache_hours() ); + } else { + set_transient( $key, $body, HOUR_IN_SECONDS * wpvulnerability_cache_hours() ); + } + $vulnerability = $body; // Use the fresh data. + } + } + + // Decode the JSON response and check for statistics. + $response = json_decode( is_string( $vulnerability ) ? $vulnerability : '', true ); + if ( ! is_array( $response ) || ! isset( $response['stats'] ) || ! is_array( $response['stats'] ) ) { + return false; + } + + // Extract typed intermediate arrays to avoid mixed-type access errors. + $stats = $response['stats']; + $products = isset( $stats['products'] ) && is_array( $stats['products'] ) ? $stats['products'] : array(); + $sources_raw = isset( $stats['vulnerabilities'] ) && is_array( $stats['vulnerabilities'] ) ? $stats['vulnerabilities'] : array(); + $behind = isset( $response['behindtheproject'] ) && is_array( $response['behindtheproject'] ) ? $response['behindtheproject'] : array(); + $updated_raw = $response['updated'] ?? 0; + $updated = is_scalar( $updated_raw ) ? (int) $updated_raw : 0; + + $sponsors = array(); + if ( isset( $behind['sponsors'] ) && is_array( $behind['sponsors'] ) && count( $behind['sponsors'] ) ) { + foreach ( $behind['sponsors'] as $s ) { + $sponsors[] = $s; + } + } + + $contributors = array(); + if ( isset( $behind['contributors'] ) && is_array( $behind['contributors'] ) && count( $behind['contributors'] ) ) { + foreach ( $behind['contributors'] as $s ) { + $contributors[] = $s; + } + } + + /** + * Cast a scalar value to int safely. + * + * @param mixed $x Value to cast. + * @return int + */ + $to_int = static function ( $x ): int { + return is_scalar( $x ) ? (int) $x : 0; + }; + + // Build per-source vulnerability breakdown (stats.vulnerabilities.{source}). + $sources_data = array(); + $known_sources = array( 'cve', 'euvd', 'jvn', 'patchstack', 'wpscan', 'wordfence' ); + foreach ( $known_sources as $src ) { + if ( isset( $sources_raw[ $src ] ) && is_array( $sources_raw[ $src ] ) ) { + $src_data = $sources_raw[ $src ]; + $sources_data[ $src ] = array( + 'core' => $to_int( $src_data['core'] ?? 0 ), + 'plugins' => $to_int( $src_data['plugins'] ?? 0 ), + 'themes' => $to_int( $src_data['themes'] ?? 0 ), + ); + } + } + + // Return an array with statistical information. + return array( + 'core' => array( + 'versions' => $to_int( $products['core'] ?? 0 ), + ), + 'plugins' => array( + 'products' => $to_int( $products['plugins'] ?? 0 ), + 'vulnerabilities' => $to_int( $stats['plugins'] ?? 0 ), + ), + 'themes' => array( + 'products' => $to_int( $products['themes'] ?? 0 ), + 'vulnerabilities' => $to_int( $stats['themes'] ?? 0 ), + ), + 'php' => array( + 'vulnerabilities' => $to_int( $stats['php'] ?? 0 ), + ), + 'apache' => array( + 'vulnerabilities' => $to_int( $stats['apache'] ?? 0 ), + ), + 'nginx' => array( + 'vulnerabilities' => $to_int( $stats['nginx'] ?? 0 ), + ), + 'mariadb' => array( + 'vulnerabilities' => $to_int( $stats['mariadb'] ?? 0 ), + ), + 'mysql' => array( + 'vulnerabilities' => $to_int( $stats['mysql'] ?? 0 ), + ), + 'imagemagick' => array( + 'vulnerabilities' => $to_int( $stats['imagemagick'] ?? 0 ), + ), + 'curl' => array( + 'vulnerabilities' => $to_int( $stats['curl'] ?? 0 ), + ), + 'memcached' => array( + 'vulnerabilities' => $to_int( $stats['memcached'] ?? 0 ), + ), + 'redis' => array( + 'vulnerabilities' => $to_int( $stats['redis'] ?? 0 ), + ), + 'sqlite' => array( + 'vulnerabilities' => $to_int( $stats['sqlite'] ?? 0 ), + ), + 'sources' => $sources_data, + 'sponsors' => $sponsors, + 'contributors' => $contributors, + 'updated' => array( + 'unixepoch' => $updated, + 'datetime' => gmdate( 'Y-m-d H:i:s', $updated ), + 'iso8601' => gmdate( 'c', $updated ), + 'rfc2822' => gmdate( 'r', $updated ), + ), + ); +} + +/** + * Retrieves the latest vulnerability statistics. + * + * This function calls the wpvulnerability API to get fresh statistics related to vulnerabilities + * and returns the updated information. + * + * @since 3.4.0 + * + * @return array|false The updated vulnerability statistics, or false on error. + */ +function wpvulnerability_get_fresh_statistics() { + // Call the function to get the latest vulnerability statistics. + $statistics_api_response = wpvulnerability_get_statistics(); + + // Return the response from the API. + return $statistics_api_response; +} + +/** + * Retrieves and caches the latest vulnerability statistics. + * + * This function retrieves the most recent vulnerability statistics, caches the data, + * and returns the information as a JSON-encoded array. The cache expiration timestamp is also updated. + * + * @since 3.4.0 + * + * @return string JSON-encoded array containing the vulnerability statistics, or empty string on encoding error. + */ +function wpvulnerability_statistics_get() { + // Retrieve fresh statistics. + $statistics = wpvulnerability_get_fresh_statistics(); + + // Cache the statistics data and the timestamp for cache expiration. + $encoded_statistics = wp_json_encode( $statistics ); + if ( false === $encoded_statistics ) { + $encoded_statistics = ''; + } + $cache_expiration = number_format( time() + ( 3600 * wpvulnerability_cache_hours() ), 0, '.', '' ); + + if ( is_multisite() ) { + update_site_option( 'wpvulnerability-statistics', $encoded_statistics ); + update_site_option( 'wpvulnerability-statistics-cache', $cache_expiration ); + } else { + update_option( 'wpvulnerability-statistics', $encoded_statistics ); + update_option( 'wpvulnerability-statistics-cache', $cache_expiration ); + } + + // Return the JSON-encoded array of statistics data. + return $encoded_statistics; +} + +/** + * Get vulnerabilities for a specific product version. + * + * This function retrieves vulnerability data for a specified product version. + * It supports caching to minimize API requests and improve performance. + * + * @since 3.5.0 + * + * @param string $type The type of product (e.g., 'php', 'apache', 'nginx', 'mariadb', 'mysql'). + * @param string $version The version of the product to check. + * @param int $cache Optional. Whether to use cache. Default is 1 (true). + * + * @return list>|false Returns an array of vulnerabilities, or false if there are none. + */ +function wpvulnerability_get_vulnerabilities( $type, $version, $cache = 1 ) { + $key = 'wpvulnerability_' . $type; + $vulnerability_data = null; + $vulnerability = array(); + + // Get cached statistics if available. + if ( $cache ) { + $vulnerability_data = is_multisite() ? get_site_transient( $key ) : get_transient( $key ); + } + + // If cached statistics are not available, retrieve them from the API and store them in cache. + if ( empty( $vulnerability_data ) ) { + $url = WPVULNERABILITY_API_HOST . $type . '/' . $version . '/'; + $response = wp_remote_get( $url, array( 'timeout' => 2.5 ) ); + wpvulnerability_maybe_log_api_response( $url, $response ); + + if ( ! is_wp_error( $response ) ) { + $body = wp_remote_retrieve_body( $response ); + if ( $cache ) { + if ( is_multisite() ) { + set_site_transient( $key, $body, HOUR_IN_SECONDS * wpvulnerability_cache_hours() ); + } else { + set_transient( $key, $body, HOUR_IN_SECONDS * wpvulnerability_cache_hours() ); + } + } + $vulnerability_data = $body; // Use the fresh data. + } + } + + // If the response does not contain vulnerabilities, return false. + $response = json_decode( is_string( $vulnerability_data ) ? $vulnerability_data : '', true ); + + if ( ! is_array( $response ) || ( isset( $response['error'] ) && $response['error'] ) ) { + return false; + } + + $resp_data2 = isset( $response['data'] ) && is_array( $response['data'] ) ? $response['data'] : array(); + $vuln_list = isset( $resp_data2['vulnerability'] ) && is_array( $resp_data2['vulnerability'] ) ? $resp_data2['vulnerability'] : array(); + + if ( empty( $vuln_list ) ) { + return false; + } + + // Process each vulnerability. + foreach ( $vuln_list as $v ) { + if ( ! is_array( $v ) ) { + continue; + } + $v_name_raw = $v['name'] ?? ''; + $name = is_scalar( $v_name_raw ) ? wp_kses( (string) $v_name_raw, 'strip' ) : ''; + $source = isset( $v['source'] ) ? $v['source'] : null; + $op = isset( $v['operator'] ) && is_array( $v['operator'] ) ? $v['operator'] : array(); + + $min_op_raw = $op['min_operator'] ?? ''; + $max_op_raw = $op['max_operator'] ?? ''; + $min_ver_raw = $op['min_version'] ?? ''; + $max_ver_raw = $op['max_version'] ?? ''; + $unfixed_raw = $op['unfixed'] ?? 0; + $min_op = is_scalar( $min_op_raw ) ? (string) $min_op_raw : ''; + $max_op = is_scalar( $max_op_raw ) ? (string) $max_op_raw : ''; + $min_ver = is_scalar( $min_ver_raw ) ? (string) $min_ver_raw : ''; + $max_ver = is_scalar( $max_ver_raw ) ? (string) $max_ver_raw : ''; + $unfixed = is_scalar( $unfixed_raw ) ? (int) $unfixed_raw : 0; + + $impact = isset( $v['impact'] ) ? $v['impact'] : null; + $uuid = is_scalar( $v['uuid'] ?? '' ) ? (string) ( $v['uuid'] ?? '' ) : ''; + + // Check if the version falls within the specified min and max operator range. + if ( '' !== $min_op && '' !== $max_op ) { + if ( version_compare( $version, $min_ver, $min_op ) && + version_compare( $version, $max_ver, $max_op ) ) { + $vulnerability[] = array( + 'name' => $name, + 'versions' => wp_kses( wpvulnerability_pretty_operator( $min_op ) . $min_ver . ' - ' . wpvulnerability_pretty_operator( $max_op ) . $max_ver, 'strip' ), + 'version' => wp_kses( $min_ver, 'strip' ), + 'unfixed' => $unfixed, + 'source' => $source, + 'impact' => $impact, + 'uuid' => $uuid, + ); + } + } elseif ( '' !== $max_op ) { + if ( version_compare( $version, $max_ver, $max_op ) ) { + $vulnerability[] = array( + 'name' => $name, + 'versions' => wp_kses( wpvulnerability_pretty_operator( $max_op ) . $max_ver, 'strip' ), + 'version' => wp_kses( $max_ver, 'strip' ), + 'unfixed' => $unfixed, + 'source' => $source, + 'impact' => $impact, + 'uuid' => $uuid, + ); + } + } elseif ( '' !== $min_op ) { + if ( version_compare( $version, $min_ver, $min_op ) ) { + $vulnerability[] = array( + 'name' => $name, + 'versions' => wp_kses( wpvulnerability_pretty_operator( $min_op ) . $min_ver, 'strip' ), + 'version' => wp_kses( $min_ver, 'strip' ), + 'unfixed' => $unfixed, + 'source' => $source, + 'impact' => $impact, + 'uuid' => $uuid, + ); + } + } + } + + return $vulnerability; +} + +/** + * Get the current security mode configuration. + * + * Returns the security mode that controls shell_exec usage. + * Valid modes: 'standard', 'strict', 'disabled'. + * + * @since 4.3.0 + * + * @return string Current security mode. + */ +function wpvulnerability_get_security_mode() { + if ( defined( 'WPVULNERABILITY_SECURITY_MODE' ) ) { + $mode = strtolower( trim( (string) WPVULNERABILITY_SECURITY_MODE ) ); + $valid_modes = array( 'standard', 'strict', 'disabled' ); + if ( in_array( $mode, $valid_modes, true ) ) { + return $mode; + } + } + + $settings = is_multisite() ? get_site_option( 'wpvulnerability-config', array() ) : get_option( 'wpvulnerability-config', array() ); + if ( ! is_array( $settings ) ) { + $settings = array(); + } + if ( isset( $settings['security_mode'] ) ) { + $security_mode_raw = $settings['security_mode']; + $mode = strtolower( trim( is_scalar( $security_mode_raw ) ? (string) $security_mode_raw : '' ) ); + $valid_modes = array( 'standard', 'strict', 'disabled' ); + if ( in_array( $mode, $valid_modes, true ) ) { + return $mode; + } + } + + return 'standard'; +} + +/** + * Validate a shell command before execution. + * + * Ensures commands match allowed patterns and don't contain dangerous characters. + * + * @since 4.3.0 + * + * @param string $command Command to validate. + * + * @return bool True if command is safe, false otherwise. + */ +function wpvulnerability_validate_shell_command( $command ) { + $command = trim( (string) $command ); + + if ( '' === $command ) { + return false; + } + + // Whitelist of allowed command bases. + $allowed_commands = array( + 'convert', + 'magick', + 'identify', + 'redis-server', + 'memcached', + 'sqlite3', + 'which', + 'apache2', + 'httpd', + 'nginx', + 'angie', + 'php', + 'curl', + ); + + // Extract the base command (first word). + $parts = explode( ' ', $command ); + $base_command = $parts[0]; + + // Check if base command is in whitelist. + $command_allowed = false; + foreach ( $allowed_commands as $allowed ) { + if ( false !== stripos( $base_command, $allowed ) ) { + $command_allowed = true; + break; + } + } + + if ( ! $command_allowed ) { + wpvulnerability_maybe_log( + 'Shell command validation failed: command not in whitelist', + array( + 'command' => $command, + 'base' => $base_command, + ) + ); + return false; + } + + // Dangerous patterns that should never appear in commands. + $dangerous_patterns = array( + ';', + '|', + '&', + '`', + '$(', + '<', + '>', + "\n", + "\r", + "\0", + ); + + foreach ( $dangerous_patterns as $pattern ) { + if ( false !== strpos( $command, $pattern ) ) { + wpvulnerability_maybe_log( + 'Shell command validation failed: dangerous pattern detected', + array( + 'command' => $command, + 'pattern' => $pattern, + ) + ); + return false; + } + } + + return true; +} + +/** + * Register the custom post type used to store shell_exec logs. + * + * @since 4.3.0 + * + * @return void + */ +function wpvulnerability_register_shell_log_post_type() { + register_post_type( + 'wpv_shell_log', + array( + 'labels' => array( + 'name' => __( 'WPVulnerability Shell Logs', 'wpvulnerability' ), + 'singular_name' => __( 'WPVulnerability Shell Log', 'wpvulnerability' ), + ), + 'public' => false, + 'exclude_from_search' => true, + 'publicly_queryable' => false, + 'show_ui' => false, + 'show_in_menu' => false, + 'supports' => array( 'title', 'editor' ), + ) + ); +} +add_action( 'init', 'wpvulnerability_register_shell_log_post_type' ); + +/** + * Log a shell_exec execution attempt. + * + * Stores information about shell command execution for security auditing. + * + * @since 4.3.0 + * + * @param string $component Component making the request. + * @param string $command Command that was executed or attempted. + * @param string|null $output Command output (null if not executed). + * @param bool $success Whether execution was successful. + * @param string $reason Reason for success/failure. + * + * @return void + */ +function wpvulnerability_log_shell_exec( $component, $command, $output, $success, $reason ) { + if ( 0 >= wpvulnerability_log_retention_days() ) { + return; + } + + $log_data = array( + 'component' => sanitize_text_field( $component ), + 'command' => sanitize_text_field( $command ), + 'output' => $output ? substr( sanitize_textarea_field( $output ), 0, 1000 ) : null, + 'success' => (bool) $success, + 'reason' => sanitize_text_field( $reason ), + 'timestamp' => current_time( 'mysql' ), + 'user' => is_user_logged_in() ? wp_get_current_user()->user_login : 'system', + 'ip' => ( isset( $_SERVER['REMOTE_ADDR'] ) && is_string( $_SERVER['REMOTE_ADDR'] ) ) ? sanitize_text_field( wp_unslash( $_SERVER['REMOTE_ADDR'] ) ) : 'unknown', // phpcs:ignore + ); + + $log_id = wp_insert_post( + array( + 'post_type' => 'wpv_shell_log', + 'post_status' => 'publish', + 'post_title' => sprintf( '[%s] %s', $component, $reason ), + 'post_content' => wp_slash( (string) wp_json_encode( $log_data ) ), + 'post_author' => 0, + ), + true + ); + + if ( is_wp_error( $log_id ) ) { + wpvulnerability_maybe_log( + 'Failed to create shell exec log entry', + array( + 'error' => $log_id->get_error_message(), + ) + ); + } +} + +/** + * Retrieve shell execution logs for display in admin. + * + * @since 4.3.0 + * + * @param int $per_page Optional. Number of logs to return. Default 50. + * @param int $paged Optional. Page number to retrieve. Default 1. + * + * @return WP_Post[] Array of log posts. + */ +function wpvulnerability_get_shell_exec_logs( $per_page = 50, $paged = 1 ) { + $per_page = max( 1, (int) $per_page ); + $paged = max( 1, (int) $paged ); + $offset = ( $paged - 1 ) * $per_page; + + return get_posts( + array( + 'post_type' => 'wpv_shell_log', + 'post_status' => 'publish', + 'posts_per_page' => $per_page, + 'orderby' => 'date', + 'order' => 'DESC', + 'offset' => $offset, + 'no_found_rows' => true, + ) + ); +} + +/** + * Count the total amount of stored shell exec log entries. + * + * @since 4.3.0 + * + * @return int Number of log posts. + */ +function wpvulnerability_count_shell_exec_logs() { + $counts = wp_count_posts( 'wpv_shell_log' ); + + if ( ! isset( $counts->publish ) ) { + return 0; + } + + return (int) $counts->publish; +} + +/** + * Delete shell exec logs that fall outside of the configured retention window. + * + * @since 4.3.0 + * + * @return void + */ +function wpvulnerability_delete_expired_shell_logs() { + $retention = wpvulnerability_log_retention_days(); + if ( $retention <= 0 ) { + return; + } + + $threshold_ts = strtotime( '-' . $retention . ' days', time() ); + $threshold = gmdate( 'Y-m-d H:i:s', false !== $threshold_ts ? $threshold_ts : time() ); + + do { + $logs = get_posts( + array( + 'post_type' => 'wpv_shell_log', + 'post_status' => 'publish', + 'fields' => 'ids', + 'posts_per_page' => 100, + 'orderby' => 'date', + 'order' => 'ASC', + 'no_found_rows' => true, + 'cache_results' => false, + 'update_post_term_cache' => false, + 'update_post_meta_cache' => false, + 'date_query' => array( + array( + 'before' => $threshold, + 'inclusive' => false, + ), + ), + ) + ); + + if ( empty( $logs ) ) { + break; + } + + foreach ( $logs as $log_id ) { + wp_delete_post( $log_id, true ); + } + $logs_count = count( $logs ); + } while ( $logs_count >= 100 ); +} + +add_action( 'wpvulnerability_cleanup_logs', 'wpvulnerability_delete_expired_shell_logs' ); + +/** + * Safe wrapper for shell_exec with validation and logging. + * + * This function wraps shell_exec calls with security checks and audit logging. + * + * @since 4.3.0 + * + * @param string $component Component requesting shell execution. + * @param string $command Command to execute. + * + * @return string|null Command output on success, null on failure. + */ +function wpvulnerability_safe_shell_exec( $component, $command ) { + // Check if shell_exec is allowed for this component. + if ( ! wpvulnerability_can_shell_exec( $component ) ) { + wpvulnerability_log_shell_exec( $component, $command, null, false, 'disabled' ); + return null; + } + + // Validate command structure. + if ( ! wpvulnerability_validate_shell_command( $command ) ) { + wpvulnerability_log_shell_exec( $component, $command, null, false, 'validation_failed' ); + return null; + } + + // Execute command. + $output_raw = @shell_exec( escapeshellcmd( $command ) . ' 2>&1' ); // phpcs:ignore + $output = ( false === $output_raw ) ? null : $output_raw; + + // Log execution. + wpvulnerability_log_shell_exec( + $component, + $command, + $output, + ! empty( $output ), + 'executed' + ); + + return $output; +} diff --git a/wpvulnerability-notifications.php b/wpvulnerability-notifications.php new file mode 100644 index 0000000..1fda631 --- /dev/null +++ b/wpvulnerability-notifications.php @@ -0,0 +1,973 @@ +> $schedules The existing system schedules. + * + * @return array> The updated list of schedules with the added weekly interval. + */ +function wpvulnerability_add_every_week( $schedules ) { + // Add a weekly schedule interval of 604800 seconds (1 week). + // Use did_action('init') guard: cron_schedules fires before init (WP 6.7+ textdomain notice). + $schedules['weekly'] = array( + 'interval' => 604800, + 'display' => did_action( 'init' ) ? __( 'Every week', 'wpvulnerability' ) : 'Every week', + ); + + // Return the modified list of schedules. + return $schedules; +} +// Hook the function to the 'cron_schedules' filter to add the custom schedule. +add_filter( 'cron_schedules', 'wpvulnerability_add_every_week' ); + +/** + * Adds a custom schedule for daily events. + * + * This function adds a new schedule interval of one day (86400 seconds) + * to the system's available cron schedules. It allows tasks to be scheduled + * to run every day using the 'daily' interval. + * + * @since 2.0.0 + * + * @param array> $schedules List of available schedules. + * + * @return array> Modified list of available schedules with the added daily interval. + */ +function wpvulnerability_add_every_day( $schedules ) { + // Define a new schedule with a 24 hour interval. + // Use did_action('init') guard: cron_schedules fires before init (WP 6.7+ textdomain notice). + $schedules['daily'] = array( + 'interval' => 86400, + 'display' => did_action( 'init' ) ? __( 'Every day', 'wpvulnerability' ) : 'Every day', + ); + + // Return the modified list of schedules. + return $schedules; +} +// Hook the function to the 'cron_schedules' filter to add the custom schedule. +add_filter( 'cron_schedules', 'wpvulnerability_add_every_day' ); + +/** + * Disables email notifications when requested via URL. + * + * When the `wpvulnerability_disable_email` query parameter is present and the accompanying + * nonce validates, this handler disables future email notifications for the current site. + * + * @since 4.1.3 + * + * @return void + */ +function wpvulnerability_disable_notifications_via_url() { + if ( empty( $_GET['wpvulnerability_disable_email'] ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended + return; + } + + $nonce = isset( $_GET['nonce'] ) ? sanitize_text_field( wp_unslash( is_string( $_GET['nonce'] ) ? $_GET['nonce'] : '' ) ) : ''; // phpcs:ignore WordPress.Security.NonceVerification.Recommended + + if ( ! wp_verify_nonce( $nonce, 'wpvulnerability-disable-email' ) ) { + wp_die( esc_html__( 'Invalid request.', 'wpvulnerability' ) ); + } + + $settings = is_multisite() ? get_site_option( 'wpvulnerability-config' ) : get_option( 'wpvulnerability-config' ); + + if ( ! is_array( $settings ) ) { + $settings = array(); + } + + $notify_settings = isset( $settings['notify'] ) ? $settings['notify'] : array(); + $settings['notify'] = wpvulnerability_normalize_notify_settings( $notify_settings ); + $settings['notify']['email'] = 'n'; + + if ( is_multisite() ) { + update_site_option( 'wpvulnerability-config', $settings ); + } else { + update_option( 'wpvulnerability-config', $settings ); + } + + wp_die( + esc_html__( 'You have unsubscribed from WPVulnerability notifications.', 'wpvulnerability' ), + esc_html__( 'WPVulnerability', 'wpvulnerability' ), + array( 'response' => 200 ) + ); +} +add_action( 'init', 'wpvulnerability_disable_notifications_via_url' ); + +/** + * Determine if the webhook host is in the allowed list. + * + * @since 4.3.0 + * + * @param string $host Host portion of the webhook URL. + * @param array $allowed_hosts Allowed host suffixes. + * + * @return bool True when the host matches the allow list. + */ +function wpvulnerability_is_allowed_webhook_host( $host, $allowed_hosts ) { + foreach ( $allowed_hosts as $allowed_host ) { + $allowed_host = strtolower( trim( (string) $allowed_host ) ); + if ( '' === $allowed_host ) { + continue; + } + + if ( $host === $allowed_host ) { + return true; + } + + $suffix = '.' . $allowed_host; + if ( substr( $host, -strlen( $suffix ) ) === $suffix ) { + return true; + } + } + + return false; +} + +/** + * Validates a webhook URL against an allow list and HTTPS enforcement. + * + * @since 4.3.0 + * + * @param string $webhook_url Webhook URL to validate. + * @param array $allowed_hosts Allowed host suffixes. + * + * @return string Sanitized URL or empty string when invalid. + */ +function wpvulnerability_validate_webhook_url( $webhook_url, $allowed_hosts ) { + $webhook_url = esc_url_raw( trim( (string) $webhook_url ) ); + + if ( empty( $webhook_url ) ) { + return ''; + } + + $parts = wp_parse_url( $webhook_url ); + + if ( ! is_array( $parts ) || empty( $parts['scheme'] ) || empty( $parts['host'] ) ) { + return ''; + } + + if ( 'https' !== strtolower( (string) $parts['scheme'] ) ) { + return ''; + } + + $host = strtolower( (string) $parts['host'] ); + + if ( ! wpvulnerability_is_allowed_webhook_host( $host, $allowed_hosts ) ) { + return ''; + } + + return $webhook_url; +} + +/** + * Retrieves the unsubscribe URL for WPVulnerability email notifications. + * + * Generates a signed URL that disables future email notifications when + * visited. The URL works in both single and multisite environments and is + * validated through the `wpvulnerability_disable_notifications_via_url` + * handler. When running in multisite, it targets the network home only if + * the plugin is network-activated; otherwise it uses the current site's + * home URL. + * + * @since 4.1.7 + * + * @return string The unsubscribe URL including the security nonce. + */ +function wpvulnerability_get_disable_notifications_url() { + $nonce = wp_create_nonce( 'wpvulnerability-disable-email' ); + + $base_url = home_url( '/' ); + + if ( is_multisite() ) { + if ( ! function_exists( 'is_plugin_active_for_network' ) ) { + require_once ABSPATH . 'wp-admin/includes/plugin.php'; + } + + $plugin_basename = defined( 'WPVULNERABILITY_PLUGIN_BASE' ) ? WPVULNERABILITY_PLUGIN_BASE : plugin_basename( WPVULNERABILITY_PLUGIN_FILE ); + + if ( function_exists( 'is_plugin_active_for_network' ) && is_plugin_active_for_network( $plugin_basename ) ) { + $base_url = network_home_url( '/' ); + } + } + + return add_query_arg( + array( + 'wpvulnerability_disable_email' => 1, + 'nonce' => $nonce, + ), + $base_url + ); +} + +/** + * Prepares the HTML email message. + * + * This function generates an HTML email message with the given title and content. + * It includes basic styling and structure to ensure compatibility with most email clients. + * + * @since 2.0.0 + * + * @param string $title The title of the email message. + * @param string $content The content of the email message. + * + * @return string The prepared HTML email message. + */ +function wpvulnerability_email_prepare( $title, $content ) { + + $message = ''; + $message .= '' . "\n"; + $message .= '' . "\n"; + $message .= '' . "\n"; + $message .= ' ' . "\n"; + $message .= ' ' . "\n"; + $message .= ' WPVulnerability' . "\n"; + $message .= ' ' . "\n"; + $message .= '' . "\n"; + $message .= '' . "\n"; + $message .= ' ' . "\n"; + $message .= ' ' . "\n"; + $message .= ' ' . "\n"; + $message .= ' ' . "\n"; + $message .= ' ' . "\n"; + $message .= '
' . "\n"; + $message .= '
' . "\n"; + $message .= ' ' . "\n"; + $message .= ' ' . "\n"; + $message .= ' ' . "\n"; + $message .= ' ' . "\n"; + $message .= ' ' . "\n"; + $message .= '
' . "\n"; + $message .= ' ' . "\n"; + $message .= ' ' . "\n"; + $message .= ' ' . "\n"; + $message .= ' ' . "\n"; + $message .= ' ' . "\n"; + $message .= ' ' . "\n"; + $message .= ' ' . "\n"; + $message .= '
' . "\n"; + $message .= ' WPVulnerability' . "\n"; + $message .= '

' . esc_html( $title ) . '

' . "\n"; + + // Add the site URL based on the multisite configuration. + if ( is_multisite() ) { + $message .= '

' . esc_html( network_site_url() ) . '

' . "\n"; + } else { + $message .= '

' . esc_html( site_url() ) . '

' . "\n"; + } + + $message .= '
' . "\n"; + $message .= $content; // Add the main content of the email. + $message .= '
' . "\n"; + $message .= ' ' . "\n"; + $message .= '
' . "\n"; + $message .= '
' . "\n"; + $message .= '
' . "\n"; + $message .= '' . "\n"; + $message .= ''; + + // Return the prepared HTML email message. + return $message; +} + +/** + * Send a vulnerability notification to Slack. + * + * @since 4.1.3 + * + * @param string $webhook_url Slack webhook URL. + * @param string $message Message body to deliver. + * + * @return bool True on success, false on failure. + */ +function wpvulnerability_send_slack_notification( $webhook_url, $message ) { + $webhook_url = wpvulnerability_validate_webhook_url( + $webhook_url, + array( + 'hooks.slack.com', + ) + ); + + if ( empty( $webhook_url ) || empty( $message ) ) { + return false; + } + + $encoded_slack = wp_json_encode( array( 'text' => $message ) ); + $args = array( + 'body' => false !== $encoded_slack ? $encoded_slack : '', + 'headers' => array( 'Content-Type' => 'application/json; charset=utf-8' ), + 'timeout' => 10, + 'data_format' => 'body', + ); + + $response = wp_remote_post( $webhook_url, $args ); + + if ( is_wp_error( $response ) ) { + return false; + } + + $status_code = (int) wp_remote_retrieve_response_code( $response ); + + return $status_code >= 200 && $status_code < 300; +} + +/** + * Send a vulnerability notification to Microsoft Teams. + * + * @since 4.1.3 + * + * @param string $webhook_url Teams webhook URL. + * @param string $message Message body to deliver. + * + * @return bool True on success, false on failure. + */ +function wpvulnerability_send_teams_notification( $webhook_url, $message ) { + $webhook_url = wpvulnerability_validate_webhook_url( + $webhook_url, + array( + 'office.com', + 'office365.com', + 'api.hooks.microsoft.com', + ) + ); + + if ( empty( $webhook_url ) || empty( $message ) ) { + return false; + } + + $encoded_teams = wp_json_encode( array( 'text' => $message ) ); + $args = array( + 'body' => false !== $encoded_teams ? $encoded_teams : '', + 'headers' => array( 'Content-Type' => 'application/json; charset=utf-8' ), + 'timeout' => 10, + 'data_format' => 'body', + ); + + $response = wp_remote_post( $webhook_url, $args ); + + if ( is_wp_error( $response ) ) { + return false; + } + + $status_code = (int) wp_remote_retrieve_response_code( $response ); + + return $status_code >= 200 && $status_code < 300; +} + +/** + * Send a vulnerability notification to Discord. + * + * @since 4.3.0 + * + * @param string $webhook_url Discord webhook URL. + * @param string $message Message body to deliver. + * + * @return bool True on success, false on failure. + */ +function wpvulnerability_send_discord_notification( $webhook_url, $message ) { + $webhook_url = wpvulnerability_validate_webhook_url( + $webhook_url, + array( + 'discord.com', + 'discordapp.com', + ) + ); + + if ( empty( $webhook_url ) || empty( $message ) ) { + return false; + } + + // Discord has a 2000 character limit per message. + if ( strlen( $message ) > 2000 ) { + $message = substr( $message, 0, 1997 ) . '...'; + } + + $encoded_discord = wp_json_encode( array( 'content' => $message ) ); + $args = array( + 'body' => false !== $encoded_discord ? $encoded_discord : '', + 'headers' => array( 'Content-Type' => 'application/json; charset=utf-8' ), + 'timeout' => 10, + 'data_format' => 'body', + ); + + $response = wp_remote_post( $webhook_url, $args ); + + if ( is_wp_error( $response ) ) { + return false; + } + + $status_code = (int) wp_remote_retrieve_response_code( $response ); + + return $status_code >= 200 && $status_code < 300; +} + +/** + * Send a vulnerability notification to Telegram. + * + * @since 4.3.0 + * + * @param string $bot_token Telegram bot token. + * @param string $chat_id Telegram chat ID. + * @param string $message Message body to deliver. + * + * @return bool True on success, false on failure. + */ +function wpvulnerability_send_telegram_notification( $bot_token, $chat_id, $message ) { + // Sanitize inputs. + $bot_token = sanitize_text_field( trim( (string) $bot_token ) ); + $chat_id = sanitize_text_field( trim( (string) $chat_id ) ); + + if ( empty( $bot_token ) || empty( $chat_id ) || empty( $message ) ) { + return false; + } + + // Validate bot token format (should be like: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11). + if ( ! preg_match( '/^\d+:[A-Za-z0-9_-]+$/', $bot_token ) ) { + return false; + } + + // Telegram has a 4096 character limit per message. + if ( strlen( $message ) > 4096 ) { + $message = substr( $message, 0, 4093 ) . '...'; + } + + $api_url = 'https://api.telegram.org/bot' . $bot_token . '/sendMessage'; + + $encoded_telegram = wp_json_encode( + array( + 'chat_id' => $chat_id, + 'text' => $message, + ) + ); + $args = array( + 'body' => false !== $encoded_telegram ? $encoded_telegram : '', + 'headers' => array( 'Content-Type' => 'application/json; charset=utf-8' ), + 'timeout' => 10, + 'data_format' => 'body', + ); + + $response = wp_remote_post( $api_url, $args ); + + if ( is_wp_error( $response ) ) { + return false; + } + + $status_code = (int) wp_remote_retrieve_response_code( $response ); + + return $status_code >= 200 && $status_code < 300; +} + +/** + * Executes the vulnerability notification process for a WordPress site. + * + * This function checks for vulnerabilities in the WordPress core, plugins, themes, PHP environment, and web server components. + * It generates an HTML email report detailing any vulnerabilities found. If the function is called with + * the $forced parameter set to true, it will send an email even if no vulnerabilities are found, which is useful for testing purposes. + * + * @since 2.0.0 + * + * @param bool $forced Optional. If set to true, forces the sending of a notification email regardless of whether vulnerabilities are found. Default false. + * @return bool True when the email was successfully sent, false otherwise. + */ +function wpvulnerability_execute_notification( $forced = false ) { + $email_content = ''; + $wpvulnerability_settings = is_multisite() ? get_site_option( 'wpvulnerability-config' ) : get_option( 'wpvulnerability-config' ); + + if ( ! is_array( $wpvulnerability_settings ) ) { + $wpvulnerability_settings = array(); + } + + $notify_settings = isset( $wpvulnerability_settings['notify'] ) ? $wpvulnerability_settings['notify'] : array(); + $wpvulnerability_settings['notify'] = wpvulnerability_normalize_notify_settings( $notify_settings ); + + $email_enabled = wpvulnerability_is_yes( $wpvulnerability_settings['notify']['email'] ) && ! empty( $wpvulnerability_settings['emails'] ); + $slack_enabled = wpvulnerability_is_yes( $wpvulnerability_settings['notify']['slack'] ) && ! empty( $wpvulnerability_settings['slack_webhook'] ); + $teams_enabled = wpvulnerability_is_yes( $wpvulnerability_settings['notify']['teams'] ) && ! empty( $wpvulnerability_settings['teams_webhook'] ); + $discord_enabled = wpvulnerability_is_yes( $wpvulnerability_settings['notify']['discord'] ) && ! empty( $wpvulnerability_settings['discord_webhook'] ); + $telegram_enabled = wpvulnerability_is_yes( $wpvulnerability_settings['notify']['telegram'] ) && ! empty( $wpvulnerability_settings['telegram_bot_token'] ) && ! empty( $wpvulnerability_settings['telegram_chat_id'] ); + + if ( ! $forced && ( empty( $wpvulnerability_settings['period'] ) || ( ! $email_enabled && ! $slack_enabled && ! $teams_enabled && ! $discord_enabled && ! $telegram_enabled ) ) ) { + return false; + } + + // Generate HTML for core, plugins, and themes vulnerabilities. + $html_core = wpvulnerability_analyze_filter( 'core' ) && wpvulnerability_get_component_count( 'core' ) ? wpvulnerability_html_core() : null; + + $html_plugins = wpvulnerability_analyze_filter( 'plugins' ) && wpvulnerability_get_component_count( 'plugins' ) ? wpvulnerability_html_plugins() : null; + + $html_themes = wpvulnerability_analyze_filter( 'themes' ) && wpvulnerability_get_component_count( 'themes' ) ? wpvulnerability_html_themes() : null; + + // Generate HTML for PHP, Apache, Nginx, MariaDB, MySQL... vulnerabilities. + $html_php = wpvulnerability_analyze_filter( 'php' ) && wpvulnerability_get_component_count( 'php' ) ? wpvulnerability_html_software( 'php' ) : null; + + $html_apache = wpvulnerability_analyze_filter( 'apache' ) && wpvulnerability_get_component_count( 'apache' ) ? wpvulnerability_html_software( 'apache' ) : null; + + $html_nginx = wpvulnerability_analyze_filter( 'nginx' ) && wpvulnerability_get_component_count( 'nginx' ) ? wpvulnerability_html_software( 'nginx' ) : null; + + $html_mariadb = wpvulnerability_analyze_filter( 'mariadb' ) && wpvulnerability_get_component_count( 'mariadb' ) ? wpvulnerability_html_software( 'mariadb' ) : null; + + $html_mysql = wpvulnerability_analyze_filter( 'mysql' ) && wpvulnerability_get_component_count( 'mysql' ) ? wpvulnerability_html_software( 'mysql' ) : null; + + $html_imagemagick = wpvulnerability_analyze_filter( 'imagemagick' ) && wpvulnerability_get_component_count( 'imagemagick' ) ? wpvulnerability_html_software( 'imagemagick' ) : null; + + $html_curl = wpvulnerability_analyze_filter( 'curl' ) && wpvulnerability_get_component_count( 'curl' ) ? wpvulnerability_html_software( 'curl' ) : null; + + $html_memcached = wpvulnerability_analyze_filter( 'memcached' ) && wpvulnerability_get_component_count( 'memcached' ) ? wpvulnerability_html_software( 'memcached' ) : null; + + $html_redis = wpvulnerability_analyze_filter( 'redis' ) && wpvulnerability_get_component_count( 'redis' ) ? wpvulnerability_html_software( 'redis' ) : null; + + $html_sqlite = wpvulnerability_analyze_filter( 'sqlite' ) && wpvulnerability_get_component_count( 'sqlite' ) ? wpvulnerability_html_software( 'sqlite' ) : null; + + $all_empty = ( empty( $html_core ) && empty( $html_plugins ) && empty( $html_themes ) && empty( $html_php ) && empty( $html_apache ) && empty( $html_nginx ) && empty( $html_mariadb ) && empty( $html_mysql ) && empty( $html_imagemagick ) && empty( $html_curl ) && empty( $html_memcached ) && empty( $html_redis ) && empty( $html_sqlite ) ); + + // If forced email sending is not enabled and no vulnerabilities were found, exit the function. + if ( ! $forced && $all_empty ) { + return false; + } elseif ( $forced && $all_empty ) { + $email_content .= '

' . esc_html__( 'No vulnerabilities found', 'wpvulnerability' ) . '

'; + $email_content .= '

' . esc_html__( 'This is likely a test. The site does not have vulnerabilities.', 'wpvulnerability' ) . '

'; + } + + // Append core vulnerabilities HTML to the email content. + if ( ! empty( $html_core ) ) { + $email_content .= '

' . esc_html__( 'Core vulnerabilities', 'wpvulnerability' ) . '

'; + $email_content .= $html_core; + } + + // Append plugins vulnerabilities HTML to the email content. + if ( ! empty( $html_plugins ) ) { + $email_content .= '

' . esc_html__( 'Plugins vulnerabilities', 'wpvulnerability' ) . '

'; + $email_content .= $html_plugins; + } + + // Append themes vulnerabilities HTML to the email content. + if ( ! empty( $html_themes ) ) { + $email_content .= '

' . esc_html__( 'Themes vulnerabilities', 'wpvulnerability' ) . '

'; + $email_content .= $html_themes; + } + + // Append PHP vulnerabilities HTML to the email content. + if ( ! empty( $html_php ) ) { + $email_content .= '

' . esc_html__( 'PHP vulnerabilities', 'wpvulnerability' ) . '

'; + $email_content .= $html_php; + } + + // Append Apache vulnerabilities HTML to the email content. + if ( ! empty( $html_apache ) ) { + $email_content .= '

' . esc_html__( 'Apache HTTPD vulnerabilities', 'wpvulnerability' ) . '

'; + $email_content .= $html_apache; + } + + // Append Nginx vulnerabilities HTML to the email content. + if ( ! empty( $html_nginx ) ) { + $email_content .= '

' . esc_html__( 'Nginx vulnerabilities', 'wpvulnerability' ) . '

'; + $email_content .= $html_nginx; + } + + // Append MariaDB vulnerabilities HTML to the email content. + if ( ! empty( $html_mariadb ) ) { + $email_content .= '

' . esc_html__( 'MariaDB vulnerabilities', 'wpvulnerability' ) . '

'; + $email_content .= $html_mariadb; + } + + // Append MySQL vulnerabilities HTML to the email content. + if ( ! empty( $html_mysql ) ) { + $email_content .= '

' . esc_html__( 'MySQL vulnerabilities', 'wpvulnerability' ) . '

'; + $email_content .= $html_mysql; + } + + // Append ImageMagick vulnerabilities HTML to the email content. + if ( ! empty( $html_imagemagick ) ) { + $email_content .= '

' . esc_html__( 'ImageMagick vulnerabilities', 'wpvulnerability' ) . '

'; + $email_content .= $html_imagemagick; + } + + // Append curl vulnerabilities HTML to the email content. + if ( ! empty( $html_curl ) ) { + $email_content .= '

' . esc_html__( 'curl vulnerabilities', 'wpvulnerability' ) . '

'; + $email_content .= $html_curl; + } + + // Append memcached vulnerabilities HTML to the email content. + if ( ! empty( $html_memcached ) ) { + $email_content .= '

' . esc_html__( 'memcached vulnerabilities', 'wpvulnerability' ) . '

'; + $email_content .= $html_memcached; + } + + // Append Redis vulnerabilities HTML to the email content. + if ( ! empty( $html_redis ) ) { + $email_content .= '

' . esc_html__( 'Redis vulnerabilities', 'wpvulnerability' ) . '

'; + $email_content .= $html_redis; + } + + // Append SQLite vulnerabilities HTML to the email content. + if ( ! empty( $html_sqlite ) ) { + $email_content .= '

' . esc_html__( 'SQLite vulnerabilities', 'wpvulnerability' ) . '

'; + $email_content .= $html_sqlite; + } + + // Get the site name. + $admin_site = is_multisite() ? get_site_option( 'site_name' ) : get_bloginfo( 'name' ); + + // Get the admin email. + $admin_email = is_multisite() ? get_site_option( 'admin_email' ) : get_bloginfo( 'admin_email' ); + $from_email = $admin_email; + + // Check if WPVULNERABILITY_MAIL is defined and valid, and use it if available. + if ( defined( 'WPVULNERABILITY_MAIL' ) ) { + $wpvulnerability_sender_email = sanitize_email( trim( (string) WPVULNERABILITY_MAIL ) ); + if ( is_email( $wpvulnerability_sender_email ) ) { + $from_email = $wpvulnerability_sender_email; + } + unset( $wpvulnerability_sender_email ); + } + + // Prepare email subject and content. + $email_subject = sprintf( + // translators: Site name. + __( 'Vulnerability found: %s', 'wpvulnerability' ), + ( is_scalar( $admin_site ) ? (string) $admin_site : '' ) + ); + + $email_prepared = wpvulnerability_email_prepare( esc_html__( 'Vulnerability found', 'wpvulnerability' ), $email_content ); + + // Prepare email headers. + $email_headers = array(); + $email_headers[] = 'From: WPVulnerability <' . ( is_scalar( $from_email ) ? (string) $from_email : '' ) . '>'; + $email_headers[] = 'Content-Type: text/html; charset=UTF-8'; + + if ( $forced && ( empty( $wpvulnerability_settings['emails'] ) ) ) { + // Determine the recipient email. + $wpvulnerability_settings['emails'] = array( $admin_email ); + } + + $wpmail = false; + + if ( $email_enabled ) { + $mail_to = is_array( $wpvulnerability_settings['emails'] ) ? array_map( + static function ( $e ) { + return is_scalar( $e ) ? (string) $e : ''; + }, + $wpvulnerability_settings['emails'] + ) : ( is_scalar( $wpvulnerability_settings['emails'] ) ? (string) $wpvulnerability_settings['emails'] : '' ); + $wpmail = wp_mail( $mail_to, $email_subject, $email_prepared, $email_headers ); + } + + $text_message_body = wpvulnerability_html_to_plain_text( $email_content ); + $text_message = trim( (string) ( $email_subject . "\n\n" . $text_message_body ) ); + + if ( $slack_enabled ) { + wpvulnerability_send_slack_notification( ( is_scalar( $wpvulnerability_settings['slack_webhook'] ) ? (string) $wpvulnerability_settings['slack_webhook'] : '' ), $text_message ); + } + + if ( $teams_enabled ) { + wpvulnerability_send_teams_notification( ( is_scalar( $wpvulnerability_settings['teams_webhook'] ) ? (string) $wpvulnerability_settings['teams_webhook'] : '' ), $text_message ); + } + + if ( $discord_enabled ) { + wpvulnerability_send_discord_notification( ( is_scalar( $wpvulnerability_settings['discord_webhook'] ) ? (string) $wpvulnerability_settings['discord_webhook'] : '' ), $text_message ); + } + + if ( $telegram_enabled ) { + wpvulnerability_send_telegram_notification( ( is_scalar( $wpvulnerability_settings['telegram_bot_token'] ) ? (string) $wpvulnerability_settings['telegram_bot_token'] : '' ), ( is_scalar( $wpvulnerability_settings['telegram_chat_id'] ) ? (string) $wpvulnerability_settings['telegram_chat_id'] : '' ), $text_message ); + } + + return $wpmail; +} + +// phpcs:disable WordPress.NamingConventions.ValidVariableName.UsedPropertyNotSnakeCase -- DOM properties follow upstream naming. +/** + * Convert HTML notification content into a plain text representation. + * + * Ensures notifications sent to chat platforms retain meaningful structure by + * translating headings, paragraphs, lists, tables, and links into readable + * plain text. List indentation and table rows are preserved with appropriate + * line breaks so the resulting message can be consumed without HTML support. + * + * @since 4.1.4 + * + * @param string $html HTML fragment to convert. + * + * @return string Normalized plain text message. + */ +function wpvulnerability_html_to_plain_text( $html ) { + $html = (string) $html; + + if ( '' === trim( (string) $html ) ) { + return ''; + } + + if ( ! class_exists( 'DOMDocument', false ) ) { + return wp_strip_all_tags( $html ); + } + + $libxml_previous_state = libxml_use_internal_errors( true ); + $dom = new DOMDocument(); + $wrapped_html = '
' . $html . '
'; + $load_flags = 0; + + if ( defined( 'LIBXML_HTML_NOIMPLIED' ) ) { + $load_flags |= LIBXML_HTML_NOIMPLIED; + } + + if ( defined( 'LIBXML_HTML_NODEFDTD' ) ) { + $load_flags |= LIBXML_HTML_NODEFDTD; + } + + $dom->loadHTML( '' . $wrapped_html, $load_flags ); + libxml_clear_errors(); + libxml_use_internal_errors( $libxml_previous_state ); + + $list_stack = array(); + $output = ''; + + $doc_element = $dom->documentElement; + if ( null !== $doc_element ) { + foreach ( $doc_element->childNodes as $child_node ) { + $output .= wpvulnerability_dom_node_to_plain_text( $child_node, $list_stack ); + } + } + + $output = html_entity_decode( $output, ENT_QUOTES, 'UTF-8' ); + $output = preg_replace( '#/\\*.*?\\*/#s', '', $output ) ?? $output; + $output = preg_replace( '/[ \t]+\n/', "\n", $output ) ?? $output; + $output = preg_replace( "/\n{3,}/", "\n\n", $output ) ?? $output; + + return trim( (string) $output ); +} + +/** + * Recursively convert DOM nodes to plain text. + * + * @since 4.1.4 + * + * @param DOMNode $node Node being transformed. + * @param array> $list_stack Stack describing parent list context. + * + * @return string Plain text representation of the node. + */ +function wpvulnerability_dom_node_to_plain_text( DOMNode $node, array &$list_stack ): string { + if ( XML_TEXT_NODE === $node->nodeType ) { + $raw_value = $node->nodeValue ?? ''; + return preg_replace( '/\\s+/u', ' ', $raw_value ) ?? $raw_value; + } + + if ( XML_ELEMENT_NODE !== $node->nodeType ) { + return ''; + } + + $tag_name = strtolower( (string) $node->nodeName ); + + switch ( $tag_name ) { + case 'br': + return "\n"; + + case 'p': + case 'div': + case 'section': + case 'article': + case 'header': + case 'footer': + $content = trim( (string) wpvulnerability_dom_children_to_plain_text( $node, $list_stack ) ); + + return '' === $content ? '' : $content . "\n\n"; + + case 'h1': + case 'h2': + case 'h3': + case 'h4': + case 'h5': + case 'h6': + $content = trim( (string) wpvulnerability_dom_children_to_plain_text( $node, $list_stack ) ); + + return '' === $content ? '' : $content . "\n\n"; + + case 'strong': + case 'em': + case 'span': + case 'code': + case 'b': + case 'i': + case 'u': + case 'small': + return wpvulnerability_dom_children_to_plain_text( $node, $list_stack ); + + case 'a': + $content = trim( (string) wpvulnerability_dom_children_to_plain_text( $node, $list_stack ) ); + $href = ''; + + if ( null !== $node->attributes && null !== $node->attributes->getNamedItem( 'href' ) ) { + $href_attribute = $node->attributes->getNamedItem( 'href' ); + $href = trim( (string) $href_attribute->nodeValue ); + } + + if ( '' !== $href && '' !== $content && false === strpos( $content, $href ) ) { + return $content . ' (' . $href . ')'; + } + + return $content; + + case 'ul': + case 'ol': + $list_stack[] = array( + 'type' => $tag_name, + 'index' => 0, + ); + $content = wpvulnerability_dom_children_to_plain_text( $node, $list_stack ); + array_pop( $list_stack ); + + return $content . ( '' === $content ? '' : "\n" ); + + case 'li': + $depth = count( $list_stack ); + $indent = $depth > 0 ? str_repeat( ' ', $depth - 1 ) : ''; + $marker = '- '; + + if ( $depth > 0 ) { + $current_index = $depth - 1; + $list_stack[ $current_index ]['index'] = ( is_int( $list_stack[ $current_index ]['index'] ) ? $list_stack[ $current_index ]['index'] : 0 ) + 1; + + if ( isset( $list_stack[ $current_index ]['type'] ) && 'ol' === $list_stack[ $current_index ]['type'] ) { + $marker = $list_stack[ $current_index ]['index'] . '. '; + } + } + + $content = trim( (string) wpvulnerability_dom_children_to_plain_text( $node, $list_stack ) ); + + if ( '' === $content ) { + return ''; + } + + $content = preg_replace( '/\n/', "\n" . $indent . ' ', $content ) ?? $content; + + return $indent . $marker . $content . "\n"; + + case 'table': + $rows = trim( (string) wpvulnerability_dom_children_to_plain_text( $node, $list_stack ) ); + + return '' === $rows ? '' : $rows . "\n"; + + case 'thead': + case 'tbody': + case 'tfoot': + case 'tr': + return wpvulnerability_dom_children_to_plain_text( $node, $list_stack ); + + case 'th': + case 'td': + $content = trim( (string) wpvulnerability_dom_children_to_plain_text( $node, $list_stack ) ); + + return '' === $content ? '' : $content . ' | '; + + default: + return wpvulnerability_dom_children_to_plain_text( $node, $list_stack ); + } +} + +/** + * Generate plain text for the children of a DOM node. + * + * @since 4.1.4 + * + * @param DOMNode $node Parent DOM node. + * @param array> $list_stack Stack describing parent list context. + * + * @return string Concatenated plain text for child nodes. + */ +function wpvulnerability_dom_children_to_plain_text( DOMNode $node, array &$list_stack ): string { + $text = ''; + + foreach ( $node->childNodes as $child ) { + $child_text = wpvulnerability_dom_node_to_plain_text( $child, $list_stack ); + + if ( '' === $child_text ) { + continue; + } + + $text .= $child_text; + } + + if ( 'td' === strtolower( (string) $node->nodeName ) || 'th' === strtolower( (string) $node->nodeName ) ) { + $text = rtrim( (string) $text, ' |' ); + } + + if ( 'tr' === strtolower( (string) $node->nodeName ) ) { + $text = rtrim( (string) $text, ' |' ); + $text = '' === $text ? '' : $text . "\n"; + } + + return $text; +} +// phpcs:enable WordPress.NamingConventions.ValidVariableName.UsedPropertyNotSnakeCase diff --git a/wpvulnerability-plugins.php b/wpvulnerability-plugins.php new file mode 100644 index 0000000..63639e5 --- /dev/null +++ b/wpvulnerability-plugins.php @@ -0,0 +1,791 @@ +> $plugins List of plugins returned by get_plugins(). + * @return string Hash representing the installed plugins and their versions. + */ +function wpvulnerability_plugins_generate_signature( $plugins ) { + $normalized = array(); + + foreach ( $plugins as $file_path => $plugin_data ) { + $plugin_file = sanitize_text_field( (string) $file_path ); + $version = ''; + + if ( isset( $plugin_data['Version'] ) ) { + $v_raw = $plugin_data['Version']; + $version = sanitize_text_field( is_scalar( $v_raw ) ? (string) $v_raw : '' ); + } + + $normalized[ $plugin_file ] = $version; + } + + ksort( $normalized ); + + $encoded = wp_json_encode( $normalized ); + return md5( false !== $encoded ? $encoded : '' ); +} + +/** + * Retrieve the signature of the currently installed plugins. + * + * @since 4.1.2 + * + * @return string Hash representing the installed plugins and their versions. + */ +function wpvulnerability_plugins_get_current_signature() { + if ( ! function_exists( 'get_plugins' ) ) { + require_once ABSPATH . 'wp-admin/includes/plugin.php'; + } + + return wpvulnerability_plugins_generate_signature( get_plugins() ); +} + +/** + * Adds a vulnerability notice under vulnerable plugins. + * + * This function retrieves the vulnerability data for the specified plugin from the WordPress options table + * and displays a detailed notice below the plugin's row on the plugins management page in the WordPress admin area. + * The notice includes information about the plugin's vulnerabilities, such as affected versions, severity, CVSS scores, + * and links to sources. + * + * The function is applicable both in single-site and multisite installations. In a multisite setup, the notice + * is displayed only in the network admin area or in the site admin area of individual sites. + * + * @since 2.0.0 + * + * @param string $plugin_file Main plugin folder/file name. + * @param array $plugin_data Plugin data array containing information about the plugin. + * @param string $plugin_status Plugin status (active, inactive, etc.). + * + * @return void + */ +function wpvulnerability_plugin_info_after( $plugin_file, $plugin_data, $plugin_status = '' ) { + + // Retrieve the vulnerabilities for all plugins from the options table and decode the JSON. + $raw_plugins = is_multisite() ? get_site_option( 'wpvulnerability-plugins', '' ) : get_option( 'wpvulnerability-plugins', '' ); + $plugin_vulnerabilities = json_decode( is_string( $raw_plugins ) ? $raw_plugins : '', true ); + if ( ! is_array( $plugin_vulnerabilities ) ) { + $plugin_vulnerabilities = array(); + } + + if ( ( is_multisite() && is_network_admin() ) || ! is_multisite() ) { + + // Determine whether the plugin is active and add an appropriate CSS class to the table row. + $tr_class = is_plugin_active( $plugin_file ) ? 'active' : ''; + + // Generate the vulnerability notice message with the plugin name. + $message = sprintf( + /* translators: 1: Plugin name */ + __( '%1$s has a known vulnerability that may be affecting your installed version.', 'wpvulnerability' ), + wp_kses( is_scalar( $plugin_data['Name'] ) ? (string) $plugin_data['Name'] : '', 'strip' ) + ); + + // Begin generating the table row HTML markup with appropriate CSS classes and the vulnerability notice message. + $information = ''; + $information .= ''; + $information .= '

' . esc_html( $message ) . ''; + $information .= '

'; + $information .= ''; + + // Loop through all vulnerabilities for the current plugin and add their details to the table row HTML markup. + $pf_entry = isset( $plugin_vulnerabilities[ $plugin_file ] ) && is_array( $plugin_vulnerabilities[ $plugin_file ] ) ? $plugin_vulnerabilities[ $plugin_file ] : array(); + $vulnerabilities = isset( $pf_entry['vulnerabilities'] ) && is_array( $pf_entry['vulnerabilities'] ) ? $pf_entry['vulnerabilities'] : array(); + + foreach ( $vulnerabilities as $vulnerability ) { + if ( ! is_array( $vulnerability ) ) { + continue; + } + + $vuln_versions_raw = $vulnerability['versions'] ?? ''; + $vuln_versions = is_scalar( $vuln_versions_raw ) ? (string) $vuln_versions_raw : ''; + $vuln_closed_raw = $vulnerability['closed'] ?? 0; + $vuln_closed = is_scalar( $vuln_closed_raw ) ? intval( $vuln_closed_raw ) : 0; + $vuln_unfixed_raw = $vulnerability['unfixed'] ?? 0; + $vuln_unfixed = is_scalar( $vuln_unfixed_raw ) ? intval( $vuln_unfixed_raw ) : 0; + $vuln_impact = isset( $vulnerability['impact'] ) && is_array( $vulnerability['impact'] ) ? $vulnerability['impact'] : array(); + $vuln_cvss = isset( $vuln_impact['cvss'] ) && is_array( $vuln_impact['cvss'] ) ? $vuln_impact['cvss'] : array(); + $vuln_cvss2 = isset( $vuln_impact['cvss2'] ) && is_array( $vuln_impact['cvss2'] ) ? $vuln_impact['cvss2'] : array(); + $vuln_cvss3 = isset( $vuln_impact['cvss3'] ) && is_array( $vuln_impact['cvss3'] ) ? $vuln_impact['cvss3'] : array(); + $vuln_cvss4 = isset( $vuln_impact['cvss4'] ) && is_array( $vuln_impact['cvss4'] ) ? $vuln_impact['cvss4'] : array(); + $vuln_ssvc = isset( $vuln_impact['ssvc'] ) && is_array( $vuln_impact['ssvc'] ) ? $vuln_impact['ssvc'] : array(); + $vuln_cwe = isset( $vuln_impact['cwe'] ) && is_array( $vuln_impact['cwe'] ) ? $vuln_impact['cwe'] : array(); + $vuln_sources = isset( $vulnerability['source'] ) && is_array( $vulnerability['source'] ) ? $vulnerability['source'] : array(); + + $kev = ( isset( $vuln_ssvc['kev'] ) && true === $vuln_ssvc['kev'] ); + $exploitation = isset( $vuln_ssvc['exploitation'] ) && is_string( $vuln_ssvc['exploitation'] ) ? $vuln_ssvc['exploitation'] : ''; + $automatable = isset( $vuln_ssvc['automatable'] ) && is_string( $vuln_ssvc['automatable'] ) ? $vuln_ssvc['automatable'] : ''; + $kev_date_raw = $vuln_ssvc['kev_date'] ?? null; + $kev_date = is_string( $kev_date_raw ) && '' !== $kev_date_raw ? $kev_date_raw : null; + $epss_raw = $vuln_impact['epss'] ?? null; + $epss = is_numeric( $epss_raw ) ? (float) $epss_raw : null; + $description = wpvulnerability_get_source_description( $vuln_sources ); + + // Best available CVSS score and severity: cvss4 > cvss3 > cvss2 > legacy cvss. + $score_raw = null; + $sev_raw = null; + foreach ( array( $vuln_cvss4, $vuln_cvss3, $vuln_cvss2, $vuln_cvss ) as $cvss_c ) { + if ( empty( $cvss_c ) ) { + continue; + } + $s_raw = $cvss_c['score'] ?? null; + $v_raw = $cvss_c['severity'] ?? null; + $s = is_numeric( $s_raw ) ? number_format( (float) $s_raw, 1, '.', '' ) : null; + $v = is_string( $v_raw ) && '' !== $v_raw ? $v_raw : null; + if ( null !== $s || null !== $v ) { + $score_raw = $s; + $sev_raw = $v; + break; + } + } + + $what = array(); + foreach ( $vuln_cwe as $vulnerability_cwe ) { + if ( ! is_array( $vulnerability_cwe ) ) { + continue; + } + $cwe_name = $vulnerability_cwe['name'] ?? ''; + $cwe_desc = $vulnerability_cwe['description'] ?? ''; + $what[] = '
' . wp_kses( is_scalar( $cwe_name ) ? (string) $cwe_name : '', 'strip' ) . '
' . esc_html( is_scalar( $cwe_desc ) ? (string) $cwe_desc : '' ) . '
'; + } + + $version_display = wpvulnerability_clean_version_range( $vuln_versions ); + $source_pills = wpvulnerability_render_source_pills( $vuln_sources ); + $score_badge = wpvulnerability_render_score_badge( $score_raw, $sev_raw, $epss ); + + $information .= ''; + // Version range column. + $information .= ''; + // Details column. + $information .= ''; + $information .= ''; + } + + $information .= '
'; + $information .= '' !== $version_display + ? '' . $version_display . '' + : '—'; + $information .= ''; + $show_active = $kev || 'active' === $exploitation; + $show_poc = 'poc' === $exploitation; + $show_auto = 'yes' === $automatable; + if ( $show_active || $show_poc || $show_auto || '' !== $score_badge ) { + $information .= '
'; + if ( $show_active ) { + $information .= '⚠ ' . esc_html__( 'Actively exploited', 'wpvulnerability' ); + if ( $kev && null !== $kev_date ) { + $information .= ' · ' . esc_html( $kev_date ); + } + $information .= ''; + } + if ( $show_poc ) { + $information .= '⚡ ' . esc_html__( 'Public exploit', 'wpvulnerability' ) . ''; + } + if ( $show_auto ) { + $information .= '⚙ ' . esc_html__( 'Automatable', 'wpvulnerability' ) . ''; + } + if ( '' !== $score_badge ) { + $information .= $score_badge; + } + $information .= '
'; + } + if ( null !== $description ) { + $information .= '
' . esc_html( $description ) . '
'; + } + if ( $vuln_closed || $vuln_unfixed ) { + $information .= '
'; + if ( $vuln_closed ) { + $information .= '
' . esc_html__( 'This plugin is closed. Please replace it with another.', 'wpvulnerability' ) . '
'; + } + if ( $vuln_unfixed ) { + $information .= '
' . esc_html__( 'This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates.', 'wpvulnerability' ) . '
'; + } + $information .= '
'; + } + if ( ! empty( $what ) ) { + $information .= '
'; + foreach ( $what as $w ) { + $information .= $w; + } + $information .= '
'; + } + if ( '' !== $source_pills ) { + $information .= '
' . esc_html__( 'References:', 'wpvulnerability' ) . ''; + $information .= $source_pills; + $information .= '
'; + } + $information .= '
'; + $information .= ''; + $information .= ''; + + echo $information; // phpcs:ignore + } +} + +/** + * Retrieves vulnerabilities for a given plugin and updates its data. + * + * @since 2.0.0 + * + * @param array $plugin_data The plugin data array. + * @param string $file_path The path to the plugin file. + * + * @return array The updated plugin data array. + */ +function wpvulnerability_get_fresh_plugin_vulnerabilities( $plugin_data, $file_path ) { + + $plugin_slug = null; + + // Extract the folder name from the file path. + $folder_name = explode( '/', $file_path ); + + // Use the first folder segment as the plugin slug. + $plugin_slug = wp_kses( trim( (string) $folder_name[0] ), 'strip' ); + unset( $folder_name ); + + // If the plugin slug is empty, fall back to the TextDomain key. + if ( empty( $plugin_slug ) && isset( $plugin_data['TextDomain'] ) ) { + $td_raw = $plugin_data['TextDomain']; + $plugin_slug = wp_kses( is_scalar( $td_raw ) ? (string) $td_raw : '', 'strip' ); + } + + // Get the plugin version from the plugin data. + $plugin_version_raw = $plugin_data['Version'] ?? ''; + $plugin_version = wp_kses( is_scalar( $plugin_version_raw ) ? (string) $plugin_version_raw : '', 'strip' ); + + // Initialize vulnerability-related fields. + $plugin_data['vulnerabilities'] = null; + $plugin_data['vulnerable'] = 0; + + // Retrieve vulnerabilities for the plugin using its slug and version. + if ( ! empty( $plugin_slug ) ) { + + $plugin_api_response = wpvulnerability_get_plugin( $plugin_slug, $plugin_version, 0, 0 ); + + // If vulnerabilities are found, update the plugin data accordingly. + if ( ! empty( $plugin_api_response ) ) { + + $plugin_data['slug'] = $plugin_slug; + $plugin_data['vulnerabilities'] = $plugin_api_response; + $plugin_data['vulnerable'] = 1; + + } + } + + return $plugin_data; +} + +/** + * Retrieves updated data for a specified plugin, potentially including vulnerability information. + * + * @since 3.1.0 + * + * @param array $plugin_data The original plugin data array, expected to contain keys like 'TextDomain' and 'Version'. + * @param string $file_path The file path of the plugin, used to determine the plugin's slug if 'TextDomain' is not specified in `$plugin_data`. + * + * @return array|null Updated plugin data array with fresh information or null if the plugin slug cannot be determined or no updated information is available. + */ +function wpvulnerability_get_fresh_plugin_data( $plugin_data, $file_path ) { + + $plugin_slug = ''; + + // Extract the folder name from the file path. + $folder_name = explode( '/', $file_path ); + + // Use the first folder segment as the plugin slug. + $plugin_slug = wp_kses( trim( (string) $folder_name[0] ), 'strip' ); + unset( $folder_name ); + + // If the plugin slug is still empty, use the TextDomain key from the plugin data if it exists. + if ( '' === $plugin_slug && isset( $plugin_data['TextDomain'] ) ) { + $td_raw2 = $plugin_data['TextDomain']; + $plugin_slug = wp_kses( is_scalar( $td_raw2 ) ? (string) $td_raw2 : '', 'strip' ); + } + + // Get the plugin version from the plugin data if it exists. + $plugin_version_raw2 = $plugin_data['Version'] ?? ''; + $plugin_version = wp_kses( is_scalar( $plugin_version_raw2 ) ? (string) $plugin_version_raw2 : '', 'strip' ); + + // Retrieve vulnerabilities for the plugin using its slug and version. + if ( ! empty( $plugin_slug ) ) { + + $plugin_api_response = wpvulnerability_get_plugin( $plugin_slug, $plugin_version, 1, 1 ); + + // If vulnerabilities are found, return the updated plugin data. + if ( ! empty( $plugin_api_response ) ) { + return $plugin_api_response; + } + } + + return null; // Return null if no valid data is found. +} + +/** + * Get Installed Plugins + * Retrieves the list of installed plugins, checks for vulnerabilities in each of them, caches the data, and sends an email notification if vulnerabilities are detected. + * + * @since 2.0.0 + * @since 4.1.2 Stores a signature of the installed plugins to detect inventory changes. + * + * @return string JSON-encoded array of plugin data with vulnerabilities and vulnerable status, or '[]' on encoding error. + */ +function wpvulnerability_plugin_get_installed() { + + $wpvulnerability_plugins_vulnerable = 0; + + // Ensure the get_plugins() function is available. + if ( ! function_exists( 'get_plugins' ) ) { + require_once ABSPATH . 'wp-admin/includes/plugin.php'; + } + + // Retrieve the list of installed plugins. + $plugins = get_plugins(); + $signature = wpvulnerability_plugins_generate_signature( $plugins ); + + // Iterate through each plugin and check for vulnerabilities. + foreach ( $plugins as $file_path => $plugin_data ) { + + $plugins[ $file_path ] = wpvulnerability_get_fresh_plugin_vulnerabilities( $plugin_data, $file_path ); + + // Increment the vulnerable plugin counter if vulnerabilities are found. + $vuln_flag = $plugins[ $file_path ]['vulnerable'] ?? null; + if ( is_scalar( $vuln_flag ) && (int) $vuln_flag ) { + ++$wpvulnerability_plugins_vulnerable; + } + } + + // Update site options for multisite installations. + if ( is_multisite() ) { + update_site_option( 'wpvulnerability-plugins', wp_json_encode( $plugins ) ); + update_site_option( 'wpvulnerability-plugins-vulnerable', wp_json_encode( number_format( $wpvulnerability_plugins_vulnerable, 0, '.', '' ) ) ); + update_site_option( 'wpvulnerability-plugins-cache', wp_json_encode( number_format( time() + ( 3600 * wpvulnerability_cache_hours() ), 0, '.', '' ) ) ); + update_site_option( 'wpvulnerability-plugins-signature', wp_json_encode( $signature ) ); + } else { + // Update options for single site installations. + update_option( 'wpvulnerability-plugins', wp_json_encode( $plugins ), false ); + update_option( 'wpvulnerability-plugins-vulnerable', wp_json_encode( number_format( $wpvulnerability_plugins_vulnerable, 0, '.', '' ) ), false ); + update_option( 'wpvulnerability-plugins-cache', wp_json_encode( number_format( time() + ( 3600 * wpvulnerability_cache_hours() ), 0, '.', '' ) ), false ); + update_option( 'wpvulnerability-plugins-signature', wp_json_encode( $signature ), false ); + } + + // Return the JSON-encoded array of plugin data. + $encoded = wp_json_encode( $plugins ); + return false !== $encoded ? $encoded : '[]'; +} + +/** + * Retrieves cached data for installed plugins, optionally refreshing when forced. + * + * @since 3.1.0 + * @since 4.1.2 Refreshes automatically when the installed plugins signature changes. + * + * @param bool $clean Optional. Whether to force a refresh of the plugin data cache. Default false. + * + * @return string JSON-encoded array of plugin data, or '[]' on encoding error. + */ +function wpvulnerability_plugin_get_data( $clean = false ) { + if ( true === $clean ) { + // Ensure the get_plugins() function is available. + if ( ! function_exists( 'get_plugins' ) ) { + require_once ABSPATH . 'wp-admin/includes/plugin.php'; + } + + // Retrieve the list of installed plugins. + $plugins = get_plugins(); + $pluginsdata = array(); + $signature = wpvulnerability_plugins_generate_signature( $plugins ); + + // Iterate through each plugin and get fresh data. + foreach ( $plugins as $file_path => $plugin_data ) { + $pluginsdata[ $file_path ] = wpvulnerability_get_fresh_plugin_data( $plugin_data, $file_path ); + } + + // Update site options for multisite installations. + if ( is_multisite() ) { + update_site_option( 'wpvulnerability-plugins-data', wp_json_encode( $pluginsdata ) ); + update_site_option( 'wpvulnerability-plugins-cache-data', wp_json_encode( number_format( time() + ( 3600 * wpvulnerability_cache_hours() ), 0, '.', '' ) ) ); + update_site_option( 'wpvulnerability-plugins-cache', wp_json_encode( number_format( time() + ( 3600 * wpvulnerability_cache_hours() ), 0, '.', '' ) ) ); + update_site_option( 'wpvulnerability-plugins-signature', wp_json_encode( $signature ) ); + } else { + // Update options for single site installations. + update_option( 'wpvulnerability-plugins-data', wp_json_encode( $pluginsdata ), false ); + update_option( 'wpvulnerability-plugins-cache-data', wp_json_encode( number_format( time() + ( 3600 * wpvulnerability_cache_hours() ), 0, '.', '' ) ), false ); + update_option( 'wpvulnerability-plugins-cache', wp_json_encode( number_format( time() + ( 3600 * wpvulnerability_cache_hours() ), 0, '.', '' ) ), false ); + update_option( 'wpvulnerability-plugins-signature', wp_json_encode( $signature ), false ); + } + + $encoded_data = wp_json_encode( $pluginsdata ); + return false !== $encoded_data ? $encoded_data : '[]'; + } + + $raw_pd = is_multisite() ? get_site_option( 'wpvulnerability-plugins-data', '' ) : get_option( 'wpvulnerability-plugins-data', '' ); + $plugin_data = json_decode( is_string( $raw_pd ) ? $raw_pd : '', true ); + + if ( ! is_array( $plugin_data ) ) { + $plugin_data = array(); + } + + $encoded = wp_json_encode( $plugin_data ); + return false !== $encoded ? $encoded : '[]'; +} + +/** + * Get cached plugin vulnerabilities without contacting the API. Data is refreshed by scheduled or manual updates. + * + * @since 2.0.0 + * @since 4.1.2 Refreshes when the installed plugins signature changes. + * + * @return array Array of installed plugins with their vulnerabilities. + */ +function wpvulnerability_plugin_get_vulnerabilities() { + + $raw_data = is_multisite() ? get_site_option( 'wpvulnerability-plugins', '' ) : get_option( 'wpvulnerability-plugins', '' ); + $plugin_data = json_decode( is_string( $raw_data ) ? $raw_data : '', true ); + + return is_array( $plugin_data ) ? $plugin_data : array(); +} + +/** + * Update the installed plugins cache and remove any old cache data. + * + * @since 2.0.0 + * + * @return void + */ +function wpvulnerability_plugin_get_vulnerabilities_clean() { + wpvulnerability_clear_cache( 'plugins' ); + wpvulnerability_plugin_get_installed(); + wpvulnerability_plugin_get_data( true ); +} + +/** + * Displays information in the 'Last Updated' column for each plugin in the plugins list table. + * + * This function is triggered for each row in the plugins list table when the 'Last Updated' column is rendered. + * It retrieves the last update date from stored plugin data, compares it against the current date to highlight + * plugins not updated in over a year or those marked as closed, and displays this information. + * + * @since 3.1.0 Introduced. + * + * @param string $column_name The name of the current column being rendered. + * @param string $plugin_file Path to the plugin file, relative to the plugins directory. + * @param array $plugin_data Array of plugin data, such as the plugin's name, version, and description. + * + * @return void Outputs the last updated information directly to the browser, including any warnings for plugins + * not updated in over a year or marked as closed. + */ +function wpvulnerability_plugin_show_lastupdated( $column_name, $plugin_file, $plugin_data ) { + + $now = time(); + $year = strtotime( '-1 year', $now ); + + if ( 'last_updated' === $column_name && $plugin_file ) { + + $plugin_slug = ''; + + // Extract the plugin slug from the file path. + $folder_name = explode( '/', $plugin_file ); + + // Use the first folder segment as the plugin slug. + $plugin_slug = wp_kses( trim( (string) $folder_name[0] ), 'strip' ); + unset( $folder_name ); + + // If the plugin slug is empty, extract it from the plugin data. + if ( '' === $plugin_slug && isset( $plugin_data['TextDomain'] ) ) { + $td_raw3 = $plugin_data['TextDomain']; + $plugin_slug = wp_kses( is_scalar( $td_raw3 ) ? (string) $td_raw3 : '', 'strip' ); + } + + if ( '' !== $plugin_slug ) { + + // Retrieve the vulnerabilities for all plugins from the options table and decode the JSON. + $raw_plugins_data = is_multisite() ? get_site_option( 'wpvulnerability-plugins-data', '' ) : get_option( 'wpvulnerability-plugins-data', '' ); + $plugins_data = json_decode( is_string( $raw_plugins_data ) ? $raw_plugins_data : '', true ); + if ( ! is_array( $plugins_data ) ) { + $plugins_data = array(); + } + + // Get the plugin data from the stored data. + if ( isset( $plugins_data[ $plugin_file ] ) && is_array( $plugins_data[ $plugin_file ] ) ) { + $pd = $plugins_data[ $plugin_file ]; + + $pd_latest_raw = $pd['latest'] ?? 0; + $pd_latest = is_scalar( $pd_latest_raw ) ? intval( $pd_latest_raw ) : 0; + if ( $pd_latest > 0 ) { + + $timestamp = $pd_latest; + $df_raw = get_option( 'date_format', 'Y-m-d' ); + $date_format = is_scalar( $df_raw ) ? (string) $df_raw : 'Y-m-d'; + if ( function_exists( 'wp_date' ) ) { + $plugin_data_updated = (string) wp_date( $date_format, $timestamp ); + } else { + $plugin_data_updated = gmdate( $date_format, $timestamp ); + } + $plugin_data_ago = human_time_diff( $timestamp ); + + $warning_date = $pd_latest < $year; + $pd_closed_raw = $pd['closed'] ?? 0; + $warning_closed = isset( $pd['closed'] ) && ( is_scalar( $pd_closed_raw ) ? intval( $pd_closed_raw ) : 0 ); + + echo '

' . wp_kses( $plugin_data_updated, 'strip' ) . ' (' . wp_kses( (string) $plugin_data_ago, 'strip' ) . ')

'; + + if ( $warning_date ) { + echo '

⚠️ '; + esc_html_e( 'It hasn\'t been updated in over a year.', 'wpvulnerability' ); + echo '

'; + } + + if ( $warning_closed ) { + echo '

⚠️ '; + esc_html_e( 'It may no longer be available (closed?).', 'wpvulnerability' ); + echo '

'; + } + } else { + echo '

'; + } + } + } + } +} + +/** + * Adds a 'Last Updated' column to the plugins table list in the WordPress admin area. + * + * This function iterates over the existing columns in the plugins table and inserts a new column titled 'Last Updated' + * just before the 'auto-updates' column if it exists. If the 'auto-updates' column is not found, the 'Last Updated' + * column is appended at the end. The function is typically hooked to the 'manage_plugins_columns' filter in WordPress + * to modify the columns of the plugins table. + * + * @since 3.1.0 Introduced. + * + * @param array $columns An associative array of column names and titles for the plugins table. + * + * @return array An associative array containing the modified list of columns, including the new 'Last Updated' column. + */ +function wpvulnerability_plugin_add_lastupdated_column( $columns ) { + + $toadd = true; + $new_columns = array(); + + // Loop through each existing column and add it to the new columns array. + foreach ( $columns as $key => $title ) { + + // Add the existing column to the new columns array. + $new_columns[ $key ] = $title; + + // Insert your custom column before the 'auto-updates' column. + if ( 'description' === $key && $toadd ) { + $new_columns['last_updated'] = __( 'Last updated on', 'wpvulnerability' ); + $toadd = false; + } + } + + // If 'auto-updates' column is not found, add 'last_updated' column at the end. + if ( $toadd ) { + $new_columns['last_updated'] = __( 'Last updated on', 'wpvulnerability' ); + } + + // Return the modified columns array. + return $new_columns; +} + +/** + * Admin Head + * Adds vulnerability information after the plugin row and notices on the plugin page based on the installed plugins cache. + * + * @since 2.0.0 + * + * @return void + */ +function wpvulnerability_plugin_page() { + + // Check if the current page is the plugins page. + global $pagenow; + + if ( wpvulnerability_analyze_filter( 'plugins' ) && 'plugins.php' === $pagenow && wpvulnerability_capabilities() ) { + + // Get the vulnerabilities for the installed plugins. + $plugins = wpvulnerability_plugin_get_vulnerabilities(); + + // Loop through the plugins and add vulnerability information after the plugin row for vulnerable plugins. + foreach ( $plugins as $file_path => $plugin_data ) { + + if ( is_array( $plugin_data ) && isset( $plugin_data['vulnerable'] ) ) { + $vulnerable_raw = $plugin_data['vulnerable']; + if ( 1 === ( is_scalar( $vulnerable_raw ) ? intval( $vulnerable_raw ) : 0 ) ) { + add_action( 'after_plugin_row_' . $file_path, 'wpvulnerability_plugin_info_after', 10, 3 ); + } + } + } + + // Add 'Last Updated' column to the plugins table based on user capabilities. + if ( is_multisite() ) { + + add_filter( 'manage_plugins-network_columns', 'wpvulnerability_plugin_add_lastupdated_column' ); + + } else { + + add_filter( 'manage_plugins_columns', 'wpvulnerability_plugin_add_lastupdated_column' ); + + } + + add_action( 'manage_plugins_custom_column', 'wpvulnerability_plugin_show_lastupdated', 10, 3 ); + + } +} +// Add notices for vulnerable plugins on the plugin page. +add_action( 'admin_head', 'wpvulnerability_plugin_page' ); + +/** + * Filters the plugins list to show only vulnerable plugins when the "Vulnerable" tab is selected. + * + * This function hooks into the WordPress plugins listing to filter the displayed plugins based on their + * vulnerability status. When the "Vulnerable" tab is selected (identified by the `plugin_status=vulnerable` + * query parameter), it filters the plugins list to include only those plugins with known vulnerabilities. + * + * The function retrieves the vulnerabilities for all plugins from the WordPress options table and compares + * them against the active list of plugins. Plugins without vulnerabilities are removed from the list, leaving + * only those that are considered vulnerable. + * + * @since 3.3.5 + * + * @return void + */ +function wpvulnerability_plugins_filter() { + if ( isset( $_GET['plugin_status'] ) && 'vulnerable' === $_GET['plugin_status'] ) { // phpcs:ignore + + // Verify nonce for CSRF protection. + $nonce_raw = isset( $_GET['wpv_nonce'] ) && is_string( $_GET['wpv_nonce'] ) ? $_GET['wpv_nonce'] : ''; // phpcs:ignore + $nonce = sanitize_text_field( wp_unslash( $nonce_raw ) ); + + if ( ! wp_verify_nonce( $nonce, 'wpvulnerability_filter_plugins' ) ) { + // If nonce verification fails, silently return without filtering. + // This provides graceful degradation - users simply see all plugins instead of an error. + return; + } + + global $wp_list_table; + + // Retrieve the vulnerabilities for all plugins from the options table and decode the JSON. + $raw_pv = is_multisite() ? get_site_option( 'wpvulnerability-plugins', '' ) : get_option( 'wpvulnerability-plugins', '' ); + $plugin_vulnerabilities = json_decode( is_string( $raw_pv ) ? $raw_pv : '', true ); + if ( ! is_array( $plugin_vulnerabilities ) ) { + $plugin_vulnerabilities = array(); + } + + foreach ( $wp_list_table->items as $plugin_file => $plugin_data ) { + $pf_data = isset( $plugin_vulnerabilities[ $plugin_file ] ) && is_array( $plugin_vulnerabilities[ $plugin_file ] ) ? $plugin_vulnerabilities[ $plugin_file ] : array(); + $pf_vulns = isset( $pf_data['vulnerabilities'] ) && is_array( $pf_data['vulnerabilities'] ) ? $pf_data['vulnerabilities'] : array(); + if ( empty( $pf_vulns ) ) { + unset( $wp_list_table->items[ $plugin_file ] ); + } + } + } +} +add_action( 'pre_current_active_plugins', 'wpvulnerability_plugins_filter' ); + +/** + * Adds a "Vulnerable" tab to the WordPress plugins page that displays the count of vulnerable plugins. + * + * This function checks the cache for the number of vulnerable plugins and adds a new tab to the plugins + * management page in the WordPress admin area. The tab displays the count of vulnerable plugins and highlights it + * if it is currently active. + * + * @since 3.3.5 + * + * @param array $views An array of existing plugin views (tabs) in the WordPress admin plugins page. + * + * @return array The modified array of views including the "Vulnerable" tab. + */ +function wpvulnerability_plugins_view( $views ) { + + if ( ! wpvulnerability_analyze_filter( 'plugins' ) ) { + return $views; + } + + // Retrieve the number of plugins vulnerabilities from cache. + $raw_count = is_multisite() + ? get_site_option( 'wpvulnerability-plugins-vulnerable', '0' ) + : get_option( 'wpvulnerability-plugins-vulnerable', '0' ); + + $decoded_count = json_decode( is_string( $raw_count ) ? $raw_count : '0', true ); + $wpvulnerability_plugins_total = is_scalar( $decoded_count ) ? intval( $decoded_count ) : 0; + + $current_class = ( isset( $_GET['plugin_status'] ) && 'vulnerable' === $_GET['plugin_status'] ) ? ' class="current"' : ''; // phpcs:ignore + + $url = is_multisite() + ? network_admin_url( 'plugins.php?plugin_status=vulnerable' ) + : admin_url( 'plugins.php?plugin_status=vulnerable' ); + + // Add nonce for CSRF protection. + $url = esc_url( wp_nonce_url( $url, 'wpvulnerability_filter_plugins', 'wpv_nonce' ) ); + + $views['vulnerable'] = sprintf( + '%s', + $url, + $current_class, + // translators: the number of vulnerabilities. + sprintf( __( 'Vulnerabilities (%d)', 'wpvulnerability' ), $wpvulnerability_plugins_total ) + ); + + return $views; +} + +/** + * Adds a custom filter to the plugins page in the WordPress admin to display a tab for vulnerable plugins. + * + * This function hooks into the 'views_plugins' filter to add a custom tab or view for displaying vulnerable plugins + * on the plugins management page in the WordPress admin area. The tab is added in both single-site and multisite + * installations, but in a multisite setup, it is only added to the network admin area. + * + * @since 3.3.5 + * + * @return void + */ +function wpvulnerability_plugins_add_tab() { + + if ( is_multisite() ) { + if ( is_network_admin() ) { + add_filter( 'views_plugins-network', 'wpvulnerability_plugins_view' ); + } + } else { + add_filter( 'views_plugins', 'wpvulnerability_plugins_view' ); + } +} +add_action( 'admin_head', 'wpvulnerability_plugins_add_tab' ); diff --git a/wpvulnerability-process.php b/wpvulnerability-process.php new file mode 100644 index 0000000..103d702 --- /dev/null +++ b/wpvulnerability-process.php @@ -0,0 +1,822 @@ + $sources Array of source objects from the vulnerability API. + * @return string HTML div.wpvuln-source-pills, or empty string if no sources. + */ +function wpvulnerability_render_source_pills( $sources ) { + if ( empty( $sources ) ) { + return ''; + } + $pills = array(); + foreach ( $sources as $src ) { + if ( ! is_array( $src ) ) { + continue; + } + $link = is_scalar( $src['link'] ?? '' ) ? (string) ( $src['link'] ?? '' ) : ''; + + // Derive label and CSS slug from the URL hostname; fall back to name/id. + $label = ''; + $slug_input = ''; + if ( '' !== $link ) { + $parsed = wp_parse_url( $link ); + $host = ( is_array( $parsed ) && isset( $parsed['host'] ) ) ? (string) $parsed['host'] : ''; + if ( 0 === strpos( $host, 'www.' ) ) { + $host = substr( $host, 4 ); + } + if ( '' !== $host ) { + $label = $host; + $slug_input = $host; + } + } + if ( '' === $label ) { + $name = is_scalar( $src['name'] ?? '' ) ? (string) ( $src['name'] ?? '' ) : ''; + if ( '' === $name ) { + $name = is_scalar( $src['id'] ?? '' ) ? (string) ( $src['id'] ?? '' ) : ''; + } + $label = $name; + $slug_input = $name; + } + if ( '' === $label ) { + continue; + } + + $slug = wpvulnerability_source_css_slug( $slug_input ); + $cls = esc_attr( 'wpvuln-source-pill wpvuln-source-' . $slug ); + $inner = esc_html( $label ); + if ( '' !== $link ) { + $pills[] = '' . $inner . ''; + } else { + $pills[] = '' . $inner . ''; + } + } + if ( empty( $pills ) ) { + return ''; + } + return '
' . implode( '', $pills ) . '
'; +} + +/** + * Build a colour-coded CVSS score + severity badge, optionally followed by an EPSS badge. + * + * @since 5.0.0 + * + * @param string|null $score Formatted CVSS score (e.g. "7.5") or null. + * @param string|null $sev_raw Raw severity string (single-char or full word) or null. + * @param float|null $epss EPSS exploitation probability 0–1, or null if not available. + * @return string HTML span(s) for score and/or EPSS, or empty string if no data. + */ +function wpvulnerability_render_score_badge( $score, $sev_raw, $epss = null ) { + if ( is_null( $score ) && ( is_null( $sev_raw ) || '' === $sev_raw ) && is_null( $epss ) ) { + return ''; + } + $sev_lower = is_string( $sev_raw ) ? strtolower( trim( $sev_raw ) ) : ''; + $css_map = array( + 'c' => 'critical', + 'critical' => 'critical', + 'h' => 'high', + 'high' => 'high', + 'm' => 'medium', + 'medium' => 'medium', + 'l' => 'low', + 'low' => 'low', + 'n' => 'none', + 'none' => 'none', + ); + $css_key = isset( $css_map[ $sev_lower ] ) ? $css_map[ $sev_lower ] : 'none'; + $sev_label = ( is_string( $sev_raw ) && '' !== $sev_raw ) ? wpvulnerability_severity( $sev_raw ) : null; + $parts = array(); + if ( ! is_null( $score ) ) { + $parts[] = esc_html( $score ); + } + if ( ! is_null( $sev_label ) ) { + $parts[] = esc_html( $sev_label ); + } + $badge = ''; + if ( ! empty( $parts ) ) { + $badge = '' . implode( ' · ', $parts ) . ''; + } + if ( null !== $epss ) { + $badge .= 'EPSS ' . esc_html( number_format( $epss * 100, 1 ) ) . '%'; + } + return $badge; +} + +/** + * Extract the best available description from a vulnerability's source array. + * + * Iterates source objects and returns the first non-empty description string, + * stripping any leading language tag (e.g. "[en-US] ") added by the CVE API. + * + * @since 5.0.0 + * + * @param array $sources Source objects from the vulnerability API. + * @return string|null First non-empty description found, or null if none. + */ +function wpvulnerability_get_source_description( $sources ) { + if ( empty( $sources ) ) { + return null; + } + foreach ( $sources as $src ) { + if ( ! is_array( $src ) ) { + continue; + } + $raw = isset( $src['description'] ) && is_string( $src['description'] ) ? trim( $src['description'] ) : ''; + if ( '' === $raw ) { + continue; + } + // Strip leading language tag like "[en-US] " or "[ja] ". + if ( '[' === $raw[0] ) { + $close = strpos( $raw, '] ' ); + if ( false !== $close ) { + $raw = substr( $raw, $close + 2 ); + } + } + if ( '' !== $raw ) { + return $raw; + } + } + return null; +} + +/** + * Clean a raw API version range string for display. + * + * Examples: + * "* - < 1.0.0" → "< 1.0.0" + * "- - < 1.0.0" → "< 1.0.0" + * "- < 1.0.0" → "< 1.0.0" (no space-dash-space separator) + * "1.0.0 - < 2.0" → "≥ 1.0.0 – < 2.0" + * + * @since 5.0.0 + * + * @param string $versions Raw versions string from the API. + * @return string Cleaned version range for display (HTML-safe). + */ +function wpvulnerability_clean_version_range( $versions ) { + $v = trim( (string) $versions ); + if ( '' === $v ) { + return ''; + } + // Handle "- < 1.0" / "* < 1.0": leading wildcard without a space-dash-space separator. + if ( 0 === strpos( $v, '- ' ) || 0 === strpos( $v, '* ' ) ) { + return esc_html( ltrim( substr( $v, 2 ) ) ); + } + $parts = explode( ' - ', $v, 2 ); + if ( 2 === count( $parts ) ) { + $from = trim( $parts[0] ); + $to = trim( $parts[1] ); + if ( '' === $from || '*' === $from || '-' === $from ) { + return esc_html( $to ); + } + return '≥ ' . esc_html( $from ) . ' – ' . esc_html( $to ); + } + return esc_html( $v ); +} + +/** + * Return an img tag for a component-type icon. + * + * @since 5.0.0 + * + * @param string $type Component type: plugin, theme, core, php, apache, nginx, mariadb, mysql, imagemagick, curl, memcached, redis, sqlite. + * @return string HTML img tag with class wpvuln-component-icon, or empty string. + */ +function wpvulnerability_component_icon_html( $type ) { + $icon_map = array( + 'plugin' => 'icon-plugin.svg', + 'theme' => 'icon-theme.svg', + 'core' => 'icon-wordpress.svg', + 'php' => 'icon-php.svg', + 'apache' => 'icon-apache.svg', + 'nginx' => 'icon-nginx.svg', + 'mariadb' => 'icon-mariadb.svg', + 'mysql' => 'icon-mysql.svg', + 'imagemagick' => 'icon-imagemagick.svg', + 'curl' => 'icon-curl.svg', + 'memcached' => 'icon-memcached.svg', + 'redis' => 'icon-redis.svg', + 'sqlite' => 'icon-sqlite.svg', + ); + if ( ! isset( $icon_map[ $type ] ) ) { + return ''; + } + return ''; +} + +/** + * Convert vulnerabilities into pretty HTML + * + * @since 2.0.0 + * + * @param string $type Type: core, plugin, theme, php, apache, nginx, mariadb, mysql, imagemagick, curl. + * @param array $vulnerabilities Vulnerability data. + * + * @return string The HTML representation of vulnerabilities. + */ +function wpvulnerability_html( $type, $vulnerabilities ) { + $html = ''; + + if ( in_array( $type, array( 'plugin', 'theme' ), true ) ) { + foreach ( $vulnerabilities as $vulnerability ) { + if ( ! is_array( $vulnerability ) ) { + continue; } + $vuln_impact_raw = $vulnerability['impact'] ?? null; + $vuln_impact = is_array( $vuln_impact_raw ) ? $vuln_impact_raw : array(); + $vuln_cvss_raw = $vuln_impact['cvss'] ?? null; + $vuln_cvss = is_array( $vuln_cvss_raw ) ? $vuln_cvss_raw : array(); + $vuln_cvss2_raw = $vuln_impact['cvss2'] ?? null; + $vuln_cvss2 = is_array( $vuln_cvss2_raw ) ? $vuln_cvss2_raw : array(); + $vuln_cvss3_raw = $vuln_impact['cvss3'] ?? null; + $vuln_cvss3 = is_array( $vuln_cvss3_raw ) ? $vuln_cvss3_raw : array(); + $vuln_cvss4_raw = $vuln_impact['cvss4'] ?? null; + $vuln_cvss4 = is_array( $vuln_cvss4_raw ) ? $vuln_cvss4_raw : array(); + $vuln_ssvc_raw = $vuln_impact['ssvc'] ?? null; + $vuln_ssvc = is_array( $vuln_ssvc_raw ) ? $vuln_ssvc_raw : array(); + $vuln_cwe_raw = $vuln_impact['cwe'] ?? null; + $vuln_cwe = is_array( $vuln_cwe_raw ) ? $vuln_cwe_raw : array(); + $vuln_src_raw = $vulnerability['source'] ?? null; + $vuln_sources = is_array( $vuln_src_raw ) ? $vuln_src_raw : array(); + + $kev = ( isset( $vuln_ssvc['kev'] ) && true === $vuln_ssvc['kev'] ); + $exploitation = isset( $vuln_ssvc['exploitation'] ) && is_string( $vuln_ssvc['exploitation'] ) ? $vuln_ssvc['exploitation'] : ''; + $automatable = isset( $vuln_ssvc['automatable'] ) && is_string( $vuln_ssvc['automatable'] ) ? $vuln_ssvc['automatable'] : ''; + $kev_date_raw = $vuln_ssvc['kev_date'] ?? null; + $kev_date = is_string( $kev_date_raw ) && '' !== $kev_date_raw ? $kev_date_raw : null; + $epss_raw = $vuln_impact['epss'] ?? null; + $epss = is_numeric( $epss_raw ) ? (float) $epss_raw : null; + $description = wpvulnerability_get_source_description( $vuln_sources ); + + $what = array(); + foreach ( $vuln_cwe as $vulnerability_cwe ) { + if ( ! is_array( $vulnerability_cwe ) ) { + continue; } + $cwe_name = is_scalar( $vulnerability_cwe['name'] ?? '' ) ? (string) ( $vulnerability_cwe['name'] ?? '' ) : ''; + $cwe_desc = is_scalar( $vulnerability_cwe['description'] ?? '' ) ? (string) ( $vulnerability_cwe['description'] ?? '' ) : ''; + $what[] = '
' . wp_kses( $cwe_name, 'strip' ) . '
' . esc_html( $cwe_desc ) . '
'; + } + + $source = wpvulnerability_render_source_pills( $vuln_sources ); + + // Best available CVSS score and severity: cvss4 > cvss3 > cvss2 > legacy cvss. + $score = null; + $sev_raw = null; + foreach ( array( $vuln_cvss4, $vuln_cvss3, $vuln_cvss2, $vuln_cvss ) as $cvss_c ) { + if ( empty( $cvss_c ) ) { + continue; } + $s_raw = $cvss_c['score'] ?? null; + $v_raw = $cvss_c['severity'] ?? null; + $s = is_numeric( $s_raw ) ? number_format( (float) $s_raw, 1, '.', '' ) : null; + $v = is_string( $v_raw ) && '' !== $v_raw ? $v_raw : null; + if ( null !== $s || null !== $v ) { + $score = $s; + $sev_raw = $v; + break; + } + } + + $vuln_name = is_scalar( $vulnerability['name'] ?? '' ) ? (string) ( $vulnerability['name'] ?? '' ) : ''; + $html .= '

' . wp_kses( $vuln_name, 'strip' ) . '

'; + $vuln_closed = is_numeric( $vulnerability['closed'] ?? 0 ) ? (int) ( $vulnerability['closed'] ?? 0 ) : 0; + $vuln_unfixed = is_numeric( $vulnerability['unfixed'] ?? 0 ) ? (int) ( $vulnerability['unfixed'] ?? 0 ) : 0; + $score_badge = wpvulnerability_render_score_badge( $score, $sev_raw, $epss ); + $show_active = $kev || 'active' === $exploitation; + $show_poc = 'poc' === $exploitation; + $show_auto = 'yes' === $automatable; + if ( $show_active || $show_poc || $show_auto || '' !== $score_badge ) { + $html .= '
'; + if ( $show_active ) { + $html .= '⚠ ' . esc_html__( 'Actively exploited', 'wpvulnerability' ); + if ( $kev && null !== $kev_date ) { + $html .= ' · ' . esc_html( $kev_date ); + } + $html .= ''; + } + if ( $show_poc ) { + $html .= '⚡ ' . esc_html__( 'Public exploit', 'wpvulnerability' ) . ''; + } + if ( $show_auto ) { + $html .= '⚙ ' . esc_html__( 'Automatable', 'wpvulnerability' ) . ''; + } + if ( '' !== $score_badge ) { + $html .= $score_badge; + } + $html .= '
'; + } + if ( null !== $description ) { + $html .= '
' . esc_html( $description ) . '
'; + } + if ( $vuln_closed || $vuln_unfixed ) { + $html .= '
'; + if ( $vuln_closed ) { + $html .= '
' . esc_html__( 'This plugin is closed. Please replace it with another.', 'wpvulnerability' ) . '
'; + } + if ( $vuln_unfixed ) { + $html .= '
' . esc_html__( 'This vulnerability appears to be unpatched. Stay tuned for upcoming plugin updates.', 'wpvulnerability' ) . '
'; + } + $html .= '
'; + } + + if ( count( $what ) ) { + $html .= '
' . implode( '', $what ) . '
'; + } + + if ( '' !== $source ) { + $html .= '
' . esc_html__( 'References:', 'wpvulnerability' ) . ''; + $html .= $source; + $html .= '
'; + } + } + } elseif ( 'core' === $type ) { + foreach ( $vulnerabilities as $vulnerability ) { + if ( ! is_array( $vulnerability ) ) { + continue; } + $vuln_impact_raw = $vulnerability['impact'] ?? null; + $vuln_impact = is_array( $vuln_impact_raw ) ? $vuln_impact_raw : array(); + $vuln_cvss_raw = $vuln_impact['cvss'] ?? null; + $vuln_cvss = is_array( $vuln_cvss_raw ) ? $vuln_cvss_raw : array(); + $vuln_cvss2_raw = $vuln_impact['cvss2'] ?? null; + $vuln_cvss2 = is_array( $vuln_cvss2_raw ) ? $vuln_cvss2_raw : array(); + $vuln_cvss3_raw = $vuln_impact['cvss3'] ?? null; + $vuln_cvss3 = is_array( $vuln_cvss3_raw ) ? $vuln_cvss3_raw : array(); + $vuln_cvss4_raw = $vuln_impact['cvss4'] ?? null; + $vuln_cvss4 = is_array( $vuln_cvss4_raw ) ? $vuln_cvss4_raw : array(); + $vuln_ssvc_raw = $vuln_impact['ssvc'] ?? null; + $vuln_ssvc = is_array( $vuln_ssvc_raw ) ? $vuln_ssvc_raw : array(); + $vuln_cwe_raw = $vuln_impact['cwe'] ?? null; + $vuln_cwe = is_array( $vuln_cwe_raw ) ? $vuln_cwe_raw : array(); + $vuln_src_raw = $vulnerability['source'] ?? null; + $vuln_sources = is_array( $vuln_src_raw ) ? $vuln_src_raw : array(); + + $kev = ( isset( $vuln_ssvc['kev'] ) && true === $vuln_ssvc['kev'] ); + $exploitation = isset( $vuln_ssvc['exploitation'] ) && is_string( $vuln_ssvc['exploitation'] ) ? $vuln_ssvc['exploitation'] : ''; + $automatable = isset( $vuln_ssvc['automatable'] ) && is_string( $vuln_ssvc['automatable'] ) ? $vuln_ssvc['automatable'] : ''; + $kev_date_raw = $vuln_ssvc['kev_date'] ?? null; + $kev_date = is_string( $kev_date_raw ) && '' !== $kev_date_raw ? $kev_date_raw : null; + $epss_raw = $vuln_impact['epss'] ?? null; + $epss = is_numeric( $epss_raw ) ? (float) $epss_raw : null; + $description = wpvulnerability_get_source_description( $vuln_sources ); + + $what = array(); + foreach ( $vuln_cwe as $vulnerability_cwe ) { + if ( ! is_array( $vulnerability_cwe ) ) { + continue; } + $cwe_name = is_scalar( $vulnerability_cwe['name'] ?? '' ) ? (string) ( $vulnerability_cwe['name'] ?? '' ) : ''; + $cwe_desc = is_scalar( $vulnerability_cwe['description'] ?? '' ) ? (string) ( $vulnerability_cwe['description'] ?? '' ) : ''; + $what[] = '
' . wp_kses( $cwe_name, 'strip' ) . '
' . esc_html( $cwe_desc ) . '
'; + } + + $source = wpvulnerability_render_source_pills( $vuln_sources ); + + // Best available CVSS score and severity: cvss4 > cvss3 > cvss2 > legacy cvss. + $score = null; + $sev_raw = null; + foreach ( array( $vuln_cvss4, $vuln_cvss3, $vuln_cvss2, $vuln_cvss ) as $cvss_c ) { + if ( empty( $cvss_c ) ) { + continue; } + $s_raw = $cvss_c['score'] ?? null; + $v_raw = $cvss_c['severity'] ?? null; + $s = is_numeric( $s_raw ) ? number_format( (float) $s_raw, 1, '.', '' ) : null; + $v = is_string( $v_raw ) && '' !== $v_raw ? $v_raw : null; + if ( null !== $s || null !== $v ) { + $score = $s; + $sev_raw = $v; + break; + } + } + + $vuln_name = is_scalar( $vulnerability['name'] ?? '' ) ? (string) ( $vulnerability['name'] ?? '' ) : ''; + $html .= '

' . wpvulnerability_component_icon_html( 'core' ) . ' WordPress ' . wp_kses( $vuln_name, 'strip' ) . '

'; + $score_badge = wpvulnerability_render_score_badge( $score, $sev_raw, $epss ); + $show_active = $kev || 'active' === $exploitation; + $show_poc = 'poc' === $exploitation; + $show_auto = 'yes' === $automatable; + if ( $show_active || $show_poc || $show_auto || '' !== $score_badge ) { + $html .= '
'; + if ( $show_active ) { + $html .= '⚠ ' . esc_html__( 'Actively exploited', 'wpvulnerability' ); + if ( $kev && null !== $kev_date ) { + $html .= ' · ' . esc_html( $kev_date ); + } + $html .= ''; + } + if ( $show_poc ) { + $html .= '⚡ ' . esc_html__( 'Public exploit', 'wpvulnerability' ) . ''; + } + if ( $show_auto ) { + $html .= '⚙ ' . esc_html__( 'Automatable', 'wpvulnerability' ) . ''; + } + if ( '' !== $score_badge ) { + $html .= $score_badge; + } + $html .= '
'; + } + if ( null !== $description ) { + $html .= '
' . esc_html( $description ) . '
'; + } + + if ( count( $what ) ) { + $html .= '
' . implode( '', $what ) . '
'; + } + + if ( '' !== $source ) { + $html .= '
' . esc_html__( 'References:', 'wpvulnerability' ) . ''; + $html .= $source; + $html .= '
'; + } + } + } elseif ( in_array( $type, array( 'php', 'apache', 'nginx', 'mariadb', 'mysql', 'imagemagick', 'curl', 'memcached', 'redis', 'sqlite' ), true ) ) { + foreach ( $vulnerabilities as $vulnerability ) { + if ( ! is_array( $vulnerability ) ) { + continue; } + $vuln_impact_raw = $vulnerability['impact'] ?? null; + $vuln_impact = is_array( $vuln_impact_raw ) ? $vuln_impact_raw : array(); + $vuln_cvss2_raw = $vuln_impact['cvss2'] ?? null; + $vuln_cvss2 = is_array( $vuln_cvss2_raw ) ? $vuln_cvss2_raw : array(); + $vuln_cvss3_raw = $vuln_impact['cvss3'] ?? null; + $vuln_cvss3 = is_array( $vuln_cvss3_raw ) ? $vuln_cvss3_raw : array(); + $vuln_cvss4_raw = $vuln_impact['cvss4'] ?? null; + $vuln_cvss4 = is_array( $vuln_cvss4_raw ) ? $vuln_cvss4_raw : array(); + $vuln_cwe_raw = $vuln_impact['cwe'] ?? null; + $vuln_cwe = is_array( $vuln_cwe_raw ) ? $vuln_cwe_raw : array(); + $vuln_src_raw = $vulnerability['source'] ?? null; + $vuln_sources = is_array( $vuln_src_raw ) ? $vuln_src_raw : array(); + + // For software endpoints, kev is at impact.kev (not inside ssvc). + $kev = ( isset( $vuln_impact['kev'] ) && true === $vuln_impact['kev'] ); + $description = wpvulnerability_get_source_description( $vuln_sources ); + + $what = array(); + foreach ( $vuln_cwe as $vulnerability_cwe ) { + if ( ! is_array( $vulnerability_cwe ) ) { + continue; } + $cwe_name = is_scalar( $vulnerability_cwe['name'] ?? '' ) ? (string) ( $vulnerability_cwe['name'] ?? '' ) : ''; + $cwe_desc = is_scalar( $vulnerability_cwe['description'] ?? '' ) ? (string) ( $vulnerability_cwe['description'] ?? '' ) : ''; + $what[] = '
' . wp_kses( $cwe_name, 'strip' ) . '
' . esc_html( $cwe_desc ) . '
'; + } + + $source = wpvulnerability_render_source_pills( $vuln_sources ); + + // Best available CVSS score and severity: cvss4 > cvss3 > cvss2. + $score = null; + $sev_raw = null; + foreach ( array( $vuln_cvss4, $vuln_cvss3, $vuln_cvss2 ) as $cvss_c ) { + if ( empty( $cvss_c ) ) { + continue; } + $s_raw = $cvss_c['score'] ?? null; + $v_raw = $cvss_c['severity'] ?? null; + $s = is_numeric( $s_raw ) ? number_format( (float) $s_raw, 1, '.', '' ) : null; + $v = is_string( $v_raw ) && '' !== $v_raw ? $v_raw : null; + if ( null !== $s || null !== $v ) { + $score = $s; + $sev_raw = $v; + break; + } + } + + $vuln_name = is_scalar( $vulnerability['name'] ?? '' ) ? (string) ( $vulnerability['name'] ?? '' ) : ''; + $html .= '

' . wp_kses( $vuln_name, 'strip' ) . '

'; + $score_badge = wpvulnerability_render_score_badge( $score, $sev_raw ); + if ( $kev || '' !== $score_badge ) { + $html .= '
'; + if ( $kev ) { + $html .= '⚠ ' . esc_html__( 'Actively exploited', 'wpvulnerability' ) . ''; + } + if ( '' !== $score_badge ) { + $html .= $score_badge; + } + $html .= '
'; + } + if ( null !== $description ) { + $html .= '
' . esc_html( $description ) . '
'; + } + if ( count( $what ) ) { + $html .= '
' . implode( '', $what ) . '
'; + } + + if ( '' !== $source ) { + $html .= '
' . esc_html__( 'References:', 'wpvulnerability' ) . ''; + $html .= $source; + $html .= '
'; + } + } + } + + return $html; +} + +/** + * Convert vulnerabilities into HTML format. + * + * @since 3.5.0 + * + * @param string $type Type of software (php, apache, nginx, mariadb, mysql, imagemagick, curl). + * @return string|false The HTML output if vulnerabilities were found, false otherwise. + */ +function wpvulnerability_html_software( $type ) { + $html = ''; + $found = false; + $software_name = null; + + // Map software types to their names. + $software_names = array( + 'php' => 'PHP', + 'apache' => 'Apache HTTP', + 'nginx' => 'Nginx', + 'mariadb' => 'MariaDB', + 'mysql' => 'MySQL', + 'imagemagick' => 'ImageMagick', + 'curl' => 'curl', + 'memcached' => 'memcached', + 'redis' => 'redis', + 'sqlite' => 'sqlite', + ); + + // Check if the type is valid and get the software name. + if ( isset( $software_names[ $type ] ) ) { + $software_name = $software_names[ $type ]; + } else { + return false; // Invalid type. + } + + $version = wpvulnerability_sanitize_and_validate_version( wpvulnerability_get_software_version( $type ) ); + $software_data = wpvulnerability_software_get_vulnerabilities( $type ); + $vulnerabilities = array(); + + if ( is_array( $software_data ) && isset( $software_data['vulnerabilities'] ) && is_array( $software_data['vulnerabilities'] ) ) { + $vulnerabilities = $software_data['vulnerabilities']; + } + + // Check if vulnerabilities were found. + if ( 0 < count( $vulnerabilities ) ) { + $found = true; + + // translators: %s: software name. + $html .= '

' . wpvulnerability_component_icon_html( $type ) . sprintf( esc_html__( '%s running', 'wpvulnerability' ), esc_html( $software_name ) ) . ': ' . wp_kses( (string) $version, 'strip' ) . '

'; + + // Show lifecycle status if available. + $lifecycle = isset( $software_data['lifecycle'] ) && is_array( $software_data['lifecycle'] ) ? $software_data['lifecycle'] : array(); + $lc_status = is_scalar( $lifecycle['status'] ?? '' ) ? (string) ( $lifecycle['status'] ?? '' ) : ''; + $lc_date_end = is_scalar( $lifecycle['date_end'] ?? '' ) ? (string) ( $lifecycle['date_end'] ?? '' ) : ''; + + if ( 'e' === $lc_status || 's' === $lc_status ) { + $html .= '
'; + if ( 'e' === $lc_status ) { + $html .= '● ' . esc_html__( 'End of Life', 'wpvulnerability' ) . ''; + if ( '' !== $lc_date_end ) { + $html .= ' — ' . esc_html__( 'End of life:', 'wpvulnerability' ) . ' ' . esc_html( $lc_date_end ) . ''; + } + } else { + $html .= '● ' . esc_html__( 'Supported', 'wpvulnerability' ) . ''; + if ( '' !== $lc_date_end ) { + $html .= ' — ' . esc_html__( 'End of life:', 'wpvulnerability' ) . ' ' . esc_html( $lc_date_end ); + } + } + $html .= '
'; + } + + $html .= wpvulnerability_html( $type, $vulnerabilities ); + } + + return $found ? $html : false; +} + +/** + * Convert plugin vulnerabilities into HTML format. + * + * @since 2.0.0 + * + * @return string|false The HTML output if plugin vulnerabilities were found, false otherwise. + */ +function wpvulnerability_html_plugins() { + $html = ''; + $found = false; + + $plugins = wpvulnerability_plugin_get_vulnerabilities(); + + foreach ( $plugins as $file_path => $plugin_data ) { + if ( ! is_array( $plugin_data ) ) { + continue; } + // Check if the plugin is marked as vulnerable. + if ( isset( $plugin_data['vulnerable'] ) && 1 === $plugin_data['vulnerable'] ) { + $found = true; + + // Generate HTML markup for the plugin vulnerability. + $plugin_name = is_scalar( $plugin_data['Name'] ?? '' ) ? (string) ( $plugin_data['Name'] ?? '' ) : ''; + $html .= '

' . wpvulnerability_component_icon_html( 'plugin' ) . esc_html__( 'Plugin', 'wpvulnerability' ) . ': ' . wp_kses( $plugin_name, 'strip' ) . '

'; + $plugin_vulns = isset( $plugin_data['vulnerabilities'] ) && is_array( $plugin_data['vulnerabilities'] ) ? $plugin_data['vulnerabilities'] : array(); + $html .= wpvulnerability_html( 'plugin', $plugin_vulns ); + } + } + + // Return the HTML if vulnerabilities were found. + return $found ? $html : false; +} + +/** + * Convert plugin vulnerabilities into list format. + * + * @since 2.2.0 + * + * @return string|false The HTML output if plugin vulnerabilities were found, false otherwise. + */ +function wpvulnerability_list_plugins() { + $html = '
    '; + $found = false; + + // Get vulnerabilities data for plugins. + $plugins = wpvulnerability_plugin_get_vulnerabilities(); + + // Iterate through each plugin's data. + foreach ( $plugins as $file_path => $plugin_data ) { + if ( ! is_array( $plugin_data ) ) { + continue; } + // Check if the plugin is marked as vulnerable. + if ( isset( $plugin_data['vulnerable'] ) && 1 === $plugin_data['vulnerable'] ) { + $found = true; + + // Generate HTML markup for the plugin vulnerability. + $plugin_name = is_scalar( $plugin_data['Name'] ?? '' ) ? (string) ( $plugin_data['Name'] ?? '' ) : ''; + $html .= '
  • ' . wp_kses( $plugin_name, 'strip' ) . '
  • '; + } + } + + $html .= '
'; + + // Return the HTML if vulnerabilities were found. + return $found ? $html : false; +} + +/** + * Convert theme vulnerabilities into HTML format. + * + * @since 2.0.0 + * + * @return string|false The HTML output if theme vulnerabilities were found, false otherwise. + */ +function wpvulnerability_html_themes() { + $html = ''; + $found = false; + + // Get vulnerabilities data for themes. + $themes = wpvulnerability_theme_get_vulnerabilities(); + + // Iterate through each theme's data. + foreach ( $themes as $theme_data ) { + if ( ! is_array( $theme_data ) ) { + continue; } + $td_wpv = isset( $theme_data['wpvulnerability'] ) && is_array( $theme_data['wpvulnerability'] ) ? $theme_data['wpvulnerability'] : array(); + // Check if the theme is marked as vulnerable. + if ( isset( $td_wpv['vulnerable'] ) && 1 === ( is_numeric( $td_wpv['vulnerable'] ) ? (int) $td_wpv['vulnerable'] : 0 ) ) { + $found = true; + + // Generate HTML markup for the theme vulnerability. + $theme_name = is_scalar( $td_wpv['name'] ?? '' ) ? (string) ( $td_wpv['name'] ?? '' ) : ''; + $html .= '

' . wpvulnerability_component_icon_html( 'theme' ) . esc_html__( 'Theme', 'wpvulnerability' ) . ': ' . wp_kses( $theme_name, 'strip' ) . '

'; + $vuln_list = isset( $td_wpv['vulnerabilities'] ) && is_array( $td_wpv['vulnerabilities'] ) ? $td_wpv['vulnerabilities'] : array(); + $html .= wpvulnerability_html( 'theme', $vuln_list ); + } + } + + // Return the HTML if vulnerabilities were found. + return $found ? $html : false; +} + +/** + * Convert theme vulnerabilities into list format. + * + * @since 2.2.0 + * + * @return string|false The HTML output if theme vulnerabilities were found, false otherwise. + */ +function wpvulnerability_list_themes() { + $html = '
    '; + $found = false; + + // Get vulnerabilities data for themes. + $themes = wpvulnerability_theme_get_vulnerabilities(); + + // Iterate through each theme's data. + foreach ( $themes as $theme_data ) { + if ( ! is_array( $theme_data ) ) { + continue; } + $td_wpv = isset( $theme_data['wpvulnerability'] ) && is_array( $theme_data['wpvulnerability'] ) ? $theme_data['wpvulnerability'] : array(); + // Check if the theme is marked as vulnerable. + if ( isset( $td_wpv['vulnerable'] ) && 1 === ( is_numeric( $td_wpv['vulnerable'] ) ? (int) $td_wpv['vulnerable'] : 0 ) ) { + $found = true; + + // Generate HTML markup for the theme vulnerability. + $theme_name = is_scalar( $td_wpv['name'] ?? '' ) ? (string) ( $td_wpv['name'] ?? '' ) : ''; + $html .= '
  • ' . wp_kses( $theme_name, 'strip' ) . '
  • '; + } + } + + $html .= '
'; + + // Return the HTML if vulnerabilities were found. + return $found ? $html : false; +} + +/** + * Returns an EOL badge HTML span for a software component. + * + * Reads the cached lifecycle data for the given software type and returns + * a styled badge when the component has reached end-of-life status. + * + * @since 5.0.0 + * + * @param string $type The software type (e.g., 'php', 'apache', 'mariadb'). + * + * @return string HTML badge string, or empty string if not EOL or no data. + */ +function wpvulnerability_eol_badge_html( $type ) { + $sw_data = wpvulnerability_software_get_vulnerabilities( $type ); + $lc = isset( $sw_data['lifecycle'] ) && is_array( $sw_data['lifecycle'] ) ? $sw_data['lifecycle'] : array(); + $status = is_scalar( $lc['status'] ?? '' ) ? (string) ( $lc['status'] ?? '' ) : ''; + $date_end = is_scalar( $lc['date_end'] ?? '' ) ? (string) ( $lc['date_end'] ?? '' ) : ''; + + if ( 'e' !== $status ) { + return ''; + } + + if ( '' !== $date_end ) { + /* translators: %s: end-of-life date */ + $title = sprintf( __( 'End of life: %s', 'wpvulnerability' ), $date_end ); + } else { + $title = __( 'End of Life', 'wpvulnerability' ); + } + + return '' . esc_html__( 'EOL', 'wpvulnerability' ) . ''; +} + +/** + * Convert core vulnerabilities into HTML format. + * + * @since 2.0.0 + * + * @return string|false The HTML output if core vulnerabilities were found, false otherwise. + */ +function wpvulnerability_html_core() { + $html = ''; + $found = false; + + // Get vulnerabilities data for WordPress core. + $core = wpvulnerability_core_get_vulnerabilities(); + + // Check if there are any vulnerabilities. + if ( count( $core ) ) { + $found = true; + + // Generate HTML markup for the core vulnerabilities. + $html .= wpvulnerability_html( 'core', $core ); + } + + // Return the HTML if vulnerabilities were found. + return $found ? $html : false; +} diff --git a/wpvulnerability-run.php b/wpvulnerability-run.php new file mode 100644 index 0000000..d0a061d --- /dev/null +++ b/wpvulnerability-run.php @@ -0,0 +1,859 @@ + $links The links that appear in the plugin row. + * + * @return array The modified array of links. + */ +function wpvulnerability_add_settings_link( $links ) { + // Check if the user has the required capabilities to view the settings link. + if ( wpvulnerability_capabilities() ) { + // Determine the correct settings link based on the environment. + if ( is_multisite() && is_network_admin() ) { + // Network admin settings link for multisite. + $links[] = '' . __( 'Network Settings', 'wpvulnerability' ) . ''; + } elseif ( ! is_multisite() && is_admin() ) { + // Standard settings link for single site. + $links[] = '' . __( 'Settings', 'wpvulnerability' ) . ''; + } + } + return $links; +} + +// Hook the function to the appropriate filters. +if ( is_multisite() ) { + add_filter( 'network_admin_plugin_action_links_' . WPVULNERABILITY_PLUGIN_BASE, 'wpvulnerability_add_settings_link' ); +} else { + add_filter( 'plugin_action_links_' . WPVULNERABILITY_PLUGIN_BASE, 'wpvulnerability_add_settings_link' ); +} + +/** + * Updates the plugin's vulnerability data. + * + * This function updates the vulnerability data for WordPress core, plugins, themes, PHP, Apache, nginx, MariaDB, and MySQL. + * It ensures that the required functions are available by including the necessary files. + * After updating the vulnerabilities, it flushes the WordPress cache. + * + * @since 2.0.0 + * + * @return void + */ +function wpvulnerability_update_database_data() { + + // Ensure necessary files are included for core, plugins, and themes. + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-core.php'; + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-plugins.php'; + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-themes.php'; + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-software.php'; + + wpvulnerability_delete_transients(); + + // Update core, plugins, and themes vulnerabilities. + wpvulnerability_core_get_vulnerabilities_clean(); + wpvulnerability_plugin_get_vulnerabilities_clean(); + wpvulnerability_theme_get_vulnerabilities_clean(); + + // Array of software types to update. + $software_types = array( 'php', 'apache', 'nginx', 'mariadb', 'mysql', 'imagemagick', 'curl', 'memcached', 'redis', 'sqlite' ); + + // Update vulnerabilities for each software type. + foreach ( $software_types as $software ) { + wpvulnerability_get_vulnerabilities_clean( $software ); + } + + wpvulnerability_statistics_get(); + + // Clean the WordPress cache. + wp_cache_flush(); +} + +/** + * Updates the plugin's vulnerability data if the cache has expired. + * + * This function checks if the cached vulnerability data for various components (core, plugins, themes, PHP, Apache, nginx, MariaDB, MySQL) has expired and updates it accordingly. + * It ensures that the required functions are available by including the necessary files. + * The function handles both multisite and single site installations. + * + * @since 3.0.0 + * + * @return void + */ +function wpvulnerability_expired_database_data() { + + // Ensure necessary files are included for core, plugins, and themes. + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-core.php'; + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-plugins.php'; + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-themes.php'; + require_once WPVULNERABILITY_PLUGIN_PATH . '/wpvulnerability-software.php'; + + // Current time for cache expiration comparison. + $cache_time = time(); + + // Check and update core, plugins, and themes vulnerabilities if cache has expired. + $components = array( + 'core' => 'wpvulnerability-core-cache', + 'plugin' => 'wpvulnerability-plugins-cache', + 'theme' => 'wpvulnerability-themes-cache', + ); + + foreach ( $components as $component => $cache_key ) { + $cache_value = is_multisite() ? get_site_option( $cache_key ) : get_option( $cache_key ); + + if ( json_decode( is_string( $cache_value ) ? $cache_value : '' ) < $cache_time ) { + call_user_func( "wpvulnerability_{$component}_get_vulnerabilities_clean" ); + } + } + + // Array of software types to update. + $software_types = array( 'php', 'apache', 'nginx', 'mariadb', 'mysql', 'imagemagick', 'curl', 'memcached', 'redis', 'sqlite' ); + + // Ensure necessary files are included and update vulnerabilities for each software type. + foreach ( $software_types as $software ) { + if ( is_multisite() ) { + $site_opt = get_site_option( 'wpvulnerability-' . $software . '-cache' ); + if ( json_decode( is_string( $site_opt ) ? $site_opt : '' ) < $cache_time ) { + wpvulnerability_get_vulnerabilities_clean( $software ); + } + } else { + $opt = get_option( 'wpvulnerability-' . $software . '-cache' ); + if ( json_decode( is_string( $opt ) ? $opt : '' ) < $cache_time ) { + wpvulnerability_get_vulnerabilities_clean( $software ); + } + } + } + + $statistics_cache_raw = is_multisite() ? get_site_option( 'wpvulnerability-statistics-cache' ) : get_option( 'wpvulnerability-statistics-cache' ); + + if ( is_numeric( $statistics_cache_raw ) ) { + $statistics_cache = (int) $statistics_cache_raw; + } elseif ( is_string( $statistics_cache_raw ) ) { + $decoded_cache = json_decode( $statistics_cache_raw ); + $statistics_cache = is_numeric( $decoded_cache ) ? (int) $decoded_cache : 0; + } else { + $statistics_cache = 0; + } + + if ( $statistics_cache < $cache_time ) { + wpvulnerability_statistics_get(); + } + + unset( $cache_time, $statistics_cache, $statistics_cache_raw ); +} + +/** + * Initializes persistent plugin data, ensures required options exist, and tracks + * initialization metadata so upgrades provision new defaults when needed. + * + * @since 4.1.2 + * + * @param bool $is_real_activation Optional. Whether the routine runs during the activation hook. Default false. + * + * @return void + */ +function wpvulnerability_initialize_plugin_data( $is_real_activation = false ) { + $is_multisite = is_multisite(); + $config_key = $is_multisite ? 'get_site_option' : 'get_option'; + $add_option = $is_multisite ? 'add_site_option' : 'add_option'; + $update_option = $is_multisite ? 'update_site_option' : 'update_option'; + + $initialized_raw = $config_key( 'wpvulnerability_initialized' ); + $initialized = array( + 'timestamp' => 0, + 'version' => '', + ); + + if ( is_array( $initialized_raw ) ) { + if ( isset( $initialized_raw['timestamp'] ) && is_numeric( $initialized_raw['timestamp'] ) ) { + $initialized['timestamp'] = (int) $initialized_raw['timestamp']; + } + + if ( isset( $initialized_raw['version'] ) && is_string( $initialized_raw['version'] ) ) { + $initialized['version'] = $initialized_raw['version']; + } + } elseif ( is_numeric( $initialized_raw ) ) { + $initialized['timestamp'] = (int) $initialized_raw; + } + + $needs_upgrade = version_compare( (string) $initialized['version'], WPVULNERABILITY_PLUGIN_VERSION, '<' ); + + if ( ! $is_real_activation && ! empty( $initialized_raw ) && ! $needs_upgrade ) { + return; + } + + if ( $is_real_activation ) { + wpvulnerability_delete_transients(); + } + + // Add wpvulnerability-config option if it does not exist. + if ( ! $config_key( 'wpvulnerability-config' ) ) { + $default_config = array( + 'emails' => get_bloginfo( 'admin_email' ), + 'period' => 'weekly', + 'day' => 'monday', + 'hour' => 0, + 'minute' => 0, + 'cache' => 12, + 'log_retention' => 0, + 'delete_on_uninstall' => 0, + 'notify' => array( + 'email' => 'y', + 'slack' => 'n', + 'teams' => 'n', + ), + 'slack_webhook' => '', + 'teams_webhook' => '', + ); + $add_option( 'wpvulnerability-config', $default_config ); + } + + // Add other options if they do not exist. + $options = array( + 'wpvulnerability-plugins' => '', + 'wpvulnerability-plugins-cache' => 0, + 'wpvulnerability-plugins-vulnerable' => 0, + 'wpvulnerability-plugins-data' => '', + 'wpvulnerability-plugins-data-cache' => 0, + 'wpvulnerability-themes' => '', + 'wpvulnerability-themes-cache' => 0, + 'wpvulnerability-themes-vulnerable' => 0, + 'wpvulnerability-core' => '', + 'wpvulnerability-core-cache' => 0, + 'wpvulnerability-core-vulnerable' => 0, + 'wpvulnerability-php' => '', + 'wpvulnerability-php-cache' => 0, + 'wpvulnerability-php-vulnerable' => 0, + 'wpvulnerability-apache' => '', + 'wpvulnerability-apache-cache' => 0, + 'wpvulnerability-apache-vulnerable' => 0, + 'wpvulnerability-nginx' => '', + 'wpvulnerability-nginx-cache' => 0, + 'wpvulnerability-nginx-vulnerable' => 0, + 'wpvulnerability-mariadb' => '', + 'wpvulnerability-mariadb-cache' => 0, + 'wpvulnerability-mariadb-vulnerable' => 0, + 'wpvulnerability-mysql' => '', + 'wpvulnerability-mysql-cache' => 0, + 'wpvulnerability-mysql-vulnerable' => 0, + 'wpvulnerability-imagemagick' => '', + 'wpvulnerability-imagemagick-cache' => 0, + 'wpvulnerability-imagemagick-vulnerable' => 0, + 'wpvulnerability-curl' => '', + 'wpvulnerability-curl-cache' => 0, + 'wpvulnerability-curl-vulnerable' => 0, + 'wpvulnerability-memcached' => '', + 'wpvulnerability-memcached-cache' => 0, + 'wpvulnerability-memcached-vulnerable' => 0, + 'wpvulnerability-redis' => '', + 'wpvulnerability-redis-cache' => 0, + 'wpvulnerability-redis-vulnerable' => 0, + 'wpvulnerability-sqlite' => '', + 'wpvulnerability-sqlite-cache' => 0, + 'wpvulnerability-sqlite-vulnerable' => 0, + 'wpvulnerability-statistics' => '', + 'wpvulnerability-statistics-cache' => 0, + 'wpvulnerability_initialized' => 0, + ); + + // Large data blobs should not autoload on every WP request (single-site only; + // add_site_option does not support autoload control). + $no_autoload_keys = array( + 'wpvulnerability-plugins', + 'wpvulnerability-plugins-data', + 'wpvulnerability-themes', + 'wpvulnerability-core', + 'wpvulnerability-php', + 'wpvulnerability-apache', + 'wpvulnerability-nginx', + 'wpvulnerability-mariadb', + 'wpvulnerability-mysql', + 'wpvulnerability-imagemagick', + 'wpvulnerability-curl', + 'wpvulnerability-memcached', + 'wpvulnerability-redis', + 'wpvulnerability-sqlite', + 'wpvulnerability-statistics', + ); + + foreach ( $options as $key => $value ) { + if ( ! $config_key( $key ) ) { + if ( ! $is_multisite && in_array( $key, $no_autoload_keys, true ) ) { + add_option( $key, $value, '', false ); + } else { + $add_option( $key, $value ); + } + } + } + + // Add wpvulnerability-analyze option if it does not exist. + if ( ! $config_key( 'wpvulnerability-analyze' ) ) { + $default_analyze = array( + 'core' => 0, + 'plugins' => 0, + 'themes' => 0, + 'php' => 0, + 'apache' => 0, + 'nginx' => 0, + 'mariadb' => 0, + 'mysql' => 0, + 'imagemagick' => 0, + 'curl' => 0, + 'memcached' => 0, + 'redis' => 0, + 'sqlite' => 0, + ); + + foreach ( array_keys( $default_analyze ) as $component ) { + $constant = 'WPVULNERABILITY_HIDE_' . strtoupper( (string) $component ); + if ( defined( $constant ) && constant( $constant ) ) { + $default_analyze[ $component ] = 1; + } + } + $current_option_raw = $config_key( 'wpvulnerability-analyze' ); + $current_option = is_array( $current_option_raw ) ? $current_option_raw : false; + + if ( false === $current_option ) { + $add_option( 'wpvulnerability-analyze', $default_analyze ); + } else { + $updated_option = array_merge( $default_analyze, $current_option ); + $update_option( 'wpvulnerability-analyze', $updated_option ); + } + } + + $update_option( + 'wpvulnerability_initialized', + array( + 'timestamp' => (int) time(), + 'version' => WPVULNERABILITY_PLUGIN_VERSION, + ) + ); +} + +/** + * Callback function for when the plugin is activated. + * Adds plugin data options if they are not already created. + * + * @since 2.0.0 + * + * @return void + */ +function wpvulnerability_activation() { + wpvulnerability_initialize_plugin_data( true ); +} + +/** + * Callback function to run when the plugin is deactivated. + * Deletes options and removes scheduled wp-cron jobs. + * + * @since 2.0.0 + * + * @return void + */ +function wpvulnerability_deactivation() { + $options = array( + 'wpvulnerability_settings', + 'wpvulnerability-data', + 'wpvulnerability-analyze', + 'wpvulnerability-themes', + 'wpvulnerability-themes-cache', + 'wpvulnerability-themes-vulnerable', + 'wpvulnerability-plugins', + 'wpvulnerability-plugins-cache', + 'wpvulnerability-plugins-vulnerable', + 'wpvulnerability-core', + 'wpvulnerability-core-cache', + 'wpvulnerability-core-vulnerable', + 'wpvulnerability-php', + 'wpvulnerability-php-cache', + 'wpvulnerability-php-vulnerable', + 'wpvulnerability-apache', + 'wpvulnerability-apache-cache', + 'wpvulnerability-apache-vulnerable', + 'wpvulnerability-nginx', + 'wpvulnerability-nginx-cache', + 'wpvulnerability-nginx-vulnerable', + 'wpvulnerability-mariadb', + 'wpvulnerability-mariadb-cache', + 'wpvulnerability-mariadb-vulnerable', + 'wpvulnerability-mysql', + 'wpvulnerability-mysql-cache', + 'wpvulnerability-mysql-vulnerable', + 'wpvulnerability-imagemagick', + 'wpvulnerability-imagemagick-cache', + 'wpvulnerability-imagemagick-vulnerable', + 'wpvulnerability-curl', + 'wpvulnerability-curl-cache', + 'wpvulnerability-curl-vulnerable', + 'wpvulnerability-memcached', + 'wpvulnerability-memcached-cache', + 'wpvulnerability-memcached-vulnerable', + 'wpvulnerability-redis', + 'wpvulnerability-redis-cache', + 'wpvulnerability-redis-vulnerable', + 'wpvulnerability-sqlite', + 'wpvulnerability-sqlite-cache', + 'wpvulnerability-sqlite-vulnerable', + 'wpvulnerability-statistics', + 'wpvulnerability-statistics-cache', + 'wpvulnerability_initialized', + ); + + // Delete options based on the installation type. + $delete_option_func = is_multisite() ? 'delete_site_option' : 'delete_option'; + foreach ( $options as $option ) { + $delete_option_func( $option ); + } + + wpvulnerability_delete_transients(); + + // Unschedule and remove scheduled wp-cron jobs. + $cron_jobs = array( + 'wpvulnerability_notification', + 'wpvulnerability_update_database', + 'wpvulnerability_pull_db_data_event', + 'wpvulnerability_cleanup_logs', + ); + foreach ( $cron_jobs as $job ) { + $next_ts = wp_next_scheduled( $job ); + if ( false !== $next_ts ) { + wp_unschedule_event( $next_ts, $job ); + } + wp_clear_scheduled_hook( $job ); + } +} + +/** + * Deletes all transients that start with 'wpvulnerability_'. + * + * @since 3.5.0 + * + * @return void + */ +function wpvulnerability_delete_transients() { + global $wpdb; + + // Determine if the site is multisite. + $is_multisite = is_multisite(); + + // Define the prefix according to whether it is multisite or not. + $transient_prefix = $is_multisite ? '_site_transient_wpvulnerability_' : '_transient_wpvulnerability_'; + + // Prepare the LIKE pattern securely. + $like_pattern = $wpdb->esc_like( $transient_prefix ) . '%'; + + // Try to get transients from cache first. + $cache_key = 'wpvulnerability_transients_list'; + $transients = wp_cache_get( $cache_key ); + + if ( false === $transients ) { + // If cache is empty, query the database for matching transients. + if ( $is_multisite ) { + $transients = $wpdb->get_col( // phpcs:ignore WordPress.DB.DirectDatabaseQuery.DirectQuery + $wpdb->prepare( + "SELECT meta_key FROM {$wpdb->sitemeta} WHERE meta_key LIKE %s AND site_id = %d", + $like_pattern, + get_current_network_id() + ) + ); // phpcs:ignore WordPress.DB.DirectDatabaseQuery.NoCaching + } else { + $transients = $wpdb->get_col( // phpcs:ignore WordPress.DB.DirectDatabaseQuery.DirectQuery + $wpdb->prepare( + "SELECT option_name FROM {$wpdb->options} WHERE option_name LIKE %s", + $like_pattern + ) + ); // phpcs:ignore WordPress.DB.DirectDatabaseQuery.NoCaching + } + + // Store the result in cache for future use. + wp_cache_set( $cache_key, $transients, '', HOUR_IN_SECONDS ); + } + + // If no transients are found, exit early. + if ( empty( $transients ) ) { + return; + } + + foreach ( $transients as $transient ) { + if ( $is_multisite ) { + // For multisite, delete using delete_site_transient. + $transient_name = str_replace( '_site_transient_', '', $transient ); + delete_site_transient( $transient_name ); + } else { + // For single sites, delete using delete_transient. + $transient_name = str_replace( '_transient_', '', $transient ); + delete_transient( $transient_name ); + } + } + + // Optionally clear the cache after deletion. + wp_cache_delete( $cache_key ); +} + +/** + * Reset the plugin data to defaults and repopulate from the API. + * + * This routine mimics a full uninstall by deleting options, logs, and cron jobs, + * then provisions default settings, reschedules events, and reloads data. + * + * @since 4.3.0 + * + * @return void + */ +function wpvulnerability_reset_plugin_data() { + wpvulnerability_uninstall(); + + wpvulnerability_initialize_plugin_data( true ); + + if ( function_exists( 'wpvulnerability_schedule_core_events' ) ) { + wpvulnerability_schedule_core_events(); + } + + $config_raw = is_multisite() ? get_site_option( 'wpvulnerability-config', array() ) : get_option( 'wpvulnerability-config', array() ); + $config = is_array( $config_raw ) ? $config_raw : array(); + + if ( function_exists( 'wpvulnerability_schedule_notification_event' ) ) { + wpvulnerability_schedule_notification_event( $config ); + } + + wpvulnerability_update_database_data(); + wp_cache_flush(); +} + +/** + * Callback function to run when the plugin is uninstalled. + * Deletes options and removes scheduled wp-cron jobs. + * + * @since 3.0.0 + * + * @return void + */ +function wpvulnerability_uninstall() { + // Delete deprecated options. + delete_option( 'wpvulnerability_settings' ); + delete_option( 'wpvulnerability-data' ); + if ( function_exists( 'delete_site_option' ) ) { + delete_site_option( 'wpvulnerability_settings' ); + delete_site_option( 'wpvulnerability-data' ); + } + + // Options to delete for both single site and multisite. + $options = array( + 'wpvulnerability-themes', + 'wpvulnerability-themes-cache', + 'wpvulnerability-themes-vulnerable', + 'wpvulnerability-themes-signature', + 'wpvulnerability-plugins', + 'wpvulnerability-plugins-cache', + 'wpvulnerability-plugins-vulnerable', + 'wpvulnerability-plugins-signature', + 'wpvulnerability-plugins-data', + 'wpvulnerability-plugins-cache-data', + 'wpvulnerability-plugins-data-cache', + 'wpvulnerability-core', + 'wpvulnerability-core-cache', + 'wpvulnerability-core-vulnerable', + 'wpvulnerability-core-version', + 'wpvulnerability-php', + 'wpvulnerability-php-cache', + 'wpvulnerability-php-vulnerable', + 'wpvulnerability-apache', + 'wpvulnerability-apache-cache', + 'wpvulnerability-apache-vulnerable', + 'wpvulnerability-nginx', + 'wpvulnerability-nginx-cache', + 'wpvulnerability-nginx-vulnerable', + 'wpvulnerability-mariadb', + 'wpvulnerability-mariadb-cache', + 'wpvulnerability-mariadb-vulnerable', + 'wpvulnerability-mysql', + 'wpvulnerability-mysql-cache', + 'wpvulnerability-mysql-vulnerable', + 'wpvulnerability-imagemagick', + 'wpvulnerability-imagemagick-cache', + 'wpvulnerability-imagemagick-vulnerable', + 'wpvulnerability-curl', + 'wpvulnerability-curl-cache', + 'wpvulnerability-curl-vulnerable', + 'wpvulnerability-memcached', + 'wpvulnerability-memcached-cache', + 'wpvulnerability-memcached-vulnerable', + 'wpvulnerability-redis', + 'wpvulnerability-redis-cache', + 'wpvulnerability-redis-vulnerable', + 'wpvulnerability-sqlite', + 'wpvulnerability-sqlite-cache', + 'wpvulnerability-sqlite-vulnerable', + 'wpvulnerability-statistics', + 'wpvulnerability-statistics-cache', + 'wpvulnerability_initialized', + 'wpvulnerability-analyze', + ); + + foreach ( $options as $option ) { + delete_option( $option ); + if ( function_exists( 'delete_site_option' ) ) { + delete_site_option( $option ); + } + } + + // Delete all stored log entries in batches to avoid timeouts. + $log_query_args = array( + 'post_type' => 'wpvulnerability_log', + 'fields' => 'ids', + 'post_status' => 'any', + 'posts_per_page' => 100, + 'orderby' => 'ID', + 'order' => 'ASC', + 'no_found_rows' => true, + 'update_post_meta_cache' => false, + 'update_post_term_cache' => false, + 'suppress_filters' => false, + ); + + while ( true ) { + $log_ids = get_posts( $log_query_args ); + + if ( empty( $log_ids ) ) { + break; + } + + foreach ( $log_ids as $log_id ) { + wp_delete_post( (int) $log_id, true ); + } + } + + // Delete config data. + delete_option( 'wpvulnerability-config' ); + if ( function_exists( 'delete_site_option' ) ) { + delete_site_option( 'wpvulnerability-config' ); + } + + wpvulnerability_delete_transients(); + + // Unschedule and remove scheduled wp-cron jobs. + $cron_jobs = array( + 'wpvulnerability_notification', + 'wpvulnerability_update_database', + 'wpvulnerability_pull_db_data_event', + 'wpvulnerability_cleanup_logs', + ); + foreach ( $cron_jobs as $job ) { + $next_ts = wp_next_scheduled( $job ); + if ( false !== $next_ts ) { + wp_unschedule_event( $next_ts, $job ); + } + wp_clear_scheduled_hook( $job ); + } +} + +/** + * Filters and returns the WPVulnerability analysis setting for a given type. + * + * This function retrieves the WPVulnerability analysis settings, either from + * the single site or the multisite network, depending on the WordPress setup. + * It returns false if the specified type ('core', 'plugins', 'themes', + * 'php', 'apache', 'nginx', 'mariadb', 'mysql') is set. If the type is not set or is invalid, it returns true. + * + * @since 3.3.0 + * + * @param string $type The type of analysis setting to retrieve ('core', 'plugins', 'themes', 'php', 'apache', 'nginx', 'mariadb', 'mysql'). + * + * @return bool False if the specified type is set, true if not set or invalid. + */ +function wpvulnerability_analyze_filter( $type ) { + // Retrieve the analysis settings based on the WordPress setup. + $raw_analyze = is_multisite() ? get_site_option( 'wpvulnerability-analyze', array() ) : get_option( 'wpvulnerability-analyze', array() ); + $wpvulnerability_analyze = is_array( $raw_analyze ) ? $raw_analyze : array(); + + // Define the valid types for analysis. + $valid_types = array( 'core', 'plugins', 'themes', 'php', 'apache', 'nginx', 'mariadb', 'mysql', 'imagemagick', 'curl', 'memcached', 'redis', 'sqlite' ); + + if ( in_array( $type, $valid_types, true ) ) { + $constant = 'WPVULNERABILITY_HIDE_' . strtoupper( (string) $type ); + if ( defined( $constant ) && constant( $constant ) ) { + return false; + } + + $type_val = $wpvulnerability_analyze[ $type ] ?? 0; + return ! ( is_numeric( $type_val ) && (int) $type_val ); + } + + return true; // Return true for invalid types. +} + +/** + * Clean the cache after an update. + * + * This function is triggered after a plugin or theme update to clean the cache + * and refresh the vulnerability data. + * + * @since 2.0.0 + * + * @return void + */ +add_action( 'upgrader_process_complete', 'wpvulnerability_update_database_data', 10, 0 ); + +/** + * Adds a notification count to the Plugins menu item in the WordPress admin if there are vulnerable plugins. + * + * This function retrieves the number of vulnerable plugins from the cache, either from a single site + * or a multisite setup, and displays the count in the WordPress admin menu next to the Plugins menu item. + * The count is shown with a gold background (#FFD700) and black text. + * + * @since 3.3.5 + * + * @return void + */ +function wpvulnerability_counter_plugins() { + + if ( ! wpvulnerability_analyze_filter( 'plugins' ) ) { + return; // Skip if plugin analysis is disabled. + } + + // Retrieve the number of vulnerable plugins from cache. + $wpvulnerability_plugins_count = is_multisite() && is_network_admin() + ? get_site_option( 'wpvulnerability-plugins-vulnerable' ) + : get_option( 'wpvulnerability-plugins-vulnerable' ); + + // Decode the count from JSON, default to 0 if not set. + $wpvulnerability_plugins_decoded = is_string( $wpvulnerability_plugins_count ) ? json_decode( $wpvulnerability_plugins_count ) : 0; + $wpvulnerability_plugins_total = is_numeric( $wpvulnerability_plugins_decoded ) ? (int) $wpvulnerability_plugins_decoded : 0; + + if ( $wpvulnerability_plugins_total > 0 ) { + global $menu; + foreach ( $menu as $key => $value ) { + if ( 'plugins.php' === $menu[ $key ][2] ) { + $menu[ $key ][0] .= ' ' . esc_html( (string) $wpvulnerability_plugins_total ) . ''; // phpcs:ignore + break; + } + } + } +} + +// Hook into the appropriate admin menu action based on the site type. +if ( is_multisite() && is_network_admin() ) { + add_action( 'network_admin_menu', 'wpvulnerability_counter_plugins' ); +} elseif ( ! is_multisite() ) { + add_action( 'admin_menu', 'wpvulnerability_counter_plugins' ); +} + +/** + * Adds a notification count to the Themes menu item in the WordPress admin if there are vulnerable themes. + * + * This function retrieves the number of vulnerable themes from the cache, either from a single site + * or a multisite setup, and displays the count in the WordPress admin menu next to the Themes menu item. + * The count is displayed with a gold background (#FFD700) and black text. + * + * @since 3.3.5 + * + * @return void + */ +function wpvulnerability_counter_themes() { + + if ( ! wpvulnerability_analyze_filter( 'themes' ) ) { + return; // Skip if theme analysis is disabled. + } + + // Retrieve the number of theme vulnerabilities from cache. + $wpvulnerability_themes_count = ( is_multisite() && is_network_admin() ) + ? get_site_option( 'wpvulnerability-themes-vulnerable' ) + : get_option( 'wpvulnerability-themes-vulnerable' ); + + // Decode the count from JSON, default to 0 if not set. + $wpvulnerability_themes_decoded = is_string( $wpvulnerability_themes_count ) ? json_decode( $wpvulnerability_themes_count ) : 0; + $wpvulnerability_themes_total = is_numeric( $wpvulnerability_themes_decoded ) ? (int) $wpvulnerability_themes_decoded : 0; + + if ( $wpvulnerability_themes_total > 0 ) { + + // Check if we are in a multisite setup or not. + if ( ! is_multisite() ) { + global $submenu; + + // Check if the submenu for themes exists. + if ( isset( $submenu['themes.php'] ) ) { + foreach ( $submenu['themes.php'] as $key => $value ) { + if ( 'themes.php' === $submenu['themes.php'][ $key ][2] ) { + $submenu['themes.php'][ $key ][0] .= ' ' . esc_html( (string) $wpvulnerability_themes_total ) . ''; // phpcs:ignore + break; + } + } + } + } elseif ( is_network_admin() ) { + global $menu; + + foreach ( $menu as $key => $value ) { + if ( 'themes.php' === $menu[ $key ][2] ) { + $menu[ $key ][0] .= ' ' . esc_html( (string) $wpvulnerability_themes_total ) . ''; // phpcs:ignore + break; + } + } + } + } +} + +// Hook into the appropriate admin menu action based on the site type. +if ( is_multisite() && is_network_admin() ) { + add_action( 'network_admin_menu', 'wpvulnerability_counter_themes' ); +} elseif ( ! is_multisite() ) { + add_action( 'admin_menu', 'wpvulnerability_counter_themes' ); +} + +/** + * Adds a notification count to the Updates submenu item under Dashboard in the WordPress admin if there are core updates. + * + * This function checks for core updates and then displays the count in the WordPress admin submenu + * next to the Updates menu item with a gold background (#FFD700) and black text. + * + * @since 3.3.5 + * + * @return void + */ +function wpvulnerability_counter_core() { + + if ( ! wpvulnerability_analyze_filter( 'core' ) ) { + return; // Skip if core analysis is disabled. + } + + // Retrieve the number of core vulnerabilities from cache. + $wpvulnerability_core_count = is_multisite() && is_network_admin() + ? get_site_option( 'wpvulnerability-core-vulnerable' ) + : get_option( 'wpvulnerability-core-vulnerable' ); + + // Decode the count from JSON, default to 0 if not set. + $wpvulnerability_core_decoded = is_string( $wpvulnerability_core_count ) ? json_decode( $wpvulnerability_core_count ) : 0; + $wpvulnerability_core_total = is_numeric( $wpvulnerability_core_decoded ) ? (int) $wpvulnerability_core_decoded : 0; + + if ( $wpvulnerability_core_total > 0 ) { + global $submenu; + if ( isset( $submenu['index.php'] ) ) { + foreach ( $submenu['index.php'] as $key => $value ) { + if ( 'update-core.php' === $submenu['index.php'][ $key ][2] ) { + $submenu['index.php'][ $key ][0] .= ' ' . esc_html( (string) $wpvulnerability_core_total ) . ''; // phpcs:ignore + break; + } + } + } + } +} + +// Hook into the appropriate admin menu action based on the site type. +if ( is_multisite() && is_network_admin() ) { + add_action( 'network_admin_menu', 'wpvulnerability_counter_core' ); +} elseif ( ! is_multisite() ) { + add_action( 'admin_menu', 'wpvulnerability_counter_core' ); +} diff --git a/wpvulnerability-schedule.php b/wpvulnerability-schedule.php new file mode 100644 index 0000000..5916b2d --- /dev/null +++ b/wpvulnerability-schedule.php @@ -0,0 +1,544 @@ +> $schedules Existing schedules. + * + * @return array> Modified schedules. + */ +function wpvulnerability_add_every_six_hours( $schedules ) { + $label = did_action( 'init' ) ? __( 'Every 6 hours', 'wpvulnerability' ) : 'Every 6 hours'; + + $schedules['wpvulnerability_six_hours'] = array( + 'interval' => 6 * HOUR_IN_SECONDS, + 'display' => $label, + ); + + return $schedules; +} + +// Remove legacy scheduled events on subsites in multisite installs. +if ( is_multisite() && ! is_main_site() ) { + wpvulnerability_clear_plugin_cron_hooks(); +} + +/** + * Schedule Automatic Vulnerability Database Update. + * If the 'wpvulnerability_update_database' event is not already scheduled, schedule it to run twice daily. + * + * @since 2.0.0 + * + * @return void + */ +wpvulnerability_schedule_core_events(); + +// Hook the event to the function that updates the database. +add_action( 'wpvulnerability_update_database', 'wpvulnerability_update_database_data' ); + +/** + * Calculate the next notification timestamp based on plugin settings. + * + * @since 4.1.1 + * + * @param array $config Plugin configuration. + * @return int Timestamp for next notification. + */ +function wpvulnerability_get_next_notification_timestamp( $config ) { + $hour_raw = $config['hour'] ?? 0; + $hour = is_numeric( $hour_raw ) ? max( 0, min( 23, (int) $hour_raw ) ) : 0; + $min_raw = $config['minute'] ?? 0; + $minute = is_numeric( $min_raw ) ? max( 0, min( 59, (int) $min_raw ) ) : 0; + + $timezone = wp_timezone(); + + $current_time = new DateTime( 'now', $timezone ); + $scheduled_time = new DateTime( 'now', $timezone ); + $scheduled_time->setTime( $hour, $minute, 0 ); + + if ( isset( $config['period'] ) && 'weekly' === $config['period'] ) { + $day_raw = $config['day'] ?? 'monday'; + $day = is_scalar( $day_raw ) ? strtolower( (string) $day_raw ) : 'monday'; + $weekdays = array( 'sunday', 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday' ); + $day_index = array_search( $day, $weekdays, true ); + if ( false === $day_index ) { + $day_index = 1; // Monday. + } + while ( (int) $scheduled_time->format( 'w' ) !== $day_index || $scheduled_time->getTimestamp() <= $current_time->getTimestamp() ) { + $scheduled_time->modify( '+1 day' ); + } + } elseif ( $scheduled_time->getTimestamp() <= $current_time->getTimestamp() ) { + $scheduled_time->modify( '+1 day' ); + } + + return (int) $scheduled_time->getTimestamp(); +} + +/** + * Schedule vulnerability notifications. + * + * When $force is false, the function first checks the current cron schedule + * for the notification hook and returns early if it already matches the + * desired period from $config. This avoids rewriting the wp_options 'cron' + * row on every page load when the schedule is already correct. + * + * Callers that change notification settings (period, hour, minute, day) must + * keep $force as true so the event is rescheduled with the new timestamp. + * + * @since 4.1.1 + * + * @param array $config Plugin configuration. + * @param bool $force Whether to reschedule unconditionally. Defaults to true. + * + * @return void + */ +function wpvulnerability_schedule_notification_event( $config, $force = true ) { + if ( ! $force ) { + $desired = ''; + if ( isset( $config['period'] ) + && in_array( $config['period'], array( 'daily', 'weekly' ), true ) + && ( ! is_multisite() || is_main_site() ) ) { + $desired = (string) $config['period']; // Narrowed to 'daily'|'weekly' by in_array check above. + } + + $current = wp_get_schedule( 'wpvulnerability_notification' ); + if ( false === $current ) { + $current = ''; + } + + if ( $current === $desired ) { + return; + } + } + + wp_clear_scheduled_hook( 'wpvulnerability_notification' ); + if ( ! isset( $config['period'] ) || 'never' === $config['period'] ) { + return; + } + + if ( ! is_multisite() || is_main_site() ) { + $period_val = $config['period']; + $period_str = is_scalar( $period_val ) ? (string) $period_val : ''; + $timestamp = wpvulnerability_get_next_notification_timestamp( $config ); + wp_schedule_event( $timestamp, $period_str, 'wpvulnerability_notification' ); + } +} + +$wpvulnerability_s_raw = is_multisite() ? get_site_option( 'wpvulnerability-config' ) : get_option( 'wpvulnerability-config' ); +$wpvulnerability_s = is_array( $wpvulnerability_s_raw ) ? $wpvulnerability_s_raw : array(); +wpvulnerability_schedule_notification_event( $wpvulnerability_s, false ); +add_action( 'wpvulnerability_notification', 'wpvulnerability_execute_notification' ); // @phpstan-ignore return.void (function returns bool but action callbacks are not required to be void) +unset( $wpvulnerability_s ); + +/** + * Returns the WPVulnerability cron hooks. + * + * @since 4.3.0 + * + * @return array List of cron hooks belonging to the plugin. + */ +function wpvulnerability_get_plugin_cron_hooks() { + return array( + 'wpvulnerability_update_database', + 'wpvulnerability_cleanup_logs', + 'wpvulnerability_notification', + ); +} + +/** + * Determines the schedule slug for database updates based on cache hours. + * + * @since 4.3.0 + * + * @return string Schedule identifier. + */ +function wpvulnerability_get_update_schedule_slug() { + $cache_hours = wpvulnerability_cache_hours(); + $mapping = array( + 1 => 'hourly', + 6 => 'wpvulnerability_six_hours', + 12 => 'twicedaily', + 24 => 'daily', + ); + + $schedule = isset( $mapping[ $cache_hours ] ) ? $mapping[ $cache_hours ] : 'twicedaily'; + + $schedules = function_exists( 'wp_get_schedules' ) ? wp_get_schedules() : array(); + + if ( ! isset( $schedules[ $schedule ] ) ) { + return 'twicedaily'; + } + + return $schedule; +} + +/** + * Retrieves the main site ID with backwards compatibility. + * + * @since 4.3.0 + * + * @return int Main site ID. + */ +function wpvulnerability_get_main_site_id() { + if ( function_exists( 'get_main_site_id' ) ) { + return (int) get_main_site_id(); + } + + $current_site = get_current_site(); + if ( isset( $current_site->blog_id ) ) { + return (int) $current_site->blog_id; + } + + return (int) get_current_blog_id(); +} + +/** + * Clears all WPVulnerability cron hooks for the current site. + * + * @since 4.3.0 + * + * @return void + */ +function wpvulnerability_clear_plugin_cron_hooks() { + $hooks = wpvulnerability_get_plugin_cron_hooks(); + + foreach ( $hooks as $hook ) { + wp_clear_scheduled_hook( $hook ); + } +} + +/** + * Schedules core WPVulnerability cron events for the current site. + * + * @since 4.3.0 + * + * @return void + */ +function wpvulnerability_schedule_core_events() { + if ( is_multisite() && ! is_main_site() ) { + return; + } + + $update_schedule = wpvulnerability_get_update_schedule_slug(); + + $current_schedule = wp_get_schedule( 'wpvulnerability_update_database' ); + if ( $current_schedule !== $update_schedule ) { + wp_clear_scheduled_hook( 'wpvulnerability_update_database' ); + wp_schedule_event( time(), $update_schedule, 'wpvulnerability_update_database' ); + } + + if ( ! wp_next_scheduled( 'wpvulnerability_cleanup_logs' ) ) { + wp_schedule_event( time(), 'daily', 'wpvulnerability_cleanup_logs' ); + } +} + +/** + * Returns the notification schedule string based on settings. + * + * @since 4.3.0 + * + * @param array $config Plugin configuration. + * + * @return string Notification schedule name or empty string when disabled. + */ +function wpvulnerability_get_notification_schedule_from_config( $config ) { + if ( ! isset( $config['period'] ) ) { + return ''; + } + + $period_raw = $config['period']; + $period = is_scalar( $period_raw ) ? strtolower( trim( (string) $period_raw ) ) : ''; + + if ( ! in_array( $period, array( 'daily', 'weekly' ), true ) ) { + return ''; + } + + return $period; +} + +/** + * Builds the list of expected cron events for the current site. + * + * @since 4.3.0 + * + * @param array|mixed $config Plugin configuration. + * @param bool $is_main_site Whether the current site is the main site on a multisite network. + * + * @return array> Expected cron events. + */ +function wpvulnerability_get_expected_cron_events( $config, $is_main_site ) { + if ( ! is_array( $config ) ) { + $config = is_multisite() ? get_site_option( 'wpvulnerability-config' ) : get_option( 'wpvulnerability-config' ); + if ( ! is_array( $config ) ) { + $config = array(); + } + } + + $expect_main_site = ( ! is_multisite() || $is_main_site ); + $update_schedule = wpvulnerability_get_update_schedule_slug(); + $expected_events = array( + array( + 'hook' => 'wpvulnerability_update_database', + 'schedule' => $update_schedule, + 'should_exist' => $expect_main_site, + 'label' => __( 'Database updates', 'wpvulnerability' ), + ), + array( + 'hook' => 'wpvulnerability_cleanup_logs', + 'schedule' => 'daily', + 'should_exist' => $expect_main_site, + 'label' => __( 'Log cleanup', 'wpvulnerability' ), + ), + ); + + $notification_schedule = ''; + + if ( $expect_main_site ) { + $notification_schedule = wpvulnerability_get_notification_schedule_from_config( $config ); + } + + $expected_events[] = array( + 'hook' => 'wpvulnerability_notification', + 'schedule' => $notification_schedule, + 'should_exist' => ( '' !== $notification_schedule ), + 'label' => __( 'Notifications', 'wpvulnerability' ), + ); + + return $expected_events; +} + +/** + * Collects scheduled WPVulnerability cron entries for the current site. + * + * Uses only public WordPress Cron API functions (wp_next_scheduled and + * wp_get_schedule) to avoid relying on the private _get_cron_array() function. + * As a result, only hooks registered by wpvulnerability_get_plugin_cron_hooks() + * are inspected; duplicate-instance detection is not performed. + * + * @since 4.3.0 + * @since 5.0.0 Replaced _get_cron_array() with wp_next_scheduled()/wp_get_schedule(). + * + * @return array> Scheduled cron entries. + */ +function wpvulnerability_get_cron_snapshot() { + $hooks = wpvulnerability_get_plugin_cron_hooks(); + $events = array(); + + foreach ( $hooks as $hook ) { + $timestamp = wp_next_scheduled( $hook ); + if ( false === $timestamp ) { + continue; + } + $schedule = wp_get_schedule( $hook ); + $events[] = array( + 'hook' => $hook, + 'timestamp' => (int) $timestamp, + 'schedule' => is_string( $schedule ) ? sanitize_key( $schedule ) : '', + ); + } + + return $events; +} + +/** + * Builds a status report comparing expected and actual cron events. + * + * @since 4.3.0 + * + * @param array $config Plugin configuration. + * @param bool $is_main_site Whether the current site is the main site on a multisite network. + * + * @return array>> Report including expected rows and unexpected hooks. + */ +function wpvulnerability_get_cron_status( $config, $is_main_site ) { + $expected = wpvulnerability_get_expected_cron_events( $config, $is_main_site ); + $snapshot = wpvulnerability_get_cron_snapshot(); + $expected_rows = array(); + $extra_events = array(); + + foreach ( $expected as $item ) { + $hook_raw = $item['hook'] ?? ''; + $hook = is_scalar( $hook_raw ) ? (string) $hook_raw : ''; + $expected_rows[ $hook ] = $item; + $expected_rows[ $hook ]['schedules_found'] = array(); + $expected_rows[ $hook ]['next_run'] = null; + $expected_rows[ $hook ]['count'] = 0; + $expected_rows[ $hook ]['messages'] = array(); + } + + foreach ( $snapshot as $event ) { + $hook_raw = $event['hook'] ?? ''; + $hook = is_scalar( $hook_raw ) ? (string) $hook_raw : ''; + $ts_raw = $event['timestamp'] ?? 0; + $timestamp = is_numeric( $ts_raw ) ? (int) $ts_raw : 0; + $sched_raw = $event['schedule'] ?? ''; + $schedule = is_scalar( $sched_raw ) ? (string) $sched_raw : ''; + + if ( isset( $expected_rows[ $hook ] ) ) { + ++$expected_rows[ $hook ]['count']; + if ( null === $expected_rows[ $hook ]['next_run'] || $timestamp < $expected_rows[ $hook ]['next_run'] ) { + $expected_rows[ $hook ]['next_run'] = $timestamp; + } + if ( '' !== $schedule ) { + $expected_rows[ $hook ]['schedules_found'][ $schedule ] = true; + } + continue; + } + + if ( 0 === strpos( $hook, 'wpvulnerability_' ) ) { + if ( ! isset( $extra_events[ $hook ] ) ) { + $extra_events[ $hook ] = array( + 'hook' => $hook, + 'count' => 0, + 'next_run' => null, + 'schedules' => array(), + ); + } + + ++$extra_events[ $hook ]['count']; + + if ( null === $extra_events[ $hook ]['next_run'] || $timestamp < $extra_events[ $hook ]['next_run'] ) { + $extra_events[ $hook ]['next_run'] = $timestamp; + } + + if ( '' !== $schedule ) { + $extra_events[ $hook ]['schedules'][ $schedule ] = true; + } + } + } + + foreach ( $expected_rows as $hook => $row ) { + $sched_raw = $row['schedule'] ?? ''; + $expected_schedule = is_scalar( $sched_raw ) ? (string) $sched_raw : ''; + $should_exist = isset( $row['should_exist'] ) ? (bool) $row['should_exist'] : false; + $found_schedules = array_keys( $row['schedules_found'] ); + + if ( ! $should_exist ) { + if ( $row['count'] > 0 ) { + if ( 'wpvulnerability_notification' === $hook ) { + $row['status'] = 'needs_attention'; + $row['messages'][] = __( 'Notifications are scheduled, but settings currently disable them. Please review the notifications tab.', 'wpvulnerability' ); + } else { + $row['status'] = 'unexpected'; + $row['messages'][] = __( 'This event should not be scheduled for this site.', 'wpvulnerability' ); + } + } else { + $row['status'] = 'not_expected'; + $row['messages'][] = __( 'Not expected for this site.', 'wpvulnerability' ); + } + } elseif ( 0 === $row['count'] ) { + $row['status'] = 'missing'; + $row['messages'][] = __( 'No instances found.', 'wpvulnerability' ); + } else { + $mismatched_schedule = ( '' !== $expected_schedule && ! in_array( $expected_schedule, $found_schedules, true ) ); + $duplicate_events = ( $row['count'] > 1 ); + + if ( $mismatched_schedule ) { + $row['messages'][] = __( 'Scheduled with an unexpected interval.', 'wpvulnerability' ); + } + + if ( $duplicate_events ) { + $row['messages'][] = __( 'Multiple instances detected.', 'wpvulnerability' ); + } + + if ( empty( $row['messages'] ) ) { + $row['status'] = 'ok'; + $row['messages'][] = __( 'Scheduled as expected.', 'wpvulnerability' ); + } else { + $row['status'] = 'needs_attention'; + } + } + + $row['schedules_found'] = $found_schedules; + $expected_rows[ $hook ] = $row; + } + + foreach ( $extra_events as $hook => $row ) { + $extra_events[ $hook ]['schedules'] = array_keys( $row['schedules'] ); + } + + return array( + 'expected' => array_values( $expected_rows ), + 'unexpected' => array_values( $extra_events ), + ); +} + +/** + * Repairs WPVulnerability cron events for the current site. + * + * @since 4.3.0 + * + * @param array $config Plugin configuration. + * + * @return void + */ +function wpvulnerability_repair_cron_events( $config ) { + wpvulnerability_clear_plugin_cron_hooks(); + wpvulnerability_schedule_core_events(); + wpvulnerability_schedule_notification_event( $config ); +} + +/** + * Repairs WPVulnerability cron events across all sites in a network. + * + * @since 4.3.0 + * + * @param array $config Plugin configuration. + * + * @return void + */ +function wpvulnerability_repair_network_cron_events( $config ) { + if ( ! is_multisite() ) { + return; + } + + $sites = get_sites( + array( + 'fields' => 'ids', + ) + ); + + if ( empty( $sites ) ) { + return; + } + + $main_site_id = wpvulnerability_get_main_site_id(); + $current_blog_id = get_current_blog_id(); + $sanitized_config = $config; + + foreach ( $sites as $site_id ) { + switch_to_blog( (int) $site_id ); + + wpvulnerability_clear_plugin_cron_hooks(); + + if ( (int) $site_id === (int) $main_site_id ) { + wpvulnerability_schedule_core_events(); + wpvulnerability_schedule_notification_event( $sanitized_config ); + } + + restore_current_blog(); + } + + if ( get_current_blog_id() !== $current_blog_id ) { + switch_to_blog( $current_blog_id ); + } +} diff --git a/wpvulnerability-sitehealth.php b/wpvulnerability-sitehealth.php new file mode 100644 index 0000000..295b121 --- /dev/null +++ b/wpvulnerability-sitehealth.php @@ -0,0 +1,491 @@ + __( 'There aren\'t plugins vulnerabilities', 'wpvulnerability' ), + 'status' => 'good', + 'badge' => array( + 'label' => __( 'Security', 'wpvulnerability' ), + 'color' => 'green', + ), + 'description' => sprintf( + '

%s

', + __( 'Shows possible vulnerabilities that exist in installed plugins.', 'wpvulnerability' ) + ), + 'actions' => '', + 'test' => 'wpvulnerability_plugins', + ); + + // Check if any plugin vulnerabilities were found. + $wpvulnerability_test_plugins_counter = wpvulnerability_get_component_count( 'plugins' ); + + if ( $wpvulnerability_test_plugins_counter ) { + $result['status'] = 'critical'; + $result['label'] = sprintf( + // translators: Number of plugins vulnerabilities. + _n( 'There is %d plugin with vulnerabilities', 'There are %d plugins with vulnerabilities', $wpvulnerability_test_plugins_counter, 'wpvulnerability' ), + $wpvulnerability_test_plugins_counter + ); + $result['badge']['color'] = 'red'; + $result['description'] = sprintf( + '

%1$s

%2$s', + __( 'We\'ve detected potential vulnerabilities in installed plugins. Please check them and keep them updated.', 'wpvulnerability' ), + wpvulnerability_html_plugins() + ); + + // Add action links to update plugins. + $result['actions'] .= sprintf( + '

%s

', + esc_url( is_multisite() ? network_admin_url( 'plugins.php' ) : admin_url( 'plugins.php' ) ), + __( 'Update plugins', 'wpvulnerability' ) + ); + } + + return $result; +} + +/** + * Tests for vulnerabilities in installed themes. + * + * @since 2.0.0 + * + * @return array{label: string, status: string, badge: array{label: string, color: string}, description: string, actions: string, test: string} Array with the results of the vulnerability test. + */ +function wpvulnerability_test_themes() { + // Define the initial test result values. + $result = array( + 'label' => __( 'There aren\'t themes vulnerabilities', 'wpvulnerability' ), + 'status' => 'good', + 'badge' => array( + 'label' => __( 'Security', 'wpvulnerability' ), + 'color' => 'green', + ), + 'description' => sprintf( + '

%s

', + __( 'Shows possible vulnerabilities that exist in installed themes.', 'wpvulnerability' ) + ), + 'actions' => '', + 'test' => 'wpvulnerability_themes', + ); + + // Check if any theme vulnerabilities were found. + $wpvulnerability_test_themes_counter = wpvulnerability_get_component_count( 'themes' ); + + if ( $wpvulnerability_test_themes_counter ) { + $result['status'] = 'critical'; + $result['label'] = sprintf( + // translators: Number of themes vulnerabilities. + _n( 'There is %d theme with vulnerabilities', 'There are %d themes with vulnerabilities', $wpvulnerability_test_themes_counter, 'wpvulnerability' ), + $wpvulnerability_test_themes_counter + ); + $result['badge']['color'] = 'red'; + $result['description'] = sprintf( + '

%1$s

%2$s', + __( 'We\'ve detected potential vulnerabilities in installed themes. Please check them and keep them updated.', 'wpvulnerability' ), + wpvulnerability_html_themes() + ); + + // Add action links to update themes. + $result['actions'] .= sprintf( + '

%s

', + esc_url( is_multisite() ? network_admin_url( 'themes.php' ) : admin_url( 'themes.php' ) ), + __( 'Update themes', 'wpvulnerability' ) + ); + } + + return $result; +} + +/** + * Tests for vulnerabilities in core. + * + * @since 2.0.0 + * + * @return array{label: string, status: string, badge: array{label: string, color: string}, description: string, actions: string, test: string} Array with the results of the vulnerability test. + */ +function wpvulnerability_test_core() { + // Define the initial test result values. + $result = array( + 'label' => __( 'There aren\'t WordPress vulnerabilities', 'wpvulnerability' ), + 'status' => 'good', + 'badge' => array( + 'label' => __( 'Security', 'wpvulnerability' ), + 'color' => 'green', + ), + 'description' => sprintf( + '

%s

', + __( 'Shows possible vulnerabilities existing in the WordPress core.', 'wpvulnerability' ) + ), + 'actions' => '', + 'test' => 'wpvulnerability_core', + ); + + // Check if any core vulnerabilities were found. + $wpvulnerability_test_core_counter = wpvulnerability_get_component_count( 'core' ); + + if ( $wpvulnerability_test_core_counter ) { + $result['status'] = 'critical'; + $result['label'] = sprintf( + // translators: Number of core vulnerabilities. + _n( 'There is %d core vulnerability', 'There are %d core vulnerabilities', $wpvulnerability_test_core_counter, 'wpvulnerability' ), + $wpvulnerability_test_core_counter + ); + $result['badge']['color'] = 'red'; + $result['description'] = sprintf( + '

%1$s

%2$s', + __( 'We\'ve detected potential vulnerabilities in this WordPress installation. Please check them and keep your installation updated.', 'wpvulnerability' ), + wpvulnerability_html_core() + ); + + // Add action links to update WordPress. + $result['actions'] .= sprintf( + '

%s

', + esc_url( is_multisite() ? network_admin_url( 'update-core.php' ) : admin_url( 'update-core.php' ) ), + __( 'Update WordPress', 'wpvulnerability' ) + ); + } + + return $result; +} + +/** + * Tests for vulnerabilities in a specified software component. + * + * @since 3.5.0 + * + * @param string $software The type of software to test (php, apache, nginx, mariadb, mysql). + * @return array{label: string, status: string, badge: array{label: string, color: string}, description: string, actions: string, test: string} Array with the results of the vulnerability test. + */ +function wpvulnerability_test_software( $software ) { + $software_list = array( + 'php' => __( 'PHP', 'wpvulnerability' ), + 'apache' => __( 'Apache HTTPD', 'wpvulnerability' ), + 'nginx' => __( 'Nginx', 'wpvulnerability' ), + 'mariadb' => __( 'MariaDB', 'wpvulnerability' ), + 'mysql' => __( 'MySQL', 'wpvulnerability' ), + 'imagemagick' => __( 'ImageMagick', 'wpvulnerability' ), + 'curl' => __( 'curl', 'wpvulnerability' ), + ); + + if ( ! array_key_exists( $software, $software_list ) ) { + return array( + 'label' => __( 'Invalid software type', 'wpvulnerability' ), + 'status' => 'error', + 'badge' => array( + 'label' => __( 'Error', 'wpvulnerability' ), + 'color' => 'red', + ), + 'description' => sprintf( + '

%s

', + __( 'The specified software type is not valid.', 'wpvulnerability' ) + ), + 'actions' => '', + 'test' => 'wpvulnerability_' . $software, + ); + } + + // Define the initial test result values. + $result = array( + // translators: name of the software. + 'label' => sprintf( __( 'There aren\'t %s vulnerabilities', 'wpvulnerability' ), $software_list[ $software ] ), + 'status' => 'good', + 'badge' => array( + 'label' => __( 'Security', 'wpvulnerability' ), + 'color' => 'green', + ), + 'description' => sprintf( + '

%s

', + // translators: software with vulnerabilities. + sprintf( __( 'Shows possible vulnerabilities existing in %s.', 'wpvulnerability' ), $software_list[ $software ] ) + ), + 'actions' => '', + 'test' => 'wpvulnerability_' . $software, + ); + + // Check if any vulnerabilities were found. + $vulnerability_counter = wpvulnerability_get_component_count( $software ); + + if ( $vulnerability_counter ) { + $result['status'] = 'critical'; + $result['label'] = sprintf( + // translators: Software and number of vulnerabilities. + _n( 'There is %1$d %2$s vulnerability', 'There are %1$d %2$s vulnerabilities', $vulnerability_counter, 'wpvulnerability' ), + $vulnerability_counter, + $software_list[ $software ] + ); + $result['badge']['color'] = 'red'; + $result['description'] = sprintf( + '

%1$s

%2$s', + // translators: software with vulnerabilities. + sprintf( __( 'We\'ve detected potential vulnerabilities in %s. Please check them and keep your installation updated.', 'wpvulnerability' ), $software_list[ $software ] ), + wpvulnerability_html_software( $software ) + ); + + // Add specific action links if necessary. + if ( 'php' === $software && function_exists( 'wp_get_update_php_url' ) && class_exists( 'WP_Site_Health' ) ) { + $result['actions'] .= sprintf( + '

%s

', + esc_url( wp_get_update_php_url() ), + __( 'How to update PHP', 'wpvulnerability' ) + ); + } + } + + return $result; +} + +/** + * Tests for vulnerabilities in MySQL. + * + * @since 3.5.0 + * + * @return array{label: string, status: string, badge: array{label: string, color: string}, description: string, actions: string, test: string} Array with the results of the vulnerability test. + */ +function wpvulnerability_test_mysql() { + return wpvulnerability_test_software( 'mysql' ); +} + +/** + * Tests for vulnerabilities in MariaDB. + * + * @since 3.5.0 + * + * @return array{label: string, status: string, badge: array{label: string, color: string}, description: string, actions: string, test: string} Array with the results of the vulnerability test. + */ +function wpvulnerability_test_mariadb() { + return wpvulnerability_test_software( 'mariadb' ); +} + +/** + * Tests for vulnerabilities in Apache. + * + * @since 3.5.0 + * + * @return array{label: string, status: string, badge: array{label: string, color: string}, description: string, actions: string, test: string} Array with the results of the vulnerability test. + */ +function wpvulnerability_test_apache() { + return wpvulnerability_test_software( 'apache' ); +} + +/** + * Tests for vulnerabilities in Nginx. + * + * @since 3.5.0 + * + * @return array{label: string, status: string, badge: array{label: string, color: string}, description: string, actions: string, test: string} Array with the results of the vulnerability test. + */ +function wpvulnerability_test_nginx() { + return wpvulnerability_test_software( 'nginx' ); +} + +/** + * Tests for vulnerabilities in PHP. + * + * @since 3.5.0 + * + * @return array{label: string, status: string, badge: array{label: string, color: string}, description: string, actions: string, test: string} Array with the results of the vulnerability test. + */ +function wpvulnerability_test_php() { + return wpvulnerability_test_software( 'php' ); +} + +/** + * Tests for vulnerabilities in ImageMagick. + * + * @since 3.5.0 + * + * @return array{label: string, status: string, badge: array{label: string, color: string}, description: string, actions: string, test: string} Array with the results of the vulnerability test. + */ +function wpvulnerability_test_imagemagick() { + return wpvulnerability_test_software( 'imagemagick' ); +} + +/** + * Tests for vulnerabilities in curl. + * + * @since 3.5.0 + * + * @return array{label: string, status: string, badge: array{label: string, color: string}, description: string, actions: string, test: string} Array with the results of the vulnerability test. + */ +function wpvulnerability_test_curl() { + return wpvulnerability_test_software( 'curl' ); +} + +/** + * Tests for vulnerabilities in memcached. + * + * @since 3.5.0 + * + * @return array{label: string, status: string, badge: array{label: string, color: string}, description: string, actions: string, test: string} Array with the results of the vulnerability test. + */ +function wpvulnerability_test_memcached() { + return wpvulnerability_test_software( 'memcached' ); +} + +/** + * Tests for vulnerabilities in Redis. + * + * @since 3.5.0 + * + * @return array{label: string, status: string, badge: array{label: string, color: string}, description: string, actions: string, test: string} Array with the results of the vulnerability test. + */ +function wpvulnerability_test_redis() { + return wpvulnerability_test_software( 'redis' ); +} + +/** + * Tests for vulnerabilities in SQLite. + * + * @since 3.5.0 + * + * @return array{label: string, status: string, badge: array{label: string, color: string}, description: string, actions: string, test: string} Array with the results of the vulnerability test. + */ +function wpvulnerability_test_sqlite() { + return wpvulnerability_test_software( 'sqlite' ); +} + +/** + * Adds vulnerability tests to the Health Check & Troubleshooting page. + * + * This function registers various vulnerability tests for different components of the site, such as + * WordPress core, themes, plugins, PHP, Apache, Nginx, MariaDB, and MySQL, to the Site Health status page. + * + * @since 2.0.0 + * + * @param array $tests Array of current site status tests. + * + * @return array The updated array of site status tests. + */ +function wpvulnerability_tests( $tests ) { + + // Ensure the 'direct' key is a typed array before assigning test entries. + if ( ! isset( $tests['direct'] ) || ! is_array( $tests['direct'] ) ) { + $tests['direct'] = array(); + } + + if ( wpvulnerability_analyze_filter( 'core' ) ) { + // Add test for Core WordPress vulnerabilities. + $tests['direct']['wpvulnerability_core'] = array( + 'label' => __( 'WPVulnerability Core', 'wpvulnerability' ), + 'test' => 'wpvulnerability_test_core', + ); + } + + if ( wpvulnerability_analyze_filter( 'themes' ) ) { + // Add test for Theme vulnerabilities. + $tests['direct']['wpvulnerability_themes'] = array( + 'label' => __( 'WPVulnerability Themes', 'wpvulnerability' ), + 'test' => 'wpvulnerability_test_themes', + ); + } + + if ( wpvulnerability_analyze_filter( 'plugins' ) ) { + // Add test for Plugin vulnerabilities. + $tests['direct']['wpvulnerability_plugins'] = array( + 'label' => __( 'WPVulnerability Plugins', 'wpvulnerability' ), + 'test' => 'wpvulnerability_test_plugins', + ); + } + + if ( wpvulnerability_analyze_filter( 'php' ) ) { + // Add test for PHP vulnerabilities. + $tests['direct']['wpvulnerability_php'] = array( + 'label' => __( 'WPVulnerability PHP', 'wpvulnerability' ), + 'test' => 'wpvulnerability_test_php', + ); + } + + if ( wpvulnerability_analyze_filter( 'apache' ) ) { + // Add test for Apache vulnerabilities. + $tests['direct']['wpvulnerability_apache'] = array( + 'label' => __( 'WPVulnerability Apache HTTPD', 'wpvulnerability' ), + 'test' => 'wpvulnerability_test_apache', + ); + } + + if ( wpvulnerability_analyze_filter( 'nginx' ) ) { + // Add test for Nginx vulnerabilities. + $tests['direct']['wpvulnerability_nginx'] = array( + 'label' => __( 'WPVulnerability Nginx', 'wpvulnerability' ), + 'test' => 'wpvulnerability_test_nginx', + ); + } + + if ( wpvulnerability_analyze_filter( 'mariadb' ) ) { + // Add test for MariaDB vulnerabilities. + $tests['direct']['wpvulnerability_mariadb'] = array( + 'label' => __( 'WPVulnerability MariaDB', 'wpvulnerability' ), + 'test' => 'wpvulnerability_test_mariadb', + ); + } + + if ( wpvulnerability_analyze_filter( 'mysql' ) ) { + // Add test for MySQL vulnerabilities. + $tests['direct']['wpvulnerability_mysql'] = array( + 'label' => __( 'WPVulnerability MySQL', 'wpvulnerability' ), + 'test' => 'wpvulnerability_test_mysql', + ); + } + + if ( wpvulnerability_analyze_filter( 'imagemagick' ) ) { + // Add test for ImageMagick vulnerabilities. + $tests['direct']['wpvulnerability_imagemagick'] = array( + 'label' => __( 'WPVulnerability ImageMagick', 'wpvulnerability' ), + 'test' => 'wpvulnerability_test_imagemagick', + ); + } + + if ( wpvulnerability_analyze_filter( 'curl' ) ) { + // Add test for curl vulnerabilities. + $tests['direct']['wpvulnerability_curl'] = array( + 'label' => __( 'WPVulnerability curl', 'wpvulnerability' ), + 'test' => 'wpvulnerability_test_curl', + ); + } + + if ( wpvulnerability_analyze_filter( 'memcached' ) ) { + // Add test for memcached vulnerabilities. + $tests['direct']['wpvulnerability_memcached'] = array( + 'label' => __( 'WPVulnerability memcached', 'wpvulnerability' ), + 'test' => 'wpvulnerability_test_memcached', + ); + } + + if ( wpvulnerability_analyze_filter( 'redis' ) ) { + // Add test for Redis vulnerabilities. + $tests['direct']['wpvulnerability_redis'] = array( + 'label' => __( 'WPVulnerability redis', 'wpvulnerability' ), + 'test' => 'wpvulnerability_test_redis', + ); + } + + if ( wpvulnerability_analyze_filter( 'sqlite' ) ) { + // Add test for SQLite vulnerabilities. + $tests['direct']['wpvulnerability_sqlite'] = array( + 'label' => __( 'WPVulnerability sqlite', 'wpvulnerability' ), + 'test' => 'wpvulnerability_test_sqlite', + ); + } + + return $tests; +} + +// Adds the vulnerability tests to the site status tests. +add_filter( 'site_status_tests', 'wpvulnerability_tests' ); diff --git a/wpvulnerability-software.php b/wpvulnerability-software.php new file mode 100644 index 0000000..269ac55 --- /dev/null +++ b/wpvulnerability-software.php @@ -0,0 +1,269 @@ + The updated data array containing vulnerability information. + */ +function wpvulnerability_get_fresh_vulnerabilities( $software ) { + + $version = null; + $data = array( + 'vulnerabilities' => null, + 'vulnerable' => 0, + 'lifecycle' => array(), + ); + + switch ( $software ) { + case 'php': + case 'apache': + case 'nginx': + case 'mysql': + case 'mariadb': + case 'imagemagick': + case 'curl': + case 'memcached': + case 'redis': + case 'sqlite': + $version = wpvulnerability_get_software_version( $software ); + break; + + default: + return $data; + } + + if ( $version ) { + $transient_key = 'wpvulnerability_' . $software; + + // Delete the transient so the next call fetches fresh data and repopulates it. + if ( is_multisite() ) { + delete_site_transient( $transient_key ); + } else { + delete_transient( $transient_key ); + } + + switch ( $software ) { + case 'php': + case 'apache': + case 'nginx': + case 'mysql': + case 'mariadb': + case 'imagemagick': + case 'curl': + case 'memcached': + case 'redis': + case 'sqlite': + // cache=1: transient was just cleared, so a fresh API call is made and result cached. + $api_response = wpvulnerability_get_vulnerabilities( $software, $version, 1 ); + break; + } + + if ( ! empty( $api_response ) ) { + $data['vulnerabilities'] = $api_response; + $data['vulnerable'] = 1; + } + + // Read back the transient to extract lifecycle fields from the full API response. + $raw_body = is_multisite() ? get_site_transient( $transient_key ) : get_transient( $transient_key ); + $raw_response = json_decode( is_string( $raw_body ) ? $raw_body : '', true ); + if ( is_array( $raw_response ) && isset( $raw_response['data'] ) && is_array( $raw_response['data'] ) ) { + $resp_data = $raw_response['data']; + $data['lifecycle'] = array( + 'name' => is_scalar( $resp_data['name'] ?? '' ) ? (string) ( $resp_data['name'] ?? '' ) : '', + 'status' => is_scalar( $resp_data['status'] ?? '' ) ? (string) ( $resp_data['status'] ?? '' ) : '', + 'date_start' => is_scalar( $resp_data['date_start'] ?? '' ) ? (string) ( $resp_data['date_start'] ?? '' ) : '', + 'date_end' => is_scalar( $resp_data['date_end'] ?? '' ) ? (string) ( $resp_data['date_end'] ?? '' ) : '', + ); + } + } + + return $data; +} + + +/** + * Get Installed Software + * + * Retrieves the list of installed software versions, checks for vulnerabilities, + * caches the data, and sends an email notification if vulnerabilities are detected. + * + * @since 3.5.0 + * + * @param string $software The software name (e.g., 'php', 'apache'). + * + * @return string JSON-encoded array of software data with vulnerabilities and vulnerable status. + */ +function wpvulnerability_get_installed( $software ) { + + $wpvulnerability_software_vulnerable = 0; + + // Retrieve fresh vulnerabilities for the installed software version. + $data = wpvulnerability_get_fresh_vulnerabilities( $software ); + + // Check if the software version is vulnerable and count the vulnerabilities. + if ( isset( $data['vulnerable'] ) && is_numeric( $data['vulnerable'] ) && (int) $data['vulnerable'] ) { + $vulns = isset( $data['vulnerabilities'] ) && is_array( $data['vulnerabilities'] ) ? $data['vulnerabilities'] : array(); + $wpvulnerability_software_vulnerable = count( $vulns ); + } + + // Cache the vulnerability data and the timestamp for cache expiration. + if ( is_multisite() ) { + update_site_option( 'wpvulnerability-' . $software, wp_json_encode( $data ) ); + update_site_option( 'wpvulnerability-' . $software . '-vulnerable', wp_json_encode( number_format( $wpvulnerability_software_vulnerable, 0, '.', '' ) ) ); + update_site_option( 'wpvulnerability-' . $software . '-cache', wp_json_encode( number_format( time() + ( 3600 * wpvulnerability_cache_hours() ), 0, '.', '' ) ) ); + } else { + update_option( 'wpvulnerability-' . $software, wp_json_encode( $data ), false ); + update_option( 'wpvulnerability-' . $software . '-vulnerable', wp_json_encode( number_format( $wpvulnerability_software_vulnerable, 0, '.', '' ) ), false ); + update_option( 'wpvulnerability-' . $software . '-cache', wp_json_encode( number_format( time() + ( 3600 * wpvulnerability_cache_hours() ), 0, '.', '' ) ), false ); + } + + // Return the JSON-encoded array of software data. + $encoded = wp_json_encode( $data ); + return false !== $encoded ? $encoded : ''; +} + +/** + * Get cached software vulnerabilities without triggering remote calls. + * + * @since 3.5.0 + * + * @param string $software The software name (e.g., 'php', 'apache'). + * + * @return array|null Array of software data with vulnerabilities, or null if software is invalid. + */ +function wpvulnerability_software_get_vulnerabilities( $software ) { + + $valid_software = array( 'php', 'apache', 'mariadb', 'mysql', 'nginx', 'imagemagick', 'curl', 'memcached', 'redis', 'sqlite' ); + + // Use strict comparison for in_array. + if ( in_array( $software, $valid_software, true ) ) { + if ( is_multisite() ) { + $raw = get_site_option( 'wpvulnerability-' . $software ); + $data = json_decode( is_string( $raw ) ? $raw : '', true ); + } else { + $raw = get_option( 'wpvulnerability-' . $software ); + $data = json_decode( is_string( $raw ) ? $raw : '', true ); + } + + return is_array( $data ) ? $data : array(); + } else { + return null; + } +} + +/** + * Update the software cache and remove any old cache data. + * + * @since 3.0.0 + * + * @param string $software The software name (e.g., 'php', 'apache'). + * + * @return void + */ +function wpvulnerability_get_vulnerabilities_clean( $software ) { + + // Update the installed software cache. + wpvulnerability_get_installed( $software ); +} diff --git a/wpvulnerability-themes.php b/wpvulnerability-themes.php new file mode 100644 index 0000000..4e443be --- /dev/null +++ b/wpvulnerability-themes.php @@ -0,0 +1,727 @@ +> $themes List of themes returned by wp_get_themes(). + * @return string Hash representing the installed themes and their versions. + */ +function wpvulnerability_themes_generate_signature( $themes ) { + $normalized = array(); + + foreach ( $themes as $slug => $theme_data ) { + $theme_slug = sanitize_text_field( (string) $slug ); + $version = ''; + + if ( $theme_data instanceof WP_Theme ) { + $version = sanitize_text_field( (string) $theme_data->get( 'Version' ) ); + } elseif ( isset( $theme_data['Version'] ) ) { + $version = sanitize_text_field( is_scalar( $theme_data['Version'] ) ? (string) $theme_data['Version'] : '' ); + } + + $normalized[ $theme_slug ] = $version; + } + + ksort( $normalized ); + + $encoded = wp_json_encode( $normalized ); + return md5( false !== $encoded ? $encoded : '' ); +} + +/** + * Retrieve the signature of the currently installed themes. + * + * @since 4.1.2 + * + * @return string Hash representing the installed themes and their versions. + */ +function wpvulnerability_themes_get_current_signature() { + return wpvulnerability_themes_generate_signature( wp_get_themes() ); +} + +/** + * Adds a vulnerability notice under vulnerable themes. + * + * @since 2.0.0 + * + * @param string $theme_file Main themes folder/file name. + * @param WP_Theme $theme_data Theme data object. + * + * @return void + */ +function wpvulnerability_theme_info_after( $theme_file, $theme_data ) { + + // Retrieve the vulnerabilities for all themes from the options table and decode the JSON. + $raw_themes = is_multisite() ? get_site_option( 'wpvulnerability-themes', '' ) : get_option( 'wpvulnerability-themes', '' ); + $theme_vulnerabilities = json_decode( is_string( $raw_themes ) ? $raw_themes : '', true ); + if ( ! is_array( $theme_vulnerabilities ) ) { + $theme_vulnerabilities = array(); + } + + // Determine whether the theme is active and add an appropriate CSS class to the table row. + $current_theme = wp_get_theme(); + $tr_class = ''; + if ( $theme_file === $current_theme->get_stylesheet() ) { + $tr_class .= 'active'; + } + + // Generate the vulnerability notice message with the theme name. + $message = sprintf( + /* translators: 1: theme name */ + __( '%1$s has a known vulnerability that may be affecting your installed version.', 'wpvulnerability' ), + wp_kses( (string) $theme_data->get( 'Name' ), 'strip' ) + ); + + // Begin generating the table row HTML markup with appropriate CSS classes and the vulnerability notice message. + $information = ''; + $information .= ''; + $information .= '

' . esc_html( $message ) . '

'; + $information .= ''; + + // Loop through all vulnerabilities for the current theme and add their details to the table row HTML markup. + $tf_entry = isset( $theme_vulnerabilities[ $theme_file ] ) && is_array( $theme_vulnerabilities[ $theme_file ] ) ? $theme_vulnerabilities[ $theme_file ] : array(); + $tf_wpv = isset( $tf_entry['wpvulnerability'] ) && is_array( $tf_entry['wpvulnerability'] ) ? $tf_entry['wpvulnerability'] : array(); + $vulnerabilities = isset( $tf_wpv['vulnerabilities'] ) && is_array( $tf_wpv['vulnerabilities'] ) ? $tf_wpv['vulnerabilities'] : array(); + + foreach ( $vulnerabilities as $vulnerability ) { + if ( ! is_array( $vulnerability ) ) { + continue; + } + + $vuln_versions_raw = $vulnerability['versions'] ?? ''; + $vuln_versions = is_scalar( $vuln_versions_raw ) ? (string) $vuln_versions_raw : ''; + $vuln_closed_raw = $vulnerability['closed'] ?? 0; + $vuln_closed = is_scalar( $vuln_closed_raw ) ? intval( $vuln_closed_raw ) : 0; + $vuln_unfixed_raw = $vulnerability['unfixed'] ?? 0; + $vuln_unfixed = is_scalar( $vuln_unfixed_raw ) ? intval( $vuln_unfixed_raw ) : 0; + $vuln_impact = isset( $vulnerability['impact'] ) && is_array( $vulnerability['impact'] ) ? $vulnerability['impact'] : array(); + $vuln_cvss = isset( $vuln_impact['cvss'] ) && is_array( $vuln_impact['cvss'] ) ? $vuln_impact['cvss'] : array(); + $vuln_cvss2 = isset( $vuln_impact['cvss2'] ) && is_array( $vuln_impact['cvss2'] ) ? $vuln_impact['cvss2'] : array(); + $vuln_cvss3 = isset( $vuln_impact['cvss3'] ) && is_array( $vuln_impact['cvss3'] ) ? $vuln_impact['cvss3'] : array(); + $vuln_cvss4 = isset( $vuln_impact['cvss4'] ) && is_array( $vuln_impact['cvss4'] ) ? $vuln_impact['cvss4'] : array(); + $vuln_ssvc = isset( $vuln_impact['ssvc'] ) && is_array( $vuln_impact['ssvc'] ) ? $vuln_impact['ssvc'] : array(); + $vuln_cwe = isset( $vuln_impact['cwe'] ) && is_array( $vuln_impact['cwe'] ) ? $vuln_impact['cwe'] : array(); + $vuln_sources = isset( $vulnerability['source'] ) && is_array( $vulnerability['source'] ) ? $vulnerability['source'] : array(); + + $kev = ( isset( $vuln_ssvc['kev'] ) && true === $vuln_ssvc['kev'] ); + $exploitation = isset( $vuln_ssvc['exploitation'] ) && is_string( $vuln_ssvc['exploitation'] ) ? $vuln_ssvc['exploitation'] : ''; + $automatable = isset( $vuln_ssvc['automatable'] ) && is_string( $vuln_ssvc['automatable'] ) ? $vuln_ssvc['automatable'] : ''; + $kev_date_raw = $vuln_ssvc['kev_date'] ?? null; + $kev_date = is_string( $kev_date_raw ) && '' !== $kev_date_raw ? $kev_date_raw : null; + $epss_raw = $vuln_impact['epss'] ?? null; + $epss = is_numeric( $epss_raw ) ? (float) $epss_raw : null; + $description = wpvulnerability_get_source_description( $vuln_sources ); + + // Best available CVSS score and severity: cvss4 > cvss3 > cvss2 > legacy cvss. + $score_raw = null; + $sev_raw = null; + foreach ( array( $vuln_cvss4, $vuln_cvss3, $vuln_cvss2, $vuln_cvss ) as $cvss_c ) { + if ( empty( $cvss_c ) ) { + continue; + } + $s_raw = $cvss_c['score'] ?? null; + $v_raw = $cvss_c['severity'] ?? null; + $s = is_numeric( $s_raw ) ? number_format( (float) $s_raw, 1, '.', '' ) : null; + $v = is_string( $v_raw ) && '' !== $v_raw ? $v_raw : null; + if ( null !== $s || null !== $v ) { + $score_raw = $s; + $sev_raw = $v; + break; + } + } + + $what = array(); + foreach ( $vuln_cwe as $vulnerability_cwe ) { + if ( ! is_array( $vulnerability_cwe ) ) { + continue; + } + $cwe_name = $vulnerability_cwe['name'] ?? ''; + $cwe_desc = $vulnerability_cwe['description'] ?? ''; + $what[] = '
' . wp_kses( is_scalar( $cwe_name ) ? (string) $cwe_name : '', 'strip' ) . '
' . esc_html( is_scalar( $cwe_desc ) ? (string) $cwe_desc : '' ) . '
'; + } + + $version_display = wpvulnerability_clean_version_range( $vuln_versions ); + $source_pills = wpvulnerability_render_source_pills( $vuln_sources ); + $score_badge = wpvulnerability_render_score_badge( $score_raw, $sev_raw, $epss ); + + $information .= ''; + // Version range column. + $information .= ''; + // Details column. + $information .= ''; + $information .= ''; + } + + $information .= '
'; + $information .= '' !== $version_display + ? '' . $version_display . '' + : '—'; + $information .= ''; + $show_active = $kev || 'active' === $exploitation; + $show_poc = 'poc' === $exploitation; + $show_auto = 'yes' === $automatable; + if ( $show_active || $show_poc || $show_auto || '' !== $score_badge ) { + $information .= '
'; + if ( $show_active ) { + $information .= '⚠ ' . esc_html__( 'Actively exploited', 'wpvulnerability' ); + if ( $kev && null !== $kev_date ) { + $information .= ' · ' . esc_html( $kev_date ); + } + $information .= ''; + } + if ( $show_poc ) { + $information .= '⚡ ' . esc_html__( 'Public exploit', 'wpvulnerability' ) . ''; + } + if ( $show_auto ) { + $information .= '⚙ ' . esc_html__( 'Automatable', 'wpvulnerability' ) . ''; + } + if ( '' !== $score_badge ) { + $information .= $score_badge; + } + $information .= '
'; + } + if ( null !== $description ) { + $information .= '
' . esc_html( $description ) . '
'; + } + if ( $vuln_closed || $vuln_unfixed ) { + $information .= '
'; + if ( $vuln_closed ) { + $information .= '
' . esc_html__( 'This theme is closed. Please replace it with another.', 'wpvulnerability' ) . '
'; + } + if ( $vuln_unfixed ) { + $information .= '
' . esc_html__( 'This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates.', 'wpvulnerability' ) . '
'; + } + $information .= '
'; + } + if ( ! empty( $what ) ) { + $information .= '
'; + foreach ( $what as $w ) { + $information .= $w; + } + $information .= '
'; + } + if ( '' !== $source_pills ) { + $information .= '
' . esc_html__( 'References:', 'wpvulnerability' ) . ''; + $information .= $source_pills; + $information .= '
'; + } + $information .= '
'; + $information .= ''; + $information .= ''; + + echo $information; // phpcs:ignore +} + +/** + * Retrieves vulnerabilities for a given theme and updates its data. + * + * @since 2.0.0 + * + * @param array $theme_data The theme data array (must contain a 'data' key with a WP_Theme object). + * @param string $theme_slug The slug to the theme. + * + * @return array The updated theme data array. + */ +function wpvulnerability_get_fresh_theme_vulnerabilities( $theme_data, $theme_slug ) { + + // Get the theme version and slug from the theme data. + $theme_obj = isset( $theme_data['data'] ) && ( $theme_data['data'] instanceof WP_Theme ) ? $theme_data['data'] : null; + $theme_version = null !== $theme_obj ? wp_kses( (string) $theme_obj->get( 'Version' ), 'strip' ) : ''; + + $theme_data_v = array(); + $theme_data_v['slug'] = $theme_slug; + $theme_data_v['name'] = null !== $theme_obj ? (string) $theme_obj->get( 'Name' ) : ''; + + // Initialize vulnerability related fields. + $theme_data_v['vulnerabilities'] = null; + $theme_data_v['vulnerable'] = 0; + + // Retrieve vulnerabilities for the theme using its slug and version. + if ( ! empty( $theme_slug ) ) { + + $theme_api_response = wpvulnerability_get_theme( $theme_slug, $theme_version, 0 ); + + // If vulnerabilities are found, update the theme data accordingly. + if ( ! empty( $theme_api_response ) ) { + + $theme_data_v['vulnerabilities'] = $theme_api_response; + $theme_data_v['vulnerable'] = 1; + + } + } + + return $theme_data_v; +} + +/** + * Get Installed Themes + * Retrieves the list of installed themes, checks for vulnerabilities in each of them, caches the data, and sends an email notification if vulnerabilities are detected. + * + * @since 2.0.0 + * @since 4.1.2 Stores a signature of the installed themes to detect inventory changes. + * + * @return string JSON-encoded array of theme data with vulnerabilities and vulnerable status, or '[]' on encoding error. + */ +function wpvulnerability_theme_get_installed() { + + $wpvulnerability_themes_vulnerable = 0; + $themes_v = array(); + $themes = wp_get_themes(); + $signature = wpvulnerability_themes_generate_signature( $themes ); + + foreach ( $themes as $slug => $theme_data ) { + + // Store the theme data. + $themes_v[ $slug ]['data'] = $theme_data; + + // Get fresh vulnerabilities for the theme. + $themes_v[ $slug ]['wpvulnerability'] = wpvulnerability_get_fresh_theme_vulnerabilities( $themes_v[ $slug ], $slug ); + + // If the theme is vulnerable, increment the vulnerable themes counter. + if ( isset( $themes_v[ $slug ]['wpvulnerability']['vulnerable'] ) && 1 === ( is_scalar( $themes_v[ $slug ]['wpvulnerability']['vulnerable'] ) ? (int) $themes_v[ $slug ]['wpvulnerability']['vulnerable'] : 0 ) ) { + ++$wpvulnerability_themes_vulnerable; + } + } + + // Update options for multisite installations. + if ( is_multisite() ) { + update_site_option( 'wpvulnerability-themes', wp_json_encode( $themes_v ) ); + update_site_option( 'wpvulnerability-themes-vulnerable', wp_json_encode( number_format( $wpvulnerability_themes_vulnerable, 0, '.', '' ) ) ); + update_site_option( 'wpvulnerability-themes-cache', wp_json_encode( number_format( time() + ( 3600 * wpvulnerability_cache_hours() ), 0, '.', '' ) ) ); + update_site_option( 'wpvulnerability-themes-signature', wp_json_encode( $signature ) ); + } else { + update_option( 'wpvulnerability-themes', wp_json_encode( $themes_v ), false ); + update_option( 'wpvulnerability-themes-vulnerable', wp_json_encode( number_format( $wpvulnerability_themes_vulnerable, 0, '.', '' ) ), false ); + update_option( 'wpvulnerability-themes-cache', wp_json_encode( number_format( time() + ( 3600 * wpvulnerability_cache_hours() ), 0, '.', '' ) ), false ); + update_option( 'wpvulnerability-themes-signature', wp_json_encode( $signature ), false ); + } + + $encoded = wp_json_encode( $themes_v ); + return false !== $encoded ? $encoded : '[]'; +} + +/** + * Get cached themes vulnerabilities without contacting the API. Data updates via scheduled or manual refreshes. + * + * @since 2.0.0 + * @since 4.1.2 Refreshes when the installed themes signature changes. + * + * @return array Array of installed themes with their vulnerabilities. + */ +function wpvulnerability_theme_get_vulnerabilities() { + + $raw = is_multisite() ? get_site_option( 'wpvulnerability-themes', '' ) : get_option( 'wpvulnerability-themes', '' ); + $theme_data = json_decode( is_string( $raw ) ? $raw : '', true ); + + return is_array( $theme_data ) ? $theme_data : array(); +} + +/** + * Update the installed themes cache and remove any old cache data. + * + * @since 2.0.0 + * + * @return void + */ +function wpvulnerability_theme_get_vulnerabilities_clean() { + wpvulnerability_clear_cache( 'themes' ); + wpvulnerability_theme_get_installed(); +} + +/** + * Admin Head + * Adds vulnerability information after the theme row and notices on the theme page based on the installed theme cache. + * + * @since 2.0.0 + * + * @return void + */ +function wpvulnerability_theme_page() { + + // Check if the current page is the themes page. + global $pagenow; + if ( wpvulnerability_analyze_filter( 'themes' ) && 'themes.php' === $pagenow && wpvulnerability_capabilities() ) { + + // Get the vulnerabilities for the installed themes. + $themes = wpvulnerability_theme_get_vulnerabilities(); + + // Loop through the themes and add vulnerability information after the theme row for vulnerable themes. + foreach ( $themes as $theme_file => $theme_data ) { + if ( ! is_array( $theme_data ) ) { + continue; + } + $td_wpv = isset( $theme_data['wpvulnerability'] ) && is_array( $theme_data['wpvulnerability'] ) ? $theme_data['wpvulnerability'] : array(); + if ( isset( $td_wpv['vulnerable'] ) && 1 === ( is_scalar( $td_wpv['vulnerable'] ) ? (int) $td_wpv['vulnerable'] : 0 ) ) { + add_action( 'after_theme_row_' . esc_attr( $theme_file ), 'wpvulnerability_theme_info_after', 10, 2 ); + } + } + } +} +// Add notices for vulnerable themes on the theme page. +add_action( 'admin_head', 'wpvulnerability_theme_page' ); + +/** + * Build the vulnerability HTML block for the single-site theme details modal. + * + * Generates a standalone table (no wrapping ) with one row per vulnerability, + * using the same column layout and badges as the theme-row renderer. + * + * @since 5.0.0 + * + * @param array $vulnerabilities Array of vulnerability objects from the cache. + * @return string HTML string ready to be injected into the modal, or empty string if none. + */ +function wpvulnerability_theme_modal_html( $vulnerabilities ) { + if ( empty( $vulnerabilities ) ) { + return ''; + } + + $icon = ''; + $html = '

' . $icon . ' ' . esc_html__( 'This theme has known vulnerabilities that may be affecting your installed version.', 'wpvulnerability' ) . '

'; + $html .= ''; + + foreach ( $vulnerabilities as $vulnerability ) { + if ( ! is_array( $vulnerability ) ) { + continue; + } + + $vuln_versions_raw = $vulnerability['versions'] ?? ''; + $vuln_versions = is_scalar( $vuln_versions_raw ) ? (string) $vuln_versions_raw : ''; + $vuln_closed_raw = $vulnerability['closed'] ?? 0; + $vuln_closed = is_scalar( $vuln_closed_raw ) ? intval( $vuln_closed_raw ) : 0; + $vuln_unfixed_raw = $vulnerability['unfixed'] ?? 0; + $vuln_unfixed = is_scalar( $vuln_unfixed_raw ) ? intval( $vuln_unfixed_raw ) : 0; + $vuln_impact = isset( $vulnerability['impact'] ) && is_array( $vulnerability['impact'] ) ? $vulnerability['impact'] : array(); + $vuln_cvss = isset( $vuln_impact['cvss'] ) && is_array( $vuln_impact['cvss'] ) ? $vuln_impact['cvss'] : array(); + $vuln_cvss2 = isset( $vuln_impact['cvss2'] ) && is_array( $vuln_impact['cvss2'] ) ? $vuln_impact['cvss2'] : array(); + $vuln_cvss3 = isset( $vuln_impact['cvss3'] ) && is_array( $vuln_impact['cvss3'] ) ? $vuln_impact['cvss3'] : array(); + $vuln_cvss4 = isset( $vuln_impact['cvss4'] ) && is_array( $vuln_impact['cvss4'] ) ? $vuln_impact['cvss4'] : array(); + $vuln_ssvc = isset( $vuln_impact['ssvc'] ) && is_array( $vuln_impact['ssvc'] ) ? $vuln_impact['ssvc'] : array(); + $vuln_cwe = isset( $vuln_impact['cwe'] ) && is_array( $vuln_impact['cwe'] ) ? $vuln_impact['cwe'] : array(); + $vuln_sources = isset( $vulnerability['source'] ) && is_array( $vulnerability['source'] ) ? $vulnerability['source'] : array(); + + $kev = ( isset( $vuln_ssvc['kev'] ) && true === $vuln_ssvc['kev'] ); + $exploitation = isset( $vuln_ssvc['exploitation'] ) && is_string( $vuln_ssvc['exploitation'] ) ? $vuln_ssvc['exploitation'] : ''; + $automatable = isset( $vuln_ssvc['automatable'] ) && is_string( $vuln_ssvc['automatable'] ) ? $vuln_ssvc['automatable'] : ''; + $kev_date_raw = $vuln_ssvc['kev_date'] ?? null; + $kev_date = is_string( $kev_date_raw ) && '' !== $kev_date_raw ? $kev_date_raw : null; + $epss_raw = $vuln_impact['epss'] ?? null; + $epss = is_numeric( $epss_raw ) ? (float) $epss_raw : null; + $description = wpvulnerability_get_source_description( $vuln_sources ); + + // Best available CVSS score and severity: cvss4 > cvss3 > cvss2 > legacy cvss. + $score_raw = null; + $sev_raw = null; + foreach ( array( $vuln_cvss4, $vuln_cvss3, $vuln_cvss2, $vuln_cvss ) as $cvss_c ) { + if ( empty( $cvss_c ) ) { + continue; + } + $s_raw = $cvss_c['score'] ?? null; + $v_raw = $cvss_c['severity'] ?? null; + $s = is_numeric( $s_raw ) ? number_format( (float) $s_raw, 1, '.', '' ) : null; + $v = is_string( $v_raw ) && '' !== $v_raw ? $v_raw : null; + if ( null !== $s || null !== $v ) { + $score_raw = $s; + $sev_raw = $v; + break; + } + } + + $what = array(); + foreach ( $vuln_cwe as $vulnerability_cwe ) { + if ( ! is_array( $vulnerability_cwe ) ) { + continue; + } + $cwe_name = $vulnerability_cwe['name'] ?? ''; + $cwe_desc = $vulnerability_cwe['description'] ?? ''; + $what[] = '
' . wp_kses( is_scalar( $cwe_name ) ? (string) $cwe_name : '', 'strip' ) . '
' . esc_html( is_scalar( $cwe_desc ) ? (string) $cwe_desc : '' ) . '
'; + } + + $version_display = wpvulnerability_clean_version_range( $vuln_versions ); + $source_pills = wpvulnerability_render_source_pills( $vuln_sources ); + $score_badge = wpvulnerability_render_score_badge( $score_raw, $sev_raw, $epss ); + $show_active = $kev || 'active' === $exploitation; + $show_poc = 'poc' === $exploitation; + $show_auto = 'yes' === $automatable; + + $html .= ''; + $html .= ''; + $html .= ''; + $html .= ''; + } + + $html .= '
'; + $html .= '' !== $version_display + ? '' . $version_display . '' + : '—'; + $html .= ''; + + if ( $show_active || $show_poc || $show_auto || '' !== $score_badge ) { + $html .= '
'; + if ( $show_active ) { + $html .= '⚠ ' . esc_html__( 'Actively exploited', 'wpvulnerability' ); + if ( $kev && null !== $kev_date ) { + $html .= ' · ' . esc_html( $kev_date ); + } + $html .= ''; + } + if ( $show_poc ) { + $html .= '⚡ ' . esc_html__( 'Public exploit', 'wpvulnerability' ) . ''; + } + if ( $show_auto ) { + $html .= '⚙ ' . esc_html__( 'Automatable', 'wpvulnerability' ) . ''; + } + if ( '' !== $score_badge ) { + $html .= $score_badge; + } + $html .= '
'; + } + if ( null !== $description ) { + $html .= '
' . esc_html( $description ) . '
'; + } + if ( $vuln_closed || $vuln_unfixed ) { + $html .= '
'; + if ( $vuln_closed ) { + $html .= '
' . esc_html__( 'This theme is closed. Please replace it with another.', 'wpvulnerability' ) . '
'; + } + if ( $vuln_unfixed ) { + $html .= '
' . esc_html__( 'This vulnerability appears to be unpatched. Stay tuned for upcoming theme updates.', 'wpvulnerability' ) . '
'; + } + $html .= '
'; + } + if ( ! empty( $what ) ) { + $html .= '
' . implode( '', $what ) . '
'; + } + if ( '' !== $source_pills ) { + $html .= '
' . esc_html__( 'References:', 'wpvulnerability' ) . ''; + $html .= $source_pills; + $html .= '
'; + } + + $html .= '
'; + return $html; +} + +/** + * Inject pre-rendered vulnerability HTML into the theme data passed to the JS modal. + * + * Hooks into wp_prepare_themes_for_js to add a wpvulnerability_html key for each + * vulnerable theme. The JS template patch in wpvulnerability_theme_modal_template_patch() + * then surfaces this data inside the modal. + * + * @since 5.0.0 + * + * @param array $prepared_themes Themes data prepared for JS. + * @return array Modified themes data. + */ +function wpvulnerability_filter_prepare_themes_for_js( $prepared_themes ) { + if ( ! wpvulnerability_analyze_filter( 'themes' ) || ! wpvulnerability_capabilities() ) { + return $prepared_themes; + } + + $theme_vulns = wpvulnerability_theme_get_vulnerabilities(); + + foreach ( $prepared_themes as $slug => $theme ) { + if ( ! isset( $theme_vulns[ $slug ] ) || ! is_array( $theme_vulns[ $slug ] ) ) { + continue; + } + $entry = $theme_vulns[ $slug ]; + $td_wpv = isset( $entry['wpvulnerability'] ) && is_array( $entry['wpvulnerability'] ) ? $entry['wpvulnerability'] : array(); + if ( ! isset( $td_wpv['vulnerable'] ) || 1 !== ( is_scalar( $td_wpv['vulnerable'] ) ? (int) $td_wpv['vulnerable'] : 0 ) ) { + continue; + } + $vulnerabilities = isset( $td_wpv['vulnerabilities'] ) && is_array( $td_wpv['vulnerabilities'] ) ? $td_wpv['vulnerabilities'] : array(); + if ( empty( $vulnerabilities ) ) { + continue; + } + if ( is_array( $prepared_themes[ $slug ] ) ) { + $prepared_themes[ $slug ]['wpvulnerability_html'] = wpvulnerability_theme_modal_html( $vulnerabilities ); + } + } + + return $prepared_themes; +} +add_filter( 'wp_prepare_themes_for_js', 'wpvulnerability_filter_prepare_themes_for_js' ); + +/** + * Patch the #tmpl-theme-single Underscore template to display vulnerability data. + * + * Injects a conditional block after the tags section so that when a theme's JS data + * contains wpvulnerability_html, that HTML is rendered inside the details modal. + * Only runs on the single-site themes.php page. + * + * @since 5.0.0 + * + * @return void + */ +function wpvulnerability_theme_modal_template_patch() { + global $pagenow; + if ( 'themes.php' !== $pagenow || is_multisite() || ! wpvulnerability_capabilities() || ! wpvulnerability_analyze_filter( 'themes' ) ) { + return; + } + ?> + + items as $theme_file => $theme_data ) { + $tf_entry = isset( $theme_vulnerabilities[ $theme_file ] ) && is_array( $theme_vulnerabilities[ $theme_file ] ) ? $theme_vulnerabilities[ $theme_file ] : array(); + $tf_wpv = isset( $tf_entry['wpvulnerability'] ) && is_array( $tf_entry['wpvulnerability'] ) ? $tf_entry['wpvulnerability'] : array(); + if ( empty( $tf_wpv['vulnerable'] ) || 0 === ( is_scalar( $tf_wpv['vulnerable'] ) ? (int) $tf_wpv['vulnerable'] : 0 ) ) { + unset( $wp_list_table->items[ $theme_file ] ); + } + } + } +} + +/** + * Initializes the vulnerability filtering for the themes list in the network admin area of a multisite installation. + * + * This function checks if the current environment is a multisite network and whether the user is in the network + * admin area. If both conditions are met, it hooks into the 'admin_head-themes.php' action to apply a filter that + * shows only vulnerable themes in the themes list. + * + * @since 3.3.5 + * + * @return void + */ +function wpvulnerability_themes_filter_init() { + if ( is_multisite() && is_network_admin() ) { + add_action( 'admin_head-themes.php', 'wpvulnerability_themes_filter' ); + } +} +add_action( 'network_admin_menu', 'wpvulnerability_themes_filter_init' ); + +/** + * Adds a "Vulnerable" tab to the WordPress themes page that displays the count of vulnerable themes. + * + * This function checks the cache for the number of vulnerable themes and adds a new tab to the themes + * management page in the WordPress admin area. The tab displays the count of vulnerable themes and highlights it + * if it is currently active. The tab is added only in the network admin area of a multisite installation. + * + * @since 3.3.5 + * + * @param array $views An array of existing theme views (tabs) in the WordPress admin themes page. + * + * @return array The modified array of views including the "Vulnerable" tab. + */ +function wpvulnerability_themes_view( $views ) { + if ( ! wpvulnerability_analyze_filter( 'themes' ) ) { + return $views; + } + + $raw_count = is_multisite() ? get_site_option( 'wpvulnerability-themes-vulnerable', '0' ) : '0'; + $wpvulnerability_themes_total = ( is_scalar( json_decode( is_string( $raw_count ) ? $raw_count : '0', true ) ) ? (int) json_decode( is_string( $raw_count ) ? $raw_count : '0', true ) : 0 ); + + if ( is_multisite() && is_network_admin() ) { + $url = network_admin_url( 'themes.php?theme_status=vulnerable' ); + + // Add nonce for CSRF protection. + $url = esc_url( wp_nonce_url( $url, 'wpvulnerability_filter_themes', 'wpv_nonce' ) ); + + $views['vulnerable'] = sprintf( + '%s', + $url, + ( isset( $_GET['theme_status'] ) && 'vulnerable' === $_GET['theme_status'] ? ' class="current"' : '' ), // phpcs:ignore + // translators: the number of vulnerabilities. + sprintf( __( 'Vulnerabilities (%d)', 'wpvulnerability' ), $wpvulnerability_themes_total ) + ); + } + + return $views; +} + +/** + * Adds a custom filter to the themes page in the WordPress admin to display a tab for vulnerable themes. + * + * This function hooks into the 'views_themes-network' filter to add a custom tab or view for displaying vulnerable themes + * on the themes management page in the WordPress network admin area. The tab is added only in a multisite setup + * and specifically in the network admin context. + * + * @since 3.3.5 + * + * @return void + */ +function wpvulnerability_themes_add_tab() { + if ( is_multisite() && is_network_admin() ) { + add_filter( 'views_themes-network', 'wpvulnerability_themes_view' ); + } +} +add_action( 'admin_head', 'wpvulnerability_themes_add_tab' ); diff --git a/wpvulnerability.php b/wpvulnerability.php new file mode 100644 index 0000000..fcf2492 --- /dev/null +++ b/wpvulnerability.php @@ -0,0 +1,138 @@ +