diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 14cdd48..0000000 --- a/.gitignore +++ /dev/null @@ -1,6 +0,0 @@ -.idea -.vscode -.gitignore -.DS_Store -backups/* -php_errors.log diff --git a/.gitmodules b/.gitmodules deleted file mode 100644 index 3899f63..0000000 --- a/.gitmodules +++ /dev/null @@ -1,24 +0,0 @@ -[submodule "themes/light"] - path = themes/light - url = git@github.com:Samnan/MyWebSQL-Theme-light.git -[submodule "themes/dark"] - path = themes/dark - url = git@github.com:Samnan/MyWebSQL-Theme-dark.git -[submodule "themes/paper"] - path = themes/paper - url = git@github.com:Samnan/MyWebSQL-Theme-paper.git -[submodule "themes/human"] - path = themes/human - url = git@github.com:Samnan/MyWebSQL-Theme-human.git -[submodule "themes/bootstrap"] - path = themes/bootstrap - url = git@github.com:Samnan/MyWebSQL-Theme-bootstrap.git -[submodule "themes/pinky"] - path = themes/pinky - url = git@github.com:Samnan/MyWebSQL-Theme-pinky.git -[submodule "themes/chocolate"] - path = themes/chocolate - url = git@github.com:Samnan/MyWebSQL-Theme-chocolate.git -[submodule "themes/grass"] - path = themes/grass - url = git@github.com:Samnan/MyWebSQL-Theme-grass.git diff --git a/Docs/Features.txt b/Docs/Features.txt deleted file mode 100644 index a6b09d7..0000000 --- a/Docs/Features.txt +++ /dev/null @@ -1,19 +0,0 @@ -- Fast and friendly interface. Anyone with minimal knowledge of database can learn to use MySQL easily -- Works on most webservers/hostings without any special configuration -- Supports MySQL 4 and 5, PostgreSQL 8 and 9 and SQLite databases out of the box -- Multilingual interface with simple language translation files -- Supports multiple themes (you can easily create your own using any jQuery UI theme) -- Multiple servers to choose from when connecting to a database server -- Multiple SQL editors with syntax highlighting to write and execute queries -- Import database script, export database, tables or results to multiple formats - export even very large databases without worrying about php memory limits -- Zero configuration required to get up and running. Just download, unzip and you are on. -- multitask with dialogs while you work on the main interface -- Batch operations on database -- Quick inplace record editing without switching pages. also you can edit multiple records at once and save by teh click of a button -- Online documentation to help with troubleshooting and using -- customizable layout to show/hide various elements of interface -- WYSIWYG table creator/editor to create and edit tables on the fly -- Database management tools like Process Manager, User and Permission Manager, Table checker/optimizer, Database Text Search, Table Index Manager -- Online demo to let you try out before you download and use -- Online bug reporting and feature requests for everyone diff --git a/Docs/Installation.txt b/Docs/Installation.txt deleted file mode 100644 index c08f38e..0000000 --- a/Docs/Installation.txt +++ /dev/null @@ -1,42 +0,0 @@ -Installation of MyWebSQL is pretty straightforward. ---------------------------------------------------- - -1. Extract all files inside the archive into any folder of your choice. - -2. Move the folder into a subdirectory of your weberver documentroot, or you - can create a new virtual alias/host if your webserver allows you to do that. - -3. [optional] In your browser, navigate to 'install.php' to check for the PHP installation and settings - to make sure MyWebSQL will run on your server without problems. - -4. [optional] Open the file servers.php inside the "config" folder. Review and change/add - additional servers information in the file. - -5. [optional] Open the file config.php inside the "config" folder. Review and change if you - need to change any defaults. - -6. [optional] Open the file auth.php inside the "config" folder. - modify the AUTH_TYPE constant and related values if you wish to change the authentication method for the application. - -7. Thats all !. Load a browser and hit the url ... - --------------------------------------------------- -Software Updates --------------------------------------------------- - -- By default an update check runs for new releases every Monday when MyWebSQL is used for first time. - You can disable this check by modifying 'updates.php' file in the config folder. -- You can use the built-in update check functionality in the main application menu to see if a new - version is available. - - https://github.com/Samnan/MyWebSQL - --------------------------------------------------- -Troubleshooting & Support --------------------------------------------------- -Complete documentation for the project is available at [https://github.com/Samnan/MyWebSQL/docs/]. -Refer to the troubleshooting section in the docs if you are having trouble installing/using MyWebSQL. -If your problem still persists, you can use on the website to submit bug reports. Your queries will be answered as soon -as possible. - -Thank you for using MyWebSQL. \ No newline at end of file diff --git a/Docs/License.txt b/Docs/License.txt deleted file mode 100644 index 0578261..0000000 --- a/Docs/License.txt +++ /dev/null @@ -1,679 +0,0 @@ -MyWebsql is licensed under the GNU GPL v3 License. -For more information about the licensing terms, please visit http://www.gnu.org/licenses/gpl.html -================================================================================================= - - 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/Docs/Translators.txt b/Docs/Translators.txt deleted file mode 100644 index 7da8b6a..0000000 --- a/Docs/Translators.txt +++ /dev/null @@ -1,22 +0,0 @@ -Guidelines for Translators ---------------------------------------------------- - -1. All translation for one particular language is present in one file inside the 'lang' folder. - -2. The language code in filename represents the language to be used in the file. A list of the codes - and associated language is present in the file 'config/lang.php' for lookup. - -3. Since the language file is php code itself, you should only change the english sentences and words - and avoid changing any php code in the file. - -4. Each line of text contains the english word/sentence, followed by '=>' and then the translated text. - This should be useful for the translator so that both the english and translated text are available - for review side by side during editing. You should ONLY CHANGE THE SECOND text on the line and leave - the first one intact in English. Alternatively, translate the text that is surrounded by double quotes (""), - and leave the text as is which is inside single quotes (''). - -5. Before submitting the finalized translation, please review the change once to make sure everything is - correctly translated. We will take care of the rest. - -Please mention your contact information when submitting the translation, and whether you are available for -further updates to the language (when new text is added or existing updated) \ No newline at end of file diff --git a/Docs/changelog.txt b/Docs/changelog.txt deleted file mode 100644 index e9fe2ce..0000000 --- a/Docs/changelog.txt +++ /dev/null @@ -1,635 +0,0 @@ -------------------------------- -version 3.95 -------------------------------- -Updates: -- Improvements to the UI for the default theme for visibility, editing and accessibility. - -------------------------------- -version 3.9 -------------------------------- -Updates: -- Compatibility fixes with PHP <= 8.4 and MySQL 8 - -------------------------------- -version 3.8 -------------------------------- -Updates: -- sort by descending order on first click (as records sort in ascending order by default) - -Miscellaneous: -- Fix display of result headers in safari (avoid wrapping) - -------------------------------- -version 3.7 -------------------------------- -Updates: - -Bufixes: -- problems with php running as FCGi in nginx server -- corrupt output on some php configuration, mainly due to incompatible settings -- list of table not displayed for PostgreSQL databases when importing a single table data from csv files -- on some php configurations, database selection did not work due to cookies and request variables being merged -- insert queries generated for some Pgsql databases failed to execute due to syntax errors -- fixed data table import bug with pgsql databases, generating incorrect queries with table namespaces -- fixed sorting and pagination issues with query data (thanks to Peng Xiao for valuable feedback) -General: -- added compatibility to PHP 5.2 after user requests - -------------------------------- -version 3.6 -------------------------------- -Updates: -- Edit mode updates: - for enum/boolean fields, datalist is available to choose from - date fields can now be updated with datepicker -- fixed results header for better navigation and data management -- .sqlite3 is now recognized as valid sqlite database extension -- improved in-place editing visual styles -- SQLite and SQLite3 library improvements for record editing functionality -- Added SQL editor hotkeys: - Ctrl+Up -> Increase text size - Ctrl+Down -> Decrease text size - Ctrl+Shift+Del -> Clear SQL editor -- Warnings are now shown in message pane that occur during query execution -Bugfixes: -- Enum and set field values handling with special characters -General: -- Results for data queries and other types of queries are shown separately -- Cleaned up themes structure, to simply theme modification and creation -- Aero theme is removed from the package -- Reduced package size due to removal / cleanup of various javascript code -- Other lots of minor improvements in various areas of application frontend / backend - -------------------------------- -version 3.5 -------------------------------- -Updates: -- support for SQLite3 driver added, so database created with SQLite3 can be managed - (thanks to J. Gutierrez for providing valuable feedback in this regard) -- added Arabic translation (thanks to Muhannad Ajjan for providing the complete translation) -- filename format can be changed before creating server side backups (to add prefix or additional info to filename) -- Auto pagination now works for all select queries other than table select -- Sorting is now done on the server side instead of client side, also improves integration with pagination -- Removed .htaccess file from root of installation folder, that caused internal server error on many hosts. - All htaccess settings are now internally managed by MyWebSQL -Bug fixes: -- minor bugs in the sqlite library, causing generation of errors in log -- sql comments were erroneously appended to exported data in html/xhtml format -General: - -------------------------------- -version 3.4 -------------------------------- -Updates: -- Connection details for custom database servers can be provided on login screen. - This option is disabled by default. See link below for more details - https://github.com/Samnan/MyWebSQL/docs/connecting-to-database-servers/user-defined-connections/ -- More options in export dialog to fine tune the format of generated SQL script -- Export dialog options are enabled/disabled based on selection of export data for best results -- Database export option now available for PostgreSQL databases also (limited to table data only) -- Secure login is enabled/disable automatically based on PHP configuration - this fixes the blank screen issue on first run, reported by some users with missing PHP extensions -Bug fixes: -- Shift+space key would indent the SQL editor, causing annoyance for most users -- Server information tab displayed MySQL server label regardless of database type -- Pgsql tables showed no result even though the query successfully returned valid result set -- Pgsql users other than 'postgres' unable to login to MyWebSQL -General: -- Exported query results contain the actual SQL statement for reference purposes -- install.php script now properly identifies and displays issue in PHP installation for running MyWebSQL - -------------------------------- -version 3.3 -------------------------------- -Updates: -- added bulk insert statement option in export script to speed up imports and reduce output file size -- allow skipping foreign key checks while dropping tables in batch mode to ensure deletion of all selected tables -- new user options dialog to control some aspects of the gui based on user's preferences -- object list shows the (estimated) number of record count for tables (requires option to be set in preferences) -- object list allows table listing to be sorted based on last update time (requires option to be set in preferences) -- editing large text data can be done in a separate dialog (requires option to be set in preferences) -Bug fixes: -- export results record id was being reset after the selected limit in config for queries with variables -- namespace related issues fixed with right click menus in object viewer - -------------------------------- -version 3.2 -------------------------------- -Updates: -- database backup module added, which allows saving database backups on the server -- some additions to export database module for more control over the export script -- updated german translation provided by Nikolaus Krismer -Bug fixes: -- editable inputs did not have default context menu functionality -- problems with escape sequences in edited queries generation caused some queries to fail -- copying a record in the interface caused slight problem with editing due to textbox problems (touch events issue) -General: -------------------------------- -version 3.1 -------------------------------- -Updates: -- sql queries are saved on per-editor basis and loaded the same (previously only saved the last executed query) -- Record editing feature works on touch devices using taphold event (Requested by Karl Hemmings) -- improved and bugfixed SQL generation code. Generated SQL is more uniform across databases, - and respects each database specific escape sequences -- Access to particular modules within MyWebSQL can be now allowed or denied using config. - Please see online documentation for more details. -- Database Manager tool added to the interface to manage server databases more easily -Bug fixes: -- quick search filter was not being applied to database listing -- quick search filter input was missing from themes other than default theme (css fixed) -- empty data fields in results sometimes caused additional sql in where clause generation -- SQL comments work with '--', instead of needing an extra space like '-- ' -- batch operations for objects other than tables failed to execute from batch module -- command history contained extra lines in multilines queries, and resulted in extra
tags in copied text -- some ui fixes in chrome and other browsers -General: -- batch module command generation now properly quotes object names - -------------------------------- -version 3.0.1 -------------------------------- -- quick bugfix to download module that caused errors in the generated sql batch file - -------------------------------- -version 3.0 Final -------------------------------- -Updates: -- added search on object list to filter a large number of objects in tree quickly -- Table search tool fixed and working on pgsql databases for basic data types -- Updated WordPress plugin to new 3.0 codebase -- Single file distribution updated to latest codebase -Bug Fixes: -- pgsql table operations fixed (drop, create copy, rename etc) -- incorrect limit clause did not work on some pgsql tables when fetching data -- batch operation dialog failed to work for pgsql databases -- clicking on table name in one schema incorrectly selects the same table name in other schema (only if same table name existed in two schemas) -- connection failure message on login screen for db server connection failure -- IE9 related beta version issues fixed -General: -- table description lists fields in their ordinal position (pgsql) - -------------------------------- -version 3.0 Beta -------------------------------- -Updates: -- PostgreSQL partial support. Object list, queries, table data display works as usual. Other features are either - partially implemented, or planned for future versions. -- Added custom authentication support. It is much simpler now to implement your own method of authenticating users, if the need arises. -- Added install.php script. Checks for various configurations on server and notifies about any errors or warnings - that might cause MyWebSQL to not run properly. -- Single file distribution. A single file version of MyWebSQL with all features for quick deployment and use - please visit the project files section on sourceforge to download the single file distribution -- object count is displayed in object viewer for only types that have one or more objects -- some minor ui updates -Bug Fixes: -- where clause generation problems when data had NULL values and no key definitions -- properly display messages if one or more database client libraries are not installed when accessing the databases -- lots of other small issues fixed -General: -- Updated codemirror2 to latest version - -------------------------------- -version 2.9 -------------------------------- -Updates: -- Added new themes: - Bootstrap - based on jquery ui twitter bootstrap theme (by addy osmani) - Chocolate - based on jQuery UI theme mint-chocolate - Pinky - A colourful pink theme -- Syntax editor improvements: Codemirror2 support improved, other editor areas cleaned up -- Fixed session issue with multiple blocking requests to keep the interface responsive -Bug Fixes: -- Fixed a bug in SQL parser that caused infinite loop in parser at end of file, resulting in unresponsive interface (reported by Brandon Hoffman) -- Blob data could not be viewed if result contained field from more than one table -- Dialogs once re-opened behaved erratically on minimize/restore -- Changing table engine type erroneously generated drop primary key statement for some tables -- Record editing could not save record if the where clause contained certain text -General: -- Automatically refresh object list after successful creation of new objects -- updated language on the interface where some of the text did not translate properly -- Cleaned up themes and standardized message/error display interface - -------------------------------- -version 2.8 -------------------------------- -Updates: -- Added data import option from CSV files into tables -- Added batch operation module. Allows performing various operations on multiple objects in database easily - (add/remove table prefixes, drop objects, generate sql commands for selected objects etc.) -- Added quick search in information display tables for quickly filtering result data -- Improved SQLite support -- Automatically refresh object list after completing batch imports (requested by umairj) -- suppressed warning in error log on some PHP versions (requested by Danny) -- Language names appear in their own language in menus for ease of understanding -Bug Fixes: -- Lots of issues fixed in SQLite database handling -- where clause generated query error in updates if it contained text fields -- many corrections in multilingual strings in the languages -General: -- Updated jquery/codemirror2 to latest version - -------------------------------- -version 2.7.6 -------------------------------- -Updates: -- Updated codemirror2 to latest version and improved mysql syntax highlighting -Bug Fixes: -- More fixes to login failure / display problems with FASTCGI servers -General: - -------------------------------- -version 2.7.5 -------------------------------- -Updates: -- default interface language can now be set in configuration -- installation package now contains all files inside a root folder (requested by some users) -Bug Fixes: -- usability issues when authentication type was set to NONE -- usability issues with IIS+fastCGI servers -- usability issues when using some specific server configurations of php/apache -- record editing and export output problems when mysql5 driver was used instead of mysqli -- other minor bugfixes and improvements - -------------------------------- -version 2.7 -------------------------------- -Updates: -- added 'copy record' functionality in result grid. Select one or more records and use the copy function to quickly create new records with same data. -- added CSV(Excel) and YAML formats in table/results export module. Code for export functionality refactored to allow creation of more export drivers easily. -- Exporting large amount of data does not fail with memory limit errors by php - (still requires php timeout settings to be large enough, or unlimited so that all data can be processed) -- results editor now automatically scrolls to right position in results to keep current edited field visible - also basic field information is shown while editing the results -- improved software update check option which does not block user interface. Also update for new version is checked every Monday. - update settings can be changed by modifiyng config/updates.php file -- process manager allows more than one process to kill in one request -- added main menu interface option to select the type of sql editor at runtime - (also fixed some issues with CodeMirror2 implementation, but it is still experimental) -- Speed improvements in some areas of functionality -Bug Fixes: -- Loading and minor theme issues with Internet Explorer 8 browser -- result set scrolling issues due to recent updates to ui libraries -- result set textarea editor setting values empty in some scenarios -- some minor structure changes to table structure using table editor did not get updated -- some other small bugfixes reported by users -General: -- Default theme revised and cleaned up a bit as per user requests (minor fixes to other themes also) -- more code cleanup and configuration files - -------------------------------- -version 2.5 -------------------------------- -Changes: -- Support for managing SQLite databases. Includes mostly used functionality like creating databases/tables and querying tables. Import/export and GUI based record editing not available (mainly due to restrictions with sqlite driver support) -- imporved server configuration settings. You can now explicitly specify the mysql driver to us with a particular connection (e.g. mysqli, mysql5 or legacy driver etc) -- Updated encryption library for PHP 5.3. Much faster login screen, but falls back to default if using older version - of PHP or missing encryption extensions (requires openssl+gmp extensions) -General: -- Updated french language translation (with special thanks to Sylvain Chauveau) - -------------------------------- -version 2.3 -------------------------------- -Changes: -- Unobtrusive dialogs: all tools and import/export dialogs can be minimized and do not block the user interface - > Useful when creating/tables, so that more than one table can be created/edited at the same time - > Database import/export can be minimized while you can continue work on the main interface etc. -- Query editor functionalty improved. You can now change (or add) default query editor with one of your own choice (e.g. ACE editor) - Please see documentation at https://github.com/Samnan/MyWebSQL/docs/miscellaneous/adding-changing-sql-editors/ -- Added codemirror2 as alternate sql editor (experimental). Can be enabled in the config for testing -Bugs Fixed: -- plain text query editor hotkeys did not work properly (default syntax highlighted editor worked fine) -- plain text query editor text not returned from current editor (javascript issue) -General: -- Fixed some warnings in code - -------------------------------- -version 2.2 -------------------------------- -Updates: - - Added option to select mysql server at login time. Please see online documentation to see configuration details - https://github.com/Samnan/MyWebSQL/docs/interface-basics/connecting-to-multiple-servers/ - - Added session variable options using the 'SET @...' command. Please see the basic information on using session variables at the link below - https://github.com/Samnan/MyWebSQL/docs/advanced-usage/using-session-variables-in-queries/ - - Added right click option to copy a table/view/procedure/view with different name -Bugs Fixed: -Table editor: - - generated erroneous query if more than one table was created using set/enum fields - - did not generate default value in sql for number fields -General: - - newly created database name showed up at the end of database list (instead at the right place) - - import failed for sql dump generated by MyWebSQL in some scenarios - - drop object confirmation asked every time despite user's preferences to not ask every time - - text field data is shown by default in grid view instead of info text, if it is less than 80 characters or less (configurable) - -------------------------------- -version 2.1 -------------------------------- -Changes: -- User manager now allows removing the user password (previously only allowed changing passwords) -- Search tool to search for text in database with selected options -Bugs Fixed: -- Header menu did not appear properly after re-opening browser if header was hidden -- index manager sometimes failed to add index if there was initially no index in a table -- index manager script error when adding an index to a table which had no index -- index manager generated error in query for adding a primary key to table without a primary key -- utf8 text data sometimes did not properly insert/update for database with character set other than utf8 -- a rare but annoying javascript error specially in ie (and sometimes in other browsers) immediately after page load -- fixed edit toolbar and text field editor positioning issues in chrome and IE 7,8 -Updates: -- automatic detection of user's language based on browser settings -- Updated to latest jquery ui library -- improved loading time for the interface by delaying some of the interface initialization for later (popups etc) - ------------------------------- -version 2.0 Final Release -------------------------------- -Changes: -- Index manager button text changed to be more easier to understand -- Table editor buttons display and hide properly based on selected tab -- Language files added for various languages (Google translated for the time being) -- Some IE related javascript issues fixed by including json2 script for IE7 browsers -Bugs Fixed: -- user manager privileges not flushed on some actions -- Loading screen for imcompatible browsers fixed -- session expiry now handled properly and message is displayed to user for reloading the page -- creation of new table did not refresh the object list automatically -- when text field editor closes, it leaves incorrect information about the field in table cell -- text field editor placement was out of screen on some scenarios -- table editor incorrectly accepts field length for types that do not require length - also fixed field length option for all field types -- table editor did not properly update primary key index in some cases -- table editor added extra command in alter statement for table engine type and character set -- table describe command did not show all text in the results (field type was obscured) -- blob edit dialog did not report error when blob editing failed (due to file upload error) -- Humanity, paper, aero theme styles updated -- quick start tutorials and related script issues fixed -- update langauge files and missing text in modules for translation - -------------------------------- -version 2.0 Beta -------------------------------- -- new: Interface is now completely multilingual. All modules updated to separate code and content -- new: Tool to manage table indexes -- new: Tool to manager database users and privileges (with special thanks to Ovais Tariq) -- new: Tool to analyze and/or repair database tables -- new: application and rightclick menu items contain icons for better visual cue -- new: text field inplace editing mechanism is now improved and simplified -- new: blob field inplace editing mechanism is now implemented for file uploads in blob fields -- new: 3 new themes (including an 'Aero' style transparent theme) -- new: brand new splash and login screen -- new: module to quick check for updates from the interface for new versions of software from website -- update: session security enhanced further by encrypting more insecure session variables -- update: export modules now includes mysql events to be exported -- update: history now allows copying a single selected query as well as all queries to clipboard by right click menu -- update: slightly improved syntax highlighting for sql editor -- update: changing database does not refresh the whole page, only object list - saves extra loading time and preserves other page elements (queries etc) -- update: resizing handles are larger when the panel is docked, to allow easier to be used (feedback from jquery layout group) -- update: Html class functions made static. object instantiation is not required anymore -- lots of other minor tweaks and improvements - -------------------------------- -version 1.8 -------------------------------- -- added: functionality to manage mysql5 'event' objects -- added etags in scripts and css to save bandwidth and improve browser caching -- added: encryption based security in login screen to disable plain text login information sent over the wire. - enabled automatically if MyWebSql is not hosted on https url -- added: new interface icons for object viewer -- update: object tree list saves it expanded/collapsed state after refresh on query execution -- update: existings themes/styles brushed up and cleaned and all css formatted properly (dark theme look revised) -- update: page header and logo can now be make to hide to provide additional space in the browser for results and sql editor - (right click header area to show context menu) -- update: page and docking window layout is now saved and restored on next visit -- updated links in menu to new bugs and feature requests pages on mywebsql.net site -- updated to latest jquery and ui libraries -- other minor updates/fixes - -------------------------------- -version 1.7 -------------------------------- -- update: mysql4 support revised. Objects/elements not supported in mysql4 do not appear in the interface -- update: Internet Explorer 9 related compatibility issues fixed -- added: record editing allows adding new records in wysiwyg mode, while allowing editing of existing ones -- added: change engine type module for quickly changing the table type only without changing structure -- update: object list now refreshes automatically when database is modified -- bugfix: history right click menu copy command was not working properly -- update: more commands available for tables and other db objects through right click menus - -------------------------------- -version 1.6 -------------------------------- -- added: WYSIWYG table creator/editor. -- added: right click menu for databases in object tree -- added: right click menus for panels, and main menu options to access the same commands -- added: more operations supported for database object through right click menus (alter, drop, rename, truncate) -- bugfix: minor display issue with first loading when authentication type was set to NONE -- bugfix: record editing shortcut keys improper behaviour after sorting results -- fix: resizing popup dialogs was causing erratic mouse behavoiur and improperly resizing popups -- update: quick start tutorials added to help menu for new users -- update: popup screens now use theme based styles instead of default html stlying -- update: source code cleaned up and formatted through out the application in uniform style -- other minor improvements and fixes - -------------------------------- -version 1.5.1 -------------------------------- -- bugfix: export command failing to download database dump -- bugfix: import command failing due to foreign key check for data exported through MyWebSql interface -- bugfix: blob dialog did not display binary blob column value in some situations - -------------------------------- -version 1.5 Final -------------------------------- -- converted icons and small images to sprites -- fixed codemirror errors for dialogs when compressed javascripts were used -- bugfix: NULL values were not being sorted if a column contained mix values -- bugfix: where clause generated for some specialized field names caused error in query -- bugfix: changing themes sometimes caused javascript warning shown before reloading the page -- bufix: incoplete database object list shown if there was only one database on server -- update: result display slightly mproved when it contains binary data -- added: Generate sql option in the interface during record editing. Generates sql for user actions instead of - directly executing queries -- update: existing themes made compatible with new code - -------------------------------- -version 1.5 Beta -------------------------------- -- added: 2 more sql editors, each of the three editors now accessible through hotkeys -- bugfix: sql output for certain timestamp fields generated incorrectly during export -- bugfix: minor issue when last query is not select and results are exported -- added: syntax highlighting for all queries displayed on the interface -- added: logout option in the interface (required and requested) -- added: default information displayed for tables and other db objects when left-clicked -- update: line numbers enabled for sql editor -- update:detailed online documentation now up and running. Quick help contents bundled with the package -- update: edit/delete queries now execute directly instead of being generated inside sql editor (requested) -- update main menu re-organized for ease of use and more options added -- update: sql editor now improved than earlier versions with better syntax highlighting -- optimizations: removed unused code files from project, and configuration files re-organized slightly -- added minified versions of scripts for speeding up page loading and client side performance -- lots of other minor improvements and fixes - -------------------------------- -version 1.4 -------------------------------- -- added: two more themes for the interface (light (grayish and simple) and dark (a bit colourful but darkish theme)) -- added: hotkeys for query/query all execution (customizable through editing key config file, see help for details) -- added: pagination support to results when viewing table data (requested by Richard Bondi) -- update: when a ddl is executed, additional link allows the page to be refreshed so that database - objects list is updated to reflect the changes -- update: confirmation dialogs allow remembering the choice on first confirmation and can be turned on/off from options -- update: help content updated to reflect new changes to the application -- interface changes: default interface theme cleaned up a bit to be more spacious to allow room for sql editor and results -- interface changes: record statusbar moved below results, saving some space for the overall application layout -- code changes: refactored session and preferences related code for better management -- code changes: added encryption to sensitive values in session data, to increase security on shared servers - -------------------------------- -version 1.3.5 -------------------------------- -- bugfix: export table did not add fieldnames to the insert query if the option was checked -- bugfix: blob display dialog did not work when the blob type was changed -- bugfix: character encoding was not properly displayed in result set (special thanks to Richard Bondi for his feedback) -- update: Enhanced record editing now works in all browsers (quick fix suggested by Ovais Tariq [http://tech.ovaistariq.net]) -- update: blob/text column display in result set improved -- update: fixed extra request being sent to server in some cases and caused delay in popup dialogs -- added 'Request a feature' button to the main toolbar - -------------------------------- -version 1.3 -------------------------------- -- improved import batch query module: - Now works with bzip and gzip files also along with plain text files - Allows continuing execution in case a query fails - Logs more information to the user before and after import -- improved export module: - Allows exporting either database structure,data or both, a single table or the current result set - Allows better selection of objects to be exported (including views, procedures, functions and triggers) - Properly creates insert command for all types of fields (bug fixed with numeric values) - Exports table/results data as insert statement, xml, xhtml or plaintext (csv format) -- user interface: popup dialog user interface, resizer bars display improved, minor font adjustments -- user interface: database object creation now also works in richedit mode -- user interface: In Firefox, record editing now supports Tab/Shift+Tab/Up/Down Keys to navigate between result fields -- update: help content and pages revised and updated help page to reflect changes in latest versions -- bugfix: import and export modules submit buttons were broken due to javascript errors on some browsers -- bugfix: unique keys in tables were not properly used while creating edit queries -- bugfix: fixed minor compatibility issues with Internet Explorer 8 - -------------------------- -version 1.2 final -------------------------- -- fix: editing keys were not properly handled on some browsers -- fix favicon missing on splash page -- update: object tree fonts and padding fixed - -------------------------- -version 1.2 beta -------------------------- -- new: added multiple authentication types to setup MyWebSql for multiple databases or users on one server easily - please read the documentation on how to update previous version here (https://github.com/Samnan/MyWebSQL/upgrading) -- new: last executed query reloads in sql editor after page reload -- new: sql editor can now be set to autohide like object tree -- update: codemirror updated to version 0.8 -- update: jquery layout updated to latest version -- fix: if update/delete query contained a few special characters, the output would be wrong -- fix: table highlight would not work when doing queries -- fix: sql editor resizing caused wrong text selection in chrome and caused problem in resizing in other browsers -- fix: tables with 'spaces' in their names would not be selectable in the tree -- code cleanup: code execution framework simplified. all additional modules can now reside in one folder -- code cleanup: Removed all php warnings and notices from code -- code cleanup: moved all javascripts to one folder (including codemirror). Improved checks in cache.php to maximize - security with user provided script and css paths -- code cleanup: Most of the code is now xhtml 1.0 compliant -- lots of other minor improvements - -------------------------- -version 1.0.2 -------------------------- -- fixed bug in record editing, if < or > was used in the edited field -- Updated codemirror editor, fixes IE8 cursor hopping and firefox issues with cut/paste -- updated some javascript code to improve post query browser update speed - -------------------------- -version 1.0.1 -------------------------- -- fixed compatibility problems with php 5.3.0 and above -- fixed problem with edit field in resultset causing html code to be overwritten -- updated jquery to latest version. Should be a performance boost on in user interface on all browsers -- fixed minor user interface issues with Chrome browser - -------------------------- -version 1.0 -------------------------- -- added support for mysql4 databases (thanks to Ally Shayan for the work and testing) -- fixed problem with edit field in resultset in beta code -- fixed session expiration code to properly inform if session gets expired -- added right click options in history tab for copying/clearing command history -- added menu item to create new database -- added primary key/unique key icons to results -- help contents cleaned up a bit, credits section updated -- cleaned up commented out code which was left for reference -- minor fixes to GUI and css - - -------------------------- -version 1.0-Beta -------------------------- -- export results now also viewable along with download option -- redesign of the whole interface in jquery, for cross browser compatibility -- minor fixes and changes to the interafce in the redesign -- updated codemirror to version 0.61 - most probably fixes the copy paste bug in sql editor - -------------------------- -version 0.5 -------------------------- -- added support for database triggers -- added new tool: process manager for viewing and killing processes -- added new option: view mysql server variables -- added new export type: plain text (CSV style) -- bugfixes in export result functionality -- better handling of NULL values in interface and queries -- application now uses mysqli extension when available. This can be turned off/on from configuration file. -- more status information available about the mysql connection -- more browser compatibility fixes - -------------------------- -version 0.4 -------------------------- -- More browser compatibility fixes in drag drop, resizing page elements etc -- Some UI enhancements (eyecandy) -- Fixed javascript source path in export screens, causing exports to fail -- Query results performance is increased by 30-40%, by eliminating some redundant and extra DHTML stuff - -------------------------- -version 0.3 -------------------------- -- fixed query editor getSqlCode() bug in firefox (came up in ver 0.2 only) -- fixed object tree: 1. menu going out of display bounds. 2. menu not hiding on clicks -- record editing, deletion now works properly on firefox and opera also ! (checked in firefox 3.0.5) -- fixed a bug in determining if a resultset contained NULL values or empty field -- added more options for database export command (include create table/drop table, select tables to export) -- other miscellaneous cross browser issues -- running batch queries using interface is now possible (multiple results display still NOT supported) -- code folder cleaned up. Moved images,css and library files to separate folders. - - -------------------------- -version 0.2 -------------------------- -- Added options to import/export results and database/tables as sql batch scripts -- added config item: TRACE_FILEPATH. Use it if you like to change the error log path for the application -- db connection is no longer limited to a single table in the database -- cookies are now specific to url for mywebsql and no longer accessible on other parts of domain -- pressing tab in the sql editor now moves focus to query button -- connection oriented configuration bugs fixed -- sql editor is now resizable on IE -- minor annoying bugfixes on the UI - - -------------------------- -version 0.1 -------------------------- -- First public release. diff --git a/README.md b/README.md deleted file mode 100644 index 0ee62cf..0000000 --- a/README.md +++ /dev/null @@ -1,37 +0,0 @@ -MyWebSQL -======== - -MyWebSQL is a next generation web based application for database administration over the web. -It has a simple and intuitive interface, quick record addition/editing/saving features and plenty of tools to work with databases. - -Database Support -================ -As of the current version, MyWebSQL works with MySQL (version 4, 5 and 8), SQLite and PostgreSQL databases. - -Features -======== -- Application and context menus -- Multiple syntax highlighted sql editors -- Quick Inplace multi-record editing -- Zero configuration installation -- Multi dialog interface to allow multitasking -- Multiple server login supported -- Excellent support for major browsers -- WYSIWYG Table creator/editor -- Batch Import/Export modules -- Multilingual Interface -- UI Themes supported -- Other Datbaase tools (e.g. repair tables, alter indexes) - -Screenshots -=========== -![Main Interface](https://user-images.githubusercontent.com/872992/134867329-342238ca-7683-4ae8-ab6a-ceb4f877cefd.png) - -![Interactive Table Editor](https://user-images.githubusercontent.com/872992/134867443-5ccb9243-33fd-4ea3-b59f-9c870b127972.png) - -![Dialogs](https://user-images.githubusercontent.com/872992/134867483-20bbdd23-ef94-485e-bd1a-d26e050611df.png) - -Contributing Code -================= -If you would like to contribute features/bugfixes/enhancements to MyWebSQL, you can fork the repo, make your changes and send a pull request. -Once accepted, your changes will be incorporated in the next release of the applicaton. diff --git a/SECURITY.md b/SECURITY.md deleted file mode 100644 index 034e848..0000000 --- a/SECURITY.md +++ /dev/null @@ -1,21 +0,0 @@ -# Security Policy - -## Supported Versions - -Use this section to tell people about which versions of your project are -currently being supported with security updates. - -| Version | Supported | -| ------- | ------------------ | -| 5.1.x | :white_check_mark: | -| 5.0.x | :x: | -| 4.0.x | :white_check_mark: | -| < 4.0 | :x: | - -## Reporting a Vulnerability - -Use this section to tell people how to report a vulnerability. - -Tell them where to go, how often they can expect to get an update on a -reported vulnerability, what to expect if the vulnerability is accepted or -declined, etc. diff --git a/_config.yml b/_config.yml new file mode 100644 index 0000000..c419263 --- /dev/null +++ b/_config.yml @@ -0,0 +1 @@ +theme: jekyll-theme-cayman \ No newline at end of file diff --git a/about/index.html b/about/index.html new file mode 100644 index 0000000..ef98593 --- /dev/null +++ b/about/index.html @@ -0,0 +1,285 @@ + + + + + About | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

About

+

The software

+

MyWebSQL is designed especially for developers who need to manage their mysql databases through web browsers on a daily basis. It is written in PHP, and uses Javascript for its client side functionality. It was created with the following points in mind.

+
    +
  • Easy deployment and usage
  • +
  • Fast querying and editing on mysql databases
  • +
  • Developer friendly to save time spent on queries and working with results
  • +
  • Usable with all major browsers without any loss of functionality
  • +
+

The software is under continuous development with new features and enhancements being added every now and then.

+

Developers

+

MyWebSQL is primarily developed and maintained by Samnan ur Rehman. If you would like to request a feature or report a bug, please use the links on this website to submit them. Your feedback is highly appreciated and helps improve the software.

+

Credits

+

MyWebSQL open source development is hosted and distributed by Sourceforge.net downloads.

+

A couple of library modules are derived from work initially developed by Zeeshan Khan.

+

The project website hosting is generously provided by Ovais Tariq, who has helped improve MyWebSQL with his feedback and code contribution, and blogs his tech tips on his website ovaistariq.net.

+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/awards/index.html b/awards/index.html new file mode 100644 index 0000000..86487ea --- /dev/null +++ b/awards/index.html @@ -0,0 +1,187 @@ + + + + + Awards | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+

Awards

+

Overtime, MyWebSQL has received various awards from reviewers and websites for it’s features and design.

+

Below are some of the awards from widely used download websites around the world.

+
MyWebSql Download - Soft-Go.comMyWebSql Download - Soft-Files.comTop 4 DownloadWindows 7 DownloadBest Software 4 DownloadBest Vista DownloadX64 Bit DownloadDownload Typhoon +
+
+ +
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/backups/.htaccess b/backups/.htaccess deleted file mode 100644 index bc59461..0000000 --- a/backups/.htaccess +++ /dev/null @@ -1,2 +0,0 @@ -Order Deny,Allow -Deny From All \ No newline at end of file diff --git a/backups/readme.txt b/backups/readme.txt deleted file mode 100644 index e6f4108..0000000 --- a/backups/readme.txt +++ /dev/null @@ -1,2 +0,0 @@ -Database backups are stored here. -To change the backup folder setting, please edit 'config/backups.php' file. \ No newline at end of file diff --git a/blog/index.html b/blog/index.html new file mode 100644 index 0000000..b7b28ae --- /dev/null +++ b/blog/index.html @@ -0,0 +1,272 @@ +href="/MyWebSQL/wp-content + + + + MySQL, SQLite, PostgreSQL web client - MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+
+ + + +
+ +
+ +
+
+ Simplified Database Web Administration. +
+ For MySQL, SQLite and PostgreSQL databases. +
+
+ Manage your databases over the web using a secure and intuitive interface with blazing fast performance +
+ +
+
+
+
+ +
+

Fast, Efficient, Interactive

+
+
+
+ MyWebSQL is the ultimate desktop replacement for managing your MySQL databases over the web. With interface that works just like your favourite desktop applications, + + you don't need to keep switching over webpages to get simple things done. Just login to your database and manage your database as if your are working on your desktop! Checkout online demo +
+
+
+

Hassle Free Installation

+
+
+
+ Getting started is as simple as downloading the package and unpacking it on your choice of folder on the website. + + You only require a web server with php installed to get it up and running. + + No configuration required, no variables to be changed. Just open your favourite browser and hit the url to get going! See the complete list of features +
+
+
+

Completely Open Source!

+
+
+
+ That's right. MyWebSQL is completely open source software and available free for download. You can add/edit/change whatever you like. + + It even supports themes so you can create your own to suit your needs! Download Now! +
+
+
+

Prepackaged with your favourite apps

+
+ Now you can install MyWebSQL in one click using your favourite Installers like AMPPS. +
+
+
+
+
+ + +
+

Latest Updates

+
+ Version 3.7 is released, with many bugfixes, including those for running php as fcgi on nginx, postgresql database table import functionality, issues on some php installations where database selection did not work properly, and many other bugfixes. Changelog > +
+
+ +
+

Rich set of features

+
+
    +
  • + Application and context menus +
  • +
  • + Multiple syntax highlighted sql editors +
  • +
  • + Quick Inplace multi-record editing +
  • +
  • + Zero configuration installation +
  • +
  • + Multiple server login supported +
  • +
  • + Excellent support for major browsers +
  • +
  • + WYSIWYG Table creator/editor +
  • +
  • + Batch Import/Export modules +
  • +
  • + Multilingual Interface +
  • +
  • + UI Themes supported +
  • +
+ See all features > +
+
+ +
+

Support

+
+ MyWebSQL is open source and free software. You can send us your feedback and feature requests, and we will try to add them to the software as soon as we can. Submit a feature request > +
+
+
+ +
+
+ + + + + + \ No newline at end of file diff --git a/cache.php b/cache.php deleted file mode 100644 index e1690aa..0000000 --- a/cache.php +++ /dev/null @@ -1,74 +0,0 @@ - \ No newline at end of file diff --git a/config/.htaccess b/config/.htaccess deleted file mode 100644 index bc59461..0000000 --- a/config/.htaccess +++ /dev/null @@ -1,2 +0,0 @@ -Order Deny,Allow -Deny From All \ No newline at end of file diff --git a/config/auth.php b/config/auth.php deleted file mode 100644 index c368e98..0000000 --- a/config/auth.php +++ /dev/null @@ -1,44 +0,0 @@ - \ No newline at end of file diff --git a/config/backups.php b/config/backups.php deleted file mode 100644 index 6ed7284..0000000 --- a/config/backups.php +++ /dev/null @@ -1,28 +0,0 @@ - = name of the database - // = current datetime (see below for more) - // = filename extension - define( 'BACKUP_FILENAME_FORMAT', '-' ); - - // date format to be used in the backup filename (see php manual for format specifiers) - define( 'BACKUP_DATE_FORMAT', 'Ymd-His' ); -?> \ No newline at end of file diff --git a/config/blobs.php b/config/blobs.php deleted file mode 100644 index 782c9c7..0000000 --- a/config/blobs.php +++ /dev/null @@ -1,31 +0,0 @@ - - array("Text/Binary", "", ""), - "jpg" => - array("Jpeg", array("\xFF\xD8\xFF\xE0", "\xFF\xD8\xFF\xE1"), "Content-type: Image/jpeg", ""), - "gif" => - array("GIF", "\x47\x49\x46\x38\x39\x61", "Content-type: Image/gif", ""), - "png" => - array("PNG", "\x89\x50\x4E\x47\x0D\x0A\x1A\x0A", "Content-type: Image/png", ""), - "bmp" => - array("Bitmap", "\x42\x4D\x36\x10", "Content-type: Image/bmp", ""), - //"ico" => - // array("Icon", "", ""), - "ser" => - array("Serialized data", "", "", "", "unserialize"), - ); - -?> \ No newline at end of file diff --git a/config/config.php b/config/config.php deleted file mode 100644 index e5af747..0000000 --- a/config/config.php +++ /dev/null @@ -1,23 +0,0 @@ - \ No newline at end of file diff --git a/config/constants.php b/config/constants.php deleted file mode 100644 index 6f23970..0000000 --- a/config/constants.php +++ /dev/null @@ -1,55 +0,0 @@ - $value) - $data[$key] = stripdata($value); - return $data; - } - return stripslashes($data); - } - - // this must be done only once, so it's here - if (function_exists('get_magic_quotes_gpc') && get_magic_quotes_gpc()) - { - foreach ($_REQUEST as $k=>$v) - $_REQUEST[$k] = stripdata($v); - foreach ($_POST as $k=>$v) - $_POST[$k] = stripdata($v); - foreach ($_GET as $k=>$v) - $_GET[$k] = stripdata($v); - } - - } -?> diff --git a/config/database.php b/config/database.php deleted file mode 100644 index f5958f2..0000000 --- a/config/database.php +++ /dev/null @@ -1,21 +0,0 @@ - array('test', 'wordpress'), - //'Test Server 2'' => array('test') - ); -?> \ No newline at end of file diff --git a/config/editors.php b/config/editors.php deleted file mode 100644 index b480feb..0000000 --- a/config/editors.php +++ /dev/null @@ -1,19 +0,0 @@ - "Plain Text", - 'codemirror' => "CodeMirror", - 'codemirror2' => "CodeMirror 2 (Experimental)" - ); - -?> \ No newline at end of file diff --git a/config/keys.php b/config/keys.php deleted file mode 100644 index c80638d..0000000 --- a/config/keys.php +++ /dev/null @@ -1,57 +0,0 @@ - array('shift+del', "Shift + Del"), // sets value to NULL during edit - 'KEYCODE_QUERY' => array('ctrl+return', "Ctrl + Enter"), // single query - 'KEYCODE_QUERYALL' => array('ctrl+shift+return', "Ctrl + Shift + Enter"), // query all - 'KEYCODE_SWITCH_EDITOR1' => array('alt+1', "Alt + 1"), - 'KEYCODE_SWITCH_EDITOR2' => array('alt+2', "Alt + 2"), - 'KEYCODE_SWITCH_EDITOR3' => array('alt+3', "Alt + 3"), - 'KEYCODE_EDITOR_TEXTSIZE_INC' => array('ctrl+up', 'Ctrl + Up Arrow'), - 'KEYCODE_EDITOR_TEXTSIZE_DEC' => array('ctrl+down', 'Ctrl + Down Arrow'), - 'KEYCODE_EDITOR_CLEARTEXT' => array('ctrl+shift+del', 'Ctrl + Shift + Del') - ); - - // You should not change anything below unless you know what you are doing! - - $DOCUMENT_KEYS = array( - 'KEYCODE_SETNULL' => 'closeEditor(true, null)', - 'KEYCODE_SWITCH_EDITOR1' => 'switchEditor(0)', - 'KEYCODE_SWITCH_EDITOR2' => 'switchEditor(1)', - 'KEYCODE_SWITCH_EDITOR3' => 'switchEditor(2)' - - ); - - $SIMPLE_KEYS = array( - 'KEYCODE_QUERY' => 'queryGo(0)', - 'KEYCODE_QUERYALL' => 'queryGo(1)' - ); - - $CODEMIRROR_KEYS = array( - 'KEYCODE_QUERY' => 'queryGo(0)', - 'KEYCODE_QUERYALL' => 'queryGo(1)', - 'KEYCODE_SWITCH_EDITOR1' => 'switchEditor(0)', - 'KEYCODE_SWITCH_EDITOR2' => 'switchEditor(1)', - 'KEYCODE_SWITCH_EDITOR3' => 'switchEditor(2)', - 'KEYCODE_EDITOR_TEXTSIZE_INC' => 'editorTextSize(0.2)', - 'KEYCODE_EDITOR_TEXTSIZE_DEC' => 'editorTextSize(-0.2)', - 'KEYCODE_EDITOR_CLEARTEXT' => 'editorClear()' - ); - - $CODEMIRROR2_KEYS = array( - 'KEYCODE_QUERY' => 'queryGo(0)', - 'KEYCODE_QUERYALL' => 'queryGo(1)' - ); -?> \ No newline at end of file diff --git a/config/lang.php b/config/lang.php deleted file mode 100644 index 14c19d8..0000000 --- a/config/lang.php +++ /dev/null @@ -1,55 +0,0 @@ - 'English', - 'ar' => 'العربية', - 'af' => 'Afrikaans', - 'sq' => 'Albanian', - 'bg' => 'Български', - 'ca' => 'Català', - 'zh' => '中文(简体)', - 'hr' => 'Croatian', - 'cs' => 'Čeština', - 'da' => 'Dansk', - 'nl' => 'Nederlands', - 'es' => 'Español', - 'et' => 'Estonian', - 'fi' => 'Suomi', - 'fr' => 'Français', - 'gl' => 'Galician', - 'de' => 'Deutsch', - 'el' => 'Ελληνικά', - 'he' => 'עברית‏', - 'hu' => 'Magyar', - 'id' => 'Bahasa Indonesia', - 'it' => 'Italiano', - 'ja' => '日本語', - 'ko' => '한국어', - 'lt' => 'Lietuvių', - 'lv' => 'Latvian', - 'ms' => 'Bahasa Melayu', - 'no' => 'Norsk', - 'pl' => 'Polski', - 'pt' => 'Português', - 'ro' => 'Română', - 'ru' => 'Русский', - 'sk' => 'Slovenčina', - 'sl' => 'Slovenščina', - 'sr' => 'Српски', - 'sv' => 'Svenska', - 'th' => 'ภาษาไทย', - 'tr' => 'Türkçe', - 'uk' => 'Ukrainian' - ); - -?> \ No newline at end of file diff --git a/config/modules.php b/config/modules.php deleted file mode 100644 index 94baaef..0000000 --- a/config/modules.php +++ /dev/null @@ -1,35 +0,0 @@ - \ No newline at end of file diff --git a/config/servers.php b/config/servers.php deleted file mode 100644 index 393630d..0000000 --- a/config/servers.php +++ /dev/null @@ -1,60 +0,0 @@ - array( - 'host' => 'localhost', - 'driver' => extension_loaded('mysqli') ? 'mysqli' : 'mysql5' - ), - 'SQLite Databases' => array( - 'host' => 'c:/sqlitedb/', - 'driver' => 'sqlite3', - 'user' => 'root', // set this yourself - 'password' => 'sqlite' // set this yourself - ), - 'Localhost PostgreSQL' => array( - 'host' => 'localhost', - 'driver' => 'pgsql' - ), - /*'MySQL Proxy Server' => array( - 'host' => 'localhost:4040', - 'driver' => 'mysql5' - ), - 'MySQL 4' => array( - 'host' => 'localhost', - 'driver' => 'mysql4' - ), - */ - ); -?> \ No newline at end of file diff --git a/config/themes.php b/config/themes.php deleted file mode 100644 index 6f593aa..0000000 --- a/config/themes.php +++ /dev/null @@ -1,25 +0,0 @@ - "Default", - 'light' => "Light (Gray)", - 'dark' => "Dark", - 'grass' => "Grass", - 'paper' => "Paper", - 'human' => "Humanity (Ubuntu style)", - 'bootstrap' => "Bootstrap", - 'chocolate' => "Mint-Chocolate", - 'pinky' => "Pinky" - ); - -?> \ No newline at end of file diff --git a/config/updates.php b/config/updates.php deleted file mode 100644 index 2e02b4d..0000000 --- a/config/updates.php +++ /dev/null @@ -1,22 +0,0 @@ - \ No newline at end of file diff --git a/contribute/index.html b/contribute/index.html new file mode 100644 index 0000000..f7275ce --- /dev/null +++ b/contribute/index.html @@ -0,0 +1,320 @@ + + + + + Contribute | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

Contribute

+

MyWebSQL requires Translators from the open source community to help translate the software into various languages.

+

You can help us if:

+
    +
  • You can translate English into any of languages listed at the end of this page. AND
  • +
  • You are a developer. OR
  • +
  • You have basic know-how about how databases work. OR
  • +
  • You understand the meanings of basic mysql related terminology like tables, procedures.
  • +
+

Please help us out by sending us an email at support (at) mywebsql.net.

+

List of languages the software needs to be translated into:

+
    +
  • Afrikaans
  • +
  • Albanian
  • +
  • Bulgarian
  • +
  • Catalan
  • +
  • Chinese
  • +
  • Croatian
  • +
  • Czech
  • +
  • Danish
  • +
  • Dutch
  • +
  • Spanish
  • +
  • Estonian
  • +
  • Finnish
  • +
  • French
  • +
  • Galician
  • +
  • Georgian
  • +
  • German
  • +
  • Greek
  • +
  • Hebrew
  • +
  • Hungarian
  • +
  • Indonesian
  • +
  • Italian
  • +
  • Japanese
  • +
  • Korean
  • +
  • Lithuanian
  • +
  • Latvian
  • +
  • Malay
  • +
  • Norwegian
  • +
  • Polish
  • +
  • Portuguese
  • +
  • Romanian
  • +
  • Russian
  • +
  • Slovak
  • +
  • Slovenian
  • +
  • Serbian
  • +
  • Swedish
  • +
  • Thai
  • +
  • Turkish
  • +
  • Ukrainian
  • +
+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/docs/_config.yml b/docs/_config.yml new file mode 100644 index 0000000..cc35c1d --- /dev/null +++ b/docs/_config.yml @@ -0,0 +1 @@ +theme: jekyll-theme-modernist \ No newline at end of file diff --git a/docs/advanced-usage/implementing-custom-authentication/index.html b/docs/advanced-usage/implementing-custom-authentication/index.html new file mode 100644 index 0000000..d81f21e --- /dev/null +++ b/docs/advanced-usage/implementing-custom-authentication/index.html @@ -0,0 +1,284 @@ + + + + + + Implementing Custom Authentication | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Implementing Custom Authentication

+ +

Starting with version 2.9+, MyWebSQL allows you to create custom authentication routine to implement your own method of authenticating users. This maybe useful in scenarios where you need to perform some extra checks or entirely use a new method of authentication other than the ones provided with MyWebSQL.

+

To implement custom authentication, follow these simple steps.

+
    +
  • Edit auth.php file in the ‘config’ folder and set AUTH_TYPE constant to ‘CUSTOM’.
  • +
  • Open the ‘lib/auth’ folder in explorer and copy the ‘custom.sample.php’ in the same folder with the name ‘custom.php’.
  • +
  • Open ‘custom.php’ file in your favourite editor and make changes to the file to implement your authentication mechanism.
  • +
  • Once you have saved the changes in the ‘custom.php’ file, open MyWebSQL in your browser and see if your new authentication implementation works.
  • +
+

The sample file provided contains enough comments and demo code to get your started easily. If you are still having problems, you can send a support request on the website.

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/advanced-usage/index.html b/docs/advanced-usage/index.html new file mode 100644 index 0000000..8911ecf --- /dev/null +++ b/docs/advanced-usage/index.html @@ -0,0 +1,318 @@ + + + + + + Advanced usage | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Advanced usage

+ + + + +
+ + +
+ +

Using session variables in queries

+ + + + + + +

Starting with version 2.2 and above, MyWebSQL allows you to set and use session variables within your queries. Session variables are set using the standard MySQL SET command. The syntax and variable naming conventions are exactly the same as MySQL SET command, so you can use any valid MySQL SET combination in the query editor […]

+
+ +
+ +
+ + +
+ +

Implementing Custom Authentication

+ + + + + + +

Starting with version 2.9+, MyWebSQL allows you to create custom authentication routine to implement your own method of authenticating users. This maybe useful in scenarios where you need to perform some extra checks or entirely use a new method of authentication other than the ones provided with MyWebSQL. To implement custom authentication, follow these simple […]

+
+ +
+ +
+ + +
+ + + + +
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/advanced-usage/using-session-variables-in-queries/index.html b/docs/advanced-usage/using-session-variables-in-queries/index.html new file mode 100644 index 0000000..40f9a76 --- /dev/null +++ b/docs/advanced-usage/using-session-variables-in-queries/index.html @@ -0,0 +1,287 @@ + + + + + + Using session variables in queries | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Using session variables in queries

+ +

Starting with version 2.2 and above, MyWebSQL allows you to set and use session variables within your queries. Session variables are set using the standard MySQL SET command. The syntax and variable naming conventions are exactly the same as MySQL SET command, so you can use any valid MySQL SET combination in the query editor during the session.

+

For example, if you run the following command in your query window:

+

SET @table_name = 'some_table';

+

and run the query, your session variable will be set by the name of table_name. Now you can run queries like the following as long you do not logout of the session.

+


+SELECT @table_name;
+

+

+Please note that only the SET @… command can be used to set session variables. If you use the alternate query syntax to fetch result set data into variables, the behavior will not work and the variable will be lost by the time of next query. e.g. running the following command will not product the desired results:

+


+SELECT name into @my_name from some_table;
+

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/connecting-to-database-servers/connecting-to-multiple-servers/index.html b/docs/connecting-to-database-servers/connecting-to-multiple-servers/index.html new file mode 100644 index 0000000..931554f --- /dev/null +++ b/docs/connecting-to-database-servers/connecting-to-multiple-servers/index.html @@ -0,0 +1,278 @@ + + + + + + Defining and selecting multiple servers | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Defining and selecting multiple servers

+ +

You can choose to show a list of servers at login time when MyWebSQL starts by defining multiple server list in the file ‘servers.php’ in the config folder. Please note that the server list is only shown if you use the default authentication type (LOGIN) , and there are 2 or more servers defined in the servers.php config file.

+

If there is only one server defined, it is always used for authentication. If no server is defined in the servers.php configuration file, then the value of the constant AUTH_SERVER is used as the hostname (defined in auth.php)

+

Append the port number to the servers host name in servers.php config file if you are running the database server on a different port than the default (e.g. 3306 in case of MySQL)

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/connecting-to-database-servers/connecting-to-mysql-server/index.html b/docs/connecting-to-database-servers/connecting-to-mysql-server/index.html new file mode 100644 index 0000000..88bb2db --- /dev/null +++ b/docs/connecting-to-database-servers/connecting-to-mysql-server/index.html @@ -0,0 +1,287 @@ + + + + + + Connecting to a MySQL database server | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Connecting to a MySQL database server

+ +

Depending on the authentication method set in config/auth.php configuration file, you will be either presented with the browser’s built-in authentication authentication dialog, or the login screen for MyWebSQL. In either case, you will have to use the credentials that you usually use to connect to the database server, or given to you if you are connecting to someone else’s server.

+

If you are running the database server on a different port than the default (3306 for MySQL), you will need to edit the ‘config/auth.php’ or ‘config/servers.php’ file in MyWebSQL installation folder and change the line that defines the server name and include the port along with the server name. For example, if your MySQL server is running on port 3307, change the default line into the following to make it work:

+

For the file ‘config/auth.php’:
+define(‘AUTH_SERVER’, ‘localhost:3307’);

+

For the file ‘config/servers.php’:
+$SERVER_LIST = array(
+‘Localhost MySQL’ => array(
+‘host’ => ‘localhost:3307’,
+….
+

+

Once successfully authenticated, you will be either shown a list of databases that the connected user has access to, or the main MyWebSQL interface, if there is only one database that the user has access to. If you have selected a database and want to change the database to another one, simply select it from the combo box provided on the main screen with the list of database names. Your session will start using the newly selected database from then on.

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/connecting-to-database-servers/connecting-to-postgresql-server/index.html b/docs/connecting-to-database-servers/connecting-to-postgresql-server/index.html new file mode 100644 index 0000000..2cb6cf7 --- /dev/null +++ b/docs/connecting-to-database-servers/connecting-to-postgresql-server/index.html @@ -0,0 +1,276 @@ + + + + + + Connecting to PostgreSQL database server | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Connecting to PostgreSQL database server

+ +

The configuration for connecting to PostgreSQL database servers is completely identical to MySQL, with the only difference that PostgreSQL database server listens on port 5432 by default. If your PostgreSQL database server port has been changed, please update it in the servers.php configuration file.

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/connecting-to-database-servers/connecting-to-sqlite-databases/index.html b/docs/connecting-to-database-servers/connecting-to-sqlite-databases/index.html new file mode 100644 index 0000000..042b433 --- /dev/null +++ b/docs/connecting-to-database-servers/connecting-to-sqlite-databases/index.html @@ -0,0 +1,279 @@ + + + + + + Connecting to SQLite databases | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Connecting to SQLite databases

+ +

To connect to and use SQLite databases, you will need to enable the configuration option in the config file ‘servers.php’. Edit the ‘servers.php’ file in the config folder of MyWebSQL installation, and uncomment the configuration option for SQLite. You will also need to set the folder path correctly where you have saved your SQLite databases.

+

You can optionally define a userid and password for the connection in the same file, so that a valid user is authenticated before SQLite databases can be managed (However, it is highly recommended that you use a userid and password to avoid anonymous usage of your SQLite databases)

+

+ If you want to manage SQLite databases that reside in a different folder, you can simply create a new copy of the existing configuration with a new name, and change the folder path for the new configuration. This way you will be given the option to manage SQLite databases in either one of the defined folders:

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/connecting-to-database-servers/user-defined-connections/index.html b/docs/connecting-to-database-servers/user-defined-connections/index.html new file mode 100644 index 0000000..27224f2 --- /dev/null +++ b/docs/connecting-to-database-servers/user-defined-connections/index.html @@ -0,0 +1,291 @@ + + + + + + User defined connections | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

User defined connections

+ +

Starting with version 3.4 and above, MyWebSQL allows a custom database configuration to be defined on the login screen, other than selecting from one of the already defined options. This option is by default disabled when you download and install MyWebSQL, but it can be easily enabled if you want. After you have downloaded and installed MyWebSQL, follow these simple steps to enable custom server option:

+
    +
  • Edit servers.php file in the config folder and find the line that reads: +
    $ALLOW_CUSTOM_SERVERS = FALSE;
    +

    +Edit and change the line to:

    +
    $ALLOW_CUSTOM_SERVERS = TRUE;
    +

    Refresh the login page for MyWebSQL and now you will be able to select ‘Custom Server’ option and define the IP/hostname for the database server you want to connect to. +

  • +
  • In order to avoid file system hacks on your server, SQLite database connections are not enabled for custom server option. If you are working on your development machine and would like to allow custom SQLite databases to be managed using MyWebSQL, just open the servers.php file and find this line: +
    $ALLOW_CUSTOM_SERVER_TYPES = "mysql,pgsql";
    +

    +Edit and change the line to:

    +
    $ALLOW_CUSTOM_SERVER_TYPES = "mysql,pgsql,sqlite";
    +

    After that you can also use SQLite database connection on login screen using Custom Server option. Also note that you will need to provide the full path to the database file in the ‘Server Name’ box, since SQLite databases are regular files. +

  • +
    + + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/customizing-user-interface/confirmation-dialogs/index.html b/docs/customizing-user-interface/confirmation-dialogs/index.html new file mode 100644 index 0000000..393075b --- /dev/null +++ b/docs/customizing-user-interface/confirmation-dialogs/index.html @@ -0,0 +1,277 @@ + + + + + + Confirmation dialogs | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Confirmation dialogs

+ +

In order to keep your data safe from accidental damage, MyWebSQL displays confirmation dialogs before operations like running multiple queries at once, or deleting a table. While the confirmation dialogs are useful for keeping your production databases safe from accidental queries, you may want to skip the dialogs on your local development system to speed up your work.

+

To skip confirmation dialogs for an operation, simply select the checkbox “Confirm and do not ask me again about this choice”. Next time you perform the same operation, you will not be asked for confirmation

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/customizing-user-interface/customizing-interface/index.html b/docs/customizing-user-interface/customizing-interface/index.html new file mode 100644 index 0000000..dc727f1 --- /dev/null +++ b/docs/customizing-user-interface/customizing-interface/index.html @@ -0,0 +1,280 @@ + + + + + + Customizing the main interface | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Customizing the main interface

+ +

The main user interface of MyWebSQL can be customized to suit your working style. The object list (left panel), results set and the SQL editors can be re-sized by using the drag handle on the resize bar between the panels. You can also completely hide a panel by right clicking on an empty space inside it, and selecting the option from the context menu to show/hide the header.

+

You can maximize the results anytime by clicking the ‘Maximize results’ button at the top right of the results panel. Clicking the button temporarily hides all other panels and allow you to view/edit the records easily (specially results containing lots of fields/data). Once you have completed viewing/editing, press the same button again and the interface is restored to the previous state.

+

You can select any of the theme provided in the package by using the application menu on top of the application.

+

You can choose to see the application in the language preference of your choice from the application menu.

+

Your preferences are saved (including theme selection) and restored when you re-open MyWebSQL in the same browser next time.

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/customizing-user-interface/customizing-object-list/index.html b/docs/customizing-user-interface/customizing-object-list/index.html new file mode 100644 index 0000000..fb1f8e0 --- /dev/null +++ b/docs/customizing-user-interface/customizing-object-list/index.html @@ -0,0 +1,279 @@ + + + + + + Customizing object list | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Customizing object list

+ +

The object list panel can be customized by selecting ‘Tools > Options’ from the application menu.

+

You can choose to show the number of records against the table names, or sort the table names by last modified time.

+

You can also customize the results and editing functionality to some extent by using the Options dialog.

+

Please note that some of the above options are only available for some of the databas server type, and may not be visible depending on your current database session.

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/database-management/creating-editing-tables/index.html b/docs/database-management/creating-editing-tables/index.html new file mode 100644 index 0000000..1e8c1aa --- /dev/null +++ b/docs/database-management/creating-editing-tables/index.html @@ -0,0 +1,280 @@ + + + + + + Creating/Editing tables | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Creating/Editing tables

+ +

Starting with version 1.6 and above, MyWebSQL includes a wysiwyg table editor. The table editor is extremely simple to use and acts just like any other desktop database editor tool. To create a new table, open the table editor from the main menu or using the right click menu option for table ‘Create table’. To alter an existing table, use the same right click menu. Alter table option is inside the ‘More operations’ popup, since it is a command that is not used frequently on a database table.

+

Once the table editor opens, you add/edit/delete any field information in the default tab, including the field data type, primary key and other constraints. If you want to insert a field between two existing fields, simply highlight the field after which you want the new field added, and click the ‘Add field’ button.

+

Please note that minimum validation is done on the front-end while making sure invalid field information is not submitted to the server. In case invalid information is submitted, table will not be created/altered, and you can review the error messages from the server and fix the problems in the table structure. The table information remains inside the table editor whether the table creation is successful or not. This is useful and saves your time if you want to create two or more tables with slight change in structure. Simply edit the field information and the table name, and resubmit the page to create additional tables.

+

If you want to start from scratch after creating a table, use the ‘Clear field information’ button. Table information will be completely cleared and you can entered all fields from the beginning in the table editor.

+

Once you have completed creation/editing of tables, close the table editor dialog to return to the main interface and refresh the page once to reload the updated table information.

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/database-management/exporting-database-objects/index.html b/docs/database-management/exporting-database-objects/index.html new file mode 100644 index 0000000..22b8898 --- /dev/null +++ b/docs/database-management/exporting-database-objects/index.html @@ -0,0 +1,279 @@ + + + + + + Exporting Database objects | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Exporting Database objects

+ +

You can export the complete database or chosen objects by using the export dialog, which can be opened from the application menu.

+

The export dialog contains additional options that you cna use to customize the export. You can select one or more tables to be included in the export, including their data, or either the structure or the data. You can also select to export the stored procedures, user defined functions, views and triggers in the output. The export can take a considerable amount of time depending on the number of exported items and the size of export data in the database. The output is provided in the form of a sql file, that can be used to import all the exported data into a database without any modification.

+

If the option ‘Set auto-increment values to NULL’ is checked on the export dialog, it will generate queries with all auto-increment field values to NULL. This option is NOT RECOMMENDED if your database contains foreign key definitions, as import will usually fail with errors due to foreign key contraints. Also, if your database contains master/details relationship tables with data, you should uncheck this option to make sure your data import works without any errors later on.

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/database-management/importing-batch-files/index.html b/docs/database-management/importing-batch-files/index.html new file mode 100644 index 0000000..9baa62b --- /dev/null +++ b/docs/database-management/importing-batch-files/index.html @@ -0,0 +1,280 @@ + + + + + + Importing Batch Files | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Importing Batch Files

+ +

You can use the import command on the main menu to quickly import a list of objects into the database, or execute a sequence of queries. The import dialog provides you with the option to use simple sql files, along with other compressed file formats that can be directly uploaded for data import. The formats that can be used depend upon the php modules that are available on the server. If you do not find a particular compression format supported in your MyWebSQL import dialog, please contact the server administrator or try enabling the respective modules in your php installation.

+

The size of the import file is also dependent upon the maximum allowed filesize that your server can upload. This is also a server side setting and can be modified to allow the filesize of your choice that can be used for the import operation.

+

If you check the option ‘Continue even if error occurs’, then the import command will continue execution even when a query fails. You should use this option with caution. Also review your database after import containing errors.

+

The result of import operation shows a success message and affected records, or an error showing the last query that caused the error. If the above mentioned option was checked, then you will shown the number of successful and failed queries and the number of affected records.

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/database-management/index.html b/docs/database-management/index.html new file mode 100644 index 0000000..1e8c1aa --- /dev/null +++ b/docs/database-management/index.html @@ -0,0 +1,280 @@ + + + + + + Creating/Editing tables | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Creating/Editing tables

+ +

Starting with version 1.6 and above, MyWebSQL includes a wysiwyg table editor. The table editor is extremely simple to use and acts just like any other desktop database editor tool. To create a new table, open the table editor from the main menu or using the right click menu option for table ‘Create table’. To alter an existing table, use the same right click menu. Alter table option is inside the ‘More operations’ popup, since it is a command that is not used frequently on a database table.

+

Once the table editor opens, you add/edit/delete any field information in the default tab, including the field data type, primary key and other constraints. If you want to insert a field between two existing fields, simply highlight the field after which you want the new field added, and click the ‘Add field’ button.

+

Please note that minimum validation is done on the front-end while making sure invalid field information is not submitted to the server. In case invalid information is submitted, table will not be created/altered, and you can review the error messages from the server and fix the problems in the table structure. The table information remains inside the table editor whether the table creation is successful or not. This is useful and saves your time if you want to create two or more tables with slight change in structure. Simply edit the field information and the table name, and resubmit the page to create additional tables.

+

If you want to start from scratch after creating a table, use the ‘Clear field information’ button. Table information will be completely cleared and you can entered all fields from the beginning in the table editor.

+

Once you have completed creation/editing of tables, close the table editor dialog to return to the main interface and refresh the page once to reload the updated table information.

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/database-management/managing-table-indexes/index.html b/docs/database-management/managing-table-indexes/index.html new file mode 100644 index 0000000..98fb22c --- /dev/null +++ b/docs/database-management/managing-table-indexes/index.html @@ -0,0 +1,278 @@ + + + + + + Managing Table Indexes | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Managing Table Indexes

+ +

You can access the Index Manager tool by right clicking a database table, and selecting the Menu option ‘Alter Table’ -> ‘Indexes’.

+

The Index Manager interface displays the list of indexes in the table on the left side. Selecting an index displays the list of fields (columns) of the table that are part of the index.

+

Clicking the ‘Edit Index’ button enables editing of the selected index. You can Add and delete fields from the index and then click the ‘Done’ button to update the changes you have made to the index. Please note that the changes are temporary and not commited until you press the ‘Save All Changes’ button. You can add more indexes, or edit as many times as you like before you save the changes. It is however, recommended for best results to make changes to one index and save it before applying changes to other indexes.

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/database-management/managing-triggers/index.html b/docs/database-management/managing-triggers/index.html new file mode 100644 index 0000000..5aa353a --- /dev/null +++ b/docs/database-management/managing-triggers/index.html @@ -0,0 +1,277 @@ + + + + + + Managing triggers | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Managing triggers

+ +

By default, Clicking on a database trigger name in the object list shows the creating command for the triggers. Each trigger is associated with a particular event in the database. You can view the creation command for the trigger to view the events it is attached to, and its functionality.

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/database-management/managing-users-and-privileges/index.html b/docs/database-management/managing-users-and-privileges/index.html new file mode 100644 index 0000000..0abcb02 --- /dev/null +++ b/docs/database-management/managing-users-and-privileges/index.html @@ -0,0 +1,286 @@ + + + + + + Managing Users and Privileges | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Managing Users and Privileges

+ +

The ‘User Manager’ tool, which can be accessed from the main menu option ‘Tools’, can be used to add / edit / delete database users and manage their access rights on the database server.

+

Database Users

+

Each database user is identified by its user name and hostname. It is possible for one user name to have multiple host names, which allows the same user to be setup with different access rights depending on the host from where the database connection is initiated.

+

The hostnames ‘%’, ‘localhost’ and ‘127.0.0.1’ represent special hostnames. For all other hosts, you can specify either the ip address or the machine name of the host.
+For example, If you would like to create a user called ‘manager’ that should be allowed access from any host, the host should be set to ‘%’ (without the quotes).

+

The host name ‘localhost’ and ‘127.0.0.1’ represents the local machine on which the database server resides. For root / admin users, this is the default host name so that the database access by the root is restricted to the server machine for security reasons.

+

Access Rights

+

Each database user has a set of ‘Global’ rights and specific access right to each database on the server and its objects. Privilege is a complimentary word for the access rights given to a user.

+

The global privileges enable a user to access all databases with that particular privileges on the server. For example, a user with the global ‘select’ privilege will be able to perform select queries on all tables in all databases. Similarly, a user with the global privilege of ‘Super’ is able to perform everything that a root user can. For complete details of each global privilege and its meaning, please refer to the mysql documentation.

+

Database privileges are normally assigned to users created for accessing a particular database on the server. Similar to the set of global privileges, there is a set of privileges per database that can be assigned to the user. For example, a user can be granted full read access to a database, but denied access to any changes by giving the user ‘select’ privilege on that database.

+

To see the complete list and the meaning of each database privilege, please refer to the mysql documentation.

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/database-management/server-side-backups/index.html b/docs/database-management/server-side-backups/index.html new file mode 100644 index 0000000..2fd8691 --- /dev/null +++ b/docs/database-management/server-side-backups/index.html @@ -0,0 +1,278 @@ + + + + + + Server side Backups | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Server side Backups

+ +

Sometimes it is required to create a database backup on the server, without downloading it. It is normally useful before performing a database operation that might require the database to be restored to it’s previous state. You can backup your database by using the backup dialog, which can be opened from the application menu.

+

The backup files are stored on the server at that path defined in configuration. If the path is not writable or you do not have permissions, you will be informed when you open the backup dialog. Once the permissions/write access is allowed, the backups can be performed as usual.

+

The file names generated by backup can be customized by editing the ‘backup.php’ configuration file in MyWebSQL configuration folder.

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/database-management/working-with-proceduresfunctions/index.html b/docs/database-management/working-with-proceduresfunctions/index.html new file mode 100644 index 0000000..68eb8ac --- /dev/null +++ b/docs/database-management/working-with-proceduresfunctions/index.html @@ -0,0 +1,275 @@ + + + + + + Working with procedures/functions | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Working with procedures/functions

+ + +
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/database-management/working-with-tables/index.html b/docs/database-management/working-with-tables/index.html new file mode 100644 index 0000000..70dbc5a --- /dev/null +++ b/docs/database-management/working-with-tables/index.html @@ -0,0 +1,280 @@ + + + + + + Working with tables and views | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Working with tables and views

+ +

The object list on the left side of screen shows the tables and other database objects in a tree view format. You can expand/collapse the nodes to make up space to view other items in case the database contains lots of tables/views or other objects.

+

You can click on the tables and views to quickly see records from the table or view in the result pane. If the table more records than the limit specified in the configuration files, then the results pane show previous and next links, along with page numbers so that you can directly go to a particular page instead of using previous/next links.

+

You can also quickly generate selec/insert and update statements for the selected table by using the appropriate menu commands. After that, edit the generated sql in the sql editor and execute it to complete the operation.

+

You can use the right click menu to see the creation command for views also. This is particulary useful if you want to alter the view command. Simply drop the view and recreate it with the new command after modifying the original one.

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/index.html b/docs/index.html new file mode 100644 index 0000000..3dfd371 --- /dev/null +++ b/docs/index.html @@ -0,0 +1,280 @@ + + + + + + Documentation | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Documentation

+ +

Quick help content is provided with the installation package to give you a head start on using MyWebSQL. However, to fully utilize the advanced features of MyWebSQL, online documentation provides you latest information and help about features in MyWebSQL.

+

While browsing the help documentation, if you find something missing or containing errors, please inform us by email on support (at) mywebsql.net so that the documentation can be updated accordingly.

+

Please use the links on left to navigate the complete product documentation for MyWebSQL.

+

If you need more help, or have a question to ask, please post a question on our community forum.

+

Thank you for using MyWebSQL.

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/installation/advanced-configuration/index.html b/docs/installation/advanced-configuration/index.html new file mode 100644 index 0000000..715db1f --- /dev/null +++ b/docs/installation/advanced-configuration/index.html @@ -0,0 +1,314 @@ + + + + + + Advanced configuration | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Advanced configuration

+ +

Some of the rarely modified common configuration variables can also be updated inside the files in config folder of MyWebSQL installation. you will require some basic level knowledge of the php programming language if you want to edit the configuration files, or at least knowledge of data types used in computer languages.

+

Caution: Changing advanced configuration variables can cause security issues or make the application unusable, or may cause data loss if care is not taken while editing the config files. Proceed at your own risk.

+

Following list shows the name and meaning and possible values for these variables.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FilenameVariableMeaning & Possible values
blobs.php$blobTypesContains list of binary data types and their header signatures. You can add or edit the list if you would like blob column display to be customized
config.phpSECURE_LOGINEnables encryption in login page if MyWebSQL is not hosted on an https url. Enabled by default. To disable, set the value to ‘false’
constants.phpEXTERNAL_PATHDefines the external url path for the application. Do not change unless you are having problems in accessing the application from your browser
keys.php$KEY_CODESContains list of shortcut keys used in the application interface. Change the values if you would like to set your own shortcut keys.
+[ALT] key should not be used for shortcuts. It may or may not work depending on your browser and settings.
themes.php$THEMESContains list of themes that are included with the application. If you edit theme folders/names or add new themes manually, update this variable accordingly os that the changes can be updated on the interface
+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/installation/basic-configuration/index.html b/docs/installation/basic-configuration/index.html new file mode 100644 index 0000000..f36efc8 --- /dev/null +++ b/docs/installation/basic-configuration/index.html @@ -0,0 +1,278 @@ + + + + + + Basic configuration | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Basic configuration

+ +

The package is automatically configured to use the best possible values for all parameters.

+

However, if you wish to change to any of the configuration settings, you will have to edit the configuration files (in php scripting) manually. Most of the configuration directives are self explanatory in the configuration files, while some have been commented to provide detailed information. All configuration files for the package are located in ‘config’ folder inside the MyWebSQL installation folder.

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/installation/changing-authentication-mechanism/index.html b/docs/installation/changing-authentication-mechanism/index.html new file mode 100644 index 0000000..6d19328 --- /dev/null +++ b/docs/installation/changing-authentication-mechanism/index.html @@ -0,0 +1,293 @@ + + + + + + Changing authentication mechanism | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Changing authentication mechanism

+ +

MyWebSQL supports three basic and one custom method of authentication. In order to change the authentication type, please manually edit the file ‘config/auth.php’ in the installation folder.

+

Change the directive ‘AUTH_TYPE’ to either of these possible values to change your authentication mechanism.

+

These methods are described below:

+

Authentication type: NONE

+

When AUTH_TYPE is set to NONE, the application assumes the authentication is already confirmed and uses the predefined values in the other three configuration directives in auth.php, in order to connect to the database server. These directives are AUTH_SERVER, AUTH_LOGIN and AUTH_PASSWORD.

+

Please note that if either of the three configuration directives are missing on invalid, the browser will display an error page containing an error message that database connection has failed.

+

This settings is usually required for demonstration purposes, where a single database with a few tables are required to be shown to allow user to use MyWebSQL in a test environment. The same setting is used on the MyWebSQL demo site also. NEVER set AUTH_TYPE to NONE on any production server as it will expose the database completely to anyone who has access to the application url.

+

Authentication type: BASIC

+

When authentication is set to BASIC, the application uses the built-in browser user authentication dialog to ask the user for a username and password. The AUTH_SERVER directive defined in the configuration file is used to connect to that database server, using the username and password provided by the user. If authentication fails, user is repeatedly asked for the credentials until a successful connection is made to database, or the browser times out the operation. On production servers, this is the least secure method of authentication as the credentials are sent over the network with each request, and should only be used if you are having problems with other authentication methods to work.

+

Authentication type: LOGIN

+

This is the default authentication mechanism in MyWebSQL and should be used on production servers.

+

When authentication is set to LOGIN, the application shows the username and password form to the user when it is first started in the browser. Just like the BASIC authentication method. In this case, one of the following will occur:

+

If you have defined at least one server configuration in ‘config/servers.php’, then the selected server from that list is used as the database connection.

+

If no server configuration is found in ‘config/servers.php’, then the AUTH_SERVER directive defined in the ‘config/auth.php’ is used to connect to the database server defined in the same file, using the username and password provided by the user.

+

In either of the above case, if authentication fails, user is shown the login screen again with the error message.

+

Authentication type: CUSTOM

+

When authentication is set to CUSTOM, the application uses a custom made (coded) driver for authentication users. To see the details about implementing custom authentication, please view this page.

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/installation/downloading/index.html b/docs/installation/downloading/index.html new file mode 100644 index 0000000..486bb8f --- /dev/null +++ b/docs/installation/downloading/index.html @@ -0,0 +1,280 @@ + + + + + + Downloading the package | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Downloading the package

+ +

To download the latest version of MyWebSQL, use the link below to sourceforge.net website.

+

http://sourceforge.net/projects/mywebsql/files/

+

If you are using an older version of your favorite browser and the application does not work properly, try downloading older packages of the software from the sourceforge download page.

+

MyWebSQL can also be downloaded from other mirror download sites. If the above link does not work for you, try downloading from one the links provided on the Download page

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/installation/index.html b/docs/installation/index.html new file mode 100644 index 0000000..5d36dbe --- /dev/null +++ b/docs/installation/index.html @@ -0,0 +1,282 @@ + + + + + + System requirements | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

System requirements

+ +

Starting with version 3.0, MyWebSQL will run on the following versions of web browsers:

+

Internet Explorer: Version 8 or above
+FireFox: Version 4 or above
+Opera: Version 10 or above
+Safari: Version 5 or above
+Chrome: Unless you are having problems with a particular version of Chrome, it should work fine with the version you have already installed.

+

MyWebSQL can also be used on touch devices, like an iPad or iPhone. Basic support is provided for using the interface on touch devices without any accessibility issues. If you encounter a problem, please report a problem.

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/installation/system-requirements/index.html b/docs/installation/system-requirements/index.html new file mode 100644 index 0000000..5d36dbe --- /dev/null +++ b/docs/installation/system-requirements/index.html @@ -0,0 +1,282 @@ + + + + + + System requirements | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

System requirements

+ +

Starting with version 3.0, MyWebSQL will run on the following versions of web browsers:

+

Internet Explorer: Version 8 or above
+FireFox: Version 4 or above
+Opera: Version 10 or above
+Safari: Version 5 or above
+Chrome: Unless you are having problems with a particular version of Chrome, it should work fine with the version you have already installed.

+

MyWebSQL can also be used on touch devices, like an iPad or iPhone. Basic support is provided for using the interface on touch devices without any accessibility issues. If you encounter a problem, please report a problem.

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/installation/unpacking-the-archive/index.html b/docs/installation/unpacking-the-archive/index.html new file mode 100644 index 0000000..0c1847c --- /dev/null +++ b/docs/installation/unpacking-the-archive/index.html @@ -0,0 +1,279 @@ + + + + + + Unpacking the archive | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Unpacking the archive

+ +

Once you have downloaded the zip file package, simply unzip it in any folder inside your webroot. You can rename the folder from ‘mywebsql’ to any other name if you like afterextraction. However, if you are using a Linux server, try using lowercase names to avoid problems with case sensitive file/folder names.

+

Please remember that if you have modified any of the configuration files in the ‘config’ folder of a previous installation, they will be overwritten by unpacking the archive. You should backup all edited configuration files before unpacking so that you can restore your customized preferences and configuration after installation of a new version.

+

You are ready to use the application after unpacking the archive. Just point your browser to the url created by the folder, and start using the application. e.g., if you unpacked the archive with the folder name ‘mywebsql’ inside document root, your url will become http://localhost/mywebsql/

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/interface-basics/editing-records/index.html b/docs/interface-basics/editing-records/index.html new file mode 100644 index 0000000..a0585c2 --- /dev/null +++ b/docs/interface-basics/editing-records/index.html @@ -0,0 +1,280 @@ + + + + + + Editing records | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Editing records

+ +

After a successful query, you can edit the results by double clicking on any data field in the results table. This will start the column edit mode. You can now perform the usual editing operations on the cell, and once done, press enter to complete the changes. If you have more editing to perform, do so as you like. To save all the changes you have made, additional buttons appear on the navigation bar just below the results (above the SQL editors).

+

Option 1: Press the ‘Update records’ button above the query editor. This will run queries to update all the edited record one by one and the result of the operation will be shown to you in the messages pane once the operation is complete.

+

Option 2: Press the ‘Generate SQL’ button above the query editor. This will not run any queries, but will onyl generate the SQL script required to make the changes that you just performed in the interface. The generated SQL will be appended to the SQL editor, and you can review and execute it one by one or together by using the ‘Query’ or ‘Query All’ buttons.

+

Option 3: You can use the checkboxes provided in the second column of results to delete records. To select all records for deletion, select the checkbox on the header column. Clicking the ‘Delete record’ button above the query editor will run queries to delete all your selected records. You can also use the ‘Generate SQL’ button to only generate the required script to delete the selected records. The message pane will be highlighted as usual once the operation completes, showing the number of affected records.

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/interface-basics/performing-multiple-queries/index.html b/docs/interface-basics/performing-multiple-queries/index.html new file mode 100644 index 0000000..6ebe933 --- /dev/null +++ b/docs/interface-basics/performing-multiple-queries/index.html @@ -0,0 +1,278 @@ + + + + + + Performing multiple queries | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Performing multiple queries

+ +

You can also execute multiple queries at once using the SQL editor in similar fashion to the single query function. Just write down all your queries, separated by a semicolon (;) and press the ‘Query All’ button. Alternatively, you can press the hotkey ‘Ctrl+Shift+Enter’. All queries will be executed one by one in the sequence they are written, and results will be shown in the messages tab, including number of affected records and any errors that are encountered.

+

Please note that the execution of queries stops as soon as an error occurs. If you would like more advanced batch operations, please use the ‘Batch import’ feature described later in this document.

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/interface-basics/performing-queries/index.html b/docs/interface-basics/performing-queries/index.html new file mode 100644 index 0000000..38c29fe --- /dev/null +++ b/docs/interface-basics/performing-queries/index.html @@ -0,0 +1,278 @@ + + + + + + Performing queries | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Performing queries

+ +

Queries can be executed from the interface using the ‘SQL Editor’ provided on the bottom right of the screen (default layout). Starting with version 1.5 and above, there are more than one SQL editors. Each one can be used to edit queries separately, without requiring you to erase old queries in case you need them again. The editors can be switched quickly using the hotkey combination (ALT+1, ALT+2, ALT+3 …). The hotkey combination can also be modified. Refer to the configuration section in this documentation for details about changing hotkeys for the application.

+

When you have completed writing/editing your query in the editor, either click the ‘Query’ button or press the hotkey to execute the query (Ctrl+Enter). If you have partially selected text inside the SQL editor, then only that part of the text will be used for the query.

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/interface-basics/using-application-menus/index.html b/docs/interface-basics/using-application-menus/index.html new file mode 100644 index 0000000..3009e39 --- /dev/null +++ b/docs/interface-basics/using-application-menus/index.html @@ -0,0 +1,279 @@ + + + + + + Using Application Menus | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Using Application Menus

+ +

The application menus on the MyWebSQL interface act just like any other desktop application menu. The only difference is that the menu opens as soon as you hover your mouse on it, and does not wait for you to click for the menu to be opened.

+

Most of the menu options are self-explanatory. Some menu options contain ‘…’ at the end, which means that the command you are about to execute either requires additional information from you. The information can be asked in the form of a dialog or a confirmation box.

+

Please note that the confirmation boxes can be made to not show up every time, in which case the menu command will be directly executed once you click on it. (An example of it is the ‘Session -> Logout’ command)

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/interface-basics/using-context-menus/index.html b/docs/interface-basics/using-context-menus/index.html new file mode 100644 index 0000000..44e1905 --- /dev/null +++ b/docs/interface-basics/using-context-menus/index.html @@ -0,0 +1,280 @@ + + + + + + Using context menus | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Using context menus

+ +

Most areas of the MyWebSQL interface provide options to work with when they are right clicked. The most important in this regard is the ‘Database object list’ on the left of the screen, which displays the database tables, views, procedures, functions and trigger.

+

You can right click on any object in the object list and it will popup a menu with options for you to work with the selected object.
+The menu options vary depending on the object selected.

+

You can also right click on the object list panel, SQL editor panel and the header to view/hide that panel. Hiding a panel allows for more space for the results inside the browser. The size and state of the panels is preserved and the interface restores its previous state when you re-open your browser or re-login.

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/interface-basics/using-keyboard-shortcuts/index.html b/docs/interface-basics/using-keyboard-shortcuts/index.html new file mode 100644 index 0000000..f124a25 --- /dev/null +++ b/docs/interface-basics/using-keyboard-shortcuts/index.html @@ -0,0 +1,316 @@ + + + + + + Using Keyboard Shortcuts | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Using Keyboard Shortcuts

+ +

The application support quick access keyboard shortcuts for common commands. These shortcuts are defined in the file ‘keys.php’ in the config folder. You can edit the file to change the shortcuts at the top of the file to your liking, however, please remember that ALT key is a special key in many browsers and only a few combinations of keys work with ALT. If your defined hotkey uses ALT and is not working, try changing the key or the CTRL/ALT/SHIFT modifier to make it work properly.

+

Here are the default keyboard shortcuts for the application:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Ctrl + EnterExecute single query
Ctrl + Shift + EnterExecute all (multiple) queries
ALT + 1Switch focus to first SQL editor
ALT + 2Switch focus to second SQL editor
ALT + 3Switch focus to third SQL editor
Shift + DelSet current column value to NULL (while editing records)
Ctrl + Up ArrowIncrease SQL editor font size
Ctrl + Down ArrowDecrease SQL editor font size
Ctrl + Shift + DelClear SQL editor text
+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/interface-basics/working-with-the-results/index.html b/docs/interface-basics/working-with-the-results/index.html new file mode 100644 index 0000000..e5d960c --- /dev/null +++ b/docs/interface-basics/working-with-the-results/index.html @@ -0,0 +1,279 @@ + + + + + + Working with the results | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Working with the results

+ +

Once a successful select query is executed, or data is requested from a table using a menu command, the results are displayed in the result pane. Once the results are loaded, you can perform various operations on the result grid.

+

You can sort the result on screen by clicking the result header column. Click on the header again and the sorting order will be reversed. If the results span over multiple pages and a new page is requested, the sorting is reset to default, based on the query being executed.

+

You can also export the results from a query by using the main menu ‘Export results’ command. You will be shown a dialog with options that you can use to customize the output of the results export.

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/miscellaneous/adding-changing-sql-editors/index.html b/docs/miscellaneous/adding-changing-sql-editors/index.html new file mode 100644 index 0000000..dc9992e --- /dev/null +++ b/docs/miscellaneous/adding-changing-sql-editors/index.html @@ -0,0 +1,291 @@ + + + + + + Adding/changing sql editors | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Adding/changing sql editors

+ +

Starting with version 2.3, MyWebSQL uses configurable sql editors, so that you can add/edit or delete sql editors according to your requirements. The following steps describes how to change the sql editor functionality.

+
    +
  • The current editor used by MyWebSQL is defined in the ‘config/config.php’ file. Changing the value of the config directive ‘SQL_EDITORTYPE’ sets the editor be used for the application. Possible values are ‘simple’, ‘codemirror’ and ‘codemirror2’. Codemirror is default which provides syntax highlighting and is pretty stable.
  • +
  • In ‘simple’ mode there is no syntax highlighting and is the fastest mode for sql editor. If you are having problems with syntax highlighted editor, you can switch to the simple one to avoid those issues.
  • +
  • Codemirror2 is experimental and included for testing purposes. You are welcome to test it out and submit your bug reports.
  • +
+

Alternatively, you can also include a new editor for sql editing (e.g. ACE) using the following steps.

+
    +
  • create a folder inside the ‘js’ folder with the name of your editor. Put all related javascript files inside it.
  • +
  • copy any one of the existing file inside the ‘lib/editors’ folder, and save in the same folder with the name of the editor (e.g. ‘ace.php’)
  • +
  • Edit the newly created file and change the editor creation code. Refer to the editor’s documentation to complete this step.
  • +
  • Edit the config/keys.php file in MyWebSQL installation folder, and add hotkey information for the editor at the end of that file.
  • +
  • Edit the config/config.php file and change the value of the directive ‘SQL_EDITORTYPE’ to the name of the new editor
  • +
  • Now you can reload the MyWebSQL interface in browser to see your editor in action.
  • +
  • If you require add additional css files to be included for the editor to work properly, you can do so in the file you created in ‘lib/editors’ folder earlier.
  • +
+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/miscellaneous/browser-related-issues-and-workarounds/index.html b/docs/miscellaneous/browser-related-issues-and-workarounds/index.html new file mode 100644 index 0000000..7c77da4 --- /dev/null +++ b/docs/miscellaneous/browser-related-issues-and-workarounds/index.html @@ -0,0 +1,280 @@ + + + + + + Browser related issues and workarounds | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Browser related issues and workarounds

+ +

This section contains a few glitches with browsers and some workarounds in order to get the maximum out of your MyWebSQL experience.

+

Opera

+

The opera browser has a default security mechanism which makes web applications NOT be able to receive right click and context menus events. Since MyWebSQL utilizes the context menu functionality, the menus may not appear at all when using certain versions of Opera browser, while in some versions, you might see two menus: Opera’s own context menu and the MyWebSQL context menu.

+

Please refer to your version of Opera browser’s settings dialog and find the option which allows webpages to receive right click events. If successful, you should be able to use the context menus just like other browsers.

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/miscellaneous/creating-themes/index.html b/docs/miscellaneous/creating-themes/index.html new file mode 100644 index 0000000..6da4fc1 --- /dev/null +++ b/docs/miscellaneous/creating-themes/index.html @@ -0,0 +1,290 @@ + + + + + + Creating themes | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Creating themes

+ +

Themes provided with MyWebSQL are a good starting point for creating new themes. To create a new theme, follow these steps:

+
    +
  • Create a copy of any theme inside the ‘themes’ folder with a different name of choice, for example ‘my_theme’
  • +
  • Edit .css files inside the new theme folder, and search and replace the path to the theme folder with new one
    +for example, if you copied default theme to my_theme, then search the text ‘themes/default’ and replace with ‘themes/my_theme’
  • +
  • Edit the css files according to your requirements. Change the color codes and other styles to your liking
  • +
  • Optionally, edit the images inside the my_theme folder to update with icons and colors of your choice
  • +
  • Edit the config/themes.php file in MyWebSQL installation folder, and add your theme name and folder name to the list of themes
  • +
  • Reload MyWebSQL in your browser and select your new theme from the Interface menu option
  • +
+

Alternatively, you can also create a fresh theme by using the following steps.

+
    +
  • Download a theme of your choice from jQuery UI theme roller page
  • +
  • Place the theme inside the ‘themes’ folder and rename the original css file to ‘theme.css’
  • +
  • Copy remaining files for the theme
    +
    + + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/miscellaneous/feature-requests-and-bug-reports/index.html b/docs/miscellaneous/feature-requests-and-bug-reports/index.html new file mode 100644 index 0000000..af768a2 --- /dev/null +++ b/docs/miscellaneous/feature-requests-and-bug-reports/index.html @@ -0,0 +1,280 @@ + + + + + + Feature Requests and Bug reports | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Feature Requests and Bug reports

+ +

If you would like to submit a feature request of enhancement to MyWebSQL, you are more than welcome to submit it on the sourceforge.net site. If you encounter a bug or a problem while using the application, please do report the same on the sourceforge.net tracker. For your convenience, both links are shown on this page also.

+

Submit your Feature requests

+

Submit a Bug report

+

If you would like to know if your feature request was noted down, or incorporated in the application, or your filed bug has been fixed, you can see the same tracker page for the status of your feature request or bug report. You will also be emailed when the status of the bug/feature changes, if you provide your email address on the sourceforge tracker pages.

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/miscellaneous/index.html b/docs/miscellaneous/index.html new file mode 100644 index 0000000..0e50559 --- /dev/null +++ b/docs/miscellaneous/index.html @@ -0,0 +1,369 @@ + + + + + + Miscellaneous | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Miscellaneous

+ + + + +
+ + +
+ +

Browser related issues and workarounds

+ + + + + + +

This section contains a few glitches with browsers and some workarounds in order to get the maximum out of your MyWebSQL experience. Opera The opera browser has a default security mechanism which makes web applications NOT be able to receive right click and context menus events. Since MyWebSQL utilizes the context menu functionality, the menus […]

+
+ +
+ +
+ + +
+ +

Reviewing changes between versions

+ + + + + + +

You can use the following links on the project website to review changes that have taken place in the code and functionality of the application. The changelog describes both functionality updates and code level issues that are resolved in new version. Most of the code related changes are only useful to you if you are […]

+
+ +
+ +
+ + +
+ +

Feature Requests and Bug reports

+ + + + + + +

If you would like to submit a feature request of enhancement to MyWebSQL, you are more than welcome to submit it on the sourceforge.net site. If you encounter a bug or a problem while using the application, please do report the same on the sourceforge.net tracker. For your convenience, both links are shown on this […]

+
+ +
+ +
+ + +
+ +

Creating themes

+ + + + + + +

Themes provided with MyWebSQL are a good starting point for creating new themes. To create a new theme, follow these steps: Create a copy of any theme inside the ‘themes’ folder with a different name of choice, for example ‘my_theme’ Edit .css files inside the new theme folder, and search and replace the path to […]

+
+ +
+ +
+ + +
+ +

Adding/changing sql editors

+ + + + + + +

Starting with version 2.3, MyWebSQL uses configurable sql editors, so that you can add/edit or delete sql editors according to your requirements. The following steps describes how to change the sql editor functionality. The current editor used by MyWebSQL is defined in the ‘config/config.php’ file. Changing the value of the config directive ‘SQL_EDITORTYPE’ sets the […]

+
+ +
+ +
+ + +
+ + + + +
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/miscellaneous/version-changes/index.html b/docs/miscellaneous/version-changes/index.html new file mode 100644 index 0000000..412c62b --- /dev/null +++ b/docs/miscellaneous/version-changes/index.html @@ -0,0 +1,277 @@ + + + + + + Reviewing changes between versions | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Reviewing changes between versions

+ +

You can use the following links on the project website to review changes that have taken place in the code and functionality of the application. The changelog describes both functionality updates and code level issues that are resolved in new version. Most of the code related changes are only useful to you if you are a developer; otherwise, you can simply review the functionality changes and decide which version is suitable for you, before you download and install it.

+

Visit the application changelog page

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/tools-and-utilities/index.html b/docs/tools-and-utilities/index.html new file mode 100644 index 0000000..6124f84 --- /dev/null +++ b/docs/tools-and-utilities/index.html @@ -0,0 +1,277 @@ + + + + + + Process manager | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Process manager

+ +

Process manager is a simple yet effective tool for listing and managing the queries that are being executed on your mysql server. This tool is particularly helpful if you want to kill a long process that is causing the server or a particular database to slow down. Simply click on a process in the list and use the ‘Kill process’ button. Sometimes, you might get the error ‘no such process’. This is not actually an error, but it simply means that the command you wanted to kill completed its execution.

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/tools-and-utilities/process-manager/index.html b/docs/tools-and-utilities/process-manager/index.html new file mode 100644 index 0000000..6124f84 --- /dev/null +++ b/docs/tools-and-utilities/process-manager/index.html @@ -0,0 +1,277 @@ + + + + + + Process manager | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Process manager

+ +

Process manager is a simple yet effective tool for listing and managing the queries that are being executed on your mysql server. This tool is particularly helpful if you want to kill a long process that is causing the server or a particular database to slow down. Simply click on a process in the list and use the ‘Kill process’ button. Sometimes, you might get the error ‘no such process’. This is not actually an error, but it simply means that the command you wanted to kill completed its execution.

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/tools-and-utilities/repair-tables/index.html b/docs/tools-and-utilities/repair-tables/index.html new file mode 100644 index 0000000..67b8324 --- /dev/null +++ b/docs/tools-and-utilities/repair-tables/index.html @@ -0,0 +1,288 @@ + + + + + + Repair Tables | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Repair Tables

+ +

Sometimes one or more tables or indexes in the database get corrupted, resulting in problem accessing the table data or erroneous results when queries are performed on the tables. This problem can be fixed easily by using the ‘Repair Tables’ tool.

+

You can access this tool from the Tools option in the main application menu. When opened, you will be given the choice to select all or one or more tables that you would like to be checked for consistencies. Once you have selected the tables, you can perform one of the following operations on these tables.

+

Analyze

+

This option analyzes the table and shows any errors/optimizations that might be available for the table.

+

Check

+

This option checks the table for errors and reports if any errors are found. Does not perform any repair in case of errors.

+

Optimize

+

This option optimizes the table space and removes previously deleted data completely from the table space, while also optimizing indexes for best results.

+

Repair

+

This option tries to scan and performs repairs on the selected tables. If your query results contain errors you are unable to access a table when querying, this is the recommended option.

+

When you press the Submit button, the selected tables will be checked and the output of the commands will be shown in table format for each table.
+The Status column against each table name displays ‘success’ in case everything is fine, otherwise a note or an error will be displayed in the Message column.

+

You can refer to the mysql documentation for details of the notes / errors and possible solutions for the problems.

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/tools-and-utilities/server-variables/index.html b/docs/tools-and-utilities/server-variables/index.html new file mode 100644 index 0000000..549cf86 --- /dev/null +++ b/docs/tools-and-utilities/server-variables/index.html @@ -0,0 +1,279 @@ + + + + + + Server variables | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Server variables

+ +

The server variable module displays mysql server variables for the current connection.

+

You can use the sorting feature to quickly sort and find the information related to any variable you are looking for.
+The server variable tool is available in the main menu option ‘information’.

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/troubleshooting-guide/blank-screen-login-issues/index.html b/docs/troubleshooting-guide/blank-screen-login-issues/index.html new file mode 100644 index 0000000..24a56cc --- /dev/null +++ b/docs/troubleshooting-guide/blank-screen-login-issues/index.html @@ -0,0 +1,280 @@ + + + + + + Blank screen / login issues | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Blank screen / login issues

+ +

If everything works fine and you can see the MyWebSQL login prompt in your browser, then you are well on your way to a smooth user experience. However, sometimes you might get a blank screen, or strange display in the browser instead of the login prompt. Here are few things you can try to sort out this problem:

+
    +
  • Delete cookies for the MyWebSQL url/path in your browser (specially if you have upgraded from a previous version), then try reloading the page to see if you can see the login screen.
  • +
  • [Only for version 3.4 and below] Delete .htaccess file from the root of MyWebSQL installation folder. If you can successfully use MyWebSQL, it means there is some configuration problem with your web server (usually apache). Refer to the web server manual for more information.
  • +
+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/troubleshooting-guide/garbage-output/index.html b/docs/troubleshooting-guide/garbage-output/index.html new file mode 100644 index 0000000..d671a7b --- /dev/null +++ b/docs/troubleshooting-guide/garbage-output/index.html @@ -0,0 +1,286 @@ + + + + + + Garbage output on first run | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Garbage output on first run

+ +

Some version of PHP (e.g. 5.2.11) have a buggy zlib library that causes output of the scripts to be garbled. Alternatively, other compression related issues may cause MyWebSQL to output junk characters on browser screens. If you encounter such problem, try one of the following:

+
    +
  • Remove the .htaccess file completely from root installation folder of MyWebSQL
  • +
  • If the above does not work, put the .htaccess file again at the same place and edit it, changing the value of the first line in the file from
    +php_value zlib.output_compression On
    +to
    +php_value zlib.output_compression Off
    +
    +Reload your browser window to see if the change works. If your hosting server has caching enabled, then you may have to wait 2-5 minutes before your changes are updated online, so you can retry using MyWebSQL again after few minutes. +
  • +
+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/troubleshooting-guide/general-issues/index.html b/docs/troubleshooting-guide/general-issues/index.html new file mode 100644 index 0000000..e4f4176 --- /dev/null +++ b/docs/troubleshooting-guide/general-issues/index.html @@ -0,0 +1,280 @@ + + + + + + General issues | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

General issues

+ +

Before you use the troubleshooting guide, please try following the tips below to make sure the download/installation is in proper start before continuing further.

+
    +
  • Download the latest version of MyWebSQL from either MyWebSQL homepage (http://mywebsql.net) or from Sourceforge.net (https://sourceforge.net/projects/mywebsql)
  • +
  • Make sure there are no errors in uncompressing the package. If you get any warnings/notices, then you probably have a corrupt download. Try re-downloading the file from sources mentioned above.
  • +
+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/troubleshooting-guide/index.html b/docs/troubleshooting-guide/index.html new file mode 100644 index 0000000..68ec888 --- /dev/null +++ b/docs/troubleshooting-guide/index.html @@ -0,0 +1,278 @@ + + + + + + Troubleshooting Guide | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Troubleshooting Guide

+ +

This section includes some common scenarios for troubleshooting and configuring MyWebSQL.

+

In case of Internal server errors, it is always a good idea to make sure you have error log settings configured in your PHP installation, and correctly defined the error log path in the php.ini file. If you see a blank page or internal server error, you should open the php error log and see the errors that come up. This usually gives you a better idea of how to fix the problem.

+

If you are unable to figure out the error message, you can copy and send them to us on the bug report page, along with the contents of the error log. We will try our best to provide a quick solution to you as soon as we can.

+
+ + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/docs/troubleshooting-guide/server-errors/index.html b/docs/troubleshooting-guide/server-errors/index.html new file mode 100644 index 0000000..81533c0 --- /dev/null +++ b/docs/troubleshooting-guide/server-errors/index.html @@ -0,0 +1,285 @@ + + + + + + Server Errors | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+ + + + +
+ +

Server Errors

+ +

Some server packages and a few online hosting providers have a restricted php environment, or missing extensions/features that sometimes cause MyWebSQL to show internal server error when you try to run it in your browser. If you are having such problems, you can try the following fixes to get MyWebSQL working:

+
    +
  • Make sure you have the “bcmath” extension installed. It is normally a part of PHP installation but some linux package managers install PHP without this extension.
  • +
  • [For versions 3.4 and below only] Edit auth.php file in the config folder and find the line that reads: +
    SECURE_LOGIN=TRUE
    +

    +Edit and change the line to:

    +
    SECURE_LOGIN=FALSE
    +

    Now try accessing the url again to see if the fix works for you.
    +If the fix works, it usually means you are missing the “gmp” and/or “openssl” extensions in your php installation. You should try and enable those extensions and set the SECURE_LOGIN flag to true, as it usually protects from plain password submission hacks over the web.

  • +
    + + +
+
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/downloads/changes/changelog-for-version-3-4/index.html b/downloads/changes/changelog-for-version-3-4/index.html new file mode 100644 index 0000000..8105974 --- /dev/null +++ b/downloads/changes/changelog-for-version-3-4/index.html @@ -0,0 +1,292 @@ + + + + + changelog for version 3.4 | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

changelog for version 3.4

+

Updates:

+
    +
  • Connection details for custom database servers can be provided on login screen.
    + This option is disabled by default. See link for more details
  • +
  • aMore options in export dialog to fine tune the format of generated SQL script
  • +
  • Export dialog options are enabled/disabled based on selection of export data for best results
  • +
  • Database export option now available for PostgreSQL databases also (limited to table data only)
  • +
  • Secure login is enabled/disable automatically based on PHP configuration
  • +
+

Bug Fixes:

+
    +
  • Shift+space key would indent the SQL editor, causing annoyance for most users
  • +
  • Server information tab displayed MySQL server label regardless of database type
  • +
  • Server information tab displayed MySQL server label regardless of database type
  • +
  • Pgsql tables showed no result even though the query successfully returned valid result set
  • +
  • Pgsql users other than ‘postgres’ unable to login to MyWebSQL
  • +
+

General:

+
    +
  • Exported query results contain the actual SQL statement for reference purposes
  • +
  • install.php script now properly identifies and displays issue in PHP installation for running MyWebSQL
  • +
+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/downloads/changes/changelogversion-3-7/index.html b/downloads/changes/changelogversion-3-7/index.html new file mode 100644 index 0000000..72595d0 --- /dev/null +++ b/downloads/changes/changelogversion-3-7/index.html @@ -0,0 +1,284 @@ + + + + + changelog for version 3.7 | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

changelog for version 3.7

+

Bugfixes:

+
    +
  • Problems with php running as FCGi in nginx server
  • +
  • Corrupt output on some php configuration, mainly due to incompatible settings
  • +
  • List of table not displayed for PostgreSQL databases when importing a single table data from csv files
  • +
  • On some php configurations, database selection did not work due to cookies and request variables being merged
  • +
  • Insert queries generated for some Pgsql databases failed to execute due to syntax errors
  • +
  • Fixed data table import bug with pgsql databases, generating incorrect queries with table namespaces
  • +
  • Fixed sorting and pagination issues with query data (thanks to Peng Xiao for valuable feedback)
  • +
+

General:

+
    +
  • Added compatibility to PHP 5.2 after user requests
  • +
+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/downloads/changes/index.html b/downloads/changes/index.html new file mode 100644 index 0000000..2f77bb4 --- /dev/null +++ b/downloads/changes/index.html @@ -0,0 +1,388 @@ + + + + + Change Log | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

Change Log

+

Please click the version number links to view the changelog for that particular series.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
VersionRelease Date
Version 3.72016-10-02
Version 3.62014-10-24
Version 3.52014-10-03
Version 3.42014-04-23
Version 3.32013-05-05
Version 3.22013-01-01
Version 3.12012-11-28
Version 3.02012-10-02
Version 2.92012-05-11
Version 2.82012-03-23
Version 2.7.62012-02-17
Version 2.7.52012-02-08
Version 2.72011-11-27
Version 2.52011-10-30
Version 2.32011-09-24
Version 2.22011-07-18
Version 2.12011-05-22
Version 2.02011-05-04
Version 1.82011-03-27
Version 1.72011-03-13
Version 1.62011-02-20
Version 1.52011-02-02
Version 1.42010-10-14
Version 1.32010-09-26
version 1.22010-08-08
version 1.02010-04-11
Pre-1.0 Releases2008-11-08 till 2009-03-29
+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/downloads/changes/pre-1-0-releases/index.html b/downloads/changes/pre-1-0-releases/index.html new file mode 100644 index 0000000..13e29e8 --- /dev/null +++ b/downloads/changes/pre-1-0-releases/index.html @@ -0,0 +1,316 @@ + + + + + Changelog for Pre-1.0 releases | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

Changelog for Pre-1.0 releases

+

Version 0.5

+
    +
  • added support for database triggers
  • +
  • added new tool: process manager for viewing and killing processes
  • +
  • added new option: view mysql server variables
  • +
  • added new export type: plain text (CSV style)
  • +
  • bugfixes in export result functionality
  • +
  • better handling of NULL values in interface and queries
  • +
  • application now uses mysqli extension when available. This can be turned off/on from configuration file.
  • +
  • more status information available about the mysql connection
  • +
  • more browser compatibility fixes
  • +
+

Version 0.4

+
    +
  • More browser compatibility fixes in drag drop, resizing page elements etc
  • +
  • Some UI enhancements (eyecandy)
  • +
  • Fixed javascript source path in export screens, causing exports to fail
  • +
  • Query results performance is increased by 30-40%, by eliminating some redundant and extra DHTML stuff
  • +
+

Version 0.3

+
    +
  • fixed query editor getSqlCode() bug in firefox (came up in ver 0.2 only)
  • +
  • fixed object tree: 1. menu going out of display bounds. 2. menu not hiding on clicks
  • +
  • record editing, deletion now works properly on firefox and opera also ! (checked in firefox 3.0.5)
  • +
  • fixed a bug in determining if a resultset contained NULL values or empty field
  • +
  • added more options for database export command (include create table/drop table, select tables to export)
  • +
  • other miscellaneous cross browser issues
  • +
  • running batch queries using interface is now possible (multiple results display still NOT supported)
  • +
  • code folder cleaned up. Moved images,css and library files to separate folders.
  • +
+

Version 0.2

+
    +
  • Added options to import/export results and database/tables as sql batch scripts
  • +
  • added config item: TRACE_FILEPATH. Use it if you like to change the error log path for the application
  • +
  • db connection is no longer limited to a single table in the database
  • +
  • cookies are now specific to url for mywebsql and no longer accessible on other parts of domain
  • +
  • pressing tab in the sql editor now moves focus to query button
  • +
  • connection oriented configuration bugs fixed
  • +
  • sql editor is now resizable on IE
  • +
  • minor annoying bugfixes on the UI
  • +
+

Version 0.1

+
    +
  • First public release.
  • +
+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/downloads/changes/version-1-0/index.html b/downloads/changes/version-1-0/index.html new file mode 100644 index 0000000..4665671 --- /dev/null +++ b/downloads/changes/version-1-0/index.html @@ -0,0 +1,304 @@ + + + + + Changelog for version 1.0 | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

Changelog for version 1.0

+

Version 1.0.2

+
    +
  • fixed bug in record editing, if < or > was used in the edited field
  • +
  • Updated codemirror editor, fixes IE8 cursor hopping and firefox issues with cut/paste
  • +
  • updated some javascript code to improve post query browser update speed
  • +
+

Version 1.0.1

+
    +
  • fixed compatibility problems with php 5.3.0 and above
  • +
  • fixed problem with edit field in resultset causing html code to be overwritten
  • +
  • updated jquery to latest version. Should be a performance boost on in user interface on all browsers
  • +
  • fixed minor user interface issues with Chrome browser
  • +
+

Version 1.0 final

+
    +
  • added support for mysql4 databases (thanks to Ally Shayan for the work and testing)
  • +
  • fixed problem with edit field in resultset in beta code
  • +
  • fixed session expiration code to properly inform if session gets expired
  • +
  • added right clikc options in history tab for copying/clearing command history
  • +
  • added menu item to create new database
  • +
  • added primary key/unique key icons to results
  • +
  • help contents cleaned up a bit, credits section updated
  • +
  • cleaned up commented out code which was left for reference
  • +
  • minor fixes to GUI and css
  • +
+

Version 1.0 beta

+
    +
  • Complete rewrite of the user interface using jquery for cross browser compatibility and ease of use
  • +
  • Export results now also viewable, alongwith option to download
  • +
  • Themes support (there is however, only one theme included in this release, others are work in progress)
  • +
  • Minor bugfixes to various existing features
  • +
  • Many under the hood optimizations for better performance
  • +
+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/downloads/changes/version-1-2/index.html b/downloads/changes/version-1-2/index.html new file mode 100644 index 0000000..629140e --- /dev/null +++ b/downloads/changes/version-1-2/index.html @@ -0,0 +1,295 @@ + + + + + Changelog for version 1.2 | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

Changelog for version 1.2

+

version 1.2 final

+
    +
  • fix: editing keys were not properly handled on some browsers
  • +
  • fix favicon missing on splash page
  • +
  • update: object tree fonts and padding fixed
  • +
+

Version 1.2 beta

+
    +
  • new: added multiple authentication types to setup MyWebSQL for multiple databases or users on one server easily
  • +
  • please read the documentation on how to update previous version here http://mywebsql.net/upgrading
  • +
  • new: last executed query reloads in sql editor after page reload
  • +
  • new: sql editor can now be set to autohide like object tree
  • +
  • update: codemirror updated to version 0.8
  • +
  • update: jquery layout updated to latest version
  • +
  • fix: if update/delete query contained a few special characters, the output would be wrong
  • +
  • fix: table highlight would not work when doing queries
  • +
  • fix: sql editor resizing caused wrong text selection in chrome and caused problem in resizing in other browsers
  • +
  • fix: tables with ‘spaces’ in their names would not be selectable in the tree
  • +
  • code cleanup: code execution framework simplified. all additional modules can now reside in one folder
  • +
  • code cleanup: Removed all php warnings and notices from code
  • +
  • code cleanup: moved all javascripts to one folder (including codemirror). Improved checks in cache.php to maximize security with user provided script and css paths
  • +
  • code cleanup: Most of the code is now xhtml 1.0 compliant
  • +
  • lots of other minor improvements
  • +
+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/downloads/changes/version-1-3-5/index.html b/downloads/changes/version-1-3-5/index.html new file mode 100644 index 0000000..79b3893 --- /dev/null +++ b/downloads/changes/version-1-3-5/index.html @@ -0,0 +1,280 @@ + + + + + changelog for version 1.3.5 | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

changelog for version 1.3.5

+
    +
  • bugfix: export table did not add fieldnames to the insert query if the option was checked
  • +
  • bugfix: blob display dialog did not work when the blob type was changed
  • +
  • bugfix: character encoding was not properly displayed in result set
  • +
  • update: Enhanced record editing now works in all browsers
  • +
  • update: blob/text column display in result set improved
  • +
  • update: fixed extra request being sent to server in some cases and caused delay in popup dialogs
  • +
  • added ‘Request a feature’ button to the main toolbar
  • +
+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/downloads/changes/version-1-3/index.html b/downloads/changes/version-1-3/index.html new file mode 100644 index 0000000..16252a5 --- /dev/null +++ b/downloads/changes/version-1-3/index.html @@ -0,0 +1,289 @@ + + + + + changelog for version 1.3 | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

changelog for version 1.3

+
    +
  • Improved import batch query module:
    +Now works with bzip and gzip files also along with plain text files
    +Allows continuing execution in case a query fails
    +Logs more information to the user before and after import
  • +
  • Improved export module:
    +Allows exporting either database structure,data or both, a single table or the current result set
    +Allows better selection of objects to be exported (including views, procedures, functions and triggers)
    +Properly creates insert command for all types of fields (bug fixed with numeric values)
    +Exports table/results data as insert statement, xml, xhtml or plaintext (csv format)
  • +
  • user interface: popup dialog user interface, resizer bars display improved, minor font adjustments
  • +
  • user interface: database object creation now also works in richedit mode
  • +
  • user interface: In Firefox, record editing now supports Tab/Shift+Tab/Up/Down Keys to navigate between result fields
  • +
  • update: help content and pages revised and updated help page to reflect changes in latest versions
  • +
  • bugfix: import and export modules submit buttons were broken due to javascript errors on some browsers
  • +
  • bugfix: unique keys in tables were not properly used while creating edit queries
  • +
  • bugfix: fixed minor compatibility issues with Internet Explorer 8
  • +
+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/downloads/changes/version-1-4/index.html b/downloads/changes/version-1-4/index.html new file mode 100644 index 0000000..49df715 --- /dev/null +++ b/downloads/changes/version-1-4/index.html @@ -0,0 +1,283 @@ + + + + + changelog for version 1.4 | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

changelog for version 1.4

+
    +
  • added: two more themes for the interface (light (grayish and simple) and dark (a bit colourful but darkish theme))
  • +
  • added: hotkeys for query/query all execution (customizable through editing key config file, see help for details)
  • +
  • added: pagination support to results when viewing table data (requested by Richard Bondi)
  • +
  • update: when a ddl is executed, additional link allows the page to be refreshed so that database objects list is updated to reflect the changes
  • +
  • update: confirmation dialogs allow remembering the choice on first confirmation and can be turned on/off from options
  • +
  • update: help content updated to reflect new changes to the application
  • +
  • interface changes: default interface theme cleaned up a bit to be more spacious to allow room for sql editor and results
  • +
  • interface changes: record statusbar moved below results, saving some space for the overall application layout
  • +
  • code update: refactored session and preferences related code for better management
  • +
  • code update: added encryption to sensitive values in session data, to increase security on shared server
  • +
+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/downloads/changes/version-1-5/index.html b/downloads/changes/version-1-5/index.html new file mode 100644 index 0000000..aac8de6 --- /dev/null +++ b/downloads/changes/version-1-5/index.html @@ -0,0 +1,295 @@ + + + + + changelog for version 1.5 | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

changelog for version 1.5

+
    +
  • added: 2 more sql editors, each of the three editors now accessible through hotkeys
  • +
  • bugfix: sql output for certain timestamp fields generated incorrectly during export
  • +
  • bugfix: minor issue when last query is not select and results are exported
  • +
  • added: syntax highlighting for all queries displayed on the interface
  • +
  • added: logout option in the interface (required and requested)
  • +
  • added: default information displayed for tables and other db objects when left-clicked
  • +
  • update: line numbers enabled for sql editor
  • +
  • update: detailed online documentation now up and running. Quick help contents bundled with the package
  • +
  • update: edit/delete queries now execute directly instead of being generated inside sql editor (requested)
  • +
  • update main menu re-organized for ease of use and more options added
  • +
  • update: sql editor now improved than earlier versions with better syntax highlighting
  • +
  • optimizations: removed unused code files from project, and configuration files re-organized slightly
  • +
  • added minified versions of scripts for speeding up page loading and client side performance
  • +
  • converted icons and small images to sprites
  • +
  • bugfix: NULL values were not being sorted if a column contained mix values
  • +
  • bugfix: where clause generated for some specialized field names caused error in query
  • +
  • bugfix: changing themes sometimes caused javascript warning shown before reloading the page
  • +
  • update: result display slightly mproved when it contains binary data
  • +
  • added: Generate sql option in the interface during record editing. Generates sql for user actions instead of
    +directly executing queries
  • +
  • update: Internet explorer related issus fixed with some elements of interface
  • +
  • lots of other minor improvements and fixes
  • +
+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/downloads/changes/version-1-6/index.html b/downloads/changes/version-1-6/index.html new file mode 100644 index 0000000..c31e1f9 --- /dev/null +++ b/downloads/changes/version-1-6/index.html @@ -0,0 +1,283 @@ + + + + + changelog for version 1.6 | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

changelog for version 1.6

+
    +
  • added: WYSIWYG table creator/editor.
  • +
  • added: right click menu for databases in object tree
  • +
  • added: right click menus for panels, and main menu options to access the same commands
  • +
  • added: more operations supported for database object through right click menus (alter, drop, rename, truncate)
  • +
  • bugfix: minor display issue with first loading when authentication type was set to NONE
  • +
  • bugfix: record editing shortcut keys improper behaviour after sorting results
  • +
  • fix: resizing popup dialogs was causing erratic mouse behavoiur and improperly resizing popups
  • +
  • update: quick start tutorials added to help menu for new users
  • +
  • update: popup screens now use theme based styles instead of default html stlying
  • +
  • update: source code cleaned up and formatted through out the application in uniform style
  • +
  • other minor improvements and fixes
  • +
+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/downloads/changes/version-1-7/index.html b/downloads/changes/version-1-7/index.html new file mode 100644 index 0000000..0d1a3ae --- /dev/null +++ b/downloads/changes/version-1-7/index.html @@ -0,0 +1,279 @@ + + + + + changelog for version 1.7 | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

changelog for version 1.7

+
    +
  • update: mysql4 support revised. Objects/elements not supported in mysql4 do not appear in the interface
  • +
  • update: Internet Explorer 9 related compatibility issues fixed
  • +
  • added: record editing allows adding new records in wysiwyg mode, while allowing editing of existing ones
  • +
  • added: change engine type module for quickly changing the table type only without changing structure
  • +
  • update: object list now refreshes automatically when database is modified
  • +
  • bugfix: history right click menu copy command was not working properly
  • +
  • update: more commands available for tables and other db objects through right click menus
  • +
+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/downloads/changes/version-1-8/index.html b/downloads/changes/version-1-8/index.html new file mode 100644 index 0000000..3fc876a --- /dev/null +++ b/downloads/changes/version-1-8/index.html @@ -0,0 +1,284 @@ + + + + + changelog for version 1.8 | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

changelog for version 1.8

+
    +
  • added: functionality to manage mysql5 ‘event’ objects
  • +
  • added etags in scripts and css to save bandwidth and improve browser caching
  • +
  • added: encryption based security in login screen to disable plain text login information sent over the wire
  • +

    enabled automatically if MyWebSQL is not hosted on https url +

  • added: new interface icons for object viewer
  • +
  • update: object tree list saves it expanded/collapsed state after refresh on query execution
  • +
  • update: existings themes/styles brushed up and cleaned and all css formatted properly (dark theme look revised)
  • +
  • update: page header and logo can now be make to hide to provide additional space in the browser for results and sql editor
    +
    (right click header area to show context menu)
  • +
  • update: page and docking window layout is now saved and restored on next visit
  • +
  • updated links in menu to new bugs and feature requests pages on mywebsql.net site
  • +
  • updated to latest jquery and ui libraries
  • +
  • other minor updates/fixes
  • +
    + +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/downloads/changes/version-2-0/index.html b/downloads/changes/version-2-0/index.html new file mode 100644 index 0000000..19385fe --- /dev/null +++ b/downloads/changes/version-2-0/index.html @@ -0,0 +1,315 @@ + + + + + changelog for version 2.0 | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

changelog for version 2.0

+

Version 2.0 Final Release

+
    +
  • Index manager button text changed to be more easier to understand
  • +
  • Table editor buttons display and hide properly based on selected tab
  • +
  • Language files added for various languages (Google translated for the time being)
  • +
  • Some IE related javascript issues fixed by including json2 script for IE7 browsers
  • +

    Bugs Fixed:

    +
  • user manager privileges not flushed on some actions
  • +
  • Loading screen for incompatible browsers fixed
  • +
  • session expiry now handled properly and message is displayed to user for reloading the page
  • +
  • creation of new table did not refresh the object list automatically
  • +
  • when text field editor closes, it leaves incorrect information about the field in table cell
  • +
  • text field editor placement was out of screen on some scenarios
  • +
  • table editor incorrectly accepts field length for types that do not require length
    + also fixed field length option for all field types
  • +
  • table editor did not properly update primary key index in some cases
  • +
  • table editor added extra command in alter statement for table engine type and character set
  • +
  • table describe command did not show all text in the results (field type was obscured)
  • +
  • blob edit dialog did not report error when blob editing failed (due to file upload error)
  • +
  • Humanity, paper, aero theme styles updated
  • +
  • quick start tutorials and related script issues fixed
  • +
  • update language files and missing text in modules for translation
  • +
+

2.0 Beta

+
    +
  • new: Interface is now completely multilingual. All modules updated to separate code and content
  • +
  • new: Tool to manage table indexes
  • +
  • new: Tool to manager database users and privileges (with special thanks to Ovais Tariq)
  • +
  • new: Tool to analyze and/or repair database tables
  • +
  • new: application and rightclick menu items contain icons for better visual cue
  • +
  • new: text field inplace editing mechanism is now improved and simplified
  • +
  • new: blob field inplace editing mechanism is now implemented for file uploads in blob fields
  • +
  • new: 3 new themes (including an ‘Aero’ style transparent theme)
  • +
  • new: brand new splash and login screen
  • +
  • new: module to quick check for updates from the interface for new versions of software from website
  • +
  • update: session security enhanced further by encrypting more insecure session variables
  • +
  • update: export modules now includes mysql events to be exported
  • +
  • update: history now allows copying a single selected query as well as all queries to clipboard by right click menu
  • +
  • update: slightly improved syntax highlighting for sql editor
  • +
  • update: changing database does not refresh the whole page, only object list
    + saves extra loading time and preserves other page elements (queries etc)
  • +
  • update: resizing handles are larger when the panel is docked, to allow easier to be used (feedback from jquery layout group)
  • +
  • update: Html class functions made static. object instantiation is not required anymore
  • +
  • lots of other minor tweaks and improvements
  • +
+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/downloads/changes/version-2-1/index.html b/downloads/changes/version-2-1/index.html new file mode 100644 index 0000000..5553ece --- /dev/null +++ b/downloads/changes/version-2-1/index.html @@ -0,0 +1,287 @@ + + + + + changelog for version 2.1 | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

changelog for version 2.1

+

Version 2.1

+
    +
  • User manager now allows removing the user password (previously only allowed changing passwords)
  • +
  • Search tool to search for text in database with selected options
  • +

    Bugs Fixed:

    +
  • Header menu did not appear properly after re-opening browser if header was hidden
  • +
  • index manager sometimes failed to add index if there was initially no index in a table
  • +
  • index manager script error when adding an index to a table which had no index
  • +
  • index manager generated error in query for adding a primary key to table without a primary key
  • +
  • utf8 text data sometimes did not properly insert/update for database with character set other than utf8
  • +
  • a rare but annoying javascript error specially in ie (and sometimes in other browsers) immediately after page load
  • +
  • fixed edit toolbar and text field editor positioning issues in chrome and IE 7,8
  • +

    Updates:

    +
  • automatic detection of user’s language based on browser settings
  • +
  • Updated to latest jquery ui library
  • +
  • improved loading time for the interface by delaying some of the interface initialization for later (popups etc)
  • +
+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/downloads/changes/version-2-2/index.html b/downloads/changes/version-2-2/index.html new file mode 100644 index 0000000..913a2dd --- /dev/null +++ b/downloads/changes/version-2-2/index.html @@ -0,0 +1,283 @@ + + + + + changelog for version 2.2 | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

changelog for version 2.2

+
    +
  • Added option to select mysql server at login time.
    +Documentation
  • +
  • Added session variable options using the ‘SET @…’ command.
    +Documentation
  • +
  • Added right click option to copy a table/view/procedure/view with different name
  • +
  • fix: generated erroneous query if more than one table was created using set/enum fields
  • +
  • fix: did not generate default value in sql for number fields
  • +
  • newly created database name showed up at the end of database list (instead at the right place)
  • +
  • import failed for sql dump generated by MyWebSQL in some scenarios
  • +
  • drop object confirmation asked every time despite user’s preferences to not ask every time
  • +

    text field data is shown by default in grid view instead of info text, if it is less than 80 characters or less (configurable) +

+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/downloads/changes/version-2-3/index.html b/downloads/changes/version-2-3/index.html new file mode 100644 index 0000000..7d3b7d0 --- /dev/null +++ b/downloads/changes/version-2-3/index.html @@ -0,0 +1,279 @@ + + + + + changelog for version 2.3 | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

changelog for version 2.3

+
    +
  • Interface dialogs are now mostly modeless. You can open and use more than one tools at the same time, minimize dialogs with lengthy processing and continue work on the main interface
  • +
  • Add new sql editors to the interface and edit existing sql editors functionality more easily
    +Documentation
  • +
  • Added codemirror2 as alternate sql editor (experimental)
  • +
  • fix: plain text query editor hotkeys did not work properly (default syntax highlighted editor worked fine)
  • +
  • fix: plain text query editor text not returned from current editor (javascript issue)
  • +
  • Fixed some warnings in code
  • +
+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/downloads/changes/version-2-5/index.html b/downloads/changes/version-2-5/index.html new file mode 100644 index 0000000..bcd4f20 --- /dev/null +++ b/downloads/changes/version-2-5/index.html @@ -0,0 +1,278 @@ + + + + + changelog for version 2.5 | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

changelog for version 2.5

+
    +
  • Support for managing SQLite databases. Includes mostly used functionality like creating databases/tables and querying tables. Import/export and GUI based record editing not available (mainly due to restrictions with sqlite driver support)
  • +
  • imporved server configuration settings. You can now explicitly specify the mysql driver to us with a particular connection (e.g. mysqli, mysql5 or legacy driver etc)
  • +
  • Added codemirror2 as alternate sql editor (experimental)
  • +
  • Updated encryption library for PHP 5.3. Much faster login screen, but falls back to default if using older version
    + of PHP or missing encryption extensions (requires openssl+gmp extensions)
  • +
  • Updated french language translation (with special thanks to Sylvain Chauveau)
  • +
+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/downloads/changes/version-2-7-5/index.html b/downloads/changes/version-2-7-5/index.html new file mode 100644 index 0000000..cd7b127 --- /dev/null +++ b/downloads/changes/version-2-7-5/index.html @@ -0,0 +1,286 @@ + + + + + changelog for version 2.7.5 | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

changelog for version 2.7.5

+
    +
  • default interface language can now be set in configuration.
  • +
  • installation package now contains all files inside a root folder (requested by some users).
  • +
+

Bug Fixes:

+
    +
  • usability issues when authentication type was set to NONE
  • +
  • usability issues with IIS+fastCGI servers
  • +
  • usability issues when using some specific server configurations of php/apache
  • +
  • record editing and export output problems when mysql5 driver was used instead of mysqli
  • +
  • other minor bugfixes and improvements
  • +
+

Miscellaneous:

+
    +
  • Added troubleshooting guide in online documentation for fixing installation/configuration related issues
  • +
+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/downloads/changes/version-2-7-6/index.html b/downloads/changes/version-2-7-6/index.html new file mode 100644 index 0000000..6e8d9ad --- /dev/null +++ b/downloads/changes/version-2-7-6/index.html @@ -0,0 +1,277 @@ + + + + + changelog for version 2.7.6 | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

changelog for version 2.7.6

+
    +
  • Updated CodeMirror2 to newest version, containing better mysql syntax highlighting and performance.
  • +
+

Bug Fixes:

+
    +
  • Login / blank screen issues with some server configurations.
  • +
+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/downloads/changes/version-2-7/index.html b/downloads/changes/version-2-7/index.html new file mode 100644 index 0000000..40ac5df --- /dev/null +++ b/downloads/changes/version-2-7/index.html @@ -0,0 +1,297 @@ + + + + + changelog for version 2.7 | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

changelog for version 2.7

+
    +
  • added ‘copy record’ functionality in result grid. Select one or more records and use the copy function to quickly create new records with same data.
  • +
  • added CSV(Excel) and YAML formats in table/results export module. Code for export functionality refactored to allow creation of more export drivers easily.
  • +
  • Exporting large amount of data does not fail with memory limit errors by php
    + (still requires php timeout settings to be large enough, or unlimited so that all data can be processed)
  • +
  • results editor now automatically scrolls to right position in results to keep current edited field visible
    + also basic field information is shown while editing the results
  • +
  • improved software update check option which does not block user interface. Also update for new version is checked every Monday.
    + update settings can be changed by modifying config/updates.php file
  • +
  • process manager allows more than one process to kill in one request
  • +
  • added main menu interface option to select the type of sql editor at runtime
    + (also fixed some issues with CodeMirror2 implementation, but it is still experimental)
  • +
  • Speed improvements in some areas of functionality
  • +
+

Bug Fixes:

+
    +
  • Loading and minor theme issues with Internet Explorer 8 browser
  • +
  • result set scrolling issues due to recent updates to ui libraries
  • +
  • result set textarea editor setting values empty in some scenarios
  • +
  • some minor structure changes to table structure using table editor did not get updated
  • +
  • some other small bugfixes reported by users
  • +
+

General:

+
    +
  • Default theme revised and cleaned up a bit as per user requests (minor fixes to other themes also)
  • +
  • more code cleanup and configuration files
  • +
+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/downloads/changes/version-2-8/index.html b/downloads/changes/version-2-8/index.html new file mode 100644 index 0000000..744069b --- /dev/null +++ b/downloads/changes/version-2-8/index.html @@ -0,0 +1,290 @@ + + + + + changelog for version 2.8 | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

changelog for version 2.8

+
    +
  • Added data import option from CSV files into tables
  • +
  • Added batch operation module. Allows performing various operations on multiple objects in database easily
    + (add/remove table prefixes, drop objects, generate sql commands for selected objects etc.)
  • +
  • Added quick search in information display tables for quickly filtering result data
  • +
  • Improved SQLite support
  • +
  • Automatically refresh object list after completing batch imports (requested by umairj)
  • +
  • suppressed warning in error log on some PHP versions (requested by Danny)
  • +
  • Language names appear in their own language in menus for ease of understanding
  • +
+

Bug Fixes:

+
    +
  • Lots of issues fixed in SQLite database handling
  • +
  • where clause generated query error in updates if it contained text fields
  • +
  • many corrections in multilingual strings in the languages
  • +
+

General:

+
    +
  • Updated jquery/codemirror2 to latest version
  • +
+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/downloads/changes/version-2-9/index.html b/downloads/changes/version-2-9/index.html new file mode 100644 index 0000000..e8ede19 --- /dev/null +++ b/downloads/changes/version-2-9/index.html @@ -0,0 +1,293 @@ + + + + + changelog for version 2.9 | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

changelog for version 2.9

+
    +
  • Syntax editor improvements: Codemirror2 support improved, other editor areas cleaned up
  • +
  • Fixed session issue with multiple blocking requests to keep the interface responsive
  • +
  • Added new themes:
    + Bootstrap – based on jquery ui twitter bootstrap theme (by addy osmani)
    + Chocolate – based on jQuery UI theme mint-chocolate
    + Pinky – A colourful pink theme +
  • +
+

Bug Fixes:

+
    +
  • Fixed a bug in SQL parser that caused infinite loop in parser at end of file, resulting in unresponsive interface (reported by Brandon Hoffman)
  • +
  • Blob data could not be viewed if result contained field from more than one table
  • +
  • Dialogs once re-opened behaved erratically on minimize/restore
  • +
  • Changing table engine type erroneously generated drop primary key statement for some tables
  • +
  • Record editing could not save record if the where clause contained certain text
  • +
+

General:

+
    +
  • Automatically refresh object list after successful creation of new objects
  • +
  • Updated language on the interface where some of the text did not translate properly
  • +
  • Cleaned up themes and standardized message/error display interface
  • +
+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/downloads/changes/version-3-0/index.html b/downloads/changes/version-3-0/index.html new file mode 100644 index 0000000..12979f0 --- /dev/null +++ b/downloads/changes/version-3-0/index.html @@ -0,0 +1,310 @@ + + + + + changelog for version 3.0 | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

changelog for version 3.0

+

Version 3.0 Final

+
    +
  • added search on object list to filter a large number of objects in tree quickly
  • +
  • Table search tool fixed and working on pgsql databases for basic data types
  • +
  • Updated WordPress plugin to new 3.0 codebase
  • +
  • Single file distribution updated to latest codebase
  • +
+

Bug Fixes:

+
    +
  • pgsql table operations fixed (drop, create copy, rename etc)
  • +
  • incorrect limit clause did not work on some pgsql tables when fetching data
  • +
  • batch operation dialog failed to work for pgsql databases
  • +
  • clicking on table name in one schema incorrectly selects the same table name in other schema (only if same table name existed in two schemas)
  • +
  • connection failure message on login screen for db server connection failure
  • +
  • IE9 related beta version issues fixed
  • +
+

General:

+
    +
  • – table description lists fields in their ordinal position (pgsql)
  • +
+

Version 3.0 Beta

+
    +
  • PostgreSQL partial support. Object list, queries, table data display works as usual. Other features are either partially implemented, or planned for future versions.
  • +
  • Added custom authentication support. It is much simpler now to implement your own method of authenticating users, if the need arises.
  • +
  • Added install.php script. Checks for various configurations on server and notifies about any errors or warnings that might cause MyWebSQL to not run properly.
  • +
  • Single file distribution. A single file version of MyWebSQL with all features for quick deployment and use.
    +(please visit the project files section on sourceforge to download the single file distribution)
  • +
  • object count is displayed in object viewer for only types that have one or more objects.
  • +
  • some minor ui updates
  • +
+

Bug Fixes:

+
    +
  • where clause generation problems when data had NULL values and no key definitions
  • +
  • properly display messages if one or more database client libraries are not installed when accessing the databases
  • +
  • lots of other small issues fixed
  • +
+

General:

+
    +
  • Updated codemirror2 to latest version
  • +
+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/downloads/changes/version-3-1/index.html b/downloads/changes/version-3-1/index.html new file mode 100644 index 0000000..5a7a4e5 --- /dev/null +++ b/downloads/changes/version-3-1/index.html @@ -0,0 +1,291 @@ + + + + + changelog for version 3.1 | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

changelog for version 3.1

+
    +
  • sql queries are saved on per-editor basis and loaded the same (previously only saved the last executed query)
  • +
  • Record editing feature works on touch devices using taphold event (Requested by Karl Hemmings)
  • +
  • improved and bugfixed SQL generation code. Generated SQL is more uniform across databases, and respects each database specific escape sequences
  • +
  • Access to particular modules within MyWebSQL can be now allowed or denied using config.
  • +
  • Database Manager tool added to the interface to manage server databases more easily.
  • +
+

Bug Fixes:

+
    +
  • quick search filter was not being applied to database listing
  • +
  • quick search filter input was missing from themes other than default theme (css fixed)
  • +
  • empty data fields in results sometimes caused additional sql in where clause generation
  • +
  • SQL comments work with ‘–‘, insetad of needing an extra space like ‘– ‘
  • +
  • batch operations for objects other than tables failed to execute from batch module
  • +
  • command history contained extra lines in multilines queries, and resulted in extra
    tags in copied text
  • +
  • some ui fixes in chrome and other browsers
  • +
+

General:

+
    +
  • batch module command generation now properly quotes object names
  • +
+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/downloads/changes/version-3-2/index.html b/downloads/changes/version-3-2/index.html new file mode 100644 index 0000000..51eb1f1 --- /dev/null +++ b/downloads/changes/version-3-2/index.html @@ -0,0 +1,282 @@ + + + + + changelog for version 3.2 | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

changelog for version 3.2

+

Updates:

+
    +
  • database backup module added, which allows saving database backups on the server
  • +
  • some additions to export database module for more control over the export script
  • +
  • updated german translation provided by Nikolaus Krismer
  • +
+

Bug Fixes:

+
    +
  • editable inputs did not have default context menu functionality
  • +
  • problems with escape sequences in edited queries generation caused some queries to fail
  • +
  • copying a record in the interface caused slight problem with editing due to textbox problems (touch events issue)
  • +
+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/downloads/changes/version-3-3/index.html b/downloads/changes/version-3-3/index.html new file mode 100644 index 0000000..d10f61c --- /dev/null +++ b/downloads/changes/version-3-3/index.html @@ -0,0 +1,284 @@ + + + + + changelog for version 3.3 | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

changelog for version 3.3

+

Updates:

+
    +
  • added bulk insert statement option in export script to speed up imports and reduce output file size
  • +
  • allow skipping foreign key checks while dropping tables in batch mode to ensure deletion of all selected tables
  • +
  • new user options dialog to control some aspects of the gui based on user’s preferences
  • +
  • object list shows the (estimated) number of record count for tables (requires option to be set in preferences)
  • +
  • object list allows table listing to be sorted based on last update time (requires option to be set in preferences)
  • +
  • editing large text data can be done in a separate dialog (requires option to be set in preferences)
  • +
+

Bug Fixes:

+
    +
  • export results record id was being reset after the selected limit in config for queries with variables
  • +
  • amespace related issues fixed with right click menus in object viewer
  • +
+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/downloads/changes/version-3-5/index.html b/downloads/changes/version-3-5/index.html new file mode 100644 index 0000000..d62798b --- /dev/null +++ b/downloads/changes/version-3-5/index.html @@ -0,0 +1,286 @@ + + + + + changelog for Version 3.5 | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

changelog for Version 3.5

+

Updates:

+
    +
  • support for SQLite3 driver added, so database created with SQLite3 can be managed.
    + (thanks to J. Gutierrez for providing valuable feedback in this regard)
  • +
  • added Arabic translation (thanks to Muhannad Ajjan for providing the complete translation)
  • +
  • filename format can be changed before creating server side backups (to add prefix or additional info to filename)
  • +
  • Auto pagination now works for all select queries other than table select
  • +
  • Sorting is now done on the server side instead of client side, also improves integration with pagination
  • +
  • Removed .htaccess file from root of installation folder, that caused internal server error on many hosts.
    + All htaccess settings are now internally managed by MyWebSQL
  • +
+

Bug Fixes:

+
    +
  • minor bugs in the sqlite library, causing generation of errors in log
  • +
  • sql comments were erroneously appended to exported data in html/xhtml format
  • +
+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/downloads/changes/version-3-6/index.html b/downloads/changes/version-3-6/index.html new file mode 100644 index 0000000..9de72d3 --- /dev/null +++ b/downloads/changes/version-3-6/index.html @@ -0,0 +1,298 @@ + + + + + changelog for version 3.6 | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

changelog for version 3.6

+

Updates:

+
    +
  • Edit mode updates:
    + for enum/boolean fields, datalist is available to choose from
    + date fields can now be updated with datepicker +
  • +
  • fixed results header for better navigation and data management
  • +
  • .sqlite3 is now recognized as valid sqlite database extension
  • +
  • improved in-place editing visual styles
  • +
  • SQLite and SQLite3 library improvements for record editing functionality
  • +
  • Added SQL editor hotkeys:
    + Ctrl+Up -> Increase text size
    + Ctrl+Down -> Decrease text size
    + Ctrl+Shift+Del -> Clear SQL editor
  • +
  • Warnings are now shown in message pane that occur during query execution
  • +
+

Bugfixes:

+
    +
  • Enum and set field values handling with special characters
  • +
+

General:

+
    +
  • Results for data queries and other types of queries are shown separately
  • +
  • Cleaned up themes structure, to simply theme modification and creation
  • +
  • Aero theme is removed from the package
  • +
  • Reduced package size due to removal / cleanup of various javascript code
  • +
  • Other lots of minor improvements in various areas of application frontend / backend
  • +
+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/downloads/compact-edition/index.html b/downloads/compact-edition/index.html new file mode 100644 index 0000000..9b572a2 --- /dev/null +++ b/downloads/compact-edition/index.html @@ -0,0 +1,275 @@ + + + + + Compact Edition | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

Compact Edition

+

Starting with version 3.0, MyWebSQL is available as a single file compact edition, which allows quick deployment to any server with a single php file.

+

To download the compact edition, use the below link to sourceforge.net website.

+

https://sourceforge.net/projects/mywebsql/files/mywebsql/stable/

+

You should only download the latest file from the compact folder (the file with the latest version number). Once you have downloaded the zip file, extract it and it will produce a single php file. This file can be uploaded on any web server with PHP support and then its related url can be used to access MyWebSQL.

+

Please note that the compact edition only includes the default theme, in order to keep the download size to minimum. Other than that, the compact edition has all the functionality of the full version.

+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/downloads/index.html b/downloads/index.html new file mode 100644 index 0000000..4bdf3e5 --- /dev/null +++ b/downloads/index.html @@ -0,0 +1,279 @@ + + + + + Downloads | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

Downloads

+

This project and all of its related files are hosted on sourceforge.net, the largest open source repository on the web.

+

To download the latest version (including a single file compact edition), use the link below to sourceforge.net website.

+

http://sourceforge.net/projects/mywebsql/files/

+

You can also download an older version of the application from the same page if you like (most probably if you are using a very old browser and the new version does not work in it)

+

Download Mirrors

+

In addition to sourceforge, the latest version of the software can also be downloaded from the following websites.

+

+

Changes

+

To see the changes that have occurred between the software releases, visit changelog page for more details.

+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/downloads/upgrading/index.html b/downloads/upgrading/index.html new file mode 100644 index 0000000..2f91d60 --- /dev/null +++ b/downloads/upgrading/index.html @@ -0,0 +1,291 @@ + + + + + Upgrading previous versions | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

Upgrading previous versions

+

Manually upgrading from version 1.0.x to version 1.2

+

Follow these instructions to upgrade your installation to version 1.2 manually.

+
    +
  • Download and unzip the package file into your MyWebSQL installation folder
  • +
  • Delete all *.php files from the root folder, except ‘index.php’ and ‘cache.php’
  • +
  • Delete the following folders from root folder
    +/editor
    +/export
    +/import
  • +
  • If you want to use the new mysql userid/password authentication, then you do not need to do anything else
    +(This is the recommended mode of usage for both new and upgraded installations)
  • +
  • If you would like to use the old connection based configuration, open the file ‘auth.php’ in the config folder and edit as below:
    +– change the line define(‘AUTH_TYPE’, ‘LOGIN’); to define(‘AUTH_TYPE’, ‘NONE’);
    +
    – change the username and password on the following two lines in the same file
    +define(‘AUTH_LOGIN’, ‘root’);
    +define(‘AUTH_PASSWORD’, ”);
    +then save and close the file
    +– delete the file ‘database.php’ in the config folder and rename your old ‘configdb.php’ file to ‘database.php’
    +
    This would re-enable the old connection oriented login system (however, it is strongly recommended to change the authentication type to ‘LOGIN’ as soon as possible to secure your installation of MyWebSQL)
  • +
+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/downloads/wordpress-plugin/index.html b/downloads/wordpress-plugin/index.html new file mode 100644 index 0000000..b49604f --- /dev/null +++ b/downloads/wordpress-plugin/index.html @@ -0,0 +1,285 @@ + + + + + MyWebSQL plugin for WordPress | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ +
+ + +
+
+
+
+

WordPress Plugin

+

For WordPress users, MyWebSQL is also available as a plugin.

+

The plugin allows editing/managing the WordPress database directly from within the admin panel. You must be logged in as an administrator to use MyWebSQL. Follow these instructions to download and install the plugin to your WordPress site:

+
    +
  • Download the latest version of the plugin.
  • +
  • Unzip the contents of the package inside your ‘wp-contents/plugins’ folder.
  • +
  • Login to your WordPress admin panel as an administrator, and go to plugins page. You should be able to see the MyWebSQL plugin in the disabled plugins list. Select and activate the plugin.
  • +
  • Now you can access your WordPress database from the Admin Panel menu ‘Tools’ -> ‘MyWebSQL’
  • +
  • Please note that by default the WordPress database is selected inside MyWebSQL interface, however, you can also manage all other databases on the same server that the WordPress database user has access to
  • +
+

To report bugs and feature requests regarding the plugin, please use the related links on this site.
+To receive news when the plugin is updated, please subscribe to the Twitter/Facebook pages on MyWebSQL.

+

+The plugin was submitted to the WordPress official plugin repository, however, they refused to add it to the official plugin repository. Therefore, the plugin should be downloaded from this site using the link given above.

+
+ +
+
+
+
+ +
+ +
+
+ + + + + + \ No newline at end of file diff --git a/favicon.ico b/favicon.ico deleted file mode 100644 index 20153a0..0000000 Binary files a/favicon.ico and /dev/null differ diff --git a/features/index.html b/features/index.html new file mode 100644 index 0000000..2799efa --- /dev/null +++ b/features/index.html @@ -0,0 +1,201 @@ + + + + + Features | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +
+ + +
+
+
+
+

Features

+
    +
  • Fast, intuitive, developer friendly user interfaceFamiliar interface and functionality of a desktop application, with applications menus, right click menus, options and dialogs
  • +
  • Compatible with all major web browsers
    +
    Internet Explorer 7+, Firefox, Opera, Chrome and Safari supported out of the box
  • +
  • Create/Edit table structure without writing queries
    +
    WYSIWYG Table editor allows you to quickly create and alter tables in grid mode.
  • +
  • WYSIWYG editing of database tables and query dataGrid based data display for query results and quick editing on the fly
  • +
  • Edit and delete multiple records at the same time with ultimate easeJust double click a column in the data set to edit it, and save all edited records at once when done! You can also generate queries instead of directly updating records, which you can edit before you execute
  • +
  • Syntax highlighting rich text sql editor inside browser without the need of any plugin
    +
    Switch between multiple query editors and execute queries using hotkeys on all browsers
  • +
  • Export complete database / tables / query results to external files
    +
    Export results as plain sql, xml, html or simple text format
  • +
  • Use MySQL related tools without learning a single commandUse the Process manager to manage/kill mysql processes easily
  • +
  • Sleek interface with multiple themes supportWork with the colors and themes of your choice on your favorite application
  • +
  • Easy to deploy and install on almost all major server configurationsUse on any combination of mysql and php servers and operating system
  • +
  • Ready to use without any configuration requiredJust download and unpack the archive in any folder on your webserver and you are ready to go!
  • +
  • Open source !Download, install and share it with your friend as you like
  • +
+
+ +
+
+
+
+ +
+
+
+ + + + + + \ No newline at end of file diff --git a/files/compact/mywebsql-3.0-beta.zip b/files/compact/mywebsql-3.0-beta.zip new file mode 100644 index 0000000..6b6b117 Binary files /dev/null and b/files/compact/mywebsql-3.0-beta.zip differ diff --git a/files/compact/mywebsql-3.0.zip b/files/compact/mywebsql-3.0.zip new file mode 100644 index 0000000..4f601ba Binary files /dev/null and b/files/compact/mywebsql-3.0.zip differ diff --git a/files/compact/mywebsql-3.1.zip b/files/compact/mywebsql-3.1.zip new file mode 100644 index 0000000..519ec88 Binary files /dev/null and b/files/compact/mywebsql-3.1.zip differ diff --git a/files/compact/mywebsql-3.2.zip b/files/compact/mywebsql-3.2.zip new file mode 100644 index 0000000..050e1f7 Binary files /dev/null and b/files/compact/mywebsql-3.2.zip differ diff --git a/files/compact/mywebsql-3.3.zip b/files/compact/mywebsql-3.3.zip new file mode 100644 index 0000000..527609a Binary files /dev/null and b/files/compact/mywebsql-3.3.zip differ diff --git a/files/compact/mywebsql-3.4.zip b/files/compact/mywebsql-3.4.zip new file mode 100644 index 0000000..916422a Binary files /dev/null and b/files/compact/mywebsql-3.4.zip differ diff --git a/files/compact/mywebsql-3.6.zip b/files/compact/mywebsql-3.6.zip new file mode 100644 index 0000000..8fa2975 Binary files /dev/null and b/files/compact/mywebsql-3.6.zip differ diff --git a/files/mywebsql-1.6.zip b/files/mywebsql-1.6.zip new file mode 100644 index 0000000..8c51e80 Binary files /dev/null and b/files/mywebsql-1.6.zip differ diff --git a/files/mywebsql-1.7.zip b/files/mywebsql-1.7.zip new file mode 100644 index 0000000..c2d5ea1 Binary files /dev/null and b/files/mywebsql-1.7.zip differ diff --git a/files/mywebsql-1.8.zip b/files/mywebsql-1.8.zip new file mode 100644 index 0000000..d61db61 Binary files /dev/null and b/files/mywebsql-1.8.zip differ diff --git a/files/mywebsql-2.0-beta.zip b/files/mywebsql-2.0-beta.zip new file mode 100644 index 0000000..3c43eb3 Binary files /dev/null and b/files/mywebsql-2.0-beta.zip differ diff --git a/files/mywebsql-2.0.zip b/files/mywebsql-2.0.zip new file mode 100644 index 0000000..ada66c0 Binary files /dev/null and b/files/mywebsql-2.0.zip differ diff --git a/files/mywebsql-2.1.zip b/files/mywebsql-2.1.zip new file mode 100644 index 0000000..f4bfcc5 Binary files /dev/null and b/files/mywebsql-2.1.zip differ diff --git a/files/mywebsql-2.2.zip b/files/mywebsql-2.2.zip new file mode 100644 index 0000000..4faaf74 Binary files /dev/null and b/files/mywebsql-2.2.zip differ diff --git a/files/mywebsql-2.3.zip b/files/mywebsql-2.3.zip new file mode 100644 index 0000000..f8797f1 Binary files /dev/null and b/files/mywebsql-2.3.zip differ diff --git a/files/mywebsql-2.5.zip b/files/mywebsql-2.5.zip new file mode 100644 index 0000000..feba934 Binary files /dev/null and b/files/mywebsql-2.5.zip differ diff --git a/files/mywebsql-2.7.5.zip b/files/mywebsql-2.7.5.zip new file mode 100644 index 0000000..dfc0e3a Binary files /dev/null and b/files/mywebsql-2.7.5.zip differ diff --git a/files/mywebsql-2.7.6.zip b/files/mywebsql-2.7.6.zip new file mode 100644 index 0000000..2230f18 Binary files /dev/null and b/files/mywebsql-2.7.6.zip differ diff --git a/files/mywebsql-2.7.zip b/files/mywebsql-2.7.zip new file mode 100644 index 0000000..8e1aee7 Binary files /dev/null and b/files/mywebsql-2.7.zip differ diff --git a/files/mywebsql-2.8.zip b/files/mywebsql-2.8.zip new file mode 100644 index 0000000..4b721b3 Binary files /dev/null and b/files/mywebsql-2.8.zip differ diff --git a/files/mywebsql-2.9.zip b/files/mywebsql-2.9.zip new file mode 100644 index 0000000..23ac9b0 Binary files /dev/null and b/files/mywebsql-2.9.zip differ diff --git a/files/mywebsql-3.0-beta.zip b/files/mywebsql-3.0-beta.zip new file mode 100644 index 0000000..35bde90 Binary files /dev/null and b/files/mywebsql-3.0-beta.zip differ diff --git a/files/mywebsql-3.0.zip b/files/mywebsql-3.0.zip new file mode 100644 index 0000000..963d2fb Binary files /dev/null and b/files/mywebsql-3.0.zip differ diff --git a/files/mywebsql-3.2.zip b/files/mywebsql-3.2.zip new file mode 100644 index 0000000..ad5882a Binary files /dev/null and b/files/mywebsql-3.2.zip differ diff --git a/files/mywebsql-3.3.zip b/files/mywebsql-3.3.zip new file mode 100644 index 0000000..7bbcdf2 Binary files /dev/null and b/files/mywebsql-3.3.zip differ diff --git a/files/mywebsql-3.4.zip b/files/mywebsql-3.4.zip new file mode 100644 index 0000000..5c54893 Binary files /dev/null and b/files/mywebsql-3.4.zip differ diff --git a/files/mywebsql-3.6.zip b/files/mywebsql-3.6.zip new file mode 100644 index 0000000..6968450 Binary files /dev/null and b/files/mywebsql-3.6.zip differ diff --git a/files/mywebsql-3.7.zip b/files/mywebsql-3.7.zip new file mode 100644 index 0000000..e3bc867 Binary files /dev/null and b/files/mywebsql-3.7.zip differ diff --git a/files/patch/patch-2.7.0.1-2011-11-28.zip b/files/patch/patch-2.7.0.1-2011-11-28.zip new file mode 100644 index 0000000..ed69a26 Binary files /dev/null and b/files/patch/patch-2.7.0.1-2011-11-28.zip differ diff --git a/files/readme.md b/files/readme.md new file mode 100644 index 0000000..ff47cb2 --- /dev/null +++ b/files/readme.md @@ -0,0 +1,9 @@ +## Complete version + +Contains all themes, configurable files in a single package. + +## Compact version + +The compact version differs from the full version slightly due to it's smaller size, and only a single file. +All you need to do is unzip and upload the file anywhere on your webserver and you can then use that url to use MyWebSQL. +Compact version contains only the default theme, other than that it provide all functionality that is part of the full version. diff --git a/files/wordpress-plugin/mywebsql-1.0.zip b/files/wordpress-plugin/mywebsql-1.0.zip new file mode 100644 index 0000000..df1a310 Binary files /dev/null and b/files/wordpress-plugin/mywebsql-1.0.zip differ diff --git a/files/wordpress-plugin/mywebsql-1.3.0.1.zip b/files/wordpress-plugin/mywebsql-1.3.0.1.zip new file mode 100644 index 0000000..2a19f08 Binary files /dev/null and b/files/wordpress-plugin/mywebsql-1.3.0.1.zip differ diff --git a/files/wordpress-plugin/mywebsql-1.3.1.zip b/files/wordpress-plugin/mywebsql-1.3.1.zip new file mode 100644 index 0000000..f62b0d2 Binary files /dev/null and b/files/wordpress-plugin/mywebsql-1.3.1.zip differ diff --git a/files/wordpress-plugin/mywebsql-1.3.3.zip b/files/wordpress-plugin/mywebsql-1.3.3.zip new file mode 100644 index 0000000..195724a Binary files /dev/null and b/files/wordpress-plugin/mywebsql-1.3.3.zip differ diff --git a/files/wordpress-plugin/mywebsql-1.3.6.zip b/files/wordpress-plugin/mywebsql-1.3.6.zip new file mode 100644 index 0000000..1459924 Binary files /dev/null and b/files/wordpress-plugin/mywebsql-1.3.6.zip differ diff --git a/files/wordpress-plugin/mywebsql-1.3.zip b/files/wordpress-plugin/mywebsql-1.3.zip new file mode 100644 index 0000000..afe2250 Binary files /dev/null and b/files/wordpress-plugin/mywebsql-1.3.zip differ diff --git a/files/wordpress-plugin/mywebsql.zip b/files/wordpress-plugin/mywebsql.zip new file mode 100644 index 0000000..5570dc3 Binary files /dev/null and b/files/wordpress-plugin/mywebsql.zip differ diff --git a/images/ampps_logo.png b/images/ampps_logo.png new file mode 100644 index 0000000..9d37dbe Binary files /dev/null and b/images/ampps_logo.png differ diff --git a/images/awards/bestfreewaredownload.gif b/images/awards/bestfreewaredownload.gif new file mode 100644 index 0000000..7d156f8 Binary files /dev/null and b/images/awards/bestfreewaredownload.gif differ diff --git a/images/awards/bestvista.gif b/images/awards/bestvista.gif new file mode 100644 index 0000000..def631a Binary files /dev/null and b/images/awards/bestvista.gif differ diff --git a/images/awards/brothersoft.gif b/images/awards/brothersoft.gif new file mode 100644 index 0000000..a4200f7 Binary files /dev/null and b/images/awards/brothersoft.gif differ diff --git a/images/awards/bs4download.gif b/images/awards/bs4download.gif new file mode 100644 index 0000000..63048ee Binary files /dev/null and b/images/awards/bs4download.gif differ diff --git a/images/awards/downloadnew.gif b/images/awards/downloadnew.gif new file mode 100644 index 0000000..ff6230c Binary files /dev/null and b/images/awards/downloadnew.gif differ diff --git a/images/awards/downloadtyphoon.gif b/images/awards/downloadtyphoon.gif new file mode 100644 index 0000000..d929f37 Binary files /dev/null and b/images/awards/downloadtyphoon.gif differ diff --git a/images/awards/fileguru.gif b/images/awards/fileguru.gif new file mode 100644 index 0000000..b913e5e Binary files /dev/null and b/images/awards/fileguru.gif differ diff --git a/images/awards/softpedia.gif b/images/awards/softpedia.gif new file mode 100644 index 0000000..f5c44f9 Binary files /dev/null and b/images/awards/softpedia.gif differ diff --git a/images/awards/softwaregeek.jpg b/images/awards/softwaregeek.jpg new file mode 100644 index 0000000..6f1f286 Binary files /dev/null and b/images/awards/softwaregeek.jpg differ diff --git a/images/awards/top4download.gif b/images/awards/top4download.gif new file mode 100644 index 0000000..f28d9d1 Binary files /dev/null and b/images/awards/top4download.gif differ diff --git a/images/awards/win7download.gif b/images/awards/win7download.gif new file mode 100644 index 0000000..f3b3029 Binary files /dev/null and b/images/awards/win7download.gif differ diff --git a/images/awards/x64bit.gif b/images/awards/x64bit.gif new file mode 100644 index 0000000..1cfd4f9 Binary files /dev/null and b/images/awards/x64bit.gif differ diff --git a/images/bg.gif b/images/bg.gif new file mode 100644 index 0000000..83c0e0d Binary files /dev/null and b/images/bg.gif differ diff --git a/images/bs_download.gif b/images/bs_download.gif new file mode 100644 index 0000000..b01a030 Binary files /dev/null and b/images/bs_download.gif differ diff --git a/images/btn.gif b/images/btn.gif new file mode 100644 index 0000000..3a86c4a Binary files /dev/null and b/images/btn.gif differ diff --git a/images/donate.png b/images/donate.png new file mode 100644 index 0000000..f36913b Binary files /dev/null and b/images/donate.png differ diff --git a/images/fc_download.gif b/images/fc_download.gif new file mode 100644 index 0000000..3d0ef6d Binary files /dev/null and b/images/fc_download.gif differ diff --git a/images/icon.png b/images/icon.png new file mode 100644 index 0000000..1ae9f4a Binary files /dev/null and b/images/icon.png differ diff --git a/images/right.png b/images/right.png new file mode 100644 index 0000000..6125b33 Binary files /dev/null and b/images/right.png differ diff --git a/images/scr1.png b/images/scr1.png new file mode 100644 index 0000000..85f0021 Binary files /dev/null and b/images/scr1.png differ diff --git a/images/scr1t.png b/images/scr1t.png new file mode 100644 index 0000000..528ff44 Binary files /dev/null and b/images/scr1t.png differ diff --git a/images/scr2.png b/images/scr2.png new file mode 100644 index 0000000..a4e0f67 Binary files /dev/null and b/images/scr2.png differ diff --git a/images/scr2t.png b/images/scr2t.png new file mode 100644 index 0000000..ae83c89 Binary files /dev/null and b/images/scr2t.png differ diff --git a/images/screens/01.Interface Elements/Application Menus.png b/images/screens/01.Interface Elements/Application Menus.png new file mode 100644 index 0000000..c28cb61 Binary files /dev/null and b/images/screens/01.Interface Elements/Application Menus.png differ diff --git a/images/screens/01.Interface Elements/Context Menus.png b/images/screens/01.Interface Elements/Context Menus.png new file mode 100644 index 0000000..e094506 Binary files /dev/null and b/images/screens/01.Interface Elements/Context Menus.png differ diff --git a/images/screens/01.Interface Elements/Dialogs.png b/images/screens/01.Interface Elements/Dialogs.png new file mode 100644 index 0000000..77ee33a Binary files /dev/null and b/images/screens/01.Interface Elements/Dialogs.png differ diff --git a/images/screens/02.SQL Editors/Multiple Editors.png b/images/screens/02.SQL Editors/Multiple Editors.png new file mode 100644 index 0000000..405a0ac Binary files /dev/null and b/images/screens/02.SQL Editors/Multiple Editors.png differ diff --git a/images/screens/02.SQL Editors/Syntax Highlighting.png b/images/screens/02.SQL Editors/Syntax Highlighting.png new file mode 100644 index 0000000..f9b77d4 Binary files /dev/null and b/images/screens/02.SQL Editors/Syntax Highlighting.png differ diff --git a/images/screens/03.Table Editor/Altering Tables.png b/images/screens/03.Table Editor/Altering Tables.png new file mode 100644 index 0000000..e625bbd Binary files /dev/null and b/images/screens/03.Table Editor/Altering Tables.png differ diff --git a/images/screens/03.Table Editor/Creating Tables.png b/images/screens/03.Table Editor/Creating Tables.png new file mode 100644 index 0000000..94e814c Binary files /dev/null and b/images/screens/03.Table Editor/Creating Tables.png differ diff --git a/images/screens/03.Table Editor/Index Manager.png b/images/screens/03.Table Editor/Index Manager.png new file mode 100644 index 0000000..2a12bf8 Binary files /dev/null and b/images/screens/03.Table Editor/Index Manager.png differ diff --git a/images/screens/04.Batch Modules/Export Database.png b/images/screens/04.Batch Modules/Export Database.png new file mode 100644 index 0000000..27cf180 Binary files /dev/null and b/images/screens/04.Batch Modules/Export Database.png differ diff --git a/images/screens/04.Batch Modules/Export Table.png b/images/screens/04.Batch Modules/Export Table.png new file mode 100644 index 0000000..f1ab299 Binary files /dev/null and b/images/screens/04.Batch Modules/Export Table.png differ diff --git a/images/screens/05.Record Editing/Blob Editor Dialog.png b/images/screens/05.Record Editing/Blob Editor Dialog.png new file mode 100644 index 0000000..9049b80 Binary files /dev/null and b/images/screens/05.Record Editing/Blob Editor Dialog.png differ diff --git a/images/screens/05.Record Editing/Inplace Simple Editor.png b/images/screens/05.Record Editing/Inplace Simple Editor.png new file mode 100644 index 0000000..7544ea0 Binary files /dev/null and b/images/screens/05.Record Editing/Inplace Simple Editor.png differ diff --git a/images/screens/05.Record Editing/Inplace Special Field Editing.png b/images/screens/05.Record Editing/Inplace Special Field Editing.png new file mode 100644 index 0000000..6236ce4 Binary files /dev/null and b/images/screens/05.Record Editing/Inplace Special Field Editing.png differ diff --git a/images/screens/05.Record Editing/Inplace Text Editor.png b/images/screens/05.Record Editing/Inplace Text Editor.png new file mode 100644 index 0000000..c93b835 Binary files /dev/null and b/images/screens/05.Record Editing/Inplace Text Editor.png differ diff --git a/images/screens/06.Code Editor/Object Editor.png b/images/screens/06.Code Editor/Object Editor.png new file mode 100644 index 0000000..58dc3a7 Binary files /dev/null and b/images/screens/06.Code Editor/Object Editor.png differ diff --git a/images/screens/07.Themes/Dark Theme.png b/images/screens/07.Themes/Dark Theme.png new file mode 100644 index 0000000..2151b17 Binary files /dev/null and b/images/screens/07.Themes/Dark Theme.png differ diff --git a/images/screens/07.Themes/Default Theme.png b/images/screens/07.Themes/Default Theme.png new file mode 100644 index 0000000..e466b57 Binary files /dev/null and b/images/screens/07.Themes/Default Theme.png differ diff --git a/images/screens/07.Themes/Humanity Theme.png b/images/screens/07.Themes/Humanity Theme.png new file mode 100644 index 0000000..09bfee0 Binary files /dev/null and b/images/screens/07.Themes/Humanity Theme.png differ diff --git a/images/screens/07.Themes/Light Theme.png b/images/screens/07.Themes/Light Theme.png new file mode 100644 index 0000000..cddb295 Binary files /dev/null and b/images/screens/07.Themes/Light Theme.png differ diff --git a/images/screens/07.Themes/Paper Theme.png b/images/screens/07.Themes/Paper Theme.png new file mode 100644 index 0000000..2192187 Binary files /dev/null and b/images/screens/07.Themes/Paper Theme.png differ diff --git a/images/screens/08.Others/Export Query Results.png b/images/screens/08.Others/Export Query Results.png new file mode 100644 index 0000000..ee61289 Binary files /dev/null and b/images/screens/08.Others/Export Query Results.png differ diff --git a/images/screens/08.Others/Process Manager.png b/images/screens/08.Others/Process Manager.png new file mode 100644 index 0000000..2474089 Binary files /dev/null and b/images/screens/08.Others/Process Manager.png differ diff --git a/images/screens/08.Others/Quick Help.png b/images/screens/08.Others/Quick Help.png new file mode 100644 index 0000000..b4b72a2 Binary files /dev/null and b/images/screens/08.Others/Quick Help.png differ diff --git a/images/screens/08.Others/Server Variables.png b/images/screens/08.Others/Server Variables.png new file mode 100644 index 0000000..aa15f3d Binary files /dev/null and b/images/screens/08.Others/Server Variables.png differ diff --git a/images/screens/08.Others/Sql History.png b/images/screens/08.Others/Sql History.png new file mode 100644 index 0000000..0602edf Binary files /dev/null and b/images/screens/08.Others/Sql History.png differ diff --git a/images/screens/_thumbs/contextmenu_t.png b/images/screens/_thumbs/contextmenu_t.png new file mode 100644 index 0000000..1aedd41 Binary files /dev/null and b/images/screens/_thumbs/contextmenu_t.png differ diff --git a/images/screens/_thumbs/create-object_t.png b/images/screens/_thumbs/create-object_t.png new file mode 100644 index 0000000..9865e97 Binary files /dev/null and b/images/screens/_thumbs/create-object_t.png differ diff --git a/images/screens/_thumbs/dialogs_t.png b/images/screens/_thumbs/dialogs_t.png new file mode 100644 index 0000000..ef61ece Binary files /dev/null and b/images/screens/_thumbs/dialogs_t.png differ diff --git a/images/screens/_thumbs/export-db_t.png b/images/screens/_thumbs/export-db_t.png new file mode 100644 index 0000000..a2921f5 Binary files /dev/null and b/images/screens/_thumbs/export-db_t.png differ diff --git a/images/screens/_thumbs/export-results_t.png b/images/screens/_thumbs/export-results_t.png new file mode 100644 index 0000000..f479c88 Binary files /dev/null and b/images/screens/_thumbs/export-results_t.png differ diff --git a/images/screens/_thumbs/history_t.png b/images/screens/_thumbs/history_t.png new file mode 100644 index 0000000..2edd99f Binary files /dev/null and b/images/screens/_thumbs/history_t.png differ diff --git a/images/screens/_thumbs/inplace-edit_t.png b/images/screens/_thumbs/inplace-edit_t.png new file mode 100644 index 0000000..2a3bd93 Binary files /dev/null and b/images/screens/_thumbs/inplace-edit_t.png differ diff --git a/images/screens/_thumbs/menus_t.png b/images/screens/_thumbs/menus_t.png new file mode 100644 index 0000000..28b26ee Binary files /dev/null and b/images/screens/_thumbs/menus_t.png differ diff --git a/images/screens/_thumbs/splash_t.png b/images/screens/_thumbs/splash_t.png new file mode 100644 index 0000000..8ba852f Binary files /dev/null and b/images/screens/_thumbs/splash_t.png differ diff --git a/images/screens/_thumbs/sqleditor_t.png b/images/screens/_thumbs/sqleditor_t.png new file mode 100644 index 0000000..50cbc9b Binary files /dev/null and b/images/screens/_thumbs/sqleditor_t.png differ diff --git a/images/screens/_thumbs/table-editor_t.png b/images/screens/_thumbs/table-editor_t.png new file mode 100644 index 0000000..2638f6f Binary files /dev/null and b/images/screens/_thumbs/table-editor_t.png differ diff --git a/images/screens/_thumbs/theme-light_t.png b/images/screens/_thumbs/theme-light_t.png new file mode 100644 index 0000000..63d433d Binary files /dev/null and b/images/screens/_thumbs/theme-light_t.png differ diff --git a/images/screens/_thumbs/variable-list_t.png b/images/screens/_thumbs/variable-list_t.png new file mode 100644 index 0000000..ae7cf02 Binary files /dev/null and b/images/screens/_thumbs/variable-list_t.png differ diff --git a/img/cursor.png b/images/support-project.png similarity index 63% rename from img/cursor.png rename to images/support-project.png index 2017167..49ba460 100644 Binary files a/img/cursor.png and b/images/support-project.png differ diff --git a/img/ehelp.css b/img/ehelp.css deleted file mode 100644 index d0fb230..0000000 --- a/img/ehelp.css +++ /dev/null @@ -1,144 +0,0 @@ -.EHmarker { - border: 2px solid #FF0000; -} -#EHhelpOverlay { - background: #ffffff; - filter: Alpha(Opacity=10); - opacity: .10; - z-index: 99997; -} -#EHhelpBox { - box-shadow: 3px 3px 5px #eeeeee; - color: black; - padding: 10px; - position: absolute; - right: 45%; - top: 40%; - z-index: 99998; - -moz-box-shadow: 3px 3px 5px #eeeeee; - -webkit-box-shadow: 3px 3px 5px #eeeeee; -} -#EHhelpBox .title { - border-bottom: 1px dashed #555555; - color: #444444; - font-family: segoe ui; - font-size: 12pt; - font-weight: bold; - padding: 0 0 3px 5px; -} -#EHhelpBox a { - color: #666666; - display: block; - font-family: segoe ui,arial; - font-size: 14px; - margin: 3px 5px 0; - text-decoration: none; -} -#EHhelpBox a:hover { - color: green; - text-decoration: none; -} -#EHpointer { - background: transparent url(cursor.png) 0 0 no-repeat; - cursor: pointer; - display: none; - height: 32px; - left: 0px; - position: absolute; - top: 0px; - width: 32px; - z-index: 99999; -} -#EHtooltip { - background: #f7f5d1; - border: 1px solid #333; - color: #333; - display: none; - font-family: segoe ui, verdana, arial; - font-size: 14px; - padding: 3px 5px; - position: absolute; - z-index: 99999; -} -#EHtooltip ul li { - font-family: segoe ui, verdana, arial; - font-size: 14px; - list-style: disc; -} -.EHtooltipc { - background: #f7f5d1; - border: 1px solid #333; - color: #333; - display: block; - font-size: 11px; - line-height: 11px; - margin: 0; - padding: 0; - position: absolute; - width: auto; - z-index: 99999; -} -.EHtooltipc:hover { - z-index: 99999; -} -.EHtooltipc span { - background-color: #FF0000; - border: 2px solid white; - color: white; - float: left; - margin: 0; - padding: 2px 4px; - position: relative; -} -.EHtooltmp { - background: #f7f5d1; - border: 1px solid #333; - color: #333; - display: block; - font-size: 11px; - line-height: 11px; - margin: 0; - padding: 0; - position: absolute; - z-index: 99999; -} -.EHtooltmp p { - display: block; - float: left; - margin: 0; - padding: 3px; - position: relative; - width: auto; -} -.EHtooltmp a.EHclose { - background-color: #FF0000; - border: 2px solid white; - color: white; - display: block; - float: left; - font-weight: bold; - margin: 0; - padding: 2px 4px; - position: relative; -} -.EHtoolgost { - background: #eee; - border: 1px solid #999; - color: #666; - display: none; - font-size: 11px; - line-height: 11px; - margin: 0; - padding: 0; - position: absolute; - z-index: 99999; -} -.EHtoolgost span { - background-color: #eee; - border: 2px solid white; - color: #666; - float: left; - margin: 0; - padding: 2px 4px; - position: relative; -} \ No newline at end of file diff --git a/img/help/btnupd.gif b/img/help/btnupd.gif deleted file mode 100644 index 45dabb2..0000000 Binary files a/img/help/btnupd.gif and /dev/null differ diff --git a/img/help/t_about.gif b/img/help/t_about.gif deleted file mode 100644 index 2ce039a..0000000 Binary files a/img/help/t_about.gif and /dev/null differ diff --git a/img/help/t_credits.gif b/img/help/t_credits.gif deleted file mode 100644 index 4297d66..0000000 Binary files a/img/help/t_credits.gif and /dev/null differ diff --git a/img/help/t_keyboard.gif b/img/help/t_keyboard.gif deleted file mode 100644 index ed617be..0000000 Binary files a/img/help/t_keyboard.gif and /dev/null differ diff --git a/img/help/t_misc.gif b/img/help/t_misc.gif deleted file mode 100644 index 3bf66c4..0000000 Binary files a/img/help/t_misc.gif and /dev/null differ diff --git a/img/help/t_prefs.gif b/img/help/t_prefs.gif deleted file mode 100644 index afa0af4..0000000 Binary files a/img/help/t_prefs.gif and /dev/null differ diff --git a/img/help/t_queries.gif b/img/help/t_queries.gif deleted file mode 100644 index 1a18d38..0000000 Binary files a/img/help/t_queries.gif and /dev/null differ diff --git a/img/help/t_results.gif b/img/help/t_results.gif deleted file mode 100644 index a0b4ada..0000000 Binary files a/img/help/t_results.gif and /dev/null differ diff --git a/img/icons/icon-128x128.png b/img/icons/icon-128x128.png deleted file mode 100644 index 69db725..0000000 Binary files a/img/icons/icon-128x128.png and /dev/null differ diff --git a/img/icons/icon-144x144.png b/img/icons/icon-144x144.png deleted file mode 100644 index 755d627..0000000 Binary files a/img/icons/icon-144x144.png and /dev/null differ diff --git a/img/icons/icon-152x152.png b/img/icons/icon-152x152.png deleted file mode 100644 index 1e773e8..0000000 Binary files a/img/icons/icon-152x152.png and /dev/null differ diff --git a/img/icons/icon-192x192.png b/img/icons/icon-192x192.png deleted file mode 100644 index 783c8fc..0000000 Binary files a/img/icons/icon-192x192.png and /dev/null differ diff --git a/img/icons/icon-384x384.png b/img/icons/icon-384x384.png deleted file mode 100644 index 02fd156..0000000 Binary files a/img/icons/icon-384x384.png and /dev/null differ diff --git a/img/icons/icon-512x512.png b/img/icons/icon-512x512.png deleted file mode 100644 index 429b83c..0000000 Binary files a/img/icons/icon-512x512.png and /dev/null differ diff --git a/img/icons/icon-72x72.png b/img/icons/icon-72x72.png deleted file mode 100644 index e72f49b..0000000 Binary files a/img/icons/icon-72x72.png and /dev/null differ diff --git a/img/icons/icon-96x96.png b/img/icons/icon-96x96.png deleted file mode 100644 index 5c3b11d..0000000 Binary files a/img/icons/icon-96x96.png and /dev/null differ diff --git a/img/logo.png b/img/logo.png deleted file mode 100644 index 3488a34..0000000 Binary files a/img/logo.png and /dev/null differ diff --git a/img/options/o.gif b/img/options/o.gif deleted file mode 100644 index 3afb4da..0000000 Binary files a/img/options/o.gif and /dev/null differ diff --git a/img/options/o_editing.gif b/img/options/o_editing.gif deleted file mode 100644 index a0b4ada..0000000 Binary files a/img/options/o_editing.gif and /dev/null differ diff --git a/img/options/o_misc.gif b/img/options/o_misc.gif deleted file mode 100644 index afa0af4..0000000 Binary files a/img/options/o_misc.gif and /dev/null differ diff --git a/img/options/o_results.gif b/img/options/o_results.gif deleted file mode 100644 index 1a18d38..0000000 Binary files a/img/options/o_results.gif and /dev/null differ diff --git a/img/options/o_ui.gif b/img/options/o_ui.gif deleted file mode 100644 index bfb0e23..0000000 Binary files a/img/options/o_ui.gif and /dev/null differ diff --git a/img/splash.png b/img/splash.png deleted file mode 100644 index 7605253..0000000 Binary files a/img/splash.png and /dev/null differ diff --git a/index.html b/index.html new file mode 100644 index 0000000..e2034d2 --- /dev/null +++ b/index.html @@ -0,0 +1,273 @@ + + + + + + MySQL, SQLite, PostgreSQL web client - MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+
+ + + +
+ +
+ +
+
+ Simplified Database Web Administration. +
+ For MySQL, SQLite and PostgreSQL databases. +
+
+ Manage your databases over the web using a secure and intuitive interface with blazing fast performance +
+ +
+
+
+
+ +
+

Fast, Efficient, Interactive

+
+
+
+ MyWebSQL is the ultimate desktop replacement for managing your MySQL databases over the web. With interface that works just like your favourite desktop applications, + + you don't need to keep switching over webpages to get simple things done. Just login to your database and manage your database as if your are working on your desktop! Checkout online demo +
+
+
+

Hassle Free Installation

+
+
+
+ Getting started is as simple as downloading the package and unpacking it on your choice of folder on the website. + + You only require a web server with php installed to get it up and running. + + No configuration required, no variables to be changed. Just open your favourite browser and hit the url to get going! See the complete list of features +
+
+
+

Completely Open Source!

+
+
+
+ That's right. MyWebSQL is completely open source software and available free for download. You can add/edit/change whatever you like. + + It even supports themes so you can create your own to suit your needs! Download Now! +
+
+
+

Prepackaged with your favourite apps

+
+ Now you can install MyWebSQL in one click using your favourite Installers like AMPPS. +
+
+
+
+
+ + +
+

Latest Updates

+
+ Version 3.7 is released, with many bugfixes, including those for running php as fcgi on nginx, postgresql database table import functionality, issues on some php installations where database selection did not work properly, and many other bugfixes. Changelog > +
+
+ +
+

Rich set of features

+
+
    +
  • + Application and context menus +
  • +
  • + Multiple syntax highlighted sql editors +
  • +
  • + Quick Inplace multi-record editing +
  • +
  • + Zero configuration installation +
  • +
  • + Multiple server login supported +
  • +
  • + Excellent support for major browsers +
  • +
  • + WYSIWYG Table creator/editor +
  • +
  • + Batch Import/Export modules +
  • +
  • + Multilingual Interface +
  • +
  • + UI Themes supported +
  • +
+ See all features > +
+
+ +
+

Support

+
+ MyWebSQL is open source and free software. You can send us your feedback and feature requests, and we will try to add them to the software as soon as we can. Submit a feature request > +
+
+
+ +
+
+ + + + + + \ No newline at end of file diff --git a/index.php b/index.php deleted file mode 100644 index cc4dc52..0000000 --- a/index.php +++ /dev/null @@ -1,295 +0,0 @@ -authenticate()) { - if (v($_REQUEST["q"]) == "wrkfrm") - echo view('session_expired'); - else { - include(BASE_PATH . "/modules/splash.php"); - $form = view( 'auth', array( - 'LOGINID' => htmlspecialchars( $auth_module->getUserName() ), - 'SERVER_NAME' => htmlspecialchars( $auth_module->getCustomServer() ), - 'SERVER_TYPE' => htmlspecialchars( $auth_module->getCustomServerType() ), - ) ); - echo getSplashScreen($auth_module->getError(), $form); - } - Output::flush(); - exit(); - } - unset($auth_module); - - $_db_info = getDBClass(); - include_once($_db_info[0]); - $_db_class = $_db_info[1]; - $DB = new $_db_class(); - unset($_db_info); - unset($_db_class); - - if (v($_REQUEST["db"]) && ( Session::get('db', 'name') != v($_REQUEST["db"]) ) ) { - Session::set('db', 'changed', true); - Session::set('db', 'name', $_REQUEST["db"]); - if (v($_GET["x"]) == 1) - echo '
1
'; // success - else - header('Location: '.EXTERNAL_PATH); - exit; - } - - // after this, we need the user set options to be visible everywhere - include_once(BASE_PATH . "/lib/options.php"); - - if (v($_REQUEST["q"]) == "wrkfrm") { - if (!$DB->connect(DB_HOST, DB_USER, DB_PASS, getDbName() )) - die(showDBError()); - execute_request($DB); - $DB->disconnect(); - include_once(BASE_PATH . "/lib/output.php"); - Output::flush(); - exit(); - } - - include(BASE_PATH . "/lib/html.php"); - include(BASE_PATH. "/lib/interface.php"); -?> - - - - -MyWebSQL - - - - - - - - - - -connect(DB_HOST,DB_USER,DB_PASS,getDbName())) { - include(BASE_PATH . "/modules/splash.php"); - die(getSplashScreen(showDBError())); - } - if (Session::get('session', 'init') != '1') { - // session just started, so we load information here - Session::set('db', 'user', $DB->getCurrentUser(), true); - Session::set('session', 'init', 1); - } - - $KEY_CODES = getKeyCodes(); -?> -
-
-
Type:
-
[ ]
-
- -
-
-
- -
-
- -
-
MyWebSQL
-
-
-
- -  
- -
-
-
-
- - -
-
- -
- -
- -
- -
- -
- -
- -
- -
- -
-
-
    -
  • -
  • -
  • -
  • -
- -
- -
- -
-
-
-
- - - - - - - - -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- - - -
- -
-
- -
-
- -
- - - -
- <?php echo __('Loading'); ?>... -
- -
-
- -
-
- -
-
- - -
-
...
- -
- - -disconnect(); - - echo getContextMenusHTML(); - - updateSqlEditor(); - - echo getHotkeysHTML(); - - echo getGeneratedJS(); -?> - - \ No newline at end of file diff --git a/install.php b/install.php deleted file mode 100644 index e1c2529..0000000 --- a/install.php +++ /dev/null @@ -1,243 +0,0 @@ - - - - - - - - MyWebSQL Installation - - - - - - -

Environment Tests - - - -

- -

- The following tests have been run to determine if MyWebSQL will work in your environment.
- If any of the tests have failed, consult the online documentation - for more information on how to correct the problem. -

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PHP VersionMyWebSQL requires PHP 5.0 or newer, your current PHP version is .
Math LibraryPassbcmath', '{{NAME}} extension is not available'); ?>
URI DeterminationPassNeither $_SERVER['REQUEST_URI'], $_SERVER['PHP_SELF'], or $_SERVER['PATH_INFO'] is available.
Database ConnectivityPassNone of the required database client libraries are installed. You will not be able to use MyWebSQL unless you install one or more of these client libraries.
Backup folder locationPassBackup folder does not exist or is not writable. You will not be able to backup databases on server.
- - -

✘ MyWebSQL may not work correctly with your environment.

- -

✔ Your environment passed requirements to run MyWebSQL.
- Please remove or rename the install.php file now .

- - -

Database Libraries

- -

- At least one of the following is required to use MyWebSQL. -

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
MySQL Client LibraryPassMySQL client library is not installed.
MySQL improved functionalityPassMySQL Improved client library is not installed.
PostgreSQL Client LibraryPassPostgreSQL client library is not installed.
SQLite Client LibraryPassSQLite client library is not installed.
SQLite3 Client LibraryPassSQLite3 client library is not installed.
- -

Optional Tests

- -

- The following extensions are not required to run MyWebSQL, but if enabled, they can provide additional functionality. -

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
cURL ExtensionPassMyWebSQL uses the cURL extension for checking new versions every week.
cURL is used to check for new version releases every week
OpenSSL & GNU Math Precision LibraryPass - openssl', '{{NAME}} extension is not available'); ?> - gmp', '{{NAME}} extension is not available'); ?>
If present, these libraries provide secure (encrypted) login functionality for MyWebSQL
CType LibraryPassMyWebSQL uses the CType extension, please make sure it's installed for best results.
- - - diff --git a/js/alerts.js b/js/alerts.js deleted file mode 100644 index b47b15d..0000000 --- a/js/alerts.js +++ /dev/null @@ -1,247 +0,0 @@ -// jQuery Alert Dialogs Plugin -// -// Version 1.1 -// -// Cory S.N. LaViska -// A Beautiful Site (http://abeautifulsite.net/) -// 14 May 2009 -// -// Visit http://abeautifulsite.net/notebook/87 for more information -// -// Usage: -// jAlert( message, [title, callback] ) -// jConfirm( message, [title, callback] ) -// jPrompt( message, [value, title, callback] ) -// -// History: -// -// 1.00 - Released (29 December 2008) -// -// 1.01 - Fixed bug where unbinding would destroy all resize events -// -// License: -// -// This plugin is dual-licensed under the GNU General Public License and the MIT License and -// is copyright 2008 A Beautiful Site, LLC. -// -(function($) { - - $.alerts = { - - // These properties can be read/written by accessing $.alerts.propertyName from your scripts at any time - - verticalOffset: -10, // vertical offset of the dialog from center screen, in pixels - horizontalOffset: 0, // horizontal offset of the dialog from center screen, in pixels/ - repositionOnResize: true, // re-centers the dialog on window resize - overlayOpacity: .01, // transparency level of overlay - overlayColor: '#FFF', // base color of overlay - draggable: true, // make the dialogs draggable (requires UI Draggables plugin) - okButton: __('OK'), // text for the OK button - cancelButton: __('Cancel'), // text for the Cancel button - dialogClass: null, // if specified, this class will be applied to all dialogs - - // Public methods - - alert: function(message, title, callback) { - if( title == null ) title = 'Alert'; - $.alerts._show(title, message, null, 'alert', function(result) { - if( callback ) callback(result); - }); - }, - - confirm: function(message, title, callback, id) { - if( title == null ) title = 'Confirm'; - // third argument decides whether 'always confirm' checkbox is shown or not - $.alerts._show(title, message, id, 'confirm', function(result, confirm_always) { - if( callback ) callback(result, id, confirm_always); - }); - }, - - prompt: function(message, value, title, callback) { - if( title == null ) title = 'Prompt'; - $.alerts._show(title, message, value, 'prompt', function(result) { - if( callback ) callback(result); - }); - }, - - // Private methods - - _show: function(title, msg, value, type, callback) { - $.alerts._hide(); - $.alerts._overlay('show'); - - $("BODY").append( - ''); - - if( $.alerts.dialogClass ) $("#popup_container").addClass($.alerts.dialogClass); - - // IE6 Fix - var pos = ($.browser.msie && parseInt($.browser.version) <= 6 ) ? 'absolute' : 'fixed'; - - $("#popup_container").css({ - position: pos, - zIndex: 99999, - padding: 0, - margin: 0 - }); - - $("#popup_title").text(title); - $("#popup_content").addClass(type); - $("#popup_message").text(msg); - $("#popup_message").html( $("#popup_message").text().replace(/\n/g, '
') ); - - $("#popup_container").css({ - minWidth: $("#popup_container").outerWidth(), - maxWidth: $("#popup_container").outerWidth() - }); - - $.alerts._reposition(); - $.alerts._maintainPosition(true); - - switch( type ) { - case 'alert': - $("#popup_message").after(''); - $("#popup_ok").click( function() { - $.alerts._hide(); - callback(true); - }); - $("#popup_ok").button().keypress( function(e) { - if( e.keyCode == 13 || e.keyCode == 27 ) $("#popup_ok").trigger('click'); - }); - setTimeout(function(){ $("#popup_ok").focus(); }, 100); - break; - case 'confirm': - $("#popup_message").after(''); - if (value != '') - $("#popup_message").after(''); - $("#popup_ok").button().click( function() { - c = $('#popup_check').prop('checked'); - $.alerts._hide(); - if( callback ) callback(true, c); - }); - $("#popup_cancel").button().click( function() { - $.alerts._hide(); - if( callback ) callback(false, false); - }); - $("#popup_ok, #popup_cancel").keypress( function(e) { - if( e.keyCode == 13 ) $("#popup_ok").trigger('click'); - if( e.keyCode == 27 ) $("#popup_cancel").trigger('click'); - }); - setTimeout(function(){ $("#popup_ok").focus(); }, 100); - break; - case 'prompt': - $("#popup_message").after(''); - $("#popup_message").after(''); - $("#popup_prompt").width( $("#popup_message").width() ); - $("#popup_ok").button().click( function() { - var val = $("#popup_prompt").val(); - $.alerts._hide(); - if( callback ) callback( val ); - }); - $("#popup_cancel").button().click( function() { - $.alerts._hide(); - if( callback ) callback( null ); - }); - $("#popup_prompt, #popup_ok, #popup_cancel").keypress( function(e) { - if( e.keyCode == 13 ) $("#popup_ok").trigger('click'); - if( e.keyCode == 27 ) $("#popup_cancel").trigger('click'); - }); - if( value ) $("#popup_prompt").val(value); - setTimeout(function(){ $("#popup_prompt").focus().select(); }, 100); - break; - } - - // Make draggable - if( $.alerts.draggable ) { - try { - $("#popup_container").draggable({ handle: $("#popup_title") }); - $("#popup_title").css({ cursor: 'move' }); - } catch(e) { /* requires jQuery UI draggables */ } - } - }, - - _hide: function() { - $("#popup_container").remove(); - $.alerts._overlay('hide'); - $.alerts._maintainPosition(false); - }, - - _overlay: function(status) { - switch( status ) { - case 'show': - $.alerts._overlay('hide'); - //$.blockUI({message:'',showOverlay:false}); - $("BODY").append(''); - $("#popup_overlay").css({ - position: 'absolute', - zIndex: 99998, - top: '0px', - left: '0px', - width: '100%', - height: $(document).height(), - background: $.alerts.overlayColor, - opacity: $.alerts.overlayOpacity - }); - break; - case 'hide': - $("#popup_overlay").remove(); - //$.unblockUI(); - break; - } - }, - - _reposition: function() { - var top = (($(window).height() / 2) - ($("#popup_container").outerHeight() / 2)) + $.alerts.verticalOffset; - var left = (($(window).width() / 2) - ($("#popup_container").outerWidth() / 2)) + $.alerts.horizontalOffset; - if( top < 0 ) top = 0; - if( left < 0 ) left = 0; - - // IE6 fix - if( $.browser.msie && parseInt($.browser.version) <= 6 ) top = top + $(window).scrollTop(); - - $("#popup_container").css({ - top: top + 'px', - left: left + 'px' - }); - $("#popup_overlay").height( $(document).height() ); - }, - - _maintainPosition: function(status) { - if( $.alerts.repositionOnResize ) { - switch(status) { - case true: - $(window).bind('resize', $.alerts._reposition); - break; - case false: - $(window).unbind('resize', $.alerts._reposition); - break; - } - } - } - - } - - // Shortuct functions - jAlert = function(message, title, callback) { - $.alerts.alert(message, title, callback); - } - - jConfirm = function(message, title, callback, id) { - $.alerts.confirm(message, title, callback, id); - }; - - jPrompt = function(message, value, title, callback) { - $.alerts.prompt(message, value, title, callback); - }; - -})(jQuery); \ No newline at end of file diff --git a/js/blobs.js b/js/blobs.js deleted file mode 100644 index a8b3ff6..0000000 --- a/js/blobs.js +++ /dev/null @@ -1,25 +0,0 @@ -/** - * This file is a part of MyWebSQL package - * - * @file: js/blobs.js - * @author Samnan ur Rehman - * @copyright (c) 2008-2014 Samnan ur Rehman - * @web https://github.com/Samnan/MyWebSQL - * @license https://github.com/Samnan/MyWebSQL/license - */ - -function blobChangeType() { - id = document.frmquery.id.value; - name = document.frmquery.name.value; - query = document.frmquery.query.value; - x = document.frmquery.blobtype.selectedIndex; - wrkfrmSubmit("viewblob", id, name, query); -} - -function blobSave() { - id = document.frmquery.id.value; - name = document.frmquery.name.value; - query = document.frmquery.query.value; - document.frmquery.act.value = 'save'; - wrkfrmSubmit("viewblob", id, name, query); -} diff --git a/js/clipboard.js b/js/clipboard.js deleted file mode 100644 index d2338d8..0000000 --- a/js/clipboard.js +++ /dev/null @@ -1,311 +0,0 @@ -// Simple Set Clipboard System -// Author: Joseph Huckaby - -var ZeroClipboard = { - - version: "1.0.7", - clients: {}, // registered upload clients on page, indexed by id - moviePath: 'ZeroClipboard.swf', // URL to movie - nextId: 1, // ID of next movie - - $: function(thingy) { - // simple DOM lookup utility function - if (typeof(thingy) == 'string') thingy = document.getElementById(thingy); - if (!thingy.addClass) { - // extend element with a few useful methods - thingy.hide = function() { this.style.display = 'none'; }; - thingy.show = function() { this.style.display = ''; }; - thingy.addClass = function(name) { this.removeClass(name); this.className += ' ' + name; }; - thingy.removeClass = function(name) { - var classes = this.className.split(/\s+/); - var idx = -1; - for (var k = 0; k < classes.length; k++) { - if (classes[k] == name) { idx = k; k = classes.length; } - } - if (idx > -1) { - classes.splice( idx, 1 ); - this.className = classes.join(' '); - } - return this; - }; - thingy.hasClass = function(name) { - return !!this.className.match( new RegExp("\\s*" + name + "\\s*") ); - }; - } - return thingy; - }, - - setMoviePath: function(path) { - // set path to ZeroClipboard.swf - this.moviePath = path; - }, - - dispatch: function(id, eventName, args) { - // receive event from flash movie, send to client - var client = this.clients[id]; - if (client) { - client.receiveEvent(eventName, args); - } - }, - - register: function(id, client) { - // register new client to receive events - this.clients[id] = client; - }, - - getDOMObjectPosition: function(obj, stopObj) { - // get absolute coordinates for dom element - var info = { - left: 0, - top: 0, - width: obj.width ? obj.width : obj.offsetWidth, - height: obj.height ? obj.height : obj.offsetHeight - }; - - while (obj && (obj != stopObj)) { - info.left += obj.offsetLeft; - info.top += obj.offsetTop; - obj = obj.offsetParent; - } - - return info; - }, - - Client: function(elem) { - // constructor for new simple upload client - this.handlers = {}; - - // unique ID - this.id = ZeroClipboard.nextId++; - this.movieId = 'ZeroClipboardMovie_' + this.id; - - // register client with singleton to receive flash events - ZeroClipboard.register(this.id, this); - - // create movie - if (elem) this.glue(elem); - } -}; - -ZeroClipboard.Client.prototype = { - - id: 0, // unique ID for us - ready: false, // whether movie is ready to receive events or not - movie: null, // reference to movie object - clipText: '', // text to copy to clipboard - handCursorEnabled: true, // whether to show hand cursor, or default pointer cursor - cssEffects: true, // enable CSS mouse effects on dom container - handlers: null, // user event handlers - - glue: function(elem, appendElem, stylesToAdd) { - // glue to DOM element - // elem can be ID or actual DOM element object - this.domElement = ZeroClipboard.$(elem); - - // float just above object, or zIndex 99 if dom element isn't set - var zIndex = 99999; - if (this.domElement.style.zIndex) { - zIndex = parseInt(this.domElement.style.zIndex, 10) + 1; - } - - if (typeof(appendElem) == 'string') { - appendElem = ZeroClipboard.$(appendElem); - } - else if (typeof(appendElem) == 'undefined') { - appendElem = document.getElementsByTagName('body')[0]; - } - - // find X/Y position of domElement - var box = ZeroClipboard.getDOMObjectPosition(this.domElement, appendElem); - - // create floating DIV above element - this.div = document.createElement('div'); - var style = this.div.style; - style.position = 'absolute'; - style.left = '' + box.left + 'px'; - style.top = '' + box.top + 'px'; - style.width = '' + box.width + 'px'; - style.height = '' + box.height + 'px'; - style.zIndex = zIndex; - - if (typeof(stylesToAdd) == 'object') { - for (addedStyle in stylesToAdd) { - style[addedStyle] = stylesToAdd[addedStyle]; - } - } - - // style.backgroundColor = '#f00'; // debug - - appendElem.appendChild(this.div); - - this.div.innerHTML = this.getHTML( box.width, box.height ); - }, - - getHTML: function(width, height) { - // return HTML for movie - var html = ''; - var flashvars = 'id=' + this.id + - '&width=' + width + - '&height=' + height; - - if (navigator.userAgent.match(/MSIE/)) { - // IE gets an OBJECT tag - var protocol = location.href.match(/^https/i) ? 'https://' : 'http://'; - html += ''; - } - else { - // all other browsers get an EMBED tag - html += ''; - } - return html; - }, - - hide: function() { - // temporarily hide floater offscreen - if (this.div) { - this.div.style.left = '-2000px'; - } - }, - - show: function() { - // show ourselves after a call to hide() - this.reposition(); - }, - - destroy: function() { - // destroy control and floater - if (this.domElement && this.div) { - this.hide(); - this.div.innerHTML = ''; - - var body = document.getElementsByTagName('body')[0]; - try { body.removeChild( this.div ); } catch(e) {;} - - this.domElement = null; - this.div = null; - } - }, - - reposition: function(elem) { - // reposition our floating div, optionally to new container - // warning: container CANNOT change size, only position - if (elem) { - this.domElement = ZeroClipboard.$(elem); - if (!this.domElement) this.hide(); - } - - if (this.domElement && this.div) { - var box = ZeroClipboard.getDOMObjectPosition(this.domElement); - var style = this.div.style; - style.left = '' + box.left + 'px'; - style.top = '' + box.top + 'px'; - } - }, - - setText: function(newText) { - // set text to be copied to clipboard - this.clipText = newText; - if (this.ready) this.movie.setText(newText); - }, - - addEventListener: function(eventName, func) { - // add user event listener for event - // event types: load, queueStart, fileStart, fileComplete, queueComplete, progress, error, cancel - eventName = eventName.toString().toLowerCase().replace(/^on/, ''); - if (!this.handlers[eventName]) this.handlers[eventName] = []; - this.handlers[eventName].push(func); - }, - - setHandCursor: function(enabled) { - // enable hand cursor (true), or default arrow cursor (false) - this.handCursorEnabled = enabled; - if (this.ready) this.movie.setHandCursor(enabled); - }, - - setCSSEffects: function(enabled) { - // enable or disable CSS effects on DOM container - this.cssEffects = !!enabled; - }, - - receiveEvent: function(eventName, args) { - // receive event from flash - eventName = eventName.toString().toLowerCase().replace(/^on/, ''); - - // special behavior for certain events - switch (eventName) { - case 'load': - // movie claims it is ready, but in IE this isn't always the case... - // bug fix: Cannot extend EMBED DOM elements in Firefox, must use traditional function - this.movie = document.getElementById(this.movieId); - if (!this.movie) { - var self = this; - setTimeout( function() { self.receiveEvent('load', null); }, 1 ); - return; - } - - // firefox on pc needs a "kick" in order to set these in certain cases - if (!this.ready && navigator.userAgent.match(/Firefox/) && navigator.userAgent.match(/Windows/)) { - var self = this; - setTimeout( function() { self.receiveEvent('load', null); }, 100 ); - this.ready = true; - return; - } - - this.ready = true; - this.movie.setText( this.clipText ); - this.movie.setHandCursor( this.handCursorEnabled ); - break; - - case 'mouseover': - if (this.domElement && this.cssEffects) { - this.domElement.addClass('hover'); - if (this.recoverActive) this.domElement.addClass('active'); - } - break; - - case 'mouseout': - if (this.domElement && this.cssEffects) { - this.recoverActive = false; - if (this.domElement.hasClass('active')) { - this.domElement.removeClass('active'); - this.recoverActive = true; - } - this.domElement.removeClass('hover'); - } - break; - - case 'mousedown': - if (this.domElement && this.cssEffects) { - this.domElement.addClass('active'); - } - break; - - case 'mouseup': - if (this.domElement && this.cssEffects) { - this.domElement.removeClass('active'); - this.recoverActive = false; - } - break; - } // switch eventName - - if (this.handlers[eventName]) { - for (var idx = 0, len = this.handlers[eventName].length; idx < len; idx++) { - var func = this.handlers[eventName][idx]; - - if (typeof(func) == 'function') { - // actual function reference - func(this, args); - } - else if ((typeof(func) == 'object') && (func.length == 2)) { - // PHP style object + method, i.e. [myObject, 'myMethod'] - func[0][ func[1] ](this, args); - } - else if (typeof(func) == 'string') { - // name of function - window[func](this, args); - } - } // foreach event handler defined - } // user defined handler for event - } - -}; diff --git a/js/codemirror2.js b/js/codemirror2.js deleted file mode 100644 index 814df9b..0000000 --- a/js/codemirror2.js +++ /dev/null @@ -1,3404 +0,0 @@ -// CodeMirror version 2.34 - -// All functions that need access to the editor's state live inside -// the CodeMirror function. Below that, at the bottom of the file, -// some utilities are defined. - -// CodeMirror is the only global var we claim -window.CodeMirror = (function() { - "use strict"; - // This is the function that produces an editor instance. Its - // closure is used to store the editor state. - function CodeMirror(place, givenOptions) { - // Determine effective options based on given values and defaults. - var options = {}, defaults = CodeMirror.defaults; - for (var opt in defaults) - if (defaults.hasOwnProperty(opt)) - options[opt] = (givenOptions && givenOptions.hasOwnProperty(opt) ? givenOptions : defaults)[opt]; - - var input = elt("textarea", null, null, "position: absolute; padding: 0; width: 1px; height: 1em"); - input.setAttribute("wrap", "off"); input.setAttribute("autocorrect", "off"); input.setAttribute("autocapitalize", "off"); - // Wraps and hides input textarea - var inputDiv = elt("div", [input], null, "overflow: hidden; position: relative; width: 3px; height: 0px;"); - // The empty scrollbar content, used solely for managing the scrollbar thumb. - var scrollbarInner = elt("div", null, "CodeMirror-scrollbar-inner"); - // The vertical scrollbar. Horizontal scrolling is handled by the scroller itself. - var scrollbar = elt("div", [scrollbarInner], "CodeMirror-scrollbar"); - // DIVs containing the selection and the actual code - var lineDiv = elt("div"), selectionDiv = elt("div", null, null, "position: relative; z-index: -1"); - // Blinky cursor, and element used to ensure cursor fits at the end of a line - var cursor = elt("pre", "\u00a0", "CodeMirror-cursor"), widthForcer = elt("pre", "\u00a0", "CodeMirror-cursor", "visibility: hidden"); - // Used to measure text size - var measure = elt("div", null, null, "position: absolute; width: 100%; height: 0px; overflow: hidden; visibility: hidden;"); - var lineSpace = elt("div", [measure, cursor, widthForcer, selectionDiv, lineDiv], null, "position: relative; z-index: 0"); - var gutterText = elt("div", null, "CodeMirror-gutter-text"), gutter = elt("div", [gutterText], "CodeMirror-gutter"); - // Moved around its parent to cover visible view - var mover = elt("div", [gutter, elt("div", [lineSpace], "CodeMirror-lines")], null, "position: relative"); - // Set to the height of the text, causes scrolling - var sizer = elt("div", [mover], null, "position: relative"); - // Provides scrolling - var scroller = elt("div", [sizer], "CodeMirror-scroll"); - scroller.setAttribute("tabIndex", "-1"); - // The element in which the editor lives. - var wrapper = elt("div", [inputDiv, scrollbar, scroller], "CodeMirror" + (options.lineWrapping ? " CodeMirror-wrap" : "")); - if (place.appendChild) place.appendChild(wrapper); else place(wrapper); - - themeChanged(); keyMapChanged(); - // Needed to hide big blue blinking cursor on Mobile Safari - if (ios) input.style.width = "0px"; - if (!webkit) scroller.draggable = true; - lineSpace.style.outline = "none"; - if (options.tabindex != null) input.tabIndex = options.tabindex; - if (options.autofocus) focusInput(); - if (!options.gutter && !options.lineNumbers) gutter.style.display = "none"; - // Needed to handle Tab key in KHTML - if (khtml) inputDiv.style.height = "1px", inputDiv.style.position = "absolute"; - - // Check for OS X >= 10.7. This has transparent scrollbars, so the - // overlaying of one scrollbar with another won't work. This is a - // temporary hack to simply turn off the overlay scrollbar. See - // issue #727. - if (mac_geLion) { scrollbar.style.zIndex = -2; scrollbar.style.visibility = "hidden"; } - // Need to set a minimum width to see the scrollbar on IE7 (but must not set it on IE8). - else if (ie_lt8) scrollbar.style.minWidth = "18px"; - - // Delayed object wrap timeouts, making sure only one is active. blinker holds an interval. - var poll = new Delayed(), highlight = new Delayed(), blinker; - - // mode holds a mode API object. doc is the tree of Line objects, - // frontier is the point up to which the content has been parsed, - // and history the undo history (instance of History constructor). - var mode, doc = new BranchChunk([new LeafChunk([new Line("")])]), frontier = 0, focused; - loadMode(); - // The selection. These are always maintained to point at valid - // positions. Inverted is used to remember that the user is - // selecting bottom-to-top. - var sel = {from: {line: 0, ch: 0}, to: {line: 0, ch: 0}, inverted: false}; - // Selection-related flags. shiftSelecting obviously tracks - // whether the user is holding shift. - var shiftSelecting, lastClick, lastDoubleClick, lastScrollTop = 0, draggingText, - overwrite = false, suppressEdits = false; - // Variables used by startOperation/endOperation to track what - // happened during the operation. - var updateInput, userSelChange, changes, textChanged, selectionChanged, - gutterDirty, callbacks; - // Current visible range (may be bigger than the view window). - var displayOffset = 0, showingFrom = 0, showingTo = 0, lastSizeC = 0; - // bracketHighlighted is used to remember that a bracket has been - // marked. - var bracketHighlighted; - // Tracks the maximum line length so that the horizontal scrollbar - // can be kept static when scrolling. - var maxLine = getLine(0), updateMaxLine = false, maxLineChanged = true; - var pollingFast = false; // Ensures slowPoll doesn't cancel fastPoll - var goalColumn = null; - - // Initialize the content. - operation(function(){setValue(options.value || ""); updateInput = false;})(); - var history = new History(); - - // Register our event handlers. - connect(scroller, "mousedown", operation(onMouseDown)); - connect(scroller, "dblclick", operation(onDoubleClick)); - connect(lineSpace, "selectstart", e_preventDefault); - // Gecko browsers fire contextmenu *after* opening the menu, at - // which point we can't mess with it anymore. Context menu is - // handled in onMouseDown for Gecko. - if (!gecko) connect(scroller, "contextmenu", onContextMenu); - connect(scroller, "scroll", onScrollMain); - connect(scrollbar, "scroll", onScrollBar); - connect(scrollbar, "mousedown", function() {if (focused) setTimeout(focusInput, 0);}); - var resizeHandler = connect(window, "resize", function() { - if (wrapper.parentNode) updateDisplay(true); - else resizeHandler(); - }, true); - connect(input, "keyup", operation(onKeyUp)); - connect(input, "input", fastPoll); - connect(input, "keydown", operation(onKeyDown)); - connect(input, "keypress", operation(onKeyPress)); - connect(input, "focus", onFocus); - connect(input, "blur", onBlur); - - function drag_(e) { - if (options.onDragEvent && options.onDragEvent(instance, addStop(e))) return; - e_stop(e); - } - if (options.dragDrop) { - connect(scroller, "dragstart", onDragStart); - connect(scroller, "dragenter", drag_); - connect(scroller, "dragover", drag_); - connect(scroller, "drop", operation(onDrop)); - } - connect(scroller, "paste", function(){focusInput(); fastPoll();}); - connect(input, "paste", fastPoll); - connect(input, "cut", operation(function(){ - if (!options.readOnly) replaceSelection(""); - })); - - // Needed to handle Tab key in KHTML - if (khtml) connect(sizer, "mouseup", function() { - if (document.activeElement == input) input.blur(); - focusInput(); - }); - - // IE throws unspecified error in certain cases, when - // trying to access activeElement before onload - var hasFocus; try { hasFocus = (document.activeElement == input); } catch(e) { } - if (hasFocus || options.autofocus) setTimeout(onFocus, 20); - else onBlur(); - - function isLine(l) {return l >= 0 && l < doc.size;} - // The instance object that we'll return. Mostly calls out to - // local functions in the CodeMirror function. Some do some extra - // range checking and/or clipping. operation is used to wrap the - // call so that changes it makes are tracked, and the display is - // updated afterwards. - var instance = wrapper.CodeMirror = { - getValue: getValue, - setValue: operation(setValue), - getSelection: getSelection, - replaceSelection: operation(replaceSelection), - getCode: getValue, - setCode: setValue, - focus: function(){window.focus(); focusInput(); onFocus(); fastPoll();}, - setOption: function(option, value) { - var oldVal = options[option]; - options[option] = value; - if (option == "mode" || option == "indentUnit") loadMode(); - else if (option == "readOnly" && value == "nocursor") {onBlur(); input.blur();} - else if (option == "readOnly" && !value) {resetInput(true);} - else if (option == "theme") themeChanged(); - else if (option == "lineWrapping" && oldVal != value) operation(wrappingChanged)(); - else if (option == "tabSize") updateDisplay(true); - else if (option == "keyMap") keyMapChanged(); - if (option == "lineNumbers" || option == "gutter" || option == "firstLineNumber" || - option == "theme" || option == "lineNumberFormatter") { - gutterChanged(); - updateDisplay(true); - } - }, - getOption: function(option) {return options[option];}, - getMode: function() {return mode;}, - undo: operation(undo), - redo: operation(redo), - indentLine: operation(function(n, dir) { - if (typeof dir != "string") { - if (dir == null) dir = options.smartIndent ? "smart" : "prev"; - else dir = dir ? "add" : "subtract"; - } - if (isLine(n)) indentLine(n, dir); - }), - indentSelection: operation(indentSelected), - historySize: function() {return {undo: history.done.length, redo: history.undone.length};}, - clearHistory: function() {history = new History();}, - setHistory: function(histData) { - history = new History(); - history.done = histData.done; - history.undone = histData.undone; - }, - getHistory: function() { - function cp(arr) { - for (var i = 0, nw = [], nwelt; i < arr.length; ++i) { - nw.push(nwelt = []); - for (var j = 0, elt = arr[i]; j < elt.length; ++j) { - var old = [], cur = elt[j]; - nwelt.push({start: cur.start, added: cur.added, old: old}); - for (var k = 0; k < cur.old.length; ++k) old.push(hlText(cur.old[k])); - } - } - return nw; - } - return {done: cp(history.done), undone: cp(history.undone)}; - }, - matchBrackets: operation(function(){matchBrackets(true);}), - getTokenAt: operation(function(pos) { - pos = clipPos(pos); - return getLine(pos.line).getTokenAt(mode, getStateBefore(pos.line), options.tabSize, pos.ch); - }), - getStateAfter: function(line) { - line = clipLine(line == null ? doc.size - 1: line); - return getStateBefore(line + 1); - }, - cursorCoords: function(start, mode) { - if (start == null) start = sel.inverted; - return this.charCoords(start ? sel.from : sel.to, mode); - }, - charCoords: function(pos, mode) { - pos = clipPos(pos); - if (mode == "local") return localCoords(pos, false); - if (mode == "div") return localCoords(pos, true); - return pageCoords(pos); - }, - coordsChar: function(coords) { - var off = eltOffset(lineSpace); - return coordsChar(coords.x - off.left, coords.y - off.top); - }, - markText: operation(markText), - setBookmark: setBookmark, - findMarksAt: findMarksAt, - setMarker: operation(addGutterMarker), - clearMarker: operation(removeGutterMarker), - setLineClass: operation(setLineClass), - hideLine: operation(function(h) {return setLineHidden(h, true);}), - showLine: operation(function(h) {return setLineHidden(h, false);}), - onDeleteLine: function(line, f) { - if (typeof line == "number") { - if (!isLine(line)) return null; - line = getLine(line); - } - (line.handlers || (line.handlers = [])).push(f); - return line; - }, - lineInfo: lineInfo, - getViewport: function() { return {from: showingFrom, to: showingTo};}, - addWidget: function(pos, node, scroll, vert, horiz) { - pos = localCoords(clipPos(pos)); - var top = pos.yBot, left = pos.x; - node.style.position = "absolute"; - sizer.appendChild(node); - if (vert == "over") top = pos.y; - else if (vert == "near") { - var vspace = Math.max(scroller.offsetHeight, doc.height * textHeight()), - hspace = Math.max(sizer.clientWidth, lineSpace.clientWidth) - paddingLeft(); - if (pos.yBot + node.offsetHeight > vspace && pos.y > node.offsetHeight) - top = pos.y - node.offsetHeight; - if (left + node.offsetWidth > hspace) - left = hspace - node.offsetWidth; - } - node.style.top = (top + paddingTop()) + "px"; - node.style.left = node.style.right = ""; - if (horiz == "right") { - left = sizer.clientWidth - node.offsetWidth; - node.style.right = "0px"; - } else { - if (horiz == "left") left = 0; - else if (horiz == "middle") left = (sizer.clientWidth - node.offsetWidth) / 2; - node.style.left = (left + paddingLeft()) + "px"; - } - if (scroll) - scrollIntoView(left, top, left + node.offsetWidth, top + node.offsetHeight); - }, - - lineCount: function() {return doc.size;}, - clipPos: clipPos, - getCursor: function(start) { - if (start == null) start = sel.inverted; - return copyPos(start ? sel.from : sel.to); - }, - somethingSelected: function() {return !posEq(sel.from, sel.to);}, - setCursor: operation(function(line, ch, user) { - if (ch == null && typeof line.line == "number") setCursor(line.line, line.ch, user); - else setCursor(line, ch, user); - }), - setSelection: operation(function(from, to, user) { - (user ? setSelectionUser : setSelection)(clipPos(from), clipPos(to || from)); - }), - getLine: function(line) {if (isLine(line)) return getLine(line).text;}, - getLineHandle: function(line) {if (isLine(line)) return getLine(line);}, - setLine: operation(function(line, text) { - if (isLine(line)) replaceRange(text, {line: line, ch: 0}, {line: line, ch: getLine(line).text.length}); - }), - removeLine: operation(function(line) { - if (isLine(line)) replaceRange("", {line: line, ch: 0}, clipPos({line: line+1, ch: 0})); - }), - replaceRange: operation(replaceRange), - getRange: function(from, to, lineSep) {return getRange(clipPos(from), clipPos(to), lineSep);}, - - triggerOnKeyDown: operation(onKeyDown), - execCommand: function(cmd) {return commands[cmd](instance);}, - // Stuff used by commands, probably not much use to outside code. - moveH: operation(moveH), - deleteH: operation(deleteH), - moveV: operation(moveV), - toggleOverwrite: function() { - if(overwrite){ - overwrite = false; - cursor.className = cursor.className.replace(" CodeMirror-overwrite", ""); - } else { - overwrite = true; - cursor.className += " CodeMirror-overwrite"; - } - }, - - posFromIndex: function(off) { - var lineNo = 0, ch; - doc.iter(0, doc.size, function(line) { - var sz = line.text.length + 1; - if (sz > off) { ch = off; return true; } - off -= sz; - ++lineNo; - }); - return clipPos({line: lineNo, ch: ch}); - }, - indexFromPos: function (coords) { - if (coords.line < 0 || coords.ch < 0) return 0; - var index = coords.ch; - doc.iter(0, coords.line, function (line) { - index += line.text.length + 1; - }); - return index; - }, - scrollTo: function(x, y) { - if (x != null) scroller.scrollLeft = x; - if (y != null) scrollbar.scrollTop = scroller.scrollTop = y; - updateDisplay([]); - }, - getScrollInfo: function() { - return {x: scroller.scrollLeft, y: scrollbar.scrollTop, - height: scrollbar.scrollHeight, width: scroller.scrollWidth}; - }, - setSize: function(width, height) { - function interpret(val) { - val = String(val); - return /^\d+$/.test(val) ? val + "px" : val; - } - if (width != null) wrapper.style.width = interpret(width); - if (height != null) scroller.style.height = interpret(height); - instance.refresh(); - }, - - operation: function(f){return operation(f)();}, - compoundChange: function(f){return compoundChange(f);}, - refresh: function(){ - updateDisplay(true, null, lastScrollTop); - if (scrollbar.scrollHeight > lastScrollTop) - scrollbar.scrollTop = lastScrollTop; - }, - getInputField: function(){return input;}, - getWrapperElement: function(){return wrapper;}, - getScrollerElement: function(){return scroller;}, - getGutterElement: function(){return gutter;} - }; - - function getLine(n) { return getLineAt(doc, n); } - function updateLineHeight(line, height) { - gutterDirty = true; - var diff = height - line.height; - for (var n = line; n; n = n.parent) n.height += diff; - } - - function lineContent(line, wrapAt) { - if (!line.styles) - line.highlight(mode, line.stateAfter = getStateBefore(lineNo(line)), options.tabSize); - return line.getContent(options.tabSize, wrapAt, options.lineWrapping); - } - - function setValue(code) { - var top = {line: 0, ch: 0}; - updateLines(top, {line: doc.size - 1, ch: getLine(doc.size-1).text.length}, - splitLines(code), top, top); - updateInput = true; - } - function getValue(lineSep) { - var text = []; - doc.iter(0, doc.size, function(line) { text.push(line.text); }); - return text.join(lineSep || "\n"); - } - - function onScrollBar(e) { - if (scrollbar.scrollTop != lastScrollTop) { - lastScrollTop = scroller.scrollTop = scrollbar.scrollTop; - updateDisplay([]); - } - } - - function onScrollMain(e) { - if (options.fixedGutter && gutter.style.left != scroller.scrollLeft + "px") - gutter.style.left = scroller.scrollLeft + "px"; - if (scroller.scrollTop != lastScrollTop) { - lastScrollTop = scroller.scrollTop; - if (scrollbar.scrollTop != lastScrollTop) - scrollbar.scrollTop = lastScrollTop; - updateDisplay([]); - } - if (options.onScroll) options.onScroll(instance); - } - - function onMouseDown(e) { - setShift(e_prop(e, "shiftKey")); - // Check whether this is a click in a widget - for (var n = e_target(e); n != wrapper; n = n.parentNode) - if (n.parentNode == sizer && n != mover) return; - - // See if this is a click in the gutter - for (var n = e_target(e); n != wrapper; n = n.parentNode) - if (n.parentNode == gutterText) { - if (options.onGutterClick) - options.onGutterClick(instance, indexOf(gutterText.childNodes, n) + showingFrom, e); - return e_preventDefault(e); - } - - var start = posFromMouse(e); - - switch (e_button(e)) { - case 3: - if (gecko) onContextMenu(e); - return; - case 2: - if (start) setCursor(start.line, start.ch, true); - setTimeout(focusInput, 20); - e_preventDefault(e); - return; - } - // For button 1, if it was clicked inside the editor - // (posFromMouse returning non-null), we have to adjust the - // selection. - if (!start) {if (e_target(e) == scroller) e_preventDefault(e); return;} - - if (!focused) onFocus(); - - var now = +new Date, type = "single"; - if (lastDoubleClick && lastDoubleClick.time > now - 400 && posEq(lastDoubleClick.pos, start)) { - type = "triple"; - e_preventDefault(e); - setTimeout(focusInput, 20); - selectLine(start.line); - } else if (lastClick && lastClick.time > now - 400 && posEq(lastClick.pos, start)) { - type = "double"; - lastDoubleClick = {time: now, pos: start}; - e_preventDefault(e); - var word = findWordAt(start); - setSelectionUser(word.from, word.to); - } else { lastClick = {time: now, pos: start}; } - - function dragEnd(e2) { - if (webkit) scroller.draggable = false; - draggingText = false; - up(); drop(); - if (Math.abs(e.clientX - e2.clientX) + Math.abs(e.clientY - e2.clientY) < 10) { - e_preventDefault(e2); - setCursor(start.line, start.ch, true); - focusInput(); - } - } - var last = start, going; - if (options.dragDrop && dragAndDrop && !options.readOnly && !posEq(sel.from, sel.to) && - !posLess(start, sel.from) && !posLess(sel.to, start) && type == "single") { - // Let the drag handler handle this. - if (webkit) scroller.draggable = true; - var up = connect(document, "mouseup", operation(dragEnd), true); - var drop = connect(scroller, "drop", operation(dragEnd), true); - draggingText = true; - // IE's approach to draggable - if (scroller.dragDrop) scroller.dragDrop(); - return; - } - e_preventDefault(e); - if (type == "single") setCursor(start.line, start.ch, true); - - var startstart = sel.from, startend = sel.to; - - function doSelect(cur) { - if (type == "single") { - setSelectionUser(start, cur); - } else if (type == "double") { - var word = findWordAt(cur); - if (posLess(cur, startstart)) setSelectionUser(word.from, startend); - else setSelectionUser(startstart, word.to); - } else if (type == "triple") { - if (posLess(cur, startstart)) setSelectionUser(startend, clipPos({line: cur.line, ch: 0})); - else setSelectionUser(startstart, clipPos({line: cur.line + 1, ch: 0})); - } - } - - function extend(e) { - var cur = posFromMouse(e, true); - if (cur && !posEq(cur, last)) { - if (!focused) onFocus(); - last = cur; - doSelect(cur); - updateInput = false; - var visible = visibleLines(); - if (cur.line >= visible.to || cur.line < visible.from) - going = setTimeout(operation(function(){extend(e);}), 150); - } - } - - function done(e) { - clearTimeout(going); - var cur = posFromMouse(e); - if (cur) doSelect(cur); - e_preventDefault(e); - focusInput(); - updateInput = true; - move(); up(); - } - var move = connect(document, "mousemove", operation(function(e) { - clearTimeout(going); - e_preventDefault(e); - if (!ie && !e_button(e)) done(e); - else extend(e); - }), true); - var up = connect(document, "mouseup", operation(done), true); - } - function onDoubleClick(e) { - for (var n = e_target(e); n != wrapper; n = n.parentNode) - if (n.parentNode == gutterText) return e_preventDefault(e); - e_preventDefault(e); - } - function onDrop(e) { - if (options.onDragEvent && options.onDragEvent(instance, addStop(e))) return; - e_preventDefault(e); - var pos = posFromMouse(e, true), files = e.dataTransfer.files; - if (!pos || options.readOnly) return; - if (files && files.length && window.FileReader && window.File) { - var n = files.length, text = Array(n), read = 0; - var loadFile = function(file, i) { - var reader = new FileReader; - reader.onload = function() { - text[i] = reader.result; - if (++read == n) { - pos = clipPos(pos); - operation(function() { - var end = replaceRange(text.join(""), pos, pos); - setSelectionUser(pos, end); - })(); - } - }; - reader.readAsText(file); - }; - for (var i = 0; i < n; ++i) loadFile(files[i], i); - } else { - // Don't do a replace if the drop happened inside of the selected text. - if (draggingText && !(posLess(pos, sel.from) || posLess(sel.to, pos))) return; - try { - var text = e.dataTransfer.getData("Text"); - if (text) { - compoundChange(function() { - var curFrom = sel.from, curTo = sel.to; - setSelectionUser(pos, pos); - if (draggingText) replaceRange("", curFrom, curTo); - replaceSelection(text); - focusInput(); - }); - } - } - catch(e){} - } - } - function onDragStart(e) { - var txt = getSelection(); - e.dataTransfer.setData("Text", txt); - - // Use dummy image instead of default browsers image. - if (e.dataTransfer.setDragImage) - e.dataTransfer.setDragImage(elt('img'), 0, 0); - } - - function doHandleBinding(bound, dropShift) { - if (typeof bound == "string") { - bound = commands[bound]; - if (!bound) return false; - } - var prevShift = shiftSelecting; - try { - if (options.readOnly) suppressEdits = true; - if (dropShift) shiftSelecting = null; - bound(instance); - } catch(e) { - if (e != Pass) throw e; - return false; - } finally { - shiftSelecting = prevShift; - suppressEdits = false; - } - return true; - } - var maybeTransition; - function handleKeyBinding(e) { - // Handle auto keymap transitions - var startMap = getKeyMap(options.keyMap), next = startMap.auto; - clearTimeout(maybeTransition); - if (next && !isModifierKey(e)) maybeTransition = setTimeout(function() { - if (getKeyMap(options.keyMap) == startMap) { - options.keyMap = (next.call ? next.call(null, instance) : next); - } - }, 50); - - var name = keyNames[e_prop(e, "keyCode")], handled = false; - var flipCtrlCmd = opera && mac; - if (name == null || e.altGraphKey) return false; - if (e_prop(e, "altKey")) name = "Alt-" + name; - if (e_prop(e, flipCtrlCmd ? "metaKey" : "ctrlKey")) name = "Ctrl-" + name; - if (e_prop(e, flipCtrlCmd ? "ctrlKey" : "metaKey")) name = "Cmd-" + name; - - var stopped = false; - function stop() { stopped = true; } - - if (e_prop(e, "shiftKey")) { - handled = lookupKey("Shift-" + name, options.extraKeys, options.keyMap, - function(b) {return doHandleBinding(b, true);}, stop) - || lookupKey(name, options.extraKeys, options.keyMap, function(b) { - if (typeof b == "string" && /^go[A-Z]/.test(b)) return doHandleBinding(b); - }, stop); - } else { - handled = lookupKey(name, options.extraKeys, options.keyMap, doHandleBinding, stop); - } - if (stopped) handled = false; - if (handled) { - e_preventDefault(e); - restartBlink(); - if (ie) { e.oldKeyCode = e.keyCode; e.keyCode = 0; } - } - return handled; - } - function handleCharBinding(e, ch) { - var handled = lookupKey("'" + ch + "'", options.extraKeys, - options.keyMap, function(b) { return doHandleBinding(b, true); }); - if (handled) { - e_preventDefault(e); - restartBlink(); - } - return handled; - } - - var lastStoppedKey = null; - function onKeyDown(e) { - if (!focused) onFocus(); - if (ie && e.keyCode == 27) { e.returnValue = false; } - if (pollingFast) { if (readInput()) pollingFast = false; } - if (options.onKeyEvent && options.onKeyEvent(instance, addStop(e))) return; - var code = e_prop(e, "keyCode"); - // IE does strange things with escape. - setShift(code == 16 || e_prop(e, "shiftKey")); - // First give onKeyEvent option a chance to handle this. - var handled = handleKeyBinding(e); - if (opera) { - lastStoppedKey = handled ? code : null; - // Opera has no cut event... we try to at least catch the key combo - if (!handled && code == 88 && e_prop(e, mac ? "metaKey" : "ctrlKey")) - replaceSelection(""); - } - } - function onKeyPress(e) { - if (pollingFast) readInput(); - if (options.onKeyEvent && options.onKeyEvent(instance, addStop(e))) return; - var keyCode = e_prop(e, "keyCode"), charCode = e_prop(e, "charCode"); - if (opera && keyCode == lastStoppedKey) {lastStoppedKey = null; e_preventDefault(e); return;} - if (((opera && (!e.which || e.which < 10)) || khtml) && handleKeyBinding(e)) return; - var ch = String.fromCharCode(charCode == null ? keyCode : charCode); - if (options.electricChars && mode.electricChars && options.smartIndent && !options.readOnly) { - if (mode.electricChars.indexOf(ch) > -1) - setTimeout(operation(function() {indentLine(sel.to.line, "smart");}), 75); - } - if (handleCharBinding(e, ch)) return; - fastPoll(); - } - function onKeyUp(e) { - if (options.onKeyEvent && options.onKeyEvent(instance, addStop(e))) return; - if (e_prop(e, "keyCode") == 16) shiftSelecting = null; - } - - function onFocus() { - if (options.readOnly == "nocursor") return; - if (!focused) { - if (options.onFocus) options.onFocus(instance); - focused = true; - if (scroller.className.search(/\bCodeMirror-focused\b/) == -1) - scroller.className += " CodeMirror-focused"; - } - slowPoll(); - restartBlink(); - } - function onBlur() { - if (focused) { - if (options.onBlur) options.onBlur(instance); - focused = false; - if (bracketHighlighted) - operation(function(){ - if (bracketHighlighted) { bracketHighlighted(); bracketHighlighted = null; } - })(); - scroller.className = scroller.className.replace(" CodeMirror-focused", ""); - } - clearInterval(blinker); - setTimeout(function() {if (!focused) shiftSelecting = null;}, 150); - } - - // Replace the range from from to to by the strings in newText. - // Afterwards, set the selection to selFrom, selTo. - function updateLines(from, to, newText, selFrom, selTo) { - if (suppressEdits) return; - var old = []; - doc.iter(from.line, to.line + 1, function(line) { - old.push(newHL(line.text, line.markedSpans)); - }); - if (history) { - history.addChange(from.line, newText.length, old); - while (history.done.length > options.undoDepth) history.done.shift(); - } - var lines = updateMarkedSpans(hlSpans(old[0]), hlSpans(lst(old)), from.ch, to.ch, newText); - updateLinesNoUndo(from, to, lines, selFrom, selTo); - } - function unredoHelper(from, to) { - if (!from.length) return; - var set = from.pop(), out = []; - for (var i = set.length - 1; i >= 0; i -= 1) { - var change = set[i]; - var replaced = [], end = change.start + change.added; - doc.iter(change.start, end, function(line) { replaced.push(newHL(line.text, line.markedSpans)); }); - out.push({start: change.start, added: change.old.length, old: replaced}); - var pos = {line: change.start + change.old.length - 1, - ch: editEnd(hlText(lst(replaced)), hlText(lst(change.old)))}; - updateLinesNoUndo({line: change.start, ch: 0}, {line: end - 1, ch: getLine(end-1).text.length}, - change.old, pos, pos); - } - updateInput = true; - to.push(out); - } - function undo() {unredoHelper(history.done, history.undone);} - function redo() {unredoHelper(history.undone, history.done);} - - function updateLinesNoUndo(from, to, lines, selFrom, selTo) { - if (suppressEdits) return; - var recomputeMaxLength = false, maxLineLength = maxLine.text.length; - if (!options.lineWrapping) - doc.iter(from.line, to.line + 1, function(line) { - if (!line.hidden && line.text.length == maxLineLength) {recomputeMaxLength = true; return true;} - }); - if (from.line != to.line || lines.length > 1) gutterDirty = true; - - var nlines = to.line - from.line, firstLine = getLine(from.line), lastLine = getLine(to.line); - var lastHL = lst(lines); - - // First adjust the line structure - if (from.ch == 0 && to.ch == 0 && hlText(lastHL) == "") { - // This is a whole-line replace. Treated specially to make - // sure line objects move the way they are supposed to. - var added = [], prevLine = null; - for (var i = 0, e = lines.length - 1; i < e; ++i) - added.push(new Line(hlText(lines[i]), hlSpans(lines[i]))); - lastLine.update(lastLine.text, hlSpans(lastHL)); - if (nlines) doc.remove(from.line, nlines, callbacks); - if (added.length) doc.insert(from.line, added); - } else if (firstLine == lastLine) { - if (lines.length == 1) { - firstLine.update(firstLine.text.slice(0, from.ch) + hlText(lines[0]) + firstLine.text.slice(to.ch), hlSpans(lines[0])); - } else { - for (var added = [], i = 1, e = lines.length - 1; i < e; ++i) - added.push(new Line(hlText(lines[i]), hlSpans(lines[i]))); - added.push(new Line(hlText(lastHL) + firstLine.text.slice(to.ch), hlSpans(lastHL))); - firstLine.update(firstLine.text.slice(0, from.ch) + hlText(lines[0]), hlSpans(lines[0])); - doc.insert(from.line + 1, added); - } - } else if (lines.length == 1) { - firstLine.update(firstLine.text.slice(0, from.ch) + hlText(lines[0]) + lastLine.text.slice(to.ch), hlSpans(lines[0])); - doc.remove(from.line + 1, nlines, callbacks); - } else { - var added = []; - firstLine.update(firstLine.text.slice(0, from.ch) + hlText(lines[0]), hlSpans(lines[0])); - lastLine.update(hlText(lastHL) + lastLine.text.slice(to.ch), hlSpans(lastHL)); - for (var i = 1, e = lines.length - 1; i < e; ++i) - added.push(new Line(hlText(lines[i]), hlSpans(lines[i]))); - if (nlines > 1) doc.remove(from.line + 1, nlines - 1, callbacks); - doc.insert(from.line + 1, added); - } - if (options.lineWrapping) { - var perLine = Math.max(5, scroller.clientWidth / charWidth() - 3); - doc.iter(from.line, from.line + lines.length, function(line) { - if (line.hidden) return; - var guess = Math.ceil(line.text.length / perLine) || 1; - if (guess != line.height) updateLineHeight(line, guess); - }); - } else { - doc.iter(from.line, from.line + lines.length, function(line) { - var l = line.text; - if (!line.hidden && l.length > maxLineLength) { - maxLine = line; maxLineLength = l.length; maxLineChanged = true; - recomputeMaxLength = false; - } - }); - if (recomputeMaxLength) updateMaxLine = true; - } - - // Adjust frontier, schedule worker - frontier = Math.min(frontier, from.line); - startWorker(400); - - var lendiff = lines.length - nlines - 1; - // Remember that these lines changed, for updating the display - changes.push({from: from.line, to: to.line + 1, diff: lendiff}); - if (options.onChange) { - // Normalize lines to contain only strings, since that's what - // the change event handler expects - for (var i = 0; i < lines.length; ++i) - if (typeof lines[i] != "string") lines[i] = lines[i].text; - var changeObj = {from: from, to: to, text: lines}; - if (textChanged) { - for (var cur = textChanged; cur.next; cur = cur.next) {} - cur.next = changeObj; - } else textChanged = changeObj; - } - - // Update the selection - function updateLine(n) {return n <= Math.min(to.line, to.line + lendiff) ? n : n + lendiff;} - setSelection(clipPos(selFrom), clipPos(selTo), - updateLine(sel.from.line), updateLine(sel.to.line)); - } - - function needsScrollbar() { - var realHeight = doc.height * textHeight() + 2 * paddingTop(); - return realHeight * .99 > scroller.offsetHeight ? realHeight : false; - } - - function updateVerticalScroll(scrollTop) { - var scrollHeight = needsScrollbar(); - scrollbar.style.display = scrollHeight ? "block" : "none"; - if (scrollHeight) { - scrollbarInner.style.height = sizer.style.minHeight = scrollHeight + "px"; - scrollbar.style.height = scroller.clientHeight + "px"; - if (scrollTop != null) { - scrollbar.scrollTop = scroller.scrollTop = scrollTop; - // 'Nudge' the scrollbar to work around a Webkit bug where, - // in some situations, we'd end up with a scrollbar that - // reported its scrollTop (and looked) as expected, but - // *behaved* as if it was still in a previous state (i.e. - // couldn't scroll up, even though it appeared to be at the - // bottom). - if (webkit) setTimeout(function() { - if (scrollbar.scrollTop != scrollTop) return; - scrollbar.scrollTop = scrollTop + (scrollTop ? -1 : 1); - scrollbar.scrollTop = scrollTop; - }, 0); - } - } else { - sizer.style.minHeight = ""; - } - // Position the mover div to align with the current virtual scroll position - mover.style.top = displayOffset * textHeight() + "px"; - } - - function computeMaxLength() { - maxLine = getLine(0); maxLineChanged = true; - var maxLineLength = maxLine.text.length; - doc.iter(1, doc.size, function(line) { - var l = line.text; - if (!line.hidden && l.length > maxLineLength) { - maxLineLength = l.length; maxLine = line; - } - }); - updateMaxLine = false; - } - - function replaceRange(code, from, to) { - from = clipPos(from); - if (!to) to = from; else to = clipPos(to); - code = splitLines(code); - function adjustPos(pos) { - if (posLess(pos, from)) return pos; - if (!posLess(to, pos)) return end; - var line = pos.line + code.length - (to.line - from.line) - 1; - var ch = pos.ch; - if (pos.line == to.line) - ch += lst(code).length - (to.ch - (to.line == from.line ? from.ch : 0)); - return {line: line, ch: ch}; - } - var end; - replaceRange1(code, from, to, function(end1) { - end = end1; - return {from: adjustPos(sel.from), to: adjustPos(sel.to)}; - }); - return end; - } - function replaceSelection(code, collapse) { - replaceRange1(splitLines(code), sel.from, sel.to, function(end) { - if (collapse == "end") return {from: end, to: end}; - else if (collapse == "start") return {from: sel.from, to: sel.from}; - else return {from: sel.from, to: end}; - }); - } - function replaceRange1(code, from, to, computeSel) { - var endch = code.length == 1 ? code[0].length + from.ch : lst(code).length; - var newSel = computeSel({line: from.line + code.length - 1, ch: endch}); - updateLines(from, to, code, newSel.from, newSel.to); - } - - function getRange(from, to, lineSep) { - var l1 = from.line, l2 = to.line; - if (l1 == l2) return getLine(l1).text.slice(from.ch, to.ch); - var code = [getLine(l1).text.slice(from.ch)]; - doc.iter(l1 + 1, l2, function(line) { code.push(line.text); }); - code.push(getLine(l2).text.slice(0, to.ch)); - return code.join(lineSep || "\n"); - } - function getSelection(lineSep) { - return getRange(sel.from, sel.to, lineSep); - } - - function slowPoll() { - if (pollingFast) return; - poll.set(options.pollInterval, function() { - readInput(); - if (focused) slowPoll(); - }); - } - function fastPoll() { - var missed = false; - pollingFast = true; - function p() { - var changed = readInput(); - if (!changed && !missed) {missed = true; poll.set(60, p);} - else {pollingFast = false; slowPoll();} - } - poll.set(20, p); - } - - // Previnput is a hack to work with IME. If we reset the textarea - // on every change, that breaks IME. So we look for changes - // compared to the previous content instead. (Modern browsers have - // events that indicate IME taking place, but these are not widely - // supported or compatible enough yet to rely on.) - var prevInput = ""; - function readInput() { - if (!focused || hasSelection(input) || options.readOnly) return false; - var text = input.value; - if (text == prevInput) return false; - if (!nestedOperation) startOperation(); - shiftSelecting = null; - var same = 0, l = Math.min(prevInput.length, text.length); - while (same < l && prevInput[same] == text[same]) ++same; - if (same < prevInput.length) - sel.from = {line: sel.from.line, ch: sel.from.ch - (prevInput.length - same)}; - else if (overwrite && posEq(sel.from, sel.to)) - sel.to = {line: sel.to.line, ch: Math.min(getLine(sel.to.line).text.length, sel.to.ch + (text.length - same))}; - replaceSelection(text.slice(same), "end"); - if (text.length > 1000) { input.value = prevInput = ""; } - else prevInput = text; - if (!nestedOperation) endOperation(); - return true; - } - function resetInput(user) { - if (!posEq(sel.from, sel.to)) { - prevInput = ""; - input.value = getSelection(); - if (focused) selectInput(input); - } else if (user) prevInput = input.value = ""; - } - - function focusInput() { - if (options.readOnly != "nocursor") input.focus(); - } - - function scrollCursorIntoView() { - var coords = calculateCursorCoords(); - scrollIntoView(coords.x, coords.y, coords.x, coords.yBot); - if (!focused) return; - var box = sizer.getBoundingClientRect(), doScroll = null; - if (coords.y + box.top < 0) doScroll = true; - else if (coords.y + box.top + textHeight() > (window.innerHeight || document.documentElement.clientHeight)) doScroll = false; - if (doScroll != null) { - var hidden = cursor.style.display == "none"; - if (hidden) { - cursor.style.display = ""; - cursor.style.left = coords.x + "px"; - cursor.style.top = (coords.y - displayOffset) + "px"; - } - cursor.scrollIntoView(doScroll); - if (hidden) cursor.style.display = "none"; - } - } - function calculateCursorCoords() { - var cursor = localCoords(sel.inverted ? sel.from : sel.to); - var x = options.lineWrapping ? Math.min(cursor.x, lineSpace.offsetWidth) : cursor.x; - return {x: x, y: cursor.y, yBot: cursor.yBot}; - } - function scrollIntoView(x1, y1, x2, y2) { - var scrollPos = calculateScrollPos(x1, y1, x2, y2); - if (scrollPos.scrollLeft != null) {scroller.scrollLeft = scrollPos.scrollLeft;} - if (scrollPos.scrollTop != null) {scrollbar.scrollTop = scroller.scrollTop = scrollPos.scrollTop;} - } - function calculateScrollPos(x1, y1, x2, y2) { - var pl = paddingLeft(), pt = paddingTop(); - y1 += pt; y2 += pt; x1 += pl; x2 += pl; - var screen = scroller.clientHeight, screentop = scrollbar.scrollTop, result = {}; - var docBottom = needsScrollbar() || Infinity; - var atTop = y1 < pt + 10, atBottom = y2 + pt > docBottom - 10; - if (y1 < screentop) result.scrollTop = atTop ? 0 : Math.max(0, y1); - else if (y2 > screentop + screen) result.scrollTop = (atBottom ? docBottom : y2) - screen; - - var screenw = scroller.clientWidth, screenleft = scroller.scrollLeft; - var gutterw = options.fixedGutter ? gutter.clientWidth : 0; - var atLeft = x1 < gutterw + pl + 10; - if (x1 < screenleft + gutterw || atLeft) { - if (atLeft) x1 = 0; - result.scrollLeft = Math.max(0, x1 - 10 - gutterw); - } else if (x2 > screenw + screenleft - 3) { - result.scrollLeft = x2 + 10 - screenw; - } - return result; - } - - function visibleLines(scrollTop) { - var lh = textHeight(), top = (scrollTop != null ? scrollTop : scrollbar.scrollTop) - paddingTop(); - var fromHeight = Math.max(0, Math.floor(top / lh)); - var toHeight = Math.ceil((top + scroller.clientHeight) / lh); - return {from: lineAtHeight(doc, fromHeight), - to: lineAtHeight(doc, toHeight)}; - } - // Uses a set of changes plus the current scroll position to - // determine which DOM updates have to be made, and makes the - // updates. - function updateDisplay(changes, suppressCallback, scrollTop) { - if (!scroller.clientWidth) { - showingFrom = showingTo = displayOffset = 0; - return; - } - // Compute the new visible window - // If scrollTop is specified, use that to determine which lines - // to render instead of the current scrollbar position. - var visible = visibleLines(scrollTop); - // Bail out if the visible area is already rendered and nothing changed. - if (changes !== true && changes.length == 0 && visible.from > showingFrom && visible.to < showingTo) { - updateVerticalScroll(scrollTop); - return; - } - var from = Math.max(visible.from - 100, 0), to = Math.min(doc.size, visible.to + 100); - if (showingFrom < from && from - showingFrom < 20) from = showingFrom; - if (showingTo > to && showingTo - to < 20) to = Math.min(doc.size, showingTo); - - // Create a range of theoretically intact lines, and punch holes - // in that using the change info. - var intact = changes === true ? [] : - computeIntact([{from: showingFrom, to: showingTo, domStart: 0}], changes); - // Clip off the parts that won't be visible - var intactLines = 0; - for (var i = 0; i < intact.length; ++i) { - var range = intact[i]; - if (range.from < from) {range.domStart += (from - range.from); range.from = from;} - if (range.to > to) range.to = to; - if (range.from >= range.to) intact.splice(i--, 1); - else intactLines += range.to - range.from; - } - if (intactLines == to - from && from == showingFrom && to == showingTo) { - updateVerticalScroll(scrollTop); - return; - } - intact.sort(function(a, b) {return a.domStart - b.domStart;}); - - var th = textHeight(), gutterDisplay = gutter.style.display; - lineDiv.style.display = "none"; - patchDisplay(from, to, intact); - lineDiv.style.display = gutter.style.display = ""; - - var different = from != showingFrom || to != showingTo || lastSizeC != scroller.clientHeight + th; - // This is just a bogus formula that detects when the editor is - // resized or the font size changes. - if (different) lastSizeC = scroller.clientHeight + th; - if (from != showingFrom || to != showingTo && options.onViewportChange) - setTimeout(function(){ - if (options.onViewportChange) options.onViewportChange(instance, from, to); - }); - showingFrom = from; showingTo = to; - displayOffset = heightAtLine(doc, from); - startWorker(100); - - // Since this is all rather error prone, it is honoured with the - // only assertion in the whole file. - if (lineDiv.childNodes.length != showingTo - showingFrom) - throw new Error("BAD PATCH! " + JSON.stringify(intact) + " size=" + (showingTo - showingFrom) + - " nodes=" + lineDiv.childNodes.length); - - function checkHeights() { - var curNode = lineDiv.firstChild, heightChanged = false; - doc.iter(showingFrom, showingTo, function(line) { - // Work around bizarro IE7 bug where, sometimes, our curNode - // is magically replaced with a new node in the DOM, leaving - // us with a reference to an orphan (nextSibling-less) node. - if (!curNode) return; - if (!line.hidden) { - var height = Math.round(curNode.offsetHeight / th) || 1; - if (line.height != height) { - updateLineHeight(line, height); - gutterDirty = heightChanged = true; - } - } - curNode = curNode.nextSibling; - }); - return heightChanged; - } - - if (options.lineWrapping) checkHeights(); - - gutter.style.display = gutterDisplay; - if (different || gutterDirty) { - // If the gutter grew in size, re-check heights. If those changed, re-draw gutter. - updateGutter() && options.lineWrapping && checkHeights() && updateGutter(); - } - updateVerticalScroll(scrollTop); - updateSelection(); - if (!suppressCallback && options.onUpdate) options.onUpdate(instance); - return true; - } - - function computeIntact(intact, changes) { - for (var i = 0, l = changes.length || 0; i < l; ++i) { - var change = changes[i], intact2 = [], diff = change.diff || 0; - for (var j = 0, l2 = intact.length; j < l2; ++j) { - var range = intact[j]; - if (change.to <= range.from && change.diff) - intact2.push({from: range.from + diff, to: range.to + diff, - domStart: range.domStart}); - else if (change.to <= range.from || change.from >= range.to) - intact2.push(range); - else { - if (change.from > range.from) - intact2.push({from: range.from, to: change.from, domStart: range.domStart}); - if (change.to < range.to) - intact2.push({from: change.to + diff, to: range.to + diff, - domStart: range.domStart + (change.to - range.from)}); - } - } - intact = intact2; - } - return intact; - } - - function patchDisplay(from, to, intact) { - function killNode(node) { - var tmp = node.nextSibling; - node.parentNode.removeChild(node); - return tmp; - } - // The first pass removes the DOM nodes that aren't intact. - if (!intact.length) removeChildren(lineDiv); - else { - var domPos = 0, curNode = lineDiv.firstChild, n; - for (var i = 0; i < intact.length; ++i) { - var cur = intact[i]; - while (cur.domStart > domPos) {curNode = killNode(curNode); domPos++;} - for (var j = 0, e = cur.to - cur.from; j < e; ++j) {curNode = curNode.nextSibling; domPos++;} - } - while (curNode) curNode = killNode(curNode); - } - // This pass fills in the lines that actually changed. - var nextIntact = intact.shift(), curNode = lineDiv.firstChild, j = from; - doc.iter(from, to, function(line) { - if (nextIntact && nextIntact.to == j) nextIntact = intact.shift(); - if (!nextIntact || nextIntact.from > j) { - if (line.hidden) var lineElement = elt("pre"); - else { - var lineElement = lineContent(line); - if (line.className) lineElement.className = line.className; - // Kludge to make sure the styled element lies behind the selection (by z-index) - if (line.bgClassName) { - var pre = elt("pre", "\u00a0", line.bgClassName, "position: absolute; left: 0; right: 0; top: 0; bottom: 0; z-index: -2"); - lineElement = elt("div", [pre, lineElement], null, "position: relative"); - } - } - lineDiv.insertBefore(lineElement, curNode); - } else { - curNode = curNode.nextSibling; - } - ++j; - }); - } - - function updateGutter() { - if (!options.gutter && !options.lineNumbers) return; - var hText = mover.offsetHeight, hEditor = scroller.clientHeight; - gutter.style.height = (hText - hEditor < 2 ? hEditor : hText) + "px"; - var fragment = document.createDocumentFragment(), i = showingFrom, normalNode; - doc.iter(showingFrom, Math.max(showingTo, showingFrom + 1), function(line) { - if (line.hidden) { - fragment.appendChild(elt("pre")); - } else { - var marker = line.gutterMarker; - var text = options.lineNumbers ? options.lineNumberFormatter(i + options.firstLineNumber) : null; - if (marker && marker.text) - text = marker.text.replace("%N%", text != null ? text : ""); - else if (text == null) - text = "\u00a0"; - var markerElement = fragment.appendChild(elt("pre", null, marker && marker.style)); - markerElement.innerHTML = text; - for (var j = 1; j < line.height; ++j) { - markerElement.appendChild(elt("br")); - markerElement.appendChild(document.createTextNode("\u00a0")); - } - if (!marker) normalNode = i; - } - ++i; - }); - gutter.style.display = "none"; - removeChildrenAndAdd(gutterText, fragment); - // Make sure scrolling doesn't cause number gutter size to pop - if (normalNode != null && options.lineNumbers) { - var node = gutterText.childNodes[normalNode - showingFrom]; - var minwidth = String(doc.size).length, val = eltText(node.firstChild), pad = ""; - while (val.length + pad.length < minwidth) pad += "\u00a0"; - if (pad) node.insertBefore(document.createTextNode(pad), node.firstChild); - } - gutter.style.display = ""; - var resized = Math.abs((parseInt(lineSpace.style.marginLeft) || 0) - gutter.offsetWidth) > 2; - lineSpace.style.marginLeft = gutter.offsetWidth + "px"; - gutterDirty = false; - return resized; - } - function updateSelection() { - var collapsed = posEq(sel.from, sel.to); - var fromPos = localCoords(sel.from, true); - var toPos = collapsed ? fromPos : localCoords(sel.to, true); - var headPos = sel.inverted ? fromPos : toPos, th = textHeight(); - var wrapOff = eltOffset(wrapper), lineOff = eltOffset(lineDiv); - inputDiv.style.top = Math.max(0, Math.min(scroller.offsetHeight, headPos.y + lineOff.top - wrapOff.top)) + "px"; - inputDiv.style.left = Math.max(0, Math.min(scroller.offsetWidth, headPos.x + lineOff.left - wrapOff.left)) + "px"; - if (collapsed) { - cursor.style.top = headPos.y + "px"; - cursor.style.left = (options.lineWrapping ? Math.min(headPos.x, lineSpace.offsetWidth) : headPos.x) + "px"; - cursor.style.display = ""; - selectionDiv.style.display = "none"; - } else { - var sameLine = fromPos.y == toPos.y, fragment = document.createDocumentFragment(); - var clientWidth = lineSpace.clientWidth || lineSpace.offsetWidth; - var clientHeight = lineSpace.clientHeight || lineSpace.offsetHeight; - var add = function(left, top, right, height) { - var rstyle = quirksMode ? "width: " + (!right ? clientWidth : clientWidth - right - left) + "px" - : "right: " + right + "px"; - fragment.appendChild(elt("div", null, "CodeMirror-selected", "position: absolute; left: " + left + - "px; top: " + top + "px; " + rstyle + "; height: " + height + "px")); - }; - if (sel.from.ch && fromPos.y >= 0) { - var right = sameLine ? clientWidth - toPos.x : 0; - add(fromPos.x, fromPos.y, right, th); - } - var middleStart = Math.max(0, fromPos.y + (sel.from.ch ? th : 0)); - var middleHeight = Math.min(toPos.y, clientHeight) - middleStart; - if (middleHeight > 0.2 * th) - add(0, middleStart, 0, middleHeight); - if ((!sameLine || !sel.from.ch) && toPos.y < clientHeight - .5 * th) - add(0, toPos.y, clientWidth - toPos.x, th); - removeChildrenAndAdd(selectionDiv, fragment); - cursor.style.display = "none"; - selectionDiv.style.display = ""; - } - } - - function setShift(val) { - if (val) shiftSelecting = shiftSelecting || (sel.inverted ? sel.to : sel.from); - else shiftSelecting = null; - } - function setSelectionUser(from, to) { - var sh = shiftSelecting && clipPos(shiftSelecting); - if (sh) { - if (posLess(sh, from)) from = sh; - else if (posLess(to, sh)) to = sh; - } - setSelection(from, to); - userSelChange = true; - } - // Update the selection. Last two args are only used by - // updateLines, since they have to be expressed in the line - // numbers before the update. - function setSelection(from, to, oldFrom, oldTo) { - goalColumn = null; - if (oldFrom == null) {oldFrom = sel.from.line; oldTo = sel.to.line;} - if (posEq(sel.from, from) && posEq(sel.to, to)) return; - if (posLess(to, from)) {var tmp = to; to = from; from = tmp;} - - // Skip over hidden lines. - if (from.line != oldFrom) { - var from1 = skipHidden(from, oldFrom, sel.from.ch); - // If there is no non-hidden line left, force visibility on current line - if (!from1) setLineHidden(from.line, false); - else from = from1; - } - if (to.line != oldTo) to = skipHidden(to, oldTo, sel.to.ch); - - if (posEq(from, to)) sel.inverted = false; - else if (posEq(from, sel.to)) sel.inverted = false; - else if (posEq(to, sel.from)) sel.inverted = true; - - if (options.autoClearEmptyLines && posEq(sel.from, sel.to)) { - var head = sel.inverted ? from : to; - if (head.line != sel.from.line && sel.from.line < doc.size) { - var oldLine = getLine(sel.from.line); - if (/^\s+$/.test(oldLine.text)) - setTimeout(operation(function() { - if (oldLine.parent && /^\s+$/.test(oldLine.text)) { - var no = lineNo(oldLine); - replaceRange("", {line: no, ch: 0}, {line: no, ch: oldLine.text.length}); - } - }, 10)); - } - } - - sel.from = from; sel.to = to; - selectionChanged = true; - } - function skipHidden(pos, oldLine, oldCh) { - function getNonHidden(dir) { - var lNo = pos.line + dir, end = dir == 1 ? doc.size : -1; - while (lNo != end) { - var line = getLine(lNo); - if (!line.hidden) { - var ch = pos.ch; - if (toEnd || ch > oldCh || ch > line.text.length) ch = line.text.length; - return {line: lNo, ch: ch}; - } - lNo += dir; - } - } - var line = getLine(pos.line); - var toEnd = pos.ch == line.text.length && pos.ch != oldCh; - if (!line.hidden) return pos; - if (pos.line >= oldLine) return getNonHidden(1) || getNonHidden(-1); - else return getNonHidden(-1) || getNonHidden(1); - } - function setCursor(line, ch, user) { - var pos = clipPos({line: line, ch: ch || 0}); - (user ? setSelectionUser : setSelection)(pos, pos); - } - - function clipLine(n) {return Math.max(0, Math.min(n, doc.size-1));} - function clipPos(pos) { - if (pos.line < 0) return {line: 0, ch: 0}; - if (pos.line >= doc.size) return {line: doc.size-1, ch: getLine(doc.size-1).text.length}; - var ch = pos.ch, linelen = getLine(pos.line).text.length; - if (ch == null || ch > linelen) return {line: pos.line, ch: linelen}; - else if (ch < 0) return {line: pos.line, ch: 0}; - else return pos; - } - - function findPosH(dir, unit) { - var end = sel.inverted ? sel.from : sel.to, line = end.line, ch = end.ch; - var lineObj = getLine(line); - function findNextLine() { - for (var l = line + dir, e = dir < 0 ? -1 : doc.size; l != e; l += dir) { - var lo = getLine(l); - if (!lo.hidden) { line = l; lineObj = lo; return true; } - } - } - function moveOnce(boundToLine) { - if (ch == (dir < 0 ? 0 : lineObj.text.length)) { - if (!boundToLine && findNextLine()) ch = dir < 0 ? lineObj.text.length : 0; - else return false; - } else ch += dir; - return true; - } - if (unit == "char") moveOnce(); - else if (unit == "column") moveOnce(true); - else if (unit == "word") { - var sawWord = false; - for (;;) { - if (dir < 0) if (!moveOnce()) break; - if (isWordChar(lineObj.text.charAt(ch))) sawWord = true; - else if (sawWord) {if (dir < 0) {dir = 1; moveOnce();} break;} - if (dir > 0) if (!moveOnce()) break; - } - } - return {line: line, ch: ch}; - } - function moveH(dir, unit) { - var pos = dir < 0 ? sel.from : sel.to; - if (shiftSelecting || posEq(sel.from, sel.to)) pos = findPosH(dir, unit); - setCursor(pos.line, pos.ch, true); - } - function deleteH(dir, unit) { - if (!posEq(sel.from, sel.to)) replaceRange("", sel.from, sel.to); - else if (dir < 0) replaceRange("", findPosH(dir, unit), sel.to); - else replaceRange("", sel.from, findPosH(dir, unit)); - userSelChange = true; - } - function moveV(dir, unit) { - var dist = 0, pos = localCoords(sel.inverted ? sel.from : sel.to, true); - if (goalColumn != null) pos.x = goalColumn; - if (unit == "page") { - var screen = Math.min(scroller.clientHeight, window.innerHeight || document.documentElement.clientHeight); - var target = coordsChar(pos.x, pos.y + screen * dir); - } else if (unit == "line") { - var th = textHeight(); - var target = coordsChar(pos.x, pos.y + .5 * th + dir * th); - } - if (unit == "page") scrollbar.scrollTop += localCoords(target, true).y - pos.y; - setCursor(target.line, target.ch, true); - goalColumn = pos.x; - } - - function findWordAt(pos) { - var line = getLine(pos.line).text; - var start = pos.ch, end = pos.ch; - if (line) { - if (pos.after === false || end == line.length) --start; else ++end; - var startChar = line.charAt(start); - var check = isWordChar(startChar) ? isWordChar : - /\s/.test(startChar) ? function(ch) {return /\s/.test(ch);} : - function(ch) {return !/\s/.test(ch) && !isWordChar(ch);}; - while (start > 0 && check(line.charAt(start - 1))) --start; - while (end < line.length && check(line.charAt(end))) ++end; - } - return {from: {line: pos.line, ch: start}, to: {line: pos.line, ch: end}}; - } - function selectLine(line) { - setSelectionUser({line: line, ch: 0}, clipPos({line: line + 1, ch: 0})); - } - function indentSelected(mode) { - if (posEq(sel.from, sel.to)) return indentLine(sel.from.line, mode); - var e = sel.to.line - (sel.to.ch ? 0 : 1); - for (var i = sel.from.line; i <= e; ++i) indentLine(i, mode); - } - - function indentLine(n, how) { - if (!how) how = "add"; - if (how == "smart") { - if (!mode.indent) how = "prev"; - else var state = getStateBefore(n); - } - - var line = getLine(n), curSpace = line.indentation(options.tabSize), - curSpaceString = line.text.match(/^\s*/)[0], indentation; - if (how == "smart") { - indentation = mode.indent(state, line.text.slice(curSpaceString.length), line.text); - if (indentation == Pass) how = "prev"; - } - if (how == "prev") { - if (n) indentation = getLine(n-1).indentation(options.tabSize); - else indentation = 0; - } - else if (how == "add") indentation = curSpace + options.indentUnit; - else if (how == "subtract") indentation = curSpace - options.indentUnit; - indentation = Math.max(0, indentation); - var diff = indentation - curSpace; - - var indentString = "", pos = 0; - if (options.indentWithTabs) - for (var i = Math.floor(indentation / options.tabSize); i; --i) {pos += options.tabSize; indentString += "\t";} - if (pos < indentation) indentString += spaceStr(indentation - pos); - - if (indentString != curSpaceString) - replaceRange(indentString, {line: n, ch: 0}, {line: n, ch: curSpaceString.length}); - } - - function loadMode() { - mode = CodeMirror.getMode(options, options.mode); - doc.iter(0, doc.size, function(line) { line.stateAfter = null; }); - frontier = 0; - startWorker(100); - } - function gutterChanged() { - var visible = options.gutter || options.lineNumbers; - gutter.style.display = visible ? "" : "none"; - if (visible) gutterDirty = true; - else lineDiv.parentNode.style.marginLeft = 0; - } - function wrappingChanged(from, to) { - if (options.lineWrapping) { - wrapper.className += " CodeMirror-wrap"; - var perLine = scroller.clientWidth / charWidth() - 3; - doc.iter(0, doc.size, function(line) { - if (line.hidden) return; - var guess = Math.ceil(line.text.length / perLine) || 1; - if (guess != 1) updateLineHeight(line, guess); - }); - lineSpace.style.minWidth = widthForcer.style.left = ""; - } else { - wrapper.className = wrapper.className.replace(" CodeMirror-wrap", ""); - computeMaxLength(); - doc.iter(0, doc.size, function(line) { - if (line.height != 1 && !line.hidden) updateLineHeight(line, 1); - }); - } - changes.push({from: 0, to: doc.size}); - } - function themeChanged() { - scroller.className = scroller.className.replace(/\s*cm-s-\S+/g, "") + - options.theme.replace(/(^|\s)\s*/g, " cm-s-"); - } - function keyMapChanged() { - var style = keyMap[options.keyMap].style; - wrapper.className = wrapper.className.replace(/\s*cm-keymap-\S+/g, "") + - (style ? " cm-keymap-" + style : ""); - } - - function TextMarker(type, style) { this.lines = []; this.type = type; if (style) this.style = style; } - TextMarker.prototype.clear = operation(function() { - var min = Infinity, max = -Infinity; - for (var i = 0; i < this.lines.length; ++i) { - var line = this.lines[i]; - var span = getMarkedSpanFor(line.markedSpans, this, true); - if (span.from != null || span.to != null) { - var lineN = lineNo(line); - min = Math.min(min, lineN); max = Math.max(max, lineN); - } - } - if (min != Infinity) - changes.push({from: min, to: max + 1}); - this.lines.length = 0; - }); - TextMarker.prototype.find = function() { - var from, to; - for (var i = 0; i < this.lines.length; ++i) { - var line = this.lines[i]; - var span = getMarkedSpanFor(line.markedSpans, this); - if (span.from != null || span.to != null) { - var found = lineNo(line); - if (span.from != null) from = {line: found, ch: span.from}; - if (span.to != null) to = {line: found, ch: span.to}; - } - } - if (this.type == "bookmark") return from; - return from && {from: from, to: to}; - }; - - function markText(from, to, className, options) { - from = clipPos(from); to = clipPos(to); - var marker = new TextMarker("range", className); - if (options) for (var opt in options) if (options.hasOwnProperty(opt)) - marker[opt] = options[opt]; - var curLine = from.line; - doc.iter(curLine, to.line + 1, function(line) { - var span = {from: curLine == from.line ? from.ch : null, - to: curLine == to.line ? to.ch : null, - marker: marker}; - (line.markedSpans || (line.markedSpans = [])).push(span); - marker.lines.push(line); - ++curLine; - }); - changes.push({from: from.line, to: to.line + 1}); - return marker; - } - - function setBookmark(pos) { - pos = clipPos(pos); - var marker = new TextMarker("bookmark"), line = getLine(pos.line); - var span = {from: pos.ch, to: pos.ch, marker: marker}; - (line.markedSpans || (line.markedSpans = [])).push(span); - marker.lines.push(line); - return marker; - } - - function findMarksAt(pos) { - pos = clipPos(pos); - var markers = [], spans = getLine(pos.line).markedSpans; - if (spans) for (var i = 0; i < spans.length; ++i) { - var span = spans[i]; - if ((span.from == null || span.from <= pos.ch) && - (span.to == null || span.to >= pos.ch)) - markers.push(span.marker); - } - return markers; - } - - function addGutterMarker(line, text, className) { - if (typeof line == "number") line = getLine(clipLine(line)); - line.gutterMarker = {text: text, style: className}; - gutterDirty = true; - return line; - } - function removeGutterMarker(line) { - if (typeof line == "number") line = getLine(clipLine(line)); - line.gutterMarker = null; - gutterDirty = true; - } - - function changeLine(handle, op) { - var no = handle, line = handle; - if (typeof handle == "number") line = getLine(clipLine(handle)); - else no = lineNo(handle); - if (no == null) return null; - if (op(line, no)) changes.push({from: no, to: no + 1}); - else return null; - return line; - } - function setLineClass(handle, className, bgClassName) { - return changeLine(handle, function(line) { - if (line.className != className || line.bgClassName != bgClassName) { - line.className = className; - line.bgClassName = bgClassName; - return true; - } - }); - } - function setLineHidden(handle, hidden) { - return changeLine(handle, function(line, no) { - if (line.hidden != hidden) { - line.hidden = hidden; - if (!options.lineWrapping) { - if (hidden && line.text.length == maxLine.text.length) { - updateMaxLine = true; - } else if (!hidden && line.text.length > maxLine.text.length) { - maxLine = line; updateMaxLine = false; - } - } - updateLineHeight(line, hidden ? 0 : 1); - var fline = sel.from.line, tline = sel.to.line; - if (hidden && (fline == no || tline == no)) { - var from = fline == no ? skipHidden({line: fline, ch: 0}, fline, 0) : sel.from; - var to = tline == no ? skipHidden({line: tline, ch: 0}, tline, 0) : sel.to; - // Can't hide the last visible line, we'd have no place to put the cursor - if (!to) return; - setSelection(from, to); - } - return (gutterDirty = true); - } - }); - } - - function lineInfo(line) { - if (typeof line == "number") { - if (!isLine(line)) return null; - var n = line; - line = getLine(line); - if (!line) return null; - } else { - var n = lineNo(line); - if (n == null) return null; - } - var marker = line.gutterMarker; - return {line: n, handle: line, text: line.text, markerText: marker && marker.text, - markerClass: marker && marker.style, lineClass: line.className, bgClass: line.bgClassName}; - } - - function measureLine(line, ch) { - if (ch == 0) return {top: 0, left: 0}; - var wbr = options.lineWrapping && ch < line.text.length && - spanAffectsWrapping.test(line.text.slice(ch - 1, ch + 1)); - var pre = lineContent(line, ch); - removeChildrenAndAdd(measure, pre); - var anchor = pre.anchor; - var top = anchor.offsetTop, left = anchor.offsetLeft; - // Older IEs report zero offsets for spans directly after a wrap - if (ie && top == 0 && left == 0) { - var backup = elt("span", "x"); - anchor.parentNode.insertBefore(backup, anchor.nextSibling); - top = backup.offsetTop; - } - return {top: top, left: left}; - } - function localCoords(pos, inLineWrap) { - var x, lh = textHeight(), y = lh * (heightAtLine(doc, pos.line) - (inLineWrap ? displayOffset : 0)); - if (pos.ch == 0) x = 0; - else { - var sp = measureLine(getLine(pos.line), pos.ch); - x = sp.left; - if (options.lineWrapping) y += Math.max(0, sp.top); - } - return {x: x, y: y, yBot: y + lh}; - } - // Coords must be lineSpace-local - function coordsChar(x, y) { - var th = textHeight(), cw = charWidth(), heightPos = displayOffset + Math.floor(y / th); - if (heightPos < 0) return {line: 0, ch: 0}; - var lineNo = lineAtHeight(doc, heightPos); - if (lineNo >= doc.size) return {line: doc.size - 1, ch: getLine(doc.size - 1).text.length}; - var lineObj = getLine(lineNo), text = lineObj.text; - var tw = options.lineWrapping, innerOff = tw ? heightPos - heightAtLine(doc, lineNo) : 0; - if (x <= 0 && innerOff == 0) return {line: lineNo, ch: 0}; - var wrongLine = false; - function getX(len) { - var sp = measureLine(lineObj, len); - if (tw) { - var off = Math.round(sp.top / th); - wrongLine = off != innerOff; - return Math.max(0, sp.left + (off - innerOff) * scroller.clientWidth); - } - return sp.left; - } - var from = 0, fromX = 0, to = text.length, toX; - // Guess a suitable upper bound for our search. - var estimated = Math.min(to, Math.ceil((x + innerOff * scroller.clientWidth * .9) / cw)); - for (;;) { - var estX = getX(estimated); - if (estX <= x && estimated < to) estimated = Math.min(to, Math.ceil(estimated * 1.2)); - else {toX = estX; to = estimated; break;} - } - if (x > toX) return {line: lineNo, ch: to}; - // Try to guess a suitable lower bound as well. - estimated = Math.floor(to * 0.8); estX = getX(estimated); - if (estX < x) {from = estimated; fromX = estX;} - // Do a binary search between these bounds. - for (;;) { - if (to - from <= 1) { - var after = x - fromX < toX - x; - return {line: lineNo, ch: after ? from : to, after: after}; - } - var middle = Math.ceil((from + to) / 2), middleX = getX(middle); - if (middleX > x) {to = middle; toX = middleX; if (wrongLine) toX += 1000; } - else {from = middle; fromX = middleX;} - } - } - function pageCoords(pos) { - var local = localCoords(pos, true), off = eltOffset(lineSpace); - return {x: off.left + local.x, y: off.top + local.y, yBot: off.top + local.yBot}; - } - - var cachedHeight, cachedHeightFor, measurePre; - function textHeight() { - if (measurePre == null) { - measurePre = elt("pre"); - for (var i = 0; i < 49; ++i) { - measurePre.appendChild(document.createTextNode("x")); - measurePre.appendChild(elt("br")); - } - measurePre.appendChild(document.createTextNode("x")); - } - var offsetHeight = lineDiv.clientHeight; - if (offsetHeight == cachedHeightFor) return cachedHeight; - cachedHeightFor = offsetHeight; - removeChildrenAndAdd(measure, measurePre.cloneNode(true)); - cachedHeight = measure.firstChild.offsetHeight / 50 || 1; - removeChildren(measure); - return cachedHeight; - } - var cachedWidth, cachedWidthFor = 0; - function charWidth() { - if (scroller.clientWidth == cachedWidthFor) return cachedWidth; - cachedWidthFor = scroller.clientWidth; - var anchor = elt("span", "x"); - var pre = elt("pre", [anchor]); - removeChildrenAndAdd(measure, pre); - return (cachedWidth = anchor.offsetWidth || 10); - } - function paddingTop() {return lineSpace.offsetTop;} - function paddingLeft() {return lineSpace.offsetLeft;} - - function posFromMouse(e, liberal) { - var offW = eltOffset(scroller, true), x, y; - // Fails unpredictably on IE[67] when mouse is dragged around quickly. - try { x = e.clientX; y = e.clientY; } catch (e) { return null; } - // This is a mess of a heuristic to try and determine whether a - // scroll-bar was clicked or not, and to return null if one was - // (and !liberal). - if (!liberal && (x - offW.left > scroller.clientWidth || y - offW.top > scroller.clientHeight)) - return null; - var offL = eltOffset(lineSpace, true); - return coordsChar(x - offL.left, y - offL.top); - } - var detectingSelectAll; - function onContextMenu(e) { - var pos = posFromMouse(e), scrollPos = scrollbar.scrollTop; - if (!pos || opera) return; // Opera is difficult. - if (posEq(sel.from, sel.to) || posLess(pos, sel.from) || !posLess(pos, sel.to)) - operation(setCursor)(pos.line, pos.ch); - - var oldCSS = input.style.cssText; - inputDiv.style.position = "absolute"; - input.style.cssText = "position: fixed; width: 30px; height: 30px; top: " + (e.clientY - 5) + - "px; left: " + (e.clientX - 5) + "px; z-index: 1000; background: white; " + - "border-width: 0; outline: none; overflow: hidden; opacity: .05; filter: alpha(opacity=5);"; - focusInput(); - resetInput(true); - // Adds "Select all" to context menu in FF - if (posEq(sel.from, sel.to)) input.value = prevInput = " "; - - function rehide() { - inputDiv.style.position = "relative"; - input.style.cssText = oldCSS; - if (ie_lt9) scrollbar.scrollTop = scrollPos; - slowPoll(); - - // Try to detect the user choosing select-all - if (input.selectionStart != null) { - clearTimeout(detectingSelectAll); - var extval = input.value = " " + (posEq(sel.from, sel.to) ? "" : input.value), i = 0; - prevInput = " "; - input.selectionStart = 1; input.selectionEnd = extval.length; - detectingSelectAll = setTimeout(function poll(){ - if (prevInput == " " && input.selectionStart == 0) - operation(commands.selectAll)(instance); - else if (i++ < 10) detectingSelectAll = setTimeout(poll, 500); - else resetInput(); - }, 200); - } - } - - if (gecko) { - e_stop(e); - var mouseup = connect(window, "mouseup", function() { - mouseup(); - setTimeout(rehide, 20); - }, true); - } else { - setTimeout(rehide, 50); - } - } - - // Cursor-blinking - function restartBlink() { - clearInterval(blinker); - var on = true; - cursor.style.visibility = ""; - blinker = setInterval(function() { - cursor.style.visibility = (on = !on) ? "" : "hidden"; - }, options.cursorBlinkRate); - } - - var matching = {"(": ")>", ")": "(<", "[": "]>", "]": "[<", "{": "}>", "}": "{<"}; - function matchBrackets(autoclear) { - var head = sel.inverted ? sel.from : sel.to, line = getLine(head.line), pos = head.ch - 1; - var match = (pos >= 0 && matching[line.text.charAt(pos)]) || matching[line.text.charAt(++pos)]; - if (!match) return; - var ch = match.charAt(0), forward = match.charAt(1) == ">", d = forward ? 1 : -1, st = line.styles; - for (var off = pos + 1, i = 0, e = st.length; i < e; i+=2) - if ((off -= st[i].length) <= 0) {var style = st[i+1]; break;} - - var stack = [line.text.charAt(pos)], re = /[(){}[\]]/; - function scan(line, from, to) { - if (!line.text) return; - var st = line.styles, pos = forward ? 0 : line.text.length - 1, cur; - for (var i = forward ? 0 : st.length - 2, e = forward ? st.length : -2; i != e; i += 2*d) { - var text = st[i]; - if (st[i+1] != style) {pos += d * text.length; continue;} - for (var j = forward ? 0 : text.length - 1, te = forward ? text.length : -1; j != te; j += d, pos+=d) { - if (pos >= from && pos < to && re.test(cur = text.charAt(j))) { - var match = matching[cur]; - if (match.charAt(1) == ">" == forward) stack.push(cur); - else if (stack.pop() != match.charAt(0)) return {pos: pos, match: false}; - else if (!stack.length) return {pos: pos, match: true}; - } - } - } - } - for (var i = head.line, e = forward ? Math.min(i + 100, doc.size) : Math.max(-1, i - 100); i != e; i+=d) { - var line = getLine(i), first = i == head.line; - var found = scan(line, first && forward ? pos + 1 : 0, first && !forward ? pos : line.text.length); - if (found) break; - } - if (!found) found = {pos: null, match: false}; - var style = found.match ? "CodeMirror-matchingbracket" : "CodeMirror-nonmatchingbracket"; - var one = markText({line: head.line, ch: pos}, {line: head.line, ch: pos+1}, style), - two = found.pos != null && markText({line: i, ch: found.pos}, {line: i, ch: found.pos + 1}, style); - var clear = operation(function(){one.clear(); two && two.clear();}); - if (autoclear) setTimeout(clear, 800); - else bracketHighlighted = clear; - } - - // Finds the line to start with when starting a parse. Tries to - // find a line with a stateAfter, so that it can start with a - // valid state. If that fails, it returns the line with the - // smallest indentation, which tends to need the least context to - // parse correctly. - function findStartLine(n) { - var minindent, minline; - for (var search = n, lim = n - 40; search > lim; --search) { - if (search == 0) return 0; - var line = getLine(search-1); - if (line.stateAfter) return search; - var indented = line.indentation(options.tabSize); - if (minline == null || minindent > indented) { - minline = search - 1; - minindent = indented; - } - } - return minline; - } - function getStateBefore(n) { - var pos = findStartLine(n), state = pos && getLine(pos-1).stateAfter; - if (!state) state = startState(mode); - else state = copyState(mode, state); - doc.iter(pos, n, function(line) { - line.process(mode, state, options.tabSize); - line.stateAfter = (pos == n - 1 || pos % 5 == 0) ? copyState(mode, state) : null; - }); - return state; - } - function highlightWorker() { - if (frontier >= showingTo) return; - var end = +new Date + options.workTime, state = copyState(mode, getStateBefore(frontier)); - var startFrontier = frontier; - doc.iter(frontier, showingTo, function(line) { - if (frontier >= showingFrom) { // Visible - line.highlight(mode, state, options.tabSize); - line.stateAfter = copyState(mode, state); - } else { - line.process(mode, state, options.tabSize); - line.stateAfter = frontier % 5 == 0 ? copyState(mode, state) : null; - } - ++frontier; - if (+new Date > end) { - startWorker(options.workDelay); - return true; - } - }); - if (showingTo > startFrontier && frontier >= showingFrom) - operation(function() {changes.push({from: startFrontier, to: frontier});})(); - } - function startWorker(time) { - if (frontier < showingTo) - highlight.set(time, highlightWorker); - } - - // Operations are used to wrap changes in such a way that each - // change won't have to update the cursor and display (which would - // be awkward, slow, and error-prone), but instead updates are - // batched and then all combined and executed at once. - function startOperation() { - updateInput = userSelChange = textChanged = null; - changes = []; selectionChanged = false; callbacks = []; - } - function endOperation() { - if (updateMaxLine) computeMaxLength(); - if (maxLineChanged && !options.lineWrapping) { - var cursorWidth = widthForcer.offsetWidth, left = measureLine(maxLine, maxLine.text.length).left; - if (!ie_lt8) { - widthForcer.style.left = left + "px"; - lineSpace.style.minWidth = (left + cursorWidth) + "px"; - } - maxLineChanged = false; - } - var newScrollPos, updated; - if (selectionChanged) { - var coords = calculateCursorCoords(); - newScrollPos = calculateScrollPos(coords.x, coords.y, coords.x, coords.yBot); - } - if (changes.length || newScrollPos && newScrollPos.scrollTop != null) - updated = updateDisplay(changes, true, newScrollPos && newScrollPos.scrollTop); - if (!updated) { - if (selectionChanged) updateSelection(); - if (gutterDirty) updateGutter(); - } - if (newScrollPos) scrollCursorIntoView(); - if (selectionChanged) restartBlink(); - - if (focused && (updateInput === true || (updateInput !== false && selectionChanged))) - resetInput(userSelChange); - - if (selectionChanged && options.matchBrackets) - setTimeout(operation(function() { - if (bracketHighlighted) {bracketHighlighted(); bracketHighlighted = null;} - if (posEq(sel.from, sel.to)) matchBrackets(false); - }), 20); - var sc = selectionChanged, cbs = callbacks; // these can be reset by callbacks - if (textChanged && options.onChange && instance) - options.onChange(instance, textChanged); - if (sc && options.onCursorActivity) - options.onCursorActivity(instance); - for (var i = 0; i < cbs.length; ++i) cbs[i](instance); - if (updated && options.onUpdate) options.onUpdate(instance); - } - var nestedOperation = 0; - function operation(f) { - return function() { - if (!nestedOperation++) startOperation(); - try {var result = f.apply(this, arguments);} - finally {if (!--nestedOperation) endOperation();} - return result; - }; - } - - function compoundChange(f) { - history.startCompound(); - try { return f(); } finally { history.endCompound(); } - } - - for (var ext in extensions) - if (extensions.propertyIsEnumerable(ext) && - !instance.propertyIsEnumerable(ext)) - instance[ext] = extensions[ext]; - return instance; - } // (end of function CodeMirror) - - // The default configuration options. - CodeMirror.defaults = { - value: "", - mode: null, - theme: "default", - indentUnit: 2, - indentWithTabs: false, - smartIndent: true, - tabSize: 4, - keyMap: "default", - extraKeys: null, - electricChars: true, - autoClearEmptyLines: false, - onKeyEvent: null, - onDragEvent: null, - lineWrapping: false, - lineNumbers: false, - gutter: false, - fixedGutter: false, - firstLineNumber: 1, - readOnly: false, - dragDrop: true, - onChange: null, - onCursorActivity: null, - onViewportChange: null, - onGutterClick: null, - onUpdate: null, - onFocus: null, onBlur: null, onScroll: null, - matchBrackets: false, - cursorBlinkRate: 530, - workTime: 100, - workDelay: 200, - pollInterval: 100, - undoDepth: 40, - tabindex: null, - autofocus: null, - lineNumberFormatter: function(integer) { return integer; } - }; - - var ios = /AppleWebKit/.test(navigator.userAgent) && /Mobile\/\w+/.test(navigator.userAgent); - var mac = ios || /Mac/.test(navigator.platform); - var win = /Win/.test(navigator.platform); - - // Known modes, by name and by MIME - var modes = CodeMirror.modes = {}, mimeModes = CodeMirror.mimeModes = {}; - CodeMirror.defineMode = function(name, mode) { - if (!CodeMirror.defaults.mode && name != "null") CodeMirror.defaults.mode = name; - if (arguments.length > 2) { - mode.dependencies = []; - for (var i = 2; i < arguments.length; ++i) mode.dependencies.push(arguments[i]); - } - modes[name] = mode; - }; - CodeMirror.defineMIME = function(mime, spec) { - mimeModes[mime] = spec; - }; - CodeMirror.resolveMode = function(spec) { - if (typeof spec == "string" && mimeModes.hasOwnProperty(spec)) - spec = mimeModes[spec]; - else if (typeof spec == "string" && /^[\w\-]+\/[\w\-]+\+xml$/.test(spec)) - return CodeMirror.resolveMode("application/xml"); - if (typeof spec == "string") return {name: spec}; - else return spec || {name: "null"}; - }; - CodeMirror.getMode = function(options, spec) { - var spec = CodeMirror.resolveMode(spec); - var mfactory = modes[spec.name]; - if (!mfactory) return CodeMirror.getMode(options, "text/plain"); - var modeObj = mfactory(options, spec); - if (modeExtensions.hasOwnProperty(spec.name)) { - var exts = modeExtensions[spec.name]; - for (var prop in exts) if (exts.hasOwnProperty(prop)) modeObj[prop] = exts[prop]; - } - modeObj.name = spec.name; - return modeObj; - }; - CodeMirror.listModes = function() { - var list = []; - for (var m in modes) - if (modes.propertyIsEnumerable(m)) list.push(m); - return list; - }; - CodeMirror.listMIMEs = function() { - var list = []; - for (var m in mimeModes) - if (mimeModes.propertyIsEnumerable(m)) list.push({mime: m, mode: mimeModes[m]}); - return list; - }; - - var extensions = CodeMirror.extensions = {}; - CodeMirror.defineExtension = function(name, func) { - extensions[name] = func; - }; - - var modeExtensions = CodeMirror.modeExtensions = {}; - CodeMirror.extendMode = function(mode, properties) { - var exts = modeExtensions.hasOwnProperty(mode) ? modeExtensions[mode] : (modeExtensions[mode] = {}); - for (var prop in properties) if (properties.hasOwnProperty(prop)) - exts[prop] = properties[prop]; - }; - - var commands = CodeMirror.commands = { - selectAll: function(cm) {cm.setSelection({line: 0, ch: 0}, {line: cm.lineCount() - 1});}, - killLine: function(cm) { - var from = cm.getCursor(true), to = cm.getCursor(false), sel = !posEq(from, to); - if (!sel && cm.getLine(from.line).length == from.ch) cm.replaceRange("", from, {line: from.line + 1, ch: 0}); - else cm.replaceRange("", from, sel ? to : {line: from.line}); - }, - deleteLine: function(cm) {var l = cm.getCursor().line; cm.replaceRange("", {line: l, ch: 0}, {line: l});}, - undo: function(cm) {cm.undo();}, - redo: function(cm) {cm.redo();}, - goDocStart: function(cm) {cm.setCursor(0, 0, true);}, - goDocEnd: function(cm) {cm.setSelection({line: cm.lineCount() - 1}, null, true);}, - goLineStart: function(cm) {cm.setCursor(cm.getCursor().line, 0, true);}, - goLineStartSmart: function(cm) { - var cur = cm.getCursor(); - var text = cm.getLine(cur.line), firstNonWS = Math.max(0, text.search(/\S/)); - cm.setCursor(cur.line, cur.ch <= firstNonWS && cur.ch ? 0 : firstNonWS, true); - }, - goLineEnd: function(cm) {cm.setSelection({line: cm.getCursor().line}, null, true);}, - goLineUp: function(cm) {cm.moveV(-1, "line");}, - goLineDown: function(cm) {cm.moveV(1, "line");}, - goPageUp: function(cm) {cm.moveV(-1, "page");}, - goPageDown: function(cm) {cm.moveV(1, "page");}, - goCharLeft: function(cm) {cm.moveH(-1, "char");}, - goCharRight: function(cm) {cm.moveH(1, "char");}, - goColumnLeft: function(cm) {cm.moveH(-1, "column");}, - goColumnRight: function(cm) {cm.moveH(1, "column");}, - goWordLeft: function(cm) {cm.moveH(-1, "word");}, - goWordRight: function(cm) {cm.moveH(1, "word");}, - delCharLeft: function(cm) {cm.deleteH(-1, "char");}, - delCharRight: function(cm) {cm.deleteH(1, "char");}, - delWordLeft: function(cm) {cm.deleteH(-1, "word");}, - delWordRight: function(cm) {cm.deleteH(1, "word");}, - indentAuto: function(cm) {cm.indentSelection("smart");}, - indentMore: function(cm) {cm.indentSelection("add");}, - indentLess: function(cm) {cm.indentSelection("subtract");}, - insertTab: function(cm) {cm.replaceSelection("\t", "end");}, - defaultTab: function(cm) { - if (cm.somethingSelected()) cm.indentSelection("add"); - else cm.replaceSelection("\t", "end"); - }, - transposeChars: function(cm) { - var cur = cm.getCursor(), line = cm.getLine(cur.line); - if (cur.ch > 0 && cur.ch < line.length - 1) - cm.replaceRange(line.charAt(cur.ch) + line.charAt(cur.ch - 1), - {line: cur.line, ch: cur.ch - 1}, {line: cur.line, ch: cur.ch + 1}); - }, - newlineAndIndent: function(cm) { - cm.replaceSelection("\n", "end"); - cm.indentLine(cm.getCursor().line); - }, - toggleOverwrite: function(cm) {cm.toggleOverwrite();} - }; - - var keyMap = CodeMirror.keyMap = {}; - keyMap.basic = { - "Left": "goCharLeft", "Right": "goCharRight", "Up": "goLineUp", "Down": "goLineDown", - "End": "goLineEnd", "Home": "goLineStartSmart", "PageUp": "goPageUp", "PageDown": "goPageDown", - "Delete": "delCharRight", "Backspace": "delCharLeft", "Tab": "defaultTab", "Shift-Tab": "indentAuto", - "Enter": "newlineAndIndent", "Insert": "toggleOverwrite" - }; - // Note that the save and find-related commands aren't defined by - // default. Unknown commands are simply ignored. - keyMap.pcDefault = { - "Ctrl-A": "selectAll", "Ctrl-D": "deleteLine", "Ctrl-Z": "undo", "Shift-Ctrl-Z": "redo", "Ctrl-Y": "redo", - "Ctrl-Home": "goDocStart", "Alt-Up": "goDocStart", "Ctrl-End": "goDocEnd", "Ctrl-Down": "goDocEnd", - "Ctrl-Left": "goWordLeft", "Ctrl-Right": "goWordRight", "Alt-Left": "goLineStart", "Alt-Right": "goLineEnd", - "Ctrl-Backspace": "delWordLeft", "Ctrl-Delete": "delWordRight", "Ctrl-S": "save", "Ctrl-F": "find", - "Ctrl-G": "findNext", "Shift-Ctrl-G": "findPrev", "Shift-Ctrl-F": "replace", "Shift-Ctrl-R": "replaceAll", - "Ctrl-[": "indentLess", "Ctrl-]": "indentMore", - fallthrough: "basic" - }; - keyMap.macDefault = { - "Cmd-A": "selectAll", "Cmd-D": "deleteLine", "Cmd-Z": "undo", "Shift-Cmd-Z": "redo", "Cmd-Y": "redo", - "Cmd-Up": "goDocStart", "Cmd-End": "goDocEnd", "Cmd-Down": "goDocEnd", "Alt-Left": "goWordLeft", - "Alt-Right": "goWordRight", "Cmd-Left": "goLineStart", "Cmd-Right": "goLineEnd", "Alt-Backspace": "delWordLeft", - "Ctrl-Alt-Backspace": "delWordRight", "Alt-Delete": "delWordRight", "Cmd-S": "save", "Cmd-F": "find", - "Cmd-G": "findNext", "Shift-Cmd-G": "findPrev", "Cmd-Alt-F": "replace", "Shift-Cmd-Alt-F": "replaceAll", - "Cmd-[": "indentLess", "Cmd-]": "indentMore", - fallthrough: ["basic", "emacsy"] - }; - keyMap["default"] = mac ? keyMap.macDefault : keyMap.pcDefault; - keyMap.emacsy = { - "Ctrl-F": "goCharRight", "Ctrl-B": "goCharLeft", "Ctrl-P": "goLineUp", "Ctrl-N": "goLineDown", - "Alt-F": "goWordRight", "Alt-B": "goWordLeft", "Ctrl-A": "goLineStart", "Ctrl-E": "goLineEnd", - "Ctrl-V": "goPageUp", "Shift-Ctrl-V": "goPageDown", "Ctrl-D": "delCharRight", "Ctrl-H": "delCharLeft", - "Alt-D": "delWordRight", "Alt-Backspace": "delWordLeft", "Ctrl-K": "killLine", "Ctrl-T": "transposeChars" - }; - - function getKeyMap(val) { - if (typeof val == "string") return keyMap[val]; - else return val; - } - function lookupKey(name, extraMap, map, handle, stop) { - function lookup(map) { - map = getKeyMap(map); - var found = map[name]; - if (found === false) { - if (stop) stop(); - return true; - } - if (found != null && handle(found)) return true; - if (map.nofallthrough) { - if (stop) stop(); - return true; - } - var fallthrough = map.fallthrough; - if (fallthrough == null) return false; - if (Object.prototype.toString.call(fallthrough) != "[object Array]") - return lookup(fallthrough); - for (var i = 0, e = fallthrough.length; i < e; ++i) { - if (lookup(fallthrough[i])) return true; - } - return false; - } - if (extraMap && lookup(extraMap)) return true; - return lookup(map); - } - function isModifierKey(event) { - var name = keyNames[e_prop(event, "keyCode")]; - return name == "Ctrl" || name == "Alt" || name == "Shift" || name == "Mod"; - } - - CodeMirror.fromTextArea = function(textarea, options) { - if (!options) options = {}; - options.value = textarea.value; - if (!options.tabindex && textarea.tabindex) - options.tabindex = textarea.tabindex; - // Set autofocus to true if this textarea is focused, or if it has - // autofocus and no other element is focused. - if (options.autofocus == null) { - var hasFocus = document.body; - // doc.activeElement occasionally throws on IE - try { hasFocus = document.activeElement; } catch(e) {} - options.autofocus = hasFocus == textarea || - textarea.getAttribute("autofocus") != null && hasFocus == document.body; - } - - function save() {textarea.value = instance.getValue();} - if (textarea.form) { - // Deplorable hack to make the submit method do the right thing. - var rmSubmit = connect(textarea.form, "submit", save, true); - if (typeof textarea.form.submit == "function") { - var realSubmit = textarea.form.submit; - textarea.form.submit = function wrappedSubmit() { - save(); - textarea.form.submit = realSubmit; - textarea.form.submit(); - textarea.form.submit = wrappedSubmit; - }; - } - } - - textarea.style.display = "none"; - var instance = CodeMirror(function(node) { - textarea.parentNode.insertBefore(node, textarea.nextSibling); - }, options); - instance.save = save; - instance.getTextArea = function() { return textarea; }; - instance.toTextArea = function() { - save(); - textarea.parentNode.removeChild(instance.getWrapperElement()); - textarea.style.display = ""; - if (textarea.form) { - rmSubmit(); - if (typeof textarea.form.submit == "function") - textarea.form.submit = realSubmit; - } - }; - return instance; - }; - - var gecko = /gecko\/\d{7}/i.test(navigator.userAgent); - var ie = /MSIE \d/.test(navigator.userAgent); - var ie_lt8 = /MSIE [1-7]\b/.test(navigator.userAgent); - var ie_lt9 = /MSIE [1-8]\b/.test(navigator.userAgent); - var quirksMode = ie && document.documentMode == 5; - var webkit = /WebKit\//.test(navigator.userAgent); - var chrome = /Chrome\//.test(navigator.userAgent); - var opera = /Opera\//.test(navigator.userAgent); - var safari = /Apple Computer/.test(navigator.vendor); - var khtml = /KHTML\//.test(navigator.userAgent); - var mac_geLion = /Mac OS X 10\D([7-9]|\d\d)\D/.test(navigator.userAgent); - - // Utility functions for working with state. Exported because modes - // sometimes need to do this. - function copyState(mode, state) { - if (state === true) return state; - if (mode.copyState) return mode.copyState(state); - var nstate = {}; - for (var n in state) { - var val = state[n]; - if (val instanceof Array) val = val.concat([]); - nstate[n] = val; - } - return nstate; - } - CodeMirror.copyState = copyState; - function startState(mode, a1, a2) { - return mode.startState ? mode.startState(a1, a2) : true; - } - CodeMirror.startState = startState; - CodeMirror.innerMode = function(mode, state) { - while (mode.innerMode) { - var info = mode.innerMode(state); - state = info.state; - mode = info.mode; - } - return info || {mode: mode, state: state}; - }; - - // The character stream used by a mode's parser. - function StringStream(string, tabSize) { - this.pos = this.start = 0; - this.string = string; - this.tabSize = tabSize || 8; - } - StringStream.prototype = { - eol: function() {return this.pos >= this.string.length;}, - sol: function() {return this.pos == 0;}, - peek: function() {return this.string.charAt(this.pos) || undefined;}, - next: function() { - if (this.pos < this.string.length) - return this.string.charAt(this.pos++); - }, - eat: function(match) { - var ch = this.string.charAt(this.pos); - if (typeof match == "string") var ok = ch == match; - else var ok = ch && (match.test ? match.test(ch) : match(ch)); - if (ok) {++this.pos; return ch;} - }, - eatWhile: function(match) { - var start = this.pos; - while (this.eat(match)){} - return this.pos > start; - }, - eatSpace: function() { - var start = this.pos; - while (/[\s\u00a0]/.test(this.string.charAt(this.pos))) ++this.pos; - return this.pos > start; - }, - skipToEnd: function() {this.pos = this.string.length;}, - skipTo: function(ch) { - var found = this.string.indexOf(ch, this.pos); - if (found > -1) {this.pos = found; return true;} - }, - backUp: function(n) {this.pos -= n;}, - column: function() {return countColumn(this.string, this.start, this.tabSize);}, - indentation: function() {return countColumn(this.string, null, this.tabSize);}, - match: function(pattern, consume, caseInsensitive) { - if (typeof pattern == "string") { - var cased = function(str) {return caseInsensitive ? str.toLowerCase() : str;}; - if (cased(this.string).indexOf(cased(pattern), this.pos) == this.pos) { - if (consume !== false) this.pos += pattern.length; - return true; - } - } else { - var match = this.string.slice(this.pos).match(pattern); - if (match && match.index > 0) return null; - if (match && consume !== false) this.pos += match[0].length; - return match; - } - }, - current: function(){return this.string.slice(this.start, this.pos);} - }; - CodeMirror.StringStream = StringStream; - - function MarkedSpan(from, to, marker) { - this.from = from; this.to = to; this.marker = marker; - } - - function getMarkedSpanFor(spans, marker, del) { - if (spans) for (var i = 0; i < spans.length; ++i) { - var span = spans[i]; - if (span.marker == marker) { - if (del) spans.splice(i, 1); - return span; - } - } - } - - function markedSpansBefore(old, startCh, endCh) { - if (old) for (var i = 0, nw; i < old.length; ++i) { - var span = old[i], marker = span.marker; - var startsBefore = span.from == null || (marker.inclusiveLeft ? span.from <= startCh : span.from < startCh); - if (startsBefore || marker.type == "bookmark" && span.from == startCh && span.from != endCh) { - var endsAfter = span.to == null || (marker.inclusiveRight ? span.to >= startCh : span.to > startCh); - (nw || (nw = [])).push({from: span.from, - to: endsAfter ? null : span.to, - marker: marker}); - } - } - return nw; - } - - function markedSpansAfter(old, endCh) { - if (old) for (var i = 0, nw; i < old.length; ++i) { - var span = old[i], marker = span.marker; - var endsAfter = span.to == null || (marker.inclusiveRight ? span.to >= endCh : span.to > endCh); - if (endsAfter || marker.type == "bookmark" && span.from == endCh) { - var startsBefore = span.from == null || (marker.inclusiveLeft ? span.from <= endCh : span.from < endCh); - (nw || (nw = [])).push({from: startsBefore ? null : span.from - endCh, - to: span.to == null ? null : span.to - endCh, - marker: marker}); - } - } - return nw; - } - - function updateMarkedSpans(oldFirst, oldLast, startCh, endCh, newText) { - if (!oldFirst && !oldLast) return newText; - // Get the spans that 'stick out' on both sides - var first = markedSpansBefore(oldFirst, startCh); - var last = markedSpansAfter(oldLast, endCh); - - // Next, merge those two ends - var sameLine = newText.length == 1, offset = lst(newText).length + (sameLine ? startCh : 0); - if (first) { - // Fix up .to properties of first - for (var i = 0; i < first.length; ++i) { - var span = first[i]; - if (span.to == null) { - var found = getMarkedSpanFor(last, span.marker); - if (!found) span.to = startCh; - else if (sameLine) span.to = found.to == null ? null : found.to + offset; - } - } - } - if (last) { - // Fix up .from in last (or move them into first in case of sameLine) - for (var i = 0; i < last.length; ++i) { - var span = last[i]; - if (span.to != null) span.to += offset; - if (span.from == null) { - var found = getMarkedSpanFor(first, span.marker); - if (!found) { - span.from = offset; - if (sameLine) (first || (first = [])).push(span); - } - } else { - span.from += offset; - if (sameLine) (first || (first = [])).push(span); - } - } - } - - var newMarkers = [newHL(newText[0], first)]; - if (!sameLine) { - // Fill gap with whole-line-spans - var gap = newText.length - 2, gapMarkers; - if (gap > 0 && first) - for (var i = 0; i < first.length; ++i) - if (first[i].to == null) - (gapMarkers || (gapMarkers = [])).push({from: null, to: null, marker: first[i].marker}); - for (var i = 0; i < gap; ++i) - newMarkers.push(newHL(newText[i+1], gapMarkers)); - newMarkers.push(newHL(lst(newText), last)); - } - return newMarkers; - } - - // hl stands for history-line, a data structure that can be either a - // string (line without markers) or a {text, markedSpans} object. - function hlText(val) { return typeof val == "string" ? val : val.text; } - function hlSpans(val) { return typeof val == "string" ? null : val.markedSpans; } - function newHL(text, spans) { return spans ? {text: text, markedSpans: spans} : text; } - - function detachMarkedSpans(line) { - var spans = line.markedSpans; - if (!spans) return; - for (var i = 0; i < spans.length; ++i) { - var lines = spans[i].marker.lines; - var ix = indexOf(lines, line); - lines.splice(ix, 1); - } - line.markedSpans = null; - } - - function attachMarkedSpans(line, spans) { - if (!spans) return; - for (var i = 0; i < spans.length; ++i) - var marker = spans[i].marker.lines.push(line); - line.markedSpans = spans; - } - - // When measuring the position of the end of a line, different - // browsers require different approaches. If an empty span is added, - // many browsers report bogus offsets. Of those, some (Webkit, - // recent IE) will accept a space without moving the whole span to - // the next line when wrapping it, others work with a zero-width - // space. - var eolSpanContent = " "; - if (gecko || (ie && !ie_lt8)) eolSpanContent = "\u200b"; - else if (opera) eolSpanContent = ""; - - // Line objects. These hold state related to a line, including - // highlighting info (the styles array). - function Line(text, markedSpans) { - this.text = text; - this.height = 1; - attachMarkedSpans(this, markedSpans); - } - Line.prototype = { - update: function(text, markedSpans) { - this.text = text; - this.stateAfter = this.styles = null; - detachMarkedSpans(this); - attachMarkedSpans(this, markedSpans); - }, - // Run the given mode's parser over a line, update the styles - // array, which contains alternating fragments of text and CSS - // classes. - highlight: function(mode, state, tabSize) { - var stream = new StringStream(this.text, tabSize), st = this.styles || (this.styles = []); - var pos = st.length = 0; - if (this.text == "" && mode.blankLine) mode.blankLine(state); - while (!stream.eol()) { - var style = mode.token(stream, state), substr = stream.current(); - stream.start = stream.pos; - if (pos && st[pos-1] == style) { - st[pos-2] += substr; - } else if (substr) { - st[pos++] = substr; st[pos++] = style; - } - // Give up when line is ridiculously long - if (stream.pos > 5000) { - st[pos++] = this.text.slice(stream.pos); st[pos++] = null; - break; - } - } - }, - process: function(mode, state, tabSize) { - var stream = new StringStream(this.text, tabSize); - if (this.text == "" && mode.blankLine) mode.blankLine(state); - while (!stream.eol() && stream.pos <= 5000) { - mode.token(stream, state); - stream.start = stream.pos; - } - }, - // Fetch the parser token for a given character. Useful for hacks - // that want to inspect the mode state (say, for completion). - getTokenAt: function(mode, state, tabSize, ch) { - var txt = this.text, stream = new StringStream(txt, tabSize); - while (stream.pos < ch && !stream.eol()) { - stream.start = stream.pos; - var style = mode.token(stream, state); - } - return {start: stream.start, - end: stream.pos, - string: stream.current(), - className: style || null, - state: state}; - }, - indentation: function(tabSize) {return countColumn(this.text, null, tabSize);}, - // Produces an HTML fragment for the line, taking selection, - // marking, and highlighting into account. - getContent: function(tabSize, wrapAt, compensateForWrapping) { - var first = true, col = 0, specials = /[\t\u0000-\u0019\u200b\u2028\u2029\uFEFF]/g; - var pre = elt("pre"); - function span_(html, text, style) { - if (!text) return; - // Work around a bug where, in some compat modes, IE ignores leading spaces - if (first && ie && text.charAt(0) == " ") text = "\u00a0" + text.slice(1); - first = false; - if (!specials.test(text)) { - col += text.length; - var content = document.createTextNode(text); - } else { - var content = document.createDocumentFragment(), pos = 0; - while (true) { - specials.lastIndex = pos; - var m = specials.exec(text); - var skipped = m ? m.index - pos : text.length - pos; - if (skipped) { - content.appendChild(document.createTextNode(text.slice(pos, pos + skipped))); - col += skipped; - } - if (!m) break; - pos += skipped + 1; - if (m[0] == "\t") { - var tabWidth = tabSize - col % tabSize; - content.appendChild(elt("span", spaceStr(tabWidth), "cm-tab")); - col += tabWidth; - } else { - var token = elt("span", "\u2022", "cm-invalidchar"); - token.title = "\\u" + m[0].charCodeAt(0).toString(16); - content.appendChild(token); - col += 1; - } - } - } - if (style) html.appendChild(elt("span", [content], style)); - else html.appendChild(content); - } - var span = span_; - if (wrapAt != null) { - var outPos = 0, anchor = pre.anchor = elt("span"); - span = function(html, text, style) { - var l = text.length; - if (wrapAt >= outPos && wrapAt < outPos + l) { - if (wrapAt > outPos) { - span_(html, text.slice(0, wrapAt - outPos), style); - // See comment at the definition of spanAffectsWrapping - if (compensateForWrapping) html.appendChild(elt("wbr")); - } - html.appendChild(anchor); - var cut = wrapAt - outPos; - span_(anchor, opera ? text.slice(cut, cut + 1) : text.slice(cut), style); - if (opera) span_(html, text.slice(cut + 1), style); - wrapAt--; - outPos += l; - } else { - outPos += l; - span_(html, text, style); - if (outPos == wrapAt && outPos == len) { - setTextContent(anchor, eolSpanContent); - html.appendChild(anchor); - } - // Stop outputting HTML when gone sufficiently far beyond measure - else if (outPos > wrapAt + 10 && /\s/.test(text)) span = function(){}; - } - }; - } - - var st = this.styles, allText = this.text, marked = this.markedSpans; - var len = allText.length; - function styleToClass(style) { - if (!style) return null; - return "cm-" + style.replace(/ +/g, " cm-"); - } - if (!allText && wrapAt == null) { - span(pre, " "); - } else if (!marked || !marked.length) { - for (var i = 0, ch = 0; ch < len; i+=2) { - var str = st[i], style = st[i+1], l = str.length; - if (ch + l > len) str = str.slice(0, len - ch); - ch += l; - span(pre, str, styleToClass(style)); - } - } else { - marked.sort(function(a, b) { return a.from - b.from; }); - var pos = 0, i = 0, text = "", style, sg = 0; - var nextChange = marked[0].from || 0, marks = [], markpos = 0; - var advanceMarks = function() { - var m; - while (markpos < marked.length && - ((m = marked[markpos]).from == pos || m.from == null)) { - if (m.marker.type == "range") marks.push(m); - ++markpos; - } - nextChange = markpos < marked.length ? marked[markpos].from : Infinity; - for (var i = 0; i < marks.length; ++i) { - var to = marks[i].to; - if (to == null) to = Infinity; - if (to == pos) marks.splice(i--, 1); - else nextChange = Math.min(to, nextChange); - } - }; - var m = 0; - while (pos < len) { - if (nextChange == pos) advanceMarks(); - var upto = Math.min(len, nextChange); - while (true) { - if (text) { - var end = pos + text.length; - var appliedStyle = style; - for (var j = 0; j < marks.length; ++j) { - var mark = marks[j]; - appliedStyle = (appliedStyle ? appliedStyle + " " : "") + mark.marker.style; - if (mark.marker.endStyle && mark.to === Math.min(end, upto)) appliedStyle += " " + mark.marker.endStyle; - if (mark.marker.startStyle && mark.from === pos) appliedStyle += " " + mark.marker.startStyle; - } - span(pre, end > upto ? text.slice(0, upto - pos) : text, appliedStyle); - if (end >= upto) {text = text.slice(upto - pos); pos = upto; break;} - pos = end; - } - text = st[i++]; style = styleToClass(st[i++]); - } - } - } - return pre; - }, - cleanUp: function() { - this.parent = null; - detachMarkedSpans(this); - } - }; - - // Data structure that holds the sequence of lines. - function LeafChunk(lines) { - this.lines = lines; - this.parent = null; - for (var i = 0, e = lines.length, height = 0; i < e; ++i) { - lines[i].parent = this; - height += lines[i].height; - } - this.height = height; - } - LeafChunk.prototype = { - chunkSize: function() { return this.lines.length; }, - remove: function(at, n, callbacks) { - for (var i = at, e = at + n; i < e; ++i) { - var line = this.lines[i]; - this.height -= line.height; - line.cleanUp(); - if (line.handlers) - for (var j = 0; j < line.handlers.length; ++j) callbacks.push(line.handlers[j]); - } - this.lines.splice(at, n); - }, - collapse: function(lines) { - lines.splice.apply(lines, [lines.length, 0].concat(this.lines)); - }, - insertHeight: function(at, lines, height) { - this.height += height; - this.lines = this.lines.slice(0, at).concat(lines).concat(this.lines.slice(at)); - for (var i = 0, e = lines.length; i < e; ++i) lines[i].parent = this; - }, - iterN: function(at, n, op) { - for (var e = at + n; at < e; ++at) - if (op(this.lines[at])) return true; - } - }; - function BranchChunk(children) { - this.children = children; - var size = 0, height = 0; - for (var i = 0, e = children.length; i < e; ++i) { - var ch = children[i]; - size += ch.chunkSize(); height += ch.height; - ch.parent = this; - } - this.size = size; - this.height = height; - this.parent = null; - } - BranchChunk.prototype = { - chunkSize: function() { return this.size; }, - remove: function(at, n, callbacks) { - this.size -= n; - for (var i = 0; i < this.children.length; ++i) { - var child = this.children[i], sz = child.chunkSize(); - if (at < sz) { - var rm = Math.min(n, sz - at), oldHeight = child.height; - child.remove(at, rm, callbacks); - this.height -= oldHeight - child.height; - if (sz == rm) { this.children.splice(i--, 1); child.parent = null; } - if ((n -= rm) == 0) break; - at = 0; - } else at -= sz; - } - if (this.size - n < 25) { - var lines = []; - this.collapse(lines); - this.children = [new LeafChunk(lines)]; - this.children[0].parent = this; - } - }, - collapse: function(lines) { - for (var i = 0, e = this.children.length; i < e; ++i) this.children[i].collapse(lines); - }, - insert: function(at, lines) { - var height = 0; - for (var i = 0, e = lines.length; i < e; ++i) height += lines[i].height; - this.insertHeight(at, lines, height); - }, - insertHeight: function(at, lines, height) { - this.size += lines.length; - this.height += height; - for (var i = 0, e = this.children.length; i < e; ++i) { - var child = this.children[i], sz = child.chunkSize(); - if (at <= sz) { - child.insertHeight(at, lines, height); - if (child.lines && child.lines.length > 50) { - while (child.lines.length > 50) { - var spilled = child.lines.splice(child.lines.length - 25, 25); - var newleaf = new LeafChunk(spilled); - child.height -= newleaf.height; - this.children.splice(i + 1, 0, newleaf); - newleaf.parent = this; - } - this.maybeSpill(); - } - break; - } - at -= sz; - } - }, - maybeSpill: function() { - if (this.children.length <= 10) return; - var me = this; - do { - var spilled = me.children.splice(me.children.length - 5, 5); - var sibling = new BranchChunk(spilled); - if (!me.parent) { // Become the parent node - var copy = new BranchChunk(me.children); - copy.parent = me; - me.children = [copy, sibling]; - me = copy; - } else { - me.size -= sibling.size; - me.height -= sibling.height; - var myIndex = indexOf(me.parent.children, me); - me.parent.children.splice(myIndex + 1, 0, sibling); - } - sibling.parent = me.parent; - } while (me.children.length > 10); - me.parent.maybeSpill(); - }, - iter: function(from, to, op) { this.iterN(from, to - from, op); }, - iterN: function(at, n, op) { - for (var i = 0, e = this.children.length; i < e; ++i) { - var child = this.children[i], sz = child.chunkSize(); - if (at < sz) { - var used = Math.min(n, sz - at); - if (child.iterN(at, used, op)) return true; - if ((n -= used) == 0) break; - at = 0; - } else at -= sz; - } - } - }; - - function getLineAt(chunk, n) { - while (!chunk.lines) { - for (var i = 0;; ++i) { - var child = chunk.children[i], sz = child.chunkSize(); - if (n < sz) { chunk = child; break; } - n -= sz; - } - } - return chunk.lines[n]; - } - function lineNo(line) { - if (line.parent == null) return null; - var cur = line.parent, no = indexOf(cur.lines, line); - for (var chunk = cur.parent; chunk; cur = chunk, chunk = chunk.parent) { - for (var i = 0, e = chunk.children.length; ; ++i) { - if (chunk.children[i] == cur) break; - no += chunk.children[i].chunkSize(); - } - } - return no; - } - function lineAtHeight(chunk, h) { - var n = 0; - outer: do { - for (var i = 0, e = chunk.children.length; i < e; ++i) { - var child = chunk.children[i], ch = child.height; - if (h < ch) { chunk = child; continue outer; } - h -= ch; - n += child.chunkSize(); - } - return n; - } while (!chunk.lines); - for (var i = 0, e = chunk.lines.length; i < e; ++i) { - var line = chunk.lines[i], lh = line.height; - if (h < lh) break; - h -= lh; - } - return n + i; - } - function heightAtLine(chunk, n) { - var h = 0; - outer: do { - for (var i = 0, e = chunk.children.length; i < e; ++i) { - var child = chunk.children[i], sz = child.chunkSize(); - if (n < sz) { chunk = child; continue outer; } - n -= sz; - h += child.height; - } - return h; - } while (!chunk.lines); - for (var i = 0; i < n; ++i) h += chunk.lines[i].height; - return h; - } - - // The history object 'chunks' changes that are made close together - // and at almost the same time into bigger undoable units. - function History() { - this.time = 0; - this.done = []; this.undone = []; - this.compound = 0; - this.closed = false; - } - History.prototype = { - addChange: function(start, added, old) { - this.undone.length = 0; - var time = +new Date, cur = lst(this.done), last = cur && lst(cur); - var dtime = time - this.time; - - if (this.compound && cur && !this.closed) { - cur.push({start: start, added: added, old: old}); - } else if (dtime > 400 || !last || this.closed || - last.start > start + old.length || last.start + last.added < start) { - this.done.push([{start: start, added: added, old: old}]); - this.closed = false; - } else { - var startBefore = Math.max(0, last.start - start), - endAfter = Math.max(0, (start + old.length) - (last.start + last.added)); - for (var i = startBefore; i > 0; --i) last.old.unshift(old[i - 1]); - for (var i = endAfter; i > 0; --i) last.old.push(old[old.length - i]); - if (startBefore) last.start = start; - last.added += added - (old.length - startBefore - endAfter); - } - this.time = time; - }, - startCompound: function() { - if (!this.compound++) this.closed = true; - }, - endCompound: function() { - if (!--this.compound) this.closed = true; - } - }; - - function stopMethod() {e_stop(this);} - // Ensure an event has a stop method. - function addStop(event) { - if (!event.stop) event.stop = stopMethod; - return event; - } - - function e_preventDefault(e) { - if (e.preventDefault) e.preventDefault(); - else e.returnValue = false; - } - function e_stopPropagation(e) { - if (e.stopPropagation) e.stopPropagation(); - else e.cancelBubble = true; - } - function e_stop(e) {e_preventDefault(e); e_stopPropagation(e);} - CodeMirror.e_stop = e_stop; - CodeMirror.e_preventDefault = e_preventDefault; - CodeMirror.e_stopPropagation = e_stopPropagation; - - function e_target(e) {return e.target || e.srcElement;} - function e_button(e) { - var b = e.which; - if (b == null) { - if (e.button & 1) b = 1; - else if (e.button & 2) b = 3; - else if (e.button & 4) b = 2; - } - if (mac && e.ctrlKey && b == 1) b = 3; - return b; - } - - // Allow 3rd-party code to override event properties by adding an override - // object to an event object. - function e_prop(e, prop) { - var overridden = e.override && e.override.hasOwnProperty(prop); - return overridden ? e.override[prop] : e[prop]; - } - - // Event handler registration. If disconnect is true, it'll return a - // function that unregisters the handler. - function connect(node, type, handler, disconnect) { - if (typeof node.addEventListener == "function") { - node.addEventListener(type, handler, false); - if (disconnect) return function() {node.removeEventListener(type, handler, false);}; - } else { - var wrapHandler = function(event) {handler(event || window.event);}; - node.attachEvent("on" + type, wrapHandler); - if (disconnect) return function() {node.detachEvent("on" + type, wrapHandler);}; - } - } - CodeMirror.connect = connect; - - function Delayed() {this.id = null;} - Delayed.prototype = {set: function(ms, f) {clearTimeout(this.id); this.id = setTimeout(f, ms);}}; - - var Pass = CodeMirror.Pass = {toString: function(){return "CodeMirror.Pass";}}; - - // Detect drag-and-drop - var dragAndDrop = function() { - // There is *some* kind of drag-and-drop support in IE6-8, but I - // couldn't get it to work yet. - if (ie_lt9) return false; - var div = elt('div'); - return "draggable" in div || "dragDrop" in div; - }(); - - // Feature-detect whether newlines in textareas are converted to \r\n - var lineSep = function () { - var te = elt("textarea"); - te.value = "foo\nbar"; - if (te.value.indexOf("\r") > -1) return "\r\n"; - return "\n"; - }(); - - // For a reason I have yet to figure out, some browsers disallow - // word wrapping between certain characters *only* if a new inline - // element is started between them. This makes it hard to reliably - // measure the position of things, since that requires inserting an - // extra span. This terribly fragile set of regexps matches the - // character combinations that suffer from this phenomenon on the - // various browsers. - var spanAffectsWrapping = /^$/; // Won't match any two-character string - if (gecko) spanAffectsWrapping = /$'/; - else if (safari) spanAffectsWrapping = /\-[^ \-?]|\?[^ !'\"\),.\-\/:;\?\]\}]/; - else if (chrome) spanAffectsWrapping = /\-[^ \-\.?]|\?[^ \-\.?\]\}:;!'\"\),\/]|[\.!\"#&%\)*+,:;=>\]|\}~][\(\{\[<]|\$'/; - - // Counts the column offset in a string, taking tabs into account. - // Used mostly to find indentation. - function countColumn(string, end, tabSize) { - if (end == null) { - end = string.search(/[^\s\u00a0]/); - if (end == -1) end = string.length; - } - for (var i = 0, n = 0; i < end; ++i) { - if (string.charAt(i) == "\t") n += tabSize - (n % tabSize); - else ++n; - } - return n; - } - - function eltOffset(node, screen) { - // Take the parts of bounding client rect that we are interested in so we are able to edit if need be, - // since the returned value cannot be changed externally (they are kept in sync as the element moves within the page) - try { var box = node.getBoundingClientRect(); box = { top: box.top, left: box.left }; } - catch(e) { box = {top: 0, left: 0}; } - if (!screen) { - // Get the toplevel scroll, working around browser differences. - if (window.pageYOffset == null) { - var t = document.documentElement || document.body.parentNode; - if (t.scrollTop == null) t = document.body; - box.top += t.scrollTop; box.left += t.scrollLeft; - } else { - box.top += window.pageYOffset; box.left += window.pageXOffset; - } - } - return box; - } - - function eltText(node) { - return node.textContent || node.innerText || node.nodeValue || ""; - } - - var spaceStrs = [""]; - function spaceStr(n) { - while (spaceStrs.length <= n) - spaceStrs.push(lst(spaceStrs) + " "); - return spaceStrs[n]; - } - - function lst(arr) { return arr[arr.length-1]; } - - function selectInput(node) { - if (ios) { // Mobile Safari apparently has a bug where select() is broken. - node.selectionStart = 0; - node.selectionEnd = node.value.length; - } else node.select(); - } - - // Operations on {line, ch} objects. - function posEq(a, b) {return a.line == b.line && a.ch == b.ch;} - function posLess(a, b) {return a.line < b.line || (a.line == b.line && a.ch < b.ch);} - function copyPos(x) {return {line: x.line, ch: x.ch};} - - function elt(tag, content, className, style) { - var e = document.createElement(tag); - if (className) e.className = className; - if (style) e.style.cssText = style; - if (typeof content == "string") setTextContent(e, content); - else if (content) for (var i = 0; i < content.length; ++i) e.appendChild(content[i]); - return e; - } - function removeChildren(e) { - e.innerHTML = ""; - return e; - } - function removeChildrenAndAdd(parent, e) { - removeChildren(parent).appendChild(e); - } - function setTextContent(e, str) { - if (ie_lt9) { - e.innerHTML = ""; - e.appendChild(document.createTextNode(str)); - } else e.textContent = str; - } - - // Used to position the cursor after an undo/redo by finding the - // last edited character. - function editEnd(from, to) { - if (!to) return 0; - if (!from) return to.length; - for (var i = from.length, j = to.length; i >= 0 && j >= 0; --i, --j) - if (from.charAt(i) != to.charAt(j)) break; - return j + 1; - } - - function indexOf(collection, elt) { - if (collection.indexOf) return collection.indexOf(elt); - for (var i = 0, e = collection.length; i < e; ++i) - if (collection[i] == elt) return i; - return -1; - } - function isWordChar(ch) { - return /\w/.test(ch) || ch.toUpperCase() != ch.toLowerCase(); - } - - // See if "".split is the broken IE version, if so, provide an - // alternative way to split lines. - var splitLines = "\n\nb".split(/\n/).length != 3 ? function(string) { - var pos = 0, result = [], l = string.length; - while (pos <= l) { - var nl = string.indexOf("\n", pos); - if (nl == -1) nl = string.length; - var line = string.slice(pos, string.charAt(nl - 1) == "\r" ? nl - 1 : nl); - var rt = line.indexOf("\r"); - if (rt != -1) { - result.push(line.slice(0, rt)); - pos += rt + 1; - } else { - result.push(line); - pos = nl + 1; - } - } - return result; - } : function(string){return string.split(/\r\n?|\n/);}; - CodeMirror.splitLines = splitLines; - - var hasSelection = window.getSelection ? function(te) { - try { return te.selectionStart != te.selectionEnd; } - catch(e) { return false; } - } : function(te) { - try {var range = te.ownerDocument.selection.createRange();} - catch(e) {} - if (!range || range.parentElement() != te) return false; - return range.compareEndPoints("StartToEnd", range) != 0; - }; - - CodeMirror.defineMode("null", function() { - return {token: function(stream) {stream.skipToEnd();}}; - }); - CodeMirror.defineMIME("text/plain", "null"); - - var keyNames = {3: "Enter", 8: "Backspace", 9: "Tab", 13: "Enter", 16: "Shift", 17: "Ctrl", 18: "Alt", - 19: "Pause", 20: "CapsLock", 27: "Esc", 32: "Space", 33: "PageUp", 34: "PageDown", 35: "End", - 36: "Home", 37: "Left", 38: "Up", 39: "Right", 40: "Down", 44: "PrintScrn", 45: "Insert", - 46: "Delete", 59: ";", 91: "Mod", 92: "Mod", 93: "Mod", 109: "-", 107: "=", 127: "Delete", - 186: ";", 187: "=", 188: ",", 189: "-", 190: ".", 191: "/", 192: "`", 219: "[", 220: "\\", - 221: "]", 222: "'", 63276: "PageUp", 63277: "PageDown", 63275: "End", 63273: "Home", - 63234: "Left", 63232: "Up", 63235: "Right", 63233: "Down", 63302: "Insert", 63272: "Delete"}; - CodeMirror.keyNames = keyNames; - (function() { - // Number keys - for (var i = 0; i < 10; i++) keyNames[i + 48] = String(i); - // Alphabetic keys - for (var i = 65; i <= 90; i++) keyNames[i] = String.fromCharCode(i); - // Function keys - for (var i = 1; i <= 12; i++) keyNames[i + 111] = keyNames[i + 63235] = "F" + i; - })(); - - CodeMirror.version = "2.34"; - - return CodeMirror; -})(); - -CodeMirror.runMode = function(string, modespec, callback, options) { - function esc(str) { - return str.replace(/[<&]/, function(ch) { return ch == "<" ? "<" : "&"; }); - } - - var mode = CodeMirror.getMode(CodeMirror.defaults, modespec); - var isNode = callback.nodeType == 1; - var tabSize = (options && options.tabSize) || CodeMirror.defaults.tabSize; - if (isNode) { - var node = callback, accum = [], col = 0; - callback = function(text, style) { - if (text == "\n") { - accum.push("
"); - col = 0; - return; - } - var escaped = ""; - // HTML-escape and replace tabs - for (var pos = 0;;) { - var idx = text.indexOf("\t", pos); - if (idx == -1) { - escaped += esc(text.slice(pos)); - col += text.length - pos; - break; - } else { - col += idx - pos; - escaped += esc(text.slice(pos, idx)); - var size = tabSize - col % tabSize; - col += size; - for (var i = 0; i < size; ++i) escaped += " "; - pos = idx + 1; - } - } - - if (style) - accum.push("" + escaped + ""); - else - accum.push(escaped); - }; - } - var lines = CodeMirror.splitLines(string), state = CodeMirror.startState(mode); - for (var i = 0, e = lines.length; i < e; ++i) { - if (i) callback("\n"); - var stream = new CodeMirror.StringStream(lines[i]); - while (!stream.eol()) { - var style = mode.token(stream, state); - callback(stream.current(), style, i, stream.start); - stream.start = stream.pos; - } - } - if (isNode) - node.innerHTML = accum.join(""); -}; - - -/* - * MySQL Mode for CodeMirror 2 by MySQL-Tools - * @author James Thorne (partydroid) - * @link http://github.com/partydroid/MySQL-Tools - * @link http://mysqltools.org - * @version 02/Jan/2012 -*/ -CodeMirror.defineMode("mysql", function(config) { - var indentUnit = config.indentUnit; - var curPunc; - - function wordRegexp(words) { - return new RegExp("^(?:" + words.join("|") + ")$", "i"); - } - var ops = wordRegexp(["str", "lang", "langmatches", "datatype", "bound", "sameterm", "isiri", "isuri", - "isblank", "isliteral", "union", "a"]); - var keywords = wordRegexp([ - ('ACCESSIBLE'),('ALTER'),('AS'),('BEFORE'),('BINARY'),('BY'),('CASE'),('CHARACTER'),('COLUMN'),('CONTINUE'),('CROSS'),('CURRENT_TIMESTAMP'),('DATABASE'),('DAY_MICROSECOND'),('DEC'),('DEFAULT'), - ('DESC'),('DISTINCT'),('DOUBLE'),('EACH'),('ENCLOSED'),('EXIT'),('FETCH'),('FLOAT8'),('FOREIGN'),('GRANT'),('HIGH_PRIORITY'),('HOUR_SECOND'),('IN'),('INNER'),('INSERT'),('INT2'),('INT8'), - ('INTO'),('JOIN'),('KILL'),('LEFT'),('LINEAR'),('LOCALTIME'),('LONG'),('LOOP'),('MATCH'),('MEDIUMTEXT'),('MINUTE_SECOND'),('NATURAL'),('NULL'),('OPTIMIZE'),('OR'),('OUTER'),('PRIMARY'), - ('RANGE'),('READ_WRITE'),('REGEXP'),('REPEAT'),('RESTRICT'),('RIGHT'),('SCHEMAS'),('SENSITIVE'),('SHOW'),('SPECIFIC'),('SQLSTATE'),('SQL_CALC_FOUND_ROWS'),('STARTING'),('TERMINATED'), - ('TINYINT'),('TRAILING'),('UNDO'),('UNLOCK'),('USAGE'),('UTC_DATE'),('VALUES'),('VARCHARACTER'),('WHERE'),('WRITE'),('ZEROFILL'),('ALL'),('AND'),('ASENSITIVE'),('BIGINT'),('BOTH'),('CASCADE'), - ('CHAR'),('COLLATE'),('CONSTRAINT'),('CREATE'),('CURRENT_TIME'),('CURSOR'),('DAY_HOUR'),('DAY_SECOND'),('DECLARE'),('DELETE'),('DETERMINISTIC'),('DIV'),('DUAL'),('ELSEIF'),('EXISTS'),('FALSE'), - ('FLOAT4'),('FORCE'),('FULLTEXT'),('HAVING'),('HOUR_MINUTE'),('IGNORE'),('INFILE'),('INSENSITIVE'),('INT1'),('INT4'),('INTERVAL'),('ITERATE'),('KEYS'),('LEAVE'),('LIMIT'),('LOAD'),('LOCK'), - ('LONGTEXT'),('MASTER_SSL_VERIFY_SERVER_CERT'),('MEDIUMINT'),('MINUTE_MICROSECOND'),('MODIFIES'),('NO_WRITE_TO_BINLOG'),('ON'),('OPTIONALLY'),('OUT'),('PRECISION'),('PURGE'),('READS'), - ('REFERENCES'),('RENAME'),('REQUIRE'),('REVOKE'),('SCHEMA'),('SELECT'),('SET'),('SPATIAL'),('SQLEXCEPTION'),('SQL_BIG_RESULT'),('SSL'),('TABLE'),('TINYBLOB'),('TO'),('TRUE'),('UNIQUE'), - ('UPDATE'),('USING'),('UTC_TIMESTAMP'),('VARCHAR'),('WHEN'),('WITH'),('YEAR_MONTH'),('ADD'),('ANALYZE'),('ASC'),('BETWEEN'),('BLOB'),('CALL'),('CHANGE'),('CHECK'),('CONDITION'),('CONVERT'), - ('CURRENT_DATE'),('CURRENT_USER'),('DATABASES'),('DAY_MINUTE'),('DECIMAL'),('DELAYED'),('DESCRIBE'),('DISTINCTROW'),('DROP'),('ELSE'),('ESCAPED'),('EXPLAIN'),('FLOAT'),('FOR'),('FROM'), - ('GROUP'),('HOUR_MICROSECOND'),('IF'),('INDEX'),('INOUT'),('INT'),('INT3'),('INTEGER'),('IS'),('KEY'),('LEADING'),('LIKE'),('LINES'),('LOCALTIMESTAMP'),('LONGBLOB'),('LOW_PRIORITY'), - ('MEDIUMBLOB'),('MIDDLEINT'),('MOD'),('NOT'),('NUMERIC'),('OPTION'),('ORDER'),('OUTFILE'),('PROCEDURE'),('READ'),('REAL'),('RELEASE'),('REPLACE'),('RETURN'),('RLIKE'),('SECOND_MICROSECOND'), - ('SEPARATOR'),('SMALLINT'),('SQL'),('SQLWARNING'),('SQL_SMALL_RESULT'),('STRAIGHT_JOIN'),('THEN'),('TINYTEXT'),('TRIGGER'),('UNION'),('UNSIGNED'),('USE'),('UTC_TIME'),('VARBINARY'),('VARYING'), - ('WHILE'),('XOR'),('FULL'),('COLUMNS'),('MIN'),('MAX'),('STDEV'),('COUNT') - ]); - var operatorChars = /[*+\-<>=&|]/; - - function tokenBase(stream, state) { - var ch = stream.next(); - curPunc = null; - if (ch == "$" || ch == "?") { - stream.match(/^[\w\d]*/); - return "variable-2"; - } - else if (ch == "<" && !stream.match(/^[\s\u00a0=]/, false)) { - stream.match(/^[^\s\u00a0>]*>?/); - return "atom"; - } - else if (ch == "\"" || ch == "'") { - state.tokenize = tokenLiteral(ch); - return state.tokenize(stream, state); - } - else if (ch == "`") { - state.tokenize = tokenOpLiteral(ch); - return state.tokenize(stream, state); - } - else if (/[{}\(\),\.;\[\]]/.test(ch)) { - curPunc = ch; - return null; - } - else if (ch == "-") { - var ch2 = stream.next(); - if (ch2=="-") { - stream.skipToEnd(); - return "comment"; - } - - } - else if (operatorChars.test(ch)) { - stream.eatWhile(operatorChars); - return null; - } - else if (ch == ":") { - stream.eatWhile(/[\w\d\._\-]/); - return "atom"; - } - else { - stream.eatWhile(/[_\w\d]/); - if (stream.eat(":")) { - stream.eatWhile(/[\w\d_\-]/); - return "atom"; - } - var word = stream.current(), type; - if (ops.test(word)) - return null; - else if (keywords.test(word)) - return "keyword"; - else - return "variable"; - } - } - - function tokenLiteral(quote) { - return function(stream, state) { - var escaped = false, ch; - while ((ch = stream.next()) != null) { - if (ch == quote && !escaped) { - state.tokenize = tokenBase; - break; - } - escaped = !escaped && ch == "\\"; - } - return "string"; - }; - } - - function tokenOpLiteral(quote) { - return function(stream, state) { - var escaped = false, ch; - while ((ch = stream.next()) != null) { - if (ch == quote && !escaped) { - state.tokenize = tokenBase; - break; - } - escaped = !escaped && ch == "\\"; - } - return "variable-2"; - }; - } - - - function pushContext(state, type, col) { - state.context = {prev: state.context, indent: state.indent, col: col, type: type}; - } - function popContext(state) { - state.indent = state.context.indent; - state.context = state.context.prev; - } - - return { - startState: function(base) { - return {tokenize: tokenBase, - context: null, - indent: 0, - col: 0}; - }, - - token: function(stream, state) { - if (stream.sol()) { - if (state.context && state.context.align == null) state.context.align = false; - state.indent = stream.indentation(); - } - if (stream.eatSpace()) return null; - var style = state.tokenize(stream, state); - - if (style != "comment" && state.context && state.context.align == null && state.context.type != "pattern") { - state.context.align = true; - } - - if (curPunc == "(") pushContext(state, ")", stream.column()); - else if (curPunc == "[") pushContext(state, "]", stream.column()); - else if (curPunc == "{") pushContext(state, "}", stream.column()); - else if (/[\]\}\)]/.test(curPunc)) { - while (state.context && state.context.type == "pattern") popContext(state); - if (state.context && curPunc == state.context.type) popContext(state); - } - else if (curPunc == "." && state.context && state.context.type == "pattern") popContext(state); - else if (/atom|string|variable/.test(style) && state.context) { - if (/[\}\]]/.test(state.context.type)) - pushContext(state, "pattern", stream.column()); - else if (state.context.type == "pattern" && !state.context.align) { - state.context.align = true; - state.context.col = stream.column(); - } - } - - return style; - }, - - indent: function(state, textAfter) { - var firstChar = textAfter && textAfter.charAt(0); - var context = state.context; - if (/[\]\}]/.test(firstChar)) - while (context && context.type == "pattern") context = context.prev; - - var closing = context && firstChar == context.type; - if (!context) - return 0; - else if (context.type == "pattern") - return context.col; - else if (context.align) - return context.col + (closing ? 0 : 1); - else - return context.indent + (closing ? 0 : indentUnit); - } - }; -}); - -CodeMirror.defineMIME("text/x-mysql", "mysql"); - -CodeMirror.defineExtension("canHighlight", function() { - return true; -}); - -CodeMirror.defineExtension("highlightSql", function(obj_out, obj_lines, string) { - CodeMirror.runMode(string, "text/x-mysql", obj_out.get(0)); -}); - -CodeMirror.defineExtension("lastLine", function() { - return this.lineCount(); -}); - -CodeMirror.defineExtension("jumpToLine", function(n) { - this.setCursor( n, null ); -}); diff --git a/js/common.js b/js/common.js deleted file mode 100644 index cca2e2c..0000000 --- a/js/common.js +++ /dev/null @@ -1,256 +0,0 @@ -/** - * This file is a part of MyWebSQL package - * - * @file: js/common.js - * @author Samnan ur Rehman - * @copyright (c) 2008-2014 Samnan ur Rehman - * @web https://github.com/Samnan/MyWebSQL - * @license https://github.com/Samnan/MyWebSQL/license - */ - -function wrkfrmSubmit(type, id, name, query) { - if (!document.frmquery) { - xfrm = getFrame(); - frm = xfrm.document.frmquery; - xfrm.onerror = frameErrorHandler; - setPageStatus(true); - } - else { // function called from an iframe in the popup - frm = document.frmquery; - $('#popup_overlay').removeClass('ui-helper-hidden'); - } - - frm.type.value = type; - frm.id.value = id; - frm.name.value = name; - frm.query.value = query; - - if (arguments.length <= 4) - frm.submit(); - else { - callback = arguments[4]; - data = 'q=wrkfrm&' + $(frm).serialize(); - $.ajax({ type: 'POST', - url: '?', - data: data, - success: callback - }); - } -} - -function getFrame() { - xfrm = null; - if ($.browser.msie && $.browser.version < 9.0) - xfrm = document.frames("wrkfrm"); - else - xfrm = window.frames["wrkfrm"]; - return xfrm; -} - -function resetFrame() { - xfrm = getFrame(); - xfrm.src = "javascript:false"; -} - -function debugMsg(msg) { - $('#messageContainer').innerHTML = msg; -} - -function frameErrorHandler() { - setPageStatus(false); - $('#recordCounter').html(' '); - $('#timeCounter').html(''); - $('#messageContainer').html('Navigation Error. Try reloading the page'); -} - -function setPageStatus(flg, msg) { - if (flg) { - $('#nav_bar').css('display', 'none'); - $('#loader').css('display', 'table'); - showNavBtns(); // hide all buttons - } - else { - $('#loader').css('display', 'none'); - $('#nav_bar').css('display', 'table-row'); - showNavBtns('query', 'queryall'); - } - - if (msg) - $('#messageContainer').html(msg); -} - -function addCmdHistory(str) { - d = new Date(); - h = d.getHours(); - m = d.getMinutes(); - if (h < 10) h = '0'+h; - if (m < 10) m = '0'+m; - $('#sql-history > tbody:last').append("[" + h + ":" + m + "]" + str + ";"); - - if (arguments.length > 1 && arguments[1] == true) - currentQuery = str; -} - -function str_replace(search, replace, subject) { - var f = search, r = replace, s = "" + subject; - var ra = is_array(r), sa = is_array(s), f = [].concat(f), r = [].concat(r), i = (s = [].concat(s)).length; - - while (j = 0, i--) { - while (s[i] = s[i].split(f[j]).join(ra ? r[j] || "" : r[0]), ++j in f){}; - }; - - return sa ? s : s[0]; -} - -function is_array( mixed_var ) { - return ( mixed_var instanceof Array ); -} - -/* simple hack for IE :P */ -if(!Array.indexOf) { - Array.prototype.indexOf = function(obj) { - for(var i=0; i 3) { s[0] = s[0].replace(/\B(?=(?:\d{3})+(?!\d))/g, sep); - } - if ((s[1] || '').length < prec) { - s[1] = s[1] || ''; - s[1] += new Array(prec - s[1].length + 1).join('0'); } - return s.join(dec); -} - -/* htmlspecialchars function by phpjs (name changed) */ -function htmlchars (string, quote_style, charset, double_encode) { - var optTemp = 0, - i = 0, noquotes = false; - if (typeof quote_style === 'undefined' || quote_style === null) { - quote_style = 2; - } - string = string.toString(); - if (double_encode !== false) { // Put this first to avoid double-encoding - string = string.replace(/&/g, '&'); - } - string = string.replace(//g, '>'); - var OPTS = { - 'ENT_NOQUOTES': 0, - 'ENT_HTML_QUOTE_SINGLE': 1, - 'ENT_HTML_QUOTE_DOUBLE': 2, - 'ENT_COMPAT': 2, - 'ENT_QUOTES': 3, - 'ENT_IGNORE': 4 - }; - if (quote_style === 0) { - noquotes = true; - } - if (typeof quote_style !== 'number') { // Allow for a single string or an array of string flags - quote_style = [].concat(quote_style); - for (i = 0; i < quote_style.length; i++) { - // Resolve string input to bitwise e.g. 'PATHINFO_EXTENSION' becomes 4 - if (OPTS[quote_style[i]] === 0) { - noquotes = true; - } else if (OPTS[quote_style[i]]) { - optTemp = optTemp | OPTS[quote_style[i]]; - } - } - quote_style = optTemp; - } - if (quote_style & OPTS.ENT_HTML_QUOTE_SINGLE) { - string = string.replace(/'/g, '''); - } - if (!noquotes) { - string = string.replace(/"/g, '"'); - } - return string; -} - -function uiShowStatus(progress, type, id, delay) { - var status = $(progress).data("status"); - if (!status) { - status = window.setTimeout( function() { uiShowStatus(progress, type, id, delay); }, delay ); - $(progress).data("status", status); - return true; - } - - $.ajax({ type: 'GET', - url: 'status.php?type=' + type + '&id=' + id, - success: function(res) { - if(res && res.c) { - $(progress).progressbar("value", res.c); - if (res.c >= 100) { - $(progress).progressbar("destory"); - $(progress).removeData("status"); - } - } - status = window.setTimeout( function() { uiShowStatus(progress, type, id, delay); }, delay ); - $(progress).data("status", status); - }, - error: function() { - $(progress).progressbar("destory"); - $(progress).removeData("status"); - }, - dataType: 'json' - }); -} - -function uiShowObjectList(list, name, title, uncheck) -{ - // objects other than schema are enclosed inside their schema container, so we make a flat list - // of objects prefixed by the schema name - if (!list.length) { - new_list = []; - for (var i in list) { - for(j=0; j'; - } - if (html != '') - { - html = '
' - + html + '
'; - $('#db_objects').append(html); - } -} \ No newline at end of file diff --git a/js/context.js b/js/context.js deleted file mode 100644 index b29c4bc..0000000 --- a/js/context.js +++ /dev/null @@ -1,284 +0,0 @@ -/** - * Copyright (c)2005-2009 Matt Kruse (javascripttoolbox.com) - * - * Dual licensed under the MIT and GPL licenses. - * This basically means you can use this code however you want for - * free, but don't claim to have written it yourself! - * Donations always accepted: http://www.JavascriptToolbox.com/donate/ - * - * Please do not link to the .js files on javascripttoolbox.com from - * your site. Copy the files locally to your server instead. - * - */ -/** - * jquery.contextmenu.js - * jQuery Plugin for Context Menus - * http://www.JavascriptToolbox.com/lib/contextmenu/ - * - * Copyright (c) 2008 Matt Kruse (javascripttoolbox.com) - * Dual licensed under the MIT and GPL licenses. - * - * @version 1.1 - * @history 1.1 2010-01-25 Fixed a problem with 1.4 which caused undesired show/hide animations - * @history 1.0 2008-10-20 Initial Release - * @todo slideUp doesn't work in IE - because of iframe? - * @todo Hide all other menus when contextmenu is shown? - * @todo More themes - * @todo Nested context menus - */ - -var _contextMenu = null; - -;(function($){ - $.contextMenu = { - shadow:false, - shadowOffset:0, - shadowOffsetX:5, - shadowOffsetY:5, - shadowWidthAdjust:-3, - shadowHeightAdjust:-3, - shadowOpacity:.2, - shadowClass:'context-menu-shadow', - shadowColor:'black', - - offsetX:0, - offsetY:0, - appendTo:'body', - direction:'down', - constrainToScreen:true, - - showTransition:'show', - hideTransition:'hide', - showSpeed:null, - hideSpeed:null, - showCallback:null, - hideCallback:null, - - className:'context-menu', - itemClassName:'context-menu-item', - itemHoverClassName:'context-menu-item-hover', - disabledItemClassName:'context-menu-item-disabled', - disabledItemHoverClassName:'context-menu-item-disabled-hover', - separatorClassName:'context-menu-separator', - innerDivClassName:'context-menu-item-inner', - themePrefix:'context-menu-theme-', - theme:'default', - - separator:'context-menu-separator', // A specific key to identify a separator - target:null, // The target of the context click, to be populated when triggered - menu:null, // The jQuery object containing the HTML object that is the menu itself - shadowObj:null, // Shadow object - bgiframe:null, // The iframe object for IE6 - shown:false, // Currently being shown? - useIframe:/*@cc_on @*//*@if (@_win32) true, @else @*/false,/*@end @*/ // This is a better check than looking at userAgent! - - // Create the menu instance - create: function(menu,opts) { - var cmenu = $.extend({},this,opts); // Clone all default properties to created object - - // If a selector has been passed in, then use that as the menu - if (typeof menu=="string") { - cmenu.menu = $(menu); - //cmenu.menu.find("li:has(ul)").find("a:first").append("   "); // causes problem with objectlist refresh - } - // If a function has been passed in, call it each time the menu is shown to create the menu - else if (typeof menu=="function") { - cmenu.menuFunction = menu; - } - // Otherwise parse the Array passed in - else { - cmenu.menu = cmenu.createMenu(menu,cmenu); - } - if (cmenu.menu) { - cmenu.menu.css({display:'none'}); - $(cmenu.appendTo).append(cmenu.menu); - } - - // Create the shadow object if shadow is enabled - if (cmenu.shadow) { - cmenu.createShadow(cmenu); // Extracted to method for extensibility - if (cmenu.shadowOffset) { cmenu.shadowOffsetX = cmenu.shadowOffsetY = cmenu.shadowOffset; } - } - $('body').bind('contextmenu',function(){cmenu.hide();}); // If right-clicked somewhere else in the document, hide this menu - return cmenu; - }, - - // Create an iframe object to go behind the menu - createIframe: function() { - return $('':""),a._keyEvent=!1,K},_generateMonthYearHeader:function(a,b,c,d,e,f,g,h){var i=this._get(a,"changeMonth"),j=this._get(a,"changeYear"),k=this._get(a,"showMonthAfterYear"),l='
',m="";if(f||!i)m+=''+g[b]+"";else{var n=d&&d.getFullYear()==c,o=e&&e.getFullYear()==c;m+='"}k||(l+=m+(f||!i||!j?" ":""));if(!a.yearshtml){a.yearshtml="";if(f||!j)l+=''+c+"";else{var q=this._get(a,"yearRange").split(":"),r=(new Date).getFullYear(),s=function(a){var b=a.match(/c[+-].*/)?c+parseInt(a.substring(1),10):a.match(/[+-].*/)?r+parseInt(a,10):parseInt(a,10);return isNaN(b)?r:b},t=s(q[0]),u=Math.max(t,s(q[1]||""));t=d?Math.max(t,d.getFullYear()):t,u=e?Math.min(u,e.getFullYear()):u,a.yearshtml+='",l+=a.yearshtml,a.yearshtml=null}}return l+=this._get(a,"yearSuffix"),k&&(l+=(f||!i||!j?" ":"")+m),l+="
",l},_adjustInstDate:function(a,b,c){var d=a.drawYear+(c=="Y"?b:0),e=a.drawMonth+(c=="M"?b:0),f=Math.min(a.selectedDay,this._getDaysInMonth(d,e))+(c=="D"?b:0),g=this._restrictMinMax(a,this._daylightSavingAdjust(new Date(d,e,f)));a.selectedDay=g.getDate(),a.drawMonth=a.selectedMonth=g.getMonth(),a.drawYear=a.selectedYear=g.getFullYear(),(c=="M"||c=="Y")&&this._notifyChange(a)},_restrictMinMax:function(a,b){var c=this._getMinMaxDate(a,"min"),d=this._getMinMaxDate(a,"max"),e=c&&bd?d:e,e},_notifyChange:function(a){var b=this._get(a,"onChangeMonthYear");b&&b.apply(a.input?a.input[0]:null,[a.selectedYear,a.selectedMonth+1,a])},_getNumberOfMonths:function(a){var b=this._get(a,"numberOfMonths");return b==null?[1,1]:typeof b=="number"?[1,b]:b},_getMinMaxDate:function(a,b){return this._determineDate(a,this._get(a,b+"Date"),null)},_getDaysInMonth:function(a,b){return 32-this._daylightSavingAdjust(new Date(a,b,32)).getDate()},_getFirstDayOfMonth:function(a,b){return(new Date(a,b,1)).getDay()},_canAdjustMonth:function(a,b,c,d){var e=this._getNumberOfMonths(a),f=this._daylightSavingAdjust(new Date(c,d+(b<0?b:e[0]*e[1]),1));return b<0&&f.setDate(this._getDaysInMonth(f.getFullYear(),f.getMonth())),this._isInRange(a,f)},_isInRange:function(a,b){var c=this._getMinMaxDate(a,"min"),d=this._getMinMaxDate(a,"max");return(!c||b.getTime()>=c.getTime())&&(!d||b.getTime()<=d.getTime())},_getFormatConfig:function(a){var b=this._get(a,"shortYearCutoff");return b=typeof b!="string"?b:(new Date).getFullYear()%100+parseInt(b,10),{shortYearCutoff:b,dayNamesShort:this._get(a,"dayNamesShort"),dayNames:this._get(a,"dayNames"),monthNamesShort:this._get(a,"monthNamesShort"),monthNames:this._get(a,"monthNames")}},_formatDate:function(a,b,c,d){b||(a.currentDay=a.selectedDay,a.currentMonth=a.selectedMonth,a.currentYear=a.selectedYear);var e=b?typeof b=="object"?b:this._daylightSavingAdjust(new Date(d,c,b)):this._daylightSavingAdjust(new Date(a.currentYear,a.currentMonth,a.currentDay));return this.formatDate(this._get(a,"dateFormat"),e,this._getFormatConfig(a))}}),$.fn.datepicker=function(a){if(!this.length)return this;$.datepicker.initialized||($(document).mousedown($.datepicker._checkExternalClick).find("body").append($.datepicker.dpDiv),$.datepicker.initialized=!0);var b=Array.prototype.slice.call(arguments,1);return typeof a!="string"||a!="isDisabled"&&a!="getDate"&&a!="widget"?a=="option"&&arguments.length==2&&typeof arguments[1]=="string"?$.datepicker["_"+a+"Datepicker"].apply($.datepicker,[this[0]].concat(b)):this.each(function(){typeof a=="string"?$.datepicker["_"+a+"Datepicker"].apply($.datepicker,[this].concat(b)):$.datepicker._attachDatepicker(this,a)}):$.datepicker["_"+a+"Datepicker"].apply($.datepicker,[this[0]].concat(b))},$.datepicker=new Datepicker,$.datepicker.initialized=!1,$.datepicker.uuid=(new Date).getTime(),$.datepicker.version="@VERSION",window["DP_jQuery_"+dpuuid]=$})(jQuery);/*! jQuery UI - v1.8.19 - 2012-04-16 -* https://github.com/jquery/jquery-ui -* Includes: jquery.ui.progressbar.js -* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */ -(function(a,b){a.widget("ui.progressbar",{options:{value:0,max:100},min:0,_create:function(){this.element.addClass("ui-progressbar ui-widget ui-widget-content ui-corner-all").attr({role:"progressbar","aria-valuemin":this.min,"aria-valuemax":this.options.max,"aria-valuenow":this._value()}),this.valueDiv=a("
").appendTo(this.element),this.oldValue=this._value(),this._refreshValue()},destroy:function(){this.element.removeClass("ui-progressbar ui-widget ui-widget-content ui-corner-all").removeAttr("role").removeAttr("aria-valuemin").removeAttr("aria-valuemax").removeAttr("aria-valuenow"),this.valueDiv.remove(),a.Widget.prototype.destroy.apply(this,arguments)},value:function(a){return a===b?this._value():(this._setOption("value",a),this)},_setOption:function(b,c){b==="value"&&(this.options.value=c,this._refreshValue(),this._value()===this.options.max&&this._trigger("complete")),a.Widget.prototype._setOption.apply(this,arguments)},_value:function(){var a=this.options.value;return typeof a!="number"&&(a=0),Math.min(this.options.max,Math.max(this.min,a))},_percentage:function(){return 100*this._value()/this.options.max},_refreshValue:function(){var a=this.value(),b=this._percentage();this.oldValue!==a&&(this.oldValue=a,this._trigger("change")),this.valueDiv.toggle(a>this.min).toggleClass("ui-corner-right",a===this.options.max).width(b.toFixed(0)+"%"),this.element.attr("aria-valuenow",a)}}),a.extend(a.ui.progressbar,{version:"1.8.19"})})(jQuery); \ No newline at end of file diff --git a/js/users.js b/js/users.js deleted file mode 100644 index bc29e9a..0000000 --- a/js/users.js +++ /dev/null @@ -1,277 +0,0 @@ -/** - * This file is a part of MyWebSQL package - * - * @file: js/users.js - * @author Samnan ur Rehman - * @copyright (c) 2008-2014 Samnan ur Rehman - * @web https://github.com/Samnan/MyWebSQL - * @license https://github.com/Samnan/MyWebSQL/license - */ - -function selectUser() { - user = $('#userlist').val(); - - if (user == '') - return; - - setMessage(__('Please wait...')); - $('#popup_overlay').removeClass('ui-helper-hidden'); - wrkfrmSubmit('usermanager', '', '', user); -} - -function setError(o, s) { - $('#grid-messages').html(s).addClass('error'); - if ($(selectedRow).length) { - $(selectedRow).removeClass('sel'); - selectedRow = null; - } - $(o).each( function() { - $(this).addClass('error'); - }); - setTimeout( function() { - $(o).each( function() { - $(this).removeClass('error'); - }); - }, 2000); -} - -function selectAll() { - check = $(this).prop('checked'); - n = $('#grid-tabs').tabs('option', 'selected'); - cls = ''; - if (n == 1) - cls = '.prv'; - else if (n == 2) - cls = '.dbprv'; - if (cls != '') - $(cls).prop('checked', check); - - $(cls).each((n==1) ? updatePrivilege : updateDbPrivilege); -} - -function setMessage(s) { - $('#grid-messages').html(s).removeClass('error'); -} - -function cancelOperation() { - $('#grid-tabs').tabs('enable', 1).tabs('enable', 2); - $('#userlist').removeAttr('disabled'); - $('#button-list').animate({'margin-top':'0px'}); - $('#btn_cancel,#btn_add2').hide(); - $('#btn_submit').show(); - loadUserData(); -} - -function loadUserData() { - $('#username').val(USER_INFO['username']); - $('#hostname').val(USER_INFO['host']); - - currentDb = null; - - $('#tab-global').html(''); - html = ''; - for(var index in PRIVILEGE_NAMES) { - html += '
' + PRIVILEGE_NAMES[index] + '
'; - } - $('#tab-global').html(html); - - $('#tab-global .prv').click(updatePrivilege); - - showDbList(); - - $('#checkboxes').hide(); - - $('#popup_overlay').hide(); - - $('#popup_wrapper').css('display', 'block'); - - setTimeout( function() { - $('#username').focus(); - }, 50 ); -} - -function showDbList() { - html = '
'+__('Select a database to view privileges for the user') + '
'; - $('#tab-db').html(html); - - $('#db_names').change(showDbPrivileges); - $('#db_names .used').css('font-weight', 'bold'); - $('#db_names').children('option').each(function(i) { - if ($(this).hasClass('used')) { - $('#db_names').prop('selectedIndex', i); - $('#db_names').trigger('change'); - return false; - } - }); - -} - -function showDbPrivileges() { - $('#checkboxes').show(); - db = $('#db_names').val(); - currentDbPrivileges = DB_PRIVILEGES[db] || []; - html = ''; - for(var index in DB_PRIVILEGE_NAMES) { - html += '
' + DB_PRIVILEGE_NAMES[index] + '
'; - } - $('#db_privileges').html(html); - - $('#tab-db .dbprv').click(updateDbPrivilege); - - $('#selectall').prop('checked', $('#tab-db .dbprv').not(':checked').length == 0); -} - -function updatePrivilege() { - prv = $(this).attr('id'); - checked = $(this).prop('checked'); - if (checked) { - if ($.inArray(prv, PRIVILEGES) == -1) - PRIVILEGES.push(prv); - } - else { - for(i=0; i 0 ? 'bold' : 'normal'; - $('#db_names option:selected').css('font-weight', fw); -} - -function addUser() { - $('#grid-messages').html(''); - $('#grid-tabs').tabs('select', 0).tabs('disable', 1).tabs('disable', 2); - $('#username,#hostname,#userpass,#userpass2').val(''); - $('#userlist').attr('disabled', 'disabled'); - height = '-' + $('#button-list').outerHeight() + 'px'; - $('#button-list').animate({'margin-top':height}); - $('#btn_submit').hide(); - $('#btn_cancel,#btn_add2').show(); -} - -function deleteUser() { - user = $('#userlist').val(); - - if (user == '') { - jAlert(__("Select a User"), __("User Manager")); - return; - } - - optionsConfirm(__('Are you sure you want to delete this user account?'), 'users.delete', function(result, id, confirm_always) { - if (result) { - if (confirm_always) - optionsConfirmSave(id); - data = JSON.stringify(USER_INFO); - wrkfrmSubmit("usermanager", "delete", "", data); - } - }); -} - -function addNewUser() { - username = $('#username').val(); - hostname = $('#hostname').val(); - password = $('#userpass').val(); - password2 = $('#userpass2').val(); - nativepass = $('#nativepass').prop('checked') ? '1' : '0'; - - if (username == '' || hostname == '' || password == '') { - jAlert(__("User information is incomplete or invalid"), __("User Manager")); - return false; - } - - if (password != password2) { - jAlert(__("Passwords do not match"), __("User Manager")); - return false; - } - - json = {'username':username, 'hostname':hostname, 'pwd': password, native: nativepass}; - query = JSON.stringify(json); - - setMessage(__('Please wait...')); - $('#popup_overlay').removeClass('ui-helper-hidden'); - wrkfrmSubmit('usermanager', 'add', '', query); -} - -function updateUser() { - user = $('#userlist').val(); - - if (user == '') { - jAlert(__("Select a User"), __("User Manager")); - return false; - } - - username = $('#username').val(); - hostname = $('#hostname').val(); - password = $('#userpass').val(); - password2 = $('#userpass2').val(); - removepass = $('#nopass').prop('checked') ? '1' : '0'; - nativepass = $('#nativepass').prop('checked') ? '1' : '0'; - - if (removepass == '1') - password = password2 = ''; - - if (username == '' || hostname == '') { - jAlert(__("User information is incomplete or invalid"), __("User Manager")); - return false; - } - - if (password != password2) { - jAlert(__("Passwords do not match"), __("User Manager")); - return false; - } - - json = { - 'oldusername': USER_INFO.username, - 'oldhostname': USER_INFO.host, - 'username': username, - 'hostname': hostname, - 'password': password, - 'removepass': removepass, - 'native': nativepass, - 'privileges': PRIVILEGES, - 'db_privileges': DB_PRIVILEGES - }; - query = JSON.stringify(json); - - $('#popup_wrapper').css('display', 'none'); - setMessage(__('Please wait...')); - wrkfrmSubmit('usermanager', 'update', '', query); -} diff --git a/lang/.htaccess b/lang/.htaccess deleted file mode 100644 index bc59461..0000000 --- a/lang/.htaccess +++ /dev/null @@ -1,2 +0,0 @@ -Order Deny,Allow -Deny From All \ No newline at end of file diff --git a/lang/af.php b/lang/af.php deleted file mode 100644 index 989bf3c..0000000 --- a/lang/af.php +++ /dev/null @@ -1,463 +0,0 @@ - "Gebruik Databasis", - 'Drop Database' => "Drop Databasis", - 'Empty Database' => "Leë Databasis", - 'Drop all tables from this database' => "Drop al die tafels van hierdie databasis", - 'Select statement' => "Kies verklaring", - 'Insert statement' => "Insert verklaring", - 'Update statement' => "Update verklaring", - 'Describe' => "Beskryf", - 'Show create command' => "Wys skep opdrag", - 'View data' => "Kyk na data", - 'Alter Table' => "Alter Tabel", - 'Indexes' => "Indekse", - 'Engine Type' => "Enjin Soort", - 'More operations' => "Meer bedrywighede", - 'Truncate' => "Afgeknot", - 'Drop' => "Drop", - 'Rename' => "Hernoem", - 'Export table data' => "Add tafel data", - 'Create Table' => "Skep Tabel", - 'Create View' => "Skep View", - 'Create Procedure' => "Skep Procedure", - 'Create Function' => "Skep Function", - 'Create Trigger' => "Skep Trigger", - 'Create Event' => "Skep Event", - 'Show/Hide Panel' => "Wys / verberg Panel", - 'Show/Hide Header' => "Wys / verberg Selected", - 'Copy all queries to clipboard' => "Kopie alle navrae na die knipbord", - 'Clear history' => "Duidelike geskiedenis", - 'Copy Column values' => "Kopieer kolom waardes", - 'Copy to clipboard' => "Afskrif aan knipbord", - 'Generate SQL Filter' => "Genereer SQL Filter", - 'Database Manager' => "Database Manager", - 'Manage databases' => "Bestuur databasisse", - - // main menu related text - 'Database' => "Databasis", - 'Refresh' => "Refresh", - 'Refresh database object list' => "Refresh databasis voorwerp lys", - 'Create new' => "Skep 'n nuwe", - 'Export' => "Uitvoer", - 'Export database to external file' => "Uitvoer databasis te eksterne lêer", - 'Objects' => "Voorwerpe", - 'Create Table' => "Skep Tabel", - 'Create a new table in the database' => "Skep 'n nuwe tabel in die databasis", - 'Create View' => "Skep View", - 'Create a new view in the database' => "Skep 'n nuwe vertoning in die databasis", - 'Create Stored Procedure' => "Skep gestoor proses", - 'Create a new stored procedure in the database' => "Skep 'n nuwe gestoor proses in die databasis", - 'Create Function' => "Skep Function", - 'Create a new user defined function in the database' => "Skep 'n nuwe gebruiker gedefinieerde funksie in die databasis", - 'Create Trigger' => "Skep Trigger", - 'Create a new trigger in the database' => "Skep 'n nuwe sneller in die databasis", - 'Create Event' => "Skep Event", - 'Create a new event in the database' => "Skep 'n nuwe gebeurtenis in die databasis", - 'Data' => "Data", - 'Import batch file' => "Invoer batch file", - 'Import multiple queries from batch file' => "Invoer verskeie navrae van batch file", - 'Export database' => "Uitvoer databasis", - 'Export database to batch file as sql dump' => "Uitvoer databasis te batch file as sql dump", - 'Export current results' => "Uitvoer huidige resultate", - 'Export query results to clipboard or files' => "Uitvoer resultate te knipbord of lêers", - 'Tools' => "Gereedskap", - 'Process Manager' => "Proses Bestuurder", - 'View and manage database processes' => "Kyk na en bestuur databasis prosesse", - 'Repair Tables' => "Herstel Tabelle", - 'Analyze and repair database tables' => "Analiseer en herstel databasis tabelle", - 'User Manager' => "Gebruikers Bestuur", - 'Manage database users' => "Bestuur databasis gebruikers", - 'Search in Database' => "Soek in Databasis", - 'Search for text in the database' => "Soek vir teks in die databasis", - 'Information' => "Inligting", - 'Server/Connection Details' => "Bediener / Connection Details", - 'View server configuration' => "View bediener verstellings", - 'View server and connection details' => "View bediener en verbinding besonderhede", - 'Server Variables' => "Server Veranderlikes", - 'Database Summary' => "Databasis Opsomming", - 'View current database summary stats' => "Kyk na die huidige databasis opsomming stats", - 'Interface' => "Interface", - 'Options' => "Opsies", - 'Configure application options' => "Instel aansoek opsies", - 'UI Theme' => "UI Tema", - 'Database Objects' => "Approvals", - 'Toggle Object Viewer' => "Wissel Object Viewer", - 'Help contents' => "Help inhoud", - 'Learn the basics of using MyWebSQL' => "Leer die basiese beginsels van die gebruik van MyWebSQL", - 'QuickStart Tutorials' => "Quick Tutorials", - 'See quick hands-on tutorial of MyWebSQL interface' => "Sien vinnige hands-on tutoriaal van MyWebSQL koppelvlak", - 'Online documentation' => "Aanlyn-dokumentasie", - 'View online documentation on project website' => "Kyk na aanlyn-dokumentasie oor die projek webwerf", - 'Request a Feature' => "Versoek om 'n funksie", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "As jy jou mees gunsteling funksie graag deel wees van MyWebSQL word, kliek hier in te lig oor dit", - 'Report a Problem' => "Verslag n probleem", - 'Check for updates' => "Kyk vir updates", - 'Check for updated versions of the application online' => "Check vir die opgedateerde weergawes van die aansoek aanlyn", - 'Logout' => "Logout", - 'Logout from this session' => "Logout van hierdie sessie", - 'Language' => "Taal", - 'SQL Editor' => "SQL Redakteur", - 'Toggle SQL Editor' => "Toggle SQL Editor", - 'Experimental' => "Eksperimentele", - 'Import table data' => "Voer tafel data", - 'Import table data from external file' => "Die Invoer tafel data van eksterne lêer", - 'Batch operations' => "Batch bedrywighede", - 'Perform one or more batch operations on database' => "Voer een of meer joernaal bedrywighede op 'n databasis", - 'Create a new schema in the database' => "Skep 'n nuwe skedule in die databasis", - 'Create Schema' => "Skep Schema", - 'Table Description' => "Tabel Beskrywing", - 'Database Manager' => "Database Manager", - 'Manage databases' => "Bestuur databasisse", - 'Backup database on the server as SQL dump' => "Backup databasis op die bediener as SQL-dump", - 'Backup Database' => "Backup Databasis", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "Jou blaaier blyk te wees, baie oud is en nie ondersteuning van alle elemente wat nodig is MyWebSQL uit te voer.", - 'Try using a newer version of the browser to run this application.' => "Probeer 'n nuwer weergawe van die leser hierdie aansoek te doen", - - // text used on various screens in the interface - 'Visit Project website' => "Besoek Project webwerf", - 'Version' => "weergawe", - 'Loading' => "Laai", - 'Quick Edit Options' => "Vinnige Edit Options", - 'Press {{KEY}} to set NULL' => "Press {{KEY}} NULL te stel", - 'MySQL Server' => "MySQL bediener", - 'Logged in as: {{USER}}' => "Aangeteken as: {{USER}}", - 'Results' => "Resultate", - 'Messages' => "Boodskappe", - 'Information' => "Inligting", - 'History' => "Geskiedenis", - 'There are no results to show in this view' => "Daar is geen resultate om te wys in hierdie vertoning", - 'Refresh results' => "Refresh resultate", - 'Please wait' => "Wag asseblief", - 'Query All' => "Query Alle", - 'Query' => "Query", - 'Add Record' => "Voeg Rekord", - 'Delete Record(s)' => "Verwyder Rekord (s)", - 'Update Record(s)' => "Update Rekord (s)", - 'Generate SQL' => "Genereer SQL", - 'Database name' => "Databasis naam", - 'Select database after creation' => "Kies databasis na die skepping", - 'Database connection failed to the server' => "Databasis konneksie na die bediener het misluk", - 'Host' => "Host", - 'User' => "Gebruiker", - 'Select a database to begin' => "Kies 'n databasis te begin", - 'Select/unselect All records' => "Kies / opsie Alle rekords", - 'Primary key column' => "Primêre sleutel kolom", - 'Unique key column' => "Unieke sleutel kolom", - 'Showing records {{START}} - {{END}}' => "Soekresultate {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "Resultate eerste {{MAX}} net rekords", - '1 query successfully executed' => "1 soektog suksesvol uitgevoer", - '{{NUM}} queries successfully executed' => "{{NUM}} navrae suksesvol uitgevoer", - '{{NUM}} record(s) were affected' => "{{NUM}} rekord (s) is beïnvloed", - '{{NUM}} record(s) updated' => "{{NUM}} rekord (s) opgedateer", - 'Error occurred while executing the query' => "Fout het voorgekom tydens die uitvoer van die soektog", - '{{NUM}} queries failed to execute' => "{{NUM}} navrae uit te voer nie", - 'Click to view/edit column data [{{NUM}} Bytes]' => "Click to view / edit kolom data [{{NUM}} grepe]", - 'Blob data is not editable' => "Blob data is nie bewerkbaar", - 'Blob data saved' => "Blob data gestoor", - 'Failed to save blob data' => "Misluk blob data op te slaan", - 'The process with id [{{PID}}] was killed' => "Die proses met id [{{PID}}] was vermoor", - 'No such process [id = {{PID}}]' => "Geen sodanige proses [id = {{PID}}]", - 'Select a process and click the button to kill the process' => "Kies 'n proses en klik op die knoppie om die proses om dood te maak", - 'Process ID' => "Proses-ID", - 'Command' => "Opdrag", - 'Time' => "Tyd", - 'Info' => "Info", - 'Kill Process' => "Doodmaak Proses", - 'Failed to get process list' => "Misluk proses lys te kry", - 'The command executed successfully' => "Die opdrag suksesvol", - 'Invalid server configuration' => "Ongeldig bediener konfigurasie", - 'Invalid Credentials' => "Invalid credentials", - 'New database successfully created' => "Nuwe databasis suksesvol geskep", - 'File upload failed. Please try again' => "Lêer oplaai het gefaal. Probeer weer", - 'No queries were executed during import' => "Geen navrae is uitgevoer tydens die invoer", - 'Maximum upload filesize is {{SIZE}}' => "Maksimum oplaai filesize is {{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "Ondersteun lêer formaat / uitbreidings is: ({{LIST}}})", - 'Database summary' => "Databasis opsomming", - 'Server Variables' => "Server Veranderlikes", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "Enige bestaande voorwerp met dieselfde naam moet met die hand laat val voor die uitvoering van die skepping opdrag", - 'Only create commands are accepted' => "Net 'instruksies word aanvaar", - 'User ID' => "Gebruiker-ID", - 'Password' => "Wagwoord", - 'Login' => "Login", - 'Create new database object' => "Skep 'n nuwe databasis voorwerp", - 'Enter command for object creation' => "Gee opdrag vir voorwerp skepping", - 'Submit' => "Voorlê", - 'Show blob data as: {{TYPE}}' => "Wys blob data as: {{TYPE}}", - 'Blob data for column {{NAME}}' => "Blob data vir kolom {{NAME}}", - 'Create command for {{TYPE}} {{NAME}}' => "Skep opdrag vir {{TYPE}} {{NAME}}", - 'Table Engine (type)' => "Tabel Engine (tipe)", - 'Change Table Type' => "Verandering Tabel Soort", - 'The requested page is not available on the server' => "Die bladsytitel waarvoor gevra is nie beskikbaar op die bediener", - 'Error' => "Fout", - 'It appears that you attempted to submit an invalid request to the server' => "Dit blyk dat jy probeer om 'n ongeldig versoek te stuur na die bediener", - 'The request has been denied. Reloading the page might solve the problem' => "Die versoek is geweier. Herlaai die bladsy kan die probleem oplos", - 'Access Denied' => "Toegang geweier", - 'Help' => "Help", - 'To see most up-to-date help contents, please visit {{LINK}}' => "Om te sien die meeste up-to-date help inhoud, besoek asseblief {{LINK}}", - 'It appears that your browser session has expired' => "Dit blyk dat die leser sessie verstryk het", - 'Please refresh the webpage to re-login' => "Verfris die webblad te her-teken", - 'Table information' => "Tabel inligting", - 'Edit' => "Wysig", - 'Save' => "Slaan", - 'Either the database is empty, or there was an error retrieving list of database objects' => "Óf die lys is leeg, of daar was 'n fout kry lys van databasis-voorwerpe", - 'Please try closing and re-opening this dialog again' => "Probeer toemaak en weer die opening van hierdie dialoog weer", - 'Structure' => "Struktuur", - 'Table Data' => "Tabel Data", - 'Structure and Table Data' => "Struktuur en Table Data", - 'Options' => "Opsies", - 'Set Auto increment field values to NULL' => "Stel Auto inkrement veld waardes te NULL", - 'Add DROP command before create statements' => "Voeg DROP opdrag voor te skep state", - 'Export' => "Uitvoer", - 'Import' => "Invoer", - 'Export Database' => "Uitvoer Databasis", - 'Export Table' => "Uitvoer Tabel", - 'Server information' => "Bediener inligting", - 'Server' => "Bediener", - 'Version comment' => "Weergawe kommentaar", - 'Character sets' => "Karakter sets", - 'Server character set' => "Bediener karakter stel", - 'Client character set' => "Kliënt karakter stel", - 'Database character set' => "Databasis karakter stel", - 'Results character set' => "Resultate karakter stel", - 'Export As' => "Voer uit as", - 'Insert Statements' => "Insert State", - 'Include field names in query' => "Sluit veld name in die soektog", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Plain Text (Een rekord per lyn)", - 'Fields separated by:' => "Velde geskei deur:", - 'Export Results' => "Uitvoer Results", - 'Select SQL batch file to import' => "Kies SQL joernaal lêer in te voer", - 'Continue processing even if error occurs' => "Verder verwerk, selfs as fout begaan", - 'Basic Information' => "Basiese inligting", - 'Table Properties' => "Tabel eienskappe", - 'Table Name' => "Tabel Naam", - 'Field Name' => "Gebied Naam", - 'Data Type' => "Data Type", - 'Length' => "Lengte", - 'Default value' => "Standaard waarde", - 'Unsigned' => "Unsigned", - 'Zero Fill' => "Vul nul", - 'Primary Key' => "Primêre sleutel", - 'Auto Increment' => "Auto Vermeerder", - 'Not NULL' => "Nie NULL", - 'Character Set' => "Karakter Stel", - 'Collation' => "Collatieboeken", - 'Comment' => "Kommentaar", - 'Waiting for table information to be submitted' => "Wag vir tabel inligting ingedien moet word", - 'Add field' => "Voeg gebied", - 'Delete selected field' => "Verwyder gekose veld", - 'Clear Table Information' => "Duidelik Tabel inligting", - 'List of values' => "Lys van waardes", - 'Query Results' => "Query Results", - 'Data for {{TABLE}}' => "Data vir {{TABLE}}", - 'Select tables to be analyzed/repaired' => "Kies tabelle te ontleed / herstel", - 'Operation to perform' => "Aksie uit te voer", - 'Analyze' => "Ontleed", - 'Check' => "Check", - 'Optimize' => "Optimaliseer", - 'Repair' => "Herstel", - 'Skip Binary logging' => "Slaan oor Binêre meld", - 'Default' => "Standaard", - 'Quick' => "Vinnige", - 'Fast' => "Fast", - 'Medium' => "Medium", - 'Extended' => "Verleng", - 'Changed' => "Verander", - 'Use Frm files (MyISAM tables)' => "Gebruik frm lêers (MyISAM tabelle)", - 'User Information' => "User Information", - 'Global Privileges' => "Globale regte", - 'Database Privileges' => "Databasis vir regte", - 'Import File' => "Invoer Lêer", - 'Index Manager' => "Index Bestuurder", - 'Edit table structure' => "Wysig tabel struktuur", - 'Save All Changes' => "Alle veranderinge stoor", - 'Changes are not saved until you press [Save All Changes]' => "Veranderinge nie gestoor totdat jy druk [Slaan Alle veranderinge]", - 'Field Length' => "Veld-lengte", - 'Select objects to include in export' => "Kies voorwerpe in te sluit in die uitvoer", - 'Export type' => "Uitvoer soort", - 'Select All/None' => "Kies Alle / Geen", - 'Add User' => "Voeg gebruiker", - 'Update User' => "Update User", - 'Delete selected User' => "Verwyder gekies User", - 'Remove Password' => "Verwyder wagwoord", - 'Select tables to search' => "Kies tafels om te soek", - 'Search Options' => "Soek Opsies", - 'Search in following field types' => "Soek in die volgende gebied tipes", - 'Numeric Fields' => "Numeriese Fields", - 'Character Fields' => "Karakter Fields", - 'Text Fields' => "Teks Fields", - 'Date/Time Fields' => "Date / Time Fields", - 'Comparison Type' => "Vergelyking Soort", - 'Text to search' => "Teks te soek", - 'Search' => "Soek", - 'Search Results' => "Search Results", - 'Number of matches' => "Aantal vuurhoutjies", - 'Search results for {{KEYWORD}} in the database' => "Resultate vir {{trefwoord}} in die databasis", - '{{NUM}} match(es)' => "{{NUM}} wedstryd (es)", - 'Copy query to editor' => "Kopie soektog na editor", - 'Done' => "Gedoen", - 'SQL Editor' => "SQL Redakteur", - 'Create Copy' => "Skep Afskrif", - 'Minimize All' => "Hide alles", - 'Copy Record(s)' => "Kopieer Rekord (s)", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "Comma Separated (CSV vir Excel)", - 'Select data file to import' => "Kies 'n data lêer in te voer", - 'Select table for data import' => "Kies 'n tafel vir data invoer", - 'First line contains column names' => "Die eerste reël bevat kolom name", - 'Select objects to operate upon' => "Kies voorwerpe te bedryf op", - 'Operations to perform' => "Operasies uit te voer", - 'Add prefix string to name' => "Voeg voorvoegsel string te noem", - 'Delete prefix string from name' => "Verwyder voorvoegsel string van die naam", - 'Command text' => "Command teks", - 'DROP selected database objects' => "Drop geselekteerde databasis voorwerpe", - 'Batch operation results' => "Resultate van die Batch werking", - 'Operation' => "Operasie", - 'Status' => "Status", - '{{NUM}} queries generated' => "{{NUM}} Navrae geskep", - 'Please select one or more operations to perform' => "Kies asseblief een of meer operasies uit te voer", - 'Quick Search' => "Vinnige Soek", - '{{NAME}} client library is not installed' => "{{Name}} kliënt biblioteek is nie geïnstalleer", - '{{NAME}} extension is not installed' => "{{Name}} uitbreiding is nie geïnstalleer", - 'SQLite database folder is inaccessible or not writable' => "SQLite databasis gids is ontoeganklik is of nie skryfbaar nie", - 'Maximize/Restore Results Pane' => "Maksimeer / Herstel Results Pane", - 'Select databases to operate upon' => "Kies databasisse te bedryf op", - 'DROP selected databases' => "DROP geselekteerde databases", - 'The following operation is irreversible' => "Die volgende is onomkeerbaar", - 'Potential data loss might occur' => "Potensiële verlies van data kan voorkom", - 'Add TRUNCATE command before insert statements' => "Voeg afgeknot opdrag voor insert state", - 'Select objects to include in backup' => "Kies voorwerpe in te sluit in die back-up", - 'Backup folder does not exist or is not writable' => "Backup-lêergids bestaan ​​nie of is nie skryfbaar nie", - 'Backup type' => "Backup tipe", - 'Database backup successfully created' => "Databasis back-up suksesvol geskep", - 'Failed to create database backup' => "Kon nie databasis back-up te skep", - 'Generate Bulk insert statements' => "Genereer grootmaat insetsel state", - 'Maximum size of SQL statement' => "Maksimum grootte van SQL-stelling", - 'Show record count with table names' => "Wys rekord telling met 'n tafel name", - 'Sort Table listing by' => "Soort Table notering deur", - 'Name' => "Naam", - 'Last Update Time' => "Laaste Update Tyd", - 'Maximum records to display in result set' => "Maksimum rekords te vertoon in die resultaat stel", - 'Show popup dialog for editing large text data' => "Wys opspring dialoog vir die redigering van groot teks data", - 'Miscellaneous' => "Diverse", - 'Reset all confirmation dialogs' => "Herstel alle bevestiging vensters", - 'Record Editing' => "Rekord Redigering", - 'Exclude Table type' => "Sluit Table tipe", - 'Exclude Table Character set' => "Sluit Table karakter stel", - 'Backup filename' => "Friends lêernaam", - 'Invalid filename format' => "Ongeldig lêernaam formaat", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "al", - 'all selected' => "al die geselekteerde", - 'An error occured while refreshing the object list.' => "'N fout het voorgekom terwyl verfrissend die voorwerp lys.", - 'Are you sure you want to clear all field information from table?' => "Is jy seker jy wil alle veld inligting uit tabel te vee?", - 'Are you sure you want to delete this user account?' => "Is jy seker jy wil hierdie rekening skrap?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "Is jy seker jy wil DROP al die voorwerpe uit die databasis {{NAME}}?", - 'Are you sure you want to DROP selected objects?' => "Is jy seker jy wil geselekteerde voorwerpe te laat val?", - 'Are you sure you want to DROP the database {{NAME}}?' => "Is jy seker jy wil DROP die databasis {{NAME}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "Is jy seker jy wil hierdie doel te vervolg? {{NAME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "Is jy seker jy wil {{SELECTED}} navrae uit te voer?", - 'Are you sure you want to logout?' => "Is jy seker jy wil teken?", - 'Are you sure you want to truncate the table {{NAME}}?' => "Is jy seker jy wil die tafel {{NAME}} by afgestomp?", - 'Blob Data [{{SIZE}}]' => "Blob Data [[SIZE}}]", - 'Cancel' => "Kanselleer", - 'Check for Updates' => "Kyk vir updates", - 'Clear command history?' => "Duidelike opdrag geskiedenis?", - 'Close' => "Naby", - 'Confirm Action' => "Bevestig Aksie", - 'Confirm and do not ask me again about this choice' => "Bevestig en nie vir my vra weer oor hierdie keuse", - 'Copy Object' => "Kopieer Object", - 'Create Database' => "Skep Databasis", - 'Create Primary Index on this field' => "Skep Primêre indeks op hierdie gebied", - 'Databases' => "Databases", - 'Default value [Use quotes to specify string values]' => "Standaard waarde [Gebruik aanhalingstekens string waardes te gee]", - 'Disallow NULL values in Field' => "Disallow NULL waardes in Veld", - 'Enter new index name' => "Gee 'n nuwe indeks naam", - 'Enter new name for the database object' => "Gee 'n nuwe naam vir die databasis voorwerp", - 'Enter the text to search in database' => "Tik die teks te soek in die databasis", - 'Error' => "Fout", - 'Events' => "Gebeure", - 'Execute query' => "Voer navraag", - 'Exports results' => "Uitvoer resultate", - 'Failed to refresh the results.' => "Versuim het om die resultate te verfris.", - 'Field Datatype' => "Gebied Data Type", - 'Field Name' => "Gebied Naam", - 'Field value is Auto Incremented' => "Veld waarde is Auto aangevul", - 'Functions' => "Funksies", - 'Indexes Updated' => "Indekse Updated", - 'Maximum Length of field value' => "Maksimum lengte van die veld waarde", - 'Navigation Error. Try reloading the page' => "Fout navigasie. Probeer die blad herlaai", - 'New settings saved and applied' => "Nuwe instellings gered en toegepas", - 'New version is available' => "Nuwe weergawe beskikbaar is", - 'Next' => "Volgende", - 'No' => "Geen", - 'No Table selected' => "Geen Tabel gekies", - 'Not enough room to show this pane.' => "Nie genoeg ruimte die venster om te wys.", - 'OK' => "OK", - 'One or more field information is incomplete' => "Een of meer veld inligting onvolledig", - 'Open' => "Oop", - 'Operation failed' => "Bewerking het misluk", - 'Pad field values with leading zeros' => "Pad veld waardes met vooraanstaande nulle", - 'Pane' => "Paneel", - 'Passwords do not match' => "Wagwoorde stem nie ooreen nie", - 'Pin' => "Pin", - 'Please select one or more operations to perform' => "Kies asseblief een of meer operasies uit te voer", - 'Please type in one or more queries in the SQL editor!' => "Tik asseblief in een of meer navrae in die SQL-redakteur!", - 'Please wait...' => "Wag asseblief ...", - 'Previous' => "Vorige", - 'Procedures' => "Prosedures", - 'Prompt' => "Prompt", - 'Refresh results' => "Refresh resultate", - 'Refreshing object list' => "Verfrissende voorwerp lys", - 'Rename Object' => "Hernoem Object", - 'Resize' => "Resize", - 'Results page:' => "Results page:", - 'Select a database to view privileges for the user' => "Kies 'n regte op die databasis te gee vir die gebruiker", - 'Select an index to view / edit its details' => "Kies 'n indeks te view / edit sy besonderhede", - 'Select at least one field type for searching' => "Kies ten minste een veld tipe vir soek", - 'Select objects to operate upon' => "Kies voorwerpe te bedryf op", - 'selector' => "selector", - 'Slide Open' => "Slide Open", - 'Table information requires at least one valid field' => "Tabel inligting vereis ten minste 'n geldige terrein", - 'Table name is required' => "Tabel naam is nodig", - 'Table successfully created' => "Tabel suksesvol geskep", - 'Table successfully modified' => "Tabel suksesvol gewysig", - 'Tables' => "Tabelle", - 'Text Data [{{SIZE}}]' => "Teks data [[SIZE}}]", - 'There is no record in the results to export' => "Daar is geen rekord in die resultate te voer", - 'This attribute is not required for selected field type' => "Hierdie kenmerk is nie 'n vereiste vir die geselekteerde veld tipe", - 'Triggers' => "Triggers", - 'Un-Pin' => "Un-Pin", - 'Unsigned numbered field only' => "Unsigned genommer gebied net", - 'Update check failed' => "Opdateer het misluk", - 'User information is incomplete or invalid' => "Gebruiker se inligting is onvolledig of ongeldig", - 'User Manager' => "Gebruikers Bestuur", - 'Views' => "Uitsig", - 'WARNING' => "WAARSKUWING", - 'Yes' => "Ja", - 'You have the latest version' => "Jy het die nuutste weergawe", - - ); -?> diff --git a/lang/ar.php b/lang/ar.php deleted file mode 100644 index dfbe4c8..0000000 --- a/lang/ar.php +++ /dev/null @@ -1,463 +0,0 @@ - - */ - - $LANGUAGE = array( - - // context menu related text - 'Use Database' => "استخدام قاعدة البيانات", - 'Drop Database' => "حذف قاعدة البيانات", - 'Empty Database' => "تفريغ قاعدة البيانات", - 'Drop all tables from this database' => "حذف جميع الجداول من قاعدة البيانات هذه", - 'Select statement' => "عرض أمر التحديد", - 'Insert statement' => "عرض أمر الإدخال", - 'Update statement' => "عرض أمر التحديث", - 'Describe' => "وصف", - 'Show create command' => "عرض كود الإنشاء", - 'View data' => "عرض البيانات", - 'Alter Table' => "تعديل الجدول", - 'Indexes' => "الفهارس", - 'Engine Type' => "نوع المحرك", - 'More operations' => "عمليات أخرى", - 'Truncate' => "حذف جميع الصفوف", - 'Drop' => "حذف قاعدة البيانات", - 'Rename' => "إعادة تسمية", - 'Export table data' => "تصدير بيانات الجدول", - 'Create Table' => "إنشاء جدول", - 'Create View' => "إنشاء عرض", - 'Create Procedure' => "إنشاء عملية", - 'Create Function' => "إنشاء وظيفة", - 'Create Trigger' => "إنشاء مشغل", - 'Create Event' => "إنشاء حدث", - 'Show/Hide Panel' => "إظهار/إخفاء اللوحة", - 'Show/Hide Header' => "إظهار/إخفاء الشريط العلوي", - 'Copy all queries to clipboard' => "نسخ كل الطلبات إلى الحافظة", - 'Clear history' => "مسح السجل", - 'Copy Column values' => "نسخ قيم العمود", - 'Copy to clipboard' => "نسح إلى الحافظة", - 'Generate SQL Filter' => "إنشاء فلتر", - 'Database Manager' => "مدير قاعدة البيانات", - 'Manage databases' => "إدارة قواعد البيانات", - - // main menu related text - 'Database' => "قاعدة البيانات", - 'Refresh' => "تحديث", - 'Refresh database object list' => "تحديث قائمة كائنات قاعدة البيانات", - 'Create new' => "إنشاء", - 'Export' => "تصدير", - 'Export database to external file' => "تصدير قاعدة البيانات إلى ملف خارجي", - 'Objects' => "الكائنات", - 'Create Table' => "إنشاء جدول", - 'Create a new table in the database' => "إنشاء جدول جديد في قاعدة البيانات", - 'Create View' => "إنشاء عرض", - 'Create a new view in the database' => "إنشاء عرض جديد في قاعدة البيانات", - 'Create Stored Procedure' => "إنشاء عملية مخزنة", - 'Create a new stored procedure in the database' => "إنشاء عملية مخزنة جديدة في قاعدة البيانات", - 'Create Function' => "إنشاء وظيفة", - 'Create a new user defined function in the database' => "إنشاء وظيفة جديدة يحددها المستخدم في قاعدة البيانات", - 'Create Trigger' => "إنشاء مشغل", - 'Create a new trigger in the database' => "إنشاء مشغل جديد في قاعدة البيانات", - 'Create Event' => "إنشاء حدث", - 'Create a new event in the database' => "إنشاء حدث جديد في قاعدة البيانات", - 'Data' => "البيانات", - 'Import batch file' => "استيراد ملف دفعة", - 'Import multiple queries from batch file' => "استيراد عدة طلبات من ملف دفعة", - 'Export database' => "تصدير قاعدة البيانات", - 'Export database to batch file as sql dump' => "تصدير قاعدة البينات إلى ملف دفعة كصورة SQL", - 'Export current results' => "تصدير النتائج الحالية", - 'Export query results to clipboard or files' => "تصدير نتائج الطلب الحالي إلى الحافظة أو ملف", - 'Tools' => "الأدوات", - 'Process Manager' => "مدير العمليات", - 'View and manage database processes' => "عرض وإدارة عمليات قاعدة البيانات", - 'Repair Tables' => "تصليج الجداول", - 'Analyze and repair database tables' => "نحليل وتصليح جداول قاعدة البيانات", - 'User Manager' => "مدير المستحدمين", - 'Manage database users' => "إدارة مستخدمين قاعدة البيانات", - 'Search in Database' => "البحث في قاعدة البيانات", - 'Search for text in the database' => "البحث عن نص في قاعدة البيانات", - 'Information' => "معلومات", - 'Server/Connection Details' => "معلومات المخدم والإتصال", - 'View server configuration' => "عرض إعدادات المخدم", - 'View server and connection details' => "عرض تفاصيل المخدم والإتصال", - 'Server Variables' => "متغيرات المخدم", - 'Database Summary' => "خلاصة قاعدة البيانات", - 'View current database summary stats' => "عرض إحصائيات خلاصة قاعدة البيانات الحالية", - 'Interface' => "الواجهة", - 'Options' => "خيارات", - 'Configure application options' => "تعديل خيارات البرنامج", - 'UI Theme' => "ثمة الواجهة", - 'Database Objects' => "كائنات قاعدة البيانات", - 'Toggle Object Viewer' => "إظهار/إخفاء لوحة كائنات قاعدة البيانات", - 'Help contents' => "مواضيع المساعدة", - 'Learn the basics of using MyWebSQL' => "تعلم أساسيات استخدام MyWebSQL", - 'QuickStart Tutorials' => "دروس البدء السريع", - 'See quick hands-on tutorial of MyWebSQL interface' => "شاهد دروس سريعة للتعامل مع واجهة MyWebSQL", - 'Online documentation' => "وثائق المساعدة على الانترنت", - 'View online documentation on project website' => "عرض وثائق المساعدة على موقع المشروع", - 'Request a Feature' => "طلب إضافة ميزة", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "إذا كنت ترغب بإضافة ميزة إلى برنامج MyWebSQL اضغظ هنا لتخبرنا عنها", - 'Report a Problem' => "الإبلاغ عن مشكلة", - 'Check for updates' => "تحقق من التحديثات", - 'Check for updated versions of the application online' => "التحقق من وجود تحديثات للبرنامج على الانترنت", - 'Logout' => "تسجيل الخروج", - 'Logout from this session' => "الخروج من الجلسة الحالية", - 'Language' => "اللغة", - 'SQL Editor' => "محرر SQL", - 'Toggle SQL Editor' => "إظهار/إخفاء محرر SQL", - 'Experimental' => "تجريبي", - 'Import table data' => "استيراد بيانات الجدول", - 'Import table data from external file' => "استيراد بيانات إلى الجدول من ملف خارجي", - 'Batch operations' => "عمليات دفعية", - 'Perform one or more batch operations on database' => "إجراء عملية أو أكثر دفعة واحدة على قاعدة البيانات", - 'Create a new schema in the database' => "إنشاء مخطط جديد في قاعدة البيانات", - 'Create Schema' => "إنشاء مخطط", - 'Table Description' => "وصف الجدول", - 'Database Manager' => "مدير قاعدة البيانات", - 'Manage databases' => "إدارة قواعد البيانات", - 'Backup database on the server as SQL dump' => "إنشاء نسحة إحتياطية من قاعدة البيانات على شكل ملف SQL", - 'Backup Database' => "إنشاء نسخة إحتياطية", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "متصفح الانترنت الذي تستخدمه قديم جداً ولا يدعم جميع الميزات اللازمة لتشغيل البرنامج.", - 'Try using a newer version of the browser to run this application.' => "يرجى تحديث المتصفح وإعادة المحاولة.", - - // text used on various screens in the interface - 'Visit Project website' => "زيارة موقع المشروع", - 'Version' => "الإصدار", - 'Loading' => "جار التحميل", - 'Quick Edit Options' => "خيارات التعديل السريع", - 'Press {{KEY}} to set NULL' => "اضغظ {{KEY}} لتفريغ الحقل", - 'MySQL Server' => "مخدم MySQL", - 'Logged in as: {{USER}}' => "تسجيل الدخول باسم: {{USER}}", - 'Results' => "النتائج", - 'Messages' => "الرسائل", - 'Information' => "المعلومات", - 'History' => "السجل", - 'There are no results to show in this view' => "لا يوجد نتائج للعرض في هذا العرض", - 'Refresh results' => "تحديث النتائج", - 'Please wait' => "يرجى الانتظار", - 'Query All' => "طلب الكل", - 'Query' => "طلب", - 'Add Record' => "إضافة سجل", - 'Delete Record(s)' => "حذف سجل(ات)", - 'Update Record(s)' => "تحديث سجل(ات)", - 'Generate SQL' => "إنشاء كود SQL", - 'Database name' => "اسم قاعدة البيانات", - 'Select database after creation' => "اختر قاعدة البيانات بعد الإنشاء", - 'Database connection failed to the server' => "فشل اتصال قاعدة البيانات إلى المخدم", - 'Host' => "المضيف", - 'User' => "المستخدم", - 'Select a database to begin' => "اختر قاعدة بيانات للبدء", - 'Select/unselect All records' => "تحديد/إلغاء تحديد كل السجلات", - 'Primary key column' => "عمود المفتاح الأساسي", - 'Unique key column' => "عمود المفتاح المميز", - 'Showing records {{START}} - {{END}}' => "عرض السجلات {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "عرض أول {{MAX}} سجل فقط", - '1 query successfully executed' => "تم تنفيذ الطلب بنجاح", - '{{NUM}} queries successfully executed' => "تم تنفيذ {{NUM}} طلب(ات) بنجاح", - '{{NUM}} record(s) were affected' => "{{NUM}} سجل(ات) تم تعديلها", - '{{NUM}} record(s) updated' => "{{NUM}} سجل(ات) تم تحديثها", - 'Error occurred while executing the query' => "حدث خطأ أثناء تنفيذ الطلب", - '{{NUM}} queries failed to execute' => "{{NUM}} طلب(ات) فشل تنفيذها", - 'Click to view/edit column data [{{NUM}} Bytes]' => "اضفظ لعرض/تعديل بيانات العمود [{{NUM}} بايت]", - 'Blob data is not editable' => "لا يمكن تعديل بيانات الكائنات الثنائية", - 'Blob data saved' => "تم حفظ بيانات الكائنات الثنائية", - 'Failed to save blob data' => "فشل حفظ بيانات الكائنات الثنائية", - 'The process with id [{{PID}}] was killed' => "تم إنهاء العملية التي رقمها [{{PID}}]", - 'No such process [id = {{PID}}]' => "لا يوجد عملية رقمها [id = {{PID}}]", - 'Select a process and click the button to kill the process' => "اختر عملية واضغظ على الزر لإنهائها", - 'Process ID' => "رقم العملية", - 'Command' => "أمر", - 'Time' => "الوقت", - 'Info' => "المعلومات", - 'Kill Process' => "إنهاء العملية", - 'Failed to get process list' => "فشل عرض قائمة العمليات", - 'The command executed successfully' => "تم تنفيذ الأمر بنجاح", - 'Invalid server configuration' => "إعدادات مخدم خاطئة", - 'Invalid Credentials' => "الشهادات خاطئة", - 'New database successfully created' => "تم إنشاء قاعدة بيانات جديدة بنجاح", - 'File upload failed. Please try again' => "فشل رفع الملف, يرجى إعادة المحاولة", - 'No queries were executed during import' => "لم يتم تنفيذ طلبات أثناء الإستيراد", - 'Maximum upload filesize is {{SIZE}}' => "أقصى حجم ملف مسموح به {{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "الصيغ المدعومة: ({{LIST}})", - 'Database summary' => "خلاصة قاعدة البيانات", - 'Server Variables' => "متغيرات المخدم", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "أي كائن موجود حاليا يحمل نفس السم يجب حذفه يدوياً قبل تنفيذ أمر الإنشاء", - 'Only create commands are accepted' => "فقط أوامر الإنشاء مقبولة", - 'User ID' => "اسم المستخدم", - 'Password' => "كلمة المرور", - 'Login' => "تسجيل الدخول", - 'Create new database object' => "أنشاء كائن قاعدة بيانات جديد", - 'Enter command for object creation' => "أدخل أمر إنشاء الكائن", - 'Submit' => "إرسال", - 'Show blob data as: {{TYPE}}' => "عرض بيانات الكائن الثنائي كـ: {{TYPE}}", - 'Blob data for column {{NAME}}' => "بيانات الكائن الثنائي للعمود {{NAME}}", - 'Create command for {{TYPE}} {{NAME}}' => "أمر الإنشاء لـ {{TYPE}} {{NAME}}", - 'Table Engine (type)' => "محرك الجدول (type)", - 'Change Table Type' => "تغيير نوع الجدول", - 'The requested page is not available on the server' => "الصفحة المطلوبة غير موجودة على المخدم", - 'Error' => "خطأ", - 'It appears that you attempted to submit an invalid request to the server' => "يبدو أنك حاولت إرسال طلب لاغي إلى المخدم", - 'The request has been denied. Reloading the page might solve the problem' => "تم رفض الطلب, قد يفيد تحديث الصفحة", - 'Access Denied' => "غير مسموح بالدخول", - 'Help' => "المساعدة", - 'To see most up-to-date help contents, please visit {{LINK}}' => "لرؤية أحدث مواضيع المساعدة يرجى زيارة {{LINK}}", - 'It appears that your browser session has expired' => "يبدو أن جلسة المتصفح قد انتهت", - 'Please refresh the webpage to re-login' => "يرجى تحديث الصفحة لتسجيل الدخول مرة أخرى", - 'Table information' => "معلومات الجدول", - 'Edit' => "تعديل", - 'Save' => "حفظ", - 'Either the database is empty, or there was an error retrieving list of database objects' => "إما أن نكون قاعدة البيانات خالية أو حصل خطأ أثناء محاولة اسحضار قائمة كائنات قاعدة البيانات", - 'Please try closing and re-opening this dialog again' => "يرجى محاولة إغلاق وإعادة فتح مربع الحوار هذا مرة أخرى", - 'Structure' => "البنية", - 'Table Data' => "بيانات الجدول", - 'Structure and Table Data' => "البينة وبيانات الجدول", - 'Options' => "الخيارات", - 'Set Auto increment field values to NULL' => "تفريغ حقل التزايد التلقائي", - 'Add DROP command before create statements' => "إضافة أمر بحذف الجداول قبل أمر الإنشاء", - 'Export' => "تصدير", - 'Import' => "استيراد", - 'Export Database' => "تصدير قواعد البيانات", - 'Export Table' => "تصدير الجدول", - 'Server information' => "معلومات المخدم", - 'Server' => "المخدم", - 'Version comment' => "تعليق الإصدار", - 'Character sets' => "مجموعات الأحرف", - 'Server character set' => "مجموعات الأحرف على المخدم", - 'Client character set' => "مجموعات الأحرف على العميل", - 'Database character set' => "مجموعات الأحرف على قاعدة البيانات", - 'Results character set' => "مجموعات الأحرف للنتائج", - 'Export As' => "تصدير كـ", - 'Insert Statements' => "أوامر الإدخال", - 'Include field names in query' => "تضمين أسماء الخانات في الطلب", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "نص عادي (سجل واحد في كل سطر)", - 'Fields separated by:' => "الفواصل بين الخانات:", - 'Export Results' => "تصدير النتائج", - 'Select SQL batch file to import' => "اختر ملف SQL للإستيراد", - 'Continue processing even if error occurs' => "الاستمرار بالتنفيذ حتى مع وجود أخطاء", - 'Basic Information' => "معلومات أساسية", - 'Table Properties' => "خصائص الجدول", - 'Table Name' => "اسم الجدول", - 'Field Name' => "اسم الحقل", - 'Data Type' => "نوع البيانات", - 'Length' => "الطول", - 'Default value' => "القيمة الإفتراضية", - 'Unsigned' => "عدد موجب", - 'Zero Fill' => "ملئ بأصفار", - 'Primary Key' => "مفتاح أساسي", - 'Auto Increment' => "تزايد تلقائي", - 'Not NULL' => "حقل إلزامي", - 'Character Set' => "مجموعة الأحرف", - 'Collation' => "الترتيب", - 'Comment' => "التعليق", - 'Waiting for table information to be submitted' => "جار الانتظار لإرسال معلومات الجدول", - 'Add field' => "إضافة حقل", - 'Delete selected field' => "حذف الحقل المحدد", - 'Clear Table Information' => "إزالة معلومات الجدول", - 'List of values' => "قائمة القيم", - 'Query Results' => "نتائج الطلب", - 'Data for {{TABLE}}' => "بيانات {{TABLE}}", - 'Select tables to be analyzed/repaired' => "اختر الجداول المراد تحليلها/تصليحها", - 'Operation to perform' => "العملية المراد إجراؤها", - 'Analyze' => "تحليل", - 'Check' => "تحقق", - 'Optimize' => "تحسين", - 'Repair' => "تصليح", - 'Skip Binary logging' => "تخطي تسجيل البيانات الثنائية", - 'Default' => "افتراضي", - 'Quick' => "فوري", - 'Fast' => "سريع", - 'Medium' => "متوسط", - 'Extended' => "ممتد", - 'Changed' => "متغير", - 'Use Frm files (MyISAM tables)' => "استعمال ملفات Frm (جداول MyISAM)", - 'User Information' => "معلومات المستخدم", - 'Global Privileges' => "الصلاحيات الشاملة", - 'Database Privileges' => "صلاحيات قاعدة البيانات", - 'Import File' => "استيراد ملف", - 'Index Manager' => "مدير الفهارس", - 'Edit table structure' => "تعديل بنية الجدول", - 'Save All Changes' => "حفظ جميع التغييرات", - 'Changes are not saved until you press [Save All Changes]' => "لن يتم الحفظ حتى الضغظ على [حفظ جميع التغييرات]", - 'Field Length' => "طول الحقل", - 'Select objects to include in export' => "اختر الكائنات المراد تضمينها في التصدير", - 'Export type' => "نوع التصدير", - 'Select All/None' => "تحديد الكل/لا شيء", - 'Add User' => "إضافة مستخدم", - 'Update User' => "تحديث المستخدم", - 'Delete selected User' => "حذف المستخدم المحدد", - 'Remove Password' => "إزالة كلمة السر", - 'Select tables to search' => "احتر الجداول المراد البحث فيها", - 'Search Options' => "خيارات البحث", - 'Search in following field types' => "البحث في أنواع الحقول المختارة", - 'Numeric Fields' => "الحقول العددية", - 'Character Fields' => "الحقول الحرفية", - 'Text Fields' => "الحقول النصية", - 'Date/Time Fields' => "حقول الوقت والتاريخ", - 'Comparison Type' => "نوع المقارنة", - 'Text to search' => "نص البحث", - 'Search' => "بحث", - 'Search Results' => "نتائج البحث", - 'Number of matches' => "عدد المطابقات", - 'Search results for {{KEYWORD}} in the database' => "نتائج البحث عن {{KEYWORD}} في قاعدة البيانات", - '{{NUM}} match(es)' => "{{NUM}} مطابقة(ات)", - 'Copy query to editor' => "نسخ الطلب إلى المحرر", - 'Done' => "تم", - 'SQL Editor' => "محرر SQL", - 'Create Copy' => "إنشاء نسخة", - 'Minimize All' => "تصغير الكل", - 'Copy Record(s)' => "نسخ السجل(ات)", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "Comma Separated (CSV for Excel)", - 'Select data file to import' => "اختر ملف البيانات المراد استيراده", - 'Select table for data import' => "اختر جدول لاستيراد البيانات", - 'First line contains column names' => "السطر الأول يحتوي على أسماء الأعمدة", - 'Select objects to operate upon' => "اختر الكائنات المراد العمل عليها", - 'Operations to perform' => "العمليات التي سيتم تنفيذها", - 'Add prefix string to name' => "إضافة بادئة للأسماء", - 'Delete prefix string from name' => "حذف بادئة من الأسماء", - 'Command text' => "نص الأمر", - 'DROP selected database objects' => "حذف كائنات قاعدة البيانات المحددة", - 'Batch operation results' => "نتائج عملية واسعة", - 'Operation' => "العملية", - 'Status' => "الحالة", - '{{NUM}} queries generated' => "تم إنشاء {{NUM}} طلب", - 'Please select one or more operations to perform' => "يرجى اختيار عملية أو أكثر لإجرائها", - 'Quick Search' => "بحث سريع", - '{{NAME}} client library is not installed' => "المكتبة {{NAME}} غير مثبتة على العميل", - '{{NAME}} extension is not installed' => "الإضافة {{NAME}} غير مثبتة على العميل", - 'SQLite database folder is inaccessible or not writable' => "مجلد قاعدة بيانات SQLite غير قابلة للقراءة أو الكتابة", - 'Maximize/Restore Results Pane' => "تكبير/إعادة لوحة النتائج", - 'Select databases to operate upon' => "اختر قواعد البيانات المراد إجراء العمليات عليها", - 'DROP selected databases' => "حذف قواعد البيانات المحددة", - 'The following operation is irreversible' => "العملة القادمة لا رجعة فيها", - 'Potential data loss might occur' => "هناك احتمال خسارة بيانات", - 'Add TRUNCATE command before insert statements' => "إضافة أمر إخلاء قبل أمر الإدخال", - 'Select objects to include in backup' => "اختر الكائنات المراد تضمينها في النسخة الإحتياطية", - 'Backup folder does not exist or is not writable' => "مجلد النسخ الإحتياطية غير موجود أو لا يمكن الوصول إليه", - 'Backup type' => "نوع النسحة الإحتياطية", - 'Database backup successfully created' => "تم إنشاء نسخة إحتياطية بنجاح", - 'Failed to create database backup' => "فشل إنشاء نسخة إحتياطية", - 'Generate Bulk insert statements' => "إنشاء أوامر إدخال تراكمية", - 'Maximum size of SQL statement' => "أقصى حجم ممكن لأمر SQL", - 'Show record count with table names' => "عرض عدد السجلات مع أسماء الجداول", - 'Sort Table listing by' => "ترتيب عرض الجداول حسب", - 'Name' => "الاسم", - 'Last Update Time' => "آخر وقت تعديل", - 'Maximum records to display in result set' => "أقصى عدد سجلات معروضة في مجموعة النتائج", - 'Show popup dialog for editing large text data' => "إظهار مربع حوار لتعديل البيانات النصية الكبيرة", - 'Miscellaneous' => "متفرقات", - 'Reset all confirmation dialogs' => "إعادة كل مربعات التأكيد", - 'Record Editing' => "تعديل السجل", - 'Exclude Table type' => "عدم تضمين نوع الجدول", - 'Exclude Table Character set' => "عدم تضمين مجموعات الأحرف للجدول", - 'Backup filename' => "اسم ملف النسخ الاحتياطي", - 'Invalid filename format' => "اسم الملف غير صالح", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "الكل", - 'all selected' => "تم تحديد الكل", - 'An error occured while refreshing the object list.' => "حدث خطأ أثناء تحديث قائمة الكائنات.", - 'Are you sure you want to clear all field information from table?' => "هل أنت متأكد أنك ترغب بإزالة جميع بيانات الحقول من الجدول؟", - 'Are you sure you want to delete this user account?' => "هل أنت متأكد أنك ترغب بحذف حساب المستخدم؟", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "هل أنت متأكد أنك ترغب بحذف جميع الكائنات من قاعدة البيانات {{NAME}}؟", - 'Are you sure you want to DROP selected objects?' => "هل أنت متأكد أنك ترغب بحذف الكائنات المحددة؟", - 'Are you sure you want to DROP the database {{NAME}}?' => "هل أنت متأكد أنك ترغب بحذف قاعدة البيانات {{NAME}}؟", - 'Are you sure you want to drop this object? {{NAME}}' => "هل أنت متأكد أنك ترغب بحذف هذا الكائن؟ {{NAME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "هل أنت متأكد أنك ترغب بتنفيذ الطلبات {{SELECTED}}؟", - 'Are you sure you want to logout?' => "هل أنت متأكد أنك ترغب بتسجيل الخروج؟", - 'Are you sure you want to truncate the table {{NAME}}?' => "هل أنت متأكد أنك ترغب بتفريغ هذا الجدول {{NAME}}؟", - 'Blob Data [{{SIZE}}]' => "بيانات الكائن الثنائي [{{SIZE}}]", - 'Cancel' => "إلغاء الأمر", - 'Check for Updates' => "تحقق من التحديثات", - 'Clear command history?' => "إزالة سجل الأوامر؟", - 'Close' => "إغلاق", - 'Confirm Action' => "تأكيد الإجراء", - 'Confirm and do not ask me again about this choice' => "تأكيد وعدم السؤال مرة أخرى", - 'Copy Object' => "نسخ الكائن", - 'Create Database' => "إنشاء قاعدة بيانات", - 'Create Primary Index on this field' => "إنشاء فهرس أساسي في هذا الحقل", - 'Databases' => "قواعد البيانات", - 'Default value [Use quotes to specify string values]' => "القيمة الافتراضية [استخدم إشارات التنصيص لتحديد قيمة نصية]", - 'Disallow NULL values in Field' => "عدم السماح بقيم فارغة في الحقل", - 'Enter new index name' => "أدخل اسم فهرس جديد", - 'Enter new name for the database object' => "أدخل اسم جديد لكائن قاعدة البيانات", - 'Enter the text to search in database' => "أدخل النص المراد البحث عنه في قاعدة البيانات", - 'Error' => "خطأ", - 'Events' => "الأحداث", - 'Execute query' => "تنفيذ الطلب", - 'Exports results' => "تصدير النتائج", - 'Failed to refresh the results.' => "فشل تحديث النتائج.", - 'Field Datatype' => "نوع بيانات الحقل", - 'Field Name' => "اسم الحقل", - 'Field value is Auto Incremented' => "قيمة الحقل تتزايد بشكل تلقائي", - 'Functions' => "الوظائف", - 'Indexes Updated' => "تم تحديث الفهارس", - 'Maximum Length of field value' => "أقصى طول لقيمة الحقل", - 'Navigation Error. Try reloading the page' => "خطأ تنقل. يرجى تحديث الصفحة", - 'New settings saved and applied' => "تم حفظ وتطبيق الإعدادت الجديدة", - 'New version is available' => "يوجد تحديث جديد", - 'Next' => "التالي", - 'No' => "لا", - 'No Table selected' => "لم يتم تحديد جدول", - 'Not enough room to show this pane.' => "لا يوجد مكان كاف لعرض هذه اللوحة.", - 'OK' => "موافق", - 'One or more field information is incomplete' => "أحد معلومات الحقل على الأقل ليس مكتمل", - 'Open' => "فتح", - 'Operation failed' => "فشلت العملية", - 'Pad field values with leading zeros' => "حشو قيمة الحقل بأصفار ابتدائية", - 'Pane' => "لوحة", - 'Passwords do not match' => "كلمات السر غير متطابقة", - 'Pin' => "تعليق", - 'Please select one or more operations to perform' => "يرجى اخيار عملية أو أكثر لإجرائها", - 'Please type in one or more queries in the SQL editor!' => "يرجى إدخال طلب أو أكثر في محرر SQL!", - 'Please wait...' => "يرجى الانتظار...", - 'Previous' => "السابق", - 'Procedures' => "الإجراءات", - 'Prompt' => "إدخال", - 'Refresh results' => "تحديث النتائج", - 'Refreshing object list' => "تحديث قائمة الكائنات", - 'Rename Object' => "إعادة تسمية الكائن", - 'Resize' => "تغيير الحجم", - 'Results page:' => "صفحة النتائج:", - 'Select a database to view privileges for the user' => "اختر قاعدة بيانات لعرض صلاحيات المستخدم", - 'Select an index to view / edit its details' => "اختر فهرس لرؤية / تعديل تفاصيله", - 'Select at least one field type for searching' => "اختر على الأقل نوع حقل واحد للبحث فيه", - 'Select objects to operate upon' => "اختر الكائنات المراد العمل عليها", - 'selector' => "المحدد", - 'Slide Open' => "فتح انزلاقي", - 'Table information requires at least one valid field' => "معلومات الجدول تحتاج على الأقل حقل صالح واحد", - 'Table name is required' => "اسم الجدول إلزامي", - 'Table successfully created' => "تم إنشاء الجدول بنجاح", - 'Table successfully modified' => "تم تعديل الجدول بنجاح", - 'Tables' => "الجداول", - 'Text Data [{{SIZE}}]' => "بيانات نصية [{{SIZE}}]", - 'There is no record in the results to export' => "لا يوجد سجل في النتائج لتصديره", - 'This attribute is not required for selected field type' => "هذه الخاصية غير مطلوبة لنوع الحقل المحدد", - 'Triggers' => "المشغلات", - 'Un-Pin' => "إلغاء التعليق", - 'Unsigned numbered field only' => "حقل لرقم موجب حصراً", - 'Update check failed' => "فشل التحقق من وجود تحديثات", - 'User information is incomplete or invalid' => "معلومات المستخدم غير مكتملة أو غير صالحة", - 'User Manager' => "مدير المستخدمين", - 'Views' => "طرق العرض", - 'WARNING' => "تحذير", - 'Yes' => "نعم", - 'You have the latest version' => "انت تستخدم آخر إصدار بالفعل", - - ); -?> diff --git a/lang/bg.php b/lang/bg.php deleted file mode 100644 index b712dc3..0000000 --- a/lang/bg.php +++ /dev/null @@ -1,463 +0,0 @@ - "Използвайте база данни", - 'Drop Database' => "Drop Database", - 'Empty Database' => "Празна база данни", - 'Drop all tables from this database' => "Отстранете всички таблици от тази база данни", - 'Select statement' => "Изберете отчет", - 'Insert statement' => "Вмъкване на отчет", - 'Update statement' => "Актуализация на отчета", - 'Describe' => "Опишете", - 'Show create command' => "Покажи създаде команда", - 'View data' => "Преглед на данните", - 'Alter Table' => "Alter таблица", - 'Indexes' => "Индекси", - 'Engine Type' => "Двигател", - 'More operations' => "Повече операции", - 'Truncate' => "Пресечен", - 'Drop' => "Капка", - 'Rename' => "Преименувам", - 'Export table data' => "Експортиране на данни от таблица", - 'Create Table' => "Създаване на таблица", - 'Create View' => "Създаване на виртуална", - 'Create Procedure' => "Създаване на дейността", - 'Create Function' => "Създаване на функция", - 'Create Trigger' => "Създаване Trigger", - 'Create Event' => "Създаване на събитие", - 'Show/Hide Panel' => "Покажи / скрий група", - 'Show/Hide Header' => "Покажи / скрий Header", - 'Copy all queries to clipboard' => "Копиране на всички запитвания към клипборда", - 'Clear history' => "Изчистване на историята", - 'Copy Column values' => "Копие на колона values", - 'Copy to clipboard' => "Копиране в клипборда", - 'Generate SQL Filter' => "Генериране на SQL филтър", - 'Database Manager' => "Мениджъра на базата данни", - 'Manage databases' => "Управление на бази данни", - - // main menu related text - 'Database' => "База данни", - 'Refresh' => "Обнови", - 'Refresh database object list' => "Обнови списъка обект на база данни", - 'Create new' => "Създаване на нова", - 'Export' => "Износ", - 'Export database to external file' => "Износ база данни към външни файлове", - 'Objects' => "Обекти", - 'Create Table' => "Създаване на таблица", - 'Create a new table in the database' => "Създаване на нова таблица в базата данни", - 'Create View' => "Създаване на виртуална", - 'Create a new view in the database' => "Създаване на нов поглед в базата данни", - 'Create Stored Procedure' => "Създаване съхранявана Процедурния", - 'Create a new stored procedure in the database' => "Създаване на нова процедура, съхранявани в базата данни", - 'Create Function' => "Създаване на функция", - 'Create a new user defined function in the database' => "Създаване на нов потребител определена функция в базата данни", - 'Create Trigger' => "Създаване Trigger", - 'Create a new trigger in the database' => "Създаване на нов задейства в базата данни", - 'Create Event' => "Създаване на събитие", - 'Create a new event in the database' => "Създаване на ново събитие в базата данни", - 'Data' => "Данни", - 'Import batch file' => "Внос партиди", - 'Import multiple queries from batch file' => "Внос множество запитвания от команден файл", - 'Export database' => "Износ база данни", - 'Export database to batch file as sql dump' => "Износ база данни за партиди, както SQL дъмп", - 'Export current results' => "Износ текущите резултати", - 'Export query results to clipboard or files' => "Износ резултатите от заявката в клипборда или файлове", - 'Tools' => "Инструменти", - 'Process Manager' => "Process Manager", - 'View and manage database processes' => "Преглед и управление на база данни процеси", - 'Repair Tables' => "Ремонт таблици", - 'Analyze and repair database tables' => "Анализ и ремонт таблиците в базата данни", - 'User Manager' => "Управление на потребителите", - 'Manage database users' => "Управление на база данни на потребителите", - 'Search in Database' => "Търсене в базата данни", - 'Search for text in the database' => "Търсене на текст в базата данни", - 'Information' => "Информация", - 'Server/Connection Details' => "Server / Връзка Детайли", - 'View server configuration' => "Конфигурация View сървъра", - 'View server and connection details' => "Преглед на сървърни и свързване детайли", - 'Server Variables' => "Сървър Променливи", - 'Database Summary' => "База данни Резюме", - 'View current database summary stats' => "Преглед на текущата статистика данни обобщение", - 'Interface' => "Интерфейс", - 'Options' => "Опции", - 'Configure application options' => "Конфигуриране на настройки на", - 'UI Theme' => "UI Тема", - 'Database Objects' => "Обекти на база данни", - 'Toggle Object Viewer' => "Превключване на обекта Viewer", - 'Help contents' => "Помощ съдържание", - 'Learn the basics of using MyWebSQL' => "Запознайте се с основните положения при използването MyWebSQL", - 'QuickStart Tutorials' => "QuickStart уроци", - 'See quick hands-on tutorial of MyWebSQL interface' => "Вижте бърз практически урок на MyWebSQL интерфейс", - 'Online documentation' => "Онлайн документация", - 'View online documentation on project website' => "Вижте онлайн документацията на сайта на проекта", - 'Request a Feature' => "Заявка за елемент", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "Ако искате да получите най-функция от нас да бъдем част от MyWebSQL, моля, кликнете тук, за да информира за това", - 'Report a Problem' => "Съобщи за проблем", - 'Check for updates' => "Проверка за актуализации", - 'Check for updated versions of the application online' => "Проверка за обновени версии на заявлението онлайн", - 'Logout' => "Изход", - 'Logout from this session' => "Изход от тази сесия", - 'Language' => "Език", - 'SQL Editor' => "SQL Editor", - 'Toggle SQL Editor' => "Превключване на SQL Editor", - 'Experimental' => "Експериментален", - 'Import table data' => "Импортиране на таблицата с данни", - 'Import table data from external file' => "Импортиране на данни на таблица от външен файл", - 'Batch operations' => "Партиди операции", - 'Perform one or more batch operations on database' => "Извършва една или повече партидни операции на база данни", - 'Create a new schema in the database' => "Създаване на нова схема в базата данни", - 'Create Schema' => "Създаване на схема", - 'Table Description' => "Таблица Описание", - 'Database Manager' => "Мениджъра на базата данни", - 'Manage databases' => "Управление на бази данни", - 'Backup database on the server as SQL dump' => "Резервната база данни на сървъра, като SQL дъмп", - 'Backup Database' => "Резервната база данни", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "Вашият браузър изглежда е много стар и не поддържа всички функции, необходими за работата MyWebSQL.", - 'Try using a newer version of the browser to run this application.' => "Опитайте се да използвате по-нова версия на браузъра, за стартиране на приложението", - - // text used on various screens in the interface - 'Visit Project website' => "Посетете сайта на проекта", - 'Version' => "версия", - 'Loading' => "Товарене", - 'Quick Edit Options' => "Бързо Редактиране на настройките", - 'Press {{KEY}} to set NULL' => "Натиснете {{KEY}} да NULL", - 'MySQL Server' => "MySQL Server", - 'Logged in as: {{USER}}' => "Влезли сте като: {{USER}}", - 'Results' => "Резултати", - 'Messages' => "Съобщения", - 'Information' => "Информация", - 'History' => "История", - 'There are no results to show in this view' => "Не е намерена нито да се показват в този изглед", - 'Refresh results' => "Обновяване на резултатите", - 'Please wait' => "Моля, изчакайте", - 'Query All' => "Запитване Всички", - 'Query' => "Запитване", - 'Add Record' => "Добави Записът", - 'Delete Record(s)' => "Изтриване на запис (а)", - 'Update Record(s)' => "Актуализация Запис (и)", - 'Generate SQL' => "Генериране на SQL", - 'Database name' => "База данни име", - 'Select database after creation' => "Изберете базата данни след създаването", - 'Database connection failed to the server' => "Свързване на база данни не е на сървъра", - 'Host' => "Приемащата", - 'User' => "Потребител", - 'Select a database to begin' => "Изберете база данни, за да започне", - 'Select/unselect All records' => "Изберете / откажете от избора Всички записи", - 'Primary key column' => "Първичен ключ колона", - 'Unique key column' => "Отделни ключови колона", - 'Showing records {{START}} - {{END}}' => "Показва {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "Показване на първа {{MAX}} записа само", - '1 query successfully executed' => "Една заявка е изпълнена успешно", - '{{NUM}} queries successfully executed' => "{{NUM}} заявки е изпълнена успешно", - '{{NUM}} record(s) were affected' => "{{NUM}} запис (а) са засегнати", - '{{NUM}} record(s) updated' => "{{NUM}} запис (а) се актуализира", - 'Error occurred while executing the query' => "Възникна грешка при изпълнение на заявката", - '{{NUM}} queries failed to execute' => "{{NUM}} заявки не успя да се изпълни", - 'Click to view/edit column data [{{NUM}} Bytes]' => "Щракнете тук за преглед / редактиране на данните в колона [{{NUM}} байта]", - 'Blob data is not editable' => "Blob данни не може да се редактира", - 'Blob data saved' => "Blob данните, записани", - 'Failed to save blob data' => "Не може да се спаси петно ​​данни", - 'The process with id [{{PID}}] was killed' => "Процесът с идентификатор [{{PID}}] е бил убит", - 'No such process [id = {{PID}}]' => "Няма такъв процес [ID = {{PID}}]", - 'Select a process and click the button to kill the process' => "Изберете процес и кликнете върху бутона, за да убие процес", - 'Process ID' => "ID процес", - 'Command' => "Команда", - 'Time' => "Време", - 'Info' => "Информация", - 'Kill Process' => "Kill процес", - 'Failed to get process list' => "Не може да се получи списък процес", - 'The command executed successfully' => "Командата изпълнена успешно", - 'Invalid server configuration' => "Невалидна конфигурация сървър", - 'Invalid Credentials' => "Невалидна пълномощията", - 'New database successfully created' => "Нова база данни е създаден успешно", - 'File upload failed. Please try again' => "Качване на файлове не успя. Моля опитайте отново", - 'No queries were executed during import' => "Не заявки са били екзекутирани по време на вноса", - 'Maximum upload filesize is {{SIZE}}' => "Максимален размер на файла качите е {{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "Поддържани типове файлове / разширения са: ({{LIST}})", - 'Database summary' => "База данни обобщение", - 'Server Variables' => "Сървър Променливи", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "Всеки съществуващ обект със същото име, трябва да се пуска ръчно преди да изпълни създаването команда", - 'Only create commands are accepted' => "Само създават команди се приемат", - 'User ID' => "User ID", - 'Password' => "Парола", - 'Login' => "Вход", - 'Create new database object' => "Създаване на нов обект от база данни", - 'Enter command for object creation' => "Въведете командата за създаване на обекта", - 'Submit' => "Изпращане", - 'Show blob data as: {{TYPE}}' => "Покажи петно ​​данни: {{TYPE}}", - 'Blob data for column {{NAME}}' => "Blob данни за колона {{NAME}}", - 'Create command for {{TYPE}} {{NAME}}' => "Създаване на команда за {{TYPE}} {{NAME}}", - 'Table Engine (type)' => "Таблица на двигателя (тип)", - 'Change Table Type' => "Промяна на таблицата Тип", - 'The requested page is not available on the server' => "Заявената страница не е на разположение на сървъра", - 'Error' => "Грешка", - 'It appears that you attempted to submit an invalid request to the server' => "Оказва се, че сте се опитали да представят невалидна заявка към сървъра", - 'The request has been denied. Reloading the page might solve the problem' => "Искането е било отказано. Презареждане на страницата може да реши проблема", - 'Access Denied' => "Достъпът е отказан", - 'Help' => "Помощ", - 'To see most up-to-date help contents, please visit {{LINK}}' => "За да видите най актуална съдържанието на помощта, моля посетете {{LINK}}", - 'It appears that your browser session has expired' => "Оказва се, че вашия браузър сесия е изтекла", - 'Please refresh the webpage to re-login' => "Моля, обновяване на уеб страницата да се възстанови вход", - 'Table information' => "Таблица информация", - 'Edit' => "Редактиране", - 'Save' => "Запази", - 'Either the database is empty, or there was an error retrieving list of database objects' => "Всяка база данни е празен, или е имало грешка при получаването на списъка с обекти на база данни", - 'Please try closing and re-opening this dialog again' => "Моля, опитайте затваряне и отваряне на този диалогов прозорец отново", - 'Structure' => "Структура", - 'Table Data' => "Данни от таблица", - 'Structure and Table Data' => "Структура и таблица на данните", - 'Options' => "Опции", - 'Set Auto increment field values to NULL' => "Задайте Auto стойности на полето нарастване на NULL", - 'Add DROP command before create statements' => "Добави DROP команда преди създаване на отчети", - 'Export' => "Износ", - 'Import' => "Внос", - 'Export Database' => "Износ база данни", - 'Export Table' => "Износ таблица", - 'Server information' => "Информация за сървъра", - 'Server' => "Сървър", - 'Version comment' => "Версия коментар", - 'Character sets' => "Набор от символи", - 'Server character set' => "Сървър набор от символи", - 'Client character set' => "Клиент набор от символи", - 'Database character set' => "База данни набор от символи", - 'Results character set' => "Резултати от набор от символи", - 'Export As' => "Експортиране като", - 'Insert Statements' => "Вмъкване на отчет", - 'Include field names in query' => "Включи имената на полетата в заявка", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Обикновен текст (по един запис на ред)", - 'Fields separated by:' => "Сфера, разделени с:", - 'Export Results' => "Резултати от износа", - 'Select SQL batch file to import' => "Изберете SQL файл партида за внос", - 'Continue processing even if error occurs' => "Продължете обработката, дори ако възникне грешка", - 'Basic Information' => "Основна информация", - 'Table Properties' => "Свойства на таблицата", - 'Table Name' => "Името на таблицата", - 'Field Name' => "Полето Име", - 'Data Type' => "Тип данни", - 'Length' => "Дължина", - 'Default value' => "Стойността по подразбиране", - 'Unsigned' => "Неподписан", - 'Zero Fill' => "Zero Fill", - 'Primary Key' => "Първичен ключ", - 'Auto Increment' => "Auto Increment", - 'Not NULL' => "Не NULL", - 'Character Set' => "Character Set", - 'Collation' => "Сравняване", - 'Comment' => "Коментар", - 'Waiting for table information to be submitted' => "В очакване на таблицата данни за изпращане", - 'Add field' => "Добави областта", - 'Delete selected field' => "Изтриване на избраното поле", - 'Clear Table Information' => "Изчистване на таблица Информация", - 'List of values' => "Списък на ценностите", - 'Query Results' => "Запитване Резултати", - 'Data for {{TABLE}}' => "Данни за {{TABLE}}", - 'Select tables to be analyzed/repaired' => "Изберете таблици, за да се анализират / ремонт", - 'Operation to perform' => "Операция за изпълнение", - 'Analyze' => "Анализирайте", - 'Check' => "Проверка", - 'Optimize' => "Оптимизиране на", - 'Repair' => "Ремонт", - 'Skip Binary logging' => "Напред Binary сеч", - 'Default' => "По подразбиране", - 'Quick' => "Бързо", - 'Fast' => "Бързо", - 'Medium' => "Среда", - 'Extended' => "Разширен", - 'Changed' => "Променен", - 'Use Frm files (MyISAM tables)' => "Използвайте FRM файлове (MyISAM таблици)", - 'User Information' => "Информация за потребител", - 'Global Privileges' => "Global привилегиите", - 'Database Privileges' => "База данни привилегиите", - 'Import File' => "Внос на файла", - 'Index Manager' => "Индекс Manager", - 'Edit table structure' => "Редактиране на структурата на таблицата", - 'Save All Changes' => "Запази Всички Промени", - 'Changes are not saved until you press [Save All Changes]' => "Промени не се съхраняват, докато натиснете [Запази Всички Промени]", - 'Field Length' => "Дължината на полето", - 'Select objects to include in export' => "Избира обекти да бъдат включени в износа", - 'Export type' => "Износ тип", - 'Select All/None' => "Избиране на всички / нито един", - 'Add User' => "Добавяне на потребител", - 'Update User' => "Актуализация на потребителя", - 'Delete selected User' => "Изтриване на избрания потребител", - 'Remove Password' => "Премахване на парола", - 'Select tables to search' => "Изберете таблицата за търсене", - 'Search Options' => "Опции за търсене", - 'Search in following field types' => "Търсене в следните типове полета", - 'Numeric Fields' => "Числови полета", - 'Character Fields' => "Символ Сфера", - 'Text Fields' => "Текстови полета", - 'Date/Time Fields' => "Дата / Час Сфера", - 'Comparison Type' => "Сравнение Тип", - 'Text to search' => "Текст за търсене", - 'Search' => "Търсене", - 'Search Results' => "Резултати от търсенето", - 'Number of matches' => "Брой на мача", - 'Search results for {{KEYWORD}} in the database' => "Резултати от търсенето за {{}} KEYWORD в базата данни", - '{{NUM}} match(es)' => "{{NUM}} мач (и)", - 'Copy query to editor' => "Копие заявка за редактор", - 'Done' => "Съставено", - 'SQL Editor' => "SQL Editor", - 'Create Copy' => "Създаване Copy", - 'Minimize All' => "Намаляване на всички", - 'Copy Record(s)' => "Копиране Record (а)", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "Разделени със запетаи (CSV за Excel)", - 'Select data file to import' => "Изберете файл с данни за внос", - 'Select table for data import' => "Изберете маса за внос на данни", - 'First line contains column names' => "Първият ред съдържа имената на колоните", - 'Select objects to operate upon' => "Изберете обекти, за да оперират", - 'Operations to perform' => "Операции, за да изпълняват", - 'Add prefix string to name' => "Добави префикс низ, за ​​да назовем", - 'Delete prefix string from name' => "Изтриване на низ префикс от име", - 'Command text' => "Command текст", - 'DROP selected database objects' => "Пускайте избрани обекти от база данни", - 'Batch operation results' => "Резултатите от периодично действие", - 'Operation' => "Операция", - 'Status' => "Статус", - '{{NUM}} queries generated' => "{{NUM}} запитва генерира", - 'Please select one or more operations to perform' => "Моля, изберете една или повече операции, за да изпълняват", - 'Quick Search' => "Бързо търсене", - '{{NAME}} client library is not installed' => "{{NAME}} клиентската библиотека не е инсталиран", - '{{NAME}} extension is not installed' => "{{NAME}} разширение не е инсталиран", - 'SQLite database folder is inaccessible or not writable' => "SQLite база данни папка е недостъпна или не записваеми", - 'Maximize/Restore Results Pane' => "Максимизиране / възстановяване Резултати екран", - 'Select databases to operate upon' => "Изберете бази данни, за да се оперира", - 'DROP selected databases' => "Пускайте избрани бази данни", - 'The following operation is irreversible' => "Следващата операция е необратима", - 'Potential data loss might occur' => "Потенциална загуба на данни може да се случи", - 'Add TRUNCATE command before insert statements' => "Добави съкращава командата, преди да вмъкнете отчети", - 'Select objects to include in backup' => "Изберете обекти да се включат в гръб", - 'Backup folder does not exist or is not writable' => "Папка Backup не съществува или не е записваем", - 'Backup type' => "Backup тип", - 'Database backup successfully created' => "Резервната база данни е създадена успешно", - 'Failed to create database backup' => "Грешка при създаване на резервната база данни", - 'Generate Bulk insert statements' => "Генериране на насипни отчети вмъкване", - 'Maximum size of SQL statement' => "Максимален размер на изявление SQL", - 'Show record count with table names' => "Покажи брой рекорд с имена на таблици", - 'Sort Table listing by' => "Листинг Сортиране на таблицата по", - 'Name' => "Име", - 'Last Update Time' => "Последно обновяване Time", - 'Maximum records to display in result set' => "Максимални записи за да се покаже в резултат набор", - 'Show popup dialog for editing large text data' => "Покажи изскачащ диалогов за редактиране на големи данни, текст", - 'Miscellaneous' => "Разни", - 'Reset all confirmation dialogs' => "Връщане на всички диалогови прозорци за потвърждение", - 'Record Editing' => "Записът Editing", - 'Exclude Table type' => "Изключи тип маса", - 'Exclude Table Character set' => "Изключи Таблица набор Character", - 'Backup filename' => "Backup име на файл", - 'Invalid filename format' => "Невалидно име на файл формат", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "всички", - 'all selected' => "всички избрани", - 'An error occured while refreshing the object list.' => "Възникна грешка при опресняване на обекта списъка.", - 'Are you sure you want to clear all field information from table?' => "Наистина ли искате да изчистите всички области на информация от масата?", - 'Are you sure you want to delete this user account?' => "Наистина ли искате да изтриете този акаунт?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "Наистина ли искате да се откажа, всички обекти от базата данни на {{NAME}}?", - 'Are you sure you want to DROP selected objects?' => "Сигурни ли сте че искате да пуснете избраните обекти?", - 'Are you sure you want to DROP the database {{NAME}}?' => "Наистина ли искате да се откажа, базата данни {{NAME}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "Наистина ли искате да пуснете този обект? {{NAME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "Наистина ли искате да изпълните {{SELECTED}} заявки?", - 'Are you sure you want to logout?' => "Наистина ли искате да излезете?", - 'Are you sure you want to truncate the table {{NAME}}?' => "Наистина ли искате да съкрати таблицата {{NAME}}?", - 'Blob Data [{{SIZE}}]' => "Петно на данни [{{SIZE}}]", - 'Cancel' => "Отказ", - 'Check for Updates' => "Проверка за актуализации", - 'Clear command history?' => "Ясно команда история?", - 'Close' => "Тясно", - 'Confirm Action' => "Потвърждение за действие", - 'Confirm and do not ask me again about this choice' => "Потвърдете и не ме питай повече за този избор", - 'Copy Object' => "Копиране на обекти", - 'Create Database' => "Създаване на база данни", - 'Create Primary Index on this field' => "Създаване на първичен индекс на тази област", - 'Databases' => "Данни", - 'Default value [Use quotes to specify string values]' => "Стойността по подразбиране [Използвайте кавички, за да определят низови стойности]", - 'Disallow NULL values in Field' => "Забрана за NULL стойности в полето", - 'Enter new index name' => "Въведете ново име индекс", - 'Enter new name for the database object' => "Въведете новото име на обект на база данни", - 'Enter the text to search in database' => "Въведете текст за търсене в базата данни", - 'Error' => "Грешка", - 'Events' => "Събития", - 'Execute query' => "Изпълнение на заявката", - 'Exports results' => "Износът резултати", - 'Failed to refresh the results.' => "Проблем при обновяване на резултатите.", - 'Field Datatype' => "Поле ТипДанни", - 'Field Name' => "Полето Име", - 'Field value is Auto Incremented' => "На поле е Auto увеличава", - 'Functions' => "Функции", - 'Indexes Updated' => "Актуализиран индекси", - 'Maximum Length of field value' => "Максималната дължина на стойност на поле", - 'Navigation Error. Try reloading the page' => "Навигационна грешка. Опитайте да презаредите страницата", - 'New settings saved and applied' => "Нови настройки запазени и прилагани", - 'New version is available' => "Новата версия е достъпна", - 'Next' => "Следваща", - 'No' => "Не", - 'No Table selected' => "Не таблица избрани", - 'Not enough room to show this pane.' => "Няма достатъчно място да се покаже прозорец.", - 'OK' => "OK", - 'One or more field information is incomplete' => "Един или повече области информацията е непълна", - 'Open' => "Отворен", - 'Operation failed' => "Операцията бе неуспешна", - 'Pad field values with leading zeros' => "Pad областта стойности с нули", - 'Pane' => "Екран", - 'Passwords do not match' => "Паролите не съвпадат", - 'Pin' => "Щифт", - 'Please select one or more operations to perform' => "Моля, изберете една или повече операции, за да изпълняват", - 'Please type in one or more queries in the SQL editor!' => "Моля, въведете една или повече заявки в SQL редактор!", - 'Please wait...' => "Моля, изчакайте ...", - 'Previous' => "Предишна", - 'Procedures' => "Процедури", - 'Prompt' => "Бърз", - 'Refresh results' => "Обновяване на резултатите", - 'Refreshing object list' => "Обновяване на обект списък", - 'Rename Object' => "Преименуване на обект", - 'Resize' => "Живея", - 'Results page:' => "Страница с резултати:", - 'Select a database to view privileges for the user' => "Изберете базата данни, за да видите привилегии за потребителя", - 'Select an index to view / edit its details' => "Изберете индекс за разглеждане / редактиране му детайли", - 'Select at least one field type for searching' => "Изберете най-малко едно поле тип за търсене", - 'Select objects to operate upon' => "Изберете обекти, за да оперират", - 'selector' => "селектор", - 'Slide Open' => "Слайд Open", - 'Table information requires at least one valid field' => "Таблица информацията се нуждае от поне една валидна областта", - 'Table name is required' => "Таблица Необходимо е име на", - 'Table successfully created' => "Таблица създаден успешно", - 'Table successfully modified' => "Таблица успешно промяна", - 'Tables' => "Таблици", - 'Text Data [{{SIZE}}]' => "Текстови данни [{{SIZE}}]", - 'There is no record in the results to export' => "Няма данни в резултат на износ", - 'This attribute is not required for selected field type' => "Този атрибут не се изисква за избрания тип поле", - 'Triggers' => "Тригери", - 'Un-Pin' => "Un-Пин", - 'Unsigned numbered field only' => "Неподписани номерирани областта само", - 'Update check failed' => "Актуализация проверка не успя", - 'User information is incomplete or invalid' => "Потребителят информация е непълна или невалидни", - 'User Manager' => "Управление на потребителите", - 'Views' => "Видян", - 'WARNING' => "ПРЕДУПРЕЖДЕНИЕ", - 'Yes' => "Да", - 'You have the latest version' => "Вие имате последната версия", - - ); -?> diff --git a/lang/ca.php b/lang/ca.php deleted file mode 100644 index 0f7ba32..0000000 --- a/lang/ca.php +++ /dev/null @@ -1,463 +0,0 @@ - "Ús de bases de dades", - 'Drop Database' => "Caiguda de la base de dades", - 'Empty Database' => "Buidar base de dades", - 'Drop all tables from this database' => "Descarti totes les taules d'aquesta base de dades", - 'Select statement' => "Seleccioneu la declaració", - 'Insert statement' => "Inseriu declaració", - 'Update statement' => "Actualització de la declaració", - 'Describe' => "Descriure", - 'Show create command' => "Mostra comanda create", - 'View data' => "Veure dades", - 'Alter Table' => "Modificar taula", - 'Indexes' => "Índexs", - 'Engine Type' => "Tipus de motor", - 'More operations' => "Més operacions", - 'Truncate' => "Truncar", - 'Drop' => "Drop", - 'Rename' => "Canviar el nom de", - 'Export table data' => "Exportar dades de la taula", - 'Create Table' => "Crear taula", - 'Create View' => "Crear vista", - 'Create Procedure' => "Crear Procediment", - 'Create Function' => "Crear la funció", - 'Create Trigger' => "Crear Trigger", - 'Create Event' => "Crear un esdeveniment", - 'Show/Hide Panel' => "Mostra / Amaga panell", - 'Show/Hide Header' => "Mostra / Amaga Capçalera", - 'Copy all queries to clipboard' => "Còpia totes les consultes al portapapers", - 'Clear history' => "Esborrar l'historial", - 'Copy Column values' => "Copiar columna valors", - 'Copy to clipboard' => "Copiar al portapapers", - 'Generate SQL Filter' => "Generar SQL filtre", - 'Database Manager' => "Database Manager", - 'Manage databases' => "Administrar bases de dades", - - // main menu related text - 'Database' => "Base de dades", - 'Refresh' => "Actualitzar", - 'Refresh database object list' => "Actualitzar la base de dades objecte de la llista", - 'Create new' => "Crear nou", - 'Export' => "Exportació", - 'Export database to external file' => "Exportar base de dades a un arxiu extern", - 'Objects' => "Objectes", - 'Create Table' => "Crear taula", - 'Create a new table in the database' => "Crear una nova taula a la base de dades", - 'Create View' => "Crear vista", - 'Create a new view in the database' => "Crear una nova vista a la base de dades", - 'Create Stored Procedure' => "Crear procediments emmagatzemats", - 'Create a new stored procedure in the database' => "Crear un nou procediment emmagatzemat a la base de dades", - 'Create Function' => "Crear la funció", - 'Create a new user defined function in the database' => "Crear una nova funció definida per l'usuari a la base de dades", - 'Create Trigger' => "Crear Trigger", - 'Create a new trigger in the database' => "Crea un nou disparador a la base de dades", - 'Create Event' => "Crear un esdeveniment", - 'Create a new event in the database' => "Crear un nou esdeveniment a la base de dades", - 'Data' => "Dades", - 'Import batch file' => "Importació d'arxius de procés per lots", - 'Import multiple queries from batch file' => "Importar múltiples consultes d'arxiu per lots", - 'Export database' => "Exportar base de dades", - 'Export database to batch file as sql dump' => "Exportar base de dades a arxiu per lots com bolcat sql", - 'Export current results' => "Resultats d'exportació en curs", - 'Export query results to clipboard or files' => "Exportar resultats de la consulta al portapapers o arxius", - 'Tools' => "Eines", - 'Process Manager' => "Process Manager", - 'View and manage database processes' => "Veure i gestionar els processos de base de dades", - 'Repair Tables' => "Reparar taules", - 'Analyze and repair database tables' => "Analitzar i reparar taules de bases de dades", - 'User Manager' => "Administrador d'usuaris", - 'Manage database users' => "Administrar usuaris de base de dades", - 'Search in Database' => "Cerca a la base de dades", - 'Search for text in the database' => "Cerca de text a la base de dades", - 'Information' => "Informació", - 'Server/Connection Details' => "Servidor / Connexió Detalls", - 'View server configuration' => "Veure configuració del servidor", - 'View server and connection details' => "Veure detalls de connexió del servidor i", - 'Server Variables' => "Variables de servidor", - 'Database Summary' => "Resum de base de dades", - 'View current database summary stats' => "Vista actual de les estadístiques de base de dades de resum", - 'Interface' => "Interfície", - 'Options' => "Opcions", - 'Configure application options' => "Configurar les opcions d'aplicació", - 'UI Theme' => "IU Tema", - 'Database Objects' => "Base de dades d'objectes", - 'Toggle Object Viewer' => "Activar Visor d'objectes", - 'Help contents' => "contingut de l'Ajuda", - 'Learn the basics of using MyWebSQL' => "Aprendre els aspectes bàsics de l'ús MyWebSQL", - 'QuickStart Tutorials' => "Tutorials ràpids", - 'See quick hands-on tutorial of MyWebSQL interface' => "Veure interfície ràpida tutorial pràctic de MyWebSQL", - 'Online documentation' => "Documentació en línia", - 'View online documentation on project website' => "Veure documentació en línia al lloc web del projecte", - 'Request a Feature' => "Demana una característica", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "Si desitja que la seva característica més favorit per ser part de MyWebSQL, si us plau feu clic aquí per informar sobre això", - 'Report a Problem' => "Informar d'algun problema", - 'Check for updates' => "Cerca actualitzacions", - 'Check for updated versions of the application online' => "Comproveu si hi ha versions actualitzades de la sol licitud en línia", - 'Logout' => "Desconnectar", - 'Logout from this session' => "Tancar sessió d'aquest període de sessions", - 'Language' => "Idioma", - 'SQL Editor' => "SQL Editor", - 'Toggle SQL Editor' => "Alternar editor de SQL", - 'Experimental' => "Experimental", - 'Import table data' => "Importar dades de taula", - 'Import table data from external file' => "Importar dades de taula des d'un arxiu extern", - 'Batch operations' => "Les operacions per lots", - 'Perform one or more batch operations on database' => "Realitzeu una o més operacions per lots en la base de dades", - 'Create a new schema in the database' => "Crear un nou esquema a la base de dades", - 'Create Schema' => "Crear esquema", - 'Table Description' => "Descripció Taula", - 'Database Manager' => "Database Manager", - 'Manage databases' => "Administrar bases de dades", - 'Backup database on the server as SQL dump' => "Còpia de seguretat de base de dades al servidor SQL dump", - 'Backup Database' => "Còpia de seguretat de base de dades", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "El teu navegador sembla molt antiga i no és compatible amb totes les característiques necessàries per executar MyWebSQL.", - 'Try using a newer version of the browser to run this application.' => "Intenta fer servir una versió més recent del navegador per executar aquesta aplicació.", - - // text used on various screens in the interface - 'Visit Project website' => "Visiteu el lloc web del projecte", - 'Version' => "versió", - 'Loading' => "Carregant", - 'Quick Edit Options' => "Opcions d'edició ràpida", - 'Press {{KEY}} to set NULL' => "Premeu {{KEY}} per establir NULL", - 'MySQL Server' => "MySQL Server", - 'Logged in as: {{USER}}' => "Connectat com: {{usuari}}", - 'Results' => "Resultats", - 'Messages' => "Missatges", - 'Information' => "Informació", - 'History' => "Història", - 'There are no results to show in this view' => "No hi ha resultats per mostrar en aquesta vista", - 'Refresh results' => "Actualitzar resultats", - 'Please wait' => "Si us plau, espereu", - 'Query All' => "Totes les consultes", - 'Query' => "Consulta", - 'Add Record' => "Afegir Registre", - 'Delete Record(s)' => "Eliminar registre (s)", - 'Update Record(s)' => "Actualització de Registre (s)", - 'Generate SQL' => "Generar SQL", - 'Database name' => "Base de dades de nom", - 'Select database after creation' => "Seleccioneu la base de dades després de la creació", - 'Database connection failed to the server' => "connexió de base de dades no el servidor", - 'Host' => "Amfitrió", - 'User' => "Usuari", - 'Select a database to begin' => "Seleccioneu una base de dades per començar", - 'Select/unselect All records' => "Seleccionar / deseleccionar tots els registres", - 'Primary key column' => "columna de clau primària", - 'Unique key column' => "Clau única columna", - 'Showing records {{START}} - {{END}}' => "Mostrant registres de {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "Es mostren primer {{MAX}} només els registres", - '1 query successfully executed' => "Una consulta executada amb èxit", - '{{NUM}} queries successfully executed' => "{{Nombre}} consultes executat amb èxit", - '{{NUM}} record(s) were affected' => "{{Número}} registre (s) es van veure afectades", - '{{NUM}} record(s) updated' => "{{Número}} registre (s) actualitzat", - 'Error occurred while executing the query' => "S'ha produït un error en executar la consulta", - '{{NUM}} queries failed to execute' => "{{Nombre}} consultes no es va poder executar", - 'Click to view/edit column data [{{NUM}} Bytes]' => "Prem aquí per veure i editar dades de la columna [{{nombre}} bytes]", - 'Blob data is not editable' => "dades Blob no és editable", - 'Blob data saved' => "dades Blob guardat", - 'Failed to save blob data' => "No s'ha pogut guardar les dades blob", - 'The process with id [{{PID}}] was killed' => "El procés amb l'ID [{{PID}}] va ser assassinat", - 'No such process [id = {{PID}}]' => "No existeix el procés [id = {{PID}}]", - 'Select a process and click the button to kill the process' => "Seleccioneu un procés i feu clic al botó per matar el procés", - 'Process ID' => "Procés d'identificació", - 'Command' => "Comando", - 'Time' => "Temps", - 'Info' => "Info", - 'Kill Process' => "Kill Process", - 'Failed to get process list' => "No s'ha pogut obtenir la llista de processos", - 'The command executed successfully' => "La comanda s'ha executat correctament", - 'Invalid server configuration' => "Configuració del servidor no vàlid", - 'Invalid Credentials' => "No vàlid de Verificació de Poders", - 'New database successfully created' => "Nova base de dades creat amb èxit", - 'File upload failed. Please try again' => "Càrrega de fitxers no. Si us plau-ho a provar", - 'No queries were executed during import' => "N les consultes van ser executats durant la importació", - 'Maximum upload filesize is {{SIZE}}' => "Màxim de càrrega mida de l'arxiu és {{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "tipus d'arxius admesos / extensions són: ({{llista}})", - 'Database summary' => "Base de dades de resum", - 'Server Variables' => "Variables de servidor", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "Qualsevol objecte existent amb el mateix nom es cau manualment abans d'executar l'ordre de creació", - 'Only create commands are accepted' => "Només crear comandes són acceptats", - 'User ID' => "ID d'usuari", - 'Password' => "Contrasenya", - 'Login' => "Inicia sessió", - 'Create new database object' => "Crear un objecte de base de dades nova", - 'Enter command for object creation' => "Introduïu la comanda per a la creació d'objectes", - 'Submit' => "Enviar", - 'Show blob data as: {{TYPE}}' => "Mostrar dades blob com: {{TIPUS}}", - 'Blob data for column {{NAME}}' => "Blob de dades per a la columna {{NOM}}", - 'Create command for {{TYPE}} {{NAME}}' => "Creu comandaments de {{TIPUS}} {{NOM}}", - 'Table Engine (type)' => "Taula del motor (tipus)", - 'Change Table Type' => "Canviar tipus de taula", - 'The requested page is not available on the server' => "La pàgina demanada no està disponible al servidor", - 'Error' => "Error", - 'It appears that you attempted to submit an invalid request to the server' => "Sembla que ha intentat presentar una sol.licitud vàlida per al servidor", - 'The request has been denied. Reloading the page might solve the problem' => "La petició ha estat denegada. Recarrega la pàgina podria resoldre el problema", - 'Access Denied' => "Accés denegat", - 'Help' => "Ajuda", - 'To see most up-to-date help contents, please visit {{LINK}}' => "Per veure el contingut més actualitzat ajuda, si us plau, visiteu {{LINK}}", - 'It appears that your browser session has expired' => "Sembla que en la teva sessió de navegació ha caducat", - 'Please refresh the webpage to re-login' => "Si us plau, actualitzeu la pàgina web per tornar a entrar", - 'Table information' => "Taula d'informació de", - 'Edit' => "Edita", - 'Save' => "Guardar", - 'Either the database is empty, or there was an error retrieving list of database objects' => "O bé la base de dades està buida, o hi va haver un error en recuperar la llista dels objectes de base de dades", - 'Please try closing and re-opening this dialog again' => "Si us plau, intenti tancar i tornar a obrir aquest diàleg de nou", - 'Structure' => "Estructura", - 'Table Data' => "Taula de dades", - 'Structure and Table Data' => "Estructura i la taula de dades", - 'Options' => "Opcions", - 'Set Auto increment field values to NULL' => "Ajust automàtic increment dels valors de camp en NULL", - 'Add DROP command before create statements' => "Afegiu DROP comanda abans de crear estats", - 'Export' => "Exportació", - 'Import' => "Importar", - 'Export Database' => "Exportació de bases de dades", - 'Export Table' => "Exportar taula", - 'Server information' => "Servidor d'informació", - 'Server' => "Servidor", - 'Version comment' => "Versió comentari", - 'Character sets' => "Els conjunts de caràcters", - 'Server character set' => "Servidor de joc de caràcters", - 'Client character set' => "Client de joc de caràcters", - 'Database character set' => "Base de dades de caràcters", - 'Results character set' => "Resultats de joc de caràcters", - 'Export As' => "Exportar com", - 'Insert Statements' => "Inseriu declaracions", - 'Include field names in query' => "Incloure noms de camp a la consulta", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Text sense format (un registre per línia)", - 'Fields separated by:' => "Camps separats per:", - 'Export Results' => "Exportar els resultats de", - 'Select SQL batch file to import' => "Seleccioneu el fitxer per lots de SQL per a importar", - 'Continue processing even if error occurs' => "Continuar amb la tramitació, fins i tot si l'error es produeix", - 'Basic Information' => "Informació bàsica", - 'Table Properties' => "Propietats de la taula", - 'Table Name' => "Nom de taula", - 'Field Name' => "Nom del camp", - 'Data Type' => "Tipus de dades", - 'Length' => "Longitud", - 'Default value' => "Valor per defecte", - 'Unsigned' => "No signat", - 'Zero Fill' => "Zero farcit", - 'Primary Key' => "Clau principal", - 'Auto Increment' => "Increment automàtic", - 'Not NULL' => "No NULL", - 'Character Set' => "Conjunt de caràcters", - 'Collation' => "Col · lació", - 'Comment' => "Comentari", - 'Waiting for table information to be submitted' => "¡Lloc per a una informació de la taula que es presentarà", - 'Add field' => "Afegeix camp", - 'Delete selected field' => "camp seleccionat Eliminar", - 'Clear Table Information' => "Esborrar la taula d'informació", - 'List of values' => "Llista de valors", - 'Query Results' => "Resultats de la consulta", - 'Data for {{TABLE}}' => "Les dades de {{TABLE}}", - 'Select tables to be analyzed/repaired' => "Seleccioneu les taules a analitzar / reparar", - 'Operation to perform' => "Operació a realitzar", - 'Analyze' => "Analitzar", - 'Check' => "Comproveu", - 'Optimize' => "Optimitzar", - 'Repair' => "Reparació", - 'Skip Binary logging' => "Saltar registre binari", - 'Default' => "Per defecte", - 'Quick' => "Ràpida", - 'Fast' => "Ràpid", - 'Medium' => "Medi", - 'Extended' => "Estès", - 'Changed' => "Canviat", - 'Use Frm files (MyISAM tables)' => "Utilitzeu FRM, arxius (taules MyISAM)", - 'User Information' => "Informació de l'usuari", - 'Global Privileges' => "Mundial de privilegis", - 'Database Privileges' => "Base de dades de privilegis", - 'Import File' => "Importa fitxer", - 'Index Manager' => "Index Manager", - 'Edit table structure' => "Edita estructura de la taula", - 'Save All Changes' => "Desa tots els canvis", - 'Changes are not saved until you press [Save All Changes]' => "Els canvis no es guarden fins que es prem [Desa els canvis]", - 'Field Length' => "Camp Llarg", - 'Select objects to include in export' => "Selecció d'objectes per incloure en l'exportació", - 'Export type' => "Tipus exportació", - 'Select All/None' => "Tots / Cap", - 'Add User' => "Afegir usuari", - 'Update User' => "Actualitzar usuari", - 'Delete selected User' => "Eliminar seleccionats usuari", - 'Remove Password' => "Eliminar contrasenya", - 'Select tables to search' => "Seleccioneu les taules de cerca", - 'Search Options' => "Opcions de cerca", - 'Search in following field types' => "Cercar en els següents tipus de camp", - 'Numeric Fields' => "Els camps numèrics", - 'Character Fields' => "Els camps de caràcters", - 'Text Fields' => "Camps de text", - 'Date/Time Fields' => "Camps Data / Hora", - 'Comparison Type' => "Comparació de tipus", - 'Text to search' => "Text a cercar", - 'Search' => "Cerca", - 'Search Results' => "Resultats de la cerca", - 'Number of matches' => "Nombre de partits", - 'Search results for {{KEYWORD}} in the database' => "Resultats de la cerca per {{KEYWORD}} a la base de dades", - '{{NUM}} match(es)' => "{{NUM}} partit (s)", - 'Copy query to editor' => "Còpia de consultes a l'editor", - 'Done' => "Fet", - 'SQL Editor' => "SQL Editor", - 'Create Copy' => "Crear còpia", - 'Minimize All' => "Minimitzar totes les", - 'Copy Record(s)' => "Còpia del registre (s)", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "Separats per comes (CSV per Excel)", - 'Select data file to import' => "Seleccioneu el fitxer de dades per importar", - 'Select table for data import' => "Seleccioneu la taula per a la importació de dades", - 'First line contains column names' => "La primera línia conté els noms de columna", - 'Select objects to operate upon' => "Seleccioneu els objectes que operen sobre", - 'Operations to perform' => "Operacions a realitzar", - 'Add prefix string to name' => "Afegir cadena de prefix per nomenar", - 'Delete prefix string from name' => "Eliminar cadena de prefix del nom", - 'Command text' => "Comando de text", - 'DROP selected database objects' => "DROP objectes seleccionats de bases de dades", - 'Batch operation results' => "Resultats d'operació per lots", - 'Operation' => "Operació", - 'Status' => "Estat", - '{{NUM}} queries generated' => "{{NUM}} consultes generades", - 'Please select one or more operations to perform' => "Si us plau, seleccioneu un o més de les operacions per dur a terme", - 'Quick Search' => "Cerca ràpida", - '{{NAME}} client library is not installed' => "{{NAME}} biblioteca client no està instal · lat", - '{{NAME}} extension is not installed' => "{{NAME}} extensió no està instal · lat", - 'SQLite database folder is inaccessible or not writable' => "Carpeta de base de dades SQLite és inaccessible o no es pot escriure", - 'Maximize/Restore Results Pane' => "Maximitzar / Restaurar panell de resultats", - 'Select databases to operate upon' => "Seleccionar les bases per operar a", - 'DROP selected databases' => "DROP bases de dades seleccionades", - 'The following operation is irreversible' => "La següent operació és irreversible", - 'Potential data loss might occur' => "Possible pèrdua de dades pot passar", - 'Add TRUNCATE command before insert statements' => "Afegir TRUNCATE comanda abans de les declaracions d'inserció", - 'Select objects to include in backup' => "Seleccioneu els objectes per incloure en el respatller", - 'Backup folder does not exist or is not writable' => "Carpeta de còpia de seguretat no existeix o no es pot escriure", - 'Backup type' => "Tipus de còpia de seguretat", - 'Database backup successfully created' => "Còpia de seguretat de base de dades creada amb èxit", - 'Failed to create database backup' => "Error en crear còpia de seguretat de base de dades", - 'Generate Bulk insert statements' => "Generar instruccions BULK INSERT", - 'Maximum size of SQL statement' => "Mida màxima de la declaració SQL", - 'Show record count with table names' => "Mostra nombre de registres amb noms de taula", - 'Sort Table listing by' => "Ordenar el llistat de la taula", - 'Name' => "Nom", - 'Last Update Time' => "Last Time Update", - 'Maximum records to display in result set' => "Capacitat màxima de registres que es mostraran en conjunt de resultats", - 'Show popup dialog for editing large text data' => "Mostra quadre de diàleg emergent per a l'edició de dades de grans dimensions del text", - 'Miscellaneous' => "Divers", - 'Reset all confirmation dialogs' => "Reajustar tots els diàlegs de confirmació", - 'Record Editing' => "Edició Record", - 'Exclude Table type' => "Excloure Tipus de Taula", - 'Exclude Table Character set' => "Excloure Joc de caràcters Taula", - 'Backup filename' => "Nom de l'arxiu de còpia de seguretat", - 'Invalid filename format' => "Format de nom de fitxer no vàlid", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "tots els", - 'all selected' => "tots seleccionats", - 'An error occured while refreshing the object list.' => "S'ha produït un error en actualitzar la llista d'objectes.", - 'Are you sure you want to clear all field information from table?' => "Està segur de voler esborrar tota la informació de camp de la taula?", - 'Are you sure you want to delete this user account?' => "Esteu segur que voleu suprimir aquest compte d'usuari?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "Esteu segur que voleu eliminar tots els objectes de la base de dades de {{NAME}}?", - 'Are you sure you want to DROP selected objects?' => "Esteu segur de voler eliminar els objectes seleccionats?", - 'Are you sure you want to DROP the database {{NAME}}?' => "Esteu segur que voleu afegir la base de dades {{NAME}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "Esteu segur que voleu afegir aquest objecte? {{NOM}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "Esteu segur que voleu executar {{SELECTED}} consultes?", - 'Are you sure you want to logout?' => "Segur que vols sortir?", - 'Are you sure you want to truncate the table {{NAME}}?' => "Esteu segur que voleu truncar la taula de {{NAME}}?", - 'Blob Data [{{SIZE}}]' => "Les dades Blob [{{SIZE}}]", - 'Cancel' => "Cancel", - 'Check for Updates' => "Cerca actualitzacions", - 'Clear command history?' => "Esborrar historial de comandaments?", - 'Close' => "Tancar", - 'Confirm Action' => "Confirmar l'acció", - 'Confirm and do not ask me again about this choice' => "Confirmar i no em torni a preguntar sobre aquesta opció", - 'Copy Object' => "Còpia d'objectes", - 'Create Database' => "Crear base de dades", - 'Create Primary Index on this field' => "Crear índex principal en aquest camp", - 'Databases' => "Bases de dades", - 'Default value [Use quotes to specify string values]' => "Valor per defecte [Feu servir cometes per especificar els valors de cadena]", - 'Disallow NULL values in Field' => "No permetre valors NULL en el camp", - 'Enter new index name' => "Escriviu el nom nou índex", - 'Enter new name for the database object' => "Introduir un nou nom per a l'objecte de base de dades", - 'Enter the text to search in database' => "Introduïu el text per cercar a la base de dades", - 'Error' => "Error", - 'Events' => "Esdeveniments", - 'Execute query' => "Executar la consulta", - 'Exports results' => "Les exportacions resultats", - 'Failed to refresh the results.' => "No s'ha pogut actualitzar els resultats.", - 'Field Datatype' => "Camp de tipus de dades", - 'Field Name' => "Nom del camp", - 'Field value is Auto Incremented' => "El valor del camp s'incrementa en Auto", - 'Functions' => "Funcions", - 'Indexes Updated' => "Índexs d'Actualització", - 'Maximum Length of field value' => "Longitud màxima del camp de valor", - 'Navigation Error. Try reloading the page' => "Error de navegació. Intenta tornar a carregar la pàgina", - 'New settings saved and applied' => "Nova configuració de guardar i aplicar", - 'New version is available' => "La nova versió està disponible", - 'Next' => "Següent", - 'No' => "N", - 'No Table selected' => "N la taula seleccionada", - 'Not enough room to show this pane.' => "No hi ha prou espai per mostrar aquest panell.", - 'OK' => "Acceptar", - 'One or more field information is incomplete' => "Un o més informació de camp està incompleta", - 'Open' => "Obert", - 'Operation failed' => "Error en l'operació", - 'Pad field values with leading zeros' => "Pad valors de camp amb zeros a l'esquerra", - 'Pane' => "Panell", - 'Passwords do not match' => "Les contrasenyes no coincideixen", - 'Pin' => "Pin", - 'Please select one or more operations to perform' => "Si us plau, seleccioneu un o més de les operacions per dur a terme", - 'Please type in one or more queries in the SQL editor!' => "Si us plau, escriviu una o més consultes a l'editor de SQL!", - 'Please wait...' => "Si us plau esperi ...", - 'Previous' => "Anterior", - 'Procedures' => "Procediments", - 'Prompt' => "Del sistema", - 'Refresh results' => "Actualitzar resultats", - 'Refreshing object list' => "Actualització de llista d'objectes", - 'Rename Object' => "Canviar el nom d'objectes", - 'Resize' => "Canviar la mida", - 'Results page:' => "Pàgina de resultats:", - 'Select a database to view privileges for the user' => "Seleccioneu una base de dades per veure els privilegis per a l'usuari", - 'Select an index to view / edit its details' => "Seleccionar una llista per veure i editar els seus detalls", - 'Select at least one field type for searching' => "Seleccioneu almenys un tipus de camp per a la recerca", - 'Select objects to operate upon' => "Seleccioneu els objectes que operen sobre", - 'selector' => "selector de", - 'Slide Open' => "Obrir Slide", - 'Table information requires at least one valid field' => "Taula d'informació requereix com a mínim un camp vàlid", - 'Table name is required' => "Nom de la taula és necessari", - 'Table successfully created' => "Taula creat amb èxit", - 'Table successfully modified' => "Quadre modificat correctament", - 'Tables' => "Taules", - 'Text Data [{{SIZE}}]' => "Les dades de text [{{SIZE}}]", - 'There is no record in the results to export' => "No hi ha registre dels resultats de l'exportació", - 'This attribute is not required for selected field type' => "Aquest atribut no és necessari per al tipus de camp seleccionat", - 'Triggers' => "Desencadenants", - 'Un-Pin' => "Un-Pin", - 'Unsigned numbered field only' => "Sense signar número únic camp", - 'Update check failed' => "Actualitzar Error en la comprovació", - 'User information is incomplete or invalid' => "Usuari de la informació és incompleta o no és vàlid", - 'User Manager' => "Administrador d'usuaris", - 'Views' => "Vistes", - 'WARNING' => "ADVERTÈNCIA", - 'Yes' => "Sí", - 'You have the latest version' => "Vostè té l'última versió", - - ); -?> diff --git a/lang/cs.php b/lang/cs.php deleted file mode 100644 index 1207764..0000000 --- a/lang/cs.php +++ /dev/null @@ -1,463 +0,0 @@ - "Využití databáze", - 'Drop Database' => "Drop databáze", - 'Empty Database' => "Prázdné databáze", - 'Drop all tables from this database' => "Zrušte všechny tabulky z této databáze", - 'Select statement' => "Vyberte prohlášení", - 'Insert statement' => "INSERT", - 'Update statement' => "Aktualizace výkazu", - 'Describe' => "Popsat", - 'Show create command' => "Zobrazit vytvořit příkazem", - 'View data' => "Zobrazení dat", - 'Alter Table' => "Alter Table", - 'Indexes' => "Indexy", - 'Engine Type' => "Typ motoru", - 'More operations' => "Více operací", - 'Truncate' => "Oklestit", - 'Drop' => "Pokles", - 'Rename' => "Přejmenovat", - 'Export table data' => "Export dat tabulky", - 'Create Table' => "Vytvořit tabulku", - 'Create View' => "Vytvořit Pohled", - 'Create Procedure' => "Vytvořit řádu", - 'Create Function' => "Vytvoření funkce", - 'Create Trigger' => "Vytvořit spouštěcí", - 'Create Event' => "Vytvořit událost", - 'Show/Hide Panel' => "Zobrazit / skrýt panel", - 'Show/Hide Header' => "Zobrazit / skrýt záhlaví", - 'Copy all queries to clipboard' => "Zkopírovat všechny dotazy do schránky", - 'Clear history' => "Vymazat historii", - 'Copy Column values' => "Kopírovat Sloupec hodnoty", - 'Copy to clipboard' => "Kopírování do schránky", - 'Generate SQL Filter' => "Generovat SQL filtr", - 'Database Manager' => "Database Manager", - 'Manage databases' => "Správa databází", - - // main menu related text - 'Database' => "Databáze", - 'Refresh' => "Aktualizovat", - 'Refresh database object list' => "Obnovit seznam databázových objektů", - 'Create new' => "Vytvořit nový", - 'Export' => "Export", - 'Export database to external file' => "Export databáze do externího souboru", - 'Objects' => "Objekty", - 'Create Table' => "Vytvořit tabulku", - 'Create a new table in the database' => "Vytvoření nové tabulky v databázi", - 'Create View' => "Vytvořit Pohled", - 'Create a new view in the database' => "Vytvoření nového zobrazení v databázi", - 'Create Stored Procedure' => "Vytvoření uložené procedury", - 'Create a new stored procedure in the database' => "Vytvořit nový uložené procedury v databázi", - 'Create Function' => "Vytvoření funkce", - 'Create a new user defined function in the database' => "Vytvořit nový uživatelem definované funkce v databázi", - 'Create Trigger' => "Vytvořit spouštěcí", - 'Create a new trigger in the database' => "Vytvořit nový spoušť v databázi", - 'Create Event' => "Vytvořit událost", - 'Create a new event in the database' => "Vytvoření nové události do databáze", - 'Data' => "Data", - 'Import batch file' => "Import dávkový soubor", - 'Import multiple queries from batch file' => "Import více dotazů z dávkového souboru", - 'Export database' => "Export databáze", - 'Export database to batch file as sql dump' => "Export databáze do dávkového souboru sql výpisu", - 'Export current results' => "Exportovat aktuální výsledky", - 'Export query results to clipboard or files' => "Export výsledků dotazu do schránky nebo souborů", - 'Tools' => "Nástroje", - 'Process Manager' => "Process Manager", - 'View and manage database processes' => "Zobrazit a spravovat databáze procesů", - 'Repair Tables' => "Opravy tabulky", - 'Analyze and repair database tables' => "Analyzovat a tabulky oprav databáze", - 'User Manager' => "Správce uživatelů", - 'Manage database users' => "Správa databáze uživatelů", - 'Search in Database' => "Vyhledávání v databázi", - 'Search for text in the database' => "Vyhledat text v databázi", - 'Information' => "Informace", - 'Server/Connection Details' => "Server / Detaily připojení", - 'View server configuration' => "Konfigurace View serveru", - 'View server and connection details' => "Zobrazit servery a připojení podrobnosti", - 'Server Variables' => "Proměnné serveru", - 'Database Summary' => "Databáze Shrnutí", - 'View current database summary stats' => "Zobrazit aktuální statistiky databáze shrnutí", - 'Interface' => "Rozhraní", - 'Options' => "Možnosti", - 'Configure application options' => "Konfigurovat možnosti použití", - 'UI Theme' => "Téma UI", - 'Database Objects' => "Databáze objektů", - 'Toggle Object Viewer' => "Přepnout Prohlížeč objektů", - 'Help contents' => "Nápověda obsah", - 'Learn the basics of using MyWebSQL' => "Naučte se základy používání MyWebSQL", - 'QuickStart Tutorials' => "QuickStart tutoriály", - 'See quick hands-on tutorial of MyWebSQL interface' => "Více informací naleznete rychle hands-o návod na MyWebSQL rozhraní", - 'Online documentation' => "On-line dokumentace", - 'View online documentation on project website' => "Zobrazit online dokumentace na stránkách projektu", - 'Request a Feature' => "Žádost funkcí", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "Pokud chcete, aby vaše nejoblíbenější funkci být součástí MyWebSQL, klikněte prosím zde informovat o tom", - 'Report a Problem' => "Zpráva o problému", - 'Check for updates' => "Zkontrolovat aktualizace", - 'Check for updated versions of the application online' => "Zkontrolujte, zda nejsou k dispozici aktualizované verze aplikace on-line", - 'Logout' => "Odhlásit", - 'Logout from this session' => "Odhlásit se z tohoto zasedání", - 'Language' => "Jazyk", - 'SQL Editor' => "SQL Editor", - 'Toggle SQL Editor' => "Přepnout SQL Editor", - 'Experimental' => "Experimentální", - 'Import table data' => "Importu dat tabulky", - 'Import table data from external file' => "Import dat z externího souboru tabulky", - 'Batch operations' => "Dávkové operace", - 'Perform one or more batch operations on database' => "Proveďte jeden nebo více dávkové operace na databázi", - 'Create a new schema in the database' => "Vytvořit nové schéma v databázi", - 'Create Schema' => "Vytvořit schéma", - 'Table Description' => "Tabulka Popis", - 'Database Manager' => "Database Manager", - 'Manage databases' => "Správa databází", - 'Backup database on the server as SQL dump' => "Backup databáze na serveru jako skládky SQL", - 'Backup Database' => "Backup Database", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "Váš prohlížeč se zdá být velmi starý, a nepodporuje všechny funkce potřebné ke spuštění MyWebSQL.", - 'Try using a newer version of the browser to run this application.' => "Zkuste použít novější verzi prohlížeče pro spuštění této aplikace", - - // text used on various screens in the interface - 'Visit Project website' => "Navštivte internetové stránky projektu", - 'Version' => "verze", - 'Loading' => "Nakládání", - 'Quick Edit Options' => "Quick Edit Možnosti", - 'Press {{KEY}} to set NULL' => "Stisknutím tlačítka {{KEY}}} nastavit NULL", - 'MySQL Server' => "MySQL server", - 'Logged in as: {{USER}}' => "Přihlášen jako: {{USER}}", - 'Results' => "Výsledky", - 'Messages' => "Zprávy", - 'Information' => "Informace", - 'History' => "Historie", - 'There are no results to show in this view' => "Nejsou žádné výsledky v tomto zobrazení", - 'Refresh results' => "Aktualizovat výsledky", - 'Please wait' => "Prosím, vyčkejte", - 'Query All' => "Všechny dotaz", - 'Query' => "Dotaz", - 'Add Record' => "Přidat záznam", - 'Delete Record(s)' => "Odstranit záznam (y)", - 'Update Record(s)' => "Aktualizovat záznam (y)", - 'Generate SQL' => "Generovat SQL", - 'Database name' => "Název databáze", - 'Select database after creation' => "Vyberte databázi po vytvoření", - 'Database connection failed to the server' => "Připojení k databázi se nezdařilo k serveru", - 'Host' => "Hostitelské", - 'User' => "Uživatel", - 'Select a database to begin' => "Vyberte databázi začít", - 'Select/unselect All records' => "Vybrat / odznačení všech záznamů", - 'Primary key column' => "Sloupec primárního klíče", - 'Unique key column' => "Unikátní klíčový sloupec", - 'Showing records {{START}} - {{END}}' => "Zobrazují se záznamy {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "Zobrazeno první {{MAX}} záznamy pouze", - '1 query successfully executed' => "1 dotaz úspěšně proveden", - '{{NUM}} queries successfully executed' => "{{NUM}} dotazy úspěšně proveden", - '{{NUM}} record(s) were affected' => "{{NUM}} záznam (y) byl ovlivněn", - '{{NUM}} record(s) updated' => "{{NUM}} záznam (y) aktualizované", - 'Error occurred while executing the query' => "Došlo k chybě při spuštění dotazu", - '{{NUM}} queries failed to execute' => "{{NUM}} dotazy se nepodařilo spustit", - 'Click to view/edit column data [{{NUM}} Bytes]' => "Klikněte pro zobrazení / editaci dat sloupec [{{NUM}} Bytes]", - 'Blob data is not editable' => "BLOB dat nelze upravovat", - 'Blob data saved' => "Blob dat uložených", - 'Failed to save blob data' => "Nepodařilo se uložit blob data", - 'The process with id [{{PID}}] was killed' => "Proces s id [{{PID}}] byl zabit", - 'No such process [id = {{PID}}]' => "Žádný takový proces [id = {{PID}}]", - 'Select a process and click the button to kill the process' => "Vyberte procesu a klikněte na tlačítko zabít proces", - 'Process ID' => "ID procesu", - 'Command' => "Příkaz", - 'Time' => "Čas", - 'Info' => "Info", - 'Kill Process' => "Kill proces", - 'Failed to get process list' => "Nepodařilo se získat seznam procesů", - 'The command executed successfully' => "Příkaz úspěšně proveden", - 'Invalid server configuration' => "Neplatná konfigurace serveru", - 'Invalid Credentials' => "Neplatných pověření", - 'New database successfully created' => "Nová databáze úspěšně vytvořena", - 'File upload failed. Please try again' => "Nahrání souboru se nezdařilo. Prosím zkuste to znovu", - 'No queries were executed during import' => "Žádné dotazy nebyly provedeny v průběhu importu", - 'Maximum upload filesize is {{SIZE}}' => "Maximální velikost souboru je upload {{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "Podporované typy souborů / rozšíření jsou: ({{LIST}})", - 'Database summary' => "Databáze shrnutí", - 'Server Variables' => "Proměnné serveru", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "Všechny existující objekt se stejným názvem by mělo být upuštěno ručně před spuštěním vytvoření příkazu", - 'Only create commands are accepted' => "Pouze vytvářet příkazy jsou přijímány", - 'User ID' => "ID uživatele", - 'Password' => "Heslo", - 'Login' => "Přihlásit se", - 'Create new database object' => "Vytvoření nové databáze objektů", - 'Enter command for object creation' => "Zadejte příkaz k vytvoření objektu", - 'Submit' => "Odeslat", - 'Show blob data as: {{TYPE}}' => "Zobrazit blob údaje: {{TYPE}}", - 'Blob data for column {{NAME}}' => "Blob údaje pro sloupce {{NAME}}", - 'Create command for {{TYPE}} {{NAME}}' => "Příkaz pro vytvoření {{TYPE}} {{NAME}}", - 'Table Engine (type)' => "Tabulka Motor (typ)", - 'Change Table Type' => "Tabulka změna typu", - 'The requested page is not available on the server' => "Požadovaná stránka není k dispozici na serveru", - 'Error' => "Chyba", - 'It appears that you attempted to submit an invalid request to the server' => "Zdá se, že jste se pokusili podat neplatný požadavek na server", - 'The request has been denied. Reloading the page might solve the problem' => "Žádost byla zamítnuta. Překládky stránka může vyřešit problém", - 'Access Denied' => "Přístup byl odepřen", - 'Help' => "Nápověda", - 'To see most up-to-date help contents, please visit {{LINK}}' => "Chcete-li vidět nejvíce up-to-data obsah nápovědy, navštivte {{LINK}}", - 'It appears that your browser session has expired' => "Zdá se, že váš prohlížeč sezení vypršelo", - 'Please refresh the webpage to re-login' => "Prosím aktualizujte webové stránky na re-přihlášení", - 'Table information' => "Tabulka informace", - 'Edit' => "Upravit", - 'Save' => "Uložit", - 'Either the database is empty, or there was an error retrieving list of database objects' => "Buď je databáze prázdná, nebo došlo k chybě načítání seznamu databázových objektů", - 'Please try closing and re-opening this dialog again' => "Prosím, zkuste uzavírací a re-otevření tohoto dialogu", - 'Structure' => "Struktura", - 'Table Data' => "Tabulka dat", - 'Structure and Table Data' => "Struktura a Tabulka dat", - 'Options' => "Možnosti", - 'Set Auto increment field values to NULL' => "Set Auto hodnoty přírůstku pole na hodnotu NULL", - 'Add DROP command before create statements' => "Přidat DROP Příkaz před vytvářet závěrky", - 'Export' => "Export", - 'Import' => "Import", - 'Export Database' => "Export databáze", - 'Export Table' => "Export tabulky", - 'Server information' => "Server informací", - 'Server' => "Server", - 'Version comment' => "Verze komentář", - 'Character sets' => "Znakových sad", - 'Server character set' => "Server znaková sada", - 'Client character set' => "Klient znaková sada", - 'Database character set' => "Databáze znaková sada", - 'Results character set' => "Výsledky znaková sada", - 'Export As' => "Exportovat jako", - 'Insert Statements' => "INSERT", - 'Include field names in query' => "Zahrnout názvy polí v dotazu", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Prostý text (jeden záznam na řádek)", - 'Fields separated by:' => "Pole jsou oddělena:", - 'Export Results' => "Export Výsledky", - 'Select SQL batch file to import' => "Vyberte SQL dávkový soubor, který chcete importovat", - 'Continue processing even if error occurs' => "Pokračovat ve zpracování, i když dojde k chybě", - 'Basic Information' => "Základní informace", - 'Table Properties' => "Vlastnosti tabulky", - 'Table Name' => "Tabulka Name", - 'Field Name' => "Název pole", - 'Data Type' => "Typ dat", - 'Length' => "Délka", - 'Default value' => "Výchozí hodnota", - 'Unsigned' => "Nepodepsaný", - 'Zero Fill' => "Zero Vyplňte", - 'Primary Key' => "Primární klíč", - 'Auto Increment' => "Auto Přírůstek", - 'Not NULL' => "Není NULL", - 'Character Set' => "Znaková sada", - 'Collation' => "Porovnání", - 'Comment' => "Komentář", - 'Waiting for table information to be submitted' => "Čekání na stůl informace mají být předloženy", - 'Add field' => "Přidat pole", - 'Delete selected field' => "Smazat vybrané oblasti", - 'Clear Table Information' => "Tabulka jasné informace", - 'List of values' => "Seznam hodnot", - 'Query Results' => "Výsledky dotazu", - 'Data for {{TABLE}}' => "Data pro {{TABLE}}", - 'Select tables to be analyzed/repaired' => "Vyberte tabulky k analýze / opravit", - 'Operation to perform' => "Operace provádět", - 'Analyze' => "Analyzovat", - 'Check' => "Zkontrolujte", - 'Optimize' => "Optimalizovat", - 'Repair' => "Opravy", - 'Skip Binary logging' => "Přeskočit binární protokolování", - 'Default' => "Výchozí", - 'Quick' => "Rychlý", - 'Fast' => "Rychle", - 'Medium' => "Střední", - 'Extended' => "Rozšířená", - 'Changed' => "Změněný", - 'Use Frm files (MyISAM tables)' => "Použití FRM soubory (MyISAM tabulek)", - 'User Information' => "Informace o uživateli", - 'Global Privileges' => "Globální Výsady", - 'Database Privileges' => "Databáze Výsady", - 'Import File' => "Import souborů", - 'Index Manager' => "Index Manager", - 'Edit table structure' => "Upravit strukturu tabulky", - 'Save All Changes' => "Uložit všechny změny", - 'Changes are not saved until you press [Save All Changes]' => "Změny nejsou uloženy, dokud tlačítko [Uložit všechny změny]", - 'Field Length' => "Délka pole", - 'Select objects to include in export' => "Vyberte objekty, aby do exportu", - 'Export type' => "Export typ", - 'Select All/None' => "Vybrat všechny nebo žádné", - 'Add User' => "Přidat uživatele", - 'Update User' => "Aktualizace uživatele", - 'Delete selected User' => "Smazat vybrané uživatele", - 'Remove Password' => "Odebrat heslo", - 'Select tables to search' => "Vyberte tabulky pro vyhledávání", - 'Search Options' => "Možnosti hledání", - 'Search in following field types' => "Hledat v následujících typů polí", - 'Numeric Fields' => "Číselná pole", - 'Character Fields' => "Znak pole", - 'Text Fields' => "Textových polí", - 'Date/Time Fields' => "Datum a čas pole", - 'Comparison Type' => "Srovnání typu", - 'Text to search' => "Text k vyhledávání", - 'Search' => "Vyhledávání", - 'Search Results' => "Výsledky vyhledávání", - 'Number of matches' => "Počet zápasů", - 'Search results for {{KEYWORD}} in the database' => "Výsledky hledání pro {{KEYWORD}} v databázi", - '{{NUM}} match(es)' => "{{NUM}} zápas (y)", - 'Copy query to editor' => "Kopii dotazu na editor", - 'Done' => "Hotovo", - 'SQL Editor' => "SQL Editor", - 'Create Copy' => "Vytvořit kopii", - 'Minimize All' => "Minimalizace všech", - 'Copy Record(s)' => "Kopírovat záznam (y)", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "Oddělené čárkami (CSV pro Excel)", - 'Select data file to import' => "Vyberte datový soubor, který chcete importovat", - 'Select table for data import' => "Vyberte tabulku pro import dat", - 'First line contains column names' => "První řádek obsahuje názvy sloupců", - 'Select objects to operate upon' => "Vyberte objekty, které působí na", - 'Operations to perform' => "Operace se provádějí", - 'Add prefix string to name' => "Přidat předponu řetězec na jméno", - 'Delete prefix string from name' => "Odstranit prefix řetězce z názvu", - 'Command text' => "Text příkazu", - 'DROP selected database objects' => "DROP vybraných databázových objektů", - 'Batch operation results' => "Výsledky Dávkový provoz", - 'Operation' => "Operace", - 'Status' => "Postavení", - '{{NUM}} queries generated' => "{{NUM}} dotáže vygenerována", - 'Please select one or more operations to perform' => "Prosím, vyberte jeden nebo více operací, k provedení", - 'Quick Search' => "Rychlé vyhledávání", - '{{NAME}} client library is not installed' => "{{NAME}} klientská knihovna není nainstalován", - '{{NAME}} extension is not installed' => "{{NAME}} rozšíření není nainstalován", - 'SQLite database folder is inaccessible or not writable' => "SQLite databáze Složka je nepřístupná nebo nelze zapisovat", - 'Maximize/Restore Results Pane' => "Maximalizovat / Obnovit podokna Výsledky", - 'Select databases to operate upon' => "Vyberte databází pracovat na", - 'DROP selected databases' => "DROP vybrané databáze", - 'The following operation is irreversible' => "Následující operace je nevratná", - 'Potential data loss might occur' => "Potenciální ztráta dat může dojít", - 'Add TRUNCATE command before insert statements' => "Přidat TRUNCATE příkazu před INSERT", - 'Select objects to include in backup' => "Vyberte objekty, které chcete zahrnout do zálohy", - 'Backup folder does not exist or is not writable' => "Backup složka neexistuje nebo není zapisovatelný", - 'Backup type' => "Typ zálohy", - 'Database backup successfully created' => "Zálohování databáze úspěšně vytvořen", - 'Failed to create database backup' => "Nepodařilo se vytvořit zálohu databáze", - 'Generate Bulk insert statements' => "Vytvořit Hromadné příkazy pro vložení", - 'Maximum size of SQL statement' => "Maximální velikost SQL příkazu", - 'Show record count with table names' => "Zobrazit počet záznamů s názvy tabulek", - 'Sort Table listing by' => "Seřadit podle Tabulkový výpis", - 'Name' => "Název", - 'Last Update Time' => "Čas poslední aktualizace", - 'Maximum records to display in result set' => "Maximální záznamy se zobrazí v sadě výsledků", - 'Show popup dialog for editing large text data' => "Zobrazit popup dialog pro editaci velkých textových dat", - 'Miscellaneous' => "Smíšený", - 'Reset all confirmation dialogs' => "Reset všech potvrzovací dialogy,", - 'Record Editing' => "Editace záznamu", - 'Exclude Table type' => "Vyloučit typ tabulky", - 'Exclude Table Character set' => "Vyloučit Tabulka znaková sada", - 'Backup filename' => "Zálohování souboru", - 'Invalid filename format' => "Neplatný formát souboru", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "všechny", - 'all selected' => "všechny vybrané", - 'An error occured while refreshing the object list.' => "Došlo k chybě při obnovování seznamu objektů.", - 'Are you sure you want to clear all field information from table?' => "Jste si jisti, že chcete vymazat všechny oblasti informací z tabulky?", - 'Are you sure you want to delete this user account?' => "Jste si jisti, že chcete smazat tento uživatelský účet?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "Jste si jisti, že chcete DROP všechny objekty z databáze {{NAME}}?", - 'Are you sure you want to DROP selected objects?' => "Jste si jisti, že chcete přesuňte vybrané předměty?", - 'Are you sure you want to DROP the database {{NAME}}?' => "Jste si jisti, že chcete DROP databázi {{NAME}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "Jste si jisti, že chcete kapka tento objekt? {{NAME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "Jste si jisti, že chcete spustit {{SELECTED}} dotazy?", - 'Are you sure you want to logout?' => "Jste si jisti, že chcete odhlásit?", - 'Are you sure you want to truncate the table {{NAME}}?' => "Jste si jisti, že chcete zkrátit tabulky {{NAME}}?", - 'Blob Data [{{SIZE}}]' => "Blob dat [{{SIZE}}]", - 'Cancel' => "Zrušit", - 'Check for Updates' => "Zkontrolovat aktualizace", - 'Clear command history?' => "Vymazat historii příkazů?", - 'Close' => "Zavřít", - 'Confirm Action' => "Potvrďte akci", - 'Confirm and do not ask me again about this choice' => "Potvrdit a neptejte se mě znovu o této volbě", - 'Copy Object' => "Kopírování objektů", - 'Create Database' => "Vytvoření databáze", - 'Create Primary Index on this field' => "Vytvořit primární index na tomto poli", - 'Databases' => "Databáze", - 'Default value [Use quotes to specify string values]' => "Výchozí hodnota [Použijte uvozovky zadat hodnoty řetězce]", - 'Disallow NULL values in Field' => "Zakázat NULL hodnoty v poli", - 'Enter new index name' => "Zadejte nový název indexu", - 'Enter new name for the database object' => "Zadejte nové jméno pro databázi objekt", - 'Enter the text to search in database' => "Zadejte text pro vyhledávání v databázi", - 'Error' => "Chyba", - 'Events' => "Události", - 'Execute query' => "Spustit dotaz", - 'Exports results' => "Vývoz výsledky", - 'Failed to refresh the results.' => "Nepodařilo se aktualizovat výsledky.", - 'Field Datatype' => "Pole datového typu", - 'Field Name' => "Název pole", - 'Field value is Auto Incremented' => "Hodnota pole je Auto zvyšuje", - 'Functions' => "Funkce", - 'Indexes Updated' => "Indexy Aktualizováno", - 'Maximum Length of field value' => "Maximální délka hodnoty pole", - 'Navigation Error. Try reloading the page' => "Chyba navigace. Zkuste stránku načíst znovu", - 'New settings saved and applied' => "Nové nastavení uložit a použít", - 'New version is available' => "Nová verze je k dispozici", - 'Next' => "Další", - 'No' => "Ne", - 'No Table selected' => "Tabulka č. vybraných", - 'Not enough room to show this pane.' => "Není dostatek místa pro zobrazení tohoto okna.", - 'OK' => "OK", - 'One or more field information is incomplete' => "Jeden nebo více poli informace je neúplná", - 'Open' => "Open", - 'Operation failed' => "Operace se nezdařila", - 'Pad field values with leading zeros' => "Pad hodnoty polí s úvodními nulami", - 'Pane' => "Podokno", - 'Passwords do not match' => "Hesla se neshodují", - 'Pin' => "Kolík", - 'Please select one or more operations to perform' => "Prosím, vyberte jeden nebo více operací, k provedení", - 'Please type in one or more queries in the SQL editor!' => "Prosím, zadejte jeden nebo více dotazů v editoru SQL!", - 'Please wait...' => "Čekejte prosím ...", - 'Previous' => "Předchozí", - 'Procedures' => "Postupy", - 'Prompt' => "Výzva", - 'Refresh results' => "Aktualizovat výsledky", - 'Refreshing object list' => "Osvěžující seznamu objektů", - 'Rename Object' => "Přejmenovat objekt", - 'Resize' => "Resize", - 'Results page:' => "Stránka s výsledky:", - 'Select a database to view privileges for the user' => "Vybrat databázi k zobrazení oprávnění pro uživatele", - 'Select an index to view / edit its details' => "Vyberte index zobrazit / upravit její detaily", - 'Select at least one field type for searching' => "Vyberte alespoň jedno pole pro vyhledávání zadejte", - 'Select objects to operate upon' => "Vyberte objekty, které působí na", - 'selector' => "volič", - 'Slide Open' => "Snímek Open", - 'Table information requires at least one valid field' => "Tabulka informací vyžaduje alespoň jeden platný pole", - 'Table name is required' => "Jméno tabulky je nutné", - 'Table successfully created' => "Tabulka úspěšně vytvořen", - 'Table successfully modified' => "Tabulka úspěšně změněna", - 'Tables' => "Tabulky", - 'Text Data [{{SIZE}}]' => "Textových dat [{{SIZE}}]", - 'There is no record in the results to export' => "Není tam žádný záznam ve výsledcích vyvážet", - 'This attribute is not required for selected field type' => "Tento atribut není povinný pro vybraný typ pole", - 'Triggers' => "Spouští", - 'Un-Pin' => "Un-Pin", - 'Unsigned numbered field only' => "Nepodepsané číslované pole pouze", - 'Update check failed' => "Aktualizace zjistit nepodařilo", - 'User information is incomplete or invalid' => "Informace o uživateli jsou neúplné nebo neplatné", - 'User Manager' => "Správce uživatelů", - 'Views' => "Zobrazení", - 'WARNING' => "VAROVÁNÍ", - 'Yes' => "Ano", - 'You have the latest version' => "Máte poslední verzi", - - ); -?> diff --git a/lang/da.php b/lang/da.php deleted file mode 100644 index 4c5760c..0000000 --- a/lang/da.php +++ /dev/null @@ -1,463 +0,0 @@ - "Brug Database", - 'Drop Database' => "Drop Database", - 'Empty Database' => "Tomme Database", - 'Drop all tables from this database' => "Drop alle tabeller fra denne database", - 'Select statement' => "Vælg erklæring", - 'Insert statement' => "Indsæt erklæring", - 'Update statement' => "Update erklæring", - 'Describe' => "Beskriv", - 'Show create command' => "Vis oprette kommando", - 'View data' => "Vis data", - 'Alter Table' => "Alter Table", - 'Indexes' => "Indekser", - 'Engine Type' => "Motor Type", - 'More operations' => "Flere operationer", - 'Truncate' => "Trunkere", - 'Drop' => "Drop", - 'Rename' => "Omdøb", - 'Export table data' => "Eksport tabeldata", - 'Create Table' => "Opret tabel", - 'Create View' => "Opret visning", - 'Create Procedure' => "Opret Procedure", - 'Create Function' => "Opret Funktion", - 'Create Trigger' => "Opret Trigger", - 'Create Event' => "Opret begivenhed", - 'Show/Hide Panel' => "Vis / skjul Panel", - 'Show/Hide Header' => "Vis / skjul header", - 'Copy all queries to clipboard' => "Kopier alle forespørgsler til udklipsholderen", - 'Clear history' => "Ryd historik", - 'Copy Column values' => "Kopier kolonneværdier", - 'Copy to clipboard' => "Kopier til udklipsholder", - 'Generate SQL Filter' => "Generér SQL Filter", - 'Database Manager' => "Database manager", - 'Manage databases' => "Administrere databaser", - - // main menu related text - 'Database' => "Database", - 'Refresh' => "Genopfriske", - 'Refresh database object list' => "Genopfriske database objekt liste", - 'Create new' => "Opret ny", - 'Export' => "Eksport", - 'Export database to external file' => "Eksport database til ekstern fil", - 'Objects' => "Objekter", - 'Create Table' => "Opret tabel", - 'Create a new table in the database' => "Oprette en ny tabel i databasen", - 'Create View' => "Opret visning", - 'Create a new view in the database' => "Oprette en ny visning i databasen", - 'Create Stored Procedure' => "Opret Stored Procedure", - 'Create a new stored procedure in the database' => "Opret en ny lagret procedure i databasen", - 'Create Function' => "Opret Funktion", - 'Create a new user defined function in the database' => "Opret en ny bruger defineret funktion i databasen", - 'Create Trigger' => "Opret Trigger", - 'Create a new trigger in the database' => "Opret en ny udløser i databasen", - 'Create Event' => "Opret begivenhed", - 'Create a new event in the database' => "Oprette en ny begivenhed i databasen", - 'Data' => "Data", - 'Import batch file' => "Import batchfil", - 'Import multiple queries from batch file' => "Importere flere forespørgsler fra batchfil", - 'Export database' => "Eksport database", - 'Export database to batch file as sql dump' => "Eksport database til batch-fil som sql dump", - 'Export current results' => "Eksporter aktuelle resultater", - 'Export query results to clipboard or files' => "Eksport forespørgsel resultater til udklipsholderen eller filer", - 'Tools' => "Værktøj", - 'Process Manager' => "Process Manager", - 'View and manage database processes' => "Se og administrere database-processer", - 'Repair Tables' => "Reparation Tabeller", - 'Analyze and repair database tables' => "Analysere og reparation databasetabeller", - 'User Manager' => "Bruger Manager", - 'Manage database users' => "Administrer database brugere", - 'Search in Database' => "Søg i database", - 'Search for text in the database' => "Søg efter tekst i databasen", - 'Information' => "Information", - 'Server/Connection Details' => "Server / Connection Detaljer", - 'View server configuration' => "Vis server konfiguration", - 'View server and connection details' => "Vis server og forbindelsesdetaljer", - 'Server Variables' => "Server Variable", - 'Database Summary' => "Database Resumé", - 'View current database summary stats' => "Se aktuelle database resumé statistik", - 'Interface' => "Interface", - 'Options' => "Optioner", - 'Configure application options' => "Konfiguration af applikations indstillinger", - 'UI Theme' => "UI Tema", - 'Database Objects' => "Database Objects", - 'Toggle Object Viewer' => "Slå Objekt Viewer", - 'Help contents' => "Hjælp indhold", - 'Learn the basics of using MyWebSQL' => "Lær de grundlæggende brug MyWebSQL", - 'QuickStart Tutorials' => "QuickStart Tutorials", - 'See quick hands-on tutorial of MyWebSQL interface' => "Se hurtig hands-on tutorial af MyWebSQL interface", - 'Online documentation' => "Online dokumentation", - 'View online documentation on project website' => "Se online dokumentationen på projektets hjemmeside", - 'Request a Feature' => "Anmod om en funktion", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "Hvis du gerne vil have dine mest foretrukne funktion til at være en del af MyWebSQL, klik her for at informere om det", - 'Report a Problem' => "Rapporter et problem", - 'Check for updates' => "Tjek for opdateringer", - 'Check for updated versions of the application online' => "Tjek for opdaterede versioner af ansøgning online", - 'Logout' => "Logout", - 'Logout from this session' => "Log ud fra denne session", - 'Language' => "Sprog", - 'SQL Editor' => "SQL Editor", - 'Toggle SQL Editor' => "Slå SQL Editor", - 'Experimental' => "Eksperimenterende", - 'Import table data' => "Importer tabeldata", - 'Import table data from external file' => "Import tabeldata fra ekstern fil", - 'Batch operations' => "Batch-operationer", - 'Perform one or more batch operations on database' => "Udfør en eller flere batch-operationer på databasen", - 'Create a new schema in the database' => "Opret en ny skema i databasen", - 'Create Schema' => "Opret Schema", - 'Table Description' => "Tabel Beskrivelse", - 'Database Manager' => "Database manager", - 'Manage databases' => "Administrere databaser", - 'Backup database on the server as SQL dump' => "Backup database på serveren som SQL dump", - 'Backup Database' => "Backup Database", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "Din browser ser ud til at være meget gamle, og understøtter ikke alle funktioner, der kræves for at køre MyWebSQL.", - 'Try using a newer version of the browser to run this application.' => "Prøv at bruge en nyere version af browseren til at køre dette program", - - // text used on various screens in the interface - 'Visit Project website' => "Besøg Projekt hjemmeside", - 'Version' => "version", - 'Loading' => "Lastning", - 'Quick Edit Options' => "Hurtig redigering Valg", - 'Press {{KEY}} to set NULL' => "Tryk på {{KEY}} for at angive NULL", - 'MySQL Server' => "MySQL Server", - 'Logged in as: {{USER}}' => "Logget ind som: {{USER}}", - 'Results' => "Resultater", - 'Messages' => "Meddelelser", - 'Information' => "Information", - 'History' => "Historie", - 'There are no results to show in this view' => "Der er ingen resultater at vise i denne visning", - 'Refresh results' => "Genopfriske resultater", - 'Please wait' => "Vent venligst", - 'Query All' => "Søgning Alle", - 'Query' => "Forespørgsel", - 'Add Record' => "Tilføj Record", - 'Delete Record(s)' => "Slet Record (r)", - 'Update Record(s)' => "Update Record (r)", - 'Generate SQL' => "Generér SQL", - 'Database name' => "Databasenavn", - 'Select database after creation' => "Vælg databasen efter oprettelsen", - 'Database connection failed to the server' => "Database forbindelse mislykkedes til serveren", - 'Host' => "Host", - 'User' => "Bruger", - 'Select a database to begin' => "Vælg en database for at begynde", - 'Select/unselect All records' => "Vælg / fravælg alle poster", - 'Primary key column' => "Primær nøgle kolonne", - 'Unique key column' => "Unik nøgle kolonne", - 'Showing records {{START}} - {{END}}' => "Viser optegnelser {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "Viser de første {{MAX}} bogholderi", - '1 query successfully executed' => "1 forespørgsel held henrettet", - '{{NUM}} queries successfully executed' => "{{NUM}} søgninger held henrettet", - '{{NUM}} record(s) were affected' => "{{NUM}} record (s) blev påvirket", - '{{NUM}} record(s) updated' => "{{NUM}} post (er) opdateret", - 'Error occurred while executing the query' => "Fejl opstod mens den udfører forespørgslen", - '{{NUM}} queries failed to execute' => "{{NUM}} søgninger undladt at udføre", - 'Click to view/edit column data [{{NUM}} Bytes]' => "Klik for at se / redigere kolonne data [{{NUM}} bytes]", - 'Blob data is not editable' => "Klat data er ikke redigeres", - 'Blob data saved' => "Blob data gemt", - 'Failed to save blob data' => "Kunne ikke gemme blob data", - 'The process with id [{{PID}}] was killed' => "Processen med id [{{PID}}] blev dræbt", - 'No such process [id = {{PID}}]' => "Ingen sådan proces [id = {{PID}}]", - 'Select a process and click the button to kill the process' => "Vælg en proces, og klik på knappen for at dræbe den proces", - 'Process ID' => "Proces-ID", - 'Command' => "Kommando", - 'Time' => "Tid", - 'Info' => "Info", - 'Kill Process' => "Kill Process", - 'Failed to get process list' => "Kunne ikke få proces-listen", - 'The command executed successfully' => "Kommandoen udføres med succes", - 'Invalid server configuration' => "Ugyldige server konfiguration", - 'Invalid Credentials' => "Ugyldige legitimationsoplysninger", - 'New database successfully created' => "Ny database oprettet", - 'File upload failed. Please try again' => "Fil upload mislykkedes. Prøv venligst igen", - 'No queries were executed during import' => "Ingen forespørgsler blev henrettet under import", - 'Maximum upload filesize is {{SIZE}}' => "Maksimale upload filstørrelse er {{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "Understøttede filtyper / extensions er: ({{LIST}})", - 'Database summary' => "Database resumé", - 'Server Variables' => "Server Variable", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "Alle eksisterende objekt med samme navn, bør udgå manuelt, før den udfører skabelsen kommandoen", - 'Only create commands are accepted' => "Kun oprette kommandoer er velkomne", - 'User ID' => "Bruger-id", - 'Password' => "Adgangskode", - 'Login' => "Log ind", - 'Create new database object' => "Opret ny database objekt", - 'Enter command for object creation' => "Indtast kommando for objekt skabelse", - 'Submit' => "Indsend", - 'Show blob data as: {{TYPE}}' => "Vis klat data som: {{TYPE}}", - 'Blob data for column {{NAME}}' => "Blob data for kolonne {{NAME}}", - 'Create command for {{TYPE}} {{NAME}}' => "Opret kommando for {{TYPE}} {{NAME}}", - 'Table Engine (type)' => "Tabel Engine (type)", - 'Change Table Type' => "Skift Tabel Type", - 'The requested page is not available on the server' => "Den ønskede side er ikke tilgængelig på serveren", - 'Error' => "Fejl", - 'It appears that you attempted to submit an invalid request to the server' => "Det fremgår, at du forsøgte at sende en ugyldig anmodning til serveren", - 'The request has been denied. Reloading the page might solve the problem' => "Anmodningen er blevet afvist. Genindlæse siden kunne løse problemet", - 'Access Denied' => "Adgang nægtet", - 'Help' => "Hjælp", - 'To see most up-to-date help contents, please visit {{LINK}}' => "Hvis du vil se de fleste up-to-dato hjælpe indhold, kan du besøge {{LINK}}", - 'It appears that your browser session has expired' => "Det ser ud til, at din browser session er udløbet", - 'Please refresh the webpage to re-login' => "Opdater websiden at re-login", - 'Table information' => "Tabel oplysninger", - 'Edit' => "Rediger", - 'Save' => "Gem", - 'Either the database is empty, or there was an error retrieving list of database objects' => "Enten databasen er tom, eller der var en fejl under hentning liste over databaseobjekter", - 'Please try closing and re-opening this dialog again' => "Prøv at lukke og genåbne denne dialog igen", - 'Structure' => "Struktur", - 'Table Data' => "Tabel Data", - 'Structure and Table Data' => "Struktur og tabeldata", - 'Options' => "Optioner", - 'Set Auto increment field values to NULL' => "Set Auto tilvækst feltværdier til NULL", - 'Add DROP command before create statements' => "Tilføj DROP kommando før oprette udsagn", - 'Export' => "Eksport", - 'Import' => "Import", - 'Export Database' => "Eksport Database", - 'Export Table' => "Eksport Tabel", - 'Server information' => "Serveroplysninger", - 'Server' => "Server", - 'Version comment' => "Version kommentar", - 'Character sets' => "Tegnsæt", - 'Server character set' => "Server tegnsæt", - 'Client character set' => "Client tegnsæt", - 'Database character set' => "Database tegnsæt", - 'Results character set' => "Resultater tegnsæt", - 'Export As' => "Eksporter som", - 'Insert Statements' => "Indsæt Erklæringer", - 'Include field names in query' => "Inkluder feltnavne i forespørgslen", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Almindelig tekst (én post pr linie)", - 'Fields separated by:' => "Felter adskilt af:", - 'Export Results' => "Eksport Resultater", - 'Select SQL batch file to import' => "Vælg SQL batchfil til at importere", - 'Continue processing even if error occurs' => "Fortsætte behandlingen af ​​selv hvis fejlen opstår", - 'Basic Information' => "Grundlæggende oplysninger", - 'Table Properties' => "Tabel Egenskaber", - 'Table Name' => "Tabelnavn", - 'Field Name' => "Feltnavn", - 'Data Type' => "Datatype", - 'Length' => "Længde", - 'Default value' => "Standardværdi", - 'Unsigned' => "Usignerede", - 'Zero Fill' => "Zero Fill", - 'Primary Key' => "Primær nøgle", - 'Auto Increment' => "Auto Increment", - 'Not NULL' => "Ikke NULL", - 'Character Set' => "Tegnsætningsformat", - 'Collation' => "Sortering", - 'Comment' => "Kommentar", - 'Waiting for table information to be submitted' => "Venter på bordet oplysninger, der skal indsendes", - 'Add field' => "Tilføj felt", - 'Delete selected field' => "Slet valgte felt", - 'Clear Table Information' => "Ryd Tabel Information", - 'List of values' => "Liste over værdier", - 'Query Results' => "Forespørgsel Resultater", - 'Data for {{TABLE}}' => "Data for {{TABEL}}", - 'Select tables to be analyzed/repaired' => "Vælg tabeller, der skal analyseres / repareres", - 'Operation to perform' => "Operation til at udføre", - 'Analyze' => "Analyser", - 'Check' => "Tjek", - 'Optimize' => "Optimer", - 'Repair' => "Reparation", - 'Skip Binary logging' => "Spring Binary logning", - 'Default' => "Default", - 'Quick' => "Hurtig", - 'Fast' => "Hurtig", - 'Medium' => "Medium", - 'Extended' => "Udvidede", - 'Changed' => "Ændret", - 'Use Frm files (MyISAM tables)' => "Brug FRM filer (MyISAM tabeller)", - 'User Information' => "Bruger Information", - 'Global Privileges' => "Global privilegier", - 'Database Privileges' => "Database privilegier", - 'Import File' => "Import File", - 'Index Manager' => "Index Manager", - 'Edit table structure' => "Rediger tabelstruktur", - 'Save All Changes' => "Gem alle ændringer", - 'Changes are not saved until you press [Save All Changes]' => "Ændringer gemmes ikke før du trykker på [Gem alle ændringer]", - 'Field Length' => "Banelængdedataene", - 'Select objects to include in export' => "Vælg objekter der skal medtages i eksporten", - 'Export type' => "Eksporttype", - 'Select All/None' => "Vælg alle / Ingen", - 'Add User' => "Tilføj bruger", - 'Update User' => "Opdater bruger", - 'Delete selected User' => "Slet valgte Bruger", - 'Remove Password' => "Fjern adgangskode", - 'Select tables to search' => "Vælg tabeller for at søge", - 'Search Options' => "Søgemuligheder", - 'Search in following field types' => "Søg i følgende felttyper", - 'Numeric Fields' => "Numeriske felter", - 'Character Fields' => "Tegn Felter", - 'Text Fields' => "Tekstfelter", - 'Date/Time Fields' => "Dato / tid Fields", - 'Comparison Type' => "Sammenligning Type", - 'Text to search' => "Tekst til søgning", - 'Search' => "Søg", - 'Search Results' => "Søgeresultater", - 'Number of matches' => "Antal kampe", - 'Search results for {{KEYWORD}} in the database' => "Søgeresultater for {{KEYWORD}} i databasen", - '{{NUM}} match(es)' => "{{NUM}} match (r)", - 'Copy query to editor' => "Kopier forespørgsel til editor", - 'Done' => "Udført", - 'SQL Editor' => "SQL Editor", - 'Create Copy' => "Opret Kopier", - 'Minimize All' => "Minimer Alle", - 'Copy Record(s)' => "Kopier Record (r)", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "Kommasepareret (CSV til Excel)", - 'Select data file to import' => "Vælg data fil til at importere", - 'Select table for data import' => "Vælg tabel for data import", - 'First line contains column names' => "Første linie indeholder kolonneoverskrifter navne", - 'Select objects to operate upon' => "Vælg objekter til at operere på", - 'Operations to perform' => "Operationer til at udføre", - 'Add prefix string to name' => "Tilføj prefix streng at nævne", - 'Delete prefix string from name' => "Slet præfiks streng fra navn", - 'Command text' => "Command tekst", - 'DROP selected database objects' => "DROP valgte databaseobjekter", - 'Batch operation results' => "Batch-drift resultater", - 'Operation' => "Operation", - 'Status' => "Status", - '{{NUM}} queries generated' => "{{NUM}} forespørger genereret", - 'Please select one or more operations to perform' => "Vælg en eller flere operationer for at udføre", - 'Quick Search' => "Hurtig søgning", - '{{NAME}} client library is not installed' => "{{NAME}} klient bibliotek er ikke installeret", - '{{NAME}} extension is not installed' => "{{NAME}} udvidelse er ikke installeret", - 'SQLite database folder is inaccessible or not writable' => "SQLite database mappe er utilgængelig eller ikke skrivbar", - 'Maximize/Restore Results Pane' => "Maksimer / Gendan Results Pane", - 'Select databases to operate upon' => "Vælg databaser til at operere på", - 'DROP selected databases' => "DROP udvalgte databaser", - 'The following operation is irreversible' => "Den følgende operation er irreversibel", - 'Potential data loss might occur' => "Potentielt datatab kan forekomme", - 'Add TRUNCATE command before insert statements' => "Tilføj trunkere kommando, før insert udsagn", - 'Select objects to include in backup' => "Vælg objekter der skal medtages i backup", - 'Backup folder does not exist or is not writable' => "Backup mappe eksisterer ikke eller er ikke skrivbar", - 'Backup type' => "Backup type,", - 'Database backup successfully created' => "Database backup oprettet", - 'Failed to create database backup' => "Kunne ikke skabe database backup", - 'Generate Bulk insert statements' => "Generer Masseindsætning udsagn", - 'Maximum size of SQL statement' => "Maksimal størrelse på SQL-sætning", - 'Show record count with table names' => "Vis record tæller med tabelnavne", - 'Sort Table listing by' => "Sorter Table notering efter", - 'Name' => "Navn", - 'Last Update Time' => "Sidste opdatering Time", - 'Maximum records to display in result set' => "Maksimale poster skal vises i resultatet sæt", - 'Show popup dialog for editing large text data' => "Vis popup dialogboks til redigering store tekst data", - 'Miscellaneous' => "Diverse", - 'Reset all confirmation dialogs' => "Nulstille alle bekræftelsesdialogbokse", - 'Record Editing' => "Record Editing", - 'Exclude Table type' => "Udeluk Tabel typen", - 'Exclude Table Character set' => "Udeluk Tabel Tegnsæt", - 'Backup filename' => "Backup filnavn", - 'Invalid filename format' => "Ugyldigt filnavn format", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "alle", - 'all selected' => "alle valgte", - 'An error occured while refreshing the object list.' => "En fejl opstod under forfriskende objektet listen.", - 'Are you sure you want to clear all field information from table?' => "Er du sikker på du vil slette alle field information fra tabel?", - 'Are you sure you want to delete this user account?' => "Er du sikker på du vil slette denne brugerkonto?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "Er du sikker på du ønsker at droppe alle objekter fra databasen {{NAME}}?", - 'Are you sure you want to DROP selected objects?' => "Er du sikker på du vil slip markerede objekter?", - 'Are you sure you want to DROP the database {{NAME}}?' => "Er du sikker på du vil DROP databasen {{NAME}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "Er du sikker på du ønsker at droppe dette objekt? {{NAME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "Er du sikker på du vil køre {{SELECTED}} søgninger?", - 'Are you sure you want to logout?' => "Er du sikker på du vil logge ud?", - 'Are you sure you want to truncate the table {{NAME}}?' => "Er du sikker på du vil afkorte tabellen {{NAME}}?", - 'Blob Data [{{SIZE}}]' => "Blob Data [{{SIZE}}]", - 'Cancel' => "Annuller", - 'Check for Updates' => "Tjek for opdateringer", - 'Clear command history?' => "Ryd kommando historie?", - 'Close' => "Luk", - 'Confirm Action' => "Bekræft Action", - 'Confirm and do not ask me again about this choice' => "Bekræfte og ikke spørge mig igen om dette valg", - 'Copy Object' => "Kopier Objekt", - 'Create Database' => "Opret database", - 'Create Primary Index on this field' => "Opret primær Indeks for dette område", - 'Databases' => "Databaser", - 'Default value [Use quotes to specify string values]' => "Default værdi [Brug anførselstegn til at angive strengværdier]", - 'Disallow NULL values in Field' => "Tillad ikke NULL værdier i feltet", - 'Enter new index name' => "Indtast nyt indeks navn", - 'Enter new name for the database object' => "Indtast nyt navn for databasen objektet", - 'Enter the text to search in database' => "Indtast teksten at søge i databasen", - 'Error' => "Fejl", - 'Events' => "Events", - 'Execute query' => "Udfør forespørgslen", - 'Exports results' => "Eksport resultater", - 'Failed to refresh the results.' => "Kunne ikke opdatere resultater.", - 'Field Datatype' => "Felt Datatype", - 'Field Name' => "Feltnavn", - 'Field value is Auto Incremented' => "Feltværdi er Auto øges", - 'Functions' => "Funktioner", - 'Indexes Updated' => "Indekser Opdateret", - 'Maximum Length of field value' => "Maksimale længde af feltværdien", - 'Navigation Error. Try reloading the page' => "Navigationsfejl. Prøv at genindlæse siden", - 'New settings saved and applied' => "Nye indstillinger gemmes og anvendes", - 'New version is available' => "Ny version er tilgængelig", - 'Next' => "Næste", - 'No' => "Ingen", - 'No Table selected' => "Ingen Tabel valgt", - 'Not enough room to show this pane.' => "Ikke nok plads til at vise denne rude.", - 'OK' => "OK", - 'One or more field information is incomplete' => "En eller flere felt information er ufuldstændige", - 'Open' => "Åben", - 'Operation failed' => "Operation mislykkedes", - 'Pad field values with leading zeros' => "Pad feltværdier med foranstillede nuller", - 'Pane' => "Pane", - 'Passwords do not match' => "Adgangskoderne stemmer ikke overens", - 'Pin' => "Pin", - 'Please select one or more operations to perform' => "Vælg en eller flere operationer for at udføre", - 'Please type in one or more queries in the SQL editor!' => "Skriv venligst i en eller flere forespørgsler i SQL editor!", - 'Please wait...' => "Vent venligst ...", - 'Previous' => "Forrige", - 'Procedures' => "Procedurer", - 'Prompt' => "Spørg", - 'Refresh results' => "Genopfriske resultater", - 'Refreshing object list' => "Forfriskende objekt liste", - 'Rename Object' => "Omdøb objekt", - 'Resize' => "Resize", - 'Results page:' => "Resultater side:", - 'Select a database to view privileges for the user' => "Vælg en database for at se privilegier for brugeren", - 'Select an index to view / edit its details' => "Vælg et indeks til at se / redigere detaljer", - 'Select at least one field type for searching' => "Vælg mindst én felttype til søgning", - 'Select objects to operate upon' => "Vælg objekter til at operere på", - 'selector' => "vælgeren", - 'Slide Open' => "Slide Open", - 'Table information requires at least one valid field' => "Tabel oplysninger kræver mindst ét ​​gyldigt felt", - 'Table name is required' => "Tabelnavn er påkrævet", - 'Table successfully created' => "Tabel oprettet", - 'Table successfully modified' => "Tabel held modificerede", - 'Tables' => "Tabeller", - 'Text Data [{{SIZE}}]' => "Tekstdata [{{SIZE}}]", - 'There is no record in the results to export' => "Der er ingen registrering af resultaterne til at eksportere", - 'This attribute is not required for selected field type' => "Denne attribut er ikke påkrævet for udvalgte felttype", - 'Triggers' => "Triggers", - 'Un-Pin' => "Un-Pin", - 'Unsigned numbered field only' => "Usignerede nummererede felt kun", - 'Update check failed' => "Opdater mislykkedes", - 'User information is incomplete or invalid' => "Bruger information er ufuldstændige eller ugyldige", - 'User Manager' => "Bruger Manager", - 'Views' => "Visninger", - 'WARNING' => "ADVARSEL", - 'Yes' => "Ja", - 'You have the latest version' => "Du har den nyeste version", - - ); -?> diff --git a/lang/de.php b/lang/de.php deleted file mode 100644 index fef55bd..0000000 --- a/lang/de.php +++ /dev/null @@ -1,463 +0,0 @@ - - */ - - $LANGUAGE = array( - - // context menu related text - 'Use Database' => "Verwenden von Datenbank-", - 'Drop Database' => "DROP DATABASE", - 'Empty Database' => "Leere Datenbank", - 'Drop all tables from this database' => "Alle Tabellen aus dieser Datenbank löschen", - 'Select statement' => "Select-Anweisung", - 'Insert statement' => "Insert-Anweisung", - 'Update statement' => "Update-Anweisung", - 'Describe' => "Beschreiben", - 'Show create command' => "Create-Befehl anzeigen", - 'View data' => "Daten ansehen", - 'Alter Table' => "Tabelle ändern", - 'Indexes' => "Indizes", - 'Engine Type' => "Engine-Typ", - 'More operations' => "Weitere Operationen", - 'Truncate' => "Leeren", - 'Drop' => "Löschen", - 'Rename' => "Umbenennen", - 'Export table data' => "Export von Tabellendaten", - 'Create Table' => "Tabelle erstellen", - 'Create View' => "Ansicht erstellen", - 'Create Procedure' => "Prozedur erstellen", - 'Create Function' => "Funktion erstellen", - 'Create Trigger' => "Trigger erstellen", - 'Create Event' => "Ereignis erstellen", - 'Show/Hide Panel' => "Panel ein/ausblenden", - 'Show/Hide Header' => "Header ein/ausblenden", - 'Copy all queries to clipboard' => "Alle Anfragen in die Zwischenablage kopieren", - 'Clear history' => "Verlauf löschen", - 'Copy Column values' => "Spaltenwerte kopieren", - 'Copy to clipboard' => "In die Zwischenablage kopieren", - 'Generate SQL Filter' => "SQL-Filter generieren", - 'Database Manager' => "Datenbank-Manager", - 'Manage databases' => "Datenbanken verwalten", - - // main menu related text - 'Database' => "Datenbank", - 'Refresh' => "Aktualisieren", - 'Refresh database object list' => "Datenbank-Liste aktualisieren", - 'Create new' => "Neue Datenbank erstellen", - 'Export' => "Exportieren", - 'Export database to external file' => "Datenbank in Datei exportieren", - 'Objects' => "Objekte", - 'Create Table' => "Tabelle erstellen", - 'Create a new table in the database' => "Neue Tabelle in der Datenbank erstellen", - 'Create View' => "Ansicht erstellen", - 'Create a new view in the database' => "Neue Ansicht in der Datenbank erstellen", - 'Create Stored Procedure' => "Prozedur erstellen", - 'Create a new stored procedure in the database' => "Neue Prozedur in der Datenbank erstellen", - 'Create Function' => "Funktion erstellen", - 'Create a new user defined function in the database' => "Neue Funktion in der Datenbank erstellen", - 'Create Trigger' => "Trigger erstellen", - 'Create a new trigger in the database' => "Neuen Trigger in der Datenbank erstellen", - 'Create Event' => "Ereignis erstellen", - 'Create a new event in the database' => "Neues Ereignis in der Datenbank erstellen", - 'Data' => "Daten", - 'Import batch file' => "Importieren einer Batch-Datei", - 'Import multiple queries from batch file' => "Importieren mehrerer Anfragen aus einer Batch-Datei", - 'Export database' => "Datenbank exportieren", - 'Export database to batch file as sql dump' => "Datenbank in Batch-Datei als SQL-Dump exportieren", - 'Export current results' => "Aktuelle Ergebnisse exportieren", - 'Export query results to clipboard or files' => "Abfrage-Ergebnisse in die Zwischenablage oder Dateien exportieren", - 'Tools' => "Werkzeuge", - 'Process Manager' => "Prozess-Manager", - 'View and manage database processes' => "Datenbank-Prozesse ansehen und verwalten", - 'Repair Tables' => "Tabellen reparieren", - 'Analyze and repair database tables' => "Datenbanktabellen analysieren und reparieren", - 'User Manager' => "Benutzer-Manager", - 'Manage database users' => "Datenbank-Benutzer verwalten", - 'Search in Database' => "In der Datenbank suchen", - 'Search for text in the database' => "In der Datenbank nach Text suchen", - 'Information' => "Information", - 'Server/Connection Details' => "Server/Verbindungs-Details", - 'View server configuration' => "Ansicht Server-Konfiguration", - 'View server and connection details' => "Ansicht Server-und Anschlussdetails", - 'Server Variables' => "Server-Variablen", - 'Database Summary' => "Datenbank-Zusammenfassung", - 'View current database summary stats' => "Datenbank-Statistiken ansehen", - 'Interface' => "Schnittstelle", - 'Options' => "Optionen", - 'Configure application options' => "Anwendung konfigurieren", - 'UI Theme' => "UI Theme", - 'Database Objects' => "Datenbank-Objekte", - 'Toggle Object Viewer' => "Objekt-Viewer ein/ausblenden", - 'Help contents' => "Hilfe", - 'Learn the basics of using MyWebSQL' => "Die Grundlagen der MyWebSQL erlernen", - 'QuickStart Tutorials' => "QuickStart Tutorials", - 'See quick hands-on tutorial of MyWebSQL interface' => "Hands-on-Tutorial der MyWebSQL-Schnittstelle ansehen", - 'Online documentation' => "Online-Dokumentation", - 'View online documentation on project website' => "Online-Dokumentation auf der Projekt-Website ansehen", - 'Request a Feature' => "Feature anfordern", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "Vermissen Sie Ihre Lieblingsfunktion in myWebSQL? Klicken Sie hier, um darüber zu berichten", - 'Report a Problem' => "Ein Problem melden", - 'Check for updates' => "Nach Aktualisierungen suchen", - 'Check for updated versions of the application online' => "Prüfe, ob Aktualisierungen online verfügbar sind", - 'Logout' => "Abmelden", - 'Logout from this session' => "Abmelden", - 'Language' => "Sprache", - 'SQL Editor' => "SQL Editor", - 'Toggle SQL Editor' => "SQL Editor ein/ausblenden", - 'Experimental' => "Experimentell", - 'Import table data' => "Tabellen importieren", - 'Import table data from external file' => "Tabellen auf Datei importieren", - 'Batch operations' => "Batch-Operationen", - 'Perform one or more batch operations on database' => "Eine oder mehrere Batch-Operationen auf der Datenbank ausführen", - 'Create a new schema in the database' => "Neues Schema in der Datenbank erstellen", - 'Create Schema' => "Schema erstellen", - 'Table Description' => "Tabellen-Beschreibung", - 'Database Manager' => "Datenbank-Manager", - 'Manage databases' => "Datenbanken verwalten", - 'Backup database on the server as SQL dump' => "Backup-Datenbank auf dem Server als SQL-Dump", - 'Backup Database' => "Backup Database", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "Ihr Browser scheint sehr alt zu sein und unterstützt nicht alle von MyWebSQL benötigten Funktionen.", - 'Try using a newer version of the browser to run this application.' => "Versuche es mit einer neueren Version des Browsers, um diese Anwendung auszuführen", - - // text used on various screens in the interface - 'Visit Project website' => "Projekt-Website besuchen", - 'Version' => "Version", - 'Loading' => "Laden", - 'Quick Edit Options' => "QuickEdit-Optionen", - 'Press {{KEY}} to set NULL' => "Drücken Sie {{KEY}}, um NULL zu setzen", - 'MySQL Server' => "MySQL-Server", - 'Logged in as: {{USER}}' => "Angemeldet als: {{USER}}", - 'Results' => "Ergebnisse", - 'Messages' => "Nachrichten", - 'Information' => "Information", - 'History' => "Verlauf", - 'There are no results to show in this view' => "Es gibt keine Ergebnisse, die in dieser Ansicht angezeigt werden könnnten", - 'Refresh results' => "Ergebnisse aktualisieren", - 'Please wait' => "Bitte warten", - 'Query All' => "Alle abfragen", - 'Query' => "Abfragen", - 'Add Record' => "Datensatz hinzufügen", - 'Delete Record(s)' => "Datensatz löschen", - 'Update Record(s)' => "Datensatz aktualisieren", - 'Generate SQL' => "SQL generieren", - 'Database name' => "Name der Datenbank", - 'Select database after creation' => "Nach der Erstellung die Datenbank auswählen", - 'Database connection failed to the server' => "Datenbank-Verbindung zum Server fehlgeschlagen", - 'Host' => "Host", - 'User' => "Benutzer", - 'Select a database to begin' => "Wählen Sie eine Datenbank, um zu beginnen", - 'Select/unselect All records' => "Alle Datensätze aus-/abwählen", - 'Primary key column' => "PrimäryKey-Spalte", - 'Unique key column' => "UniqueKey-Spalte", - 'Showing records {{START}} - {{END}}' => "Es werden Datensätze {{START}} - {{END}} angezeigt", - 'Showing first {{MAX}} records only' => "Es werden nur die ersten {{MAX}} Ergebnis(se) angezeigt", - '1 query successfully executed' => "Eine Abfrage erfolgreich ausgeführt", - '{{NUM}} queries successfully executed' => "{{NUM}}-Abfragen erfolgreich ausgeführt", - '{{NUM}} record(s) were affected' => "{{NUM}} Datensätze waren betroffen", - '{{NUM}} record(s) updated' => "{{NUM}} Datensätze wurde aktualisiert", - 'Error occurred while executing the query' => "Beim Ausführen der Abfrage trat ein Fehler auf", - '{{NUM}} queries failed to execute' => "{{NUM}}-Abfrage(n) konnten nicht ausführen werden", - 'Click to view/edit column data [{{NUM}} Bytes]' => "Klicken zum Anzeigen/Bearbeiten der Spalte [{{NUM}} Bytes]", - 'Blob data is not editable' => "BLOB-Daten können nicht bearbeitet werden", - 'Blob data saved' => "Blob-Daten wurden gespeichert", - 'Failed to save blob data' => "Konnte Blob-Daten nicht speichern", - 'The process with id [{{PID}}] was killed' => "Der Prozess mit der ID [{{PID}}] wurde beendet", - 'No such process [id = {{PID}}]' => "Kein Prozess gefunden [id = {{PID}}]", - 'Select a process and click the button to kill the process' => "Prozess auswählen und auf die Schaltfläche klicken, um den Prozess zu beenden", - 'Process ID' => "Prozess-ID", - 'Command' => "Kommando", - 'Time' => "Zeit", - 'Info' => "Info", - 'Kill Process' => "Prozess beenden", - 'Failed to get process list' => "Konnte Prozess-Liste nicht abrufen", - 'The command executed successfully' => "Der Befehl wurde erfolgreich ausgeführt", - 'Invalid server configuration' => "Ungültige Server-Konfiguration", - 'Invalid Credentials' => "Ungültige Anmeldeinformationen", - 'New database successfully created' => "Neue Datenbank erfolgreich erstellt", - 'File upload failed. Please try again' => "Datei-Upload fehlgeschlagen. Bitte erneut versuchen", - 'No queries were executed during import' => "Es wurden keine Abfragen beim Import ausgeführt", - 'Maximum upload filesize is {{SIZE}}' => "Maximale Upload-Dateigröße ist {{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "Unterstützte Dateitypen/-erweiterungen sind: ({{LIST}})", - 'Database summary' => "Datenbank Zusammenfassung", - 'Server Variables' => "Server-Variablen", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "Vorhandene Objekte mit dem gleichen Namen sollten vor der Ausführung des Create-Befehls manuell entfernt werden", - 'Only create commands are accepted' => "Nur Create-Befehle werden akzeptiert", - 'User ID' => "User-ID", - 'Password' => "Passwort", - 'Login' => "Login", - 'Create new database object' => "Neues Datenbank-Objekt erstellen", - 'Enter command for object creation' => "Befehl für Objekt-Erstellung angeben", - 'Submit' => "Senden", - 'Show blob data as: {{TYPE}}' => "BLOB-Daten anzeigen als: {{TYPE}}", - 'Blob data for column {{NAME}}' => "BLOB-Daten für Spalte {{NAME}}", - 'Create command for {{TYPE}} {{NAME}}' => "Create-Befehl für {{TYPE}} {{NAME}}", - 'Table Engine (type)' => "Tabellen-Engine (Typ)", - 'Change Table Type' => "TabellenTyp ändern", - 'The requested page is not available on the server' => "Die gewünschte Seite ist auf dem Server nicht verfügbar", - 'Error' => "Fehler", - 'It appears that you attempted to submit an invalid request to the server' => "Es wurde versucht eine ungültige Anfrage an den Server zu übermitteln", - 'The request has been denied. Reloading the page might solve the problem' => "Die Anfrage wurde abgelehnt. Das Neuladen der Seite könnte das Problem beheben", - 'Access Denied' => "Zugriff verweigert", - 'Help' => "Hilfe", - 'To see most up-to-date help contents, please visit {{LINK}}' => "Um die aktuellsten Hilfeinhalte zu sehen, besuche {{LINK}}", - 'It appears that your browser session has expired' => "Die Browser-Session ist anscheinend abgelaufen", - 'Please refresh the webpage to re-login' => "Lade die Seite neu, um dich erneut anzumelden", - 'Table information' => "Tabellen-Informationen", - 'Edit' => "Bearbeiten", - 'Save' => "Speichern", - 'Either the database is empty, or there was an error retrieving list of database objects' => "Entweder ist die Datenbank leer, oder es gab einen Fehler beim Abrufen der Datenbank-Objektliste", - 'Please try closing and re-opening this dialog again' => "Versuchen Sie, diesen Dialog zu schließen und erneut zu öffnen", - 'Structure' => "Struktur", - 'Table Data' => "Tabellendaten", - 'Structure and Table Data' => "Struktur und Tabellendaten", - 'Options' => "Optionen", - 'Set Auto increment field values to NULL' => "AutoIncrement-Feld auf NULL setzen", - 'Add DROP command before create statements' => "DROP-Befehl vor Create-Anweisungen einfügen", - 'Export' => "Export", - 'Import' => "Import", - 'Export Database' => "Datenbank exportieren", - 'Export Table' => "Tabelle exportieren", - 'Server information' => "Server-Informationen", - 'Server' => "Server", - 'Version comment' => "Versionskommentar", - 'Character sets' => "Zeichensätze", - 'Server character set' => "Server-Zeichensatz", - 'Client character set' => "Client-Zeichensatz", - 'Database character set' => "Datenbank-Zeichensatz", - 'Results character set' => "Ergebnis-Zeichensatz", - 'Export As' => "Exportieren als", - 'Insert Statements' => "Insert-Anweisungen", - 'Include field names in query' => "Feldnamen in Abfrage einfügen", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Plain Text (ein Datensatz pro Zeile)", - 'Fields separated by:' => "Felder sind getrennt durch:", - 'Export Results' => "Ergebnis(se) exportieren", - 'Select SQL batch file to import' => "SQL-Batch-Datei für den Import auswählen", - 'Continue processing even if error occurs' => "Verarbeitung fortsetzen, selbst dann, wenn ein Fehler auftritt", - 'Basic Information' => "Grundlegende Informationen", - 'Table Properties' => "Tabelleneigenschaften", - 'Table Name' => "Tabellenname", - 'Field Name' => "Feldname", - 'Data Type' => "Datentyp", - 'Length' => "Länge", - 'Default value' => "Default-Wert", - 'Unsigned' => "Unsigned", - 'Zero Fill' => "Zero Fill", - 'Primary Key' => "Primary Key", - 'Auto Increment' => "Auto Increment", - 'Not NULL' => "Not NULL", - 'Character Set' => "Zeichensatz", - 'Collation' => "Collation", - 'Comment' => "Kommentar", - 'Waiting for table information to be submitted' => "Warte, bis Tabellen-Informationen gesendet werden", - 'Add field' => "Feld hinzufügen", - 'Delete selected field' => "Ausgewähltes Feld löschen", - 'Clear Table Information' => "Tabellen-Information löschen", - 'List of values' => "Werteliste", - 'Query Results' => "Abfrage-Ergebnisse", - 'Data for {{TABLE}}' => "Daten für {{TABLE}}", - 'Select tables to be analyzed/repaired' => "Tabellen zum analysieren/reparieren auswählen", - 'Operation to perform' => "Operation durchführen", - 'Analyze' => "Analysieren", - 'Check' => "Überprüfen", - 'Optimize' => "Optimieren", - 'Repair' => "Reparieren", - 'Skip Binary logging' => "Binäres Loffen überspringen", - 'Default' => "Default", - 'Quick' => "Quick", - 'Fast' => "Fast", - 'Medium' => "Medium", - 'Extended' => "Extended", - 'Changed' => "Geändert", - 'Use Frm files (MyISAM tables)' => "Verwenden frm-Dateien (MyISAM-Tabellen)", - 'User Information' => "Benutzer-Information", - 'Global Privileges' => "Globale Rechte", - 'Database Privileges' => "Datenbank Rechte", - 'Import File' => "Datei importieren", - 'Index Manager' => "Index-Manager", - 'Edit table structure' => "Tabellenstruktur bearbeiten", - 'Save All Changes' => "Alle Änderungen speichern", - 'Changes are not saved until you press [Save All Changes]' => "Änderungen werden erst gespeichert, wenn [Alle Änderungen speichern] gedrückt wird", - 'Field Length' => "Feldlänge", - 'Select objects to include in export' => "Objekte auswählen, die im Export enthalten sein sollen", - 'Export type' => "Export-Typ", - 'Select All/None' => "Alle/Keine auswählen", - 'Add User' => "Benutzer hinzufügen", - 'Update User' => "Benutzer aktualisieren", - 'Delete selected User' => "Ausgewählten Benutzer löschen", - 'Remove Password' => "Passwort entfernen", - 'Select tables to search' => "Tabellen für die Suche auswählen", - 'Search Options' => "Suchoptionen", - 'Search in following field types' => "In folgenden Feldtypen suchen", - 'Numeric Fields' => "Numerische Felder", - 'Character Fields' => "Character-Felder", - 'Text Fields' => "Textfelder", - 'Date/Time Fields' => "Datums-/Zeitfelder", - 'Comparison Type' => "Vergleichstyp", - 'Text to search' => "Suchtext", - 'Search' => "Suche", - 'Search Results' => "Suchergebnisse", - 'Number of matches' => "Anzahl der Übereinstimmungen", - 'Search results for {{KEYWORD}} in the database' => "Suchergebnisse für {{KEYWORD}} in der Datenbank", - '{{NUM}} match(es)' => "{{NUM}} Übereinstimmung(en)", - 'Copy query to editor' => "Abfrage in den Editor kopieren", - 'Done' => "Fertig", - 'SQL Editor' => "SQL Editor", - 'Create Copy' => "Kopie erstellen", - 'Minimize All' => "Alles minimieren", - 'Copy Record(s)' => "Einträge kopieren", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "Durch Komma getrennt (CSV für Excel)", - 'Select data file to import' => "Datendatei für den Import auswählen", - 'Select table for data import' => "Tabelle für den Import auswählen", - 'First line contains column names' => "Die erste Zeile enthält die Namen der Spalten", - 'Select objects to operate upon' => "Objekte wählen, mit denen gearbeitet wird", - 'Operations to perform' => "Durchzuführende Operationen", - 'Add prefix string to name' => "Präfix zum Namen hinzufügen", - 'Delete prefix string from name' => "Präfix vom Namen entfernen", - 'Command text' => "Befehlstext", - 'DROP selected database objects' => "Ausgewählte Datenbankobjekten entfernen", - 'Batch operation results' => "Ergebnisse der Batch-Operation", - 'Operation' => "Operation", - 'Status' => "Status", - '{{NUM}} queries generated' => "{{NUM}}-Abfragen generiert", - 'Please select one or more operations to perform' => "Auswahl von durchzuführenden Operationen", - 'Quick Search' => "QuickSearch", - '{{NAME}} client library is not installed' => "{{NAME}} Client-Bibliothek ist nicht installiert", - '{{NAME}} extension is not installed' => "{{NAME}}-Erweiterung ist nicht installiert", - 'SQLite database folder is inaccessible or not writable' => "SQLite-Datenbank-Ordner ist unzugänglich oder nicht beschreibbar", - 'Maximize/Restore Results Pane' => "Ergebnis-Bereich maximieren/wiederherstellen", - 'Select databases to operate upon' => "Datenbanken auswählen", - 'DROP selected databases' => "Ausgewählte Datenbank(en) entfernen", - 'The following operation is irreversible' => "Der folgende Vorgang kann nicht rückgängig gemacht werden", - 'Potential data loss might occur' => "Es kann zum Verlust von Daten kommen", - 'Add TRUNCATE command before insert statements' => "Fügen Sie TRUNCATE-Befehl vor INSERT-Anweisungen", - 'Select objects to include in backup' => "Objekte auswählen, die im Backup enthalten", - 'Backup folder does not exist or is not writable' => "Backup-Ordner existiert nicht oder ist nicht beschreibbar", - 'Backup type' => "Backup-Typ", - 'Database backup successfully created' => "Datenbank-Backup erfolgreich erstellt", - 'Failed to create database backup' => "Konnte Datenbank-Backup erstellen", - 'Generate Bulk insert statements' => "Generieren Bulk-Insert-Anweisungen", - 'Maximum size of SQL statement' => "Maximale Größe der SQL-Anweisung", - 'Show record count with table names' => "Zeigen Satzzählung mit Tabellennamen", - 'Sort Table listing by' => "Tabelle sortieren Auflistung nach", - 'Name' => "Name", - 'Last Update Time' => "Letztes Update Zeit", - 'Maximum records to display in result set' => "Maximale Datensätze in Ergebnismenge anzuzeigen", - 'Show popup dialog for editing large text data' => "Zeigen Sie Popup-Dialog zum Bearbeiten großer Textdaten", - 'Miscellaneous' => "Sonstiges", - 'Reset all confirmation dialogs' => "Zurücksetzen aller Bestätigungsdialoge", - 'Record Editing' => "Nimm Editing", - 'Exclude Table type' => "Ausschließen Tabellentyp", - 'Exclude Table Character set' => "Ausschließen Tabellenzeichensatz", - 'Backup filename' => "Backup-Dateinamen", - 'Invalid filename format' => "Ungültigen Dateinamen-Format", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "alle", - 'all selected' => "alle ausgewählten", - 'An error occured while refreshing the object list.' => "Es trat ein Fehler beim Aktualisieren der Objektliste auf.", - 'Are you sure you want to clear all field information from table?' => "Sind Sie sicher, dass Sie alle FeldInformationen aus einer Tabelle löschen möchten?", - 'Are you sure you want to delete this user account?' => "Sind Sie sicher, dass Sie dieses Benutzerkonto löschen möchten?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "Sind Sie sicher, dass Sie alle Objekte aus der Datenbank {{NAME}} löschen möchten?", - 'Are you sure you want to DROP selected objects?' => "Sind Sie sicher, dass Sie die ausgewählten Objekte löschen möchten?", - 'Are you sure you want to DROP the database {{NAME}}?' => "Sind Sie sicher, dass Sie die Datenbank {{NAME}} löschen möchten?", - 'Are you sure you want to drop this object? {{NAME}}' => "Sind Sie sicher, dass Sie das Objekt {{NAME}} löschen möchten", - 'Are you sure you want to execute {{SELECTED}} queries?' => "Sind Sie sicher, dass Sie {{SELECTED}} Abfragen ausführen möchten?", - 'Are you sure you want to logout?' => "Sind Sie sicher, dass Sie sich abmelden möchten?", - 'Are you sure you want to truncate the table {{NAME}}?' => "Sind Sie sicher, dass Sie die Tabelle {{NAME}} abschneiden?", - 'Blob Data [{{SIZE}}]' => "Blob-Daten [{{SIZE}}]", - 'Cancel' => "Abbrechen", - 'Check for Updates' => "Nach Aktualisierungen suchen", - 'Clear command history?' => "Verlauf leeren?", - 'Close' => "Schließen", - 'Confirm Action' => "Aktion bestätigen", - 'Confirm and do not ask me again about this choice' => "Aktion bestätigen und nicht erneut fragen", - 'Copy Object' => "Objekt kopieren", - 'Create Database' => "Datenbank erstellen", - 'Create Primary Index on this field' => "PrimaryIndex auf diesem Feld erstellen", - 'Databases' => "Datenbanken", - 'Default value [Use quotes to specify string values]' => "Default-Wert (Verwenden Sie Anführungszeichen, um String-Werte anzugeben)", - 'Disallow NULL values in Field' => "NULL-Werte in diesem Feld verbieten", - 'Enter new index name' => "Neuen Index-Namen eingeben", - 'Enter new name for the database object' => "Neuen Namen für das Datenbank-Objekt angeben", - 'Enter the text to search in database' => "Text angeben, der in der Datenbank gesucht wird", - 'Error' => "Fehler", - 'Events' => "Events", - 'Execute query' => "Abfrage ausführen", - 'Exports results' => "Ergebnisse exportieren", - 'Failed to refresh the results.' => "Die Ergebnisse konnten nicht aktualisiert werden.", - 'Field Datatype' => "Feld-Datentyp", - 'Field Name' => "Feldname", - 'Field value is Auto Incremented' => "Feldwert ist AutoIncrement", - 'Functions' => "Funktionen", - 'Indexes Updated' => "Indizes aktualisieren", - 'Maximum Length of field value' => "Maximale Länge des Feldwertes", - 'Navigation Error. Try reloading the page' => "Navigationsfehler. Bitte laden Sie die Seite erneut", - 'New settings saved and applied' => "Die neuen Einstellungen wurden gespeichert und übernommen", - 'New version is available' => "Eine neue Version ist verfügbar", - 'Next' => "Weiter", - 'No' => "Nein", - 'No Table selected' => "Keine Tabelle ausgewählt", - 'Not enough room to show this pane.' => "Nicht genügend Platz, um diesen Bereich anzuzeigen", - 'OK' => "OK", - 'One or more field information is incomplete' => "Ein oder mehrere Feld-Informationen ist unvollständig", - 'Open' => "Open", - 'Operation failed' => "Operation fehlgeschlagen", - 'Pad field values with leading zeros' => "Pad Feldwerte mit führenden Nullen", - 'Pane' => "Bereich", - 'Passwords do not match' => "Die Passwörter stimmen nicht überein", - 'Pin' => "Verankern", - 'Please select one or more operations to perform' => "Bitte wählen Sie eine oder mehrere Operationen, die durchgeführt werden sollen", - 'Please type in one or more queries in the SQL editor!' => "Bitte geben Sie eine oder mehrere Abfragen in der SQL-Editor ein!", - 'Please wait...' => "Bitte warten ...", - 'Previous' => "Zurück", - 'Procedures' => "Prozeduren", - 'Prompt' => "Eingabeaufforderung", - 'Refresh results' => "Ergebnisse aktualisieren", - 'Refreshing object list' => "Objektliste aktualisieren", - 'Rename Object' => "Objekt umbenennen", - 'Resize' => "Größe anpassen", - 'Results page:' => "Ergebnis-Seite:", - 'Select a database to view privileges for the user' => "Datenbank auswählen, für welche die Benutzer-Berechtigungen angezeigt werden", - 'Select an index to view / edit its details' => "Index auswählen, für welchen Details angezeigt/bearbeitet werden", - 'Select at least one field type for searching' => "Mindestens einen Feldtyp für die Suche auswählen", - 'Select objects to operate upon' => "Wählen Sie Objekte, auf betreiben", - 'selector' => "Wähler", - 'Slide Open' => "Schieben öffnen", - 'Table information requires at least one valid field' => "Tabelle Informationen benötigt mindestens ein gültiges Feld", - 'Table name is required' => "Tabelle Name ist erforderlich", - 'Table successfully created' => "Tabelle erfolgreich erstellt", - 'Table successfully modified' => "Tabelle erfolgreich geändert", - 'Tables' => "Tabellen", - 'Text Data [{{SIZE}}]' => "Text Data [{{SIZE}}]", - 'There is no record in the results to export' => "Es gibt keine Ergebnisse, die exportiert werden könnten", - 'This attribute is not required for selected field type' => "Dieses Attribut ist nicht für den ausgewählte Feldtyp erforderlich", - 'Triggers' => "Trigger", - 'Un-Pin' => "Verankerung lösen", - 'Unsigned numbered field only' => "Unsigned nummerierten Feld nur", - 'Update check failed' => "Die Suche nach Aktualisierungen schlug fehl", - 'User information is incomplete or invalid' => "Benutzer-Informationen sind unvollständig oder ungültig", - 'User Manager' => "Benutzer-Manager", - 'Views' => "Views", - 'WARNING' => "WARNUNG", - 'Yes' => "Ja", - 'You have the latest version' => "Sie verwenden die neueste Version", - - ); -?> diff --git a/lang/el.php b/lang/el.php deleted file mode 100644 index 6aeb8ba..0000000 --- a/lang/el.php +++ /dev/null @@ -1,463 +0,0 @@ - "Χρήση Βάσεων Δεδομένων", - 'Drop Database' => "Διαγραφή της βάσης δεδομένων", - 'Empty Database' => "Κενή βάση δεδομένων", - 'Drop all tables from this database' => "Πτώση όλους τους πίνακες από τη βάση", - 'Select statement' => "Επιλέξτε δήλωση", - 'Insert statement' => "Εισαγωγή δήλωση", - 'Update statement' => "Ενημέρωση κατάστασης", - 'Describe' => "Περιγράψτε", - 'Show create command' => "Εμφάνιση δημιουργήσει εντολή", - 'View data' => "Δείτε τα στοιχεία", - 'Alter Table' => "Alter πίνακα", - 'Indexes' => "Ευρετήρια", - 'Engine Type' => "Τύπος κινητήρα", - 'More operations' => "Περισσοτέρων από τις εργασίες", - 'Truncate' => "Κολοβός", - 'Drop' => "Πτώση", - 'Rename' => "Μετονομασία", - 'Export table data' => "Εξαγωγή πίνακα δεδομένων", - 'Create Table' => "Δημιουργία πίνακα", - 'Create View' => "Δημιουργία προβολής", - 'Create Procedure' => "Δημιουργία Διαδικασία", - 'Create Function' => "Δημιουργία Λειτουργία", - 'Create Trigger' => "Δημιουργία Trigger", - 'Create Event' => "Δημιουργία συμβάντος", - 'Show/Hide Panel' => "Εμφάνιση / Απόκρυψη Panel", - 'Show/Hide Header' => "Εμφάνιση / απόκρυψη κεφαλίδας", - 'Copy all queries to clipboard' => "Αντιγράψτε όλα τα ερωτήματα στο πρόχειρο", - 'Clear history' => "Εκκαθάριση ιστορικού", - 'Copy Column values' => "Αντιγραφή Στήλη τιμές", - 'Copy to clipboard' => "Αντιγραφή στο πρόχειρο", - 'Generate SQL Filter' => "Δημιουργία SQL Φίλτρο", - 'Database Manager' => "Διαχείριση Βάσεων Δεδομένων", - 'Manage databases' => "Διαχείριση βάσεων δεδομένων", - - // main menu related text - 'Database' => "Βάση δεδομένων", - 'Refresh' => "Ανανέωση", - 'Refresh database object list' => "Ανανέωση λίστας αντικειμένου βάσης δεδομένων", - 'Create new' => "Δημιουργία νέου", - 'Export' => "Εξαγωγή", - 'Export database to external file' => "Εξαγωγή βάσης δεδομένων σε εξωτερικό αρχείο", - 'Objects' => "Αντικείμενα", - 'Create Table' => "Δημιουργία πίνακα", - 'Create a new table in the database' => "Δημιουργήστε ένα νέο πίνακα στη βάση δεδομένων", - 'Create View' => "Δημιουργία προβολής", - 'Create a new view in the database' => "Δημιουργήστε μια νέα προβολή στη βάση δεδομένων", - 'Create Stored Procedure' => "Δημιουργία αποθηκευμένης διαδικασίας", - 'Create a new stored procedure in the database' => "Δημιουργήστε ένα νέο αποθηκευμένη διαδικασία στη βάση δεδομένων", - 'Create Function' => "Δημιουργία Λειτουργία", - 'Create a new user defined function in the database' => "Δημιουργήστε έναν νέο χρήστη καθορισμένη λειτουργία της βάσης δεδομένων", - 'Create Trigger' => "Δημιουργία Trigger", - 'Create a new trigger in the database' => "Δημιουργήστε ένα νέο έναυσμα στη βάση δεδομένων", - 'Create Event' => "Δημιουργία συμβάντος", - 'Create a new event in the database' => "Δημιουργήστε ένα νέο συμβάν στη βάση δεδομένων", - 'Data' => "Δεδομένα", - 'Import batch file' => "Εισαγωγή αρχείου δέσμης", - 'Import multiple queries from batch file' => "Εισαγωγή πολλαπλά ερωτήματα από αρχείο δέσμης", - 'Export database' => "Εξαγωγή δεδομένων", - 'Export database to batch file as sql dump' => "Εξαγωγή δεδομένων σε αρχείο παρτίδα με sql χωματερή", - 'Export current results' => "Εξαγωγή σημερινά αποτελέσματα", - 'Export query results to clipboard or files' => "Εξαγωγή αποτελεσμάτων ερωτήματος στο πρόχειρο ή αρχείων", - 'Tools' => "Εργαλεία", - 'Process Manager' => "Process Manager", - 'View and manage database processes' => "Προβολή και διαχείριση των διαδικασιών βάσης δεδομένων", - 'Repair Tables' => "Επισκευή Πίνακες", - 'Analyze and repair database tables' => "Αναλύστε και πίνακες βάσης δεδομένων επισκευή", - 'User Manager' => "Διαχείριση χρήστη", - 'Manage database users' => "Διαχείριση χρήστες της βάσης δεδομένων", - 'Search in Database' => "Αναζήτηση στη Βάση Δεδομένων", - 'Search for text in the database' => "Αναζήτηση κειμένου στη βάση δεδομένων", - 'Information' => "Πληροφορίες", - 'Server/Connection Details' => "Διακομιστής Λεπτομέρειες / Σύνδεση", - 'View server configuration' => "Προβολή διαμόρφωση του διακομιστή", - 'View server and connection details' => "Προβολή server και σύνδεση λεπτομέρειες", - 'Server Variables' => "Server Μεταβλητές", - 'Database Summary' => "Βάση δεδομένων Περίληψη", - 'View current database summary stats' => "Προβολή της τρέχουσας στατιστικά συνοπτική βάση δεδομένων", - 'Interface' => "Διασύνδεση", - 'Options' => "Επιλογές", - 'Configure application options' => "Διαμόρφωση επιλογές εφαρμογής", - 'UI Theme' => "Θέμα περιβάλλοντος χρήσης", - 'Database Objects' => "Αντικείμενα βάσης δεδομένων", - 'Toggle Object Viewer' => "Εναλλαγή προβολής αντικειμένων", - 'Help contents' => "περιεχόμενα Βοήθεια", - 'Learn the basics of using MyWebSQL' => "Μάθετε τα βασικά της χρήσης MyWebSQL", - 'QuickStart Tutorials' => "QuickStart Tutorials", - 'See quick hands-on tutorial of MyWebSQL interface' => "Δείτε γρήγορο hands-on tutorial του MyWebSQL διεπαφής", - 'Online documentation' => "Online τεκμηρίωση", - 'View online documentation on project website' => "Δείτε online τεκμηρίωση στην ιστοσελίδα του έργου", - 'Request a Feature' => "Αίτηση Χαρακτηριστικό", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "Αν θα θέλατε πιο χαρακτηριστικό το αγαπημένο σας να είναι μέρος της MyWebSQL, κάντε κλικ εδώ για να ενημερώσει γι 'αυτό", - 'Report a Problem' => "Αναφέρετε ένα πρόβλημα", - 'Check for updates' => "Έλεγχος για ενημερώσεις", - 'Check for updated versions of the application online' => "Ελέγξτε για ενημερωμένες εκδόσεις των online αίτηση", - 'Logout' => "Αποσύνδεση", - 'Logout from this session' => "Έξοδος από αυτή τη σύνοδο", - 'Language' => "Γλώσσα", - 'SQL Editor' => "SQL Επεξεργαστής", - 'Toggle SQL Editor' => "Εναλλαγή Εκδότης SQL", - 'Experimental' => "Πειραματική", - 'Import table data' => "Εισαγωγή δεδομένων πίνακα", - 'Import table data from external file' => "Εισαγωγή πίνακα δεδομένων από εξωτερικό αρχείο", - 'Batch operations' => "Μαζική λειτουργίες", - 'Perform one or more batch operations on database' => "Εκτελέστε μία ή περισσότερες εργασίες παρτίδα στη βάση δεδομένων", - 'Create a new schema in the database' => "Δημιουργήστε ένα νέο σχήμα στη βάση δεδομένων", - 'Create Schema' => "Δημιουργία Schema", - 'Table Description' => "Περιγραφή Πίνακας", - 'Database Manager' => "Διαχείριση Βάσεων Δεδομένων", - 'Manage databases' => "Διαχείριση βάσεων δεδομένων", - 'Backup database on the server as SQL dump' => "Δημιουργία αντιγράφων ασφαλείας της βάσης δεδομένων στο διακομιστή SQL ως χωματερή", - 'Backup Database' => "Αντίγραφο ασφαλείας της βάσης", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "Το πρόγραμμα περιήγησης φαίνεται να είναι πολύ παλιά και δεν υποστηρίζει όλα τα χαρακτηριστικά που απαιτούνται για να τρέξει MyWebSQL.", - 'Try using a newer version of the browser to run this application.' => "Δοκιμάστε να χρησιμοποιήσετε μια νεότερη έκδοση του προγράμματος περιήγησης για την εκτέλεση αυτής της εφαρμογής", - - // text used on various screens in the interface - 'Visit Project website' => "Επισκεφτείτε την Ιστοσελίδα του προγράμματος", - 'Version' => "Έκδοση", - 'Loading' => "Φόρτωση", - 'Quick Edit Options' => "Γρήγορη Επεξεργασία Επιλογές", - 'Press {{KEY}} to set NULL' => "Πιέστε {{KEY}} για να ρυθμίσετε NULL", - 'MySQL Server' => "MySQL Server", - 'Logged in as: {{USER}}' => "Έχετε συνδεθεί ως: {{USER}}", - 'Results' => "Αποτελέσματα", - 'Messages' => "Μηνύματα", - 'Information' => "Πληροφορίες", - 'History' => "Ιστορία", - 'There are no results to show in this view' => "Δεν υπάρχουν αποτελέσματα για να δείξει σε αυτήν την προβολή", - 'Refresh results' => "Ανανέωση αποτελέσματα", - 'Please wait' => "Παρακαλώ περιμένετε", - 'Query All' => "Ερώτημα Όλες", - 'Query' => "Απορία", - 'Add Record' => "Προσθήκη εγγραφής", - 'Delete Record(s)' => "Διαγραφή εγγραφής (-ες)", - 'Update Record(s)' => "Ενημέρωση εγγραφής (-ες)", - 'Generate SQL' => "Δημιουργία SQL", - 'Database name' => "Όνομαβάσηςδεδομένων", - 'Select database after creation' => "Επιλέξτε βάση δεδομένων μετά τη δημιουργία", - 'Database connection failed to the server' => "Βάση δεδομένων σύνδεσης απέτυχε με το διακομιστή", - 'Host' => "Υποδοχής", - 'User' => "Χρήστης", - 'Select a database to begin' => "Επιλέξτε μια βάση δεδομένων για να ξεκινήσει", - 'Select/unselect All records' => "Επιλογή / αποεπιλογή Όλες οι εγγραφές", - 'Primary key column' => "Πρωτεύον κλειδί στήλη", - 'Unique key column' => "Μοναδικό κλειδί στήλη", - 'Showing records {{START}} - {{END}}' => "Εμφάνιση εγγραφών {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "Εμφάνιση πρώτη {{MAX}} καταγράφει μόνο", - '1 query successfully executed' => "1 ερώτημα εκτελέστηκε με επιτυχία", - '{{NUM}} queries successfully executed' => "{{NUM}} ερωτήματα εκτελέστηκε με επιτυχία", - '{{NUM}} record(s) were affected' => "{{NUM}} εγγραφή (ες) επλήγησαν", - '{{NUM}} record(s) updated' => "{{NUM}} εγγραφή (ες) τροποποίησης", - 'Error occurred while executing the query' => "Σφάλμα κατά την εκτέλεση του ερωτήματος", - '{{NUM}} queries failed to execute' => "{{NUM}} ερωτήματα παρέλειψε να εκτελέσει", - 'Click to view/edit column data [{{NUM}} Bytes]' => "Κάντε κλικ για να δείτε / επεξεργαστείτε στήλη δεδομένων [{{NUM}} bytes]", - 'Blob data is not editable' => "Blob δεδομένων δεν είναι δυνατή η επεξεργασία", - 'Blob data saved' => "Blob δεδομένων που είναι αποθηκευμένα", - 'Failed to save blob data' => "Απέτυχε να αποθηκεύσετε τα δεδομένα σταγόνα", - 'The process with id [{{PID}}] was killed' => "Η διαδικασία με id [{{PID}}] σκοτώθηκε", - 'No such process [id = {{PID}}]' => "Δεν υπάρχει τέτοια διαδικασία [id = {{PID}}]", - 'Select a process and click the button to kill the process' => "Επιλέξτε μια διαδικασία και κάντε κλικ στο κουμπί για να σκοτώσει τη διαδικασία", - 'Process ID' => "Αναγνωριστικό διαδικασίας", - 'Command' => "Εντολή", - 'Time' => "Χρόνος", - 'Info' => "Πληροφορίες", - 'Kill Process' => "Kill Process", - 'Failed to get process list' => "Αποτυχία να πάρει τον κατάλογο διαδικασία", - 'The command executed successfully' => "Η εντολή εκτελείται με επιτυχία", - 'Invalid server configuration' => "Άκυρα ρυθμίσεις διακομιστή", - 'Invalid Credentials' => "Έγκυρων πιστοποιήσεων", - 'New database successfully created' => "Νέα βάση δεδομένων δημιουργήθηκε με επιτυχία", - 'File upload failed. Please try again' => "Αποστολή του αρχείου απέτυχε. Παρακαλώ δοκιμάστε ξανά", - 'No queries were executed during import' => "Δεν ερωτήματα εκτελέστηκαν κατά την εισαγωγή", - 'Maximum upload filesize is {{SIZE}}' => "Μέγιστη ανεβάσετε filesize είναι {{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "Υποστηριζόμενα τύπους αρχείων / επεκτάσεις είναι οι εξής: ({{LIST}})", - 'Database summary' => "Βάση δεδομένων συνοπτική", - 'Server Variables' => "Server Μεταβλητές", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "Κάθε υπάρχον αντικείμενο με το ίδιο όνομα θα πρέπει να πέσει το χέρι πριν εκτελέσει την εντολή δημιουργίας", - 'Only create commands are accepted' => "Μόνο δημιουργήσετε εντολές είναι αποδεκτές", - 'User ID' => "Αναγνωριστικό χρήστη", - 'Password' => "Κωδικός πρόσβασης", - 'Login' => "Είσοδος", - 'Create new database object' => "Δημιουργία νέου αντικειμένου βάσης δεδομένων", - 'Enter command for object creation' => "Εισάγετε εντολή για τη δημιουργία αντικειμένων", - 'Submit' => "Υποβολή", - 'Show blob data as: {{TYPE}}' => "Εμφάνιση δεδομένων ως blob: {{TYPE}}", - 'Blob data for column {{NAME}}' => "Blob στοιχεία για τη στήλη {{NAME}}", - 'Create command for {{TYPE}} {{NAME}}' => "Δημιουργία εντολή για {{TYPE}} {{NAME}}", - 'Table Engine (type)' => "Ο πίνακας του κινητήρα (είδος)", - 'Change Table Type' => "Αλλαγή τύπου πίνακα", - 'The requested page is not available on the server' => "Η ζητούμενη σελίδα δεν είναι διαθέσιμη στο διακομιστή", - 'Error' => "Σφάλμα", - 'It appears that you attempted to submit an invalid request to the server' => "Φαίνεται ότι προσπάθησε να υποβάλλει μια άκυρη αίτηση στο διακομιστή", - 'The request has been denied. Reloading the page might solve the problem' => "Η αίτηση έχει απορριφθεί. Ανανέωσης της σελίδας θα μπορούσε να λύσει το πρόβλημα", - 'Access Denied' => "Δεν επιτρέπεται η πρόσβαση", - 'Help' => "Βοήθεια", - 'To see most up-to-date help contents, please visit {{LINK}}' => "Για να δείτε πιο ενημερωμένο περιεχόμενο βοήθεια, παρακαλώ επισκεφτείτε {{LINK}}", - 'It appears that your browser session has expired' => "Φαίνεται ότι την σύνοδο του browser σας έχει λήξει", - 'Please refresh the webpage to re-login' => "Παρακαλούμε να ανανεώσετε τη σελίδα για να επαν-σύνδεση", - 'Table information' => "Πίνακας πληροφοριών", - 'Edit' => "Επεξεργασία", - 'Save' => "Αποθήκευση", - 'Either the database is empty, or there was an error retrieving list of database objects' => "Είτε η βάση δεδομένων είναι άδειο, ή υπήρξε σφάλμα κατά την ανάκτηση κατάλογο των αντικειμένων βάσης δεδομένων", - 'Please try closing and re-opening this dialog again' => "Παρακαλώ δοκιμάστε το κλείσιμο και επαναλειτουργία αυτό το πλαίσιο διαλόγου και πάλι", - 'Structure' => "Δομή", - 'Table Data' => "Πίνακας Δεδομένων", - 'Structure and Table Data' => "Δομή και πίνακα δεδομένων", - 'Options' => "Επιλογές", - 'Set Auto increment field values to NULL' => "Ρύθμιση Auto τιμές πεδίου αύξηση σε NULL", - 'Add DROP command before create statements' => "Προσθέστε DROP εντολή πριν από τη δημιουργία καταστάσεων", - 'Export' => "Εξαγωγή", - 'Import' => "Εισαγωγής", - 'Export Database' => "Βάση δεδομένων των εξαγωγικών", - 'Export Table' => "Εξαγωγή πίνακα", - 'Server information' => "Πληροφορίες Server", - 'Server' => "Διακομιστή", - 'Version comment' => "Έκδοση σχόλιο", - 'Character sets' => "Σύνολα χαρακτήρων", - 'Server character set' => "σύνολο χαρακτήρων Server", - 'Client character set' => "Πελάτης σύνολο χαρακτήρων", - 'Database character set' => "Database σύνολο χαρακτήρων", - 'Results character set' => "Αποτελέσματα σύνολο χαρακτήρων", - 'Export As' => "Εξαγωγή ως", - 'Insert Statements' => "Εισαγωγή Δηλώσεις", - 'Include field names in query' => "Συμπεριλάβετε τα ονόματα των πεδίων στο ερώτημά", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Απλό κείμενο (μία εγγραφή ανά γραμμή)", - 'Fields separated by:' => "Τα πεδία διαχωρίζονται με:", - 'Export Results' => "Εξαγωγή Αποτελεσμάτων", - 'Select SQL batch file to import' => "Επιλέξτε το αρχείο δέσμης SQL για την εισαγωγή", - 'Continue processing even if error occurs' => "Συνέχιση της επεξεργασίας ακόμα κι αν προκύψει σφάλμα", - 'Basic Information' => "Βασικές πληροφορίες", - 'Table Properties' => "Ιδιότητες πίνακα", - 'Table Name' => "Πίνακας Name", - 'Field Name' => "Όνομα πεδίου", - 'Data Type' => "Δεδομένα Τύπος", - 'Length' => "Μήκος", - 'Default value' => "Προεπιλεγμένη τιμή", - 'Unsigned' => "Unsigned", - 'Zero Fill' => "Μηδέν Γέμισμα", - 'Primary Key' => "Πρωτεύον κλειδί", - 'Auto Increment' => "Αυτόματη Προσαύξηση", - 'Not NULL' => "Δεν NULL", - 'Character Set' => "Σύνολο χαρακτήρων", - 'Collation' => "Αντιπαραβολή", - 'Comment' => "Σχολιάστε", - 'Waiting for table information to be submitted' => "Αναμονή για στοιχεία πίνακα που πρέπει να υποβάλλονται", - 'Add field' => "Προσθήκη πεδίου", - 'Delete selected field' => "Διαγραφή επιλεγμένου πεδίου", - 'Clear Table Information' => "Σαφείς πληροφορίες Πίνακας", - 'List of values' => "Κατάλογος τιμών", - 'Query Results' => "Ερώτημα Αποτελέσματα", - 'Data for {{TABLE}}' => "Τα στοιχεία για το {{TABLE}}", - 'Select tables to be analyzed/repaired' => "Επιλέξτε τους πίνακες που πρέπει να αναλύονται / επισκευαστεί", - 'Operation to perform' => "Λειτουργία για την εκτέλεση", - 'Analyze' => "Αναλύστε", - 'Check' => "Έλεγχος", - 'Optimize' => "Βελτιστοποίηση", - 'Repair' => "Επισκευής", - 'Skip Binary logging' => "Περάστε Binary υλοτομία", - 'Default' => "Προεπιλογή", - 'Quick' => "Γρήγορη", - 'Fast' => "Γρήγορα", - 'Medium' => "Μεσαίο", - 'Extended' => "Επέκταση", - 'Changed' => "Άλλαξε", - 'Use Frm files (MyISAM tables)' => "Χρησιμοποιήστε τα αρχεία FRM (MyISAM πίνακες)", - 'User Information' => "Πληροφορίες χρήστη", - 'Global Privileges' => "Παγκόσμια Προνόμια", - 'Database Privileges' => "Βάση δεδομένων Προνόμια", - 'Import File' => "Εισαγωγή αρχείου", - 'Index Manager' => "Index Manager", - 'Edit table structure' => "Επεξεργασία δομή πίνακα", - 'Save All Changes' => "Αποθήκευση όλων των αλλαγών", - 'Changes are not saved until you press [Save All Changes]' => "Οι αλλαγές δεν αποθηκεύονται μέχρι να πατήσετε [Αποθήκευση όλων των αλλαγών]", - 'Field Length' => "Πεδίο Μήκος", - 'Select objects to include in export' => "Επιλέξτε αντικείμενα για να συμπεριλάβει στην εξαγωγή", - 'Export type' => "Εξαγωγή τύπου", - 'Select All/None' => "Επιλογή Όλων / Δεν υφίσταται", - 'Add User' => "Προσθήκη Χρήστη", - 'Update User' => "Ενημέρωση Χρήστη", - 'Delete selected User' => "Διαγραφή επιλεγμένων χρηστών", - 'Remove Password' => "Κατάργηση κωδικού πρόσβασης", - 'Select tables to search' => "Επιλέξτε τους πίνακες για να αναζητήσετε", - 'Search Options' => "Επιλογές αναζήτησης", - 'Search in following field types' => "Αναζήτηση στα παρακάτω τύπους τομέα", - 'Numeric Fields' => "Αριθμητικό Πεδία", - 'Character Fields' => "Χαρακτήρας πεδία", - 'Text Fields' => "Κείμενο Πεδία", - 'Date/Time Fields' => "Ημερομηνία / Ώρα Πεδία", - 'Comparison Type' => "Σύγκριση Τύπος", - 'Text to search' => "Κείμενο προς αναζήτηση", - 'Search' => "Αναζήτηση", - 'Search Results' => "Αποτελέσματα Αναζήτησης", - 'Number of matches' => "Αριθμό των αγώνων", - 'Search results for {{KEYWORD}} in the database' => "Αποτελέσματα αναζήτησης για {{KEYWORD}} στη βάση δεδομένων", - '{{NUM}} match(es)' => "{{NUM}} αγώνα (εις)", - 'Copy query to editor' => "Αντιγράψτε το ερώτημα στο συντάκτη", - 'Done' => "Done", - 'SQL Editor' => "SQL Επεξεργαστής", - 'Create Copy' => "Δημιουργία Αντιγραφή", - 'Minimize All' => "Ελαχιστοποίηση Όλα", - 'Copy Record(s)' => "Αντιγραφή εγγραφή (ες)", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "Διαχωρισμένες με κόμμα (CSV για το Excel)", - 'Select data file to import' => "Επιλέξτε το αρχείο δεδομένων για την εισαγωγή", - 'Select table for data import' => "Επιλέξτε πίνακα για την εισαγωγή δεδομένων", - 'First line contains column names' => "Πρώτη γραμμή περιέχει ονόματα στηλών", - 'Select objects to operate upon' => "Επιλέξτε αντικείμενα για να λειτουργούν κατά", - 'Operations to perform' => "Οι ενέργειες για την εκτέλεση", - 'Add prefix string to name' => "Προσθήκη συμβολοσειράς πρόθεμα για να αναφέρουμε", - 'Delete prefix string from name' => "Διαγραφή συμβολοσειράς πρόθεμα από το όνομα", - 'Command text' => "Εντολή", - 'DROP selected database objects' => "Απόθεση των επιλεγμένων αντικειμένων βάσης δεδομένων", - 'Batch operation results' => "Αποτελέσματα λειτουργίας παρτίδας", - 'Operation' => "Λειτουργία", - 'Status' => "Κατάσταση", - '{{NUM}} queries generated' => "{{NUM}} θέτει ερωτήματα που δημιουργούνται", - 'Please select one or more operations to perform' => "Παρακαλώ επιλέξτε μία ή περισσότερες επιχειρήσεις για την εκτέλεση", - 'Quick Search' => "Γρήγορη Αναζήτηση", - '{{NAME}} client library is not installed' => "{{NAME}} βιβλιοθήκη πελάτης δεν έχει εγκατασταθεί", - '{{NAME}} extension is not installed' => "{{NAME}} επέκταση δεν έχει εγκατασταθεί", - 'SQLite database folder is inaccessible or not writable' => "SQLite φάκελο της βάσης δεδομένων είναι δυνατή η πρόσβαση ή δεν είναι εγγράψιμος", - 'Maximize/Restore Results Pane' => "Μεγιστοποίηση / Επαναφορά Αποτελέσματα Παράθυρο", - 'Select databases to operate upon' => "Επιλέξτε βάσεις δεδομένων για να λειτουργήσει κατά", - 'DROP selected databases' => "DROP επιλεγμένες βάσεις δεδομένων", - 'The following operation is irreversible' => "Η ακόλουθη εργασία είναι μη αναστρέψιμη", - 'Potential data loss might occur' => "Πιθανή απώλεια δεδομένων μπορεί να συμβεί", - 'Add TRUNCATE command before insert statements' => "Προσθήκη TRUNCATE εντολή πριν από τις δηλώσεις ένθετο", - 'Select objects to include in backup' => "Επιλέξτε αντικείμενα για να συμπεριλάβει στο αντίγραφο ασφαλείας", - 'Backup folder does not exist or is not writable' => "Φάκελο αντιγράφων ασφαλείας δεν υπάρχει ή δεν είναι εγγράψιμος", - 'Backup type' => "Δημιουργία αντιγράφων ασφαλείας τύπου", - 'Database backup successfully created' => "Εφεδρική βάση δεδομένων που δημιουργήθηκε με επιτυχία", - 'Failed to create database backup' => "Αποτυχία δημιουργίας αντιγράφων ασφαλείας της βάσης δεδομένων", - 'Generate Bulk insert statements' => "Δημιουργία Bulk δηλώσεις ένθετο", - 'Maximum size of SQL statement' => "Μέγιστο μέγεθος της δήλωσης SQL", - 'Show record count with table names' => "Εμφάνιση πλήθος των εγγραφών με ονόματα πινάκων", - 'Sort Table listing by' => "Ταξινόμηση λίστα Πίνακας", - 'Name' => "Όνομα", - 'Last Update Time' => "Τελευταία Ενημέρωση Ώρα", - 'Maximum records to display in result set' => "Μέγιστη εγγραφών για προβολή στη σύνολο των αποτελεσμάτων", - 'Show popup dialog for editing large text data' => "Εμφάνιση παραθύρου διαλόγου για την επεξεργασία μεγάλου όγκου δεδομένων κειμένου", - 'Miscellaneous' => "Διάφορα", - 'Reset all confirmation dialogs' => "Επαναφορά όλων διαλόγου επιβεβαίωσης", - 'Record Editing' => "Μοντάζ Εγγραφή", - 'Exclude Table type' => "Εξαίρεση τύπου πίνακα", - 'Exclude Table Character set' => "Εξαίρεση Πίνακας σύνολο χαρακτήρων", - 'Backup filename' => "Δημιουργία αντιγράφων ασφαλείας αρχείου", - 'Invalid filename format' => "Μη έγκυρη μορφή αρχείου", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "όλα", - 'all selected' => "όλων των επιλεγμένων", - 'An error occured while refreshing the object list.' => "Παρουσιάστηκε σφάλμα κατά την ανανέωση της λίστας αντικείμενο.", - 'Are you sure you want to clear all field information from table?' => "Είστε σίγουροι ότι θέλετε να διαγράψετε όλες τις πληροφορίες αυτού του πεδίου από το τραπέζι;", - 'Are you sure you want to delete this user account?' => "Είστε σίγουροι ότι θέλετε να διαγράψετε αυτό το λογαριασμό χρήστη;", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "Είστε σίγουροι ότι θέλετε να DROP όλα τα αντικείμενα από τη βάση δεδομένων {{NAME}};", - 'Are you sure you want to DROP selected objects?' => "Είστε βέβαιοι ότι θέλετε να πέσει επιλεγμένα αντικείμενα;", - 'Are you sure you want to DROP the database {{NAME}}?' => "Είστε σίγουροι ότι θέλετε να DROP τη βάση δεδομένων {{NAME}};", - 'Are you sure you want to drop this object? {{NAME}}' => "Είστε σίγουροι ότι θέλετε να πέσει αυτό το αντικείμενο; {{NAME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "Είστε σίγουροι ότι θέλετε να εκτελέσετε {{SELECTED}} ερωτήματα;", - 'Are you sure you want to logout?' => "Είστε σίγουροι ότι θέλετε να αποσυνδεθείτε;", - 'Are you sure you want to truncate the table {{NAME}}?' => "Είστε σίγουροι ότι θέλετε να περικόψετε τον πίνακα {{NAME}};", - 'Blob Data [{{SIZE}}]' => "Δεδομένα Blob [{{SIZE}}]", - 'Cancel' => "Ακύρωση", - 'Check for Updates' => "Έλεγχος για ενημερώσεις", - 'Clear command history?' => "Εκκαθάριση ιστορικού εντολή;", - 'Close' => "Κλείσιμο", - 'Confirm Action' => "Επιβεβαίωση Δράση", - 'Confirm and do not ask me again about this choice' => "Επιβεβαίωση και μην με ρωτήσετε πάλι για την επιλογή αυτή", - 'Copy Object' => "Αντιγραφή αντικειμένου", - 'Create Database' => "Δημιουργία βάσης δεδομένων", - 'Create Primary Index on this field' => "Δημιουργία Δημοτικής Δείκτης σε αυτό το πεδίο", - 'Databases' => "Βάσεις Δεδομένων", - 'Default value [Use quotes to specify string values]' => "Προεπιλεγμένη τιμή [Χρησιμοποιήστε εισαγωγικά για να καθορίσετε τις τιμές συμβολοσειράς]", - 'Disallow NULL values in Field' => "Απαγόρευση τιμές NULL στο πεδίο", - 'Enter new index name' => "Πληκτρολογήστε το νέο όνομα δείκτη", - 'Enter new name for the database object' => "Πληκτρολογήστε το νέο όνομα για το αντικείμενο βάσης δεδομένων", - 'Enter the text to search in database' => "Εισάγετε το κείμενο προς αναζήτηση στη βάση δεδομένων", - 'Error' => "Σφάλμα", - 'Events' => "Εκδηλώσεις", - 'Execute query' => "Εκτέλεση ερωτήματος", - 'Exports results' => "Εξαγωγές αποτελέσματα", - 'Failed to refresh the results.' => "Αποτυχία να ανανεώσετε τα αποτελέσματα.", - 'Field Datatype' => "Πεδίο Τύπος δεδομένων", - 'Field Name' => "Όνομα πεδίου", - 'Field value is Auto Incremented' => "Η τιμή του πεδίου είναι αυτόματη αυξάνεται", - 'Functions' => "Λειτουργίες", - 'Indexes Updated' => "Ενημερώθηκε Ευρετήρια", - 'Maximum Length of field value' => "Μέγιστο μήκος του πεδίου τιμών", - 'Navigation Error. Try reloading the page' => "Σφάλμα πλοήγησης. Δοκιμάστε την επαναφόρτωση της σελίδας", - 'New settings saved and applied' => "Νέες ρυθμίσεις αποθηκεύονται και να εφαρμόζονται", - 'New version is available' => "Νέα έκδοση είναι διαθέσιμη", - 'Next' => "Επόμενο", - 'No' => "Δεν", - 'No Table selected' => "Δεν Πίνακας επιλεγμένων", - 'Not enough room to show this pane.' => "Δεν έχει αρκετό χώρο για να δείτε αυτό το παράθυρο.", - 'OK' => "ΟΚ", - 'One or more field information is incomplete' => "Μία ή περισσότερες πληροφορίες πεδίου είναι ελλιπείς", - 'Open' => "Άνοιγμα", - 'Operation failed' => "Η λειτουργία απέτυχε", - 'Pad field values with leading zeros' => "Pad τιμές πεδίου που αρχίζει με μηδενικά", - 'Pane' => "Παράθυρο", - 'Passwords do not match' => "Οι κωδικοί πρόσβασης δεν ταιριάζουν", - 'Pin' => "Καρφίτσα", - 'Please select one or more operations to perform' => "Παρακαλώ επιλέξτε μία ή περισσότερες επιχειρήσεις για την εκτέλεση", - 'Please type in one or more queries in the SQL editor!' => "Παρακαλώ πληκτρολογήστε ένα ή περισσότερα ερωτήματα στον επεξεργαστή SQL!", - 'Please wait...' => "Παρακαλώ περιμένετε ...", - 'Previous' => "Προηγούμενη", - 'Procedures' => "Διαδικασίες", - 'Prompt' => "Προτροπή", - 'Refresh results' => "Ανανέωση αποτελέσματα", - 'Refreshing object list' => "Δροσιστικό λίστα αντικειμένων", - 'Rename Object' => "Μετονομασία αντικειμένου", - 'Resize' => "Αλλαγή μεγέθους", - 'Results page:' => "Σελίδα αποτελεσμάτων:", - 'Select a database to view privileges for the user' => "Επιλέξτε μια βάση δεδομένων για να δείτε τα προνόμια για τον χρήστη", - 'Select an index to view / edit its details' => "Επιλέξτε ένα ευρετήριο για να δείτε / επεξεργαστείτε τις λεπτομέρειες", - 'Select at least one field type for searching' => "Επιλέξτε τουλάχιστον έναν τύπο πεδίου για την αναζήτηση", - 'Select objects to operate upon' => "Επιλέξτε αντικείμενα για να λειτουργούν κατά", - 'selector' => "επιλογέας", - 'Slide Open' => "Slide Open", - 'Table information requires at least one valid field' => "Πίνακας πληροφοριών απαιτεί τουλάχιστον ένα έγκυρο πεδίο", - 'Table name is required' => "Πίνακας Απαιτείται το όνομα", - 'Table successfully created' => "Ο πίνακας δημιουργήθηκε με επιτυχία", - 'Table successfully modified' => "Πίνακας επιτυχώς τροποποιημένων", - 'Tables' => "Πίνακες", - 'Text Data [{{SIZE}}]' => "Δεδομένα Κείμενο [{{SIZE}}]", - 'There is no record in the results to export' => "Δεν υπάρχει κανένα αρχείο των αποτελεσμάτων για την εξαγωγή", - 'This attribute is not required for selected field type' => "Αυτό το χαρακτηριστικό δεν είναι απαραίτητη για τον επιλεγμένο τύπο πεδίου", - 'Triggers' => "Triggers", - 'Un-Pin' => "Un-Pin", - 'Unsigned numbered field only' => "Ανυπόγραφο αριθμημένο πεδίο μόνο", - 'Update check failed' => "Ενημέρωση ελέγξετε απέτυχε", - 'User information is incomplete or invalid' => "Χρήστης πληροφορίες είναι ελλιπείς ή άκυρο", - 'User Manager' => "Διαχείριση χρήστη", - 'Views' => "Εμφανίσεις", - 'WARNING' => "ΠΡΟΕΙΔΟΠΟΙΗΣΗ", - 'Yes' => "Ναι", - 'You have the latest version' => "Έχετε την τελευταία έκδοση", - - ); -?> diff --git a/lang/en.php b/lang/en.php deleted file mode 100644 index 6c50d06..0000000 --- a/lang/en.php +++ /dev/null @@ -1,462 +0,0 @@ - "Use Database", - 'Drop Database' => "Drop Database", - 'Empty Database' => "Empty Database", - 'Drop all tables from this database' => "Drop all tables from this database", - 'Select statement' => "Select statement", - 'Insert statement' => "Insert statement", - 'Update statement' => "Update statement", - 'Describe' => "Describe", - 'Show create command' => "Show create command", - 'View data' => "View data", - 'Alter Table' => "Alter Table", - 'Indexes' => "Indexes", - 'Engine Type' => "Engine Type", - 'More operations' => "More operations", - 'Truncate' => "Truncate", - 'Drop' => "Drop", - 'Rename' => "Rename", - 'Export table data' => "Export table data", - 'Create Table' => "Create Table", - 'Create View' => "Create View", - 'Create Procedure' => "Create Procedure", - 'Create Function' => "Create Function", - 'Create Trigger' => "Create Trigger", - 'Create Event' => "Create Event", - 'Show/Hide Panel' => "Show/Hide Panel", - 'Show/Hide Header' => "Show/Hide Header", - 'Copy all queries to clipboard' => "Copy all queries to clipboard", - 'Clear history' => "Clear history", - 'Copy Column values' => "Copy Column values", - 'Copy to clipboard' => "Copy to clipboard", - 'Generate SQL Filter' => "Generate SQL Filter", - 'Database Manager' => "Database Manager", - 'Manage databases' => "Manage databases", - - // main menu related text - 'Database' => "Database", - 'Refresh' => "Refresh", - 'Refresh database object list' => "Refresh database object list", - 'Create new' => "Create new", - 'Export' => "Export", - 'Export database to external file' => "Export database to external file", - 'Objects' => "Objects", - 'Create Table' => "Create Table", - 'Create a new table in the database' => "Create a new table in the database", - 'Create View' => "Create View", - 'Create a new view in the database' => "Create a new view in the database", - 'Create Stored Procedure' => "Create Stored Procedure", - 'Create a new stored procedure in the database' => "Create a new stored procedure in the database", - 'Create Function' => "Create Function", - 'Create a new user defined function in the database' => "Create a new user defined function in the database", - 'Create Trigger' => "Create Trigger", - 'Create a new trigger in the database' => "Create a new trigger in the database", - 'Create Event' => "Create Event", - 'Create a new event in the database' => "Create a new event in the database", - 'Data' => "Data", - 'Import batch file' => "Import batch file", - 'Import multiple queries from batch file' => "Import multiple queries from batch file", - 'Export database' => "Export database", - 'Export database to batch file as sql dump' => "Export database to batch file as sql dump", - 'Export current results' => "Export current results", - 'Export query results to clipboard or files' => "Export query results to clipboard or files", - 'Tools' => "Tools", - 'Process Manager' => "Process Manager", - 'View and manage database processes' => "View and manage database processes", - 'Repair Tables' => "Repair Tables", - 'Analyze and repair database tables' => "Analyze and repair database tables", - 'User Manager' => "User Manager", - 'Manage database users' => "Manage database users", - 'Search in Database' => "Search in Database", - 'Search for text in the database' => "Search for text in the database", - 'Information' => "Information", - 'Server/Connection Details' => "Server/Connection Details", - 'View server configuration' => "View server configuration", - 'View server and connection details' => "View server and connection details", - 'Server Variables' => "Server Variables", - 'Database Summary' => "Database Summary", - 'View current database summary stats' => "View current database summary stats", - 'Interface' => "Interface", - 'Options' => "Options", - 'Configure application options' => "Configure application options", - 'UI Theme' => "UI Theme", - 'Database Objects' => "Database Objects", - 'Toggle Object Viewer' => "Toggle Object Viewer", - 'Help contents' => "Help contents", - 'Learn the basics of using MyWebSQL' => "Learn the basics of using MyWebSQL", - 'QuickStart Tutorials' => "QuickStart Tutorials", - 'See quick hands-on tutorial of MyWebSQL interface' => "See quick hands-on tutorial of MyWebSQL interface", - 'Online documentation' => "Online documentation", - 'View online documentation on project website' => "View online documentation on project website", - 'Request a Feature' => "Request a Feature", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it", - 'Report a Problem' => "Report a Problem", - 'Check for updates' => "Check for updates", - 'Check for updated versions of the application online' => "Check for updated versions of the application online", - 'Logout' => "Logout", - 'Logout from this session' => "Logout from this session", - 'Language' => "Language", - 'SQL Editor' => "SQL Editor", - 'Toggle SQL Editor' => "Toggle SQL Editor", - 'Experimental' => "Experimental", - 'Import table data' => "Import table data", - 'Import table data from external file' => "Import table data from external file", - 'Batch operations' => "Batch operations", - 'Perform one or more batch operations on database' => "Perform one or more batch operations on database", - 'Create a new schema in the database' => "Create a new schema in the database", - 'Create Schema' => "Create Schema", - 'Table Description' => "Table Description", - 'Database Manager' => "Database Manager", - 'Manage databases' => "Manage databases", - 'Backup database on the server as SQL dump' => "Backup database on the server as SQL dump", - 'Backup Database' => "Backup Database", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "Your browser appears to be very old and does not support all features required to run MyWebSQL.", - 'Try using a newer version of the browser to run this application.' => "Try using a newer version of the browser to run this application.", - - // text used on various screens in the interface - 'Visit Project website' => "Visit Project website", - 'Version' => "Version", - 'Loading' => "Loading", - 'Quick Edit Options' => "Quick Edit Options", - 'Press {{KEY}} to set NULL' => "Press {{KEY}} to set NULL", - 'MySQL Server' => "MySQL Server", - 'Logged in as: {{USER}}' => "Logged in as: {{USER}}", - 'Results' => "Results", - 'Messages' => "Messages", - 'Information' => "Information", - 'History' => "History", - 'There are no results to show in this view' => "There are no results to show in this view", - 'Refresh results' => "Refresh results", - 'Please wait' => "Please wait", - 'Query All' => "Query All", - 'Query' => "Query", - 'Add Record' => "Add Record", - 'Delete Record(s)' => "Delete Record(s)", - 'Update Record(s)' => "Update Record(s)", - 'Generate SQL' => "Generate SQL", - 'Database name' => "Database name", - 'Select database after creation' => "Select database after creation", - 'Database connection failed to the server' => "Database connection failed to the server", - 'Host' => "Host", - 'User' => "User", - 'Select a database to begin' => "Select a database to begin", - 'Select/unselect All records' => "Select/unselect All records", - 'Primary key column' => "Primary key column", - 'Unique key column' => "Unique key column", - 'Showing records {{START}} - {{END}}' => "Showing records {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "Showing first {{MAX}} records only", - '1 query successfully executed' => "1 query successfully executed", - '{{NUM}} queries successfully executed' => "{{NUM}} queries successfully executed", - '{{NUM}} record(s) were affected' => "{{NUM}} record(s) were affected", - '{{NUM}} record(s) updated' => "{{NUM}} record(s) updated", - 'Error occurred while executing the query' => "Error occurred while executing the query", - '{{NUM}} queries failed to execute' => "{{NUM}} queries failed to execute", - 'Click to view/edit column data [{{NUM}} Bytes]' => "Click to view/edit column data [{{NUM}} Bytes]", - 'Blob data is not editable' => "Blob data is not editable", - 'Blob data saved' => "Blob data saved", - 'Failed to save blob data' => "Failed to save blob data", - 'The process with id [{{PID}}] was killed' => "The process with id [{{PID}}] was killed", - 'No such process [id = {{PID}}]' => "No such process [id = {{PID}}]", - 'Select a process and click the button to kill the process' => "Select a process and click the button to kill the process", - 'Process ID' => "Process ID", - 'Command' => "Command", - 'Time' => "Time", - 'Info' => "Info", - 'Kill Process' => "Kill Process", - 'Failed to get process list' => "Failed to get process list", - 'The command executed successfully' => "The command executed successfully", - 'Invalid server configuration' => "Invalid server configuration", - 'Invalid Credentials' => "Invalid Credentials", - 'New database successfully created' => "New database successfully created", - 'File upload failed. Please try again' => "File upload failed. Please try again", - 'No queries were executed during import' => "No queries were executed during import", - 'Maximum upload filesize is {{SIZE}}' => "Maximum upload filesize is {{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "Supported filetypes / extensions are: ({{LIST}})", - 'Database summary' => "Database summary", - 'Server Variables' => "Server Variables", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "Any existing object with the same name should be dropped manually before executing the creation command", - 'Only create commands are accepted' => "Only create commands are accepted", - 'User ID' => "User ID", - 'Password' => "Password", - 'Login' => "Login", - 'Create new database object' => "Create new database object", - 'Enter command for object creation' => "Enter command for object creation", - 'Submit' => "Submit", - 'Show blob data as: {{TYPE}}' => "Show blob data as: {{TYPE}}", - 'Blob data for column {{NAME}}' => "Blob data for column {{NAME}}", - 'Create command for {{TYPE}} {{NAME}}' => "Create command for {{TYPE}} {{NAME}}", - 'Table Engine (type)' => "Table Engine (type)", - 'Change Table Type' => "Change Table Type", - 'The requested page is not available on the server' => "The requested page is not available on the server", - 'Error' => "Error", - 'It appears that you attempted to submit an invalid request to the server' => "It appears that you attempted to submit an invalid request to the server", - 'The request has been denied. Reloading the page might solve the problem' => "The request has been denied. Reloading the page might solve the problem", - 'Access Denied' => "Access Denied", - 'Help' => "Help", - 'To see most up-to-date help contents, please visit {{LINK}}' => "To see most up-to-date help contents, please visit {{LINK}}", - 'It appears that your browser session has expired' => "It appears that your browser session has expired", - 'Please refresh the webpage to re-login' => "Please refresh the webpage to re-login", - 'Table information' => "Table information", - 'Edit' => "Edit", - 'Save' => "Save", - 'Either the database is empty, or there was an error retrieving list of database objects' => "Either the database is empty, or there was an error retrieving list of database objects", - 'Please try closing and re-opening this dialog again' => "Please try closing and re-opening this dialog again", - 'Structure' => "Structure", - 'Table Data' => "Table Data", - 'Structure and Table Data' => "Structure and Table Data", - 'Options' => "Options", - 'Set Auto increment field values to NULL' => "Set Auto increment field values to NULL", - 'Add DROP command before create statements' => "Add DROP command before create statements", - 'Export' => "Export", - 'Import' => "Import", - 'Export Database' => "Export Database", - 'Export Table' => "Export Table", - 'Server information' => "Server information", - 'Server' => "Server", - 'Version comment' => "Version comment", - 'Character sets' => "Character sets", - 'Server character set' => "Server character set", - 'Client character set' => "Client character set", - 'Database character set' => "Database character set", - 'Results character set' => "Results character set", - 'Export As' => "Export As", - 'Insert Statements' => "Insert Statements", - 'Include field names in query' => "Include field names in query", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Plain Text (One record per line)", - 'Fields separated by:' => "Fields separated by:", - 'Export Results' => "Export Results", - 'Select SQL batch file to import' => "Select SQL batch file to import", - 'Continue processing even if error occurs' => "Continue processing even if error occurs", - 'Basic Information' => "Basic Information", - 'Table Properties' => "Table Properties", - 'Table Name' => "Table Name", - 'Field Name' => "Field Name", - 'Data Type' => "Data Type", - 'Length' => "Length", - 'Default value' => "Default value", - 'Unsigned' => "Unsigned", - 'Zero Fill' => "Zero Fill", - 'Primary Key' => "Primary Key", - 'Auto Increment' => "Auto Increment", - 'Not NULL' => "Not NULL", - 'Character Set' => "Character Set", - 'Collation' => "Collation", - 'Comment' => "Comment", - 'Waiting for table information to be submitted' => "Waiting for table information to be submitted", - 'Add field' => "Add field", - 'Delete selected field' => "Delete selected field", - 'Clear Table Information' => "Clear Table Information", - 'List of values' => "List of values", - 'Query Results' => "Query Results", - 'Data for {{TABLE}}' => "Data for {{TABLE}}", - 'Select tables to be analyzed/repaired' => "Select tables to be analyzed/repaired", - 'Operation to perform' => "Operation to perform", - 'Analyze' => "Analyze", - 'Check' => "Check", - 'Optimize' => "Optimize", - 'Repair' => "Repair", - 'Skip Binary logging' => "Skip Binary logging", - 'Default' => "Default", - 'Quick' => "Quick", - 'Fast' => "Fast", - 'Medium' => "Medium", - 'Extended' => "Extended", - 'Changed' => "Changed", - 'Use Frm files (MyISAM tables)' => "Use Frm files (MyISAM tables)", - 'User Information' => "User Information", - 'Global Privileges' => "Global Privileges", - 'Database Privileges' => "Database Privileges", - 'Import File' => "Import File", - 'Index Manager' => "Index Manager", - 'Edit table structure' => "Edit table structure", - 'Save All Changes' => "Save All Changes", - 'Changes are not saved until you press [Save All Changes]' => "Changes are not saved until you press [Save All Changes]", - 'Field Length' => "Field Length", - 'Select objects to include in export' => "Select objects to include in export", - 'Export type' => "Export type", - 'Select All/None' => "Select All/None", - 'Add User' => "Add User", - 'Update User' => "Update User", - 'Delete selected User' => "Delete selected User", - 'Remove Password' => "Remove Password", - 'Select tables to search' => "Select tables to search", - 'Search Options' => "Search Options", - 'Search in following field types' => "Search in following field types", - 'Numeric Fields' => "Numeric Fields", - 'Character Fields' => "Character Fields", - 'Text Fields' => "Text Fields", - 'Date/Time Fields' => "Date/Time Fields", - 'Comparison Type' => "Comparison Type", - 'Text to search' => "Text to search", - 'Search' => "Search", - 'Search Results' => "Search Results", - 'Number of matches' => "Number of matches", - 'Search results for {{KEYWORD}} in the database' => "Search results for {{KEYWORD}} in the database", - '{{NUM}} match(es)' => "{{NUM}} match(es)", - 'Copy query to editor' => "Copy query to editor", - 'Done' => "Done", - 'SQL Editor' => "SQL Editor", - 'Create Copy' => "Create Copy", - 'Minimize All' => "Minimize All", - 'Copy Record(s)' => "Copy Record(s)", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "Comma Separated (CSV for Excel)", - 'Select data file to import' => "Select data file to import", - 'Select table for data import' => "Select table for data import", - 'First line contains column names' => "First line contains column names", - 'Select objects to operate upon' => "Select objects to operate upon", - 'Operations to perform' => "Operations to perform", - 'Add prefix string to name' => "Add prefix string to name", - 'Delete prefix string from name' => "Delete prefix string from name", - 'Command text' => "Command text", - 'DROP selected database objects' => "DROP selected database objects", - 'Batch operation results' => "Batch operation results", - 'Operation' => "Operation", - 'Status' => "Status", - '{{NUM}} queries generated' => "{{NUM}} queries generated", - 'Please select one or more operations to perform' => "Please select one or more operations to perform", - 'Quick Search' => "Quick Search", - '{{NAME}} client library is not installed' => "{{NAME}} client library is not installed", - '{{NAME}} extension is not installed' => "{{NAME}} extension is not installed", - 'SQLite database folder is inaccessible or not writable' => "SQLite database folder is inaccessible or not writable", - 'Maximize/Restore Results Pane' => "Maximize/Restore Results Pane", - 'Select databases to operate upon' => "Select databases to operate upon", - 'DROP selected databases' => "DROP selected databases", - 'The following operation is irreversible' => "The following operation is irreversible", - 'Potential data loss might occur' => "Potential data loss might occur", - 'Add TRUNCATE command before insert statements' => "Add TRUNCATE command before insert statements", - 'Select objects to include in backup' => "Select objects to include in backup", - 'Backup folder does not exist or is not writable' => "Backup folder does not exist or is not writable", - 'Backup type' => "Backup type", - 'Database backup successfully created' => "Database backup successfully created", - 'Failed to create database backup' => "Failed to create database backup", - 'Generate Bulk insert statements' => "Generate Bulk insert statements", - 'Maximum size of SQL statement' => "Maximum size of SQL statement", - 'Show record count with table names' => "Show record count with table names", - 'Sort Table listing by' => "Sort Table listing by", - 'Name' => "Name", - 'Last Update Time' => "Last Update Time", - 'Maximum records to display in result set' => "Maximum records to display in result set", - 'Show popup dialog for editing large text data' => "Show popup dialog for editing large text data", - 'Miscellaneous' => "Miscellaneous", - 'Reset all confirmation dialogs' => "Reset all confirmation dialogs", - 'Record Editing' => "Record Editing", - 'Exclude Table type' => "Exclude Table type", - 'Exclude Table Character set' => "Exclude Table Character set", - 'Backup filename' => "Backup filename", - 'Invalid filename format' => "Invalid filename format", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "all", - 'all selected' => "all selected", - 'An error occured while refreshing the object list.' => "An error occured while refreshing the object list.", - 'Are you sure you want to clear all field information from table?' => "Are you sure you want to clear all field information from table?", - 'Are you sure you want to delete this user account?' => "Are you sure you want to delete this user account?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "Are you sure you want to DROP all objects from the database {{NAME}}?", - 'Are you sure you want to DROP selected objects?' => "Are you sure you want to DROP selected objects?", - 'Are you sure you want to DROP the database {{NAME}}?' => "Are you sure you want to DROP the database {{NAME}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "Are you sure you want to drop this object? {{NAME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "Are you sure you want to execute {{SELECTED}} queries?", - 'Are you sure you want to logout?' => "Are you sure you want to logout?", - 'Are you sure you want to truncate the table {{NAME}}?' => "Are you sure you want to truncate the table {{NAME}}?", - 'Blob Data [{{SIZE}}]' => "Blob Data [{{SIZE}}]", - 'Cancel' => "Cancel", - 'Check for Updates' => "Check for Updates", - 'Clear command history?' => "Clear command history?", - 'Close' => "Close", - 'Confirm Action' => "Confirm Action", - 'Confirm and do not ask me again about this choice' => "Confirm and do not ask me again about this choice", - 'Copy Object' => "Copy Object", - 'Create Database' => "Create Database", - 'Create Primary Index on this field' => "Create Primary Index on this field", - 'Databases' => "Databases", - 'Default value [Use quotes to specify string values]' => "Default value [Use quotes to specify string values]", - 'Disallow NULL values in Field' => "Disallow NULL values in Field", - 'Enter new index name' => "Enter new index name", - 'Enter new name for the database object' => "Enter new name for the database object", - 'Enter the text to search in database' => "Enter the text to search in database", - 'Error' => "Error", - 'Events' => "Events", - 'Execute query' => "Execute query", - 'Exports results' => "Exports results", - 'Failed to refresh the results.' => "Failed to refresh the results.", - 'Field Datatype' => "Field Datatype", - 'Field Name' => "Field Name", - 'Field value is Auto Incremented' => "Field value is Auto Incremented", - 'Functions' => "Functions", - 'Indexes Updated' => "Indexes Updated", - 'Maximum Length of field value' => "Maximum Length of field value", - 'Navigation Error. Try reloading the page' => "Navigation Error. Try reloading the page", - 'New settings saved and applied' => "New settings saved and applied", - 'New version is available' => "New version is available", - 'Next' => "Next", - 'No' => "No", - 'No Table selected' => "No Table selected", - 'Not enough room to show this pane.' => "Not enough room to show this pane.", - 'OK' => "OK", - 'One or more field information is incomplete' => "One or more field information is incomplete", - 'Open' => "Open", - 'Operation failed' => "Operation failed", - 'Pad field values with leading zeros' => "Pad field values with leading zeros", - 'Pane' => "Pane", - 'Passwords do not match' => "Passwords do not match", - 'Pin' => "Pin", - 'Please select one or more operations to perform' => "Please select one or more operations to perform", - 'Please type in one or more queries in the SQL editor!' => "Please type in one or more queries in the SQL editor!", - 'Please wait...' => "Please wait...", - 'Previous' => "Previous", - 'Procedures' => "Procedures", - 'Prompt' => "Prompt", - 'Refresh results' => "Refresh results", - 'Refreshing object list' => "Refreshing object list", - 'Rename Object' => "Rename Object", - 'Resize' => "Resize", - 'Results page:' => "Results page:", - 'Select a database to view privileges for the user' => "Select a database to view privileges for the user", - 'Select an index to view / edit its details' => "Select an index to view / edit its details", - 'Select at least one field type for searching' => "Select at least one field type for searching", - 'Select objects to operate upon' => "Select objects to operate upon", - 'selector' => "selector", - 'Slide Open' => "Slide Open", - 'Table information requires at least one valid field' => "Table information requires at least one valid field", - 'Table name is required' => "Table name is required", - 'Table successfully created' => "Table successfully created", - 'Table successfully modified' => "Table successfully modified", - 'Tables' => "Tables", - 'Text Data [{{SIZE}}]' => "Text Data [{{SIZE}}]", - 'There is no record in the results to export' => "There is no record in the results to export", - 'This attribute is not required for selected field type' => "This attribute is not required for selected field type", - 'Triggers' => "Triggers", - 'Un-Pin' => "Un-Pin", - 'Unsigned numbered field only' => "Unsigned numbered field only", - 'Update check failed' => "Update check failed", - 'User information is incomplete or invalid' => "User information is incomplete or invalid", - 'User Manager' => "User Manager", - 'Views' => "Views", - 'WARNING' => "WARNING", - 'Yes' => "Yes", - 'You have the latest version' => "You have the latest version", - - ); -?> diff --git a/lang/es.php b/lang/es.php deleted file mode 100644 index bf4686e..0000000 --- a/lang/es.php +++ /dev/null @@ -1,463 +0,0 @@ - "Uso de bases de datos", - 'Drop Database' => "Caída de la base de datos", - 'Empty Database' => "Vaciar base de datos", - 'Drop all tables from this database' => "Descarte todas las tablas de esta base de datos", - 'Select statement' => "Seleccione la declaración", - 'Insert statement' => "Inserte declaración", - 'Update statement' => "Actualización de la declaración", - 'Describe' => "Describir", - 'Show create command' => "Mostrar comando create", - 'View data' => "Ver datos", - 'Alter Table' => "Modificar tabla", - 'Indexes' => "Índices", - 'Engine Type' => "Tipo de motor", - 'More operations' => "Más operaciones", - 'Truncate' => "Truncar", - 'Drop' => "Drop", - 'Rename' => "Cambiar el nombre de", - 'Export table data' => "Exportar datos de la tabla", - 'Create Table' => "Crear tabla", - 'Create View' => "Crear vista", - 'Create Procedure' => "Crear Procedimiento", - 'Create Function' => "Crear la función", - 'Create Trigger' => "Crear Trigger", - 'Create Event' => "Crear un evento", - 'Show/Hide Panel' => "Mostrar / Ocultar panel", - 'Show/Hide Header' => "Mostrar / Ocultar Encabezado", - 'Copy all queries to clipboard' => "Copia todas las consultas al portapapeles", - 'Clear history' => "Borrar el historial", - 'Copy Column values' => "Copiar columna valores", - 'Copy to clipboard' => "Copiar al portapapeles", - 'Generate SQL Filter' => "Generar SQL filtro", - 'Database Manager' => "Database Manager", - 'Manage databases' => "Administrar bases de datos", - - // main menu related text - 'Database' => "Base de datos", - 'Refresh' => "Actualizar", - 'Refresh database object list' => "Actualizar la base de datos objeto de la lista", - 'Create new' => "Crear nuevo", - 'Export' => "Exportación", - 'Export database to external file' => "Exportar base de datos a un archivo externo", - 'Objects' => "Objetos", - 'Create Table' => "Crear tabla", - 'Create a new table in the database' => "Crear una nueva tabla en la base de datos", - 'Create View' => "Crear vista", - 'Create a new view in the database' => "Crear una nueva vista en la base de datos", - 'Create Stored Procedure' => "Crear procedimientos almacenados", - 'Create a new stored procedure in the database' => "Crear un nuevo procedimiento almacenado en la base de datos", - 'Create Function' => "Crear la función", - 'Create a new user defined function in the database' => "Crear una nueva función definida por el usuario en la base de datos", - 'Create Trigger' => "Crear Trigger", - 'Create a new trigger in the database' => "Crea un nuevo disparador en la base de datos", - 'Create Event' => "Crear un evento", - 'Create a new event in the database' => "Crear un nuevo evento en la base de datos", - 'Data' => "Datos", - 'Import batch file' => "Importación de archivos de proceso por lotes", - 'Import multiple queries from batch file' => "Importar múltiples consultas de archivo por lotes", - 'Export database' => "Exportar base de datos", - 'Export database to batch file as sql dump' => "Exportar base de datos a archivo por lotes como volcado sql", - 'Export current results' => "Resultados de exportación en curso", - 'Export query results to clipboard or files' => "Exportar resultados de la consulta al portapapeles o archivos", - 'Tools' => "Herramientas", - 'Process Manager' => "Process Manager", - 'View and manage database processes' => "Ver y gestionar los procesos de base de datos", - 'Repair Tables' => "Reparar tablas", - 'Analyze and repair database tables' => "Analizar y reparar tablas de bases de datos", - 'User Manager' => "Administrador de usuarios", - 'Manage database users' => "Administrar usuarios de base de datos", - 'Search in Database' => "Búsqueda en la base de datos", - 'Search for text in the database' => "Búsqueda de texto en la base de datos", - 'Information' => "Información", - 'Server/Connection Details' => "Servidor / Conexión Detalles", - 'View server configuration' => "Ver configuración del servidor", - 'View server and connection details' => "Ver detalles de conexión del servidor y", - 'Server Variables' => "Variables de servidor", - 'Database Summary' => "Resumen de base de datos", - 'View current database summary stats' => "Vista actual de las estadísticas de base de datos de resumen", - 'Interface' => "Interfaz", - 'Options' => "Opciones", - 'Configure application options' => "Configurar las opciones de aplicación", - 'UI Theme' => "IU Tema", - 'Database Objects' => "Base de datos de objetos", - 'Toggle Object Viewer' => "Activar Visor de objetos", - 'Help contents' => "contenido de la Ayuda", - 'Learn the basics of using MyWebSQL' => "Aprenda los aspectos básicos del uso MyWebSQL", - 'QuickStart Tutorials' => "Tutoriales rápidos", - 'See quick hands-on tutorial of MyWebSQL interface' => "Ver interfaz rápida tutorial práctico de MyWebSQL", - 'Online documentation' => "Documentación en línea", - 'View online documentation on project website' => "Ver documentación en línea en el sitio web del proyecto", - 'Request a Feature' => "Solicitar una característica", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "Si desea que su característica más favorito para ser parte de MyWebSQL, por favor haga clic aquí para informar al respecto", - 'Report a Problem' => "Informar de un problema", - 'Check for updates' => "Buscar actualizaciones", - 'Check for updated versions of the application online' => "Compruebe si hay versiones actualizadas de la solicitud en línea", - 'Logout' => "Desconectarse", - 'Logout from this session' => "Cerrar sesión de este período de sesiones", - 'Language' => "Idioma", - 'SQL Editor' => "SQL Editor", - 'Toggle SQL Editor' => "Alternar editor de SQL", - 'Experimental' => "Experimental", - 'Import table data' => "Importar datos de tabla", - 'Import table data from external file' => "Importar datos de tabla desde un archivo externo", - 'Batch operations' => "Las operaciones por lotes", - 'Perform one or more batch operations on database' => "Lleve a cabo una o más operaciones por lotes en la base de datos", - 'Create a new schema in the database' => "Crear un nuevo esquema en la base de datos", - 'Create Schema' => "Crear esquema", - 'Table Description' => "Descripción Tabla", - 'Database Manager' => "Database Manager", - 'Manage databases' => "Administrar bases de datos", - 'Backup database on the server as SQL dump' => "Copia de seguridad de base de datos en el servidor SQL dump", - 'Backup Database' => "Copia de seguridad de base de datos", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "Tu navegador parece ser muy antigua y no es compatible con todas las características necesarias para ejecutar MyWebSQL.", - 'Try using a newer version of the browser to run this application.' => "Trate de usar una versión más reciente del navegador para ejecutar esta aplicación", - - // text used on various screens in the interface - 'Visit Project website' => "Visite el sitio web del proyecto", - 'Version' => "versión", - 'Loading' => "Cargando", - 'Quick Edit Options' => "Opciones de edición rápida", - 'Press {{KEY}} to set NULL' => "Pulse {{KEY}} para establecer NULL", - 'MySQL Server' => "MySQL Server", - 'Logged in as: {{USER}}' => "Conectado como: {{USER}}", - 'Results' => "Resultados", - 'Messages' => "Mensajes", - 'Information' => "Información", - 'History' => "Historia", - 'There are no results to show in this view' => "No hay resultados para mostrar en esta vista", - 'Refresh results' => "Actualizar resultados", - 'Please wait' => "Por favor, espere", - 'Query All' => "Todas las consultas", - 'Query' => "Consulta", - 'Add Record' => "Añadir Registro", - 'Delete Record(s)' => "Eliminar registro (s)", - 'Update Record(s)' => "Actualización de Registro (s)", - 'Generate SQL' => "Generar SQL", - 'Database name' => "Base de datos de nombre", - 'Select database after creation' => "Seleccione la base de datos después de la creación", - 'Database connection failed to the server' => "conexión de base de datos no el servidor", - 'Host' => "Anfitrión", - 'User' => "Usuario", - 'Select a database to begin' => "Seleccione una base de datos para comenzar", - 'Select/unselect All records' => "Seleccionar / deseleccionar todos los registros", - 'Primary key column' => "columna de clave primaria", - 'Unique key column' => "Clave única columna", - 'Showing records {{START}} - {{END}}' => "Mostrando registros de {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "Se muestran primero {{MAX}} sólo los registros", - '1 query successfully executed' => "Una consulta ejecutada con éxito", - '{{NUM}} queries successfully executed' => "{{NUM}} consultas ejecutado con éxito", - '{{NUM}} record(s) were affected' => "{{NUM}} registro (s) se vieron afectadas", - '{{NUM}} record(s) updated' => "{{NUM}} registro (s) actualizado", - 'Error occurred while executing the query' => "Se produjo un error al ejecutar la consulta", - '{{NUM}} queries failed to execute' => "{{MUM}} consultas no se pudo ejecutar", - 'Click to view/edit column data [{{NUM}} Bytes]' => "Pulsa aquí para ver y editar datos de la columna [{{NUM}} bytes]", - 'Blob data is not editable' => "datos Blob no es editable", - 'Blob data saved' => "datos Blob guardado", - 'Failed to save blob data' => "No se pudo guardar los datos blob", - 'The process with id [{{PID}}] was killed' => "El proceso con el ID [{{PID}}] fue asesinado", - 'No such process [id = {{PID}}]' => "No existe el proceso [id = {{PID}}]", - 'Select a process and click the button to kill the process' => "Seleccione un proceso y haga clic en el botón para matar el proceso", - 'Process ID' => "Proceso de identificación", - 'Command' => "Comando", - 'Time' => "Tiempo", - 'Info' => "Info", - 'Kill Process' => "Kill Process", - 'Failed to get process list' => "No se pudo obtener la lista de procesos", - 'The command executed successfully' => "El comando se ha ejecutado correctamente", - 'Invalid server configuration' => "Configuración del servidor no válido", - 'Invalid Credentials' => "No válido de Verificación de Poderes", - 'New database successfully created' => "Nueva base de datos creado con éxito", - 'File upload failed. Please try again' => "Carga de archivos no. Por favor, inténtelo de nuevo", - 'No queries were executed during import' => "N las consultas fueron ejecutados durante la importación", - 'Maximum upload filesize is {{SIZE}}' => "Máximo de carga tamaño del archivo es {{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "tipos de archivos admitidos / extensiones son: ({{LIST}})", - 'Database summary' => "Base de datos de resumen", - 'Server Variables' => "Variables de servidor", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "Cualquier objeto existente con el mismo nombre se cae manualmente antes de ejecutar el comando de creación", - 'Only create commands are accepted' => "Sólo crear comandos son aceptados", - 'User ID' => "ID de usuario", - 'Password' => "Contraseña", - 'Login' => "Iniciar sesión", - 'Create new database object' => "Crear un objeto de base de datos nueva", - 'Enter command for object creation' => "Introduzca el comando para la creación de objetos", - 'Submit' => "Enviar", - 'Show blob data as: {{TYPE}}' => "Mostrar datos blob como: {{TYPE}}", - 'Blob data for column {{NAME}}' => "Blob de datos para la columna {{NAME}}", - 'Create command for {{TYPE}} {{NAME}}' => "Cree comandos de {{TYPE}} {{NAME}}", - 'Table Engine (type)' => "Tabla del motor (tipo)", - 'Change Table Type' => "Cambiar tipo de tabla", - 'The requested page is not available on the server' => "La página solicitada no está disponible en el servidor", - 'Error' => "Error", - 'It appears that you attempted to submit an invalid request to the server' => "Parece que ha intentado presentar una solicitud válida para el servidor", - 'The request has been denied. Reloading the page might solve the problem' => "La solicitud ha sido denegada. Recarga la página podría resolver el problema", - 'Access Denied' => "Acceso denegado", - 'Help' => "Ayuda", - 'To see most up-to-date help contents, please visit {{LINK}}' => "Para ver el contenido más actualizado ayuda, por favor, visite {{LINK}}", - 'It appears that your browser session has expired' => "Parece que en tu sesión de navegación ha caducado", - 'Please refresh the webpage to re-login' => "Por favor, actualice la página web para volver a entrar", - 'Table information' => "Tabla de información de", - 'Edit' => "Editar", - 'Save' => "Guardar", - 'Either the database is empty, or there was an error retrieving list of database objects' => "O bien la base de datos está vacía, o hubo un error al recuperar la lista de los objetos de base de datos", - 'Please try closing and re-opening this dialog again' => "Por favor, intente cerrar y volver a abrir este diálogo de nuevo", - 'Structure' => "Estructura", - 'Table Data' => "Tabla de datos", - 'Structure and Table Data' => "Estructura y la tabla de datos", - 'Options' => "Opciones", - 'Set Auto increment field values to NULL' => "Ajuste automático incremento de los valores de campo en NULL", - 'Add DROP command before create statements' => "Añada DROP comando antes de crear estados", - 'Export' => "Exportación", - 'Import' => "Importar", - 'Export Database' => "Exportación de bases de datos", - 'Export Table' => "Exportar tabla", - 'Server information' => "Servidor de información", - 'Server' => "Servidor", - 'Version comment' => "Versión comentario", - 'Character sets' => "Los conjuntos de caracteres", - 'Server character set' => "Servidor de juego de caracteres", - 'Client character set' => "Cliente de juego de caracteres", - 'Database character set' => "Base de datos de caracteres", - 'Results character set' => "Resultados de juego de caracteres", - 'Export As' => "Exportar como", - 'Insert Statements' => "Inserte declaraciones", - 'Include field names in query' => "Incluir nombres de campo en la consulta", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Texto sin formato (un registro por línea)", - 'Fields separated by:' => "Campos separados por:", - 'Export Results' => "Exportar los resultados de", - 'Select SQL batch file to import' => "Seleccione el archivo por lotes de SQL para importar", - 'Continue processing even if error occurs' => "Continuar con la tramitación, incluso si el error se produce", - 'Basic Information' => "Información básica", - 'Table Properties' => "Propiedades de la tabla", - 'Table Name' => "Nombre de tabla", - 'Field Name' => "Nombre del campo", - 'Data Type' => "Tipo de datos", - 'Length' => "Longitud", - 'Default value' => "Valor por defecto", - 'Unsigned' => "No firmado", - 'Zero Fill' => "Cero relleno", - 'Primary Key' => "Clave principal", - 'Auto Increment' => "Incremento automático", - 'Not NULL' => "No NULL", - 'Character Set' => "Conjunto de caracteres", - 'Collation' => "Colación", - 'Comment' => "Comentar", - 'Waiting for table information to be submitted' => "¡Lugar para una información de la tabla que se presentará", - 'Add field' => "Agregar campo", - 'Delete selected field' => "campo seleccionado Eliminar", - 'Clear Table Information' => "Borrar la tabla de información", - 'List of values' => "Lista de valores", - 'Query Results' => "Resultados de la consulta", - 'Data for {{TABLE}}' => "Los datos de {{TABLE}}", - 'Select tables to be analyzed/repaired' => "Seleccione las tablas a analizar / reparar", - 'Operation to perform' => "Operación a realizar", - 'Analyze' => "Analizar", - 'Check' => "Compruebe", - 'Optimize' => "Optimizar", - 'Repair' => "Reparación", - 'Skip Binary logging' => "Saltar registro binario", - 'Default' => "Por defecto", - 'Quick' => "Rápida", - 'Fast' => "Rápido", - 'Medium' => "Medio", - 'Extended' => "Extendido", - 'Changed' => "Cambiado", - 'Use Frm files (MyISAM tables)' => "Utilice Frm, archivos (tablas MyISAM)", - 'User Information' => "Información del usuario", - 'Global Privileges' => "Mundial de privilegios", - 'Database Privileges' => "Base de datos de privilegios", - 'Import File' => "Importar archivo", - 'Index Manager' => "Index Manager", - 'Edit table structure' => "Editar estructura de la tabla", - 'Save All Changes' => "Guardar todos los cambios", - 'Changes are not saved until you press [Save All Changes]' => "Los cambios no se guardan hasta que se pulsa [Guardar cambios]", - 'Field Length' => "Campo Largo", - 'Select objects to include in export' => "Selección de objetos para incluir en la exportación", - 'Export type' => "Tipo exportación", - 'Select All/None' => "Todos / Ninguno", - 'Add User' => "Agregar usuario", - 'Update User' => "Actualizar usuario", - 'Delete selected User' => "Eliminar seleccionados usuario", - 'Remove Password' => "Eliminar contraseña", - 'Select tables to search' => "Seleccione las tablas de búsqueda", - 'Search Options' => "Opciones de búsqueda", - 'Search in following field types' => "Buscar en los siguientes tipos de campo", - 'Numeric Fields' => "Los campos numéricos", - 'Character Fields' => "Los campos de caracteres", - 'Text Fields' => "Campos de texto", - 'Date/Time Fields' => "Campos Fecha / Hora", - 'Comparison Type' => "Comparación de tipos", - 'Text to search' => "Texto a buscar", - 'Search' => "Búsqueda", - 'Search Results' => "Resultados de la búsqueda", - 'Number of matches' => "Número de partidos", - 'Search results for {{KEYWORD}} in the database' => "Resultados de la búsqueda para {{KEYWORD}} en la base de datos", - '{{NUM}} match(es)' => "{{Numero}} partido (es)", - 'Copy query to editor' => "Copia de consultas al editor", - 'Done' => "Hecho", - 'SQL Editor' => "SQL Editor", - 'Create Copy' => "Crear copia", - 'Minimize All' => "Minimizar todas las", - 'Copy Record(s)' => "Copia del registro (s)", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "Separados por comas (CSV para Excel)", - 'Select data file to import' => "Seleccione el archivo de datos para importar", - 'Select table for data import' => "Seleccione la tabla para la importación de datos", - 'First line contains column names' => "La primera línea contiene los nombres de columna", - 'Select objects to operate upon' => "Seleccione los objetos que operan sobre", - 'Operations to perform' => "Operaciones a realizar", - 'Add prefix string to name' => "Añadir cadena de prefijo para nombrar", - 'Delete prefix string from name' => "Eliminar cadena de prefijo del nombre", - 'Command text' => "Comando de texto", - 'DROP selected database objects' => "DROP objetos seleccionados de bases de datos", - 'Batch operation results' => "Resultados de operación por lotes", - 'Operation' => "Operación", - 'Status' => "Estado", - '{{NUM}} queries generated' => "{{NUM}} consultas generadas", - 'Please select one or more operations to perform' => "Por favor, seleccione uno o más de las operaciones para llevar a cabo", - 'Quick Search' => "Búsqueda rápida", - '{{NAME}} client library is not installed' => "{{NAME}} biblioteca cliente no está instalado", - '{{NAME}} extension is not installed' => "{{NAME}} extensión no está instalado", - 'SQLite database folder is inaccessible or not writable' => "Carpeta de base de datos SQLite es inaccesible o no se puede escribir", - 'Maximize/Restore Results Pane' => "Maximizar / Restaurar panel de resultados", - 'Select databases to operate upon' => "Seleccionar las bases para operar en", - 'DROP selected databases' => "DROP bases de datos seleccionadas", - 'The following operation is irreversible' => "La siguiente operación es irreversible", - 'Potential data loss might occur' => "Posible pérdida de datos puede ocurrir", - 'Add TRUNCATE command before insert statements' => "Añadir TRUNCATE comando antes de las declaraciones de inserción", - 'Select objects to include in backup' => "Seleccione los objetos para incluir en el respaldo", - 'Backup folder does not exist or is not writable' => "Carpeta de copia de seguridad no existe o no se puede escribir", - 'Backup type' => "Tipo de copia de seguridad", - 'Database backup successfully created' => "Copia de seguridad de base de datos creada con éxito", - 'Failed to create database backup' => "Error al crear copia de seguridad de base de datos", - 'Generate Bulk insert statements' => "Generar instrucciones BULK INSERT", - 'Maximum size of SQL statement' => "Tamaño máximo de la declaración SQL", - 'Show record count with table names' => "Mostrar recuento de registros con nombres de tabla", - 'Sort Table listing by' => "Ordenar el listado de la tabla", - 'Name' => "Nombre", - 'Last Update Time' => "Last Time Update", - 'Maximum records to display in result set' => "Número máximo de registros que se mostrarán en conjunto de resultados", - 'Show popup dialog for editing large text data' => "Mostrar cuadro de diálogo emergente para la edición de datos de gran tamaño del texto", - 'Miscellaneous' => "Diverso", - 'Reset all confirmation dialogs' => "Reajustar todos los diálogos de confirmación", - 'Record Editing' => "Edición Record", - 'Exclude Table type' => "Excluir Tipo de Tabla", - 'Exclude Table Character set' => "Excluir Juego de caracteres Tabla", - 'Backup filename' => "Nombre del archivo de copia de seguridad", - 'Invalid filename format' => "Formato de nombre de archivo no válido", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "todos los", - 'all selected' => "todos seleccionados", - 'An error occured while refreshing the object list.' => "Se produjo un error al actualizar la lista de objetos.", - 'Are you sure you want to clear all field information from table?' => "¿Está seguro que desea borrar toda la información de campo de la tabla?", - 'Are you sure you want to delete this user account?' => "¿Está seguro que desea eliminar esta cuenta de usuario?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "¿Está seguro que desea eliminar todos los objetos de la base de datos de {{NAME}}?", - 'Are you sure you want to DROP selected objects?' => "¿Seguro que quiere eliminar los objetos seleccionados?", - 'Are you sure you want to DROP the database {{NAME}}?' => "¿Está seguro que desea colocar la base de datos {{NAME}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "¿Está seguro que desea colocar este objeto? {{NAME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "¿Está seguro que desea ejecutar {{SELECTED}} consultas?", - 'Are you sure you want to logout?' => "¿Seguro que quieres salir?", - 'Are you sure you want to truncate the table {{NAME}}?' => "¿Está seguro que desea truncar la tabla de {{NAME}}?", - 'Blob Data [{{SIZE}}]' => "Los datos Blob [{{SIZE}}]", - 'Cancel' => "Cancelar", - 'Check for Updates' => "Buscar actualizaciones", - 'Clear command history?' => "Borrar historial de comandos?", - 'Close' => "Cerrar", - 'Confirm Action' => "Confirmar la acción", - 'Confirm and do not ask me again about this choice' => "Confirmar y no me vuelva a preguntar sobre esta opción", - 'Copy Object' => "Copia de objetos", - 'Create Database' => "Crear base de datos", - 'Create Primary Index on this field' => "Crear índice principal en este campo", - 'Databases' => "Bases de datos", - 'Default value [Use quotes to specify string values]' => "Valor por defecto [Use comillas para especificar los valores de cadena]", - 'Disallow NULL values in Field' => "No permitir valores NULL en el campo", - 'Enter new index name' => "Escriba el nombre nuevo índice", - 'Enter new name for the database object' => "Introducir un nuevo nombre para el objeto de base de datos", - 'Enter the text to search in database' => "Introduzca el texto para buscar en la base de datos", - 'Error' => "Error", - 'Events' => "Eventos", - 'Execute query' => "Ejecutar la consulta", - 'Exports results' => "Las exportaciones resultados", - 'Failed to refresh the results.' => "No se ha podido actualizar los resultados.", - 'Field Datatype' => "Campo de tipo de datos", - 'Field Name' => "Nombre del campo", - 'Field value is Auto Incremented' => "El valor del campo se incrementa en Auto", - 'Functions' => "Funciones", - 'Indexes Updated' => "Índices de Actualización", - 'Maximum Length of field value' => "Longitud máxima del campo de valor", - 'Navigation Error. Try reloading the page' => "Error de navegación. Intenta volver a cargar la página", - 'New settings saved and applied' => "Nueva configuración de guardar y aplicar", - 'New version is available' => "La nueva versión está disponible", - 'Next' => "Siguiente", - 'No' => "N", - 'No Table selected' => "N la tabla seleccionada", - 'Not enough room to show this pane.' => "No hay suficiente espacio para mostrar este panel.", - 'OK' => "Aceptar", - 'One or more field information is incomplete' => "Uno o más información de campo está incompleta", - 'Open' => "Abierto", - 'Operation failed' => "Error en la operación", - 'Pad field values with leading zeros' => "Pad valores de campo con ceros a la izquierda", - 'Pane' => "Panel", - 'Passwords do not match' => "Las contraseñas no coinciden", - 'Pin' => "Pin", - 'Please select one or more operations to perform' => "Por favor, seleccione uno o más de las operaciones para llevar a cabo", - 'Please type in one or more queries in the SQL editor!' => "Por favor, escriba una o más consultas en el editor de SQL!", - 'Please wait...' => "Por favor espere ...", - 'Previous' => "Anterior", - 'Procedures' => "Procedimientos", - 'Prompt' => "Del sistema", - 'Refresh results' => "Actualizar resultados", - 'Refreshing object list' => "Actualización de lista de objetos", - 'Rename Object' => "Cambiar el nombre de objetos", - 'Resize' => "Cambiar el tamaño", - 'Results page:' => "Página de resultados:", - 'Select a database to view privileges for the user' => "Seleccione una base de datos para ver los privilegios para el usuario", - 'Select an index to view / edit its details' => "Seleccionar una lista para ver y editar sus detalles", - 'Select at least one field type for searching' => "Seleccione al menos un tipo de campo para la búsqueda", - 'Select objects to operate upon' => "Seleccione los objetos que operan sobre", - 'selector' => "selector de", - 'Slide Open' => "Abrir Slide", - 'Table information requires at least one valid field' => "Tabla de información requiere al menos un campo válido", - 'Table name is required' => "Nombre de la tabla es necesario", - 'Table successfully created' => "Tabla creado con éxito", - 'Table successfully modified' => "Cuadro modificado correctamente", - 'Tables' => "Tablas", - 'Text Data [{{SIZE}}]' => "Los datos de texto [{{SIZE}}]", - 'There is no record in the results to export' => "No hay registro de los resultados de la exportación", - 'This attribute is not required for selected field type' => "Este atributo no es necesario para el tipo de campo seleccionado", - 'Triggers' => "Desencadenantes", - 'Un-Pin' => "Un-Pin", - 'Unsigned numbered field only' => "Sin firmar número único campo", - 'Update check failed' => "Actualizar Error en la comprobación", - 'User information is incomplete or invalid' => "Usuario de la información es incompleta o no es válido", - 'User Manager' => "Administrador de usuarios", - 'Views' => "Vistas", - 'WARNING' => "ADVERTENCIA", - 'Yes' => "Sí", - 'You have the latest version' => "Usted tiene la última versión", - - ); -?> diff --git a/lang/et.php b/lang/et.php deleted file mode 100644 index ccb0a15..0000000 --- a/lang/et.php +++ /dev/null @@ -1,463 +0,0 @@ - "Kasuta andmebaas", - 'Drop Database' => "Drop andmebaas", - 'Empty Database' => "Tühi andmebaas", - 'Drop all tables from this database' => "Drop kõik tabelid andmebaasis", - 'Select statement' => "Valige avaldus", - 'Insert statement' => "Lisa avaldus", - 'Update statement' => "Update avaldus", - 'Describe' => "Kirjeldama", - 'Show create command' => "Näita luua käsuga", - 'View data' => "Vaata andmed", - 'Alter Table' => "ALTER TABLE", - 'Indexes' => "Indexes", - 'Engine Type' => "Mootori tüüp", - 'More operations' => "Veel operatsioone", - 'Truncate' => "Kärpima", - 'Drop' => "Tilk", - 'Rename' => "Rename", - 'Export table data' => "Ekspordi tabel andmete", - 'Create Table' => "Tabeli loomine", - 'Create View' => "Loo vaade", - 'Create Procedure' => "Loo kord", - 'Create Function' => "Loo Function", - 'Create Trigger' => "Loo Trigger", - 'Create Event' => "Loo sündmus", - 'Show/Hide Panel' => "Näita / peida paneel", - 'Show/Hide Header' => "Näita / peida päis", - 'Copy all queries to clipboard' => "Kopeeri kõik päringud lõikelauale", - 'Clear history' => "Tühjenda ajalugu", - 'Copy Column values' => "Copy veeru väärtuste", - 'Copy to clipboard' => "Kopeeri lõikelauale", - 'Generate SQL Filter' => "Loo SQL Filter", - 'Database Manager' => "Database Manager", - 'Manage databases' => "Halda andmebaase", - - // main menu related text - 'Database' => "Andmebaasi", - 'Refresh' => "Refresh", - 'Refresh database object list' => "Värskenda andmebaasi objekt nimekirja", - 'Create new' => "Loo uus", - 'Export' => "Eksport", - 'Export database to external file' => "Ekspordi andmebaasi välisele failile", - 'Objects' => "Objektid", - 'Create Table' => "Tabeli loomine", - 'Create a new table in the database' => "Loo uus tabel andmebaasi", - 'Create View' => "Loo vaade", - 'Create a new view in the database' => "Loo uus vaade andmebaas", - 'Create Stored Procedure' => "Loo Salvestatud protseduur", - 'Create a new stored procedure in the database' => "Loo uus salvestatud protseduuri andmebaas", - 'Create Function' => "Loo Function", - 'Create a new user defined function in the database' => "Loo uus kasutaja määratletud funktsioon andmebaas", - 'Create Trigger' => "Loo Trigger", - 'Create a new trigger in the database' => "Loo uus käivitama andmebaas", - 'Create Event' => "Loo sündmus", - 'Create a new event in the database' => "Loo uus sündmus andmebaas", - 'Data' => "Data", - 'Import batch file' => "Import maksejuhiste", - 'Import multiple queries from batch file' => "Import mitu päringut alates maksejuhiste", - 'Export database' => "Eksport andmebaas", - 'Export database to batch file as sql dump' => "Ekspordi andmebaasi maksejuhiste nagu sql dump", - 'Export current results' => "Ekspordi praegune tulemused", - 'Export query results to clipboard or files' => "Eksport päringu tulemused lõikelauale või failid", - 'Tools' => "Tööriistad", - 'Process Manager' => "Protsessi juht", - 'View and manage database processes' => "Vaata ja hallata andmebaasi protsesside", - 'Repair Tables' => "Remont Tabelid", - 'Analyze and repair database tables' => "Analüüsige ja remont andmebaasi tabelite", - 'User Manager' => "Kasutaja Manager", - 'Manage database users' => "Halda andmekogu kasutajatele", - 'Search in Database' => "Otsing andmebaasis", - 'Search for text in the database' => "Otsi tekst andmebaas", - 'Information' => "Informatsioon", - 'Server/Connection Details' => "Server / Connection Details", - 'View server configuration' => "Vaata serveri konfiguratsiooni", - 'View server and connection details' => "Vaata server ja ühendus detailid", - 'Server Variables' => "Server Muutujad", - 'Database Summary' => "Database kokkuvõte", - 'View current database summary stats' => "Vaata praegune andmebaas kokkuvõte stats", - 'Interface' => "Interface", - 'Options' => "Valikud", - 'Configure application options' => "Configure valikud", - 'UI Theme' => "UI Theme", - 'Database Objects' => "Database Objects", - 'Toggle Object Viewer' => "Lülitab Object Viewer", - 'Help contents' => "Help sisu", - 'Learn the basics of using MyWebSQL' => "Õpi kasutades MyWebSQL", - 'QuickStart Tutorials' => "QuickStart Tutorials", - 'See quick hands-on tutorial of MyWebSQL interface' => "Vt kiire käed-juhendaja MyWebSQL liides", - 'Online documentation' => "Online dokumentatsioon", - 'View online documentation on project website' => "Vaata online dokumentatsiooni projekti kodulehel", - 'Request a Feature' => "Soov Feature", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "Kui soovid oma kõige lemmikfunktsioon olla osa MyWebSQL, siis klikkige siia, et teatada sellest", - 'Report a Problem' => "Raport Probleem", - 'Check for updates' => "Värskenduste", - 'Check for updated versions of the application online' => "Saate ajakohastatud versioonide kohaldamise online", - 'Logout' => "Logi", - 'Logout from this session' => "Logi alates käesoleva istungi", - 'Language' => "Keel", - 'SQL Editor' => "SQL Editor", - 'Toggle SQL Editor' => "Toggle SQL Editor", - 'Experimental' => "Eksperimentaalne", - 'Import table data' => "Import tabeli andmed", - 'Import table data from external file' => "Import tabeli andmed välisele failile", - 'Batch operations' => "Partii toimingud", - 'Perform one or more batch operations on database' => "Täita ühe või mitme partii toiminguid andmebaas", - 'Create a new schema in the database' => "Loo uus skeem andmebaasi", - 'Create Schema' => "Loo skeem", - 'Table Description' => "Tabel kirjeldus", - 'Database Manager' => "Database Manager", - 'Manage databases' => "Halda andmebaase", - 'Backup database on the server as SQL dump' => "Backup andmebaas serveri SQL dump", - 'Backup Database' => "Backup andmebaas", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "Teie brauser tundub olevat väga vana ja ei toeta kõiki funktsioone vaja käivitada MyWebSQL.", - 'Try using a newer version of the browser to run this application.' => "Proovige uuemat versiooni brauser selle rakenduse käivitamiseks.", - - // text used on various screens in the interface - 'Visit Project website' => "Külasta projekti kodulehel", - 'Version' => "versiooni", - 'Loading' => "Laadimine", - 'Quick Edit Options' => "Quick Edit Options", - 'Press {{KEY}} to set NULL' => "Press {{võti}} seada NULL", - 'MySQL Server' => "MySQL Server", - 'Logged in as: {{USER}}' => "Sisseloginud nagu: {{USER}}", - 'Results' => "Tulemused", - 'Messages' => "Sõnumid", - 'Information' => "Informatsioon", - 'History' => "Ajalugu", - 'There are no results to show in this view' => "Puuduvad tulemusi näidata seda seisukohta", - 'Refresh results' => "Värskenda tulemused", - 'Please wait' => "Palun oodake", - 'Query All' => "Päring Kõik", - 'Query' => "Päring", - 'Add Record' => "Lisa Record", - 'Delete Record(s)' => "Kustuta kirje (d)", - 'Update Record(s)' => "Update Record (s)", - 'Generate SQL' => "Loo SQL", - 'Database name' => "Andmebaasi nimi", - 'Select database after creation' => "Valige andmebaas pärast loomist", - 'Database connection failed to the server' => "Database saamine ebaõnnestus serveri", - 'Host' => "Host", - 'User' => "Kasutaja", - 'Select a database to begin' => "Valige andmebaasi alustada", - 'Select/unselect All records' => "Vali / Tühista kõik kirjed", - 'Primary key column' => "Primaarvõti veerg", - 'Unique key column' => "Unikaalne võti veerg", - 'Showing records {{START}} - {{END}}' => "Näidatakse kirjete {{Algusaeg}} - {{END}}", - 'Showing first {{MAX}} records only' => "Näita esimesed {{MAX}} andmed ainult", - '1 query successfully executed' => "1 päringule edukalt täidetud", - '{{NUM}} queries successfully executed' => "{{NUM}} päringuid edukalt täidetud", - '{{NUM}} record(s) were affected' => "{{NUM}} kirje (t) olid mõjutatud", - '{{NUM}} record(s) updated' => "{{NUM}} kirje (t) uuendatud", - 'Error occurred while executing the query' => "Viga tekkis täidesaatva päring", - '{{NUM}} queries failed to execute' => "{{NUM}} päringuid ei käivitunud", - 'Click to view/edit column data [{{NUM}} Bytes]' => "Vaata / redigeeri veeru andmed [{{NUM}} Bytes]", - 'Blob data is not editable' => "Blob andmed ei ole muudetav", - 'Blob data saved' => "Blob salvestatud andmeid", - 'Failed to save blob data' => "Salvestamine ebaõnnestus kämp andmed", - 'The process with id [{{PID}}] was killed' => "Protsessi id [{{PID}}] hukkus", - 'No such process [id = {{PID}}]' => "Ühtegi sellist protsessi [id = {{PID}}]", - 'Select a process and click the button to kill the process' => "Vali protsess ja vajuta nuppu tappa protsess", - 'Process ID' => "Protsessi ID", - 'Command' => "Käsk", - 'Time' => "Aeg", - 'Info' => "Info", - 'Kill Process' => "Kill Process", - 'Failed to get process list' => "Nurjus protsesside nimekirja", - 'The command executed successfully' => "Käsk täidetakse edukalt", - 'Invalid server configuration' => "Kehtetu serveri konfiguratsiooni", - 'Invalid Credentials' => "Vigane üle volikirja", - 'New database successfully created' => "Uus andmebaas edukalt loodud", - 'File upload failed. Please try again' => "Faili üleslaadimine ebaõnnestus. Palun proovige uuesti", - 'No queries were executed during import' => "Nr queries hukati impordi ajal", - 'Maximum upload filesize is {{SIZE}}' => "Maksüleslaadimise filesize on {{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "Toetatud failitüüpide / laiendid on: ({{LIST}})", - 'Database summary' => "Database kokkuvõte", - 'Server Variables' => "Server Muutujad", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "Kõik olemasolevad objekti sama nime tuleks loobuda käsitsi enne täidesaatva loomise käsk", - 'Only create commands are accepted' => "Ainult luua käske vastuvõtt", - 'User ID' => "Kasutajatunnus", - 'Password' => "Salasõna", - 'Login' => "Logi sisse", - 'Create new database object' => "Loo uus andmebaasi objekt", - 'Enter command for object creation' => "Sisesta käsk objekti loomine", - 'Submit' => "Esitama", - 'Show blob data as: {{TYPE}}' => "Näita kämp andmed: {{TYPE}}", - 'Blob data for column {{NAME}}' => "Blob andmed veerus {{NAME}}", - 'Create command for {{TYPE}} {{NAME}}' => "Loo käsu {{TYPE}} {{NAME}}", - 'Table Engine (type)' => "Tabel Mootor (tüüp)", - 'Change Table Type' => "Muuda tabeli tüüp", - 'The requested page is not available on the server' => "Soovitud lehekülge ei ole kättesaadav server", - 'Error' => "Viga", - 'It appears that you attempted to submit an invalid request to the server' => "Tundub, et sa üritasid esitama kehtetuks taotluse serverile", - 'The request has been denied. Reloading the page might solve the problem' => "Taotlus on tagasi lükatud. Taaslaadimisel leht võib probleemi lahendada", - 'Access Denied' => "Juurdepääs keelatud", - 'Help' => "Abi", - 'To see most up-to-date help contents, please visit {{LINK}}' => "Et näha kõige up-to-date aidata sisu, külastage {{LINK}}", - 'It appears that your browser session has expired' => "Tundub, et teie brauser sessioon on aegunud", - 'Please refresh the webpage to re-login' => "Palun värskenda veebilehe uuesti login", - 'Table information' => "Tabel info", - 'Edit' => "Edit", - 'Save' => "Salvesta", - 'Either the database is empty, or there was an error retrieving list of database objects' => "Kumbki andmebaas on tühi, või oli viga allalaadimise nimekirja andmebaasi objektid", - 'Please try closing and re-opening this dialog again' => "Palun proovige sulgemine ja taasavamine enam seda dialoogi", - 'Structure' => "Struktuur", - 'Table Data' => "Tabel Data", - 'Structure and Table Data' => "Struktuur ja tabeli andmed", - 'Options' => "Valikud", - 'Set Auto increment field values to NULL' => "Set Auto juurdekasvu alal väärtused NULL", - 'Add DROP command before create statements' => "Lisa DROP käsu enne looma avaldused", - 'Export' => "Eksport", - 'Import' => "Import", - 'Export Database' => "Eksport andmebaas", - 'Export Table' => "Ekspordi tabel", - 'Server information' => "Server info", - 'Server' => "Server", - 'Version comment' => "Version kommentaar", - 'Character sets' => "Märgistikud", - 'Server character set' => "Server kooditabel", - 'Client character set' => "Kliendi kooditabel", - 'Database character set' => "Database kooditabel", - 'Results character set' => "Tulemused kooditabel", - 'Export As' => "Ekspordi", - 'Insert Statements' => "Lisa Avaldused", - 'Include field names in query' => "Hõlmavad põllul nimede päring", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Plain Text (üks kirje rea kohta)", - 'Fields separated by:' => "Valdkonnad eraldatud:", - 'Export Results' => "Export Results", - 'Select SQL batch file to import' => "Vali SQL partii fail importida", - 'Continue processing even if error occurs' => "Jätkata töötlemist, isegi kui tekib tõrge", - 'Basic Information' => "Põhilised andmed", - 'Table Properties' => "Tabeli atribuudid", - 'Table Name' => "Tabeli nimi", - 'Field Name' => "Field Name", - 'Data Type' => "Data Type", - 'Length' => "Pikkus", - 'Default value' => "Vaikimisi väärtus", - 'Unsigned' => "Allakirjutamata", - 'Zero Fill' => "Zero Täida", - 'Primary Key' => "Primaarvõti", - 'Auto Increment' => "Auto Kasvamine", - 'Not NULL' => "NOT NULL", - 'Character Set' => "Character Set", - 'Collation' => "Võrdlemine", - 'Comment' => "Kommenteeri", - 'Waiting for table information to be submitted' => "Ootan tabelis esitatavad andmed", - 'Add field' => "Lisa väli", - 'Delete selected field' => "Kustuta valitud valdkonnas", - 'Clear Table Information' => "Selge Tabel info", - 'List of values' => "Nimekiri väärtused", - 'Query Results' => "Query Results", - 'Data for {{TABLE}}' => "Andmed {{TABEL}}", - 'Select tables to be analyzed/repaired' => "Valige tabelid tuleb analüüsida / remontida", - 'Operation to perform' => "Operation täita", - 'Analyze' => "Analüüsida", - 'Check' => "Kontrollige", - 'Optimize' => "Optimeerima", - 'Repair' => "Remont", - 'Skip Binary logging' => "Skip Binary metsaraie", - 'Default' => "Default", - 'Quick' => "Kiire", - 'Fast' => "Kiirlink", - 'Medium' => "Keskmise", - 'Extended' => "Laiendatud", - 'Changed' => "Changed", - 'Use Frm files (MyISAM tables)' => "Kasuta FRM failid (MyISAM tabelid)", - 'User Information' => "Kasutaja info", - 'Global Privileges' => "Global privileegide", - 'Database Privileges' => "Database privileegide", - 'Import File' => "Import File", - 'Index Manager' => "Index Manager", - 'Edit table structure' => "Edit table struktuur", - 'Save All Changes' => "Salvesta kõik muudatused", - 'Changes are not saved until you press [Save All Changes]' => "Muutusi ei salvestata enne, kui vajutate [Salvesta kõik muudatused]", - 'Field Length' => "Field Pikkus", - 'Select objects to include in export' => "Valige objektid lisada ekspordi", - 'Export type' => "Ekspordi tüüp", - 'Select All/None' => "Vali Kõik / Mitte ükski", - 'Add User' => "Lisa kasutaja", - 'Update User' => "Uuenda kasutaja", - 'Delete selected User' => "Kustuta valitud kasutaja", - 'Remove Password' => "Eemalda parool", - 'Select tables to search' => "Valige tabelid otsing", - 'Search Options' => "Otsingu valikud", - 'Search in following field types' => "Otsi pärast välju", - 'Numeric Fields' => "Numbriline Fields", - 'Character Fields' => "Märkide Fields", - 'Text Fields' => "Tekstiväljad", - 'Date/Time Fields' => "Date / Time Fields", - 'Comparison Type' => "Võrdlus liik", - 'Text to search' => "Otsitav tekst", - 'Search' => "Otsi", - 'Search Results' => "Otsingu tulemused", - 'Number of matches' => "Sobingute arv", - 'Search results for {{KEYWORD}} in the database' => "Otsingu tulemused {{KEYWORD}} andmebaasis", - '{{NUM}} match(es)' => "{{NUM}} mängu (es)", - 'Copy query to editor' => "Copy päringu toimetaja", - 'Done' => "Toimetanud", - 'SQL Editor' => "SQL Editor", - 'Create Copy' => "Tehke koopia", - 'Minimize All' => "Minimeeri kõik", - 'Copy Record(s)' => "Copy Record (s)", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "Komaeraldusega (CSV Excel)", - 'Select data file to import' => "Vali andmefaili importimiseks", - 'Select table for data import' => "Vali tabelist andmete import", - 'First line contains column names' => "Esimene rida sisaldab veerunimesid", - 'Select objects to operate upon' => "Vali objektid tegutseda pärast", - 'Operations to perform' => "Operatsioonide teostamiseks", - 'Add prefix string to name' => "Lisa prefix string nimetada", - 'Delete prefix string from name' => "Kustuta prefix stringi nimi", - 'Command text' => "Command teksti", - 'DROP selected database objects' => "DROP valitud andmebaasi objektid", - 'Batch operation results' => "Partii töötamine", - 'Operation' => "Töö", - 'Status' => "Staatus", - '{{NUM}} queries generated' => "{{NUM}} päringute loodud", - 'Please select one or more operations to perform' => "Palun vali üks või enam toimingut sooritada", - 'Quick Search' => "Quick Search", - '{{NAME}} client library is not installed' => "{{Name}} klient raamatukogu ei ole paigaldatud", - '{{NAME}} extension is not installed' => "{{Name}} pikendamine ei ole paigaldatud", - 'SQLite database folder is inaccessible or not writable' => "SQLite andmebaasi kausta on kättesaamatud või ei ole kirjutatav", - 'Maximize/Restore Results Pane' => "Suuremaks / Restore tulemipaanil", - 'Select databases to operate upon' => "Vali andmebaasid tegutseda pärast", - 'DROP selected databases' => "DROP valitud andmebaasid", - 'The following operation is irreversible' => "Järgmine toiming on pöördumatu", - 'Potential data loss might occur' => "Potentsiaalsed andmete kadu võib tekkida", - 'Add TRUNCATE command before insert statements' => "Lisa kärpima käsk enne sisestada avaldused", - 'Select objects to include in backup' => "Valige esemeid lisada backup", - 'Backup folder does not exist or is not writable' => "Backup kausta ei ole olemas või ei ole kirjutatav", - 'Backup type' => "Backup tüüp", - 'Database backup successfully created' => "Andmebaasi varukoopia on edukalt loodud", - 'Failed to create database backup' => "Loomine ebaõnnestus andmebaasi varukoopia", - 'Generate Bulk insert statements' => "Loo Bulk sisestada avaldused", - 'Maximum size of SQL statement' => "Maksimaalne suurus SQL", - 'Show record count with table names' => "Näita rekord arv koos tabeli nimed", - 'Sort Table listing by' => "Sorteeri tabel loetlemine", - 'Name' => "Nimi", - 'Last Update Time' => "Last Update Time", - 'Maximum records to display in result set' => "Maksimaalne kirjete kuvada tulemuse hulka", - 'Show popup dialog for editing large text data' => "Näita hüpikaken redigeerimise dialoogi suur kiri andmeid", - 'Miscellaneous' => "Muu", - 'Reset all confirmation dialogs' => "Nulli kõik kinnituse dialoogid", - 'Record Editing' => "Kirje redigeerimine", - 'Exclude Table type' => "Välista Tabeli tüüp", - 'Exclude Table Character set' => "Välista Tabel Character set", - 'Backup filename' => "Backup failinimi", - 'Invalid filename format' => "Vigane failinime formaat", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "kõik", - 'all selected' => "kõik valitud", - 'An error occured while refreshing the object list.' => "Viga värskendav objektide loendisse.", - 'Are you sure you want to clear all field information from table?' => "Oled sa kindel, et soovid kustutada kõik valdkonna teavet lauale?", - 'Are you sure you want to delete this user account?' => "Oled sa kindel, et soovite kustutada selle kasutaja konto?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "Oled sa kindel, et soovid DROP kõik objektid andmebaasi {{NAME}}?", - 'Are you sure you want to DROP selected objects?' => "Oled sa kindel, et soovid DROP valitud objektid?", - 'Are you sure you want to DROP the database {{NAME}}?' => "Oled sa kindel, et soovid DROP andmebaasi {{NAME}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "Oled sa kindel, et soovid tilk Selle objekti? {{NAME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "Oled sa kindel, et soovid ellu {{VALITUD}} päringuid?", - 'Are you sure you want to logout?' => "Oled sa kindel, et soovid logout?", - 'Are you sure you want to truncate the table {{NAME}}?' => "Kas soovite kindlasti kärpida tabel {{NAME}}?", - 'Blob Data [{{SIZE}}]' => "Blob andmed [{{SIZE}}]", - 'Cancel' => "Tühista", - 'Check for Updates' => "Check for Updates", - 'Clear command history?' => "Selge käsk ajalugu?", - 'Close' => "Sulge", - 'Confirm Action' => "Kinnita Action", - 'Confirm and do not ask me again about this choice' => "Kinnita ja ärge küsige minult jälle see valik", - 'Copy Object' => "Copy Object", - 'Create Database' => "Loo andmebaas", - 'Create Primary Index on this field' => "Loo Primary Index kohta selles valdkonnas", - 'Databases' => "Andmebaasid", - 'Default value [Use quotes to specify string values]' => "Vaikimisi väärtus [Kasutage hinnapakkumisi täpsustada string väärtused]", - 'Disallow NULL values in Field' => "Disallow NULL väärtusi Field", - 'Enter new index name' => "Sisestage uus indeks nimi", - 'Enter new name for the database object' => "Sisestage uus nimi andmebaasi objekt", - 'Enter the text to search in database' => "Sisesta otsitav tekst andmebaasis", - 'Error' => "Viga", - 'Events' => "Sündmused", - 'Execute query' => "Execute päring", - 'Exports results' => "Eksport tulemused", - 'Failed to refresh the results.' => "Ebaõnnestus värskendada tulemusi.", - 'Field Datatype' => "Field andmetüüp", - 'Field Name' => "Field Name", - 'Field value is Auto Incremented' => "Välja väärtus on Auto suurendatakse", - 'Functions' => "Funktsioonid", - 'Indexes Updated' => "Indexes Updated", - 'Maximum Length of field value' => "Maksimaalne pikkus välja väärtus", - 'Navigation Error. Try reloading the page' => "Navigation Error. Proovige leht uuesti", - 'New settings saved and applied' => "Uued seaded salvestatakse ja rakendatakse", - 'New version is available' => "Uus versioon on saadaval", - 'Next' => "Järgmine", - 'No' => "Nr", - 'No Table selected' => "Nr Tabel valitud", - 'Not enough room to show this pane.' => "Ei ole piisavalt ruumi, et näidata pane.", - 'OK' => "OK", - 'One or more field information is incomplete' => "Üks või mitu valdkonnas teave on puudulik", - 'Open' => "Avatud", - 'Operation failed' => "Operatsioon ebaõnnestus", - 'Pad field values with leading zeros' => "Pad väljade väärtuste vajadusel alustatakse nullidega", - 'Pane' => "Pane", - 'Passwords do not match' => "Paroolid ei kattu", - 'Pin' => "PIN", - 'Please select one or more operations to perform' => "Palun vali üks või enam toimingut sooritada", - 'Please type in one or more queries in the SQL editor!' => "Palun sisestage üks või mitu päringuid SQL editor!", - 'Please wait...' => "Palun oota ...", - 'Previous' => "Eelmine", - 'Procedures' => "Menetlused", - 'Prompt' => "Kiire", - 'Refresh results' => "Värskenda tulemused", - 'Refreshing object list' => "Värskendav objekt nimekirja", - 'Rename Object' => "Nimeta Object", - 'Resize' => "Resize", - 'Results page:' => "Tulemusi lehel:", - 'Select a database to view privileges for the user' => "Valige andmebaasi vaatamiseks privileege kasutaja", - 'Select an index to view / edit its details' => "Valige indeks vaadata / redigeerida oma andmeid", - 'Select at least one field type for searching' => "Valige vähemalt üks väli tüüp otsimiseks", - 'Select objects to operate upon' => "Vali objektid tegutseda pärast", - 'selector' => "valija", - 'Slide Open' => "Avage", - 'Table information requires at least one valid field' => "Tabel info nõuab vähemalt üks kehtiv valdkonnas", - 'Table name is required' => "Tabel nimi on nõutav", - 'Table successfully created' => "Tabel edukalt loodud", - 'Table successfully modified' => "Tabel edukalt muudetud", - 'Tables' => "Tabelid", - 'Text Data [{{SIZE}}]' => "Tekst andmed [{{SIZE}}]", - 'There is no record in the results to export' => "Pole rekordi tulemuste eksport", - 'This attribute is not required for selected field type' => "Seda omadust ei nõuta valitud väljal", - 'Triggers' => "Triggers", - 'Un-Pin' => "Un-Pin", - 'Unsigned numbered field only' => "Signeerimata nummerdatud valdkonnas ainult", - 'Update check failed' => "Uuenda kontrollida ei suutnud", - 'User information is incomplete or invalid' => "Kasutaja teave on puudulik või vigane", - 'User Manager' => "Kasutaja Manager", - 'Views' => "Vaatamisi", - 'WARNING' => "HOIATUS", - 'Yes' => "Jah", - 'You have the latest version' => "Sul on uusim versioon", - - ); -?> diff --git a/lang/fi.php b/lang/fi.php deleted file mode 100644 index a4aa0bb..0000000 --- a/lang/fi.php +++ /dev/null @@ -1,463 +0,0 @@ - "Käytä Database", - 'Drop Database' => "Drop Database", - 'Empty Database' => "Tyhjä tietokanta", - 'Drop all tables from this database' => "Drop kaikki pöydät tästä tietokannasta", - 'Select statement' => "SELECT", - 'Insert statement' => "Lisää ilmoitus", - 'Update statement' => "Päivitä lausunto", - 'Describe' => "Kuvata", - 'Show create command' => "Näytä luoda komennolla", - 'View data' => "Näytä tiedot", - 'Alter Table' => "ALTER TABLE", - 'Indexes' => "Indeksit", - 'Engine Type' => "Moottorin tyyppi", - 'More operations' => "Useamman", - 'Truncate' => "Katkaista", - 'Drop' => "Pudota", - 'Rename' => "Nimetä uudelleen", - 'Export table data' => "Vie taulukon tiedot", - 'Create Table' => "Luo taulukko", - 'Create View' => "Luo näkymä", - 'Create Procedure' => "Luo Menettely", - 'Create Function' => "Luo Tehtävä", - 'Create Trigger' => "Luo Trigger", - 'Create Event' => "Luo tapahtuma", - 'Show/Hide Panel' => "Näytä / Piilota paneeli", - 'Show/Hide Header' => "Näytä / piilota Header", - 'Copy all queries to clipboard' => "Kopioi kaikki kyselyt leikepöydälle", - 'Clear history' => "Tyhjennä historia", - 'Copy Column values' => "Kopioi sarakearvojen", - 'Copy to clipboard' => "Kopioi leikepöydälle", - 'Generate SQL Filter' => "Luo SQL suodatin", - 'Database Manager' => "Database Manager", - 'Manage databases' => "Hallitse tietokantoja", - - // main menu related text - 'Database' => "Tietokanta", - 'Refresh' => "Päivitä", - 'Refresh database object list' => "Päivitä tietokanta kohde luettelosta", - 'Create new' => "Luo uusi", - 'Export' => "Vienti", - 'Export database to external file' => "Vie tietokantaan ulkoiseen tiedostoon", - 'Objects' => "Esineet", - 'Create Table' => "Luo taulukko", - 'Create a new table in the database' => "Luo uusi taulukko tietokantaan", - 'Create View' => "Luo näkymä", - 'Create a new view in the database' => "Luo uusi näkymä tietokantaan", - 'Create Stored Procedure' => "Luo Tallennetut Menettely", - 'Create a new stored procedure in the database' => "Luo uusi tallennettu menettely tietokannassa", - 'Create Function' => "Luo Tehtävä", - 'Create a new user defined function in the database' => "Luo uusi käyttäjä määritetyn funktion tietokantaan", - 'Create Trigger' => "Luo Trigger", - 'Create a new trigger in the database' => "Luo uusi laukaisinta tietokannassa", - 'Create Event' => "Luo tapahtuma", - 'Create a new event in the database' => "Luo uusi tapahtuma-tietokanta", - 'Data' => "Tiedot", - 'Import batch file' => "Tuo komentojonotiedosto", - 'Import multiple queries from batch file' => "Tuo useita kyselyitä eräajotiedosto", - 'Export database' => "Vienti tietokanta", - 'Export database to batch file as sql dump' => "Vie tietokantaan komentojonotiedoston kuin SQL dump", - 'Export current results' => "Vie nykyinen tulokset", - 'Export query results to clipboard or files' => "Vie kyselyn tulokset leikepöydälle tai tiedostojen", - 'Tools' => "Työkalut", - 'Process Manager' => "Process Manager", - 'View and manage database processes' => "Katsele ja hallitse tietokanta prosessien", - 'Repair Tables' => "Korjaa Taulukot", - 'Analyze and repair database tables' => "Analysoi ja korjaus tietokantataulukoihin", - 'User Manager' => "User Manager", - 'Manage database users' => "Hallitse tietokannan käyttäjille", - 'Search in Database' => "Haku tietokannasta", - 'Search for text in the database' => "Hae teksti tietokannassa", - 'Information' => "Tiedot", - 'Server/Connection Details' => "Server / Yhteyden tiedot", - 'View server configuration' => "Näytä palvelinkokoonpanon", - 'View server and connection details' => "Näytä palvelimen ja yhteyden tiedot", - 'Server Variables' => "Palvelimen muuttujat", - 'Database Summary' => "Tietokannan Yhteenveto", - 'View current database summary stats' => "Näytä nykyinen tietokanta yhteenveto tilastot", - 'Interface' => "Liitäntä", - 'Options' => "Valinnat", - 'Configure application options' => "Määritä sovelluksen asetukset", - 'UI Theme' => "UI Teema", - 'Database Objects' => "Database Objects", - 'Toggle Object Viewer' => "Vaihda Object Viewerin", - 'Help contents' => "Ohjeen sisältö", - 'Learn the basics of using MyWebSQL' => "Opetellaan käyttäen MyWebSQL", - 'QuickStart Tutorials' => "QuickStart Oppaat", - 'See quick hands-on tutorial of MyWebSQL interface' => "Katso nopeasti käytännön opetusohjelma MyWebSQL käyttöliittymä", - 'Online documentation' => "Online dokumentaatio", - 'View online documentation on project website' => "Näytä online-oppaissa hankkeen verkkosivuilta", - 'Request a Feature' => "Pyydä ominaisuus", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "Jos haluat kaikkein suosikki piirre on osa MyWebSQL, klikkaa tästä ilmoitettava siitä", - 'Report a Problem' => "Ilmoita ongelma", - 'Check for updates' => "Tarkista päivitykset", - 'Check for updated versions of the application online' => "Tarkista päivitetyt versiot hakemuksen verkossa", - 'Logout' => "Kirjaudu ulos", - 'Logout from this session' => "Kirjaudu ulos tämän istunnon", - 'Language' => "Kieli", - 'SQL Editor' => "SQL Editor", - 'Toggle SQL Editor' => "Vaihda SQL Editor", - 'Experimental' => "Kokeellinen", - 'Import table data' => "Tuo taulukon tiedot", - 'Import table data from external file' => "Tuo taulukon tiedot ulkoisesta tiedostosta", - 'Batch operations' => "Erätoiminnot", - 'Perform one or more batch operations on database' => "Suorittaa yhdessä tai useammassa erässä operaatioita tietokantaan", - 'Create a new schema in the database' => "Luo uusi skeemaa tietokantaan", - 'Create Schema' => "Luo Schema", - 'Table Description' => "Taulukko Kuvaus", - 'Database Manager' => "Database Manager", - 'Manage databases' => "Hallitse tietokantoja", - 'Backup database on the server as SQL dump' => "Varmuuskopio tietokanta palvelimen SQL dump", - 'Backup Database' => "Backup Database", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "Selaimesi näyttää olevan hyvin vanha ja ei tue kaikkia ominaisuuksia tarvitaan ajaa MyWebSQL.", - 'Try using a newer version of the browser to run this application.' => "Kokeile uudempaa versiota selaimen sovelluksen käyttämiseen", - - // text used on various screens in the interface - 'Visit Project website' => "Käy Hankkeen kotisivut", - 'Version' => "versio", - 'Loading' => "Loading", - 'Quick Edit Options' => "Quick Edit Options", - 'Press {{KEY}} to set NULL' => "Paina {{KEY}} asettaa NULL", - 'MySQL Server' => "MySQL Server", - 'Logged in as: {{USER}}' => "Käyttäjä: {{USER}}", - 'Results' => "Tulokset", - 'Messages' => "Viestit", - 'Information' => "Tiedot", - 'History' => "Historia", - 'There are no results to show in this view' => "Ei tuloksia näkyä tämän näkemyksen", - 'Refresh results' => "Päivitä tulokset", - 'Please wait' => "Odota", - 'Query All' => "Kyselyn Kaikki", - 'Query' => "Kysely", - 'Add Record' => "Lisää Record", - 'Delete Record(s)' => "Poista Record (t)", - 'Update Record(s)' => "Päivitä Record (t)", - 'Generate SQL' => "Luo SQL", - 'Database name' => "Tietokannan nimi", - 'Select database after creation' => "Valitse tietokanta luomisen jälkeen", - 'Database connection failed to the server' => "Tietokantayhteys ei palvelimen", - 'Host' => "Isäntä", - 'User' => "Käyttäjä", - 'Select a database to begin' => "Valitse tietokanta alkaa", - 'Select/unselect All records' => "Valitse / Poista kaikkien tietueiden", - 'Primary key column' => "Ensisijainen avainsarake", - 'Unique key column' => "Ainutlaatuinen avainsarake", - 'Showing records {{START}} - {{END}}' => "Näytetään asiakirjat {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "Näytetään ensimmäiset {{MAX}} tallentaa vain", - '1 query successfully executed' => "1 kysely toteutettiin onnistuneesti", - '{{NUM}} queries successfully executed' => "{{NUM}} kyselyt toteutettiin onnistuneesti", - '{{NUM}} record(s) were affected' => "{{NUM}} ennätys (t) kärsivät", - '{{NUM}} record(s) updated' => "{{NUM}} ennätys (t) päivitetty", - 'Error occurred while executing the query' => "Virhe täytäntöönpanosta kysely", - '{{NUM}} queries failed to execute' => "{{NUM}} kyselyt suoritus epäonnistui", - 'Click to view/edit column data [{{NUM}} Bytes]' => "Klikkaa nähdäksesi / muokata saraketietoja [{{NUM}} tavua]", - 'Blob data is not editable' => "Blob tietoja ei voida muokata", - 'Blob data saved' => "Blob tallennettuja", - 'Failed to save blob data' => "Tallennus epäonnistui läiskä tiedot", - 'The process with id [{{PID}}] was killed' => "Prosessi id [{{PID}}] kuoli", - 'No such process [id = {{PID}}]' => "Tällaista prosessia [id = {{PID}}]", - 'Select a process and click the button to kill the process' => "Valitse prosessi ja napsauta tappaa prosessi", - 'Process ID' => "Prosessin tunnus", - 'Command' => "Komento", - 'Time' => "Aika", - 'Info' => "Info", - 'Kill Process' => "Kill Process", - 'Failed to get process list' => "Epäonnistui prosessi luettelosta", - 'The command executed successfully' => "Komennon menestyksekkäästi", - 'Invalid server configuration' => "Virheellinen palvelimen määritykset", - 'Invalid Credentials' => "Virheellinen valtakirjojen", - 'New database successfully created' => "Uusi tietokanta luotu onnistuneesti", - 'File upload failed. Please try again' => "Tiedoston lataaminen epäonnistui. Yritä uudelleen", - 'No queries were executed during import' => "Ei kyselyjä teloitettiin vuonna tuonti", - 'Maximum upload filesize is {{SIZE}}' => "Suurin ladata tiedoston koko on {{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "Tuetut tiedostotyyppejä / laajennukset ovat: ({{LIST}})", - 'Database summary' => "Tietokannan yhteenveto", - 'Server Variables' => "Palvelimen muuttujat", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "Kaikki olemassa olevat objekti on sama nimi on poistettava manuaalisesti ennen kuin se täyttää luominen komennolla", - 'Only create commands are accepted' => "Vain luoda komentoja hyväksytään", - 'User ID' => "Käyttäjätunnus", - 'Password' => "Salasana", - 'Login' => "Kirjaudu", - 'Create new database object' => "Luo uusi tietokanta objekti", - 'Enter command for object creation' => "Anna komento objektin luominen", - 'Submit' => "Lähetä", - 'Show blob data as: {{TYPE}}' => "Näytä möykky tiedot: {{TYPE}}", - 'Blob data for column {{NAME}}' => "Blob tiedot sarakkeen {{NAME}}", - 'Create command for {{TYPE}} {{NAME}}' => "Luo komento {{TYPE}} {{NAME}}", - 'Table Engine (type)' => "Taulukko Engine (tyyppi)", - 'Change Table Type' => "Vaihda Taulukko tyyppi", - 'The requested page is not available on the server' => "Pyydettyä sivua ei ole palvelimella", - 'Error' => "Virhe", - 'It appears that you attempted to submit an invalid request to the server' => "Näyttää siltä, ​​että olet yrittänyt tehdä virheellinen pyyntö palvelimelle", - 'The request has been denied. Reloading the page might solve the problem' => "Pyyntö on evätty. Ladata sivu saattaa ratkaista ongelman", - 'Access Denied' => "Käyttö estetty", - 'Help' => "Ohjeet", - 'To see most up-to-date help contents, please visit {{LINK}}' => "Jos haluat nähdä parhaiten ajan tasalla auttaa sisällön osoitteessa {{LINK}}", - 'It appears that your browser session has expired' => "Näyttää siltä, ​​että selaimesi istunto on päättynyt", - 'Please refresh the webpage to re-login' => "Päivitä verkkosivun uudelleen kirjautuminen", - 'Table information' => "Taulukko tiedot", - 'Edit' => "Muokkaa", - 'Save' => "Tallenna", - 'Either the database is empty, or there was an error retrieving list of database objects' => "Joko tietokanta on tyhjä, tai oli virhe haettaessa luettelon tietokannan objektien", - 'Please try closing and re-opening this dialog again' => "Yritä sulkeminen ja uudelleen avaaminen tätä valintaikkunaa uudelleen", - 'Structure' => "Rakenne", - 'Table Data' => "Taulukon tiedot", - 'Structure and Table Data' => "Rakenne ja taulukon tiedot", - 'Options' => "Valinnat", - 'Set Auto increment field values to NULL' => "Automaattisen lisäys kentän arvot NULL", - 'Add DROP command before create statements' => "Lisää DROP-komento ennen luoda lausuntoja", - 'Export' => "Vienti", - 'Import' => "Tuonti", - 'Export Database' => "Vienti tietokanta", - 'Export Table' => "Vie taulukko", - 'Server information' => "Palvelimen tiedot", - 'Server' => "Palvelin", - 'Version comment' => "Versio kommentti", - 'Character sets' => "Merkistöt", - 'Server character set' => "Palvelimen merkistö", - 'Client character set' => "Asiakas merkistö", - 'Database character set' => "Tietokannan merkistö", - 'Results character set' => "Tulokset merkistö", - 'Export As' => "Vie", - 'Insert Statements' => "Lisää lausunnot", - 'Include field names in query' => "Sisällytä kenttien nimet kyselyn", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Teksti (yksi tietue per rivi)", - 'Fields separated by:' => "Kentät erotetaan:", - 'Export Results' => "Vie tulokset", - 'Select SQL batch file to import' => "Valitse SQL komentojonotiedoston tuoda", - 'Continue processing even if error occurs' => "Jatka käsittely vaikka virhe ilmenee", - 'Basic Information' => "Perustiedot", - 'Table Properties' => "Taulukon ominaisuudet", - 'Table Name' => "Taulukon nimi", - 'Field Name' => "Kentän nimi", - 'Data Type' => "Tietotyyppi", - 'Length' => "Pituus", - 'Default value' => "Oletusarvo", - 'Unsigned' => "Etumerkitön", - 'Zero Fill' => "Zero Täytä", - 'Primary Key' => "Perusavain", - 'Auto Increment' => "Auto Increment", - 'Not NULL' => "Ei NULL", - 'Character Set' => "Merkistö", - 'Collation' => "Vertailu", - 'Comment' => "Kommentoi", - 'Waiting for table information to be submitted' => "Odottelen taulukon tiedot on esitettävä", - 'Add field' => "Lisää kenttä", - 'Delete selected field' => "Poista valittu kenttä", - 'Clear Table Information' => "Tyhjennä taulukko tiedot", - 'List of values' => "Luettelo arvot", - 'Query Results' => "Kyselyn tulosten", - 'Data for {{TABLE}}' => "Tiedot {{TABLE}}", - 'Select tables to be analyzed/repaired' => "Valitse taulukoiden analysoitava / korjata", - 'Operation to perform' => "Operaatio suorittaa", - 'Analyze' => "Analysoida", - 'Check' => "Tarkista", - 'Optimize' => "Optimoida", - 'Repair' => "Korjaus", - 'Skip Binary logging' => "Ohita lokien", - 'Default' => "Default", - 'Quick' => "Nopea", - 'Fast' => "Nopeasti", - 'Medium' => "Medium", - 'Extended' => "Laajennettu", - 'Changed' => "Muuttunut", - 'Use Frm files (MyISAM tables)' => "Käytä FRM-tiedostot (MyISAM taulukot)", - 'User Information' => "Käyttäjän tiedot", - 'Global Privileges' => "Global erioikeuksista", - 'Database Privileges' => "Tietokannan erioikeuksista", - 'Import File' => "Tuo tiedosto", - 'Index Manager' => "Index Manager", - 'Edit table structure' => "Muokkaa taulukon rakenne", - 'Save All Changes' => "Tallenna kaikki muutokset", - 'Changes are not saved until you press [Save All Changes]' => "Muutoksia ei tallenneta ennen kuin painat [Tallenna kaikki muutokset]", - 'Field Length' => "Kentän pituus", - 'Select objects to include in export' => "Valitse objektit sisältävät viennin", - 'Export type' => "Vie tyyppi", - 'Select All/None' => "Valitse kaikki / Ei", - 'Add User' => "Lisää käyttäjä", - 'Update User' => "Päivitä käyttäjätili", - 'Delete selected User' => "Poista valitut Käyttäjä", - 'Remove Password' => "Poista salasana", - 'Select tables to search' => "Valitse taulukoita haku", - 'Search Options' => "Hakuvaihtoehdot", - 'Search in following field types' => "Etsi seuraava kenttätyypit", - 'Numeric Fields' => "Numeeriset kentät", - 'Character Fields' => "Luonne kentät", - 'Text Fields' => "Teksti kentät", - 'Date/Time Fields' => "Date / Time kentät", - 'Comparison Type' => "Vertailu tyyppi", - 'Text to search' => "Teksti haku", - 'Search' => "Etsi", - 'Search Results' => "Hakutulokset", - 'Number of matches' => "Hakutulosten määrä", - 'Search results for {{KEYWORD}} in the database' => "Hakutulokset {{KEYWORD}} vuonna tietokannassa", - '{{NUM}} match(es)' => "{{NUM}} ottelu (ES)", - 'Copy query to editor' => "Kopioi kysely editor", - 'Done' => "Tehty", - 'SQL Editor' => "SQL Editor", - 'Create Copy' => "Luo Copy", - 'Minimize All' => "Pienennä kaikki", - 'Copy Record(s)' => "Kopioi Record (s)", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "Comma Separated (CSV Excel)", - 'Select data file to import' => "Valitse tiedosto tuotava", - 'Select table for data import' => "Valitse taulukko tietojen tuonti", - 'First line contains column names' => "Ensimmäinen rivi sisältää sarakkeiden nimet", - 'Select objects to operate upon' => "Valitse objektit leikkaat", - 'Operations to perform' => "Toiminta suorittaa", - 'Add prefix string to name' => "Lisää etuliite merkkijono mainitakseni", - 'Delete prefix string from name' => "Poista etuliite merkkijonon nimi", - 'Command text' => "Command teksti", - 'DROP selected database objects' => "Pudottaa tietokantaobjektien", - 'Batch operation results' => "Panosprosesseilla tulokset", - 'Operation' => "Toiminta", - 'Status' => "Tila", - '{{NUM}} queries generated' => "{{NUM}} kyselee syntyy", - 'Please select one or more operations to perform' => "Valitse yksi tai useampi toimintojen suorittamiseen", - 'Quick Search' => "Nopea haku", - '{{NAME}} client library is not installed' => "{{NAME}} client library ei ole asennettu", - '{{NAME}} extension is not installed' => "{{NAME}} laajennus ei ole asennettu", - 'SQLite database folder is inaccessible or not writable' => "SQLite tietokanta kansio on saavuttamattomissa tai ei kirjoitettavissa", - 'Maximize/Restore Results Pane' => "Maksimoi / palauta tulosruudun", - 'Select databases to operate upon' => "Valitse tietokannat toimimaan, kun", - 'DROP selected databases' => "Pudottaa tietokantoja", - 'The following operation is irreversible' => "Seuraava toimenpide on peruuttamaton", - 'Potential data loss might occur' => "Mahdollinen tietojen menetys voi tapahtua", - 'Add TRUNCATE command before insert statements' => "Lisää katkaista komennolla ennen insert lausunnot", - 'Select objects to include in backup' => "Valitse objektit sisällyttää varmuuskopiointi", - 'Backup folder does not exist or is not writable' => "Kansio ei ole olemassa tai ei ole kirjoitettavissa", - 'Backup type' => "Backup tyyppi", - 'Database backup successfully created' => "Tietokannan varmuuskopiointi onnistuneesti luotu", - 'Failed to create database backup' => "Luominen epäonnistui tietokannan varmuuskopio", - 'Generate Bulk insert statements' => "Luo Bulk insert lausuntoja", - 'Maximum size of SQL statement' => "Maksimikoko SQL", - 'Show record count with table names' => "Näytä ennätys määrä pöytä nimet", - 'Sort Table listing by' => "Lajittele taulukko listalle", - 'Name' => "Nimi", - 'Last Update Time' => "Last Update Time", - 'Maximum records to display in result set' => "Suurin kirjaa näytettäväksi tulosjoukon", - 'Show popup dialog for editing large text data' => "Näytä ponnahdusikkuna valintaikkunan muokkausta suurta tekstiä tiedot", - 'Miscellaneous' => "Sekalainen", - 'Reset all confirmation dialogs' => "Nollaa kaikki vahvistus dialogit", - 'Record Editing' => "Record muokkaus", - 'Exclude Table type' => "Sulkea Taulukko tyyppi", - 'Exclude Table Character set' => "Sulkea Taulukko Merkistö", - 'Backup filename' => "Varmuuskopio tiedoston", - 'Invalid filename format' => "Virheellinen tiedostonimi muoto", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "kaikki", - 'all selected' => "Kaikki valitut", - 'An error occured while refreshing the object list.' => "Virhe virkistävä kohde luettelosta.", - 'Are you sure you want to clear all field information from table?' => "Oletko varma että haluat poistaa kaikki kentän tiedot taulukosta?", - 'Are you sure you want to delete this user account?' => "Oletko varma että haluat poistaa tämän käyttäjätunnuksen?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "Oletko varma, että haluat pudottaa kaikki objektit tietokannasta {{NAME}}?", - 'Are you sure you want to DROP selected objects?' => "Oletko varma että haluat pudottaa esineitä?", - 'Are you sure you want to DROP the database {{NAME}}?' => "Oletko varma, että haluat pudottaa tietokantaan {{NAME}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "Oletko varma että haluat pudottaa tämän kohteen? {{NAME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "Oletko varma että haluat suorittaa {{SELECTED}} kyselyitä?", - 'Are you sure you want to logout?' => "Oletko varma että haluat kirjautua ulos?", - 'Are you sure you want to truncate the table {{NAME}}?' => "Oletko varma, että haluat katkaista taulukon {{NAME}}?", - 'Blob Data [{{SIZE}}]' => "Blob Data [{{SIZE}}]", - 'Cancel' => "Peruuta", - 'Check for Updates' => "Tarkista päivitykset", - 'Clear command history?' => "Tyhjennä komennon historia?", - 'Close' => "Sulje", - 'Confirm Action' => "Vahvista Toiminta", - 'Confirm and do not ask me again about this choice' => "Vahvista ja älä kysy enää tästä valinnasta", - 'Copy Object' => "Copy Object", - 'Create Database' => "Luo tietokanta", - 'Create Primary Index on this field' => "Luo ensisijainen Index tällä alalla", - 'Databases' => "Tietokannat", - 'Default value [Use quotes to specify string values]' => "Oletusarvo [Käytä lainausmerkkejä täsmentää merkkijonoarvot]", - 'Disallow NULL values in Field' => "Estä NULL arvoja Field", - 'Enter new index name' => "Kirjoita uusi indeksi nimi", - 'Enter new name for the database object' => "Anna uusi nimi tietokannan objektin", - 'Enter the text to search in database' => "Kirjoita etsittävä teksti tietokannasta", - 'Error' => "Virhe", - 'Events' => "Tapahtumat", - 'Execute query' => "Suorita kysely", - 'Exports results' => "Vienti tulokset", - 'Failed to refresh the results.' => "Epäonnistui päivittää tulokset.", - 'Field Datatype' => "Kenttä Tietotyyppi", - 'Field Name' => "Kentän nimi", - 'Field value is Auto Incremented' => "Kentän arvo on Auto kasvatetaan", - 'Functions' => "Toiminnot", - 'Indexes Updated' => "Indeksit Päivitetty", - 'Maximum Length of field value' => "Pisin kentän arvo", - 'Navigation Error. Try reloading the page' => "Navigointivirheistä. Yritä ladata sivu", - 'New settings saved and applied' => "Uudet asetukset tallennetaan ja sovellettu", - 'New version is available' => "Uusi versio on saatavilla", - 'Next' => "Seuraava", - 'No' => "Ei", - 'No Table selected' => "Ei Taulukko valittu", - 'Not enough room to show this pane.' => "Ei tarpeeksi tilaa näyttää tässä paneelissa.", - 'OK' => "OK", - 'One or more field information is incomplete' => "Yksi tai useampi kenttä tiedot ovat puutteellisia", - 'Open' => "Avaa", - 'Operation failed' => "Operaatio epäonnistui", - 'Pad field values with leading zeros' => "Pad kentän arvot etunollilla", - 'Pane' => "Pane", - 'Passwords do not match' => "Salasanat eivät täsmää", - 'Pin' => "Tappi", - 'Please select one or more operations to perform' => "Valitse yksi tai useampi toimintojen suorittamiseen", - 'Please type in one or more queries in the SQL editor!' => "Kirjoita yksi tai useampi kyselyitä SQL Editor!", - 'Please wait...' => "Odota ...", - 'Previous' => "Edellinen", - 'Procedures' => "Menettely", - 'Prompt' => "Nopea", - 'Refresh results' => "Päivitä tulokset", - 'Refreshing object list' => "Virkistävä kohde luettelosta", - 'Rename Object' => "Nimeä kohde", - 'Resize' => "Asua", - 'Results page:' => "Tulokset sivulla:", - 'Select a database to view privileges for the user' => "Valitse tietokanta tarkastella etuoikeuksia käyttäjä", - 'Select an index to view / edit its details' => "Valitse indeksi katsella ja muokata sen tietoja", - 'Select at least one field type for searching' => "Valitse ainakin yksi kenttä tyyppi hakua", - 'Select objects to operate upon' => "Valitse objektit leikkaat", - 'selector' => "valitsin", - 'Slide Open' => "Slide Open", - 'Table information requires at least one valid field' => "Taulukko tietoa on ainakin yksi kelvollinen kentän", - 'Table name is required' => "Taulukko nimi on", - 'Table successfully created' => "Taulukko onnistuneesti luotu", - 'Table successfully modified' => "Taulukko onnistuneesti muunnetut", - 'Tables' => "Taulukot", - 'Text Data [{{SIZE}}]' => "Text Data [{{SIZE}}]", - 'There is no record in the results to export' => "Ei ole ennätys tuloksia viedä", - 'This attribute is not required for selected field type' => "Tätä ominaisuutta ei vaadita valitun kentän tyyppi", - 'Triggers' => "Käynnistimet", - 'Un-Pin' => "Un-Pin", - 'Unsigned numbered field only' => "Allekirjoittamaton numeroitu kenttä vain", - 'Update check failed' => "Päivitä tarkistus epäonnistui", - 'User information is incomplete or invalid' => "Käyttäjän tiedot ovat puutteellisia tai virheellisiä", - 'User Manager' => "User Manager", - 'Views' => "Näkymät", - 'WARNING' => "VAROITUS", - 'Yes' => "Kyllä", - 'You have the latest version' => "Sinulla on uusin versio", - - ); -?> diff --git a/lang/fr.php b/lang/fr.php deleted file mode 100644 index f2455bf..0000000 --- a/lang/fr.php +++ /dev/null @@ -1,463 +0,0 @@ - - */ - - $LANGUAGE = array( - - // context menu related text - 'Use Database' => "Utiliser la base de données", - 'Drop Database' => "Supprimer la base de données", - 'Empty Database' => "Vider la base de données", - 'Drop all tables from this database' => "Supprimer toutes les tables de cette base de données", - 'Select statement' => "Instruction Select", - 'Insert statement' => "Instruction Insert", - 'Update statement' => "Instruction Update", - 'Describe' => "Décrire", - 'Show create command' => "Voir la commande create", - 'View data' => "Voir les données", - 'Alter Table' => "Modifier la Table", - 'Indexes' => "Index", - 'Engine Type' => "Type de moteur", - 'More operations' => "Plus d'opérations", - 'Truncate' => "Tronquer", - 'Drop' => "Supprimer", - 'Rename' => "Renommer", - 'Export table data' => "Exporter les données de la table", - 'Create Table' => "Créer une table", - 'Create View' => "Créer une vue", - 'Create Procedure' => "Créer une procédure", - 'Create Function' => "Créer fonction", - 'Create Trigger' => "Créer un déclencheur", - 'Create Event' => "Créer un événement", - 'Show/Hide Panel' => "Afficher / Masquer le panneau", - 'Show/Hide Header' => "Afficher / Masquer en-tête", - 'Copy all queries to clipboard' => "Copiez toutes les requêtes dans le presse papier", - 'Clear history' => "Effacer l'historique", - 'Copy Column values' => "Copier les valeurs de la colonne", - 'Copy to clipboard' => "Copier dans le presse-papier", - 'Generate SQL Filter' => "Générer les filtres SQL", - 'Database Manager' => "Database Manager", - 'Manage databases' => "Gérer les bases de données", - - // main menu related text - 'Database' => "Base de données", - 'Refresh' => "Actualiser", - 'Refresh database object list' => "Rafraîchir la liste d'objet de la base de données", - 'Create new' => "Créer un nouveau", - 'Export' => "Exporter", - 'Export database to external file' => "Exporter la base de données vers un fichier externe", - 'Objects' => "Objets", - 'Create Table' => "Créer une table", - 'Create a new table in the database' => "Créer une nouvelle table dans la base de données", - 'Create View' => "Créer une vue", - 'Create a new view in the database' => "Créer une nouvelle vue dans la base de données", - 'Create Stored Procedure' => "Créer une procédure stockée", - 'Create a new stored procedure in the database' => "Créer une nouvelle procédure stockée dans la base de données", - 'Create Function' => "Créer une fonction", - 'Create a new user defined function in the database' => "Créer une nouvelle fonction définie par l'utilisateur dans la base de données", - 'Create Trigger' => "Créer un déclencheur", - 'Create a new trigger in the database' => "Créer un nouveau déclencheur dans la base de données", - 'Create Event' => "Créer un événement", - 'Create a new event in the database' => "Créer un nouvel événement dans la base de données", - 'Data' => "Données", - 'Import batch file' => "Importer un fichier de traitemement par lot", - 'Import multiple queries from batch file' => "Importer plusieurs requêtes à partir du fichier de traitement par lot", - 'Export database' => "Exporter la base de données", - 'Export database to batch file as sql dump' => "Exporter la base de donnée vers un fichier dump", - 'Export current results' => "Exporter les résultats actuels", - 'Export query results to clipboard or files' => "Exporter les résultats de la requête vers le presse-papier ou des fichiers", - 'Tools' => "Outils", - 'Process Manager' => "Gestionnaire de processus", - 'View and manage database processes' => "Voir et gérer les processus de base de données", - 'Repair Tables' => "Réparer les tables", - 'Analyze and repair database tables' => "Analyser et réparer les tables de la base de données", - 'User Manager' => "Gestionnaire des utilisateurs", - 'Manage database users' => "Gérer les utilisateurs de base de données", - 'Search in Database' => "Recherche dans la base de données", - 'Search for text in the database' => "Rechercher du texte dans la base de données", - 'Information' => "Information", - 'Server/Connection Details' => "Détails du serveur / Connexion", - 'View server configuration' => "Voir la configuration du serveur", - 'View server and connection details' => "Voir les détails de connexion et serveur", - 'Server Variables' => "Variables serveur", - 'Database Summary' => "Résumé de la base de données", - 'View current database summary stats' => "Voir les statistiques du résumé de la base de données", - 'Interface' => "Interface", - 'Options' => "Options", - 'Configure application options' => "Configurer les options de l'application", - 'UI Theme' => "Thème d'interface utilisateur", - 'Database Objects' => "Objets de la base", - 'Toggle Object Viewer' => "Basculer d'affichage du visualisateur dd'objet", - 'Help contents' => "Sommaire de l'aide", - 'Learn the basics of using MyWebSQL' => "Apprenez les bases de l'utilisation MyWebSQL", - 'QuickStart Tutorials' => "Didacticiels de démarrage rapide", - 'See quick hands-on tutorial of MyWebSQL interface' => "Voir le didacticiel de prise en main rapide de MyWebSQL", - 'Online documentation' => "Documentation en ligne", - 'View online documentation on project website' => "Voir la documentation en ligne sur le site Web du projet", - 'Request a Feature' => "Demander une fonctionnalité", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "Si vous souhaitez que votre fonctionnalité préférée fasse partie de MyWebSQL, s'il vous plaît cliquez ici pour nous en informer", - 'Report a Problem' => "Signaler un problème", - 'Check for updates' => "Vérifier les mises à jour", - 'Check for updated versions of the application online' => "Vérifiez mises à jour de ld'application en ligne", - 'Logout' => "Déconnexion", - 'Logout from this session' => "Sortir de cette session", - 'Language' => "Langue", - 'SQL Editor' => "Editeur SQL", - 'Toggle SQL Editor' => "Basculer d'affichage de ld'éditeur SQL", - 'Experimental' => "Expérimentale", - 'Import table data' => "Importer des données de table", - 'Import table data from external file' => "Données de la table d'importation de fichier externe", - 'Batch operations' => "Opérations par lots", - 'Perform one or more batch operations on database' => "Effectuer une ou plusieurs opérations par lots sur la base de données", - 'Create a new schema in the database' => "Créer un nouveau schéma dans la base de données", - 'Create Schema' => "Créer un schéma", - 'Table Description' => "Description de la table", - 'Database Manager' => "Database Manager", - 'Manage databases' => "Gérer les bases de données", - 'Backup database on the server as SQL dump' => "Base de données de sauvegarde sur le serveur SQL dump", - 'Backup Database' => "Base de données de sauvegarde", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "Votre navigateur semble être très ancien et ne prend pas en charge toutes les fonctionnalités nécessaires à l'exécution MyWebSQL.", - 'Try using a newer version of the browser to run this application.' => "Essayez d'utiliser une version plus récente du navigateur pour exécuter cette application", - - // text used on various screens in the interface - 'Visit Project website' => "Visiter le site web du projet", - 'Version' => "version", - 'Loading' => "Chargement", - 'Quick Edit Options' => "Options de modification rapide", - 'Press {{KEY}} to set NULL' => "Appuyez sur {{KEY}} pour définir la valeur NULL", - 'MySQL Server' => "MySQL Server", - 'Logged in as: {{USER}}' => "Connecté en tant que: {{USER}}", - 'Results' => "Résultats", - 'Messages' => "Messages", - 'Information' => "Information", - 'History' => "Histoire", - 'There are no results to show in this view' => "Il n'ya pas de résultats à afficher dans cette vue", - 'Refresh results' => "Actualiser les résultats", - 'Please wait' => "S'il vous plaît attendre", - 'Query All' => "Interroger tous les", - 'Query' => "Requête", - 'Add Record' => "Ajouter un enregistrement", - 'Delete Record(s)' => "Supprimer l'enregistrement (s)", - 'Update Record(s)' => "Notice de mise à jour (s)", - 'Generate SQL' => "Générer la requête SQL", - 'Database name' => "Base de données", - 'Select database after creation' => "Sélectionnez la base de données après la création", - 'Database connection failed to the server' => "La connexion à base de données a échoué sur le serveur", - 'Host' => "Hôte", - 'User' => "Utilisateur", - 'Select a database to begin' => "Sélectionnez une base de données pour commencer", - 'Select/unselect All records' => "Sélectionner / désélectionner tous les enregistrements", - 'Primary key column' => "Colonne de clé primaire", - 'Unique key column' => "Colonne de clé unique", - 'Showing records {{START}} - {{END}}' => "Liste des dossiers {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "Liste premier {{MAX}} enregistrements uniquement", - '1 query successfully executed' => "1 requête exécutée avec succès", - '{{NUM}} queries successfully executed' => "{{NUM}} requêtes exécutées avec succès", - '{{NUM}} record(s) were affected' => "{{NUM}} enregistrement (s) ont été modifié (s)", - '{{NUM}} record(s) updated' => "{{NUM}} enregistrement (s) mis à jour", - 'Error occurred while executing the query' => "Une erreur s'est produite lors de l'exécution de la requête", - '{{NUM}} queries failed to execute' => "{{NUM}} requêtes n'ont pu être exécutée", - 'Click to view/edit column data [{{NUM}} Bytes]' => "Cliquez pour afficher / modifier les données de la colonne [{{NUM}} Bytes]", - 'Blob data is not editable' => "Les Données blob ne sont pas modifiable", - 'Blob data saved' => "Les données blob sont enregistrées", - 'Failed to save blob data' => "Impossible d'enregistrer des données blob", - 'The process with id [{{PID}}] was killed' => "Le processus d'id [{{PID}}] a été tué", - 'No such process [id = {{PID}}]' => "Aucun processus tels [id = {{PID}}]", - 'Select a process and click the button to kill the process' => "Sélectionnez un processus et cliquez sur le bouton pour tuer le processus", - 'Process ID' => "ID du processus", - 'Command' => "Command", - 'Time' => "Temps", - 'Info' => "Info", - 'Kill Process' => "Tuer le processus", - 'Failed to get process list' => "Impossible d'obtenir la liste des processus", - 'The command executed successfully' => "La commande a été exécutée avec succès", - 'Invalid server configuration' => "Configuration de serveur non valide", - 'Invalid Credentials' => "Informations de vérification non valides", - 'New database successfully created' => "Nouvelle base de données créée avec succès", - 'File upload failed. Please try again' => "Le téléchargement de fichiers a échoué. Essayez de nouveau SVP", - 'No queries were executed during import' => "Aucune requêtes ont été exécutées lors de l'importation", - 'Maximum upload filesize is {{SIZE}}' => "La taille maximale du fichier à télécharger est {{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "Les types de fichiers pris en charge / extensions sont: ({{LIST}})", - 'Database summary' => "Résumé de base de données", - 'Server Variables' => "Variables du serveur", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "Tout objet existant portant le même nom doit être supprimé manuellement avant d'exécuter la commande de création", - 'Only create commands are accepted' => "Seules les commandes de création sont acceptées", - 'User ID' => "ID utilisateur", - 'Password' => "Mot de passe", - 'Login' => "Connectez-vous", - 'Create new database object' => "Créer un objet base de données", - 'Enter command for object creation' => "Entrez la commande pour la création d'objet", - 'Submit' => "Soumettre", - 'Show blob data as: {{TYPE}}' => "Afficher les données BLOB en tant que: {{TYPE}}", - 'Blob data for column {{NAME}}' => "Données pour la colonne BLOB {{NAME}}", - 'Create command for {{TYPE}} {{NAME}}' => "Créer une commande pour {{TYPE}} {{NAME}}", - 'Table Engine (type)' => "Moteur de la table (type)", - 'Change Table Type' => "Changer le type de la table", - 'The requested page is not available on the server' => "La page demandée n'est pas disponible sur le serveur", - 'Error' => "Erreur", - 'It appears that you attempted to submit an invalid request to the server' => "Il semble que vous avez tenté de soumettre une demande non valide au le serveur", - 'The request has been denied. Reloading the page might solve the problem' => "La demande a été refusée. Le rechargement de la page pourrait résoudre le problème", - 'Access Denied' => "Accès refusé", - 'Help' => "Aide", - 'To see most up-to-date help contents, please visit {{LINK}}' => "Pour voir le contenu de l'aide le plus à jour, s'il vous plaît visitez {{LINK}}", - 'It appears that your browser session has expired' => "Il semble que la session de votre navigateur a expiré", - 'Please refresh the webpage to re-login' => "S'il vous plaît rafraîchissez la page web pour vous reconnecter", - 'Table information' => "Tableau d'information", - 'Edit' => "Modifier", - 'Save' => "Enregistrer", - 'Either the database is empty, or there was an error retrieving list of database objects' => "Soit la base de données est vide, ou il y a eu une erreur lors de la récupération de liste des objets de la base de données", - 'Please try closing and re-opening this dialog again' => "S'il vous plaît, essayez de fermer et de rouvrir cette boîte de dialogue", - 'Structure' => "Structure", - 'Table Data' => "Données de la table", - 'Structure and Table Data' => "Structure et données de la table", - 'Options' => "Options", - 'Set Auto increment field values to NULL' => "Définissez les valeurs de champ auto incrémentés à NULL", - 'Add DROP command before create statements' => "Ajoutez la commande DROP avant de créer les déclarations", - 'Export' => "Exporter", - 'Import' => "Importer", - 'Export Database' => "Exporter la base de données", - 'Export Table' => "Exporter le tableau", - 'Server information' => "Informations sur le serveur", - 'Server' => "Serveur", - 'Version comment' => "Commentaire de version", - 'Character sets' => "Jeux de caractères", - 'Server character set' => "Jeu de caractères du serveur", - 'Client character set' => "Jeu de caractères du client", - 'Database character set' => "Jeu de caractères de la base", - 'Results character set' => "Jeu de caractères du résultat", - 'Export As' => "Exporter en tant que", - 'Insert Statements' => "Insérez déclarations", - 'Include field names in query' => "Inclure les noms de champs dans la requête", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Texte brut (un enregistrement par ligne)", - 'Fields separated by:' => "Champs séparés par:", - 'Export Results' => "Exporter les résultats", - 'Select SQL batch file to import' => "Sélectionnez le fichier batch SQL pour importer", - 'Continue processing even if error occurs' => "Poursuivre le traitement même si une erreur se produit", - 'Basic Information' => "Informations de base", - 'Table Properties' => "Propriétés du tableau", - 'Table Name' => "Nom de la table", - 'Field Name' => "Nom du champ", - 'Data Type' => "Type de données", - 'Length' => "Longueur", - 'Default value' => "Valeur par défaut", - 'Unsigned' => "Non signé", - 'Zero Fill' => "Zero Fill", - 'Primary Key' => "Clé primaire", - 'Auto Increment' => "Incrementation automatique", - 'Not NULL' => "Non NULL", - 'Character Set' => "Jeu de caractères", - 'Collation' => "Collation", - 'Comment' => "Commentaire", - 'Waiting for table information to be submitted' => "En attente de soumission des informations de la table", - 'Add field' => "Ajouter un champ", - 'Delete selected field' => "Supprimer le champ sélectionné", - 'Clear Table Information' => "Effacer les informations de la table", - 'List of values' => "Liste des valeurs", - 'Query Results' => "Résultats de la requête", - 'Data for {{TABLE}}' => "Données pour la {{TABLE}}", - 'Select tables to be analyzed/repaired' => "Sélectionnez les tables à analyser / réparer", - 'Operation to perform' => "Opération à effectuer", - 'Analyze' => "Analyser", - 'Check' => "Vérifier", - 'Optimize' => "Optimiser", - 'Repair' => "Réparer", - 'Skip Binary logging' => "Passer le log binaire", - 'Default' => "Par défaut", - 'Quick' => "Quick", - 'Fast' => "Fast", - 'Medium' => "Medium", - 'Extended' => "Extended", - 'Changed' => "Changé", - 'Use Frm files (MyISAM tables)' => "Utiliser frm (tables MyISAM)", - 'User Information' => "Informations sur l'utilisateur", - 'Global Privileges' => "Privilèges globaux", - 'Database Privileges' => "Privilèges de la base de données", - 'Import File' => "Importer un fichier", - 'Index Manager' => "Gestionnaire d'index", - 'Edit table structure' => "Modifier la structure des tables", - 'Save All Changes' => "Enregistrer toutes les modifications", - 'Changes are not saved until you press [Save All Changes]' => "Modifications ne sont pas enregistrés tant que vous n'appuyez sur [Enregistrer toutes les modifications]", - 'Field Length' => "Longueur du champ", - 'Select objects to include in export' => "Sélectionnez les objets à inclure dans l'exportation", - 'Export type' => "Type d'exportation", - 'Select All/None' => "Sélectionner tout / rien", - 'Add User' => "Ajouter un utilisateur", - 'Update User' => "Mise à jour de l'utilisateur", - 'Delete selected User' => "Supprimer l'utilisateur sélectionné", - 'Remove Password' => "Supprimer le mot de passe", - 'Select tables to search' => "Sélectionner les tables pour la recherche", - 'Search Options' => "Options de recherche", - 'Search in following field types' => "Effectuer la recherche dans les types de champs suivant", - 'Numeric Fields' => "Champs numériques", - 'Character Fields' => "Champs charactère", - 'Text Fields' => "Champs texte", - 'Date/Time Fields' => "Champs date / heure", - 'Comparison Type' => "Type de comparaison", - 'Text to search' => "Texte à rechercher", - 'Search' => "Rechercher", - 'Search Results' => "Résultats de la recherche", - 'Number of matches' => "Nombre de correspondances", - 'Search results for {{KEYWORD}} in the database' => "Résultats pour {{KEYWORD}} dans la base de données", - '{{NUM}} match(es)' => "{{NUM}} correspondance(s)", - 'Copy query to editor' => "Copier vers l'éditeur de requête", - 'Done' => "Fait", - 'SQL Editor' => "L'éditeur SQL", - 'Create Copy' => "Créer une copie", - 'Minimize All' => "Réduire toutes les", - 'Copy Record(s)' => "Copier enregistrement (s)", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "Comma Separated (CSV pour Excel)", - 'Select data file to import' => "Sélectionnez le fichier de données à importer", - 'Select table for data import' => "Sélectionnez la table pour l'importation de données", - 'First line contains column names' => "La première ligne contient les noms de colonnes", - 'Select objects to operate upon' => "Sélectionnez les objets à opérer sur", - 'Operations to perform' => "Opérations à effectuer", - 'Add prefix string to name' => "Ajouter préfixe pour n'en nommer que", - 'Delete prefix string from name' => "Supprimer préfixe du nom de", - 'Command text' => "Texte de commande", - 'DROP selected database objects' => "Déposer des objets de bases de données sélectionnées", - 'Batch operation results' => "Résultats de l'opération par lots", - 'Operation' => "Opération", - 'Status' => "Statut", - '{{NUM}} queries generated' => "{{NUM}} requêtes générées", - 'Please select one or more operations to perform' => "S'il vous plaît sélectionner un ou plusieurs opérations à effectuer", - 'Quick Search' => "Recherche rapide", - '{{NAME}} client library is not installed' => "{{NAME}} bibliothèque client n'est pas installé", - '{{NAME}} extension is not installed' => "{{NAME}} extension n'est pas installé", - 'SQLite database folder is inaccessible or not writable' => "Dossier de la base SQLite est inaccessible ou protégé en écriture", - 'Maximize/Restore Results Pane' => "Agrandir / Restaurer le panneau de résultats", - 'Select databases to operate upon' => "Sélectionner les bases d'opérer sur", - 'DROP selected databases' => "DROP bases de données sélectionnées", - 'The following operation is irreversible' => "L'opération suivante est irréversible", - 'Potential data loss might occur' => "Potentiel de perte de données peut se produire", - 'Add TRUNCATE command before insert statements' => "Ajouter TRUNCATE commande avant les instructions d'insertion", - 'Select objects to include in backup' => "Sélectionnez les objets à inclure dans la sauvegarde", - 'Backup folder does not exist or is not writable' => "Dossier de sauvegarde n'existe pas ou n'est pas accessible en écriture", - 'Backup type' => "Type de sauvegarde", - 'Database backup successfully created' => "Sauvegarde de base de données créé avec succès", - 'Failed to create database backup' => "Impossible de créer une sauvegarde de base de données", - 'Generate Bulk insert statements' => "Générer des instructions INSERT de masse", - 'Maximum size of SQL statement' => "La taille maximale de l'instruction SQL", - 'Show record count with table names' => "Afficher le nombre d'enregistrements de noms de table", - 'Sort Table listing by' => "Trier la liste de table par", - 'Name' => "Nom", - 'Last Update Time' => "Dernière mise à jour Temps", - 'Maximum records to display in result set' => "Nombre maximal d'enregistrements à afficher dans le jeu de résultats", - 'Show popup dialog for editing large text data' => "Afficher le dialogue contextuel pour éditer les grandes données textuelles", - 'Miscellaneous' => "Divers", - 'Reset all confirmation dialogs' => "Réinitialiser tous les messages de confirmation", - 'Record Editing' => "Modification de l'enregistrement", - 'Exclude Table type' => "Exclure type de tableau", - 'Exclude Table Character set' => "Exclure Set de table de caractères", - 'Backup filename' => "Nom de fichier de sauvegarde", - 'Invalid filename format' => "Format de fichier non valide", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "tous les", - 'all selected' => "tous sélectionnés", - 'An error occured while refreshing the object list.' => "Une erreur s'est produite lors du rafraîchissement la liste d'objets.", - 'Are you sure you want to clear all field information from table?' => "Êtes-vous sûr de vouloir effacer toutes les informations de champ de la table?", - 'Are you sure you want to delete this user account?' => "Etes-vous sûr de vouloir supprimer ce compte d'utilisateur?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "Êtes-vous sûr de vouloir supprimer tous les objets de la base de données {{NAME}}?", - 'Are you sure you want to DROP selected objects?' => "Etes-vous sûr de vouloir supprimer les objets sélectionnés?", - 'Are you sure you want to DROP the database {{NAME}}?' => "Êtes-vous sûr de vouloir supprimer la base {{NAME}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "Êtes-vous sûr de vouloir supprimer cet objet? {{NAME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "Êtes-vous sûr de vouloir exécuter {{SELECTED}} requêtes?", - 'Are you sure you want to logout?' => "Etes-vous sûr de vouloir vous déconnecter?", - 'Are you sure you want to truncate the table {{NAME}}?' => "Êtes-vous sûr de vouloir tronquer la table {{NAME}}?", - 'Blob Data [{{SIZE}}]' => "Des données BLOB [{{SIZE}}]", - 'Cancel' => "Annuler", - 'Check for Updates' => "Vérifier les mises à jour", - 'Clear command history?' => "Effacer l'historique des commandes?", - 'Close' => "Fermer", - 'Confirm Action' => "Confirmez l'action", - 'Confirm and do not ask me again about this choice' => "Confirmer et ne plus me poser la question", - 'Copy Object' => "Objet de copie", - 'Create Database' => "Créer la base de données", - 'Create Primary Index on this field' => "Créer un index primaire pour ce champ", - 'Databases' => "Bases de données", - 'Default value [Use quotes to specify string values]' => "Valeur par défaut [Utiliser les guillemets pour spécifier des valeurs de chaîne]", - 'Disallow NULL values in Field' => "Interdire les valeurs NULL dans le champ", - 'Enter new index name' => "Entrez le nom du nouveau index", - 'Enter new name for the database object' => "Entrez un nouveau nom pour l'objet de base de données", - 'Enter the text to search in database' => "Entrez le texte à rechercher dans la base", - 'Error' => "Erreur", - 'Events' => "Evénements", - 'Execute query' => "Exécuter la requête", - 'Exports results' => "Exporter les résultats", - 'Failed to refresh the results.' => "Impossible d'actualiser les résultats.", - 'Field Datatype' => "Type de données du champ", - 'Field Name' => "Nom du champ", - 'Field value is Auto Incremented' => "La valeur du champ est auto-incrémentée", - 'Functions' => "Fonctions", - 'Indexes Updated' => "Les index ont été mise à jour", - 'Maximum Length of field value' => "Longueur maximale de la valeur du champ", - 'Navigation Error. Try reloading the page' => "Erreur de navigation. Essayez de recharger la page", - 'New settings saved and applied' => "Nouveaux paramètres enregistrés et appliqués", - 'New version is available' => "Nouvelle version est disponible", - 'Next' => "Suivant", - 'No' => "N°", - 'No Table selected' => "Tableau n° choisi", - 'Not enough room to show this pane.' => "Pas assez de place pour voir ce volet.", - 'OK' => "OK", - 'One or more field information is incomplete' => "Un ou plusieurs champ d'informations sont incomplets", - 'Open' => "Open", - 'Operation failed' => "L'opération a échoué", - 'Pad field values with leading zeros' => "Remplir les valeurs de champ par des zéros", - 'Pane' => "Volet", - 'Passwords do not match' => "Les mots de passe ne correspondent pas", - 'Pin' => "Pin", - 'Please select one or more operations to perform' => "S'il vous plaît sélectionner un ou plusieurs opérations à effectuer", - 'Please type in one or more queries in the SQL editor!' => "S'il vous plaît taper un ou plusieurs requêtes dans l'éditeur SQL!", - 'Please wait...' => "Patientez S'il vous plaît...", - 'Previous' => "Précédent", - 'Procedures' => "Procédures", - 'Prompt' => "Invite", - 'Refresh results' => "Actualiser les résultats", - 'Refreshing object list' => "Rafraîchir la liste d'objets", - 'Rename Object' => "Renommer l'objet", - 'Resize' => "Redimensionner", - 'Results page:' => "Page de résultats:", - 'Select a database to view privileges for the user' => "Sélectionnez une base de données pour afficher les privilèges de l'utilisateur", - 'Select an index to view / edit its details' => "Sélectionner un index pour afficher / modifier ses détails", - 'Select at least one field type for searching' => "Sélectionnez au moins un type de champ pour la recherche", - 'Select objects to operate upon' => "Sélectionnez les objets à opérer sur", - 'selector' => "sélecteur", - 'Slide Open' => "Ouvrir en glissant", - 'Table information requires at least one valid field' => "Les informations de table nécessitent au moins un champ valide", - 'Table name is required' => "Nom de la table est nécessaire", - 'Table successfully created' => "Table créée avec succès", - 'Table successfully modified' => "Table modifiée avec succès", - 'Tables' => "Tables", - 'Text Data [{{SIZE}}]' => "Des données de texte [{{TAILLE}}]", - 'There is no record in the results to export' => "Il n'ya aucun enregistrement dans les résultats à exporter", - 'This attribute is not required for selected field type' => "Cet attribut n'est pas requis pour le type de champ sélectionné", - 'Triggers' => "Déclencheurs", - 'Un-Pin' => "Un-Pin", - 'Unsigned numbered field only' => "Champ numérique non signé seulement", - 'Update check failed' => "Mise à jour Échec de la vérification", - 'User information is incomplete or invalid' => "Les informations utilisateur sont incomplètes ou invalides", - 'User Manager' => "Gestionnaire des utilisateurs", - 'Views' => "Vues", - 'WARNING' => "AVERTISSEMENT", - 'Yes' => "Oui", - 'You have the latest version' => "Vous avez la dernière version", - - ); -?> diff --git a/lang/gl.php b/lang/gl.php deleted file mode 100644 index 69e6dea..0000000 --- a/lang/gl.php +++ /dev/null @@ -1,463 +0,0 @@ - "Uso de bases de datos", - 'Drop Database' => "Drop Database", - 'Empty Database' => "Base de datos baleira", - 'Drop all tables from this database' => "Drop todas as táboas deste base de datos", - 'Select statement' => "Select", - 'Insert statement' => "Inserir declaración", - 'Update statement' => "declaración de actualización", - 'Describe' => "Describir", - 'Show create command' => "Mostrar comando create", - 'View data' => "Amosar datos", - 'Alter Table' => "Alter Table", - 'Indexes' => "Índices", - 'Engine Type' => "Tipo de motor", - 'More operations' => "Máis operacións", - 'Truncate' => "Truncar", - 'Drop' => "Drop", - 'Rename' => "Renomear", - 'Export table data' => "táboa de datos de exportación", - 'Create Table' => "Crear táboa", - 'Create View' => "Crear Vista", - 'Create Procedure' => "Create Procedure", - 'Create Function' => "Crear Función", - 'Create Trigger' => "Crear Trigger", - 'Create Event' => "Crear evento", - 'Show/Hide Panel' => "Amosar / ocultar o Panel de", - 'Show/Hide Header' => "Show / Hide cabeceira", - 'Copy all queries to clipboard' => "Copiar todas as consultas á prancheta", - 'Clear history' => "Borrar historial", - 'Copy Column values' => "Copiar Columna valores", - 'Copy to clipboard' => "Copiar ao portapapeis", - 'Generate SQL Filter' => "Generate SQL Filtro", - 'Database Manager' => "Director de base de datos", - 'Manage databases' => "Xestionar bases de datos", - - // main menu related text - 'Database' => "Base de Datos", - 'Refresh' => "Actualizar", - 'Refresh database object list' => "Actualizar lista de obxectos de base de datos", - 'Create new' => "Crear unha nova", - 'Export' => "Exportación", - 'Export database to external file' => "Exportar base de datos a un ficheiro externo", - 'Objects' => "Obxectos", - 'Create Table' => "Crear táboa", - 'Create a new table in the database' => "Crear unha nova táboa na base de datos", - 'Create View' => "Crear Vista", - 'Create a new view in the database' => "Crear nova exhibición na base de datos", - 'Create Stored Procedure' => "Crear Stored Procedure", - 'Create a new stored procedure in the database' => "Crear un novo procedemento almacenado na base de datos", - 'Create Function' => "Crear Función", - 'Create a new user defined function in the database' => "Crear un novo usuario función definida na base de datos", - 'Create Trigger' => "Crear Trigger", - 'Create a new trigger in the database' => "Crear un novo gatillo na base de datos", - 'Create Event' => "Crear evento", - 'Create a new event in the database' => "Crear un novo evento na base de datos", - 'Data' => "Datos", - 'Import batch file' => "Descargar un arquivo de lote", - 'Import multiple queries from batch file' => "Importar consultas múltiples dun arquivo de lote", - 'Export database' => "Exportar base de datos", - 'Export database to batch file as sql dump' => "Exportar base de datos para arquivos de lote como o dump SQL", - 'Export current results' => "Exportar resultados actuais", - 'Export query results to clipboard or files' => "resultados da consulta de exportación para o portapapeis ou arquivos", - 'Tools' => "Ferramentas", - 'Process Manager' => "Process Manager", - 'View and manage database processes' => "Ver e xestionar procesos de base de datos", - 'Repair Tables' => "Táboas de reparación", - 'Analyze and repair database tables' => "Analizar e arranxar as táboas da base", - 'User Manager' => "User Manager", - 'Manage database users' => "Xestionar usuarios de base de datos", - 'Search in Database' => "Consulta á base de datos", - 'Search for text in the database' => "Procurar texto na base de datos", - 'Information' => "Información", - 'Server/Connection Details' => "Detalles do Servidor / Conexión", - 'View server configuration' => "Ver configuración de servidor", - 'View server and connection details' => "Ver servidor e conexión de datos", - 'Server Variables' => "Variables de Servidor", - 'Database Summary' => "Resumo da base de datos", - 'View current database summary stats' => "Ver resumo estatísticas actuais de base de datos", - 'Interface' => "Interface", - 'Options' => "Opcións", - 'Configure application options' => "Configurar opcións de aplicación", - 'UI Theme' => "UI theme", - 'Database Objects' => "Obxectos de Base de Datos", - 'Toggle Object Viewer' => "Cambiar View Obxecto", - 'Help contents' => "contido da Axuda", - 'Learn the basics of using MyWebSQL' => "Aprende os fundamentos básicos do uso MyWebSQL", - 'QuickStart Tutorials' => "Tutoriais de inicio rápido", - 'See quick hands-on tutorial of MyWebSQL interface' => "Vexa interface hands-on tutorial de MyWebSQL rápida", - 'Online documentation' => "Documentación en liña", - 'View online documentation on project website' => "Ver documentación en liña na páxina web do proxecto", - 'Request a Feature' => "Solicitar un novo recurso", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "Se desexa súa característica máis favorito para ser parte MyWebSQL, prema aquí para se informar", - 'Report a Problem' => "Comunicar un problema", - 'Check for updates' => "Comprobe se hai actualizacións", - 'Check for updated versions of the application online' => "Asegúrese de que hai versións actualizadas da aplicación online", - 'Logout' => "Logout", - 'Logout from this session' => "Saír da sesión", - 'Language' => "Idioma", - 'SQL Editor' => "SQL Editor", - 'Toggle SQL Editor' => "Editor de SQL cambiar", - 'Experimental' => "Experimental", - 'Import table data' => "Importar datos da táboa", - 'Import table data from external file' => "Importar datos da táboa de arquivo externo", - 'Batch operations' => "Operacións en lote", - 'Perform one or more batch operations on database' => "Realizar unha ou máis tarefas en lote na base de datos", - 'Create a new schema in the database' => "Crear un novo esquema da base de datos", - 'Create Schema' => "Crear esquema", - 'Table Description' => "Descrición táboa", - 'Database Manager' => "Director de base de datos", - 'Manage databases' => "Xestionar bases de datos", - 'Backup database on the server as SQL dump' => "Base de datos de copia de seguridade no servidor como despejo de SQL", - 'Backup Database' => "Base de datos de copia de seguridade", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "O seu navegador semella moi antiga e non soporta todos os recursos necesarios para realizar MyWebSQL.", - 'Try using a newer version of the browser to run this application.' => "Intente unha versión máis recente do navegador para executar esta aplicación.", - - // text used on various screens in the interface - 'Visit Project website' => "Visita o sitio do proxecto", - 'Version' => "versión", - 'Loading' => "Cargando", - 'Quick Edit Options' => "Quick Edit Options", - 'Press {{KEY}} to set NULL' => "Prema o botón {{KEY}} para definir NULL", - 'MySQL Server' => "MySQL", - 'Logged in as: {{USER}}' => "Identificados como: {{USER}}", - 'Results' => "Resultados", - 'Messages' => "Mensaxes", - 'Information' => "Información", - 'History' => "Historia", - 'There are no results to show in this view' => "Non hai resultados para amosar nesta vista", - 'Refresh results' => "Actualizar resultados", - 'Please wait' => "Por favor, agarde", - 'Query All' => "Consulta todos", - 'Query' => "Consulta", - 'Add Record' => "Engadir Record", - 'Delete Record(s)' => "Borrar rexistro (s)", - 'Update Record(s)' => "Actualizar rexistro (s)", - 'Generate SQL' => "Generate SQL", - 'Database name' => "Nome da base", - 'Select database after creation' => "Seleccione base de datos tras a creación", - 'Database connection failed to the server' => "conexión de base de datos fallou ao servidor", - 'Host' => "Host", - 'User' => "Usuario", - 'Select a database to begin' => "Seleccione unha base de datos para comezar", - 'Select/unselect All records' => "Seleccionar / desmarcar todos os rexistros", - 'Primary key column' => "columna de chave primaria", - 'Unique key column' => "Única columna de clave", - 'Showing records {{START}} - {{END}}' => "Amosando rexistros {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "Amosando primeira {{MAX}} só rexistros", - '1 query successfully executed' => "Unha consulta realizada con éxito", - '{{NUM}} queries successfully executed' => "{{NUM}} consultas realizado con éxito", - '{{NUM}} record(s) were affected' => "{{NUM}} rexistro (s) foron afectadas", - '{{NUM}} record(s) updated' => "{{NUM}} rexistro (s) actualizada", - 'Error occurred while executing the query' => "Houbo un erro ao executar a consulta", - '{{NUM}} queries failed to execute' => "{{NUM}} non se puido executar consultas", - 'Click to view/edit column data [{{NUM}} Bytes]' => "Pulse para ver / editar columna de datos [{{NUM}} Bytes]", - 'Blob data is not editable' => "datos Blob non se pode cambiar", - 'Blob data saved' => "Blob datos gardados", - 'Failed to save blob data' => "Non se puido gardar datos blob", - 'The process with id [{{PID}}] was killed' => "O proceso co id [{{PID}}] foi morto", - 'No such process [id = {{PID}}]' => "Ningún proceso, tales [id = {{PID}}]", - 'Select a process and click the button to kill the process' => "Seleccione un proceso e prema no botón para matar o proceso", - 'Process ID' => "Proceso de identificación", - 'Command' => "Comando", - 'Time' => "Equipo", - 'Info' => "Info", - 'Kill Process' => "Kill Process", - 'Failed to get process list' => "Non se puido obter a lista de procesos", - 'The command executed successfully' => "A orde foi executada con éxito", - 'Invalid server configuration' => "configuración do servidor non válido", - 'Invalid Credentials' => "Credenciais non válidas", - 'New database successfully created' => "Nova base de datos creado con éxito", - 'File upload failed. Please try again' => "Carga do ficheiro fallou. Por favor, ténteo de novo", - 'No queries were executed during import' => "Ningunha consulta foron executados durante a importación", - 'Maximum upload filesize is {{SIZE}}' => "Máxima de subida tamaño é {{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "tipos de arquivos soportados / extensions son: ({{LISTA}})", - 'Database summary' => "Resumo da base de datos", - 'Server Variables' => "Variables de Servidor", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "Calquera obxecto co mesmo nome debe ser retirado manualmente antes de executar o comando de creación", - 'Only create commands are accepted' => "Só crear comandos son válidos", - 'User ID' => "User ID", - 'Password' => "Contrasinal", - 'Login' => "Login", - 'Create new database object' => "Crear un obxecto nova base de datos", - 'Enter command for object creation' => "Escriba o comando para a creación do obxecto", - 'Submit' => "Enviar", - 'Show blob data as: {{TYPE}}' => "blob de datos Mostrar como: {{TIPO}}", - 'Blob data for column {{NAME}}' => "datos Blob para columna {{NOME}}", - 'Create command for {{TYPE}} {{NAME}}' => "Crear un comando para {{TIPO}} {{NOME}}", - 'Table Engine (type)' => "Táboa do motor (tipo)", - 'Change Table Type' => "Cambiar o tipo de marco", - 'The requested page is not available on the server' => "A páxina solicitada non está dispoñible no servidor", - 'Error' => "Erro", - 'It appears that you attempted to submit an invalid request to the server' => "Parece que intentou enviar unha solicitude non válido para o servidor", - 'The request has been denied. Reloading the page might solve the problem' => "A petición foi rexeitada. Actualizar a páxina pode resolver o problema", - 'Access Denied' => "Ingreso", - 'Help' => "Axuda", - 'To see most up-to-date help contents, please visit {{LINK}}' => "Para ver o contido de axuda máis up-to-date, visite {{LINK}}", - 'It appears that your browser session has expired' => "Parece que o seu navegador sesión caducou", - 'Please refresh the webpage to re-login' => "Refresca a páxina para re-login", - 'Table information' => "información da táboa", - 'Edit' => "Editar", - 'Save' => "Gardar", - 'Either the database is empty, or there was an error retrieving list of database objects' => "A base de datos está baleira, ou houbo un erro ao recuperar lista de obxectos de base de datos", - 'Please try closing and re-opening this dialog again' => "Por favor, ténteo de pechar e volver a abrir este diálogo de novo", - 'Structure' => "Estrutura", - 'Table Data' => "Táboa de datos", - 'Structure and Table Data' => "Estrutura e Táboa de Datos", - 'Options' => "Opcións", - 'Set Auto increment field values to NULL' => "Establecer un valor de campo de incremento automático para NULL", - 'Add DROP command before create statements' => "Engadir comando drop antes de crear declaracións", - 'Export' => "Exportación", - 'Import' => "Importación", - 'Export Database' => "Exportación de Base de Datos", - 'Export Table' => "Exporta Táboa", - 'Server information' => "Información do servidor", - 'Server' => "Servidor", - 'Version comment' => "Versión comentario", - 'Character sets' => "Conxuntos de caracteres", - 'Server character set' => "xogo de caracteres Server", - 'Client character set' => "Cliente xogo de caracteres", - 'Database character set' => "Base de datos xogo de caracteres", - 'Results character set' => "Resultados xogo de caracteres", - 'Export As' => "Como Exportar", - 'Insert Statements' => "Insire Demostracións", - 'Include field names in query' => "Incluír nomes de campo na consulta", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Texto (un rexistro por liña)", - 'Fields separated by:' => "Campos separados por:", - 'Export Results' => "Exportar Resultados", - 'Select SQL batch file to import' => "Seleccione o ficheiro de lote SQL para descargar", - 'Continue processing even if error occurs' => "Continuar o procesamento mesmo erro ocorre", - 'Basic Information' => "Información básica", - 'Table Properties' => "Propiedades da táboa", - 'Table Name' => "Nome da táboa", - 'Field Name' => "Nome do Campo", - 'Data Type' => "Tipo de datos", - 'Length' => "Lonxitude", - 'Default value' => "O valor por defecto", - 'Unsigned' => "Non asinado", - 'Zero Fill' => "Cero Fill", - 'Primary Key' => "Clave Primaria", - 'Auto Increment' => "Auto Incremento", - 'Not NULL' => "Non NULL", - 'Character Set' => "Conxunto de caracteres", - 'Collation' => "Colação", - 'Comment' => "Comentario", - 'Waiting for table information to be submitted' => "Agardando información da táboa a que apareza", - 'Add field' => "Engadir campo", - 'Delete selected field' => "campo seleccionado Eliminar", - 'Clear Table Information' => "Limpar Information Table", - 'List of values' => "Lista de valores", - 'Query Results' => "Resultados da Consulta", - 'Data for {{TABLE}}' => "Os datos para {{TABLE}}", - 'Select tables to be analyzed/repaired' => "Seleccione as táboas a seren analizados / repara", - 'Operation to perform' => "Operación a executar", - 'Analyze' => "Analizar", - 'Check' => "Consulte", - 'Optimize' => "Optimizar", - 'Repair' => "Reparación", - 'Skip Binary logging' => "Pasar o rexistro binario", - 'Default' => "Default", - 'Quick' => "Rápido", - 'Fast' => "Fast", - 'Medium' => "Medio", - 'Extended' => "Extensión", - 'Changed' => "Cambiado", - 'Use Frm files (MyISAM tables)' => "Use arquivos FRM (táboas MyISAM)", - 'User Information' => "Información do Usuario", - 'Global Privileges' => "Global privileges", - 'Database Privileges' => "Privilexios de Base de Datos", - 'Import File' => "Descargar Arquivo", - 'Index Manager' => "Index Manager", - 'Edit table structure' => "Edita a estrutura da táboa", - 'Save All Changes' => "Gardar as modificacións", - 'Changes are not saved until you press [Save All Changes]' => "Os cambios non son gardadas ata prema [Gardar todos os cambios]", - 'Field Length' => "Lonxitude de Campo", - 'Select objects to include in export' => "Seleccione os obxectos para incluír na exportación", - 'Export type' => "Tipo Exportación", - 'Select All/None' => "Seleccionar Todos / Ningún", - 'Add User' => "Engadir usuario", - 'Update User' => "Actualizar Usuario", - 'Delete selected User' => "Borrar seleccionadas Usuario", - 'Remove Password' => "Retirar contrasinal", - 'Select tables to search' => "Seleccione as táboas para investigación", - 'Search Options' => "Opcións de busca", - 'Search in following field types' => "Busca nas seguintes tipos de campo", - 'Numeric Fields' => "Campos numéricos", - 'Character Fields' => "Os campos de caracteres", - 'Text Fields' => "Campos de texto", - 'Date/Time Fields' => "Data / Hora Campos", - 'Comparison Type' => "Tipo de comparación", - 'Text to search' => "Texto para investigación", - 'Search' => "Busca", - 'Search Results' => "Resultados da procura", - 'Number of matches' => "Número de partidas", - 'Search results for {{KEYWORD}} in the database' => "Resultados da busca de {{KEYWORD}} na base de datos", - '{{NUM}} match(es)' => "{{NUM}} xogo (s)", - 'Copy query to editor' => "Copia de consulta ao editor", - 'Done' => "Feito", - 'SQL Editor' => "SQL Editor", - 'Create Copy' => "Crear Copia", - 'Minimize All' => "Minimizar todas as", - 'Copy Record(s)' => "Copiar Rexistro (s)", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "Comma Separated (CSV Excel)", - 'Select data file to import' => "Seleccione o ficheiro de datos para importar", - 'Select table for data import' => "Seleccione a táboa para descarga de datos", - 'First line contains column names' => "Primeira liña contén nomes de columna", - 'Select objects to operate upon' => "Seleccione os obxectos para operar sobre", - 'Operations to perform' => "Operacións para realizar", - 'Add prefix string to name' => "Engadir cadea de prefixo para nomear", - 'Delete prefix string from name' => "Eliminar cadea de prefixo do nome", - 'Command text' => "O texto da orde", - 'DROP selected database objects' => "Soltar obxectos de base de datos seleccionados", - 'Batch operation results' => "Operación resulta solar", - 'Operation' => "Operación", - 'Status' => "Estado", - '{{NUM}} queries generated' => "{{NUM}} consulta xerada", - 'Please select one or more operations to perform' => "Escolla unha ou máis tarefas para realizar", - 'Quick Search' => "Procura rápida", - '{{NAME}} client library is not installed' => "{{Name}} biblioteca cliente non está instalado", - '{{NAME}} extension is not installed' => "{{Name}} extensión non está instalado", - 'SQLite database folder is inaccessible or not writable' => "SQLite cartafol da base de datos está inaccesible ou non escribir nel", - 'Maximize/Restore Results Pane' => "Maximizar / Restaurar Panel de Resultados", - 'Select databases to operate upon' => "Seleccionar bases de datos para operar xunto ao", - 'DROP selected databases' => "Eliminar bancos de datos seleccionados", - 'The following operation is irreversible' => "A operación seguinte é irreversible", - 'Potential data loss might occur' => "Potencial perda de datos pode ocorrer", - 'Add TRUNCATE command before insert statements' => "Engadir TRUNCATE mando antes instrucións de inserción", - 'Select objects to include in backup' => "Seleccione obxectos para incluír na copia de seguridade", - 'Backup folder does not exist or is not writable' => "Pasta de backup non existe ou non pode escribir nel", - 'Backup type' => "Tipo de copia de seguridade", - 'Database backup successfully created' => "Backup de base de datos creado con éxito", - 'Failed to create database backup' => "Fallo ao crear a base de datos de copia de seguridade", - 'Generate Bulk insert statements' => "Xerar instrucións de inserción en masa", - 'Maximum size of SQL statement' => "Tamaño máximo de instrución SQL", - 'Show record count with table names' => "Amosar conta de rexistros con nomes de táboas", - 'Sort Table listing by' => "Ordenar táboa listado por", - 'Name' => "Nome", - 'Last Update Time' => "Actualización Tempo", - 'Maximum records to display in result set' => "Máximo de Rexistros para amosar no conxunto de resultados", - 'Show popup dialog for editing large text data' => "Amosar diálogo emerxente para a edición de datos de texto grandes", - 'Miscellaneous' => "Diverso", - 'Reset all confirmation dialogs' => "Restablecer todas as caixas de diálogo de confirmación", - 'Record Editing' => "Grave Edición", - 'Exclude Table type' => "Eliminar tipo de mesa", - 'Exclude Table Character set' => "Eliminar Táboa conxunto de caracteres", - 'Backup filename' => "Filename backup", - 'Invalid filename format' => "Formato de nome de ficheiro non válido", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "todos", - 'all selected' => "todos os seleccionados", - 'An error occured while refreshing the object list.' => "Houbo un erro ao actualizar lista de obxecto.", - 'Are you sure you want to clear all field information from table?' => "¿Está seguro de querer borrar toda a información de campo da táboa?", - 'Are you sure you want to delete this user account?' => "¿Está seguro de querer eliminar esta conta de usuario?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "Seguro que queres eliminar todos os obxectos da base de datos {{NOME}}?", - 'Are you sure you want to DROP selected objects?' => "¿Está seguro que quere eliminar obxectos seleccionados?", - 'Are you sure you want to DROP the database {{NAME}}?' => "Seguro que queres eliminar a base de datos {{NOME}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "Seguro que queres eliminar este obxecto? {{NOME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "¿Está seguro que desexa executa {{SELECTED}} consultas?", - 'Are you sure you want to logout?' => "¿Está seguro que quere saír?", - 'Are you sure you want to truncate the table {{NAME}}?' => "Seguro de querer truncar a táboa {{NOME}}?", - 'Blob Data [{{SIZE}}]' => "Datos Blob [{{SIZE}}]", - 'Cancel' => "Cancelar", - 'Check for Updates' => "Check for Updates", - 'Clear command history?' => "Borrar o historial de comandos?", - 'Close' => "Pechar", - 'Confirm Action' => "Confirmar a acción", - 'Confirm and do not ask me again about this choice' => "Confirme e non preguntar de novo sobre esta opción", - 'Copy Object' => "Obxecto copia", - 'Create Database' => "Crear bases de datos", - 'Create Primary Index on this field' => "Crear Índice primario neste campo", - 'Databases' => "Bases de datos", - 'Default value [Use quotes to specify string values]' => "O valor por defecto [Use comiñas para indicar valores de secuencia]", - 'Disallow NULL values in Field' => "Non permitir valores NULL no campo", - 'Enter new index name' => "Introduza o nome do novo índice", - 'Enter new name for the database object' => "Introduza un novo nome para o obxecto de base de datos", - 'Enter the text to search in database' => "Introduce o texto a buscar na base de datos", - 'Error' => "Erro", - 'Events' => "Eventos", - 'Execute query' => "Executar consulta", - 'Exports results' => "Exportación de resultados", - 'Failed to refresh the results.' => "Non se puido actualizar os resultados.", - 'Field Datatype' => "Campo Tipo de Datos", - 'Field Name' => "Nome do Campo", - 'Field value is Auto Incremented' => "O valor do campo é incrementado automaticamente", - 'Functions' => "Funcións", - 'Indexes Updated' => "Índices Actualizado", - 'Maximum Length of field value' => "A lonxitude máxima do campo de valor", - 'Navigation Error. Try reloading the page' => "Erro de navegación. Tente actualizar a páxina", - 'New settings saved and applied' => "Novas opcións gardadas e aplicadas", - 'New version is available' => "A nova versión está dispoñible", - 'Next' => "Seguinte", - 'No' => "Non", - 'No Table selected' => "N Táboa seleccionada", - 'Not enough room to show this pane.' => "sen espazo suficiente para mostrar ese panel.", - 'OK' => "OK", - 'One or more field information is incomplete' => "Un ou máis información sobre o campo está incompleto", - 'Open' => "Abrir", - 'Operation failed' => "A operación fallou", - 'Pad field values with leading zeros' => "valores de campo Pad con ceros á esquerda", - 'Pane' => "Pane", - 'Passwords do not match' => "Os contrasinais non coinciden", - 'Pin' => "Pinos", - 'Please select one or more operations to perform' => "Escolla unha ou máis tarefas para realizar", - 'Please type in one or more queries in the SQL editor!' => "Por favor, escriba unha ou máis consultas no editor de SQL!", - 'Please wait...' => "Por favor, agarde ...", - 'Previous' => "Anterior", - 'Procedures' => "Procedementos", - 'Prompt' => "Prompt", - 'Refresh results' => "Actualizar resultados", - 'Refreshing object list' => "Actualizando lista de obxectos", - 'Rename Object' => "Renomear Obxectos", - 'Resize' => "Redimensionar", - 'Results page:' => "páxina de resultados:", - 'Select a database to view privileges for the user' => "Seleccione unha base de datos para ver os privilexios do usuario", - 'Select an index to view / edit its details' => "Seleccione un índice para ver / editar os detalles", - 'Select at least one field type for searching' => "Seleccione polo menos un tipo de campo para a investigación", - 'Select objects to operate upon' => "Seleccione os obxectos para operar sobre", - 'selector' => "selector", - 'Slide Open' => "Slide Open", - 'Table information requires at least one valid field' => "información da táboa esixe polo menos un campo válido", - 'Table name is required' => "O nome da tabela é necesario", - 'Table successfully created' => "Táboa creada con éxito", - 'Table successfully modified' => "Cadro modificado con éxito", - 'Tables' => "Táboas", - 'Text Data [{{SIZE}}]' => "Datos de texto [{{SIZE}}]", - 'There is no record in the results to export' => "Non hai ningún rexistro nos resultados de exportación", - 'This attribute is not required for selected field type' => "Este atributo non é necesario para o tipo de campo seleccionado", - 'Triggers' => "Triggers", - 'Un-Pin' => "Un-PIN", - 'Unsigned numbered field only' => "Unsigned numeradas único campo", - 'Update check failed' => "Actualiza Fallou a comprobación", - 'User information is incomplete or invalid' => "A información do usuario está incompleto ou non válido", - 'User Manager' => "User Manager", - 'Views' => "Vistas", - 'WARNING' => "AVISO", - 'Yes' => "Si", - 'You have the latest version' => "Ten a última versión", - - ); -?> diff --git a/lang/he.php b/lang/he.php deleted file mode 100644 index 41b9333..0000000 --- a/lang/he.php +++ /dev/null @@ -1,463 +0,0 @@ - "השתמש Database", - 'Drop Database' => "צניחה Database", - 'Empty Database' => "ריק Database", - 'Drop all tables from this database' => "צניחה כל טבלאות ממסד נתונים זה", - 'Select statement' => "בחר ההצהרה", - 'Insert statement' => "הכנס משפט", - 'Update statement' => "עדכון הצהרה", - 'Describe' => "לתאר", - 'Show create command' => "הצג ליצור פקודה", - 'View data' => "צפה נתונים", - 'Alter Table' => "ALTER TABLE", - 'Indexes' => "אינדקסים", - 'Engine Type' => "מנוע סוג", - 'More operations' => "עוד מבצעים", - 'Truncate' => "לקטום", - 'Drop' => "ירידה", - 'Rename' => "שינוי שם", - 'Export table data' => "ייצוא נתוני טבלה", - 'Create Table' => "יצירת טבלה", - 'Create View' => "יצירת תצוגה", - 'Create Procedure' => "יצירת נוהל", - 'Create Function' => "צור פונקציה", - 'Create Trigger' => "צור טריגר", - 'Create Event' => "יצירת אירוע", - 'Show/Hide Panel' => "הצג / הסתר פאנל", - 'Show/Hide Header' => "הצג / הסתר כותרת", - 'Copy all queries to clipboard' => "העתק את כל שאילתות ללוח", - 'Clear history' => "נקה היסטוריה", - 'Copy Column values' => "העתק טור הערכים", - 'Copy to clipboard' => "העתק ללוח", - 'Generate SQL Filter' => "צור SQL מסנן", - 'Database Manager' => "מנהל מסד נתונים", - 'Manage databases' => "ניהול מסדי נתונים", - - // main menu related text - 'Database' => "מסד", - 'Refresh' => "לרענן", - 'Refresh database object list' => "האובייקט רענון הנתונים ברשימה", - 'Create new' => "צור חדש", - 'Export' => "יצוא", - 'Export database to external file' => "ייצוא נתונים אל קובץ חיצוני", - 'Objects' => "אובייקטים", - 'Create Table' => "יצירת טבלה", - 'Create a new table in the database' => "יצירת טבלה חדשה במסד הנתונים", - 'Create View' => "יצירת תצוגה", - 'Create a new view in the database' => "יצירת תצוגה חדשה באתר", - 'Create Stored Procedure' => "המאוחסנים נוהל צור", - 'Create a new stored procedure in the database' => "יצירת שגרה מאוחסנת חדש באתר", - 'Create Function' => "צור פונקציה", - 'Create a new user defined function in the database' => "צור משתמש חדש המוגדר בפונקציה באתר", - 'Create Trigger' => "צור טריגר", - 'Create a new trigger in the database' => "צור ההדק חדש באתר", - 'Create Event' => "יצירת אירוע", - 'Create a new event in the database' => "צור אירוע חדש באתר", - 'Data' => "נתונים", - 'Import batch file' => "ייבוא ​​קובץ אצווה", - 'Import multiple queries from batch file' => "ייבוא ​​שאילתות מרובים מתוך קובץ אצווה", - 'Export database' => "ייצוא מסד נתונים", - 'Export database to batch file as sql dump' => "ייצוא נתונים אל קובץ אצווה כמו מזבלה SQL", - 'Export current results' => "ייצוא תוצאות הנוכחית", - 'Export query results to clipboard or files' => "ייצוא תוצאות השאילתה ללוח או קבצים", - 'Tools' => "כלים", - 'Process Manager' => "תהליך Manager", - 'View and manage database processes' => "צפה ולנהל תהליכים מסד", - 'Repair Tables' => "תיקון לוחות", - 'Analyze and repair database tables' => "ניתוח הנתונים בטבלאות ותיקון", - 'User Manager' => "משתמש מנהל", - 'Manage database users' => "ניהול משתמשים באתר", - 'Search in Database' => "חיפוש ב Database", - 'Search for text in the database' => "חיפוש טקסט באתר", - 'Information' => "מידע", - 'Server/Connection Details' => "/ חיבור שרת פרטי", - 'View server configuration' => "תצורה צפה בשרת", - 'View server and connection details' => "הצגת פרטי שרת וחיבור", - 'Server Variables' => "שרת משתני", - 'Database Summary' => "מסד סיכום", - 'View current database summary stats' => "התצוגה הנוכחית סיכום הנתונים הסטטיסטיים", - 'Interface' => "ממשק", - 'Options' => "אפשרויות", - 'Configure application options' => "הגדר את אפשרויות היישום", - 'UI Theme' => "UI Theme", - 'Database Objects' => "אובייקטים של מסדי נתונים", - 'Toggle Object Viewer' => "החלף מציג אובייקט", - 'Help contents' => "עזרה התוכן", - 'Learn the basics of using MyWebSQL' => "למד את היסודות של שימוש MyWebSQL", - 'QuickStart Tutorials' => "QuickStart הדרכות", - 'See quick hands-on tutorial of MyWebSQL interface' => "ראה ממשק הידיים על הדרכה של MyWebSQL מהירה", - 'Online documentation' => "Online תיעוד", - 'View online documentation on project website' => "צפה בתיעוד המקוון באתר פרויקט", - 'Request a Feature' => "בקש התכונה", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "אם ברצונכם תכונה ביותר האהובים עליכם להיות חלק MyWebSQL, אנא לחץ כאן כדי להודיע ​​על זה", - 'Report a Problem' => "דווח על בעיה", - 'Check for updates' => "בדוק אם יש עדכונים", - 'Check for updated versions of the application online' => "בדוק גרסאות מעודכנות של יישומים מקוונים", - 'Logout' => "התנתקות", - 'Logout from this session' => "התנתקות מן הפגישה הזאת", - 'Language' => "שפה", - 'SQL Editor' => "SQL Editor", - 'Toggle SQL Editor' => "עורך Toggle SQL", - 'Experimental' => "נסיוני", - 'Import table data' => "לייבא נתוני טבלה", - 'Import table data from external file' => "שולחן ייבוא ​​נתונים מקובץ חיצוני", - 'Batch operations' => "פעולות אצווה", - 'Perform one or more batch operations on database' => "בצע אחת או יותר פעולות אצווה על מסד הנתונים", - 'Create a new schema in the database' => "ליצור סכימה חדשה במסד הנתונים", - 'Create Schema' => "יצירת סכמה", - 'Table Description' => "תיאור שולחן", - 'Database Manager' => "מנהל מסד נתונים", - 'Manage databases' => "ניהול מסדי נתונים", - 'Backup database on the server as SQL dump' => "מסד נתוני גיבוי בשרת כמו מזבלת SQL", - 'Backup Database' => "מסד נתוני גיבוי", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "הדפדפן שלך נראה זקן מאוד, לא תומך בכל התכונות הנדרשות כדי להפעיל MyWebSQL.", - 'Try using a newer version of the browser to run this application.' => "נסה להשתמש בגרסה חדשה יותר של הדפדפן כדי להפעיל יישום זה.", - - // text used on various screens in the interface - 'Visit Project website' => "בקר באתר הבית של Project", - 'Version' => "לגרסה", - 'Loading' => "העמסה", - 'Quick Edit Options' => "מהיר ערוך אפשרויות", - 'Press {{KEY}} to set NULL' => "לחץ {{מפתח}} כדי להגדיר NULL", - 'MySQL Server' => "MySQL Server", - 'Logged in as: {{USER}}' => "מחובר כ: {{משתמש}}", - 'Results' => "תוצאות", - 'Messages' => "הודעות", - 'Information' => "מידע", - 'History' => "היסטוריה", - 'There are no results to show in this view' => "יש תוצאות לא להצגה בתצוגה זו", - 'Refresh results' => "רענון תוצאות", - 'Please wait' => "אנא המתן", - 'Query All' => "השאילתות כל", - 'Query' => "שאילתה", - 'Add Record' => "הוסף רשומה", - 'Delete Record(s)' => "שיא מחק (s)", - 'Update Record(s)' => "שיא עדכון (s)", - 'Generate SQL' => "צור SQL", - 'Database name' => "מסד שם", - 'Select database after creation' => "בחר מסד נתונים לאחר יצירת", - 'Database connection failed to the server' => "חיבור מסד נתונים נכשלה לשרת", - 'Host' => "מארח", - 'User' => "משתמש", - 'Select a database to begin' => "בחר מסד נתונים כדי להתחיל", - 'Select/unselect All records' => "לבחור / לבטל את כל הרשומות", - 'Primary key column' => "טור המפתח הראשי", - 'Unique key column' => "ייחודיות מפתח בעמודה", - 'Showing records {{START}} - {{END}}' => "רשומות מציג {{START}} - {{סוף}}", - 'Showing first {{MAX}} records only' => "מציג הראשון {{מקס}} רשומות בלבד", - '1 query successfully executed' => "1 שאילתה להורג בהצלחה", - '{{NUM}} queries successfully executed' => "{{NUM}} שאילתות להורג בהצלחה", - '{{NUM}} record(s) were affected' => "{{NUM}} (s) שיא הושפעו", - '{{NUM}} record(s) updated' => "{{NUM}} (s) הרשומה המעודכנת", - 'Error occurred while executing the query' => "אירעה שגיאה בעת ביצוע השאילתה", - '{{NUM}} queries failed to execute' => "{{NUM}} שאילתות נכשל לבצע", - 'Click to view/edit column data [{{NUM}} Bytes]' => "לחץ כדי להציג / לערוך את הנתונים בעמודה [{{NUM}} בתים]", - 'Blob data is not editable' => "הנתונים כתמים אינו ניתן לעריכה", - 'Blob data saved' => "הנתונים נשמרים כתמים", - 'Failed to save blob data' => "תקלה בשמירת נתונים בועה", - 'The process with id [{{PID}}] was killed' => "תהליך עם מזהה [{{מח"ש}}] היה נהרג", - 'No such process [id = {{PID}}]' => "אין תהליך כזה [id = {{מח"ש}}]", - 'Select a process and click the button to kill the process' => "בחר תהליך ולחץ על כפתור כדי להרוג את התהליך", - 'Process ID' => "תהליך הזיהוי", - 'Command' => "הפקודה", - 'Time' => "זמן", - 'Info' => "פרטי", - 'Kill Process' => "להרוג את התהליך", - 'Failed to get process list' => "הצליח להשיג רשימה התהליך", - 'The command executed successfully' => "הפקודה להורג בהצלחה", - 'Invalid server configuration' => "שרת תקינות", - 'Invalid Credentials' => "לא חוקי אישורים", - 'New database successfully created' => "חדש באתר נוצר בהצלחה", - 'File upload failed. Please try again' => "העלאת הקובץ נכשלה. אנא נסה שנית", - 'No queries were executed during import' => "queries לא הוצאו להורג במהלך הייבוא", - 'Maximum upload filesize is {{SIZE}}' => "מקסימום להעלות גודל הקובץ הוא {{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "סוגי קבצים נתמכים / הרחבות הן: ({{רשימת}})", - 'Database summary' => "מסד סיכום", - 'Server Variables' => "שרת משתני", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "כל אובייקט קיים בעל אותו שם צריך להיות ירד באופן ידני לפני ביצוע הפקודה היצירה", - 'Only create commands are accepted' => "רק ליצור פקודות מתקבלות", - 'User ID' => "שם משתמש", - 'Password' => "סיסמה", - 'Login' => "התחברות", - 'Create new database object' => "יצירת אובייקט מסד נתונים חדש", - 'Enter command for object creation' => "הזן הפקודה ליצירת אובייקט", - 'Submit' => "להגיש", - 'Show blob data as: {{TYPE}}' => "הצג נתונים בועה כמו: {{סוג}}", - 'Blob data for column {{NAME}}' => "כתמים נתונים עבור העמודה {{שם}}", - 'Create command for {{TYPE}} {{NAME}}' => "צור הפקודה עבור {{סוג}} {{שם}}", - 'Table Engine (type)' => "לוח Engine (סוג)", - 'Change Table Type' => "שינוי סוג לוח", - 'The requested page is not available on the server' => "הדף המבוקש אינו זמין בשרת", - 'Error' => "שגיאה", - 'It appears that you attempted to submit an invalid request to the server' => "נראה כי ניסית להגיש בקשה חוקית לשרת", - 'The request has been denied. Reloading the page might solve the problem' => "הבקשה נדחתה. לטעון מחדש את הדף עשוי לפתור את הבעיה", - 'Access Denied' => "הגישה נדחתה", - 'Help' => "עזרה", - 'To see most up-to-date help contents, please visit {{LINK}}' => "כדי לראות את רוב עדכני התכנים לעזור, אנא בקרו {{LINK}}", - 'It appears that your browser session has expired' => "נראה כי הפגישה הדפדפן פג", - 'Please refresh the webpage to re-login' => "נא לרענן את דף האינטרנט מחדש ההתחברות", - 'Table information' => "לוח מידע", - 'Edit' => "לערוך", - 'Save' => "שמור", - 'Either the database is empty, or there was an error retrieving list of database objects' => "או מסד נתונים ריק, או שיש רשימה שגיאה באחזור של אובייקטי מסד נתונים", - 'Please try closing and re-opening this dialog again' => "אנא נסה לסגור מחדש הפתיחה הזו שיח שוב", - 'Structure' => "מבנה", - 'Table Data' => "לוח נתונים", - 'Structure and Table Data' => "מבנה טבלת נתונים", - 'Options' => "אפשרויות", - 'Set Auto increment field values to NULL' => "הגדר שדה אוטומטי ערכים תוספת NULL", - 'Add DROP command before create statements' => "הוסף DROP הפקודה לפני יצירת דוחות", - 'Export' => "יצוא", - 'Import' => "יבוא", - 'Export Database' => "ייצוא מסד נתונים", - 'Export Table' => "ייצוא טבלה", - 'Server information' => "שרת מידע", - 'Server' => "שרת", - 'Version comment' => "גרסה תגובה", - 'Character sets' => "ערכות תווים", - 'Server character set' => "שרת התווים", - 'Client character set' => "לקוח התווים", - 'Database character set' => "מסד התווים", - 'Results character set' => "תוצאות התווים", - 'Export As' => "ייצא כ", - 'Insert Statements' => "הכנס לדוחות", - 'Include field names in query' => "כלול שמות השדות בשאילתה", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Plain Text (רשומה אחת בכל שורה)", - 'Fields separated by:' => "השדות מופרדים על ידי:", - 'Export Results' => "ייצוא תוצאות", - 'Select SQL batch file to import' => "בחר קובץ SQL אצווה לייבא", - 'Continue processing even if error occurs' => "המשך עיבוד גם אם מתרחשת שגיאה", - 'Basic Information' => "מידע בסיסי", - 'Table Properties' => "מאפייני טבלה", - 'Table Name' => "שם טבלה", - 'Field Name' => "שם שדה", - 'Data Type' => "סוג נתונים", - 'Length' => "משך", - 'Default value' => "ערך ברירת מחדל", - 'Unsigned' => "לא חתום", - 'Zero Fill' => "אפס מלא", - 'Primary Key' => "מפתח ראשי", - 'Auto Increment' => "Auto תוספת", - 'Not NULL' => "NULL לא", - 'Character Set' => "אופי הגדר", - 'Collation' => "איסוף", - 'Comment' => "הערה", - 'Waiting for table information to be submitted' => "מחכה מידע בטבלה שיוגש", - 'Add field' => "הוסף שדה", - 'Delete selected field' => "השדה שנבחר מחק", - 'Clear Table Information' => "ברור מידע טבלה", - 'List of values' => "רשימה של ערכים", - 'Query Results' => "תוצאות של שאילתת", - 'Data for {{TABLE}}' => "נתונים עבור {{לוח}}", - 'Select tables to be analyzed/repaired' => "טבלאות בחר להיות מנותח / תוקן", - 'Operation to perform' => "מבצע לבצע", - 'Analyze' => "לנתח", - 'Check' => "בדוק", - 'Optimize' => "מטב", - 'Repair' => "לתקן", - 'Skip Binary logging' => "דלג בינארי בכניסה", - 'Default' => "ברירת המחדל", - 'Quick' => "מהיר", - 'Fast' => "מהר", - 'Medium' => "בינוני", - 'Extended' => "מורחב", - 'Changed' => "השתנה", - 'Use Frm files (MyISAM tables)' => "השתמש FRM קבצים (טבלאות MyISAM)", - 'User Information' => "מידע למשתמש", - 'Global Privileges' => "גלובל הרשאות", - 'Database Privileges' => "מסד הרשאות", - 'Import File' => "ייבוא ​​קובץ", - 'Index Manager' => "מדד Manager", - 'Edit table structure' => "עריכת מבנה הטבלה", - 'Save All Changes' => "שמור את כל השינויים", - 'Changes are not saved until you press [Save All Changes]' => "השינויים לא נשמרים עד הקש [שמור את כל השינויים]", - 'Field Length' => "שדה אורך", - 'Select objects to include in export' => "אובייקטים בחר לכלול בייצוא", - 'Export type' => "ייצוא סוג", - 'Select All/None' => "בחר הכל / אף אחד", - 'Add User' => "הוסף משתמש", - 'Update User' => "עדכן משתמש", - 'Delete selected User' => "מחיקת הנבחר משתמש", - 'Remove Password' => "הסר סיסמה", - 'Select tables to search' => "טבלאות בחר כדי החיפוש", - 'Search Options' => "אפשרויות חיפוש", - 'Search in following field types' => "חיפוש ב הבאות סוגי שדה", - 'Numeric Fields' => "מספריים שדות", - 'Character Fields' => "תו שדות", - 'Text Fields' => "שדות טקסט", - 'Date/Time Fields' => "תאריך / שעה שדות", - 'Comparison Type' => "השוואה בין סוג", - 'Text to search' => "טקסט לחיפוש", - 'Search' => "חיפוש", - 'Search Results' => "תוצאות חיפוש", - 'Number of matches' => "מספר התאמות", - 'Search results for {{KEYWORD}} in the database' => "תוצאות חיפוש עבור {{KEYWORD}} באתר", - '{{NUM}} match(es)' => "{{NUM}} התאמה (ES)", - 'Copy query to editor' => "העתק השאילתה לעורך", - 'Done' => "נעשה", - 'SQL Editor' => "SQL Editor", - 'Create Copy' => "יצירת העתק", - 'Minimize All' => "מזער הכל", - 'Copy Record(s)' => "העתק רשומות (ים)", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "מופרדים באמצעות פסיקים (CSV עבור Excel)", - 'Select data file to import' => "בחר קובץ נתונים כדי לייבא", - 'Select table for data import' => "בחר שולחן לייבוא ​​נתונים", - 'First line contains column names' => "השורה הראשונה מכילה שמות העמודות", - 'Select objects to operate upon' => "בחר אובייקטים לפעול על", - 'Operations to perform' => "פעולות לביצוע", - 'Add prefix string to name' => "הוסף מחרוזת קידומת שם", - 'Delete prefix string from name' => "מחק את מחרוזת קידומת מהשם", - 'Command text' => "פיקוד הטקסט", - 'DROP selected database objects' => "זרוק אובייקטי מסד נתונים נבחרים", - 'Batch operation results' => "פעולה אצווה תוצאות", - 'Operation' => "פעולה", - 'Status' => "מצב", - '{{NUM}} queries generated' => "{{NUM}} שאילתות שנוצר", - 'Please select one or more operations to perform' => "נא לבחור אחד או יותר כדי לבצע פעולות", - 'Quick Search' => "חיפוש מהיר", - '{{NAME}} client library is not installed' => "{{שם}} ספריית הלקוח אינה מותקנת", - '{{NAME}} extension is not installed' => "{{}} שם הרחבה אינה מותקנת", - 'SQLite database folder is inaccessible or not writable' => "מסד נתוני SQLite התיקייה אינה נגישה או לא ניתן לכתיבה", - 'Maximize/Restore Results Pane' => "מקסם / שחזור חלונית תוצאות", - 'Select databases to operate upon' => "בחר מסדי נתונים לפעול על", - 'DROP selected databases' => "DROP מסדי נתונים נבחרים", - 'The following operation is irreversible' => "הפעולה הבאה היא בלתי הפיכה", - 'Potential data loss might occur' => "אובדן נתונים פוטנציאלי, עלול להתעורר", - 'Add TRUNCATE command before insert statements' => "הוסף לחתוך פקודת ההצהרות להוסיף לפני", - 'Select objects to include in backup' => "בחר אובייקטים לכלול בגיבוי", - 'Backup folder does not exist or is not writable' => "תיקיית גיבוי לא קיימת או לא ניתן לכתיבה", - 'Backup type' => "סוג הגיבוי", - 'Database backup successfully created' => "גיבוי מסד נתונים נוצר בהצלחה", - 'Failed to create database backup' => "נכשל ביצירת גיבוי נתונים", - 'Generate Bulk insert statements' => "להפיק דוחות להוסיף גורפות", - 'Maximum size of SQL statement' => "גודל מרבי של משפט SQL", - 'Show record count with table names' => "הצג ספירת שיא עם שמות בטבלה", - 'Sort Table listing by' => "רישום טבלת מיון לפי", - 'Name' => "שם", - 'Last Update Time' => "העדכון האחרון של זמן", - 'Maximum records to display in result set' => "רשומות מרביות שיוצגו בערכת תוצאות", - 'Show popup dialog for editing large text data' => "הצג שיח קופץ לעריכת נתונים בטקסט גדול", - 'Miscellaneous' => "שונות", - 'Reset all confirmation dialogs' => "אפס את כל הדיאלוגים האישור", - 'Record Editing' => "עריכת רשומה", - 'Exclude Table type' => "תכלול סוג לוח", - 'Exclude Table Character set' => "תכלול ערכת תווים טבלה", - 'Backup filename' => "שם הקובץ גיבוי", - 'Invalid filename format' => "פורמט קובץ לא חוקי", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "כל", - 'all selected' => "כל נבחרת", - 'An error occured while refreshing the object list.' => "אירעה שגיאה בעת רשימה האובייקט מרענן.", - 'Are you sure you want to clear all field information from table?' => "האם אתה בטוח שאתה רוצה לנקות את כל המידע בתחום מהטבלה?", - 'Are you sure you want to delete this user account?' => "האם אתה בטוח שאתה רוצה למחוק את חשבון המשתמש?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "האם אתה בטוח שאתה רוצה לזרוק את כל האובייקטים ממסד הנתונים {{שם}}?", - 'Are you sure you want to DROP selected objects?' => "האם אתה בטוח שאתה רוצה לזרוק חפצים שנבחרו?", - 'Are you sure you want to DROP the database {{NAME}}?' => "האם אתה בטוח שאתה רוצה להפיל את מסד הנתונים {{שם}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "האם אתה בטוח שאתה רוצה טיפה אובייקט זה? {{שם}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "האם אתה בטוח שאתה רוצה לבצע {{נבחרים}} שאילתות?", - 'Are you sure you want to logout?' => "האם אתה בטוח שאתה רוצה התנתקות?", - 'Are you sure you want to truncate the table {{NAME}}?' => "האם אתה בטוח שאתה רוצה לחתוך את השולחן {{שם}}?", - 'Blob Data [{{SIZE}}]' => "נתונים גושיש [{{גודל}}]", - 'Cancel' => "לבטל", - 'Check for Updates' => "בדוק עדכונים", - 'Clear command history?' => "נקה את היסטוריית הפקודה?", - 'Close' => "קרוב", - 'Confirm Action' => "אישור פעולה", - 'Confirm and do not ask me again about this choice' => "אישור ואל תשאל אותי שוב על הבחירה הזו", - 'Copy Object' => "העתק אובייקט", - 'Create Database' => "יצירת מסד נתונים", - 'Create Primary Index on this field' => "יצירת מדד יסודי על השדה הזה", - 'Databases' => "מאגרי מידע", - 'Default value [Use quotes to specify string values]' => "ערך ברירת מחדל [השתמש במרכאות כדי לציין ערכי מחרוזת]", - 'Disallow NULL values in Field' => "Disallow NULL הערכים בשדה", - 'Enter new index name' => "הזן שם המדד החדש", - 'Enter new name for the database object' => "הזן שם חדש עבור אובייקט מסד הנתונים", - 'Enter the text to search in database' => "הזן את הטקסט כדי לחפש באתר", - 'Error' => "שגיאה", - 'Events' => "אירועים", - 'Execute query' => "ביצוע השאילתה", - 'Exports results' => "יצוא תוצאות", - 'Failed to refresh the results.' => "נכשל לרענן את התוצאות.", - 'Field Datatype' => "שדה טיפוס", - 'Field Name' => "שם שדה", - 'Field value is Auto Incremented' => "ערך שדה הוא אוטומטי incremented", - 'Functions' => "פונקציות", - 'Indexes Updated' => "אינדקסים עודכן", - 'Maximum Length of field value' => "אורך מרבי של שדה ערך", - 'Navigation Error. Try reloading the page' => "שגיאה הניווט. נסה לטעון מחדש את העמוד", - 'New settings saved and applied' => "הגדרות חדשות הציל ויישם", - 'New version is available' => "הגרסה החדשה זמינה", - 'Next' => "הבא", - 'No' => "לא", - 'No Table selected' => "לוח לא נבחר", - 'Not enough room to show this pane.' => "החדר לא מספיק כדי להראות את זה בחלונית.", - 'OK' => "אישור", - 'One or more field information is incomplete' => "אחד או יותר מידע בתחום זה לא הושלמה", - 'Open' => "פתח", - 'Operation failed' => "הפעולה נכשלה", - 'Pad field values with leading zeros' => "Pad ערכי השדה עם אפסים מובילים", - 'Pane' => "חלונית", - 'Passwords do not match' => "אין התאמה בין הסיסמאות", - 'Pin' => "פין", - 'Please select one or more operations to perform' => "נא לבחור אחד או יותר כדי לבצע פעולות", - 'Please type in one or more queries in the SQL editor!' => "אנא הקלד את אחד או יותר שאילתות SQL עורך!", - 'Please wait...' => "אנא המתן ...", - 'Previous' => "קודם", - 'Procedures' => "נהלים", - 'Prompt' => "בקש", - 'Refresh results' => "רענון תוצאות", - 'Refreshing object list' => "רענון הרשימה האובייקט", - 'Rename Object' => "שינוי שם אובייקט", - 'Resize' => "שינוי גודל", - 'Results page:' => "תוצאות בדף:", - 'Select a database to view privileges for the user' => "בחר מסד נתונים כדי להציג את ההרשאות עבור המשתמש", - 'Select an index to view / edit its details' => "בחר אינדקס כדי להציג / לערוך את פרטיה", - 'Select at least one field type for searching' => "בחר לפחות סוג אחד שדה לחיפוש", - 'Select objects to operate upon' => "בחר אובייקטים לפעול על", - 'selector' => "בורר", - 'Slide Open' => "שקופיות פתח", - 'Table information requires at least one valid field' => "מידע לוח דורשת לפחות שדה אחד תקף", - 'Table name is required' => "שם לוח נדרש", - 'Table successfully created' => "לוח נוצר בהצלחה", - 'Table successfully modified' => "לוח שונה בהצלחה", - 'Tables' => "טבלאות", - 'Text Data [{{SIZE}}]' => "נתוני טקסט [{{גודל}}]", - 'There is no record in the results to export' => "אין שיא בתוצאות לייצא", - 'This attribute is not required for selected field type' => "תכונה זו אינה נדרשת עבור סוג השדה שנבחר", - 'Triggers' => "מפעילים", - 'Un-Pin' => "Un-Pin", - 'Unsigned numbered field only' => "חתומה ממוספרת שדה בלבד", - 'Update check failed' => "עדכון לבדוק נכשלה", - 'User information is incomplete or invalid' => "משתמש המידע אינו שלם או לא חוקיים", - 'User Manager' => "משתמש מנהל", - 'Views' => "צפיות", - 'WARNING' => "אזהרה", - 'Yes' => "כן", - 'You have the latest version' => "יש לך את הגירסה האחרונה", - - ); -?> diff --git a/lang/hr.php b/lang/hr.php deleted file mode 100644 index a5f8560..0000000 --- a/lang/hr.php +++ /dev/null @@ -1,463 +0,0 @@ - "Koristite baze podataka", - 'Drop Database' => "Drop baze podataka", - 'Empty Database' => "Prazna baza podataka", - 'Drop all tables from this database' => "Kap sve tablice iz ove baze", - 'Select statement' => "Odaberite izjavu", - 'Insert statement' => "Umetanje izjava", - 'Update statement' => "Update izjava", - 'Describe' => "Opisati", - 'Show create command' => "Prikaži stvoriti naredbe", - 'View data' => "Pregled podataka", - 'Alter Table' => "ALTER TABLE", - 'Indexes' => "Indeksi", - 'Engine Type' => "Tip motora", - 'More operations' => "Više operacija", - 'Truncate' => "Skratiti", - 'Drop' => "Pad", - 'Rename' => "Preimenovati", - 'Export table data' => "Izvoz tablice podataka", - 'Create Table' => "Stvaranje tablice", - 'Create View' => "Stvaranje Pregled", - 'Create Procedure' => "Napravi Postupak", - 'Create Function' => "Napravi funkcija", - 'Create Trigger' => "Napravi Trigger", - 'Create Event' => "Izradi događaj", - 'Show/Hide Panel' => "Prikaži / sakrij ploča", - 'Show/Hide Header' => "Prikaži / sakrij zaglavlja", - 'Copy all queries to clipboard' => "Kopiraj sve upite u međuspremnik", - 'Clear history' => "Brisanje povijesti", - 'Copy Column values' => "Kopiraj vrijednosti stupca", - 'Copy to clipboard' => "Kopiraj u međuspremnik", - 'Generate SQL Filter' => "Generirajte SQL Filter", - 'Database Manager' => "Upravitelj baze podataka", - 'Manage databases' => "Upravljanje bazama podataka", - - // main menu related text - 'Database' => "Baza podataka", - 'Refresh' => "Osvježiti", - 'Refresh database object list' => "Osvježi objekt baze podataka popisa", - 'Create new' => "Napravi novi", - 'Export' => "Izvoz", - 'Export database to external file' => "Izvoz podataka u vanjske datoteke", - 'Objects' => "Objekti", - 'Create Table' => "Stvaranje tablice", - 'Create a new table in the database' => "Stvaranje nove tablice u bazi podataka", - 'Create View' => "Stvaranje Pregled", - 'Create a new view in the database' => "Napravi novi pogled na bazu podataka", - 'Create Stored Procedure' => "Napravi pohranjeni postupak", - 'Create a new stored procedure in the database' => "Napravi novi pohranjene procedure u bazi podataka", - 'Create Function' => "Napravi funkcija", - 'Create a new user defined function in the database' => "Napravi novi korisnički definirane funkcije u bazi podataka", - 'Create Trigger' => "Napravi Trigger", - 'Create a new trigger in the database' => "Napravi novi okidač u bazi podataka", - 'Create Event' => "Izradi događaj", - 'Create a new event in the database' => "Napravi novi događaj u bazi podataka", - 'Data' => "Podaci", - 'Import batch file' => "Uvoz batch datoteka", - 'Import multiple queries from batch file' => "Uvoz više upita iz batch datoteke", - 'Export database' => "Izvoz podataka", - 'Export database to batch file as sql dump' => "Izvoz podataka u batch datoteku kao sql dump", - 'Export current results' => "Izvoz trenutne rezultate", - 'Export query results to clipboard or files' => "Izvoz upita rezultate u međuspremnik ili datoteke", - 'Tools' => "Alati", - 'Process Manager' => "Process Manager", - 'View and manage database processes' => "Prikaz i upravljanje procesima baze podataka", - 'Repair Tables' => "Popravak Tablice", - 'Analyze and repair database tables' => "Analizirati i popravak baze stolova", - 'User Manager' => "Korisnik Manager", - 'Manage database users' => "Upravljanje korisnika baze podataka", - 'Search in Database' => "Traži u baze podataka", - 'Search for text in the database' => "Traži za tekst u bazi podataka", - 'Information' => "Informacije", - 'Server/Connection Details' => "Server / veza Detalji", - 'View server configuration' => "Konfiguracija View poslužitelja", - 'View server and connection details' => "Pogledaj poslužitelja i spojne detalje", - 'Server Variables' => "Server varijable", - 'Database Summary' => "Baza podataka Sažetak", - 'View current database summary stats' => "Pogledajte trenutnu bazu podataka sažetak statistike", - 'Interface' => "Sučelje", - 'Options' => "Mogućnosti", - 'Configure application options' => "Konfiguracija mogućnosti primjene", - 'UI Theme' => "UI Theme", - 'Database Objects' => "Objekti baze podataka", - 'Toggle Object Viewer' => "Toggle Object Viewer", - 'Help contents' => "Pomoć sadržaj", - 'Learn the basics of using MyWebSQL' => "Naučite osnove korištenja MyWebSQL", - 'QuickStart Tutorials' => "QuickStart Tutoriali", - 'See quick hands-on tutorial of MyWebSQL interface' => "Pogledajte brzo Hands-on tutorial od MyWebSQL sučelja", - 'Online documentation' => "Online dokumentacije", - 'View online documentation on project website' => "Pregled online dokumentaciju na web stranicama projekta", - 'Request a Feature' => "Zahtjev značajke", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "Ako želite svoj omiljeni najviše značajka biti dio MyWebSQL, molimo kliknite ovdje o tome odmah obavijestiti", - 'Report a Problem' => "Izvijestite o problemu", - 'Check for updates' => "Provjerite ažuriranja", - 'Check for updated versions of the application online' => "Provjerite ažurirane verzije online aplikacija", - 'Logout' => "Odjava", - 'Logout from this session' => "Odjava iz ove sesije", - 'Language' => "Jezik", - 'SQL Editor' => "SQL Editor", - 'Toggle SQL Editor' => "Prebaci SQL Editor", - 'Experimental' => "Eksperimentalni", - 'Import table data' => "Uvoz tablica podataka", - 'Import table data from external file' => "Uvoz tablica podataka iz vanjske datoteke", - 'Batch operations' => "Batch operacije", - 'Perform one or more batch operations on database' => "Učinite jedno ili više serijskih operacija na bazi podataka", - 'Create a new schema in the database' => "Otvori novu shemu u bazi podataka", - 'Create Schema' => "Napravite shemu", - 'Table Description' => "Tablica Opis", - 'Database Manager' => "Upravitelj baze podataka", - 'Manage databases' => "Upravljanje bazama podataka", - 'Backup database on the server as SQL dump' => "Backup baze podataka na poslužitelju SQL kao deponij", - 'Backup Database' => "Backup baze podataka", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "Vaš preglednik Čini se da je vrlo star i ne podržava sve značajke potrebne za pokretanje MyWebSQL.", - 'Try using a newer version of the browser to run this application.' => "Pokušajte koristiti noviju verziju preglednika pokrenuti ovu aplikaciju", - - // text used on various screens in the interface - 'Visit Project website' => "Posjetite web stranicu projekta", - 'Version' => "verzija", - 'Loading' => "Učitavanje", - 'Quick Edit Options' => "Quick Edit Options", - 'Press {{KEY}} to set NULL' => "Pritisnite {{KEY}} postaviti NULL", - 'MySQL Server' => "MySQL Poslužitelj", - 'Logged in as: {{USER}}' => "Prijavljen kao: {{USER}}", - 'Results' => "Rezultati", - 'Messages' => "Poruke", - 'Information' => "Informacije", - 'History' => "Povijest", - 'There are no results to show in this view' => "Nema rezultata za prikaz u ovom pogledu", - 'Refresh results' => "Osvježi rezultate", - 'Please wait' => "Molimo pričekajte", - 'Query All' => "Upit Sve", - 'Query' => "Upit", - 'Add Record' => "Dodaj Zapis", - 'Delete Record(s)' => "Brisanje Snimanje (i)", - 'Update Record(s)' => "Update Record (e)", - 'Generate SQL' => "Generirajte SQL", - 'Database name' => "Baza podataka ime", - 'Select database after creation' => "Odaberite bazu podataka nakon stvaranja", - 'Database connection failed to the server' => "Povezivanja baze podataka nije uspio poslužitelj", - 'Host' => "Domaćin", - 'User' => "Korisnik", - 'Select a database to begin' => "Odaberite bazu podataka za početak", - 'Select/unselect All records' => "Odaberite / ukinuti označenost Svi zapisi", - 'Primary key column' => "Primarni ključ stupac", - 'Unique key column' => "Jedinstveni ključni stupac", - 'Showing records {{START}} - {{END}}' => "Prikaz zapisa {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "Pronašli smo prvi {{MAX}} bilježi samo", - '1 query successfully executed' => "1 upit uspješno izvršen", - '{{NUM}} queries successfully executed' => "{{NUM}} je uspješno izvršen upite", - '{{NUM}} record(s) were affected' => "{{NUM}} zapis (i) su bili pogođeni", - '{{NUM}} record(s) updated' => "{{NUM}} zapis (i) ažurirana", - 'Error occurred while executing the query' => "Došlo je do pogreške tijekom izvođenja upita", - '{{NUM}} queries failed to execute' => "{{NUM}} upite propustio izvršiti", - 'Click to view/edit column data [{{NUM}} Bytes]' => "Kliknite za prikaz / urediti stupac podataka [{{NUM}} bajtova]", - 'Blob data is not editable' => "Blob podaci nisu uređivati", - 'Blob data saved' => "Blob podatke spremljene", - 'Failed to save blob data' => "Nisam uspio spasiti blob podataka", - 'The process with id [{{PID}}] was killed' => "Proces s ID [{{PID}}] je ubijen", - 'No such process [id = {{PID}}]' => "Nema takvih procesa [id = {{PID}}]", - 'Select a process and click the button to kill the process' => "Odaberite proces i kliknite na gumb ubiti proces", - 'Process ID' => "Process ID", - 'Command' => "Naredba", - 'Time' => "Vrijeme", - 'Info' => "Info", - 'Kill Process' => "Kill Process", - 'Failed to get process list' => "Nisam uspio dobiti procesu popisa", - 'The command executed successfully' => "Naredba uspješno izvrši", - 'Invalid server configuration' => "Nevažeći konfiguracije poslužitelja", - 'Invalid Credentials' => "Neispravan Mandatno", - 'New database successfully created' => "Nova baza podataka je uspješno kreirana", - 'File upload failed. Please try again' => "File Upload nije uspio. Molimo pokušajte ponovno", - 'No queries were executed during import' => "Nema upita je pogubljeno prilikom uvoza", - 'Maximum upload filesize is {{SIZE}}' => "Maksimalna upload FileSize je {{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "Podržani vrstama datoteka / ekstenzije su: ({{LIST}})", - 'Database summary' => "Baza podataka sažetak", - 'Server Variables' => "Server varijable", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "Svaki postojeći objekt s istim imenom trebao biti izostavljen ručno prije izvršenja naredbe stvaranja", - 'Only create commands are accepted' => "Samo stvoriti naredbe su prihvaćeni", - 'User ID' => "Korisnički ID", - 'Password' => "Lozinka", - 'Login' => "Prijava", - 'Create new database object' => "Napravi novi objekt baze podataka", - 'Enter command for object creation' => "Unesite naredbu za stvaranje objekta", - 'Submit' => "Podnijeti", - 'Show blob data as: {{TYPE}}' => "Pokaži blob podaci kao što su: {{TYPE}}", - 'Blob data for column {{NAME}}' => "Blob podataka za stupac {{NAME}}", - 'Create command for {{TYPE}} {{NAME}}' => "Napravite naredbu za {{TYPE}} {{NAME}}", - 'Table Engine (type)' => "Tablica Engine (tip)", - 'Change Table Type' => "Promijeni tablicu Vrsta", - 'The requested page is not available on the server' => "Zatražena stranica nije dostupna na poslužitelju", - 'Error' => "Pogreška", - 'It appears that you attempted to submit an invalid request to the server' => "Čini se da ste pokušali predati nevažeće zahtjev za server", - 'The request has been denied. Reloading the page might solve the problem' => "Zahtjev je odbijen. Pretovar stranica može riješiti problem", - 'Access Denied' => "Pristup odbijen", - 'Help' => "Pomoć", - 'To see most up-to-date help contents, please visit {{LINK}}' => "Da biste vidjeli najviše up-to-date pomoć sadržaj, posjetite {{LINK}}", - 'It appears that your browser session has expired' => "Čini se da je vaš preglednik sesija je istekla", - 'Please refresh the webpage to re-login' => "Molimo osvježiti web stranice kako bi re-prijava", - 'Table information' => "Tablica informacije", - 'Edit' => "Uredi", - 'Save' => "Spasiti", - 'Either the database is empty, or there was an error retrieving list of database objects' => "Ili je prazna baza podataka, ili je pogreška u preuzimanju popis objekti baze podataka", - 'Please try closing and re-opening this dialog again' => "Molimo pokušajte zatvaranje i ponovno otvaranje ovog dijaloškog opet", - 'Structure' => "Struktura", - 'Table Data' => "Tablica podataka", - 'Structure and Table Data' => "Struktura i tablica podataka", - 'Options' => "Mogućnosti", - 'Set Auto increment field values to NULL' => "Postavi Auto prirast vrijednosti polja na NULL", - 'Add DROP command before create statements' => "Dodaj KAP naredba prije stvaranja izvješća", - 'Export' => "Izvoz", - 'Import' => "Uvoz", - 'Export Database' => "Izvoz baze podataka", - 'Export Table' => "Izvoz tablice", - 'Server information' => "Informacije o poslužitelju", - 'Server' => "Server", - 'Version comment' => "Verzija komentar", - 'Character sets' => "Skupovima znakova", - 'Server character set' => "Server skup znakova", - 'Client character set' => "Klijent skup znakova", - 'Database character set' => "Baza podataka skup znakova", - 'Results character set' => "Rezultati skup znakova", - 'Export As' => "Izvezi kao", - 'Insert Statements' => "Umetanje izvješća", - 'Include field names in query' => "Uključi nazive polja u upit", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Običan tekst (jedan rekord po retku)", - 'Fields separated by:' => "Polja odvojeni:", - 'Export Results' => "Izvoznih rezultata", - 'Select SQL batch file to import' => "Odaberite SQL skupnu datoteku za uvoz", - 'Continue processing even if error occurs' => "Nastavak obrade, čak i ako dođe do pogreške", - 'Basic Information' => "Osnovne informacije", - 'Table Properties' => "Svojstva tablice", - 'Table Name' => "Tablica Naziv", - 'Field Name' => "Naziv polja", - 'Data Type' => "Vrsta podataka", - 'Length' => "Dužina", - 'Default value' => "Zadana vrijednost", - 'Unsigned' => "Nepotpisan", - 'Zero Fill' => "Umetanje nula", - 'Primary Key' => "Primarni ključ", - 'Auto Increment' => "Auto prirast", - 'Not NULL' => "NOT NULL", - 'Character Set' => "Skup znakova", - 'Collation' => "Kolacioniranje", - 'Comment' => "Komentiraj", - 'Waiting for table information to be submitted' => "Čeka za stol informacije koje se dostavljaju", - 'Add field' => "Dodavanje polja", - 'Delete selected field' => "Brisanje označenog polja", - 'Clear Table Information' => "Očisti tablicu podataka", - 'List of values' => "Popis vrijednosti", - 'Query Results' => "Rezultati upita", - 'Data for {{TABLE}}' => "Podaci za {{TABLE}}", - 'Select tables to be analyzed/repaired' => "Odaberite tablice treba analizirati / popraviti", - 'Operation to perform' => "Operacija se obavlja", - 'Analyze' => "Analizirati", - 'Check' => "Provjerite", - 'Optimize' => "Optimizirajte", - 'Repair' => "Popravak", - 'Skip Binary logging' => "Preskoči Binarni prijave", - 'Default' => "Default", - 'Quick' => "Brz", - 'Fast' => "Brzi", - 'Medium' => "Srednji", - 'Extended' => "Produžen", - 'Changed' => "Promijenjen", - 'Use Frm files (MyISAM tables)' => "Koristite frm datoteke (MyISAM tablice)", - 'User Information' => "Podaci o korisniku", - 'Global Privileges' => "Globalna Privilegije", - 'Database Privileges' => "Baza podataka Privilegije", - 'Import File' => "Uvoz datoteke", - 'Index Manager' => "Indeks Manager", - 'Edit table structure' => "Uredi strukturu tablice", - 'Save All Changes' => "Spremi sve promjene", - 'Changes are not saved until you press [Save All Changes]' => "Promjene nisu spremljene sve dok ne pritisnete [Spremi sve promjene]", - 'Field Length' => "Duljina polja", - 'Select objects to include in export' => "Odaberite objekte treba uključiti u izvoz", - 'Export type' => "Izvoz tip", - 'Select All/None' => "Označi sve / None", - 'Add User' => "Dodaj korisnika", - 'Update User' => "Ažuriranje korisnika", - 'Delete selected User' => "Brisanje odabranog korisnika", - 'Remove Password' => "Uklanjanje lozinke", - 'Select tables to search' => "Odaberite stolovi za pretraživanje", - 'Search Options' => "Traži Mogućnosti", - 'Search in following field types' => "Traži u sljedeće vrste polja", - 'Numeric Fields' => "Brojčana polja", - 'Character Fields' => "Znak Polja", - 'Text Fields' => "Tekst polja", - 'Date/Time Fields' => "Datum / Vrijeme Polja", - 'Comparison Type' => "Usporedba Vrsta", - 'Text to search' => "Tekst za pretraživanje", - 'Search' => "Traži", - 'Search Results' => "Rezultati pretraživanja", - 'Number of matches' => "Broj utakmice", - 'Search results for {{KEYWORD}} in the database' => "Rezultati pretraživanja za {{KEYWORD}} u bazu podataka", - '{{NUM}} match(es)' => "{{NUM}} utakmicu (e)", - 'Copy query to editor' => "Kopiraj upit za urednika", - 'Done' => "Gotovo", - 'SQL Editor' => "SQL Editor", - 'Create Copy' => "Napravite Kopiraj", - 'Minimize All' => "Minimiziraj sve", - 'Copy Record(s)' => "Kopiraj Snimanje (i)", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "Odvojene zarezom (CSV za Excel)", - 'Select data file to import' => "Odaberite podatkovnu datoteku za uvoz", - 'Select table for data import' => "Odaberite stol za uvoz podataka", - 'First line contains column names' => "Prvi red sadrži nazive stupaca", - 'Select objects to operate upon' => "Odaberite objekte za rad na", - 'Operations to perform' => "Operacije se obavljaju", - 'Add prefix string to name' => "Dodaj prefiks string ime", - 'Delete prefix string from name' => "Brisanje prefiksa niz od imena", - 'Command text' => "Naredba tekst", - 'DROP selected database objects' => "KAP odabrane objekte baze podataka", - 'Batch operation results' => "Serijska operacija rezultati", - 'Operation' => "Operacija", - 'Status' => "Status", - '{{NUM}} queries generated' => "{{NUM}} upite generira", - 'Please select one or more operations to perform' => "Odaberite jedan ili više poslova za obavljanje", - 'Quick Search' => "Brzo pretraživanje", - '{{NAME}} client library is not installed' => "{{NAZIV}} klijent knjižnice nije instaliran", - '{{NAME}} extension is not installed' => "{{NAZIV}} proširenje nije instaliran", - 'SQLite database folder is inaccessible or not writable' => "SQLite baza podataka mape je nedostupan ili ne pisati", - 'Maximize/Restore Results Pane' => "Povećali / Restore Rezultati okna", - 'Select databases to operate upon' => "Odaberite baze podataka za rad na", - 'DROP selected databases' => "KAP odabrane baze podataka", - 'The following operation is irreversible' => "Sljedeći rad je nepovratan", - 'Potential data loss might occur' => "Potencijalni gubitak podataka može doći", - 'Add TRUNCATE command before insert statements' => "Dodaj TRUNCATE naredbu prije umetanje izjave", - 'Select objects to include in backup' => "Odaberite predmeti uključiti u backup", - 'Backup folder does not exist or is not writable' => "Backup mape ne postoji ili je se ne može pisati", - 'Backup type' => "Backup putovanja", - 'Database backup successfully created' => "Baza podataka backup uspješno kreiran", - 'Failed to create database backup' => "Nije uspjelo stvaranje baze podataka backup", - 'Generate Bulk insert statements' => "Generiranje Bulk izjave umetanje", - 'Maximum size of SQL statement' => "Maksimalna veličina SQL izjave", - 'Show record count with table names' => "Pokaži rekord računati s imena tablica", - 'Sort Table listing by' => "Sortiranje Tablica oglas prema", - 'Name' => "Ime", - 'Last Update Time' => "Zadnji Update Vrijeme", - 'Maximum records to display in result set' => "Maksimalno zapisi za prikaz u skupu rezultata", - 'Show popup dialog for editing large text data' => "Pokaži popup dijalog za uređivanje velikih tekstualnih podataka", - 'Miscellaneous' => "Razni", - 'Reset all confirmation dialogs' => "Ponovno sve dijaloge potvrdama", - 'Record Editing' => "Zapis Uređivanje", - 'Exclude Table type' => "Isključi tipa tablice", - 'Exclude Table Character set' => "Isključi Tablica skup znakova", - 'Backup filename' => "Backup datoteke", - 'Invalid filename format' => "Neispravan format datoteke", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "sve", - 'all selected' => "sve odabrane", - 'An error occured while refreshing the object list.' => "Dogodila se pogreška tijekom osvježavajuće objekt popis.", - 'Are you sure you want to clear all field information from table?' => "Jeste li sigurni da želite izbrisati sve podatke polja iz tablice?", - 'Are you sure you want to delete this user account?' => "Jeste li sigurni da želite izbrisati ovaj korisnički račun?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "Jeste li sigurni da želite da ispusti sve objekte iz baze {{NAME}}?", - 'Are you sure you want to DROP selected objects?' => "Jeste li sigurni da želite odabrane objekte DROP?", - 'Are you sure you want to DROP the database {{NAME}}?' => "Jeste li sigurni da želite ispustiti baze podataka {{NAME}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "Jeste li sigurni da želite ispustiti taj objekt? {{NAME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "Jeste li sigurni da želite izvršiti {{SELECTED}} ODABRANIH upite?", - 'Are you sure you want to logout?' => "Jeste li sigurni da želite odjaviti?", - 'Are you sure you want to truncate the table {{NAME}}?' => "Jeste li sigurni da želite skratiti stol {{NAME}}?", - 'Blob Data [{{SIZE}}]' => "BLOB podataka [{{SIZE}}]", - 'Cancel' => "Otkazati", - 'Check for Updates' => "Provjerite ažuriranja", - 'Clear command history?' => "Brisanje naredbu povijest?", - 'Close' => "Zatvoriti", - 'Confirm Action' => "Potvrdi Akcija", - 'Confirm and do not ask me again about this choice' => "Potvrdi i ne pitaj me više o ovom izboru", - 'Copy Object' => "Kopiraj objekta", - 'Create Database' => "Stvaranje baze podataka", - 'Create Primary Index on this field' => "Napravite Primarni indeks na ovom području", - 'Databases' => "Baze podataka", - 'Default value [Use quotes to specify string values]' => "Zadana vrijednost [Koristi navodnike da biste naveli niz vrijednosti]", - 'Disallow NULL values in Field' => "Onemogući NULL vrijednosti u polju", - 'Enter new index name' => "Unesite novi naziv indeksa", - 'Enter new name for the database object' => "Unesite novo ime za objekt baze podataka", - 'Enter the text to search in database' => "Unesite tekst za pretraživanje u bazi podataka", - 'Error' => "Pogreška", - 'Events' => "Događanja", - 'Execute query' => "Izvrši upit", - 'Exports results' => "Izvoz rezultata", - 'Failed to refresh the results.' => "Nije uspjela osvježiti rezultate.", - 'Field Datatype' => "Polje datatype", - 'Field Name' => "Naziv polja", - 'Field value is Auto Incremented' => "Vrijednost polja je auto incremented", - 'Functions' => "Funkcije", - 'Indexes Updated' => "Indeksi Ažurirano", - 'Maximum Length of field value' => "Najveća duljina vrijednost polja", - 'Navigation Error. Try reloading the page' => "Nalazite se pogreška. Pokušajte ponovno učitati stranicu", - 'New settings saved and applied' => "Nove postavke su spremljene i primijenjene", - 'New version is available' => "Nova verzija je dostupna", - 'Next' => "Slijedeća", - 'No' => "Ne", - 'No Table selected' => "Nema Tablica odabranih", - 'Not enough room to show this pane.' => "Nema dovoljno mjesta za prikazivanje ovog okno.", - 'OK' => "OK", - 'One or more field information is incomplete' => "Jedno ili više polja informacija je nepotpuna", - 'Open' => "Otvoreno", - 'Operation failed' => "Operacija nije uspjela", - 'Pad field values with leading zeros' => "Pad vrijednosti polja s vodećim nulama", - 'Pane' => "Okna", - 'Passwords do not match' => "Zaporke se ne podudaraju", - 'Pin' => "Pin", - 'Please select one or more operations to perform' => "Odaberite jedan ili više poslova za obavljanje", - 'Please type in one or more queries in the SQL editor!' => "Upišite jednu ili više upita u SQL urednik!", - 'Please wait...' => "Molimo pričekajte ...", - 'Previous' => "Prethodna", - 'Procedures' => "Postupci", - 'Prompt' => "Brz", - 'Refresh results' => "Osvježi rezultate", - 'Refreshing object list' => "Osvježavajući popis objekata", - 'Rename Object' => "Preimenovanje objekta", - 'Resize' => "Promjena veličine", - 'Results page:' => "Rezultati stranica:", - 'Select a database to view privileges for the user' => "Odaberite bazu podataka za prikaz povlastice za korisnika", - 'Select an index to view / edit its details' => "Odaberite indeks za pregled / uređivanje svojim detaljima", - 'Select at least one field type for searching' => "Odaberite najmanje jednu vrstu polja za pretraživanje", - 'Select objects to operate upon' => "Odaberite objekte za rad na", - 'selector' => "selektor", - 'Slide Open' => "Slide Open", - 'Table information requires at least one valid field' => "Tablica informacije zahtijeva barem jedan valjani", - 'Table name is required' => "Tablica ime je obavezno", - 'Table successfully created' => "Tablica je uspješno kreirana", - 'Table successfully modified' => "Tablica uspješno promjene", - 'Tables' => "Tablice", - 'Text Data [{{SIZE}}]' => "Tekstualni podaci [{{SIZE}}]", - 'There is no record in the results to export' => "Nema rekord u rezultatima za izvoz", - 'This attribute is not required for selected field type' => "Ovaj atribut nije potreban za odabrani tip polja", - 'Triggers' => "Okidači", - 'Un-Pin' => "Un-Pin", - 'Unsigned numbered field only' => "Ružan brojevima polje samo", - 'Update check failed' => "Update provjerite nije", - 'User information is incomplete or invalid' => "Korisnik informacija je nepotpuna ili nije ispravan", - 'User Manager' => "Korisnik Manager", - 'Views' => "Posjeta", - 'WARNING' => "UPOZORENJE", - 'Yes' => "Da", - 'You have the latest version' => "Imate najnoviju verziju", - - ); -?> diff --git a/lang/hu.php b/lang/hu.php deleted file mode 100644 index 1c93dad..0000000 --- a/lang/hu.php +++ /dev/null @@ -1,463 +0,0 @@ - "Használja Adatbázis", - 'Drop Database' => "Drop Adatbázis", - 'Empty Database' => "Üres adatbázis", - 'Drop all tables from this database' => "Minden csepp táblákat az adatbázisban", - 'Select statement' => "Válassza ki a nyilatkozatot", - 'Insert statement' => "Helyezze nyilatkozat", - 'Update statement' => "Frissítés nyilatkozat", - 'Describe' => "Írja le", - 'Show create command' => "Megjelenítés create parancs", - 'View data' => "Nézd meg az adatok", - 'Alter Table' => "ALTER TABLE", - 'Indexes' => "Indexek", - 'Engine Type' => "Motor típusa", - 'More operations' => "Több művelet", - 'Truncate' => "Megcsonkít", - 'Drop' => "Csepp", - 'Rename' => "Átnevezése", - 'Export table data' => "Export táblázat adatai", - 'Create Table' => "Táblázat létrehozása", - 'Create View' => "Nézet létrehozása", - 'Create Procedure' => "Létrehozása Eljárás", - 'Create Function' => "Létrehozása funkció", - 'Create Trigger' => "Trigger létrehozása", - 'Create Event' => "Esemény létrehozása", - 'Show/Hide Panel' => "Show / Hide panel", - 'Show/Hide Header' => "Show / Hide fejléc", - 'Copy all queries to clipboard' => "Másolás minden lekérdezés a vágólapra", - 'Clear history' => "Előzmények törlése", - 'Copy Column values' => "Másolás oszlop értékeit", - 'Copy to clipboard' => "Másolás a vágólapra", - 'Generate SQL Filter' => "Generálása SQL szűrő", - 'Database Manager' => "Adatbázis-kezelő", - 'Manage databases' => "Adatbázisok kezelése", - - // main menu related text - 'Database' => "Adatbázis", - 'Refresh' => "Frissítés", - 'Refresh database object list' => "Frissítés adatbázis-objektum listája", - 'Create new' => "Hozzon létre új", - 'Export' => "Export", - 'Export database to external file' => "Export adatbázis külső fájlba", - 'Objects' => "Tárgyak", - 'Create Table' => "Táblázat létrehozása", - 'Create a new table in the database' => "Hozzon létre egy új táblát az adatbázisban", - 'Create View' => "Nézet létrehozása", - 'Create a new view in the database' => "Új nézet létrehozása az adatbázisban", - 'Create Stored Procedure' => "Tárolt eljárás létrehozása", - 'Create a new stored procedure in the database' => "Hozzon létre egy új tárolt eljárást az adatbázisban", - 'Create Function' => "Létrehozása funkció", - 'Create a new user defined function in the database' => "Hozzon létre egy új felhasználó által definiált függvényt az adatbázisban", - 'Create Trigger' => "Trigger létrehozása", - 'Create a new trigger in the database' => "Hozzon létre egy új trigger az adatbázisban", - 'Create Event' => "Esemény létrehozása", - 'Create a new event in the database' => "Hozzon létre egy új eseményt az adatbázisban", - 'Data' => "Adatok", - 'Import batch file' => "Import kötegfájl", - 'Import multiple queries from batch file' => "Import több lekérdezés a kötegelt fájlban", - 'Export database' => "Export adatbázis", - 'Export database to batch file as sql dump' => "Export adatbázis batch fájlt sql dump", - 'Export current results' => "Export jelenlegi eredmények", - 'Export query results to clipboard or files' => "Export lekérdezés eredményét a vágólapra vagy fájlok", - 'Tools' => "Eszközök", - 'Process Manager' => "Process Manager", - 'View and manage database processes' => "Megtekintése és kezelése adatbázis-folyamatok", - 'Repair Tables' => "Javítás asztalok", - 'Analyze and repair database tables' => "Elemzése és javítása adatbázis táblák", - 'User Manager' => "User Manager", - 'Manage database users' => "Kezelése adatbázis-felhasználók", - 'Search in Database' => "Keresés az adatbázisban", - 'Search for text in the database' => "Szöveg keresése az adatbázisban", - 'Information' => "Információk", - 'Server/Connection Details' => "Szerver / kapcsolat részletei", - 'View server configuration' => "Nézet szerver konfigurációs", - 'View server and connection details' => "Kilátás szerver és kapcsolat részleteit", - 'Server Variables' => "Szerver változók", - 'Database Summary' => "Adatbázis Összefoglaló", - 'View current database summary stats' => "Nézd meg aktuális adatbázis összefoglaló statisztika", - 'Interface' => "Interfész", - 'Options' => "Opciók", - 'Configure application options' => "Konfigurálása alkalmazási lehetőségek", - 'UI Theme' => "UI téma", - 'Database Objects' => "Adatbázis-objektumok", - 'Toggle Object Viewer' => "Toggle Object Viewer", - 'Help contents' => "Súgó tartalom", - 'Learn the basics of using MyWebSQL' => "Ismerje meg az alapjait használó MyWebSQL", - 'QuickStart Tutorials' => "QuickStart oktatóanyagok", - 'See quick hands-on tutorial of MyWebSQL interface' => "Lásd a gyors gyakorlati útmutató az MyWebSQL interfész", - 'Online documentation' => "Online dokumentáció", - 'View online documentation on project website' => "Nézd meg online dokumentáció a projekt honlapján", - 'Request a Feature' => "Kérése funkció", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "Ha szeretnéd, hogy a legtöbb kedvenc funkciót is részt vesz a MyWebSQL, kérjük, kattintson ide, hogy tájékoztassa erről", - 'Report a Problem' => "Jelentés a probléma", - 'Check for updates' => "Frissítések", - 'Check for updated versions of the application online' => "Ellenőrizze, frissített változata a kérelem online", - 'Logout' => "Kilépés", - 'Logout from this session' => "Kilépés a ezen az ülésen", - 'Language' => "Nyelv", - 'SQL Editor' => "SQL szerkesztő", - 'Toggle SQL Editor' => "Toggle SQL szerkesztő", - 'Experimental' => "Kísérleti", - 'Import table data' => "Importálása táblázat adatai", - 'Import table data from external file' => "Import táblázat adatai külső fájlban", - 'Batch operations' => "Kötegelt műveletek", - 'Perform one or more batch operations on database' => "Végezze el egy vagy több kötegelt műveleteket adatbázis", - 'Create a new schema in the database' => "Hozzon létre egy új sémát az adatbázisban", - 'Create Schema' => "Séma létrehozása", - 'Table Description' => "Táblázat Megnevezés", - 'Database Manager' => "Adatbázis-kezelő", - 'Manage databases' => "Adatbázisok kezelése", - 'Backup database on the server as SQL dump' => "Backup adatbázis a szerveren SQL kiíratás", - 'Backup Database' => "Backup Database", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "Az Ön böngészője tűnik, hogy nagyon régi és nem támogatja az összes szolgáltatás működtetéséhez szükséges MyWebSQL.", - 'Try using a newer version of the browser to run this application.' => "Próbáljon ki egy újabb verzióját a böngésző alkalmazás futtatásához", - - // text used on various screens in the interface - 'Visit Project website' => "Látogassa meg a projekt honlapján", - 'Version' => "verzió", - 'Loading' => "Rakodás", - 'Quick Edit Options' => "Gyors Beállítások szerkesztése", - 'Press {{KEY}} to set NULL' => "Nyomja meg a {{KEY}} beállítani NULL", - 'MySQL Server' => "MySQL szerver", - 'Logged in as: {{USER}}' => "Bejelentkezve mint: {{USER}}", - 'Results' => "Eredmények", - 'Messages' => "Üzenetek", - 'Information' => "Információk", - 'History' => "Története", - 'There are no results to show in this view' => "Nincsenek eredmények azt mutatják, az ebben a nézetben", - 'Refresh results' => "Frissítés eredmények", - 'Please wait' => "Kérem, várjon", - 'Query All' => "Minden lekérdezés", - 'Query' => "Lekérdezés", - 'Add Record' => "Rekord hozzáadása", - 'Delete Record(s)' => "Rekord törlése (ek)", - 'Update Record(s)' => "Update Record (s)", - 'Generate SQL' => "Generálása SQL", - 'Database name' => "Adatbázis neve", - 'Select database after creation' => "Válassza adatbázis létrehozása után a", - 'Database connection failed to the server' => "Adatbázis-kapcsolat nem a szerver", - 'Host' => "Fogadó", - 'User' => "Felhasználó", - 'Select a database to begin' => "Válasszon ki egy adatbázist kezdődik", - 'Select/unselect All records' => "Válassza / Unselect minden nyilvántartást", - 'Primary key column' => "Elsődleges kulcs oszlop", - 'Unique key column' => "Egyedi kulcs oszlop", - 'Showing records {{START}} - {{END}}' => "Megjelenítés rekordok {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "Amely az első {{MAX}} nyilvántartás", - '1 query successfully executed' => "1 lekérdezés sikeresen végrehajtott", - '{{NUM}} queries successfully executed' => "{{NUM}} lekérdezések sikeresen végrehajtott", - '{{NUM}} record(s) were affected' => "{{NUM}} bejegyzés (ek) érintette", - '{{NUM}} record(s) updated' => "{{NUM}} bejegyzés (ek) frissítve", - 'Error occurred while executing the query' => "Hiba történt, miközben a végrehajtó a lekérdezés", - '{{NUM}} queries failed to execute' => "{{NUM}} lekérdezések nem hajtotta végre", - 'Click to view/edit column data [{{NUM}} Bytes]' => "Kattints ide a / edit oszlop adatai [{{NUM}} Bytes]", - 'Blob data is not editable' => "Blob adat nem szerkeszthető", - 'Blob data saved' => "Blob adatok mentése", - 'Failed to save blob data' => "Nem sikerült menteni blob adatok", - 'The process with id [{{PID}}] was killed' => "A folyamat id [{{PID}}] megölték", - 'No such process [id = {{PID}}]' => "Nincs ilyen folyamat [id = {{PID}}]", - 'Select a process and click the button to kill the process' => "Válassza ki a folyamatban, és kattintson a gombra, hogy megöl a folyamat", - 'Process ID' => "Process ID", - 'Command' => "Parancs", - 'Time' => "Idő", - 'Info' => "Info", - 'Kill Process' => "Kill Process", - 'Failed to get process list' => "Nem sikerült folyamat listájához", - 'The command executed successfully' => "A parancs sikeresen végrehajtva", - 'Invalid server configuration' => "Érvénytelen szerver konfiguráció", - 'Invalid Credentials' => "Érvénytelen megbízólevelét", - 'New database successfully created' => "Új adatbázis sikeresen létrehozva", - 'File upload failed. Please try again' => "Fájl feltöltés nem sikerült. Kérjük, próbálja újra", - 'No queries were executed during import' => "Nem lekérdezések kivégezték az importálás során", - 'Maximum upload filesize is {{SIZE}}' => "Maximális feltöltési filesize a {{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "Támogatott fájltípusok / kiterjesztések: ({{LIST}})", - 'Database summary' => "Adatbázis összefoglaló", - 'Server Variables' => "Szerver változók", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "Minden létező tárgy, az azonos nevű figyelmen kívül kell hagyni kézzel végrehajtása előtt létrehozása parancs", - 'Only create commands are accepted' => "Csak létre parancsokat fogadni", - 'User ID' => "Felhasználói azonosító", - 'Password' => "Jelszó", - 'Login' => "Bejelentkezés", - 'Create new database object' => "Hozzon létre új adatbázis-objektum", - 'Enter command for object creation' => "Enter parancs az objektum létrehozása", - 'Submit' => "Beküldése", - 'Show blob data as: {{TYPE}}' => "Megjelenítés blob adatok: {{TYPE}}", - 'Blob data for column {{NAME}}' => "Blob adatokat oszlop {{NAME}}", - 'Create command for {{TYPE}} {{NAME}}' => "Létrehozása parancsot {{TYPE}} {{NAME}}", - 'Table Engine (type)' => "Táblázat Motor (típus)", - 'Change Table Type' => "Táblázat módosítása típus", - 'The requested page is not available on the server' => "A kért oldal nem elérhető a szerveren", - 'Error' => "Hiba", - 'It appears that you attempted to submit an invalid request to the server' => "Úgy tűnik, hogy kísérletet, hogy nyújtson be egy érvénytelen kérés a szerver", - 'The request has been denied. Reloading the page might solve the problem' => "A kérelmet már megtagadta. Betölteni az oldalt lehet, hogy megoldja a problémát", - 'Access Denied' => "Hozzáférés megtagadva", - 'Help' => "Segítség", - 'To see most up-to-date help contents, please visit {{LINK}}' => "Ha látni leginkább up-to-date segíteni tartalmát, kérjük, látogasson el a {{LINK}}", - 'It appears that your browser session has expired' => "Úgy tűnik, hogy a böngésző munkamenet lejárt", - 'Please refresh the webpage to re-login' => "Frissítse a weboldalt, hogy újra be", - 'Table information' => "Tábla információ", - 'Edit' => "Edit", - 'Save' => "Mentés", - 'Either the database is empty, or there was an error retrieving list of database objects' => "Vagy az adatbázis üres, vagy hiba történt a lista lekérése adatbázis-objektumok", - 'Please try closing and re-opening this dialog again' => "Kérjük, próbálja meg bezárni, majd újra ezen ablak újranyitása", - 'Structure' => "Struktúra", - 'Table Data' => "Táblázat adatai", - 'Structure and Table Data' => "Struktúra és táblázat adatai", - 'Options' => "Opciók", - 'Set Auto increment field values to NULL' => "Automatikus növelés területén értékek NULL", - 'Add DROP command before create statements' => "Add DROP parancs előtt létre nyilatkozatok", - 'Export' => "Export", - 'Import' => "Import", - 'Export Database' => "Export Adatbázis", - 'Export Table' => "Export táblázat", - 'Server information' => "Szerver információk", - 'Server' => "Server", - 'Version comment' => "Verzió comment", - 'Character sets' => "Karakterkészletek", - 'Server character set' => "Szerver karakterkészlet", - 'Client character set' => "Ügyfél karakterkészlet", - 'Database character set' => "Adatbázis karakterkészlet", - 'Results character set' => "Eredmények karakterkészlet", - 'Export As' => "Export Mint", - 'Insert Statements' => "Helyezze nyilatkozatok", - 'Include field names in query' => "Közé mezőneveket a lekérdezés", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Egyszerű szöveg (egy rekord soronként)", - 'Fields separated by:' => "Területek egymástól:", - 'Export Results' => "Export Eredmények", - 'Select SQL batch file to import' => "Válassza ki a SQL batch fájlt importálni", - 'Continue processing even if error occurs' => "Folytatás feldolgozása akkor is, ha hiba", - 'Basic Information' => "Alapvető információk", - 'Table Properties' => "Táblázat tulajdonságai", - 'Table Name' => "Táblázat neve", - 'Field Name' => "Mező neve", - 'Data Type' => "Adattípus", - 'Length' => "Hossz", - 'Default value' => "Alapértelmezett érték", - 'Unsigned' => "Aláírás nélküli", - 'Zero Fill' => "Nulla kitöltése", - 'Primary Key' => "Elsődleges kulcs", - 'Auto Increment' => "Automatikus növekménye", - 'Not NULL' => "Nem NULL", - 'Character Set' => "Karakterkészlet", - 'Collation' => "Leválogatás", - 'Comment' => "Megjegyzés", - 'Waiting for table information to be submitted' => "Várakozás a táblázatot benyújtandó információ", - 'Add field' => "Mező hozzáadása", - 'Delete selected field' => "Törlés kijelölt területen", - 'Clear Table Information' => "Kódolatlan táblázat információ", - 'List of values' => "Értékek listája", - 'Query Results' => "Lekérdezés eredménye", - 'Data for {{TABLE}}' => "Adatok {{TABLE}}", - 'Select tables to be analyzed/repaired' => "Válassza ki a táblázatokat kell megvizsgálni / javítani", - 'Operation to perform' => "Művelet elvégzésére", - 'Analyze' => "Elemezze", - 'Check' => "Ellenőrizze", - 'Optimize' => "Optimalizálja", - 'Repair' => "Javítás", - 'Skip Binary logging' => "Ugrás bináris naplózás", - 'Default' => "Alapértelmezett", - 'Quick' => "Gyors", - 'Fast' => "Fast", - 'Medium' => "Közepes", - 'Extended' => "Kiterjesztett", - 'Changed' => "Megváltozott", - 'Use Frm files (MyISAM tables)' => "Használja FRM fájlok (MyISAM táblák)", - 'User Information' => "Felhasználói adatok", - 'Global Privileges' => "Globális Kiváltságok", - 'Database Privileges' => "Adatbázis Kiváltságok", - 'Import File' => "Fájl importálása", - 'Index Manager' => "Index Manager", - 'Edit table structure' => "Edit táblázat szerkezete", - 'Save All Changes' => "Minden változtatás mentésére", - 'Changes are not saved until you press [Save All Changes]' => "Változások nem kerülnek mentésre, amíg meg nem nyomjuk meg a [Save All Változások]", - 'Field Length' => "Mező hossza", - 'Select objects to include in export' => "Válassza ki a tárgyakat felvenni a kiviteli", - 'Export type' => "Export típusa", - 'Select All/None' => "Az összes kijelölése / Nincs", - 'Add User' => "Felhasználó hozzáadása", - 'Update User' => "Felhasználó módosítása", - 'Delete selected User' => "Törlése a kiválasztott felhasználó", - 'Remove Password' => "Jelszó törlése", - 'Select tables to search' => "Válassza ki a táblázatok a kereséshez", - 'Search Options' => "Keresési opciók", - 'Search in following field types' => "Keresés a következő mezőtípusok", - 'Numeric Fields' => "Numerikus mezők", - 'Character Fields' => "Karakter mezők", - 'Text Fields' => "Szöveges mezők", - 'Date/Time Fields' => "Dátum / Idő területek", - 'Comparison Type' => "Összehasonlítás típus", - 'Text to search' => "A keresett szöveget", - 'Search' => "Keresés", - 'Search Results' => "A keresés eredménye", - 'Number of matches' => "Találatok száma", - 'Search results for {{KEYWORD}} in the database' => "Keresési eredmény a {{KEYWORD}} az adatbázisban", - '{{NUM}} match(es)' => "{{NUM}} mérkőzés (ek)", - 'Copy query to editor' => "Másolás lekérdezés a szerkesztőnek", - 'Done' => "Done", - 'SQL Editor' => "SQL szerkesztő", - 'Create Copy' => "Create Copy", - 'Minimize All' => "Kis méret Minden", - 'Copy Record(s)' => "Másolás bejegyzés (ek)", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "Vesszővel tagolt (CSV Excel)", - 'Select data file to import' => "Válassza adatfájl importálása", - 'Select table for data import' => "Válassza ki a táblázat adatait import", - 'First line contains column names' => "Első sorban oszlopnevek", - 'Select objects to operate upon' => "Válassza ki objektumok megmût", - 'Operations to perform' => "Műveletek elvégzésére", - 'Add prefix string to name' => "Add sztring prefix megnevezni", - 'Delete prefix string from name' => "Törlés prefix string neve", - 'Command text' => "Parancs szövegét", - 'DROP selected database objects' => "DROP kiválasztott adatbázis objektumokat", - 'Batch operation results' => "Batch működési eredmény", - 'Operation' => "Működés", - 'Status' => "Állapot", - '{{NUM}} queries generated' => "{{NUM}} lekérdezi generált", - 'Please select one or more operations to perform' => "Válasszon ki egy vagy több művelet elvégzésére", - 'Quick Search' => "Gyorskereső", - '{{NAME}} client library is not installed' => "{{Name}} kliens könyvtár nincs telepítve", - '{{NAME}} extension is not installed' => "{{Name}} kiterjesztés nincs telepítve", - 'SQLite database folder is inaccessible or not writable' => "SQLite adatbázis mappa nem érhető-e vagy sem írható", - 'Maximize/Restore Results Pane' => "Maximalizálás / visszaállítás Results ablakban", - 'Select databases to operate upon' => "Válassza adatbázisok megmût", - 'DROP selected databases' => "DROP kiválasztott adatbázisok", - 'The following operation is irreversible' => "A következő művelet visszafordíthatatlan", - 'Potential data loss might occur' => "Lehetséges adatvesztés léphet fel", - 'Add TRUNCATE command before insert statements' => "Kedvencek TRUNCATE parancsot, mielőtt betét nyilatkozatok", - 'Select objects to include in backup' => "Válasszon objektumokat fel backup", - 'Backup folder does not exist or is not writable' => "Backup mappa nem létezik, vagy nem írható", - 'Backup type' => "Backup típusú", - 'Database backup successfully created' => "Adatbázis mentés sikeresen létrehozva", - 'Failed to create database backup' => "Nem sikerült létrehozni adatbázis mentés", - 'Generate Bulk insert statements' => "Generálása Tömeges INSERT", - 'Maximum size of SQL statement' => "Maximális mérete SQL utasítás", - 'Show record count with table names' => "Mutasd Rekordszám asztallal nevét", - 'Sort Table listing by' => "Rendezés Table lista szerint", - 'Name' => "Név", - 'Last Update Time' => "Utolsó frissítés ideje", - 'Maximum records to display in result set' => "Maximum rekordokat megjeleníteni eredményhalmaz", - 'Show popup dialog for editing large text data' => "Mutasd felugró ablakban szerkesztéséhez nagy szöveges adat", - 'Miscellaneous' => "Vegyes", - 'Reset all confirmation dialogs' => "Mindent vissza megerősítő párbeszédablak", - 'Record Editing' => "Rekord szerkesztése", - 'Exclude Table type' => "Kizárás táblázat típus", - 'Exclude Table Character set' => "Kizárás táblázat Character set", - 'Backup filename' => "Backup fájlnév", - 'Invalid filename format' => "Érvénytelen fájlnév formátum", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "Az összes", - 'all selected' => "az összes kiválasztott", - 'An error occured while refreshing the object list.' => "Hiba történt a frissítő az objektum lista.", - 'Are you sure you want to clear all field information from table?' => "Biztosan törölni kívánja az összes mezőt információt tábla?", - 'Are you sure you want to delete this user account?' => "Biztos benne, hogy törli a felhasználói fiók?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "Biztos benne, hogy szeretné DROP minden objektumot az adatbázisból {{NAME}}?", - 'Are you sure you want to DROP selected objects?' => "Biztosan meg akar dobni kijelölt objektumokat?", - 'Are you sure you want to DROP the database {{NAME}}?' => "Biztos benne, hogy szeretné DROP az adatbázis {{NAME}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "Biztos benne, hogy szeretné dobni ezt az objektumot? {{NAME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "Biztos benne, hogy szeretné végre a {{SELECTED}} lekérdezéseket?", - 'Are you sure you want to logout?' => "Biztos benne, hogy akar kijelentkezni?", - 'Are you sure you want to truncate the table {{NAME}}?' => "Biztos benne, hogy szeretné vágni a táblázat {{NAME}}?", - 'Blob Data [{{SIZE}}]' => "BLOB adatok [{{SIZE}}]", - 'Cancel' => "Mégsem", - 'Check for Updates' => "Frissítések", - 'Clear command history?' => "Egyértelmű parancsokat?", - 'Close' => "Bezárás", - 'Confirm Action' => "Erősítse cselekvési", - 'Confirm and do not ask me again about this choice' => "Megerősítés és ne kérdezd meg megint ezt a választást", - 'Copy Object' => "Másolás objektum", - 'Create Database' => "Adatbázis létrehozása", - 'Create Primary Index on this field' => "Hozzon létre Elsődleges index az ezen a területen", - 'Databases' => "Adatbázisok", - 'Default value [Use quotes to specify string values]' => "Alapértelmezett értéke [Használja idézőjelek meg szöveges adatok]", - 'Disallow NULL values in Field' => "Letiltása NULL értékek Field", - 'Enter new index name' => "Írja be az új index nevét", - 'Enter new name for the database object' => "Írja be az új nevet az adatbázis-objektum", - 'Enter the text to search in database' => "Írja be a keresendő szöveget az adatbázisban", - 'Error' => "Hiba", - 'Events' => "Események", - 'Execute query' => "Hajtható végre", - 'Exports results' => "Export eredmények", - 'Failed to refresh the results.' => "Nem sikerült frissíteni az eredményeket.", - 'Field Datatype' => "Mező Adattípus", - 'Field Name' => "Mező neve", - 'Field value is Auto Incremented' => "A mező értéke az Auto növekszik", - 'Functions' => "Funkciók", - 'Indexes Updated' => "Indexek Frissítve", - 'Maximum Length of field value' => "Maximális hossza mezőérték", - 'Navigation Error. Try reloading the page' => "Navigációs hiba. Próbálja újra betölteni az oldalt", - 'New settings saved and applied' => "Új beállítások mentése és alkalmazása", - 'New version is available' => "Új verzió érhető el", - 'Next' => "Következő", - 'No' => "Nem", - 'No Table selected' => "Nincs táblázat kiválasztva", - 'Not enough room to show this pane.' => "Nincs elég hely, hogy meg kell mutatni az ablakban.", - 'OK' => "OK", - 'One or more field information is incomplete' => "Egy vagy több mező adatok nem teljesek", - 'Open' => "Open", - 'Operation failed' => "A művelet nem sikerült", - 'Pad field values with leading zeros' => "Pad mezőértékek nullákkal", - 'Pane' => "Pane", - 'Passwords do not match' => "A jelszavak nem egyeznek", - 'Pin' => "Tű", - 'Please select one or more operations to perform' => "Válasszon ki egy vagy több művelet elvégzésére", - 'Please type in one or more queries in the SQL editor!' => "Kérjük, írja be egy vagy több lekérdezést az SQL szerkesztő!", - 'Please wait...' => "Kérem, várjon ...", - 'Previous' => "Előző", - 'Procedures' => "Eljárások", - 'Prompt' => "Gyors", - 'Refresh results' => "Frissítés eredmények", - 'Refreshing object list' => "Frissítő objektum lista", - 'Rename Object' => "Átnevezése objektum", - 'Resize' => "Átméretezés", - 'Results page:' => "Eredmények oldalon:", - 'Select a database to view privileges for the user' => "Válasszon ki egy adatbázist megtekintéséhez jogosultságokat a felhasználó", - 'Select an index to view / edit its details' => "Válasszon ki egy index megtekintéséhez / szerkesztéséhez részletek", - 'Select at least one field type for searching' => "Válasszon ki legalább egy mező típusát felkutatására", - 'Select objects to operate upon' => "Válassza ki objektumok megmût", - 'selector' => "választó", - 'Slide Open' => "Dia Open", - 'Table information requires at least one valid field' => "Táblázat információk szerint legalább egy érvényes mezőt", - 'Table name is required' => "Táblanév van szükség", - 'Table successfully created' => "Táblázat sikeresen létrehozva", - 'Table successfully modified' => "Táblázat sikeresen módosítása", - 'Tables' => "Táblázatok", - 'Text Data [{{SIZE}}]' => "Szöveges adatok [{{SIZE}}]", - 'There is no record in the results to export' => "Arról nincsenek adatok, az eredmények az export", - 'This attribute is not required for selected field type' => "Ez az attribútum nem szükséges a kiválasztott területen típusú", - 'Triggers' => "Triggerek", - 'Un-Pin' => "Un-Pin", - 'Unsigned numbered field only' => "Aláíratlan számozott mező csak", - 'Update check failed' => "Frissítés ellenőrzése nem sikerült", - 'User information is incomplete or invalid' => "Felhasználó adatok hiányosak, vagy érvénytelen", - 'User Manager' => "User Manager", - 'Views' => "Megtekintés", - 'WARNING' => "FIGYELEM!", - 'Yes' => "Igen", - 'You have the latest version' => "Itt van a legújabb verzió", - - ); -?> diff --git a/lang/id.php b/lang/id.php deleted file mode 100644 index 55f7da1..0000000 --- a/lang/id.php +++ /dev/null @@ -1,463 +0,0 @@ - "Gunakan Database", - 'Drop Database' => "Drop Database", - 'Empty Database' => "Kosong Database", - 'Drop all tables from this database' => "Drop semua tabel dari database ini", - 'Select statement' => "Pilih pernyataan", - 'Insert statement' => "Masukkan pernyataan", - 'Update statement' => "Update pernyataan", - 'Describe' => "Menggambarkan", - 'Show create command' => "Tampilkan membuat perintah", - 'View data' => "Lihat Data", - 'Alter Table' => "Alter Tabel", - 'Indexes' => "Indeks", - 'Engine Type' => "Tipe mesin", - 'More operations' => "Lebih operasi", - 'Truncate' => "Memotong", - 'Drop' => "Penurunan", - 'Rename' => "Ubah nama", - 'Export table data' => "Ekspor data tabel", - 'Create Table' => "Membuat Tabel", - 'Create View' => "Buat Lihat", - 'Create Procedure' => "Buat Prosedur", - 'Create Function' => "Buat Fungsi", - 'Create Trigger' => "Buat Trigger", - 'Create Event' => "Buat Acara", - 'Show/Hide Panel' => "Tampilkan / Sembunyikan Panel", - 'Show/Hide Header' => "Tampilkan / Sembunyikan Header", - 'Copy all queries to clipboard' => "Salin semua pertanyaan ke clipboard", - 'Clear history' => "Hapus riwayat", - 'Copy Column values' => "Salin Kolom nilai", - 'Copy to clipboard' => "Salin ke clipboard", - 'Generate SQL Filter' => "Hasilkan SQL Filter", - 'Database Manager' => "Database Manajer", - 'Manage databases' => "Mengelola database", - - // main menu related text - 'Database' => "Database", - 'Refresh' => "Menyegarkan", - 'Refresh database object list' => "Refresh objek database daftar", - 'Create new' => "Buat baru", - 'Export' => "Ekspor", - 'Export database to external file' => "Ekspor database ke file eksternal", - 'Objects' => "Objek", - 'Create Table' => "Membuat Tabel", - 'Create a new table in the database' => "Buat tabel baru pada database", - 'Create View' => "Buat Lihat", - 'Create a new view in the database' => "Buat pandangan baru dalam database", - 'Create Stored Procedure' => "Buat Stored Prosedur", - 'Create a new stored procedure in the database' => "Buat baru prosedur yang tersimpan dalam database", - 'Create Function' => "Buat Fungsi", - 'Create a new user defined function in the database' => "Buat user baru didefinisikan fungsi dalam database", - 'Create Trigger' => "Buat Trigger", - 'Create a new trigger in the database' => "Buat memicu baru dalam database", - 'Create Event' => "Buat Acara", - 'Create a new event in the database' => "Buat acara baru dalam database", - 'Data' => "Data", - 'Import batch file' => "Impor file batch", - 'Import multiple queries from batch file' => "Beberapa Impor pertanyaan dari file batch", - 'Export database' => "Ekspor database", - 'Export database to batch file as sql dump' => "Ekspor database ke file batch sebagai dump sql", - 'Export current results' => "Ekspor saat ini hasil", - 'Export query results to clipboard or files' => "Ekspor hasil query ke clipboard atau file", - 'Tools' => "Tools", - 'Process Manager' => "Proses Manager", - 'View and manage database processes' => "Lihat dan mengelola proses database", - 'Repair Tables' => "Perbaikan Tabel", - 'Analyze and repair database tables' => "Menganalisis dan memperbaiki tabel database", - 'User Manager' => "Pengelola Pengguna", - 'Manage database users' => "Mengelola user dari database", - 'Search in Database' => "Cari di Database", - 'Search for text in the database' => "Cari teks dalam database", - 'Information' => "Informasi", - 'Server/Connection Details' => "Server / Koneksi Details", - 'View server configuration' => "Konfigurasi View Server", - 'View server and connection details' => "Lihat Server dan koneksi rincian", - 'Server Variables' => "Variabel server", - 'Database Summary' => "Database Ringkasan", - 'View current database summary stats' => "Melihat statistik database saat ringkasan", - 'Interface' => "Interface", - 'Options' => "Pilihan", - 'Configure application options' => "Mengkonfigurasi Pilihan aplikasi", - 'UI Theme' => "Tema UI", - 'Database Objects' => "Database Objek", - 'Toggle Object Viewer' => "Toggle Obyek Viewer", - 'Help contents' => "Bantuan isi", - 'Learn the basics of using MyWebSQL' => "Pelajari dasar-dasar penggunaan MyWebSQL", - 'QuickStart Tutorials' => "QuickStart Tutorial", - 'See quick hands-on tutorial of MyWebSQL interface' => "Lihat antarmuka tangan-tutorial MyWebSQL cepat", - 'Online documentation' => "dokumentasi Online", - 'View online documentation on project website' => "Lihat dokumentasi online pada situs web proyek", - 'Request a Feature' => "Permintaan Fitur sebuah", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "Jika Anda ingin fitur favorit yang paling Anda menjadi bagian dari MyWebSQL, silakan klik di sini untuk menginformasikan tentang hal itu", - 'Report a Problem' => "Laporan Masalah sebuah", - 'Check for updates' => "Periksa pembaruan", - 'Check for updated versions of the application online' => "Periksa versi terbaru dari aplikasi online", - 'Logout' => "Logout", - 'Logout from this session' => "Logout dari sesi ini", - 'Language' => "Bahasa", - 'SQL Editor' => "SQL Editor", - 'Toggle SQL Editor' => "Beralih SQL Editor", - 'Experimental' => "Eksperimental", - 'Import table data' => "Impor data tabel", - 'Import table data from external file' => "Impor tabel data dari file eksternal", - 'Batch operations' => "Batch operasi", - 'Perform one or more batch operations on database' => "Lakukan operasi batch satu atau lebih pada database", - 'Create a new schema in the database' => "Buat skema baru dalam database", - 'Create Schema' => "Buat Skema", - 'Table Description' => "Tabel Deskripsi", - 'Database Manager' => "Database Manajer", - 'Manage databases' => "Mengelola database", - 'Backup database on the server as SQL dump' => "Backup database pada server sebagai dump SQL", - 'Backup Database' => "Backup database", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "Browser Anda tampaknya sangat tua dan tidak mendukung semua fitur yang diperlukan untuk menjalankan MyWebSQL.", - 'Try using a newer version of the browser to run this application.' => "Coba gunakan versi terbaru dari browser untuk menjalankan aplikasi ini", - - // text used on various screens in the interface - 'Visit Project website' => "Kunjungi situs Proyek", - 'Version' => "versi", - 'Loading' => "Pembebanan", - 'Quick Edit Options' => "Edit Cepat Pilihan", - 'Press {{KEY}} to set NULL' => "Tekan {{KEY}} untuk mengatur NULL", - 'MySQL Server' => "MySQL Server", - 'Logged in as: {{USER}}' => "Login sebagai: {{USER}}", - 'Results' => "Hasil", - 'Messages' => "Pesan", - 'Information' => "Informasi", - 'History' => "Sejarah", - 'There are no results to show in this view' => "Tidak ada hasil yang dapat ditampilkan dalam tampilan ini", - 'Refresh results' => "Refresh hasil", - 'Please wait' => "Mohon tunggu", - 'Query All' => "Query Semua", - 'Query' => "Pertanyaan", - 'Add Record' => "Tambahkan Rekam", - 'Delete Record(s)' => "Hapus Record (s)", - 'Update Record(s)' => "Update Record (s)", - 'Generate SQL' => "Hasilkan SQL", - 'Database name' => "Nama database", - 'Select database after creation' => "Pilih database setelah penciptaan", - 'Database connection failed to the server' => "Database gagal koneksi ke server", - 'Host' => "Tuan rumah", - 'User' => "Pengguna", - 'Select a database to begin' => "Pilih database untuk mulai", - 'Select/unselect All records' => "Pilih / tidak memilih Semua catatan", - 'Primary key column' => "Kunci primer kolom", - 'Unique key column' => "Unik kunci kolom", - 'Showing records {{START}} - {{END}}' => "Menampilkan catatan {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "Menampilkan pertama {{MAX}} hanya mencatat", - '1 query successfully executed' => "1 query berhasil dieksekusi", - '{{NUM}} queries successfully executed' => "{{NUM}} query berhasil dijalankan", - '{{NUM}} record(s) were affected' => "{{NUM}} record (s) terkena dampak", - '{{NUM}} record(s) updated' => "{{NUM}} record (s) diperbarui", - 'Error occurred while executing the query' => "Kesalahan terjadi ketika mengeksekusi query", - '{{NUM}} queries failed to execute' => "{{NUM}} query gagal mengeksekusi", - 'Click to view/edit column data [{{NUM}} Bytes]' => "Klik untuk melihat / edit kolom data [{{NUM}} Bytes]", - 'Blob data is not editable' => "Blob data tidak dapat diedit", - 'Blob data saved' => "Blob data yang disimpan", - 'Failed to save blob data' => "Gagal menyimpan data blob", - 'The process with id [{{PID}}] was killed' => "Proses dengan id [{{PID}}] tewas", - 'No such process [id = {{PID}}]' => "Tidak ada proses seperti [id = {{PID}}]", - 'Select a process and click the button to kill the process' => "Pilih sebuah proses dan klik tombol untuk membunuh proses", - 'Process ID' => "Proses ID", - 'Command' => "Perintah", - 'Time' => "Waktu", - 'Info' => "Info", - 'Kill Process' => "Kill Proses", - 'Failed to get process list' => "Gagal untuk mendapatkan daftar proses", - 'The command executed successfully' => "Perintah dijalankan berhasil", - 'Invalid server configuration' => "Server konfigurasi tidak valid", - 'Invalid Credentials' => "Kredensial tidak valid", - 'New database successfully created' => "Database baru berhasil dibuat", - 'File upload failed. Please try again' => "File upload gagal. Silakan coba lagi", - 'No queries were executed during import' => "Tidak ada query yang dieksekusi selama impor", - 'Maximum upload filesize is {{SIZE}}' => "Maksimum filesize upload adalah {{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "Jenis berkas yang didukung / extensions adalah: ({{LIST}})", - 'Database summary' => "Database ringkasan", - 'Server Variables' => "Variabel server", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "Setiap objek yang ada dengan nama yang sama harus dijatuhkan secara manual sebelum menjalankan perintah penciptaan", - 'Only create commands are accepted' => "Hanya membuat perintah yang diterima", - 'User ID' => "User ID", - 'Password' => "Password", - 'Login' => "Login", - 'Create new database object' => "Buat database baru objek", - 'Enter command for object creation' => "Masukkan perintah untuk pembuatan obyek", - 'Submit' => "Menyerahkan", - 'Show blob data as: {{TYPE}}' => "Tampilkan gumpalan data sebagai: {{TYPE}}", - 'Blob data for column {{NAME}}' => "Gumpalan data untuk kolom {{NAME}}", - 'Create command for {{TYPE}} {{NAME}}' => "Buat perintah untuk {{TYPE}} {{NAME}}", - 'Table Engine (type)' => "Tabel Engine (tipe)", - 'Change Table Type' => "Ubah Tabel Jenis", - 'The requested page is not available on the server' => "Halaman yang diminta tidak tersedia di server", - 'Error' => "Kesalahan", - 'It appears that you attempted to submit an invalid request to the server' => "Tampak bahwa Anda mencoba untuk mengirim permintaan ke server tidak valid", - 'The request has been denied. Reloading the page might solve the problem' => "Permintaan telah ditolak. Ulang halaman mungkin menyelesaikan masalah", - 'Access Denied' => "Akses ditolak", - 'Help' => "Bantuan", - 'To see most up-to-date help contents, please visit {{LINK}}' => "Untuk melihat isi paling up-to-date membantu, silakan kunjungi {{LINK}}", - 'It appears that your browser session has expired' => "Tampaknya sesi browser Anda telah berakhir", - 'Please refresh the webpage to re-login' => "Harap refresh laman web untuk re-login", - 'Table information' => "Tabel informasi", - 'Edit' => "Edit", - 'Save' => "Simpan", - 'Either the database is empty, or there was an error retrieving list of database objects' => "Entah database kosong, atau ada daftar error mengambil objek database", - 'Please try closing and re-opening this dialog again' => "Silakan mencoba menutup dan membuka kembali dialog ini lagi", - 'Structure' => "Struktur", - 'Table Data' => "Tabel Data", - 'Structure and Table Data' => "Struktur dan Data Tabel", - 'Options' => "Pilihan", - 'Set Auto increment field values to NULL' => "Tetapkan nilai-nilai peningkatan lapangan Otomatis ke NULL", - 'Add DROP command before create statements' => "Tambahkan DROP perintah sebelum membuat laporan", - 'Export' => "Ekspor", - 'Import' => "Impor", - 'Export Database' => "Ekspor Database", - 'Export Table' => "Tabel Ekspor", - 'Server information' => "Informasi server", - 'Server' => "Server", - 'Version comment' => "Versi komentar", - 'Character sets' => "Karakter set", - 'Server character set' => "Server set karakter", - 'Client character set' => "Klien set karakter", - 'Database character set' => "Database set karakter", - 'Results character set' => "Hasil set karakter", - 'Export As' => "Ekspor Sebagai", - 'Insert Statements' => "Masukkan Laporan", - 'Include field names in query' => "Sertakan nama field dalam query", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Plain Text (Satu catatan per baris)", - 'Fields separated by:' => "Fields dipisahkan oleh:", - 'Export Results' => "Ekspor Hasil", - 'Select SQL batch file to import' => "Pilih file batch SQL untuk mengimpor", - 'Continue processing even if error occurs' => "Melanjutkan pengolahan bahkan jika terjadi kesalahan", - 'Basic Information' => "Informasi Dasar", - 'Table Properties' => "Tabel Properties", - 'Table Name' => "Nama Tabel", - 'Field Name' => "Nama Field", - 'Data Type' => "Jenis Data", - 'Length' => "Panjang", - 'Default value' => "Nilai default", - 'Unsigned' => "Unsigned", - 'Zero Fill' => "Zero Isi", - 'Primary Key' => "Kunci utama", - 'Auto Increment' => "Auto Increment", - 'Not NULL' => "Tidak NULL", - 'Character Set' => "Character Set", - 'Collation' => "Pemeriksaan", - 'Comment' => "Komentar", - 'Waiting for table information to be submitted' => "Menunggu tabel informasi yang disampaikan", - 'Add field' => "Tambahkan bidang", - 'Delete selected field' => "Hapus yang dipilih lapangan", - 'Clear Table Information' => "Hapus Tabel Informasi", - 'List of values' => "Daftar nilai", - 'Query Results' => "Hasil Query", - 'Data for {{TABLE}}' => "Data untuk {{TABLE}}", - 'Select tables to be analyzed/repaired' => "Pilih tabel yang akan dianalisis / diperbaiki", - 'Operation to perform' => "Operasi untuk melakukan", - 'Analyze' => "Menganalisa", - 'Check' => "Periksa", - 'Optimize' => "Optimalkan", - 'Repair' => "Perbaikan", - 'Skip Binary logging' => "Skip Binary penebangan", - 'Default' => "Default", - 'Quick' => "Cepat", - 'Fast' => "Cepat", - 'Medium' => "Medium", - 'Extended' => "Luas", - 'Changed' => "Berubah", - 'Use Frm files (MyISAM tables)' => "Gunakan FRM file (tabel MyISAM)", - 'User Information' => "Informasi Pengguna", - 'Global Privileges' => "Global Keistimewaan", - 'Database Privileges' => "Database Keistimewaan", - 'Import File' => "Import File", - 'Index Manager' => "Index Manager", - 'Edit table structure' => "Edit struktur tabel", - 'Save All Changes' => "Simpan Semua Perubahan", - 'Changes are not saved until you press [Save All Changes]' => "Perubahan tidak disimpan sampai Anda menekan [Simpan Semua Perubahan]", - 'Field Length' => "Field Panjang", - 'Select objects to include in export' => "benda Pilih untuk memasukkan ekspor", - 'Export type' => "Jenis Ekspor", - 'Select All/None' => "Pilih Semua / Tidak ada", - 'Add User' => "Tambah Pengguna", - 'Update User' => "Update User", - 'Delete selected User' => "Hapus yang dipilih Pengguna", - 'Remove Password' => "Hapus Password", - 'Select tables to search' => "Pilih tabel untuk mencari", - 'Search Options' => "Pilihan Pencarian", - 'Search in following field types' => "Cari dalam mengikuti jenis bidang", - 'Numeric Fields' => "Numeric Fields", - 'Character Fields' => "Karakter Fields", - 'Text Fields' => "Bidang Teks", - 'Date/Time Fields' => "Tanggal / Waktu Fields", - 'Comparison Type' => "Perbandingan Jenis", - 'Text to search' => "Teks untuk mencari", - 'Search' => "Cari", - 'Search Results' => "Hasil Pencarian", - 'Number of matches' => "Jumlah pertandingan", - 'Search results for {{KEYWORD}} in the database' => "Hasil pencarian untuk {{KEYWORD}} dalam database", - '{{NUM}} match(es)' => "{{NUM}} match (es)", - 'Copy query to editor' => "Salin query ke editor", - 'Done' => "Done", - 'SQL Editor' => "SQL Editor", - 'Create Copy' => "Buat Salin", - 'Minimize All' => "Minimalkan Semua", - 'Copy Record(s)' => "Salin Record (s)", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "Comma Separated (CSV untuk Excel)", - 'Select data file to import' => "Pilih file data untuk mengimpor", - 'Select table for data import' => "Pilih tabel untuk data impor", - 'First line contains column names' => "Baris pertama berisi nama kolom", - 'Select objects to operate upon' => "Pilih objek yang beroperasi atas", - 'Operations to perform' => "Operasi untuk melakukan", - 'Add prefix string to name' => "Tambahkan string prefiks untuk nama", - 'Delete prefix string from name' => "Hapus string prefiks dari nama", - 'Command text' => "Perintah teks", - 'DROP selected database objects' => "DROP objek database yang dipilih", - 'Batch operation results' => "Batch operasi hasil", - 'Operation' => "Operasi", - 'Status' => "Status", - '{{NUM}} queries generated' => "{{NUM}} query yang dihasilkan", - 'Please select one or more operations to perform' => "Silahkan pilih satu atau lebih operasi untuk melakukan", - 'Quick Search' => "Pencarian Cepat", - '{{NAME}} client library is not installed' => "{{NAME}} perpustakaan klien tidak terpasang", - '{{NAME}} extension is not installed' => "{{NAME}} ekstensi tidak diinstal", - 'SQLite database folder is inaccessible or not writable' => "Folder database SQLite tidak bisa diakses atau tidak dapat ditulis", - 'Maximize/Restore Results Pane' => "Maksimalkan / Kembalikan Pane Hasil", - 'Select databases to operate upon' => "Pilih database untuk beroperasi pada", - 'DROP selected databases' => "DROP database yang dipilih", - 'The following operation is irreversible' => "Operasi berikut ireversibel", - 'Potential data loss might occur' => "Potensi kehilangan data dapat terjadi", - 'Add TRUNCATE command before insert statements' => "Tambahkan truncate perintah sebelum pernyataan insert", - 'Select objects to include in backup' => "Pilih benda-benda dimasukkan ke dalam cadangan", - 'Backup folder does not exist or is not writable' => "Folder backup tidak ada atau tidak dapat ditulis", - 'Backup type' => "Backup jenis", - 'Database backup successfully created' => "Backup database berhasil dibuat", - 'Failed to create database backup' => "Gagal untuk membuat backup database", - 'Generate Bulk insert statements' => "Menghasilkan laporan Massal menyisipkan", - 'Maximum size of SQL statement' => "Maksimum ukuran pernyataan SQL", - 'Show record count with table names' => "Tampilkan count record dengan nama tabel", - 'Sort Table listing by' => "Urutkan berdasarkan Tabel daftar", - 'Name' => "Nama", - 'Last Update Time' => "Waktu Update Terakhir", - 'Maximum records to display in result set' => "Catatan maksimum yang ditampilkan dalam hasil set", - 'Show popup dialog for editing large text data' => "Tampilkan popup dialog untuk mengedit data teks besar", - 'Miscellaneous' => "Bermacam-macam", - 'Reset all confirmation dialogs' => "Atur ulang semua dialog konfirmasi", - 'Record Editing' => "Rekam Editing", - 'Exclude Table type' => "Kecualikan jenis Table", - 'Exclude Table Character set' => "Kecualikan Table set Karakter", - 'Backup filename' => "Backup file", - 'Invalid filename format' => "Format nama file tidak valid", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "semua", - 'all selected' => "semua dipilih", - 'An error occured while refreshing the object list.' => "Terjadi kesalahan saat menyegarkan daftar objek.", - 'Are you sure you want to clear all field information from table?' => "Apakah Anda yakin ingin menghapus semua informasi lapangan dari tabel?", - 'Are you sure you want to delete this user account?' => "Apakah Anda yakin ingin menghapus akun pengguna?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "Apakah Anda yakin ingin DROP semua objek dari database {{NAME}}?", - 'Are you sure you want to DROP selected objects?' => "Anda yakin ingin DROP objek yang dipilih?", - 'Are you sure you want to DROP the database {{NAME}}?' => "Apakah Anda yakin ingin DROP database {{NAME}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "Apakah Anda yakin ingin menjatuhkan benda ini? {{NAME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "Apakah Anda yakin ingin mengeksekusi query {{SELECTED}}?", - 'Are you sure you want to logout?' => "Apakah Anda yakin ingin logout?", - 'Are you sure you want to truncate the table {{NAME}}?' => "Apakah Anda yakin ingin memotong tabel {{NAME}}?", - 'Blob Data [{{SIZE}}]' => "Data Blob [{{SIZE}}]", - 'Cancel' => "Membatalkan", - 'Check for Updates' => "Periksa pembaruan", - 'Clear command history?' => "Hapus perintah sejarah?", - 'Close' => "Dekat", - 'Confirm Action' => "Konfirmasi Aksi", - 'Confirm and do not ask me again about this choice' => "Konfirmasi dan jangan tanya saya lagi tentang pilihan ini", - 'Copy Object' => "Salin Obyek", - 'Create Database' => "Buat Database", - 'Create Primary Index on this field' => "Buat Primer Indeks di bidang ini", - 'Databases' => "Database", - 'Default value [Use quotes to specify string values]' => "Default nilai [Gunakan tanda kutip untuk menentukan nilai-nilai string]", - 'Disallow NULL values in Field' => "Larang NULL nilai-nilai di Lapangan", - 'Enter new index name' => "Masukkan nama indeks baru", - 'Enter new name for the database object' => "Masukkan nama baru untuk objek database", - 'Enter the text to search in database' => "Masukkan teks untuk mencari dalam database", - 'Error' => "Kesalahan", - 'Events' => "Acara", - 'Execute query' => "Jalankan query", - 'Exports results' => "Hasil Ekspor", - 'Failed to refresh the results.' => "Gagal me-refresh hasilnya.", - 'Field Datatype' => "Lapangan datatype", - 'Field Name' => "Nama Field", - 'Field value is Auto Incremented' => "Field nilai adalah Auto bertambah", - 'Functions' => "Fungsi", - 'Indexes Updated' => "Indeks Diperbarui", - 'Maximum Length of field value' => "Panjang Maksimum nilai bidang", - 'Navigation Error. Try reloading the page' => "Navigasi Error. Coba reload halaman", - 'New settings saved and applied' => "pengaturan baru disimpan dan diterapkan", - 'New version is available' => "Versi baru tersedia", - 'Next' => "Berikutnya", - 'No' => "Tidak ada", - 'No Table selected' => "No Tabel yang dipilih", - 'Not enough room to show this pane.' => "Tidak cukup ruang untuk menunjukkan pane ini.", - 'OK' => "OK", - 'One or more field information is incomplete' => "Satu atau lebih informasi lapangan tidak lengkap", - 'Open' => "Buka", - 'Operation failed' => "Operasi gagal", - 'Pad field values with leading zeros' => "Pad lapangan nilai dengan nol terkemuka", - 'Pane' => "Pane", - 'Passwords do not match' => "Kata sandi tidak cocok", - 'Pin' => "Pin", - 'Please select one or more operations to perform' => "Silahkan pilih satu atau lebih operasi untuk melakukan", - 'Please type in one or more queries in the SQL editor!' => "Silahkan ketik dalam satu atau lebih pertanyaan di editor SQL!", - 'Please wait...' => "Silakan tunggu ...", - 'Previous' => "Sebelumnya", - 'Procedures' => "Prosedur", - 'Prompt' => "Cepat", - 'Refresh results' => "Refresh hasil", - 'Refreshing object list' => "Refreshing daftar objek", - 'Rename Object' => "Ubah nama Objek", - 'Resize' => "Resize", - 'Results page:' => "Hasil Halaman:", - 'Select a database to view privileges for the user' => "Pilih database untuk melihat hak bagi pengguna", - 'Select an index to view / edit its details' => "Pilih indeks untuk melihat / edit rinciannya", - 'Select at least one field type for searching' => "Pilih setidaknya satu jenis lapangan untuk mencari", - 'Select objects to operate upon' => "Pilih objek yang beroperasi atas", - 'selector' => "pemilih", - 'Slide Open' => "Slide Terbuka", - 'Table information requires at least one valid field' => "informasi Tabel memerlukan setidaknya satu bidang yang valid", - 'Table name is required' => "Nama tabel diperlukan", - 'Table successfully created' => "Tabel berhasil dibuat", - 'Table successfully modified' => "Tabel berhasil diubah", - 'Tables' => "Tabel", - 'Text Data [{{SIZE}}]' => "Data teks [{{SIZE}}]", - 'There is no record in the results to export' => "Tidak ada catatan dalam hasil ekspor", - 'This attribute is not required for selected field type' => "Atribut ini tidak diperlukan untuk jenis bidang yang dipilih", - 'Triggers' => "Pemicu", - 'Un-Pin' => "Un-Pin", - 'Unsigned numbered field only' => "Unsigned nomor satunya bidang", - 'Update check failed' => "Memperbarui memeriksa gagal", - 'User information is incomplete or invalid' => "Pengguna informasi tidak lengkap atau tidak valid", - 'User Manager' => "Pengelola Pengguna", - 'Views' => "Tampilan", - 'WARNING' => "PERINGATAN", - 'Yes' => "Ya", - 'You have the latest version' => "Anda memiliki versi terbaru", - - ); -?> diff --git a/lang/it.php b/lang/it.php deleted file mode 100644 index a2c6626..0000000 --- a/lang/it.php +++ /dev/null @@ -1,463 +0,0 @@ - "Uso di database", - 'Drop Database' => "DROP DATABASE", - 'Empty Database' => "Database vuoto", - 'Drop all tables from this database' => "Eliminare tutte le tabelle di questo database", - 'Select statement' => "Seleziona dichiarazione", - 'Insert statement' => "Inserisci dichiarazione", - 'Update statement' => "Aggiornamento dichiarazione", - 'Describe' => "Descrivere", - 'Show create command' => "Mostra Creare comando", - 'View data' => "Visualizza i dati", - 'Alter Table' => "Alter Table", - 'Indexes' => "Indici", - 'Engine Type' => "Tipo di motore", - 'More operations' => "Altre operazioni", - 'Truncate' => "Troncare", - 'Drop' => "Goccia", - 'Rename' => "Rinomina", - 'Export table data' => "Esportare tabella di dati", - 'Create Table' => "Crea tabella", - 'Create View' => "Create View", - 'Create Procedure' => "Create Procedure", - 'Create Function' => "Crea Funzione", - 'Create Trigger' => "Creare Trigger", - 'Create Event' => "Crea evento", - 'Show/Hide Panel' => "Mostra / Nascondi pannello", - 'Show/Hide Header' => "Mostra / Nascondi intestazione", - 'Copy all queries to clipboard' => "Copia negli appunti interroga tutti", - 'Clear history' => "Cancella cronologia", - 'Copy Column values' => "Copia colonna valori", - 'Copy to clipboard' => "Copia nella clipboard", - 'Generate SQL Filter' => "Generate SQL Filtro", - 'Database Manager' => "Database Manager", - 'Manage databases' => "Gestione dei database", - - // main menu related text - 'Database' => "Database", - 'Refresh' => "Aggiorna", - 'Refresh database object list' => "Aggiorna elenco di oggetti di database", - 'Create new' => "Crea nuovo", - 'Export' => "Export", - 'Export database to external file' => "Esporta in un file di database esterno", - 'Objects' => "Oggetti", - 'Create Table' => "Crea tabella", - 'Create a new table in the database' => "Creare una nuova tabella nel database", - 'Create View' => "Create View", - 'Create a new view in the database' => "Creare una nuova visualizzazione nel database", - 'Create Stored Procedure' => "Creare Stored Procedure", - 'Create a new stored procedure in the database' => "Creare una nuova stored procedure nel database", - 'Create Function' => "Crea Funzione", - 'Create a new user defined function in the database' => "Creare un nuovo utente funzione definita nel database", - 'Create Trigger' => "Creare Trigger", - 'Create a new trigger in the database' => "Crea un nuovo trigger del database", - 'Create Event' => "Crea evento", - 'Create a new event in the database' => "Creare un nuovo evento nel database", - 'Data' => "Data", - 'Import batch file' => "Importazione di file batch", - 'Import multiple queries from batch file' => "Importa query multiple di file batch", - 'Export database' => "Esportazione del database", - 'Export database to batch file as sql dump' => "Esportazione del database in un file batch come dump sql", - 'Export current results' => "Esportazione dei risultati in corso", - 'Export query results to clipboard or files' => "i risultati delle query di esportazione negli appunti o file", - 'Tools' => "Strumenti", - 'Process Manager' => "Process Manager", - 'View and manage database processes' => "Visualizzare e gestire i processi di database", - 'Repair Tables' => "Riparazione Tabelle", - 'Analyze and repair database tables' => "Analizzare e tabelle di database di riparazione", - 'User Manager' => "User Manager", - 'Manage database users' => "Gestire gli utenti del database", - 'Search in Database' => "Cerca nel database", - 'Search for text in the database' => "Cerca testo nel database", - 'Information' => "Informazioni", - 'Server/Connection Details' => "Server / Dettagli di connessione", - 'View server configuration' => "Configurazione del server View", - 'View server and connection details' => "Guarda server e connessioni dettagli", - 'Server Variables' => "Variabili server", - 'Database Summary' => "Database Sintesi", - 'View current database summary stats' => "Visualizza database corrente sintesi statistiche", - 'Interface' => "Interfaccia", - 'Options' => "Opzioni", - 'Configure application options' => "Configurare le opzioni di applicazione", - 'UI Theme' => "UI a tema", - 'Database Objects' => "Oggetti di database", - 'Toggle Object Viewer' => "Toggle Object Viewer", - 'Help contents' => "Aiuto contenuti", - 'Learn the basics of using MyWebSQL' => "Nozioni di base di utilizzare MyWebSQL", - 'QuickStart Tutorials' => "QuickStart Tutorial", - 'See quick hands-on tutorial of MyWebSQL interface' => "Vedi veloce interfaccia hands-on di tutorial MyWebSQL", - 'Online documentation' => "La documentazione online", - 'View online documentation on project website' => "Vista la documentazione online sul sito web del progetto", - 'Request a Feature' => "Richiedere una nuova funzione", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "Se desideri che la tua caratteristica più favorito di far parte di MyWebSQL, clicca qui per informare su di esso", - 'Report a Problem' => "Segnala un problema", - 'Check for updates' => "Controlla aggiornamenti", - 'Check for updated versions of the application online' => "Verificare la presenza di versioni aggiornate della domanda on-line", - 'Logout' => "Logout", - 'Logout from this session' => "Esci da questa sessione", - 'Language' => "Lingua", - 'SQL Editor' => "SQL Editor", - 'Toggle SQL Editor' => "Toggle Editor SQL", - 'Experimental' => "Sperimentale", - 'Import table data' => "Importare dati di una tabella", - 'Import table data from external file' => "Importare i dati della tabella da file esterno", - 'Batch operations' => "Operazioni batch", - 'Perform one or more batch operations on database' => "Eseguire una o più operazioni batch sul database", - 'Create a new schema in the database' => "Creare un nuovo schema del database", - 'Create Schema' => "Creazione dello schema", - 'Table Description' => "Descrizione Tabella", - 'Database Manager' => "Database Manager", - 'Manage databases' => "Gestione dei database", - 'Backup database on the server as SQL dump' => "Database di Backup sul server come dump SQL", - 'Backup Database' => "Database Backup", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "Il tuo browser sembra essere molto vecchio e non supporta tutte le funzionalità necessarie per eseguire MyWebSQL.", - 'Try using a newer version of the browser to run this application.' => "Provare a usare una nuova versione del browser per eseguire l'applicazione", - - // text used on various screens in the interface - 'Visit Project website' => "Visita il sito web del progetto", - 'Version' => "versione", - 'Loading' => "Caricamento", - 'Quick Edit Options' => "Quick Edit Options", - 'Press {{KEY}} to set NULL' => "Premere {{KEY}} per impostare NULL", - 'MySQL Server' => "MySQL Server", - 'Logged in as: {{USER}}' => "Collegato come: {{USER}}", - 'Results' => "Risultati", - 'Messages' => "Messaggi", - 'Information' => "Informazioni", - 'History' => "Storia", - 'There are no results to show in this view' => "Non ci sono risultati per questa visualizzazione", - 'Refresh results' => "Aggiorna i risultati", - 'Please wait' => "Attendere prego", - 'Query All' => "Tutte le query", - 'Query' => "Query", - 'Add Record' => "Aggiungi record", - 'Delete Record(s)' => "Elimina record (s)", - 'Update Record(s)' => "Aggiornamento Record (s)", - 'Generate SQL' => "Generate SQL", - 'Database name' => "Il nome del database", - 'Select database after creation' => "Seleziona database dopo la creazione", - 'Database connection failed to the server' => "connessione al database non riuscita al server", - 'Host' => "Host", - 'User' => "Utente", - 'Select a database to begin' => "Selezionare un database per iniziare", - 'Select/unselect All records' => "Selezionare / deselezionare tutti i record", - 'Primary key column' => "Colonna chiave primaria", - 'Unique key column' => "Unica colonna chiave", - 'Showing records {{START}} - {{END}}' => "Risultati record {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "Risultati primo {{MAX}} registra solo", - '1 query successfully executed' => "1 query eseguito con successo", - '{{NUM}} queries successfully executed' => "{{NUM}} le query eseguite con successo", - '{{NUM}} record(s) were affected' => "{{NUM}} record (s) sono state colpite", - '{{NUM}} record(s) updated' => "{{NUM}} record (s) aggiornato", - 'Error occurred while executing the query' => "Errore durante l'esecuzione della query", - '{{NUM}} queries failed to execute' => "{{NUM}} non è riuscito a eseguire le query", - 'Click to view/edit column data [{{NUM}} Bytes]' => "Clicca per visualizzare / modificare i dati della colonna [{{NUM}} Bytes]", - 'Blob data is not editable' => "dati Blob non è modificabile", - 'Blob data saved' => "Blob dati salvati", - 'Failed to save blob data' => "Impossibile salvare i dati blob", - 'The process with id [{{PID}}] was killed' => "Il processo con id [{{PID}}] è stato ucciso", - 'No such process [id = {{PID}}]' => "Il processo non è [id = {{PID}}]", - 'Select a process and click the button to kill the process' => "Selezionare un processo e fare clic sul pulsante per uccidere il processo", - 'Process ID' => "ID di processo", - 'Command' => "Comando", - 'Time' => "Time", - 'Info' => "Info", - 'Kill Process' => "Kill Process", - 'Failed to get process list' => "Impossibile ottenere l'elenco dei processi", - 'The command executed successfully' => "Il comando eseguito con successo", - 'Invalid server configuration' => "Configurazione del server non valida", - 'Invalid Credentials' => "Valide credenziali", - 'New database successfully created' => "Nuovo database creato con successo", - 'File upload failed. Please try again' => "Il caricamento del file non riuscito. Si prega di riprovare", - 'No queries were executed during import' => "No query sono state eseguite durante l'importazione", - 'Maximum upload filesize is {{SIZE}}' => "Massima di upload filesize è {{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "tipi di file supportati / estensioni sono: ({{LIST}})", - 'Database summary' => "Banca dati di sintesi", - 'Server Variables' => "Variabili server", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "Qualsiasi oggetto esistente con lo stesso nome dovrebbe essere eliminato manualmente prima di eseguire il comando di creazione", - 'Only create commands are accepted' => "Solo creare comandi sono accettati", - 'User ID' => "User ID", - 'Password' => "Password", - 'Login' => "Login", - 'Create new database object' => "Crea un nuovo oggetto di database", - 'Enter command for object creation' => "Inserisci il comando per la creazione di oggetti", - 'Submit' => "Invia", - 'Show blob data as: {{TYPE}}' => "Mostra blob dati come: {{TYPE}}", - 'Blob data for column {{NAME}}' => "Blob dati per la colonna {{NAME}}", - 'Create command for {{TYPE}} {{NAME}}' => "Creare comando per {{TYPE}} {{NAME}}", - 'Table Engine (type)' => "Tabella del motore (tipo)", - 'Change Table Type' => "Cambia Tipo di tabella", - 'The requested page is not available on the server' => "La pagina richiesta non è disponibile sul server", - 'Error' => "Errore", - 'It appears that you attempted to submit an invalid request to the server' => "Sembra che si è tentato di presentare una richiesta non valida al server", - 'The request has been denied. Reloading the page might solve the problem' => "La richiesta è stata negata. Ricaricare la pagina potrebbe risolvere il problema", - 'Access Denied' => "Accesso negato", - 'Help' => "Aiuto", - 'To see most up-to-date help contents, please visit {{LINK}}' => "Per visualizzare il contenuto di aiuto più up-to-date, si prega di visitare il {{LINK}}", - 'It appears that your browser session has expired' => "Sembra che la sessione del browser è scaduta", - 'Please refresh the webpage to re-login' => "Aggiorna la pagina web di ri-login", - 'Table information' => "Tabella informazioni", - 'Edit' => "Modifica", - 'Save' => "Salva", - 'Either the database is empty, or there was an error retrieving list of database objects' => "Sia il database è vuoto, o si è verificato un errore durante il recupero elenco di oggetti di database", - 'Please try closing and re-opening this dialog again' => "Si prega di provare a chiudere e riaprire nuovamente questa finestra", - 'Structure' => "Struttura", - 'Table Data' => "Tabella dei dati", - 'Structure and Table Data' => "Struttura e Tabella dati", - 'Options' => "Opzioni", - 'Set Auto increment field values to NULL' => "Impostare i valori di campo incremento automatico a NULL", - 'Add DROP command before create statements' => "Aggiungi comando DROP prima di creare istruzioni", - 'Export' => "Export", - 'Import' => "Importa", - 'Export Database' => "Esportazione del database", - 'Export Table' => "Esporta tabella", - 'Server information' => "Informazioni sul server", - 'Server' => "Server", - 'Version comment' => "Versione commento", - 'Character sets' => "I set di caratteri", - 'Server character set' => "Server set di caratteri", - 'Client character set' => "Client set di caratteri", - 'Database character set' => "Database set di caratteri", - 'Results character set' => "Risultati set di caratteri", - 'Export As' => "Esporta come", - 'Insert Statements' => "Inserisci Dichiarazioni", - 'Include field names in query' => "Includi nomi di campo nella query", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Testo normale (un record per riga)", - 'Fields separated by:' => "Campi separati da:", - 'Export Results' => "Esporta risultati", - 'Select SQL batch file to import' => "Selezionare il file batch SQL per importare", - 'Continue processing even if error occurs' => "Continua ad elaborare, anche se di errore si verifica", - 'Basic Information' => "Informazioni di base", - 'Table Properties' => "Proprietà tabella", - 'Table Name' => "Nome tabella", - 'Field Name' => "Nome del campo", - 'Data Type' => "Tipo di dati", - 'Length' => "Lunghezza", - 'Default value' => "Valore di default", - 'Unsigned' => "Unsigned", - 'Zero Fill' => "Zero Fill", - 'Primary Key' => "Chiave primaria", - 'Auto Increment' => "Auto Increment", - 'Not NULL' => "Non NULL", - 'Character Set' => "Set di caratteri", - 'Collation' => "Confronto", - 'Comment' => "Commenta", - 'Waiting for table information to be submitted' => "In attesa di informazioni da tavola da presentare", - 'Add field' => "Aggiungi campo", - 'Delete selected field' => "Elimina campo selezionato", - 'Clear Table Information' => "Chiara tabella di informazioni", - 'List of values' => "Elenco dei valori", - 'Query Results' => "Risultati query", - 'Data for {{TABLE}}' => "I dati per {{TABLE}}", - 'Select tables to be analyzed/repaired' => "Selezionare le tabelle da analizzare / riparare", - 'Operation to perform' => "Operazione da eseguire", - 'Analyze' => "Analizzare", - 'Check' => "Check", - 'Optimize' => "Ottimizzare", - 'Repair' => "Riparazione", - 'Skip Binary logging' => "Salta logging binario", - 'Default' => "Default", - 'Quick' => "Quick", - 'Fast' => "Fast", - 'Medium' => "Media", - 'Extended' => "Extended", - 'Changed' => "Cambiato", - 'Use Frm files (MyISAM tables)' => "Utilizzare i file Frm (tabelle MyISAM)", - 'User Information' => "Informazioni utente", - 'Global Privileges' => "Global Privileges", - 'Database Privileges' => "Database privilegi", - 'Import File' => "Importa file", - 'Index Manager' => "Index Manager", - 'Edit table structure' => "Modificare la struttura delle tabelle", - 'Save All Changes' => "Salva tutte le modifiche", - 'Changes are not saved until you press [Save All Changes]' => "Le modifiche non vengono salvate fino a quando si preme [Salva tutte le modifiche]", - 'Field Length' => "Campo Lunghezza", - 'Select objects to include in export' => "Selezionare gli oggetti da includere nella esportazione", - 'Export type' => "Export tipo", - 'Select All/None' => "Seleziona tutti o nessuno", - 'Add User' => "Aggiungi Utente", - 'Update User' => "Aggiorna utente", - 'Delete selected User' => "Elimina Utente selezionato", - 'Remove Password' => "Rimuovere la password", - 'Select tables to search' => "Selezionare le tabelle per la ricerca", - 'Search Options' => "Opzioni di ricerca", - 'Search in following field types' => "Cerca nei seguenti tipi di campo", - 'Numeric Fields' => "I campi numerici", - 'Character Fields' => "Personaggio Campi", - 'Text Fields' => "Campi di testo", - 'Date/Time Fields' => "Data / Ora Fields", - 'Comparison Type' => "Tipo di confronto", - 'Text to search' => "Testo da cercare", - 'Search' => "Cerca", - 'Search Results' => "Risultati della ricerca", - 'Number of matches' => "Numero di partite", - 'Search results for {{KEYWORD}} in the database' => "Risultati della ricerca per {{keyword}} nel database", - '{{NUM}} match(es)' => "{{NUM}} match (es)", - 'Copy query to editor' => "Copiare la query per editor", - 'Done' => "Done", - 'SQL Editor' => "SQL Editor", - 'Create Copy' => "Crea copia", - 'Minimize All' => "Ridurre al minimo tutte le", - 'Copy Record(s)' => "Copy Record (s)", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "Separati da virgola (CSV per Excel)", - 'Select data file to import' => "Selezionare il file di dati da importare", - 'Select table for data import' => "Selezionare la tabella per l'importazione dei dati", - 'First line contains column names' => "La prima riga contiene i nomi delle colonne", - 'Select objects to operate upon' => "Selezionare gli oggetti di operare sia con", - 'Operations to perform' => "Le operazioni da eseguire", - 'Add prefix string to name' => "Aggiungi stringa di prefisso per chiamare", - 'Delete prefix string from name' => "Eliminare stringa di prefisso dal nome", - 'Command text' => "Comando di testo", - 'DROP selected database objects' => "Eliminare oggetti di database selezionati", - 'Batch operation results' => "Batch di funzionamento risultati", - 'Operation' => "Operazione", - 'Status' => "Stato", - '{{NUM}} queries generated' => "{{NUM}} query generate", - 'Please select one or more operations to perform' => "Seleziona una o più operazioni da eseguire", - 'Quick Search' => "Ricerca veloce", - '{{NAME}} client library is not installed' => "{{NAME}} libreria client non è installato", - '{{NAME}} extension is not installed' => "{{NAME}} estensione non è installato", - 'SQLite database folder is inaccessible or not writable' => "Cartella del database SQLite è inaccessibile o non scrivibile", - 'Maximize/Restore Results Pane' => "Ingrandisci / Ripristina riquadro Risultati", - 'Select databases to operate upon' => "Selezionare i database di operare sia con", - 'DROP selected databases' => "GOCCIA database selezionati", - 'The following operation is irreversible' => "La seguente operazione è irreversibile", - 'Potential data loss might occur' => "Potenziale perdita di dati può verificarsi", - 'Add TRUNCATE command before insert statements' => "Aggiungi TRUNCATE comando prima di istruzioni INSERT", - 'Select objects to include in backup' => "Selezionare gli oggetti da includere nel backup", - 'Backup folder does not exist or is not writable' => "Cartella di backup non esiste o non è scrivibile", - 'Backup type' => "Tipo di backup", - 'Database backup successfully created' => "Backup del database creato con successo", - 'Failed to create database backup' => "Impossibile creare il backup del database", - 'Generate Bulk insert statements' => "Generare istruzioni BULK INSERT", - 'Maximum size of SQL statement' => "Dimensione massima di istruzione SQL", - 'Show record count with table names' => "Mostra numero di record con i nomi delle tabelle", - 'Sort Table listing by' => "Ordina elenco Tabella di", - 'Name' => "Nome", - 'Last Update Time' => "Ultimo aggiornamento Tempo", - 'Maximum records to display in result set' => "Numero massimo di record da visualizzare nel set di risultati", - 'Show popup dialog for editing large text data' => "Mostra finestra di popup per la modifica di dati di grandi dimensioni di testo", - 'Miscellaneous' => "Varie", - 'Reset all confirmation dialogs' => "Ripristina tutte le finestre di dialogo di conferma", - 'Record Editing' => "Modifica dei record", - 'Exclude Table type' => "Escludi tipo tabella", - 'Exclude Table Character set' => "Escludi Table Set di caratteri", - 'Backup filename' => "Nome del file di backup", - 'Invalid filename format' => "Formato di file non valido", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "tutti", - 'all selected' => "tutti selezionati", - 'An error occured while refreshing the object list.' => "È verificato un errore durante l'aggiornamento l'elenco di oggetti.", - 'Are you sure you want to clear all field information from table?' => "Sei sicuro di voler cancellare tutte le informazioni di campo da tavolo?", - 'Are you sure you want to delete this user account?' => "Sei sicuro di voler cancellare questo account utente?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "Sei sicuro di voler eliminare tutti gli oggetti dal database di {{NAME}}?", - 'Are you sure you want to DROP selected objects?' => "Sei sicuro di voler rilasciare gli oggetti selezionati?", - 'Are you sure you want to DROP the database {{NAME}}?' => "Sei sicuro di voler eliminare il database {{NAME}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "Sei sicuro di voler far cadere questo oggetto? {{NAME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "Sei sicuro di voler eseguire {{SELECTED}} query?", - 'Are you sure you want to logout?' => "Sei sicuro di voler uscire?", - 'Are you sure you want to truncate the table {{NAME}}?' => "Sei sicuro di voler troncare la tabella {{NAME}}?", - 'Blob Data [{{SIZE}}]' => "I dati Blob [{{SIZE}}]", - 'Cancel' => "Annulla", - 'Check for Updates' => "Controlla aggiornamenti", - 'Clear command history?' => "Cancella la cronologia dei comandi?", - 'Close' => "Chiudi", - 'Confirm Action' => "Conferma di azione", - 'Confirm and do not ask me again about this choice' => "Conferma e non mi chiedete di nuovo di questa scelta", - 'Copy Object' => "Copia di oggetti", - 'Create Database' => "Crea database", - 'Create Primary Index on this field' => "Crea indice primario in questo settore", - 'Databases' => "Basi di dati", - 'Default value [Use quotes to specify string values]' => "Valore di default [Usa virgolette per specificare i valori di stringa]", - 'Disallow NULL values in Field' => "Non consentire valori NULL nel campo", - 'Enter new index name' => "Inserisci il nome del nuovo indice", - 'Enter new name for the database object' => "Inserisci il nuovo nome per l'oggetto di database", - 'Enter the text to search in database' => "Inserisci il testo da cercare nel database", - 'Error' => "Errore", - 'Events' => "Eventi", - 'Execute query' => "Eseguire la query", - 'Exports results' => "Esportazione dei risultati", - 'Failed to refresh the results.' => "Impossibile aggiornare i risultati.", - 'Field Datatype' => "Campo Tipo di dati", - 'Field Name' => "Nome del campo", - 'Field value is Auto Incremented' => "Il valore del campo è Auto incrementato", - 'Functions' => "Funzioni", - 'Indexes Updated' => "Indici Aggiornato", - 'Maximum Length of field value' => "Lunghezza massima del valore di campo", - 'Navigation Error. Try reloading the page' => "Errore di navigazione. Prova a ricaricare la pagina", - 'New settings saved and applied' => "Le nuove impostazioni salvate e applicate", - 'New version is available' => "La nuova versione è disponibile", - 'Next' => "Prossimo", - 'No' => "No", - 'No Table selected' => "Nessuna tabella selezionata", - 'Not enough room to show this pane.' => "Non abbastanza spazio per mostrare questo riquadro.", - 'OK' => "OK", - 'One or more field information is incomplete' => "Uno o più informazioni di campo è incompleto", - 'Open' => "Open", - 'Operation failed' => "Operazione non riuscita", - 'Pad field values with leading zeros' => "valori di campo Pad con zeri iniziali", - 'Pane' => "Riquadro", - 'Passwords do not match' => "Le password non coincidono", - 'Pin' => "Pin", - 'Please select one or more operations to perform' => "Seleziona una o più operazioni da eseguire", - 'Please type in one or more queries in the SQL editor!' => "Si prega di digitare una o più query nell'editor SQL!", - 'Please wait...' => "Si prega di attendere ...", - 'Previous' => "Precedente", - 'Procedures' => "Procedure", - 'Prompt' => "Prompt", - 'Refresh results' => "Aggiorna i risultati", - 'Refreshing object list' => "Rinfrescante oggetto elenco", - 'Rename Object' => "Rinomina oggetto", - 'Resize' => "Ridimensiona", - 'Results page:' => "Pagina dei risultati:", - 'Select a database to view privileges for the user' => "Selezionare un database per visualizzare i privilegi per l'utente", - 'Select an index to view / edit its details' => "Selezionare un indice di visualizzare e modificare i suoi dettagli", - 'Select at least one field type for searching' => "Selezionare almeno un tipo di campo per la ricerca", - 'Select objects to operate upon' => "Selezionare gli oggetti di operare sia con", - 'selector' => "selettore", - 'Slide Open' => "Slide Open", - 'Table information requires at least one valid field' => "Tabella informazioni richiede almeno un campo valido", - 'Table name is required' => "nome della tabella è necessario", - 'Table successfully created' => "Tabella creato con successo", - 'Table successfully modified' => "Tabella modificata correttamente", - 'Tables' => "Tabelle", - 'Text Data [{{SIZE}}]' => "Dati di testo [{{SIZE}}]", - 'There is no record in the results to export' => "Non vi è alcun record nei risultati di esportare", - 'This attribute is not required for selected field type' => "Questo attributo non è richiesto per il tipo di campo selezionato", - 'Triggers' => "Trigger", - 'Un-Pin' => "Un-Pin", - 'Unsigned numbered field only' => "Unsigned numerato unico campo", - 'Update check failed' => "Aggiornamento non riuscito", - 'User information is incomplete or invalid' => "Utente informazioni sono incomplete o non valido", - 'User Manager' => "User Manager", - 'Views' => "Visite", - 'WARNING' => "ATTENZIONE", - 'Yes' => "Sì", - 'You have the latest version' => "Hai l'ultima versione", - - ); -?> diff --git a/lang/ja.php b/lang/ja.php deleted file mode 100644 index eebf00a..0000000 --- a/lang/ja.php +++ /dev/null @@ -1,463 +0,0 @@ - "データベースを使用", - 'Drop Database' => "データベースをドロップ", - 'Empty Database' => "空のデータベース", - 'Drop all tables from this database' => "このデータベースからすべてのテーブルを削除", - 'Select statement' => "Select文", - 'Insert statement' => "挿入文", - 'Update statement' => "Update文", - 'Describe' => "説明", - 'Show create command' => "createコマンドを表示", - 'View data' => "データを表示", - 'Alter Table' => "ALTER TABLE", - 'Indexes' => "インデックス", - 'Engine Type' => "エンジンタイプ", - 'More operations' => "以上の操作", - 'Truncate' => "切り捨て", - 'Drop' => "ドロップ", - 'Rename' => "名前の変更", - 'Export table data' => "テーブルデータのエクスポート", - 'Create Table' => "テーブルを作成", - 'Create View' => "ビューを作成", - 'Create Procedure' => "プロシージャを作成", - 'Create Function' => "関数を作成", - 'Create Trigger' => "トリガーを作成", - 'Create Event' => "イベントを作成", - 'Show/Hide Panel' => "パネルを表示/非表示", - 'Show/Hide Header' => "ヘッダを表示/非表示", - 'Copy all queries to clipboard' => "すべてのクエリーをクリップボードにコピー", - 'Clear history' => "履歴をクリア", - 'Copy Column values' => "カラム値をコピー", - 'Copy to clipboard' => "クリップボードにコピー", - 'Generate SQL Filter' => "SQLフィルタを生成", - 'Database Manager' => "データベースマネージャ", - 'Manage databases' => "データベースの管理", - - // main menu related text - 'Database' => "データベース", - 'Refresh' => "リフレッシュ", - 'Refresh database object list' => "データベースオブジェクトリストを更新", - 'Create new' => "新規作成", - 'Export' => "エクスポート", - 'Export database to external file' => "外部ファイルをデータベースにエクスポート", - 'Objects' => "オブジェクト", - 'Create Table' => "テーブルを作成", - 'Create a new table in the database' => "データベースに新しいテーブルを作成", - 'Create View' => "ビューを作成", - 'Create a new view in the database' => "データベースに新しいビューを作成", - 'Create Stored Procedure' => "ストアドプロシージャを作成", - 'Create a new stored procedure in the database' => "データベースに新しいストアドプロシージャを作成", - 'Create Function' => "関数を作成", - 'Create a new user defined function in the database' => "データベースに関数を定義して新しいユーザーを作成", - 'Create Trigger' => "トリガーを作成", - 'Create a new trigger in the database' => "データベースに新しいトリガを作成", - 'Create Event' => "イベントを作成", - 'Create a new event in the database' => "データベースに新しいイベントを作成", - 'Data' => "データ", - 'Import batch file' => "バッチファイルをインポート", - 'Import multiple queries from batch file' => "バッチファイルから複数のクエリをインポート", - 'Export database' => "データベースをエクスポート", - 'Export database to batch file as sql dump' => "SQLダンプとしてバッチファイルにデーターベースをエクスポート", - 'Export current results' => "現在の検索結果をエクスポート", - 'Export query results to clipboard or files' => "クエリの結果をクリップボードまたはファイルにエクスポート", - 'Tools' => "ツール", - 'Process Manager' => "プロセスマネージャ", - 'View and manage database processes' => "データベースプロセスの表示と管理", - 'Repair Tables' => "テーブルを修正", - 'Analyze and repair database tables' => "データベーステーブルの分析と修復", - 'User Manager' => "ユーザーマネージャ", - 'Manage database users' => "データベースユーザーを管理", - 'Search in Database' => "データベース内を検索", - 'Search for text in the database' => "データベース内のテキストを検索", - 'Information' => "情報", - 'Server/Connection Details' => "サーバ/接続の詳細", - 'View server configuration' => "サーバ設定を表示", - 'View server and connection details' => "サーバと接続の詳細表示", - 'Server Variables' => "サーバ変数", - 'Database Summary' => "データベースサマリー", - 'View current database summary stats' => "現在のデータベースの概要統計を表示", - 'Interface' => "インターフェイス", - 'Options' => "オプション", - 'Configure application options' => "アプリケーションのオプションを構成", - 'UI Theme' => "UIのテーマ", - 'Database Objects' => "データベースオブジェクト", - 'Toggle Object Viewer' => "オブジェクトビューアをトグル", - 'Help contents' => "ヘルプ内容", - 'Learn the basics of using MyWebSQL' => "MyWebSQLの基本的な使い方", - 'QuickStart Tutorials' => "クイックスタートチュートリアル", - 'See quick hands-on tutorial of MyWebSQL interface' => "MyWebSQLインターフェースのクイックハンズオンチュートリアルを参照", - 'Online documentation' => "オンラインマニュアル", - 'View online documentation on project website' => "プロジェクトウェブサイト上のオンラインドキュメントを表示", - 'Request a Feature' => "機能要求", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "MyWebSQLの最も好きな機能を通知する場合はこちらをクリック", - 'Report a Problem' => "問題を報告", - 'Check for updates' => "更新プログラムを確認", - 'Check for updated versions of the application online' => "アプリケーションの更新バージョンを確認", - 'Logout' => "ログアウト", - 'Logout from this session' => "このセッションからログアウト", - 'Language' => "言語", - 'SQL Editor' => "SQLエディタ", - 'Toggle SQL Editor' => "SQLエディタの切り替え", - 'Experimental' => "実験", - 'Import table data' => "テーブルデータをインポート", - 'Import table data from external file' => "外部ファイルからテーブルデータをインポート", - 'Batch operations' => "バッチ操作", - 'Perform one or more batch operations on database' => "データベース上の1つまたは複数のバッチ処理を実行", - 'Create a new schema in the database' => "データベースに新しいスキーマを作成", - 'Create Schema' => "スキーマを作成", - 'Table Description' => "表の説明", - 'Database Manager' => "データベースマネージャ", - 'Manage databases' => "データベースの管理", - 'Backup database on the server as SQL dump' => "SQLダンプとしてサーバー上のデータベースをバックアップ", - 'Backup Database' => "データベースをバックアップ", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "お使いのブラウザは非常に古いと思われ、MyWebSQLを実行するために必要なすべての機能をサポートしていません", - 'Try using a newer version of the browser to run this application.' => "このアプリケーションを実行するには、新しいバージョンのブラウザを使用してみてください", - - // text used on various screens in the interface - 'Visit Project website' => "プロジェクトのWebサイトを参照", - 'Version' => "バージョン", - 'Loading' => "ローディング", - 'Quick Edit Options' => "クイックエディットオプション", - 'Press {{KEY}} to set NULL' => "{{KEY}}を押してNULLを設定", - 'MySQL Server' => "MySQLサーバ", - 'Logged in as: {{USER}}' => "{{USER}}としてログイン", - 'Results' => "検索結果", - 'Messages' => "メッセージ", - 'Information' => "情報", - 'History' => "履歴", - 'There are no results to show in this view' => "このビューに表示する結果はありません", - 'Refresh results' => "結果を更新", - 'Please wait' => "しばらくお待ちください", - 'Query All' => "すべてのクエリ", - 'Query' => "クエリ", - 'Add Record' => "レコードを追加", - 'Delete Record(s)' => "レコードを削除", - 'Update Record(s)' => "レコードを更新", - 'Generate SQL' => "SQLを生成", - 'Database name' => "データベース名", - 'Select database after creation' => "作成後にデータベースを選択", - 'Database connection failed to the server' => "サーバーへのデータベース接続に失敗しました", - 'Host' => "ホスト", - 'User' => "ユーザー", - 'Select a database to begin' => "開始するデータベースを選択", - 'Select/unselect All records' => "すべてのレコードを選択/解除", - 'Primary key column' => "主キー列", - 'Unique key column' => "一意のキー列", - 'Showing records {{START}} - {{END}}' => "{{START}} - {{END}}のレコードを表示", - 'Showing first {{MAX}} records only' => "最初の{{MAX}}レコードのみ表示", - '1 query successfully executed' => "1クエリを正常に実行", - '{{NUM}} queries successfully executed' => "{{NUM}}クエリを正常に実行", - '{{NUM}} record(s) were affected' => "{{NUM}}レコードの影響を受けた", - '{{NUM}} record(s) updated' => "{{NUM}}レコードを更新", - 'Error occurred while executing the query' => "クエリ実行中にエラーが発生しました", - '{{NUM}} queries failed to execute' => "{{NUM}}クエリの実行に失敗しました", - 'Click to view/edit column data [{{NUM}} Bytes]' => "[{{NUM}}バイト]の列のデータの表示/編集をクリック", - 'Blob data is not editable' => "Blobデータは編集出来ませんでした", - 'Blob data saved' => "BLOBデータを保存", - 'Failed to save blob data' => "BLOBデータの保存に失敗しました", - 'The process with id [{{PID}}] was killed' => "idが[{{PID}}]のプロセスを殺しました", - 'No such process [id = {{PID}}]' => "[id = {{PID}}]のようなプロセスは存在しません", - 'Select a process and click the button to kill the process' => "プロセスを選択し、ボタンをクリックしてプロセスを強制終了", - 'Process ID' => "プロセスID", - 'Command' => "コマンド", - 'Time' => "時間", - 'Info' => "インフォメーション", - 'Kill Process' => "プロセスを殺す", - 'Failed to get process list' => "プロセスリストの取得に失敗しました", - 'The command executed successfully' => "コマンドが正常に実行されました", - 'Invalid server configuration' => "無効なサーバー構成", - 'Invalid Credentials' => "資格情報が無効です", - 'New database successfully created' => "新しいデータベースが正常に作成されました", - 'File upload failed. Please try again' => "ファイルのアップロードに失敗しました。もう一度やり直してください", - 'No queries were executed during import' => "インポート中に実行されたクエリはありません", - 'Maximum upload filesize is {{SIZE}}' => "最大アップロードファイルサイズは{{SIZE}}です", - 'Supported filetypes / extensions are: ({{LIST}})' => "サポートされているファイル形式/拡張子は({{LIST}})です", - 'Database summary' => "データベースの概要", - 'Server Variables' => "サーバ変数", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "同じ名前を持つ既存のオブジェクトは作成コマンドを実行する前に手動で削除する必要があります", - 'Only create commands are accepted' => "作成コマンドのみ許可", - 'User ID' => "ユーザーID", - 'Password' => "パスワード", - 'Login' => "ログイン", - 'Create new database object' => "新しいデータベースオブジェクトを作成", - 'Enter command for object creation' => "オブジェクトを作成するためのコマンドを入力", - 'Submit' => "送信", - 'Show blob data as: {{TYPE}}' => "{{TYPE}}としてBLOBデータを表示", - 'Blob data for column {{NAME}}' => "列{{NAME}}のBlobデータ", - 'Create command for {{TYPE}} {{NAME}}' => "{{TYPE}} {{NAME}}のコマンドを作成", - 'Table Engine (type)' => "表エンジン (type)", - 'Change Table Type' => "表タイプを変更", - 'The requested page is not available on the server' => "リクエストされたページはサーバー上では有効ではありません", - 'Error' => "エラー", - 'It appears that you attempted to submit an invalid request to the server' => "サーバーに無効な要求を送信しようとしたことが表示されます", - 'The request has been denied. Reloading the page might solve the problem' => "要求が拒否されました。ページをリロードすると問題が解決する可能性があります", - 'Access Denied' => "アクセス拒否", - 'Help' => "ヘルプ", - 'To see most up-to-date help contents, please visit {{LINK}}' => "最新のヘルプコンテンツを表示するには{{LINK}}を訪れてください", - 'It appears that your browser session has expired' => "ブラウザのセッションが期限切れになりました", - 'Please refresh the webpage to re-login' => "再ログインしてWebページを更新してください", - 'Table information' => "テーブル情報", - 'Edit' => "[編集]", - 'Save' => "保存", - 'Either the database is empty, or there was an error retrieving list of database objects' => "データベースが空であるか、またはデータベースのオブジェクトの検索リストにエラーがあります", - 'Please try closing and re-opening this dialog again' => "ダイアログを閉じ、再度このダイアログを開いてみてください", - 'Structure' => "構造", - 'Table Data' => "表データ", - 'Structure and Table Data' => "構造と表データ", - 'Options' => "オプション", - 'Set Auto increment field values to NULL' => "自動インクリメントフィールドの値をNULLに設定", - 'Add DROP command before create statements' => "ステートメントを作成する前にDROPコマンドを追加", - 'Export' => "エクスポート", - 'Import' => "インポート", - 'Export Database' => "データベースをエクスポート", - 'Export Table' => "テーブルをエクスポート", - 'Server information' => "サーバー情報", - 'Server' => "サーバー", - 'Version comment' => "バージョンコメント", - 'Character sets' => "文字セット", - 'Server character set' => "サーバーの文字セット", - 'Client character set' => "クライアントの文字セット", - 'Database character set' => "データベースの文字セット", - 'Results character set' => "文字セットの結果", - 'Export As' => "エクスポート (Export As)", - 'Insert Statements' => "ステートメントを挿入", - 'Include field names in query' => "クエリにフィールド名を含める", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "テキスト(1行につき1レコード)", - 'Fields separated by:' => ":で区切られたフィールド", - 'Export Results' => "エクスポート結果", - 'Select SQL batch file to import' => "SQLバッチファイルを選択してインポート", - 'Continue processing even if error occurs' => "続行エラーが発生した場合でも処理を続行", - 'Basic Information' => "基本情報", - 'Table Properties' => "表のプロパティ", - 'Table Name' => "テーブル名", - 'Field Name' => "フィールド名", - 'Data Type' => "データタイプ", - 'Length' => "長さ", - 'Default value' => "デフォルト値", - 'Unsigned' => "符号なし", - 'Zero Fill' => "ゼロフィル", - 'Primary Key' => "主キー", - 'Auto Increment' => "自動インクリメント", - 'Not NULL' => "NULLではない", - 'Character Set' => "文字セット", - 'Collation' => "照合", - 'Comment' => "コメント", - 'Waiting for table information to be submitted' => "テーブル情報を提出されるのを待つ", - 'Add field' => "フィールドを追加", - 'Delete selected field' => "選択されたフィールドを削除", - 'Clear Table Information' => "テーブル情報をクリア", - 'List of values' => "値のリスト", - 'Query Results' => "クエリの結果", - 'Data for {{TABLE}}' => "{{TABLE}}のデータ", - 'Select tables to be analyzed/repaired' => "分析/修復されたテーブルを選択", - 'Operation to perform' => "操作を実行", - 'Analyze' => "分析", - 'Check' => "チェック", - 'Optimize' => "最適化", - 'Repair' => "修復", - 'Skip Binary logging' => "バイナリロギングをスキップ", - 'Default' => "デフォルト", - 'Quick' => "クイック", - 'Fast' => "高速", - 'Medium' => "媒体", - 'Extended' => "拡張", - 'Changed' => "変更", - 'Use Frm files (MyISAM tables)' => "frmファイルを使用(MyISAMテーブル)", - 'User Information' => "ユーザー情報", - 'Global Privileges' => "グローバル権限", - 'Database Privileges' => "データベース権限", - 'Import File' => "ファイルをインポート", - 'Index Manager' => "インデックスマネージャー", - 'Edit table structure' => "テーブルの構造を編集", - 'Save All Changes' => "すべての変更を保存", - 'Changes are not saved until you press [Save All Changes]' => "変更は[すべての変更を保存]を押すまで保存されません", - 'Field Length' => "フィールド長", - 'Select objects to include in export' => "エクスポートに含めるオブジェクトを選択", - 'Export type' => "エクスポートタイプ", - 'Select All/None' => "全て/なしを選択", - 'Add User' => "ユーザーを追加", - 'Update User' => "ユーザーを更新", - 'Delete selected User' => "選択したユーザを削除", - 'Remove Password' => "パスワードを削除", - 'Select tables to search' => "検索するテーブルを選択", - 'Search Options' => "検索オプション", - 'Search in following field types' => "次のフィールドタイプを検索", - 'Numeric Fields' => "数値フィールド", - 'Character Fields' => "文字フィールド", - 'Text Fields' => "テキストフィールド", - 'Date/Time Fields' => "日付/時刻フィールド", - 'Comparison Type' => "比較タイプ", - 'Text to search' => "テキストを検索", - 'Search' => "検索", - 'Search Results' => "検索結果", - 'Number of matches' => "数の一致", - 'Search results for {{KEYWORD}} in the database' => "データベース内の{{キーワード}}の検索結果", - '{{NUM}} match(es)' => "{{NUM}}の一致", - 'Copy query to editor' => "エディタをクエリにコピー", - 'Done' => "完了", - 'SQL Editor' => "SQLエディタ", - 'Create Copy' => "コピーを作成", - 'Minimize All' => "すべてを最小化", - 'Copy Record(s)' => "レコードをコピー", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "カンマで分離(Excel用CSV)", - 'Select data file to import' => "インポートするデータファイルを選択", - 'Select table for data import' => "データインポート用のテーブルを選択", - 'First line contains column names' => "最初の行に列名が含まれています", - 'Select objects to operate upon' => "作業するオブジェクトを選択", - 'Operations to perform' => "実行する操作", - 'Add prefix string to name' => "名前に接頭辞文字列を追加", - 'Delete prefix string from name' => "名前から接頭辞文字列を削除", - 'Command text' => "コマンドテキスト", - 'DROP selected database objects' => "選択したデータベース·オブジェクトを削除", - 'Batch operation results' => "バッチ操作の結果", - 'Operation' => "操作", - 'Status' => "ステータス", - '{{NUM}} queries generated' => "{{NUM}}クリエを生成", - 'Please select one or more operations to perform' => "実行する1つまたは複数の操作を選択してください", - 'Quick Search' => "クイック検索", - '{{NAME}} client library is not installed' => "{{NAME}}クライアントライブラリがインストールされていません", - '{{NAME}} extension is not installed' => "{{NAME}}エクステンションがインストールされていません", - 'SQLite database folder is inaccessible or not writable' => "SQLiteデータベースフォルダがアクセス不可または書き込み不可です", - 'Maximize/Restore Results Pane' => "最大化/復元結果ペイン", - 'Select databases to operate upon' => "作業するデータベースを選択", - 'DROP selected databases' => "選択したデータベースを削除", - 'The following operation is irreversible' => "以下の操作は元に戻せません", - 'Potential data loss might occur' => "潜在的なデータ損失が発生することがあります", - 'Add TRUNCATE command before insert statements' => "insert文の前にコマンドをTRUNCATE追加", - 'Select objects to include in backup' => "バックアップに含めるオブジェクトを選択", - 'Backup folder does not exist or is not writable' => "バックアップフォルダが存在しないかまたは書き込み不可です", - 'Backup type' => "バックアップの種類", - 'Database backup successfully created' => "データベースのバックアップが正常に作成されました", - 'Failed to create database backup' => "データベースのバックアップの作成に失敗しました", - 'Generate Bulk insert statements' => "BULK INSERTステートメントを生成", - 'Maximum size of SQL statement' => "SQLステートメントの最大サイズ", - 'Show record count with table names' => "テーブル名とレコード数を表示", - 'Sort Table listing by' => "並べ替えテーブルのリスト", - 'Name' => "名前", - 'Last Update Time' => "最終更新時間", - 'Maximum records to display in result set' => "結果セットに表示する最大レコード数", - 'Show popup dialog for editing large text data' => "大きなテキストデータを編集するためのポップアップダイアログを表示", - 'Miscellaneous' => "種々雑多な", - 'Reset all confirmation dialogs' => "すべての確認ダイアログをリセット", - 'Record Editing' => "レコードの編集", - 'Exclude Table type' => "テーブルタイプを除外", - 'Exclude Table Character set' => "テーブルのキャラクタセットを除外", - 'Backup filename' => "バックアップファイル名", - 'Invalid filename format' => "無効なファイル名の形式", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "すべて", - 'all selected' => "選択したすべて", - 'An error occured while refreshing the object list.' => "オブジェクトリストの更新中にエラーが発生しました。", - 'Are you sure you want to clear all field information from table?' => "テーブルからすべてのフィールドの情報を消去してもよろしいですか?", - 'Are you sure you want to delete this user account?' => "このユーザアカウントを削除してもよろしいですか?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "データベース{{NAME}}からすべてのオブジェクトを削除してもよろしいですか?", - 'Are you sure you want to DROP selected objects?' => "選択したオブジェクトを削除してもよろしいですか?", - 'Are you sure you want to DROP the database {{NAME}}?' => "データベース{{NAME}}を削除してもよろしいですか?", - 'Are you sure you want to drop this object? {{NAME}}' => "このオブジェクトを削除してもよろしいですか? {{NAME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "{{SELECTED}}クエリを実行してもよろしいですか?", - 'Are you sure you want to logout?' => "ログアウトしてもよろしいですか?", - 'Are you sure you want to truncate the table {{NAME}}?' => "テーブル{{NAME}}を切り捨ててもよろしいですか?", - 'Blob Data [{{SIZE}}]' => "BLOBデータ[{{SIZE}}]", - 'Cancel' => "キャンセル", - 'Check for Updates' => "更新プログラムの確認", - 'Clear command history?' => "コマンド履歴のクリア?", - 'Close' => "クローズ", - 'Confirm Action' => "アクションの確認", - 'Confirm and do not ask me again about this choice' => "この選択について次から確認を表示しない", - 'Copy Object' => "オブジェクトのコピー", - 'Create Database' => "データベースを作成", - 'Create Primary Index on this field' => "このフィールドにプライマリインデックスを作成", - 'Databases' => "データベース", - 'Default value [Use quotes to specify string values]' => "デフォルト値[文字列値を指定する際に引用符を使用]", - 'Disallow NULL values in Field' => "フィールドにNULL値を禁止", - 'Enter new index name' => "新しいインデックスの名前を入力してください", - 'Enter new name for the database object' => "データベースオブジェクトの新しい名前を入力してください", - 'Enter the text to search in database' => "データベースで検索するテキストを入力してください", - 'Error' => "エラー", - 'Events' => "イベント", - 'Execute query' => "クエリを実行", - 'Exports results' => "結果をエクスポート", - 'Failed to refresh the results.' => "結果の更新に失敗", - 'Field Datatype' => "フィールドデータタイプ", - 'Field Name' => "フィールド名", - 'Field value is Auto Incremented' => "フィールドの値を自動インクリメント", - 'Functions' => "関数", - 'Indexes Updated' => "インデックスが更新された", - 'Maximum Length of field value' => "フィールド値の最大長", - 'Navigation Error. Try reloading the page' => "ナビゲーションにエラーが発生しました。ページをリロードしてください", - 'New settings saved and applied' => "新しい設定を保存し適用", - 'New version is available' => "新しいバージョンが利用可能です", - 'Next' => "次へ", - 'No' => "いいえ", - 'No Table selected' => "表を選択しない", - 'Not enough room to show this pane.' => "このペインを表示するには十分なroomがありません", - 'OK' => "OK", - 'One or more field information is incomplete' => "1つまたは複数のフィールドの情報が不完全です", - 'Open' => "オープン", - 'Operation failed' => "操作に失敗しました", - 'Pad field values with leading zeros' => "Padフィールド値の先頭にゼロをつける", - 'Pane' => "ペイン", - 'Passwords do not match' => "パスワードが一致しません", - 'Pin' => "ピン", - 'Please select one or more operations to perform' => "実行する1つまたは複数の操作を選択してください", - 'Please type in one or more queries in the SQL editor!' => "SQLエディタ内で1つまたは複数のクエリを入力してください!", - 'Please wait...' => "しばらくお待ちください...", - 'Previous' => "前へ", - 'Procedures' => "プロシージャ", - 'Prompt' => "プロンプト", - 'Refresh results' => "結果の更新", - 'Refreshing object list' => "オブジェクトリストの更新", - 'Rename Object' => "オブジェクト名の変更", - 'Resize' => "サイズの変更", - 'Results page:' => "検索結果ページ:", - 'Select a database to view privileges for the user' => "ユーザーの権限を表示するためにデータベースを選択", - 'Select an index to view / edit its details' => "詳細を表示/編集するためのインデックスを選択", - 'Select at least one field type for searching' => "検索するために少なくとも1つのフィールドタイプを選択", - 'Select objects to operate upon' => "動作するオブジェクトを選択します。", - 'selector' => "セレクタ", - 'Slide Open' => "スライドオープン", - 'Table information requires at least one valid field' => "テーブル情報は少なくとも1つの有効なフィールドが必要です", - 'Table name is required' => "テーブル名が必要です", - 'Table successfully created' => "表の作成に成功", - 'Table successfully modified' => "表の変更に成功", - 'Tables' => "テーブル", - 'Text Data [{{SIZE}}]' => "テキストデータ[{{SIZE}}]", - 'There is no record in the results to export' => "結果にはエクスポートするレコードがありません", - 'This attribute is not required for selected field type' => "この属性は選択したフィールドタイプには必要ありません", - 'Triggers' => "トリガ", - 'Un-Pin' => "Un-Pin", - 'Unsigned numbered field only' => "署名されていないフィールド番号のみ", - 'Update check failed' => "アップデートチェックに失敗しました", - 'User information is incomplete or invalid' => "ユーザー情報が不完全か無効です", - 'User Manager' => "ユーザーマネージャ", - 'Views' => "表示", - 'WARNING' => "警告", - 'Yes' => "はい", - 'You have the latest version' => "最新版を使用中", - - ); -?> diff --git a/lang/ko.php b/lang/ko.php deleted file mode 100644 index 103ce76..0000000 --- a/lang/ko.php +++ /dev/null @@ -1,463 +0,0 @@ - "를 사용하여 데이터베이스", - 'Drop Database' => "데이터베이스 드롭", - 'Empty Database' => "빈 데이터베이스", - 'Drop all tables from this database' => "이 데이터베이스의 모든 테이블을 버려라", - 'Select statement' => "선택 성명", - 'Insert statement' => "삽입 명세서", - 'Update statement' => "업데이트 정보 보호문", - 'Describe' => "묘사", - 'Show create command' => "명령을 만들어보기", - 'View data' => "데이터보기", - 'Alter Table' => "변경 테이블", - 'Indexes' => "인덱스", - 'Engine Type' => "엔진 종류", - 'More operations' => "기타 작업", - 'Truncate' => "끝수를 버리다", - 'Drop' => "드롭", - 'Rename' => "이름 바꾸기", - 'Export table data' => "내보내기 테이블 데이터", - 'Create Table' => "테이블 만들기", - 'Create View' => "보기 만들기", - 'Create Procedure' => "프로 시저를 만듭니다", - 'Create Function' => "함수를 만듭니다", - 'Create Trigger' => "트리거 만들기", - 'Create Event' => "이벤트 만들기", - 'Show/Hide Panel' => "표시 / 패널 숨기기", - 'Show/Hide Header' => "표시 / 헤더 숨기기", - 'Copy all queries to clipboard' => "복사는 모든 클립 보드로 검색어", - 'Clear history' => "지우기", - 'Copy Column values' => "복사 열 값", - 'Copy to clipboard' => "클립 보드에 복사", - 'Generate SQL Filter' => "필터 SQL 생성", - 'Database Manager' => "데이터베이스 관리자", - 'Manage databases' => "데이터베이스 관리", - - // main menu related text - 'Database' => "데이터베이스", - 'Refresh' => "새로고침", - 'Refresh database object list' => "새로고침 데이터베이스 개체 목록", - 'Create new' => "새로 만들기", - 'Export' => "수출", - 'Export database to external file' => "외부 파일로 내보내기 데이터베이스", - 'Objects' => "사물", - 'Create Table' => "테이블 만들기", - 'Create a new table in the database' => "데이터베이스에서 새 테이블을 만듭니다", - 'Create View' => "보기 만들기", - 'Create a new view in the database' => "데이터베이스에서 새보기를 만들려면", - 'Create Stored Procedure' => "만들기 저장 프로 시저", - 'Create a new stored procedure in the database' => "데이터베이스에 새 저장 프로 시저 만들기", - 'Create Function' => "함수를 만듭니다", - 'Create a new user defined function in the database' => "데이터베이스에서 함수를 정의 새 사용자 만들기", - 'Create Trigger' => "트리거 만들기", - 'Create a new trigger in the database' => "데이터베이스에서 새 트리거 만들기", - 'Create Event' => "이벤트 만들기", - 'Create a new event in the database' => "데이터베이스에 새 이벤트를 만듭니다", - 'Data' => "데이터", - 'Import batch file' => "가져오기 배치 파일", - 'Import multiple queries from batch file' => "배치 파일에서 가져오기 여러 검색어", - 'Export database' => "내보내기 데이터베이스", - 'Export database to batch file as sql dump' => "sql 덤프으로 배치 내보내기 - 파일을 데이터베이스", - 'Export current results' => "현재 내보내기 결과", - 'Export query results to clipboard or files' => "클립 보드 또는 파일 내보내기 쿼리 결과", - 'Tools' => "도구", - 'Process Manager' => "프로세스 매니저", - 'View and manage database processes' => "보기 및 데이터베이스 프로세스를 관리", - 'Repair Tables' => "수리 테이블", - 'Analyze and repair database tables' => "분석 및 복구 데이터베이스 테이블", - 'User Manager' => "사용자 관리자", - 'Manage database users' => "데이터베이스 사용자 관리", - 'Search in Database' => "데이터베이스에서 검색", - 'Search for text in the database' => "데이터베이스에서 텍스트 검색", - 'Information' => "정보", - 'Server/Connection Details' => "서버 / 연결 세부 정보", - 'View server configuration' => "보기 서버 구성", - 'View server and connection details' => "보기 서버 및 연결 정보", - 'Server Variables' => "서버 변수", - 'Database Summary' => "데이터베이스 요약", - 'View current database summary stats' => "보기 현재 데이터베이스 요약 통계", - 'Interface' => "인터페이스", - 'Options' => "옵션", - 'Configure application options' => "구성 응용 프로그램 옵션", - 'UI Theme' => "UI가 테마", - 'Database Objects' => "데이터베이스 개체", - 'Toggle Object Viewer' => "전환 개체 뷰어", - 'Help contents' => "도움말 내용", - 'Learn the basics of using MyWebSQL' => "MyWebSQL 사용의 기본 사항을 알아", - 'QuickStart Tutorials' => "퀵 스타트 자습서", - 'See quick hands-on tutorial of MyWebSQL interface' => "빨리 실무에 MyWebSQL의 입문서 인터페이스를 참조하십시오", - 'Online documentation' => "온라인 설명서", - 'View online documentation on project website' => "프로젝트 웹사이트에서보기 온라인 설명서", - 'Request a Feature' => "요청 기능", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "당신은 MyWebSQL의 일부가되고 그것에 대해 알려주는 여기를 클릭하십시오 가장 좋아하는 기능을 원하신다면", - 'Report a Problem' => "문제 신고", - 'Check for updates' => "업데이트 확인", - 'Check for updated versions of the application online' => "응용 프로그램 온라인의 업데이트된 버전 확인", - 'Logout' => "로그아웃", - 'Logout from this session' => "이 세션에서 로그아웃", - 'Language' => "언어", - 'SQL Editor' => "SQL 편집기", - 'Toggle SQL Editor' => "전환 SQL 편집기", - 'Experimental' => "실험", - 'Import table data' => "테이블 데이터 가져오기", - 'Import table data from external file' => "외부 파일에서 가져오기 테이블 데이터", - 'Batch operations' => "일괄 작업", - 'Perform one or more batch operations on database' => "데이터베이스에서 하나 이상의 일괄 작업을 수행", - 'Create a new schema in the database' => "데이터베이스에 새로운 스키마를 만들기", - 'Create Schema' => "스키마를 작성", - 'Table Description' => "표 설명", - 'Database Manager' => "데이터베이스 관리자", - 'Manage databases' => "데이터베이스 관리", - 'Backup database on the server as SQL dump' => "SQL 덤프와 같은 서버에있는 백업 데이터베이스", - 'Backup Database' => "백업 데이터베이스", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "브라우저가 매우 오래된 것으로 보인다 MyWebSQL을 실행하는 데 필요한 모든 기능을 지원하지 않습니다.", - 'Try using a newer version of the browser to run this application.' => "이 응용 프로그램을 실행하려면 브라우저의 최신 버전을 사용하십시오", - - // text used on various screens in the interface - 'Visit Project website' => "프로젝트 웹사이트를 방문하십시오", - 'Version' => "버전", - 'Loading' => "로드", - 'Quick Edit Options' => "빠른 옵션 수정", - 'Press {{KEY}} to set NULL' => "보도 {{KEY}}를 NULL로 설정", - 'MySQL Server' => "MySQL의 서버", - 'Logged in as: {{USER}}' => "에 기록으로 : {{USER}}", - 'Results' => "결과", - 'Messages' => "메시지", - 'Information' => "정보", - 'History' => "역사", - 'There are no results to show in this view' => "결과가이보기에 표시할 수 있습니다", - 'Refresh results' => "새로고침 결과", - 'Please wait' => "기다려주십시오", - 'Query All' => "검색어 전체", - 'Query' => "검색어", - 'Add Record' => "추가 기록", - 'Delete Record(s)' => "삭제 기록 (들)", - 'Update Record(s)' => "업데이트 기록 (들)", - 'Generate SQL' => "생성 SQL", - 'Database name' => "데이터베이스 이름", - 'Select database after creation' => "생성 후 데이터베이스를 선택하십시오", - 'Database connection failed to the server' => "데이터베이스 연결은 서버에 실패", - 'Host' => "숙주", - 'User' => "사용자", - 'Select a database to begin' => "시작하려면 데이터베이스를 선택하십시오", - 'Select/unselect All records' => "선택 / 전체 레코드를 선택 취소", - 'Primary key column' => "기본 키 컬럼", - 'Unique key column' => "고유 키 열", - 'Showing records {{START}} - {{END}}' => "보기 기록 {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "첫째 {{{MAX}} 는 기록을보기 전용", - '1 query successfully executed' => "성공적으로 수행 한 검색어", - '{{NUM}} queries successfully executed' => "{{NUM}} 성공적으로 실행된 쿼리", - '{{NUM}} record(s) were affected' => "{{NUM}} 개의 레코드 (들) 영향을받은", - '{{NUM}} record(s) updated' => "{{NUM}} 개의 레코드 (들)을 업데이 트", - 'Error occurred while executing the query' => "쿼리를 실행하는 동안 오류가 발생했습니다", - '{{NUM}} queries failed to execute' => "{{NUM}} 개의 실행하지 못했습니다 검색어", - 'Click to view/edit column data [{{NUM}} Bytes]' => "보기 / 편집 열 데이터 [를 {{NUM}} 개의 바이트]를 클릭", - 'Blob data is not editable' => "BLOB 데이터는 수정할 수 없습니다", - 'Blob data saved' => "BLOB 데이터가 저장", - 'Failed to save blob data' => "BLOB 데이터를 저장하지 못했습니다", - 'The process with id [{{PID}}] was killed' => "ID를 가진 프로세스가 [{{PID}}]이 살해", - 'No such process [id = {{PID}}]' => "그런 과정 [이 자료 ID = {{PID}}]", - 'Select a process and click the button to kill the process' => "프로세스를 선택하고 프로세스를 죽일 버튼을 클릭", - 'Process ID' => "프로세스 ID", - 'Command' => "명령", - 'Time' => "시간", - 'Info' => "정보", - 'Kill Process' => "죽여 프로세스", - 'Failed to get process list' => "프로세스 목록을 가져오지 못했습니다", - 'The command executed successfully' => "명령이 성공적으로 실행", - 'Invalid server configuration' => "잘못된 서버 구성", - 'Invalid Credentials' => "잘못된 자격 증명", - 'New database successfully created' => "성공적으로 만들어 새로운 데이터베이스", - 'File upload failed. Please try again' => "파일 업로드에 실패했습니다. 다시 시도해주십시오", - 'No queries were executed during import' => "아니 검색어 가져올 동안 실행되었습니다", - 'Maximum upload filesize is {{SIZE}}' => "최대 파일 크기를 업로드 {{SIZE}} 입니다", - 'Supported filetypes / extensions are: ({{LIST}})' => "지원되는 파일 형식 / 확장자 위치 : ({{LIST}})", - 'Database summary' => "데이터베이스 요약", - 'Server Variables' => "서버 변수", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "같은 이름의 기존 개체가 생성 명령을 실행하기 전에 수동으로 감소한다", - 'Only create commands are accepted' => "유일한 만드는 명령은 허용됩니다", - 'User ID' => "사용자 ID", - 'Password' => "비밀 번호", - 'Login' => "로그인", - 'Create new database object' => "새 데이터베이스 개체를 만듭니다", - 'Enter command for object creation' => "객체 생성을위한 명령을 입력하여", - 'Submit' => "제출", - 'Show blob data as: {{TYPE}}' => "보기 BLOB 데이터로 : {{TYPE}}", - 'Blob data for column {{NAME}}' => "열에 BLOB 데이터 {{NAME}}", - 'Create command for {{TYPE}} {{NAME}}' => "에 대한 명령을 생성 {{TYPE}} {{NAME}}", - 'Table Engine (type)' => "테이블 엔진 (유형)", - 'Change Table Type' => "변경 테이블 형식", - 'The requested page is not available on the server' => "요청한 페이지가 서버에서 사용할 수 없습니다", - 'Error' => "오류", - 'It appears that you attempted to submit an invalid request to the server' => "그것은 당신이 서버에 대한 잘못된 요청을 제출하려 나타납니다", - 'The request has been denied. Reloading the page might solve the problem' => "요청이 거부되었습니다. 페이지를 다시 로드해 문제를 해결할 수 있습니다", - 'Access Denied' => "접근 불가", - 'Help' => "도움말", - 'To see most up-to-date help contents, please visit {{LINK}}' => "대부분의 최대 최신 도움말 내용을 참조하려면 참조하십시오 {{LINK}}", - 'It appears that your browser session has expired' => "그것은 당신의 브라우저 세션이 만료되었음을 나타납니다", - 'Please refresh the webpage to re-login' => "다시 로그인 웹 페이지를 새로 고치십시오", - 'Table information' => "테이블 정보", - 'Edit' => "수정", - 'Save' => "저장", - 'Either the database is empty, or there was an error retrieving list of database objects' => "어느 데이터베이스, 또는 비어있는 데이터베이스 개체의 오류 검색리스트가 발생했습니다", - 'Please try closing and re-opening this dialog again' => "폐쇄하고 다시 또이 대화 상자를 열어 보시기 바랍니다", - 'Structure' => "구조", - 'Table Data' => "테이블 데이터", - 'Structure and Table Data' => "구조와 테이블 데이터", - 'Options' => "옵션", - 'Set Auto increment field values to NULL' => "세트 자동 증가 필드 값은 null로", - 'Add DROP command before create statements' => "문장을 만들기 전에 추가 드롭 명령", - 'Export' => "수출", - 'Import' => "수입", - 'Export Database' => "데이터베이스 내보내기", - 'Export Table' => "표 내보내기", - 'Server information' => "서버 정보", - 'Server' => "서버", - 'Version comment' => "버전 댓글", - 'Character sets' => "문자 세트", - 'Server character set' => "집합 서버 문자", - 'Client character set' => "고객 문자 집합", - 'Database character set' => "데이터베이스 문자 집합", - 'Results character set' => "문자 집합 결과", - 'Export As' => "로 내보내기", - 'Insert Statements' => "삽입 제표", - 'Include field names in query' => "검색어에 포함 필드 이름", - 'XML' => "XML을", - 'XHTML' => "XHTML과", - 'Plain Text (One record per line)' => "일반 텍스트 (한 줄에 하나씩 레코드)", - 'Fields separated by:' => "로 구분된 필드 :", - 'Export Results' => "내보내기 결과", - 'Select SQL batch file to import' => "를 선택하여 SQL 배치 파일 가져오기", - 'Continue processing even if error occurs' => "계속 오류가 발생하는 경우에도 처리", - 'Basic Information' => "기본 정보", - 'Table Properties' => "테이블 속성", - 'Table Name' => "테이블 이름", - 'Field Name' => "필드 이름", - 'Data Type' => "데이터 유형", - 'Length' => "길이", - 'Default value' => "기본값", - 'Unsigned' => "작자 미상", - 'Zero Fill' => "제로 채우기", - 'Primary Key' => "기본 키", - 'Auto Increment' => "자동 증가", - 'Not NULL' => "NULL이 없습니다", - 'Character Set' => "문자 집합", - 'Collation' => "대조", - 'Comment' => "논평", - 'Waiting for table information to be submitted' => "테이블 정보를 기다리는 중 제출", - 'Add field' => "필드를 추가합니다", - 'Delete selected field' => "삭제 선택한 필드", - 'Clear Table Information' => "지우기 테이블 정보", - 'List of values' => "값 목록", - 'Query Results' => "쿼리 결과", - 'Data for {{TABLE}}' => "데이터 테이블 {{TABLE}}", - 'Select tables to be analyzed/repaired' => "선택 테이블 분석되고 / 수리", - 'Operation to perform' => "작업 수행", - 'Analyze' => "분석", - 'Check' => "확인", - 'Optimize' => "최적화", - 'Repair' => "수리", - 'Skip Binary logging' => "바이너리 로깅 건너뛰기", - 'Default' => "기본", - 'Quick' => "빨리", - 'Fast' => "빨리", - 'Medium' => "매질", - 'Extended' => "확장", - 'Changed' => "변경됨", - 'Use Frm files (MyISAM tables)' => "를 사용하여를 FRM 파일 (MyISAM 테이블)", - 'User Information' => "사용자 정보", - 'Global Privileges' => "글로벌 권한", - 'Database Privileges' => "데이터베이스 권한", - 'Import File' => "가져오기 파일", - 'Index Manager' => "색인 관리자", - 'Edit table structure' => "테이블 구조 수정", - 'Save All Changes' => "모든 변경 사항 저장", - 'Changes are not saved until you press [Save All Changes]' => "변경 사항은 당신이 [모든 변경 사항 저장]을 누를 때까지 저장되지 않습니다", - 'Field Length' => "필드 길이", - 'Select objects to include in export' => "개체 선택이 수출에 포함", - 'Export type' => "내보내기 형식", - 'Select All/None' => "선택 / 없음 전체", - 'Add User' => "사용자 추가", - 'Update User' => "업데이트 사용자", - 'Delete selected User' => "삭제 사용자 선택", - 'Remove Password' => "비밀 번호를 제거", - 'Select tables to search' => "선택 테이블 검색", - 'Search Options' => "검색 옵션", - 'Search in following field types' => "필드 유형을 다음에서 검색", - 'Numeric Fields' => "숫자 필드", - 'Character Fields' => "문자 필드", - 'Text Fields' => "텍스트 필드", - 'Date/Time Fields' => "날짜 / 시간 필드", - 'Comparison Type' => "비교 유형", - 'Text to search' => "텍스트 검색", - 'Search' => "검색", - 'Search Results' => "검색 결과", - 'Number of matches' => "번호의 일치", - 'Search results for {{KEYWORD}} in the database' => "에 대한 검색 결과 {{키워드}} 데이터베이스에", - '{{NUM}} match(es)' => "{{NUM 개}} (초밖에)를 일치", - 'Copy query to editor' => "편집기에 복사 쿼리", - 'Done' => "Done", - 'SQL Editor' => "SQL 편집기", - 'Create Copy' => "복사본을 생성", - 'Minimize All' => "모두 최소화", - 'Copy Record(s)' => "복사 레코드 (들)", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "쉼표 (csv (Excel 용))로 구분된", - 'Select data file to import' => "가져올 데이터 파일을 선택", - 'Select table for data import' => "데이터 가져오기 위해 테이블​​을 선택", - 'First line contains column names' => "첫 번째 라인은 열 이름을 포함", - 'Select objects to operate upon' => "개체에 따라 작동하도록 선택", - 'Operations to perform' => "수행하는 연산", - 'Add prefix string to name' => "이름을 지정하는 접두사 문자열을 추가", - 'Delete prefix string from name' => "이름에서 접두사 문자열을 삭제", - 'Command text' => "명령 텍스트", - 'DROP selected database objects' => "선택한 데이터베이스 개체를 버려라", - 'Batch operation results' => "일괄 작업 결과", - 'Operation' => "수술", - 'Status' => "지위", - '{{NUM}} queries generated' => "{{NUM}} 생성된 쿼리", - 'Please select one or more operations to perform' => "수행하는 하나 이상의 작업을 선택하십시오", - 'Quick Search' => "빠른 검색", - '{{NAME}} client library is not installed' => "{{NAME}} 클라이언트 라이브러리가 설치되지 않은 것입니다", - '{{NAME}} extension is not installed' => "{{NAME}} 확장이 설치되어 있지 않습니다", - 'SQLite database folder is inaccessible or not writable' => "SQLite 데이터베이스 폴더에 쓰기 권한이 액세스하거나하지 않습니다", - 'Maximize/Restore Results Pane' => "최대화 / 결과 창을 복원", - 'Select databases to operate upon' => "에 작동하도록 데이터베이스를 선택", - 'DROP selected databases' => "선택한 데이터베이스를 DROP", - 'The following operation is irreversible' => "다음 작업은 되돌릴 수", - 'Potential data loss might occur' => "잠재적 인 데이터 손실이 발생할 수", - 'Add TRUNCATE command before insert statements' => "삽입 문하기 전에 명령을 잘라야 추가", - 'Select objects to include in backup' => "개체를 백업에 포함하려면 선택하십시오", - 'Backup folder does not exist or is not writable' => "백업 폴더가 존재하지 나 쓰기 권한이 없습니다 않습니다", - 'Backup type' => "백업 유형", - 'Database backup successfully created' => "데이터베이스 백업이 성공적으로 만들어", - 'Failed to create database backup' => "데이터베이스 백업을 만드는 데 실패했습니다", - 'Generate Bulk insert statements' => "BULK INSERT 문을 생성", - 'Maximum size of SQL statement' => "SQL 명령문의 최대 크기", - 'Show record count with table names' => "테이블 이름과 레코드 수를 표시", - 'Sort Table listing by' => "정렬 표 목록", - 'Name' => "이름", - 'Last Update Time' => "마지막 업데이트 시간", - 'Maximum records to display in result set' => "최대 기록은 결과 집합에 표시 할", - 'Show popup dialog for editing large text data' => "큰 텍스트 데이터를 편집하기위한 팝업 대화 상자를 표시", - 'Miscellaneous' => "기타", - 'Reset all confirmation dialogs' => "모든 확인 대화 상자를 재설정", - 'Record Editing' => "레코드 편집", - 'Exclude Table type' => "표 유형을 제외", - 'Exclude Table Character set' => "표 문자 세트를 제외", - 'Backup filename' => "백업 파일 이름", - 'Invalid filename format' => "잘못된 파일 이름 형식", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "모든", - 'all selected' => "선택한 모든", - 'An error occured while refreshing the object list.' => "오류가 상쾌한 개체 목록 동안 발생했습니다.", - 'Are you sure you want to clear all field information from table?' => "당신이 테이블의 모든 필드에 정보를 지우시겠습니까?", - 'Are you sure you want to delete this user account?' => "당신이 사용자 계정을 삭제하시겠습니까?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "당신이 포기 데이터베이스 {{NAME}}에서 모든 개체를하겠습니까?", - 'Are you sure you want to DROP selected objects?' => "당신이 선택한 개체를 취하시겠습니까?", - 'Are you sure you want to DROP the database {{NAME}}?' => "정말 당신이 드롭 데이터베이스를 {{NAME}} 싶어?", - 'Are you sure you want to drop this object? {{NAME}}' => "당신이이 개체를 취하시겠습니까? {{NAME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "당신은 {{SELECTED}} 선택된 쿼리를 실행하기 위해시겠습니까?", - 'Are you sure you want to logout?' => "당신은 로그아웃 하시겠습니까?", - 'Are you sure you want to truncate the table {{NAME}}?' => "정말 당신이 테이블을 {{NAME}} 잘라야 싶어?", - 'Blob Data [{{SIZE}}]' => "BLOB 데이터 [{{SIZE}}]", - 'Cancel' => "취소", - 'Check for Updates' => "업데이트 확인", - 'Clear command history?' => "지우기 명령 기록?", - 'Close' => "가까운", - 'Confirm Action' => "확인 액션", - 'Confirm and do not ask me again about this choice' => "확인이 선택에 대해 다시 묻지 않아", - 'Copy Object' => "복사 개체", - 'Create Database' => "데이터베이스를 만듭니다", - 'Create Primary Index on this field' => "이 분야에 작성 기본 색인", - 'Databases' => "데이터베이스", - 'Default value [Use quotes to specify string values]' => "기본값 [사용하여 문자열 값을 지정하려면 따옴표]", - 'Disallow NULL values in Field' => "금지 NULL이 필드에 값을", - 'Enter new index name' => "새 색인 이름을 입력하십시오", - 'Enter new name for the database object' => "데이터베이스 개체에 대한 새 이름을 입력", - 'Enter the text to search in database' => "데이터베이스에서 검색할 텍스트를 입력", - 'Error' => "오류", - 'Events' => "이벤트", - 'Execute query' => "실행 쿼리", - 'Exports results' => "수출 결과", - 'Failed to refresh the results.' => "결과를 갱신하지 못했습니다.", - 'Field Datatype' => "필드 데이터 유형", - 'Field Name' => "필드 이름", - 'Field value is Auto Incremented' => "필드 값이 자동 증가되어", - 'Functions' => "함수", - 'Indexes Updated' => "인덱스 업데이트", - 'Maximum Length of field value' => "필드의 최대 길이 값", - 'Navigation Error. Try reloading the page' => "네비게이션 오류가 발생했습니다. 페이지를 다시 로드해보십시오", - 'New settings saved and applied' => "새로운 설정을 저장 및 적용", - 'New version is available' => "새 버전을 사용할 수 있습니다", - 'Next' => "다음", - 'No' => "없음", - 'No Table selected' => "아니 표 선택", - 'Not enough room to show this pane.' => "충분하지 않은 공간이 창을 표시합니다.", - 'OK' => "확인", - 'One or more field information is incomplete' => "하나 이상의 필드 정보가 불완전", - 'Open' => "열린", - 'Operation failed' => "작업이 실패했습니다", - 'Pad field values with leading zeros' => "맨 앞에 0과 패드 필드 값", - 'Pane' => "창", - 'Passwords do not match' => "비밀 번호가 일치하지 않습니다", - 'Pin' => "핀", - 'Please select one or more operations to perform' => "수행하는 하나 이상의 작업을 선택하십시오", - 'Please type in one or more queries in the SQL editor!' => "SQL 편집기에서 하나 이상의 검색어를 입력하십시오!", - 'Please wait...' => "기다려주십시오 ...", - 'Previous' => "이전", - 'Procedures' => "절차", - 'Prompt' => "프롬프트", - 'Refresh results' => "새로고침 결과", - 'Refreshing object list' => "상쾌한 개체 목록", - 'Rename Object' => "이름 바꾸기 개체", - 'Resize' => "크기 조정", - 'Results page:' => "결과 페이지 :", - 'Select a database to view privileges for the user' => "사용자에 대한 권한을 볼 수있는 데이터베이스를 선택하십시오", - 'Select an index to view / edit its details' => "보기 / 편집의 세부 사항을 색인을 선택", - 'Select at least one field type for searching' => "검색 최소한 하나의 필드 유형을 선택하십시오", - 'Select objects to operate upon' => "개체에 따라 작동하도록 선택", - 'selector' => "선택자", - 'Slide Open' => "슬라이드 열기", - 'Table information requires at least one valid field' => "테이블 정보는 최소한 하나의 유효한 필드가 필요합니다", - 'Table name is required' => "테이블 이름이 필요합니다", - 'Table successfully created' => "테이블이 성공적으로 생성", - 'Table successfully modified' => "테이블이 성공적으로 수정", - 'Tables' => "테이블", - 'Text Data [{{SIZE}}]' => "텍스트 데이터를 [{{SIZE}}]", - 'There is no record in the results to export' => "결과에 대한 기록은 수출에있어", - 'This attribute is not required for selected field type' => "이 속성은 선택한 필드 종류가 필요하지 않습니다", - 'Triggers' => "트리거", - 'Un-Pin' => "취소 핀", - 'Unsigned numbered field only' => "서명되지 않은 필드 번호가 만", - 'Update check failed' => "실패 확인 업데이트", - 'User information is incomplete or invalid' => "사용자 정보는 불완전하거나 잘못되었습니다", - 'User Manager' => "사용자 관리자", - 'Views' => "조회", - 'WARNING' => "경고", - 'Yes' => "예", - 'You have the latest version' => "당신은 최신 버전", - - ); -?> diff --git a/lang/lt.php b/lang/lt.php deleted file mode 100644 index c7f54ca..0000000 --- a/lang/lt.php +++ /dev/null @@ -1,463 +0,0 @@ - "Naudokite duomenų bazė", - 'Drop Database' => "Drop duomenų bazė", - 'Empty Database' => "Tuščia duomenų bazė", - 'Drop all tables from this database' => "Drop visi stalai nuo šios duomenų bazės", - 'Select statement' => "Pasirinkite pareiškimas", - 'Insert statement' => "Įdėkite pareiškimas", - 'Update statement' => "Atnaujinti pareiškimas", - 'Describe' => "Apibūdinti", - 'Show create command' => "Rodyti sukurti komandą", - 'View data' => "Peržiūrėti duomenis", - 'Alter Table' => "ALTER TABLE", - 'Indexes' => "Indeksai", - 'Engine Type' => "Variklio tipas", - 'More operations' => "Daugiau operacijas", - 'Truncate' => "Trumpinti", - 'Drop' => "Lašas", - 'Rename' => "Pervadinti", - 'Export table data' => "Eksportuoti lentelę duomenų", - 'Create Table' => "Sukurti lentelė", - 'Create View' => "Sukurti Žiūrėti", - 'Create Procedure' => "Sukurti tvarkos", - 'Create Function' => "Sukurti Pareigos", - 'Create Trigger' => "Sukurti Trigger", - 'Create Event' => "Sukurti įvykį", - 'Show/Hide Panel' => "Rodyti / Slėpti skydas", - 'Show/Hide Header' => "Rodyti / slėpti antraštę", - 'Copy all queries to clipboard' => "Kopijuoti visas užklausas į iškarpinę", - 'Clear history' => "Valyti istoriją", - 'Copy Column values' => "Kopijuoti stulpelio", - 'Copy to clipboard' => "Kopijuoti į iškarpinę", - 'Generate SQL Filter' => "Sukurti SQL Filtruoti", - 'Database Manager' => "Duomenų bazės valdytojas", - 'Manage databases' => "Valdyti duomenų bazes", - - // main menu related text - 'Database' => "Duomenų bazės", - 'Refresh' => "Atnaujinti", - 'Refresh database object list' => "Atnaujinti duomenų bazės objekto sąrašą", - 'Create new' => "Sukurti naują", - 'Export' => "Eksporto", - 'Export database to external file' => "Eksporto duomenų bazė išorinio failo", - 'Objects' => "Objektai", - 'Create Table' => "Sukurti lentelė", - 'Create a new table in the database' => "Sukurti naują lentelę duomenų bazėje", - 'Create View' => "Sukurti Žiūrėti", - 'Create a new view in the database' => "Kurti naują rodinį į duomenų bazę", - 'Create Stored Procedure' => "Sukurti Išsaugota procedūra", - 'Create a new stored procedure in the database' => "Sukurti naują saugomi tvarka į duomenų bazę", - 'Create Function' => "Sukurti Pareigos", - 'Create a new user defined function in the database' => "Sukurti naują vartotoją apibrėžtą funkciją į duomenų bazę", - 'Create Trigger' => "Sukurti Trigger", - 'Create a new trigger in the database' => "Sukurti naują sukelti duomenų bazėje", - 'Create Event' => "Sukurti įvykį", - 'Create a new event in the database' => "Sukurti naują įvykį duomenų bazėje", - 'Data' => "Duomenys", - 'Import batch file' => "Importo partijos byla", - 'Import multiple queries from batch file' => "Importo daug užklausų iš partijos byla", - 'Export database' => "Eksporto duomenų bazė", - 'Export database to batch file as sql dump' => "Eksporto duomenų bazė partijos byla, kaip sql dump", - 'Export current results' => "Eksporto dabartiniais rezultatais", - 'Export query results to clipboard or files' => "Eksporto užklausos rezultatus į iškarpinę arba failai", - 'Tools' => "Įrankiai", - 'Process Manager' => "Process Manager", - 'View and manage database processes' => "Peržiūrėti ir tvarkyti duomenų bazę procesai", - 'Repair Tables' => "Remontas Lentelės", - 'Analyze and repair database tables' => "Analizuoti ir remonto bazės lenteles", - 'User Manager' => "Vartotojo vadovas", - 'Manage database users' => "Valdymas duomenų bazės vartotojų", - 'Search in Database' => "Paieška duomenų bazėje", - 'Search for text in the database' => "Ieškoti teksto duomenų bazėje", - 'Information' => "Informacija", - 'Server/Connection Details' => "Server / Ryšio duomenys", - 'View server configuration' => "Peržiūrėti serverio konfigūracija", - 'View server and connection details' => "Peržiūrėti serverių ir sujungimo detalės", - 'Server Variables' => "Serverio kintamieji", - 'Database Summary' => "Duomenų bazė santrauka", - 'View current database summary stats' => "Peržiūrėti dabartinės duomenų bazės santrauka statistika", - 'Interface' => "Sąsaja", - 'Options' => "Funkcijos", - 'Configure application options' => "Konfigūruoti programù funkcijos", - 'UI Theme' => "UI temos", - 'Database Objects' => "Duomenų bazės objektai", - 'Toggle Object Viewer' => "Perjungti Objekto peržiūros", - 'Help contents' => "Pagalba turinį", - 'Learn the basics of using MyWebSQL' => "Sužinokite naudoti MyWebSQL pagrindai", - 'QuickStart Tutorials' => "QuickStart Pamokos", - 'See quick hands-on tutorial of MyWebSQL interface' => "Žiūrėti greitai rankas ant pamoka apie MyWebSQL sąsaja", - 'Online documentation' => "Dabar naršo dokumentai", - 'View online documentation on project website' => "Peržiūrėti dokumentaciją tinkle dėl projekto interneto svetainėje", - 'Request a Feature' => "Prašymas Atvaizdas", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "Jei norite, kad jūsų labiausiai mėgstamus funkcija turi būti dalis MyWebSQL, spauskite čia ir apie tai informuoti", - 'Report a Problem' => "Pranešimas Problema", - 'Check for updates' => "Patikrinti atnaujinimus", - 'Check for updated versions of the application online' => "Patikrinkite atnaujinta paraiškos internetu", - 'Logout' => "Atsijungti", - 'Logout from this session' => "Išsiregistruoti iš šios sesijos", - 'Language' => "Kalba", - 'SQL Editor' => "SQL redaktorius", - 'Toggle SQL Editor' => "Perjungti SQL redaktorius", - 'Experimental' => "Eksperimentinis", - 'Import table data' => "Importuoti lentelės duomenis", - 'Import table data from external file' => "Importo lentelės duomenys iš išorinio failo", - 'Batch operations' => "Partijos veiklą", - 'Perform one or more batch operations on database' => "Atlikite vieną ar daugiau partiją operacijas duomenų bazėje", - 'Create a new schema in the database' => "Sukurti naują duomenų bazės schemą", - 'Create Schema' => "Sukurti schemą", - 'Table Description' => "Lentelė Aprašymas", - 'Database Manager' => "Duomenų bazės valdytojas", - 'Manage databases' => "Valdyti duomenų bazes", - 'Backup database on the server as SQL dump' => "Atsarginės duomenų bazės serverio kaip SQL sąvartynas", - 'Backup Database' => "Atsarginės duomenų bazės", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "Jūsų naršyklė atrodo labai senas ir nepalaiko visos funkcijos reikalaujama paleisti MyWebSQL.", - 'Try using a newer version of the browser to run this application.' => "Pabandykite naudoti naujesnės versijos naršyklę paleisti šią programą.", - - // text used on various screens in the interface - 'Visit Project website' => "Aplankykite Projekto svetainė", - 'Version' => "versija", - 'Loading' => "Pakrovimas", - 'Quick Edit Options' => "Greitas redagavimas Funkcijos", - 'Press {{KEY}} to set NULL' => "Spaudos {{KEY}} nustatyti NULL", - 'MySQL Server' => "MySQL Server", - 'Logged in as: {{USER}}' => "Prisijungęs kaip: {{User}}", - 'Results' => "Rezultatai", - 'Messages' => "Žinutės", - 'Information' => "Informacija", - 'History' => "Istorija", - 'There are no results to show in this view' => "Nėra rezultatų rodyti šiame rodinyje", - 'Refresh results' => "Atnaujinti rezultatus", - 'Please wait' => "Prašome palaukti", - 'Query All' => "Užklausa Visi", - 'Query' => "Užklausa", - 'Add Record' => "Pridėti įrašą", - 'Delete Record(s)' => "Ištrinti įrašą (-us)", - 'Update Record(s)' => "Atnaujinti Įrašų (-ų)", - 'Generate SQL' => "Sukurti SQL", - 'Database name' => "Duomenų bazės pavadinimas", - 'Select database after creation' => "Pasirinkite duomenų bazę, po sukūrimo", - 'Database connection failed to the server' => "Prisijungti prie duomenų bazės nepavyko serveris", - 'Host' => "Priimančiosios", - 'User' => "Vartotojo", - 'Select a database to begin' => "Pasirinkite duomenų bazę, pradėti", - 'Select/unselect All records' => "Pasirinkite / atžymėti Visi įrašai", - 'Primary key column' => "Pirminis raktas skiltyje", - 'Unique key column' => "Unikalūs klavišą stulpelio", - 'Showing records {{START}} - {{END}}' => "Rodomi įrašai {{START}} - {{Pabaiga}}", - 'Showing first {{MAX}} records only' => "Rodomi pirmieji {{max}} įrašo tik", - '1 query successfully executed' => "1 užklausa sėkmingai įvykdyta", - '{{NUM}} queries successfully executed' => "{{NUM}} užklausų sėkmingai įvykdytas", - '{{NUM}} record(s) were affected' => "{{NUM}} įrašą (-us) turėjo įtakos", - '{{NUM}} record(s) updated' => "{{NUM}} įrašą (-us) atnaujinta", - 'Error occurred while executing the query' => "Įvyko klaida vykdant užklausą", - '{{NUM}} queries failed to execute' => "{{NUM}} užklausų neįvykdė", - 'Click to view/edit column data [{{NUM}} Bytes]' => "Spustelėkite norėdami peržiūrėti ar redaguoti stulpelio duomenis [{{NUM}} baitų]", - 'Blob data is not editable' => "Blob duomenys neredaguojamas", - 'Blob data saved' => "Blob duomenys išsaugomi", - 'Failed to save blob data' => "Nepavyko išsaugoti blob duomenys", - 'The process with id [{{PID}}] was killed' => "Su id procesą [{{PID}}] buvo nužudytas", - 'No such process [id = {{PID}}]' => "Nėra tokio proceso metu [id = {{PID}}]", - 'Select a process and click the button to kill the process' => "Pasirinkite procesą ir paspauskite mygtuką nužudyti procesas", - 'Process ID' => "Apdoroti ID", - 'Command' => "Komanda", - 'Time' => "Laikas", - 'Info' => "Informacija", - 'Kill Process' => "Nužudyk procesas", - 'Failed to get process list' => "Nepavyko gauti procesas sąrašas", - 'The command executed successfully' => "Komanda įvykdyta sėkmingai", - 'Invalid server configuration' => "Negaliojantis serverio konfigūracija", - 'Invalid Credentials' => "Negaliojantis Kvalifikacija", - 'New database successfully created' => "Nauja duomenų bazė sėkmingai sukurta", - 'File upload failed. Please try again' => "Failo įkėlimas nepavyko. Bandykite dar kartą", - 'No queries were executed during import' => "Nr užklausų buvo įvykdyta per importo", - 'Maximum upload filesize is {{SIZE}}' => "Didžiausias įkelti failo dydis yra {{DYDIS}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "Palaikomi failų tipai / plėtiniai: ({{sąrašas}})", - 'Database summary' => "Duomenų bazės santrauką", - 'Server Variables' => "Serverio kintamieji", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "Bet kuriai egzistuojančiai objektas su tokiu pačiu pavadinimu, turėtų būti nutraukta ranka prieš vykdant kūrimo komanda", - 'Only create commands are accepted' => "Tik kurti komandos gyvūnus", - 'User ID' => "Vartotojo ID", - 'Password' => "Slaptažodis", - 'Login' => "Prisijungti", - 'Create new database object' => "Sukurti naują duomenų bazę objektą", - 'Enter command for object creation' => "Įveskite komandą objekto kūrimo", - 'Submit' => "Pateikti", - 'Show blob data as: {{TYPE}}' => "Rodyti blob duomenys: {{TIPAS}}", - 'Blob data for column {{NAME}}' => "Blob duomenų stulpelį {{VARDAS}}", - 'Create command for {{TYPE}} {{NAME}}' => "Sukurti komandą {{TIPAS}} {{VARDAS}}", - 'Table Engine (type)' => "Stalo Variklis (tipas)", - 'Change Table Type' => "Pakeisti lentelę tipas", - 'The requested page is not available on the server' => "Prašomas puslapis nėra serveryje", - 'Error' => "Klaida", - 'It appears that you attempted to submit an invalid request to the server' => "Atrodo, kad bandėte pateikti netinkama užklausa į serverį", - 'The request has been denied. Reloading the page might solve the problem' => "Prašymas buvo atmestas. Puslapio perkrovimas gali išspręsti problemą", - 'Access Denied' => "Negalima įeiti", - 'Help' => "Pagalba", - 'To see most up-to-date help contents, please visit {{LINK}}' => "Norėdami pamatyti labiausiai up-to-data padėti turinį, apsilankykite {{LINK}}", - 'It appears that your browser session has expired' => "Atrodo, kad Jūsų naršyklė sesijos laikas baigėsi", - 'Please refresh the webpage to re-login' => "Atnaujinkite tinklalapį iš naujo prisijungti", - 'Table information' => "Stalo informacija", - 'Edit' => "Redaguoti", - 'Save' => "Prisiminti", - 'Either the database is empty, or there was an error retrieving list of database objects' => "Bet duomenų bazė tuščia, ar ten buvo klaida nuskaitant sąrašą duomenų bazės objektus", - 'Please try closing and re-opening this dialog again' => "Bandykite uždarymo ir vėl atidaryti šį dialogo vėl", - 'Structure' => "Struktūra", - 'Table Data' => "Stalo duomenys", - 'Structure and Table Data' => "Struktūra ir lentelės duomenys", - 'Options' => "Funkcijos", - 'Set Auto increment field values to NULL' => "Nustatyti Auto prieaugio lauko reikšmes NULL", - 'Add DROP command before create statements' => "Pridėti DROP komanda prieš sukurti pareiškimai", - 'Export' => "Eksporto", - 'Import' => "Importo", - 'Export Database' => "Eksporto duomenų bazė", - 'Export Table' => "Eksportuoti lentelę", - 'Server information' => "Serverio informacija", - 'Server' => "Serveris", - 'Version comment' => "Versija komentarą", - 'Character sets' => "Rašmenų rinkiniai", - 'Server character set' => "Serverio simbolių rinkinys", - 'Client character set' => "Kliento simbolių rinkinį", - 'Database character set' => "Duomenų bazės ženklų rinkinys", - 'Results character set' => "Rezultatai simbolių rinkinys", - 'Export As' => "Eksportuoti kaip", - 'Insert Statements' => "Įdėkite Pareiškimai", - 'Include field names in query' => "Įtraukti laukų pavadinimus į užklausos", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Paprastasis tekstas (Vienas įrašas eilutėje)", - 'Fields separated by:' => "Laukai atskiriami:", - 'Export Results' => "Eksporto rezultatai", - 'Select SQL batch file to import' => "Pasirinkite "SQL paketinio importo", - 'Continue processing even if error occurs' => "Tęsti perdirbimo net jei įvyksta klaida", - 'Basic Information' => "Pagrindinė informacija", - 'Table Properties' => "Lentelės ypatybės", - 'Table Name' => "Stalo pavadinimas", - 'Field Name' => "Lauko pavadinimas", - 'Data Type' => "Duomenų tipas", - 'Length' => "Ilgis", - 'Default value' => "Reikšmė pagal nutylėjimą", - 'Unsigned' => "Nepasirašytos", - 'Zero Fill' => "Nulis Užpildykite", - 'Primary Key' => "Pirminis raktas", - 'Auto Increment' => "Auto Taškinis", - 'Not NULL' => "NOT NULL", - 'Character Set' => "Character Set", - 'Collation' => "Lyginimas", - 'Comment' => "Komentuoti", - 'Waiting for table information to be submitted' => "Laukiama stalo informacija turi būti pateikiama", - 'Add field' => "Pridėti lauką", - 'Delete selected field' => "Ištrinti pasirinktus srityje", - 'Clear Table Information' => "Išvalyti lentelėje Informacija", - 'List of values' => "Sąrašas vertybės", - 'Query Results' => "Užklausa rezultatai", - 'Data for {{TABLE}}' => "Duomenys {{LENTELĖ}}", - 'Select tables to be analyzed/repaired' => "Pasirinkite lentelėse turi būti analizuojami / remontuojami", - 'Operation to perform' => "Operacija atlikti", - 'Analyze' => "Analizuoti", - 'Check' => "Patikrinkite", - 'Optimize' => "Optimizuokite", - 'Repair' => "Remontas", - 'Skip Binary logging' => "Pereiti Dvejetainiai prisijungti", - 'Default' => "Numatytasis", - 'Quick' => "Greitai", - 'Fast' => "Greitai", - 'Medium' => "Vidutinio", - 'Extended' => "Pratęstas", - 'Changed' => "Pasikeitė", - 'Use Frm files (MyISAM tables)' => "Naudokite frm failus (MyISAM lentelės)", - 'User Information' => "Vartotojo informacija", - 'Global Privileges' => "Pasaulinis privilegijų", - 'Database Privileges' => "Duomenų bazė privilegijų", - 'Import File' => "Importuoti failą", - 'Index Manager' => "Rodyklė vadovas", - 'Edit table structure' => "Redaguoti lentelės struktūra", - 'Save All Changes' => "Išsaugoti visus pakeitimus", - 'Changes are not saved until you press [Save All Changes]' => "Pakeitimai nebus išsaugoti kol nepaspausite [Išsaugoti visus pakeitimus]", - 'Field Length' => "Lauko ilgis", - 'Select objects to include in export' => "Pasirinkite objektai įtraukti į eksporto", - 'Export type' => "Eksporto tipas", - 'Select All/None' => "Pasirinkti viską / nieko", - 'Add User' => "Pridėti Vartotojų", - 'Update User' => "Atnaujinti Vartotojo", - 'Delete selected User' => "Trinti pasirinktą vartotojo", - 'Remove Password' => "Šalinti slaptažodį", - 'Select tables to search' => "Pasirinkite lenteles paieška", - 'Search Options' => "Paieškos parametrai", - 'Search in following field types' => "Paieška šiuos laukų tipus", - 'Numeric Fields' => "Skaitmeninė sritys", - 'Character Fields' => "Simbolių sritys", - 'Text Fields' => "Teksto laukų", - 'Date/Time Fields' => "Data / Laikas sritys", - 'Comparison Type' => "Palyginimas tipas", - 'Text to search' => "Tekstas paieška", - 'Search' => "Paieška", - 'Search Results' => "Paieškos rezultatai", - 'Number of matches' => "Skaičius rungtynės", - 'Search results for {{KEYWORD}} in the database' => "Paieškos rezultatai {{KEYWORD}} į duomenų bazę", - '{{NUM}} match(es)' => "{{NUM}} rungtynės (es)", - 'Copy query to editor' => "Kopijuoti užklausą su redaktoriumi", - 'Done' => "Priimta", - 'SQL Editor' => "SQL redaktorius", - 'Create Copy' => "Sukurti Kopijuoti", - 'Minimize All' => "Sumažinti Visos", - 'Copy Record(s)' => "Kopijuoti Įrašų (-ai)", - 'YAML' => "Yaml", - 'Comma Separated (CSV for Excel)' => "Laukus atskiriant kableliais (CSV, Excel)", - 'Select data file to import' => "Pasirinkite duomenų failo importuoti", - 'Select table for data import' => "Pasirinkite lentelę duomenų importo", - 'First line contains column names' => "Pirmoje eilutėje yra stulpelių pavadinimai", - 'Select objects to operate upon' => "Pasirinkite objektai vykdyti veiklą", - 'Operations to perform' => "Veiksmų, kad galėtų vykdyti", - 'Add prefix string to name' => "Pridėti prefix eilutę pavadinti", - 'Delete prefix string from name' => "Ištrinti prefix eilutę iš pavadinimo", - 'Command text' => "Komanda tekstas", - 'DROP selected database objects' => "DROP pasirinktos duomenų bazės objektus", - 'Batch operation results' => "Periodinio veikimo rezultatai", - 'Operation' => "Operacija", - 'Status' => "Statusas", - '{{NUM}} queries generated' => "{{NUM}} užklausų generuoja", - 'Please select one or more operations to perform' => "Prašome pasirinkti vieną ar daugiau operacijų atlikti", - 'Quick Search' => "Greita paieška", - '{{NAME}} client library is not installed' => "{{VARDAS}} klientas biblioteka nėra įdiegtas", - '{{NAME}} extension is not installed' => "{{VARDAS}} pratęsimas nėra įdiegtas", - 'SQLite database folder is inaccessible or not writable' => "SQLite duomenų bazės aplankas yra neprieinami arba negali rašyti", - 'Maximize/Restore Results Pane' => "Maximize / Atkurti rezultatų srityje", - 'Select databases to operate upon' => "Pasirinkite duomenų bazes, vykdyti veiklą,", - 'DROP selected databases' => "DROP pasirinktų duomenų bazių", - 'The following operation is irreversible' => "Ši operacija yra negrįžtamas", - 'Potential data loss might occur' => "Potencialas duomenų praradimo gali atsirasti", - 'Add TRUNCATE command before insert statements' => "Pridėti trumpinti komandą prieš INSERT", - 'Select objects to include in backup' => "Pasirinkite objektai įtraukti į atsarginę kopiją", - 'Backup folder does not exist or is not writable' => "Atsarginių kopijų aplankas neegzistuoja arba yra neįrašomas", - 'Backup type' => "Atsarginės kopijos tipas", - 'Database backup successfully created' => "Duomenų bazės atsarginės kopijos, sėkmingai sukurta", - 'Failed to create database backup' => "Nepavyko sukurti duomenų bazės atsarginę kopiją", - 'Generate Bulk insert statements' => "Sukurti Masiniai įterpti pareiškimus", - 'Maximum size of SQL statement' => "Maksimalus dydis SQL", - 'Show record count with table names' => "Rodyti rekordinį skaičių su lentelių pavadinimus", - 'Sort Table listing by' => "Rūšiuoti lentelė įtraukimas į sąrašą", - 'Name' => "Pavadinimas", - 'Last Update Time' => "Paskutinis atnaujinimas laikas", - 'Maximum records to display in result set' => "Maksimalus įrašų rodyti rezultatų rinkinį", - 'Show popup dialog for editing large text data' => "Rodyti laikiną langą dialogo redaguoti didelius tekstinius duomenis", - 'Miscellaneous' => "Įvairialypis", - 'Reset all confirmation dialogs' => "Grąžinti visus patvirtinimo dialogai", - 'Record Editing' => "Įrašų redagavimas", - 'Exclude Table type' => "Išskirkite Lentelės tipas", - 'Exclude Table Character set' => "Išskirkite Stalo simbolių rinkinys", - 'Backup filename' => "Atsarginė failo", - 'Invalid filename format' => "Neteisingas failo formatas", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "visi", - 'all selected' => "visiems atrinktiems", - 'An error occured while refreshing the object list.' => "Įvyko klaida gaivus objektas sąraše.", - 'Are you sure you want to clear all field information from table?' => "Ar jūs tikrai norite išvalyti visą lauką informaciją iš lentelės?", - 'Are you sure you want to delete this user account?' => "Ar tikrai norite ištrinti šį vartotojo sąskaitos?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "Ar tikrai norite mesti visus iš duomenų bazės {{VARDAS}} objektai?", - 'Are you sure you want to DROP selected objects?' => "Ar tikrai norite atsisakyti pasirinktų objektų?", - 'Are you sure you want to DROP the database {{NAME}}?' => "Ar tikrai norite mesti bazės {{VARDAS}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "Ar tikrai norite mesti šį objektą? {{VARDAS}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "Ar tikrai norite vykdyti {{PASIRINKTAS}} užklausas?", - 'Are you sure you want to logout?' => "Ar tikrai norite atsijungti?", - 'Are you sure you want to truncate the table {{NAME}}?' => "Ar jūs tikrai norite sutrumpinti lentelę {{VARDAS}}?", - 'Blob Data [{{SIZE}}]' => "Blob duomenys [{{SIZE}}]", - 'Cancel' => "Atšaukti", - 'Check for Updates' => "Check for Updates", - 'Clear command history?' => "Išvalyti komandos istoriją?", - 'Close' => "Uždaryti", - 'Confirm Action' => "Patvirtinkite veiksmų", - 'Confirm and do not ask me again about this choice' => "Patvirtinti ir padaryti neklausti apie šio pasirinkimo", - 'Copy Object' => "Kopijuoti objektas", - 'Create Database' => "Sukurti duomenų bazę", - 'Create Primary Index on this field' => "Sukurti Pradinis puslapis apie šioje srityje", - 'Databases' => "Duomenų bazės", - 'Default value [Use quotes to specify string values]' => "Reikšmė pagal nutylėjimą [Naudokite kabutes nurodyti eilutės reikšmės]", - 'Disallow NULL values in Field' => "Neleisti NULL reikšmių laukas", - 'Enter new index name' => "Įveskite naują indekso pavadinimas", - 'Enter new name for the database object' => "Įveskite naują pavadinimą duomenų bazės objektą", - 'Enter the text to search in database' => "Įveskite tekstą, paieška duomenų bazėje", - 'Error' => "Klaida", - 'Events' => "Renginiai", - 'Execute query' => "Vykdyti užklausą", - 'Exports results' => "Eksportas rezultatai", - 'Failed to refresh the results.' => "Nepavyko atnaujinti rezultatus.", - 'Field Datatype' => "Lauko datatype", - 'Field Name' => "Lauko pavadinimas", - 'Field value is Auto Incremented' => "Lauko vertė yra Automatinis didėja", - 'Functions' => "Funkcijos", - 'Indexes Updated' => "Indeksai Atnaujinta", - 'Maximum Length of field value' => "Maksimalus ilgis lauko reikšmę", - 'Navigation Error. Try reloading the page' => "Kurių navigacinė paklaida. Pabandykite iš naujo įkelti puslapį", - 'New settings saved and applied' => "Nauji nustatymai išsaugoti ir taikomi", - 'New version is available' => "Naujoji versija yra prieinama", - 'Next' => "Kitas", - 'No' => "Nr", - 'No Table selected' => "Nr lentelė eiga", - 'Not enough room to show this pane.' => "Neužtenka vietos rodyti šią juostą.", - 'OK' => "Gerai", - 'One or more field information is incomplete' => "Vienas ar daugiau lauko informacija yra neišsami", - 'Open' => "Atidaryti", - 'Operation failed' => "Operacija nepavyko", - 'Pad field values with leading zeros' => "Pad lauko reikšmes su nuliais", - 'Pane' => "Sritis", - 'Passwords do not match' => "Slaptažodžiai nesutampa", - 'Pin' => "Kaištis", - 'Please select one or more operations to perform' => "Prašome pasirinkti vieną ar daugiau operacijų atlikti", - 'Please type in one or more queries in the SQL editor!' => "Prašome įvesti vieną ar daugiau užklausų SQL redaktorius!", - 'Please wait...' => "Prašome palaukti ...", - 'Previous' => "Ankstesnis", - 'Procedures' => "Procedūros", - 'Prompt' => "Greitai", - 'Refresh results' => "Atnaujinti rezultatus", - 'Refreshing object list' => "Gaivieji objektas sąrašas", - 'Rename Object' => "Pervadinti objektą", - 'Resize' => "Resize", - 'Results page:' => "Rezultatų puslapyje:", - 'Select a database to view privileges for the user' => "Pasirinkite duomenų bazę, siekiant privilegijų vartotojo", - 'Select an index to view / edit its details' => "Pasirinkite rodyklę peržiūrėti / redaguoti savo duomenis", - 'Select at least one field type for searching' => "Pasirinkite bent vieną lauką įveskite paieškos", - 'Select objects to operate upon' => "Pasirinkite objektai vykdyti veiklą", - 'selector' => "selektorių", - 'Slide Open' => "Pristatymas Atidarykite", - 'Table information requires at least one valid field' => "Stalo informaciją reikia bent vieną galiojantį srityje", - 'Table name is required' => "Stalo pavadinimas yra būtinas", - 'Table successfully created' => "Stalo sėkmingai sukurta", - 'Table successfully modified' => "Stalo sėkmingai pakeista", - 'Tables' => "Lentelės", - 'Text Data [{{SIZE}}]' => "Tekstiniai duomenys [{{SIZE}}]", - 'There is no record in the results to export' => "Nėra rezultatų įrašas eksporto", - 'This attribute is not required for selected field type' => "Šis atributas nereikia pasirinkto lauko tipo", - 'Triggers' => "Trigeriai", - 'Un-Pin' => "Un-Pin", - 'Unsigned numbered field only' => "Nepasirašytos sunumeruoti srityje tik", - 'Update check failed' => "Atnaujinti patikrinti nepavyko", - 'User information is incomplete or invalid' => "Vartotojo informacija yra neišsami arba negalioja", - 'User Manager' => "Vartotojo vadovas", - 'Views' => "Žiūrėti", - 'WARNING' => "ĮSPĖJIMAS", - 'Yes' => "Taip", - 'You have the latest version' => "Jūs turite naujausią versiją", - - ); -?> diff --git a/lang/lv.php b/lang/lv.php deleted file mode 100644 index f788294..0000000 --- a/lang/lv.php +++ /dev/null @@ -1,463 +0,0 @@ - "Izmantojiet datu bāze", - 'Drop Database' => "Drop datu bāze", - 'Empty Database' => "Tukša datu bāze", - 'Drop all tables from this database' => "Drop visas tabulas no šīs datu bāzes", - 'Select statement' => "SELECT", - 'Insert statement' => "Ievietot paziņojumu", - 'Update statement' => "Update paziņojumu", - 'Describe' => "Aprakstīt", - 'Show create command' => "Rādīt izveidot komandu", - 'View data' => "Skatīt datus", - 'Alter Table' => "ALTER TABLE", - 'Indexes' => "Indeksi", - 'Engine Type' => "Motora tips", - 'More operations' => "Vairāku darbību", - 'Truncate' => "Saīsināt", - 'Drop' => "Piliens", - 'Rename' => "Pārdēvēt", - 'Export table data' => "Eksporta tabulas datus", - 'Create Table' => "Izveidot tabula", - 'Create View' => "Izveidot skatu", - 'Create Procedure' => "Izveidot procedūra", - 'Create Function' => "Izveidot funkcija", - 'Create Trigger' => "Izveidot Trigger", - 'Create Event' => "Izveidot Event", - 'Show/Hide Panel' => "Rādīt / paslēpt paneli", - 'Show/Hide Header' => "Rādīt / paslēpt galveni", - 'Copy all queries to clipboard' => "Kopēt visu vaicājumus starpliktuvē", - 'Clear history' => "Notīrīt vēsturi", - 'Copy Column values' => "Kopēt sleja vērtības", - 'Copy to clipboard' => "Kopēt uz starpliktuvi", - 'Generate SQL Filter' => "Izveidot SQL filtru", - 'Database Manager' => "Datubāzes pārvaldnieks", - 'Manage databases' => "Pārvaldīt datubāzes", - - // main menu related text - 'Database' => "Datu bāze", - 'Refresh' => "Atsvaidzināt", - 'Refresh database object list' => "Atsvaidzināt datu bāzes objektu sarakstu", - 'Create new' => "Izveidot jaunu", - 'Export' => "Eksporta", - 'Export database to external file' => "Eksporta datubāzi ārējā faila", - 'Objects' => "Objekti", - 'Create Table' => "Izveidot tabula", - 'Create a new table in the database' => "Izveidot jaunu tabulu datubāzē", - 'Create View' => "Izveidot skatu", - 'Create a new view in the database' => "Izveidot jaunu skatu datu bāzē", - 'Create Stored Procedure' => "Izveidot Saglabātā procedūra", - 'Create a new stored procedure in the database' => "Izveidot jaunu glabā procedūras datu bāzē", - 'Create Function' => "Izveidot funkcija", - 'Create a new user defined function in the database' => "Izveidot jaunu lietotāja definētu funkciju datu bāzē", - 'Create Trigger' => "Izveidot Trigger", - 'Create a new trigger in the database' => "Izveidot jaunu izraisīt datu bāzē", - 'Create Event' => "Izveidot Event", - 'Create a new event in the database' => "Izveidot jaunu notikumu datu bāzē", - 'Data' => "Datu", - 'Import batch file' => "Importa sērijveida", - 'Import multiple queries from batch file' => "Importēt vairākus vaicājumus sērijveida", - 'Export database' => "Eksporta datubāze", - 'Export database to batch file as sql dump' => "Eksporta datubāzē sērijveida kā sql dump", - 'Export current results' => "Eksporta pašreizējie rezultāti", - 'Export query results to clipboard or files' => "Eksporta vaicājuma rezultātus starpliktuvē, vai failu", - 'Tools' => "Instrumenti", - 'Process Manager' => "Procesa vadītājs", - 'View and manage database processes' => "Skatīt un pārvaldīt datubāzi procesi", - 'Repair Tables' => "Remonts Galdi", - 'Analyze and repair database tables' => "Analizēt un remonta datu bāzes tabulām", - 'User Manager' => "Lietotāju pārvaldnieks", - 'Manage database users' => "Pārvaldīt datubāzes lietotājiem", - 'Search in Database' => "Meklēšana datu bāzē", - 'Search for text in the database' => "Meklēt tekstu datu bāzē", - 'Information' => "Informācija", - 'Server/Connection Details' => "Servera / Savienojuma detaļas", - 'View server configuration' => "View servera konfigurāciju", - 'View server and connection details' => "Servera un savienojuma detaļas", - 'Server Variables' => "Servera mainīgie", - 'Database Summary' => "Datubāze kopsavilkums", - 'View current database summary stats' => "Skatīt pašreizējā datu bāzē kopsavilkumu statistika", - 'Interface' => "Interfeiss", - 'Options' => "Iespējas", - 'Configure application options' => "Konfigurēt izmantošanas iespējas", - 'UI Theme' => "UI tēma", - 'Database Objects' => "Datu bāzes objektus", - 'Toggle Object Viewer' => "Pārslēgt Objektu skatītājs", - 'Help contents' => "Palīdzība saturu", - 'Learn the basics of using MyWebSQL' => "Uzziniet, kā lietot MyWebSQL pamati", - 'QuickStart Tutorials' => "QuickStart konsultācijas", - 'See quick hands-on tutorial of MyWebSQL interface' => "Skatīt ātru roku-on apmācība par MyWebSQL saskarnes", - 'Online documentation' => "Tiešsaistes dokumentāciju", - 'View online documentation on project website' => "Skatīt tiešsaistē dokumentāciju par projekta tīmekļa vietnē", - 'Request a Feature' => "Pieprasīt Feature", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "Ja jūs vēlaties tīkamāko iezīme ir daļa no MyWebSQL, lūdzu, klikšķiniet šeit, lai informētu par to", - 'Report a Problem' => "Ziņot par problēmu", - 'Check for updates' => "Pārbaudīt, vai nav atjauninājumu", - 'Check for updated versions of the application online' => "Pārbaudiet, vai atjauninātu redakciju pieteikumu tiešsaistē", - 'Logout' => "Logout", - 'Logout from this session' => "Atteikties no šīs sesijas", - 'Language' => "Valodā", - 'SQL Editor' => "SQL redaktors", - 'Toggle SQL Editor' => "Pārslēgt SQL redaktors", - 'Experimental' => "Eksperimentāls", - 'Import table data' => "Importēt tabulas datus", - 'Import table data from external file' => "Importa tabulas dati no ārēja faila", - 'Batch operations' => "Partijas darbības", - 'Perform one or more batch operations on database' => "Veic vienu vai vairākas partijas darbības ar datu bāzi", - 'Create a new schema in the database' => "Izveidot jaunu shēmu datu bāzē", - 'Create Schema' => "Izveidot shēmu", - 'Table Description' => "Galds Apraksts", - 'Database Manager' => "Datubāzes pārvaldnieks", - 'Manage databases' => "Pārvaldīt datubāzes", - 'Backup database on the server as SQL dump' => "Backup datu bāze uz servera, SQL dump", - 'Backup Database' => "Rezerves datu bāze", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "Jūsu pārlūkprogramma, šķiet, ir ļoti vecs un neatbalsta visas īpašības, kas nepieciešamas, lai palaistu MyWebSQL.", - 'Try using a newer version of the browser to run this application.' => "Mēģiniet izmantot jaunāku pārlūkprogrammas, lai palaistu šo programmu.", - - // text used on various screens in the interface - 'Visit Project website' => "Apmeklējiet Projekta mājas lapa", - 'Version' => "versiju", - 'Loading' => "Iekraušanas", - 'Quick Edit Options' => "Ātrā Rediģēt opcijas", - 'Press {{KEY}} to set NULL' => "Nospiediet {{KEY}}, lai iestatītu NULL", - 'MySQL Server' => "MySQL Server", - 'Logged in as: {{USER}}' => "Pieteicies kā: {{USER}}", - 'Results' => "Rezultāti", - 'Messages' => "Ziņas", - 'Information' => "Informācija", - 'History' => "Vēsture", - 'There are no results to show in this view' => "Nav rezultātu, lai parādītu šo viedokli", - 'Refresh results' => "Atsvaidzināt rezultātus", - 'Please wait' => "Lūdzu uzgaidiet", - 'Query All' => "Vaicājumu Visi", - 'Query' => "Vaicājums", - 'Add Record' => "Pievienot ierakstu", - 'Delete Record(s)' => "Dzēst ierakstu (s)", - 'Update Record(s)' => "Update reģistra (-u)", - 'Generate SQL' => "Izveidot SQL", - 'Database name' => "Datu bāzes nosaukums", - 'Select database after creation' => "Izvēlieties datu bāzi pēc izveides", - 'Database connection failed to the server' => "Savienojums ar datubāzi neizdevās serveri", - 'Host' => "Host", - 'User' => "Lietotājs", - 'Select a database to begin' => "Izvēlieties datu bāzi, lai sāktu", - 'Select/unselect All records' => "Izvēlēties / atceliet Visi ieraksti", - 'Primary key column' => "QGIS", - 'Unique key column' => "Atslēgas kolonnu", - 'Showing records {{START}} - {{END}}' => "Rāda ieraksti {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "Rāda pirmo {{MAX}} ieraksta tikai", - '1 query successfully executed' => "1 query veiksmīgi izpildīts", - '{{NUM}} queries successfully executed' => "{{NUM}} jautājumiem veiksmīgi izpildīts", - '{{NUM}} record(s) were affected' => "{{NUM}} ierakstu (s) skāra", - '{{NUM}} record(s) updated' => "{{NUM}} ierakstu (s) atjaunināts", - 'Error occurred while executing the query' => "Kļūda izpildes vaicājumu", - '{{NUM}} queries failed to execute' => "{{NUM}} jautājumiem neizdevās izpildīt", - 'Click to view/edit column data [{{NUM}} Bytes]' => "Klikšķiniet, lai apskatītu / rediģēt kolonnu datu [{{NUM}} Bytes]", - 'Blob data is not editable' => "Lāse dati nav rediģējams", - 'Blob data saved' => "Lāse dati saglabāti", - 'Failed to save blob data' => "Neizdevās saglabāt lāse datu", - 'The process with id [{{PID}}] was killed' => "Ar ID procesā [{{PID}}] tika nogalināts", - 'No such process [id = {{PID}}]' => "Nav tādas procesā [id = {{PID}}]", - 'Select a process and click the button to kill the process' => "Izvēlieties procesu un noklikšķiniet uz pogas, lai nogalinātu procesu", - 'Process ID' => "Procesa ID", - 'Command' => "Komanda", - 'Time' => "Laiks", - 'Info' => "Info", - 'Kill Process' => "Kill process", - 'Failed to get process list' => "Neizdevās iegūt procesā sarakstu", - 'The command executed successfully' => "Komanda veic sekmīgi", - 'Invalid server configuration' => "Nederīgs servera konfigurāciju", - 'Invalid Credentials' => "Nederīgs Kvalifikācijas dati", - 'New database successfully created' => "Jaunu datu bāzi veiksmīgi izveidots", - 'File upload failed. Please try again' => "Neizdevās ielādēt failu. Lūdzu, mēģiniet vēlreiz", - 'No queries were executed during import' => "Neviens neizteica izpildīts, to importējot", - 'Maximum upload filesize is {{SIZE}}' => "Maksimālais augšupielādes filesize ir {{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "Atbalstītie failu tipi / paplašinājumi ir: ({{saraksts}})", - 'Database summary' => "Datubāze kopsavilkums", - 'Server Variables' => "Servera mainīgie", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "Jebkuru esošo objektu ar tādu pašu nosaukumu ir samazinājies rokām, pirms izpildes izveides komandu", - 'Only create commands are accepted' => "Izveidot tikai komandas tiek pieņemti", - 'User ID' => "Lietotāja ID", - 'Password' => "Parole", - 'Login' => "Login", - 'Create new database object' => "Izveidot jaunu datu bāzes objektu", - 'Enter command for object creation' => "Ievadiet komandu objekta izveidei", - 'Submit' => "Iesniegt", - 'Show blob data as: {{TYPE}}' => "Rādīt lāse datus kā: {{TYPE}}", - 'Blob data for column {{NAME}}' => "Lāse datu kolonnas {{NAME}}", - 'Create command for {{TYPE}} {{NAME}}' => "Izveidot komandu {{TYPE}} {{NAME}}", - 'Table Engine (type)' => "Tabulā Dzinēja (tips)", - 'Change Table Type' => "Mainīt tabulas tips", - 'The requested page is not available on the server' => "Pieprasītā lapa nav pieejama servera", - 'Error' => "Kļūda", - 'It appears that you attempted to submit an invalid request to the server' => "Šķiet, ka jums mēģināja iesniegt nederīgu pieprasījums uz serveri", - 'The request has been denied. Reloading the page might solve the problem' => "Pieprasījums ir noraidīts. Pārkraušanas lapa var atrisināt šo problēmu", - 'Access Denied' => "Piekļuve liegta", - 'Help' => "Palīdzība", - 'To see most up-to-date help contents, please visit {{LINK}}' => "Lai redzētu visvairāk up-to-date palīdzētu saturu, lūdzu, apmeklējiet {{LINK}}", - 'It appears that your browser session has expired' => "Šķiet, ka jūsu pārlūkprogrammā sesija ir beigusies", - 'Please refresh the webpage to re-login' => "Lūdzu, atsvaidziniet tīmekļa atkārtoti login", - 'Table information' => "Tabulas informācija", - 'Edit' => "Rediģēt", - 'Save' => "Saglabāt", - 'Either the database is empty, or there was an error retrieving list of database objects' => "Vai nu datu bāze ir tukša, vai arī bija kļūda, atjaunojot sarakstu datu bāzes objektu", - 'Please try closing and re-opening this dialog again' => "Lūdzu, mēģiniet aizvēršanas un no jauna atvērt šo dialoglodziņu", - 'Structure' => "Struktūra", - 'Table Data' => "Tabulas datus", - 'Structure and Table Data' => "Struktūra un tabulas dati", - 'Options' => "Iespējas", - 'Set Auto increment field values to NULL' => "Iestatīt Auto pieaugums lauku vērtības NULL", - 'Add DROP command before create statements' => "Pievienot DROP komanda pirms izveidotu pārskatu", - 'Export' => "Eksporta", - 'Import' => "Importa", - 'Export Database' => "Eksporta datu bāze", - 'Export Table' => "Eksporta tabula", - 'Server information' => "Servera informācija", - 'Server' => "Serveris", - 'Version comment' => "Versiju komentāru", - 'Character sets' => "Rakstzīmju komplekti", - 'Server character set' => "Serveri rakstzīmju", - 'Client character set' => "Klientu rakstzīmju kopa", - 'Database character set' => "Datubāzes rakstzīmju kopa", - 'Results character set' => "Rezultāti rakstzīmju kopa", - 'Export As' => "Eksportēt kā", - 'Insert Statements' => "Ievietot paziņojumi", - 'Include field names in query' => "Iekļaut lauku nosaukumus vaicājuma", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Vienkāršs teksts (viens ieraksts katrā rindā)", - 'Fields separated by:' => "Lauki atdalīti ar:", - 'Export Results' => "Eksporta rezultāti", - 'Select SQL batch file to import' => "Izvēlieties SQL sērijveida importēt", - 'Continue processing even if error occurs' => "Turpināt apstrādāt pat tad, ja kļūda", - 'Basic Information' => "Pamatinformācija", - 'Table Properties' => "Tabulas rekvizīti", - 'Table Name' => "Tabulas nosaukums", - 'Field Name' => "Lauka nosaukums", - 'Data Type' => "Datu tips", - 'Length' => "Garums", - 'Default value' => "Noklusējuma vērtība", - 'Unsigned' => "Neparakstīts", - 'Zero Fill' => "Zero Aizpildiet", - 'Primary Key' => "Primārā atslēga", - 'Auto Increment' => "Auto Pieaugums", - 'Not NULL' => "NOT NULL", - 'Character Set' => "Rakstzīmju komplekts", - 'Collation' => "Salīdzināšana", - 'Comment' => "Komentāru", - 'Waiting for table information to be submitted' => "Gaida tabulas informācija, kas jāiesniedz", - 'Add field' => "Pievienot lauku", - 'Delete selected field' => "Dzēst atlasīto lauku", - 'Clear Table Information' => "Notīrīt Galda informācija", - 'List of values' => "Vērtību sarakstu", - 'Query Results' => "Vaicājuma rezultāti", - 'Data for {{TABLE}}' => "Dati par {{TABLE}}", - 'Select tables to be analyzed/repaired' => "Izvēlieties tabulas ir jāanalizē / labot", - 'Operation to perform' => "Darbību, lai veiktu", - 'Analyze' => "Analizēt", - 'Check' => "Pārbaude", - 'Optimize' => "Optimizēt", - 'Repair' => "Remonts", - 'Skip Binary logging' => "Izlaist Binary mežizstrāde", - 'Default' => "Default", - 'Quick' => "Ātrās", - 'Fast' => "Ātrās", - 'Medium' => "Vidēja", - 'Extended' => "Pagarināts", - 'Changed' => "Mainīts", - 'Use Frm files (MyISAM tables)' => "Izmantojiet FRM faili (MyISAM tabulas)", - 'User Information' => "Lietotāja informācija", - 'Global Privileges' => "Pasaules Privilēģijas", - 'Database Privileges' => "Datubāzē privilēģijas", - 'Import File' => "Importēt failu", - 'Index Manager' => "Index vadītājs", - 'Edit table structure' => "Edit table struktūra", - 'Save All Changes' => "Saglabāt visas izmaiņas", - 'Changes are not saved until you press [Save All Changes]' => "Izmaiņas netiek saglabātas līdz brīdim, kad nospiediet [Saglabāt visas izmaiņas]", - 'Field Length' => "Lauka garums", - 'Select objects to include in export' => "Izvēlieties objektu iekļaut eksporta", - 'Export type' => "Eksporta veids", - 'Select All/None' => "Select All / Nav", - 'Add User' => "Pievienot lietotāju", - 'Update User' => "Update lietotāju", - 'Delete selected User' => "Dzēst atlasīto lietotāju", - 'Remove Password' => "Noņemt paroli", - 'Select tables to search' => "Izvēlieties tabulas meklēt", - 'Search Options' => "Meklēšanas opcijas", - 'Search in following field types' => "Meklēt pēc lauka tipu", - 'Numeric Fields' => "Skaitliskajiem laukiem", - 'Character Fields' => "Rakstzīmju lauki", - 'Text Fields' => "Teksta lauki", - 'Date/Time Fields' => "Datums / laiks lauki", - 'Comparison Type' => "Salīdzinājums tips", - 'Text to search' => "Teksta meklēt", - 'Search' => "Meklēšana", - 'Search Results' => "Meklēšanas rezultāti", - 'Number of matches' => "Spēļu skaits", - 'Search results for {{KEYWORD}} in the database' => "Meklēšanas rezultāti {{KEYWORD}} datubāzē", - '{{NUM}} match(es)' => "{{NUM}} spēles (es)", - 'Copy query to editor' => "Kopiju vaicājumu redaktoru", - 'Done' => "Gatavs", - 'SQL Editor' => "SQL redaktors", - 'Create Copy' => "Izveidot Kopēt", - 'Minimize All' => "Minimizēt visus", - 'Copy Record(s)' => "Kopija ieraksts (-i)", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "Atdalīt ar komatiem (CSV uz Excel)", - 'Select data file to import' => "Izvēlieties datu failu, lai importētu", - 'Select table for data import' => "Izvēlieties tabulu datu importa", - 'First line contains column names' => "Pirmā rinda satur kolonnu nosaukumiem", - 'Select objects to operate upon' => "Atzīmē objektus, lai darbotos pēc", - 'Operations to perform' => "Darbības, lai veiktu", - 'Add prefix string to name' => "Pievienot priedēkli virkni nosaukt", - 'Delete prefix string from name' => "Izdzēst prefiksu virkni no nosaukuma", - 'Command text' => "Komanda teksts", - 'DROP selected database objects' => "DROP izvēlēto datu bāzes objektus", - 'Batch operation results' => "Partijas darbības rezultāti", - 'Operation' => "Darbība", - 'Status' => "Status", - '{{NUM}} queries generated' => "{{NUM}} apšauba radīts", - 'Please select one or more operations to perform' => "Lūdzu, izvēlieties vienu vai vairākas darbības, lai veiktu", - 'Quick Search' => "Ātrā meklēšana", - '{{NAME}} client library is not installed' => "{{NAME}} klients bibliotēka nav uzstādīta", - '{{NAME}} extension is not installed' => "{{NAME}} paplašinājums nav instalēts", - 'SQLite database folder is inaccessible or not writable' => "SQLite datubāzes mape nav pieejama vai nav rakstāma", - 'Maximize/Restore Results Pane' => "Maksimizēt / Atjaunot rezultātu rūts", - 'Select databases to operate upon' => "Izvēlieties datubāzes darboties pēc", - 'DROP selected databases' => "Nometiet atlasītos datubāzes", - 'The following operation is irreversible' => "Šādas darbības ir neatgriezeniska", - 'Potential data loss might occur' => "Potenciāls datu zudumu var rasties", - 'Add TRUNCATE command before insert statements' => "Pievieno Saīsināt komandu pirms ievietot paziņojumus", - 'Select objects to include in backup' => "Izvēlieties objektu iekļaut rezerves", - 'Backup folder does not exist or is not writable' => "Dublējuma mape nepastāv vai nav rakstāms", - 'Backup type' => "Rezerves tips", - 'Database backup successfully created' => "Datubāzes rezerves veiksmīgi izveidots", - 'Failed to create database backup' => "Neizdevās izveidot datubāzi rezerves", - 'Generate Bulk insert statements' => "Izveidot Bulk ievietot paziņojumus", - 'Maximum size of SQL statement' => "Maksimālais izmērs SQL", - 'Show record count with table names' => "Rādīt ierakstu skaits ar tabulu nosaukumi", - 'Sort Table listing by' => "Šķirot Table sarakstā pēc", - 'Name' => "Nosaukums", - 'Last Update Time' => "Last Update laiks", - 'Maximum records to display in result set' => "Maksimālais ierakstus, lai parādītu rezultātu kopā", - 'Show popup dialog for editing large text data' => "Rādīt uznirstošo dialogu rediģēšanu lielu teksta datus", - 'Miscellaneous' => "Dažādi", - 'Reset all confirmation dialogs' => "Atjaunotu visus apstiprinājuma dialogs", - 'Record Editing' => "Ierakstu rediģēšana", - 'Exclude Table type' => "Izslēgt tabulu tipu", - 'Exclude Table Character set' => "Izslēgt tabula rakstzīmju kopu", - 'Backup filename' => "Backup faila", - 'Invalid filename format' => "Nederīgs faila formāts", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "visi", - 'all selected' => "visas atlasītās", - 'An error occured while refreshing the object list.' => "Kļūda atsvaidzināt objektu sarakstā.", - 'Are you sure you want to clear all field information from table?' => "Vai esat pārliecināts, ka vēlaties izdzēst visu lauka informāciju no galda?", - 'Are you sure you want to delete this user account?' => "Vai tiešām vēlaties dzēst šo lietotāju kontu?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "Vai esat pārliecināts, ka vēlaties DROP visus objektus no datu bāzes {{NAME}}?", - 'Are you sure you want to DROP selected objects?' => "Vai tiešām vēlaties nomest atlasītos objektus?", - 'Are you sure you want to DROP the database {{NAME}}?' => "Vai tiešām vēlaties dzēst datubāzi {{NAME}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "Vai esat pārliecināts, ka vēlaties izdzēst šo objektu? {{NAME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "Vai tiešām vēlaties izpildīt {{ĪPAŠĀ}} jautājumiem?", - 'Are you sure you want to logout?' => "Vai tiešām vēlaties iziet?", - 'Are you sure you want to truncate the table {{NAME}}?' => "Vai esat pārliecināts, ka vēlaties saīsināt galda {{NAME}}?", - 'Blob Data [{{SIZE}}]' => "Lāse dati [{{SIZE}}]", - 'Cancel' => "Atcelt", - 'Check for Updates' => "Pārbaudīt, vai nav atjauninājumu", - 'Clear command history?' => "Notīrīt komandu vēsture?", - 'Close' => "Aizvērt", - 'Confirm Action' => "Apstipriniet darbība", - 'Confirm and do not ask me again about this choice' => "Apstipriniet un to nejautāt par šo izvēli", - 'Copy Object' => "Kopēt Objekta", - 'Create Database' => "Izveidot datu bāzi", - 'Create Primary Index on this field' => "Izveidot Primārās Index šajā jomā", - 'Databases' => "Datubāzes", - 'Default value [Use quotes to specify string values]' => "Noklusējuma vērtība [Izmantojiet pēdiņas, lai norādītu string vērtību]", - 'Disallow NULL values in Field' => "Neatļaut NULL vērtības laukā", - 'Enter new index name' => "Ievadiet jauno indeksu nosaukumu", - 'Enter new name for the database object' => "Ievadiet jauno nosaukumu datu bāzes objektu", - 'Enter the text to search in database' => "Ievadiet meklējamo tekstu datu bāzē", - 'Error' => "Kļūda", - 'Events' => "Notikumi", - 'Execute query' => "Izpildīt vaicājumu", - 'Exports results' => "Eksports rezultāti", - 'Failed to refresh the results.' => "Neizdevās atsvaidzināt rezultātus.", - 'Field Datatype' => "Lauku datu tipus", - 'Field Name' => "Lauka nosaukums", - 'Field value is Auto Incremented' => "Lauka vērtība ir Auto palielināts", - 'Functions' => "Funkcijas", - 'Indexes Updated' => "Indeksu Atjaunots", - 'Maximum Length of field value' => "Maksimālais garums lauka vērtība", - 'Navigation Error. Try reloading the page' => "Navigācijas kļūda. Mēģiniet atkārtoti ielādēt lapu", - 'New settings saved and applied' => "Jaunos iestatījumus saglabāti un piemēro", - 'New version is available' => "Jaunā versija ir pieejama", - 'Next' => "Nākamā", - 'No' => "Nē", - 'No Table selected' => "Nē Galda izvēlēts", - 'Not enough room to show this pane.' => "Nav pietiekami daudz vietas, lai parādītu šo rūti.", - 'OK' => "OK", - 'One or more field information is incomplete' => "Vienu vai vairākas lauku informācija ir nepilnīga", - 'Open' => "Atvērt", - 'Operation failed' => "Darbība neizdevās", - 'Pad field values with leading zeros' => "Pad lauka vērtības ar nullēm", - 'Pane' => "Rūts", - 'Passwords do not match' => "Paroles nesakrīt", - 'Pin' => "Tapa", - 'Please select one or more operations to perform' => "Lūdzu, izvēlieties vienu vai vairākas darbības, lai veiktu", - 'Please type in one or more queries in the SQL editor!' => "Lūdzu, ievadiet vienu vai vairākus vaicājumus SQL redaktors!", - 'Please wait...' => "Lūdzu, uzgaidiet ...", - 'Previous' => "Iepriekšējais", - 'Procedures' => "Procedūras", - 'Prompt' => "Prompt", - 'Refresh results' => "Atsvaidzināt rezultātus", - 'Refreshing object list' => "Atsvaidzina objektu sarakstu", - 'Rename Object' => "Pārdēvēt Objektu", - 'Resize' => "Resize", - 'Results page:' => "Rezultāti lapā:", - 'Select a database to view privileges for the user' => "Izvēlieties datu bāzi, lai apskatītu privilēģijas lietotājiem", - 'Select an index to view / edit its details' => "Izvēlieties indekss Skatīt / rediģēt savus datus", - 'Select at least one field type for searching' => "Izvēlieties vismaz vienu lauka tips meklēšanai", - 'Select objects to operate upon' => "Atzīmē objektus, lai darbotos pēc", - 'selector' => "atlasītāju", - 'Slide Open' => "Atbīdiet", - 'Table information requires at least one valid field' => "Tabulas informācija nepieciešams vismaz viens derīgs jomā", - 'Table name is required' => "Tabulas nosaukums ir obligāts", - 'Table successfully created' => "Tabulā veiksmīgi izveidots", - 'Table successfully modified' => "Tabulā veiksmīgi izmaiņas", - 'Tables' => "Tabulas", - 'Text Data [{{SIZE}}]' => "Teksta dati [{{SIZE}}]", - 'There is no record in the results to export' => "Nav rezultātu ieraksta eksporta", - 'This attribute is not required for selected field type' => "Šis atribūts nav vajadzīgs izvēlētā lauka tips", - 'Triggers' => "Trigeri", - 'Un-Pin' => "Un-Pin", - 'Unsigned numbered field only' => "Neparakstīts numurētas jomā tikai tad", - 'Update check failed' => "Update pārbaudīt neizdevās", - 'User information is incomplete or invalid' => "Lietotāja informācija ir nepilnīga vai spēkā neesošu", - 'User Manager' => "Lietotāju pārvaldnieks", - 'Views' => "Viedokļus", - 'WARNING' => "BRĪDINĀJUMS", - 'Yes' => "Jā", - 'You have the latest version' => "Jums ir jaunākā versija", - - ); -?> diff --git a/lang/ms.php b/lang/ms.php deleted file mode 100644 index 070c2b1..0000000 --- a/lang/ms.php +++ /dev/null @@ -1,463 +0,0 @@ - "Gunakan Database", - 'Drop Database' => "Drop Database", - 'Empty Database' => "Kosong Database", - 'Drop all tables from this database' => "Drop semua jadual dari database ini", - 'Select statement' => "Pilih kenyataan", - 'Insert statement' => "Masukkan kenyataan", - 'Update statement' => "Update kenyataan", - 'Describe' => "Menggambarkan", - 'Show create command' => "Papar membuat perintah", - 'View data' => "Lihat Data", - 'Alter Table' => "Alter Jadual", - 'Indexes' => "Indeks", - 'Engine Type' => "Jenis mesin", - 'More operations' => "Lebih operasi", - 'Truncate' => "Memotong", - 'Drop' => "Penurunan", - 'Rename' => "Tukar nama", - 'Export table data' => "Eksport data jadual", - 'Create Table' => "Membuat Jadual", - 'Create View' => "Buat Lihat", - 'Create Procedure' => "Buat Prosedur", - 'Create Function' => "Buat Fungsi", - 'Create Trigger' => "Buat Trigger", - 'Create Event' => "Buat Acara", - 'Show/Hide Panel' => "Papar / Maklum Panel", - 'Show/Hide Header' => "Papar / Maklum Header", - 'Copy all queries to clipboard' => "Salin semua soalan ke clipboard", - 'Clear history' => "Padam daripada", - 'Copy Column values' => "Salin Kolom nilai", - 'Copy to clipboard' => "Salin ke clipboard", - 'Generate SQL Filter' => "Hasilkan SQL Filter", - 'Database Manager' => "Pengurus Pangkalan Data", - 'Manage databases' => "Mengurus pangkalan data", - - // main menu related text - 'Database' => "Database", - 'Refresh' => "Menyegarkan", - 'Refresh database object list' => "Refresh objek database senarai", - 'Create new' => "Buat baru", - 'Export' => "Eksport", - 'Export database to external file' => "Eksport database ke fail luaran", - 'Objects' => "Objek", - 'Create Table' => "Membuat Jadual", - 'Create a new table in the database' => "Buat jadual baru pada database", - 'Create View' => "Buat Lihat", - 'Create a new view in the database' => "Buat pandangan baru dalam database", - 'Create Stored Procedure' => "Buat Stored Prosedur", - 'Create a new stored procedure in the database' => "Buat baru prosedur yang disimpan di dalam sistem database", - 'Create Function' => "Buat Fungsi", - 'Create a new user defined function in the database' => "Buat user baru ditakrifkan fungsi di dalam sistem database", - 'Create Trigger' => "Buat Trigger", - 'Create a new trigger in the database' => "Buat mencetuskan baru dalam database", - 'Create Event' => "Buat Acara", - 'Create a new event in the database' => "Buat acara baru dalam database", - 'Data' => "Data", - 'Import batch file' => "Import file batch", - 'Import multiple queries from batch file' => "Beberapa Import soalan dari fail batch", - 'Export database' => "Eksport database", - 'Export database to batch file as sql dump' => "Eksport database ke fail batch sebagai dump sql", - 'Export current results' => "Eksport saat ini hasil", - 'Export query results to clipboard or files' => "Eksport hasil query ke clipboard atau fail", - 'Tools' => "Tools", - 'Process Manager' => "Proses Manager", - 'View and manage database processes' => "Lihat dan mengurus proses database", - 'Repair Tables' => "Perbaikan Jadual", - 'Analyze and repair database tables' => "Menganalisis dan memperbaiki jadual database", - 'User Manager' => "Pengelola pengguna", - 'Manage database users' => "Menguruskan user dari database", - 'Search in Database' => "Cari di Database", - 'Search for text in the database' => "Cari teks dalam database", - 'Information' => "Maklumat", - 'Server/Connection Details' => "Server / Koneksi Details", - 'View server configuration' => "Konfigurasi View server", - 'View server and connection details' => "View server dan sambungan butiran", - 'Server Variables' => "Pembolehubah pelayan", - 'Database Summary' => "Database Review", - 'View current database summary stats' => "Melihat statistik database saat ringkasan", - 'Interface' => "Interface", - 'Options' => "Pilihan", - 'Configure application options' => "Tatarajah Pilihan aplikasi", - 'UI Theme' => "Tema UI", - 'Database Objects' => "Database Objek", - 'Toggle Object Viewer' => "Toggle Objek Viewer", - 'Help contents' => "Bantuan isi", - 'Learn the basics of using MyWebSQL' => "Pelajari dasar-dasar penggunaan MyWebSQL", - 'QuickStart Tutorials' => "QuickStart Tutorial", - 'See quick hands-on tutorial of MyWebSQL interface' => "Lihat antara muka tangan-tutorial MyWebSQL cepat", - 'Online documentation' => "dokumentasi Online", - 'View online documentation on project website' => "Lihat dokumentasi online pada laman web projek", - 'Request a Feature' => "Permintaan Ciri-ciri sebuah", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "Jika anda ingin ciri kegemaran yang paling anda menjadi sebahagian daripada MyWebSQL, sila klik di sini untuk memberitahu tentang hal itu", - 'Report a Problem' => "Laporan Masalah sebuah", - 'Check for updates' => "Semak kemas kini", - 'Check for updated versions of the application online' => "Semak versi terbaru dari aplikasi online", - 'Logout' => "Logout", - 'Logout from this session' => "Logout daripada sesi ini", - 'Language' => "Bahasa", - 'SQL Editor' => "SQL Editor", - 'Toggle SQL Editor' => "Togol SQL Editor", - 'Experimental' => "Eksperimen", - 'Import table data' => "Import data jadual", - 'Import table data from external file' => "Jadual import data dari fail luaran", - 'Batch operations' => "Batch operasi", - 'Perform one or more batch operations on database' => "Melaksanakan satu atau lebih operasi kelompok pada pangkalan data", - 'Create a new schema in the database' => "Buat skema baru dalam pangkalan data", - 'Create Schema' => "Buat Skema", - 'Table Description' => "Description Jadual", - 'Database Manager' => "Pengurus Pangkalan Data", - 'Manage databases' => "Mengurus pangkalan data", - 'Backup database on the server as SQL dump' => "Pangkalan data sandaran pada pelayan sebagai SQL dump", - 'Backup Database' => "Pangkalan Data Backup", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "Browser anda nampaknya sangat tua dan tidak menyokong semua ciri-ciri yang diperlukan untuk menjalankan MyWebSQL.", - 'Try using a newer version of the browser to run this application.' => "Cuba gunakan versi terbaru dari browser untuk menjalankan aplikasi ini.", - - // text used on various screens in the interface - 'Visit Project website' => "Lawati laman Projek", - 'Version' => "versi", - 'Loading' => "Pembebanan", - 'Quick Edit Options' => "Edit Cepat Pilihan", - 'Press {{KEY}} to set NULL' => "Tekan {{KEY}} untuk menetapkan NULL", - 'MySQL Server' => "MySQL Server", - 'Logged in as: {{USER}}' => "Masuk sebagai: {{USER}}", - 'Results' => "Keputusan", - 'Messages' => "Mesej", - 'Information' => "Maklumat", - 'History' => "Sejarah", - 'There are no results to show in this view' => "Tidak ada hasil yang dapat dipaparkan dalam paparan ini", - 'Refresh results' => "Refresh hasil", - 'Please wait' => "Harap tunggu", - 'Query All' => "Query Semua", - 'Query' => "Soalan", - 'Add Record' => "Tambah Rakam", - 'Delete Record(s)' => "Padam Record (s)", - 'Update Record(s)' => "Update Record (s)", - 'Generate SQL' => "Hasilkan SQL", - 'Database name' => "Nama database", - 'Select database after creation' => "Pilih database setelah kejadian", - 'Database connection failed to the server' => "Database gagal Sambungan ke pelayan", - 'Host' => "Tuan rumah", - 'User' => "Pengguna", - 'Select a database to begin' => "Pilih database untuk mula", - 'Select/unselect All records' => "Pilih / tidak memilih Semua nota", - 'Primary key column' => "Kunci primer medan", - 'Unique key column' => "Unik kunci medan", - 'Showing records {{START}} - {{END}}' => "Memaparkan nota {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "Hotel pertama {{MAX}} hanya mencatat", - '1 query successfully executed' => "1 query berjaya dilaksanakan", - '{{NUM}} queries successfully executed' => "{{NUM}} query berjaya dijalankan", - '{{NUM}} record(s) were affected' => "{{NUM}} record (s) terkena kesan", - '{{NUM}} record(s) updated' => "{{NUM}} record (s) dikemaskini", - 'Error occurred while executing the query' => "Kesalahan terjadi ketika mengeksekusi query", - '{{NUM}} queries failed to execute' => "{{NUM}} query gagal mengeksekusi", - 'Click to view/edit column data [{{NUM}} Bytes]' => "Klik untuk melihat / edit medan data [{{NUM}} Bytes]", - 'Blob data is not editable' => "Blob data tidak boleh diedit", - 'Blob data saved' => "Blob data yang disimpan", - 'Failed to save blob data' => "Gagal menyimpan data blob", - 'The process with id [{{PID}}] was killed' => "Proses dengan id [{{PID}}] tewas", - 'No such process [id = {{PID}}]' => "Tidak ada proses seperti [id = {{PID}}]", - 'Select a process and click the button to kill the process' => "Pilih sebuah proses dan klik butang untuk membunuh proses", - 'Process ID' => "Proses MY", - 'Command' => "Perintah", - 'Time' => "Waktu", - 'Info' => "Maklumat", - 'Kill Process' => "Kill Proses", - 'Failed to get process list' => "Gagal untuk mendapatkan senarai proses", - 'The command executed successfully' => "Perintah dijalankan berjaya", - 'Invalid server configuration' => "Server tatarajah tidak sah", - 'Invalid Credentials' => "Kredensial tidak sah", - 'New database successfully created' => "Database baru berjaya dicipta", - 'File upload failed. Please try again' => "File upload gagal. Sila cuba lagi", - 'No queries were executed during import' => "Tidak ada query yang dieksekusi selama import", - 'Maximum upload filesize is {{SIZE}}' => "Maksimum filesize upload adalah {{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "Jenis fail yang disokong / extensions adalah: ({{DAFTAR}})", - 'Database summary' => "Database ringkasan", - 'Server Variables' => "Pembolehubah pelayan", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "Setiap objek yang ada dengan nama yang sama harus dijatuhkan secara manual sebelum menjalankan perintah penciptaan", - 'Only create commands are accepted' => "Hanya membuat perintah yang diterima", - 'User ID' => "User ID", - 'Password' => "Password", - 'Login' => "Masuk", - 'Create new database object' => "Buat database baru objek", - 'Enter command for object creation' => "Masukkan arahan untuk pembuatan objek", - 'Submit' => "Menyerahkan", - 'Show blob data as: {{TYPE}}' => "Papar gumpalan data sebagai: {{TYPE}}", - 'Blob data for column {{NAME}}' => "Gumpalan data untuk medan {{NAME}}", - 'Create command for {{TYPE}} {{NAME}}' => "Buat arahan untuk {{TYPE}} {{NAME}}", - 'Table Engine (type)' => "Jadual Engine (jenis)", - 'Change Table Type' => "Tukar Jadual Jenis", - 'The requested page is not available on the server' => "Laman yang diminta tidak terdapat di pelayan", - 'Error' => "Kesalahan", - 'It appears that you attempted to submit an invalid request to the server' => "Tampak bahawa anda cuba untuk menghantar permintaan kepada pelayan tidak sah", - 'The request has been denied. Reloading the page might solve the problem' => "Permintaan telah ditolak. Ulang halaman mungkin menyelesaikan masalah", - 'Access Denied' => "Akses ditolak", - 'Help' => "Bantuan", - 'To see most up-to-date help contents, please visit {{LINK}}' => "Untuk melihat kandungan yang paling up-to-date membantu, sila kunjungi {{LINK}}", - 'It appears that your browser session has expired' => "Nampaknya sesi pelayar anda telah berakhir", - 'Please refresh the webpage to re-login' => "Sila refresh laman web untuk re-login", - 'Table information' => "Jadual maklumat", - 'Edit' => "Edit", - 'Save' => "Simpan", - 'Either the database is empty, or there was an error retrieving list of database objects' => "Entah database kosong, atau ada senarai error memuat objek database", - 'Please try closing and re-opening this dialog again' => "Sila cuba menutup dan membuka kembali dialog ini lagi", - 'Structure' => "Struktur", - 'Table Data' => "Jadual Data", - 'Structure and Table Data' => "Struktur dan Data Jadual", - 'Options' => "Pilihan", - 'Set Auto increment field values to NULL' => "Tetap nilai-nilai peningkatan lapangan Automatik ke NULL", - 'Add DROP command before create statements' => "Tambah DROP arahan sebelum membuat laporan", - 'Export' => "Eksport", - 'Import' => "Import", - 'Export Database' => "Eksport Database", - 'Export Table' => "Jadual Eksport", - 'Server information' => "Maklumat pelayan", - 'Server' => "Server", - 'Version comment' => "Versi komen", - 'Character sets' => "Watak set", - 'Server character set' => "Server set aksara", - 'Client character set' => "Pelanggan set aksara", - 'Database character set' => "Database set aksara", - 'Results character set' => "Keputusan set aksara", - 'Export As' => "Eksport Sebagai", - 'Insert Statements' => "Masukkan Laporan", - 'Include field names in query' => "Sertakan nama field dalam query", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Plain Text (Satu catatan pada baris)", - 'Fields separated by:' => "Fields dipisahkan oleh:", - 'Export Results' => "Eksport Keputusan", - 'Select SQL batch file to import' => "Pilih fail batch SQL untuk mengimport", - 'Continue processing even if error occurs' => "Meneruskan pemprosesan bahkan jika terjadi kesalahan", - 'Basic Information' => "Maklumat Asas", - 'Table Properties' => "Jadual Properties", - 'Table Name' => "Nama Jadual", - 'Field Name' => "Nama Field", - 'Data Type' => "Jenis Data", - 'Length' => "Panjang", - 'Default value' => "Nilai lalai", - 'Unsigned' => "Unsigned", - 'Zero Fill' => "Zero Isi", - 'Primary Key' => "Kunci utama", - 'Auto Increment' => "Auto Increment", - 'Not NULL' => "Tidak NULL", - 'Character Set' => "Character Set", - 'Collation' => "Pemeriksaan", - 'Comment' => "Komen", - 'Waiting for table information to be submitted' => "Menunggu jadual maklumat yang disampaikan", - 'Add field' => "Tambah bidang", - 'Delete selected field' => "Padam yang dipilih lapangan", - 'Clear Table Information' => "Padam Jadual Maklumat", - 'List of values' => "Daftar nilai", - 'Query Results' => "Keputusan Query", - 'Data for {{TABLE}}' => "Data untuk {{TABLE}}", - 'Select tables to be analyzed/repaired' => "Pilih jadual yang akan dianalisis / diperbaiki", - 'Operation to perform' => "Operasi untuk melakukan", - 'Analyze' => "Menganalisa", - 'Check' => "Periksa", - 'Optimize' => "Optimalkan", - 'Repair' => "Perbaikan", - 'Skip Binary logging' => "Skip Binary penebangan", - 'Default' => "Default", - 'Quick' => "Cepat", - 'Fast' => "Cepat", - 'Medium' => "Medium", - 'Extended' => "Luas", - 'Changed' => "Berubah", - 'Use Frm files (MyISAM tables)' => "Gunakan FRM file (jadual MyISAM)", - 'User Information' => "Maklumat Pengguna", - 'Global Privileges' => "Global Keistimewaan", - 'Database Privileges' => "Database Keistimewaan", - 'Import File' => "Import File", - 'Index Manager' => "Index Manager", - 'Edit table structure' => "Edit struktur jadual", - 'Save All Changes' => "Simpan Semua Laman", - 'Changes are not saved until you press [Save All Changes]' => "Laman tidak disimpan sehingga anda menekan [Simpan Semua Laman]", - 'Field Length' => "Field Panjang", - 'Select objects to include in export' => "benda Pilih untuk memasukkan eksport", - 'Export type' => "Jenis Eksport", - 'Select All/None' => "Pilih Semua / Tidak ada", - 'Add User' => "Tambah pengguna", - 'Update User' => "Update User", - 'Delete selected User' => "Padam yang dipilih pengguna", - 'Remove Password' => "Padam Password", - 'Select tables to search' => "Pilih jadual untuk mencari", - 'Search Options' => "Pilihan Carian", - 'Search in following field types' => "Cari mengikut jenis bidang", - 'Numeric Fields' => "Numeric Fields", - 'Character Fields' => "Watak Fields", - 'Text Fields' => "Bidang Mesej", - 'Date/Time Fields' => "Tarikh / Waktu Fields", - 'Comparison Type' => "Perbandingan Jenis", - 'Text to search' => "Mesej untuk mencari", - 'Search' => "Cari", - 'Search Results' => "Keputusan Carian", - 'Number of matches' => "Jumlah perlawanan", - 'Search results for {{KEYWORD}} in the database' => "Keputusan Carian untuk {{KEYWORD}} di dalam sistem database", - '{{NUM}} match(es)' => "{{NUM}} match (es)", - 'Copy query to editor' => "Salin query ke editor", - 'Done' => "Selesai", - 'SQL Editor' => "SQL Editor", - 'Create Copy' => "Buat Salinan", - 'Minimize All' => "Meminimumkan Semua", - 'Copy Record(s)' => "Salinan Rekod (s)", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "Comma Separated (CSV untuk Excel)", - 'Select data file to import' => "Pilih fail data untuk mengimport", - 'Select table for data import' => "Pilih jadual untuk import data", - 'First line contains column names' => "Baris pertama mengandungi nama lajur", - 'Select objects to operate upon' => "Pilih objek untuk beroperasi apabila", - 'Operations to perform' => "Operasi untuk melaksanakan", - 'Add prefix string to name' => "Tambah rentetan awalan nama", - 'Delete prefix string from name' => "Padam rentetan awalan dari nama", - 'Command text' => "Teks arahan", - 'DROP selected database objects' => "GUGUR objek pangkalan data yang dipilih", - 'Batch operation results' => "Batch keputusan operasi", - 'Operation' => "Operasi", - 'Status' => "Status", - '{{NUM}} queries generated' => "{{NUM}} pertanyaan dijana", - 'Please select one or more operations to perform' => "Sila pilih satu atau lebih operasi untuk melaksanakan", - 'Quick Search' => "Carian Pantas", - '{{NAME}} client library is not installed' => "{{NAME}} pelanggan perpustakaan tidak dipasang", - '{{NAME}} extension is not installed' => "{{NAMA}} lanjutan tidak dipasang", - 'SQLite database folder is inaccessible or not writable' => "SQLite folder pangkalan data tidak boleh diakses atau tidak ditulis", - 'Maximize/Restore Results Pane' => "Memaksimumkan / Kembalikan Pane Keputusan", - 'Select databases to operate upon' => "Pilih pangkalan data untuk beroperasi atas", - 'DROP selected databases' => "GUGUR pangkalan data yang dipilih", - 'The following operation is irreversible' => "Operasi berikut adalah tak boleh balik", - 'Potential data loss might occur' => "Potensi kehilangan data mungkin berlaku", - 'Add TRUNCATE command before insert statements' => "Tambah truncate arahan sebelum penyata memasukkan", - 'Select objects to include in backup' => "Pilih objek untuk termasuk dalam sandaran", - 'Backup folder does not exist or is not writable' => "Folder sandaran tidak wujud atau tidak dapat ditulis", - 'Backup type' => "Jenis sandaran", - 'Database backup successfully created' => "Sandaran pangkalan data berjaya dicipta", - 'Failed to create database backup' => "Gagal untuk mewujudkan sandaran pangkalan data", - 'Generate Bulk insert statements' => "Menjana penyata memasukkan Pukal", - 'Maximum size of SQL statement' => "Saiz maksimum pernyataan SQL", - 'Show record count with table names' => "Menunjukkan jumlah rekod dengan nama-nama jadual", - 'Sort Table listing by' => "Susun jadual penyenaraian oleh", - 'Name' => "Nama", - 'Last Update Time' => "Masa Kemas Kini", - 'Maximum records to display in result set' => "Rekod maksimum untuk memaparkan dalam set hasil", - 'Show popup dialog for editing large text data' => "Menunjukkan dialog timbul untuk menyunting data teks besar", - 'Miscellaneous' => "Pelbagai", - 'Reset all confirmation dialogs' => "Menetapkan semula semua dialog pengesahan", - 'Record Editing' => "Editing Rekod", - 'Exclude Table type' => "Tidak termasuk jenis Jadual", - 'Exclude Table Character set' => "Jadual tidak termasuk set aksara", - 'Backup filename' => "Backup nama fail", - 'Invalid filename format' => "Format nama fail tidak sah", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "semua", - 'all selected' => "semua dipilih", - 'An error occured while refreshing the object list.' => "Terjadi kesalahan saat menyegarkan senarai objek.", - 'Are you sure you want to clear all field information from table?' => "Adakah anda benar-benar ingin memadam semua maklumat lapangan dari jadual?", - 'Are you sure you want to delete this user account?' => "Adakah anda benar-benar ingin memadam akaun pengguna?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "Adakah anda benar-benar ingin DROP semua objek dari database {{NAME}}?", - 'Are you sure you want to DROP selected objects?' => "Adakah anda pasti anda mahu GUGUR objek yang dipilih?", - 'Are you sure you want to DROP the database {{NAME}}?' => "Adakah anda benar-benar ingin DROP database {{NAME}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "Adakah anda benar-benar ingin menjatuhkan benda-benda ini? {{NAME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "Adakah anda benar-benar ingin mengeksekusi {{SELECTED}} query?", - 'Are you sure you want to logout?' => "Adakah anda yakin ingin logout?", - 'Are you sure you want to truncate the table {{NAME}}?' => "Adakah anda yakin ingin memotong jadual {{NAME}}?", - 'Blob Data [{{SIZE}}]' => "Data Blob [{{SIZE}}]", - 'Cancel' => "Membatalkan", - 'Check for Updates' => "Semak Kemas", - 'Clear command history?' => "Padam arahan sejarah?", - 'Close' => "Dekat", - 'Confirm Action' => "Pengesahan Aksi", - 'Confirm and do not ask me again about this choice' => "Pengesahan dan jangan tanya saya lagi tentang pilihan ini", - 'Copy Object' => "Objek salinan", - 'Create Database' => "Buat Database", - 'Create Primary Index on this field' => "Buat Primer Indeks di bidang ini", - 'Databases' => "Pangkalan data lain", - 'Default value [Use quotes to specify string values]' => "Default nilai [Gunakan tanda kutip untuk menentukan nilai-nilai string]", - 'Disallow NULL values in Field' => "Larang NULL nilai-nilai di Padang", - 'Enter new index name' => "Masukkan nama indeks baru", - 'Enter new name for the database object' => "Masukkan nama baru untuk objek database", - 'Enter the text to search in database' => "Masukkan teks untuk mencari di dalam sistem database", - 'Error' => "Kesalahan", - 'Events' => "Acara", - 'Execute query' => "Jalankan query", - 'Exports results' => "Keputusan Eksport", - 'Failed to refresh the results.' => "Gagal me-refresh hasilnya.", - 'Field Datatype' => "Padang datatype", - 'Field Name' => "Nama Field", - 'Field value is Auto Incremented' => "Field nilai adalah Auto bertambah", - 'Functions' => "Fungsi", - 'Indexes Updated' => "Indeks Diperbarui", - 'Maximum Length of field value' => "Panjang Maksimum nilai bidang", - 'Navigation Error. Try reloading the page' => "Navigasi Perhatian. Cuba reload halaman", - 'New settings saved and applied' => "tatacara baru disimpan dan dilaksanakan", - 'New version is available' => "Versi baru boleh didapati", - 'Next' => "Kemudian", - 'No' => "Tidak ada", - 'No Table selected' => "No Jadual yang dipilih", - 'Not enough room to show this pane.' => "Tidak cukup ruang untuk menunjukkan pane ini.", - 'OK' => "OK", - 'One or more field information is incomplete' => "Satu atau lebih maklumat lapangan tidak lengkap", - 'Open' => "Buka", - 'Operation failed' => "Operasi gagal", - 'Pad field values with leading zeros' => "Pad lapangan nilai dengan sifar terkemuka", - 'Pane' => "Pane", - 'Passwords do not match' => "Kata laluan tidak sesuai", - 'Pin' => "Pin", - 'Please select one or more operations to perform' => "Sila pilih satu atau lebih operasi untuk melaksanakan", - 'Please type in one or more queries in the SQL editor!' => "Sila taip dalam satu atau lebih pertanyaan dalam editor SQL!", - 'Please wait...' => "Sila tunggu ...", - 'Previous' => "Sebelumnya", - 'Procedures' => "Prosedur", - 'Prompt' => "Cepat", - 'Refresh results' => "Refresh hasil", - 'Refreshing object list' => "Refreshing senarai objek", - 'Rename Object' => "Tukar nama Objek", - 'Resize' => "Resize", - 'Results page:' => "Keputusan Laman:", - 'Select a database to view privileges for the user' => "Pilih database untuk melihat hak bagi pengguna", - 'Select an index to view / edit its details' => "Pilih indeks untuk melihat / edit butiran", - 'Select at least one field type for searching' => "Pilih sekurang-kurangnya satu jenis lapangan untuk mencari", - 'Select objects to operate upon' => "Pilih objek untuk beroperasi apabila", - 'selector' => "pemilih", - 'Slide Open' => "Gambar Terbuka", - 'Table information requires at least one valid field' => "maklumat Jadual memerlukan sekurang-kurangnya satu bidang yang sah", - 'Table name is required' => "Nama jadual diperlukan", - 'Table successfully created' => "Jadual berjaya dibuat", - 'Table successfully modified' => "Jadual berjaya diubah", - 'Tables' => "Jadual", - 'Text Data [{{SIZE}}]' => "Data teks [{{SIZE}}]", - 'There is no record in the results to export' => "Tidak ada catatan dalam keputusan eksport", - 'This attribute is not required for selected field type' => "Attribution ini tidak diperlukan untuk jenis bidang yang dipilih", - 'Triggers' => "Pencetus", - 'Un-Pin' => "Un-Pin", - 'Unsigned numbered field only' => "Unsigned nombor satunya bidang", - 'Update check failed' => "Kemas kini menyemak gagal", - 'User information is incomplete or invalid' => "Pengguna maklumat tidak lengkap atau tidak valid", - 'User Manager' => "Pengelola pengguna", - 'Views' => "Display", - 'WARNING' => "AMARAN", - 'Yes' => "Ya", - 'You have the latest version' => "Anda mempunyai versi terkini", - - ); -?> diff --git a/lang/nl.php b/lang/nl.php deleted file mode 100644 index 95c7992..0000000 --- a/lang/nl.php +++ /dev/null @@ -1,463 +0,0 @@ - "Gebruik Database", - 'Drop Database' => "Drop Database", - 'Empty Database' => "Lege database", - 'Drop all tables from this database' => "Drop alle tabellen uit deze database", - 'Select statement' => "SELECT-instructie", - 'Insert statement' => "INSERT", - 'Update statement' => "UPDATE-instructie", - 'Describe' => "Beschrijven", - 'Show create command' => "Toon create commando", - 'View data' => "Bekijk de gegevens", - 'Alter Table' => "ALTER TABLE", - 'Indexes' => "Indexen", - 'Engine Type' => "Motortype", - 'More operations' => "Meer operaties", - 'Truncate' => "Afknotten", - 'Drop' => "Drop", - 'Rename' => "Andere naam geven", - 'Export table data' => "Export tabelgegevens", - 'Create Table' => "Tabel maken", - 'Create View' => "Maak Bekijk", - 'Create Procedure' => "CREATE PROCEDURE", - 'Create Function' => "Maak Functie", - 'Create Trigger' => "Maak Trigger", - 'Create Event' => "Afspraak maken", - 'Show/Hide Panel' => "Toon / Verberg Panel", - 'Show/Hide Header' => "Toon / verberg header", - 'Copy all queries to clipboard' => "Kopieer queries alle naar het klembord", - 'Clear history' => "Geschiedenis wissen", - 'Copy Column values' => "Kopieer kolomwaarden", - 'Copy to clipboard' => "Kopiëren naar het klembord", - 'Generate SQL Filter' => "Het genereren van SQL Filter", - 'Database Manager' => "Database Manager", - 'Manage databases' => "Beheer databases", - - // main menu related text - 'Database' => "Database", - 'Refresh' => "Vernieuwen", - 'Refresh database object list' => "Vernieuwen database-object lijst", - 'Create new' => "Het creëren van nieuwe", - 'Export' => "Export", - 'Export database to external file' => "Export database extern bestand", - 'Objects' => "Objecten", - 'Create Table' => "Tabel maken", - 'Create a new table in the database' => "Maak een nieuwe tabel in de database", - 'Create View' => "Maak Bekijk", - 'Create a new view in the database' => "Maak een nieuwe weergave in de database", - 'Create Stored Procedure' => "Maak Stored Procedure", - 'Create a new stored procedure in the database' => "Maak een nieuwe opgeslagen procedure in de database", - 'Create Function' => "Maak Functie", - 'Create a new user defined function in the database' => "Maak een nieuwe gebruiker gedefinieerde functie in de database", - 'Create Trigger' => "Maak Trigger", - 'Create a new trigger in the database' => "Maak een nieuwe trigger in de database", - 'Create Event' => "Afspraak maken", - 'Create a new event in the database' => "Maak een nieuw evenement in de database", - 'Data' => "Data", - 'Import batch file' => "Import batchbestand", - 'Import multiple queries from batch file' => "Importeren meerdere vragen van batch-bestand", - 'Export database' => "Export database", - 'Export database to batch file as sql dump' => "Export database batch bestand als sql dump", - 'Export current results' => "Export huidige resultaten", - 'Export query results to clipboard or files' => "Export query resultaten naar het klembord of bestanden", - 'Tools' => "Tools", - 'Process Manager' => "Process Manager", - 'View and manage database processes' => "Bekijken en beheren database processen", - 'Repair Tables' => "Reparatie Tafels", - 'Analyze and repair database tables' => "Analyseren en repareren database tabellen", - 'User Manager' => "User Manager", - 'Manage database users' => "Beheren van database gebruikers", - 'Search in Database' => "Zoeken in database", - 'Search for text in the database' => "Tekst zoeken in de database", - 'Information' => "Informatie", - 'Server/Connection Details' => "Server / verbinding Details", - 'View server configuration' => "Bekijk serverconfiguratie", - 'View server and connection details' => "Bekijk server en verbindingsgegevens", - 'Server Variables' => "Server variabelen", - 'Database Summary' => "Samenvatting database", - 'View current database summary stats' => "Bekijk huidige database samenvatting stats", - 'Interface' => "Interface", - 'Options' => "Opties", - 'Configure application options' => "Configureren opties voor toepassingen", - 'UI Theme' => "UI Thema", - 'Database Objects' => "Database Objects", - 'Toggle Object Viewer' => "Toggle Object Viewer", - 'Help contents' => "Help Inhoud", - 'Learn the basics of using MyWebSQL' => "Leer de basisprincipes van het gebruik MyWebSQL", - 'QuickStart Tutorials' => "QuickStart Tutorials", - 'See quick hands-on tutorial of MyWebSQL interface' => "Zie snelle hands-on tutorial van MyWebSQL interface", - 'Online documentation' => "Online documentatie", - 'View online documentation on project website' => "Bekijk online documentatie op de website van het project", - 'Request a Feature' => "Vraag een Feature", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "Als u wilt dat uw meest favoriete functie om een ​​deel van MyWebSQL, klik dan hier om te informeren over it please", - 'Report a Problem' => "Een probleem melden", - 'Check for updates' => "Controleren op updates", - 'Check for updated versions of the application online' => "Controleren of er bijgewerkte versies van de applicatie online", - 'Logout' => "Afmelden", - 'Logout from this session' => "Afmelden van deze sessie", - 'Language' => "Taal", - 'SQL Editor' => "SQL Editor", - 'Toggle SQL Editor' => "Toggle SQL Editor", - 'Experimental' => "Experimenteel", - 'Import table data' => "Importeer tabelgegevens", - 'Import table data from external file' => "Importeer tabelgegevens uit extern bestand", - 'Batch operations' => "Batch operaties", - 'Perform one or more batch operations on database' => "Voer een of meer batch operaties op de database", - 'Create a new schema in the database' => "Maak een nieuwe schema in de database", - 'Create Schema' => "Maak schema", - 'Table Description' => "Tabel Beschrijving", - 'Database Manager' => "Database Manager", - 'Manage databases' => "Beheer databases", - 'Backup database on the server as SQL dump' => "Backup database op de server als SQL dump", - 'Backup Database' => "Backup Database", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "Uw browser lijkt erg oud en ondersteunt niet alle functies die nodig zijn om MyWebSQL draaien.", - 'Try using a newer version of the browser to run this application.' => "Probeer het met een nieuwere versie van de browser om deze toepassing uit te voeren", - - // text used on various screens in the interface - 'Visit Project website' => "Bezoek Project website", - 'Version' => "versie", - 'Loading' => "Laden", - 'Quick Edit Options' => "Snel bewerken Opties", - 'Press {{KEY}} to set NULL' => "Druk op {{KEY}} om nulverzameling", - 'MySQL Server' => "MySQL Server", - 'Logged in as: {{USER}}' => "Ingelogd als: {{USER}}", - 'Results' => "Resultaten", - 'Messages' => "Berichten", - 'Information' => "Informatie", - 'History' => "Geschiedenis", - 'There are no results to show in this view' => "Er zijn geen resultaten te tonen in deze weergave", - 'Refresh results' => "Vernieuwen resultaten", - 'Please wait' => "Even geduld aub", - 'Query All' => "Alle query", - 'Query' => "Query", - 'Add Record' => "Record toevoegen", - 'Delete Record(s)' => "Record verwijderen (s)", - 'Update Record(s)' => "Update Record (s)", - 'Generate SQL' => "Het genereren van SQL", - 'Database name' => "Database naam", - 'Select database after creation' => "Selecteer database na de schepping", - 'Database connection failed to the server' => "Database connectie niet aan de server", - 'Host' => "Ontvangende", - 'User' => "Gebruiker", - 'Select a database to begin' => "Selecteer een database om te beginnen", - 'Select/unselect All records' => "Selecteren / deselecteren Alle records", - 'Primary key column' => "Primaire sleutel kolom", - 'Unique key column' => "Unieke sleutel kolom", - 'Showing records {{START}} - {{END}}' => "Resultaat records {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "Resultaat eerste {{MAX}} registreert alleen", - '1 query successfully executed' => "1 query succesvol uitgevoerd", - '{{NUM}} queries successfully executed' => "{{NUM}} queries succesvol uitgevoerd", - '{{NUM}} record(s) were affected' => "{{NUM}} record (s) werden getroffen", - '{{NUM}} record(s) updated' => "{{NUM}} record (s) bijgewerkt", - 'Error occurred while executing the query' => "Fout is opgetreden tijdens het uitvoeren van de query", - '{{NUM}} queries failed to execute' => "{{NUM}} query kan niet worden uitgevoerd", - 'Click to view/edit column data [{{NUM}} Bytes]' => "Klik om te bekijken / bewerken kolomgegevens [{{NUM}} bytes]", - 'Blob data is not editable' => "Blob data is niet bewerkbaar", - 'Blob data saved' => "Blob opgeslagen gegevens", - 'Failed to save blob data' => "Niet blob gegevens op te slaan", - 'The process with id [{{PID}}] was killed' => "Het proces met id [{{PID}}] werd gedood", - 'No such process [id = {{PID}}]' => "Een dergelijk proces [id = {{PID}}]", - 'Select a process and click the button to kill the process' => "Selecteer een proces en klik op de knop om het proces te doden", - 'Process ID' => "Proces-ID", - 'Command' => "Command", - 'Time' => "Tijd", - 'Info' => "Info", - 'Kill Process' => "Kill Process", - 'Failed to get process list' => "Geen proces lijst te krijgen", - 'The command executed successfully' => "De uitgevoerde opdracht succesvol", - 'Invalid server configuration' => "Ongeldige server configuratie", - 'Invalid Credentials' => "Ongeldige Geloofsbrieven", - 'New database successfully created' => "Nieuwe database met succes aangemaakt", - 'File upload failed. Please try again' => "Bestand te uploaden is mislukt. Probeer het opnieuw", - 'No queries were executed during import' => "Geen zoekopdrachten werden uitgevoerd tijdens het importeren", - 'Maximum upload filesize is {{SIZE}}' => "Maximale upload bestandsgrootte is {{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "Ondersteunde bestandstypes / uitbreidingen zijn: ({{LIST}})", - 'Database summary' => "Database samenvatting", - 'Server Variables' => "Server variabelen", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "Elke bestaand object met dezelfde naam moet handmatig worden geschrapt vóór de uitvoering van de schepping commando", - 'Only create commands are accepted' => "Alleen maar leiden tot opdrachten worden aanvaard", - 'User ID' => "Gebruikers-ID", - 'Password' => "Wachtwoord", - 'Login' => "Inloggen", - 'Create new database object' => "Maak een nieuwe database-object", - 'Enter command for object creation' => "Voer commando voor het maken van objecten", - 'Submit' => "Indienen", - 'Show blob data as: {{TYPE}}' => "Toon blob gegevens als: {{TYPE}}", - 'Blob data for column {{NAME}}' => "BLOB-gegevens voor kolom {{NAME}}", - 'Create command for {{TYPE}} {{NAME}}' => "Maak opdracht voor {{TYPE}} {{NAME}}", - 'Table Engine (type)' => "Tabel Engine (type)", - 'Change Table Type' => "Verander het type Tabel", - 'The requested page is not available on the server' => "De door u opgevraagde pagina is niet beschikbaar op de server", - 'Error' => "Fout", - 'It appears that you attempted to submit an invalid request to the server' => "Het lijkt erop dat u geprobeerd om een ​​ongeldige aanvraag indienen bij de server", - 'The request has been denied. Reloading the page might solve the problem' => "Het verzoek is geweigerd. Het herladen van de pagina kan het probleem oplossen", - 'Access Denied' => "Toegang geweigerd", - 'Help' => "Help", - 'To see most up-to-date help contents, please visit {{LINK}}' => "Om te zien meest up-to-date te helpen de inhoud, gaat u naar {{LINK}}", - 'It appears that your browser session has expired' => "Het lijkt erop dat uw browser sessie is verlopen", - 'Please refresh the webpage to re-login' => "Vernieuw de pagina opnieuw in te loggen", - 'Table information' => "Tabel informatie", - 'Edit' => "Bewerken", - 'Save' => "Opslaan", - 'Either the database is empty, or there was an error retrieving list of database objects' => "Ofwel de database leeg is, of er was een fout ophalen lijst van database-objecten", - 'Please try closing and re-opening this dialog again' => "Probeer het sluiten en opnieuw openen van dit dialoogvenster weer", - 'Structure' => "Structuur", - 'Table Data' => "Tabelgegevens", - 'Structure and Table Data' => "Structuur en tabelgegevens", - 'Options' => "Opties", - 'Set Auto increment field values to NULL' => "Stel Autotoenamegebieden gebied waarden NULL", - 'Add DROP command before create statements' => "Voeg DROP commando voordat creëren verklaringen", - 'Export' => "Export", - 'Import' => "Import", - 'Export Database' => "Export Database", - 'Export Table' => "Export tafel", - 'Server information' => "Server-informatie", - 'Server' => "Server", - 'Version comment' => "Versie reactie", - 'Character sets' => "Tekensets", - 'Server character set' => "set Server karakter", - 'Client character set' => "Opdrachtgever tekenset", - 'Database character set' => "Database tekenset", - 'Results character set' => "Resultaten tekenset", - 'Export As' => "Exporteren als", - 'Insert Statements' => "INSERT statements", - 'Include field names in query' => "Inclusief veldnamen in query", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Plain Text (een record per regel)", - 'Fields separated by:' => "Velden gescheiden door:", - 'Export Results' => "Resultaten exporteren", - 'Select SQL batch file to import' => "Select SQL batch-bestand te importeren", - 'Continue processing even if error occurs' => "Verder worden verwerkt, zelfs als fout optreedt", - 'Basic Information' => "Basisinformatie", - 'Table Properties' => "Tabeleigenschappen", - 'Table Name' => "Tabelnaam", - 'Field Name' => "Veldnaam", - 'Data Type' => "Data Type", - 'Length' => "Lengte", - 'Default value' => "Standaardwaarde", - 'Unsigned' => "Ongetekend", - 'Zero Fill' => "Zero Fill", - 'Primary Key' => "Primaire sleutel", - 'Auto Increment' => "Autotoenamegebieden", - 'Not NULL' => "Niet NULL", - 'Character Set' => "Character Set", - 'Collation' => "Vergelijking", - 'Comment' => "Reactie", - 'Waiting for table information to be submitted' => "Wachten op tafel te dienen informatie", - 'Add field' => "Veld toevoegen", - 'Delete selected field' => "Verwijder geselecteerde veld", - 'Clear Table Information' => "Duidelijke tabel Informatie", - 'List of values' => "Lijst van waarden", - 'Query Results' => "Resultaten van de query", - 'Data for {{TABLE}}' => "Gegevens voor {{TABLE}}", - 'Select tables to be analyzed/repaired' => "Selecteer de tabellen te analyseren / repareren", - 'Operation to perform' => "Operatie uit te voeren", - 'Analyze' => "Te analyseren", - 'Check' => "Check", - 'Optimize' => "Optimaliseren", - 'Repair' => "Reparatie", - 'Skip Binary logging' => "Spring Binary loggen", - 'Default' => "Standaard", - 'Quick' => "Quick", - 'Fast' => "Snelle", - 'Medium' => "Medium", - 'Extended' => "Verlengd", - 'Changed' => "Veranderd", - 'Use Frm files (MyISAM tables)' => "Gebruik FRM bestanden (MyISAM tabellen)", - 'User Information' => "Informatie voor de gebruiker", - 'Global Privileges' => "Global voorrechten", - 'Database Privileges' => "Database voorrechten", - 'Import File' => "Importbestand", - 'Index Manager' => "Index Manager", - 'Edit table structure' => "Edit tabelstructuur", - 'Save All Changes' => "Alle wijzigingen opslaan", - 'Changes are not saved until you press [Save All Changes]' => "Wijzigingen worden niet opgeslagen totdat u op [Alle Wijzigingen opslaan]", - 'Field Length' => "Veldlengte", - 'Select objects to include in export' => "Selecteer objecten op te nemen in de export", - 'Export type' => "Export type", - 'Select All/None' => "Alles selecteren / Geen", - 'Add User' => "Gebruiker toevoegen", - 'Update User' => "Gebruiker bijwerken", - 'Delete selected User' => "Verwijder geselecteerde gebruiker", - 'Remove Password' => "Verwijder Wachtwoord", - 'Select tables to search' => "Selecteer tafels om te zoeken", - 'Search Options' => "Zoekopties", - 'Search in following field types' => "Zoeken in de volgende veldtypen", - 'Numeric Fields' => "Numerieke velden", - 'Character Fields' => "Karakter Velden", - 'Text Fields' => "Tekstvelden", - 'Date/Time Fields' => "Datum / tijd velden", - 'Comparison Type' => "Vergelijking Type", - 'Text to search' => "Tekst om te zoeken", - 'Search' => "Zoek", - 'Search Results' => "Zoekresultaten", - 'Number of matches' => "Aantal wedstrijden", - 'Search results for {{KEYWORD}} in the database' => "Zoekresultaten voor {{KEYWORD}} in de database", - '{{NUM}} match(es)' => "{{NUM}} match (es)", - 'Copy query to editor' => "Kopieer query naar editor", - 'Done' => "Gedaan", - 'SQL Editor' => "SQL Editor", - 'Create Copy' => "Maak kopiëren", - 'Minimize All' => "Minimaliseer alle", - 'Copy Record(s)' => "Kopieer record (s)", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "Door komma's gescheiden (CSV voor Excel)", - 'Select data file to import' => "Selecteer de gegevens te importeren bestand", - 'Select table for data import' => "Selecteer tabel voor data-import", - 'First line contains column names' => "Eerste regel bevat kolomnamen", - 'Select objects to operate upon' => "Objecten selecteren om te werken op", - 'Operations to perform' => "Operaties uit te voeren", - 'Add prefix string to name' => "Voeg prefix snaar te noemen", - 'Delete prefix string from name' => "Verwijder prefix string uit naam", - 'Command text' => "Command tekst", - 'DROP selected database objects' => "DROP geselecteerde database-objecten", - 'Batch operation results' => "Batch bediening resultaten", - 'Operation' => "Werking", - 'Status' => "Staat", - '{{NUM}} queries generated' => "{{NUM}} opvraagt ​​gegenereerd", - 'Please select one or more operations to perform' => "Selecteer een of meer bewerkingen uit te voeren", - 'Quick Search' => "Snel zoeken", - '{{NAME}} client library is not installed' => "{{NAME}} client library niet is geïnstalleerd", - '{{NAME}} extension is not installed' => "{{NAME}} extensie is niet geïnstalleerd", - 'SQLite database folder is inaccessible or not writable' => "SQLite database map is niet toegankelijk of niet schrijfbaar", - 'Maximize/Restore Results Pane' => "Maximaliseren / Herstellen Resultaten Pane", - 'Select databases to operate upon' => "Selecteer databases om te werken op", - 'DROP selected databases' => "DROP geselecteerde databases", - 'The following operation is irreversible' => "De volgende bewerking is onomkeerbaar", - 'Potential data loss might occur' => "Eventueel verlies van gegevens kan optreden", - 'Add TRUNCATE command before insert statements' => "Voeg TRUNCATE commando voordat insert statements", - 'Select objects to include in backup' => "Selecteer objecten om in back-up", - 'Backup folder does not exist or is not writable' => "Back-up map bestaat niet of is niet beschrijfbaar", - 'Backup type' => "Type back-up", - 'Database backup successfully created' => "Database back-up met succes aangemaakt", - 'Failed to create database backup' => "Kan geen database back-up te maken", - 'Generate Bulk insert statements' => "Genereer Bulk insert statements", - 'Maximum size of SQL statement' => "Maximale grootte van SQL-statement", - 'Show record count with table names' => "Toon telling record met tabelnamen", - 'Sort Table listing by' => "Tabel sorteren lijst door", - 'Name' => "Naam", - 'Last Update Time' => "Laatste update Time", - 'Maximum records to display in result set' => "Maximum records in resultaat set weer te geven", - 'Show popup dialog for editing large text data' => "Toon popup dialoog voor het bewerken van grote tekstgegevens", - 'Miscellaneous' => "Diversen", - 'Reset all confirmation dialogs' => "Reset alle bevestigingsdialogen", - 'Record Editing' => "Record Editing", - 'Exclude Table type' => "Uitsluiten soort Tabel", - 'Exclude Table Character set' => "Uitsluiten Tabel Tekenset", - 'Backup filename' => "Backup bestandsnaam", - 'Invalid filename format' => "Ongeldige bestandsnaam formaat", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "alle", - 'all selected' => "alle geselecteerde", - 'An error occured while refreshing the object list.' => "Er is een fout opgetreden tijdens het verversen van het object lijst.", - 'Are you sure you want to clear all field information from table?' => "Weet u zeker dat u alle gebied informatie van tafel af te ruimen?", - 'Are you sure you want to delete this user account?' => "Ben je zeker dat je deze gebruiker wilt verwijderen account?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "Ben je zeker dat je wilt neerzetten van alle objecten uit de database {{NAME}}?", - 'Are you sure you want to DROP selected objects?' => "Weet je zeker dat je wilt geselecteerde voorwerpen te laten vallen?", - 'Are you sure you want to DROP the database {{NAME}}?' => "Ben je zeker dat je wilt DROP de database {{NAME}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "Weet u zeker dat u wilt dit object te laten vallen? {{NAME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "Ben je zeker dat je wilt {{SELECTED}} queries uit te voeren?", - 'Are you sure you want to logout?' => "Weet u zeker dat u wilt uitloggen?", - 'Are you sure you want to truncate the table {{NAME}}?' => "Ben je zeker dat je de tabel wilt {{NAME}} afkappen?", - 'Blob Data [{{SIZE}}]' => "Blob Data [{{SIZE}}]", - 'Cancel' => "Annuleren", - 'Check for Updates' => "Controleren op updates", - 'Clear command history?' => "Duidelijke commando geschiedenis?", - 'Close' => "Sluit", - 'Confirm Action' => "Bevestig Actie", - 'Confirm and do not ask me again about this choice' => "Bevestigen en niet opnieuw vragen over deze keuze", - 'Copy Object' => "Kopieer Object", - 'Create Database' => "Database maken", - 'Create Primary Index on this field' => "Maak primaire index op dit gebied", - 'Databases' => "Databases", - 'Default value [Use quotes to specify string values]' => "Standaardwaarde [Gebruik aanhalingstekens om aan te geven tekenreekswaarden]", - 'Disallow NULL values in Field' => "Disallow NULL-waarden in veld", - 'Enter new index name' => "Voer een nieuwe naam index", - 'Enter new name for the database object' => "Voer een nieuwe naam voor de database-object", - 'Enter the text to search in database' => "Voer de tekst te zoeken in de database", - 'Error' => "Fout", - 'Events' => "Evenementen", - 'Execute query' => "Uitvoeren query", - 'Exports results' => "Uitvoer resultaten", - 'Failed to refresh the results.' => "Nagelaten om de resultaten te vernieuwen.", - 'Field Datatype' => "Gebied Datatype", - 'Field Name' => "Veldnaam", - 'Field value is Auto Incremented' => "Veldwaarde is Auto verhoogd", - 'Functions' => "Functies", - 'Indexes Updated' => "Indexen Bijwerken", - 'Maximum Length of field value' => "Maximale lengte van het veld de waarde", - 'Navigation Error. Try reloading the page' => "Navigatie Fout. Probeer de pagina te herladen", - 'New settings saved and applied' => "Nieuwe instellingen opgeslagen en toegepast", - 'New version is available' => "Nieuwe versie is beschikbaar", - 'Next' => "Volgende", - 'No' => "Geen", - 'No Table selected' => "Geen tabel geselecteerd", - 'Not enough room to show this pane.' => "Niet genoeg ruimte om dit venster te tonen.", - 'OK' => "OK", - 'One or more field information is incomplete' => "Een of meer veld informatie onvolledig is", - 'Open' => "Open", - 'Operation failed' => "Operatie mislukt", - 'Pad field values with leading zeros' => "Pad veldwaarden met nullen", - 'Pane' => "Paneel", - 'Passwords do not match' => "Wachtwoorden komen niet overeen", - 'Pin' => "Pin", - 'Please select one or more operations to perform' => "Selecteer een of meer bewerkingen uit te voeren", - 'Please type in one or more queries in the SQL editor!' => "Vul een of meer query in de SQL-editor!", - 'Please wait...' => "Even geduld aub ...", - 'Previous' => "Vorige", - 'Procedures' => "Procedures", - 'Prompt' => "Prompt", - 'Refresh results' => "Vernieuwen resultaten", - 'Refreshing object list' => "Verfrissende objectenlijst", - 'Rename Object' => "Hernoemen Object", - 'Resize' => "Resize", - 'Results page:' => "Pagina met resultaten:", - 'Select a database to view privileges for the user' => "Selecteer een database om privileges te geven voor de gebruiker", - 'Select an index to view / edit its details' => "Selecteer een index te bekijken / bewerken de details", - 'Select at least one field type for searching' => "Selecteer minstens een veld type voor zoeken", - 'Select objects to operate upon' => "Objecten selecteren om te werken op", - 'selector' => "keuzeschakelaar", - 'Slide Open' => "Schuif open", - 'Table information requires at least one valid field' => "Tabel informatie vereist ten minste een geldig gebied", - 'Table name is required' => "Tabelnaam is vereist", - 'Table successfully created' => "Tabel met succes aangemaakt", - 'Table successfully modified' => "Tabel succesvol gemodificeerde", - 'Tables' => "Tabellen", - 'Text Data [{{SIZE}}]' => "Tekst Data [{{SIZE}}]", - 'There is no record in the results to export' => "Er is geen record in de resultaten te exporteren naar", - 'This attribute is not required for selected field type' => "Dit kenmerk is niet vereist voor geselecteerde veldtype", - 'Triggers' => "Triggers", - 'Un-Pin' => "Un-Pin", - 'Unsigned numbered field only' => "Unsigned genummerde veld alleen", - 'Update check failed' => "Werk controle mislukt", - 'User information is incomplete or invalid' => "De gebruiker informatie onvolledig of ongeldig", - 'User Manager' => "User Manager", - 'Views' => "Uitzicht", - 'WARNING' => "WAARSCHUWING", - 'Yes' => "Ja", - 'You have the latest version' => "Je hebt de laatste versie", - - ); -?> diff --git a/lang/no.php b/lang/no.php deleted file mode 100644 index 50d56e4..0000000 --- a/lang/no.php +++ /dev/null @@ -1,463 +0,0 @@ - "Bruk Database", - 'Drop Database' => "Drop Database", - 'Empty Database' => "Tomme Database", - 'Drop all tables from this database' => "Slett alle tabeller fra denne databasen", - 'Select statement' => "Velg uttalelse", - 'Insert statement' => "Sett inn uttalelse", - 'Update statement' => "Oppdater uttalelse", - 'Describe' => "Beskriv", - 'Show create command' => "Vis opprette kommandoen", - 'View data' => "Vis data", - 'Alter Table' => "Alter Tabell", - 'Indexes' => "Indekser", - 'Engine Type' => "Motor Type", - 'More operations' => "Flere operasjoner", - 'Truncate' => "Avkorte", - 'Drop' => "Drop", - 'Rename' => "Gi nytt navn", - 'Export table data' => "Eksport tabelldata", - 'Create Table' => "Lag tabell", - 'Create View' => "Opprett View", - 'Create Procedure' => "Lag Prosedyre", - 'Create Function' => "Lag Funksjon", - 'Create Trigger' => "Lag Trigger", - 'Create Event' => "Opprett hendelse", - 'Show/Hide Panel' => "Vis / skjul Panel", - 'Show/Hide Header' => "Vis / skjul Header", - 'Copy all queries to clipboard' => "Kopier spørringer alle til utklippstavle", - 'Clear history' => "Tøm historie", - 'Copy Column values' => "Kopier Kolonne verdier", - 'Copy to clipboard' => "Kopier til utklippstavle", - 'Generate SQL Filter' => "Generer SQL Filter", - 'Database Manager' => "Database Manager", - 'Manage databases' => "Administrere databaser", - - // main menu related text - 'Database' => "Database", - 'Refresh' => "Oppdater", - 'Refresh database object list' => "Oppdater database objekt liste", - 'Create new' => "Opprett ny", - 'Export' => "Eksport", - 'Export database to external file' => "Eksporter databasen til ekstern fil", - 'Objects' => "Objekter", - 'Create Table' => "Lag tabell", - 'Create a new table in the database' => "Opprette en ny tabell i databasen", - 'Create View' => "Opprett View", - 'Create a new view in the database' => "Opprett en ny visning i databasen", - 'Create Stored Procedure' => "Lag lagrede prosedyrer", - 'Create a new stored procedure in the database' => "Opprett en ny lagret prosedyre i databasen", - 'Create Function' => "Lag Funksjon", - 'Create a new user defined function in the database' => "Lag en ny brukerdefinert funksjon i databasen", - 'Create Trigger' => "Lag Trigger", - 'Create a new trigger in the database' => "Lag en ny trigger i databasen", - 'Create Event' => "Opprett hendelse", - 'Create a new event in the database' => "Opprett en ny hendelse i databasen", - 'Data' => "Data", - 'Import batch file' => "Import batch fil", - 'Import multiple queries from batch file' => "Import flere søk fra batch-fil", - 'Export database' => "Eksporter database", - 'Export database to batch file as sql dump' => "Eksporter database for å batch-fil som sql dump", - 'Export current results' => "Eksporter dagens resultater", - 'Export query results to clipboard or files' => "Eksporter søkeresultatene til utklippstavlen eller filer", - 'Tools' => "Verktøy", - 'Process Manager' => "Process Manager", - 'View and manage database processes' => "Vis og administrer database prosesser", - 'Repair Tables' => "Reparasjon Tabeller", - 'Analyze and repair database tables' => "Analysere og reparere database tabeller", - 'User Manager' => "Bruker Manager", - 'Manage database users' => "Administrer database brukere", - 'Search in Database' => "Søk i Database", - 'Search for text in the database' => "Søk etter tekst i databasen", - 'Information' => "Informasjon", - 'Server/Connection Details' => "Server / Tilkoblingsdetaljer", - 'View server configuration' => "Vis server konfigurasjon", - 'View server and connection details' => "Vis server og tilkoblingsdetaljer", - 'Server Variables' => "Server Variabler", - 'Database Summary' => "Database Sammendrag", - 'View current database summary stats' => "Vis gjeldende database statussammendrag", - 'Interface' => "Interface", - 'Options' => "Valg", - 'Configure application options' => "Konfigurere alternativer for programmet", - 'UI Theme' => "UI Theme", - 'Database Objects' => "Database objekter", - 'Toggle Object Viewer' => "Toggle Object Viewer", - 'Help contents' => "Hjelp innhold", - 'Learn the basics of using MyWebSQL' => "Lær det grunnleggende om bruk MyWebSQL", - 'QuickStart Tutorials' => "QuickStart Guider", - 'See quick hands-on tutorial of MyWebSQL interface' => "Se rask hands-on opplæringen av MyWebSQL grensesnitt", - 'Online documentation' => "Online dokumentasjon", - 'View online documentation on project website' => "Vis online dokumentasjon på prosjektets hjemmeside", - 'Request a Feature' => "Be om en funksjon", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "Hvis du vil at mest favoritt funksjonen skal være en del av MyWebSQL, vennligst klikk her for å informere om det", - 'Report a Problem' => "Rapporter et problem", - 'Check for updates' => "Se etter oppdateringer", - 'Check for updated versions of the application online' => "Se etter oppdaterte versjoner av programmet online", - 'Logout' => "Logg ut", - 'Logout from this session' => "Logg ut fra denne sesjonen", - 'Language' => "Språk", - 'SQL Editor' => "SQL Editor", - 'Toggle SQL Editor' => "Toggle SQL Editor", - 'Experimental' => "Eksperimentell", - 'Import table data' => "Importer tabelldata", - 'Import table data from external file' => "Importer tabelldata fra ekstern fil", - 'Batch operations' => "Grupperinger", - 'Perform one or more batch operations on database' => "Utføre en eller flere operasjoner i grupper på database", - 'Create a new schema in the database' => "Opprett et nytt skjema i databasen", - 'Create Schema' => "Lag skjema", - 'Table Description' => "Bord Beskrivelse", - 'Database Manager' => "Database Manager", - 'Manage databases' => "Administrere databaser", - 'Backup database on the server as SQL dump' => "Backup database på serveren som SQL dump", - 'Backup Database' => "Backup Database", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "Nettleseren ser ut til å være svært gamle, og støtter ikke alle funksjoner som kreves for å kjøre MyWebSQL.", - 'Try using a newer version of the browser to run this application.' => "Prøv å bruke en nyere versjon av nettleseren til å kjøre dette programmet.", - - // text used on various screens in the interface - 'Visit Project website' => "Besøk Project hjemmeside", - 'Version' => "versjon", - 'Loading' => "Laster", - 'Quick Edit Options' => "Quick Edit Options", - 'Press {{KEY}} to set NULL' => "Trykk {{TAST}} for å sette NULL", - 'MySQL Server' => "MySQL Server", - 'Logged in as: {{USER}}' => "Logget inn som: {{USER}}", - 'Results' => "Resultater", - 'Messages' => "Meldinger", - 'Information' => "Informasjon", - 'History' => "Historie", - 'There are no results to show in this view' => "Det er ingen resultater å vise til i denne visningen", - 'Refresh results' => "Oppdater resultater", - 'Please wait' => "Vennligst vent", - 'Query All' => "Query Alle", - 'Query' => "Query", - 'Add Record' => "Legg Record", - 'Delete Record(s)' => "Slett Record (r)", - 'Update Record(s)' => "Update Record (r)", - 'Generate SQL' => "Generer SQL", - 'Database name' => "Databasenavn", - 'Select database after creation' => "Velg databasen etter opprettelsen", - 'Database connection failed to the server' => "Database forbindelse ikke til serveren", - 'Host' => "Host", - 'User' => "Bruker", - 'Select a database to begin' => "Velg en database for å begynne", - 'Select/unselect All records' => "Velg / Fjern all merking poster", - 'Primary key column' => "Primærnøkkel kolonne", - 'Unique key column' => "Unik nøkkelkolonne", - 'Showing records {{START}} - {{END}}' => "Viser poster {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "Viser første {{max}} registrerer bare", - '1 query successfully executed' => "En spørring vellykket henrettet", - '{{NUM}} queries successfully executed' => "{{NUM}} spørringer vellykket henrettet", - '{{NUM}} record(s) were affected' => "{{NUM}} posten (e) var påvirket", - '{{NUM}} record(s) updated' => "{{NUM}} posten (e) oppdatert", - 'Error occurred while executing the query' => "Feil oppstod under utføring av spørringen", - '{{NUM}} queries failed to execute' => "{{NUM}} spørringer klarte ikke å gjennomføre", - 'Click to view/edit column data [{{NUM}} Bytes]' => "Klikk for å vise / redigere kolonnen data [{{NUM}} Bytes]", - 'Blob data is not editable' => "Blob data er ikke redigeres", - 'Blob data saved' => "Blob data lagret", - 'Failed to save blob data' => "Klarte ikke å lagre BLOB data", - 'The process with id [{{PID}}] was killed' => "Prosessen med id [{{PID}}] ble drept", - 'No such process [id = {{PID}}]' => "Ingen slik prosess [id = {{PID}}]", - 'Select a process and click the button to kill the process' => "Velg en prosess, og klikk på knappen for å drepe prosessen", - 'Process ID' => "Prosess-ID", - 'Command' => "Command", - 'Time' => "Time", - 'Info' => "Info", - 'Kill Process' => "Kill Process", - 'Failed to get process list' => "Klarte ikke å få prosessen liste", - 'The command executed successfully' => "Kommandoen vellykket utført", - 'Invalid server configuration' => "Ugyldig server konfigurasjon", - 'Invalid Credentials' => "Ugyldig legitimasjon", - 'New database successfully created' => "Ny database opprettet", - 'File upload failed. Please try again' => "Filopplasting mislyktes. Vennligst prøv igjen", - 'No queries were executed during import' => "Ingen søk som ble henrettet under import", - 'Maximum upload filesize is {{SIZE}}' => "Maksimal opplasting filstørrelse er {{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "Støttede filtyper / utvidelser er: ({{LIST}})", - 'Database summary' => "Database oppsummering", - 'Server Variables' => "Server Variabler", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "Alle eksisterende objekt med samme navn bør droppes manuelt før man utfører opprettelsen kommandoen", - 'Only create commands are accepted' => "Bare lage kommandoer er akseptert", - 'User ID' => "Bruker ID", - 'Password' => "Passord", - 'Login' => "Logg inn", - 'Create new database object' => "Opprett ny database objekt", - 'Enter command for object creation' => "Skriv inn kommandoen for objektoppretting", - 'Submit' => "Send", - 'Show blob data as: {{TYPE}}' => "Vis blob data som: {{TYPE}}", - 'Blob data for column {{NAME}}' => "Blob data for kolonne {{NAME}}", - 'Create command for {{TYPE}} {{NAME}}' => "Lag kommandoen for {{TYPE}} {{NAME}}", - 'Table Engine (type)' => "Tabell Engine (type)", - 'Change Table Type' => "Endre Tabell Type", - 'The requested page is not available on the server' => "Den forespurte siden er ikke tilgjengelig på serveren", - 'Error' => "Feil", - 'It appears that you attempted to submit an invalid request to the server' => "Det ser ut som du prøvde å sende inn en ugyldig forespørsel til serveren", - 'The request has been denied. Reloading the page might solve the problem' => "Forespørselen ble avvist. Oppgradere siden kan løse problemet", - 'Access Denied' => "Ingen tilgang", - 'Help' => "Hjelp", - 'To see most up-to-date help contents, please visit {{LINK}}' => "Hvis du vil se mest up-to-date hjelpe innhold, kan du gå til {{LINK}}", - 'It appears that your browser session has expired' => "Det ser ut til at nettleseren din økten er utløpt", - 'Please refresh the webpage to re-login' => "Vennligst oppdater nettsiden til re-login", - 'Table information' => "Tabell informasjon", - 'Edit' => "Rediger", - 'Save' => "Lagre", - 'Either the database is empty, or there was an error retrieving list of database objects' => "Enten databasen er tom, eller det oppstod en feil ved henting liste over databaseobjekter", - 'Please try closing and re-opening this dialog again' => "Prøv å lukke og åpne denne dialogboksen igjen", - 'Structure' => "Struktur", - 'Table Data' => "Tabell Data", - 'Structure and Table Data' => "Struktur og tabelldata", - 'Options' => "Valg", - 'Set Auto increment field values to NULL' => "Sett Auto tilvekst feltverdier til NULL", - 'Add DROP command before create statements' => "Legg DROP-kommandoen før lage uttalelser", - 'Export' => "Eksport", - 'Import' => "Import", - 'Export Database' => "Eksporter Database", - 'Export Table' => "Eksporter Tabell", - 'Server information' => "Server informasjon", - 'Server' => "Server", - 'Version comment' => "Versjon kommentar", - 'Character sets' => "Tegnsett", - 'Server character set' => "Server tegnsett", - 'Client character set' => "Client tegnsett", - 'Database character set' => "Database tegnsett", - 'Results character set' => "Resultater tegnsett", - 'Export As' => "Eksporter Som", - 'Insert Statements' => "Sett inn Uttalelser", - 'Include field names in query' => "Inkluder feltnavn i søket", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Ren tekst (én post per linje)", - 'Fields separated by:' => "Felt atskilt med:", - 'Export Results' => "Eksporter resultater", - 'Select SQL batch file to import' => "Velg SQL batch fil til å importere", - 'Continue processing even if error occurs' => "Fortsette behandlingen selv om det oppstår feil", - 'Basic Information' => "Grunnleggende informasjon", - 'Table Properties' => "Tabellegenskaper", - 'Table Name' => "Tabell Navn", - 'Field Name' => "Feltnavn", - 'Data Type' => "Data Type", - 'Length' => "Lengde", - 'Default value' => "Standardverdi", - 'Unsigned' => "Usignert", - 'Zero Fill' => "Zero Fyll", - 'Primary Key' => "Primærnøkkel", - 'Auto Increment' => "Auto Increment", - 'Not NULL' => "Ikke NULL", - 'Character Set' => "Tegnsett", - 'Collation' => "Sortering", - 'Comment' => "Kommentar", - 'Waiting for table information to be submitted' => "Venter på tabellen opplysninger som skal sendes", - 'Add field' => "Legg til felt", - 'Delete selected field' => "Slett valgte feltet", - 'Clear Table Information' => "Tøm Tabell Informasjon", - 'List of values' => "Liste over verdier", - 'Query Results' => "Query Resultater", - 'Data for {{TABLE}}' => "Data for {{TABELL}}", - 'Select tables to be analyzed/repaired' => "Velg bord som skal analyseres / repareres", - 'Operation to perform' => "Drift for å utføre", - 'Analyze' => "Analyser", - 'Check' => "Sjekk", - 'Optimize' => "Optimaliser", - 'Repair' => "Reparasjon", - 'Skip Binary logging' => "Hopp Binary logging", - 'Default' => "Default", - 'Quick' => "Quick", - 'Fast' => "Fast", - 'Medium' => "Medium", - 'Extended' => "Utvidet", - 'Changed' => "Endret", - 'Use Frm files (MyISAM tables)' => "Bruk FRM filer (MyISAM tabeller)", - 'User Information' => "Brukerinformasjon", - 'Global Privileges' => "Global Privilegier", - 'Database Privileges' => "Database Privilegier", - 'Import File' => "Importer fil", - 'Index Manager' => "Index Manager", - 'Edit table structure' => "Rediger tabellstruktur", - 'Save All Changes' => "Lagre alle endringer", - 'Changes are not saved until you press [Save All Changes]' => "Endringer er ikke lagret før du trykker [Lagre alle endringer]", - 'Field Length' => "Field Lengde", - 'Select objects to include in export' => "Velg objekter som skal inkluderes i eksport", - 'Export type' => "Eksporter type", - 'Select All/None' => "Velg alle / ingen", - 'Add User' => "Legg til bruker", - 'Update User' => "Oppdater User", - 'Delete selected User' => "Slett valgte User", - 'Remove Password' => "Fjern passord", - 'Select tables to search' => "Velg tabeller for å søke", - 'Search Options' => "Søk Alternativer", - 'Search in following field types' => "Søk i følgende felttyper", - 'Numeric Fields' => "Numerisk felt", - 'Character Fields' => "Character Fields", - 'Text Fields' => "Tekst Fields", - 'Date/Time Fields' => "Date / Time Fields", - 'Comparison Type' => "Sammenligning Type", - 'Text to search' => "Tekst til søk", - 'Search' => "Søk", - 'Search Results' => "Søkeresultater", - 'Number of matches' => "Antall kamper", - 'Search results for {{KEYWORD}} in the database' => "Søkeresultater for {{KEYWORD}} i databasen", - '{{NUM}} match(es)' => "{{NUM}} match (es)", - 'Copy query to editor' => "Kopier forespørsel til redaktør", - 'Done' => "Ferdig", - 'SQL Editor' => "SQL Editor", - 'Create Copy' => "Opprett kopi", - 'Minimize All' => "Minimer alle", - 'Copy Record(s)' => "Kopier Record (s)", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "Kommaseparert (CSV for Excel)", - 'Select data file to import' => "Velg datafilen som skal importeres", - 'Select table for data import' => "Velg tabell for data import", - 'First line contains column names' => "Første linje inneholder kolonnenavn", - 'Select objects to operate upon' => "Velg objekter for å operere på", - 'Operations to perform' => "Operasjoner for å utføre", - 'Add prefix string to name' => "Legg prefiks streng for å nevne", - 'Delete prefix string from name' => "Slett prefiks streng fra navn", - 'Command text' => "Command tekst", - 'DROP selected database objects' => "DROP valgte databaseobjekter", - 'Batch operation results' => "Batch drift resultater", - 'Operation' => "Drift", - 'Status' => "Status", - '{{NUM}} queries generated' => "{{NUM}} spør generert", - 'Please select one or more operations to perform' => "Velg en eller flere operasjoner for å utføre", - 'Quick Search' => "Quick Search", - '{{NAME}} client library is not installed' => "{{NAME}} klient biblioteket ikke er installert", - '{{NAME}} extension is not installed' => "{{NAME}} utvidelsen ikke er installert", - 'SQLite database folder is inaccessible or not writable' => "SQLite database mappen er utilgjengelig eller ikke skrivbar", - 'Maximize/Restore Results Pane' => "Maksimer / gjenopprett Resultater Pane", - 'Select databases to operate upon' => "Velg databaser for å operere på", - 'DROP selected databases' => "DROP utvalgte databaser", - 'The following operation is irreversible' => "Følgende operasjon er irreversibel", - 'Potential data loss might occur' => "Mulig tap av data kan forekomme", - 'Add TRUNCATE command before insert statements' => "Legg avkorte kommandoen før insert uttalelser", - 'Select objects to include in backup' => "Velg objekter som skal inkluderes i backup", - 'Backup folder does not exist or is not writable' => "Backup-mappen finnes ikke eller er ikke skrivbar", - 'Backup type' => "Sikkerhetskopitype", - 'Database backup successfully created' => "Database backup opprettet", - 'Failed to create database backup' => "Kunne ikke opprette database backup", - 'Generate Bulk insert statements' => "Generere Bulk sette inn uttalelser", - 'Maximum size of SQL statement' => "Maksimal størrelse på SQL-setning", - 'Show record count with table names' => "Vis rekord teller med tabellnavn", - 'Sort Table listing by' => "Sorter Table notering av", - 'Name' => "Navn", - 'Last Update Time' => "Siste oppdatering Tid", - 'Maximum records to display in result set' => "Maksimalt antall poster som skal vises i resultatsettet", - 'Show popup dialog for editing large text data' => "Vis popup dialog for redigering av store tekstdata", - 'Miscellaneous' => "Diverse", - 'Reset all confirmation dialogs' => "Tilbakestille alle bekreftelse dialoger", - 'Record Editing' => "Record Editing", - 'Exclude Table type' => "Ekskluder Tabell typen", - 'Exclude Table Character set' => "Ekskluder Tabell Tegnsett", - 'Backup filename' => "Backup filnavn", - 'Invalid filename format' => "Ugyldig filnavn format", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "alle", - 'all selected' => "alle valgte", - 'An error occured while refreshing the object list.' => "En feil oppstod under forfriskende objektet listen.", - 'Are you sure you want to clear all field information from table?' => "Er du sikker på at du vil fjerne alle felt informasjon fra bordet?", - 'Are you sure you want to delete this user account?' => "Er du sikker på at du vil slette denne brukerkontoen?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "Er du sikker på at du vil slippe alle objekter fra databasen {{NAME}}?", - 'Are you sure you want to DROP selected objects?' => "Er du sikker på at du vil slippe valgte objekter?", - 'Are you sure you want to DROP the database {{NAME}}?' => "Er du sikker på at du vil DROP databasen {{NAME}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "Er du sikker på at du vil slippe dette objektet? {{NAME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "Er du sikker på at du vil kjøre {{UTVALGTE}} søk?", - 'Are you sure you want to logout?' => "Er du sikker på at du vil logge ut?", - 'Are you sure you want to truncate the table {{NAME}}?' => "Er du sikker på at du vil avkorte tabellen {{NAME}}?", - 'Blob Data [{{SIZE}}]' => "BLOB data [{{SIZE}}]", - 'Cancel' => "Avbryt", - 'Check for Updates' => "Se etter oppdateringer", - 'Clear command history?' => "Tøm kommandoen historie?", - 'Close' => "Lukk", - 'Confirm Action' => "Bekreft Action", - 'Confirm and do not ask me again about this choice' => "Bekreft og ikke spør meg igjen om dette valget", - 'Copy Object' => "Kopier Object", - 'Create Database' => "Opprett database", - 'Create Primary Index on this field' => "Opprett primær Index på dette feltet", - 'Databases' => "Databaser", - 'Default value [Use quotes to specify string values]' => "Default verdi [Bruk anførselstegn for å angi streng verdier]", - 'Disallow NULL values in Field' => "Forby NULL verdier i felt", - 'Enter new index name' => "Skriv inn nytt indeks navn", - 'Enter new name for the database object' => "Skriv inn nytt navn for databasen objektet", - 'Enter the text to search in database' => "Skriv inn teksten for å søke i databasen", - 'Error' => "Feil", - 'Events' => "Events", - 'Execute query' => "Utfør spørring", - 'Exports results' => "Eksport resultater", - 'Failed to refresh the results.' => "Klarte ikke å oppdatere resultatene.", - 'Field Datatype' => "Field Datatype", - 'Field Name' => "Feltnavn", - 'Field value is Auto Incremented' => "Feltverdi er Auto økes", - 'Functions' => "Funksjoner", - 'Indexes Updated' => "Indekser Oppdatert", - 'Maximum Length of field value' => "Maksimal lengde av feltverdi", - 'Navigation Error. Try reloading the page' => "Navigasjon Feil. Prøv å laste inn siden", - 'New settings saved and applied' => "Nye innstillinger lagret og anvendt", - 'New version is available' => "Ny versjon er tilgjengelig", - 'Next' => "Neste", - 'No' => "Ingen", - 'No Table selected' => "Ingen Tabell valgt", - 'Not enough room to show this pane.' => "Ikke nok plass til å vise denne ruten.", - 'OK' => "OK", - 'One or more field information is incomplete' => "Én eller flere felt er ufullstendig", - 'Open' => "Open", - 'Operation failed' => "Operasjonen mislyktes", - 'Pad field values with leading zeros' => "Pad feltverdier med ledende nuller", - 'Pane' => "Pane", - 'Passwords do not match' => "Passordene stemmer ikke", - 'Pin' => "Pin", - 'Please select one or more operations to perform' => "Velg en eller flere operasjoner for å utføre", - 'Please type in one or more queries in the SQL editor!' => "Vennligst skriv inn ett eller flere spørringer i SQL-editor!", - 'Please wait...' => "Vennligst vent ...", - 'Previous' => "Forrige", - 'Procedures' => "Prosedyrer", - 'Prompt' => "Spør", - 'Refresh results' => "Oppdater resultater", - 'Refreshing object list' => "Forfriskende objekt liste", - 'Rename Object' => "Gi nytt navn Object", - 'Resize' => "Endre størrelse", - 'Results page:' => "Resultater side:", - 'Select a database to view privileges for the user' => "Velg en database for å vise privilegier for brukeren", - 'Select an index to view / edit its details' => "Velg en indeks for å vise / redigere detaljer", - 'Select at least one field type for searching' => "Velg minst ett felt type for søk", - 'Select objects to operate upon' => "Velg objekter for å operere på", - 'selector' => "selector", - 'Slide Open' => "Slide Open", - 'Table information requires at least one valid field' => "Tabell informasjon krever minst én gyldig felt", - 'Table name is required' => "Tabell navn er påkrevd", - 'Table successfully created' => "Tabell opprettet", - 'Table successfully modified' => "Tabell ble endret", - 'Tables' => "Tabeller", - 'Text Data [{{SIZE}}]' => "Tekstdata [{{SIZE}}]", - 'There is no record in the results to export' => "Det er ingen rekord i resultatene å eksportere", - 'This attribute is not required for selected field type' => "Denne egenskapen er ikke nødvendig for utvalgte felt type", - 'Triggers' => "Utløsere", - 'Un-Pin' => "Un-Pin", - 'Unsigned numbered field only' => "Usignert nummererte felt kun", - 'Update check failed' => "Oppdater sjekk mislyktes", - 'User information is incomplete or invalid' => "Brukeren er ufullstendig eller ugyldig", - 'User Manager' => "Bruker Manager", - 'Views' => "Visninger", - 'WARNING' => "ADVARSEL", - 'Yes' => "Ja", - 'You have the latest version' => "Du har den nyeste versjonen", - - ); -?> diff --git a/lang/pl.php b/lang/pl.php deleted file mode 100644 index f917e0a..0000000 --- a/lang/pl.php +++ /dev/null @@ -1,463 +0,0 @@ - "Korzystania z bazy danych", - 'Drop Database' => "Drop Database", - 'Empty Database' => "Pustej bazy danych", - 'Drop all tables from this database' => "Usuń wszystkie tabele z tej bazy danych", - 'Select statement' => "Wybierz oświadczenie", - 'Insert statement' => "INSERT", - 'Update statement' => "UPDATE", - 'Describe' => "Opisać", - 'Show create command' => "Pokaż Polecenie create", - 'View data' => "Zobacz dane", - 'Alter Table' => "Alter Table", - 'Indexes' => "Indeksy", - 'Engine Type' => "Typ silnika", - 'More operations' => "Więcej operacji", - 'Truncate' => "Ścięty", - 'Drop' => "Spadek", - 'Rename' => "Zmień nazwę", - 'Export table data' => "Eksport danych tabeli", - 'Create Table' => "Tworzenie tabeli", - 'Create View' => "Tworzenie widoku", - 'Create Procedure' => "Tworzenie procedury", - 'Create Function' => "Tworzenie funkcji", - 'Create Trigger' => "Tworzenie Trigger", - 'Create Event' => "Utwórz wydarzenie", - 'Show/Hide Panel' => "Pokaż / Ukryj panel", - 'Show/Hide Header' => "Pokaż / Ukryj Header", - 'Copy all queries to clipboard' => "Skopiuj wszystkie zapytania do schowka", - 'Clear history' => "Wyczyść historię", - 'Copy Column values' => "Kopiowanie Kolumna wartości", - 'Copy to clipboard' => "Kopiuj do schowka", - 'Generate SQL Filter' => "Generowanie SQL Filter", - 'Database Manager' => "Menedżer bazy danych", - 'Manage databases' => "Zarządzanie bazami danych", - - // main menu related text - 'Database' => "Bazy danych", - 'Refresh' => "Odśwież", - 'Refresh database object list' => "Odśwież listę obiektów bazy danych", - 'Create new' => "Utwórz nowe", - 'Export' => "Export", - 'Export database to external file' => "Eksport danych do pliku zewnętrznego", - 'Objects' => "Obiekty", - 'Create Table' => "Tworzenie tabeli", - 'Create a new table in the database' => "Utwórz nową tabelę w bazie danych", - 'Create View' => "Tworzenie widoku", - 'Create a new view in the database' => "Tworzenie nowego widoku w bazie danych", - 'Create Stored Procedure' => "Tworzenie procedury przechowywanej", - 'Create a new stored procedure in the database' => "Utwórz nową procedurę przechowywaną w bazie danych", - 'Create Function' => "Tworzenie funkcji", - 'Create a new user defined function in the database' => "Tworzenie nowych funkcji zdefiniowanej przez użytkownika w bazie danych", - 'Create Trigger' => "Tworzenie Trigger", - 'Create a new trigger in the database' => "Utwórz nowy wyzwalacz w bazie danych", - 'Create Event' => "Utwórz wydarzenie", - 'Create a new event in the database' => "Utwórz nowe wydarzenie w bazie danych", - 'Data' => "Dane", - 'Import batch file' => "Import pliku wsadowego", - 'Import multiple queries from batch file' => "Import wiele zapytań z pliku wsadowego", - 'Export database' => "Eksport bazy danych", - 'Export database to batch file as sql dump' => "bazy danych Eksportuj do pliku partii sql", - 'Export current results' => "Eksportuj wyniki", - 'Export query results to clipboard or files' => "Eksport wyników kwerendy do schowka lub plików", - 'Tools' => "Narzędzia", - 'Process Manager' => "Process Manager", - 'View and manage database processes' => "Zobacz i zarządzania procesami bazy danych", - 'Repair Tables' => "Tabele Naprawa", - 'Analyze and repair database tables' => "Analiza i naprawy tabel bazy danych", - 'User Manager' => "User Manager", - 'Manage database users' => "Zarządzanie użytkownikami bazy danych", - 'Search in Database' => "Szukaj w bazie", - 'Search for text in the database' => "Szukaj tekstu w bazie danych", - 'Information' => "Informacje", - 'Server/Connection Details' => "Szczegóły / Połączenie z serwerem", - 'View server configuration' => "Widok konfiguracji serwera", - 'View server and connection details' => "Zobacz szczegóły serwera i połączenia", - 'Server Variables' => "Zmienne Server", - 'Database Summary' => "Baza danych Podsumowanie", - 'View current database summary stats' => "Zobacz aktualny statystyki podsumowanie danych", - 'Interface' => "Interface", - 'Options' => "Opcje", - 'Configure application options' => "Konfigurowanie opcji aplikacji", - 'UI Theme' => "UI Theme", - 'Database Objects' => "Obiekty bazy danych", - 'Toggle Object Viewer' => "Przełącz Object Viewer", - 'Help contents' => "help", - 'Learn the basics of using MyWebSQL' => "Naucz się podstaw obsługi MyWebSQL", - 'QuickStart Tutorials' => "QuickStart Tutorials", - 'See quick hands-on tutorial of MyWebSQL interface' => "Zobacz szybkie praktyczne tutorial MyWebSQL interfejs", - 'Online documentation' => "Dokumentacja Online", - 'View online documentation on project website' => "Przeglądanie dokumentacji na stronie projektu", - 'Request a Feature' => "Poproś o funkcji", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "Jeśli chciałbyś najbardziej ulubionych funkcji, aby być częścią MyWebSQL, kliknij tutaj, aby poinformować o tym", - 'Report a Problem' => "Zgłoś problem", - 'Check for updates' => "Sprawdź aktualizacje", - 'Check for updated versions of the application online' => "Sprawdź zaktualizowane wersje aplikacji online", - 'Logout' => "Wyloguj się", - 'Logout from this session' => "Wyloguj się z tej sesji", - 'Language' => "Język", - 'SQL Editor' => "SQL Editor", - 'Toggle SQL Editor' => "Przełącz edytor SQL", - 'Experimental' => "Eksperymentalny", - 'Import table data' => "Importować dane z tabeli", - 'Import table data from external file' => "Dane z tabeli przywozu z zewnętrznego pliku", - 'Batch operations' => "Operacje wsadowe", - 'Perform one or more batch operations on database' => "Wykonaj jedną lub więcej partii operacje na bazie danych", - 'Create a new schema in the database' => "Tworzenie nowego schematu w bazie danych", - 'Create Schema' => "Tworzenie schematu", - 'Table Description' => "Opis Tabela", - 'Database Manager' => "Menedżer bazy danych", - 'Manage databases' => "Zarządzanie bazami danych", - 'Backup database on the server as SQL dump' => "Kopii zapasowej bazy danych na serwerze SQL, jak wysypisko", - 'Backup Database' => "Database backup", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "Twoja przeglądarka wydaje się być bardzo stary i nie obsługuje wszystkie funkcje wymagane do uruchomienia MyWebSQL.", - 'Try using a newer version of the browser to run this application.' => "Spróbuj użyć nowszej wersji przeglądarki do uruchomienia tej aplikacji.", - - // text used on various screens in the interface - 'Visit Project website' => "Odwiedź stronę projektu", - 'Version' => "wersja", - 'Loading' => "Ładowanie", - 'Quick Edit Options' => "Opcje szybkiej edycji", - 'Press {{KEY}} to set NULL' => "Naciśnij {{KEY}}, aby ustawić NULL", - 'MySQL Server' => "MySQL Server", - 'Logged in as: {{USER}}' => "Zalogowany jako: {{USER}}", - 'Results' => "Wyniki", - 'Messages' => "Wiadomości", - 'Information' => "Informacje", - 'History' => "Historia", - 'There are no results to show in this view' => "Nie ma żadnych wyników do pokazania w tym widoku", - 'Refresh results' => "Wyniki Odśwież", - 'Please wait' => "Proszę czekać", - 'Query All' => "Wszystkie zapytania", - 'Query' => "Zapytanie", - 'Add Record' => "Dodaj wpis", - 'Delete Record(s)' => "Usuń rekord (s)", - 'Update Record(s)' => "Rekord Update (s)", - 'Generate SQL' => "Generowanie SQL", - 'Database name' => "Nazwa bazy danych", - 'Select database after creation' => "Wybierz po utworzeniu bazy danych", - 'Database connection failed to the server' => "Połączenie z bazą danych nie powiodło się z serwerem", - 'Host' => "Host", - 'User' => "Użytkownik", - 'Select a database to begin' => "Wybierz bazę danych, aby rozpocząć", - 'Select/unselect All records' => "Zaznacz / Odznacz wszystkie rekordy", - 'Primary key column' => "Kolumnę klucza podstawowego", - 'Unique key column' => "Unikalne kolumnę klucza", - 'Showing records {{START}} - {{END}}' => "Wyświetlono rekordy {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "Pokaż pierwszy {{MAX}} rekordy tylko", - '1 query successfully executed' => "1 zapytanie pomyślnie zrealizowane", - '{{NUM}} queries successfully executed' => "{{NUM}} zapytania pomyślnie zrealizowane", - '{{NUM}} record(s) were affected' => "{{NUM}} rekord (y) zostały dotknięte", - '{{NUM}} record(s) updated' => "{{NUM}} rekord (y) aktualizacja", - 'Error occurred while executing the query' => "Wystąpił błąd podczas wykonywania zapytania", - '{{NUM}} queries failed to execute' => "{{NUM}} zapytania nie powiodło się wykonanie", - 'Click to view/edit column data [{{NUM}} Bytes]' => "Kliknij aby zobaczyć / edytować kolumny danych [{{NUM}} bajtów]", - 'Blob data is not editable' => "Blob danych nie można edytować", - 'Blob data saved' => "Blob danych zapisanych", - 'Failed to save blob data' => "Nie udało się zapisać danych blob", - 'The process with id [{{PID}}] was killed' => "Proces z id [{{PID}}] został zabity", - 'No such process [id = {{PID}}]' => "Nie ma takiego procesu [id = {{PID}}]", - 'Select a process and click the button to kill the process' => "Wybierz sposób i kliknij przycisk, aby zabić proces", - 'Process ID' => "Identyfikator procesu", - 'Command' => "Polecenia", - 'Time' => "Czas", - 'Info' => "Info", - 'Kill Process' => "Kill Process", - 'Failed to get process list' => "Nie udało się uzyskać listę procesów", - 'The command executed successfully' => "Polecenie wykonane pomyślnie", - 'Invalid server configuration' => "Nieprawidłowa konfiguracja serwera", - 'Invalid Credentials' => "Nieprawidłowe poświadczenia", - 'New database successfully created' => "Nowa baza danych pomyślnie utworzony", - 'File upload failed. Please try again' => "Przesyłanie plików nie powiodło się. Proszę spróbować ponownie", - 'No queries were executed during import' => "Żadnych wątpliwości wykonywane podczas importu", - 'Maximum upload filesize is {{SIZE}}' => "Maksymalny rozmiar pliku jest upload {{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "Obsługiwanych typów plików i rozszerzenia: ({{LIST}})", - 'Database summary' => "podsumowanie danych", - 'Server Variables' => "Zmienne Server", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "Każdy istniejący obiekt o tej samej nazwie powinny zostać pominięte, ręcznie przed wykonaniem polecenia tworzenia", - 'Only create commands are accepted' => "Tylko stwórz polecenia są akceptowane", - 'User ID' => "ID użytkownika", - 'Password' => "Hasło", - 'Login' => "Zaloguj się", - 'Create new database object' => "Tworzenie nowego obiektu bazy danych", - 'Enter command for object creation' => "Wpisz polecenie utworzenia obiektu", - 'Submit' => "Wyślij", - 'Show blob data as: {{TYPE}}' => "Pokaż dane jako blob: {{TYPE}}", - 'Blob data for column {{NAME}}' => "Blob dla kolumny danych {{nazwa}}", - 'Create command for {{TYPE}} {{NAME}}' => "Tworzenie polecenia dla {{TYPE}} {{nazwa}}", - 'Table Engine (type)' => "Tabela Silnik (typ)", - 'Change Table Type' => "Typ zmiany tabeli", - 'The requested page is not available on the server' => "Żądana strona nie jest dostępna na serwerze", - 'Error' => "Błąd", - 'It appears that you attempted to submit an invalid request to the server' => "Wydaje się, że próbował złożyć nieprawidłowe żądanie do serwera", - 'The request has been denied. Reloading the page might solve the problem' => "Wniosek został odrzucony. Odświeżenie strony może rozwiązać problem", - 'Access Denied' => "Odmowa dostępu", - 'Help' => "Pomoc", - 'To see most up-to-date help contents, please visit {{LINK}}' => "Aby zobaczyć najbardziej aktualne treści pomocy, odwiedź {{LINK}}", - 'It appears that your browser session has expired' => "Wydaje się, że swoją sesję wygasła", - 'Please refresh the webpage to re-login' => "Proszę odświeżyć stronę ponownie się zalogować", - 'Table information' => "Informacje o tabeli", - 'Edit' => "Edytuj", - 'Save' => "Zapisz", - 'Either the database is empty, or there was an error retrieving list of database objects' => "Każda baza jest pusta, lub wystąpił błąd podczas pobierania listy obiektów bazy danych", - 'Please try closing and re-opening this dialog again' => "Prosimy spróbować zamknąć i ponownie ponownym otwarciu tego okna", - 'Structure' => "Struktura", - 'Table Data' => "Tabela danych", - 'Structure and Table Data' => "Struktura oraz dane w tabeli", - 'Options' => "Opcje", - 'Set Auto increment field values to NULL' => "Ustaw wartości Auto dziedzinie przyrostu NULL", - 'Add DROP command before create statements' => "Dodaj DROP polecenia przed CREATE", - 'Export' => "Export", - 'Import' => "Import", - 'Export Database' => "Eksport bazy", - 'Export Table' => "Eksportowanie tabeli", - 'Server information' => "Informacje o serwerze", - 'Server' => "Serwer", - 'Version comment' => "Wersja komentarz", - 'Character sets' => "Zestawy znaków", - 'Server character set' => "zestaw znaków Server", - 'Client character set' => "Klient zestaw znaków", - 'Database character set' => "zestaw znaków bazy danych", - 'Results character set' => "Wyniki zestaw znaków", - 'Export As' => "Eksportuj jako", - 'Insert Statements' => "INSERT", - 'Include field names in query' => "Dołącz nazwy pól w kwerendzie", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Zwykły tekst (jeden zapis na linię)", - 'Fields separated by:' => "Pola oddzielone:", - 'Export Results' => "Eksport wyników", - 'Select SQL batch file to import' => "Wybierz plik wsadowy SQL na przywóz", - 'Continue processing even if error occurs' => "Dalsze przetwarzanie, nawet jeśli wystąpi błąd", - 'Basic Information' => "Podstawowe informacje", - 'Table Properties' => "Właściwości tabeli", - 'Table Name' => "Nazwa tabeli", - 'Field Name' => "Nazwa pola", - 'Data Type' => "Typ danych", - 'Length' => "Długość", - 'Default value' => "Wartość domyślna", - 'Unsigned' => "Unsigned", - 'Zero Fill' => "Zero Fill", - 'Primary Key' => "Klucz podstawowy", - 'Auto Increment' => "Auto Increment", - 'Not NULL' => "Nie NULL", - 'Character Set' => "Zestaw znaków", - 'Collation' => "Porównanie", - 'Comment' => "Komentarz", - 'Waiting for table information to be submitted' => "Czekam na informacje, które należy przedłożyć tabeli", - 'Add field' => "Dodaj pole", - 'Delete selected field' => "Usuń zaznaczone pole", - 'Clear Table Information' => "Informacje Tabela Clear", - 'List of values' => "Lista wartości", - 'Query Results' => "Wyniki kwerendy", - 'Data for {{TABLE}}' => "Dane do {{}} TABLE", - 'Select tables to be analyzed/repaired' => "Wybierz tabele do analizy / naprawiane", - 'Operation to perform' => "Operacja do wykonania", - 'Analyze' => "Analizować", - 'Check' => "Sprawdź", - 'Optimize' => "Optymalizacja", - 'Repair' => "Naprawa", - 'Skip Binary logging' => "Przejdź logowania binarnego", - 'Default' => "Default", - 'Quick' => "Quick", - 'Fast' => "Fast", - 'Medium' => "Średnich", - 'Extended' => "Przedłużony", - 'Changed' => "Zmieniono", - 'Use Frm files (MyISAM tables)' => "Użyj pliki Frm (tabel MyISAM)", - 'User Information' => "Informacja o użytkowniku", - 'Global Privileges' => "Global przywilejów", - 'Database Privileges' => "Baza danych przywilejów", - 'Import File' => "Import plików", - 'Index Manager' => "Index Manager", - 'Edit table structure' => "Edycja struktury tabeli", - 'Save All Changes' => "Zapisz wszystkie zmiany", - 'Changes are not saved until you press [Save All Changes]' => "Zmiany nie są zapisywane do momentu naciśnięcia przycisku [Zapisz wszystkie zmiany]", - 'Field Length' => "Długość pola", - 'Select objects to include in export' => "Wybierz obiekty do włączenia się w eksporcie", - 'Export type' => "wpisz Eksport", - 'Select All/None' => "Wybierz Wszystko / Nic", - 'Add User' => "Dodaj użytkownika", - 'Update User' => "Update użytkownika", - 'Delete selected User' => "Usuń wybrane użytkownika", - 'Remove Password' => "Usuń hasło", - 'Select tables to search' => "Wybierz tabele wyszukiwania", - 'Search Options' => "Opcje wyszukiwania", - 'Search in following field types' => "Szukaj w następujących typów pól", - 'Numeric Fields' => "Pól liczbowych", - 'Character Fields' => "Pola znakowe", - 'Text Fields' => "Pól tekstowych", - 'Date/Time Fields' => "Data / czas", - 'Comparison Type' => "Porównanie Typ", - 'Text to search' => "Tekst do wyszukania", - 'Search' => "Szukaj", - 'Search Results' => "Wyniki wyszukiwania", - 'Number of matches' => "Liczba meczów", - 'Search results for {{KEYWORD}} in the database' => "Wyniki wyszukiwania dla {{KEYWORD}} w bazie danych", - '{{NUM}} match(es)' => "{{NUM}} mecz (es)", - 'Copy query to editor' => "Skopiuj do edytora zapytanie", - 'Done' => "Sporządzono", - 'SQL Editor' => "SQL Editor", - 'Create Copy' => "Utwórz kopię", - 'Minimize All' => "Minimalizuj wszystkie", - 'Copy Record(s)' => "Kopiowanie rekordu (s)", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "Oddzielone przecinkami (CSV dla Excel)", - 'Select data file to import' => "Wybierz plik z danymi do importu", - 'Select table for data import' => "Wybierz tabeli importu danych", - 'First line contains column names' => "Pierwszy wiersz zawiera nazwy kolumn", - 'Select objects to operate upon' => "Wybierz obiekty do pracy na", - 'Operations to perform' => "Operacje do wykonania", - 'Add prefix string to name' => "Dodaj ciąg prefiksu do nazwy", - 'Delete prefix string from name' => "Usuń ciąg prefiks z nazwą", - 'Command text' => "Tekst polecenia", - 'DROP selected database objects' => "DROP wybrane obiekty bazy danych", - 'Batch operation results' => "Wyniki pracy okresowej", - 'Operation' => "Operacja", - 'Status' => "Status", - '{{NUM}} queries generated' => "{{NUM}} pyta generowane", - 'Please select one or more operations to perform' => "Prosimy wybrać jeden lub więcej czynności do wykonania", - 'Quick Search' => "Szybkie wyszukiwanie", - '{{NAME}} client library is not installed' => "{{Nazwa}} Biblioteka klienta nie jest zainstalowany", - '{{NAME}} extension is not installed' => "{{Nazwa}} rozszerzenie nie jest zainstalowany", - 'SQLite database folder is inaccessible or not writable' => "Folder bazy danych SQLite jest niedostępny lub jest nie do zapisania", - 'Maximize/Restore Results Pane' => "Maksymalizuj / Przywróć okienka wyników", - 'Select databases to operate upon' => "Wybrać bazy danych do pracy na", - 'DROP selected databases' => "DROP wybrane bazy danych", - 'The following operation is irreversible' => "Następująca operacja jest nieodwracalna", - 'Potential data loss might occur' => "Potencjalna utrata danych może wystąpić", - 'Add TRUNCATE command before insert statements' => "Dodaj TRUNCATE polecenie przed instrukcje wstawiania", - 'Select objects to include in backup' => "Wybierz obiekty do uwzględnienia w kopii zapasowej", - 'Backup folder does not exist or is not writable' => "Folder kopii zapasowej nie istnieje lub nie jest zapisywalny", - 'Backup type' => "Typ kopii zapasowej", - 'Database backup successfully created' => "Kopii zapasowej bazy danych został pomyślnie utworzony", - 'Failed to create database backup' => "Nie udało się utworzyć kopię zapasową bazy danych", - 'Generate Bulk insert statements' => "Generowanie sprawozdań zbiorczych wstawianie", - 'Maximum size of SQL statement' => "Maksymalny rozmiar SQL", - 'Show record count with table names' => "Pokaż liczbę rekordów z nazwami tabel", - 'Sort Table listing by' => "Wpis Tabela Sortuj według", - 'Name' => "Nazwa", - 'Last Update Time' => "Czas ostatniej aktualizacji", - 'Maximum records to display in result set' => "Maksymalna liczba rekordów do wyświetlenia w zestawie wyników", - 'Show popup dialog for editing large text data' => "Pokaż okienko dialogowe do edycji dużych danych tekstowych", - 'Miscellaneous' => "Rozmaity", - 'Reset all confirmation dialogs' => "Reset wszystkich okien z potwierdzeniami", - 'Record Editing' => "Edycja rekordu", - 'Exclude Table type' => "Wyklucza typu tabeli", - 'Exclude Table Character set' => "Wyklucza tabeli przedstawionej postaci", - 'Backup filename' => "Nazwa pliku kopii zapasowej", - 'Invalid filename format' => "Nieprawidłowy format nazwy pliku", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "wszystkich", - 'all selected' => "wszystkich wybranych", - 'An error occured while refreshing the object list.' => "Wystąpił błąd podczas odświeżania listy obiektów.", - 'Are you sure you want to clear all field information from table?' => "Czy na pewno chcesz usunąć wszystkie informacje o polu z tabeli?", - 'Are you sure you want to delete this user account?' => "Czy na pewno chcesz usunąć to konto użytkownika?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "Czy na pewno chcesz usunąć wszystkie obiekty z bazy danych {{nazwa}}?", - 'Are you sure you want to DROP selected objects?' => "Czy na pewno chcesz usunąć wybrane obiekty?", - 'Are you sure you want to DROP the database {{NAME}}?' => "Czy na pewno chcesz usunąć bazę danych {{nazwa}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "Czy na pewno chcesz usunąć ten obiekt? {{Nazwa}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "Czy na pewno chcesz wykonać {{SELECTED}} zapytania?", - 'Are you sure you want to logout?' => "Czy na pewno chcesz się wylogować?", - 'Are you sure you want to truncate the table {{NAME}}?' => "Czy na pewno chcesz obciąć tabeli {{nazwa}}?", - 'Blob Data [{{SIZE}}]' => "BLOB danych [{{SIZE}}]", - 'Cancel' => "Anuluj", - 'Check for Updates' => "Sprawdź aktualizacje", - 'Clear command history?' => "Wyczyść historię poleceń?", - 'Close' => "Zamknij", - 'Confirm Action' => "Sprawdź działanie", - 'Confirm and do not ask me again about this choice' => "Potwierdź i nie pytaj mnie o tym innym razem wybór", - 'Copy Object' => "Kopiowanie obiektów", - 'Create Database' => "Tworzenie bazy danych", - 'Create Primary Index on this field' => "Utwórz podstawową indeks w tej dziedzinie", - 'Databases' => "Bazy danych", - 'Default value [Use quotes to specify string values]' => "Wartość domyślna [Użyj cudzysłowów, aby określić wartości string]", - 'Disallow NULL values in Field' => "Disallow wartości NULL w polu", - 'Enter new index name' => "Wpisz nową nazwę indeksu", - 'Enter new name for the database object' => "Wprowadź nową nazwę dla obiektu bazy danych", - 'Enter the text to search in database' => "Wpisz tekst do wyszukania w bazie danych", - 'Error' => "Błąd", - 'Events' => "Wydarzenia", - 'Execute query' => "Wykonaj zapytanie", - 'Exports results' => "Eksport wyników", - 'Failed to refresh the results.' => "Nie można odświeżyć wyników.", - 'Field Datatype' => "Typ danych pola", - 'Field Name' => "Nazwa pola", - 'Field value is Auto Incremented' => "Wartość pola jest Auto Zwiększany", - 'Functions' => "Funkcje", - 'Indexes Updated' => "Indeksy Zaktualizowano", - 'Maximum Length of field value' => "Maksymalna długość polu wartości", - 'Navigation Error. Try reloading the page' => "Błąd nawigacji. Spróbuj odświeżyć stronę", - 'New settings saved and applied' => "Nowe ustawienia zapisywane i stosowane", - 'New version is available' => "Nowa wersja jest dostępna", - 'Next' => "Następna", - 'No' => "Nr", - 'No Table selected' => "Tabela nr wybranych", - 'Not enough room to show this pane.' => "Nie dość miejsca, aby pokazać w tym okienku.", - 'OK' => "OK", - 'One or more field information is incomplete' => "Jeden lub więcej pola informacje są niekompletne", - 'Open' => "Open", - 'Operation failed' => "Operacja nie powiodła się", - 'Pad field values with leading zeros' => "wartości Pad pole z zerem na początku", - 'Pane' => "Okienko", - 'Passwords do not match' => "Hasła nie pasują", - 'Pin' => "PIN", - 'Please select one or more operations to perform' => "Prosimy wybrać jeden lub więcej czynności do wykonania", - 'Please type in one or more queries in the SQL editor!' => "Proszę wpisać jedno lub więcej zapytań w edytorze SQL!", - 'Please wait...' => "Proszę czekać ...", - 'Previous' => "Poprzedni", - 'Procedures' => "Procedury", - 'Prompt' => "Wiersz", - 'Refresh results' => "Wyniki Odśwież", - 'Refreshing object list' => "Odświeżanie listy obiektów", - 'Rename Object' => "Zmień nazwę obiektu", - 'Resize' => "Zmiana rozmiaru", - 'Results page:' => "Strona wyników:", - 'Select a database to view privileges for the user' => "Wybierz bazę danych, aby wyświetlić uprawnienia użytkownika", - 'Select an index to view / edit its details' => "Wybierz indeks do przeglądania i edycji swoich danych", - 'Select at least one field type for searching' => "Wybierz co najmniej jedno pole typu wyszukiwania", - 'Select objects to operate upon' => "Wybierz obiekty do pracy na", - 'selector' => "selektor", - 'Slide Open' => "Slide Open", - 'Table information requires at least one valid field' => "Informacje Tabela wymaga co najmniej jeden ważny dziedzinie", - 'Table name is required' => "Nazwa tabeli jest wymagane", - 'Table successfully created' => "Tabela pomyślnie utworzony", - 'Table successfully modified' => "Tabela pomyślnie zmienione", - 'Tables' => "Stoły", - 'Text Data [{{SIZE}}]' => "Dane tekstowe [{{SIZE}}]", - 'There is no record in the results to export' => "Nie ma zapisu w wynikach eksportu", - 'This attribute is not required for selected field type' => "Ten atrybut nie jest wymagany dla wybranego typu pola", - 'Triggers' => "Wyzwalacze", - 'Un-Pin' => "Un-Pin", - 'Unsigned numbered field only' => "Unsigned tylko pole numerowane", - 'Update check failed' => "Aktualizacja sprawdzić nie", - 'User information is incomplete or invalid' => "Instrukcja informacje są niekompletne lub nieprawidłowe", - 'User Manager' => "User Manager", - 'Views' => "Liczba wyświetleń", - 'WARNING' => "OSTRZEŻENIE", - 'Yes' => "Tak", - 'You have the latest version' => "Masz najnowszą wersję", - - ); -?> diff --git a/lang/pt.php b/lang/pt.php deleted file mode 100644 index ebdd02f..0000000 --- a/lang/pt.php +++ /dev/null @@ -1,463 +0,0 @@ - "Uso de banco de dados", - 'Drop Database' => "Drop Database", - 'Empty Database' => "Banco de dados vazio", - 'Drop all tables from this database' => "Drop todas as tabelas desse banco de dados", - 'Select statement' => "Select", - 'Insert statement' => "Inserir declaração", - 'Update statement' => "declaração de atualização", - 'Describe' => "Descrever", - 'Show create command' => "Mostrar comando create", - 'View data' => "Exibir dados", - 'Alter Table' => "Alter Table", - 'Indexes' => "Índices", - 'Engine Type' => "Tipo do motor", - 'More operations' => "Mais operações", - 'Truncate' => "Truncar", - 'Drop' => "Drop", - 'Rename' => "Renomear", - 'Export table data' => "tabela de dados de exportação", - 'Create Table' => "Criar tabela", - 'Create View' => "Criar Vista", - 'Create Procedure' => "Create Procedure", - 'Create Function' => "Criar Função", - 'Create Trigger' => "Criar Trigger", - 'Create Event' => "Criar evento", - 'Show/Hide Panel' => "Mostrar / Esconder o Painel de", - 'Show/Hide Header' => "Show / Hide cabeçalho", - 'Copy all queries to clipboard' => "Copiar todas as consultas à prancheta", - 'Clear history' => "Limpar histórico", - 'Copy Column values' => "Copiar Coluna valores", - 'Copy to clipboard' => "Copiar para o clipboard", - 'Generate SQL Filter' => "Generate SQL Filtro", - 'Database Manager' => "Gerente de banco de dados", - 'Manage databases' => "Gerenciar bancos de dados", - - // main menu related text - 'Database' => "Banco de Dados", - 'Refresh' => "Atualizar", - 'Refresh database object list' => "Atualizar lista de objetos de banco de dados", - 'Create new' => "Criar uma nova", - 'Export' => "Exportação", - 'Export database to external file' => "Exportar banco de dados para um arquivo externo", - 'Objects' => "Objetos", - 'Create Table' => "Criar tabela", - 'Create a new table in the database' => "Criar uma nova tabela no banco de dados", - 'Create View' => "Criar Vista", - 'Create a new view in the database' => "Criar uma nova exibição na base de dados", - 'Create Stored Procedure' => "Criar Stored Procedure", - 'Create a new stored procedure in the database' => "Criar um novo procedimento armazenado no banco de dados", - 'Create Function' => "Criar Função", - 'Create a new user defined function in the database' => "Criar um novo utilizador função definida no banco de dados", - 'Create Trigger' => "Criar Trigger", - 'Create a new trigger in the database' => "Criar um novo gatilho no banco de dados", - 'Create Event' => "Criar evento", - 'Create a new event in the database' => "Criar um novo evento no banco de dados", - 'Data' => "Dados", - 'Import batch file' => "Importar um arquivo de lote", - 'Import multiple queries from batch file' => "Importar consultas múltiplas de um arquivo de lote", - 'Export database' => "Exportar banco de dados", - 'Export database to batch file as sql dump' => "Exportar banco de dados para arquivo de lote como o dump sql", - 'Export current results' => "Exportar resultados atuais", - 'Export query results to clipboard or files' => "resultados da consulta de exportação para o clipboard ou arquivos", - 'Tools' => "Ferramentas", - 'Process Manager' => "Process Manager", - 'View and manage database processes' => "Ver e gerenciar processos de banco de dados", - 'Repair Tables' => "Tabelas de reparação", - 'Analyze and repair database tables' => "Analisar e reparar as tabelas do banco", - 'User Manager' => "User Manager", - 'Manage database users' => "Gerenciar usuários de banco de dados", - 'Search in Database' => "Busca no banco de dados", - 'Search for text in the database' => "Pesquisar texto no banco de dados", - 'Information' => "Informação", - 'Server/Connection Details' => "Detalhes do Servidor / Conexão", - 'View server configuration' => "Ver configuração de servidor", - 'View server and connection details' => "Ver servidor e conexão de dados", - 'Server Variables' => "Variáveis ​​de Servidor", - 'Database Summary' => "Resumo do banco de dados", - 'View current database summary stats' => "Ver resumo estatísticas atuais de banco de dados", - 'Interface' => "Interface", - 'Options' => "Opções", - 'Configure application options' => "Configurar opções de aplicação", - 'UI Theme' => "UI Theme", - 'Database Objects' => "Objetos de Banco de Dados", - 'Toggle Object Viewer' => "Alternar Viewer Objeto", - 'Help contents' => "conteúdo da Ajuda", - 'Learn the basics of using MyWebSQL' => "Aprenda os fundamentos básicos do uso MyWebSQL", - 'QuickStart Tutorials' => "Tutoriais de início rápido", - 'See quick hands-on tutorial of MyWebSQL interface' => "Veja interface hands-on tutorial de MyWebSQL rápida", - 'Online documentation' => "Documentação on-line", - 'View online documentation on project website' => "Ver documentação on-line no site do projeto", - 'Request a Feature' => "Solicitar um recurso", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "Se você gostaria de sua característica mais favorito para ser parte de MyWebSQL, clique aqui para se informar", - 'Report a Problem' => "Comunicar um problema", - 'Check for updates' => "Verifique se há atualizações", - 'Check for updated versions of the application online' => "Verifique se há versões atualizadas do aplicativo online", - 'Logout' => "Logout", - 'Logout from this session' => "Sair desta sessão", - 'Language' => "Idioma", - 'SQL Editor' => "SQL Editor", - 'Toggle SQL Editor' => "Editor de SQL alternar", - 'Experimental' => "Experimental", - 'Import table data' => "Importar dados da tabela", - 'Import table data from external file' => "Importar dados da tabela de arquivo externo", - 'Batch operations' => "Operações em lote", - 'Perform one or more batch operations on database' => "Executar uma ou mais operações em lote no banco de dados", - 'Create a new schema in the database' => "Criar um novo esquema no banco de dados", - 'Create Schema' => "Criar esquema", - 'Table Description' => "Descrição tabela", - 'Database Manager' => "Gerente de banco de dados", - 'Manage databases' => "Gerenciar bancos de dados", - 'Backup database on the server as SQL dump' => "Banco de dados de backup no servidor como despejo de SQL", - 'Backup Database' => "Banco de dados de backup", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "Seu navegador parece ser muito antiga e não suporta todos os recursos necessários para executar MyWebSQL.", - 'Try using a newer version of the browser to run this application.' => "Tente usar uma versão mais recente do navegador para executar este aplicativo", - - // text used on various screens in the interface - 'Visit Project website' => "Visite o site do projeto", - 'Version' => "versão", - 'Loading' => "Carregando", - 'Quick Edit Options' => "Quick Edit Options", - 'Press {{KEY}} to set NULL' => "Pressione o botão {{KEY}} para definir NULL", - 'MySQL Server' => "MySQL", - 'Logged in as: {{USER}}' => "Identificados como: {{USER}}", - 'Results' => "Resultados", - 'Messages' => "Mensagens", - 'Information' => "Informação", - 'History' => "História", - 'There are no results to show in this view' => "Não existem resultados para mostrar nesta vista", - 'Refresh results' => "Atualizar resultados", - 'Please wait' => "Por favor, aguarde", - 'Query All' => "Consulta todos", - 'Query' => "Consulta", - 'Add Record' => "Adicionar Record", - 'Delete Record(s)' => "Apagar registro (s)", - 'Update Record(s)' => "Atualizar registro (s)", - 'Generate SQL' => "Generate SQL", - 'Database name' => "Nome do banco", - 'Select database after creation' => "Selecione banco de dados após a criação", - 'Database connection failed to the server' => "conexão de banco de dados falhou para o servidor", - 'Host' => "Host", - 'User' => "Usuário", - 'Select a database to begin' => "Selecione um banco de dados para começar", - 'Select/unselect All records' => "Selecionar / desmarcar todos os registros", - 'Primary key column' => "coluna de chave primária", - 'Unique key column' => "Única coluna de chave", - 'Showing records {{START}} - {{END}}' => "Mostrando registros {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "Mostrando primeira {{MAX}} apenas registros", - '1 query successfully executed' => "Uma consulta executada com êxito", - '{{NUM}} queries successfully executed' => "{{NUM}} consultas executado com sucesso", - '{{NUM}} record(s) were affected' => "{{NUM}} registro (s) foram afetadas", - '{{NUM}} record(s) updated' => "{{NUM}} registro (s) atualizada", - 'Error occurred while executing the query' => "Ocorreu um erro ao executar a consulta", - '{{NUM}} queries failed to execute' => "{{NUM}} falhou ao executar consultas", - 'Click to view/edit column data [{{NUM}} Bytes]' => "Clique para ver / editar coluna de dados [{{NUM}} Bytes]", - 'Blob data is not editable' => "dados Blob não é editável", - 'Blob data saved' => "Blob dados salvos", - 'Failed to save blob data' => "Falha ao salvar dados blob", - 'The process with id [{{PID}}] was killed' => "O processo com o id [{{PID}}] foi morto", - 'No such process [id = {{PID}}]' => "Nenhum processo, tais [id = {{PID}}]", - 'Select a process and click the button to kill the process' => "Selecione um processo e clique no botão para matar o processo", - 'Process ID' => "Processo de identificação", - 'Command' => "Comando", - 'Time' => "Time", - 'Info' => "Info", - 'Kill Process' => "Kill Process", - 'Failed to get process list' => "Falha ao obter a lista de processos", - 'The command executed successfully' => "O comando foi executado com êxito", - 'Invalid server configuration' => "configuração do servidor inválido", - 'Invalid Credentials' => "Credenciais inválidas", - 'New database successfully created' => "Novo banco de dados criado com sucesso", - 'File upload failed. Please try again' => "Upload do arquivo falhou. Por favor, tente novamente", - 'No queries were executed during import' => "Nenhuma consulta foram executados durante a importação", - 'Maximum upload filesize is {{SIZE}}' => "Máxima de upload tamanho é {{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "tipos de arquivos suportados / extensions são: ({{LIST}})", - 'Database summary' => "Resumo do banco de dados", - 'Server Variables' => "Variáveis ​​de Servidor", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "Qualquer objeto com o mesmo nome deve ser retirado manualmente antes de executar o comando de criação", - 'Only create commands are accepted' => "Apenas criar comandos são aceitos", - 'User ID' => "User ID", - 'Password' => "Senha", - 'Login' => "Login", - 'Create new database object' => "Criar um objeto novo banco de dados", - 'Enter command for object creation' => "Digite o comando para a criação do objeto", - 'Submit' => "Enviar", - 'Show blob data as: {{TYPE}}' => "blob de dados Mostrar como: {{TYPE}}", - 'Blob data for column {{NAME}}' => "dados Blob para coluna {{NAME}}", - 'Create command for {{TYPE}} {{NAME}}' => "Criar um comando para {{TYPE}} {{NAME}}", - 'Table Engine (type)' => "Tabela do motor (tipo)", - 'Change Table Type' => "Alterar o tipo de quadro", - 'The requested page is not available on the server' => "A página solicitada não está disponível no servidor", - 'Error' => "Erro", - 'It appears that you attempted to submit an invalid request to the server' => "Parece que você tentou enviar um pedido inválido para o servidor", - 'The request has been denied. Reloading the page might solve the problem' => "O pedido foi negado. Recarregar a página pode resolver o problema", - 'Access Denied' => "Acesso negado", - 'Help' => "Ajuda", - 'To see most up-to-date help contents, please visit {{LINK}}' => "Para ver o conteúdo de ajuda mais up-to-date, visite {{LINK}}", - 'It appears that your browser session has expired' => "Parece que seu navegador sessão expirou", - 'Please refresh the webpage to re-login' => "Refresca a página para re-login", - 'Table information' => "informação da tabela", - 'Edit' => "Editar", - 'Save' => "Guardar", - 'Either the database is empty, or there was an error retrieving list of database objects' => "O banco de dados está vazio, ou houve um erro ao recuperar lista de objetos de banco de dados", - 'Please try closing and re-opening this dialog again' => "Por favor, tente fechar e voltar a abrir este diálogo novamente", - 'Structure' => "Estrutura", - 'Table Data' => "Tabela de Dados", - 'Structure and Table Data' => "Estrutura e Tabela de Dados", - 'Options' => "Opções", - 'Set Auto increment field values to NULL' => "Definir valores de campo de incremento automático para NULL", - 'Add DROP command before create statements' => "Adicionar comando DROP antes de criar declarações", - 'Export' => "Exportação", - 'Import' => "Importação", - 'Export Database' => "Exportação de Banco de Dados", - 'Export Table' => "Exporte Tabela", - 'Server information' => "Informações do servidor", - 'Server' => "Servidor", - 'Version comment' => "Versão comentário", - 'Character sets' => "Conjuntos de caracteres", - 'Server character set' => "conjunto de caracteres Server", - 'Client character set' => "Cliente conjunto de caracteres", - 'Database character set' => "Banco de dados conjunto de caracteres", - 'Results character set' => "Resultados conjunto de caracteres", - 'Export As' => "Como Exportar", - 'Insert Statements' => "Insira Demonstrações", - 'Include field names in query' => "Incluir nomes de campo na consulta", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Texto simples (um registro por linha)", - 'Fields separated by:' => "Campos separados por:", - 'Export Results' => "Exportar Resultados", - 'Select SQL batch file to import' => "Selecione o arquivo de lote SQL para importar", - 'Continue processing even if error occurs' => "Continuar o processamento mesmo erro ocorre", - 'Basic Information' => "Informações Básicas", - 'Table Properties' => "Propriedades da tabela", - 'Table Name' => "Nome da tabela", - 'Field Name' => "Nome do Campo", - 'Data Type' => "Tipo de dados", - 'Length' => "Comprimento", - 'Default value' => "O valor padrão", - 'Unsigned' => "Não assinado", - 'Zero Fill' => "Zero Fill", - 'Primary Key' => "Chave Primária", - 'Auto Increment' => "Auto Increment", - 'Not NULL' => "Não NULL", - 'Character Set' => "Conjunto de Caracteres", - 'Collation' => "Colação", - 'Comment' => "Comentário", - 'Waiting for table information to be submitted' => "Aguardando informações da tabela a ser apresentado", - 'Add field' => "Adicionar campo", - 'Delete selected field' => "campo selecionado Excluir", - 'Clear Table Information' => "Limpar Information Table", - 'List of values' => "Lista de valores", - 'Query Results' => "Resultados da Consulta", - 'Data for {{TABLE}}' => "Os dados para {{TABLE}}", - 'Select tables to be analyzed/repaired' => "Selecione as tabelas a serem analisados ​​/ reparado", - 'Operation to perform' => "Operação a ser executada", - 'Analyze' => "Analisar", - 'Check' => "Confira", - 'Optimize' => "Otimizar", - 'Repair' => "Reparação", - 'Skip Binary logging' => "Passar o log binário", - 'Default' => "Default", - 'Quick' => "Rápido", - 'Fast' => "Fast", - 'Medium' => "Médio", - 'Extended' => "Extensão", - 'Changed' => "Mudado", - 'Use Frm files (MyISAM tables)' => "Use arquivos Frm (tabelas MyISAM)", - 'User Information' => "Informações do Usuário", - 'Global Privileges' => "Global Privileges", - 'Database Privileges' => "Privilégios de Banco de Dados", - 'Import File' => "Importar Arquivo", - 'Index Manager' => "Index Manager", - 'Edit table structure' => "Edite a estrutura da tabela", - 'Save All Changes' => "Salvar todas as alterações", - 'Changes are not saved until you press [Save All Changes]' => "As alterações não são salvos até você pressionar [Salvar todas as alterações]", - 'Field Length' => "Comprimento de Campo", - 'Select objects to include in export' => "Selecione os objetos para incluir na exportação", - 'Export type' => "Tipo Exportação", - 'Select All/None' => "Selecionar Todos / Nenhum", - 'Add User' => "Adicionar usuário", - 'Update User' => "Atualizar Usuário", - 'Delete selected User' => "Excluir selecionadas Usuário", - 'Remove Password' => "Retirar senha", - 'Select tables to search' => "Selecione as tabelas para pesquisa", - 'Search Options' => "Opções de pesquisa", - 'Search in following field types' => "Busca nas seguintes tipos de campo", - 'Numeric Fields' => "Campos numéricos", - 'Character Fields' => "Os campos de caracteres", - 'Text Fields' => "Campos de texto", - 'Date/Time Fields' => "Data / Hora Campos", - 'Comparison Type' => "Tipo de Comparação", - 'Text to search' => "Texto para pesquisa", - 'Search' => "Pesquisa", - 'Search Results' => "Resultados da Pesquisa", - 'Number of matches' => "Número de partidas", - 'Search results for {{KEYWORD}} in the database' => "Resultados da pesquisa para {{KEYWORD}} na base de dados", - '{{NUM}} match(es)' => "{{NUM}} jogo (s)", - 'Copy query to editor' => "Cópia de consulta ao editor", - 'Done' => "Done", - 'SQL Editor' => "SQL Editor", - 'Create Copy' => "Criar Cópia", - 'Minimize All' => "Minimizar todas as", - 'Copy Record(s)' => "Copiar Registro (s)", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "Comma Separated (CSV para Excel)", - 'Select data file to import' => "Selecione o arquivo de dados para importar", - 'Select table for data import' => "Selecione a tabela para importação de dados", - 'First line contains column names' => "Primeira linha contém nomes de coluna", - 'Select objects to operate upon' => "Selecione os objetos para operar sobre", - 'Operations to perform' => "Operações para executar", - 'Add prefix string to name' => "Adicionar cadeia de prefixo para nomear", - 'Delete prefix string from name' => "Excluir cadeia de prefixo do nome", - 'Command text' => "O texto do comando", - 'DROP selected database objects' => "Soltar objetos de banco de dados selecionados", - 'Batch operation results' => "Operação resulta em lote", - 'Operation' => "Operação", - 'Status' => "Estado", - '{{NUM}} queries generated' => "{{NUM}} consulta gerada", - 'Please select one or more operations to perform' => "Por favor, selecione uma ou mais operações para executar", - 'Quick Search' => "Pesquisa Rápida", - '{{NAME}} client library is not installed' => "{{Name}} biblioteca cliente não está instalado", - '{{NAME}} extension is not installed' => "{{Name}} extensão não é instalado", - 'SQLite database folder is inaccessible or not writable' => "SQLite pasta de banco de dados está inacessível ou não gravável", - 'Maximize/Restore Results Pane' => "Maximizar / Restaurar Painel de Resultados", - 'Select databases to operate upon' => "Selecionar bancos de dados para operar junto ao", - 'DROP selected databases' => "Eliminar bancos de dados selecionados", - 'The following operation is irreversible' => "A operação seguinte é irreversível", - 'Potential data loss might occur' => "Potencial perda de dados pode ocorrer", - 'Add TRUNCATE command before insert statements' => "Adicionar TRUNCATE comando antes instruções de inserção", - 'Select objects to include in backup' => "Selecione objetos para incluir na cópia de segurança", - 'Backup folder does not exist or is not writable' => "Pasta de backup não existe ou não é gravável", - 'Backup type' => "Tipo de backup", - 'Database backup successfully created' => "De backup de banco de dados criado com sucesso", - 'Failed to create database backup' => "Falha ao criar o banco de dados de backup", - 'Generate Bulk insert statements' => "Gerar instruções de inserção em massa", - 'Maximum size of SQL statement' => "Tamanho máximo de instrução SQL", - 'Show record count with table names' => "Mostrar contagem de registros com nomes de tabelas", - 'Sort Table listing by' => "Ordenar Tabela listagem por", - 'Name' => "Nome", - 'Last Update Time' => "Atualização Tempo", - 'Maximum records to display in result set' => "Máximo de Registros para exibir no conjunto de resultados", - 'Show popup dialog for editing large text data' => "Mostrar caixa de diálogo pop-up para a edição de dados de texto grandes", - 'Miscellaneous' => "Diverso", - 'Reset all confirmation dialogs' => "Redefinir todas as caixas de diálogo de confirmação", - 'Record Editing' => "Grave Edição", - 'Exclude Table type' => "Excluir tipo de mesa", - 'Exclude Table Character set' => "Excluir Tabela conjunto de caracteres", - 'Backup filename' => "Filename backup", - 'Invalid filename format' => "Formato de nome de arquivo inválido", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "todos", - 'all selected' => "todos os selecionados", - 'An error occured while refreshing the object list.' => "Ocorreu um erro ao atualizar lista de objeto.", - 'Are you sure you want to clear all field information from table?' => "Tem certeza que quer apagar todas as informações de campo da tabela?", - 'Are you sure you want to delete this user account?' => "Tem certeza de que deseja excluir esta conta de utilizador?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "Tem certeza que quer deletar todos os objetos do banco de dados {{NAME}}?", - 'Are you sure you want to DROP selected objects?' => "Tem certeza que quer deletar objetos selecionados?", - 'Are you sure you want to DROP the database {{NAME}}?' => "Tem certeza que quer deletar o banco de dados {{NAME}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "Tem certeza que quer deletar esse objeto? {{NAME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "Tem certeza que quer executar {{SELECTED}} consultas?", - 'Are you sure you want to logout?' => "Tem certeza que quer sair?", - 'Are you sure you want to truncate the table {{NAME}}?' => "Tem certeza que deseja truncar a tabela {{NAME}}?", - 'Blob Data [{{SIZE}}]' => "Dados Blob [{{SIZE}}]", - 'Cancel' => "Cancelar", - 'Check for Updates' => "Verifique se há atualizações", - 'Clear command history?' => "Limpar o histórico de comando?", - 'Close' => "Fechar", - 'Confirm Action' => "Confirmar a ação", - 'Confirm and do not ask me again about this choice' => "Confirme e não perguntar novamente sobre esta escolha", - 'Copy Object' => "Objeto cópia", - 'Create Database' => "Criar banco de dados", - 'Create Primary Index on this field' => "Criar Índice primário neste campo", - 'Databases' => "Bases de dados", - 'Default value [Use quotes to specify string values]' => "O valor padrão [Use aspas para especificar valores de seqüência]", - 'Disallow NULL values in Field' => "Não permitir valores NULL no campo", - 'Enter new index name' => "Digite o nome do novo índice", - 'Enter new name for the database object' => "Digite um novo nome para o objeto de banco de dados", - 'Enter the text to search in database' => "Digite o texto a pesquisar no banco de dados", - 'Error' => "Erro", - 'Events' => "Eventos", - 'Execute query' => "Executar consulta", - 'Exports results' => "Exportação de resultados", - 'Failed to refresh the results.' => "Falha ao atualizar os resultados.", - 'Field Datatype' => "Campo Tipo de Dados", - 'Field Name' => "Nome do Campo", - 'Field value is Auto Incremented' => "O valor do campo é incrementado automaticamente", - 'Functions' => "Funções", - 'Indexes Updated' => "Índices Atualizado", - 'Maximum Length of field value' => "O comprimento máximo do campo de valor", - 'Navigation Error. Try reloading the page' => "Erro de navegação. Tente recarregar a página", - 'New settings saved and applied' => "Novas configurações salvas e aplicadas", - 'New version is available' => "A nova versão está disponível", - 'Next' => "Seguinte", - 'No' => "Não", - 'No Table selected' => "N Tabela selecionada", - 'Not enough room to show this pane.' => "sem espaço suficiente para mostrar esse painel.", - 'OK' => "OK", - 'One or more field information is incomplete' => "Um ou mais informações sobre o campo está incompleto", - 'Open' => "Abrir", - 'Operation failed' => "A operação falhou", - 'Pad field values with leading zeros' => "valores de campo Pad com zeros à esquerda", - 'Pane' => "Pane", - 'Passwords do not match' => "Senhas não coincidem", - 'Pin' => "Pinos", - 'Please select one or more operations to perform' => "Por favor, selecione uma ou mais operações para executar", - 'Please type in one or more queries in the SQL editor!' => "Por favor, digite uma ou mais consultas no editor de SQL!", - 'Please wait...' => "Por favor, aguarde ...", - 'Previous' => "Anterior", - 'Procedures' => "Procedimentos", - 'Prompt' => "Prompt", - 'Refresh results' => "Atualizar resultados", - 'Refreshing object list' => "Atualizando lista de objetos", - 'Rename Object' => "Renomear Objetos", - 'Resize' => "Redimensionar", - 'Results page:' => "página de resultados:", - 'Select a database to view privileges for the user' => "Selecione um banco de dados para ver os privilégios do usuário", - 'Select an index to view / edit its details' => "Selecione um índice para ver / editar os detalhes", - 'Select at least one field type for searching' => "Selecione pelo menos um tipo de campo para pesquisa", - 'Select objects to operate upon' => "Selecione os objetos para operar sobre", - 'selector' => "selector", - 'Slide Open' => "Slide Open", - 'Table information requires at least one valid field' => "informação da tabela exige pelo menos um campo válido", - 'Table name is required' => "O nome da tabela é necessário", - 'Table successfully created' => "Tabela criada com sucesso", - 'Table successfully modified' => "Quadro modificado com êxito", - 'Tables' => "Tabelas", - 'Text Data [{{SIZE}}]' => "Dados de Texto [{{SIZE}}]", - 'There is no record in the results to export' => "Não há nenhum registro nos resultados de exportação", - 'This attribute is not required for selected field type' => "Esse atributo não é requerido para o tipo de campo selecionado", - 'Triggers' => "Triggers", - 'Un-Pin' => "Un-Pin", - 'Unsigned numbered field only' => "Unsigned numeradas único campo", - 'Update check failed' => "Atualize Falha na verificação", - 'User information is incomplete or invalid' => "As informações do usuário está incompleto ou inválido", - 'User Manager' => "User Manager", - 'Views' => "Vistas", - 'WARNING' => "AVISO", - 'Yes' => "Sim", - 'You have the latest version' => "Você tem a versão mais recente", - - ); -?> diff --git a/lang/ro.php b/lang/ro.php deleted file mode 100644 index 0dc68f0..0000000 --- a/lang/ro.php +++ /dev/null @@ -1,463 +0,0 @@ - "Utilizarea bazei de date", - 'Drop Database' => "Drop baza de date", - 'Empty Database' => "Baza de date gol", - 'Drop all tables from this database' => "Picătură toate tabelele de la această bază de date", - 'Select statement' => "Selectaţi statement", - 'Insert statement' => "Introduceţi declaraţie", - 'Update statement' => "Update declaraţie", - 'Describe' => "Descrie", - 'Show create command' => "Afişare Crearea comandă", - 'View data' => "Vezi de date", - 'Alter Table' => "ALTER TABLE", - 'Indexes' => "Indexuri", - 'Engine Type' => "Tipul motorului", - 'More operations' => "mai multe operaţiuni", - 'Truncate' => "Trunchia", - 'Drop' => "Picătură", - 'Rename' => "Redenumire", - 'Export table data' => "Export tabel de date", - 'Create Table' => "Crearea de masă", - 'Create View' => "Crearea Vezi", - 'Create Procedure' => "Crearea de procedură", - 'Create Function' => "Creaţi Funcţia", - 'Create Trigger' => "Creaţi Trigger", - 'Create Event' => "Creaţi eveniment", - 'Show/Hide Panel' => "Afişează / ascunde panoul", - 'Show/Hide Header' => "Arata / Ascunde Antet", - 'Copy all queries to clipboard' => "Copia toate interogări la clipboard", - 'Clear history' => "Clar istorie", - 'Copy Column values' => "Copie Coloana valori", - 'Copy to clipboard' => "Copiere în clipboard", - 'Generate SQL Filter' => "Generaţi SQL Filtru", - 'Database Manager' => "Managerului bazei de date", - 'Manage databases' => "Administra baze de date", - - // main menu related text - 'Database' => "Baza de date", - 'Refresh' => "Reîmprospăta", - 'Refresh database object list' => "Actualizează baza de date obiect lista", - 'Create new' => "Crearea de noi", - 'Export' => "Export", - 'Export database to external file' => "Exportul bazei de date în fişier extern", - 'Objects' => "Obiecte", - 'Create Table' => "Crearea de masă", - 'Create a new table in the database' => "Crearea unui tabel nou în baza de date", - 'Create View' => "Crearea Vezi", - 'Create a new view in the database' => "A crea o noua viziune in baza de date", - 'Create Stored Procedure' => "Stocate Crearea de procedură", - 'Create a new stored procedure in the database' => "Creaţi o nouă procedură stocată în baza de date", - 'Create Function' => "Creaţi Funcţia", - 'Create a new user defined function in the database' => "A crea un utilizator nou definit funcţie în baza de date", - 'Create Trigger' => "Creaţi Trigger", - 'Create a new trigger in the database' => "Creaţi un declanşator nou în baza de date", - 'Create Event' => "Creaţi eveniment", - 'Create a new event in the database' => "Creaţi un eveniment nou in baza de date", - 'Data' => "De date", - 'Import batch file' => "Import fişier batch", - 'Import multiple queries from batch file' => "Import query-uri multiple din fişier batch", - 'Export database' => "Export de baze de date", - 'Export database to batch file as sql dump' => "Exportul bazei de date în fişier batch ca dump sql", - 'Export current results' => "Export rezultatele actuale", - 'Export query results to clipboard or files' => "Export rezultatele interogării la clipboard sau fişiere", - 'Tools' => "Instrumente", - 'Process Manager' => "Procesul de Manager", - 'View and manage database processes' => "Vizualizarea şi gestionarea proceselor de baze de date", - 'Repair Tables' => "Mese de reparaţii", - 'Analyze and repair database tables' => "Analiza şi tabelele bazei de date reparaţii", - 'User Manager' => "User Manager", - 'Manage database users' => "Gestiona utilizatorii de baze de date", - 'Search in Database' => "Căutare în baza de date", - 'Search for text in the database' => "Caută text în baza de date", - 'Information' => "Informaţii", - 'Server/Connection Details' => "Server / conexiune Detalii", - 'View server configuration' => "Configurare vedere serverului", - 'View server and connection details' => "Vezi de server și de conectare detalii", - 'Server Variables' => "Variabilele server", - 'Database Summary' => "Baza de date Rezumat", - 'View current database summary stats' => "Vezi statistici curent rezumat baza de date", - 'Interface' => "Interfaţă", - 'Options' => "Opţiuni", - 'Configure application options' => "Configurare cerere opţiuni", - 'UI Theme' => "Tema UI", - 'Database Objects' => "Baza de date Obiecte", - 'Toggle Object Viewer' => "Toggle Object Viewer", - 'Help contents' => "Ajutor conţinutul", - 'Learn the basics of using MyWebSQL' => "Aflaţi bază de a folosi MyWebSQL", - 'QuickStart Tutorials' => "QuickStart Tutoriale", - 'See quick hands-on tutorial of MyWebSQL interface' => "A se vedea interfata rapid hands-on tutorial de MyWebSQL", - 'Online documentation' => "Documentatie online", - 'View online documentation on project website' => "Vezi documentatie online pe site-ul proiectului", - 'Request a Feature' => "Solicitaţi o caracteristică", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "Dacă doriţi dumneavoastră caracteristică cele mai preferate pentru a face parte din MyWebSQL, vă rugăm să faceţi clic aici pentru a informa despre aceasta", - 'Report a Problem' => "Raportaţi o problemă", - 'Check for updates' => "A verifica pentru updates", - 'Check for updated versions of the application online' => "Verificaţi pentru versiunile actualizate ale cererii online", - 'Logout' => "Deconectare", - 'Logout from this session' => "Ieşire de la această sesiune", - 'Language' => "Limbă", - 'SQL Editor' => "SQL Editor", - 'Toggle SQL Editor' => "Toggle SQL Editor", - 'Experimental' => "Experimental", - 'Import table data' => "Importul datelor din tabel", - 'Import table data from external file' => "Datele din tabel la import din fişier extern", - 'Batch operations' => "Batch operaţiuni", - 'Perform one or more batch operations on database' => "Efectuaţi una sau mai multe operaţiuni de lot pe baza de date", - 'Create a new schema in the database' => "Creați o schemă nouă în baza de date", - 'Create Schema' => "Creați Schema", - 'Table Description' => "Tabelul Descriere", - 'Database Manager' => "Managerului bazei de date", - 'Manage databases' => "Administra baze de date", - 'Backup database on the server as SQL dump' => "Baza de date de backup pe server ca groapa SQL", - 'Backup Database' => "Baza de date de rezervă", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "Browser-ul dvs. pare a fi foarte vechi şi nu are suport pentru toate caracteristicile necesare pentru a rula MyWebSQL.", - 'Try using a newer version of the browser to run this application.' => "Încercaţi să utilizaţi o versiune mai nouă a browser-ului pentru a rula această aplicaţie.", - - // text used on various screens in the interface - 'Visit Project website' => "Vizitaţi site-ul proiectului", - 'Version' => "versiune", - 'Loading' => "Încărcare", - 'Quick Edit Options' => "Edit Quick Opţiuni", - 'Press {{KEY}} to set NULL' => "Apăsaţi {{KEY}} pentru a stabili NULL", - 'MySQL Server' => "MySQL Server", - 'Logged in as: {{USER}}' => "Conectat ca: {{USER}}", - 'Results' => "Rezultate", - 'Messages' => "Mesaje", - 'Information' => "Informaţii", - 'History' => "Istorie", - 'There are no results to show in this view' => "Nu există nici un rezultat pentru a arăta în acest punct de vedere", - 'Refresh results' => "Reîmprospătare rezultate", - 'Please wait' => "Vă rugăm să aşteptaţi", - 'Query All' => "Toate interogare", - 'Query' => "Interogare", - 'Add Record' => "Add Record", - 'Delete Record(s)' => "Record Delete (e)", - 'Update Record(s)' => "Update Record (e)", - 'Generate SQL' => "Genera SQL", - 'Database name' => "Numele bazei de date", - 'Select database after creation' => "Selectaţi baza de date după crearea", - 'Database connection failed to the server' => "Baza de date nu a reuşit conectarea la server", - 'Host' => "Gazdă", - 'User' => "Utilizator", - 'Select a database to begin' => "Selectaţi o bază de date pentru a începe", - 'Select/unselect All records' => "Selecta / deselecta Toate înregistrările", - 'Primary key column' => "Cheie primară coloană", - 'Unique key column' => "Cheie unică coloană", - 'Showing records {{START}} - {{END}}' => "Rezultate înregistrările {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "Rezultate prima {{MAX}} înregistrări numai", - '1 query successfully executed' => "O interogare executate cu succes", - '{{NUM}} queries successfully executed' => "{{NUM}} interogări executate cu succes", - '{{NUM}} record(s) were affected' => "{{NUM}} înregistrări (e) au fost afectate", - '{{NUM}} record(s) updated' => "{{NUM}} înregistrări (e) actualizat", - 'Error occurred while executing the query' => "Eroare a aparut in timp ce executa interogarea", - '{{NUM}} queries failed to execute' => "{{NUM}} interogări nu a reuşit să execute", - 'Click to view/edit column data [{{NUM}} Bytes]' => "Click pentru a vizualiza / edita coloană de date [{{NUM}} Bytes]", - 'Blob data is not editable' => "Datele Blob nu este editabil", - 'Blob data saved' => "Blob date salvate", - 'Failed to save blob data' => "A eşuat pentru a salva datele blob", - 'The process with id [{{PID}}] was killed' => "Procesul cu id [{{PID}}] a fost ucis", - 'No such process [id = {{PID}}]' => "Nici o astfel de proces [id = {{PID}}]", - 'Select a process and click the button to kill the process' => "Selectaţi un proces şi faceţi clic pe buton pentru a ucide procesul de", - 'Process ID' => "Procesul de ID-ul", - 'Command' => "Comandă", - 'Time' => "Timp", - 'Info' => "Info", - 'Kill Process' => "Terminare proces", - 'Failed to get process list' => "Nu a reuşit să obţine lista de procese", - 'The command executed successfully' => "Comanda executate cu succes", - 'Invalid server configuration' => "Invalid server de configurare", - 'Invalid Credentials' => "Incorecte Acreditare", - 'New database successfully created' => "Noua bază de date creată cu succes", - 'File upload failed. Please try again' => "Fişier de încărcare a eşuat. Vă rugăm să încercaţi din nou", - 'No queries were executed during import' => "Nu interogări au fost executate în timpul importului", - 'Maximum upload filesize is {{SIZE}}' => "Dimensiunea maximă de încărcare este {{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "tipuri de fişiere suportate / extensii sunt: ​​({{listă}})", - 'Database summary' => "Baza de date rezumat", - 'Server Variables' => "Variabilele server", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "Orice obiect existent cu acelasi nume, ar trebui să fie abandonat manual înainte de a executa comanda crearea", - 'Only create commands are accepted' => "Doar a crea comenzi sunt acceptate", - 'User ID' => "ID utilizator", - 'Password' => "Parola", - 'Login' => "Login", - 'Create new database object' => "Creaţi obiect bază de date noi", - 'Enter command for object creation' => "Introduceţi comanda pentru crearea de obiect", - 'Submit' => "Trimite", - 'Show blob data as: {{TYPE}}' => "Afişare blob de date ca: {{TIP}}", - 'Blob data for column {{NAME}}' => "Blob date pentru coloana {{NAME}}", - 'Create command for {{TYPE}} {{NAME}}' => "Creaţi comandă pentru {{TIP}} {{NAME}}", - 'Table Engine (type)' => "Tabelul Engine (tip)", - 'Change Table Type' => "Schimbarea Tabelul Tip", - 'The requested page is not available on the server' => "Pagina solicitată nu este disponibilă pe server", - 'Error' => "Eroare", - 'It appears that you attempted to submit an invalid request to the server' => "Se pare că aţi încercat să depună o cerere la server invalid", - 'The request has been denied. Reloading the page might solve the problem' => "Cererea a fost refuzată. Reîncărcaţi pagina s-ar putea rezolva problema", - 'Access Denied' => "Acces refuzat", - 'Help' => "Ajutor", - 'To see most up-to-date help contents, please visit {{LINK}}' => "Pentru a vedea cel mai up-to-data de conţinutul de ajutor, vă rugăm să vizitaţi {{LINK}}", - 'It appears that your browser session has expired' => "Se pare că sesiunea de browser-ul a expirat", - 'Please refresh the webpage to re-login' => "Vă rugăm să reîmprospătaţi pagina pentru a re-login", - 'Table information' => "Tabelul informaţii", - 'Edit' => "Editare", - 'Save' => "Salva", - 'Either the database is empty, or there was an error retrieving list of database objects' => "Fie baza de date este gol, sau a existat o listă eroare la preluarea de obiecte bază de date", - 'Please try closing and re-opening this dialog again' => "Vă rugăm să încercaţi să închideţi şi re-deschide acest dialog din nou", - 'Structure' => "Structura", - 'Table Data' => "Tabel de date", - 'Structure and Table Data' => "Structura şi tabel de date", - 'Options' => "Opţiuni", - 'Set Auto increment field values to NULL' => "Setaţi Auto valori de câmp increment la NULL", - 'Add DROP command before create statements' => "Adăugaţi comanda DROP înainte de a crea situaţii", - 'Export' => "Export", - 'Import' => "Import", - 'Export Database' => "Baza de date de export", - 'Export Table' => "Export tabel", - 'Server information' => "Server informaţii", - 'Server' => "Server", - 'Version comment' => "Versiunea comentariu", - 'Character sets' => "Seturi de caractere", - 'Server character set' => "Server set de caractere", - 'Client character set' => "Client set de caractere", - 'Database character set' => "Baza de date set de caractere", - 'Results character set' => "Rezultatele set de caractere", - 'Export As' => "Ca de export", - 'Insert Statements' => "Introduceţi Declaraţii", - 'Include field names in query' => "Includ nume de câmp în interogare", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Text simplu (Un record pe linie)", - 'Fields separated by:' => "Domenii separate prin:", - 'Export Results' => "Rezultate export", - 'Select SQL batch file to import' => "Selectaţi fişierul SQL lot de import", - 'Continue processing even if error occurs' => "Continua procesarea chiar dacă eroare apare", - 'Basic Information' => "Informaţii de bază", - 'Table Properties' => "Table Properties", - 'Table Name' => "Tabelul Nume", - 'Field Name' => "Câmpul Nume", - 'Data Type' => "Tip de date", - 'Length' => "Lungime", - 'Default value' => "Implicit valoarea", - 'Unsigned' => "Nesemnate", - 'Zero Fill' => "Zero Fill", - 'Primary Key' => "Cheie primară", - 'Auto Increment' => "Auto Increment", - 'Not NULL' => "Nu NULL", - 'Character Set' => "Setul de caractere", - 'Collation' => "Colaţionare", - 'Comment' => "Comentariu", - 'Waiting for table information to be submitted' => "Aşteptare pentru informaţii de masă care urmează să fie prezentate", - 'Add field' => "Adauga domeniu", - 'Delete selected field' => "Ştergeţi selectate domeniu", - 'Clear Table Information' => "Clar Informaţii masă", - 'List of values' => "Lista de valori", - 'Query Results' => "Rezultate interogare", - 'Data for {{TABLE}}' => "Datele pentru {{}} TABLE", - 'Select tables to be analyzed/repaired' => "tabele Selectaţi pentru a fi analizate / reparate", - 'Operation to perform' => "Operaţiunea a efectua", - 'Analyze' => "Analiza", - 'Check' => "Verificaţi", - 'Optimize' => "Optimizaţi", - 'Repair' => "Reparaţie", - 'Skip Binary logging' => "Treci Binary logare", - 'Default' => "Default", - 'Quick' => "Rapid", - 'Fast' => "Rapid", - 'Medium' => "Mediu", - 'Extended' => "Extended", - 'Changed' => "Schimbat", - 'Use Frm files (MyISAM tables)' => "Utilizarea fişierelor FRM (tabele MyISAM)", - 'User Information' => "Informatii despre utilizator", - 'Global Privileges' => "Global Privilegii", - 'Database Privileges' => "Baza de date Privilegii", - 'Import File' => "Import File", - 'Index Manager' => "Index Manager", - 'Edit table structure' => "Editare structură de tabel", - 'Save All Changes' => "Salvaţi Toate Modificările", - 'Changes are not saved until you press [Save All Changes]' => "Modificările nu sunt salvate până când apăsaţi [Salvaţi Toate Modificările]", - 'Field Length' => "Câmpul Lungime", - 'Select objects to include in export' => "Selectaţi obiectele să includă în export", - 'Export type' => "Export de tip", - 'Select All/None' => "Selecteaza Toate / Nimic", - 'Add User' => "Adauga utilizator", - 'Update User' => "Update utilizator", - 'Delete selected User' => "Ştergeţi selectate utilizator", - 'Remove Password' => "Eliminaţi Parola", - 'Select tables to search' => "tabele Selectaţi pentru a căuta", - 'Search Options' => "Opţiuni de căutare", - 'Search in following field types' => "Caută în următoarele tipuri domeniu", - 'Numeric Fields' => "Numeric Domenii", - 'Character Fields' => "Caracter Domenii", - 'Text Fields' => "Text Domenii", - 'Date/Time Fields' => "Data / Ora Domenii", - 'Comparison Type' => "Comparaţie Tip", - 'Text to search' => "Text de căutare", - 'Search' => "Căutare", - 'Search Results' => "Rezultatele căutării", - 'Number of matches' => "Numărul de meciuri", - 'Search results for {{KEYWORD}} in the database' => "Rezultatele cautarii pentru {{KEYWORD}} în baza de date", - '{{NUM}} match(es)' => "{{NUM}} meci (ES)", - 'Copy query to editor' => "interogare Copiere în editor", - 'Done' => "Adoptată", - 'SQL Editor' => "SQL Editor", - 'Create Copy' => "Crearea de copiere", - 'Minimize All' => "Minimizarea Toate", - 'Copy Record(s)' => "Copie de înregistrare (e)", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "Separate prin virgulă (CSV pentru Excel)", - 'Select data file to import' => "Selectaţi fişierul de date pentru a importa", - 'Select table for data import' => "Selectaţi tabelul pentru importul de date", - 'First line contains column names' => "Prima linie conţine nume de coloane", - 'Select objects to operate upon' => "Selectaţi obiectele să funcţioneze la", - 'Operations to perform' => "Operaţiuni de a efectua", - 'Add prefix string to name' => "Adauga şir de prefix pentru a numi", - 'Delete prefix string from name' => "Ştergeţi string prefix la numele", - 'Command text' => "Comandă de text", - 'DROP selected database objects' => "DROP obiectele selectate de baze de date", - 'Batch operation results' => "Rezultatele de funcţionare lot", - 'Operation' => "Operaţie", - 'Status' => "Stare", - '{{NUM}} queries generated' => "{{NUM}} interoghează generat", - 'Please select one or more operations to perform' => "Vă rugăm să selectaţi unul sau mai multe operaţiuni pentru a efectua", - 'Quick Search' => "Cautare rapida", - '{{NAME}} client library is not installed' => "{{Name}} biblioteca client nu este instalat", - '{{NAME}} extension is not installed' => "{{Name}} extensie nu este instalat", - 'SQLite database folder is inaccessible or not writable' => "Directorul de baze de date SQLite este inaccesibil sau nu poate fi scris", - 'Maximize/Restore Results Pane' => "Maximizați / Restaurare rezultate Panoul", - 'Select databases to operate upon' => "Selectați bazele de date să funcționeze la", - 'DROP selected databases' => "DROP bazele de date selectate", - 'The following operation is irreversible' => "Operația următoare este ireversibil", - 'Potential data loss might occur' => "Potential de pierderi de date s-ar putea să apară", - 'Add TRUNCATE command before insert statements' => "Adauga trunchia comandă înainte de declarații INSERT", - 'Select objects to include in backup' => "Selectați obiectele să includă în rezervă", - 'Backup folder does not exist or is not writable' => "Folderul de backup nu există sau nu este inscriptibil", - 'Backup type' => "Backup de tip", - 'Database backup successfully created' => "Baza de date de rezervă creată cu succes", - 'Failed to create database backup' => "Nu a reușit să creeze baze de date de rezervă", - 'Generate Bulk insert statements' => "Genera declarații insera în vrac", - 'Maximum size of SQL statement' => "Dimensiunea maximă a SQL", - 'Show record count with table names' => "Afișează numărul de înregistrare de nume de tabel", - 'Sort Table listing by' => "Sorteaza lista de masă de", - 'Name' => "Nume", - 'Last Update Time' => "Data ultimei actualizari", - 'Maximum records to display in result set' => "Înregistrări maxime pentru a afișa în setul de rezultate", - 'Show popup dialog for editing large text data' => "Arata fereastra de dialog pop-up pentru editarea de date mari de text", - 'Miscellaneous' => "Diverse", - 'Reset all confirmation dialogs' => "Reseta toate dialogurile de confirmare", - 'Record Editing' => "Înregistrare Editarea", - 'Exclude Table type' => "Excludeți tip de masă", - 'Exclude Table Character set' => "Excludeți Tabelul set de caractere", - 'Backup filename' => "Nume de fișier de backup", - 'Invalid filename format' => "Format nume de fișier nevalid", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "toate", - 'all selected' => "toate selectate", - 'An error occured while refreshing the object list.' => "A apărut o eroare în timp ce răcoritoare lista de obiect.", - 'Are you sure you want to clear all field information from table?' => "Sunteţi sigur că doriţi să ştergeţi toate informaţiile câmp din tabel?", - 'Are you sure you want to delete this user account?' => "Sunteţi sigur că doriţi să ştergeţi acest cont de utilizator?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "Sunteţi sigur că doriţi să retragă toate obiectele din baza de date {{NAME}}?", - 'Are you sure you want to DROP selected objects?' => "Sunteţi sigur că doriţi să renunţe la obiectele selectate?", - 'Are you sure you want to DROP the database {{NAME}}?' => "Sunteţi sigur că doriţi să DROP baza de date {{NAME}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "Sunteţi sigur că doriţi să renunţe la acest obiect? {{NAME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "Sunteţi sigur că doriţi să execute {{SELECTED}} interogări?", - 'Are you sure you want to logout?' => "Eşti sigur că vrei să te deconectezi?", - 'Are you sure you want to truncate the table {{NAME}}?' => "Sunteţi sigur că doriţi să trunchia tabel {{NAME}}?", - 'Blob Data [{{SIZE}}]' => "Datele Blob [{{SIZE}}]", - 'Cancel' => "Anula", - 'Check for Updates' => "Check for Updates", - 'Clear command history?' => "Clear comanda istorie?", - 'Close' => "Inchide", - 'Confirm Action' => "Confirmaţi de acţiune", - 'Confirm and do not ask me again about this choice' => "Confirmaţi şi nu mă întreba din nou despre această alegere", - 'Copy Object' => "Copiere obiect", - 'Create Database' => "Crearea bazei de date", - 'Create Primary Index on this field' => "Creaţi Index primar pe acest domeniu", - 'Databases' => "Baze de date", - 'Default value [Use quotes to specify string values]' => "Implicit valoarea [Folosiţi ghilimele pentru a specifica valori şir]", - 'Disallow NULL values in Field' => "Nu permiteţi NULL valori în domeniul", - 'Enter new index name' => "Introduceţi numele nou index", - 'Enter new name for the database object' => "Introduceţi un nume nou pentru obiect bază de date", - 'Enter the text to search in database' => "Introduceţi textul de căutare în baza de date", - 'Error' => "Eroare", - 'Events' => "Evenimente", - 'Execute query' => "Execute interogare", - 'Exports results' => "Exporturile rezultate", - 'Failed to refresh the results.' => "Nu a reuşit să reîmprospăta rezultatele.", - 'Field Datatype' => "Câmp Tip de date", - 'Field Name' => "Câmpul Nume", - 'Field value is Auto Incremented' => "Valoarea câmpului este Auto incrementat", - 'Functions' => "Funcţii", - 'Indexes Updated' => "Indexuri Actualizat", - 'Maximum Length of field value' => "Lungimea maximă a câmpului valoare", - 'Navigation Error. Try reloading the page' => "Eroare de navigare. Încercaţi să reîncărcaţi pagina", - 'New settings saved and applied' => "Noi setari salvate şi aplicate", - 'New version is available' => "Noua versiune este disponibilă", - 'Next' => "Următorul", - 'No' => "Nu", - 'No Table selected' => "Tabelul nr selectat", - 'Not enough room to show this pane.' => "cameră nu suficient pentru a arăta acest panou.", - 'OK' => "OK", - 'One or more field information is incomplete' => "Una sau mai multe informaţii câmp este incomplet", - 'Open' => "Deschis", - 'Operation failed' => "Operaţia a eşuat", - 'Pad field values with leading zeros' => "Pad valori de câmp cu zerouri", - 'Pane' => "Panou", - 'Passwords do not match' => "Parolele nu se potrivesc", - 'Pin' => "Pin", - 'Please select one or more operations to perform' => "Vă rugăm să selectaţi unul sau mai multe operaţiuni pentru a efectua", - 'Please type in one or more queries in the SQL editor!' => "Vă rugăm să introduceţi una sau mai multe interogări în editorul SQL!", - 'Please wait...' => "Vă rugăm să aşteptaţi ...", - 'Previous' => "Anterioare", - 'Procedures' => "Proceduri", - 'Prompt' => "Prompt", - 'Refresh results' => "Reîmprospătare rezultate", - 'Refreshing object list' => "Refreshing obiect listă", - 'Rename Object' => "Redenumire obiect", - 'Resize' => "Redimensionarea", - 'Results page:' => "Pagina de rezultate:", - 'Select a database to view privileges for the user' => "Selectaţi o bază de date pentru a vizualiza privilegii pentru utilizator", - 'Select an index to view / edit its details' => "Selectaţi un index pentru a vizualiza / edita detaliile sale", - 'Select at least one field type for searching' => "Selectaţi cel puţin un tip de câmp pentru căutare", - 'Select objects to operate upon' => "Selectaţi obiectele să funcţioneze la", - 'selector' => "selector", - 'Slide Open' => "Slide Open", - 'Table information requires at least one valid field' => "Tabelul de informaţii necesită cel puţin un câmp valid", - 'Table name is required' => "Numele de masă este necesară", - 'Table successfully created' => "Tabel creat cu succes", - 'Table successfully modified' => "Tabel cu succes modificate", - 'Tables' => "Tabele", - 'Text Data [{{SIZE}}]' => "Date de tip text [{{SIZE}}]", - 'There is no record in the results to export' => "Nu există nici o înregistrare în rezultatele la export", - 'This attribute is not required for selected field type' => "Acest atribut nu este necesar pentru tipul de câmp selectat", - 'Triggers' => "Declanşările", - 'Un-Pin' => "Un-Pin", - 'Unsigned numbered field only' => "Nesemnate numerotate câmp numai", - 'Update check failed' => "Actualizaţi verifica eşuat", - 'User information is incomplete or invalid' => "Utilizatorului de informaţii sunt incomplete sau incorecte", - 'User Manager' => "User Manager", - 'Views' => "Vizualizari", - 'WARNING' => "AVERTISMENT", - 'Yes' => "Da", - 'You have the latest version' => "Aveţi cea mai recentă versiune", - - ); -?> diff --git a/lang/ru.php b/lang/ru.php deleted file mode 100644 index da78a95..0000000 --- a/lang/ru.php +++ /dev/null @@ -1,463 +0,0 @@ - "Использование базы данных", - 'Drop Database' => "Drop Database", - 'Empty Database' => "Пустой базы данных", - 'Drop all tables from this database' => "Отбросьте все таблицы из этой базы данных", - 'Select statement' => "Выберите заявление", - 'Insert statement' => "Вставьте заявление", - 'Update statement' => "Обновление заявление", - 'Describe' => "Описывать", - 'Show create command' => "Показать Создание команды", - 'View data' => "Просмотр данных", - 'Alter Table' => "ALTER TABLE", - 'Indexes' => "Индексы", - 'Engine Type' => "Тип двигателя", - 'More operations' => "Больше операций", - 'Truncate' => "Урезать", - 'Drop' => "Падение", - 'Rename' => "Переименовать", - 'Export table data' => "Экспорт данных таблицы", - 'Create Table' => "Создание таблицы", - 'Create View' => "Создать представление", - 'Create Procedure' => "Создание процедуры", - 'Create Function' => "Создание функций", - 'Create Trigger' => "Создание триггера", - 'Create Event' => "Создать событие", - 'Show/Hide Panel' => "Показать / скрыть панель", - 'Show/Hide Header' => "Показать / Скрыть заголовок", - 'Copy all queries to clipboard' => "Скопируйте все запросы в буфер", - 'Clear history' => "Очистить историю", - 'Copy Column values' => "Копировать колонке значений", - 'Copy to clipboard' => "Копировать в буфер обмена", - 'Generate SQL Filter' => "Создание SQL фильтра", - 'Database Manager' => "Администратор баз данных", - 'Manage databases' => "Управление базами данных", - - // main menu related text - 'Database' => "База данных", - 'Refresh' => "Обновить", - 'Refresh database object list' => "Обновление базы данных список объектов", - 'Create new' => "Создать новый", - 'Export' => "Экспорт", - 'Export database to external file' => "Экспорт базы данных во внешний файл", - 'Objects' => "Объекты", - 'Create Table' => "Создание таблицы", - 'Create a new table in the database' => "Создание новой таблицы в базе данных", - 'Create View' => "Создать представление", - 'Create a new view in the database' => "Создание нового представления в базе данных", - 'Create Stored Procedure' => "Создание хранимых процедур", - 'Create a new stored procedure in the database' => "Создать новую хранимую процедуру в базе данных", - 'Create Function' => "Создание функций", - 'Create a new user defined function in the database' => "Создание новых пользовательских функций в базе данных", - 'Create Trigger' => "Создание триггера", - 'Create a new trigger in the database' => "Создайте новый триггер в базе данных", - 'Create Event' => "Создать событие", - 'Create a new event in the database' => "Создать новое событие в базе данных", - 'Data' => "Данные", - 'Import batch file' => "Импорт пакетный файл", - 'Import multiple queries from batch file' => "Импорт нескольких запросов из пакетного файла", - 'Export database' => "Экспорт базы данных", - 'Export database to batch file as sql dump' => "Экспорт базы данных в пакетный файл как SQL дамп", - 'Export current results' => "Экспорт текущие результаты", - 'Export query results to clipboard or files' => "Экспорт результатов запроса в буфер обмена или файлов", - 'Tools' => "Инструменты", - 'Process Manager' => "Process Manager", - 'View and manage database processes' => "Просмотр и управление базой данных процессов", - 'Repair Tables' => "Ремонт Таблицы", - 'Analyze and repair database tables' => "Анализ и таблиц базы данных ремонт", - 'User Manager' => "Пользователь Manager", - 'Manage database users' => "Управление пользователями базы данных", - 'Search in Database' => "Поиск в базе данных", - 'Search for text in the database' => "Поиск текста в базе данных", - 'Information' => "Информация", - 'Server/Connection Details' => "Server / подключению Подробности", - 'View server configuration' => "Конфигурация Посмотреть сервер", - 'View server and connection details' => "Посмотреть сервер и подключение подробнее", - 'Server Variables' => "Серверные переменные", - 'Database Summary' => "База данных резюме", - 'View current database summary stats' => "Посмотреть текущую статистику базы данных резюме", - 'Interface' => "Интерфейс", - 'Options' => "Функции", - 'Configure application options' => "Настройка параметров приложения", - 'UI Theme' => "UI Тема", - 'Database Objects' => "Объектов базы данных", - 'Toggle Object Viewer' => "Переключить Object Viewer", - 'Help contents' => "Содержание справки", - 'Learn the basics of using MyWebSQL' => "Узнать основы использования MyWebSQL", - 'QuickStart Tutorials' => "QuickStart Учебники", - 'See quick hands-on tutorial of MyWebSQL interface' => "См. быстрый практический учебник MyWebSQL интерфейс", - 'Online documentation' => "Интернет документации", - 'View online documentation on project website' => "Просмотр электронной документации на веб-сайте проекта", - 'Request a Feature' => "Запрос функций", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "Если вы хотите, чтобы ваш самый любимый функцию, чтобы быть частью MyWebSQL, пожалуйста, нажмите здесь, чтобы сообщить об этом", - 'Report a Problem' => "Сообщить о проблеме", - 'Check for updates' => "Проверить наличие обновлений", - 'Check for updated versions of the application online' => "Проверьте обновленные версии приложений онлайн", - 'Logout' => "Выйти", - 'Logout from this session' => "Выход из этой сессии", - 'Language' => "Язык", - 'SQL Editor' => "Редактор SQL", - 'Toggle SQL Editor' => "Переключение редактора SQL", - 'Experimental' => "Экспериментальный", - 'Import table data' => "Импорт данных таблицы", - 'Import table data from external file' => "Импорт данных из внешних файлов", - 'Batch operations' => "Пакетные операции", - 'Perform one or more batch operations on database' => "Выполните одно или несколько пакетных операций в базе данных", - 'Create a new schema in the database' => "Создание новой схемы в базу данных", - 'Create Schema' => "Создание схемы", - 'Table Description' => "Описание таблицы", - 'Database Manager' => "Администратор баз данных", - 'Manage databases' => "Управление базами данных", - 'Backup database on the server as SQL dump' => "Резервное копирование базы данных на сервере SQL, как свалка", - 'Backup Database' => "Резервное копирование базы данных", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "Ваш браузер, кажется, очень старая и не поддерживает все функции, необходимые для запуска MyWebSQL.", - 'Try using a newer version of the browser to run this application.' => "Попробуйте использовать более новую версию браузера для запуска этого приложения", - - // text used on various screens in the interface - 'Visit Project website' => "Посетите веб-сайт проекта", - 'Version' => "версия", - 'Loading' => "Загрузка", - 'Quick Edit Options' => ""Быстрое редактирование" Функции", - 'Press {{KEY}} to set NULL' => "Нажмите {{KEY}} для установки NULL", - 'MySQL Server' => "MySQL Server", - 'Logged in as: {{USER}}' => "Вы вошли как: {{USER}}", - 'Results' => "Результаты", - 'Messages' => "Сообщения", - 'Information' => "Информация", - 'History' => "История", - 'There are no results to show in this view' => "Есть ничего не найдено, чтобы показать в этой точке зрения", - 'Refresh results' => "Обновить результаты", - 'Please wait' => "Пожалуйста, подождите", - 'Query All' => "Запрос всех", - 'Query' => "Запрос", - 'Add Record' => "Добавить запись", - 'Delete Record(s)' => "Удалить запись (ы)", - 'Update Record(s)' => "Обновление записи (ы)", - 'Generate SQL' => "Создание SQL", - 'Database name' => "Имя базы данных", - 'Select database after creation' => "Выбор базы данных после создания", - 'Database connection failed to the server' => "Подключение к базе данных не удалось сервера", - 'Host' => "Принимающей", - 'User' => "Пользователь", - 'Select a database to begin' => "Выберите базу данных, чтобы начать", - 'Select/unselect All records' => "Установить или снять все записи", - 'Primary key column' => "Столбец первичного ключа", - 'Unique key column' => "Уникальные ключевые колонки", - 'Showing records {{START}} - {{END}}' => "Показаны записи {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "Показаны первые {{MAX}} записей", - '1 query successfully executed' => "1 запрос успешно выполнен", - '{{NUM}} queries successfully executed' => "{{NUM}} запросов успешно выполнены", - '{{NUM}} record(s) were affected' => "{{NUM}} записи (ей) пострадали", - '{{NUM}} record(s) updated' => "{{NUM}} записи (ей) обновление", - 'Error occurred while executing the query' => "Произошла ошибка во время выполнения запроса", - '{{NUM}} queries failed to execute' => "{{NUM}} запросов не удалось выполнить", - 'Click to view/edit column data [{{NUM}} Bytes]' => "Кликните для просмотра / редактирования данных столбца [{{NUM}} байт]", - 'Blob data is not editable' => "Blob данных не редактируемые", - 'Blob data saved' => "Blob данных, сохраненных", - 'Failed to save blob data' => "Не удалось сохранить данные BLOB", - 'The process with id [{{PID}}] was killed' => "Процесс с идентификатором [{{PID}}] был убит", - 'No such process [id = {{PID}}]' => "Нет такого процесса [ID = {{PID}}]", - 'Select a process and click the button to kill the process' => "Выберите и щелкните кнопку, чтобы убить процесс", - 'Process ID' => "Идентификатор процесса", - 'Command' => "Командная", - 'Time' => "Время", - 'Info' => "Информация", - 'Kill Process' => "Убить процесс", - 'Failed to get process list' => "Не удалось получить список процессов", - 'The command executed successfully' => "Команда выполнена успешно", - 'Invalid server configuration' => "Неверная конфигурация сервера", - 'Invalid Credentials' => "Неправильные учетные данные", - 'New database successfully created' => "Новая база данных успешно создана", - 'File upload failed. Please try again' => "Загрузка файла не удалось. Пожалуйста, попробуйте еще раз", - 'No queries were executed during import' => "Нет запросы были выполнены во время импорта", - 'Maximum upload filesize is {{SIZE}}' => "Максимальная загрузка файла является {{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "Поддерживаемые типы файлов / расширений: ({{LIST}})", - 'Database summary' => "База данных резюме", - 'Server Variables' => "Серверные переменные", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "Любой существующий объект с таким же названием должен быть отброшен вручную перед выполнением создание команды", - 'Only create commands are accepted' => "Только создание команды принимаются", - 'User ID' => "Идентификатор пользователя", - 'Password' => "Пароль", - 'Login' => "Войти", - 'Create new database object' => "Создание нового объекта базы данных", - 'Enter command for object creation' => "Введите команду для создания объекта", - 'Submit' => "Отправить", - 'Show blob data as: {{TYPE}}' => "Показывать данные BLOB как: {{TYPE}}", - 'Blob data for column {{NAME}}' => "Blob данных для столбца {{NAME}}", - 'Create command for {{TYPE}} {{NAME}}' => "Создать команду {{TYPE}} {{NAME}}", - 'Table Engine (type)' => "Таблица Двигатель (тип)", - 'Change Table Type' => "Изменение типа таблицы", - 'The requested page is not available on the server' => "Запрошенная страница не доступна на сервере", - 'Error' => "Ошибка", - 'It appears that you attempted to submit an invalid request to the server' => "Похоже, что вы пытались представить Неправильный запрос к серверу", - 'The request has been denied. Reloading the page might solve the problem' => "Запрос был отклонен. Перезагрузка страницы может решить проблему", - 'Access Denied' => "Доступ запрещен", - 'Help' => "Справка", - 'To see most up-to-date help contents, please visit {{LINK}}' => "Чтобы увидеть содержимое самые современные помощь, пожалуйста, посетите {{LINK}}", - 'It appears that your browser session has expired' => "Похоже, что ваш браузер сессии истек", - 'Please refresh the webpage to re-login' => "Обновите страницу, чтобы повторно Войти", - 'Table information' => "Таблица информации", - 'Edit' => "Изменить", - 'Save' => "Сохранить", - 'Either the database is empty, or there was an error retrieving list of database objects' => "Либо база данных пуста, или произошла ошибка получения списка объектов базы данных", - 'Please try closing and re-opening this dialog again' => "Пожалуйста, попробуйте закрыть и снова открыть этот диалог", - 'Structure' => "Структура", - 'Table Data' => "Таблица данных", - 'Structure and Table Data' => "Структура и табличные данные", - 'Options' => "Функции", - 'Set Auto increment field values to NULL' => "Настройка автоматического значения приращения поля NULL", - 'Add DROP command before create statements' => "Добавить DROP команду, прежде чем создать заявления", - 'Export' => "Экспорт", - 'Import' => "Импорт", - 'Export Database' => "Экспорт базы данных", - 'Export Table' => "Экспорт таблицы", - 'Server information' => "Информация о сервере", - 'Server' => "Сервер", - 'Version comment' => "Версия комментарий", - 'Character sets' => "Наборы символов", - 'Server character set' => "Сервер набор символов", - 'Client character set' => "Клиент набор символов", - 'Database character set' => "Набор символов базы данных", - 'Results character set' => "Результаты набора символов", - 'Export As' => "Экспорт в", - 'Insert Statements' => "Вставьте заявлениями", - 'Include field names in query' => "Включить имена полей в запросе", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Простой текст (одна запись на строку)", - 'Fields separated by:' => "Полей, разделенных по:", - 'Export Results' => "Экспорт результатов", - 'Select SQL batch file to import' => "Выберите SQL пакетных файлов для импорта", - 'Continue processing even if error occurs' => "Продолжить обработку даже при возникновении ошибки", - 'Basic Information' => "Основная информация", - 'Table Properties' => "Свойства таблицы", - 'Table Name' => "Имя таблицы", - 'Field Name' => "Имя поля", - 'Data Type' => "Тип данных", - 'Length' => "Длина", - 'Default value' => "По умолчанию значение", - 'Unsigned' => "Неподписанный", - 'Zero Fill' => "Zero Fill", - 'Primary Key' => "Первичный ключ", - 'Auto Increment' => "Автоинкремент", - 'Not NULL' => "Не NULL", - 'Character Set' => "Набор символов", - 'Collation' => "Сопоставление", - 'Comment' => "Комментарий", - 'Waiting for table information to be submitted' => "В ожидании таблице информации, подлежащей представлению", - 'Add field' => "Добавить поле", - 'Delete selected field' => "Удалить выбранное поле", - 'Clear Table Information' => "Очистить таблицу информации", - 'List of values' => "Список значений", - 'Query Results' => "Результаты запроса", - 'Data for {{TABLE}}' => "Данные по {{TABLE}}", - 'Select tables to be analyzed/repaired' => "Выбор таблиц для анализа / отремонтированы", - 'Operation to perform' => "Операцию для выполнения", - 'Analyze' => "Анализировать", - 'Check' => "Проверить", - 'Optimize' => "Оптимизации", - 'Repair' => "Ремонт", - 'Skip Binary logging' => "Перейти двоичную регистрацию", - 'Default' => "По умолчанию", - 'Quick' => "Быстрый", - 'Fast' => "Быстрая", - 'Medium' => "Средний", - 'Extended' => "Расширенные", - 'Changed' => "Изменены", - 'Use Frm files (MyISAM tables)' => "Используйте Frm файлов (MyISAM таблиц)", - 'User Information' => "Информация о пользователе", - 'Global Privileges' => "Глобальные привилегии", - 'Database Privileges' => "База данных привилегиях", - 'Import File' => "Импорт файлов", - 'Index Manager' => "Индекс Manager", - 'Edit table structure' => "Изменить структуру таблицы", - 'Save All Changes' => "Сохранить все изменения", - 'Changes are not saved until you press [Save All Changes]' => "Изменения не сохраняются пока вы не нажмете [Сохранить все изменения]", - 'Field Length' => "Поле Длина", - 'Select objects to include in export' => "Выбор объектов для включения в экспорте", - 'Export type' => "Экспорт типа", - 'Select All/None' => "Выбрать все / ничего", - 'Add User' => "Добавить пользователя", - 'Update User' => "Обновление Пользователь", - 'Delete selected User' => "Удалить выбранных пользователей", - 'Remove Password' => "Удаление пароля", - 'Select tables to search' => "Выберите таблицы для поиска", - 'Search Options' => "Параметры поиска", - 'Search in following field types' => "Поиск в следующих типов полей", - 'Numeric Fields' => "Числовых полей", - 'Character Fields' => "Символьных полей", - 'Text Fields' => "Текстовые поля", - 'Date/Time Fields' => "Дата / время полей", - 'Comparison Type' => "Сравнение Тип", - 'Text to search' => "Текст для поиска", - 'Search' => "Поиск", - 'Search Results' => "Результаты поиска", - 'Number of matches' => "Количество матчей", - 'Search results for {{KEYWORD}} in the database' => "Результаты поиска для {{}} Ключевое слово в базе данных", - '{{NUM}} match(es)' => "{{NUM}} матча (ES)", - 'Copy query to editor' => "Копия запроса редактору", - 'Done' => "Done", - 'SQL Editor' => "Редактор SQL", - 'Create Copy' => "Создать копию", - 'Minimize All' => "Свернуть все", - 'Copy Record(s)' => "Копирование записей (ов)", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "Разделенные запятыми (CSV для Excel)", - 'Select data file to import' => "Выберите файл данных для импорта", - 'Select table for data import' => "Выберите таблицу для импорта данных", - 'First line contains column names' => "Первая строка содержит имена столбцов", - 'Select objects to operate upon' => "Выбор объектов для работы на", - 'Operations to perform' => "Операции для выполнения", - 'Add prefix string to name' => "Добавить префикс строки назвать", - 'Delete prefix string from name' => "Удалите префикс строки с названием", - 'Command text' => "Текст команды", - 'DROP selected database objects' => "Копирования выбранных объектов баз данных", - 'Batch operation results' => "Результаты периодического действия", - 'Operation' => "Операция", - 'Status' => "Статус", - '{{NUM}} queries generated' => "{{NUM}} запросы, сгенерированные", - 'Please select one or more operations to perform' => "Пожалуйста, выберите одну или несколько операций для выполнения", - 'Quick Search' => "Быстрый поиск", - '{{NAME}} client library is not installed' => "{{Name}} клиентская библиотека не установлена", - '{{NAME}} extension is not installed' => "{{Name}} расширения не установлен", - 'SQLite database folder is inaccessible or not writable' => "SQLite базы данных общих папок недоступен или не доступен для записи", - 'Maximize/Restore Results Pane' => "Развернуть / Восстановить Результаты область", - 'Select databases to operate upon' => "Выбор базы данных для работы на", - 'DROP selected databases' => "DROP выбранной базы данных", - 'The following operation is irreversible' => "Следующая операция необратима", - 'Potential data loss might occur' => "Потенциальная потеря данных может произойти", - 'Add TRUNCATE command before insert statements' => "Добавить TRUNCATE команду перед вставкой заявления", - 'Select objects to include in backup' => "Выберите объекты для включения в резервный", - 'Backup folder does not exist or is not writable' => "Резервное копирование папки не существует или недоступен для записи", - 'Backup type' => "Тип резервного копирования", - 'Database backup successfully created' => "Резервное копирование базы данных успешно создана", - 'Failed to create database backup' => "Не удалось создать резервную копию базы данных", - 'Generate Bulk insert statements' => "Создание инструкции массовой вставки", - 'Maximum size of SQL statement' => "Максимальный размер заявления SQL", - 'Show record count with table names' => "Показать количество записей с именами таблиц", - 'Sort Table listing by' => "Сортировать по таблица с перечнем", - 'Name' => "Название", - 'Last Update Time' => "Время последнего обновления", - 'Maximum records to display in result set' => "Максимальное число записей, отображаемых в результирующий набор", - 'Show popup dialog for editing large text data' => "Показать всплывающее диалоговое окно для редактирования больших текстовых данных", - 'Miscellaneous' => "Смешанный", - 'Reset all confirmation dialogs' => "Сбросить все диалоги подтверждения", - 'Record Editing' => "Редактирования записи", - 'Exclude Table type' => "Исключить Тип стола", - 'Exclude Table Character set' => "Исключить столовый набор символов", - 'Backup filename' => "Резервное копирование файла", - 'Invalid filename format' => "Неверный формат файла", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "все", - 'all selected' => "все выбранные", - 'An error occured while refreshing the object list.' => "Ошибка при обновлении списка объектов.", - 'Are you sure you want to clear all field information from table?' => "Вы уверены, что хотите удалить все информационное поле из таблицы?", - 'Are you sure you want to delete this user account?' => "Вы уверены, что хотите удалить эту учетную запись?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "Вы уверены, что хотите удалить все объекты из базы данных {{NAME}}?", - 'Are you sure you want to DROP selected objects?' => "Вы действительно хотите удалить выбранные объекты?", - 'Are you sure you want to DROP the database {{NAME}}?' => "Вы уверены, что хотите отказаться от базы данных {{NAME}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "Вы уверены, что хотите отказаться от этого объекта? {{NAME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "Вы уверены, что вы хотите выполнить {{SELECTED}} запросы?", - 'Are you sure you want to logout?' => "Вы уверены, что хотите выйти?", - 'Are you sure you want to truncate the table {{NAME}}?' => "Вы уверены, что вы хотите на усечение таблицы {{NAME}}?", - 'Blob Data [{{SIZE}}]' => "Blob данных [{{SIZE}}]", - 'Cancel' => "Отменить", - 'Check for Updates' => "Проверить наличие обновлений", - 'Clear command history?' => "Очистить историю команд?", - 'Close' => "Закрыть", - 'Confirm Action' => "Подтверждение действий", - 'Confirm and do not ask me again about this choice' => "Подтвердить и не спрашивать об этом выбор", - 'Copy Object' => "Копирование объектов", - 'Create Database' => "Создание базы данных", - 'Create Primary Index on this field' => "Создать первичный индекс на это поле", - 'Databases' => "Базы данных", - 'Default value [Use quotes to specify string values]' => "Значение по умолчанию [Используйте кавычки, чтобы указать значения строк]", - 'Disallow NULL values in Field' => "Запретить NULL значений в поле", - 'Enter new index name' => "Введите новое имя индекса", - 'Enter new name for the database object' => "Введите новое имя для объекта базы данных", - 'Enter the text to search in database' => "Введите текст для поиска в базе данных", - 'Error' => "Ошибка", - 'Events' => "События", - 'Execute query' => "Выполнить запрос", - 'Exports results' => "Экспорт результатов", - 'Failed to refresh the results.' => "Не удалось обновить результаты.", - 'Field Datatype' => "Поле Тип данных", - 'Field Name' => "Имя поля", - 'Field value is Auto Incremented' => "Значение поля Авто Увеличивается", - 'Functions' => "Функции", - 'Indexes Updated' => "Индексы Обновлено", - 'Maximum Length of field value' => "Максимальная длина значения поля", - 'Navigation Error. Try reloading the page' => "Навигация ошибка. Попробуйте обновить страницу", - 'New settings saved and applied' => "Новые параметры сохранены и прикладных", - 'New version is available' => "Новая версия доступна", - 'Next' => "Следующая", - 'No' => "Нет", - 'No Table selected' => "Нет выбранной таблицы", - 'Not enough room to show this pane.' => "Не хватает места, чтобы показать эту область.", - 'OK' => "ОК", - 'One or more field information is incomplete' => "Один или несколько полей информация является неполной", - 'Open' => "Открыть", - 'Operation failed' => "Не удалось выполнить операцию", - 'Pad field values with leading zeros' => "Pad значения полей с ведущими нулями", - 'Pane' => "Панели", - 'Passwords do not match' => "Пароли не совпадают", - 'Pin' => "Pin", - 'Please select one or more operations to perform' => "Пожалуйста, выберите одну или несколько операций для выполнения", - 'Please type in one or more queries in the SQL editor!' => "Пожалуйста, введите один или несколько запросов в редакторе SQL!", - 'Please wait...' => "Пожалуйста, подождите ...", - 'Previous' => "Предыдущая", - 'Procedures' => "Процедуры", - 'Prompt' => "Подскажут", - 'Refresh results' => "Обновить результаты", - 'Refreshing object list' => "Обновление списка объектов", - 'Rename Object' => "Переименовать объект", - 'Resize' => "Изменение размера", - 'Results page:' => "Страница результатов:", - 'Select a database to view privileges for the user' => "Выбор базы данных для просмотра привилегий для пользователей", - 'Select an index to view / edit its details' => "Выберите индекс для просмотра / редактирования его детали", - 'Select at least one field type for searching' => "Выберите хотя бы одно поле типа для поиска", - 'Select objects to operate upon' => "Выбор объектов для работы на", - 'selector' => "селектор", - 'Slide Open' => "Раздвинуть", - 'Table information requires at least one valid field' => "Таблица информации требует, по крайней мере один действительный поле", - 'Table name is required' => "Имя таблицы требуется", - 'Table successfully created' => "Таблица успешно создан", - 'Table successfully modified' => "Таблица успешно изменен", - 'Tables' => "Таблицы", - 'Text Data [{{SIZE}}]' => "Текстовые данные [{{SIZE}}]", - 'There is no record in the results to export' => "Существует нет записи в результаты на экспорт", - 'This attribute is not required for selected field type' => "Этот атрибут не является обязательным для выбранного типа поля", - 'Triggers' => "Триггеры", - 'Un-Pin' => "Un-Pin", - 'Unsigned numbered field only' => "Без подписи номером поля только", - 'Update check failed' => "Обновление проверить не удалось", - 'User information is incomplete or invalid' => "Пользователь информация является неполной или недействительным", - 'User Manager' => "Пользователь Manager", - 'Views' => "Просмотров", - 'WARNING' => "ВНИМАНИЕ!", - 'Yes' => "Да", - 'You have the latest version' => "У вас есть последняя версия", - - ); -?> diff --git a/lang/sk.php b/lang/sk.php deleted file mode 100644 index 272f025..0000000 --- a/lang/sk.php +++ /dev/null @@ -1,463 +0,0 @@ - "Využitie databázy", - 'Drop Database' => "Drop databázy", - 'Empty Database' => "Prázdne databázy", - 'Drop all tables from this database' => "Zrušte všetky tabuľky z tejto databázy", - 'Select statement' => "Vyberte vyhlásenie", - 'Insert statement' => "INSERT", - 'Update statement' => "Aktualizácia výkazu", - 'Describe' => "Popísať", - 'Show create command' => "Zobraziť vytvoriť príkazom", - 'View data' => "Zobrazenie dát", - 'Alter Table' => "Alter Table", - 'Indexes' => "Indexy", - 'Engine Type' => "Typ motora", - 'More operations' => "Viac operácií", - 'Truncate' => "Oklestit", - 'Drop' => "Pokles", - 'Rename' => "Premenovať", - 'Export table data' => "Export dát tabuľky", - 'Create Table' => "Vytvoriť tabuľku", - 'Create View' => "Vytvoriť Pohľad", - 'Create Procedure' => "Vytvoriť poriadku", - 'Create Function' => "Vytvorenie funkcie", - 'Create Trigger' => "Vytvoriť spúšťacie", - 'Create Event' => "Vytvoriť udalosť", - 'Show/Hide Panel' => "Zobraziť / skryť panel", - 'Show/Hide Header' => "Zobraziť / skryť hlavičky", - 'Copy all queries to clipboard' => "Skopírovať všetky otázky do schránky", - 'Clear history' => "Vymazať históriu", - 'Copy Column values' => "Kopírovať Stĺpec hodnoty", - 'Copy to clipboard' => "Kopírovanie do schránky", - 'Generate SQL Filter' => "Generovať SQL filter", - 'Database Manager' => "Database Manager", - 'Manage databases' => "Správa databáz", - - // main menu related text - 'Database' => "Databáza", - 'Refresh' => "Aktualizovať", - 'Refresh database object list' => "Obnoviť zoznam databázových objektov", - 'Create new' => "Vytvoriť nový", - 'Export' => "Export", - 'Export database to external file' => "Export databázy do externého súboru", - 'Objects' => "Objekty", - 'Create Table' => "Vytvoriť tabuľku", - 'Create a new table in the database' => "Vytvorenie novej tabuľky v databáze", - 'Create View' => "Vytvoriť Pohľad", - 'Create a new view in the database' => "Vytvorenie nového zobrazenia v databáze", - 'Create Stored Procedure' => "Vytvorenie uloženej procedúry", - 'Create a new stored procedure in the database' => "Vytvoriť nový uložené procedúry v databáze", - 'Create Function' => "Vytvorenie funkcie", - 'Create a new user defined function in the database' => "Vytvoriť nový užívateľom definované funkcie v databáze", - 'Create Trigger' => "Vytvoriť spúšťacie", - 'Create a new trigger in the database' => "Vytvoriť nový spúšť v databáze", - 'Create Event' => "Vytvoriť udalosť", - 'Create a new event in the database' => "Vytvorenie novej udalosti do databázy", - 'Data' => "Dáta", - 'Import batch file' => "Import dávkový súbor", - 'Import multiple queries from batch file' => "Import viac dotazov z dávkového súboru", - 'Export database' => "Export databázy", - 'Export database to batch file as sql dump' => "Export databázy do dávkového súboru sql výpisu", - 'Export current results' => "Exportovať aktuálne výsledky", - 'Export query results to clipboard or files' => "Export výsledkov dotazu do schránky alebo súborov", - 'Tools' => "Nástroje", - 'Process Manager' => "Process Manager", - 'View and manage database processes' => "Zobraziť a spravovať databázy procesov", - 'Repair Tables' => "Opravy tabuľky", - 'Analyze and repair database tables' => "Analyzovať a tabuľky opráv databázy", - 'User Manager' => "Správca užívateľov", - 'Manage database users' => "Správa databázy užívateľov", - 'Search in Database' => "Vyhľadávanie v databáze", - 'Search for text in the database' => "Vyhľadať text v databáze", - 'Information' => "Informácie", - 'Server/Connection Details' => "Server / Detaily pripojenie", - 'View server configuration' => "Konfigurácia View servera", - 'View server and connection details' => "Zobraziť servery a pripojenie podrobnosti", - 'Server Variables' => "Premenné servera", - 'Database Summary' => "Databáza Zhrnutie", - 'View current database summary stats' => "Zobraziť aktuálne štatistiky databázy zhrnutie", - 'Interface' => "Rozhranie", - 'Options' => "Možnosti", - 'Configure application options' => "Konfigurovať možnosti použitia", - 'UI Theme' => "Téma UI", - 'Database Objects' => "Databáza objektov", - 'Toggle Object Viewer' => "Prepnúť Prehliadač objektov", - 'Help contents' => "Pomocník obsah", - 'Learn the basics of using MyWebSQL' => "Naučte sa základy používania MyWebSQL", - 'QuickStart Tutorials' => "QuickStart tutoriály", - 'See quick hands-on tutorial of MyWebSQL interface' => "Viac informácií nájdete rýchlo hands-o návod na MyWebSQL rozhraní", - 'Online documentation' => "On-line dokumentácia", - 'View online documentation on project website' => "Zobraziť online dokumentácia na stránke projektu", - 'Request a Feature' => "Žiadosť funkcií", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "Ak chcete, aby vaše najobľúbenejšie funkciu byť súčasťou MyWebSQL, kliknite prosím tu informovať o tom", - 'Report a Problem' => "Správa o probléme", - 'Check for updates' => "Skontrolovať aktualizácie", - 'Check for updated versions of the application online' => "Skontrolujte, či nie sú k dispozícii aktualizované verzie aplikácie on-line", - 'Logout' => "Odhlásiť", - 'Logout from this session' => "Odhlásiť sa z tohto zasadnutia", - 'Language' => "Jazyk", - 'SQL Editor' => "SQL Editor", - 'Toggle SQL Editor' => "Prepnúť SQL Editor", - 'Experimental' => "Experimentálne", - 'Import table data' => "Importu dát tabuľky", - 'Import table data from external file' => "Import dát z externého súboru tabuľky", - 'Batch operations' => "Dávkové operácie", - 'Perform one or more batch operations on database' => "Vykonajte jeden alebo viac dávkové operácie na databázu", - 'Create a new schema in the database' => "Vytvoriť nové schéma v databáze", - 'Create Schema' => "Vytvoriť schéma", - 'Table Description' => "Tabuľka Popis", - 'Database Manager' => "Database Manager", - 'Manage databases' => "Správa databáz", - 'Backup database on the server as SQL dump' => "Backup databázy na serveri ako skládky SQL", - 'Backup Database' => "Backup Database", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "Váš prehliadač sa zdá byť veľmi starý, a nepodporuje všetky funkcie potrebné na spustenie MyWebSQL.", - 'Try using a newer version of the browser to run this application.' => "Skúste použiť novšiu verziu prehliadača pre spustenie tejto aplikácie.", - - // text used on various screens in the interface - 'Visit Project website' => "Navštívte internetové stránky projektu", - 'Version' => "verzia", - 'Loading' => "Nakladanie", - 'Quick Edit Options' => "Quick Edit Možnosti", - 'Press {{KEY}} to set NULL' => "Stlačením tlačidla {{KEY}} nastaviť NULL", - 'MySQL Server' => "MySQL server", - 'Logged in as: {{USER}}' => "Prihlásený ako: {{user}}", - 'Results' => "Výsledky", - 'Messages' => "Správy", - 'Information' => "Informácie", - 'History' => "História", - 'There are no results to show in this view' => "Nie sú žiadne výsledky v tomto zobrazení", - 'Refresh results' => "Aktualizovať výsledky", - 'Please wait' => "Prosím, vyčkajte", - 'Query All' => "Všetky dotaz", - 'Query' => "Dotaz", - 'Add Record' => "Pridať záznam", - 'Delete Record(s)' => "Vymazať záznam (y)", - 'Update Record(s)' => "Aktualizovať záznam (y)", - 'Generate SQL' => "Generovať SQL", - 'Database name' => "Názov databázy", - 'Select database after creation' => "Vyberte databázu po vytvorení", - 'Database connection failed to the server' => "Pripojenie k databáze zlyhalo k serveru", - 'Host' => "Hostiteľské", - 'User' => "Užívateľ", - 'Select a database to begin' => "Vyberte databázu začať", - 'Select/unselect All records' => "Vybrať / odznačenie všetkých záznamov", - 'Primary key column' => "Stĺpec primárneho kľúča", - 'Unique key column' => "Unikátny kľúčový stĺpec", - 'Showing records {{START}} - {{END}}' => "Zobrazujú sa záznamy {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "Zobrazené prvý {{MAX}} záznamy len", - '1 query successfully executed' => "1 dotaz úspešne vykonaný", - '{{NUM}} queries successfully executed' => "{{NUM}} otázky úspešne vykonaný", - '{{NUM}} record(s) were affected' => "{{NUM}} záznam (y) bol ovplyvnený", - '{{NUM}} record(s) updated' => "{{NUM}} záznam (y) aktualizované", - 'Error occurred while executing the query' => "Došlo k chybe pri spustení dotazu", - '{{NUM}} queries failed to execute' => "{{NUM}} otázky sa nepodarilo spustiť", - 'Click to view/edit column data [{{NUM}} Bytes]' => "Kliknite pre zobrazenie / editáciu dát stĺpec [{{NUM}} Bytes]", - 'Blob data is not editable' => "BLOB dát nemožno upravovať", - 'Blob data saved' => "Blob dát uložených", - 'Failed to save blob data' => "Nepodarilo sa uložiť blob dáta", - 'The process with id [{{PID}}] was killed' => "Proces s id [{{PID}}] bol zabitý", - 'No such process [id = {{PID}}]' => "Žiadny takýto proces [id = {{PID}}]", - 'Select a process and click the button to kill the process' => "Vyberte procesu a kliknite na tlačidlo zabiť proces", - 'Process ID' => "ID procesu", - 'Command' => "Príkaz", - 'Time' => "Čas", - 'Info' => "Info", - 'Kill Process' => "Kill proces", - 'Failed to get process list' => "Nepodarilo sa získať zoznam procesov", - 'The command executed successfully' => "Príkaz úspešne vykonaný", - 'Invalid server configuration' => "Neplatná konfigurácia servera", - 'Invalid Credentials' => "Neplatných poverenia", - 'New database successfully created' => "Nová databáza úspešne vytvorená", - 'File upload failed. Please try again' => "Nahranie súboru zlyhalo. Prosím skúste to znova", - 'No queries were executed during import' => "Žiadne otázky neboli vykonané v priebehu importu", - 'Maximum upload filesize is {{SIZE}}' => "Maximálna veľkosť súboru je upload {{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "Podporované typy súborov / rozšírenia sú: ({{zoznam}})", - 'Database summary' => "Databáza zhrnutie", - 'Server Variables' => "Premenné servera", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "Všetky existujúci objekt s rovnakým názvom by malo upustiť ručne pred spustením vytvorenie príkazu", - 'Only create commands are accepted' => "Iba vytvárať príkazy sú prijímané", - 'User ID' => "ID užívateľa", - 'Password' => "Heslo", - 'Login' => "Prihlásiť sa", - 'Create new database object' => "Vytvorenie novej databázy objektov", - 'Enter command for object creation' => "Zadajte príkaz na vytvorenie objektu", - 'Submit' => "Odoslať", - 'Show blob data as: {{TYPE}}' => "Zobraziť blob údaje: {{type}}", - 'Blob data for column {{NAME}}' => "Blob údaje pre stĺpca {{NAME}}", - 'Create command for {{TYPE}} {{NAME}}' => "Príkaz na vytvorenie {{type}} {{NAME}}", - 'Table Engine (type)' => "Tabuľka Motor (typ)", - 'Change Table Type' => "Tabuľka zmena typu", - 'The requested page is not available on the server' => "Požadovaná stránka nie je k dispozícii na serveri", - 'Error' => "Chyba", - 'It appears that you attempted to submit an invalid request to the server' => "Zdá sa, že ste sa pokúsili podať neplatný požiadavku na server", - 'The request has been denied. Reloading the page might solve the problem' => "Žiadosť bola zamietnutá. Prekládky stránka môže vyriešiť problém", - 'Access Denied' => "Prístup bol odmietnutý", - 'Help' => "Pomocník", - 'To see most up-to-date help contents, please visit {{LINK}}' => "Ak chcete vidieť najviac up-to-data obsah Pomocníka, navštívte {{LINK}}", - 'It appears that your browser session has expired' => "Zdá sa, že váš prehliadač sedenie vypršalo", - 'Please refresh the webpage to re-login' => "Prosím aktualizujte webové stránky na re-prihlásenie", - 'Table information' => "Tabuľka informácie", - 'Edit' => "Upraviť", - 'Save' => "Uložiť", - 'Either the database is empty, or there was an error retrieving list of database objects' => "Buď je databáza prázdna, alebo došlo k chybe načítania zoznamu databázových objektov", - 'Please try closing and re-opening this dialog again' => "Prosím, skúste uzatváracie a re-otvorenie tohto dialógu", - 'Structure' => "Štruktúra", - 'Table Data' => "Tabuľka dát", - 'Structure and Table Data' => "Štruktúra a Tabuľka dát", - 'Options' => "Možnosti", - 'Set Auto increment field values to NULL' => "Set Auto hodnoty prírastku poľa na hodnotu NULL", - 'Add DROP command before create statements' => "Pridať DROP Príkaz pred vytvárať závierky", - 'Export' => "Export", - 'Import' => "Import", - 'Export Database' => "Export databázy", - 'Export Table' => "Export tabuľky", - 'Server information' => "Informácie o serveri", - 'Server' => "Server", - 'Version comment' => "Verzia komentár", - 'Character sets' => "Znakových sád", - 'Server character set' => "Server znaková sada", - 'Client character set' => "Klient znaková sada", - 'Database character set' => "Databáza znaková sada", - 'Results character set' => "Výsledky znaková sada", - 'Export As' => "Exportovať ako", - 'Insert Statements' => "INSERT", - 'Include field names in query' => "Zahrnúť názvy polí v dotaze", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Obyčajný text (jeden záznam na riadok)", - 'Fields separated by:' => "Pole sú oddelené:", - 'Export Results' => "Export Výsledky", - 'Select SQL batch file to import' => "Vyberte SQL dávkový súbor, ktorý chcete importovať", - 'Continue processing even if error occurs' => "Pokračovať v spracovaní, aj keď dôjde k chybe", - 'Basic Information' => "Základné informácie", - 'Table Properties' => "Vlastnosti tabuľky", - 'Table Name' => "Tabuľka Name", - 'Field Name' => "Názov poľa", - 'Data Type' => "Typ dát", - 'Length' => "Dĺžka", - 'Default value' => "Predvolená hodnota", - 'Unsigned' => "Nepodpísaný", - 'Zero Fill' => "Zero Vyplňte", - 'Primary Key' => "Primárny kľúč", - 'Auto Increment' => "Auto Prírastok", - 'Not NULL' => "Nie je NULL", - 'Character Set' => "Znaková sada", - 'Collation' => "Porovnanie", - 'Comment' => "Komentár", - 'Waiting for table information to be submitted' => "Čakanie na stôl informácie majú byť predložené", - 'Add field' => "Pridať polia", - 'Delete selected field' => "Zmazať vybrané oblasti", - 'Clear Table Information' => "Tabuľka jasné informácie", - 'List of values' => "Zoznam hodnôt", - 'Query Results' => "Výsledky dotazu", - 'Data for {{TABLE}}' => "Dáta pre {{TABLE}}", - 'Select tables to be analyzed/repaired' => "Vyberte tabuľky na analýzu / opraviť", - 'Operation to perform' => "Operácie vykonávať", - 'Analyze' => "Analyzovať", - 'Check' => "Skontrolujte", - 'Optimize' => "Optimalizovať", - 'Repair' => "Opravy", - 'Skip Binary logging' => "Preskočiť binárne protokolovanie", - 'Default' => "Predvolené", - 'Quick' => "Rýchly", - 'Fast' => "Rýchlo", - 'Medium' => "Stredná", - 'Extended' => "Rozšírená", - 'Changed' => "Upravený", - 'Use Frm files (MyISAM tables)' => "Použitie FRM súbory (MyISAM tabuliek)", - 'User Information' => "Informácie o užívateľovi", - 'Global Privileges' => "Globálne Výsady", - 'Database Privileges' => "Databáza Výsady", - 'Import File' => "Import súborov", - 'Index Manager' => "Index Manager", - 'Edit table structure' => "Upraviť štruktúru tabuľky", - 'Save All Changes' => "Uložiť všetky zmeny", - 'Changes are not saved until you press [Save All Changes]' => "Zmeny nie sú uložené, kým tlačidlo [Uložiť všetky zmeny]", - 'Field Length' => "Dĺžka poľa", - 'Select objects to include in export' => "Vyberte objekty, aby do exportu", - 'Export type' => "Export typ", - 'Select All/None' => "Vybrať všetky alebo žiadne", - 'Add User' => "Pridať užívateľa", - 'Update User' => "Aktualizácia užívateľa", - 'Delete selected User' => "Zmazať vybrané užívateľa", - 'Remove Password' => "Odobrať heslo", - 'Select tables to search' => "Vyberte tabuľky pre vyhľadávanie", - 'Search Options' => "Možnosti hľadania", - 'Search in following field types' => "Hľadať v nasledujúcich typov polí", - 'Numeric Fields' => "Číselné polia", - 'Character Fields' => "Znak poľa", - 'Text Fields' => "Textových polí", - 'Date/Time Fields' => "Dátum a čas polia", - 'Comparison Type' => "Porovnanie typu", - 'Text to search' => "Text na vyhľadávanie", - 'Search' => "Vyhľadávanie", - 'Search Results' => "Výsledky vyhľadávania", - 'Number of matches' => "Počet zápasov", - 'Search results for {{KEYWORD}} in the database' => "Výsledky hľadania pre {{KEYWORD}} v databáze", - '{{NUM}} match(es)' => "{{NUM}} zápas (y)", - 'Copy query to editor' => "Kópiu dotazu na editor", - 'Done' => "Hotovo", - 'SQL Editor' => "SQL Editor", - 'Create Copy' => "Vytvoriť kópiu", - 'Minimize All' => "Minimalizácia všetkých", - 'Copy Record(s)' => "Kopírovať záznam (y)", - 'YAML' => "Yamli", - 'Comma Separated (CSV for Excel)' => "Oddelené čiarkami (CSV pre Excel)", - 'Select data file to import' => "Vyberte dátový súbor, ktorý chcete importovať", - 'Select table for data import' => "Vyberte tabuľku pre import dát", - 'First line contains column names' => "Prvý riadok obsahuje názvy stĺpcov", - 'Select objects to operate upon' => "Vyberte objekty, ktoré pôsobia na", - 'Operations to perform' => "Operácie sa vykonávajú", - 'Add prefix string to name' => "Pridať predponu reťazec na meno", - 'Delete prefix string from name' => "Odstrániť prefix reťazca z názvu", - 'Command text' => "Text príkazu", - 'DROP selected database objects' => "DROP vybraných databázových objektov", - 'Batch operation results' => "Výsledky Dávkový prevádzku", - 'Operation' => "Operácie", - 'Status' => "Postavenie", - '{{NUM}} queries generated' => "{{NUM}} opýta vygenerovaná", - 'Please select one or more operations to perform' => "Prosím, vyberte jeden alebo viac operácií, na vykonanie", - 'Quick Search' => "Rýchle vyhľadávanie", - '{{NAME}} client library is not installed' => "{{NAME}} klientská knižnica nie je nainštalovaný", - '{{NAME}} extension is not installed' => "{{NAME}} rozšírenie nie je nainštalovaný", - 'SQLite database folder is inaccessible or not writable' => "SQLite databáza Zložka je neprístupná alebo nemožno zapisovať", - 'Maximize/Restore Results Pane' => "Maximalizovať / Obnoviť tably Výsledky", - 'Select databases to operate upon' => "Vyberte databáz pracovať na", - 'DROP selected databases' => "DROP vybrané databázy", - 'The following operation is irreversible' => "Nasledujúce operácie je nevratná", - 'Potential data loss might occur' => "Potenciálna strata dát môže dôjsť", - 'Add TRUNCATE command before insert statements' => "Pridať TRUNCATE príkazu pred INSERT", - 'Select objects to include in backup' => "Vyberte objekty, ktoré chcete zahrnúť do zálohy", - 'Backup folder does not exist or is not writable' => "Backup zložka neexistuje alebo nie je zapisovateľný", - 'Backup type' => "Typ zálohy", - 'Database backup successfully created' => "Zálohovanie databázy úspešne vytvorený", - 'Failed to create database backup' => "Nepodarilo sa vytvoriť zálohu databázy", - 'Generate Bulk insert statements' => "Vytvoriť Hromadné príkazy pre vloženie", - 'Maximum size of SQL statement' => "Maximálna veľkosť SQL príkazu", - 'Show record count with table names' => "Zobraziť počet záznamov s názvami tabuliek", - 'Sort Table listing by' => "Zoradiť podľa Tabuľkový výpis", - 'Name' => "Názov", - 'Last Update Time' => "Čas poslednej aktualizácie", - 'Maximum records to display in result set' => "Maximálna záznamy sa zobrazia v sade výsledkov", - 'Show popup dialog for editing large text data' => "Zobraziť popup dialóg pre editáciu veľkých textových dát", - 'Miscellaneous' => "Zmiešaný", - 'Reset all confirmation dialogs' => "Reset všetkých potvrdzovacie dialógy,", - 'Record Editing' => "Editácia záznamu", - 'Exclude Table type' => "Vylúčiť typ tabuľky", - 'Exclude Table Character set' => "Vylúčiť Tabuľka znaková sada", - 'Backup filename' => "Zálohovanie súboru", - 'Invalid filename format' => "Neplatný formát súboru", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "všetky", - 'all selected' => "všetky vybrané", - 'An error occured while refreshing the object list.' => "Došlo k chybe pri obnovovaní zoznamu objektov.", - 'Are you sure you want to clear all field information from table?' => "Ste si istí, že chcete vymazať všetky oblasti informácií z tabuľky?", - 'Are you sure you want to delete this user account?' => "Ste si istí, že chcete zmazať tento užívateľský účet?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "Ste si istí, že chcete DROP všetky objekty z databázy {{NAME}}?", - 'Are you sure you want to DROP selected objects?' => "Ste si istí, že chcete presuňte vybrané predmety?", - 'Are you sure you want to DROP the database {{NAME}}?' => "Ste si istí, že chcete DROP databáze {{NAME}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "Ste si istí, že chcete kvapka tento objekt? {{NAME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "Ste si istí, že chcete spustiť {{SELECTED}} otázky?", - 'Are you sure you want to logout?' => "Ste si istí, že chcete odhlásiť?", - 'Are you sure you want to truncate the table {{NAME}}?' => "Ste si istí, že chcete skrátiť tabuľky {{NAME}}?", - 'Blob Data [{{SIZE}}]' => "Blob dát [{{SIZE}}]", - 'Cancel' => "Zrušiť", - 'Check for Updates' => "Skontrolovať aktualizácie", - 'Clear command history?' => "Vymazať históriu príkazov?", - 'Close' => "Zavrieť", - 'Confirm Action' => "Potvrďte akciu", - 'Confirm and do not ask me again about this choice' => "Potvrdiť a nepýtajte sa ma znovu o tejto voľbe", - 'Copy Object' => "Kopírovanie objektov", - 'Create Database' => "Vytvorenie databázy", - 'Create Primary Index on this field' => "Vytvoriť primárny index na tomto poli", - 'Databases' => "Databáza", - 'Default value [Use quotes to specify string values]' => "Predvolená hodnota [Použite úvodzovky zadať hodnoty reťazca]", - 'Disallow NULL values in Field' => "Zakázať NULL hodnoty v poli", - 'Enter new index name' => "Zadajte nový názov indexu", - 'Enter new name for the database object' => "Zadajte nové meno pre databázu objekt", - 'Enter the text to search in database' => "Zadajte text pre vyhľadávanie v databáze", - 'Error' => "Chyba", - 'Events' => "Udalosti", - 'Execute query' => "Spustiť dotaz", - 'Exports results' => "Vývoz výsledky", - 'Failed to refresh the results.' => "Nepodarilo sa aktualizovať výsledky.", - 'Field Datatype' => "Pole dátového typu", - 'Field Name' => "Názov poľa", - 'Field value is Auto Incremented' => "Hodnota poľa je Auto zvyšuje", - 'Functions' => "Funkcia", - 'Indexes Updated' => "Indexy Aktualizované", - 'Maximum Length of field value' => "Maximálna dĺžka hodnoty poľa", - 'Navigation Error. Try reloading the page' => "Chyba navigácie. Skúste stránku načítať znova", - 'New settings saved and applied' => "Nové nastavenie uložiť a použiť", - 'New version is available' => "Nová verzia je k dispozícii", - 'Next' => "Ďalší", - 'No' => "Nie", - 'No Table selected' => "Tabuľka č vybraných", - 'Not enough room to show this pane.' => "Nie je dostatok miesta pre zobrazenie tohto okna.", - 'OK' => "OK", - 'One or more field information is incomplete' => "Jeden alebo viac poli informácie je neúplná", - 'Open' => "Open", - 'Operation failed' => "Operácia zlyhala", - 'Pad field values with leading zeros' => "Pad hodnoty polí s úvodnými nulami", - 'Pane' => "Tabla", - 'Passwords do not match' => "Heslá sa nezhodujú", - 'Pin' => "Kolík", - 'Please select one or more operations to perform' => "Prosím, vyberte jeden alebo viac operácií, na vykonanie", - 'Please type in one or more queries in the SQL editor!' => "Prosím, zadajte jeden alebo viac otázok v editore SQL!", - 'Please wait...' => "Čakajte prosím ...", - 'Previous' => "Predchádzajúci", - 'Procedures' => "Postupy", - 'Prompt' => "Výzva", - 'Refresh results' => "Aktualizovať výsledky", - 'Refreshing object list' => "Osviežujúci zoznamu objektov", - 'Rename Object' => "Premenovať objekt", - 'Resize' => "Resize", - 'Results page:' => "Stránka s výsledkami:", - 'Select a database to view privileges for the user' => "Vybrať databázu k zobrazenie oprávnenia pre užívateľa", - 'Select an index to view / edit its details' => "Vyberte index zobraziť / upraviť jej detaily", - 'Select at least one field type for searching' => "Vyberte aspoň jedno pole pre vyhľadávanie zadajte", - 'Select objects to operate upon' => "Vyberte objekty, ktoré pôsobia na", - 'selector' => "volič", - 'Slide Open' => "Snímka Open", - 'Table information requires at least one valid field' => "Tabuľka informácií vyžaduje aspoň jeden platný poľa", - 'Table name is required' => "Meno tabuľky je nutné", - 'Table successfully created' => "Tabuľka úspešne vytvorený", - 'Table successfully modified' => "Tabuľka úspešne zmenená", - 'Tables' => "Tabuľky", - 'Text Data [{{SIZE}}]' => "Textových dát [{{SIZE}}]", - 'There is no record in the results to export' => "Nie je tam žiadny záznam vo výsledkoch vyvážať", - 'This attribute is not required for selected field type' => "Tento atribút nie je povinný pre vybraný typ poľa", - 'Triggers' => "Spúšťa", - 'Un-Pin' => "Un-Pin", - 'Unsigned numbered field only' => "Nepodpísané očíslované polia iba", - 'Update check failed' => "Aktualizácia zistiť nepodarilo", - 'User information is incomplete or invalid' => "Informácie o Užívateľovi sú neúplné alebo neplatné", - 'User Manager' => "Správca užívateľov", - 'Views' => "Zobrazenie", - 'WARNING' => "VAROVANIE", - 'Yes' => "Áno", - 'You have the latest version' => "Máte poslednú verziu", - - ); -?> diff --git a/lang/sl.php b/lang/sl.php deleted file mode 100644 index 26c4796..0000000 --- a/lang/sl.php +++ /dev/null @@ -1,463 +0,0 @@ - "Uporaba Database", - 'Drop Database' => "Drop Database", - 'Empty Database' => "Empty Database", - 'Drop all tables from this database' => "Drop vse tabele iz te zbirke", - 'Select statement' => "Izberite izjavo", - 'Insert statement' => "Vstavi izjavo", - 'Update statement' => "Update izjavo", - 'Describe' => "Opišite", - 'Show create command' => "Prikaži ustvariti ukaz", - 'View data' => "Prikaži podatke", - 'Alter Table' => "Alter Tabela", - 'Indexes' => "Kazala", - 'Engine Type' => "Tip motorja", - 'More operations' => "Več operacij", - 'Truncate' => "Izrežite", - 'Drop' => "Drop", - 'Rename' => "Preimenuj", - 'Export table data' => "Izvoz podatkov v tabeli", - 'Create Table' => "Ustvari tabelo", - 'Create View' => "Ustvari pogled", - 'Create Procedure' => "Ustvari Postopek", - 'Create Function' => "Ustvari Funkcija", - 'Create Trigger' => "Ustvari Trigger", - 'Create Event' => "Ustvari dogodek", - 'Show/Hide Panel' => "Prikaži / skrij Panel", - 'Show/Hide Header' => "Prikaži / skrij Glava", - 'Copy all queries to clipboard' => "Kopiraj vse poizvedbe v odložišče", - 'Clear history' => "Počisti zgodovino", - 'Copy Column values' => "Copy Column vrednosti", - 'Copy to clipboard' => "Kopiraj v odložišče", - 'Generate SQL Filter' => "Ustvari SQL Filter", - 'Database Manager' => "Database Manager", - 'Manage databases' => "Upravljanje baz podatkov", - - // main menu related text - 'Database' => "Database", - 'Refresh' => "Osveži", - 'Refresh database object list' => "Osveži predmeta zbirke podatkov seznam", - 'Create new' => "Ustvari novo", - 'Export' => "Export", - 'Export database to external file' => "Izvoz podatkovne baze za zunanjo datoteko", - 'Objects' => "Predmeti", - 'Create Table' => "Ustvari tabelo", - 'Create a new table in the database' => "Ustvari novo tabelo v podatkovni bazi", - 'Create View' => "Ustvari pogled", - 'Create a new view in the database' => "Ustvarite nov pogled v bazi", - 'Create Stored Procedure' => "Ustvari shranjenih procedur", - 'Create a new stored procedure in the database' => "Ustvari novo shranjeno proceduro v bazi", - 'Create Function' => "Ustvari Funkcija", - 'Create a new user defined function in the database' => "Ustvari novo uporabniško določeno funkcijo v zbirki podatkov", - 'Create Trigger' => "Ustvari Trigger", - 'Create a new trigger in the database' => "Ustvari nov sprožilec v bazi", - 'Create Event' => "Ustvari dogodek", - 'Create a new event in the database' => "Ustvarite nov dogodek v bazi", - 'Data' => "Podatki", - 'Import batch file' => "Uvoz paketnih", - 'Import multiple queries from batch file' => "Uvoz več poizvedb iz paketne", - 'Export database' => "Izvoz baze podatkov", - 'Export database to batch file as sql dump' => "Izvoz zbirke podatkov v datoteko serije kot sql dump", - 'Export current results' => "Izvoz trenutne rezultate", - 'Export query results to clipboard or files' => "Izvoz rezultate poizvedbe v odložišče ali datotek", - 'Tools' => "Orodja", - 'Process Manager' => "Process Manager", - 'View and manage database processes' => "Ogled in upravljanje baze podatkov procesov", - 'Repair Tables' => "Popravila Mize", - 'Analyze and repair database tables' => "Analizirati in tabel podatkovne baze popravilo", - 'User Manager' => "Uporabnik Manager", - 'Manage database users' => "Upravljanje podatkovne baze uporabnikov", - 'Search in Database' => "Iskanje po podatkovni bazi", - 'Search for text in the database' => "Iskanje besedila v bazi podatkov", - 'Information' => "Informacije", - 'Server/Connection Details' => "Server / Connection Podrobnosti", - 'View server configuration' => "Konfiguracija View server", - 'View server and connection details' => "Poglej strežnik in priključitev podrobnosti", - 'Server Variables' => "Spremenljivke Server", - 'Database Summary' => "Database Povzetek", - 'View current database summary stats' => "Poglej trenutni zbirki podatkov povzetek stats", - 'Interface' => "Vmesnik", - 'Options' => "Možnosti", - 'Configure application options' => "Konfiguriranje možnosti uporabe", - 'UI Theme' => "UI Theme", - 'Database Objects' => "Predmeti zbirke podatkov", - 'Toggle Object Viewer' => "Toggle Object Viewer", - 'Help contents' => "Vsebina pomoči", - 'Learn the basics of using MyWebSQL' => "Naučite se osnov uporabe MyWebSQL", - 'QuickStart Tutorials' => "QuickStart Tutorials", - 'See quick hands-on tutorial of MyWebSQL interface' => "Glej hitro hands-on tutorial o MyWebSQL vmesnika", - 'Online documentation' => "Online dokumentacija", - 'View online documentation on project website' => "Ogled spletne dokumentacije na spletni strani projekta", - 'Request a Feature' => "Zahteva Feature", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "Če želite, da funkcija najbolj priljubljenih biti del MyWebSQL, kliknite tukaj, da obvesti o tem", - 'Report a Problem' => "Poročilo: Problem", - 'Check for updates' => "Preveri za posodobitve", - 'Check for updated versions of the application online' => "Preverite, ali posodobljene različice vloge online", - 'Logout' => "Odjava", - 'Logout from this session' => "Odjava iz te seje", - 'Language' => "Jezik", - 'SQL Editor' => "SQL Editor", - 'Toggle SQL Editor' => "Toggle SQL Editor", - 'Experimental' => "Eksperimentalno", - 'Import table data' => "Uvoz podatkov v tabeli", - 'Import table data from external file' => "Uvozne tabela podatkov iz zunanjih datotek", - 'Batch operations' => "Serije operacij", - 'Perform one or more batch operations on database' => "Opravljajo eno ali več serij operacije na podatkovni bazi", - 'Create a new schema in the database' => "Ustvari novo shemo v bazo podatkov", - 'Create Schema' => "Ustvarite sheme", - 'Table Description' => "Tabela Opis", - 'Database Manager' => "Database Manager", - 'Manage databases' => "Upravljanje baz podatkov", - 'Backup database on the server as SQL dump' => "Backup baze na strežniku SQL smetišče", - 'Backup Database' => "Backup Database", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "Vaš brskalnik zdi, da je zelo stara in ne podpira vseh funkcij, potrebnih za delovanje MyWebSQL.", - 'Try using a newer version of the browser to run this application.' => "Poskusite z novejšo različico brskalnika za zagon tega programa.", - - // text used on various screens in the interface - 'Visit Project website' => "Obiščite spletno stran projekta", - 'Version' => "verzija", - 'Loading' => "Nalaganje", - 'Quick Edit Options' => "Quick Edit Options", - 'Press {{KEY}} to set NULL' => "Sporočilo {{KEY}} določiti NULL", - 'MySQL Server' => "MySQL Server", - 'Logged in as: {{USER}}' => "Prijavljen kot: {{USER}}", - 'Results' => "Rezultati", - 'Messages' => "Sporočila", - 'Information' => "Informacije", - 'History' => "Zgodovina", - 'There are no results to show in this view' => "Ni rezultatov za prikaz v tem pogledu", - 'Refresh results' => "Osveži rezultati", - 'Please wait' => "Prosimo, počakajte", - 'Query All' => "Poizvedba Vse", - 'Query' => "Poizvedba", - 'Add Record' => "Add Record", - 'Delete Record(s)' => "Delete Record (s)", - 'Update Record(s)' => "Posodobitev Record (s)", - 'Generate SQL' => "Ustvari SQL", - 'Database name' => "Database ime", - 'Select database after creation' => "Izberite bazo podatkov po ustanovitvi", - 'Database connection failed to the server' => "Database povezava ni uspela s strežnikom", - 'Host' => "Host", - 'User' => "Uporabnik", - 'Select a database to begin' => "Izberite zbirko podatkov za začetek", - 'Select/unselect All records' => "Izberite nezadovoljstva Vsi zapisi", - 'Primary key column' => "Stolpcu primarnega ključa", - 'Unique key column' => "Enkratna ključna stolpec", - 'Showing records {{START}} - {{END}}' => "Prikazujem zapise {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "Prikaz prvi {{MAX}} arhiv", - '1 query successfully executed' => "1 izraz uspešno izvedenih", - '{{NUM}} queries successfully executed' => "{{NUM}} poizvedbe uspešno izvršen", - '{{NUM}} record(s) were affected' => "{{NUM}} zapis (i) so bile prizadete", - '{{NUM}} record(s) updated' => "{{NUM}} evidenco (-e) posodobljene", - 'Error occurred while executing the query' => "Prišlo je do napake pri izvršitvi poizvedbo", - '{{NUM}} queries failed to execute' => "{{NUM}} poizvedbe ni uspelo izvesti", - 'Click to view/edit column data [{{NUM}} Bytes]' => "Kliknite za ogled / urejanje stolpcev podatkov [{{NUM}} Bytes]", - 'Blob data is not editable' => "Blob podatkov ni mogoče urejati", - 'Blob data saved' => "Blob podatki shranjeni", - 'Failed to save blob data' => "Nič ni bilo mogoče shraniti podatkov", - 'The process with id [{{PID}}] was killed' => "Proces id [{{PID}}] je bil ubit", - 'No such process [id = {{PID}}]' => "Takšnega postopka [id = {{PID}}]", - 'Select a process and click the button to kill the process' => "Izberite proces in kliknite na gumb, da bi ubil proces", - 'Process ID' => "Process ID", - 'Command' => "Command", - 'Time' => "Time", - 'Info' => "Info", - 'Kill Process' => "Kill Process", - 'Failed to get process list' => "Ni uspelo priti proces seznam", - 'The command executed successfully' => "Ukaz izvede uspešno", - 'Invalid server configuration' => "Invalid server konfiguracije", - 'Invalid Credentials' => "Neveljavna Mandatno", - 'New database successfully created' => "Nova zbirka podatkov je uspešno ustvarjen", - 'File upload failed. Please try again' => "File upload ni uspelo. Prosimo, poskusite znova", - 'No queries were executed during import' => "Št poizvedbe so bile izvršene med uvozom", - 'Maximum upload filesize is {{SIZE}}' => "Največja upload velikost datoteke je {{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "Podprti filetypes / končnice so: ({{seznam}})", - 'Database summary' => "Database povzetek", - 'Server Variables' => "Spremenljivke Server", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "Vsak obstoječi objekt z istim imenom, je treba ročno padla pred izvršitvijo ustvarjanje ukaz", - 'Only create commands are accepted' => "Samo ustvarjanje ukazi so sprejete", - 'User ID' => "Uporabniški ID", - 'Password' => "Geslo", - 'Login' => "Prijava", - 'Create new database object' => "Ustvarjanje nove zbirke podatkov predmeta", - 'Enter command for object creation' => "Vnesite ukaz za oblikovanje objekta", - 'Submit' => "Pošlji", - 'Show blob data as: {{TYPE}}' => "Pokaži Nič podatkov, kot so: {{TYPE}}", - 'Blob data for column {{NAME}}' => "Blob podatkov za stolpec {{ime}}", - 'Create command for {{TYPE}} {{NAME}}' => "Ustvarite ukaz za {{TYPE}} {{NAME}}", - 'Table Engine (type)' => "Tabela motorja (tip)", - 'Change Table Type' => "Spremeni tabelo Type", - 'The requested page is not available on the server' => "Zahtevana stran ni na voljo na strežniku", - 'Error' => "Napaka", - 'It appears that you attempted to submit an invalid request to the server' => "Zdi se, da ste poskušali, da predloži neveljaven zahtevek na strežnik", - 'The request has been denied. Reloading the page might solve the problem' => "Zahteva je bila zavrnjena. Naložite stran bi lahko rešili problem", - 'Access Denied' => "Dostop zavrnjen", - 'Help' => "Pomoč", - 'To see most up-to-date help contents, please visit {{LINK}}' => "Če želite videti najbolj up-to-dan pomagati vsebino, obiščite {{LINK}}", - 'It appears that your browser session has expired' => "Zdi se, da je potekel brskalnika", - 'Please refresh the webpage to re-login' => "Prosimo, osvežite spletno stran za ponovno prijavo", - 'Table information' => "Tabela informacije", - 'Edit' => "Uredi", - 'Save' => "Shrani", - 'Either the database is empty, or there was an error retrieving list of database objects' => "Vsaka baza je prazna, ali je prišlo do napake seznam predmetov zbirke podatkov", - 'Please try closing and re-opening this dialog again' => "Poskusite zapiranje in ponovno odpiranje tega pogovornega ponovno", - 'Structure' => "Struktura", - 'Table Data' => "Tabela podatkov", - 'Structure and Table Data' => "Struktura in podatki tabele", - 'Options' => "Možnosti", - 'Set Auto increment field values to NULL' => "Set Auto vrednosti polja inkrement NULL", - 'Add DROP command before create statements' => "Dodaj DROP ukaz preden ustvarite izjav", - 'Export' => "Export", - 'Import' => "Import", - 'Export Database' => "Export Database", - 'Export Table' => "Izvoz tabele", - 'Server information' => "Server informacije", - 'Server' => "Strežnik", - 'Version comment' => "Različica komentar", - 'Character sets' => "Nabori znakov", - 'Server character set' => "Server nabor znakov", - 'Client character set' => "Client nabor znakov", - 'Database character set' => "Database nabor znakov", - 'Results character set' => "Rezultati nabor znakov", - 'Export As' => "Kot Export", - 'Insert Statements' => "Vstavi Izjave", - 'Include field names in query' => "Vključi imena polj v poizvedbi", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Navadno besedilo (en zapis na vrstico)", - 'Fields separated by:' => "Polja so ločena s:", - 'Export Results' => "Izvoz Rezultati", - 'Select SQL batch file to import' => "Izberite SQL paketni datoteki za uvoz", - 'Continue processing even if error occurs' => "Nadaljuje z obdelavo, tudi če pride do napake", - 'Basic Information' => "Osnovni podatki", - 'Table Properties' => "Lastnosti tabele", - 'Table Name' => "Tabela Ime", - 'Field Name' => "Ime polja", - 'Data Type' => "Vrsta podatkov", - 'Length' => "Dolžina", - 'Default value' => "Privzeta vrednost", - 'Unsigned' => "Nepodpisani", - 'Zero Fill' => "Zero polnila", - 'Primary Key' => "Primarni ključ", - 'Auto Increment' => "Auto Prirastek", - 'Not NULL' => "Ni NULL", - 'Character Set' => "Character Set", - 'Collation' => "Primerjavo", - 'Comment' => "Komentar", - 'Waiting for table information to be submitted' => "Čakam informacijska tabla, ki se predložijo", - 'Add field' => "Dodaj polje", - 'Delete selected field' => "Brisanje izbranega polja", - 'Clear Table Information' => "Clear Tabela Informacije", - 'List of values' => "Seznam vrednosti", - 'Query Results' => "Rezultati poizvedbe", - 'Data for {{TABLE}}' => "Podatki za {{TABLE}}", - 'Select tables to be analyzed/repaired' => "Izberite tabele za analizo / popravi", - 'Operation to perform' => "Delovanje za opravljanje", - 'Analyze' => "Analizirajte", - 'Check' => "Preveri", - 'Optimize' => "Optimizirajte", - 'Repair' => "Popravila", - 'Skip Binary logging' => "Skip Binary sečnje", - 'Default' => "Default", - 'Quick' => "Quick", - 'Fast' => "Fast", - 'Medium' => "Medium", - 'Extended' => "Extended", - 'Changed' => "Spremenjeno", - 'Use Frm files (MyISAM tables)' => "Uporaba FRM datoteke (MyISAM tabele)", - 'User Information' => "Podatki o uporabniku", - 'Global Privileges' => "Global privilegijih", - 'Database Privileges' => "Database privilegijih", - 'Import File' => "Import File", - 'Index Manager' => "Index Manager", - 'Edit table structure' => "Edit struktura tabele", - 'Save All Changes' => "Shrani vse spremembe", - 'Changes are not saved until you press [Save All Changes]' => "Spremembe se ne shranijo, dokler ne pritisnete [Shrani vse spremembe]", - 'Field Length' => "Field Dolžina", - 'Select objects to include in export' => "Izberite predmete, da v izvozni", - 'Export type' => "Izvoz tip", - 'Select All/None' => "Izberi Vse / Nič", - 'Add User' => "Dodaj uporabnika", - 'Update User' => "Posodobi uporabnika", - 'Delete selected User' => "Izbriši izbrane Uporabnik", - 'Remove Password' => "Odstrani geslo", - 'Select tables to search' => "Izberite tabel za iskanje", - 'Search Options' => "Možnosti iskanja", - 'Search in following field types' => "Iskanje v naslednje vrste polj", - 'Numeric Fields' => "Numerična polja", - 'Character Fields' => "Character Fields", - 'Text Fields' => "Besedilna polja", - 'Date/Time Fields' => "Datum / čas Fields", - 'Comparison Type' => "Primerjava Tip", - 'Text to search' => "Besedilo za iskanje", - 'Search' => "Iskanje", - 'Search Results' => "Rezultati iskanja", - 'Number of matches' => "Število tekem", - 'Search results for {{KEYWORD}} in the database' => "Rezultati iskanja za {{KEYWORD}} v bazi", - '{{NUM}} match(es)' => "{{NUM}} tekmo (es)", - 'Copy query to editor' => "Kopiranje poizvedbe editor", - 'Done' => "Končano", - 'SQL Editor' => "SQL Editor", - 'Create Copy' => "Ustvari Kopiraj", - 'Minimize All' => "Minimize All", - 'Copy Record(s)' => "Kopiraj Zapis (i)", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "Ločene z vejico (CSV za Excel)", - 'Select data file to import' => "Izberite podatkovno datoteko za uvoz", - 'Select table for data import' => "Izberi tabelo za uvoz podatkov", - 'First line contains column names' => "Prva vrstica vsebuje imena stolpcev", - 'Select objects to operate upon' => "Izberi objekti za delovanje na", - 'Operations to perform' => "Postopki opravljajo", - 'Add prefix string to name' => "Dodaj predpono niz ime", - 'Delete prefix string from name' => "Izbrišite predpono niz z imenom", - 'Command text' => "Ukaz besedilo", - 'DROP selected database objects' => "DROP izbrane predmete", - 'Batch operation results' => "Serije delovanje rezultati", - 'Operation' => "Delovanje", - 'Status' => "Status", - '{{NUM}} queries generated' => "{{NUM}} poizvedbe ustvari", - 'Please select one or more operations to perform' => "Izberite eno ali več dejavnosti, za opravljanje", - 'Quick Search' => "Hitro iskanje", - '{{NAME}} client library is not installed' => "{{NAME}} je stranka knjižnica ni nameščen", - '{{NAME}} extension is not installed' => "{{NAME}} je razširitev ni nameščena", - 'SQLite database folder is inaccessible or not writable' => "SQLite baze mapa nedostopen ali ni zapisljiva", - 'Maximize/Restore Results Pane' => "Povečajte / Restore rezultate Podokno", - 'Select databases to operate upon' => "Izberite baze podatkov, ki delujejo na", - 'DROP selected databases' => "DROP izbrane baze podatkov", - 'The following operation is irreversible' => "Naslednji postopek je nepovraten", - 'Potential data loss might occur' => "Potencialno izgubo podatkov lahko pride do", - 'Add TRUNCATE command before insert statements' => "Dodaj Skrajšati ukaz, preden vstavite izkazov", - 'Select objects to include in backup' => "Izberite predmete, da v backup", - 'Backup folder does not exist or is not writable' => "Backup mapa ne obstaja ali ni zapisljiva", - 'Backup type' => "Backup vrste", - 'Database backup successfully created' => "Baze podatkov backup uspešno ustvarjen", - 'Failed to create database backup' => "Nisem uspel ustvariti varnostno kopijo baze podatkov", - 'Generate Bulk insert statements' => "Ustvarjajo Bulk vstavljanje izjave", - 'Maximum size of SQL statement' => "Največja velikost SQL", - 'Show record count with table names' => "Prikaži rekordno število z imeni tabel", - 'Sort Table listing by' => "Razvrsti Tabela seznam, ki ga", - 'Name' => "Ime", - 'Last Update Time' => "Zadnja posodobitev čas", - 'Maximum records to display in result set' => "Največje število zapisov za prikaz v nizu rezultatov", - 'Show popup dialog for editing large text data' => "Prikaži pojavno okno za urejanje velikih besedilnih podatkov", - 'Miscellaneous' => "Razno", - 'Reset all confirmation dialogs' => "Ponastavi vse pogovorna okna potrditve", - 'Record Editing' => "Beleži urejanje", - 'Exclude Table type' => "Izključuje vrsto Tabela", - 'Exclude Table Character set' => "Izključuje Tabela nabor znakov", - 'Backup filename' => "Backup filename", - 'Invalid filename format' => "Neveljavna oblika filename", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "vse", - 'all selected' => "vse izbrane", - 'An error occured while refreshing the object list.' => "Prišlo do napake osvežitev seznama predmet.", - 'Are you sure you want to clear all field information from table?' => "Ste prepričani, da želite izbrisati vse podatke s terena iz tabele?", - 'Are you sure you want to delete this user account?' => "Ali ste prepričani, da želite izbrisati ta uporabniški račun?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "Ali ste prepričani, da želite DROP vseh predmetov iz zbirke podatkov {{NAME}}?", - 'Are you sure you want to DROP selected objects?' => "Ali ste prepričani, da želite, da se opusti izbrane predmete?", - 'Are you sure you want to DROP the database {{NAME}}?' => "Ali ste prepričani, da želite DROP baze podatkov {{NAME}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "Ali ste prepričani, da želite, da se opusti ta predmet? {{NAME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "Ali ste prepričani, da želite izvesti {{SELECTED}} vprašanja?", - 'Are you sure you want to logout?' => "Ali ste prepričani, da želite odjaviti?", - 'Are you sure you want to truncate the table {{NAME}}?' => "Ali ste prepričani, da želite prirezati tabelo {{NAME}}?", - 'Blob Data [{{SIZE}}]' => "Blob podatkov [{{SIZE}}]", - 'Cancel' => "Prekliči", - 'Check for Updates' => "Preveri za posodobitve", - 'Clear command history?' => "Počisti ukaz zgodovine?", - 'Close' => "Zapri", - 'Confirm Action' => "Potrdi akciji", - 'Confirm and do not ask me again about this choice' => "Potrdi in ne sprašuj me več o tej izbiri", - 'Copy Object' => "Kopiranje Object", - 'Create Database' => "Ustvarjanje zbirke podatkov", - 'Create Primary Index on this field' => "Ustvari Primary indeksa na tem področju", - 'Databases' => "Baze podatkov", - 'Default value [Use quotes to specify string values]' => "Privzeta vrednost [uporabite narekovaje določiti niz vrednosti]", - 'Disallow NULL values in Field' => "Izklopi NULL vrednosti v polje", - 'Enter new index name' => "Vnesite novo ime indeksa", - 'Enter new name for the database object' => "Vnesite novo ime za predmet zbirke podatkov", - 'Enter the text to search in database' => "Vnesite besedilo za iskanje v zbirki podatkov", - 'Error' => "Napaka", - 'Events' => "Dogodki", - 'Execute query' => "Izvesti povprasevanje", - 'Exports results' => "Izvoz rezultatov", - 'Failed to refresh the results.' => "Ni mogoče osvežiti rezultate.", - 'Field Datatype' => "Field Datatype", - 'Field Name' => "Ime polja", - 'Field value is Auto Incremented' => "Vrednost polja je Auto poveča", - 'Functions' => "Funkcije", - 'Indexes Updated' => "Kazala Posodobljeno", - 'Maximum Length of field value' => "Največja Dolžina polja vrednosti", - 'Navigation Error. Try reloading the page' => "Navigacijska napaka. Osvežite stran", - 'New settings saved and applied' => "Nove nastavitve shranijo in uporabijo", - 'New version is available' => "Nova različica je na voljo", - 'Next' => "Naprej", - 'No' => "Št", - 'No Table selected' => "Tabela št izbrano", - 'Not enough room to show this pane.' => "Ni dovolj prostora za pokazati podokno.", - 'OK' => "OK", - 'One or more field information is incomplete' => "Eden ali več področju informacij je nepopolna", - 'Open' => "Odpri", - 'Operation failed' => "Operacija ni uspela", - 'Pad field values with leading zeros' => "Pad vrednosti polja z vodilnimi ničlami", - 'Pane' => "Pane", - 'Passwords do not match' => "Gesla se ne ujemata", - 'Pin' => "Pin", - 'Please select one or more operations to perform' => "Izberite eno ali več dejavnosti, za opravljanje", - 'Please type in one or more queries in the SQL editor!' => "Prosimo, vnesite v eni ali več poizvedb v urejevalniku SQL!", - 'Please wait...' => "Prosimo počakajte ...", - 'Previous' => "Prejšnja", - 'Procedures' => "Postopki", - 'Prompt' => "Prompt", - 'Refresh results' => "Osveži rezultati", - 'Refreshing object list' => "Osvežilni objekt seznam", - 'Rename Object' => "Preimenuj Object", - 'Resize' => "Resize", - 'Results page:' => "Rezultati stran:", - 'Select a database to view privileges for the user' => "Izberite zbirko podatkov, da si ogledate privilegijev za uporabnika", - 'Select an index to view / edit its details' => "Izberite kazalo, da si ogledate / urejanje svojih podrobnosti", - 'Select at least one field type for searching' => "Izberite vsaj eno vrsto polja za iskanje", - 'Select objects to operate upon' => "Izberi objekti za delovanje na", - 'selector' => "izbirnik", - 'Slide Open' => "Slide Open", - 'Table information requires at least one valid field' => "Tabela informacij zahteva vsaj en veljaven polje", - 'Table name is required' => "Ime tabele je potrebno", - 'Table successfully created' => "Tabela uspešno ustvarjen", - 'Table successfully modified' => "Tabela uspešno spremenjenih", - 'Tables' => "Mize", - 'Text Data [{{SIZE}}]' => "Besedilni podatki [{{SIZE}}]", - 'There is no record in the results to export' => "Ni nobenega zapisa v rezultatih za izvoz", - 'This attribute is not required for selected field type' => "Ta atribut se ne zahteva za izbrano vrsto polja", - 'Triggers' => "Sprožilci", - 'Un-Pin' => "Un-Pin", - 'Unsigned numbered field only' => "Nepodpisani oštevilčeno polje le", - 'Update check failed' => "Posodobitev preverjanje ni uspelo", - 'User information is incomplete or invalid' => "Uporabnik podatki nepopolni ali neveljavna", - 'User Manager' => "Uporabnik Manager", - 'Views' => "Pogledov", - 'WARNING' => "OPOZORILO", - 'Yes' => "Da", - 'You have the latest version' => "Imate najnovejšo različico", - - ); -?> diff --git a/lang/sq.php b/lang/sq.php deleted file mode 100644 index fd8858f..0000000 --- a/lang/sq.php +++ /dev/null @@ -1,463 +0,0 @@ - "Baza e të dhënave përdorin", - 'Drop Database' => "Drop Baza e të dhënave", - 'Empty Database' => "Baza e të dhënave Empty", - 'Drop all tables from this database' => "Drop gjitha tabelave nga kjo bazë të dhënash", - 'Select statement' => "Deklarata Zgjidh", - 'Insert statement' => "Deklarata Fut", - 'Update statement' => "Deklarata Update", - 'Describe' => "Përshkruaj", - 'Show create command' => "Show krijuar komandë", - 'View data' => "Shiko të dhënave", - 'Alter Table' => "Alter Tabela", - 'Indexes' => "Indexes", - 'Engine Type' => "Lloji Engine", - 'More operations' => "operacionet më shumë", - 'Truncate' => "Shkurtoj", - 'Drop' => "Rënie", - 'Rename' => "Riemërtoj", - 'Export table data' => "Tabela e të dhënave Export", - 'Create Table' => "Krijo Tabela", - 'Create View' => "Krijo Shiko", - 'Create Procedure' => "Krijo Procedura", - 'Create Function' => "Krijo Funksioni", - 'Create Trigger' => "Krijo këmbëz", - 'Create Event' => "Krijo Event", - 'Show/Hide Panel' => "Show / Hide Panel", - 'Show/Hide Header' => "Show / Hide Header", - 'Copy all queries to clipboard' => "Kopje të të gjitha pyetjet ne shenime", - 'Clear history' => "Pastro historinë", - 'Copy Column values' => "Copy Column vlerat", - 'Copy to clipboard' => "Kopje ne shenime", - 'Generate SQL Filter' => "Generate SQL Filter", - 'Database Manager' => "Menaxher Database", - 'Manage databases' => "Menaxhuar bazat e të dhënave", - - // main menu related text - 'Database' => "Baza e të dhënave", - 'Refresh' => "Freskoj", - 'Refresh database object list' => "objekt Refresh bazës së të dhënave lista", - 'Create new' => "Të krijuar të reja", - 'Export' => "Eksport", - 'Export database to external file' => "bazës së të dhënave për Eksport file jashtme", - 'Objects' => "Objektet", - 'Create Table' => "Krijo Tabela", - 'Create a new table in the database' => "Krijo një tabelë të re në bazën e të dhënave", - 'Create View' => "Krijo Shiko", - 'Create a new view in the database' => "Krijo një pamje të re në bazën e të dhënave", - 'Create Stored Procedure' => "Ruajtur Krijo Procedura", - 'Create a new stored procedure in the database' => "Krijo një procedurë të re të ruhet në bazën e të dhënave", - 'Create Function' => "Krijo Funksioni", - 'Create a new user defined function in the database' => "Krijo një përdorues të ri të përcaktuar funksionin në bazën e të dhënave", - 'Create Trigger' => "Krijo këmbëz", - 'Create a new trigger in the database' => "Krijo një shkas të ri në bazën e të dhënave", - 'Create Event' => "Krijo Event", - 'Create a new event in the database' => "Krijo një ngjarje të re në bazën e të dhënave", - 'Data' => "Të dhëna", - 'Import batch file' => "file Import grumbull", - 'Import multiple queries from batch file' => "Import pyetje të shumta nga file batch", - 'Export database' => "bazës së të dhënave Export", - 'Export database to batch file as sql dump' => "bazës së të dhënave për Eksport file batch si hale sql", - 'Export current results' => "Rezultatet Export tanishme", - 'Export query results to clipboard or files' => "query Rezultatet e eksportit të papastër ose fotografi", - 'Tools' => "Tools", - 'Process Manager' => "Procesi Manager", - 'View and manage database processes' => "Shiko dhe menaxhuar proceset e bazës së të dhënave", - 'Repair Tables' => "Tabelat Repair", - 'Analyze and repair database tables' => "Analizuar dhe tabelat e databazës riparim", - 'User Manager' => "User Manager", - 'Manage database users' => "Menaxhimin e bazës së të dhënave shfrytëzuesit", - 'Search in Database' => "Kërko në Database", - 'Search for text in the database' => "Kërko për tekst në bazën e të dhënave", - 'Information' => "Informacion", - 'Server/Connection Details' => "/ Connection Server Details", - 'View server configuration' => "Konfigurimi View server", - 'View server and connection details' => "View server dhe lidhje detaje", - 'Server Variables' => "Server Variablat", - 'Database Summary' => "Baza e të dhënave Përmbledhje", - 'View current database summary stats' => "përmbledhje aktuale të bazës së të dhënave Shiko stats", - 'Interface' => "Interface", - 'Options' => "Options", - 'Configure application options' => "aplikim opsionet Konfiguro", - 'UI Theme' => "UI Theme", - 'Database Objects' => "Baza e të dhënave Objects", - 'Toggle Object Viewer' => "Viewer Toggle Object", - 'Help contents' => "Përmbajtja Ndihmë", - 'Learn the basics of using MyWebSQL' => "Mësojnë bazat e përdorimit MyWebSQL", - 'QuickStart Tutorials' => "QuickStart Tutorials", - 'See quick hands-on tutorial of MyWebSQL interface' => "Shih interface shpejtë duart në tutorial i MyWebSQL", - 'Online documentation' => "Online dokumentacionit", - 'View online documentation on project website' => "Shiko dokumentacionin online në faqen e internetit të projektit", - 'Request a Feature' => "Kërkesa një Feature", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "Nëse dëshironi më shfaqë tuaj të preferuar të jetë pjesë e MyWebSQL, ju lutemi klikoni këtu për të informuar në lidhje me të", - 'Report a Problem' => "Raporti i një Problem", - 'Check for updates' => "Kontrolloni për informatat më", - 'Check for updated versions of the application online' => "Kontrollo për versionet e përditësuar të aplikimit online", - 'Logout' => "Logout", - 'Logout from this session' => "Largohu nga ky sesion", - 'Language' => "Gjuhën", - 'SQL Editor' => "SQL Editor", - 'Toggle SQL Editor' => "Toggle SQL Editor", - 'Experimental' => "Eksperimental", - 'Import table data' => "Importuar të dhënat tryezë", - 'Import table data from external file' => "Të dhënat e importit tavolinë nga skedari i jashtëm", - 'Batch operations' => "Operacionet grumbull", - 'Perform one or more batch operations on database' => "Kryejnë një ose më shumë operacione grumbull mbi bazën e të dhënave", - 'Create a new schema in the database' => "Krijo një skemë të re në bazën e të dhënave", - 'Create Schema' => "Krijo skema", - 'Table Description' => "Përshkrimi Tabela", - 'Database Manager' => "Menaxher Database", - 'Manage databases' => "Menaxhuar bazat e të dhënave", - 'Backup database on the server as SQL dump' => "Baza e të dhënave backup në server si hale SQL", - 'Backup Database' => "Database Backup", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "Shfletuesi juaj duket të jetë shumë i vjetër dhe nuk e mbështet të gjitha karakteristikat e nevojshme për të drejtuar MyWebSQL.", - 'Try using a newer version of the browser to run this application.' => "Provoni të përdorni një version më të ri të shfletuesit të drejtuar këtë kërkesë", - - // text used on various screens in the interface - 'Visit Project website' => "Vizito faqen e internetit e projektit", - 'Version' => "version", - 'Loading' => "Ngarkim", - 'Quick Edit Options' => "Quick Edit Options", - 'Press {{KEY}} to set NULL' => "Press {{KEY}} për të vendosur NULL", - 'MySQL Server' => "MySQL Server", - 'Logged in as: {{USER}}' => "Regjistruar si: {{USER}}", - 'Results' => "Rezultatet", - 'Messages' => "Mesazhet", - 'Information' => "Informacion", - 'History' => "Histori", - 'There are no results to show in this view' => "Nuk ka rezultate për të treguar në këtë pikëpamje", - 'Refresh results' => "Rezultatet Refresh", - 'Please wait' => "Ju lutem prisni", - 'Query All' => "Query gjitha", - 'Query' => "Pyetje", - 'Add Record' => "Add Record", - 'Delete Record(s)' => "Regjistro Delete (s)", - 'Update Record(s)' => "Regjistro Update (s)", - 'Generate SQL' => "Generate SQL", - 'Database name' => "Emri Baza e të dhënave", - 'Select database after creation' => "Zgjidh pas krijimit të bazës së të dhënave", - 'Database connection failed to the server' => "Baza e të dhënave lidhje dështoi me server", - 'Host' => "Mori", - 'User' => "Përdorues", - 'Select a database to begin' => "Zgjidh një bazë të dhënash për të filluar", - 'Select/unselect All records' => "Zgjidhni / hequr të gjitha të dhënat", - 'Primary key column' => "kolonën fillore kryesor", - 'Unique key column' => "kolonën Unique kryesor", - 'Showing records {{START}} - {{END}}' => "Duke shfaqur të dhënat {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "Shikimet e parë {{MAX}} të dhënat vetëm", - '1 query successfully executed' => "1 pyetje ekzekutuar me sukses", - '{{NUM}} queries successfully executed' => "{{NUM}} queries ekzekutuar me sukses", - '{{NUM}} record(s) were affected' => "{{NUM}} rekord (s) u prekën", - '{{NUM}} record(s) updated' => "{{NUM}} rekord (s) updated", - 'Error occurred while executing the query' => "Gabim gjatë ekzekutimit query", - '{{NUM}} queries failed to execute' => "{{NUM}} pyetje dështuar që të ekzekutojë", - 'Click to view/edit column data [{{NUM}} Bytes]' => "Kliko për të parë / të redaktoni të dhënat column [{{NUM}} Bytes]", - 'Blob data is not editable' => "të dhëna nuk është i editable Blob", - 'Blob data saved' => "Blob dhënat ruhen", - 'Failed to save blob data' => "Dështuar për të ruajtur të dhënat pikë", - 'The process with id [{{PID}}] was killed' => "Procesin me id [{{PID}}] u vra", - 'No such process [id = {{PID}}]' => "Nuk ka një proces të tillë [id = {{PID}}]", - 'Select a process and click the button to kill the process' => "Zgjidh një proces dhe klikoni në butonin për të vrarë e procesit të", - 'Process ID' => "Proces ID", - 'Command' => "Komandë", - 'Time' => "Time", - 'Info' => "Info", - 'Kill Process' => "Procesi i vrasin", - 'Failed to get process list' => "Nuk arriti të marrë listën e procesit të", - 'The command executed successfully' => "Komandën e ekzekutuar me sukses", - 'Invalid server configuration' => "Invalid server configuration", - 'Invalid Credentials' => "Evidenca trajnimi / certifikimi të pavlefshme", - 'New database successfully created' => "bazës së të dhënave të reja u krijua me sukses", - 'File upload failed. Please try again' => "File upload dështuar. Ju lutemi provoni përsëri", - 'No queries were executed during import' => "Nuk ka pyetje u ekzekutuan gjatë importit të", - 'Maximum upload filesize is {{SIZE}}' => "Maksimale upload filesize është {{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "filetypes Përkrahur / extensions janë: ({{LIST}})", - 'Database summary' => "përmbledhje Baza e të dhënave", - 'Server Variables' => "Server Variablat", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "Çdo objekt ekzistues me të njëjtin emër duhet të hiqet dorë para se të ekzekutimit të komandës krijimin", - 'Only create commands are accepted' => "Vetëm të krijuar komandat janë pranuar", - 'User ID' => "User ID", - 'Password' => "Fjalëkalimi", - 'Login' => "Hyrje", - 'Create new database object' => "Krijo objekt të ri të bazës së të dhënave", - 'Enter command for object creation' => "Enter urdhër për krijimin e objektit", - 'Submit' => "Submit", - 'Show blob data as: {{TYPE}}' => "Show pikoj dhënat si: {{TYPE}}", - 'Blob data for column {{NAME}}' => "Blob dhënat për kolonë {{NAME}}", - 'Create command for {{TYPE}} {{NAME}}' => "Krijo komandën për {{TYPE}} {{NAME}}", - 'Table Engine (type)' => "Tabela Engine (lloji)", - 'Change Table Type' => "Lloji Ndryshimi Tabela", - 'The requested page is not available on the server' => "Faqja e kërkuar nuk është në dispozicion në server", - 'Error' => "Gabim", - 'It appears that you attempted to submit an invalid request to the server' => "Duket se ju u përpoq të paraqesë një kërkesë të pavlefshme në server", - 'The request has been denied. Reloading the page might solve the problem' => "Kërkesa është refuzuar. Reloading faqe mund të zgjidhë problemin", - 'Access Denied' => "Refuzohet hyrja", - 'Help' => "Ndihmë", - 'To see most up-to-date help contents, please visit {{LINK}}' => "Për të parë më up-to-date përmbajtjen e ndihmës, ju lutem vizitoni {{LINK}}", - 'It appears that your browser session has expired' => "Duket se seancën e shfletuesit tuaj ka skaduar", - 'Please refresh the webpage to re-login' => "Ju lutemi të rifreskoni faqen të ri-hyrje me emrin përkatës", - 'Table information' => "Tabela e informacionit", - 'Edit' => "Redaktoj", - 'Save' => "Ruaj", - 'Either the database is empty, or there was an error retrieving list of database objects' => "Ose bazës së të dhënave është bosh, ose ka pasur një listë gabim, tërheqja e objekteve të bazës së të dhënave", - 'Please try closing and re-opening this dialog again' => "Ju lutem provoni mbylljes dhe ri-hapjen e më këtë dritare dialogu", - 'Structure' => "Strukturë", - 'Table Data' => "Tabela të dhënave", - 'Structure and Table Data' => "Struktura dhe të dhënave Tabela", - 'Options' => "Options", - 'Set Auto increment field values to NULL' => "Set fushë Auto rritje vlerave të NULL", - 'Add DROP command before create statements' => "Add komandën DROP para se të krijojë deklaratat", - 'Export' => "Eksport", - 'Import' => "Import", - 'Export Database' => "Export Baza e të dhënave", - 'Export Table' => "Export Tabela", - 'Server information' => "informacion Server", - 'Server' => "Server", - 'Version comment' => "Komenti Version", - 'Character sets' => "Karakteri përcakton", - 'Server character set' => "karakter Server vendosur", - 'Client character set' => "Klienti karakter të vendosur", - 'Database character set' => "Baza e të dhënave karakter të vendosur", - 'Results character set' => "Rezultatet e karaktereve", - 'Export As' => "Export Si", - 'Insert Statements' => "Vendos Deklaratat", - 'Include field names in query' => "fushë emrat Përfshi në pyetje", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Plain Text (Një rekord per line)", - 'Fields separated by:' => "Fushat e ndarë nga:", - 'Export Results' => "Rezultatet Export", - 'Select SQL batch file to import' => "Zgjidh file SQL grumbull për të importuar", - 'Continue processing even if error occurs' => "Vazhdo përpunimit edhe në qoftë se gabimi ndodh", - 'Basic Information' => "Basic Information", - 'Table Properties' => "Tabela Prona", - 'Table Name' => "Emri Tabela", - 'Field Name' => "Emri Fusha", - 'Data Type' => "Lloji të dhënave", - 'Length' => "Gjatësi", - 'Default value' => "Vlera Default", - 'Unsigned' => "Unsigned", - 'Zero Fill' => "Plotësoni zero", - 'Primary Key' => "Kyç primar", - 'Auto Increment' => "Auto rritës", - 'Not NULL' => "Jo NULL", - 'Character Set' => "Character Set", - 'Collation' => "Sistemim", - 'Comment' => "Koment", - 'Waiting for table information to be submitted' => "Duke pritur për informacion tryezë të dorëzohet", - 'Add field' => "Add fushë", - 'Delete selected field' => "fushë Shtoje", - 'Clear Table Information' => "Informacione të qarta Tabela", - 'List of values' => "Lista e vlerave", - 'Query Results' => "Rezultatet e Query", - 'Data for {{TABLE}}' => "Të dhënat për {{TABLE}}", - 'Select tables to be analyzed/repaired' => "Zgjidhni tavolina për t'u analizuar / riparohet", - 'Operation to perform' => "Operacioni për të kryer", - 'Analyze' => "Analizo", - 'Check' => "Kontrollo", - 'Optimize' => "Jam optimist", - 'Repair' => "Riparim", - 'Skip Binary logging' => "Skip Binary logging", - 'Default' => "Default", - 'Quick' => "Shpejtë", - 'Fast' => "Shpejtë", - 'Medium' => "Medium", - 'Extended' => "Extended", - 'Changed' => "Changed", - 'Use Frm files (MyISAM tables)' => "Përdorimi fotografi Frm (tabela MyISAM)", - 'User Information' => "User Informacione", - 'Global Privileges' => "Global Privilegjet", - 'Database Privileges' => "Baza e të dhënave Privilegjet", - 'Import File' => "Import File", - 'Index Manager' => "Index Manager", - 'Edit table structure' => "Edit Struktura e tabelës", - 'Save All Changes' => "Ruaj Të gjitha Ndryshimet", - 'Changes are not saved until you press [Save All Changes]' => "Ndryshime nuk janë ruajtur derisa ju të shtypni [Save gjitha Ndryshimet]", - 'Field Length' => "Length fushë", - 'Select objects to include in export' => "Zgjidhni objekte për të përfshirë në eksport", - 'Export type' => "Lloji Export", - 'Select All/None' => "Përzgjidh të gjitha / Asnjë", - 'Add User' => "Shto User", - 'Update User' => "Update User", - 'Delete selected User' => "Shtoje User", - 'Remove Password' => "Hiq Fjalëkalimi", - 'Select tables to search' => "Zgjidh tavolina për të kërkuar", - 'Search Options' => "Search Options", - 'Search in following field types' => "Kërko në llojet e mëposhtme fushë", - 'Numeric Fields' => "Numerike Fields", - 'Character Fields' => "Karakteri Fields", - 'Text Fields' => "Text Fields", - 'Date/Time Fields' => "Date / Time Fields", - 'Comparison Type' => "Krahasimi Type", - 'Text to search' => "Tekst për të kërkuar", - 'Search' => "Kërko", - 'Search Results' => "Rezultatet e kërkimit", - 'Number of matches' => "Numri i ndeshjeve", - 'Search results for {{KEYWORD}} in the database' => "Rezultatet e kërkimit për {{KEYWORD}} në bazën e të dhënave", - '{{NUM}} match(es)' => "{{NUM}} ndeshje (es)", - 'Copy query to editor' => "query Copy për editor", - 'Done' => "Done", - 'SQL Editor' => "SQL Editor", - 'Create Copy' => "Krijo Copy", - 'Minimize All' => "Minimize gjitha", - 'Copy Record(s)' => "Copy Record (s)", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "Ndarë me Presje (CSV për Excel)", - 'Select data file to import' => "Zgjidh dosjen e të dhënave për të importuar", - 'Select table for data import' => "Zgjidh tabelën për import të dhënave", - 'First line contains column names' => "Rreshtin e parë përmban emrat e kollonave", - 'Select objects to operate upon' => "Zgjidh objekte për të vepruar me", - 'Operations to perform' => "Operacionet për të kryer", - 'Add prefix string to name' => "Shto varg prefiksin për emrin", - 'Delete prefix string from name' => "Fshije string prefiksin nga emri", - 'Command text' => "Teksti Komanda", - 'DROP selected database objects' => "Drop objektet e zgjedhur bazës së të dhënave", - 'Batch operation results' => "Rezultatet operacion grumbull", - 'Operation' => "Operacion", - 'Status' => "Statusi", - '{{NUM}} queries generated' => "{{NUM}} pyetje gjeneruar", - 'Please select one or more operations to perform' => "Ju lutem zgjidhni një ose më shumë operacione për të kryer", - 'Quick Search' => "Quick Search", - '{{NAME}} client library is not installed' => "{{Name}} Biblioteka klienti nuk është i instaluar", - '{{NAME}} extension is not installed' => "{{}} EMRI zgjerimi nuk është instaluar", - 'SQLite database folder is inaccessible or not writable' => "SQLite database dosje është i paarritshëm apo nuk shkruhet", - 'Maximize/Restore Results Pane' => "Maximize / Restore Results Pane", - 'Select databases to operate upon' => "Zgjidh bazave të të dhënave për të vepruar mbi", - 'DROP selected databases' => "DROP dhënave zgjedhura", - 'The following operation is irreversible' => "Operacioni i mëposhtëm është i pakthyeshëm", - 'Potential data loss might occur' => "Potencial të dhënave humbje mund të ndodhë", - 'Add TRUNCATE command before insert statements' => "Shto shkurtoj komandën para deklaratave futur", - 'Select objects to include in backup' => "Zgjidh objekte të përfshijë në rezervë", - 'Backup folder does not exist or is not writable' => "Folder backup nuk ekziston ose nuk është e shkruajtshme", - 'Backup type' => "Lloji Backup", - 'Database backup successfully created' => "Baza e të dhënave backup krijua me sukses", - 'Failed to create database backup' => "Dështuar për të krijuar kopje rezervë të bazës së të dhënave", - 'Generate Bulk insert statements' => "Generate deklarata Bulk Insert", - 'Maximum size of SQL statement' => "Madhësia maksimale e deklaratës SQL", - 'Show record count with table names' => "Trego count rekord me emra tryezë", - 'Sort Table listing by' => "Tabela Rendit listë nga", - 'Name' => "Emër", - 'Last Update Time' => "Koha e fundit Update", - 'Maximum records to display in result set' => "Të dhënat maksimale për të shfaqur në grup rezultat", - 'Show popup dialog for editing large text data' => "Shfaq dialogun popup për përpunim të dhënave të mëdha tekst", - 'Miscellaneous' => "I llojllojshëm", - 'Reset all confirmation dialogs' => "Reset gjitha dialogjet e konfirmimit", - 'Record Editing' => "Editing Record", - 'Exclude Table type' => "Përjashto Tabela lloj", - 'Exclude Table Character set' => "Përjashto Tabela gërmave", - 'Backup filename' => "Filename Backup", - 'Invalid filename format' => "Invalid filename format", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "të gjitha", - 'all selected' => "gjithë të zgjedhur", - 'An error occured while refreshing the object list.' => "Ndodhi një gabim gjatë lista freskuese e objektit.", - 'Are you sure you want to clear all field information from table?' => "A jeni i sigurt se doni të qartë të gjitha të dhënat në terren nga tabela?", - 'Are you sure you want to delete this user account?' => "A jeni i sigurt se doni te e fshini kete llogari përdoruesi?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "A jeni i sigurt se doni të DROP të gjitha objekte nga baza e të dhënave {{NAME}}?", - 'Are you sure you want to DROP selected objects?' => "Jeni te sigurte qe doni te Drop objektet e zgjedhur?", - 'Are you sure you want to DROP the database {{NAME}}?' => "A jeni i sigurt se doni të DROP bazën e të dhënave {{NAME}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "A jeni i sigurt se doni të heqë këtë objekt? {{NAME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "A jeni i sigurt se doni të ekzekutuar {{SELECTED}} pyetje?", - 'Are you sure you want to logout?' => "A jeni i sigurt se doni të logout?", - 'Are you sure you want to truncate the table {{NAME}}?' => "A jeni i sigurt se doni të shkurtoj tryezë {{NAME}}?", - 'Blob Data [{{SIZE}}]' => "Data Blob [{{SIZE}}]", - 'Cancel' => "Anuloj", - 'Check for Updates' => "Kontrolloni për informatat më", - 'Clear command history?' => "Pastro historinë komandës?", - 'Close' => "Afër", - 'Confirm Action' => "Confirm Veprimit", - 'Confirm and do not ask me again about this choice' => "Confirm dhe mos më pyesni përsëri për këtë zgjedhje", - 'Copy Object' => "Objekti Copy", - 'Create Database' => "Krijo Baza e të dhënave", - 'Create Primary Index on this field' => "Krijo Indeksi fillore në këtë fushë", - 'Databases' => "Bazat e të dhënave", - 'Default value [Use quotes to specify string values]' => "Vlerës së prezgjedhur [Përdorimi kuotat për të përcaktuar vlerat string]", - 'Disallow NULL values in Field' => "Nuk lejoj NULL vlerave në fushën e", - 'Enter new index name' => "Shkruani emrin e ri Indeksi", - 'Enter new name for the database object' => "Shkruani emrin e ri për objektin e bazës së të dhënave", - 'Enter the text to search in database' => "Shkruani tekstin për të kërkuar në bazën e të dhënave", - 'Error' => "Gabim", - 'Events' => "Ngjarje", - 'Execute query' => "query Execute", - 'Exports results' => "Eksportet Rezultatet", - 'Failed to refresh the results.' => "Nuk arriti të rifreskoni rezultatet.", - 'Field Datatype' => "Tip të dhëne fushë", - 'Field Name' => "Emri Fusha", - 'Field value is Auto Incremented' => "Vlera Fusha është Auto incremented", - 'Functions' => "Funksionet", - 'Indexes Updated' => "Indexes Përditësuar", - 'Maximum Length of field value' => "Length maksimum i fushës vlerë", - 'Navigation Error. Try reloading the page' => "Navigation gabim. Provoni reloading page", - 'New settings saved and applied' => "Konfigurimet e reja ruajtur dhe aplikuar", - 'New version is available' => "Version i ri është në dispozicion", - 'Next' => "Tjetër", - 'No' => "Nuk ka", - 'No Table selected' => "Nuk ka Tabela e zgjedhur", - 'Not enough room to show this pane.' => "dhomë Nuk është e mjaftueshme për të treguar këtë xham.", - 'OK' => "Në rregull", - 'One or more field information is incomplete' => "Një ose më shumë informacion në terren nuk është i plotë", - 'Open' => "Hapur", - 'Operation failed' => "Operacioni nuk arriti", - 'Pad field values with leading zeros' => "fushë vlerat Pad me zero kryesor", - 'Pane' => "Xham", - 'Passwords do not match' => "Fjalkalimet nuk perputhen", - 'Pin' => "Gjilpërë me kokë", - 'Please select one or more operations to perform' => "Ju lutem zgjidhni një ose më shumë operacione për të kryer", - 'Please type in one or more queries in the SQL editor!' => "Ju lutemi shkruani një ose më shumë pyetje në redaktorin SQL!", - 'Please wait...' => "Ju lutem prisni ...", - 'Previous' => "I mëparshëm", - 'Procedures' => "Procedurat", - 'Prompt' => "Prompt", - 'Refresh results' => "Rezultatet Refresh", - 'Refreshing object list' => "Lista e Freskuese objekt", - 'Rename Object' => "Rename Object", - 'Resize' => "Resize", - 'Results page:' => "Results page:", - 'Select a database to view privileges for the user' => "Zgjidh një bazë të dhënash për të parë privilegje për përdoruesit", - 'Select an index to view / edit its details' => "Zgjidh një indeks për të parë / redakto të dhënat e tij", - 'Select at least one field type for searching' => "Zgjidh të paktën një lloj fushë për të kërkuar", - 'Select objects to operate upon' => "Zgjidh objekte për të vepruar me", - 'selector' => "përzgjedhës", - 'Slide Open' => "Slide Hapur", - 'Table information requires at least one valid field' => "Tabela e informacionit kërkon të paktën një fushë të vlefshme", - 'Table name is required' => "Emri Tabela është e nevojshme", - 'Table successfully created' => "Tabela sukses krijuar", - 'Table successfully modified' => "Tabela modifikuar me sukses", - 'Tables' => "Tabelat", - 'Text Data [{{SIZE}}]' => "Data Tekst [{{SIZE}}]", - 'There is no record in the results to export' => "Nuk ka të regjistruar në rezultatet e të eksportojë", - 'This attribute is not required for selected field type' => "Ky atribut nuk është e nevojshme për të zgjedhur llojin e fushës", - 'Triggers' => "Shkakton", - 'Un-Pin' => "Un-Pin", - 'Unsigned numbered field only' => "Unsigned numëruar fushë vetëm", - 'Update check failed' => "Update kontrolloni dështuar", - 'User information is incomplete or invalid' => "User informacion është i plotë ose i pavlefshëm", - 'User Manager' => "User Manager", - 'Views' => "Shikime", - 'WARNING' => "KUJDES", - 'Yes' => "Po", - 'You have the latest version' => "Ju keni versionin e fundit", - - ); -?> diff --git a/lang/sr.php b/lang/sr.php deleted file mode 100644 index 97393c3..0000000 --- a/lang/sr.php +++ /dev/null @@ -1,463 +0,0 @@ - "Коришћење базе података", - 'Drop Database' => "Избаци базе података", - 'Empty Database' => "Празна база података", - 'Drop all tables from this database' => "Избаци све табеле из ове базе", - 'Select statement' => "СЕЛЕЦТ", - 'Insert statement' => "Уметање изјава", - 'Update statement' => "УПДАТЕ", - 'Describe' => "Описати", - 'Show create command' => "Прикажи Креирање команде", - 'View data' => "Приказ података", - 'Alter Table' => "АЛТЕР ТАБЛЕ", - 'Indexes' => "Индекси", - 'Engine Type' => "Тип мотора", - 'More operations' => "Више операција", - 'Truncate' => "Окрњити", - 'Drop' => "Пад", - 'Rename' => "Преименуј", - 'Export table data' => "Извоз података у табели", - 'Create Table' => "Креирање табеле", - 'Create View' => "Креирај приказ", - 'Create Procedure' => "Креирање поступку", - 'Create Function' => "Креирање функције", - 'Create Trigger' => "Направите Триггер", - 'Create Event' => "Направи догађај", - 'Show/Hide Panel' => "Прикажи / Сакриј панел", - 'Show/Hide Header' => "Прикажи / сакриј заглавље", - 'Copy all queries to clipboard' => "Копирај све упите за оставу", - 'Clear history' => "Брисање историје", - 'Copy Column values' => "Копирање вредности колоне", - 'Copy to clipboard' => "Копирај у оставу", - 'Generate SQL Filter' => "Генерисање СКЛ филтер", - 'Database Manager' => "База Менаџер", - 'Manage databases' => "Управљање базама података", - - // main menu related text - 'Database' => "Базе података", - 'Refresh' => "Освежити", - 'Refresh database object list' => "Освежи објекта базе података листу", - 'Create new' => "Направи нови", - 'Export' => "Извоз", - 'Export database to external file' => "Извоз података на екстерни фајл", - 'Objects' => "Објекти", - 'Create Table' => "Креирање табеле", - 'Create a new table in the database' => "Креирање нове табеле у бази података", - 'Create View' => "Креирај приказ", - 'Create a new view in the database' => "Креирате нови приказ у бази података", - 'Create Stored Procedure' => "Креирање Ускладиштене поступку", - 'Create a new stored procedure in the database' => "Креирање нове ускладиштену процедуру у бази података", - 'Create Function' => "Креирање функције", - 'Create a new user defined function in the database' => "Креирање новог корисника дефинисана функција у бази података", - 'Create Trigger' => "Направите Триггер", - 'Create a new trigger in the database' => "Креирање нове окидач у бази података", - 'Create Event' => "Направи догађај", - 'Create a new event in the database' => "Направи нови догађај у бази података", - 'Data' => "Података", - 'Import batch file' => "Увоз командну датотеку", - 'Import multiple queries from batch file' => "Увоз више упита из командне датотеке", - 'Export database' => "Извоз података", - 'Export database to batch file as sql dump' => "Извоз података у батцх фајл у СКЛ думп", - 'Export current results' => "Извоз Тренутни резултати", - 'Export query results to clipboard or files' => "Извоз резултата упита у оставу или датотека", - 'Tools' => "Алати", - 'Process Manager' => "Процесс Манагер", - 'View and manage database processes' => "Приказ и управљање процесима базе података", - 'Repair Tables' => "Поправка Табеле", - 'Analyze and repair database tables' => "Анализирати и табела базе података поправке", - 'User Manager' => "Корисник менаџер", - 'Manage database users' => "Управљање корисницима базе података", - 'Search in Database' => "Претрага у бази података", - 'Search for text in the database' => "Тражити текст у бази података", - 'Information' => "Информације", - 'Server/Connection Details' => "Сервер детаља везе", - 'View server configuration' => "Погледај конфигурација сервера", - 'View server and connection details' => "Погледај сервер и превоз Детаљи", - 'Server Variables' => "Променљиве сервер", - 'Database Summary' => "База података Резиме", - 'View current database summary stats' => "Погледајте актуелну базу података резиме статистика", - 'Interface' => "Интерфејс", - 'Options' => "Опције", - 'Configure application options' => "Конфигурисање опције апликација", - 'UI Theme' => "УИ Тема", - 'Database Objects' => "Објекти базе података", - 'Toggle Object Viewer' => "Тоггле Објекат Виевер", - 'Help contents' => "Помоћ садржаја", - 'Learn the basics of using MyWebSQL' => "Научите основе коришћења МиВебСКЛ", - 'QuickStart Tutorials' => "КуицкСтарт Туториали", - 'See quick hands-on tutorial of MyWebSQL interface' => "Погледајте брзе руке на Туториал на МиВебСКЛ интерфејса", - 'Online documentation' => "Онлине документацију", - 'View online documentation on project website' => "Погледај онлине документацију о пројекту сајту", - 'Request a Feature' => "Захтев фокусу", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "Уколико желите да се ваш омиљени највише функција да буде део МиВебСКЛ, кликните овде да га обавести о", - 'Report a Problem' => "Извештај проблем", - 'Check for updates' => "Проверите да ли постоје исправке", - 'Check for updated versions of the application online' => "Проверите да ли постоје ажуриране верзије апликација на мрежи", - 'Logout' => "Логоут", - 'Logout from this session' => "Одјава са ове сесије", - 'Language' => "Језик", - 'SQL Editor' => "СКЛ Уредник", - 'Toggle SQL Editor' => "Тоггле СКЛ Уредник", - 'Experimental' => "Експерименталне", - 'Import table data' => "Увоз података у табели", - 'Import table data from external file' => "Увоз табеле подаци из екстерног фајла", - 'Batch operations' => "Батцх операције", - 'Perform one or more batch operations on database' => "Извршите једну или више батцх операције на бази података", - 'Create a new schema in the database' => "Креирање нове шеме у бази података", - 'Create Schema' => "Креирање шеме", - 'Table Description' => "Табела Опис", - 'Database Manager' => "База Менаџер", - 'Manage databases' => "Управљање базама података", - 'Backup database on the server as SQL dump' => "Архивирање података на серверу, као СКЛ депоније", - 'Backup Database' => "Бацкуп базе", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "Ваш бровсер Изгледа да је веома стар и не подржава све функције потребне за покретање МиВебСКЛ.", - 'Try using a newer version of the browser to run this application.' => "Покушајте да користите новију верзију прегледача за покретање ове апликације.", - - // text used on various screens in the interface - 'Visit Project website' => "Посетите сајт пројекта", - 'Version' => "верзија", - 'Loading' => "Лоадинг", - 'Quick Edit Options' => "Брзо Измени опције", - 'Press {{KEY}} to set NULL' => "Притисните на КЉУЧ {{KEY}} НУЛЛ", - 'MySQL Server' => "МиСКЛ Сервер", - 'Logged in as: {{USER}}' => "Пријављен као: {{усер}}", - 'Results' => "Резултати", - 'Messages' => "Поруке", - 'Information' => "Информације", - 'History' => "Историја", - 'There are no results to show in this view' => "Не постоје резултати показују да у овом приказу", - 'Refresh results' => "Освежи резултате", - 'Please wait' => "Молимо сачекајте", - 'Query All' => "Све упита", - 'Query' => "Питање", - 'Add Record' => "Адд Рецорд "", - 'Delete Record(s)' => "Делете рецорд (с)", - 'Update Record(s)' => "Ажурирајте Рекорд (и)", - 'Generate SQL' => "Генерисање СКЛ", - 'Database name' => "Име базе", - 'Select database after creation' => "Изаберите базу података након креирања", - 'Database connection failed to the server' => "База података веза није серверу", - 'Host' => "Домаћин", - 'User' => "Корисник", - 'Select a database to begin' => "Изаберите базу података за почетак", - 'Select/unselect All records' => "Изаберите / поништавање избора Сви записи", - 'Primary key column' => "Примарни кључ колону", - 'Unique key column' => "Јединственог кључа колону", - 'Showing records {{START}} - {{END}}' => "Приказ евиденција {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "Приказ прво {{MAX}} бележи само", - '1 query successfully executed' => "1 упит је успешно извршен", - '{{NUM}} queries successfully executed' => "{{НУМ}} упита успешно извршена", - '{{NUM}} record(s) were affected' => "{{НУМ}} запис (И) су били погођени", - '{{NUM}} record(s) updated' => "{{НУМ}} запис (И) Ажурирано", - 'Error occurred while executing the query' => "Дошло је до грешке приликом извршавања упита", - '{{NUM}} queries failed to execute' => "{{НУМ}} није успела да изврши упита", - 'Click to view/edit column data [{{NUM}} Bytes]' => "Кликните да бисте видели / уређивање података колоне [{{НУМ}} КБ]", - 'Blob data is not editable' => "Блоб подаци се не могу мењати", - 'Blob data saved' => "Блоб Подаци сачувана", - 'Failed to save blob data' => "Није успело да сачувате податке Блоб", - 'The process with id [{{PID}}] was killed' => "Процес са ИД [{{PID}} је убијен", - 'No such process [id = {{PID}}]' => "Нема таквог процеса [ИД = {{PID}}", - 'Select a process and click the button to kill the process' => "Изаберите процес и кликните на дугме да убије процес", - 'Process ID' => "ИД процеса", - 'Command' => "Команда", - 'Time' => "Време", - 'Info' => "Инфо", - 'Kill Process' => "Килл процеса", - 'Failed to get process list' => "Није успео да се списак процеса", - 'The command executed successfully' => "Команда извршена успешно", - 'Invalid server configuration' => "Неважећи конфигурације сервера", - 'Invalid Credentials' => "Неважећи акредитива", - 'New database successfully created' => "Нова база података је успешно креиран", - 'File upload failed. Please try again' => "Филе уплоад фаилед. Молимо покушајте поново", - 'No queries were executed during import' => "Није куериес су убијени током увоза", - 'Maximum upload filesize is {{SIZE}}' => "Максимални уплоад Филесизе је {{сизе}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "Подржани врстама датотека / екстензије су: ({{ЛИСТА}})", - 'Database summary' => "База података Резиме", - 'Server Variables' => "Променљиве сервер", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "Постојеће објекат са истим именом треба ручно да се пале пре извршавања команде стварања", - 'Only create commands are accepted' => "Само направите команде су прихваћене", - 'User ID' => "ИД корисника", - 'Password' => "Лозинка", - 'Login' => "Пријава", - 'Create new database object' => "Направи нови објекат базе података", - 'Enter command for object creation' => "Унесите команду за креирање објеката", - 'Submit' => "Субмит", - 'Show blob data as: {{TYPE}}' => "Прикажи Блоб податке као: {{типе}}", - 'Blob data for column {{NAME}}' => "Блоб података за колону {{ИМЕ}}", - 'Create command for {{TYPE}} {{NAME}}' => "Направите команду за {{типе}} {{ИМЕ}}", - 'Table Engine (type)' => "Табела мотора (тип)", - 'Change Table Type' => "Промени тип табеле", - 'The requested page is not available on the server' => "Захтевана страница није доступна на серверу", - 'Error' => "Грешка", - 'It appears that you attempted to submit an invalid request to the server' => "Чини се да сте покушали да пошаљете Неисправан захтев на сервер", - 'The request has been denied. Reloading the page might solve the problem' => "Захтев је одбијен. Поново учитате страницу може да се реши проблем", - 'Access Denied' => "Приступ одбијен", - 'Help' => "Помоћ", - 'To see most up-to-date help contents, please visit {{LINK}}' => "Да бисте видели највише до датума садржаја помоћи, посетите {{ЛИНК}}", - 'It appears that your browser session has expired' => "Изгледа да ваш прегледач сесија је истекла", - 'Please refresh the webpage to re-login' => "Освежите страницу да поново Логин", - 'Table information' => "Табела информација", - 'Edit' => "Уреди", - 'Save' => "Сачувај", - 'Either the database is empty, or there was an error retrieving list of database objects' => "Или база података је празна, односно дошло је до грешке приликом преузимања списак објеката базе података", - 'Please try closing and re-opening this dialog again' => "Молимо покушајте затварања и поновног отварања поново овај дијалог", - 'Structure' => "Структура", - 'Table Data' => "Података у табели", - 'Structure and Table Data' => "Структура и табеле са подацима", - 'Options' => "Опције", - 'Set Auto increment field values to NULL' => "Постави ауто прираст вредности поља на НУЛЛ", - 'Add DROP command before create statements' => "Додај ДРОП команду пре него што креирате извештаје", - 'Export' => "Извоз", - 'Import' => "Увоз", - 'Export Database' => "Извоз података", - 'Export Table' => "Извоз табеле", - 'Server information' => "Сервер Информатион", - 'Server' => "Сервер", - 'Version comment' => "Верзија коментар", - 'Character sets' => "Скуповима знакова", - 'Server character set' => "Сервер скуп знакова", - 'Client character set' => "Клијент скуп знакова", - 'Database character set' => "База података скуп знакова", - 'Results character set' => "Резултати скуп знакова", - 'Export As' => "Извези као", - 'Insert Statements' => "Уметање Изјаве", - 'Include field names in query' => "Укључи имена поља у упиту", - 'XML' => "КСМЛ", - 'XHTML' => "КСХТМЛ", - 'Plain Text (One record per line)' => "Чисти текст (један запис по линији)", - 'Fields separated by:' => "Поља раздвојени:", - 'Export Results' => "Извозне резултате", - 'Select SQL batch file to import' => "Изаберите СКЛ командну датотеку за увоз", - 'Continue processing even if error occurs' => "Настави обраде, чак и ако дође до грешке", - 'Basic Information' => "Основне информације", - 'Table Properties' => "Својства табеле", - 'Table Name' => "Име табеле", - 'Field Name' => "Име поља", - 'Data Type' => "Тип података", - 'Length' => "Дужина", - 'Default value' => "Подразумевана вредност", - 'Unsigned' => "Непотписан", - 'Zero Fill' => "Попуните нула", - 'Primary Key' => "Примарног кључа", - 'Auto Increment' => "Аутоматски Прираштај", - 'Not NULL' => "НОТ НУЛЛ", - 'Character Set' => "Скуп знакова", - 'Collation' => "Сравњивање", - 'Comment' => "Коментар", - 'Waiting for table information to be submitted' => "Чекање на табелу да буду поднете", - 'Add field' => "Додавање поља", - 'Delete selected field' => "Брисање изабране области", - 'Clear Table Information' => "Обриши табелу информација", - 'List of values' => "Листа вредности", - 'Query Results' => "Резултата упита", - 'Data for {{TABLE}}' => "Подаци за {{TABLE}}", - 'Select tables to be analyzed/repaired' => "Изаберите табеле за анализу / поправити", - 'Operation to perform' => "Операција за обављање", - 'Analyze' => "Анализирати", - 'Check' => "Проверите", - 'Optimize' => "Оптимизуј", - 'Repair' => "Поправка", - 'Skip Binary logging' => "Прескочи Бинарни логовања", - 'Default' => "Подразумевано", - 'Quick' => "Брзо", - 'Fast' => "Брзи", - 'Medium' => "Средњи", - 'Extended' => "Продужен", - 'Changed' => "Промењена", - 'Use Frm files (MyISAM tables)' => "Користите Фрм датотека (МиИСАМ табеле)", - 'User Information' => "Информације о кориснику", - 'Global Privileges' => "Глобална Привилегије", - 'Database Privileges' => "База података Привилегије", - 'Import File' => "Увези датотеку", - 'Index Manager' => "Индекс менаџера", - 'Edit table structure' => "Измена структуре табеле", - 'Save All Changes' => "Сачувајте све промене", - 'Changes are not saved until you press [Save All Changes]' => "Промене се не чувају док не притиснете [Сачувајте све промене]", - 'Field Length' => "Дужина поља", - 'Select objects to include in export' => "Изаберите објекте да укључите у извозу", - 'Export type' => "Извоз Тип", - 'Select All/None' => "Изабери све / Ништа", - 'Add User' => "Додај корисника", - 'Update User' => "Ажурирај корисника", - 'Delete selected User' => "Обриши изабраног корисника", - 'Remove Password' => "Уклони лозинку", - 'Select tables to search' => "Изаберите табеле за претрагу", - 'Search Options' => "Опције претраге", - 'Search in following field types' => "Претрага у следећих типова поља", - 'Numeric Fields' => "Нумеричких поља", - 'Character Fields' => "Поља карактера", - 'Text Fields' => "Текст поља", - 'Date/Time Fields' => "Датум / време "поља", - 'Comparison Type' => "Поређење Тип", - 'Text to search' => "Текст за претрагу", - 'Search' => "Претрага", - 'Search Results' => "Резултати претраге", - 'Number of matches' => "Број мечева", - 'Search results for {{KEYWORD}} in the database' => "Резултати претраге за {{KEYWORD}} у бази података", - '{{NUM}} match(es)' => "{{NUM}} меч (е)", - 'Copy query to editor' => "Копирај упит за уредника", - 'Done' => "Готово", - 'SQL Editor' => "СКЛ Уредник", - 'Create Copy' => "Направи Копирање", - 'Minimize All' => "Смањите све", - 'Copy Record(s)' => "Копирање Рекорд (а)", - 'YAML' => "ИАМЛ", - 'Comma Separated (CSV for Excel)' => "Раздвојене зарезима (ЦСВ за Екцел)", - 'Select data file to import' => "Изаберите датотеку са подацима за увоз", - 'Select table for data import' => "Изаберите табелу за увоз података", - 'First line contains column names' => "Први ред садржи имена колона", - 'Select objects to operate upon' => "Изаберите објекте за рад на", - 'Operations to perform' => "Операције се обављају", - 'Add prefix string to name' => "Додај ниску префикс да наведемо", - 'Delete prefix string from name' => "Брисање префикса ниску од имена", - 'Command text' => "Команда текст", - 'DROP selected database objects' => "ДРОП изабране објекте базе података", - 'Batch operation results' => "Батцх резултатима пословања", - 'Operation' => "Операција", - 'Status' => "Статус", - '{{NUM}} queries generated' => "{{NUM}} упит генеришу", - 'Please select one or more operations to perform' => "Молимо изаберите једну или више операција за извршавање", - 'Quick Search' => "Брза претрага", - '{{NAME}} client library is not installed' => "{{}} ИМЕ клијент библиотека није инсталирана", - '{{NAME}} extension is not installed' => "{{}} ИМЕ продужетак није инсталиран", - 'SQLite database folder is inaccessible or not writable' => "СКЛите база фасцикла је недоступна или не може писати", - 'Maximize/Restore Results Pane' => "Макимизе / Ресторе Резултати окна", - 'Select databases to operate upon' => "Изаберите базе података да послује на", - 'DROP selected databases' => "ДРОП изабране базе података", - 'The following operation is irreversible' => "Следећи операција је неповратна", - 'Potential data loss might occur' => "Потенцијални губитак података може доћи", - 'Add TRUNCATE command before insert statements' => "Додајте скрати команду пре инсерт изјава", - 'Select objects to include in backup' => "Изаберите објекте да укључе у бацкуп", - 'Backup folder does not exist or is not writable' => "Бацкуп фолдер не постоји или не може писати", - 'Backup type' => "Бацкуп тип", - 'Database backup successfully created' => "Бацкуп базе података је успешно направљен", - 'Failed to create database backup' => "Није успело да створи бацкуп базе података", - 'Generate Bulk insert statements' => "Генеришите Булк изјаве инсерт", - 'Maximum size of SQL statement' => "Максимална величина СКЛ изјаве", - 'Show record count with table names' => "Схов рачунају запис са имена табела", - 'Sort Table listing by' => "Сортирај листа предлога за", - 'Name' => "Име", - 'Last Update Time' => "Последњи Време ажурирања", - 'Maximum records to display in result set' => "Максимално меморише за приказ у скупу резултата", - 'Show popup dialog for editing large text data' => "Схов попуп дијалог за уређивање великих текстуалних података", - 'Miscellaneous' => "Остало", - 'Reset all confirmation dialogs' => "Ресет све дијалоге потврди", - 'Record Editing' => "Рекорд уређивање", - 'Exclude Table type' => "Искључује тип табеле", - 'Exclude Table Character set' => "Искључује сет табела карактера", - 'Backup filename' => "Бацкуп Филес", - 'Invalid filename format' => "Неважећи формат Филес", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "све", - 'all selected' => "све изабране", - 'An error occured while refreshing the object list.' => "Дошло је до грешке током освежавања листе објеката.", - 'Are you sure you want to clear all field information from table?' => "Да ли сте сигурни да желите да обришете све податке поља из табеле?", - 'Are you sure you want to delete this user account?' => "Да ли сте сигурни да желите да избришете овај налог корисника?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "Да ли сте сигурни да желите да одустану све објекте из базе {{ИМЕ}}?", - 'Are you sure you want to DROP selected objects?' => "Да ли сте сигурни да желите да одустане од изабране објекте?", - 'Are you sure you want to DROP the database {{NAME}}?' => "Да ли сте сигурни да желите да одустане од базе {{ИМЕ}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "Да ли сте сигурни да желите да одустану овај објекат? {{ИМЕ}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "Да ли сте сигурни да желите да извршите {{SELECTED}} упите?", - 'Are you sure you want to logout?' => "Да ли сте сигурни да желите да се одјавите?", - 'Are you sure you want to truncate the table {{NAME}}?' => "Да ли сте сигурни да желите да скратите табелу {{ИМЕ}}?", - 'Blob Data [{{SIZE}}]' => "Блоб података [{{SIZE}}]", - 'Cancel' => "Отказати", - 'Check for Updates' => "Проверите да ли постоје исправке", - 'Clear command history?' => "Слободан командом историју?", - 'Close' => "Затвори", - 'Confirm Action' => "Потврдите Акција", - 'Confirm and do not ask me again about this choice' => "Потврдите и не питајте ме опет за тај избор", - 'Copy Object' => "Копирање објеката", - 'Create Database' => "Креирање базе података", - 'Create Primary Index on this field' => "Креирање Примарни Индекс у овој области", - 'Databases' => "Базе података", - 'Default value [Use quotes to specify string values]' => "Подразумевана вредност [Користите наводнике да наведете вредности ниске]", - 'Disallow NULL values in Field' => "Онемогући НУЛЛ вредности у поља", - 'Enter new index name' => "Унесите ново име индекса", - 'Enter new name for the database object' => "Унесите ново име за објекат базе података", - 'Enter the text to search in database' => "Унесите текст за претрагу у бази података", - 'Error' => "Грешка", - 'Events' => "Догађаји", - 'Execute query' => "Изврши упит", - 'Exports results' => "Извоз резултата", - 'Failed to refresh the results.' => "Није успело да освежите резултате.", - 'Field Datatype' => "Поље дататипе", - 'Field Name' => "Име поља", - 'Field value is Auto Incremented' => "Вредност поља је ауто увећава", - 'Functions' => "Функције", - 'Indexes Updated' => "Индекси ажурирано", - 'Maximum Length of field value' => "Максималну дужину од вредности поља", - 'Navigation Error. Try reloading the page' => "Грешка навигацију. Покушајте поново учитате страницу", - 'New settings saved and applied' => "Нова подешавања сачувана и примењене", - 'New version is available' => "Нова верзија је доступна", - 'Next' => "Следећа", - 'No' => "Нема", - 'No Table selected' => "Нема изабраних табела", - 'Not enough room to show this pane.' => "Нема довољно простора за приказивање овом панелу.", - 'OK' => "У реду", - 'One or more field information is incomplete' => "Једно или више поља информација је непотпуна", - 'Open' => "Отворено", - 'Operation failed' => "Операција није успела", - 'Pad field values with leading zeros' => "Подлога за вредности поља са водеће нуле", - 'Pane' => "Окно", - 'Passwords do not match' => "Лозинке се не поклапају", - 'Pin' => "ПИН", - 'Please select one or more operations to perform' => "Молимо изаберите једну или више операција за извршавање", - 'Please type in one or more queries in the SQL editor!' => "Унесите у једној или више упита у СКЛ едитору!", - 'Please wait...' => "Молимо Вас да сачекате ...", - 'Previous' => "Претходни", - 'Procedures' => "Процедуре", - 'Prompt' => "Брз", - 'Refresh results' => "Освежи резултате", - 'Refreshing object list' => "Освежавање листе објеката", - 'Rename Object' => "Преименуј објекат", - 'Resize' => "Промена величине", - 'Results page:' => "Страница са резултатима:", - 'Select a database to view privileges for the user' => "Изаберите базу података да бисте видели привилегије за корисника", - 'Select an index to view / edit its details' => "Изаберите индекс да бисте видели / измените детаље", - 'Select at least one field type for searching' => "Изаберите најмање један тип поља за претраживање", - 'Select objects to operate upon' => "Изаберите објекте за рад на", - 'selector' => "селектор", - 'Slide Open' => "Отворите слајд", - 'Table information requires at least one valid field' => "Табела информација захтева најмање једна исправна области", - 'Table name is required' => "Име табеле је потребно", - 'Table successfully created' => "Табела је успешно креиран", - 'Table successfully modified' => "Табела је успешно измењена", - 'Tables' => "Табеле", - 'Text Data [{{SIZE}}]' => "Текстуални подаци [{{SIZE}}]", - 'There is no record in the results to export' => "Не постоји запис у резултатима за извоз", - 'This attribute is not required for selected field type' => "Овај атрибут није неопходан за изабрано поље типа", - 'Triggers' => "Окидачи", - 'Un-Pin' => "УН-Пин", - 'Unsigned numbered field only' => "Непотписани нумерисане поље само", - 'Update check failed' => "Упдате проверите успео", - 'User information is incomplete or invalid' => "Корисник информације непотпуне или неважећи", - 'User Manager' => "Корисник менаџер", - 'Views' => "Погледано", - 'WARNING' => "УПОЗОРЕЊЕ", - 'Yes' => "Да", - 'You have the latest version' => "Имате најновију верзију", - - ); -?> diff --git a/lang/sv.php b/lang/sv.php deleted file mode 100644 index e340eda..0000000 --- a/lang/sv.php +++ /dev/null @@ -1,463 +0,0 @@ - "Använd databas", - 'Drop Database' => "Drop Database", - 'Empty Database' => "Tom databas", - 'Drop all tables from this database' => "Drop alla tabeller från denna databas", - 'Select statement' => "SELECT-sats", - 'Insert statement' => "INSERT-sats", - 'Update statement' => "UPDATE", - 'Describe' => "Beskriv", - 'Show create command' => "Visa Skapa kommandot", - 'View data' => "Visa data", - 'Alter Table' => "ALTER TABLE", - 'Indexes' => "Index", - 'Engine Type' => "Motortyp", - 'More operations' => "Fler operationer", - 'Truncate' => "Trunkera", - 'Drop' => "Drop", - 'Rename' => "Byt namn", - 'Export table data' => "Exportera tabelldata", - 'Create Table' => "Skapa tabell", - 'Create View' => "Skapa vy", - 'Create Procedure' => "Skapa arbetsordningen", - 'Create Function' => "Skapa Funktion", - 'Create Trigger' => "Skapa Trigger", - 'Create Event' => "Skapa händelse", - 'Show/Hide Panel' => "Visa / dölj panelen", - 'Show/Hide Header' => "Visa / dölj Header", - 'Copy all queries to clipboard' => "Kopiera förfrågningar alla till Windows urklipp", - 'Clear history' => "Rensa historik", - 'Copy Column values' => "Kopiera Kolumnvärden", - 'Copy to clipboard' => "Kopiera till Urklipp", - 'Generate SQL Filter' => "Generera SQL-filter", - 'Database Manager' => "Database Manager", - 'Manage databases' => "Hantera databaser", - - // main menu related text - 'Database' => "Databas", - 'Refresh' => "Uppdatera", - 'Refresh database object list' => "Uppdatera databasobjekt lista", - 'Create new' => "Skapa nya", - 'Export' => "Export", - 'Export database to external file' => "Export databas till extern fil", - 'Objects' => "Objekt", - 'Create Table' => "Skapa tabell", - 'Create a new table in the database' => "Skapa en ny tabell i databasen", - 'Create View' => "Skapa vy", - 'Create a new view in the database' => "Skapa en ny vy i databasen", - 'Create Stored Procedure' => "Skapa lagrade procedurer", - 'Create a new stored procedure in the database' => "Skapa en ny lagrad procedur i databasen", - 'Create Function' => "Skapa Funktion", - 'Create a new user defined function in the database' => "Skapa en ny användare definierad funktion i databasen", - 'Create Trigger' => "Skapa Trigger", - 'Create a new trigger in the database' => "Skapa en ny trigger i databasen", - 'Create Event' => "Skapa händelse", - 'Create a new event in the database' => "Skapa en ny händelse i databasen", - 'Data' => "Data", - 'Import batch file' => "Importera kommandofilen", - 'Import multiple queries from batch file' => "Importera flera förfrågningar från kommandofil", - 'Export database' => "Export databas", - 'Export database to batch file as sql dump' => "Export databas till batch fil som SQL dump", - 'Export current results' => "Exportera aktuella resultat", - 'Export query results to clipboard or files' => "Exportera frågeresultaten till Windows urklipp eller filer", - 'Tools' => "Verktyg", - 'Process Manager' => "Process Manager", - 'View and manage database processes' => "Visa och hantera databasen processer", - 'Repair Tables' => "Reparation Tabeller", - 'Analyze and repair database tables' => "Analysera och reparera databastabeller", - 'User Manager' => "User Manager", - 'Manage database users' => "Hantera databas användare", - 'Search in Database' => "Sökning i databasen", - 'Search for text in the database' => "Sök efter text i databasen", - 'Information' => "Information", - 'Server/Connection Details' => "Server / Anslutningsinformation", - 'View server configuration' => "Visa serverkonfiguration", - 'View server and connection details' => "Visa server-och anslutningsinformation", - 'Server Variables' => "Servervariabler", - 'Database Summary' => "Databas Sammanfattning", - 'View current database summary stats' => "Se aktuella databasen sammanfattande statistik", - 'Interface' => "Gränssnitt", - 'Options' => "Alternativ", - 'Configure application options' => "Konfigurera användningsmöjligheter", - 'UI Theme' => "UI Tema", - 'Database Objects' => "Database Objects", - 'Toggle Object Viewer' => "Växla Objektutforskaren", - 'Help contents' => "Hjälp innehållet", - 'Learn the basics of using MyWebSQL' => "Lär dig grunderna i att använda MyWebSQL", - 'QuickStart Tutorials' => "QuickStart Tutorials", - 'See quick hands-on tutorial of MyWebSQL interface' => "Se sammanfattning praktisk handledning av MyWebSQL gränssnitt", - 'Online documentation' => "Online dokumentation", - 'View online documentation on project website' => "Se online-dokumentation på projektets webbplats", - 'Request a Feature' => "Begär en Feature", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "Om du vill att dina mest favoritfunktion vara en del av MyWebSQL, klicka här för att informera om det", - 'Report a Problem' => "Rapportera ett problem", - 'Check for updates' => "Söka efter uppdateringar", - 'Check for updated versions of the application online' => "Kontrollera om uppdaterade versioner av ansökan online", - 'Logout' => "Logga ut", - 'Logout from this session' => "Logga ut från denna session", - 'Language' => "Språk", - 'SQL Editor' => "SQL Editor", - 'Toggle SQL Editor' => "Växla SQL Editor", - 'Experimental' => "Experimentell", - 'Import table data' => "Importera tabelldata", - 'Import table data from external file' => "Importera tabelldata från extern fil", - 'Batch operations' => "Batch verksamhet", - 'Perform one or more batch operations on database' => "Utför en eller flera batch operationer på databasen", - 'Create a new schema in the database' => "Skapa ett nytt schema i databasen", - 'Create Schema' => "Skapa schema", - 'Table Description' => "Tabell Beskrivning", - 'Database Manager' => "Database Manager", - 'Manage databases' => "Hantera databaser", - 'Backup database on the server as SQL dump' => "Backup databas på servern som SQL dump", - 'Backup Database' => "Backup Database", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "Din webbläsare verkar vara mycket gamla och inte stödjer alla funktioner som krävs för att köra MyWebSQL.", - 'Try using a newer version of the browser to run this application.' => "Försök att använda en nyare version av webbläsaren för att köra det här programmet", - - // text used on various screens in the interface - 'Visit Project website' => "Besök projektets hemsida", - 'Version' => "version", - 'Loading' => "Laddar", - 'Quick Edit Options' => "Snabb Redigera alternativ", - 'Press {{KEY}} to set NULL' => "Tryck på {{KEY}} för att ställa NULL", - 'MySQL Server' => "MySQL Server", - 'Logged in as: {{USER}}' => "Inloggad som: {{USER}}", - 'Results' => "Resultat", - 'Messages' => "Meddelanden", - 'Information' => "Information", - 'History' => "Historia", - 'There are no results to show in this view' => "Det finns inga resultat att visa i den här vyn", - 'Refresh results' => "Uppdatera resultat", - 'Please wait' => "Var god vänta", - 'Query All' => "Query Alla", - 'Query' => "Query", - 'Add Record' => "Lägg Record", - 'Delete Record(s)' => "Radera post (er)", - 'Update Record(s)' => "Update Record (s)", - 'Generate SQL' => "Generera SQL", - 'Database name' => "Databas namn", - 'Select database after creation' => "Välj databas efter skapandet", - 'Database connection failed to the server' => "Databas misslyckades till servern", - 'Host' => "Host", - 'User' => "Användare", - 'Select a database to begin' => "Välj en databas för att börja", - 'Select/unselect All records' => "Markera och avmarkera alla poster", - 'Primary key column' => "Primärnyckelkolumn", - 'Unique key column' => "Unik nyckel kolumn", - 'Showing records {{START}} - {{END}}' => "Visar poster {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "Visar första {{MAX}} registrerar endast", - '1 query successfully executed' => "1 fråga som genomförda", - '{{NUM}} queries successfully executed' => "{{NUM}} frågor som genomförda", - '{{NUM}} record(s) were affected' => "{{NUM}} rad (er) påverkades", - '{{NUM}} record(s) updated' => "{{NUM}} rad (er) uppdaterade", - 'Error occurred while executing the query' => "Fel uppstod när verkställande frågan", - '{{NUM}} queries failed to execute' => "{{NUM}} frågor underlåtit att verkställa", - 'Click to view/edit column data [{{NUM}} Bytes]' => "Klicka för att se / redigera kolumn uppgifter [{{NUM}} bytes]", - 'Blob data is not editable' => "BLOB-data kan inte redigeras", - 'Blob data saved' => "BLOB-data sparas", - 'Failed to save blob data' => "Misslyckades med att spara BLOB-data", - 'The process with id [{{PID}}] was killed' => "Processen med id [{{PID}}] dödades", - 'No such process [id = {{PID}}]' => "Någon sådan process [id = {{PID}}]", - 'Select a process and click the button to kill the process' => "Välj en process och klicka på knappen för att döda processen", - 'Process ID' => "Process-ID", - 'Command' => "Kommando", - 'Time' => "Tid", - 'Info' => "Info", - 'Kill Process' => "Kill Process", - 'Failed to get process list' => "Misslyckades med att få processen lista", - 'The command executed successfully' => "Kommandot genomförts framgångsrikt", - 'Invalid server configuration' => "Ogiltig server konfigurationen", - 'Invalid Credentials' => "Ogiltiga uppgifter", - 'New database successfully created' => "Ny databas har skapats", - 'File upload failed. Please try again' => "Filuppladdning misslyckades. Försök igen", - 'No queries were executed during import' => "Inga frågor avrättades under import", - 'Maximum upload filesize is {{SIZE}}' => "Maximal uppladdning filstorlek är {{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "Stödda filtyper / tillägg är: ({{LIST}})", - 'Database summary' => "Databas sammandrag", - 'Server Variables' => "Servervariabler", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "Alla befintliga objekt med samma namn bör utgå manuellt innan du kör kommandot skapande", - 'Only create commands are accepted' => "Endast skapa kommandon accepteras", - 'User ID' => "Användar-ID", - 'Password' => "Lösenord", - 'Login' => "Logga in", - 'Create new database object' => "Skapa nya databasobjekt", - 'Enter command for object creation' => "Ange kommando för att skapa objekt", - 'Submit' => "Skicka in", - 'Show blob data as: {{TYPE}}' => "Visa BLOB-data som: {{TYPE}}", - 'Blob data for column {{NAME}}' => "BLOB-data för kolumn {{NAME}}", - 'Create command for {{TYPE}} {{NAME}}' => "Skapa kommando för {{TYPE}} {{NAME}}", - 'Table Engine (type)' => "Tabell Motor (typ)", - 'Change Table Type' => "Ändra Tabell Typ", - 'The requested page is not available on the server' => "Den begärda sidan finns inte på servern", - 'Error' => "Fel", - 'It appears that you attempted to submit an invalid request to the server' => "Det verkar som om du försökte lämna in en ogiltig begäran till servern", - 'The request has been denied. Reloading the page might solve the problem' => "Begäran har avslagits. Uppdatera sidan kan lösa problemet", - 'Access Denied' => "Nekat tillträde", - 'Help' => "Hjälp", - 'To see most up-to-date help contents, please visit {{LINK}}' => "Om du vill se mest aktuella hjälpa innehåll, besök {{LINK}}", - 'It appears that your browser session has expired' => "Det verkar som om din webbläsare session har gått ut", - 'Please refresh the webpage to re-login' => "Uppdatera webbsidan att åter-login", - 'Table information' => "Tabell information", - 'Edit' => "Redigera", - 'Save' => "Spara", - 'Either the database is empty, or there was an error retrieving list of database objects' => "Antingen är databasen är tom, eller det var ett fel hämtning lista med databasobjekt", - 'Please try closing and re-opening this dialog again' => "Försök stänga och öppnas igen den här dialogrutan igen", - 'Structure' => "Struktur", - 'Table Data' => "Tabelldata", - 'Structure and Table Data' => "Struktur och Datatabell", - 'Options' => "Alternativ", - 'Set Auto increment field values to NULL' => "Ställ in auto inkrement fältvärden till NULL", - 'Add DROP command before create statements' => "Lägg DROP kommandot före skapa uttalanden", - 'Export' => "Export", - 'Import' => "Import", - 'Export Database' => "Exportera Database", - 'Export Table' => "Exportera tabell", - 'Server information' => "Serverinformation", - 'Server' => "Server", - 'Version comment' => "Version kommentar", - 'Character sets' => "Teckenuppsättningar", - 'Server character set' => "Server teckenuppsättning", - 'Client character set' => "Client teckenuppsättning", - 'Database character set' => "Databas teckenuppsättning", - 'Results character set' => "Resultat teckenuppsättning", - 'Export As' => "Exportera som", - 'Insert Statements' => "Sätt Uttalanden", - 'Include field names in query' => "Inkludera fältnamn i fråga", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Plain Text (en post per rad)", - 'Fields separated by:' => "Fält avgränsas med:", - 'Export Results' => "Exportera resultat", - 'Select SQL batch file to import' => "Välj SQL batch fil att importera", - 'Continue processing even if error occurs' => "Fortsätt behandlingen även om fel uppstår", - 'Basic Information' => "Grundläggande information", - 'Table Properties' => "Egenskaper för tabell", - 'Table Name' => "Tabell Namn", - 'Field Name' => "Fältnamn", - 'Data Type' => "Datatyp", - 'Length' => "Längd", - 'Default value' => "Standardvärde", - 'Unsigned' => "Unsigned", - 'Zero Fill' => "Noll Fyll", - 'Primary Key' => "Primärnyckel", - 'Auto Increment' => "Auto Increment", - 'Not NULL' => "Inte NULL", - 'Character Set' => "Teckenuppsättning", - 'Collation' => "Sortering", - 'Comment' => "Kommentera", - 'Waiting for table information to be submitted' => "Väntar på bord uppgifter som ska lämnas", - 'Add field' => "Lägg till fält", - 'Delete selected field' => "Ta bort markerade fält", - 'Clear Table Information' => "Rensa Bordsinformation", - 'List of values' => "Lista med värden", - 'Query Results' => "Frågeresultat", - 'Data for {{TABLE}}' => "Data för {{TABLE}}", - 'Select tables to be analyzed/repaired' => "Välj tabeller som skall analyseras / repareras", - 'Operation to perform' => "Operation för att utföra", - 'Analyze' => "Analysera", - 'Check' => "Kontrollera", - 'Optimize' => "Optimera", - 'Repair' => "Reparation", - 'Skip Binary logging' => "Hoppa Binär loggning", - 'Default' => "Standard", - 'Quick' => "Quick", - 'Fast' => "Snabb", - 'Medium' => "Medium", - 'Extended' => "Utökad", - 'Changed' => "Ändrad", - 'Use Frm files (MyISAM tables)' => "Använd FRM filer (MyISAM tabeller)", - 'User Information' => "Användarinformation", - 'Global Privileges' => "Global immunitet", - 'Database Privileges' => "Databas immunitet", - 'Import File' => "Importera fil", - 'Index Manager' => "Index Manager", - 'Edit table structure' => "Redigera tabell struktur", - 'Save All Changes' => "Spara alla ändringar", - 'Changes are not saved until you press [Save All Changes]' => "Ändringar sparas inte förrän du trycker på [Spara alla ändringar]", - 'Field Length' => "Banlängd", - 'Select objects to include in export' => "Välj objekt som ska inkluderas i exporten", - 'Export type' => "Export typ", - 'Select All/None' => "Välj alla / ingen", - 'Add User' => "Lägg till användare", - 'Update User' => "Uppdatera användare", - 'Delete selected User' => "Ta bort markerade användare", - 'Remove Password' => "Ta bort lösenord", - 'Select tables to search' => "Välj tabeller för att söka", - 'Search Options' => "Sökalternativ", - 'Search in following field types' => "Sök i följande fälttyper", - 'Numeric Fields' => "Numeriska fält", - 'Character Fields' => "Tecken Fält", - 'Text Fields' => "Textfält", - 'Date/Time Fields' => "Datum / tid Fields", - 'Comparison Type' => "Jämförelse Typ", - 'Text to search' => "Text att söka", - 'Search' => "Sök", - 'Search Results' => "Sökresultat", - 'Number of matches' => "Antal matcher", - 'Search results for {{KEYWORD}} in the database' => "Sökresultat för {{KEYWORD}} i databasen", - '{{NUM}} match(es)' => "{{NUM}} match (er)", - 'Copy query to editor' => "Kopiera fråga till redaktör", - 'Done' => "Done", - 'SQL Editor' => "SQL Editor", - 'Create Copy' => "Skapa Kopiera", - 'Minimize All' => "Minimera alla", - 'Copy Record(s)' => "Kopiera rad (er)", - 'YAML' => "Yaml", - 'Comma Separated (CSV for Excel)' => "Comma Separated (CSV för Excel)", - 'Select data file to import' => "Välj datafil du vill importera", - 'Select table for data import' => "Välj tabell för data import", - 'First line contains column names' => "Första raden innehåller kolumnnamn", - 'Select objects to operate upon' => "Välja objekt att arbeta på", - 'Operations to perform' => "Verksamheten för att utföra", - 'Add prefix string to name' => "Lägg prefix sträng för att nämna", - 'Delete prefix string from name' => "Ta bort prefix string från namn", - 'Command text' => "Kommando text", - 'DROP selected database objects' => "Släpp markerade databasobjekt", - 'Batch operation results' => "Satsvisa operationen resulterar", - 'Operation' => "Drift", - 'Status' => "Status", - '{{NUM}} queries generated' => "{{NUM}} frågar genereras", - 'Please select one or more operations to perform' => "Välj ett eller flera operationer att utföra", - 'Quick Search' => "Sök", - '{{NAME}} client library is not installed' => "{{NAME}} är klientbibliotek inte installerat", - '{{NAME}} extension is not installed' => "{{NAME}} är förlängningen inte installerat", - 'SQLite database folder is inaccessible or not writable' => "SQLite databas mappen otillgängliga eller inte skrivbar", - 'Maximize/Restore Results Pane' => "Maximera / Återställ resultatfönstret", - 'Select databases to operate upon' => "Välj databaser att arbeta på", - 'DROP selected databases' => "Släpp markerade databaserna", - 'The following operation is irreversible' => "Följande operation är irreversibel", - 'Potential data loss might occur' => "Dataförluster kan uppstå", - 'Add TRUNCATE command before insert statements' => "Lägg STYMPA kommando innan INSERT uttalanden", - 'Select objects to include in backup' => "Markera objekt som ska ingå i säkerhetskopian", - 'Backup folder does not exist or is not writable' => "Säkerhetskopieringsmapp finns inte eller är inte skrivbar", - 'Backup type' => "Backup typ", - 'Database backup successfully created' => "Säkerhetskopiering av databaser skapats", - 'Failed to create database backup' => "Det gick inte att skapa säkerhetskopiering av databaser", - 'Generate Bulk insert statements' => "Generera Bulk Insert uttalanden", - 'Maximum size of SQL statement' => "Max storlek på SQL-uttryck", - 'Show record count with table names' => "Visa rekord räkna med tabellnamn", - 'Sort Table listing by' => "Sortera tabell notering av", - 'Name' => "Namn", - 'Last Update Time' => "Senast uppdaterad Time", - 'Maximum records to display in result set' => "Maximala poster som ska visas i resultatet set", - 'Show popup dialog for editing large text data' => "Visa popup dialogrutan för redigering stora textdata", - 'Miscellaneous' => "Övrigt", - 'Reset all confirmation dialogs' => "Återställ alla bekräftelsedialogrutor", - 'Record Editing' => "Record Redigering", - 'Exclude Table type' => "Uteslut Tabell Typ", - 'Exclude Table Character set' => "Uteslut Tabell Teckenuppsättning", - 'Backup filename' => "Backup filnamn", - 'Invalid filename format' => "Ogiltigt filnamn format", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "alla", - 'all selected' => "alla valda", - 'An error occured while refreshing the object list.' => "Ett fel uppstod när uppfriskande objektet listan.", - 'Are you sure you want to clear all field information from table?' => "Är du säker på att du vill rensa alla fält information från bordet?", - 'Are you sure you want to delete this user account?' => "Är du säker på att du vill ta bort denna användarkonto?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "Är du säker på att du vill släppa alla objekt från databasen {{NAME}}?", - 'Are you sure you want to DROP selected objects?' => "Är du säker på att du vill släppa markerade objekt?", - 'Are you sure you want to DROP the database {{NAME}}?' => "Är du säker på att du vill avregistrera databasen {{NAME}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "Är du säker på att du vill släppa detta objekt? {{NAME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "Är du säker på att du vill köra {{SELECTED}} frågor?", - 'Are you sure you want to logout?' => "Är du säker på att du vill logga ut?", - 'Are you sure you want to truncate the table {{NAME}}?' => "Är du säker på att du vill trunkera tabellen {{NAME}}?", - 'Blob Data [{{SIZE}}]' => "BLOB-data [{{SIZE}}]", - 'Cancel' => "Avbryt", - 'Check for Updates' => "Söka efter uppdateringar", - 'Clear command history?' => "Rensa kommando historia?", - 'Close' => "Stäng", - 'Confirm Action' => "Bekräfta åtgärd", - 'Confirm and do not ask me again about this choice' => "Bekräfta och inte fråga mig igen om detta val", - 'Copy Object' => "Kopiera objekt", - 'Create Database' => "Create Database", - 'Create Primary Index on this field' => "Skapa primär Index på detta område", - 'Databases' => "Databaser", - 'Default value [Use quotes to specify string values]' => "Standardvärdet [använda citationstecken för att ange strängvärden]", - 'Disallow NULL values in Field' => "Hindra NULL-värden i fält", - 'Enter new index name' => "Ange nytt index namn", - 'Enter new name for the database object' => "Ange nytt namn för databasen objektet", - 'Enter the text to search in database' => "Skriv texten för att söka i databasen", - 'Error' => "Fel", - 'Events' => "Evenemang", - 'Execute query' => "Utför sökning", - 'Exports results' => "Exporten resultat", - 'Failed to refresh the results.' => "Misslyckades med att uppdatera resultaten.", - 'Field Datatype' => "Fält datatyp", - 'Field Name' => "Fältnamn", - 'Field value is Auto Incremented' => "Fältvärde är Auto ökas", - 'Functions' => "Funktioner", - 'Indexes Updated' => "Index Uppdaterad", - 'Maximum Length of field value' => "Maximal längd på fältvärde", - 'Navigation Error. Try reloading the page' => "Navigationsfel. Prova att uppdatera sidan", - 'New settings saved and applied' => "Nya inställningar sparas och användas", - 'New version is available' => "Ny version finns tillgänglig", - 'Next' => "Nästa", - 'No' => "Nr", - 'No Table selected' => "Ingen tabell vald", - 'Not enough room to show this pane.' => "Inte tillräckligt med utrymme för att visa den här panelen.", - 'OK' => "OK", - 'One or more field information is incomplete' => "En eller flera fält informationen är ofullständig", - 'Open' => "Öppna", - 'Operation failed' => "Misslyckades", - 'Pad field values with leading zeros' => "Pad fältvärden med inledande nollor", - 'Pane' => "Pane", - 'Passwords do not match' => "Lösenorden matchar inte", - 'Pin' => "Pin", - 'Please select one or more operations to perform' => "Välj ett eller flera operationer att utföra", - 'Please type in one or more queries in the SQL editor!' => "Skriv in ett eller flera frågor i SQL-editorn!", - 'Please wait...' => "Var god vänta ...", - 'Previous' => "Föregående", - 'Procedures' => "Förfaranden", - 'Prompt' => "Fråga", - 'Refresh results' => "Uppdatera resultat", - 'Refreshing object list' => "Uppfriskande objektlista", - 'Rename Object' => "Byt namn på objekt", - 'Resize' => "Ändra storlek", - 'Results page:' => "Resultat sida:", - 'Select a database to view privileges for the user' => "Välj en databas för att visa privilegier för användaren", - 'Select an index to view / edit its details' => "Välj ett index för att visa / redigera dess detaljer", - 'Select at least one field type for searching' => "Välj minst en fälttyp för sökning", - 'Select objects to operate upon' => "Välja objekt att arbeta på", - 'selector' => "väljaren", - 'Slide Open' => "Skjut upp", - 'Table information requires at least one valid field' => "Tabell information kräver minst ett giltigt område", - 'Table name is required' => "Tabell namn behövs", - 'Table successfully created' => "Tabell skapats", - 'Table successfully modified' => "Tabell framgångsrikt modifierade", - 'Tables' => "Tabeller", - 'Text Data [{{SIZE}}]' => "Textdata [{{SIZE}}]", - 'There is no record in the results to export' => "Det finns inga uppgifter i resultatet att exportera", - 'This attribute is not required for selected field type' => "Detta attribut behövs inte för valda fälttypen", - 'Triggers' => "Triggers", - 'Un-Pin' => "Un-Pin", - 'Unsigned numbered field only' => "Osignerade numrerade fält endast", - 'Update check failed' => "Uppdatera kolla misslyckades", - 'User information is incomplete or invalid' => "Användaren informationen är ofullständig eller felaktig", - 'User Manager' => "User Manager", - 'Views' => "Visningar", - 'WARNING' => "VARNING", - 'Yes' => "Ja", - 'You have the latest version' => "Du har den senaste versionen", - - ); -?> diff --git a/lang/th.php b/lang/th.php deleted file mode 100644 index 8535df6..0000000 --- a/lang/th.php +++ /dev/null @@ -1,463 +0,0 @@ - "ฐานข้อมูลการใช้งาน", - 'Drop Database' => "วางฐานข้อมูล", - 'Empty Database' => "ฐานข้อมูลเปล่า", - 'Drop all tables from this database' => "Drop ทุกตารางจากฐานข้อมูลนี้", - 'Select statement' => "เลือกคำสั่ง", - 'Insert statement' => "คำสั่งแทรก", - 'Update statement' => "งบปรับปรุง", - 'Describe' => "บรรยาย", - 'Show create command' => "แสดงการสร้างคำสั่ง", - 'View data' => "ดูข้อมูล", - 'Alter Table' => "ตาราง Alter", - 'Indexes' => "ดัชนี", - 'Engine Type' => "เครื่องยนต์", - 'More operations' => "การดำเนินงานเพิ่มเติม", - 'Truncate' => "ตัด", - 'Drop' => "เลื่อน", - 'Rename' => "ตั้งชื่อใหม่", - 'Export table data' => "ส่งออกข้อมูลตาราง", - 'Create Table' => "สร้างตาราง", - 'Create View' => "สร้างมุมมอง", - 'Create Procedure' => "ขั้นตอนการสร้าง", - 'Create Function' => "สร้างฟังก์ชั่น", - 'Create Trigger' => "สร้างทริกเกอร์", - 'Create Event' => "สร้างกิจกรรม", - 'Show/Hide Panel' => "แสดง / ซ่อน Panel", - 'Show/Hide Header' => "แสดง / ซ่อนหัว", - 'Copy all queries to clipboard' => "คัดลอกทั้งหมดแบบสอบถามไปยังคลิปบอร์ด", - 'Clear history' => "ลบประวัติ", - 'Copy Column values' => "คัดลอกค่าคอลัมน์", - 'Copy to clipboard' => "คัดลอกไปที่คลิปบอร์ด", - 'Generate SQL Filter' => "SQL สร้างตัวกรอง", - 'Database Manager' => "ผู้จัดการฐานข้อมูล", - 'Manage databases' => "จัดการฐานข้อมูล", - - // main menu related text - 'Database' => "ฐานข้อมูล", - 'Refresh' => "Refresh", - 'Refresh database object list' => "Refresh รายชื่อวัตถุฐานข้อมูล", - 'Create new' => "สร้างใหม่", - 'Export' => "ส่งออก", - 'Export database to external file' => "ฐานข้อมูลการส่งออกไปยังแฟ้มภายนอก", - 'Objects' => "วัตถุ", - 'Create Table' => "สร้างตาราง", - 'Create a new table in the database' => "สร้างตารางใหม่ในฐานข้อมูล", - 'Create View' => "สร้างมุมมอง", - 'Create a new view in the database' => "สร้างมุมมองใหม่ในฐานข้อมูล", - 'Create Stored Procedure' => "สร้างขั้นตอนการจัดเก็บ", - 'Create a new stored procedure in the database' => "สร้างกระบวนการจัดเก็บในฐานข้อมูลใหม่", - 'Create Function' => "สร้างฟังก์ชั่น", - 'Create a new user defined function in the database' => "สร้างผู้ใช้ใหม่ฟังก์ชั่นที่กำหนดไว้ในฐานข้อมูล", - 'Create Trigger' => "สร้างทริกเกอร์", - 'Create a new trigger in the database' => "สร้างเรียกใหม่ในฐานข้อมูล", - 'Create Event' => "สร้างกิจกรรม", - 'Create a new event in the database' => "สร้างกิจกรรมใหม่ในฐานข้อมูล", - 'Data' => "ข้อมูล", - 'Import batch file' => "แฟ้มชุดนำเข้า", - 'Import multiple queries from batch file' => "แบบสอบถามนำเข้าหลายรายการจากแฟ้มแบทช์", - 'Export database' => "ฐานข้อมูลการส่งออก", - 'Export database to batch file as sql dump' => "ฐานข้อมูลการส่งออกไปยังแฟ้มการถ่ายโอนข้อมูลแบทช์เป็น SQL", - 'Export current results' => "การส่งออกผลในปัจจุบัน", - 'Export query results to clipboard or files' => "การส่งออกผลแบบสอบถามไปยังคลิปบอร์ดหรือไฟล์", - 'Tools' => "เครื่องมือ", - 'Process Manager' => "Process Manager", - 'View and manage database processes' => "ดูและจัดการกระบวนการฐานข้อมูล", - 'Repair Tables' => "ตารางซ่อม", - 'Analyze and repair database tables' => "ตารางฐานข้อมูลวิเคราะห์และการซ่อมแซม", - 'User Manager' => "ผู้จัดการของผู้ใช้", - 'Manage database users' => "การจัดการผู้ใช้ฐานข้อมูล", - 'Search in Database' => "ค้นหาในฐานข้อมูล", - 'Search for text in the database' => "ค้นหาตัวอักษรในฐานข้อมูล", - 'Information' => "ข้อมูล", - 'Server/Connection Details' => "รายละเอียดการเชื่อมต่อ / Server", - 'View server configuration' => "การตั้งค่ามุมมองของเซิร์ฟเวอร์", - 'View server and connection details' => "มุมมองและการเชื่อมต่อเซิร์ฟเวอร์รายละเอียด", - 'Server Variables' => "ตัวแปร Server", - 'Database Summary' => "สรุปฐานข้อมูล", - 'View current database summary stats' => "ดูสถิติการสรุปฐานข้อมูลปัจจุบัน", - 'Interface' => "Interface", - 'Options' => "Options", - 'Configure application options' => "กำหนดค่าตัวเลือกโปรแกรมประยุกต์", - 'UI Theme' => "UI Theme", - 'Database Objects' => "วัตถุฐานข้อมูล", - 'Toggle Object Viewer' => "Viewer Object Toggle", - 'Help contents' => "เนื้อหาความช่วยเหลือ", - 'Learn the basics of using MyWebSQL' => "เรียนรู้เบื้องต้นเกี่ยวกับการใช้ MyWebSQL", - 'QuickStart Tutorials' => "QuickStart Tutorials", - 'See quick hands-on tutorial of MyWebSQL interface' => "พบส่วนติดต่อของ Hands - On กวดวิชาของ MyWebSQL อย่างรวดเร็ว", - 'Online documentation' => "เอกสารออนไลน์", - 'View online documentation on project website' => "ดูเอกสารออนไลน์บนเว็บไซต์ของโครงการ", - 'Request a Feature' => "ขอคุณสมบัติ", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "หากคุณต้องการคุณสมบัติที่คุณชื่นชอบมากที่สุดในการเป็นส่วนหนึ่งของ MyWebSQL โปรดคลิกที่นี่เพื่อแจ้งเกี่ยวกับเรื่องนี้", - 'Report a Problem' => "รายงานปัญหา", - 'Check for updates' => "ตรวจหาการปรับปรุง", - 'Check for updated versions of the application online' => "ตรวจสอบเวอร์ชันล่าสุดของใบสมัครออนไลน์", - 'Logout' => "ออกจากระบบ", - 'Logout from this session' => "ออกจากระบบจากการประชุมครั้งนี้", - 'Language' => "ภาษา", - 'SQL Editor' => "แก้ไข sql", - 'Toggle SQL Editor' => "แก้ไข sql สลับ", - 'Experimental' => "การทดลอง", - 'Import table data' => "นำเข้าข้อมูลตาราง", - 'Import table data from external file' => "ข้อมูลตารางนำเข้าจากแฟ้มภายนอก", - 'Batch operations' => "การดำเนินงานชุด", - 'Perform one or more batch operations on database' => "ดำเนินการอย่างใดอย่างหนึ่งหรือมากกว่าการดำเนินงานชุดในฐานข้อมูล", - 'Create a new schema in the database' => "สร้างสคีมาใหม่ในฐานข้อมูล", - 'Create Schema' => "สร้างแบบแผน", - 'Table Description' => "คำอธิบายของตาราง", - 'Database Manager' => "ผู้จัดการฐานข้อมูล", - 'Manage databases' => "จัดการฐานข้อมูล", - 'Backup database on the server as SQL dump' => "การสำรองฐานข้อมูลบนเซิร์ฟเวอร์ที่เป็นการถ่ายโอนข้อมูล SQL", - 'Backup Database' => "การสำรองฐานข้อมูล", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "เบราว์เซอร์ของคุณดูเหมือนจะเก่ามากและจะไม่สนับสนุนคุณสมบัติทั้งหมดที่จำเป็นในการเรียกใช้ MyWebSQL", - 'Try using a newer version of the browser to run this application.' => "ลองใช้เบราว์เซอร์รุ่นใหม่เพื่อเรียกใช้โปรแกรมนี้", - - // text used on various screens in the interface - 'Visit Project website' => "เข้าเยี่ยมชมเว็บไซต์โครงการ", - 'Version' => "รุ่น", - 'Loading' => "กำลังโหลด", - 'Quick Edit Options' => "ตัวเลือกการแก้ไขอย่างรวดเร็ว", - 'Press {{KEY}} to set NULL' => "กด {{KEY}} การตั้งค่า NULL", - 'MySQL Server' => "MySQL Server", - 'Logged in as: {{USER}}' => "เข้าสู่ระบบเป็น : {{USER}}", - 'Results' => "ผล", - 'Messages' => "ข้อความที่", - 'Information' => "ข้อมูล", - 'History' => "ประวัติ", - 'There are no results to show in this view' => "ไม่มีผลลัพธ์ที่จะแสดงในมุมมองนี้", - 'Refresh results' => "ผลการฟื้นฟู", - 'Please wait' => "โปรดรอสักครู่", - 'Query All' => "แบบสอบถามทั้งหมด", - 'Query' => "สอบถาม", - 'Add Record' => "บันทึกเพิ่ม", - 'Delete Record(s)' => "ลบ Record (s)", - 'Update Record(s)' => "Update Record (s)", - 'Generate SQL' => "SQL สร้าง", - 'Database name' => "ชื่อฐานข้อมูล", - 'Select database after creation' => "เลือกฐานข้อมูลหลังจากการสร้าง", - 'Database connection failed to the server' => "เชื่อมต่อฐานข้อมูลไปยังเซิร์ฟเวอร์ล้มเหลว", - 'Host' => "เจ้าบ้าน", - 'User' => "ของผู้ใช้", - 'Select a database to begin' => "เลือกฐานข้อมูลที่จะเริ่มต้น", - 'Select/unselect All records' => "เลือก / ยกเลิกการเลือกระเบียนทั้งหมด", - 'Primary key column' => "คอลัมน์คีย์หลัก", - 'Unique key column' => "ไม่ซ้ำคอลัมน์สำคัญ", - 'Showing records {{START}} - {{END}}' => "ระเบียนแสดง {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "ระเบียนแสดง {{MAX}} ครั้งแรกเท่านั้น", - '1 query successfully executed' => "1 แบบสอบถามดำเนินการเรียบร้อยแล้ว", - '{{NUM}} queries successfully executed' => "{{NUM}} แบบสอบถามดำเนินการเรียบร้อยแล้ว", - '{{NUM}} record(s) were affected' => "{{NUM}} บันทึก (s) ได้รับผลกระทบ", - '{{NUM}} record(s) updated' => "{{NUM}} บันทึก (s) การปรับปรุง", - 'Error occurred while executing the query' => "เกิดข้อผิดพลาดเกิดขึ้นในขณะดำเนินการสืบค้น", - '{{NUM}} queries failed to execute' => "{{NUM}} การค้นหาล้มเหลวในการดำเนินการ", - 'Click to view/edit column data [{{NUM}} Bytes]' => "คลิกเพื่อดู / แก้ไขข้อมูลคอลัมน์ [{{NUM}} ไบต์]", - 'Blob data is not editable' => "ข้อมูล Blob ไม่สามารถแก้ไขได้", - 'Blob data saved' => "Blob ข้อมูลที่บันทึกไว้", - 'Failed to save blob data' => "ไม่สามารถบันทึกข้อมูลหยด", - 'The process with id [{{PID}}] was killed' => "กระบวนการที่มี ID [{{PID}}] ถูกฆ่า", - 'No such process [id = {{PID}}]' => "ไม่มีกระบวนการดังกล่าว [ID = {{PID}}]", - 'Select a process and click the button to kill the process' => "กระบวนการเลือกและคลิกปุ่มเพื่อฆ่ากระบวนการ", - 'Process ID' => "ID กระบวนการ", - 'Command' => "คำสั่ง", - 'Time' => "เวลา", - 'Info' => "ข้อมูล", - 'Kill Process' => "จะฆ่า", - 'Failed to get process list' => "ไม่สามารถรับรายการกระบวนการ", - 'The command executed successfully' => "คำสั่งดำเนินการเรียบร้อยแล้ว", - 'Invalid server configuration' => "การตั้งค่าเซิร์ฟเวอร์ไม่ถูกต้อง", - 'Invalid Credentials' => "หนังสือรับรองไม่ถูกต้อง", - 'New database successfully created' => "ฐานข้อมูลใหม่ที่สร้างขึ้นประสบความสำเร็จ", - 'File upload failed. Please try again' => "อัพโหลดไฟล์ล้มเหลว โปรดลองอีกครั้ง", - 'No queries were executed during import' => "แบบสอบถามไม่มีการดำเนินการระหว่างการนำเข้า", - 'Maximum upload filesize is {{SIZE}}' => "ขนาดไฟล์อัพโหลดสูงสุดคือ {{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "filetypes สนับสนุน / นามสกุลคือ ({{LIST}})", - 'Database summary' => "สรุปฐานข้อมูล", - 'Server Variables' => "ตัวแปร Server", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "วัตถุใด ๆ ที่มีชื่อเดียวกับที่มีอยู่ควรจะลดลงด้วยตนเองก่อนที่จะดำเนินการสร้างคำสั่ง", - 'Only create commands are accepted' => "เฉพาะคำสั่งที่สร้างได้รับการยอมรับ", - 'User ID' => "รหัสผู้ใช้", - 'Password' => "รหัสผ่าน", - 'Login' => "เข้าสู่ระบบ", - 'Create new database object' => "สร้างวัตถุฐานข้อมูลใหม่", - 'Enter command for object creation' => "ป้อนคำสั่งสำหรับการสร้างวัตถุ", - 'Submit' => "เสนอ", - 'Show blob data as: {{TYPE}}' => "แสดงข้อมูลหยดเป็น : {{TYPE}}", - 'Blob data for column {{NAME}}' => "ข้อมูล Blob สำหรับคอลัมน์ {{NAME}}", - 'Create command for {{TYPE}} {{NAME}}' => "สร้างคำสั่งสำหรับ {{TYPE}} {{NAME}}", - 'Table Engine (type)' => "ตาราง Engine (ชนิด)", - 'Change Table Type' => "ตารางชนิดเปลี่ยน", - 'The requested page is not available on the server' => "หน้าที่ร้องขอไม่สามารถใช้งานบนเซิร์ฟเวอร์", - 'Error' => "ความผิดพลาด", - 'It appears that you attempted to submit an invalid request to the server' => "ดูเหมือนว่าคุณพยายามที่จะส่งการร้องขอไปยังเซิร์ฟเวอร์ที่ไม่ถูกต้อง", - 'The request has been denied. Reloading the page might solve the problem' => "ขอได้รับการปฏิเสธ โหลดหน้านี้อาจจะช่วยแก้ปัญหา", - 'Access Denied' => "ปฏิเสธการเข้าใช้", - 'Help' => "ความช่วยเหลือ", - 'To see most up-to-date help contents, please visit {{LINK}}' => "หากต้องการดูเนื้อหาช่วยให้มากที่สุดทันสมัย​​เพื่อโปรดไปที่ {{LINK}}", - 'It appears that your browser session has expired' => "ดูเหมือนว่าช่วงเบ​​ราว์เซอร์ของคุณหมดอายุแล้ว", - 'Please refresh the webpage to re-login' => "โปรดรีเฟรชหน้าเว็บใหม่อีกครั้งเข้าสู่ระบบ", - 'Table information' => "ข้อมูลตารางที่", - 'Edit' => "Edit", - 'Save' => "บันทึก", - 'Either the database is empty, or there was an error retrieving list of database objects' => "ไม่ว่าฐานข้อมูลยังว่างอยู่หรือมีข้อผิดพลาดในการเรียกรายชื่อของวัตถุฐานข้อมูล", - 'Please try closing and re-opening this dialog again' => "กรุณาลองปิดและเปิดใหม่อีกครั้งกล่องโต้ตอบนี้อีก", - 'Structure' => "โครงสร้าง", - 'Table Data' => "ข้อมูลตาราง", - 'Structure and Table Data' => "โครงสร้างและข้อมูลตาราง", - 'Options' => "Options", - 'Set Auto increment field values to NULL' => "ตั้งออโต้ค่าเขตข้อมูลที่เพิ่มขึ้นเพื่อ NULL", - 'Add DROP command before create statements' => "คำสั่ง DROP เพิ่มงบก่อนสร้าง", - 'Export' => "ส่งออก", - 'Import' => "การนำเข้า", - 'Export Database' => "ฐานข้อมูลการส่งออก", - 'Export Table' => "ตารางการส่งออก", - 'Server information' => "ข้อมูลเซิร์ฟเวอร์", - 'Server' => "เซิร์ฟเวอร์", - 'Version comment' => "ความคิดเห็น Version", - 'Character sets' => "ชุดตัวอักษร", - 'Server character set' => "ตัว Server ตั้ง", - 'Client character set' => "Client ตั้งค่าตัวอักษร", - 'Database character set' => "อักขระตั้งฐานข้อมูล", - 'Results character set' => "ผลการตั้งค่าตัวอักษร", - 'Export As' => "ส่งออกเป็น", - 'Insert Statements' => "งบแทรก", - 'Include field names in query' => "รวมชื่อเขตข้อมูลในแบบสอบถาม", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Plain Text (หนึ่งระเบียนต่อบรรทัด)", - 'Fields separated by:' => "เขตข้อมูลที่แยกออกจากกันโดย :", - 'Export Results' => "ผลการส่งออก", - 'Select SQL batch file to import' => "เลือกชุดแฟ้ม SQL เพื่อนำเข้า", - 'Continue processing even if error occurs' => "การประมวลผลดำเนินต่อไปแม้ว่าข้อผิดพลาดเกิดขึ้น", - 'Basic Information' => "ข้อมูลพื้นฐาน", - 'Table Properties' => "คุณสมบัติของตาราง", - 'Table Name' => "ชื่อตาราง", - 'Field Name' => "ชื่อเขตข้อมูล", - 'Data Type' => "ชนิดข้อมูล", - 'Length' => "ความยาว", - 'Default value' => "ค่าเริ่มต้น", - 'Unsigned' => "ไม่ได้ลงนาม", - 'Zero Fill' => "Zero Fill", - 'Primary Key' => "คีย์หลัก", - 'Auto Increment' => "Auto Increment", - 'Not NULL' => "ไม่เป็นโมฆะ", - 'Character Set' => "ชุดตัวอักษร", - 'Collation' => "การตรวจปรู๊ฟ", - 'Comment' => "คิดเห็น", - 'Waiting for table information to be submitted' => "กำลังรอข้อมูลตารางที่จะเสนอ", - 'Add field' => "เพิ่มเขตข้อมูล", - 'Delete selected field' => "เขตข้อมูลที่เลือกลบ", - 'Clear Table Information' => "ข้อมูลตารางล้าง", - 'List of values' => "รายการของค่า", - 'Query Results' => "ผลการค้นหา", - 'Data for {{TABLE}}' => "ข้อมูลสำหรับ {{TABLE}}", - 'Select tables to be analyzed/repaired' => "ตารางเลือกเพื่อทำการวิเคราะห์ / ซ่อม", - 'Operation to perform' => "การดำเนินงานเพื่อดำเนินการ", - 'Analyze' => "วิเคราะห์", - 'Check' => "ตรวจสอบ", - 'Optimize' => "เพิ่มประสิทธิภาพ", - 'Repair' => "ซ่อมแซม", - 'Skip Binary logging' => "Binary Skip เข้าสู่ระบบ", - 'Default' => "Default", - 'Quick' => "รวดเร็ว", - 'Fast' => "รวดเร็ว", - 'Medium' => "ปานกลาง", - 'Extended' => "Extended", - 'Changed' => "มีการเปลี่ยนแปลง", - 'Use Frm files (MyISAM tables)' => "ไฟล์ที่ใช้ FRM (ตาราง MyISAM)", - 'User Information' => "ข้อมูลผู้ใช้", - 'Global Privileges' => "สิทธิพิเศษระดับโลก", - 'Database Privileges' => "ฐานข้อมูลสิทธิประโยชน์", - 'Import File' => "ไฟล์นำเข้า", - 'Index Manager' => "ดัชนีผู้จัดการ", - 'Edit table structure' => "แก้ไขโครงสร้างของตาราง", - 'Save All Changes' => "บันทึกการเปลี่ยนแปลงทั้งหมด", - 'Changes are not saved until you press [Save All Changes]' => "การเปลี่ยนแปลงจะไม่ถูกบันทึกจนกว่าคุณจะกด [บันทึกทั้งหมดการเปลี่ยนแปลง]", - 'Field Length' => "ความยาวเขตข้อมูล", - 'Select objects to include in export' => "วัตถุที่เลือกให้รวมอยู่ในการส่งออก", - 'Export type' => "ประเภทของการส่งออก", - 'Select All/None' => "เลือกทั้งหมดไม่มี /", - 'Add User' => "เพิ่มผู้ใช้", - 'Update User' => "ผู้ปรับปรุง", - 'Delete selected User' => "ลบรายการที่เลือกผู้ใช้", - 'Remove Password' => "เอารหัสผ่าน", - 'Select tables to search' => "ตารางเลือกเพื่อค้นหา", - 'Search Options' => "ตัวเลือกการค้นหา", - 'Search in following field types' => "ค้นหาในเขตข้อมูลประเภทดังต่อไปนี้", - 'Numeric Fields' => "ฟิลด์ตัวเลข", - 'Character Fields' => "เขตข้อมูลตัวอักษร", - 'Text Fields' => "ฟิลด์ข้อความ", - 'Date/Time Fields' => "วันที่ / เขตเวลา", - 'Comparison Type' => "ประเภทเปรียบเทียบ", - 'Text to search' => "ข้อความที่ต้องการค้นหา", - 'Search' => "Search", - 'Search Results' => "ผลการค้นหา", - 'Number of matches' => "ที่ตรงกับ", - 'Search results for {{KEYWORD}} in the database' => "ผลการค้นหาสำหรับ {{KEYWORD}} คำสำคัญในฐานข้อมูล", - '{{NUM}} match(es)' => "{{NUM}} ตรง (ES)", - 'Copy query to editor' => "แบบสอบถามคัดลอกไปที่บรรณาธิการ", - 'Done' => "Done", - 'SQL Editor' => "แก้ไข sql", - 'Create Copy' => "สร้างสำเนา", - 'Minimize All' => "ลดทุก", - 'Copy Record(s)' => "คัดลอก Record (s)", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "เครื่องหมายจุลภาคคั่นระหว่าง (CSV สำหรับ Excel)", - 'Select data file to import' => "เลือกแฟ้มข้อมูลที่จะนำเข้า", - 'Select table for data import' => "เลือกตารางสำหรับการนำเข้าข้อมูล", - 'First line contains column names' => "บรรทัดแรกมีชื่อคอลัมน์", - 'Select objects to operate upon' => "เลือกวัตถ​​ุในการดำเนินงานตาม", - 'Operations to perform' => "การดำเนินงานที่จะดำเนินการ", - 'Add prefix string to name' => "เพิ่มสตริงคำนำหน้าชื่อ", - 'Delete prefix string from name' => "ลบสตริงคำนำหน้าชื่อจาก", - 'Command text' => "ข้อความคำสั่ง", - 'DROP selected database objects' => "วางวัตถุฐานข้อมูลที่เลือก", - 'Batch operation results' => "ผลการดำเนินงานแบทช์", - 'Operation' => "การทำงาน", - 'Status' => "สถานะ", - '{{NUM}} queries generated' => "{{NUM}} สืบค้นที่สร้าง", - 'Please select one or more operations to perform' => "โปรดเลือกหนึ่งตัวหรือมากกว่าการดำเนินงานที่จะดำเนินการ", - 'Quick Search' => "การค้นหาอย่างรวดเร็ว", - '{{NAME}} client library is not installed' => "{{NAME}} ห้องสมุดลูกค้าไม่ได้ติดตั้ง", - '{{NAME}} extension is not installed' => "{{NAME}} ส่วนขยายจะถูกไม่ได้ติดตั้ง", - 'SQLite database folder is inaccessible or not writable' => "โฟลเดอร์ฐานข้อมูล SQLite เป็นไม่สามารถเข้าถึงหรือไม่สามารถเขียนได้", - 'Maximize/Restore Results Pane' => "เพิ่ม / Restore บานหน้าต่างผลลัพธ์", - 'Select databases to operate upon' => "เลือกฐานข้อมูลในการดำเนินงานตาม", - 'DROP selected databases' => "DROP ฐานข้อมูลที่เลือก", - 'The following operation is irreversible' => "การดำเนินการดังต่อไปนี้กลับไม่ได้", - 'Potential data loss might occur' => "การสูญเสียข้อมูลที่อาจเกิดขึ้นอาจเกิดขึ้น", - 'Add TRUNCATE command before insert statements' => "เพิ่มคำสั่งก่อนที่จะตัดงบแทรก", - 'Select objects to include in backup' => "เลือกวัตถ​​ุที่จะรวมไว้ในการสำรองข้อมูล", - 'Backup folder does not exist or is not writable' => "โฟลเดอร์สำรองไม่อยู่หรือไม่สามารถเขียนได้", - 'Backup type' => "ประเภทการสำรองข้อมูล", - 'Database backup successfully created' => "การสำรองฐานข้อมูลที่สร้างขึ้นประสบความสำเร็จ", - 'Failed to create database backup' => "ล้มเหลวในการสร้างการสำรองฐานข้อมูล", - 'Generate Bulk insert statements' => "สร้างงบแทรก Bulk", - 'Maximum size of SQL statement' => "ขนาดสูงสุดของคำสั่ง SQL", - 'Show record count with table names' => "แสดงนับบันทึกด้วยชื่อตาราง", - 'Sort Table listing by' => "ตารางแสดงรายการเรียงตาม", - 'Name' => "ชื่อ", - 'Last Update Time' => "เวลาปรับปรุงข้อมูลล่าสุด", - 'Maximum records to display in result set' => "บันทึกสูงสุดที่จะแสดงในชุดผลลัพธ์", - 'Show popup dialog for editing large text data' => "แสดงโต้ตอบป๊อปอัพสำหรับการแก้ไขข้อมูลตัวอักษรขนาดใหญ่", - 'Miscellaneous' => "เบ็ดเตล็ด", - 'Reset all confirmation dialogs' => "รีเซ็ตกล่องโต้ตอบยืนยันทั้งหมด", - 'Record Editing' => "การแก้ไขรายการ", - 'Exclude Table type' => "ยกเว้นประเภทตารางที่", - 'Exclude Table Character set' => "ไม่รวมชุดอักขระตาราง", - 'Backup filename' => "ชื่อไฟล์สำรอง", - 'Invalid filename format' => "รูปแบบไฟล์ที่ไม่ถูกต้อง", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "ทั้งหมด", - 'all selected' => "เลือกทั้งหมด", - 'An error occured while refreshing the object list.' => "ข้อผิดพลาดเกิดขึ้นในขณะที่สดชื่นรายการวัตถุ", - 'Are you sure you want to clear all field information from table?' => "คุณแน่ใจหรือว่าต้องการล้างข้อมูลเขตข้อมูลทั้งหมดจากตาราง?", - 'Are you sure you want to delete this user account?' => "คุณแน่ใจหรือว่าต้องการลบบัญชีผู้ใช้รายนี้", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "คุณแน่ใจหรือว่าต้องการที่จะวางวัตถุทั้งหมดจากฐานข้อมูล {{NAME}}?", - 'Are you sure you want to DROP selected objects?' => "คุณแน่ใจหรือว่าต้องการวางวัตถุที่เลือก?", - 'Are you sure you want to DROP the database {{NAME}}?' => "คุณแน่ใจหรือว่าต้องการที่จะลดฐานข้อมูล {{NAME}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "คุณแน่ใจหรือไม่ว่าคุณต้องการวางวัตถุนี้หรือไม่ {{NAME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "คุณแน่ใจหรือไม่ว่าคุณต้องการดำเนินการคัดสรร {{SELECTED}} ?", - 'Are you sure you want to logout?' => "คุณแน่ใจหรือว่าต้องการออกจากระบบ?", - 'Are you sure you want to truncate the table {{NAME}}?' => "คุณแน่ใจหรือว่าคุณต้องการตัดทอนตาราง {{NAME}}?", - 'Blob Data [{{SIZE}}]' => "ข้อมูล BLOB [{{SIZE}}]", - 'Cancel' => "ยกเลิก", - 'Check for Updates' => "ตรวจหาการปรับปรุง", - 'Clear command history?' => "ประวัติคำสั่งออกหรือไม่?", - 'Close' => "ปิด", - 'Confirm Action' => "ยืนยันการดำเนินการ", - 'Confirm and do not ask me again about this choice' => "ยืนยันและไม่ต้องถามอีกครั้งเกี่ยวกับทางเลือกนี้", - 'Copy Object' => "คัดลอกวัตถ​​ุ", - 'Create Database' => "สร้างฐานข้อมูล", - 'Create Primary Index on this field' => "สร้างดัชนีประถมศึกษาในสาขานี้", - 'Databases' => "ฐานข้อมูล", - 'Default value [Use quotes to specify string values]' => "ค่าเริ่มต้น [ใช้คำพูดเพื่อระบุค่าสตริง]", - 'Disallow NULL values in Field' => "ไม่อนุญาตให้ใช้ค่า NULL ในฟิลด์", - 'Enter new index name' => "กรุณาใส่ชื่อดัชนีใหม่", - 'Enter new name for the database object' => "ป้อนชื่อใหม่สำหรับวัตถุฐานข้อมูล", - 'Enter the text to search in database' => "ป้อนข้อความที่จะค้นหาในฐานข้อมูล", - 'Error' => "ความผิดพลาด", - 'Events' => "Events", - 'Execute query' => "แบบสอบถามดำเนินการ", - 'Exports results' => "ผลการส่งออก", - 'Failed to refresh the results.' => "ไม่สามารถรีเฟรชผล", - 'Field Datatype' => "ฟิลด์ประเภทข้อมูล", - 'Field Name' => "ชื่อเขตข้อมูล", - 'Field value is Auto Incremented' => "ค่าฟิลด์เป็นออโต้ incremented", - 'Functions' => "ฟังก์ชั่น", - 'Indexes Updated' => "ดัชนีปรับ", - 'Maximum Length of field value' => "ความยาวสูงสุดของเขตข้อมูลค่า", - 'Navigation Error. Try reloading the page' => "เกิดข้อผิดพลาดนำทาง ลองโหลดหน้า", - 'New settings saved and applied' => "การตั้งค่าใหม่ที่บันทึกไว้และนำไปใช้", - 'New version is available' => "เวอร์ชั่นใหม่ใช้ได้", - 'Next' => "ถัดไป", - 'No' => "ไม่มี", - 'No Table selected' => "ตารางที่ไม่มีการเลือก", - 'Not enough room to show this pane.' => "ห้องไม่พอที่จะแสดงบานหน้าต่างนี้", - 'OK' => "OK", - 'One or more field information is incomplete' => "เขตข้อมูลหนึ่งหรือมากกว่านั้นอาจไม่สมบูรณ์", - 'Open' => "เปิด", - 'Operation failed' => "การทำงานล้มเหลว", - 'Pad field values with leading zeros' => "Pad ค่าเขตข้อมูลที่มีเลขศูนย์ชั้นนำ", - 'Pane' => "บานหน้าต่าง", - 'Passwords do not match' => "รหัสผ่านไม่ตรงกัน", - 'Pin' => "หมุด", - 'Please select one or more operations to perform' => "โปรดเลือกหนึ่งตัวหรือมากกว่าการดำเนินงานที่จะดำเนินการ", - 'Please type in one or more queries in the SQL editor!' => "กรุณาพิมพ์ในหนึ่งหรือมากกว่าหนึ่งคำสั่งในการแก้ไข SQL!", - 'Please wait...' => "... โปรดรอสักครู่", - 'Previous' => "ก่อน", - 'Procedures' => "ขั้นตอนการ", - 'Prompt' => "รวดเร็ว", - 'Refresh results' => "ผลการฟื้นฟู", - 'Refreshing object list' => "รายการวัตถุรีเฟรช", - 'Rename Object' => "Object เปลี่ยนชื่อ", - 'Resize' => "ปรับขนาด", - 'Results page:' => "หน้าผลลัพธ์ :", - 'Select a database to view privileges for the user' => "เลือกฐานข้อมูลเพื่อดูสิทธิพิเศษสำหรับผู้ใช้", - 'Select an index to view / edit its details' => "เลือกดัชนีเพื่อดู / แก้ไขรายละเอียดของ", - 'Select at least one field type for searching' => "เลือกชนิดของเขตข้อมูลอย่างน้อยหนึ่งในการค้นหา", - 'Select objects to operate upon' => "เลือกวัตถ​​ุในการดำเนินงานตาม", - 'selector' => "เลือกคำสั่ง", - 'Slide Open' => "เปิดสไลด์", - 'Table information requires at least one valid field' => "ข้อมูลตารางที่ต้องมีอย่างน้อยหนึ่งเขตข้อมูลที่ถูกต้อง", - 'Table name is required' => "ชื่อตารางที่จะต้อง", - 'Table successfully created' => "ตารางที่ประสบความสำเร็จในการสร้าง", - 'Table successfully modified' => "ตารางที่แก้ไขเรียบร้อยแล้ว", - 'Tables' => "โต๊ะ", - 'Text Data [{{SIZE}}]' => "ข้อมูลที่เป็นข้อความ [{{SIZE}}]", - 'There is no record in the results to export' => "มีการบันทึกในผลการไม่ส่งออก", - 'This attribute is not required for selected field type' => "คุณลักษณะนี้ไม่จำเป็นสำหรับชนิดเขตข้อมูลที่เลือก", - 'Triggers' => "ทริกเกอร์", - 'Un-Pin' => "Un - Pin", - 'Unsigned numbered field only' => "เลขเฉพาะพื้นที่ที่ไม่ได้ลงนาม", - 'Update check failed' => "ปรับปรุงการตรวจสอบล้มเหลว", - 'User information is incomplete or invalid' => "ผู้ใช้ข้อมูลไม่ครบถ้วนหรือไม่ถูกต้อง", - 'User Manager' => "ผู้จัดการของผู้ใช้", - 'Views' => "Views", - 'WARNING' => "คำเตือน", - 'Yes' => "ใช่", - 'You have the latest version' => "คุณมีเวอร์ชันล่าสุด", - - ); -?> diff --git a/lang/tr.php b/lang/tr.php deleted file mode 100644 index df37acf..0000000 --- a/lang/tr.php +++ /dev/null @@ -1,463 +0,0 @@ - "Kullanım Veritabanı", - 'Drop Database' => "Damla Veritabanı", - 'Empty Database' => "Boş Veritabanı", - 'Drop all tables from this database' => "Bu veritabanındaki tüm tabloları Bırak", - 'Select statement' => "Select ifadesi", - 'Insert statement' => "Insert deyimi", - 'Update statement' => "Güncelleme bildirimi", - 'Describe' => "Tanımlamak", - 'Show create command' => "komutu oluşturmak göster", - 'View data' => "Görünümünde veri", - 'Alter Table' => "Alter Table", - 'Indexes' => "Endeksler", - 'Engine Type' => "Motor Tipi", - 'More operations' => "Ameliyat daha", - 'Truncate' => "Kesmek", - 'Drop' => "Damla", - 'Rename' => "Yeni ad vermek", - 'Export table data' => "Ihracat tablo verilerini", - 'Create Table' => "Tablo oluşturma", - 'Create View' => "Görünüm oluşturma", - 'Create Procedure' => "Prosedür oluşturma", - 'Create Function' => "Fonksiyon oluşturma", - 'Create Trigger' => "Oluşturmak Tetik", - 'Create Event' => "Etkinlik Oluştur", - 'Show/Hide Panel' => "Göstermek / Panel Gizle", - 'Show/Hide Header' => "Göstermek / Başlık Gizle", - 'Copy all queries to clipboard' => "Kopya tüm panoya sorgular", - 'Clear history' => "Açık tarih", - 'Copy Column values' => "Kopya Kolon değerleri", - 'Copy to clipboard' => "Panoya kopyala", - 'Generate SQL Filter' => "Filtre SQL Oluştur", - 'Database Manager' => "Veritabanı Yöneticisi", - 'Manage databases' => "Veritabanlarını Yönet", - - // main menu related text - 'Database' => "Veritabanı", - 'Refresh' => "Yenileme", - 'Refresh database object list' => "Yenileme veritabanı nesne listesi", - 'Create new' => "Yeni", - 'Export' => "Ihracat", - 'Export database to external file' => "harici dosya verme veritabanı", - 'Objects' => "Nesneler", - 'Create Table' => "Tablo oluşturma", - 'Create a new table in the database' => "veritabanında yeni bir tablo oluşturma", - 'Create View' => "Görünüm oluşturma", - 'Create a new view in the database' => "veritabanında yeni bir görünüm oluşturma", - 'Create Stored Procedure' => "Oluşturmak Usul Saklanan", - 'Create a new stored procedure in the database' => "veritabanında yeni bir saklı yordam oluşturma", - 'Create Function' => "Fonksiyon oluşturma", - 'Create a new user defined function in the database' => "veritabanında işlev tanımlanmış yeni bir kullanıcı oluşturun", - 'Create Trigger' => "Oluşturmak Tetik", - 'Create a new trigger in the database' => "veritabanında yeni bir tetikleyici oluşturma", - 'Create Event' => "Etkinlik Oluştur", - 'Create a new event in the database' => "veritabanında yeni bir olay oluşturma", - 'Data' => "Veri", - 'Import batch file' => "Ithalat toplu iş dosyası", - 'Import multiple queries from batch file' => "toplu dosyadan birden fazla sorgu", - 'Export database' => "Ihracat veritabanı", - 'Export database to batch file as sql dump' => "sql çukuru olarak toplu iş dosyası verme veritabanı", - 'Export current results' => "Ihracat geçerli sonuçlar", - 'Export query results to clipboard or files' => "pano veya dosyaları verme sorgu sonuçları", - 'Tools' => "Araçları", - 'Process Manager' => "Process Manager", - 'View and manage database processes' => "Görünüm ve veritabanı süreçleri yönetmek", - 'Repair Tables' => "Onarım Tablolar", - 'Analyze and repair database tables' => "Analiz ve onarım veritabanı tabloları", - 'User Manager' => "Kullanıcı Müdürü", - 'Manage database users' => "Veritabanı kullanıcılarının Yönet", - 'Search in Database' => "Veritabanında Arama", - 'Search for text in the database' => "veritabanındaki metin arama", - 'Information' => "Bilgi", - 'Server/Connection Details' => "Sunucu / Bağlantı Ayrıntıları", - 'View server configuration' => "Görünüm sunucusu yapılandırma", - 'View server and connection details' => "Görünüm sunucu ve bağlantı ayrıntıları", - 'Server Variables' => "Sunucu Değişkenler", - 'Database Summary' => "Veritabanı Özeti", - 'View current database summary stats' => "Görünümünde geçerli veritabanı özet istatistikler", - 'Interface' => "Arayüz", - 'Options' => "Seçenekleri", - 'Configure application options' => "Yapılandırmak uygulama seçenekleri", - 'UI Theme' => "Kullanıcı Arayüzü Temaları", - 'Database Objects' => "Veritabanı Nesneleri", - 'Toggle Object Viewer' => "Geçiş Nesne Viewer", - 'Help contents' => "Yardım içeriği", - 'Learn the basics of using MyWebSQL' => "MyWebSQL kullanmanın temellerini öğrenin", - 'QuickStart Tutorials' => "QuickStart Tutorials", - 'See quick hands-on tutorial of MyWebSQL interface' => "hızlı eller üzerinde MyWebSQL öğretici arayüzü bak", - 'Online documentation' => "Çevrimiçi belgelere", - 'View online documentation on project website' => "Proje web sitesinde Çevrimiçi belgeleri", - 'Request a Feature' => "Talebi Özellik", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "Eğer MyWebSQL bir parçası olmak için bu konuda bilgilendirmek için tıklayınız en sevdiğiniz özelliği istiyorsanız", - 'Report a Problem' => "Rapor Sorun", - 'Check for updates' => "güncelleştirmeleri denetleyin", - 'Check for updated versions of the application online' => "uygulama online güncelleştirilmiş sürümlerini kontrol edin", - 'Logout' => "Logout", - 'Logout from this session' => "Logout bu oturumdan", - 'Language' => "Dil", - 'SQL Editor' => "SQL Editör", - 'Toggle SQL Editor' => "Toggle SQL Editör", - 'Experimental' => "Deneysel", - 'Import table data' => "Tablo veri alma", - 'Import table data from external file' => "Dış dosyadan tablo verileri", - 'Batch operations' => "Toplu işlemler", - 'Perform one or more batch operations on database' => "Veritabanı üzerinde bir veya daha fazla toplu işlemleri gerçekleştirin", - 'Create a new schema in the database' => "Veritabanında yeni bir şema oluşturun", - 'Create Schema' => "Şema oluşturma", - 'Table Description' => "Tablo Açıklama", - 'Database Manager' => "Veritabanı Yöneticisi", - 'Manage databases' => "Veritabanlarını Yönet", - 'Backup database on the server as SQL dump' => "SQL dökümü olarak sunucu üzerinde Yedekleme veritabanı", - 'Backup Database' => "Yedekleme Veritabanı", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "Tarayıcınızın ve çok eski olduğu görülmektedir MyWebSQL çalıştırmak için gereken tüm özellikleri desteklemez.", - 'Try using a newer version of the browser to run this application.' => "Bu uygulamayı çalıştırmak için tarayıcının daha yeni bir sürümünü kullanmayı deneyin", - - // text used on various screens in the interface - 'Visit Project website' => "Proje web sitesini ziyaret et", - 'Version' => "versiyon", - 'Loading' => "Yükleme", - 'Quick Edit Options' => "Hızlı Seçenekleri Düzenle", - 'Press {{KEY}} to set NULL' => "Basın {{KEY}} NULL ayarlamak için", - 'MySQL Server' => "MySQL", - 'Logged in as: {{USER}}' => "Girildi olarak: {{USER}}", - 'Results' => "Sonuçlar", - 'Messages' => "Mesajlar", - 'Information' => "Bilgi", - 'History' => "Geçmişi", - 'There are no results to show in this view' => "Hiçbir sonuç bu görünümde gösterilecek vardır", - 'Refresh results' => "Yenileme sonuçları", - 'Please wait' => "Lütfen bekleyin", - 'Query All' => "Tüm sorgu", - 'Query' => "Sorgu", - 'Add Record' => "Kayıt Ekle", - 'Delete Record(s)' => "Silmek Kayıt (lar)", - 'Update Record(s)' => "Güncelleme Kayıt (lar)", - 'Generate SQL' => "Oluşturmak SQL", - 'Database name' => "Veritabanı adı", - 'Select database after creation' => "oluşturulduktan sonra veri tabanı seçin", - 'Database connection failed to the server' => "Veritabanı bağlantısı sunucu başarısız", - 'Host' => "Ev sahibi", - 'User' => "Kullanıcı", - 'Select a database to begin' => "Başlamak için bir veritabanı seçin", - 'Select/unselect All records' => "Select / Tüm kayıtlar kaldırın", - 'Primary key column' => "Birincil anahtar sütunu", - 'Unique key column' => "Benzersiz anahtar sütunu", - 'Showing records {{START}} - {{END}}' => "Gösteren kayıtlar {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "ilk {{MAX}} kayıtları gösterilen sadece", - '1 query successfully executed' => "başarıyla yürütülen 1 sorgu", - '{{NUM}} queries successfully executed' => "{{NUM}} başarıyla yürütülen sorgular", - '{{NUM}} record(s) were affected' => "{{NUM}} Kayıt (lar) etkilendi", - '{{NUM}} record(s) updated' => "{{NUM}} Kayıt (lar) güncellendi", - 'Error occurred while executing the query' => "sorgu yürütülürken bir hata oluştu", - '{{NUM}} queries failed to execute' => "{{NUM}} yürütmek için başarısız sorgular", - 'Click to view/edit column data [{{NUM}} Bytes]' => "görebilmek için Gün / düzenlemek sütun veri [{{NUM}} Bytes] tıklayın", - 'Blob data is not editable' => "Blob veri düzenlenebilir değildir", - 'Blob data saved' => "Blob veri kaydedilmiş", - 'Failed to save blob data' => "blob veri kaydedilemedi", - 'The process with id [{{PID}}] was killed' => "id ile işlem [{{PID}}] öldürüldü", - 'No such process [id = {{PID}}]' => "Böyle bir süreç [id = {{PID}}]", - 'Select a process and click the button to kill the process' => "bir süreç seçin ve süreci öldürmek için düğmeye tıklayın", - 'Process ID' => "İşlem Kimliği", - 'Command' => "Komut", - 'Time' => "Zaman", - 'Info' => "Info", - 'Kill Process' => "Öldürmek Süreci", - 'Failed to get process list' => "Süreç listesi alınamadı", - 'The command executed successfully' => "Komut başarıyla yürütür", - 'Invalid server configuration' => "Geçersiz sunucusu yapılandırma", - 'Invalid Credentials' => "Geçersiz Sertifikalar", - 'New database successfully created' => "başarıyla oluşturuldu Yeni veritabanı", - 'File upload failed. Please try again' => "Dosya yükleme başarısız oldu. Lütfen tekrar deneyin", - 'No queries were executed during import' => "Hayır sorularında ithalat sırasında idam edildi", - 'Maximum upload filesize is {{SIZE}}' => "Maksimum dosya boyutu yüklemek {{SIZE}} olduğunu", - 'Supported filetypes / extensions are: ({{LIST}})' => "Desteklenen dosya türlerini / uzantıları: ({{LIST}})", - 'Database summary' => "Veritabanı özeti", - 'Server Variables' => "Sunucu Değişkenler", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "aynı adla varolan nesne oluşturma komutu yürütmeden önce elle bırakılmaz", - 'Only create commands are accepted' => "Sadece oluşturmak komutları kabul edilir", - 'User ID' => "Kullanıcı kimliği", - 'Password' => "Şifre", - 'Login' => "Giriş", - 'Create new database object' => "Yeni bir veritabanı nesnesi oluşturma", - 'Enter command for object creation' => "nesne oluşturma için komut girin", - 'Submit' => "Gönderin", - 'Show blob data as: {{TYPE}}' => "Göstermek blob veri olarak: {{TYPE}}", - 'Blob data for column {{NAME}}' => "sütun için Blob veri {{NAME}}", - 'Create command for {{TYPE}} {{NAME}}' => "için komut oluşturma {{TYPE}} {{NAME}}", - 'Table Engine (type)' => "Masa Motor (tip)", - 'Change Table Type' => "Değiştirmek Tablo Türü", - 'The requested page is not available on the server' => "İstenen sayfa sunucuda kullanılabilir değil", - 'Error' => "Hata", - 'It appears that you attempted to submit an invalid request to the server' => "O sunucuya geçersiz bir talepte çalıştığı görünüyor", - 'The request has been denied. Reloading the page might solve the problem' => "Isteği reddedildi. sayfa Reloading sorunu çözmek olabilir", - 'Access Denied' => "Erişim Engellendi", - 'Help' => "Yardım", - 'To see most up-to-date help contents, please visit {{LINK}}' => "en güncel yardım içeriğini görmek için aşağıdaki adresi ziyaret edin {{LINK}}", - 'It appears that your browser session has expired' => "Tarayıcınızın oturum süresinin sona erdiğini görünür", - 'Please refresh the webpage to re-login' => "yeniden giriş yapmak için web yenileyin", - 'Table information' => "Tablo bilgileri", - 'Edit' => "Düzenlemek", - 'Save' => "Kaydetmek", - 'Either the database is empty, or there was an error retrieving list of database objects' => "Ya veritabanı veya boş veritabanı nesnelerinin alınırken hata liste vardı", - 'Please try closing and re-opening this dialog again' => "kapatma ve yeniden bu diyaloğu tekrar açtıktan deneyin", - 'Structure' => "Yapı", - 'Table Data' => "Tablo Data", - 'Structure and Table Data' => "Yapısı ve Tablo Verileri", - 'Options' => "Seçenekleri", - 'Set Auto increment field values to NULL' => "Set Otomatik artış alan değerleri NULL", - 'Add DROP command before create statements' => "tablolar oluşturmadan önce ekleyin DROP komutu", - 'Export' => "Ihracat", - 'Import' => "Ithalat", - 'Export Database' => "Ihracat Veritabanı", - 'Export Table' => "Ihracat Tablo", - 'Server information' => "Sunucu bilgileri", - 'Server' => "Sunucu", - 'Version comment' => "Sürüm yorumu", - 'Character sets' => "Karakter setleri", - 'Server character set' => "set Server karakter", - 'Client character set' => "Istemci karakter kümesi", - 'Database character set' => "Veritabanı karakter seti", - 'Results character set' => "karakter seti Sonuçları", - 'Export As' => "Ihracat olarak", - 'Insert Statements' => "Eklemek Tablolar", - 'Include field names in query' => "Sorguda Dahil alan adları", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Düz Metin (satır başına bir rekor)", - 'Fields separated by:' => "ayrılmış alanlar:", - 'Export Results' => "Ihracat Sonuçlar", - 'Select SQL batch file to import' => "SELECT toplu iş dosyası almak için", - 'Continue processing even if error occurs' => "Devam hata oluştuğunda bile işleme", - 'Basic Information' => "Temel Bilgiler", - 'Table Properties' => "Tablo Özellikleri", - 'Table Name' => "Tablo Adı", - 'Field Name' => "Alan Adı", - 'Data Type' => "Veriler Tip", - 'Length' => "Uzunluk", - 'Default value' => "Varsayılan değer", - 'Unsigned' => "Imzasız", - 'Zero Fill' => "Sıfır doldurun", - 'Primary Key' => "Birincil Anahtar", - 'Auto Increment' => "Otomatik Arttırma", - 'Not NULL' => "Değil NULL", - 'Character Set' => "Karakter Seti", - 'Collation' => "Karşılaştırma", - 'Comment' => "Yorum", - 'Waiting for table information to be submitted' => "tablo bilgi bekliyorum sunulacak", - 'Add field' => "Alan ekle", - 'Delete selected field' => "Silmek Seçilen alan", - 'Clear Table Information' => "Net Tablo Bilgi", - 'List of values' => "değerler listesi", - 'Query Results' => "Sorgu Sonuçları", - 'Data for {{TABLE}}' => "Veri için {{TABLE}}", - 'Select tables to be analyzed/repaired' => "Seçmek tablolar analiz edilecek / tamir", - 'Operation to perform' => "Işlemi gerçekleştirmek için", - 'Analyze' => "Çözümlemek", - 'Check' => "Kontrol", - 'Optimize' => "Optimize", - 'Repair' => "Onarım", - 'Skip Binary logging' => "günlüğü atla İkili", - 'Default' => "Varsayılan", - 'Quick' => "Hızlı", - 'Fast' => "Hızlı", - 'Medium' => "Orta", - 'Extended' => "Genişletilmiş", - 'Changed' => "Değiştirildi", - 'Use Frm files (MyISAM tables)' => "Kullanım FRM dosyaları (MyISAM tabloları)", - 'User Information' => "Kullanıcı Bilgileri", - 'Global Privileges' => "Global Ayrıcalıklar", - 'Database Privileges' => "Veritabanı Ayrıcalıklar", - 'Import File' => "Ithalat Dosya", - 'Index Manager' => "Indeks Müdürü", - 'Edit table structure' => "Tablo yapısını düzenleme", - 'Save All Changes' => "Tüm Değişiklikleri Kaydet", - 'Changes are not saved until you press [Save All Changes]' => "Değişiklikler [Tüm Değişiklikleri Kaydet] basana kadar kaydedilmez", - 'Field Length' => "Alan Uzunluğu", - 'Select objects to include in export' => "Select objects ihracat dahil", - 'Export type' => "Ihracat türü", - 'Select All/None' => "Select / Hiçbiri Hepsi", - 'Add User' => "Kullanıcı Ekle", - 'Update User' => "Güncelleştirme Kullanıcı", - 'Delete selected User' => "Silmek Kullanıcı seçilmiş", - 'Remove Password' => "Şifreyi kaldır", - 'Select tables to search' => "Seçmek tabloları arama", - 'Search Options' => "Arama Seçenekleri", - 'Search in following field types' => "alan türleri aşağıdaki ara", - 'Numeric Fields' => "Sayısal Alanlar", - 'Character Fields' => "Karakter Alanlar", - 'Text Fields' => "Metin Alanları", - 'Date/Time Fields' => "Tarih / Saat Alanları", - 'Comparison Type' => "Karşılaştırma Tip", - 'Text to search' => "Metin arama", - 'Search' => "Arama", - 'Search Results' => "Arama Sonuçları", - 'Number of matches' => "Sayısı maçlar", - 'Search results for {{KEYWORD}} in the database' => "Arama sonuçları {{KEYWORD}} veritabanında", - '{{NUM}} match(es)' => "{{NUM}} (es) maç", - 'Copy query to editor' => "editör kopyala sorgu", - 'Done' => "Done", - 'SQL Editor' => "SQL Editör", - 'Create Copy' => "Kopya Oluştur", - 'Minimize All' => "Tüm Küçült", - 'Copy Record(s)' => "Kopya Kayıt (lar)", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "Virgül (Excel için CSV) Ayrılmış", - 'Select data file to import' => "Almak için veri dosyasını seçin", - 'Select table for data import' => "Veri alma için tabloyu seçin", - 'First line contains column names' => "İlk satır sütun adlarını içerir", - 'Select objects to operate upon' => "Nesneler üzerine işletmek için seçin", - 'Operations to perform' => "Gerçekleştirmek için Operasyon", - 'Add prefix string to name' => "Isim öneki dize ekle", - 'Delete prefix string from name' => "Adından öneki dize sil", - 'Command text' => "Komut metni", - 'DROP selected database objects' => "Seçilen veritabanı nesneleri BIRAKMA", - 'Batch operation results' => "Toplu işlem sonuçları", - 'Operation' => "Operasyon", - 'Status' => "Durum", - '{{NUM}} queries generated' => "{{NUM}} oluşturulan sorgular", - 'Please select one or more operations to perform' => "Gerçekleştirmek için bir veya daha fazla operasyon seçiniz", - 'Quick Search' => "Hızlı Arama", - '{{NAME}} client library is not installed' => "{{NAME}} istemci kütüphanesi yüklü değil", - '{{NAME}} extension is not installed' => "{{NAME}} uzantısı yüklü değil", - 'SQLite database folder is inaccessible or not writable' => "SQLite veritabanı klasörü yazılabilir ya da erişilemez değildir", - 'Maximize/Restore Results Pane' => "Kapla / Sonuçlar Bölmesi Restore", - 'Select databases to operate upon' => "Üzerine çalışmaya veritabanlarını seçin", - 'DROP selected databases' => "Seçilen veritabanları BIRAKMA", - 'The following operation is irreversible' => "Aşağıdaki işlem geri döndürülemez", - 'Potential data loss might occur' => "Potansiyel veri kaybı oluşabilir", - 'Add TRUNCATE command before insert statements' => "Insert tabloların önünde komutu TRUNCATE ekle", - 'Select objects to include in backup' => "Nesneleri Yedeklemeye dahil etmek için seçin", - 'Backup folder does not exist or is not writable' => "Yedekleme klasörü yok ya da yazılabilir değil mi", - 'Backup type' => "Yedekleme türü", - 'Database backup successfully created' => "Veritabanı yedekleme başarıyla oluşturuldu", - 'Failed to create database backup' => "Veritabanı yedekleme oluşturulamadı", - 'Generate Bulk insert statements' => "Toplu ekleme tablolar oluşturmak", - 'Maximum size of SQL statement' => "SQL deyiminin Maksimum boyut", - 'Show record count with table names' => "Tablo adları ile kayıt sayısı göster", - 'Sort Table listing by' => "Göre sıralamak Tablo listesi", - 'Name' => "Ad", - 'Last Update Time' => "Son Güncelleme", - 'Maximum records to display in result set' => "Maksimum kayıtları sonuç kümesinde görüntülemek için", - 'Show popup dialog for editing large text data' => "Büyük metin veri düzenleme için açılan iletişim göster", - 'Miscellaneous' => "Çeşitli", - 'Reset all confirmation dialogs' => "Tüm onay diyaloglar sıfırla", - 'Record Editing' => "Kayıt Düzenleme", - 'Exclude Table type' => "Tablo türünü hariç", - 'Exclude Table Character set' => "Tablo Karakter seti dışla", - 'Backup filename' => "Yedekleme dosya", - 'Invalid filename format' => "Geçersiz dosya adı formatı", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "tüm", - 'all selected' => "Seçilen tüm", - 'An error occured while refreshing the object list.' => "Bir hata serinletici nesne listesi oluştu.", - 'Are you sure you want to clear all field information from table?' => "Eğer tablodan tüm alan bilgileri silmek istediğinizden emin misiniz?", - 'Are you sure you want to delete this user account?' => "Eğer bu kullanıcı hesabı silmek istediğinizden emin misiniz?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "Eğer DROP için veritabanı {{NAME}} tüm nesneleri istediğinizden emin misiniz?", - 'Are you sure you want to DROP selected objects?' => "Eğer seçilen nesneler BIRAKMA etmek istediğinizden emin misiniz?", - 'Are you sure you want to DROP the database {{NAME}}?' => "Eğer emin misiniz DROP için veritabanı {{NAME}} istiyorsun?", - 'Are you sure you want to drop this object? {{NAME}}' => "Eğer bu nesne damla istediğinizden emin misiniz? {{NAME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "Eğer {{SELECTED}} sorgular çalıştırmak istediğinizden emin misiniz?", - 'Are you sure you want to logout?' => "Eğer çıkış yapmak istediğinizden emin misiniz?", - 'Are you sure you want to truncate the table {{NAME}}?' => "Eğer emin misiniz tablo {{NAME}} kesilmesini istediğiniz?", - 'Blob Data [{{SIZE}}]' => "Blob Veri [{{SIZE}}]", - 'Cancel' => "Iptal", - 'Check for Updates' => "güncelleştirmeleri denetleyin", - 'Clear command history?' => "Net komut geçmişi?", - 'Close' => "Yakın", - 'Confirm Action' => "Onaylamak Eylem", - 'Confirm and do not ask me again about this choice' => "Onaylamak ve bu seçimi konusunda tekrar bana sormayın", - 'Copy Object' => "Kopya Nesne", - 'Create Database' => "Veritabanı oluşturma", - 'Create Primary Index on this field' => "Bu alanda oluşturma İlköğretim Endeksi", - 'Databases' => "Veritabanları", - 'Default value [Use quotes to specify string values]' => "Varsayılan değer [Kullanım dize değerlerini belirtmek için tırnak]", - 'Disallow NULL values in Field' => "Disallow NULL Alanında değerleri", - 'Enter new index name' => "Yeni dizin adı girin", - 'Enter new name for the database object' => "veritabanı nesnesi için yeni bir isim girin", - 'Enter the text to search in database' => "Veritabanında arama metni girin", - 'Error' => "Hata", - 'Events' => "Olaylar", - 'Execute query' => "Yürütmek sorgu", - 'Exports results' => "Ihracat sonuçlar", - 'Failed to refresh the results.' => "sonuçlar yenilemek için başarısız.", - 'Field Datatype' => "Alan Veri Türü", - 'Field Name' => "Alan Adı", - 'Field value is Auto Incremented' => "Alan değeri Auto artırılır", - 'Functions' => "Fonksiyonlar", - 'Indexes Updated' => "Indeksler Güncelleme", - 'Maximum Length of field value' => "alanın maksimum uzunluğu değeri", - 'Navigation Error. Try reloading the page' => "Navigasyon hatası. Sayfayı yeniden yüklemeyi deneyin", - 'New settings saved and applied' => "Yeni ayarlar kaydedilir ve uygulanan", - 'New version is available' => "Yeni sürümü mevcut", - 'Next' => "Sonraki", - 'No' => "Yok", - 'No Table selected' => "Hayır Tablo seçilmiş", - 'Not enough room to show this pane.' => "Yeterince oda bu bölmede göstermek için.", - 'OK' => "Tamam", - 'One or more field information is incomplete' => "Bir veya birden çok alan bilgilerin eksik", - 'Open' => "Açık", - 'Operation failed' => "İşlem başarısız", - 'Pad field values with leading zeros' => "sıfır ile Tampon alan değerleri", - 'Pane' => "Bölmesi", - 'Passwords do not match' => "Şifreler eşleşmiyor", - 'Pin' => "Pim", - 'Please select one or more operations to perform' => "Gerçekleştirmek için bir veya daha fazla operasyon seçiniz", - 'Please type in one or more queries in the SQL editor!' => "Bir veya daha fazla sorgular SQL editörü yazın!", - 'Please wait...' => "Lütfen bekleyin ...", - 'Previous' => "Önceki", - 'Procedures' => "Prosedürleri", - 'Prompt' => "Istemi", - 'Refresh results' => "Yenileme sonuçları", - 'Refreshing object list' => "Serinletici nesne listesi", - 'Rename Object' => "Adlandırmak Nesne", - 'Resize' => "Yeniden boyutlandırmak", - 'Results page:' => "Sonuçları sayfası:", - 'Select a database to view privileges for the user' => "Kullanıcı ayrıcalıkları görmek için bir veritabanı seçin", - 'Select an index to view / edit its details' => "görebilmek için Gün / düzenlemek Ayrıntılarını bir dizin seçin", - 'Select at least one field type for searching' => "aramak için en az bir alan türünü seçin", - 'Select objects to operate upon' => "Nesneler üzerine işletmek için seçin", - 'selector' => "seçici", - 'Slide Open' => "Slayt aç", - 'Table information requires at least one valid field' => "Tablosu bilgilerini en az bir geçerli bir alan gerektirir", - 'Table name is required' => "Tablo adı gereklidir", - 'Table successfully created' => "Tablo başarıyla oluşturuldu", - 'Table successfully modified' => "Masa başarıyla değiştirildi", - 'Tables' => "Tabloları", - 'Text Data [{{SIZE}}]' => "Metin Veri [{{SIZE}}]", - 'There is no record in the results to export' => "sonuçlarda bir rekor ihracat var", - 'This attribute is not required for selected field type' => "Bu özellik seçili alan türü için gerekli değildir", - 'Triggers' => "Tetikler", - 'Un-Pin' => "Un-Pin", - 'Unsigned numbered field only' => "Imzasız alan sayılı sadece", - 'Update check failed' => "Başarısız Güncelleştir onay", - 'User information is incomplete or invalid' => "Kullanıcı bilgileri eksik veya geçersiz", - 'User Manager' => "Kullanıcı Müdürü", - 'Views' => "Views", - 'WARNING' => "UYARI", - 'Yes' => "Evet", - 'You have the latest version' => "Sen en son sürümüne sahip", - - ); -?> diff --git a/lang/uk.php b/lang/uk.php deleted file mode 100644 index da9131f..0000000 --- a/lang/uk.php +++ /dev/null @@ -1,463 +0,0 @@ - "Використання бази даних", - 'Drop Database' => "Drop Database", - 'Empty Database' => "Порожній бази даних", - 'Drop all tables from this database' => "Відкиньте всі таблиці з цієї бази даних", - 'Select statement' => "Виберіть заяву", - 'Insert statement' => "Вставте заяву", - 'Update statement' => "Оновлення заяву", - 'Describe' => "Описувати", - 'Show create command' => "Показати Створення команди", - 'View data' => "Перегляд даних", - 'Alter Table' => "ALTER TABLE", - 'Indexes' => "Індекси", - 'Engine Type' => "Тип двигуна", - 'More operations' => "Більше операцій", - 'Truncate' => "Урізати", - 'Drop' => "Падіння", - 'Rename' => "Перейменувати", - 'Export table data' => "Експорт даних таблиці", - 'Create Table' => "Створення таблиці", - 'Create View' => "Створити уявлення", - 'Create Procedure' => "Створення процедури", - 'Create Function' => "Створення функцій", - 'Create Trigger' => "Створення тригера", - 'Create Event' => "Створити подію", - 'Show/Hide Panel' => "Показати / приховати панель", - 'Show/Hide Header' => "Показати / сховати заголовок", - 'Copy all queries to clipboard' => "Скопіюйте всі запити в буфер", - 'Clear history' => "Очистити історію", - 'Copy Column values' => "Копіювати колонці значень", - 'Copy to clipboard' => "Копіювати в буфер обміну", - 'Generate SQL Filter' => "Створення SQL фільтра", - 'Database Manager' => "Адміністратор баз даних", - 'Manage databases' => "Управління базами даних", - - // main menu related text - 'Database' => "База даних", - 'Refresh' => "Оновити", - 'Refresh database object list' => "Оновлення бази даних список об'єктів", - 'Create new' => "Створити новий", - 'Export' => "Експорт", - 'Export database to external file' => "Експорт бази даних у зовнішній файл", - 'Objects' => "Об'єкти", - 'Create Table' => "Створення таблиці", - 'Create a new table in the database' => "Створення нової таблиці в базі даних", - 'Create View' => "Створити уявлення", - 'Create a new view in the database' => "Створення нового подання в базі даних", - 'Create Stored Procedure' => "Створення збережених процедур", - 'Create a new stored procedure in the database' => "Створити нову збережену процедуру в базі даних", - 'Create Function' => "Створення функцій", - 'Create a new user defined function in the database' => "Створення нових користувальницьких функцій у базі даних", - 'Create Trigger' => "Створення тригера", - 'Create a new trigger in the database' => "Створіть новий тригер в базі даних", - 'Create Event' => "Створити подію", - 'Create a new event in the database' => "Створити нове подія в базі даних", - 'Data' => "Дані", - 'Import batch file' => "Імпорт пакетний файл", - 'Import multiple queries from batch file' => "Імпорт декількох запитів з пакетного файлу", - 'Export database' => "Експорт бази даних", - 'Export database to batch file as sql dump' => "Експорт бази даних в пакетний файл як SQL дамп", - 'Export current results' => "Експорт поточні результати", - 'Export query results to clipboard or files' => "Експорт результатів запиту в буфер обміну або файлів", - 'Tools' => "Інструменти", - 'Process Manager' => "Process Manager", - 'View and manage database processes' => "Перегляд та управління базою даних процесів", - 'Repair Tables' => "Ремонт Таблиці", - 'Analyze and repair database tables' => "Аналіз і таблиць бази даних ремонт", - 'User Manager' => "Користувач Manager", - 'Manage database users' => "Управління користувачами бази даних", - 'Search in Database' => "Пошук в базі даних", - 'Search for text in the database' => "Пошук тексту в базі даних", - 'Information' => "Інформація", - 'Server/Connection Details' => "Server та з'єднання "Подробиці", - 'View server configuration' => "Конфігурація Подивитися сервер", - 'View server and connection details' => "Подивитися сервер і підключення докладніше", - 'Server Variables' => "Серверні змінні", - 'Database Summary' => "База даних резюме", - 'View current database summary stats' => "Переглянути поточну статистику бази даних резюме", - 'Interface' => "Інтерфейс", - 'Options' => "Функції", - 'Configure application options' => "Налаштування параметрів програми", - 'UI Theme' => "UI Тема", - 'Database Objects' => "Об'єктів бази даних", - 'Toggle Object Viewer' => "Переключити Object Viewer", - 'Help contents' => "Зміст довідки", - 'Learn the basics of using MyWebSQL' => "Дізнатися основи використання MyWebSQL", - 'QuickStart Tutorials' => "QuickStart Підручники", - 'See quick hands-on tutorial of MyWebSQL interface' => "Див швидкий практичний підручник MyWebSQL інтерфейс", - 'Online documentation' => "Інтернет документації", - 'View online documentation on project website' => "Перегляд електронної документації на веб-сайті проекту", - 'Request a Feature' => "Запит функцій", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "Якщо ви хочете, щоб ваш самий улюблений функцію, щоб бути частиною MyWebSQL, будь ласка, натисніть тут, щоб повідомити про це", - 'Report a Problem' => "Повідомити про проблему", - 'Check for updates' => "Перевірити наявність оновлень", - 'Check for updated versions of the application online' => "Перевірте оновлені версії додатків онлайн", - 'Logout' => "Вийти", - 'Logout from this session' => "Вихід з цієї сесії", - 'Language' => "Мова", - 'SQL Editor' => "Редактор SQL", - 'Toggle SQL Editor' => "Перемикання редактора SQL", - 'Experimental' => "Експериментальний", - 'Import table data' => "Імпорт даних таблиці", - 'Import table data from external file' => "Імпорт даних із зовнішніх файлів", - 'Batch operations' => "Пакетні операції", - 'Perform one or more batch operations on database' => "Виконайте одну або кілька пакетних операцій в базі даних", - 'Create a new schema in the database' => "Створення нової схеми в базу даних", - 'Create Schema' => "Створення схеми", - 'Table Description' => "Опис таблиці", - 'Database Manager' => "Адміністратор баз даних", - 'Manage databases' => "Управління базами даних", - 'Backup database on the server as SQL dump' => "Резервне копіювання бази даних на сервері SQL, як звалище", - 'Backup Database' => "Резервне копіювання бази даних", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "Ваш браузер, здається, дуже стара і не підтримує всі функції, необхідні для запуску MyWebSQL.", - 'Try using a newer version of the browser to run this application.' => "Спробуйте використовувати більш нову версію браузера для запуску цього додатка.", - - // text used on various screens in the interface - 'Visit Project website' => "Відвідайте веб-сайт проекту", - 'Version' => "версія", - 'Loading' => "Завантаження", - 'Quick Edit Options' => ""Швидке редагування" Опції", - 'Press {{KEY}} to set NULL' => "Натисніть {{ключ}} для установки NULL", - 'MySQL Server' => "MySQL Server", - 'Logged in as: {{USER}}' => "Ви увійшли як: {{USER}}", - 'Results' => "Результати", - 'Messages' => "Повідомлення", - 'Information' => "Інформація", - 'History' => "Історія", - 'There are no results to show in this view' => "Є нічого не знайдено, щоб показати в цій точці зору", - 'Refresh results' => "Оновити результати", - 'Please wait' => "Будь ласка, почекайте", - 'Query All' => "Запит всіх", - 'Query' => "Запит", - 'Add Record' => "Додати запис", - 'Delete Record(s)' => "Видалити запис (и)", - 'Update Record(s)' => "Оновлення запису (и)", - 'Generate SQL' => "Створення SQL", - 'Database name' => "Ім'я бази даних", - 'Select database after creation' => "Вибір бази даних після створення", - 'Database connection failed to the server' => "Підключення до бази даних не вдалося сервера", - 'Host' => "Приймаючою", - 'User' => "Користувач", - 'Select a database to begin' => "Виберіть базу даних, щоб розпочати", - 'Select/unselect All records' => "Встановити або зняти всі записи", - 'Primary key column' => "Стовпець первинного ключа", - 'Unique key column' => "Унікальні ключові колонки", - 'Showing records {{START}} - {{END}}' => "Записи Записи {{START}} - {{END}}", - 'Showing first {{MAX}} records only' => "Показані перші {{MAX}} записів", - '1 query successfully executed' => "1 запит успішно виконаний", - '{{NUM}} queries successfully executed' => "{{NUM}} запитів успішно виконані", - '{{NUM}} record(s) were affected' => "{{NUM}} запису (ів) постраждали", - '{{NUM}} record(s) updated' => "{{NUM}} запису (ів) оновлення", - 'Error occurred while executing the query' => "Сталася помилка під час виконання запиту", - '{{NUM}} queries failed to execute' => "{{NUM}} запитів не вдалося виконати", - 'Click to view/edit column data [{{NUM}} Bytes]' => "Клікніть для перегляду / редагування даних стовпця [{{NUM}} байт]", - 'Blob data is not editable' => "Blob даних не редаговані", - 'Blob data saved' => "Blob даних, збережених", - 'Failed to save blob data' => "Не вдалося зберегти дані BLOB", - 'The process with id [{{PID}}] was killed' => "Процес з ідентифікатором [{{PID}}] був убитий", - 'No such process [id = {{PID}}]' => "Немає такого процесу [ID = {{PID}}]", - 'Select a process and click the button to kill the process' => "Виберіть і клацніть кнопку, щоб вбити процес", - 'Process ID' => "Ідентифікатор процесу", - 'Command' => "Командна", - 'Time' => "Час", - 'Info' => "Інформація", - 'Kill Process' => "Вбити процес", - 'Failed to get process list' => "Не вдалося отримати список процесів", - 'The command executed successfully' => "Команда виконана успішно", - 'Invalid server configuration' => "Невірна конфігурація сервера", - 'Invalid Credentials' => "Неправильні облікові дані", - 'New database successfully created' => "Нова база даних успішно створена", - 'File upload failed. Please try again' => "Завантаження файлу не вдалося. Будь ласка, спробуйте ще раз", - 'No queries were executed during import' => "Ні запити були виконані під час імпорту", - 'Maximum upload filesize is {{SIZE}}' => "Максимальне завантаження файлу є {{розмір}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "Підтримувані типи файлів / розширень: ({{та}})", - 'Database summary' => "База даних резюме", - 'Server Variables' => "Серверні змінні", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "Будь-який існуючий об'єкт з такою ж назвою повинен бути відкинутий вручну перед виконанням створення команди", - 'Only create commands are accepted' => "Тільки створення команди приймаються", - 'User ID' => "Ідентифікатор користувача", - 'Password' => "Пароль", - 'Login' => "Увійти", - 'Create new database object' => "Створення нового об'єкта бази даних", - 'Enter command for object creation' => "Введіть команду для створення об'єкту", - 'Submit' => "Надіслати", - 'Show blob data as: {{TYPE}}' => "Показувати дані BLOB як: {{тип}}", - 'Blob data for column {{NAME}}' => "Blob даних для стовпця {{NAME}}", - 'Create command for {{TYPE}} {{NAME}}' => "Створити команду {{тип}} {{NAME}}", - 'Table Engine (type)' => "Таблиця Двигун (тип)", - 'Change Table Type' => "Зміна типу таблиці", - 'The requested page is not available on the server' => "Потрібна сторінка не доступна на сервері", - 'Error' => "Помилка", - 'It appears that you attempted to submit an invalid request to the server' => "Схоже, що ви намагалися представити Неправильний запит до сервера", - 'The request has been denied. Reloading the page might solve the problem' => "Запит було відхилено. Перезавантаження сторінки може вирішити проблему", - 'Access Denied' => "Доступ заборонений", - 'Help' => "Довідка", - 'To see most up-to-date help contents, please visit {{LINK}}' => "Щоб побачити вміст найсучасніші допомога, будь ласка, відвідайте {{LINK}}", - 'It appears that your browser session has expired' => "Схоже, що ваш браузер сесії минув", - 'Please refresh the webpage to re-login' => "Оновіть сторінку, щоб повторно Увійти", - 'Table information' => "Таблиця інформації", - 'Edit' => "Змінити", - 'Save' => "Зберегти", - 'Either the database is empty, or there was an error retrieving list of database objects' => "Або база даних порожня, або сталася помилка отримання списку об'єктів бази даних", - 'Please try closing and re-opening this dialog again' => "Будь ласка, спробуйте закрити і знову відкрити цей діалог", - 'Structure' => "Структура", - 'Table Data' => "Таблиця даних", - 'Structure and Table Data' => "Структура і табличні дані", - 'Options' => "Функції", - 'Set Auto increment field values to NULL' => "Налаштування автоматичного значення приросту поля NULL", - 'Add DROP command before create statements' => "Додати DROP команду, перш ніж створити заяви", - 'Export' => "Експорт", - 'Import' => "Імпорт", - 'Export Database' => "Експорт бази даних", - 'Export Table' => "Експорт таблиці", - 'Server information' => "Інформація про сервер", - 'Server' => "Сервер", - 'Version comment' => "Версія коментар", - 'Character sets' => "Набори символів", - 'Server character set' => "Сервер набір символів", - 'Client character set' => "Клієнт набір символів", - 'Database character set' => "Набір символів бази даних", - 'Results character set' => "Результати набору символів", - 'Export As' => "Експорт в", - 'Insert Statements' => "Вставте заявами", - 'Include field names in query' => "Включити імена полів у запиті", - 'XML' => "XML", - 'XHTML' => "XHTML", - 'Plain Text (One record per line)' => "Простий текст (один запис на рядок)", - 'Fields separated by:' => "Полів, розділених по:", - 'Export Results' => "Експорт результатів", - 'Select SQL batch file to import' => "Виберіть SQL пакетних файлів для імпорту", - 'Continue processing even if error occurs' => "Продовжити обробку навіть при виникненні помилки", - 'Basic Information' => "Основна інформація", - 'Table Properties' => "Властивості таблиці", - 'Table Name' => "Ім'я таблиці", - 'Field Name' => "Ім'я поля", - 'Data Type' => "Тип даних", - 'Length' => "Довжина", - 'Default value' => "За умовчанням значення", - 'Unsigned' => "Непідписаний", - 'Zero Fill' => "Zero Fill", - 'Primary Key' => "Первинний ключ", - 'Auto Increment' => "Автоінкремент", - 'Not NULL' => "Не NULL", - 'Character Set' => "Набір символів", - 'Collation' => "Зіставлення", - 'Comment' => "Коментар", - 'Waiting for table information to be submitted' => "В очікуванні таблиці інформації, що підлягає поданням", - 'Add field' => "Додати поле", - 'Delete selected field' => "Видалити вибране поле", - 'Clear Table Information' => "Очистити таблицю інформації", - 'List of values' => "Список значень", - 'Query Results' => "Результати запиту", - 'Data for {{TABLE}}' => "Дані щодо {{TABLE}}", - 'Select tables to be analyzed/repaired' => "Вибір таблиць для аналізу / відремонтовані", - 'Operation to perform' => "Операцію для виконання", - 'Analyze' => "Аналізувати", - 'Check' => "Перевірити", - 'Optimize' => "Оптимізації", - 'Repair' => "Ремонт", - 'Skip Binary logging' => "Перейти двійкову реєстрацію", - 'Default' => "За замовчуванням", - 'Quick' => "Швидкий", - 'Fast' => "Швидка", - 'Medium' => "Середній", - 'Extended' => "Розширені", - 'Changed' => "Змінено", - 'Use Frm files (MyISAM tables)' => "Використовуйте Frm файлів (MyISAM таблиць)", - 'User Information' => "Інформація про користувача", - 'Global Privileges' => "Глобальні привілеї", - 'Database Privileges' => "База даних привілеї", - 'Import File' => "Імпорт файлів", - 'Index Manager' => "Індекс Manager", - 'Edit table structure' => "Змінити структуру таблиці", - 'Save All Changes' => "Зберегти всі зміни", - 'Changes are not saved until you press [Save All Changes]' => "Зміни не зберігаються поки ви не натиснете [Зберегти всі зміни]", - 'Field Length' => "Поле Довжина", - 'Select objects to include in export' => "Вибір об'єктів для включення в експорті", - 'Export type' => "Експорт типу", - 'Select All/None' => "Скинути / вибрати всі", - 'Add User' => "Додати користувача", - 'Update User' => "Оновлення Користувач", - 'Delete selected User' => "Видалити вибраних користувачів", - 'Remove Password' => "Видалення пароля", - 'Select tables to search' => "Виберіть таблиці для пошуку", - 'Search Options' => "Параметри пошуку", - 'Search in following field types' => "Пошук в наступних типів полів", - 'Numeric Fields' => "Числових полів", - 'Character Fields' => "Символьних полів", - 'Text Fields' => "Текстові поля", - 'Date/Time Fields' => "Дата / час полів", - 'Comparison Type' => "Порівняння Тип", - 'Text to search' => "Текст для пошуку", - 'Search' => "Пошук", - 'Search Results' => "Результати пошуку", - 'Number of matches' => "Кількість матчів", - 'Search results for {{KEYWORD}} in the database' => "Результати пошуку для {{KEYWORD}} слово в базі даних", - '{{NUM}} match(es)' => "{{NUM}} матчу (ES)", - 'Copy query to editor' => "Копія запиту редактору", - 'Done' => "Зробити", - 'SQL Editor' => "Редактор SQL", - 'Create Copy' => "Створити копію", - 'Minimize All' => "Згорнути все", - 'Copy Record(s)' => "Копіювання записів (ів)", - 'YAML' => "YAML", - 'Comma Separated (CSV for Excel)' => "Розділені комами (CSV для Excel)", - 'Select data file to import' => "Виберіть файл даних для імпорту", - 'Select table for data import' => "Виберіть таблицю для імпорту даних", - 'First line contains column names' => "Перший рядок містить імена стовпців", - 'Select objects to operate upon' => "Вибір об'єктів для роботи на", - 'Operations to perform' => "Операції для виконання", - 'Add prefix string to name' => "Додати префікс рядка назвати", - 'Delete prefix string from name' => "Видаліть префікс рядка з назвою", - 'Command text' => "Текст команди", - 'DROP selected database objects' => "Копіювання вибраних об'єктів баз даних", - 'Batch operation results' => "Результати періодичної дії", - 'Operation' => "Операція", - 'Status' => "Статус", - '{{NUM}} queries generated' => "{{NUM}} запити, згенеровані", - 'Please select one or more operations to perform' => "Будь ласка, виберіть одну або кілька операцій для виконання", - 'Quick Search' => "Швидкий пошук", - '{{NAME}} client library is not installed' => "{{Name}} клієнтська бібліотека не встановлена", - '{{NAME}} extension is not installed' => "{{Name}} розширення не встановлений", - 'SQLite database folder is inaccessible or not writable' => "SQLite бази даних загальних папок недоступний або не доступний для запису", - 'Maximize/Restore Results Pane' => "Розгорнути / Відновити Результати область", - 'Select databases to operate upon' => "Вибір бази даних для роботи на", - 'DROP selected databases' => "DROP обраної бази даних", - 'The following operation is irreversible' => "Наступна операція незворотна", - 'Potential data loss might occur' => "Потенційна втрата даних може статися", - 'Add TRUNCATE command before insert statements' => "Додати TRUNCATE команду перед вставкою заяви", - 'Select objects to include in backup' => "Виберіть об'єкти для включення до резервного", - 'Backup folder does not exist or is not writable' => "Резервне копіювання папки не існує або недоступний для запису", - 'Backup type' => "Тип резервного копіювання", - 'Database backup successfully created' => "Резервне копіювання бази даних успішно створена", - 'Failed to create database backup' => "Не вдалося створити резервну копію бази даних", - 'Generate Bulk insert statements' => "Створення інструкції масової вставки", - 'Maximum size of SQL statement' => "Максимальний розмір заяви SQL", - 'Show record count with table names' => "Показати кількість записів з іменами таблиць", - 'Sort Table listing by' => "Сортувати за таблиця з переліком", - 'Name' => "Назва", - 'Last Update Time' => "Час останнього оновлення", - 'Maximum records to display in result set' => "Максимальне число записів, що відображаються в результуючий набір", - 'Show popup dialog for editing large text data' => "Показати спливаюче діалогове вікно для редагування великих текстових даних", - 'Miscellaneous' => "Змішаний", - 'Reset all confirmation dialogs' => "Скинути всі діалоги підтвердження", - 'Record Editing' => "Редагування запису", - 'Exclude Table type' => "Виключити Тип стола", - 'Exclude Table Character set' => "Виключити столовий набір символів", - 'Backup filename' => "Резервне копіювання файлу", - 'Invalid filename format' => "Невірний формат файлу", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "всі", - 'all selected' => "всі вибрані", - 'An error occured while refreshing the object list.' => "Помилка при оновленні списку об'єктів.", - 'Are you sure you want to clear all field information from table?' => "Ви впевнені, що хочете видалити всі інформаційне поле з таблиці?", - 'Are you sure you want to delete this user account?' => "Ви впевнені, що хочете видалити цей обліковий запис?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "Ви впевнені, що хочете видалити всі об'єкти з бази даних {{NAME}}?", - 'Are you sure you want to DROP selected objects?' => "Ви дійсно хочете видалити вибрані об'єкти?", - 'Are you sure you want to DROP the database {{NAME}}?' => "Ви впевнені, що хочете відмовитися від бази даних {{NAME}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "Ви впевнені, що хочете відмовитися від цього об'єкта? {{NAME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "Ви впевнені, що ви хочете виконати {{SELECTED}} запити?", - 'Are you sure you want to logout?' => "Ви впевнені, що хочете вийти?", - 'Are you sure you want to truncate the table {{NAME}}?' => "Ви впевнені, що ви хочете на усікання таблиці {{NAME}}?", - 'Blob Data [{{SIZE}}]' => "Blob даних [{{SIZE}}]", - 'Cancel' => "Скасувати", - 'Check for Updates' => "Перевірити наявність оновлень", - 'Clear command history?' => "Очистити історію команд?", - 'Close' => "Закрити", - 'Confirm Action' => "Підтвердження дій", - 'Confirm and do not ask me again about this choice' => "Підтвердити і не питати про це вибір", - 'Copy Object' => "Копіювання об'єктів", - 'Create Database' => "Створення бази даних", - 'Create Primary Index on this field' => "Створити первинний індекс на це поле", - 'Databases' => "Бази даних", - 'Default value [Use quotes to specify string values]' => "Значення за замовчуванням [Використовуйте лапки, щоб вказати значення рядків]", - 'Disallow NULL values in Field' => "Заборонити NULL значень у полі", - 'Enter new index name' => "Введіть нове ім'я індексу", - 'Enter new name for the database object' => "Введіть нове ім'я для об'єкта бази даних", - 'Enter the text to search in database' => "Введіть текст для пошуку в базі даних", - 'Error' => "Помилка", - 'Events' => "Події", - 'Execute query' => "Виконати запит", - 'Exports results' => "Експорт результатів", - 'Failed to refresh the results.' => "Не вдалося оновити результати.", - 'Field Datatype' => "Поле Тип даних", - 'Field Name' => "Ім'я поля", - 'Field value is Auto Incremented' => "Значення поля Авто Збільшується", - 'Functions' => "Функції", - 'Indexes Updated' => "Індекси Оновлено", - 'Maximum Length of field value' => "Максимальна довжина значення поля", - 'Navigation Error. Try reloading the page' => "Навігація помилка. Спробуйте оновити сторінку", - 'New settings saved and applied' => "Нові параметри збережені і прикладних", - 'New version is available' => "Нова версія доступна", - 'Next' => "Наступна", - 'No' => "Ні", - 'No Table selected' => "Ні обраної таблиці", - 'Not enough room to show this pane.' => "Не вистачає місця, щоб показати цю область.", - 'OK' => "ОК", - 'One or more field information is incomplete' => "Один або кілька полів інформація є неповною", - 'Open' => "Відкрити", - 'Operation failed' => "Не вдалося виконати операцію", - 'Pad field values with leading zeros' => "Pad значення полів з провідними нулями", - 'Pane' => "Панелі", - 'Passwords do not match' => "Паролі не збігаються", - 'Pin' => "Pin", - 'Please select one or more operations to perform' => "Будь ласка, виберіть одну або кілька операцій для виконання", - 'Please type in one or more queries in the SQL editor!' => "Будь ласка, введіть один або декілька запитів в редакторі SQL!", - 'Please wait...' => "Будь ласка, зачекайте ...", - 'Previous' => "Попередня", - 'Procedures' => "Процедури", - 'Prompt' => "Підкажуть", - 'Refresh results' => "Оновити результати", - 'Refreshing object list' => "Оновлення списку об'єктів", - 'Rename Object' => "Перейменувати об'єкт", - 'Resize' => "Зміна розміру", - 'Results page:' => "Сторінка результатів:", - 'Select a database to view privileges for the user' => "Вибір бази даних для перегляду привілеїв для користувачів", - 'Select an index to view / edit its details' => "Виберіть індекс для перегляду / редагування його деталі", - 'Select at least one field type for searching' => "Виберіть хоча б одне поле типу для пошуку", - 'Select objects to operate upon' => "Вибір об'єктів для роботи на", - 'selector' => "селектор", - 'Slide Open' => "Розсунути", - 'Table information requires at least one valid field' => "Таблиця інформації вимагає, принаймні один дійсний полі", - 'Table name is required' => "Ім'я таблиці потрібно", - 'Table successfully created' => "Таблиця успішно створений", - 'Table successfully modified' => "Таблиця успішно змінено", - 'Tables' => "Таблиці", - 'Text Data [{{SIZE}}]' => "Текстові дані [{{SIZE}}]", - 'There is no record in the results to export' => "Існує немає запису в результати на експорт", - 'This attribute is not required for selected field type' => "Цей атрибут не є обов'язковим для обраного типу поля", - 'Triggers' => "Тригери", - 'Un-Pin' => "Un-Pin", - 'Unsigned numbered field only' => "Без підпису номером поля тільки", - 'Update check failed' => "Оновлення перевірити не вдалося", - 'User information is incomplete or invalid' => "Користувач інформація є неповною або недійсним", - 'User Manager' => "Користувач Manager", - 'Views' => "Переглядів", - 'WARNING' => "УВАГА!", - 'Yes' => "Так", - 'You have the latest version' => "У вас є остання версія", - - ); -?> diff --git a/lang/zh.php b/lang/zh.php deleted file mode 100644 index 805b0dd..0000000 --- a/lang/zh.php +++ /dev/null @@ -1,463 +0,0 @@ - "利用数据库", - 'Drop Database' => "删除数据库", - 'Empty Database' => "空数据库", - 'Drop all tables from this database' => "将他从该数据库的所有表", - 'Select statement' => "Select语句", - 'Insert statement' => "Insert语句", - 'Update statement' => "Update语句", - 'Describe' => "描述", - 'Show create command' => "显示创建命令", - 'View data' => "查看数据", - 'Alter Table' => "修改表", - 'Indexes' => "指标", - 'Engine Type' => "发动机型号", - 'More operations' => "更多的操作", - 'Truncate' => "截短", - 'Drop' => "下降", - 'Rename' => "重命名", - 'Export table data' => "表中的数据导出", - 'Create Table' => "创建表", - 'Create View' => "创建视图", - 'Create Procedure' => "创建过程", - 'Create Function' => "创建函数", - 'Create Trigger' => "创建触发器", - 'Create Event' => "创建活动", - 'Show/Hide Panel' => "显示/隐藏面板", - 'Show/Hide Header' => "显示/隐藏标题", - 'Copy all queries to clipboard' => "将所有查询到剪贴板", - 'Clear history' => "清除历史记录", - 'Copy Column values' => "复制列值", - 'Copy to clipboard' => "复制到剪贴板", - 'Generate SQL Filter' => "生成SQL过滤器", - 'Database Manager' => "数据库管理器", - 'Manage databases' => "管理数据库", - - // main menu related text - 'Database' => "数据库", - 'Refresh' => "刷新", - 'Refresh database object list' => "刷新数据库对象名单", - 'Create new' => "创建新", - 'Export' => "出口", - 'Export database to external file' => "导出数据库,外部文件", - 'Objects' => "对象", - 'Create Table' => "创建表", - 'Create a new table in the database' => "在数据库中创建一个新表", - 'Create View' => "创建视图", - 'Create a new view in the database' => "在数据库中创建一个新视图", - 'Create Stored Procedure' => "创建存储过程", - 'Create a new stored procedure in the database' => "在数据库中创建一个新的存储过程", - 'Create Function' => "创建函数", - 'Create a new user defined function in the database' => "创建一个新用户在数据库中定义的函数", - 'Create Trigger' => "创建触发器", - 'Create a new trigger in the database' => "在数据库中创建一个新的触发", - 'Create Event' => "创建活动", - 'Create a new event in the database' => "在数据库中创建一个新的事件", - 'Data' => "数据", - 'Import batch file' => "导入批处理文件", - 'Import multiple queries from batch file' => "从批处理文件导入多个查询", - 'Export database' => "导出数据库", - 'Export database to batch file as sql dump' => "导出数据库与SQL转储文件批量", - 'Export current results' => "目前的结果导出", - 'Export query results to clipboard or files' => "导出查询结果到剪贴板或文件", - 'Tools' => "工具", - 'Process Manager' => "流程管理", - 'View and manage database processes' => "查看和管理数据库进程", - 'Repair Tables' => "修复表", - 'Analyze and repair database tables' => "分析和修复数据库表", - 'User Manager' => "用户管理", - 'Manage database users' => "管理数据库用户", - 'Search in Database' => "在数据库中搜索", - 'Search for text in the database' => "在数据库中搜索文本", - 'Information' => "信息", - 'Server/Connection Details' => "服务器/连接详细信息", - 'View server configuration' => "查看服务器配置", - 'View server and connection details' => "查看服务器和连接的详细信息", - 'Server Variables' => "服务器变量", - 'Database Summary' => "数据库目录", - 'View current database summary stats' => "查看当前数据库汇总统计", - 'Interface' => "接口", - 'Options' => "选项", - 'Configure application options' => "配置应用程序选项", - 'UI Theme' => "界面主题", - 'Database Objects' => "数据库对象", - 'Toggle Object Viewer' => "切换对象查看器", - 'Help contents' => "帮助内容", - 'Learn the basics of using MyWebSQL' => "了解使用MyWebSQL的基础知识", - 'QuickStart Tutorials' => "快速入门教程", - 'See quick hands-on tutorial of MyWebSQL interface' => "见快动手教程界面的MyWebSQL", - 'Online documentation' => "联机文档", - 'View online documentation on project website' => "查看联机文档在项目网站", - 'Request a Feature' => "请求功能", - 'If you would like your most favourite feature to be part of MyWebSQL, please click here to inform about it' => "如果你想你最喜欢的功能是MyWebSQL的一部分,请点击这里了解它", - 'Report a Problem' => "报告问题", - 'Check for updates' => "检查更新", - 'Check for updated versions of the application online' => "检查是否有更新版本网上申请", - 'Logout' => "注销", - 'Logout from this session' => "从本次会议登出", - 'Language' => "语言", - 'SQL Editor' => "SQL编辑器", - 'Toggle SQL Editor' => "切换SQL编辑器", - 'Experimental' => "实验", - 'Import table data' => "导入表数据", - 'Import table data from external file' => "从外部文件导入表数据", - 'Batch operations' => "批量操作", - 'Perform one or more batch operations on database' => "对数据库执行一个或多个批量操作", - 'Create a new schema in the database' => "在数据库中创建一个新的模式", - 'Create Schema' => "创建模式", - 'Table Description' => "表说明", - 'Database Manager' => "数据库管理器", - 'Manage databases' => "管理数据库", - 'Backup database on the server as SQL dump' => "备份数据库服务器上的SQL转储", - 'Backup Database' => "备份数据库", - - // messages - 'Your browser appears to be very old and does not support all features required to run MyWebSQL.' => "您的浏览器似乎很旧,不支持运行MyWebSQL所需的所有功能。", - 'Try using a newer version of the browser to run this application.' => "尝试使用新版本的浏览器运行此应用程序", - - // text used on various screens in the interface - 'Visit Project website' => "访问项目网站", - 'Version' => "版本", - 'Loading' => "载入中", - 'Quick Edit Options' => "快速编辑选项", - 'Press {{KEY}} to set NULL' => "按{{KEY}}设置为NULL", - 'MySQL Server' => "MySQL服务器", - 'Logged in as: {{USER}}' => "作为记录:{{USER}}", - 'Results' => "结果", - 'Messages' => "消息", - 'Information' => "信息", - 'History' => "历史", - 'There are no results to show in this view' => "有没有结果表明在此视图", - 'Refresh results' => "刷新结果", - 'Please wait' => "请稍候", - 'Query All' => "查询所有", - 'Query' => "查询", - 'Add Record' => "添加记录", - 'Delete Record(s)' => "删除记录(s)", - 'Update Record(s)' => "更新记录(s)", - 'Generate SQL' => "生成SQL", - 'Database name' => "数据库名称", - 'Select database after creation' => "选择数据库创建后", - 'Database connection failed to the server' => "数据库连接到服务器失败", - 'Host' => "主机", - 'User' => "用户", - 'Select a database to begin' => "选择一个数据库,开始", - 'Select/unselect All records' => "选择/取消选择所有记录", - 'Primary key column' => "主键列", - 'Unique key column' => "独特的键列", - 'Showing records {{START}} - {{END}}' => "显示记录{{START}}-{{END}}", - 'Showing first {{MAX}} records only' => "第一只记录显示{{MAX}}", - '1 query successfully executed' => "1查询成功执行", - '{{NUM}} queries successfully executed' => "{{NUM}}个成功执行查询", - '{{NUM}} record(s) were affected' => "{{NUM}}个记录(s)分别为受影响", - '{{NUM}} record(s) updated' => "{{NUM}}个记录(s)更新", - 'Error occurred while executing the query' => "错误发生在执行查询", - '{{NUM}} queries failed to execute' => "{{NUM}}个查询未能执行", - 'Click to view/edit column data [{{NUM}} Bytes]' => "点击查看/编辑列的数据[{{NUM}}个字节]", - 'Blob data is not editable' => "BLOB数据是不可编辑", - 'Blob data saved' => "Blob数据保存", - 'Failed to save blob data' => "无法保存BLOB数据", - 'The process with id [{{PID}}] was killed' => "ID为[{{PID}}]的过程被打死", - 'No such process [id = {{PID}}]' => "没有这样的过程[编号={{PID}}]", - 'Select a process and click the button to kill the process' => "选择一个进程,然后点击按钮来杀死进程", - 'Process ID' => "进程ID", - 'Command' => "命令", - 'Time' => "时间", - 'Info' => "信息", - 'Kill Process' => "杀死进程", - 'Failed to get process list' => "无法获取进程列表", - 'The command executed successfully' => "命令执行成功", - 'Invalid server configuration' => "无效的服务器配置", - 'Invalid Credentials' => "无效的凭证", - 'New database successfully created' => "成功创建新的数据库", - 'File upload failed. Please try again' => "文件上传失败。请再试一次", - 'No queries were executed during import' => "没有问题导入过程中被处决", - 'Maximum upload filesize is {{SIZE}}' => "最大上传文件大小是{{SIZE}}", - 'Supported filetypes / extensions are: ({{LIST}})' => "支持的文件类型/扩展名是:{{LIST}})", - 'Database summary' => "数据库摘要", - 'Server Variables' => "服务器变量", - 'Any existing object with the same name should be dropped manually before executing the creation command' => "任何具有相同名称的现有对象应该被丢弃之前手动执行创建命令", - 'Only create commands are accepted' => "只有接受创建命令", - 'User ID' => "用户ID", - 'Password' => "密码", - 'Login' => "登录", - 'Create new database object' => "创建新的数据库对象", - 'Enter command for object creation' => "对象创建输入命令", - 'Submit' => "提交", - 'Show blob data as: {{TYPE}}' => "BLOB数据显示为:{{TYPE}}", - 'Blob data for column {{NAME}}' => "Blob数据列{{NAME}}", - 'Create command for {{TYPE}} {{NAME}}' => "创建{{TYPE}}的{{NAME}}的命令", - 'Table Engine (type)' => "表引擎(型)", - 'Change Table Type' => "更改表型", - 'The requested page is not available on the server' => "所请求的页面是不是在服务器上可用", - 'Error' => "错误", - 'It appears that you attempted to submit an invalid request to the server' => "看来,你尝试提交一个无效的请求到服务器", - 'The request has been denied. Reloading the page might solve the problem' => "请求已被拒绝。重新载入页面可能解决问题", - 'Access Denied' => "访问被拒绝", - 'Help' => "帮助", - 'To see most up-to-date help contents, please visit {{LINK}}' => "要查看最先进最新的帮助内容,请访问{{LINK}}", - 'It appears that your browser session has expired' => "看来,您的浏览器会话已过期", - 'Please refresh the webpage to re-login' => "请刷新网页,重新登录", - 'Table information' => "表信息", - 'Edit' => "编辑", - 'Save' => "保存", - 'Either the database is empty, or there was an error retrieving list of database objects' => "无论是数据库是空的,或有一个错误检索数据库对象列表", - 'Please try closing and re-opening this dialog again' => "请尝试关闭并重新打开此对话框", - 'Structure' => "结构", - 'Table Data' => "表数据", - 'Structure and Table Data' => "结构和表数据", - 'Options' => "选项", - 'Set Auto increment field values to NULL' => "设置自动递增的字段值为NULL", - 'Add DROP command before create statements' => "前添加DROP命令CREATE语句", - 'Export' => "出口", - 'Import' => "进口", - 'Export Database' => "导出数据库", - 'Export Table' => "导出表", - 'Server information' => "服务器的信息", - 'Server' => "服务器", - 'Version comment' => "版本注释", - 'Character sets' => "字符集", - 'Server character set' => "服务器字符集", - 'Client character set' => "客户端字符集", - 'Database character set' => "数据库字符集", - 'Results character set' => "结果字符集", - 'Export As' => "导出为", - 'Insert Statements' => "插入语句", - 'Include field names in query' => "在查询中包括字段名", - 'XML' => "XML的", - 'XHTML' => "的XHTML", - 'Plain Text (One record per line)' => "纯文字(每行一个记录)", - 'Fields separated by:' => "分离领域:", - 'Export Results' => "导出结果", - 'Select SQL batch file to import' => "选择SQL批处理文件导入", - 'Continue processing even if error occurs' => "继续处理,即使发生错误", - 'Basic Information' => "基本信息", - 'Table Properties' => "表属性", - 'Table Name' => "表名", - 'Field Name' => "字段名称", - 'Data Type' => "数据类型", - 'Length' => "长", - 'Default value' => "默认值", - 'Unsigned' => "未签名", - 'Zero Fill' => "补零", - 'Primary Key' => "主键", - 'Auto Increment' => "自动递增", - 'Not NULL' => "不为NULL", - 'Character Set' => "字符集", - 'Collation' => "校勘", - 'Comment' => "评论", - 'Waiting for table information to be submitted' => "等待的表信息提交", - 'Add field' => "添加字段", - 'Delete selected field' => "删除选定的字段", - 'Clear Table Information' => "清除表信息", - 'List of values' => "值列表", - 'Query Results' => "查询结果", - 'Data for {{TABLE}}' => "数据{{TABLE}}", - 'Select tables to be analyzed/repaired' => "选择表进行分析/修复", - 'Operation to perform' => "要执行的操作", - 'Analyze' => "分析", - 'Check' => "检查", - 'Optimize' => "优化", - 'Repair' => "修复", - 'Skip Binary logging' => "跳过二进制日志", - 'Default' => "默认", - 'Quick' => "快速", - 'Fast' => "快速", - 'Medium' => "中", - 'Extended' => "扩展", - 'Changed' => "改变", - 'Use Frm files (MyISAM tables)' => "使用frm文件(MyISAM表)", - 'User Information' => "用户信息", - 'Global Privileges' => "全局权限", - 'Database Privileges' => "数据库权限", - 'Import File' => "导入文件", - 'Index Manager' => "经理指数", - 'Edit table structure' => "修改表结构", - 'Save All Changes' => "保存所有更改", - 'Changes are not saved until you press [Save All Changes]' => "不保存更改,直到您按下[储存所有变更]", - 'Field Length' => "字段长度", - 'Select objects to include in export' => "选择对象,包括出口", - 'Export type' => "出口型", - 'Select All/None' => "选择全部/无", - 'Add User' => "添加用户", - 'Update User' => "更新用户", - 'Delete selected User' => "删除选定的用户", - 'Remove Password' => "删除密码", - 'Select tables to search' => "选择要搜索的表", - 'Search Options' => "搜索选项", - 'Search in following field types' => "在下面的搜索字段类型", - 'Numeric Fields' => "数字字段", - 'Character Fields' => "字符字段", - 'Text Fields' => "文本字段", - 'Date/Time Fields' => "日期/时间字段", - 'Comparison Type' => "比较类型", - 'Text to search' => "要搜寻的文字", - 'Search' => "搜索", - 'Search Results' => "搜索结果", - 'Number of matches' => "数场比赛", - 'Search results for {{KEYWORD}} in the database' => "搜索结果关键字 {{KEYWORD}} 在数据库中", - '{{NUM}} match(es)' => "{{NUM}}个匹配(西)", - 'Copy query to editor' => "查询复制到编辑器", - 'Done' => "完成", - 'SQL Editor' => "SQL编辑器", - 'Create Copy' => "创建副本", - 'Minimize All' => "最小化所有", - 'Copy Record(s)' => "复制记录(S)", - 'YAML' => "YAML的", - 'Comma Separated (CSV for Excel)' => "逗号分隔(用于Excel的CSV)", - 'Select data file to import' => "选择要导入的数据文件", - 'Select table for data import' => "选择数据导入表", - 'First line contains column names' => "第一行包含列名", - 'Select objects to operate upon' => "选择对象来操作", - 'Operations to perform' => "执行的操作", - 'Add prefix string to name' => "添加前缀字符串命名", - 'Delete prefix string from name' => "从名称中删除前缀字符串", - 'Command text' => "命令文本", - 'DROP selected database objects' => "删除选定的数据库对象", - 'Batch operation results' => "批量操作结果", - 'Operation' => "行动", - 'Status' => "状态", - '{{NUM}} queries generated' => "{{民}查询生成", - 'Please select one or more operations to perform' => "请选择一个或多个操作执行", - 'Quick Search' => "快速搜索", - '{{NAME}} client library is not installed' => "{{}}没有安装客户端库", - '{{NAME}} extension is not installed' => "{{}}扩展未安装", - 'SQLite database folder is inaccessible or not writable' => "SQLite数据库文件夹是无法访问或无法写入", - 'Maximize/Restore Results Pane' => "最大化/还原结果窗格", - 'Select databases to operate upon' => "选择数据库来操作", - 'DROP selected databases' => "DROP选定的数据库", - 'The following operation is irreversible' => "下面的操作是不可逆的", - 'Potential data loss might occur' => "潜在的数据可能会丢失", - 'Add TRUNCATE command before insert statements' => "truncate命令前插入语句", - 'Select objects to include in backup' => "选择对象包括在备份中", - 'Backup folder does not exist or is not writable' => "备份文件夹不存在或不可写", - 'Backup type' => "备份类型", - 'Database backup successfully created' => "成功创建数据库备份", - 'Failed to create database backup' => "无法创建数据库备份", - 'Generate Bulk insert statements' => "生成BULK INSERT语句", - 'Maximum size of SQL statement' => "SQL语句的最大大小", - 'Show record count with table names' => "显示的记录数与表名", - 'Sort Table listing by' => "排序表上市", - 'Name' => "名", - 'Last Update Time' => "最后更新时间", - 'Maximum records to display in result set' => "最大的记录显示在结果集", - 'Show popup dialog for editing large text data' => "编辑大量文本数据显示弹出的对话框", - 'Miscellaneous' => "杂项", - 'Reset all confirmation dialogs' => "重置所有确认对话框", - 'Record Editing' => "记录编辑", - 'Exclude Table type' => "不包括表型", - 'Exclude Table Character set' => "排除表字符集", - 'Backup filename' => "备份文件名", - 'Invalid filename format' => "无效的文件名格式", - - ); - - // javascript - $LANGUAGE_JS = array( - 'all' => "所有", - 'all selected' => "所有选定", - 'An error occured while refreshing the object list.' => "刷新时发生错误的对象列表中。", - 'Are you sure you want to clear all field information from table?' => "您确定要清除所有表的字段信息?", - 'Are you sure you want to delete this user account?' => "你确定要删除此用户帐户?", - 'Are you sure you want to DROP all objects from the database {{NAME}}?' => "你确定要删除从数据库{{NAME}}所有对象?", - 'Are you sure you want to DROP selected objects?' => "你确定要删除选定的对象吗?", - 'Are you sure you want to DROP the database {{NAME}}?' => "你确定要删除数据库{{NAME}}?", - 'Are you sure you want to drop this object? {{NAME}}' => "你确定要删除此对象吗?{{NAME}}", - 'Are you sure you want to execute {{SELECTED}} queries?' => "您确定要执行{{SELECTED}}查询?", - 'Are you sure you want to logout?' => "你确定要登出?", - 'Are you sure you want to truncate the table {{NAME}}?' => "你确定要截断表E{{NAME}}?", - 'Blob Data [{{SIZE}}]' => "Blob数据[{{SIZE}]", - 'Cancel' => "取消", - 'Check for Updates' => "检查更新", - 'Clear command history?' => "清除命令历史记录?", - 'Close' => "关闭", - 'Confirm Action' => "确认行动", - 'Confirm and do not ask me again about this choice' => "确认,不要问我了这样的选择", - 'Copy Object' => "复制对象", - 'Create Database' => "创建数据库", - 'Create Primary Index on this field' => "创建主索引这一领域", - 'Databases' => "数据库", - 'Default value [Use quotes to specify string values]' => "默认值[使用引号来指定字符串值]", - 'Disallow NULL values in Field' => "不允许空值场", - 'Enter new index name' => "输入新的索引名称", - 'Enter new name for the database object' => "输入数据库对象的新名称", - 'Enter the text to search in database' => "输入要搜寻的文字资料库", - 'Error' => "错误", - 'Events' => "活动", - 'Execute query' => "执行查询", - 'Exports results' => "出口业绩", - 'Failed to refresh the results.' => "刷新失败的结果。", - 'Field Datatype' => "现场数据类型", - 'Field Name' => "字段名称", - 'Field value is Auto Incremented' => "字段的值是自动递增", - 'Functions' => "函数", - 'Indexes Updated' => "索引更新", - 'Maximum Length of field value' => "最大长度值场", - 'Navigation Error. Try reloading the page' => "导航误差。尝试重新载入页面", - 'New settings saved and applied' => "保存新的设置和应用", - 'New version is available' => "新版本可用", - 'Next' => "下一页", - 'No' => "无", - 'No Table selected' => "没有表中选择", - 'Not enough room to show this pane.' => "没有足够的空间来显示此窗格。", - 'OK' => "确定", - 'One or more field information is incomplete' => "一个或多个领域的信息不完整", - 'Open' => "打开", - 'Operation failed' => "操作失败", - 'Pad field values with leading zeros' => "垫带前导零的字段值", - 'Pane' => "窗格", - 'Passwords do not match' => "密码不匹配", - 'Pin' => "针", - 'Please select one or more operations to perform' => "请选择一个或多个操作执行", - 'Please type in one or more queries in the SQL editor!' => "请在一个或多个查询在SQL编辑器的类型!", - 'Please wait...' => "请稍候...", - 'Previous' => "上一页", - 'Procedures' => "程序", - 'Prompt' => "提示", - 'Refresh results' => "刷新结果", - 'Refreshing object list' => "刷新对象列表", - 'Rename Object' => "重命名对象", - 'Resize' => "调整", - 'Results page:' => "结果页:", - 'Select a database to view privileges for the user' => "选择一个数据库,以查看用户的权限", - 'Select an index to view / edit its details' => "选择的索引查看/编辑其细节", - 'Select at least one field type for searching' => "至少选择一个搜索字段类型", - 'Select objects to operate upon' => "选择对象来操作", - 'selector' => "选择", - 'Slide Open' => "滑开", - 'Table information requires at least one valid field' => "表信息至少需要一个有效的字段", - 'Table name is required' => "表的名称是必需的", - 'Table successfully created' => "成功创建表", - 'Table successfully modified' => "表成功修改", - 'Tables' => "表", - 'Text Data [{{SIZE}}]' => "文本数据[{{SIZE}]", - 'There is no record in the results to export' => "有没有出口的结果记录", - 'This attribute is not required for selected field type' => "这个属性不需要选定字段类型", - 'Triggers' => "触发器", - 'Un-Pin' => "联合国针", - 'Unsigned numbered field only' => "未签名的编号字段只", - 'Update check failed' => "更新检查失败", - 'User information is incomplete or invalid' => "用户信息不完整或无效", - 'User Manager' => "用户管理", - 'Views' => "点击", - 'WARNING' => "警告", - 'Yes' => "是的", - 'You have the latest version' => "你有最新版本", - - ); -?> diff --git a/lib/.htaccess b/lib/.htaccess deleted file mode 100644 index bc59461..0000000 --- a/lib/.htaccess +++ /dev/null @@ -1,2 +0,0 @@ -Order Deny,Allow -Deny From All \ No newline at end of file diff --git a/lib/auth/custom.sample.php b/lib/auth/custom.sample.php deleted file mode 100644 index f4bd4db..0000000 --- a/lib/auth/custom.sample.php +++ /dev/null @@ -1,70 +0,0 @@ - <>, 1 => <>) - */ - - // CHANGE THE FOLLOWING FOR PROPER AUTHENTICATION BEHAVIOUR */ - if ($userid == 'mywebsql' && $password == 'custom') { - - // the following is required for proper functionality after authentication - Session::set('auth', 'valid', true); - Session::set('auth', 'server_name', $server[0], true); - Session::set('auth', 'host', $server[1]['host'], true); - Session::set('db', 'driver', $server[1]['driver']); - Session::set('auth', 'user', $userid, true); - Session::set('auth', 'pwd', $password, true); - - header('Location: '.EXTERNAL_PATH); - return true; - } else { - $this->setError(__('Invalid Credentials')); - } - - return false; - } - - /* return true or false from this function to show or hide the server list on login page */ - public static function showServerList() { - return true; - } - - /* this function should return the basic auth parameters if auth is successful */ - public function getParameters() { - $param = array( - 'host' => Session::get('auth', 'host', true), - 'driver' => Session::get('db', 'driver'), - 'username' => Session::get('auth', 'user', true), - 'password' => Session::get('auth', 'pwd', true) - ); - - return $param; - } - - /* leave the following functions unchanged */ - - public function getError() { - return $this->error; - } - - private function setError($str) { - $this->error = $str; - return false; - } - } -?> \ No newline at end of file diff --git a/lib/auth/wordpress.php b/lib/auth/wordpress.php deleted file mode 100644 index c5d68ac..0000000 --- a/lib/auth/wordpress.php +++ /dev/null @@ -1,70 +0,0 @@ - <>, 1 => <>) - */ - $wordpress_auth = Session::get('auth', 'wordpress_auth', true); - if ($wordpress_auth) { - if ($wordpress_auth = @unserialize($wordpress_auth)) { - Session::set('auth', 'server_name', $wordpress_auth['server_name'], true); - Session::set('auth', 'host', $wordpress_auth['host'], true); - Session::set('db', 'driver', $wordpress_auth['driver']); - Session::set('auth', 'user', $wordpress_auth['user'], true); - Session::set('auth', 'pwd', $wordpress_auth['pwd'], true); - Session::set('db', 'name', $wordpress_auth['dbname']); - Session::set('auth', 'valid', true); - Session::del('auth', 'wordpress_auth'); - //header('Location: '.EXTERNAL_PATH); - return true; - } - } - - Session::destroy(); - $this->setError(__('Invalid Credentials')); - return false; - } - - /* return true or false from this function to show or hide the server list on login page */ - public static function showServerList() { - return false; - } - - /* this function should return the basic auth parameters if auth is successful */ - public function getParameters() { - $param = array( - 'host' => Session::get('auth', 'host', true), - 'driver' => Session::get('db', 'driver'), - 'username' => Session::get('auth', 'user', true), - 'password' => Session::get('auth', 'pwd', true) - ); - - return $param; - } - - /* leave the following functions unchanged */ - - public function getError() { - return $this->error; - } - - private function setError($str) { - $this->error = $str; - return false; - } - } -?> \ No newline at end of file diff --git a/lib/db/manager.php b/lib/db/manager.php deleted file mode 100644 index e27144a..0000000 --- a/lib/db/manager.php +++ /dev/null @@ -1,59 +0,0 @@ -setAuthOptions($server); - - $result = $db->connect($host, $user, $password); - if (!$result) { - $this->errMsg = $db->getError(); - return false; - } - $db->disconnect(); - return true; - } - - // required for proper functionality - function disconnect() { - } - - function getError() { - return $this->errMsg; - } -} - -function replace_single_quotes($s) { - return str_replace("''", "'", $s); -} - -?> \ No newline at end of file diff --git a/lib/db/mysql4.php b/lib/db/mysql4.php deleted file mode 100644 index 53fbf7b..0000000 --- a/lib/db/mysql4.php +++ /dev/null @@ -1,716 +0,0 @@ -conn = null; - $this->errMsg = null; - $this->escapeData = true; - $this->result = array(); - } - - function name() { - return 'mysql'; - } - - function hasServer() { - return true; - } - - function hasObject($type) { - switch($type) { - case 'table': - return true; - break; - } - return false; - } - - function getObjectTypes() { - $types = array( - 'tables' - ); - - return $types; - } - - function getObjectList( $details = false ) { - $data = array( - 'tables' => $this->getTables( $details ) - ); - - return $data; - } - - function getBackQuotes() { - return '`'; - } - - function getQuotes() { - return '"'; - } - - function getStandardDbList() { - return array( 'mysql', 'test' ); - } - - function setAuthOptions($options) { - } - - function connect($ip, $user, $password, $db="") { - if (!function_exists('mysql_connect')) { - return $this->error(str_replace('{{NAME}}', 'MySQL', __('{{NAME}} client library is not installed'))); - } - - $this->conn = @mysql_connect($ip, $user, $password); - if (!$this->conn) - return $this->error(__('Database connection failed to the server')); - - if ($db && !@mysql_select_db($db, $this->conn)) - return $this->error(mysql_error($this->conn)); - - $this->ip = $ip; - $this->user = $user; - $this->password = $password; - $this->db = $db; - - $this->selectVersion(); - $this->query("SET CHARACTER SET 'utf8'"); - $this->query("SET collation_connection = 'utf8_general_ci'"); - - return true; - } - - function disconnect() { - @mysql_close($this->conn); - $this->conn = false; - return true; - } - - function getCurrentUser() { - if ($this->query('select user()')) { - $row = $this->fetchRow(); - return $row[0]; - } - return ''; - } - - function selectDb($db) { - $this->db = $db; - mysql_select_db($this->db); - } - - function createDatabase( $name ) { - $sql = "create database `".$this->escape($name)."`"; - return $this->query($sql); - } - - function query($sql, $stack=0) { // call with query($sql, 1) to store multiple results - if (!$this->conn) { - log_message("DB: Connection has been closed"); - return false; - } - - $this->result[$stack] = ""; - - $this->lastQuery = $sql; - $this->queryTime = $this->getMicroTime(); - $this->result[$stack] = @mysql_query($sql, $this->conn); - $this->queryTime = $this->getMicroTime() - $this->queryTime; - - if (!$this->result[$stack]) { - $this->errMsg = mysql_error($this->conn); - log_message("DB: $sql ::: ".@mysql_error($this->conn)); - return false; - } - - return true; - } - - function getWarnings() { - $ret = array(); - $res = mysql_query("SHOW WARNINGS", $this->conn); - if ($res !== FALSE) { - while($row = mysql_fetch_array($res)) - $ret[$row['Code']] = $row['Message']; - } - return $ret; - } - - function getQueryTime($time=false) { // returns formatted given value or internal query time - return sprintf("%.2f", ($time ? $time : $this->queryTime) * 1000) . " ms"; - } - - function hasAffectedRows() { - return ($this->getAffectedRows() > 0); - } - - function insert($table, $values) { - if (!is_array($values)) - return false; - - $sql = "insert into $table ("; - - foreach($values as $field=>$value) - $sql .= " $field,"; - - $sql = substr($sql, 0, strlen($sql) - 1); - - $sql .= ") values ("; - - foreach($values as $field=>$value) { - if ($this->escapeData) - $sql .= "'" . $this->escape($value) . "',"; - else - $sql .= "'$value',"; - } - - $sql = substr($sql, 0, strlen($sql) - 1); - - $sql .= ")"; - - $this->query($sql); - } - - function update($table, $values, $condition="") { - if (!is_array($values)) - return false; - - $sql = "update $table set "; - - foreach($values as $field=>$value) { - if ($this->escapeData) - $sql .= "$field = '" . $this->escape($field) . "',"; - else - $sql .= "$field = '$value',"; - } - - $sql = substr($sql, 0, strlen($sql) - 1); - - if ($condition != "") - $sql .= "$condition"; - - $this->query($sql); - } - - function getInsertID() { - return mysql_insert_id($this->conn); - } - - function getResult($stack=0) { - return $this->result[$stack]; - } - - function hasResult($stack=0) { - return ($this->result[$stack] !== TRUE && $this->result[$stack] !== FALSE); - } - - function fetchRow($stack=0, $type="") { - if($type == "") - $type = MYSQL_BOTH; - else if ($type == "num") - $type = MYSQL_NUM; - else if ($type == "assoc") - $type = MYSQL_ASSOC; - - if (!$this->result[$stack]) { - log_message("DB: called fetchRow[$stack] but result is false"); - return; - } - return @mysql_fetch_array($this->result[$stack], $type); - } - - function fetchSpecificRow($num, $type="", $stack=0) { - if($type == "") - $type = MYSQL_BOTH; - else if ($type == "num") - $type = MYSQL_NUM; - else if ($type == "assoc") - $type = MYSQL_ASSOC; - - if (!$this->result[$stack]) { - log_message("DB: called fetchSpecificRow[$stack] but result is false"); - return; - } - - mysql_data_seek($this->result[$stack], $num); - return @mysql_fetch_array($this->result[$stack], $type); - } - - function numRows($stack=0) { - return mysql_num_rows($this->result[$stack]); - } - - function error($str) { - log_message("DB: " . $str); - $this->errMsg = $str; - return false; - } - - function getError() { - return $this->errMsg; - } - - function escape($str) { - return mysql_escape_string($str); - } - - function quote($str) { - if(strpos($str, '.') === false) - return '`' . $str . '`'; - return '`' . str_replace('.', '`.`', $str) . '`'; - } - - function setEscape($escape=true) { - $this->escapeData = $escape; - } - - function getAffectedRows() { - return mysql_affected_rows($this->conn); - } - - /**************************************/ - function getDatabases() { - $res = mysql_query("show databases", $this->conn); - $ret = array(); - while($row = mysql_fetch_array($res)) - $ret[] = $row[0]; - return $ret; - } - - function getTables( $details = false ) { - if (!$this->db) - return array(); - $res = mysql_query("show tables", $this->conn); - $ret = array(); - while($row = mysql_fetch_array($res)) - $ret[] = $details ? array( - $row[0], // table name - 0, // number of records, - 0, // size of the table - '', // last update timestamp - ) : $row[0]; - return $ret; - } - - // NOT SUPPORTED IN MYSQL 4 - Function are here for code compatibility reasons only - function getViews() { - $ret = array(); - return $ret; - } - - function getProcedures() { - $ret = array(); - return $ret; - } - - function getFunctions() { - $ret = array(); - return $ret; - } - - function getTriggers() { - $ret = array(); - return $ret; - } - - function getEvents() { - $ret = array(); - return $ret; - } - - /**************************************/ - function getFieldInfo($stack=0) { - $fields = array(); - $i = 0; - while ($i < mysql_num_fields($this->result[$stack])) { - $meta = mysql_fetch_field($this->result[$stack], $i); - if ($meta) { - $f = new StdClass; - $type = mysql_field_type($this->result[$stack], $i); - $f->name = $meta->name; - $f->table = $meta->table; - $f->not_null = $meta->not_null; - $f->blob = $meta->blob; - $f->pkey = $meta->primary_key; - $f->ukey = $meta->unique_key; - $f->mkey = $meta->multiple_key; - $f->zerofill = $meta->zerofill; - $f->unsigned = $meta->unsigned; - $f->autoinc = 0; - $f->numeric = $meta->numeric; - - if( $meta->type == 'numeric' ) - $f->type = 'numeric'; - else if( $meta->type == 'timestamp' ) - $f->type = 'datetime'; - else if( $meta->type == 'date' ) - $f->type = 'date'; - else if( $meta->type == 'time' ) - $f->type = 'time'; - else if ( $type == 'string') { - // mysql5 tells enum and sets are strings, so we need to check for their real datatype - $f->list = $this->getFieldValues($f->table, $f->name); - $f->type = 'text' ; - } - else - $f->type = 'binary'; - $fields[] = $f; - } - $i++; - } - return $fields; - } - - function getMicroTime() { - list($usec, $sec) = explode(" ",microtime()); - return ((float)$usec + (float)$sec); - } - - function selectVersion() { - $res = mysql_query("SHOW VARIABLES LIKE 'version%'", $this->conn); - while($row = mysql_fetch_array($res)) { - if ($row[0] == 'version') { - Session::set('db', 'version', intval($row[1])); - Session::set('db', 'version_full', $row[1]); - } else if ($row[0] == 'version_comment') { - Session::set('db', 'version_comment', $row[1]); - } - } - } - - function getCreateCommand($type, $name) { - $cmd = ''; - $type = $this->escape($type); - $name = $this->escape($name); - - if ($type != "table") - return ''; - - $sql = "show create $type `$name`"; - - if (!$this->query($sql) || $this->numRows() == 0) - return ''; - - $row = $this->fetchRow(); - - $cmd = $row[1]; - return $cmd; - } - - function getDropCommand( $table ) { - return "drop table if exists " . $this->quote( $table ); - } - - function getTruncateCommand( $table ) { - return 'truncate table ' . $this->quote( $table ); - } - - function getFieldValues($table, $name) { - $sql = 'show full fields from `'.$table.'` where `Field` = \''.$this->escape($name).'\''; - $res = mysql_query($sql, $this->conn); - if (mysql_num_rows($res) == 0) - return ( (object) array('list' => array()) ); - $row = mysql_fetch_array($res); - $type = $row['Type']; - preg_match('/enum\((.*)\)$/', $type, $matches); - if (!isset($matches[1])) - preg_match('/set\((.*)\)$/', $type, $matches); - if (isset($matches[1])) { - if (phpCheck(5.3)) { - $regex = "/\('(.*)'\)/"; - preg_match_all($regex, $row['Type'], $list); - return array_map('replace_single_quotes', explode("','", $list[1][0])); - } else { - $list = explode(',', $matches[1]); - foreach($list as $k => $v) - $list[$k] = str_replace("\\'", "'", trim($v, " '")); - return $list; - } - } - return ( (object) array('list' => array()) ); - } - - function getEngines() { - $sql = 'show engines'; - $res = mysql_query($sql,$this->conn); - if (mysql_num_rows($res) == 0) - return ( array() ); - - $arr = array(); - while($row = mysql_fetch_array($res)) - if ($row['Support'] != 'NO') - $arr[] = $row['Engine']; - return $arr; - } - - function getCharsets() { - $sql = 'show character set'; - $res = mysql_query($sql,$this->conn); - if (mysql_num_rows($res) == 0) - return ( array() ); - - $arr = array(); - while($row = mysql_fetch_array($res)) - $arr[] = $row['Charset']; - - asort($arr); - return $arr; - } - - function getCollations() { - $sql = 'show collation'; - $res = mysql_query($sql,$this->conn); - if (mysql_num_rows($res) == 0) - return ( array() ); - - $arr = array(); - while($row = mysql_fetch_array($res)) - $arr[] = $row['Collation']; - - asort($arr); - return $arr; - } - - function getTableFields($table) { - $sql = "show full fields from ".$this->quote($table); - if (!$this->query($sql, "_temp")) - return array(); - - $fields = array(); - while($row = $this->fetchRow("_temp")) { - $f = new StdClass; - $f->type = $row['Type']; - $f->name = $row['Field']; - $fields[] = $f; - } - - return $fields; - } - - function getTableProperties($table) { - $sql = "show table status like '".$this->escape($table)."'"; - if (!$this->query($sql, "_tmp_query")) - return FALSE; - return $this->fetchRow("_tmp_query"); - } - - function queryTableStatus() { - $sql = "show table status"; - return $this->query($sql); - } - - function getTableDescription( $table ) { - $sql = "describe " . $this->quote( $table ); - return $this->query($sql); - } - - function flush($option = '', $skiplog=false) { - $options = array('HOSTS', 'PRIVILEGES', 'TABLES', 'STATUS', 'DES_KEY_FILE', 'QUERY CACHE', 'USER_RESOURCES', 'TABLES WITH READ LOCK'); - if ($option == '') { - foreach($options as $option) { - $sql = "flush " . ( $skiplog ? "NO_WRITE_TO_BINLOG " : "") . $this->escape($option); - $this->query($sql, '_temp_flush'); - } - $this->query('UNLOCK TABLES', '_temp_flush'); - } else { - $sql = "flush " . ( $skiplog ? "NO_WRITE_TO_BINLOG " : "") . $this->escape($option); - $this->query($sql, '_temp_flush'); - if ($option == 'TABLES WITH READ LOCK') - $this->query('UNLOCK TABLES', '_temp_flush'); - } - - return true; - } - - function getLastQuery() { - return $this->lastQuery; - } - - - function getInsertStatement($tbl) { - $sql = "show full fields from `$tbl`"; - if (!$this->query($sql, '_insert')) - return false; - - $str = "INSERT INTO `".$tbl."` ("; - $num = $this->numRows('_insert'); - $row = $this->fetchRow('_insert'); - $str .= "`" . $row[0] . "`"; - - if ($row["Extra"] == "auto_increment") - $str2 = " VALUES (NULL"; - else - $str2 = " VALUES (\"\""; - - for($i=1; $i<$num; $i++) { - $row = $this->fetchRow('_insert'); - $str .= ",`" . $row[0] . "`"; - if ($row["Extra"] == "auto_increment") - $str2 .= ",NULL"; - //else if (strpos($row["Type"], "int") !== false) - // $str2 .= ", "; // for numeric fields - else - $str2 .= ",\"\""; - } - - $str .= ")"; - $str2 .= ")"; - - return $str.$str2; - } - - function getUpdateStatement($tbl) { - $sql = "show full fields from `".$this->escape($tbl)."`"; - if (!$this->query($sql, '_update')) - return false; - - $pKey = ''; // if a primary key is available, this helps avoid multikey attributes in where clause - $str2 = ""; - $str = "UPDATE `".$tbl."` SET "; - $num = $this->numRows('_update'); - $row = $this->fetchRow('_update'); - - $str .= "`" . $row[0] . "`=\"\""; - if ($row["Key"] != "") - $str2 .= "`$row[0]`=\"\""; - if ($row["Key"] == 'PRI') - $pKey = $row[0]; - - for($i=1; $i<$num; $i++) { - $row = $this->fetchRow('_update'); - $str .= ",`" . $row[0] . "`=\"\""; - if ($row["Key"] != "") { - if ($row["Key"] == 'PRI') - $pKey = $row[0]; - if ($str2 != "") - $str2 .= " AND "; - $str2 .= "`$row[0]`=\"\""; - } - } - - // if we found a primary key, then use it only for where clause and discard other keys - if ($pKey != '') - $str2 = "`$pKey`=\"\""; - if ($str2 != "") - $str2 = " WHERE " . $str2; - - return $str . $str2; - } - - function truncateTable($tbl) { - return $this->query('truncate table '.$this->quote($tbl)); - } - - function renameObject($name, $type, $new_name) { - $result = false; - if($type == 'table') { - $query = 'rename '.$this->escape($type).' `'.$this->escape($name).'` to `'.$this->escape($new_name).'`'; - $result = $this->query($query); - } - return $result; - } - - function dropObject($name, $type) { - $result = false; - if($type == 'table') { - $query = 'drop '.$this->escape($type).' `'.$this->escape($name).'`'; - $result = $this->query($query); - } - return $result; - } - - function copyObject($name, $type, $new_name) { - $result = false; - if($type == 'table') { - $query = 'create '.$this->escape($type).' `' . $this->escape($new_name) . '` like `' . $this->escape($name) . '`'; - $result = $this->query($query); - if ($result) { - $query = 'insert into `' . $this->escape($new_name) . '` select * from `' . $this->escape($name) . '`'; - $result = $this->query($query); - } - } - return $result; - } - - function getAutoIncField($table) { - $sql = "show full fields from `".$this->escape($table)."`"; - if (!$this->query($sql, "_temp")) - return false; - - $i = 0; - while($row = $this->fetchRow("_temp")) { - if (strpos($row["Extra"], "auto_increment") !== false) { - return $i; - } - $i++; - } - - return -1; - } - - function queryVariables() { - return $this->query("SHOW VARIABLES"); - } - - function getLimit($count, $offset = 0) { - return " limit $offset, $count"; - } - - function addExportHeader( $name, $obj = 'db', $type='insert' ) { - $str = ''; - switch($type) { - case 'insert': - if ( $obj == 'db' ) { - $str = "/* Database export results for db ".$name." */\n"; - $str .= "\n/* Preserve session variables */\nSET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS;\nSET FOREIGN_KEY_CHECKS=0;\n\n/* Export data */\n"; - } else if ( $obj == 'table' ) { - $str = "/* Table data export for table ".$name." */\n"; - $str .= "\n/* Preserve session variables */\nSET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS;\nSET FOREIGN_KEY_CHECKS=0;\n\n/* Export data */\n"; - } else if ( $obj == 'query' ) { - $str = "/* Export results for query data */\n"; - $str .= "/* Query: \n".$name."\n*/\n"; - $str .= "\n/* Preserve session variables */\nSET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS;\nSET FOREIGN_KEY_CHECKS=0;\n\n/* Export data */\n"; - } - break; - } - return $str; - } - - function addExportFooter( $type='insert' ) { - if ($type == 'insert') - return "\n/* Restore session variables to original values */\nSET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;\n"; - return ''; - } - - function set_constraint( $constraint, $value ) { - switch ($constraint) { - case 'fkey': - $this->query('SET FOREIGN_KEY_CHECKS=' . ($value ? '1' : '0') ); - break; - } - } -} -?> \ No newline at end of file diff --git a/lib/db/mysql5.php b/lib/db/mysql5.php deleted file mode 100644 index ebec009..0000000 --- a/lib/db/mysql5.php +++ /dev/null @@ -1,813 +0,0 @@ - 'datetime', - 10 => 'date', - 11 => 'time', - 12 => 'datetime', - 13 => 'year', - 16 => 'bit', - 246 => 'numeric' - ); - - function __construct() { - $this->conn = null; - $this->errMsg = null; - $this->escapeData = true; - $this->result = array(); - } - - function name() { - return 'mysql'; - } - - function hasServer() { - return true; - } - - function hasObject($type) { - switch($type) { - case 'table': - case 'view': - case 'procedure': - case 'function': - case 'trigger': - return true; - break; - case 'event': - if ( ((float)Session::get('db', 'version_full')) >= 5.1 ) - return true; - break; - } - return false; - } - - function getObjectTypes() { - $types = array( - 'tables', 'views', 'procedures', 'functions', 'triggers' - ); - - if ($this->hasObject('event')) - $types[] = 'events'; - - return $types; - } - - function getObjectList( $details = false ) { - $data = array( - 'tables' => $this->getTables( $details ), - 'views' => $this->getViews(), - 'procedures' => $this->getProcedures(), - 'functions' => $this->getFunctions(), - 'triggers' => $this->getTriggers(), - ); - - if ($this->hasObject('event')) - $data['events'] = $this->getEvents(); - - return $data; - } - - function getBackQuotes() { - return '`'; - } - - function getQuotes() { - return '"'; - } - - function getStandardDbList() { - return array( 'information_schema', 'performance_schema', 'mysql', 'test' ); - } - - function setAuthOptions($options) { - } - - function connect($ip, $user, $password, $db="") { - if (!function_exists('mysql_connect')) { - return $this->error(str_replace('{{NAME}}', 'MySQL', __('{{NAME}} client library is not installed'))); - } - - $this->conn = @mysql_connect($ip, $user, $password); - if (!$this->conn) - return $this->error(__('Database connection failed to the server')); - - if ($db && !@mysql_select_db($db, $this->conn)) - return $this->error(mysql_error($this->conn)); - - $this->ip = $ip; - $this->user = $user; - $this->password = $password; - $this->db = $db; - - $this->selectVersion(); - $this->query("SET CHARACTER SET 'utf8'"); - $this->query("SET collation_connection = 'utf8_general_ci'"); - - return true; - } - - function disconnect() { - @mysql_close($this->conn); - $this->conn = false; - return true; - } - - function getCurrentUser() { - if ($this->query('select user()')) { - $row = $this->fetchRow(); - return $row[0]; - } - return ''; - } - - function selectDb($db) { - $this->db = $db; - mysql_select_db($this->db); - } - - function createDatabase( $name ) { - $sql = "create database `".$this->escape($name)."`"; - return $this->query($sql); - } - - function query($sql, $stack=0) { // call with query($sql, 1) to store multiple results - if (!$this->conn) { - log_message("DB: Connection has been closed"); - return false; - } - - $this->result[$stack] = ""; - - $this->lastQuery = $sql; - $this->queryTime = $this->getMicroTime(); - $this->result[$stack] = @mysql_query($sql, $this->conn); - $this->queryTime = $this->getMicroTime() - $this->queryTime; - - if (!$this->result[$stack]) { - $this->errMsg = mysql_error($this->conn); - log_message("DB: $sql ::: ".@mysql_error($this->conn)); - return false; - } - - return true; - } - - function getWarnings() { - $ret = array(); - $res = $this->query("SHOW WARNINGS", '_warning'); - if ($res !== FALSE) { - while($row = $this->fetchRow('_warning')) - $ret[$row['Code']] = $row['Message']; - } - return $ret; - } - - function getQueryTime($time=false) { // returns formatted given value or internal query time - return sprintf("%.2f", ($time ? $time : $this->queryTime) * 1000) . " ms"; - } - - function hasAffectedRows() { - return ($this->getAffectedRows() > 0); - } - - function insert($table, $values) { - if (!is_array($values)) - return false; - - $sql = "insert into $table ("; - - foreach($values as $field=>$value) - $sql .= " $field,"; - - $sql = substr($sql, 0, strlen($sql) - 1); - - $sql .= ") values ("; - - foreach($values as $field=>$value) { - if ($this->escapeData) - $sql .= "'" . $this->escape($value) . "',"; - else - $sql .= "'$value',"; - } - - $sql = substr($sql, 0, strlen($sql) - 1); - - $sql .= ")"; - - return $this->query($sql); - } - - function update($table, $values, $condition="") { - if (!is_array($values)) - return false; - - $sql = "update $table set "; - - foreach($values as $field=>$value) { - if ($this->escapeData) - $sql .= "$field = '" . $this->escape($field) . "',"; - else - $sql .= "$field = '$value',"; - } - - $sql = substr($sql, 0, strlen($sql) - 1); - - if ($condition != "") - $sql .= "$condition"; - - return $this->query($sql); - } - - function getInsertID() { - return mysql_insert_id($this->conn); - } - - function getResult($stack=0) { - return $this->result[$stack]; - } - - function hasResult($stack=0) { - return ($this->result[$stack] !== TRUE && $this->result[$stack] !== FALSE); - } - - function fetchRow($stack=0, $type="") { - if($type == "") - $type = MYSQL_BOTH; - else if ($type == "num") - $type = MYSQL_NUM; - else if ($type == "assoc") - $type = MYSQL_ASSOC; - - if (!$this->result[$stack]) { - log_message("DB: called fetchRow[$stack] but result is false"); - return; - } - return @mysql_fetch_array($this->result[$stack], $type); - } - - function fetchSpecificRow($num, $type="", $stack=0) { - if($type == "") - $type = MYSQL_BOTH; - else if ($type == "num") - $type = MYSQL_NUM; - else if ($type == "assoc") - $type = MYSQL_ASSOC; - - if (!$this->result[$stack]) { - log_message("DB: called fetchSpecificRow[$stack] but result is false"); - return; - } - - mysql_data_seek($this->result[$stack], $num); - return @mysql_fetch_array($this->result[$stack], $type); - } - - function numRows($stack=0) { - return mysql_num_rows($this->result[$stack]); - } - - function error($str) { - log_message("DB: " . $str); - $this->errMsg = $str; - return false; - } - - function getError() { - return $this->errMsg; - } - - function escape($str) { - return mysql_escape_string($str); - } - - function quote($str) { - if(strpos($str, '.') === false) - return '`' . $str . '`'; - return '`' . str_replace('.', '`.`', $str) . '`'; - } - - function setEscape($escape=true) { - $this->escapeData = $escape; - } - - function getAffectedRows() { - return mysql_affected_rows($this->conn); - } - - /**************************************/ - function getDatabases() { - $res = $this->query("show databases", '_databases'); - $ret = array(); - while($row = $this->fetchRow('_databases')) - $ret[] = $row[0]; - return $ret; - } - - function getTables( $details = false ) { - if (!$this->db) - return array(); - $res = $this->query("show table status from `$this->db` where engine is NOT null", '_tables'); - $ret = array(); - while($row = $this->fetchRow('_tables')) { - $ret[] = $details ? array( - $row['Name'], // table name - $row['Rows'], // number of records, - $row['Data_length'] + $row['Index_length'], // size of the table - (empty($row['Update_time']) ? $row['Create_time'] : $row['Update_time'] ), // last update timestamp - ) : $row['Name']; - } - return $ret; - } - - function getViews() { - if (!$this->db) - return array(); - $res = $this->query("show table status from `$this->db` where engine is null", '_views'); - if (!$res) - return array(); - $ret = array(); - while($row = $this->fetchRow('_views')) - $ret[] = $row[0]; - return $ret; - } - - function getProcedures() { - if (!$this->db) - return array(); - $res = $this->query("show procedure status where db = '$this->db'", '_procs'); - if (!$res) - return array(); - $ret = array(); - while($row = $this->fetchRow('_procs')) - $ret[] = $row[1]; - return $ret; - } - - function getFunctions() { - if (!$this->db) - return array(); - $res = $this->query("show function status where db = '$this->db'", '_funcs'); - if (!$res) - return array(); - $ret = array(); - while($row = $this->fetchRow('_funcs')) - $ret[] = $row[1]; - return $ret; - } - - function getTriggers() { - if (!$this->db) - return array(); - $res = $this->query("select `TRIGGER_NAME` from `INFORMATION_SCHEMA`.`TRIGGERS` where `TRIGGER_SCHEMA` = '$this->db'", '_triggers'); - if (!$res) - return array(); - $ret = array(); - while($row = $this->fetchRow('_triggers')) - $ret[] = $row[0]; - return $ret; - } - - function getEvents() { - if (!$this->db) - return array(); - $res = $this->query("select `EVENT_NAME` from `INFORMATION_SCHEMA`.`EVENTS` where `EVENT_SCHEMA` = '$this->db'", '_events'); - if (!$res) - return array(); - $ret = array(); - while($row = $this->fetchRow('_events')) - $ret[] = $row[0]; - return $ret; - } - - /**************************************/ - // @@TODO: use datatype config here to streamline field information - function getFieldInfo($stack=0) { - $fields = array(); - $i = 0; - while ($i < mysql_num_fields($this->result[$stack])) { - $meta = mysql_fetch_field($this->result[$stack], $i); - if ($meta) { - $f = new StdClass; - $type = mysql_field_type($this->result[$stack], $i); - $f->name = $meta->name; - $f->table = $meta->table; - $f->not_null = $meta->not_null; - $f->blob = $meta->blob; - $f->pkey = $meta->primary_key; - $f->ukey = $meta->unique_key; - $f->mkey = $meta->multiple_key; - $f->zerofill = $meta->zerofill; - $f->unsigned = $meta->unsigned; - $f->autoinc = 0; - $f->numeric = $meta->numeric; - - if( $meta->type == 'numeric' ) - $f->type = 'numeric'; - else if( $meta->type == 'timestamp' ) - $f->type = 'datetime'; - else if( $meta->type == 'date' ) - $f->type = 'date'; - else if( $meta->type == 'time' ) - $f->type = 'time'; - else if ( $type == 'string') { - // mysql5 tells enum and sets are strings, so we need to check for their real datatype - $f->list = $this->getFieldValues($f->table, $f->name); - $f->type = 'text' ; - } - else - $f->type = 'binary'; - $fields[] = $f; - } - $i++; - } - return $fields; - } - - function getMicroTime() { - list($usec, $sec) = explode(" ",microtime()); - return ((float)$usec + (float)$sec); - } - - function selectVersion() { - $res = $this->query("SHOW VARIABLES LIKE 'version%'", '_version'); - while($row = $this->fetchRow('_version')) { - if ($row[0] == 'version') { - Session::set('db', 'version', intval($row[1])); - Session::set('db', 'version_full', $row[1]); - } else if ($row[0] == 'version_comment') { - Session::set('db', 'version_comment', $row[1]); - } - } - } - - function getCreateCommand($type, $name) { - $cmd = ''; - $type = $this->escape($type); - $name = $this->escape($name); - - if ($type == "trigger") - $sql = "show triggers where `trigger` = '$name'"; - else - $sql = "show create $type `$name`"; - - if (!$this->query($sql) || $this->numRows() == 0) - return ''; - - $row = $this->fetchRow(); - - if ($type == "trigger") - $cmd = "create trigger `$row[0]`\r\n$row[4] $row[1] on `$row[2]`\r\nfor each row\r\n$row[3]"; - else { - switch($type) { - case 'table': - case 'view': - $cmd = $row[1]; - break; - case 'procedure': - case 'function': - $cmd = $row[2]; - break; - case 'event': - $cmd = $row[3]; - break; - } - } - return $cmd; - } - - function getDropCommand( $table ) { - return "drop table if exists " . $this->quote( $table ); - } - - function getTruncateCommand( $table ) { - return 'truncate table ' . $this->quote( $table ); - } - - function getFieldValues($table, $name) { - $sql = 'show full fields from `'.$table.'` where `Field` = \''.$this->escape($name).'\''; - $res = $this->query($sql, '_fields'); - if ($this->numRows('_fields') == 0) - return ( (object) array('list' => array()) ); - $row = $this->fetchRow('_fields'); - $type = $row['Type']; - preg_match('/enum\((.*)\)$/', $type, $matches); - if (!isset($matches[1])) - preg_match('/set\((.*)\)$/', $type, $matches); - if (isset($matches[1])) { - if (phpCheck(5.3)) { - $regex = "/\('(.*)'\)/"; - preg_match_all($regex, $row['Type'], $list); - return array_map('replace_single_quotes', explode("','", $list[1][0])); - } else { - $list = explode(',', $matches[1]); - foreach($list as $k => $v) - $list[$k] = str_replace("\\'", "'", trim($v, " '")); - return $list; - } - } - return ( (object) array('list' => array()) ); - } - - function getEngines() { - $sql = 'show engines'; - $res = $this->query($sql, '_engines'); - if ($this->numRows('_engines') == 0) - return ( array() ); - - $arr = array(); - while($row = $this->fetchRow('_engines')) - if ($row['Support'] != 'NO') - $arr[] = $row['Engine']; - return $arr; - } - - function getCharsets() { - $sql = 'show character set'; - $res = $this->query($sql, '_charsets'); - if ($this->numRows('_charsets') == 0) - return ( array() ); - - $arr = array(); - while($row = $this->fetchRow('_charsets')) - $arr[] = $row['Charset']; - - asort($arr); - return $arr; - } - - function getCollations() { - $sql = 'show collation'; - $res = $this->query($sql, '_collats'); - if ($this->numRows('_collats') == 0) - return ( array() ); - - $arr = array(); - while($row = $this->fetchRow('_collats')) - $arr[] = $row['Collation']; - - asort($arr); - return $arr; - } - - function getTableFields($table) { - $sql = "show full fields from ".$this->quote($table); - if (!$this->query($sql, "_temp")) - return array(); - - $fields = array(); - while($row = $this->fetchRow("_temp")) { - $f = new StdClass; - $f->type = $row['Type']; - $f->name = $row['Field']; - $fields[] = $f; - } - - return $fields; - } - - function getTableProperties($table) { - $sql = "show table status where `Name` like '".$this->escape($table)."'"; - if (!$this->query($sql, "_tmp_query")) - return FALSE; - return $this->fetchRow("_tmp_query"); - } - - function queryTableStatus() { - $sql = "show table status where Engine is not null"; - return $this->query($sql); - } - - function getTableDescription( $table ) { - $sql = "describe " . $this->quote( $table ); - return $this->query($sql); - } - - function flush($option = '', $skiplog=false) { - $options = array('HOSTS', 'PRIVILEGES', 'TABLES', 'STATUS', 'DES_KEY_FILE', 'QUERY CACHE', 'USER_RESOURCES', 'TABLES WITH READ LOCK'); - if ($option == '') { - foreach($options as $option) { - $sql = "flush " . ( $skiplog ? "NO_WRITE_TO_BINLOG " : "") . $this->escape($option); - $this->query($sql, '_temp_flush'); - } - $this->query('UNLOCK TABLES', '_temp_flush'); - } else { - $sql = "flush " . ( $skiplog ? "NO_WRITE_TO_BINLOG " : "") . $this->escape($option); - $this->query($sql, '_temp_flush'); - if ($option == 'TABLES WITH READ LOCK') - $this->query('UNLOCK TABLES', '_temp_flush'); - } - - return true; - } - - function getLastQuery() { - return $this->lastQuery; - } - - function getInsertStatement($tbl) { - $sql = "show full fields from `$tbl`"; - if (!$this->query($sql, '_insert')) - return false; - - $str = "INSERT INTO `".$tbl."` ("; - $num = $this->numRows('_insert'); - $row = $this->fetchRow('_insert'); - $str .= "`" . $row[0] . "`"; - - if ($row["Extra"] == "auto_increment") - $str2 = " VALUES (NULL"; - else - $str2 = " VALUES (\"\""; - - for($i=1; $i<$num; $i++) { - $row = $this->fetchRow('_insert'); - $str .= ",`" . $row[0] . "`"; - if ($row["Extra"] == "auto_increment") - $str2 .= ",NULL"; - //else if (strpos($row["Type"], "int") !== false) - // $str2 .= ", "; // for numeric fields - else - $str2 .= ",\"\""; - } - - $str .= ")"; - $str2 .= ")"; - - return $str.$str2; - } - - function getUpdateStatement($tbl) { - $sql = "show full fields from `".$this->escape($tbl)."`"; - if (!$this->query($sql, '_update')) - return false; - - $pKey = ''; // if a primary key is available, this helps avoid multikey attributes in where clause - $str2 = ""; - $str = "UPDATE `".$tbl."` SET "; - $num = $this->numRows('_update'); - $row = $this->fetchRow('_update'); - - $str .= "`" . $row[0] . "`=\"\""; - if ($row["Key"] != "") - $str2 .= "`$row[0]`=\"\""; - if ($row["Key"] == 'PRI') - $pKey = $row[0]; - - for($i=1; $i<$num; $i++) { - $row = $this->fetchRow('_update'); - $str .= ",`" . $row[0] . "`=\"\""; - if ($row["Key"] != "") { - if ($row["Key"] == 'PRI') - $pKey = $row[0]; - if ($str2 != "") - $str2 .= " AND "; - $str2 .= "`$row[0]`=\"\""; - } - } - - // if we found a primary key, then use it only for where clause and discard other keys - if ($pKey != '') - $str2 = "`$pKey`=\"\""; - if ($str2 != "") - $str2 = " WHERE " . $str2; - - return $str . $str2; - } - - function truncateTable($tbl) { - return $this->query('truncate table '.$this->quote($tbl)); - } - - function renameObject($name, $type, $new_name) { - $result = false; - if($type == 'table') { - $query = 'rename '.$this->escape($type).' `'.$this->escape($name).'` to `'.$this->escape($new_name).'`'; - $result = $this->query($query); - } - else { - $command = $this->getCreateCommand($type, $name); - $search = '/(create.*'.$type. ' )('.$name.'|\`'.$name.'\`)/i'; - $replace = '${1} `'.$new_name.'`'; - $query = preg_replace($search, $replace, $command, 1); - if ($this->query($query)) { - $query = 'drop '.$this->escape($type).' `'.$this->escape($name).'`'; - $result = $this->query($query); - } - } - - return $result; - } - - function dropObject($name, $type) { - $result = false; - $query = 'drop '.$this->escape($type).' `'.$this->escape($name).'`'; - $result = $this->query($query); - return $result; - } - - function copyObject($name, $type, $new_name) { - $result = false; - if($type == 'table') { - $query = 'create '.$this->escape($type).' `' . $this->escape($new_name) . '` like `' . $this->escape($name) . '`'; - $result = $this->query($query); - if ($result) { - $query = 'insert into `' . $this->escape($new_name) . '` select * from `' . $this->escape($name) . '`'; - $result = $this->query($query); - } - } - else { - $command = $this->getCreateCommand($type, $name); - $search = '/(create.*'.$type. ' )('.$name.'|\`'.$name.'\`)/i'; - $replace = '${1} `'.$new_name.'`'; - $query = preg_replace($search, $replace, $command, 1); - $result = $this->query($query); - } - return $result; - } - - // @@TODO: optimize with where `Extra` = 'auto_increment' - function getAutoIncField($table) { - $sql = "show full fields from `".$this->escape($table)."`"; - if (!$this->query($sql, "_temp")) - return false; - - $i = 0; - while($row = $this->fetchRow("_temp")) { - if (strpos($row["Extra"], "auto_increment") !== false) { - return $i; - } - $i++; - } - - return -1; - } - - function queryVariables() { - return $this->query("SHOW VARIABLES"); - } - - function getLimit($count, $offset = 0) { - return " limit $offset, $count"; - } - - function addExportHeader( $name, $obj = 'db', $type='insert' ) { - $str = ''; - switch($type) { - case 'insert': - if ( $obj == 'db' ) { - $str = "/* Database export results for db ".$name." */\n"; - $str .= "\n/* Preserve session variables */\nSET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS;\nSET FOREIGN_KEY_CHECKS=0;\n\n/* Export data */\n"; - } else if ( $obj == 'table' ) { - $str = "/* Table data export for table ".$name." */\n"; - $str .= "\n/* Preserve session variables */\nSET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS;\nSET FOREIGN_KEY_CHECKS=0;\n\n/* Export data */\n"; - } else if ( $obj == 'query' ) { - $str = "/* Export results for query data */\n"; - $str .= "/* Query: \n".$name."\n*/\n"; - $str .= "\n/* Preserve session variables */\nSET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS;\nSET FOREIGN_KEY_CHECKS=0;\n\n/* Export data */\n"; - } - break; - } - return $str; - } - - function addExportFooter( $type='insert' ) { - if ($type == 'insert') - return "\n/* Restore session variables to original values */\nSET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;\n"; - return ''; - } - - function set_constraint( $constraint, $value ) { - switch ($constraint) { - case 'fkey': - $this->query('SET FOREIGN_KEY_CHECKS=' . ($value ? '1' : '0') ); - break; - } - } -} -?> \ No newline at end of file diff --git a/lib/db/mysqli.php b/lib/db/mysqli.php deleted file mode 100644 index f8667ee..0000000 --- a/lib/db/mysqli.php +++ /dev/null @@ -1,849 +0,0 @@ - 'datetime', - 10 => 'date', - 11 => 'time', - 12 => 'datetime', - 13 => 'year', - 16 => 'bit', - 246 => 'numeric' - ); - - function __construct() { - $this->conn = null; - $this->errMsg = null; - $this->escapeData = true; - $this->result = array(); - } - - function name() { - return 'mysql'; - } - - function hasServer() { - return true; - } - - function hasObject($type) { - switch($type) { - case 'table': - case 'view': - case 'procedure': - case 'function': - case 'trigger': - return true; - break; - case 'event': - if ( ((float)Session::get('db', 'version_full')) >= 5.1 ) - return true; - break; - } - return false; - } - - function getObjectTypes() { - $types = array( - 'tables', 'views', 'procedures', 'functions', 'triggers' - ); - - if ($this->hasObject('event')) - $types[] = 'events'; - - return $types; - } - - function getObjectList( $details = false ) { - $data = array( - 'tables' => $this->getTables( $details ), - 'views' => $this->getViews(), - 'procedures' => $this->getProcedures(), - 'functions' => $this->getFunctions(), - 'triggers' => $this->getTriggers(), - ); - - if ($this->hasObject('event')) - $data['events'] = $this->getEvents(); - - return $data; - } - - function getBackQuotes() { - return '`'; - } - - function getQuotes() { - return '"'; - } - - function getStandardDbList() { - return array( 'information_schema', 'performance_schema', 'mysql', 'test' ); - } - - function setAuthOptions($options) { - } - - function connect($ip, $user, $password, $db="") { - if (!function_exists('mysqli_connect')) { - return $this->error(str_replace('{{NAME}}', 'MySQLi', __('{{NAME}} client library is not installed'))); - } - - $port = ini_get("mysqli.default_port"); - if(strpos($ip, ':') !== FALSE) { - list($ip, $port) = explode(':', $ip); - } else { - $port = ini_get("mysqli.default_port"); - } - - $this->conn = mysqli_connect($ip, $user, $password, $db, $port); - if (!$this->conn) - return $this->error(__('Database connection failed to the server')); - - if ($db && !@mysqli_select_db($this->conn, $db)) - return $this->error(mysqli_error($this->conn)); - - $this->ip = $ip; - $this->user = $user; - $this->password = $password; - $this->db = $db; - $this->port = $port; - - $this->selectVersion(); - $this->query("SET CHARACTER SET 'utf8'"); - $this->query("SET collation_connection = 'utf8_general_ci'"); - - return true; - } - - function disconnect() { - @mysqli_close($this->conn); - $this->conn = false; - return true; - } - - function getCurrentUser() { - if ($this->query('select user()')) { - $row = $this->fetchRow(); - return $row[0]; - } - return ''; - } - - function selectDb($db) { - $this->db = $db; - mysqli_select_db($this->conn, $this->db); - } - - function createDatabase( $name ) { - $sql = "create database `".$this->escape($name)."`"; - return $this->query($sql); - } - - function query($sql, $stack=0) { // call with query($sql, 1) to store multiple results - if (!$this->conn) { - log_message("DB: Connection has been closed"); - return false; - } - - if (v($this->result[$stack]) && gettype($this->result[$stack]) == 'object') - @mysqli_free_result($this->result[$stack]); - - $this->result[$stack] = ""; - - $this->lastQuery = $sql; - $this->queryTime = $this->getMicroTime(); - try { - $this->result[$stack] = @mysqli_query($this->conn, $sql); - $this->queryTime = $this->getMicroTime() - $this->queryTime; - - if ($this->result[$stack] === FALSE) { - $this->errMsg = mysqli_error($this->conn); - log_message("DB: $sql ::: ".@mysqli_error($this->conn)); - return false; - } - } catch(\Exception $e) { - $this->errMsg = mysqli_error($this->conn); - log_message("DB: $sql ::: ".@mysqli_error($this->conn)); - return false; - } - - return true; - } - - function getWarnings() { - $ret = array(); - $res = mysqli_query($this->conn, "SHOW WARNINGS"); - if ($res !== FALSE) { - while($row = mysqli_fetch_array($res)) - $ret[$row['Code']] = $row['Message']; - } - return $ret; - } - - function getQueryTime($time=false) { // returns formatted given value or internal query time - return sprintf("%.2f", ($time ? $time : $this->queryTime) * 1000) . " ms"; - } - - function hasAffectedRows() { - return ($this->getAffectedRows() > 0); - } - - function insert($table, $values) { - if (!is_array($values)) - return false; - - $sql = "insert into $table ("; - - foreach($values as $field=>$value) - $sql .= " $field,"; - - $sql = substr($sql, 0, strlen($sql) - 1); - - $sql .= ") values ("; - - foreach($values as $field=>$value) { - if ($this->escapeData) - $sql .= "'" . $this->escape($value) . "',"; - else - $sql .= "'$value',"; - } - - $sql = substr($sql, 0, strlen($sql) - 1); - - $sql .= ")"; - - $this->query($sql); - } - - function update($table, $values, $condition="") { - if (!is_array($values)) - return false; - - $sql = "update $table set "; - - foreach($values as $field=>$value) { - if ($this->escapeData) - $sql .= "$field = '" . $this->escape($field) . "',"; - else - $sql .= "$field = '$value',"; - } - - $sql = substr($sql, 0, strlen($sql) - 1); - - if ($condition != "") - $sql .= "$condition"; - - $this->query($sql); - } - - function getInsertID() { - return mysqli_insert_id($this->conn); - } - - function getResult($stack=0) { - return $this->result[$stack]; - } - - function hasResult($stack=0) { - return (is_object($this->result[$stack])); // !== FALSE && $this->result[$stack] !== TRUE); - } - - function fetchRow($stack=0, $type="") { - if($type == "") - $type = MYSQLI_BOTH; - else if ($type == "num") - $type = MYSQLI_NUM; - else if ($type == "assoc") - $type = MYSQLI_ASSOC; - - if (!$this->result[$stack]) { - log_message("DB: called fetchRow[$stack] but result is false"); - return; - } - return @mysqli_fetch_array($this->result[$stack], $type); - } - - function fetchSpecificRow($num, $type="", $stack=0) { - if($type == "") - $type = MYSQL_BOTH; - else if ($type == "num") - $type = MYSQLI_NUM; - else if ($type == "assoc") - $type = MYSQLI_ASSOC; - - if (!$this->result[$stack]) { - log_message("DB: called fetchSpecificRow[$stack] but result is false"); - return; - } - - mysqli_data_seek($this->result[$stack], $num); - return @mysqli_fetch_array($this->result[$stack], $type); - } - - function numRows($stack=0) { - return mysqli_num_rows($this->result[$stack]); - } - - function error($str) { - log_message("DB: " . $str); - $this->errMsg = $str; - return false; - } - - function getError() { - return $this->errMsg; - } - - function escape($str) { - return mysqli_escape_string($this->conn, $str); - } - - function quote($str) { - if(strpos($str, '.') === false) - return '`' . $str . '`'; - return '`' . str_replace('.', '`.`', $str) . '`'; - } - - function setEscape($escape=true) { - $this->escapeData = $escape; - } - - function getAffectedRows() { - return mysqli_affected_rows($this->conn); - } - - /**************************************/ - function getDatabases() { - $res = mysqli_query($this->conn, "show databases"); - $ret = array(); - while($row = mysqli_fetch_array($res)) - $ret[] = $row[0]; - return $ret; - } - - function getTables( $details = false ) { - if (!$this->db) - return array(); - $res = mysqli_query($this->conn, "show table status from `$this->db` where engine is NOT null"); - $ret = array(); - while($row = mysqli_fetch_array($res, MYSQLI_ASSOC)) { - $ret[] = $details ? array( - $row['Name'], // table name - $row['Rows'], // number of records, - $row['Data_length'] + $row['Index_length'], // size of the table - (empty($row['Update_time']) ? $row['Create_time'] : $row['Update_time'] ), // last update timestamp - ) : $row['Name']; - } - return $ret; - } - - function getViews() { - if (!$this->db) - return array(); - $res = mysqli_query($this->conn, "show table status from `$this->db` where engine is null"); - if (!$res) - return array(); - $ret = array(); - while($row = mysqli_fetch_array($res)) - $ret[] = $row[0]; - return $ret; - } - - function getProcedures() { - if (!$this->db) - return array(); - $res = mysqli_query($this->conn, "show procedure status where db = '$this->db'"); - if (!$res) - return array(); - $ret = array(); - while($row = mysqli_fetch_array($res)) - $ret[] = $row[1]; - return $ret; - } - - function getFunctions() { - if (!$this->db) - return array(); - $res = mysqli_query($this->conn, "show function status where db = '$this->db'"); - if (!$res) - return array(); - $ret = array(); - while($row = mysqli_fetch_array($res)) - $ret[] = $row[1]; - return $ret; - } - - function getTriggers() { - if (!$this->db) - return array(); - $res = mysqli_query($this->conn, "select `TRIGGER_NAME` from `INFORMATION_SCHEMA`.`TRIGGERS` where `TRIGGER_SCHEMA` = '$this->db'"); - if (!$res) - return array(); - $ret = array(); - while($row = mysqli_fetch_array($res)) - $ret[] = $row[0]; - return $ret; - } - - function getEvents() { - if (!$this->db) - return array(); - $res = mysqli_query($this->conn, "select `EVENT_NAME` from `INFORMATION_SCHEMA`.`EVENTS` where `EVENT_SCHEMA` = '$this->db'"); - if (!$res) - return array(); - $ret = array(); - while($row = mysqli_fetch_array($res)) - $ret[] = $row[0]; - return $ret; - } - - /**************************************/ - function getFieldInfo($stack=0) { - $fields = array(); - $i = 0; - while ($i < mysqli_num_fields($this->result[$stack])) { - $meta = mysqli_fetch_field_direct($this->result[$stack], $i); - if ($meta) { - $f = new StdClass; - $f->name = $meta->name; - $f->table = $meta->table; - $f->not_null = ($meta->flags & NOT_NULL_FLAG) ? 1 : 0; - $f->blob = ($meta->flags & BLOB_FLAG) ? 1 : 0; - $f->pkey = ($meta->flags & PRI_KEY_FLAG) ? 1 : 0; - $f->ukey = ($meta->flags & UNIQUE_KEY_FLAG) ? 1 : 0; - $f->mkey = ($meta->flags & MULTIPLE_KEY_FLAG) ? 1 : 0; - $f->zerofill = ($meta->flags & ZEROFILL_FLAG) ? 1 : 0; - $f->unsigned = ($meta->flags & UNSIGNED_FLAG) ? 1 : 0; - $f->autoinc = ($meta->flags & AUTO_INCREMENT_FLAG) ? 1 : 0; - $f->numeric = $meta->type < 10 ? 1 : 0; - if (isset($this->field_types[$meta->type])) - $f->type = $this->field_types[$meta->type]; - else if ($meta->flags & ENUM_FLAG) - $f->type = 'enum'; - else if ($meta->flags & SET_FLAG) - $f->type = 'set'; - else if ($meta->flags & TIMESTAMP_FLAG) - $f->type = "timestamp"; - else if ($meta->flags & BINARY_FLAG) - $f->type = 'binary'; - else if ($meta->type < 10) - $f->type = 'numeric'; - else - $f->type = 'text'; - - if ($f->type == 'enum' || $f->type == 'set') - $f->list = $this->getFieldValues($f->table, $f->name); - else if ($f->type == 'bit') - $f->list = array('0', '1'); - - $fields[] = $f; - } - $i++; - } - return $fields; - } - - function getMicroTime() { - list($usec, $sec) = explode(" ",microtime()); - return ((float)$usec + (float)$sec); - } - - function selectVersion() { - $res = mysqli_query($this->conn, "SHOW VARIABLES LIKE 'version%'"); - while($row = mysqli_fetch_array($res)) { - if ($row[0] == 'version') { - Session::set('db', 'version', intval($row[1])); - Session::set('db', 'version_full', $row[1]); - } else if ($row[0] == 'version_comment') { - Session::set('db', 'version_comment', $row[1]); - } - } - } - - function getCreateCommand($type, $name) { - $cmd = ''; - $type = $this->escape($type); - $name = $this->escape($name); - - if ($type == "trigger") - $sql = "show triggers where `trigger` = '$name'"; - else - $sql = "show create $type `$name`"; - - if (!$this->query($sql) || $this->numRows() == 0) - return ''; - - $row = $this->fetchRow(); - - if ($type == "trigger") - $cmd = "create trigger `$row[0]`\r\n$row[4] $row[1] on `$row[2]`\r\nfor each row\r\n$row[3]"; - else { - switch($type) { - case 'table': - case 'view': - $cmd = $row[1]; - break; - case 'procedure': - case 'function': - $cmd = $row[2]; - break; - case 'event': - $cmd = $row[3]; - break; - } - } - return $cmd; - } - - function getDropCommand( $table ) { - return "drop table if exists " . $this->quote( $table ); - } - - function getTruncateCommand( $table ) { - return 'truncate table ' . $this->quote( $table ); - } - - function getFieldValues($table, $name) { - $sql = 'show full fields from `'.$table.'` where `Field` = \''.$this->escape($name).'\''; - try { - $res = mysqli_query($this->conn, $sql); - } catch(\Exception $e) { - $res = null; - } - if (!$res || gettype($res) != 'object' || mysqli_num_rows($res) == 0) - return ( (object) array('list' => array()) ); - $row = mysqli_fetch_array($res); - $type = $row['Type']; - preg_match('/enum\((.*)\)$/', $type, $matches); - if (!isset($matches[1])) - preg_match('/set\((.*)\)$/', $type, $matches); - if (isset($matches[1])) { - if (phpCheck(5.3)) { - $regex = "/\('(.*)'\)/"; - preg_match_all($regex, $row['Type'], $list); - return array_map('replace_single_quotes', explode("','", $list[1][0])); - } else { - $list = explode(',', $matches[1]); - foreach($list as $k => $v) - $list[$k] = str_replace("\\'", "'", trim($v, " '")); - return $list; - } - } - return ( (object) array('list' => array()) ); - } - - function getEngines() { - $sql = 'show engines'; - $res = mysqli_query($this->conn, $sql); - if (mysqli_num_rows($res) == 0) - return ( array() ); - - $arr = array(); - while($row = mysqli_fetch_array($res)) - if ($row['Support'] != 'NO') - $arr[] = $row['Engine']; - return $arr; - } - - function getCharsets() { - $sql = 'show character set'; - $res = mysqli_query($this->conn, $sql); - if (mysqli_num_rows($res) == 0) - return ( array() ); - - $arr = array(); - while($row = mysqli_fetch_array($res)) - $arr[] = $row['Charset']; - - asort($arr); - return $arr; - } - - function getCollations() { - $sql = 'show collation'; - $res = mysqli_query($this->conn, $sql); - if (mysqli_num_rows($res) == 0) - return ( array() ); - - $arr = array(); - while($row = mysqli_fetch_array($res)) - $arr[] = $row['Collation']; - - asort($arr); - return $arr; - } - - function getTableFields($table) { - $sql = "show full fields from ".$this->quote($table); - if (!$this->query($sql, "_temp")) - return array(); - - $fields = array(); - while($row = $this->fetchRow("_temp")) { - $f = new StdClass; - $f->type = $row['Type']; - $f->name = $row['Field']; - $fields[] = $f; - } - - return $fields; - } - - function getTableProperties($table) { - $sql = "show table status where `Name` like '".$this->escape($table)."'"; - if (!$this->query($sql, "_tmp_query")) - return FALSE; - return $this->fetchRow("_tmp_query"); - } - - function queryTableStatus() { - $sql = "show table status where Engine is not null"; - return $this->query($sql); - } - - function getTableDescription( $table ) { - $sql = "describe " . $this->quote( $table ); - return $this->query($sql); - } - - function flush($option = '', $skiplog=false) { - $options = array('HOSTS', 'PRIVILEGES', 'TABLES', 'STATUS', 'DES_KEY_FILE', 'QUERY CACHE', 'USER_RESOURCES', 'TABLES WITH READ LOCK'); - if ($option == '') { - foreach($options as $option) { - $sql = "flush " . ( $skiplog ? "NO_WRITE_TO_BINLOG " : "") . $this->escape($option); - $this->query($sql, '_temp_flush'); - } - $this->query('UNLOCK TABLES', '_temp_flush'); - } else { - $sql = "flush " . ( $skiplog ? "NO_WRITE_TO_BINLOG " : "") . $this->escape($option); - $this->query($sql, '_temp_flush'); - if ($option == 'TABLES WITH READ LOCK') - $this->query('UNLOCK TABLES', '_temp_flush'); - } - - return true; - } - - function getLastQuery() { - return $this->lastQuery; - } - - - function getInsertStatement($tbl) { - $sql = "show full fields from `$tbl`"; - if (!$this->query($sql, '_insert')) - return false; - - $str = "INSERT INTO `".$tbl."` ("; - $num = $this->numRows('_insert'); - $row = $this->fetchRow('_insert'); - $str .= "`" . $row[0] . "`"; - - if ($row["Extra"] == "auto_increment") - $str2 = " VALUES (NULL"; - else - $str2 = " VALUES (\"\""; - - for($i=1; $i<$num; $i++) { - $row = $this->fetchRow('_insert'); - $str .= ",`" . $row[0] . "`"; - if ($row["Extra"] == "auto_increment") - $str2 .= ",NULL"; - //else if (strpos($row["Type"], "int") !== false) - // $str2 .= ", "; // for numeric fields - else - $str2 .= ",\"\""; - } - - $str .= ")"; - $str2 .= ")"; - - return $str.$str2; - } - - function getUpdateStatement($tbl) { - $sql = "show full fields from `".$this->escape($tbl)."`"; - if (!$this->query($sql, '_update')) - return false; - - $pKey = ''; // if a primary key is available, this helps avoid multikey attributes in where clause - $str2 = ""; - $str = "UPDATE `".$tbl."` SET "; - $num = $this->numRows('_update'); - $row = $this->fetchRow('_update'); - - $str .= "`" . $row[0] . "`=\"\""; - if ($row["Key"] != "") - $str2 .= "`$row[0]`=\"\""; - if ($row["Key"] == 'PRI') - $pKey = $row[0]; - - for($i=1; $i<$num; $i++) { - $row = $this->fetchRow('_update'); - $str .= ",`" . $row[0] . "`=\"\""; - if ($row["Key"] != "") { - if ($row["Key"] == 'PRI') - $pKey = $row[0]; - if ($str2 != "") - $str2 .= " AND "; - $str2 .= "`$row[0]`=\"\""; - } - } - - // if we found a primary key, then use it only for where clause and discard other keys - if ($pKey != '') - $str2 = "`$pKey`=\"\""; - if ($str2 != "") - $str2 = " WHERE " . $str2; - - return $str . $str2; - } - - function truncateTable($tbl) { - return $this->query('truncate table '.$this->quote($tbl)); - } - - function renameObject($name, $type, $new_name) { - $result = false; - if($type == 'table') { - $query = 'rename '.$this->escape($type).' `'.$this->escape($name).'` to `'.$this->escape($new_name).'`'; - $result = $this->query($query); - } - else { - $command = $this->getCreateCommand($type, $name); - $search = '/(create.*'.$type. ' )('.$name.'|\`'.$name.'\`)/i'; - $replace = '${1} `'.$new_name.'`'; - $query = preg_replace($search, $replace, $command, 1); - if ($this->query($query)) { - $query = 'drop '.$this->escape($type).' `'.$this->escape($name).'`'; - $result = $this->query($query); - } - } - - return $result; - } - - function dropObject($name, $type) { - $result = false; - $query = 'drop '.$this->escape($type).' `'.$this->escape($name).'`'; - $result = $this->query($query); - return $result; - } - - function copyObject($name, $type, $new_name) { - $result = false; - if($type == 'table') { - $query = 'create '.$this->escape($type).' `' . $this->escape($new_name) . '` like `' . $this->escape($name) . '`'; - $result = $this->query($query); - if ($result) { - $query = 'insert into `' . $this->escape($new_name) . '` select * from `' . $this->escape($name) . '`'; - $result = $this->query($query); - } - } - else { - $command = $this->getCreateCommand($type, $name); - $search = '/(create.*'.$type. ' )('.$name.'|\`'.$name.'\`)/i'; - $replace = '${1} `'.$new_name.'`'; - $query = preg_replace($search, $replace, $command, 1); - $result = $this->query($query); - } - return $result; - } - - function getAutoIncField($table) { - $sql = "show full fields from `".$this->escape($table)."`"; - if (!$this->query($sql, "_temp")) - return false; - - $i = 0; - while($row = $this->fetchRow("_temp")) { - if (strpos($row["Extra"], "auto_increment") !== false) { - return $i; - } - $i++; - } - - return -1; - } - - function queryVariables() { - return $this->query("SHOW VARIABLES"); - } - - function getLimit($count, $offset = 0) { - return " limit $offset, $count"; - } - - function addExportHeader( $name, $obj = 'db', $type='insert' ) { - $str = ''; - switch($type) { - case 'insert': - if ( $obj == 'db' ) { - $str = "/* Database export results for db ".$name." */\n"; - $str .= "\n/* Preserve session variables */\nSET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS;\nSET FOREIGN_KEY_CHECKS=0;\n\n/* Export data */\n"; - } else if ( $obj == 'table' ) { - $str = "/* Table data export for table ".$name." */\n"; - $str .= "\n/* Preserve session variables */\nSET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS;\nSET FOREIGN_KEY_CHECKS=0;\n\n/* Export data */\n"; - } else if ( $obj == 'query' ) { - $str = "/* Export results for query data */\n"; - $str .= "/* Query: \n".$name."\n*/\n"; - $str .= "\n/* Preserve session variables */\nSET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS;\nSET FOREIGN_KEY_CHECKS=0;\n\n/* Export data */\n"; - } - break; - } - return $str; - } - - function addExportFooter( $type='insert' ) { - if ($type == 'insert') - return "\n/* Restore session variables to original values */\nSET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;\n"; - return ''; - } - - function set_constraint( $constraint, $value ) { - switch ($constraint) { - case 'fkey': - $this->query('SET FOREIGN_KEY_CHECKS=' . ($value ? '1' : '0') ); - break; - } - } -} -?> diff --git a/lib/db/pgsql.php b/lib/db/pgsql.php deleted file mode 100644 index 3f08dd3..0000000 --- a/lib/db/pgsql.php +++ /dev/null @@ -1,933 +0,0 @@ -conn = null; - $this->errMsg = null; - $this->escapeData = true; - $this->result = array(); - $this->includeStandardObjects = false; - } - - function name() { - return 'pgsql'; - } - - function hasServer() { - return true; - } - - function hasObject($type) { - switch($type) { - case 'table': - case 'view': - //case 'procedure': - case 'function': - case 'trigger': - case 'sequence': - case 'template': - case 'schema': - return true; - break; - case 'event': - //if ( ((float)Session::get('db', 'version_full')) >= 5.1 ) - // return true; - break; - } - return false; - } - - function getObjectTypes() { - $types = array( - 'schemas', 'tables', 'views', 'functions', 'triggers' - ); - - if ($this->hasObject('event')) - $types[] = 'events'; - - return $types; - } - - - function getObjectList( $details = false ) { - $data = array( - 'schemas' => $this->getSchemas(), - 'tables' => $this->getTables( $details ), - 'views' => $this->getViews(), - 'functions' => $this->getFunctions(), - 'triggers' => $this->getTriggers(), - ); - - if ($this->hasObject('event')) - $data['events'] = $this->getEvents(); - - return $data; - } - - function getBackQuotes() { - return '"'; - } - - function getQuotes() { - return "'"; - } - - function getStandardDbList() { - return array( 'postgres', 'test' ); - } - - function setAuthOptions($options) { - } - - function connect($ip, $user, $password, $db="") { - if (!function_exists('pg_connect')) { - return $this->error(str_replace('{{NAME}}', 'PGSQL', __('{{NAME}} client library is not installed'))); - } - - $this->conn_str = $this->build_conn_string($ip, $user, $password, $db); - $this->conn = @pg_connect($this->conn_str); - if (!$this->conn) - return $this->error(__('Database connection failed to the server')); - - $this->ip = $ip; - $this->user = $user; - $this->password = $password; - $this->db = $db; - - $this->selectVersion(); - $this->query("SET CLIENT_ENCODING to 'utf8'"); - $this->query("SET NAMES 'utf8'"); - - return true; - } - - function disconnect() { - @pg_close($this->conn); - $this->conn = false; - return true; - } - - function getCurrentUser() { - if ($this->query('select user')) { - $row = $this->fetchRow(); - return $row[0]; - } - return ''; - } - - function selectDb($db) { - $this->db = $db; - //$this->conn_str = $this->build_conn_string($this->ip, $user, $password, $db); - @pg_connect("dbname=" . pg_escape_string($db) ); - } - - function createDatabase( $name ) { - $sql = "create database \"".$this->escape($name)."\""; - return $this->query($sql); - } - - function query($sql, $stack=0) { // call with query($sql, 1) to store multiple results - if (!$this->conn) { - log_message("DB: Connection has been closed"); - return false; - } - - if (v($this->result[$stack])) - @pg_free_result($this->result[$stack]); - - $this->result[$stack] = ""; - $this->stack_last = $stack; - - $this->lastQuery = $sql; - $this->queryTime = $this->getMicroTime(); - - $this->result[$stack] = @pg_query($this->conn, $sql); - $this->queryTime = $this->getMicroTime() - $this->queryTime; - - if ($this->result[$stack] === FALSE) { - $this->errMsg = pg_errormessage($this->conn); - log_message("DB: $sql ::: ".@pg_errormessage($this->conn)); - return false; - } - - return true; - } - - function getWarnings() { - $ret = array(); - /*$res = pg_query($this->conn, "SHOW WARNINGS"); - if ($res !== FALSE) { - while($row = pg_fetch_array($res)) - $ret[$row['Code']] = $row['Message']; - }*/ - $ret[] = pg_errormessage($this->conn); - return $ret; - } - - function getQueryTime($time=false) { // returns formatted given value or internal query time - return sprintf("%.2f", ($time ? $time : $this->queryTime) * 1000) . " ms"; - } - - function hasAffectedRows() { - return ($this->getAffectedRows() > 0); - } - - function insert($table, $values) { - if (!is_array($values)) - return false; - - $sql = "insert into $table ("; - - foreach($values as $field=>$value) - $sql .= " $field,"; - - $sql = substr($sql, 0, strlen($sql) - 1); - - $sql .= ") values ("; - - foreach($values as $field=>$value) { - if ($this->escapeData) - $sql .= "'" . $this->escape($value) . "',"; - else - $sql .= "'$value',"; - } - - $sql = substr($sql, 0, strlen($sql) - 1); - - $sql .= ")"; - - $this->query($sql); - } - - function update($table, $values, $condition="") { - if (!is_array($values)) - return false; - - $sql = "update $table set "; - - foreach($values as $field=>$value) { - if ($this->escapeData) - $sql .= "$field = '" . $this->escape($field) . "',"; - else - $sql .= "$field = '$value',"; - } - - $sql = substr($sql, 0, strlen($sql) - 1); - - if ($condition != "") - $sql .= "$condition"; - - $this->query($sql); - } - - function getInsertID() { - return pg_getlastoid($this->result[$this->stack_last]); - } - - function getResult($stack=0) { - return $this->result[$stack]; - } - - function hasResult($stack=0) { - return (@pg_result_status($this->result[$stack]) == PGSQL_TUPLES_OK); - //( is_resource($this->result[$stack]) && get_resource_type($this->result[$stack]) === 'pgsql result' ) - } - - function fetchRow($stack=0, $type="") { - if($type == "") - $type = PGSQL_BOTH; - else if ($type == "num") - $type = PGSQL_NUM; - else if ($type == "assoc") - $type = PGSQL_ASSOC; - - if (!$this->result[$stack]) { - log_message("DB: called fetchRow[$stack] but result is false"); - return NULL; - } - return @pg_fetch_array($this->result[$stack], NULL, $type); - } - - function fetchSpecificRow($num, $type="", $stack=0) { - if($type == "") - $type = PGSQL_BOTH; - else if ($type == "num") - $type = PGSQL_NUM; - else if ($type == "assoc") - $type = PGSQL_ASSOC; - - if (!$this->result[$stack]) { - log_message("DB: called fetchSpecificRow[$stack] but result is false"); - return NULL; - } - - return @pg_fetch_array($this->result[$stack], $num, $type); - } - - function numRows($stack=0) { - return pg_numrows($this->result[$stack]); - } - - function error($str) { - log_message("DB: " . $str); - $this->errMsg = $str; - return false; - } - - function getError() { - return $this->errMsg; - } - - function escape($str) { - return pg_escape_string($this->conn, $str); - } - - function quote($str) { - if(strpos($str, '.') === false) - return '"' . $str . '"'; - return '"' . str_replace('.', '"."', $str) . '"'; - } - - function setEscape($escape=true) { - $this->escapeData = $escape; - } - - function getAffectedRows() { - return pg_affected_rows( $this->result[$this->stack_last] ); - } - - /**************************************/ - function getDatabases() { - $res = pg_query($this->conn, "SELECT datname FROM pg_database WHERE NOT datistemplate ORDER BY datname"); - $ret = array(); - while($row = pg_fetch_array($res)) - $ret[] = $row[0]; - return $ret; - } - - function getSchemas() { - if (!$this->db) - return array(); - $extra = $this->includeStandardObjects ? "" : "WHERE nspname NOT LIKE 'pg@_%' ESCAPE '@' AND nspname != 'information_schema'"; - $res = pg_query($this->conn, "SELECT pn.nspname, pu.rolname AS nspowner, pg_catalog.obj_description(pn.oid, 'pg_namespace') AS nspcomment FROM pg_catalog.pg_namespace pn LEFT JOIN pg_catalog.pg_roles pu ON (pn.nspowner = pu.oid) $extra ORDER BY nspname"); - $ret = array(); - while($row = pg_fetch_array($res)) - $ret[] = $row[0]; - return $ret; - } - - function getTables( $details = false ) { - if (!$this->db) - return array(); - $extra = $this->includeStandardObjects ? "" : "AND table_schema NOT LIKE 'pg@_%' ESCAPE '@' AND table_schema != 'information_schema'"; - $res = pg_query($this->conn, "SELECT table_schema, table_name FROM information_schema.tables WHERE table_type = 'BASE TABLE' $extra ORDER BY table_name"); - $ret = array(); - while($row = pg_fetch_array($res)) { - $schema = $row[0]; - if (!isset($ret[$schema])) - $ret[$schema] = array(); - // @@TODO: add details for table for pgsql databases - $ret[$schema][] = $row[1]; - } - return $ret; - } - - function getViews() { - if (!$this->db) - return array(); - $extra = $this->includeStandardObjects ? "" : "AND table_schema NOT LIKE 'pg@_%' ESCAPE '@' AND table_schema != 'information_schema'"; - $res = pg_query($this->conn, "SELECT table_schema, table_name FROM information_schema.tables WHERE table_schema = current_schema() and table_type = 'VIEW' $extra ORDER BY table_name"); - if (!$res) - return array(); - $ret = array(); - while($row = pg_fetch_array($res)) { - $schema = $row[0]; - if (!isset($ret[$schema])) - $ret[$schema] = array(); - $ret[$schema][] = $row[1]; - } - return $ret; - } - - function getFunctions() { - if (!$this->db) - return array(); - $extra = $this->includeStandardObjects ? "" : "WHERE n.nspname NOT LIKE 'pg@_%' ESCAPE '@' AND n.nspname != 'information_schema'"; - $res = pg_query($this->conn, "SELECT n.nspname, p.proname AS name FROM pg_proc p INNER JOIN pg_namespace n ON p.pronamespace = n.oid LEFT OUTER JOIN pg_roles u ON u.oid = p.proowner $extra ORDER BY p.proname, n.nspname"); - if (!$res) - return array(); - $ret = array(); - while($row = pg_fetch_array($res)) { - $schema = $row[0]; - if (!isset($ret[$schema])) - $ret[$schema] = array(); - $ret[$schema][] = $row[1]; - } - return $ret; - } - - function getTriggers() { - if (!$this->db) - return array(); - $extra = $this->includeStandardObjects ? "" : "AND n.nspname NOT LIKE 'pg@_%' ESCAPE '@' AND n.nspname != 'information_schema'"; - $res = pg_query($this->conn, "SELECT n.nspname, tgname FROM pg_trigger t INNER JOIN pg_class c ON t.tgrelid = c.oid INNER JOIN pg_namespace n ON c.relnamespace = n.oid WHERE t.tgisinternal = 'f' $extra ORDER BY t.tgname"); - if (!$res) - return array(); - $ret = array(); - while($row = pg_fetch_array($res)) { - $schema = $row[0]; - if (!isset($ret[$schema])) - $ret[$schema] = array(); - $ret[$schema][] = $row[1]; - } - return $ret; - } - - function getSequences() { - if (!$this->db) - return array(); - $extra = $this->includeStandardObjects ? "" : "AND n.nspname NOT LIKE 'pg@_%' ESCAPE '@' AND n.nspname != 'information_schema'"; - $res = pg_query($this->conn, "SELECT n.nspname, c.relname AS name, ds.description, n.nspname, d.refobjid as owntab, u.rolname AS usename FROM pg_class c LEFT OUTER JOIN pg_roles u ON u.oid = c.relowner INNER JOIN pg_namespace n ON c.relnamespace = n.oid LEFT OUTER JOIN pg_depend d on c.relkind = 'S' and d.classid = c.tableoid and d.objid = c.oid and d.objsubid = 0 and d.refclassid = c.tableoid and d.deptype = 'i' LEFT OUTER JOIN pg_description ds ON c.oid = ds.objoid WHERE c.relkind = 'S' $extra ORDER BY c.relname"); - if (!$res) - return array(); - $ret = array(); - while($row = pg_fetch_array($res)) { - $schema = $row[0]; - if (!isset($ret[$schema])) - $ret[$schema] = array(); - $ret[$schema][] = $row[1]; - } - return $ret; - } - - /**************************************/ - function getFieldInfo($stack=0) { - - $fields = array(); - $tables = array(); - - $num_fields = pg_num_fields($this->result[$stack]); - for($i=0; $i<$num_fields; $i++) { - $f = new StdClass; - $f->name = pg_field_name($this->result[$stack], $i); - $f->table = pg_field_table($this->result[$stack], $i); - $f->type = pg_field_type($this->result[$stack], $i); - $f->blob = 0; - $f->pkey = 0; - $f->ukey = 0; - $f->mkey = 0; - $f->numeric = substr($f->type, 0, 3) == 'int' ? 1 : 0; - if (!isset($tables[$f->table])) - $tables[$f->table] = array(); - $tables[$f->table][] = "'".$f->name."'"; - $fields[] = $f; - } - - $this->getFieldMetaInfo($fields, $tables); - $this->getFieldConstraints($fields, $tables); - - return $fields; - } - - function getMicroTime() { - list($usec, $sec) = explode(" ",microtime()); - return ((float)$usec + (float)$sec); - } - - function selectVersion() { - $res = pg_query($this->conn, "select version()"); - $row = pg_fetch_array($res); - preg_match('/([PostgreSQL]+)[\s]+([0-9.]+)[,\s]+(.*)/i', $row[0], $matches); - Session::set('db', 'version', intval($matches[2])); - Session::set('db', 'version_full', $matches[2]); - Session::set('db', 'version_comment', $matches[3]); - } - - function getCreateCommand($type, $name) { - $func = 'getCreateCommandFor' . $type; - - if (method_exists($this, $func)) - return $this->$func( $name ); - - return ''; - //return 'Create command is not available for the given object type'; - - } - - function getDropCommand( $table ) { - return "drop table if exists " . $this->quote( $table ); - } - - function getTruncateCommand( $table ) { - return 'truncate table ' . $this->quote( $table ); - } - - function getFieldValues($table, $name) { - $sql = 'show full fields from "'.$table.'" where "Field" = \''.$this->escape($name).'\''; - $res = pg_query($this->conn, $sql); - if (pg_numrows($res) == 0) - return ( (object) array('list' => array()) ); - $row = pg_fetch_array($res); - $type = $row['Type']; - preg_match('/enum\((.*)\)$/', $type, $matches); - if (!isset($matches[1])) - preg_match('/set\((.*)\)$/', $type, $matches); - if (isset($matches[1])) { - if (phpCheck(5.3)) { - $regex = "/\('(.*)'\)/"; - preg_match_all($regex, $row['Type'], $list); - return array_map('replace_single_quotes', explode("','", $list[1][0])); - } else { - $list = explode(',', $matches[1]); - foreach($list as $k => $v) - $list[$k] = str_replace("\\'", "'", trim($v, " '")); - return $list; - } - } - return ( (object) array('list' => array()) ); - } - - function getEngines() { - $sql = 'show engines'; - $res = pg_query($this->conn, $sql); - if (pg_numrows($res) == 0) - return ( array() ); - - $arr = array(); - while($row = pg_fetch_array($res)) - if ($row['Support'] != 'NO') - $arr[] = $row['Engine']; - return $arr; - } - - function getCharsets() { - $sql = 'show character set'; - $res = pg_query($this->conn, $sql); - if (pg_numrows($res) == 0) - return ( array() ); - - $arr = array(); - while($row = pg_fetch_array($res)) - $arr[] = $row['Charset']; - - asort($arr); - return $arr; - } - - function getCollations() { - $sql = 'show collation'; - $res = pg_query($this->conn, $sql); - if (pg_numrows($res) == 0) - return ( array() ); - - $arr = array(); - while($row = pg_fetch_array($res)) - $arr[] = $row['Collation']; - - asort($arr); - return $arr; - } - - function getTableFields($table) { - $fields = array(); - $tables = array(); - $tables[$table] = array(); - $this->getFieldMetaInfo($fields, $tables); - - return $fields; - } - - function getTableProperties($table) { - $sql = "show table status where \"Name\" like '".$this->escape($table)."'"; - if (!$this->query($sql, "_tmp_query")) - return FALSE; - return $this->fetchRow("_tmp_query"); - } - - function queryTableStatus() { - $sql = "SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE table_type = 'BASE TABLE' ORDER BY table_name"; - return $this->query($sql); - } - - function getTableDescription( $table ) { - list($schema, $tbl) = strpos($table, '.') === FALSE ? array('', $table) : explode('.', $table); - $sql = "select * from INFORMATION_SCHEMA.COLUMNS where table_schema = '" . $this->escape( $schema ) . "' and table_name = '". $this->escape( $tbl ) . "' order by ordinal_position"; - return $this->query($sql); - } - - function flush($option = '', $skiplog=false) { - $options = array('HOSTS', 'PRIVILEGES', 'TABLES', 'STATUS', 'DES_KEY_FILE', 'QUERY CACHE', 'USER_RESOURCES', 'TABLES WITH READ LOCK'); - if ($option == '') { - foreach($options as $option) { - $sql = "flush " . ( $skiplog ? "NO_WRITE_TO_BINLOG " : "") . $this->escape($option); - $this->query($sql, '_temp_flush'); - } - $this->query('UNLOCK TABLES', '_temp_flush'); - } else { - $sql = "flush " . ( $skiplog ? "NO_WRITE_TO_BINLOG " : "") . $this->escape($option); - $this->query($sql, '_temp_flush'); - if ($option == 'TABLES WITH READ LOCK') - $this->query('UNLOCK TABLES', '_temp_flush'); - } - - return true; - } - - function getLastQuery() { - return $this->lastQuery; - } - - function getInsertStatement($tbl) { - $fields = array(); - $tables = array(); - $tables[$tbl] = array(); - $this->getFieldMetaInfo($fields, $tables); - - $str = "INSERT INTO ".$this->quote($tbl)." ("; - $str2 = " VALUES ("; - $num = count($fields); - - for($i=0; $i<$num; $i++) { - $str .= ($i==0 ? "\"" : ",\"") . $fields[$i]->name . "\""; - if ($fields[$i]->autoinc) { - $str2 .= $i==0 ? 'NULL' : ',NULL'; - } - else if ( $fields[$i]->numeric ) { - $str2 .= $i==0 ? "0" : ", 0"; - } - else { - $str2 .= $i==0 ? "''" : ",''"; - } - } - - $str .= ")"; - $str2 .= ")"; - - return $str.$str2; - } - - function getUpdateStatement($tbl) { - $fields = array(); - $tables = array(); - $tables[$tbl] = array(); - $this->getFieldMetaInfo($fields, $tables); - $this->getFieldConstraints($fields, $tables); - - $pKey = ''; // if a primary key is available, this helps avoid multikey attributes in where clause - $str2 = ""; - $str = "UPDATE ".$this->quote($tbl)." SET "; - $num = count($fields); - - for($i=0; $i<$num; $i++) { - $str .= ($i==0 ? "\"" : ", \"") . $fields[$i]->name . "\"=''"; - if ($fields[$i]->pkey) - $pKey = $fields[$i]->name; - - if ($str2 != "") - $str2 .= " AND "; - - $str2 .= "\"".$fields[$i]->name."\"=''"; - } - - // if we found a primary key, then use it only for where clause and discard other keys - if ($pKey != '') - $str2 = "\"$pKey\"=''"; - if ($str2 != "") - $str2 = " WHERE " . $str2; - - return $str . $str2; - } - - function truncateTable($tbl) { - return $this->query('truncate table '.$this->quote($tbl)); - } - - function renameObject($name, $type, $new_name) { - $result = false; - list($schema, $new_name) = $this->splitObjectName( $new_name ); - - if($type == 'table') { - $query = 'alter '.$this->escape($type).' ' . $this->quote($name) . ' rename to '.$this->quote($new_name); - $result = $this->query($query); - } - else { - $func = 'rename' . $type; - if (method_exists($this, $func)) - return $this->$func( $name ); - } - - return $result; - } - - function dropObject($name, $type) { - $result = false; - $query = 'drop '.$this->escape($type).' '.$this->quote($name); - $result = $this->query($query); - return $result; - } - - function copyObject($name, $type, $new_name) { - $result = false; - if($type == 'table') { - $query = 'create '.$this->escape($type). ' ' . $this->quote($new_name) . ' (like ' . $this->quote($name) . ")"; - $result = $this->query($query); - if ($result) { - $query = 'insert into ' . $this->quote($new_name) . ' select * from ' . $this->quote($name); - $result = $this->query($query); - } - } - else { - $command = $this->getCreateCommand($type, $name); - $search = '/(create.*'.$type. ' )('.$name.'|\"'.$name.'\")/i'; - $replace = '${1} "'.$new_name.'"'; - $query = preg_replace($search, $replace, $command, 1); - $result = $this->query($query); - } - return $result; - } - - function getAutoIncField($table) { - $sql = "show full fields from \"".$this->escape($table)."\""; - if (!$this->query($sql, "_temp")) - return false; - - $i = 0; - while($row = $this->fetchRow("_temp")) { - if (strpos($row["Extra"], "auto_increment") !== false) { - return $i; - } - $i++; - } - - return -1; - } - - function queryVariables() { - return $this->query("SHOW ALL"); - } - - function getLimit($count, $offset = 0) { - return " limit $count offset $offset"; - } - - function addExportHeader( $name, $obj = 'db', $type='insert' ) { - $str = ''; - switch($type) { - case 'insert': - if ( $obj == 'db' ) { - $str = "-- Database export results for db ".$name."\n"; - $str .= "\nSET statement_timeout = 0;\nSET client_encoding = 'UTF8';\nSET standard_conforming_strings = on;\nSET check_function_bodies = false;\nSET client_min_messages = warning;\nSET search_path = public, pg_catalog;\nSET default_tablespace = '';\nSET default_with_oids = false;\n"; - $str .= "\n-- Export data\n\n"; - } else if ( $obj == 'table' ) { - $str = "-- Table data export for table ".$name."\n"; - $str .= "\nSET statement_timeout = 0;\nSET client_encoding = 'UTF8';\nSET standard_conforming_strings = on;\nSET check_function_bodies = false;\nSET client_min_messages = warning;\nSET search_path = public, pg_catalog;\nSET default_tablespace = '';\nSET default_with_oids = false;\n"; - $str .= "\n-- Export data\n\n"; - } else if ( $obj == 'query' ) { - $str = "-- Export results for query data\n"; - $str .= "-- Query: \n-- ".str_replace("\n", "\n--", $name)."\n"; - $str .= "\n-- Export data\n"; - } - break; - } - return $str; - } - - function addExportFooter( $type='insert' ) { - return "\n"; - } - - function set_constraint( $constraint, $value ) { - switch ($constraint) { - case 'fkey': - //$this->query('SET FOREIGN_KEY_CHECKS=' . ($value ? '1' : '0') ); - break; - } - } - /***** private functions ******/ - - protected function splitObjectName( $obj ) { - return strpos($obj, '.') === FALSE ? array('', $obj) : explode('.', $obj); - } - - // builds connection string for pgsql connect method from parameters - protected function build_conn_string($ip, $user, $password, $db) { - $host = $ip; - $port = ''; - if (strpos($ip, ':') !== false) { - list($host, $port) = explode(':', $ip); - } - $str = "host=" . pg_escape_string($host) . " user=" . pg_escape_string($user); - $str .= " password=" . pg_escape_string($password); - if( !empty($port) ) - $str .= " port=" . pg_escape_string($port); - if( empty($db) ) - $db = 'template1'; - $str .= " dbname=" . pg_escape_string($db); - - return $str; - } - - protected function getFieldMetaInfo(&$fields, $tables) { - - $sql = "select table_name, column_name, is_nullable, column_default, data_type from information_schema.columns where "; - foreach($tables as $table => $keys) { - list($schema, $tbl) = strpos($table, '.') === FALSE ? array('', $table) : explode('.', $table); - $sql .= "(\"table_schema\"='".trim($schema, '"\' ')."' and \"table_name\"='".trim($tbl, '"\' ')."'"; - if (count($keys) > 0) - $sql .= " and \"column_name\" in (".implode(',', $keys).")) OR "; - else - $sql .= ") OR "; - } - $sql = substr($sql, 0, -3) . ' order by ordinal_position'; - $res = pg_query($this->conn, $sql); - if (!$res) - return; - while($row = pg_fetch_array($res)) { - $found = false; - for($i=0; $itable == $row[0] && $fields[$i]->name == $row[1]) { - $fields[$i]->not_null = $row[2] == "YES" ? 0 : 1; - $fields[$i]->datatype = $row[4]; - $fields[$i]->default = $row[3]; - $found = true; - break; - } - } - - if (!$found) { - // create new field info - $f= new StdClass; - $f->name = $row[1]; - $f->table = $row[0]; - $f->type = $row[4]; - $f->blob = 0; - $f->pkey = 0; - $f->ukey = 0; - $f->mkey = 0; - $f->not_null = $row[2] == "YES" ? 0 : 1; - $f->datatype = $row[4]; - $f->default = $row[3]; - //$f->zerofill = ($meta->flags & ZEROFILL_FLAG) ? 1 : 0; - //$f->unsigned = ($meta->flags & UNSIGNED_FLAG) ? 1 : 0; - $f->autoinc = 0; - $f->numeric = substr($f->type, 0, 3) == 'int' ? 1 : 0; - /*if ($meta->flags & ENUM_FLAG) - $f->type = 'enum'; - else if ($meta->flags & SET_FLAG) - $f->type = 'set'; - else if ($meta->flags & BINARY_FLAG) - $f->type = 'binary'; - else if ($meta->type < 10) - $f->type = 'numeric'; - else - $f->type = 'char'; - if ($f->type == 'enum' || $f->type == 'set') - $f->list = $this->getFieldValues($f->table, $f->name); - */ - $fields[] = $f; - } - } - } - - protected function getFieldConstraints(&$fields, $tables) { - $sql = "select c.contype as type, ns1.nspname as schema, r1.relname as table, f1.attname as field - FROM - pg_catalog.pg_constraint AS c - JOIN pg_catalog.pg_class AS r1 ON (c.conrelid=r1.oid) - JOIN pg_catalog.pg_attribute AS f1 ON (f1.attrelid=r1.oid AND (f1.attnum=c.conkey[1])) - JOIN pg_catalog.pg_namespace AS ns1 ON r1.relnamespace=ns1.oid - LEFT JOIN ( - pg_catalog.pg_class AS r2 JOIN pg_catalog.pg_namespace AS ns2 ON (r2.relnamespace=ns2.oid) - ) ON (c.confrelid=r2.oid) - LEFT JOIN pg_catalog.pg_attribute AS f2 ON - (f2.attrelid=r2.oid AND ((c.confkey[1]=f2.attnum AND c.conkey[1]=f1.attnum))) - WHERE "; - - foreach($tables as $table => $keys) { - list($schema, $tbl) = $this->splitObjectName( $table ); - $schema = trim($schema, '"\' '); - if ($schema) - $sql .= "(ns1.nspname='".$schema."' and r1.relname='".trim($tbl, '"\' ')."') OR "; - else - $sql .= "(r1.relname='".trim($tbl, '"\' ')."') OR "; - } - $sql = substr($sql, 0, -3); - $res = pg_query($this->conn, $sql); - if (!$res) - return; - while($row = pg_fetch_array($res)) { - for($i=0; $itable == $row[2] && $fields[$i]->name == $row[3]) { - $fields[$i]->pkey = $row[0] == "p" ? 1 : 0; - $fields[$i]->ukey = $row[0] == "u" ? 1 : 0; - break; - } - } - } - } - - protected function getCreateCommandForView( $name ) - { - list($schema, $name) = $this->splitObjectName( $name ); - $sql = "SELECT c.relname, n.nspname, pg_catalog.pg_get_userbyid(c.relowner) AS relowner, - pg_catalog.pg_get_viewdef(c.oid, true) AS createcmd, - pg_catalog.obj_description(c.oid, 'pg_class') AS comments - FROM pg_catalog.pg_class c - LEFT JOIN pg_catalog.pg_namespace n ON (n.oid = c.relnamespace) - WHERE (c.relname = '" . $this->escape($name) . "') AND n.nspname='" . $this->escape( $schema ) . "'"; - - if (!$this->query($sql, '_temp') || $this->numRows('_temp') == 0) - return ''; - - $row = $this->fetchRow('_temp'); - $cmd = 'CREATE VIEW ' . $this->quote( $row['nspname'] . '.' . $row['relname'] ) . " AS \n" - . $row['createcmd']; - - if ($row['comments'] != '') { - $cmd = "BEGIN; \n" . $cmd . "\nCOMMENT ON VIEW " . $this->quote( $row['nspname'] . '.' . $row['relname'] ) . " IS '" . $this->escape($row['comments']) . "';\nEND;"; - } - - return $cmd; - } - -} -?> \ No newline at end of file diff --git a/lib/db/sqlite.php b/lib/db/sqlite.php deleted file mode 100644 index 8aff586..0000000 --- a/lib/db/sqlite.php +++ /dev/null @@ -1,738 +0,0 @@ -conn = null; - $this->errMsg = null; - $this->escapeData = true; - $this->result = array(); - - $this->authOptions = array(); - } - - function name() { - return 'sqlite'; - } - - function hasServer() { - return false; - } - - function hasObject($type) { - switch($type) { - case 'table': - case 'view': - case 'trigger': - return true; - break; - } - return false; - } - - function getObjectTypes() { - $types = array( - 'tables', 'views', 'triggers' - ); - - return $types; - } - - function getObjectList( $details = false ) { - $data = array( - 'tables' => $this->getTables( $details ), - 'views' => $this->getViews(), - 'triggers' => $this->getTriggers() - ); - - return $data; - } - - function getBackQuotes() { - return ''; - } - - function getQuotes() { - return '"'; - } - - function getStandardDbList() { - return array( 'SQLITE_MASTER' ); - } - - - function setAuthOptions($options) { - $this->authOptions = $options; - } - - function connect($ip, $user, $password, $db="") { - if (substr($ip, -1) != '/') - $ip .= '/'; - // must be a directory and writable - if (!is_dir($ip) || !is_writable($ip)) - return $this->error(__('SQLite database folder is inaccessible or not writable')); - - // this helps authenticate first time with user defined login information - if (isset($this->authOptions['user']) && $user != $this->authOptions['user']) - return $this->error(__('Invalid Credentials')); - - if (isset($this->authOptions['password']) && $password != $this->authOptions['password']) - return $this->error(__('Invalid Credentials')); - - if (!function_exists('sqlite_open')) { - return $this->error(str_replace('{{NAME}}', 'SQLite', __('{{NAME}} client library is not installed'))); - } - - if ($db && !($this->conn = sqlite_open($ip . $db, 0666)) ) - return $this->error(sqlite_error_string()); - - $this->ip = $ip; - $this->user = $user; - $this->password = $password; - $this->db = $db; - - $this->selectVersion(); - //$this->query("SET CHARACTER SET 'utf8'"); - //$this->query("SET collation_connection = 'utf8_general_ci'"); - - return true; - } - - function disconnect() { - @sqlite_close($this->conn); - $this->conn = false; - return true; - } - - function getCurrentUser() { - return $this->user; - } - - function selectDb($db) { - $this->db = $db; - if ( ! ($this->conn = sqlite_open($this->ip . $db, 0666)) ) - return $this->error(sqlite_error_string(sqlite_last_error())); - $this->selectVersion(); - return true; - } - - function createDatabase( $name ) { - if ( empty($name) || is_file($this->ip.$name) ) { - return false; - } - - // concat .db at the end of name if not already given - if ( !preg_match('/.db$/', $name) ) - $name .= '.db'; - $result = touch( $this->ip.$name ); - if ($result) { - chmod( $this->ip.$name, 0666 ); - return true; - } - return false; - } - - function query($sql, $stack=0) { // call with query($sql, 1) to store multiple results - if (!$this->conn) { - log_message("DB: Connection has been closed"); - return false; - } - - $this->result[$stack] = ""; - - $this->lastQuery = $sql; - $this->queryTime = $this->getMicroTime(); - $this->result[$stack] = @sqlite_query($sql, $this->conn); - $this->queryTime = $this->getMicroTime() - $this->queryTime; - - if (!$this->result[$stack]) { - $this->errMsg = sqlite_error_string(sqlite_last_error($this->conn)); - log_message("DB: $sql ::: ".$this->errMsg); - return false; - } - - return true; - } - - function getWarnings() { - // @@TODO: find a solution for this - $ret = array(); - return $ret; - } - - function getQueryTime($time=false) { // returns formatted given value or internal query time - return sprintf("%.2f", ($time ? $time : $this->queryTime) * 1000) . " ms"; - } - - function hasAffectedRows() { - return ($this->getAffectedRows() > 0); - } - - function insert($table, $values) { - if (!is_array($values)) - return false; - - $sql = "insert into $table ("; - - foreach($values as $field=>$value) - $sql .= " $field,"; - - $sql = substr($sql, 0, strlen($sql) - 1); - - $sql .= ") values ("; - - foreach($values as $field=>$value) { - if ($this->escapeData) - $sql .= "'" . $this->escape($value) . "',"; - else - $sql .= "'$value',"; - } - - $sql = substr($sql, 0, strlen($sql) - 1); - - $sql .= ")"; - - $this->query($sql); - } - - function update($table, $values, $condition="") { - if (!is_array($values)) - return false; - - $sql = "update $table set "; - - foreach($values as $field=>$value) { - if ($this->escapeData) - $sql .= "$field = '" . $this->escape($field) . "',"; - else - $sql .= "$field = '$value',"; - } - - $sql = substr($sql, 0, strlen($sql) - 1); - - if ($condition != "") - $sql .= "$condition"; - - $this->query($sql); - } - - function getInsertID() { - return sqlite_last_insert_rowid($this->conn); - } - - function getResult($stack=0) { - return $this->result[$stack]; - } - - function hasResult($stack=0) { - return ($this->result[$stack] !== TRUE && $this->result[$stack] !== FALSE); - } - - function fetchRow($stack=0, $type="") { - if($type == "") - $type = SQLITE_BOTH; - else if ($type == "num") - $type = SQLITE_NUM; - else if ($type == "assoc") - $type = SQLITE_ASSOC; - - if (!$this->result[$stack]) { - log_message("DB: called fetchRow[$stack] but result is false"); - return; - } - return @sqlite_fetch_array($this->result[$stack], $type); - } - - function fetchSpecificRow($num, $type="", $stack=0) { - if($type == "") - $type = SQLITE_BOTH; - else if ($type == "num") - $type = SQLITE_NUM; - else if ($type == "assoc") - $type = SQLITE_ASSOC; - - if (!$this->result[$stack]) { - log_message("DB: called fetchSpecificRow[$stack] but result is false"); - return; - } - - sqlite_seek($this->result[$stack], $num); - return @sqlite_fetch_array($this->result[$stack], $type); - } - - function numRows($stack=0) { - return sqlite_num_rows($this->result[$stack]); - } - - function error($str) { - log_message("DB: " . $str); - $this->errMsg = $str; - return false; - } - - function getError() { - return $this->errMsg; - } - - function escape($str) { - return sqlite_escape_string($str); - } - - function quote($str) { - if(strpos($str, '.') === false) - return '[' . $str . ']'; - return '[' . str_replace('.', '].[', $str) . ']'; - } - - function setEscape($escape=true) { - $this->escapeData = $escape; - } - - function getAffectedRows() { - return sqlite_changes($this->conn); - } - - /**************************************/ - function getDatabases() { - $ret = array(); - $d = opendir($this->ip); - while(($entry = readdir($d)) != false) { - if ( $entry!="." && $entry!=".." && is_file($this->ip.$entry) && - preg_match('/^.*\.('.SQLITE_FILEEXT.')$/i', $entry) ) { - $ret[] = $entry; - } - } - closedir($d); - return $ret; - } - - function getTables( $details = false ) { - if (!$this->db) - return array(); - $this->query("select name from SQLITE_MASTER where type = 'table' order by 1"); - $ret = array(); - while($row = $this->fetchRow()) - $ret[] = $details ? array( - $row[0], // table name - 0, // number of records, - 0, // size of the table - '', // last update timestamp - ) : $row[0]; - return $ret; - } - - function getViews() { - if (!$this->db) - return array(); - $this->query("select name from SQLITE_MASTER where type = 'view' order by 1"); - $ret = array(); - while($row = $this->fetchRow()) - $ret[] = $row[0]; - return $ret; - } - - function getProcedures() { - return array(); - } - - function getFunctions() { - return array(); - } - - function getTriggers() { - if (!$this->db) - return array(); - $this->query("select name from SQLITE_MASTER where type = 'trigger' order by 1"); - $ret = array(); - while($row = $this->fetchRow()) - $ret[] = $row[0]; - return $ret; - } - - function getEvents() { - return array(); - } - - /**************************************/ - function getFieldInfo($stack=0) { - $fields = array(); - $i = 0; - if ( ( $table = Session::get('select', 'table') ) != '' ) { - // query from a table, so we can find keys related information using pragma - $this->result['_tinfo'] = @sqlite_query('PRAGMA table_info(' . $this->quote($table) . ')', $this->conn); - while ($row = $this->fetchRow('_tinfo')) { - $f = new StdClass; - $f->name = $row['name']; - $f->table = $table; - $f->not_null = $row['notnull']; - $f->blob = $row['type'] == 'BLOB' ? 1 : 0; - $f->pkey = $row['pk']; - $f->ukey = 0; - $f->mkey = 0; - $f->zerofill = 0; - $f->unsigned = 0; - $f->autoinc = 0; - $f->numeric = $row['type'] == 'INTEGER' ? 1 : 0; - $f->type = $row['type'] == 'INTEGER' ? 'numeric' : ( $row['type'] == 'BLOB' ? 'binary' : 'text' ); - $fields[] = $f; - $i++; - } - } else { - while ($i < sqlite_num_fields($this->result[$stack])) { - $f = new StdClass; - $f->name = sqlite_field_name($this->result[$stack], $i); - $f->table = ''; - $f->not_null = 0; - $f->blob = 0; - $f->pkey = 0; - $f->ukey = 0; - $f->mkey = 0; - $f->zerofill = 0; - $f->unsigned = 0; - $f->autoinc = 0; - $f->numeric = 0; - $f->type = 'string'; - $fields[] = $f; - $i++; - } - } - return $fields; - } - - function getMicroTime() { - list($usec, $sec) = explode(" ",microtime()); - return ((float)$usec + (float)$sec); - } - - function selectVersion() { - Session::set('db', 'version', 0); - Session::set('db', 'version_full', 'SQLite'); - Session::set('db', 'version_comment', ''); - } - - function getCreateCommand($type, $name) { - $cmd = ''; - $type = $this->escape($type); - $name = $this->escape($name); - - $sql = "select sql from SQLITE_MASTER where type = '$type' and name = '".$name."'"; - if (!$this->query($sql) || $this->numRows() == 0) - return ''; - - $row = $this->fetchRow(); - $cmd = $row[0]; - - return $cmd; - } - - function getDropCommand( $table ) { - return "drop table if exists " . $this->quote( $table ); - } - - function getTruncateCommand( $table ) { - return 'truncate table ' . $this->quote( $table ); - } - - function getFieldValues($table, $name) { - $sql = 'show full fields from `'.$table.'` where `Field` = \''.$this->escape($name).'\''; - $res = $this->query($sql, '_temp'); - if ($this->numRows() == 0) - return ( (object) array('list' => array()) ); - $row = $this->fetchRow('_temp'); - $type = $row['Type']; - preg_match('/enum\((.*)\)$/', $type, $matches); - if (!isset($matches[1])) - preg_match('/set\((.*)\)$/', $type, $matches); - if (isset($matches[1])) { - if (phpCheck(5.3)) { - $regex = "/\('(.*)'\)/"; - preg_match_all($regex, $row['Type'], $list); - return array_map('replace_single_quotes', explode("','", $list[1][0])); - } else { - $list = explode(',', $matches[1]); - foreach($list as $k => $v) - $list[$k] = str_replace("\\'", "'", trim($v, " '")); - return $list; - } - } - return ( (object) array('list' => array()) ); - } - - function getEngines() { - $arr = array(); - return $arr; - } - - function getCharsets() { - $arr = array(); - return $arr; - } - - function getCollations() { - $arr = array(); - return $arr; - } - - function getTableFields($table) { - // @@TODO: fix this - $fields = array(); - return $fields; - } - - function getTableProperties($table) { - $sql = "show table status where `Name` like '".$this->escape($table)."'"; - if (!$this->query($sql, "_tmp_query")) - return FALSE; - return $this->fetchRow("_tmp_query"); - } - - function queryTableStatus() { - $sql = 'select * from SQLITE_MASTER'; - return $this->query($sql); - } - - function getTableDescription( $table ) { - $sql = "describe " . $this->quote( $table ); - return $this->query($sql); - } - - function flush($option = '', $skiplog=false) { - return true; - } - - function getLastQuery() { - return $this->lastQuery; - } - - - function getInsertStatement($tbl) { - $sql = "select sql from SQLITE_MASTER where type = 'table' and name = '".$this->escape($tbl)."'"; - if (!$this->query($sql, '_insert')) - return false; - - $row = $this->fetchRow('_insert'); - $table_info = $this->parseCreateStatement($row[0]); - $fields = $table_info[0]; - $str = "INSERT INTO ".$tbl." ("; - $str .= $fields[0]; - - $str2 = ''; - - //if ($row["Extra"] == "auto_increment") - // $str2 = " values (NULL"; - //else - $str2 = " VALUES (\"\""; - - for($i=1; $iescape($tbl)."'"; - if (!$this->query($sql, '_update')) - return false; - - $row = $this->fetchRow('_update'); - $table_info = $this->parseCreateStatement($row[0]); - $fields = $table_info[0]; - $pKey = $table_info[1]; - - $str = "UPDATE ".$tbl." SET "; - $str .= $fields[0] . "=\"\""; - - $str2 = ''; - - for($i=1; $iquery('DELETE FROM '.$this->quote($tbl)); - } - - function renameObject($name, $type, $new_name) { - $result = false; - if($type == 'table') { - $query = 'ALTER TABLE '.$this->escape($name).' RENAME TO '.$this->escape($new_name); - $result = $this->query($query); - } else { - //@@TODO: fix logic according to sqlite - $command = $this->getCreateCommand($type, $name); - $search = '/(create.*'.$type. ' )('.$name.'|\`'.$name.'\`)/i'; - $replace = '${1} `'.$new_name.'`'; - $query = preg_replace($search, $replace, $command, 1); - if ($this->query($query)) { - $query = 'drop '.$this->escape($type).' `'.$this->escape($name).'`'; - $result = $this->query($query); - } - } - - return $result; - } - - function dropObject($name, $type) { - $result = false; - $query = 'DROP '.$this->escape($type).' '.$this->escape($name); - $result = $this->query($query); - return $result; - } - - function copyObject($name, $type, $new_name) { - $result = false; - if($type == 'table') { - $query = 'CREATE '.$this->escape($type).' ' . $this->escape($new_name) . ' AS SELECT * FROM ' . $this->escape($name); - $result = $this->query($query); - } else { - //@@TODO: fix logic according to sqlite - $command = $this->getCreateCommand($type, $name); - $search = '/(create.*'.$type. ' )('.$name.'|\`'.$name.'\`)/i'; - $replace = '${1} `'.$new_name.'`'; - $query = preg_replace($search, $replace, $command, 1); - $result = $this->query($query); - } - return $result; - } - - function getAutoIncField($table) { - $sql = "show full fields from [".$this->escape($table)."]"; - if (!$this->query($sql, "_temp")) - return false; - - $i = 0; - while($row = $this->fetchRow("_temp")) { - if (strpos($row["Extra"], "auto_increment") !== false) { - return $i; - } - $i++; - } - - return -1; - } - - function queryVariables() { - return $this->query("SHOW VARIABLES"); - } - - function getLimit($count, $offset = 0) { - return " limit $offset, $count"; - } - - function addExportHeader( $name, $obj = 'db', $type='insert' ) { - $str = ''; - switch($type) { - case 'insert': - if ( $obj == 'db' ) { - $str = "/* Database export results for db ".$name." */\n"; - $str .= "\n/* Export data */\n"; - } else if ( $obj == 'table' ) { - $str = "/* Table data export for table ".$name." */\n"; - $str .= "\n/* Export data */\n"; - } else if ( $obj == 'query' ) { - $str = "/* Export results for query data */\n"; - $str .= "/* Query: \n".$name."\n*/\n"; - $str .= "\n/* Export data */\n"; - } - break; - } - return $str; - } - - function addExportFooter( $type='insert' ) { - return ""; - } - - function set_constraint( $constraint, $value ) { - switch ($constraint) { - case 'fkey': - //$this->query('SET FOREIGN_KEY_CHECKS=' . ($value ? '1' : '0') ); - break; - } - } - - /***** object specific functions ******/ - protected function parseCreateStatement($str) { - $extra = strtok( $str, "(" ); - $primary = ''; - while( $fieldnames[] = strtok(",") ) {}; - array_pop( $fieldnames ); - foreach( $fieldnames as $no => $field ) { - if ( strpos($field, "PRIMARY KEY") && $no > 0 ) { - strtok( $field, "(" ); - $primary = trim(strtok( ")" )); - unset($fieldnames[$no]); - } else - $fieldnames[$no] = trim(strtok( $field, " " )); - } - return array($fieldnames, $primary); - } -} -?> \ No newline at end of file diff --git a/lib/db/sqlite3.php b/lib/db/sqlite3.php deleted file mode 100644 index 9586ad4..0000000 --- a/lib/db/sqlite3.php +++ /dev/null @@ -1,207 +0,0 @@ -error(__('SQLite database folder is inaccessible or not writable')); - - // this helps authenticate first time with user defined login information - if (isset($this->authOptions['user']) && $user != $this->authOptions['user']) - return $this->error(__('Invalid Credentials')); - - if (isset($this->authOptions['password']) && $password != $this->authOptions['password']) - return $this->error(__('Invalid Credentials')); - - if (!class_exists('SQLite3')) { - return $this->error(str_replace('{{NAME}}', 'SQLite3', __('{{NAME}} client library is not installed'))); - } - - if ($db) { - try { - $this->conn = new SQLite3($ip . $db); - } catch(Exception $e) { - return $this->error('Access denied or failed to open database'); - } - } - - $this->ip = $ip; - $this->user = $user; - $this->password = $password; - $this->db = $db; - - $this->selectVersion(); - - //$this->query("SET CHARACTER SET 'utf8'"); - //$this->query("SET collation_connection = 'utf8_general_ci'"); - - return true; - } - - function disconnect() { - if ($this->conn) { - $this->conn->close(); - } - $this->conn = false; - return true; - } - - function selectDb($db) { - $this->db = $db; - try { - $this->conn = new SQLite3($this->ip . $db); - } catch(Exception $e) { - return false; - } - - $this->selectVersion(); - return true; - } - - function query($sql, $stack=0) { // call with query($sql, 1) to store multiple results - if (!$this->conn) { - log_message("DB: Connection has been closed"); - return false; - } - - $this->result[$stack] = ""; - $this->stack_last = $stack; - - $this->lastQuery = $sql; - $this->queryTime = $this->getMicroTime(); - $this->result[$stack] = $this->conn->query($sql); - $this->queryTime = $this->getMicroTime() - $this->queryTime; - - if (!$this->result[$stack]) { - $this->errMsg = $this->conn->lastErrorMsg(); - log_message("DB: $sql ::: ".$this->errMsg); - return false; - } - - return true; - } - - function getInsertID() { - return $this->conn->lastInsertRowID(); - } - - function fetchRow($stack=0, $type="") { - if($type == "") - $type = SQLITE3_BOTH; - else if ($type == "num") - $type = SQLITE3_NUM; - else if ($type == "assoc") - $type = SQLITE3_ASSOC; - - if (!is_object($this->result[$stack])) { - log_message("DB: called fetchRow[$stack] but result is invalid"); - return false; - } - return $this->result[$stack]->fetchArray( $type ); - } - - function fetchSpecificRow($num, $stack=0, $type="") { - // @@TODO: find a workaround to fetch specific row from sqlite3 result object - return false; - } - - function numRows($stack=0) { - if ($this->result[$stack] !== TRUE && $this->result[$stack] !== FALSE) { - $sql = 'SELECT COUNT(*) FROM (' . $this->lastQuery . ')'; - if ( $this->query($sql, '_numrows') ) { - $result = $this->fetchRow('_numrows'); - return $result[0]; - } - } - return 0; - } - - function escape($str) { - return $this->conn->escapeString($str); - } - - function getAffectedRows() { - return $this->result[$this->stack_last]->changes(); - } - - /**************************************/ - function getFieldInfo($stack=0) { - $fields = array(); - $i = 0; - if ( ( $table = Session::get('select', 'table') ) != '' ) { - // query from a table, so we can find keys related information using pragma - $this->result['_tinfo'] = $this->conn->query('PRAGMA table_info(' . $this->quote($table) . ')'); - while ($row = $this->fetchRow('_tinfo')) { - $f = new StdClass; - $f->name = $row['name']; - $f->table = $table; - $f->not_null = $row['notnull']; - $f->blob = $row['type'] == 'BLOB' ? 1 : 0; - $f->pkey = $row['pk']; - $f->ukey = 0; - $f->mkey = 0; - $f->zerofill = 0; - $f->unsigned = 0; - $f->autoinc = 0; - $f->numeric = $row['type'] == 'INTEGER' ? 1 : 0; - $f->type = $row['type'] == 'INTEGER' ? 'numeric' : ( $row['type'] == 'BLOB' ? 'binary' : 'text' ); - $fields[] = $f; - $i++; - } - } else { - while ($i < $this->result[$stack]->numColumns()) { - $f = new StdClass; - $f->name = $this->result[$stack]->columnName($i); - $f->table = ''; - $f->not_null = 0; - $f->blob = 0; - $f->pkey = 0; - $f->ukey = 0; - $f->mkey = 0; - $f->zerofill = 0; - $f->unsigned = 0; - $f->autoinc = 0; - $f->numeric = 0; - $f->type = 'string'; - $fields[] = $f; - $i++; - } - } - return $fields; - } - - function selectVersion() { - // unless a database is opened, we need a fallback version info - if ($this->conn) { - $version = $this->conn->version(); - } else { - $version = array('versionString' => '0'); - } - Session::set('db', 'version', intval($version['versionString'])); - Session::set('db', 'version_full', $version['versionString']); - Session::set('db', 'version_comment', ''); - } - -} -?> \ No newline at end of file diff --git a/lib/editors/codemirror.php b/lib/editors/codemirror.php deleted file mode 100644 index 29a8142..0000000 --- a/lib/editors/codemirror.php +++ /dev/null @@ -1,43 +0,0 @@ -'; - print "'; - } - - function sqlEditorJs($min, $id, $frameId, $init='') { - if ($min) - print $id.' = CodeMirror.fromTextArea("'.$id.'", { basefiles: ["js/min/codemirror_base.js"],'; - else - print $id.' = CodeMirror.fromTextArea("'.$id.'", { parserfile: "mysql.js", path: "js/editor/",'; - - print 'iframeId: "'.$frameId.'", iframeClass: "sqlEditFrame", autoMatchParens: true, - height: "100%", tabMode : "default", stylesheet: "cache.php?css=editor", - lineNumbers: true, tabFunction : function() { document.getElementById("nav_query").focus(); }, - onLoad : function() { '.$init.' } - });'; - } - -?> \ No newline at end of file diff --git a/lib/editors/codemirror2.php b/lib/editors/codemirror2.php deleted file mode 100644 index 1be7071..0000000 --- a/lib/editors/codemirror2.php +++ /dev/null @@ -1,38 +0,0 @@ -'; - print ""; - } - - function sqlEditorJs($id, $init='') { - print $id.' = CodeMirror.fromTextArea(document.getElementById("'.$id.'"), { mode: "text/x-mysql", - lineNumbers: true, matchBrackets: true, indentUnit: 3, - height: "100%", tabMode : "default", - tabFunction : function() { document.getElementById("nav_query").focus(); }, - onLoad : function() { '.$init.' } - });'; - } - -?> \ No newline at end of file diff --git a/lib/editors/simple.php b/lib/editors/simple.php deleted file mode 100644 index dd16766..0000000 --- a/lib/editors/simple.php +++ /dev/null @@ -1,27 +0,0 @@ -"; - } -?> \ No newline at end of file diff --git a/lib/export/csv.php b/lib/export/csv.php deleted file mode 100644 index 04d54ff..0000000 --- a/lib/export/csv.php +++ /dev/null @@ -1,72 +0,0 @@ -db = $db; - $this->options = $options; - } - - function createHeader($field_info) { - if ($this->options['fieldheader']) { - $separator = ","; - $fieldwrap = "\""; - $x = count($field_info); - $res = ''; - for($i=0; $i<$x; $i++) { - $res .= $fieldwrap . str_replace('"', '""', $field_info[$i]->name) . $fieldwrap; - if ($i+1 == $x) - $res .= "\r\n"; - else - $res .= $separator; - } - return $res; - } - return ''; - } - - function createFooter($field_info) { - return ''; - } - - function createLine($row, $field_info) { - $separator = ","; - $fieldwrap = "\""; - $x = count($row); - - $res = ''; - for($i=0; $i<$x; $i++) { - if ($row[$i] === NULL) - $res .= $fieldwrap . "NULL" . $fieldwrap; - else if ($field_info[$i]->numeric == 1) - $res .= $row[$i]; - else - $res .= $fieldwrap . str_replace('"', '""', $row[$i]) . $fieldwrap; - - if ($i+1 == $x) - $res .= "\r\n"; - else - $res .= $separator; - } - return $res; - } -} -?> \ No newline at end of file diff --git a/lib/export/export.php b/lib/export/export.php deleted file mode 100644 index b5c6f3e..0000000 --- a/lib/export/export.php +++ /dev/null @@ -1,95 +0,0 @@ -db = $db; - $this->type = $type; - } - - function sendDownloadHeader($name) { - $type = '.sql'; - if ($this->type == 'xml') $type = '.xml'; - else if ($this->type == 'xhtml') $type = '.html'; - else if ($this->type == 'csv') $type = '.csv'; - else if ($this->type == 'text') $type = '.txt'; - else if ($this->type == 'yaml') $type = '.yml'; - header("Content-disposition: attachment;filename=".$name.$type); - } - - // common download function for all types of exports - function exportTable($sql, $options) { - // check if we need to apply limit to the result set or not - $applyLimit = isset($options['apply_limit']) ? $options['apply_limit'] : - ( ! ( strpos($sql, "limit ") || ("select" != strtolower(substr($sql, 0, 6))) ) ); - - $class = 'Export_' . strtolower($this->type); - require_once( dirname(__FILE__) . '/' . strtolower($this->type) . '.php'); - $this->driver = new $class($this->db, $options); - - $id = 0; - $field_info = NULL; - - while(1) { - $tempSql = $sql; - if ($applyLimit) - $tempSql .= " " . $this->db->getLimit(100, $id); - - if (!$this->db->query($tempSql, "_temp")) - return false; - - if ($field_info == NULL) { - $field_info = $this->db->getFieldInfo("_temp"); - print $this->driver->createHeader($field_info); - } - - $numRows = $this->db->numRows("_temp"); - - while($row = $this->db->fetchRow("_temp", 'num')) { - print $this->driver->createLine($row, $field_info); - } - - if ($numRows == 0 || !$applyLimit) - break; - - $id += 100; - } - - print $this->driver->createFooter($field_info); - } - - function error($msg) { - $this->errMsg = $msg; - return false; - } - - function getError() { - return $this->errMsg; - } -} -?> \ No newline at end of file diff --git a/lib/export/insert.php b/lib/export/insert.php deleted file mode 100644 index 7a6fa4e..0000000 --- a/lib/export/insert.php +++ /dev/null @@ -1,99 +0,0 @@ -db = $db; - $this->options = $options; - $this->bulk_mode = false; - $this->bulk_size = 0; - } - - function createHeader($field_info) { - return ''; - } - - function createFooter($field_info) { - return $this->options['bulkinsert'] ? ";\r\n" : ''; - } - - function createLine($row, $field_info) { - $autof = $this->options['auto_field']; - $table = $this->options['table']; - $fieldNames = $this->options['fieldnames']; - - $bq = $this->db->getBackQuotes(); - $quotes = $this->db->getQuotes(); - $res = ''; - - if ( !$this->options['bulkinsert'] || !$this->bulk_mode ) { - $res = "INSERT INTO $bq".$table.$bq; - if ($fieldNames) { - $res .= " ("; - for($i=0; $iname."$bq,"; - $res .= $bq.$field_info[$i]->name."$bq)"; - } - $res .= " VALUES ("; - - // set bulk mode on so that subsequent statements do not include the INSERT INTO ... clause - if ($this->options['bulkinsert']) { - $this->bulk_mode = true; - // intentionally start with extra size so that we can keep the size limited to what is desired - $this->bulk_size = strlen($res) * 2; - } - } else { - $res .= ",\r\n("; - } - - $x = count($row); - for($i=0; $i<$x; $i++) { - if ($autof == $i) - $res .= "NULL"; - else if ($row[$i] === NULL) - $res .= "NULL"; - // timestamp, enum etc also show as numeric, so we need to double check - else if ($field_info[$i]->numeric == 1 && $field_info[$i]->type == 'numeric') - $res .= $row[$i]; - else - $res .= $quotes . $this->db->escape($row[$i]) . $quotes; - - if ($i+1 == $x) - $res .= $this->options['bulkinsert'] ? ")" : ");\r\n"; - else - $res .= ","; - } - - // check for bulk insert mode and adjust as necessary - if ($this->options['bulkinsert'] && $this->options['bulksize'] > 0) { - $this->bulk_size += strlen($res); - if ( $this->bulk_size >= $this->options['bulksize'] ) { - $this->bulk_mode = false; - $res .= ";\r\n"; - } - } - return $res; - } -} -?> \ No newline at end of file diff --git a/lib/export/text.php b/lib/export/text.php deleted file mode 100644 index 17b452d..0000000 --- a/lib/export/text.php +++ /dev/null @@ -1,56 +0,0 @@ -db = $db; - $this->options = $options; - } - - function createHeader($field_info) { - return ''; - } - - function createFooter($field_info) { - return ''; - } - - function createLine($row, $field_info) { - $separator = ($this->options['separator'] == '\t') ? "\t" : $this->options['separator']; - $fieldwrap = "\""; - $res = ''; - $x = count($row); - for($i=0; $i<$x; $i++) { - if ($row[$i] === NULL) - $res .= "NULL"; - else if ($field_info[$i]->numeric == 1) - $res .= $row[$i]; - else - $res .= $fieldwrap . $row[$i] . $fieldwrap; - - if ($i+1 == $x) - $res .= "\r\n"; - else - $res .= $separator; - } - return $res; - } -} -?> \ No newline at end of file diff --git a/lib/export/xhtml.php b/lib/export/xhtml.php deleted file mode 100644 index 320eff4..0000000 --- a/lib/export/xhtml.php +++ /dev/null @@ -1,69 +0,0 @@ -db = $db; - $this->options = $options; - } - - function createHeader($field_info) { - $header = "\n\n" - . "\n" - . "" - . "Export Data\n" - . "\n" - . "\n\n\t
\n\t\t"; - for($i=0; $i" . htmlspecialchars($field_info[$i]->name) . "
"; - $header .= "\n\t\n\t
\n"; - return $header; - } - - function createFooter($field_info) { - return "
\n\n"; - } - - function createLine($row, $field_info) { - $x = count($row); - $res = "\t\t
\n\t\t\t"; - for($i=0; $i<$x; $i++) { - $res .= "
"; - if ($row[$i] === NULL) - $res .= "NULL"; - else if ($field_info[$i]->numeric == 1) - $res .= $row[$i]; - else - $res .= htmlspecialchars($row[$i]); - - $res .= "
"; - } - $res .= "\n\t\t
\n"; - - return $res; - } -} -?> \ No newline at end of file diff --git a/lib/export/xml.php b/lib/export/xml.php deleted file mode 100644 index aed3e6b..0000000 --- a/lib/export/xml.php +++ /dev/null @@ -1,53 +0,0 @@ -db = $db; - $this->options = $options; - } - - function createHeader($field_info) { - return "\n\n"; - } - - function createFooter($field_info) { - return ""; - } - - function createLine($row, $field_info) { - $x = count($row); - $res = "\n"; - for($i=0; $i<$x; $i++) { - $res .= "\t<" . $field_info[$i]->name . ">"; - if ($row[$i] === NULL) - $res .= "NULL"; - else if ($field_info[$i]->numeric == 1) - $res .= $row[$i]; - else - $res .= ""; - - $res .= "name . ">\n"; - } - $res .= "\n"; - return $res; - } -} -?> \ No newline at end of file diff --git a/lib/export/yaml.php b/lib/export/yaml.php deleted file mode 100644 index 9071782..0000000 --- a/lib/export/yaml.php +++ /dev/null @@ -1,53 +0,0 @@ -db = $db; - $this->options = $options; - } - - function createHeader($field_info) { - return "%YAML 1.1\n---\n# Generated by MyWebSQL\n"; - } - - function createFooter($field_info) { - return '...'; - } - - function createLine($row, $field_info) { - $x = count($row); - $res = "-\n"; - for($i=0; $i<$x; $i++) { - $res .= ' ' . $field_info[$i]->name . ': '; - if (empty($row[$i])) - $res .= "\"\""; - else if ($field_info[$i]->numeric == 1 && $field_info[$i]->type != 'binary') // needed for certain timestamp fields - $res .= $row[$i]; - else - $res .= "\"". $this->db->escape($row[$i]) . "\""; - - $res .= "\n"; - } - - return $res; - } -} -?> \ No newline at end of file diff --git a/lib/external/jcryption-legacy.php b/lib/external/jcryption-legacy.php deleted file mode 100644 index 131f944..0000000 --- a/lib/external/jcryption-legacy.php +++ /dev/null @@ -1,705 +0,0 @@ - - * @copyright 2009 Daniel Griesser - * @license http://www.php.net/license/3_0.txt PHP License 3.0 - * @version 1.0.1 - * @link http://jcryption.org/ - */ -class jCryption { - - var $_key_len; - var $_e; - - /** - * Constructor - * - * @access public - */ - function __construct($e = "\x01\x00\x01") { - $this->_e = $e; - } - - /** - * Generates the Keypair with the given keyLength the encryption key e ist set staticlly - * set to 65537 for faster encryption. - * - * @param int $keyLength - * @return array - * @access public - */ - function generateKeypair($keyLength) { - $this->_key_len = intval($keyLength); - if ($this->_key_len < 8) { - $this->_key_len = 8; - } - - // set [e] to 0x10001 (65537) - $e = $this->bin2int($this->_e); - - // generate [p], [q] and [n] - $p_len = intval(($this->_key_len + 1) / 2); - $q_len = $this->_key_len - $p_len; - $p1 = $q1 = 0; - do { - // generate prime number [$p] with length [$p_len] with the following condition: - // GCD($e, $p - 1) = 1 - - do { - $p = $this->getPrime($p_len); - $p1 = $this->dec($p); - $tmp = $this->GCD($e, $p1); - } while (!$this->isOne($tmp)); - // generate prime number [$q] with length [$q_len] with the following conditions: - // GCD($e, $q - 1) = 1 - // $q != $p - - do { - $q = $this->getPrime($q_len); - //$q = 102238965184417281201422828818276460200050705922822343263269460146519295919831; - $q1 = $this->dec($q); - $tmp = $this->GCD($e, $q1); - } while (!$this->isOne($tmp) && !$this->cmpAbs($q, $p)); - - // if (p < q), then exchange them - if ($this->cmpAbs($p, $q) < 0) { - $tmp = $p; - $p = $q; - $q = $tmp; - $tmp = $p1; - $p1 = $q1; - $q1 = $tmp; - } - // calculate n = p * q - $n = $this->mul($p, $q); - - } while ($this->bitLen($n) != $this->_key_len); - - // calculate d = 1/e mod (p - 1) * (q - 1) - $pq = $this->mul($p1, $q1); - $d = $this->invmod($e, $pq); - - // store RSA keypair attributes - $keypair = array('n'=>$n, 'e'=>$e, 'd'=>$d, 'p'=>$p, 'q'=>$q); - - return $keypair; - } - - function useKeys($keys,$keyLength) { - $this->_key_len = intval($keyLength); - if ($this->_key_len < 8) { - $this->_key_len = 8; - } - - // set [e] to 0x10001 (65537) - $e = $this->bin2int($this->_e); - - // generate [p], [q] and [n] - $p_len = intval(($this->_key_len + 1) / 2); - $q_len = $this->_key_len - $p_len; - $p1 = $q1 = 0; - do { - do { - $q = $keys[rand(0,count($keys))]; - $p = $keys[rand(0,count($keys))]; - $p1 = $this->dec($p); - $q1 = $this->dec($q); - } while (!$this->cmpAbs($q, $p)); - - - // if (p < q), then exchange them - if ($this->cmpAbs($p, $q) < 0) { - $tmp = $p; - $p = $q; - $q = $tmp; - $tmp = $p1; - $p1 = $q1; - $q1 = $tmp; - } - // calculate n = p * q - $n = $this->mul($p, $q); - - } while ($this->bitLen($n) != $this->_key_len); - - // calculate d = 1/e mod (p - 1) * (q - 1) - $pq = $this->mul($p1, $q1); - $d = $this->invmod($e, $pq); - - // store RSA keypair attributes - $keypair = array('n'=>$n, 'e'=>$e, 'd'=>$d, 'p'=>$p, 'q'=>$q); - - return $keypair; - } - - /** - * Finds greatest common divider (GCD) of $num1 and $num2 - * - * @param string $num1 - * @param string $num2 - * @return string - * @access public - */ - function GCD($num1, $num2) { - do { - $tmp = bcmod($num1, $num2); - $num1 = $num2; - $num2 = $tmp; - } while (bccomp($num2, '0')); - return $num1; - } - - /** - * Performs Miller-Rabin primality test for number $num - * with base $base. Returns true, if $num is strong pseudoprime - * by base $base. Else returns false. - * - * @param string $num - * @param string $base - * @return bool - * @access private - */ - function _millerTest($num, $base) { - if (!bccomp($num, '1')) { - // 1 is not prime ;) - return false; - } - $tmp = bcsub($num, '1'); - - $zero_bits = 0; - while (!bccomp(bcmod($tmp, '2'), '0')) { - $zero_bits++; - $tmp = bcdiv($tmp, '2'); - } - - $tmp = $this->powmod($base, $tmp, $num); - if (!bccomp($tmp, '1')) { - // $num is probably prime - return true; - } - - while ($zero_bits--) { - if (!bccomp(bcadd($tmp, '1'), $num)) { - // $num is probably prime - return true; - } - $tmp = $this->powmod($tmp, '2', $num); - } - // $num is composite - return false; - } - - /** - * Transforms binary representation of large integer into its native form. - * - * Example of transformation: - * $str = "\x12\x34\x56\x78\x90"; - * $num = 0x9078563412; - * - * @param string $str - * @return string - * @access public - */ - function bin2int($str) { - $result = '0'; - $n = strlen($str); - do { - $result = bcadd(bcmul($result, '256'), ord($str {--$n} )); - } while ($n > 0); - return $result; - } - - /** - * Transforms large integer into binary representation. - * - * Example of transformation: - * $num = 0x9078563412; - * $str = "\x12\x34\x56\x78\x90"; - * - * @param string $num - * @return string - * @access public - */ - function int2bin($num) { - $result = ''; - do { - $result .= chr(bcmod($num, '256')); - $num = bcdiv($num, '256'); - } while (bccomp($num, '0')); - return $result; - } - - /** - * Calculates pow($num, $pow) (mod $mod) - * - * @param string $num - * @param string $pow - * @param string $mod - * @return string - * @access public - */ - function powmod($num, $pow, $mod) { - if (function_exists('bcpowmod')) { - // bcpowmod is only available under PHP5 - return bcpowmod($num, $pow, $mod); - } - - // emulate bcpowmod - $result = '1'; - do { - if (!bccomp(bcmod($pow, '2'), '1')) { - $result = bcmod(bcmul($result, $num), $mod); - } - $num = bcmod(bcpow($num, '2'), $mod); - $pow = bcdiv($pow, '2'); - } while (bccomp($pow, '0')); - return $result; - } - - /** - * Calculates $num1 * $num2 - * - * @param string $num1 - * @param string $num2 - * @return string - * @access public - */ - function mul($num1, $num2) { - return bcmul($num1, $num2); - } - - /** - * Calculates $num1 % $num2 - * - * @param string $num1 - * @param string $num2 - * @return string - * @access public - */ - function mod($num1, $num2) { - return bcmod($num1, $num2); - } - - /** - * Compares abs($num1) to abs($num2). - * Returns: - * -1, if abs($num1) < abs($num2) - * 0, if abs($num1) == abs($num2) - * 1, if abs($num1) > abs($num2) - * - * @param string $num1 - * @param string $num2 - * @return int - * @access public - */ - function cmpAbs($num1, $num2) { - return bccomp($num1, $num2); - } - - /** - * Tests $num on primality. Returns true, if $num is strong pseudoprime. - * Else returns false. - * - * @param string $num - * @return bool - * @access private - */ - function isPrime($num) { - static $primes = null; - static $primes_cnt = 0; - if (is_null($primes)) { - // generate all primes up to 10000 - $primes = array(); - for ($i = 0; $i < 10000; $i++) { - $primes[] = $i; - } - $primes[0] = $primes[1] = 0; - for ($i = 2; $i < 100; $i++) { - while (!$primes[$i]) { - $i++; - } - $j = $i; - for ($j += $i; $j < 10000; $j += $i) { - $primes[$j] = 0; - } - } - $j = 0; - for ($i = 0; $i < 10000; $i++) { - if ($primes[$i]) { - $primes[$j++] = $primes[$i]; - } - } - $primes_cnt = $j; - } - - // try to divide number by small primes - for ($i = 0; $i < $primes_cnt; $i++) { - if (bccomp($num, $primes[$i]) <= 0) { - // number is prime - return true; - } - if (!bccomp(bcmod($num, $primes[$i]), '0')) { - // number divides by $primes[$i] - return false; - } - } - - /* - try Miller-Rabin's probable-primality test for first - 7 primes as bases - */ - for ($i = 0; $i < 7; $i++) { - if (!$this->_millerTest($num, $primes[$i])) { - // $num is composite - return false; - } - } - // $num is strong pseudoprime - return true; - } - - /** - * Produces a better random number - * for seeding mt_rand() - * - * @access private - */ - function _makeSeed() { - return hexdec(sha1(sha1(microtime()*mt_rand()).md5(microtime()*mt_rand()))); - } - - /** - * Generates prime number with length $bits_cnt - * - * @param int $bits_cnt - * @access public - */ - function getPrime($bits_cnt) { - $bytes_n = intval($bits_cnt / 8); - $bits_n = $bits_cnt % 8; - do { - $str = ''; - mt_srand($this->_makeSeed()); - for ($i = 0; $i < $bytes_n; $i++) { - $str .= chr(sha1(mt_rand() * microtime()) & 0xff); - } - $n = mt_rand() * microtime() & 0xff; - - $n |= 0x80; - $n >>= 8 - $bits_n; - $str .= chr($n); - $num = $this->bin2int($str); - - // search for the next closest prime number after [$num] - if (!bccomp(bcmod($num, '2'), '0')) { - $num = bcadd($num, '1'); - } - while (!$this->isPrime($num)) { - $num = bcadd($num, '2'); - } - - } while ($this->bitLen($num) != $bits_cnt); - return $num; - } - - /** - * Calculates $num - 1 - * - * @param string $num - * @return string - * @access public - */ - function dec($num) { - return bcsub($num, '1'); - } - - /** - * Returns true, if $num is equal to one. Else returns false - * - * @param string $num - * @return bool - * @access public - */ - function isOne($num) { - return !bccomp($num, '1'); - } - - /** - * Finds inverse number $inv for $num by modulus $mod, such as: - * $inv * $num = 1 (mod $mod) - * - * @param string $num - * @param string $mod - * @return string - * @access public - */ - function invmod($num, $mod) { - $x = '1'; - $y = '0'; - $num1 = $mod; - do { - $tmp = bcmod($num, $num1); - $q = bcdiv($num, $num1); - $num = $num1; - $num1 = $tmp; - - $tmp = bcsub($x, bcmul($y, $q)); - $x = $y; - $y = $tmp; - } while (bccomp($num1, '0')); - if (bccomp($x, '0') < 0) { - $x = bcadd($x, $mod); - } - return $x; - } - - /** - * Returns bit length of number $num - * - * @param string $num - * @return int - * @access public - */ - function bitLen($num) { - $tmp = $this->int2bin($num); - $bit_len = strlen($tmp) * 8; - $tmp = ord($tmp {strlen($tmp) - 1} ); - if (!$tmp) { - $bit_len -= 8; - } else { - while (!($tmp & 0x80)) { - $bit_len--; - $tmp <<= 1; - } - } - return $bit_len; - } - - /** - * Calculates bitwise or of $num1 and $num2, - * starting from bit $start_pos for number $num1 - * - * @param string $num1 - * @param string $num2 - * @param int $start_pos - * @return string - * @access public - */ - function bitOr($num1, $num2, $start_pos) { - $start_byte = intval($start_pos / 8); - $start_bit = $start_pos % 8; - $tmp1 = $this->int2bin($num1); - - $num2 = bcmul($num2, 1 << $start_bit); - $tmp2 = $this->int2bin($num2); - if ($start_byte < strlen($tmp1)) { - $tmp2 |= substr($tmp1, $start_byte); - $tmp1 = substr($tmp1, 0, $start_byte).$tmp2; - } else { - $tmp1 = str_pad($tmp1, $start_byte, "\0").$tmp2; - } - return $this->bin2int($tmp1); - } - - /** - * Returns part of number $num, starting at bit - * position $start with length $length - * - * @param string $num - * @param int start - * @param int length - * @return string - * @access public - */ - function subint($num, $start, $length) { - $start_byte = intval($start / 8); - $start_bit = $start % 8; - $byte_length = intval($length / 8); - $bit_length = $length % 8; - if ($bit_length) { - $byte_length++; - } - $num = bcdiv($num, 1 << $start_bit); - $tmp = substr($this->int2bin($num), $start_byte, $byte_length); - $tmp = str_pad($tmp, $byte_length, "\0"); - $tmp = substr_replace($tmp, $tmp {$byte_length - 1} & chr(0xff >> (8 - $bit_length)), $byte_length - 1, 1); - return $this->bin2int($tmp); - } - - /** - * Converts a hex string to bigint string - * - * @param string $hex - * @return string - * @access public - */ - function hex2bint($hex) { - $result = '0'; - for ($i = 0; $i < strlen($hex); $i++) { - $result = bcmul($result, '16'); - if ($hex[$i] >= '0' && $hex[$i] <= '9') { - $result = bcadd($result, $hex[$i]); - } else if ($hex[$i] >= 'a' && $hex[$i] <= 'f') { - $result = bcadd($result, '1'.('0' + (ord($hex[$i]) - ord('a')))); - } else if ($hex[$i] >= 'A' && $hex[$i] <= 'F') { - $result = bcadd($result, '1'.('0' + (ord($hex[$i]) - ord('A')))); - } - } - return $result; - } - - /** - * Converts a hex string to int - * - * @param string $hex - * @return int - * @access public - */ - function hex2int($hex) { - $result = 0; - for ($i = 0; $i < strlen($hex); $i++) { - $result *= 16; - if ($hex[$i] >= '0' && $hex[$i] <= '9') { - $result += ord($hex[$i]) - ord('0'); - } else if ($hex[$i] >= 'a' && $hex[$i] <= 'f') { - $result += 10 + (ord($hex[$i]) - ord('a')); - } else if ($hex[$i] >= 'A' && $hex[$i] <= 'F') { - $result += 10 + (ord($hex[$i]) - ord('A')); - } - } - return $result; - } - - /** - * Converts a bigint string to the ascii code - * - * @param string $bigint - * @return string - * @access public - */ - function bint2char($bigint) { - $message = ''; - while (bccomp($bigint, '0') != 0) { - $ascii = bcmod($bigint, '256'); - $bigint = bcdiv($bigint, '256', 0); - $message .= chr($ascii); - } - return $message; - } - - /** - * Removes the redundacy in den encrypted string - * - * @param string $string - * @return mixed - * @access public - */ - function redundacyCheck($string) { - $r1 = substr($string, 0, 2); - $r2 = substr($string, 2); - $check = $this->hex2int($r1); - $value = $r2; - $sum = 0; - for ($i = 0; $i < strlen($value); $i++) { - $sum += ord($value[$i]); - } - if ($check == ($sum & 0xFF)) { - return $value; - } else { - return NULL; - } - } - - /** - * Decrypts a given string with the $dec_key and the $enc_mod - * - * @param string $encrypted - * @param int $dec_key - * @param int $enc_mod - * @return string - * @access public - */ - function decrypt($encrypted, $dec_key, $enc_mod) { - $blocks = explode(' ', $encrypted); - $result = ""; - $max = count($blocks); - for ($i = 0; $i < $max; $i++) { - $dec = $this->hex2bint($blocks[$i]); - $dec = $this->powmod($dec, $dec_key, $enc_mod); - $ascii = $this->bint2char($dec); - $result .= $ascii; - } - return $this->redundacyCheck($result); - } - - /** - * Converts a given decimal string to any base between 2 and 36 - * - * @param string $decimal - * @param int $base - * @return string - */ - function dec2string($decimal, $base) { - - $string = null; - - $base = (int) $base; - if ($base < 2 | $base > 36 | $base == 10) { - echo 'BASE must be in the range 2-9 or 11-36'; - exit; - } - - $charset = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'; - - $charset = substr($charset, 0, $base); - - do { - $remainder = bcmod($decimal, $base); - $char = substr($charset, $remainder, 1); - $string = "$char$string"; - $decimal = bcdiv(bcsub($decimal, $remainder), $base); - } while ($decimal > 0); - - return strtolower($string); - } - - function getE() { - return $this->_e; - } - - function generatePrime($length) { - $this->_key_len = intval($length); - if ($this->_key_len < 8) { - $this->_key_len = 8; - } - - $e = $this->bin2int("\x01\x00\x01"); - - $p_len = intval(($this->_key_len + 1) / 2); - do { - $p = $this->getPrime($p_len); - $p1 = $this->dec($p); - $tmp = $this->GCD($e, $p1); - } while (!$this->isOne($tmp)); - - return $p; - } - -} - -?> diff --git a/lib/external/jcryption.php b/lib/external/jcryption.php deleted file mode 100644 index 9d7876a..0000000 --- a/lib/external/jcryption.php +++ /dev/null @@ -1,342 +0,0 @@ - -* @copyright 2011 Daniel Griesser -* @license http://www.php.net/license/3_0.txt PHP License 3.0 -* @version 1.2 -* @link http://jcryption.org/ -*/ -class jCryption { - - private $_key_len; - private $_e; - - public function __construct($e="\x01\x00\x01") { - $this->_e = $e; - } - - /** - * Generates the Keypair with the given keyLength the encryption key e ist set staticlly - * set to 65537 for faster encryption. - * - * @param int $keyLength - * @return array - */ - public function generateKeypair($keyLength) { - $this->_key_len = intval($keyLength); - if ($this->_key_len < 8) { - $this->_key_len = 8; - } - // set [e] to 0x10001 (65537) - $e = $this->_bin2int($this->_e); - // generate [p], [q] and [n] - $p_len = intval(($this->_key_len + 1) / 2); - $q_len = $this->_key_len - $p_len; - $p1 = $q1 = 0; - do { - // generate prime number [$p] with length [$p_len] with the following condition: - // GCD($e, $p - 1) = 1 - do { - $p = $this->getPrime($p_len); - $p1 = bcsub($p, '1'); - $tmp = $this->_gcd($e, $p1); - } while (bccomp($tmp, '1')); - // generate prime number [$q] with length [$q_len] with the following conditions: - // GCD($e, $q - 1) = 1 - // $q != $p - do { - $q = $this->getPrime($q_len); - $q1 = bcsub($q, '1'); - $tmp = $this->_gcd($e, $q1); - } while (bccomp($tmp, '1') && !bccomp($q, $p)); - - // if (p < q), then exchange them - if (bccomp($p, $q) < 0) { - $tmp = $p; - $p = $q; - $q = $tmp; - $tmp = $p1; - $p1 = $q1; - $q1 = $tmp; - } - // calculate n = p * q - $n = bcmul($p, $q); - - } while ($this->_bitLen($n) != $this->_key_len); - - // calculate d = 1/e mod (p - 1) * (q - 1) - $pq = bcmul($p1, $q1); - $d = $this->_invmod($e, $pq); - - // store RSA keypair attributes - return array('n' => $n, 'e' => $e, 'd' => $d, 'p' => $p, 'q' => $q); - } - - /** - * Finds greatest common divider (GCD) of $num1 and $num2 - * - * @param string $num1 - * @param string $num2 - * @return string - */ - private function _gcd($num1, $num2) { - do { - $tmp = bcmod($num1, $num2); - $num1 = $num2; - $num2 = $tmp; - } while (bccomp($num2, '0')); - return $num1; - } - - /** - * Transforms binary representation of large integer into its native form. - * - * Example of transformation: - * $str = "\x12\x34\x56\x78\x90"; - * $num = 0x9078563412; - * - * @param string $str - * @return string - * @access public - */ - private function _bin2int($str) { - $result = '0'; - $n = strlen($str); - do { - $result = bcadd(bcmul($result, '256'), ord($str [--$n] )); - } while ($n > 0); - return $result; - } - - /** - * Transforms large integer into binary representation. - * - * Example of transformation: - * $num = 0x9078563412; - * $str = "\x12\x34\x56\x78\x90"; - * - * @param string $num - * @return string - * @access public - */ - private function _int2bin($num) { - $result = ''; - do { - $result .= chr(bcmod($num, '256')); - $num = bcdiv($num, '256'); - } while (bccomp($num, '0')); - return $result; - } - - /** - * Generates prime number with length $bits_cnt - * - * @param int $bits_cnt - */ - public function getPrime($bits_cnt) { - $bytes_n = intval($bits_cnt / 8); - do { - $str = ''; - $str = openssl_random_pseudo_bytes($bytes_n); - $num = $this->_bin2int($str); - $num = gmp_strval(gmp_nextprime($num)); - } while ($this->_bitLen($num) != $bits_cnt); - return $num; - } - - /** - * Finds inverse number $inv for $num by modulus $mod, such as: - * $inv * $num = 1 (mod $mod) - * - * @param string $num - * @param string $mod - * @return string - */ - private function _invmod($num, $mod) { - $x = '1'; - $y = '0'; - $num1 = $mod; - do { - $tmp = bcmod($num, $num1); - $q = bcdiv($num, $num1); - $num = $num1; - $num1 = $tmp; - $tmp = bcsub($x, bcmul($y, $q)); - $x = $y; - $y = $tmp; - } while (bccomp($num1, '0')); - if (bccomp($x, '0') < 0) { - $x = bcadd($x, $mod); - } - return $x; - } - - /** - * Returns bit length of number $num - * - * @param string $num - * @return int - */ - private function _bitLen($num) { - $tmp = $this->_int2bin($num); - $bit_len = strlen($tmp) * 8; - $tmp = ord($tmp [strlen($tmp) - 1] ); - if (!$tmp) { - $bit_len -= 8; - } else { - while (!($tmp & 0x80)) { - $bit_len--; - $tmp <<= 1; - } - } - return $bit_len; - } - - /** - * Converts a hex string to bigint string - * - * @param string $hex - * @return string - */ - private function _hex2bint($hex) { - $result = '0'; - for ($i=0; $i < strlen($hex); $i++) { - $result = bcmul($result, '16'); - if ($hex[$i] >= '0' && $hex[$i] <= '9') { - $result = bcadd($result, $hex[$i]); - } else if ($hex[$i] >= 'a' && $hex[$i] <= 'f') { - $result = bcadd($result, '1' . ('0' + (ord($hex[$i]) - ord('a')))); - } else if ($hex[$i] >= 'A' && $hex[$i] <= 'F') { - $result = bcadd($result, '1' . ('0' + (ord($hex[$i]) - ord('A')))); - } - } - return $result; - } - - /** - * Converts a hex string to int - * - * @param string $hex - * @return int - * @access public - */ - private function _hex2int($hex) { - $result = 0; - for ($i=0; $i < strlen($hex); $i++) { - $result *= 16; - if ($hex[$i] >= '0' && $hex[$i] <= '9') { - $result += ord($hex[$i]) - ord('0'); - } else if ($hex[$i] >= 'a' && $hex[$i] <= 'f') { - $result += 10 + (ord($hex[$i]) - ord('a')); - } else if ($hex[$i] >= 'A' && $hex[$i] <= 'F') { - $result += 10 + (ord($hex[$i]) - ord('A')); - } - } - return $result; - } - - /** - * Converts a bigint string to the ascii code - * - * @param string $bigint - * @return string - */ - private function _bint2char($bigint) { - $message = ''; - while (bccomp($bigint, '0') != 0) { - $ascii = bcmod($bigint, '256'); - $bigint = bcdiv($bigint, '256', 0); - $message .= chr($ascii); - } - return $message; - } - - /** - * Removes the redundacy in den encrypted string - * - * @param string $string - * @return mixed - */ - private function _redundacyCheck($string) { - $r1 = substr($string, 0, 2); - $r2 = substr($string, 2); - $check = $this->_hex2int($r1); - $value = $r2; - $sum = 0; - for ($i=0; $i < strlen($value); $i++) { - $sum += ord($value[$i]); - } - if ($check == ($sum & 0xFF)) { - return $value; - } else { - return NULL; - } - } - - /** - * Decrypts a given string with the $dec_key and the $enc_mod - * - * @param string $encrypted - * @param int $dec_key - * @param int $enc_mod - * @return string - */ - public function decrypt($encrypted, $dec_key, $enc_mod) { - //replaced split with explode - $blocks = explode(' ', $encrypted); - $result = ""; - $max = count($blocks); - for ($i=0; $i < $max; $i++) { - $dec = $this->_hex2bint($blocks[$i]); - $dec = bcpowmod($dec, $dec_key, $enc_mod); - $ascii = $this->_bint2char($dec); - $result .= $ascii; - } - return $this->_redundacyCheck($result); - } - - /** - * Converts a given decimal string to any base between 2 and 36 - * - * @param string $decimal - * @param int $base - * @return string - */ - public function dec2string($decimal, $base) { - $string = null; - $base = (int) $base; - if ($base < 2 | $base > 36 | $base == 10) { - echo 'BASE must be in the range 2-9 or 11-36'; - exit; - } - - $charset = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'; - $charset = substr($charset, 0, $base); - - do { - $remainder = bcmod($decimal, $base); - $char = substr($charset, $remainder, 1); - $string = $char . $string; - $decimal = bcdiv(bcsub($decimal, $remainder), $base); - } while ($decimal > 0); - - return strtolower($string); - } -} - diff --git a/lib/external/rijndael.php b/lib/external/rijndael.php deleted file mode 100644 index fdc191d..0000000 --- a/lib/external/rijndael.php +++ /dev/null @@ -1,1242 +0,0 @@ - - * setKey('abcdefghijklmnop'); - * - * $size = 10 * 1024; - * $plaintext = ''; - * for ($i = 0; $i < $size; $i++) { - * $plaintext.= 'a'; - * } - * - * echo $rijndael->decrypt($rijndael->encrypt($plaintext)); - * ?> - * - * - * LICENSE: This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library 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 - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, - * MA 02111-1307 USA - * - * @category Crypt - * @package Crypt_Rijndael - * @author Jim Wigginton - * @copyright MMVIII Jim Wigginton - * @license http://www.gnu.org/licenses/lgpl.txt - * @version $Id: Rijndael.php,v 1.12 2010/02/09 06:10:26 terrafrost Exp $ - * @link http://phpseclib.sourceforge.net - */ - -/**#@+ - * @access public - * @see Crypt_Rijndael::encrypt() - * @see Crypt_Rijndael::decrypt() - */ -/** - * Encrypt / decrypt using the Counter mode. - * - * Set to -1 since that's what Crypt/Random.php uses to index the CTR mode. - * - * @link http://en.wikipedia.org/wiki/Block_cipher_modes_of_operation#Counter_.28CTR.29 - */ -define('CRYPT_RIJNDAEL_MODE_CTR', -1); -/** - * Encrypt / decrypt using the Electronic Code Book mode. - * - * @link http://en.wikipedia.org/wiki/Block_cipher_modes_of_operation#Electronic_codebook_.28ECB.29 - */ -define('CRYPT_RIJNDAEL_MODE_ECB', 1); -/** - * Encrypt / decrypt using the Code Book Chaining mode. - * - * @link http://en.wikipedia.org/wiki/Block_cipher_modes_of_operation#Cipher-block_chaining_.28CBC.29 - */ -define('CRYPT_RIJNDAEL_MODE_CBC', 2); -/**#@-*/ - -/**#@+ - * @access private - * @see Crypt_Rijndael::Crypt_Rijndael() - */ -/** - * Toggles the internal implementation - */ -define('CRYPT_RIJNDAEL_MODE_INTERNAL', 1); -/** - * Toggles the mcrypt implementation - */ -define('CRYPT_RIJNDAEL_MODE_MCRYPT', 2); -/**#@-*/ - -/** - * Pure-PHP implementation of Rijndael. - * - * @author Jim Wigginton - * @version 0.1.0 - * @access public - * @package Crypt_Rijndael - */ -class Crypt_Rijndael { - /** - * The Encryption Mode - * - * @see Crypt_Rijndael::Crypt_Rijndael() - * @var Integer - * @access private - */ - var $mode; - - /** - * The Key - * - * @see Crypt_Rijndael::setKey() - * @var String - * @access private - */ - var $key = "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"; - - /** - * The Initialization Vector - * - * @see Crypt_Rijndael::setIV() - * @var String - * @access private - */ - var $iv = ''; - - /** - * A "sliding" Initialization Vector - * - * @see Crypt_Rijndael::enableContinuousBuffer() - * @var String - * @access private - */ - var $encryptIV = ''; - - /** - * A "sliding" Initialization Vector - * - * @see Crypt_Rijndael::enableContinuousBuffer() - * @var String - * @access private - */ - var $decryptIV = ''; - - /** - * Continuous Buffer status - * - * @see Crypt_Rijndael::enableContinuousBuffer() - * @var Boolean - * @access private - */ - var $continuousBuffer = false; - - /** - * Padding status - * - * @see Crypt_Rijndael::enablePadding() - * @var Boolean - * @access private - */ - var $padding = true; - - /** - * Does the key schedule need to be (re)calculated? - * - * @see setKey() - * @see setBlockLength() - * @see setKeyLength() - * @var Boolean - * @access private - */ - var $changed = true; - - /** - * Has the key length explicitly been set or should it be derived from the key, itself? - * - * @see setKeyLength() - * @var Boolean - * @access private - */ - var $explicit_key_length = false; - - /** - * The Key Schedule - * - * @see _setup() - * @var Array - * @access private - */ - var $w; - - /** - * The Inverse Key Schedule - * - * @see _setup() - * @var Array - * @access private - */ - var $dw; - - /** - * The Block Length - * - * @see setBlockLength() - * @var Integer - * @access private - * @internal The max value is 32, the min value is 16. All valid values are multiples of 4. Exists in conjunction with - * $Nb because we need this value and not $Nb to pad strings appropriately. - */ - var $block_size = 16; - - /** - * The Block Length divided by 32 - * - * @see setBlockLength() - * @var Integer - * @access private - * @internal The max value is 256 / 32 = 8, the min value is 128 / 32 = 4. Exists in conjunction with $block_size - * because the encryption / decryption / key schedule creation requires this number and not $block_size. We could - * derive this from $block_size or vice versa, but that'd mean we'd have to do multiple shift operations, so in lieu - * of that, we'll just precompute it once. - * - */ - var $Nb = 4; - - /** - * The Key Length - * - * @see setKeyLength() - * @var Integer - * @access private - * @internal The max value is 256 / 8 = 32, the min value is 128 / 8 = 16. Exists in conjunction with $key_size - * because the encryption / decryption / key schedule creation requires this number and not $key_size. We could - * derive this from $key_size or vice versa, but that'd mean we'd have to do multiple shift operations, so in lieu - * of that, we'll just precompute it once. - */ - var $key_size = 16; - - /** - * The Key Length divided by 32 - * - * @see setKeyLength() - * @var Integer - * @access private - * @internal The max value is 256 / 32 = 8, the min value is 128 / 32 = 4 - */ - var $Nk = 4; - - /** - * The Number of Rounds - * - * @var Integer - * @access private - * @internal The max value is 14, the min value is 10. - */ - var $Nr; - - /** - * Shift offsets - * - * @var Array - * @access private - */ - var $c; - - /** - * Precomputed mixColumns table - * - * @see Crypt_Rijndael() - * @var Array - * @access private - */ - var $t0; - - /** - * Precomputed mixColumns table - * - * @see Crypt_Rijndael() - * @var Array - * @access private - */ - var $t1; - - /** - * Precomputed mixColumns table - * - * @see Crypt_Rijndael() - * @var Array - * @access private - */ - var $t2; - - /** - * Precomputed mixColumns table - * - * @see Crypt_Rijndael() - * @var Array - * @access private - */ - var $t3; - - /** - * Precomputed invMixColumns table - * - * @see Crypt_Rijndael() - * @var Array - * @access private - */ - var $dt0; - - /** - * Precomputed invMixColumns table - * - * @see Crypt_Rijndael() - * @var Array - * @access private - */ - var $dt1; - - /** - * Precomputed invMixColumns table - * - * @see Crypt_Rijndael() - * @var Array - * @access private - */ - var $dt2; - - /** - * Precomputed invMixColumns table - * - * @see Crypt_Rijndael() - * @var Array - * @access private - */ - var $dt3; - - /** - * Default Constructor. - * - * Determines whether or not the mcrypt extension should be used. $mode should only, at present, be - * CRYPT_RIJNDAEL_MODE_ECB or CRYPT_RIJNDAEL_MODE_CBC. If not explictly set, CRYPT_RIJNDAEL_MODE_CBC will be used. - * - * @param optional Integer $mode - * @return Crypt_Rijndael - * @access public - */ - function __construct($mode = CRYPT_RIJNDAEL_MODE_CBC) - { - switch ($mode) { - case CRYPT_RIJNDAEL_MODE_ECB: - case CRYPT_RIJNDAEL_MODE_CBC: - case CRYPT_RIJNDAEL_MODE_CTR: - $this->mode = $mode; - break; - default: - $this->mode = CRYPT_RIJNDAEL_MODE_CBC; - } - - $t3 = &$this->t3; - $t2 = &$this->t2; - $t1 = &$this->t1; - $t0 = &$this->t0; - - $dt3 = &$this->dt3; - $dt2 = &$this->dt2; - $dt1 = &$this->dt1; - $dt0 = &$this->dt0; - - // according to (section 5.2.1), - // precomputed tables can be used in the mixColumns phase. in that example, they're assigned t0...t3, so - // those are the names we'll use. - $t3 = array( - 0x6363A5C6, 0x7C7C84F8, 0x777799EE, 0x7B7B8DF6, 0xF2F20DFF, 0x6B6BBDD6, 0x6F6FB1DE, 0xC5C55491, - 0x30305060, 0x01010302, 0x6767A9CE, 0x2B2B7D56, 0xFEFE19E7, 0xD7D762B5, 0xABABE64D, 0x76769AEC, - 0xCACA458F, 0x82829D1F, 0xC9C94089, 0x7D7D87FA, 0xFAFA15EF, 0x5959EBB2, 0x4747C98E, 0xF0F00BFB, - 0xADADEC41, 0xD4D467B3, 0xA2A2FD5F, 0xAFAFEA45, 0x9C9CBF23, 0xA4A4F753, 0x727296E4, 0xC0C05B9B, - 0xB7B7C275, 0xFDFD1CE1, 0x9393AE3D, 0x26266A4C, 0x36365A6C, 0x3F3F417E, 0xF7F702F5, 0xCCCC4F83, - 0x34345C68, 0xA5A5F451, 0xE5E534D1, 0xF1F108F9, 0x717193E2, 0xD8D873AB, 0x31315362, 0x15153F2A, - 0x04040C08, 0xC7C75295, 0x23236546, 0xC3C35E9D, 0x18182830, 0x9696A137, 0x05050F0A, 0x9A9AB52F, - 0x0707090E, 0x12123624, 0x80809B1B, 0xE2E23DDF, 0xEBEB26CD, 0x2727694E, 0xB2B2CD7F, 0x75759FEA, - 0x09091B12, 0x83839E1D, 0x2C2C7458, 0x1A1A2E34, 0x1B1B2D36, 0x6E6EB2DC, 0x5A5AEEB4, 0xA0A0FB5B, - 0x5252F6A4, 0x3B3B4D76, 0xD6D661B7, 0xB3B3CE7D, 0x29297B52, 0xE3E33EDD, 0x2F2F715E, 0x84849713, - 0x5353F5A6, 0xD1D168B9, 0x00000000, 0xEDED2CC1, 0x20206040, 0xFCFC1FE3, 0xB1B1C879, 0x5B5BEDB6, - 0x6A6ABED4, 0xCBCB468D, 0xBEBED967, 0x39394B72, 0x4A4ADE94, 0x4C4CD498, 0x5858E8B0, 0xCFCF4A85, - 0xD0D06BBB, 0xEFEF2AC5, 0xAAAAE54F, 0xFBFB16ED, 0x4343C586, 0x4D4DD79A, 0x33335566, 0x85859411, - 0x4545CF8A, 0xF9F910E9, 0x02020604, 0x7F7F81FE, 0x5050F0A0, 0x3C3C4478, 0x9F9FBA25, 0xA8A8E34B, - 0x5151F3A2, 0xA3A3FE5D, 0x4040C080, 0x8F8F8A05, 0x9292AD3F, 0x9D9DBC21, 0x38384870, 0xF5F504F1, - 0xBCBCDF63, 0xB6B6C177, 0xDADA75AF, 0x21216342, 0x10103020, 0xFFFF1AE5, 0xF3F30EFD, 0xD2D26DBF, - 0xCDCD4C81, 0x0C0C1418, 0x13133526, 0xECEC2FC3, 0x5F5FE1BE, 0x9797A235, 0x4444CC88, 0x1717392E, - 0xC4C45793, 0xA7A7F255, 0x7E7E82FC, 0x3D3D477A, 0x6464ACC8, 0x5D5DE7BA, 0x19192B32, 0x737395E6, - 0x6060A0C0, 0x81819819, 0x4F4FD19E, 0xDCDC7FA3, 0x22226644, 0x2A2A7E54, 0x9090AB3B, 0x8888830B, - 0x4646CA8C, 0xEEEE29C7, 0xB8B8D36B, 0x14143C28, 0xDEDE79A7, 0x5E5EE2BC, 0x0B0B1D16, 0xDBDB76AD, - 0xE0E03BDB, 0x32325664, 0x3A3A4E74, 0x0A0A1E14, 0x4949DB92, 0x06060A0C, 0x24246C48, 0x5C5CE4B8, - 0xC2C25D9F, 0xD3D36EBD, 0xACACEF43, 0x6262A6C4, 0x9191A839, 0x9595A431, 0xE4E437D3, 0x79798BF2, - 0xE7E732D5, 0xC8C8438B, 0x3737596E, 0x6D6DB7DA, 0x8D8D8C01, 0xD5D564B1, 0x4E4ED29C, 0xA9A9E049, - 0x6C6CB4D8, 0x5656FAAC, 0xF4F407F3, 0xEAEA25CF, 0x6565AFCA, 0x7A7A8EF4, 0xAEAEE947, 0x08081810, - 0xBABAD56F, 0x787888F0, 0x25256F4A, 0x2E2E725C, 0x1C1C2438, 0xA6A6F157, 0xB4B4C773, 0xC6C65197, - 0xE8E823CB, 0xDDDD7CA1, 0x74749CE8, 0x1F1F213E, 0x4B4BDD96, 0xBDBDDC61, 0x8B8B860D, 0x8A8A850F, - 0x707090E0, 0x3E3E427C, 0xB5B5C471, 0x6666AACC, 0x4848D890, 0x03030506, 0xF6F601F7, 0x0E0E121C, - 0x6161A3C2, 0x35355F6A, 0x5757F9AE, 0xB9B9D069, 0x86869117, 0xC1C15899, 0x1D1D273A, 0x9E9EB927, - 0xE1E138D9, 0xF8F813EB, 0x9898B32B, 0x11113322, 0x6969BBD2, 0xD9D970A9, 0x8E8E8907, 0x9494A733, - 0x9B9BB62D, 0x1E1E223C, 0x87879215, 0xE9E920C9, 0xCECE4987, 0x5555FFAA, 0x28287850, 0xDFDF7AA5, - 0x8C8C8F03, 0xA1A1F859, 0x89898009, 0x0D0D171A, 0xBFBFDA65, 0xE6E631D7, 0x4242C684, 0x6868B8D0, - 0x4141C382, 0x9999B029, 0x2D2D775A, 0x0F0F111E, 0xB0B0CB7B, 0x5454FCA8, 0xBBBBD66D, 0x16163A2C - ); - - $dt3 = array( - 0xF4A75051, 0x4165537E, 0x17A4C31A, 0x275E963A, 0xAB6BCB3B, 0x9D45F11F, 0xFA58ABAC, 0xE303934B, - 0x30FA5520, 0x766DF6AD, 0xCC769188, 0x024C25F5, 0xE5D7FC4F, 0x2ACBD7C5, 0x35448026, 0x62A38FB5, - 0xB15A49DE, 0xBA1B6725, 0xEA0E9845, 0xFEC0E15D, 0x2F7502C3, 0x4CF01281, 0x4697A38D, 0xD3F9C66B, - 0x8F5FE703, 0x929C9515, 0x6D7AEBBF, 0x5259DA95, 0xBE832DD4, 0x7421D358, 0xE0692949, 0xC9C8448E, - 0xC2896A75, 0x8E7978F4, 0x583E6B99, 0xB971DD27, 0xE14FB6BE, 0x88AD17F0, 0x20AC66C9, 0xCE3AB47D, - 0xDF4A1863, 0x1A3182E5, 0x51336097, 0x537F4562, 0x6477E0B1, 0x6BAE84BB, 0x81A01CFE, 0x082B94F9, - 0x48685870, 0x45FD198F, 0xDE6C8794, 0x7BF8B752, 0x73D323AB, 0x4B02E272, 0x1F8F57E3, 0x55AB2A66, - 0xEB2807B2, 0xB5C2032F, 0xC57B9A86, 0x3708A5D3, 0x2887F230, 0xBFA5B223, 0x036ABA02, 0x16825CED, - 0xCF1C2B8A, 0x79B492A7, 0x07F2F0F3, 0x69E2A14E, 0xDAF4CD65, 0x05BED506, 0x34621FD1, 0xA6FE8AC4, - 0x2E539D34, 0xF355A0A2, 0x8AE13205, 0xF6EB75A4, 0x83EC390B, 0x60EFAA40, 0x719F065E, 0x6E1051BD, - 0x218AF93E, 0xDD063D96, 0x3E05AEDD, 0xE6BD464D, 0x548DB591, 0xC45D0571, 0x06D46F04, 0x5015FF60, - 0x98FB2419, 0xBDE997D6, 0x4043CC89, 0xD99E7767, 0xE842BDB0, 0x898B8807, 0x195B38E7, 0xC8EEDB79, - 0x7C0A47A1, 0x420FE97C, 0x841EC9F8, 0x00000000, 0x80868309, 0x2BED4832, 0x1170AC1E, 0x5A724E6C, - 0x0EFFFBFD, 0x8538560F, 0xAED51E3D, 0x2D392736, 0x0FD9640A, 0x5CA62168, 0x5B54D19B, 0x362E3A24, - 0x0A67B10C, 0x57E70F93, 0xEE96D2B4, 0x9B919E1B, 0xC0C54F80, 0xDC20A261, 0x774B695A, 0x121A161C, - 0x93BA0AE2, 0xA02AE5C0, 0x22E0433C, 0x1B171D12, 0x090D0B0E, 0x8BC7ADF2, 0xB6A8B92D, 0x1EA9C814, - 0xF1198557, 0x75074CAF, 0x99DDBBEE, 0x7F60FDA3, 0x01269FF7, 0x72F5BC5C, 0x663BC544, 0xFB7E345B, - 0x4329768B, 0x23C6DCCB, 0xEDFC68B6, 0xE4F163B8, 0x31DCCAD7, 0x63851042, 0x97224013, 0xC6112084, - 0x4A247D85, 0xBB3DF8D2, 0xF93211AE, 0x29A16DC7, 0x9E2F4B1D, 0xB230F3DC, 0x8652EC0D, 0xC1E3D077, - 0xB3166C2B, 0x70B999A9, 0x9448FA11, 0xE9642247, 0xFC8CC4A8, 0xF03F1AA0, 0x7D2CD856, 0x3390EF22, - 0x494EC787, 0x38D1C1D9, 0xCAA2FE8C, 0xD40B3698, 0xF581CFA6, 0x7ADE28A5, 0xB78E26DA, 0xADBFA43F, - 0x3A9DE42C, 0x78920D50, 0x5FCC9B6A, 0x7E466254, 0x8D13C2F6, 0xD8B8E890, 0x39F75E2E, 0xC3AFF582, - 0x5D80BE9F, 0xD0937C69, 0xD52DA96F, 0x2512B3CF, 0xAC993BC8, 0x187DA710, 0x9C636EE8, 0x3BBB7BDB, - 0x267809CD, 0x5918F46E, 0x9AB701EC, 0x4F9AA883, 0x956E65E6, 0xFFE67EAA, 0xBCCF0821, 0x15E8E6EF, - 0xE79BD9BA, 0x6F36CE4A, 0x9F09D4EA, 0xB07CD629, 0xA4B2AF31, 0x3F23312A, 0xA59430C6, 0xA266C035, - 0x4EBC3774, 0x82CAA6FC, 0x90D0B0E0, 0xA7D81533, 0x04984AF1, 0xECDAF741, 0xCD500E7F, 0x91F62F17, - 0x4DD68D76, 0xEFB04D43, 0xAA4D54CC, 0x9604DFE4, 0xD1B5E39E, 0x6A881B4C, 0x2C1FB8C1, 0x65517F46, - 0x5EEA049D, 0x8C355D01, 0x877473FA, 0x0B412EFB, 0x671D5AB3, 0xDBD25292, 0x105633E9, 0xD647136D, - 0xD7618C9A, 0xA10C7A37, 0xF8148E59, 0x133C89EB, 0xA927EECE, 0x61C935B7, 0x1CE5EDE1, 0x47B13C7A, - 0xD2DF599C, 0xF2733F55, 0x14CE7918, 0xC737BF73, 0xF7CDEA53, 0xFDAA5B5F, 0x3D6F14DF, 0x44DB8678, - 0xAFF381CA, 0x68C43EB9, 0x24342C38, 0xA3405FC2, 0x1DC37216, 0xE2250CBC, 0x3C498B28, 0x0D9541FF, - 0xA8017139, 0x0CB3DE08, 0xB4E49CD8, 0x56C19064, 0xCB84617B, 0x32B670D5, 0x6C5C7448, 0xB85742D0 - ); - - for ($i = 0; $i < 256; $i++) { - $t2[$i << 8] = (($t3[$i] << 8) & 0xFFFFFF00) | (($t3[$i] >> 24) & 0x000000FF); - $t1[$i << 16] = (($t3[$i] << 16) & 0xFFFF0000) | (($t3[$i] >> 16) & 0x0000FFFF); - $t0[$i << 24] = (($t3[$i] << 24) & 0xFF000000) | (($t3[$i] >> 8) & 0x00FFFFFF); - - $dt2[$i << 8] = (($this->dt3[$i] << 8) & 0xFFFFFF00) | (($dt3[$i] >> 24) & 0x000000FF); - $dt1[$i << 16] = (($this->dt3[$i] << 16) & 0xFFFF0000) | (($dt3[$i] >> 16) & 0x0000FFFF); - $dt0[$i << 24] = (($this->dt3[$i] << 24) & 0xFF000000) | (($dt3[$i] >> 8) & 0x00FFFFFF); - } - } - - /** - * Sets the key. - * - * Keys can be of any length. Rijndael, itself, requires the use of a key that's between 128-bits and 256-bits long and - * whose length is a multiple of 32. If the key is less than 256-bits and the key length isn't set, we round the length - * up to the closest valid key length, padding $key with null bytes. If the key is more than 256-bits, we trim the - * excess bits. - * - * If the key is not explicitly set, it'll be assumed to be all null bytes. - * - * @access public - * @param String $key - */ - function setKey($key) - { - $this->key = $key; - $this->changed = true; - } - - /** - * Sets the initialization vector. (optional) - * - * SetIV is not required when CRYPT_RIJNDAEL_MODE_ECB is being used. If not explictly set, it'll be assumed - * to be all zero's. - * - * @access public - * @param String $iv - */ - function setIV($iv) - { - $this->encryptIV = $this->decryptIV = $this->iv = str_pad(substr($iv, 0, $this->block_size), $this->block_size, chr(0));; - } - - /** - * Sets the key length - * - * Valid key lengths are 128, 160, 192, 224, and 256. If the length is less than 128, it will be rounded up to - * 128. If the length is greater then 128 and invalid, it will be rounded down to the closest valid amount. - * - * @access public - * @param Integer $length - */ - function setKeyLength($length) - { - $length >>= 5; - if ($length > 8) { - $length = 8; - } else if ($length < 4) { - $length = 4; - } - $this->Nk = $length; - $this->key_size = $length << 2; - - $this->explicit_key_length = true; - $this->changed = true; - } - - /** - * Sets the block length - * - * Valid block lengths are 128, 160, 192, 224, and 256. If the length is less than 128, it will be rounded up to - * 128. If the length is greater then 128 and invalid, it will be rounded down to the closest valid amount. - * - * @access public - * @param Integer $length - */ - function setBlockLength($length) - { - $length >>= 5; - if ($length > 8) { - $length = 8; - } else if ($length < 4) { - $length = 4; - } - $this->Nb = $length; - $this->block_size = $length << 2; - $this->changed = true; - } - - /** - * Generate CTR XOR encryption key - * - * Encrypt the output of this and XOR it against the ciphertext / plaintext to get the - * plaintext / ciphertext in CTR mode. - * - * @see Crypt_Rijndael::decrypt() - * @see Crypt_Rijndael::encrypt() - * @access public - * @param Integer $length - * @param String $iv - */ - function _generate_xor($length, &$iv) - { - $xor = ''; - $block_size = $this->block_size; - $num_blocks = floor(($length + ($block_size - 1)) / $block_size); - for ($i = 0; $i < $num_blocks; $i++) { - $xor.= $iv; - for ($j = 4; $j <= $block_size; $j+=4) { - $temp = substr($iv, -$j, 4); - switch ($temp) { - case "\xFF\xFF\xFF\xFF": - $iv = substr_replace($iv, "\x00\x00\x00\x00", -$j, 4); - break; - case "\x7F\xFF\xFF\xFF": - $iv = substr_replace($iv, "\x80\x00\x00\x00", -$j, 4); - break 2; - default: - extract(unpack('Ncount', $temp)); - $iv = substr_replace($iv, pack('N', $count + 1), -$j, 4); - break 2; - } - } - } - - return $xor; - } - - /** - * Encrypts a message. - * - * $plaintext will be padded with additional bytes such that it's length is a multiple of the block size. Other Rjindael - * implementations may or may not pad in the same manner. Other common approaches to padding and the reasons why it's - * necessary are discussed in the following - * URL: - * - * {@link http://www.di-mgt.com.au/cryptopad.html http://www.di-mgt.com.au/cryptopad.html} - * - * An alternative to padding is to, separately, send the length of the file. This is what SSH, in fact, does. - * strlen($plaintext) will still need to be a multiple of 8, however, arbitrary values can be added to make it that - * length. - * - * @see Crypt_Rijndael::decrypt() - * @access public - * @param String $plaintext - */ - function encrypt($plaintext) - { - $this->_setup(); - if ($this->mode != CRYPT_RIJNDAEL_MODE_CTR) { - $plaintext = $this->_pad($plaintext); - } - - $block_size = $this->block_size; - $ciphertext = ''; - switch ($this->mode) { - case CRYPT_RIJNDAEL_MODE_ECB: - for ($i = 0; $i < strlen($plaintext); $i+=$block_size) { - $ciphertext.= $this->_encryptBlock(substr($plaintext, $i, $block_size)); - } - break; - case CRYPT_RIJNDAEL_MODE_CBC: - $xor = $this->encryptIV; - for ($i = 0; $i < strlen($plaintext); $i+=$block_size) { - $block = substr($plaintext, $i, $block_size); - $block = $this->_encryptBlock($block ^ $xor); - $xor = $block; - $ciphertext.= $block; - } - if ($this->continuousBuffer) { - $this->encryptIV = $xor; - } - break; - case CRYPT_RIJNDAEL_MODE_CTR: - $xor = $this->encryptIV; - for ($i = 0; $i < strlen($plaintext); $i+=$block_size) { - $block = substr($plaintext, $i, $block_size); - $key = $this->_encryptBlock($this->_generate_xor($block_size, $xor)); - $ciphertext.= $block ^ $key; - } - if ($this->continuousBuffer) { - $this->encryptIV = $xor; - } - } - - return $ciphertext; - } - - /** - * Decrypts a message. - * - * If strlen($ciphertext) is not a multiple of the block size, null bytes will be added to the end of the string until - * it is. - * - * @see Crypt_Rijndael::encrypt() - * @access public - * @param String $ciphertext - */ - function decrypt($ciphertext) - { - $this->_setup(); - - if ($this->mode != CRYPT_RIJNDAEL_MODE_CTR) { - // we pad with chr(0) since that's what mcrypt_generic does. to quote from http://php.net/function.mcrypt-generic : - // "The data is padded with "\0" to make sure the length of the data is n * blocksize." - $ciphertext = str_pad($ciphertext, (strlen($ciphertext) + $this->block_size - 1) % $this->block_size, chr(0)); - } - - $block_size = $this->block_size; - $plaintext = ''; - switch ($this->mode) { - case CRYPT_RIJNDAEL_MODE_ECB: - for ($i = 0; $i < strlen($ciphertext); $i+=$block_size) { - $plaintext.= $this->_decryptBlock(substr($ciphertext, $i, $block_size)); - } - break; - case CRYPT_RIJNDAEL_MODE_CBC: - $xor = $this->decryptIV; - for ($i = 0; $i < strlen($ciphertext); $i+=$block_size) { - $block = substr($ciphertext, $i, $block_size); - $plaintext.= $this->_decryptBlock($block) ^ $xor; - $xor = $block; - } - if ($this->continuousBuffer) { - $this->decryptIV = $xor; - } - break; - case CRYPT_RIJNDAEL_MODE_CTR: - $xor = $this->decryptIV; - for ($i = 0; $i < strlen($ciphertext); $i+=$block_size) { - $block = substr($ciphertext, $i, $block_size); - $key = $this->_encryptBlock($this->_generate_xor($block_size, $xor)); - $plaintext.= $block ^ $key; - } - if ($this->continuousBuffer) { - $this->decryptIV = $xor; - } - } - - return $this->mode != CRYPT_RIJNDAEL_MODE_CTR ? $this->_unpad($plaintext) : $plaintext; - } - - /** - * Encrypts a block - * - * @access private - * @param String $in - * @return String - */ - function _encryptBlock($in) - { - $state = array(); - $words = unpack('N*word', $in); - - $w = $this->w; - $t0 = $this->t0; - $t1 = $this->t1; - $t2 = $this->t2; - $t3 = $this->t3; - $Nb = $this->Nb; - $Nr = $this->Nr; - $c = $this->c; - - // addRoundKey - $i = 0; - foreach ($words as $word) { - $state[] = $word ^ $w[0][$i++]; - } - - // fips-197.pdf#page=19, "Figure 5. Pseudo Code for the Cipher", states that this loop has four components - - // subBytes, shiftRows, mixColumns, and addRoundKey. fips-197.pdf#page=30, "Implementation Suggestions Regarding - // Various Platforms" suggests that performs enhanced implementations are described in Rijndael-ammended.pdf. - // Rijndael-ammended.pdf#page=20, "Implementation aspects / 32-bit processor", discusses such an optimization. - // Unfortunately, the description given there is not quite correct. Per aes.spec.v316.pdf#page=19 [1], - // equation (7.4.7) is supposed to use addition instead of subtraction, so we'll do that here, as well. - - // [1] http://fp.gladman.plus.com/cryptography_technology/rijndael/aes.spec.v316.pdf - $temp = array(); - for ($round = 1; $round < $Nr; $round++) { - $i = 0; // $c[0] == 0 - $j = $c[1]; - $k = $c[2]; - $l = $c[3]; - - while ($i < $this->Nb) { - $temp[$i] = $t0[$state[$i] & 0xFF000000] ^ - $t1[$state[$j] & 0x00FF0000] ^ - $t2[$state[$k] & 0x0000FF00] ^ - $t3[$state[$l] & 0x000000FF] ^ - $w[$round][$i]; - $i++; - $j = ($j + 1) % $Nb; - $k = ($k + 1) % $Nb; - $l = ($l + 1) % $Nb; - } - - for ($i = 0; $i < $Nb; $i++) { - $state[$i] = $temp[$i]; - } - } - - // subWord - for ($i = 0; $i < $Nb; $i++) { - $state[$i] = $this->_subWord($state[$i]); - } - - // shiftRows + addRoundKey - $i = 0; // $c[0] == 0 - $j = $c[1]; - $k = $c[2]; - $l = $c[3]; - while ($i < $this->Nb) { - $temp[$i] = ($state[$i] & 0xFF000000) ^ - ($state[$j] & 0x00FF0000) ^ - ($state[$k] & 0x0000FF00) ^ - ($state[$l] & 0x000000FF) ^ - $w[$Nr][$i]; - $i++; - $j = ($j + 1) % $Nb; - $k = ($k + 1) % $Nb; - $l = ($l + 1) % $Nb; - } - $state = $temp; - - array_unshift($state, 'N*'); - - return call_user_func_array('pack', $state); - } - - /** - * Decrypts a block - * - * @access private - * @param String $in - * @return String - */ - function _decryptBlock($in) - { - $state = array(); - $words = unpack('N*word', $in); - - $num_states = count($state); - $dw = $this->dw; - $dt0 = $this->dt0; - $dt1 = $this->dt1; - $dt2 = $this->dt2; - $dt3 = $this->dt3; - $Nb = $this->Nb; - $Nr = $this->Nr; - $c = $this->c; - - // addRoundKey - $i = 0; - foreach ($words as $word) { - $state[] = $word ^ $dw[$Nr][$i++]; - } - - $temp = array(); - for ($round = $Nr - 1; $round > 0; $round--) { - $i = 0; // $c[0] == 0 - $j = $Nb - $c[1]; - $k = $Nb - $c[2]; - $l = $Nb - $c[3]; - - while ($i < $Nb) { - $temp[$i] = $dt0[$state[$i] & 0xFF000000] ^ - $dt1[$state[$j] & 0x00FF0000] ^ - $dt2[$state[$k] & 0x0000FF00] ^ - $dt3[$state[$l] & 0x000000FF] ^ - $dw[$round][$i]; - $i++; - $j = ($j + 1) % $Nb; - $k = ($k + 1) % $Nb; - $l = ($l + 1) % $Nb; - } - - for ($i = 0; $i < $Nb; $i++) { - $state[$i] = $temp[$i]; - } - } - - // invShiftRows + invSubWord + addRoundKey - $i = 0; // $c[0] == 0 - $j = $Nb - $c[1]; - $k = $Nb - $c[2]; - $l = $Nb - $c[3]; - - while ($i < $Nb) { - $temp[$i] = $dw[0][$i] ^ - $this->_invSubWord(($state[$i] & 0xFF000000) | - ($state[$j] & 0x00FF0000) | - ($state[$k] & 0x0000FF00) | - ($state[$l] & 0x000000FF)); - $i++; - $j = ($j + 1) % $Nb; - $k = ($k + 1) % $Nb; - $l = ($l + 1) % $Nb; - } - - $state = $temp; - - array_unshift($state, 'N*'); - - return call_user_func_array('pack', $state); - } - - /** - * Setup Rijndael - * - * Validates all the variables and calculates $Nr - the number of rounds that need to be performed - and $w - the key - * key schedule. - * - * @access private - */ - function _setup() - { - // Each number in $rcon is equal to the previous number multiplied by two in Rijndael's finite field. - // See http://en.wikipedia.org/wiki/Finite_field_arithmetic#Multiplicative_inverse - static $rcon = array(0, - 0x01000000, 0x02000000, 0x04000000, 0x08000000, 0x10000000, - 0x20000000, 0x40000000, 0x80000000, 0x1B000000, 0x36000000, - 0x6C000000, 0xD8000000, 0xAB000000, 0x4D000000, 0x9A000000, - 0x2F000000, 0x5E000000, 0xBC000000, 0x63000000, 0xC6000000, - 0x97000000, 0x35000000, 0x6A000000, 0xD4000000, 0xB3000000, - 0x7D000000, 0xFA000000, 0xEF000000, 0xC5000000, 0x91000000 - ); - - if (!$this->changed) { - return; - } - - if (!$this->explicit_key_length) { - // we do >> 2, here, and not >> 5, as we do above, since strlen($this->key) tells us the number of bytes - not bits - $length = strlen($this->key) >> 2; - if ($length > 8) { - $length = 8; - } else if ($length < 4) { - $length = 4; - } - $this->Nk = $length; - $this->key_size = $length << 2; - } - - $this->key = str_pad(substr($this->key, 0, $this->key_size), $this->key_size, chr(0)); - $this->encryptIV = $this->decryptIV = $this->iv = str_pad(substr($this->iv, 0, $this->block_size), $this->block_size, chr(0)); - - // see Rijndael-ammended.pdf#page=44 - $this->Nr = max($this->Nk, $this->Nb) + 6; - - // shift offsets for Nb = 5, 7 are defined in Rijndael-ammended.pdf#page=44, - // "Table 8: Shift offsets in Shiftrow for the alternative block lengths" - // shift offsets for Nb = 4, 6, 8 are defined in Rijndael-ammended.pdf#page=14, - // "Table 2: Shift offsets for different block lengths" - switch ($this->Nb) { - case 4: - case 5: - case 6: - $this->c = array(0, 1, 2, 3); - break; - case 7: - $this->c = array(0, 1, 2, 4); - break; - case 8: - $this->c = array(0, 1, 3, 4); - } - - $key = $this->key; - - $w = array_values(unpack('N*words', $key)); - - $length = $this->Nb * ($this->Nr + 1); - for ($i = $this->Nk; $i < $length; $i++) { - $temp = $w[$i - 1]; - if ($i % $this->Nk == 0) { - // according to , "the size of an integer is platform-dependent". - // on a 32-bit machine, it's 32-bits, and on a 64-bit machine, it's 64-bits. on a 32-bit machine, - // 0xFFFFFFFF << 8 == 0xFFFFFF00, but on a 64-bit machine, it equals 0xFFFFFFFF00. as such, doing 'and' - // with 0xFFFFFFFF (or 0xFFFFFF00) on a 32-bit machine is unnecessary, but on a 64-bit machine, it is. - $temp = (($temp << 8) & 0xFFFFFF00) | (($temp >> 24) & 0x000000FF); // rotWord - $temp = $this->_subWord($temp) ^ $rcon[$i / $this->Nk]; - } else if ($this->Nk > 6 && $i % $this->Nk == 4) { - $temp = $this->_subWord($temp); - } - $w[$i] = $w[$i - $this->Nk] ^ $temp; - } - - // convert the key schedule from a vector of $Nb * ($Nr + 1) length to a matrix with $Nr + 1 rows and $Nb columns - // and generate the inverse key schedule. more specifically, - // according to (section 5.3.3), - // "The key expansion for the Inverse Cipher is defined as follows: - // 1. Apply the Key Expansion. - // 2. Apply InvMixColumn to all Round Keys except the first and the last one." - // also, see fips-197.pdf#page=27, "5.3.5 Equivalent Inverse Cipher" - $temp = array(); - for ($i = $row = $col = 0; $i < $length; $i++, $col++) { - if ($col == $this->Nb) { - if ($row == 0) { - $this->dw[0] = $this->w[0]; - } else { - // subWord + invMixColumn + invSubWord = invMixColumn - $j = 0; - while ($j < $this->Nb) { - $dw = $this->_subWord($this->w[$row][$j]); - $temp[$j] = $this->dt0[$dw & 0xFF000000] ^ - $this->dt1[$dw & 0x00FF0000] ^ - $this->dt2[$dw & 0x0000FF00] ^ - $this->dt3[$dw & 0x000000FF]; - $j++; - } - $this->dw[$row] = $temp; - } - - $col = 0; - $row++; - } - $this->w[$row][$col] = $w[$i]; - } - - $this->dw[$row] = $this->w[$row]; - - $this->changed = false; - } - - /** - * Performs S-Box substitutions - * - * @access private - */ - function _subWord($word) - { - static $sbox0, $sbox1, $sbox2, $sbox3; - - if (empty($sbox0)) { - $sbox0 = array( - 0x63, 0x7C, 0x77, 0x7B, 0xF2, 0x6B, 0x6F, 0xC5, 0x30, 0x01, 0x67, 0x2B, 0xFE, 0xD7, 0xAB, 0x76, - 0xCA, 0x82, 0xC9, 0x7D, 0xFA, 0x59, 0x47, 0xF0, 0xAD, 0xD4, 0xA2, 0xAF, 0x9C, 0xA4, 0x72, 0xC0, - 0xB7, 0xFD, 0x93, 0x26, 0x36, 0x3F, 0xF7, 0xCC, 0x34, 0xA5, 0xE5, 0xF1, 0x71, 0xD8, 0x31, 0x15, - 0x04, 0xC7, 0x23, 0xC3, 0x18, 0x96, 0x05, 0x9A, 0x07, 0x12, 0x80, 0xE2, 0xEB, 0x27, 0xB2, 0x75, - 0x09, 0x83, 0x2C, 0x1A, 0x1B, 0x6E, 0x5A, 0xA0, 0x52, 0x3B, 0xD6, 0xB3, 0x29, 0xE3, 0x2F, 0x84, - 0x53, 0xD1, 0x00, 0xED, 0x20, 0xFC, 0xB1, 0x5B, 0x6A, 0xCB, 0xBE, 0x39, 0x4A, 0x4C, 0x58, 0xCF, - 0xD0, 0xEF, 0xAA, 0xFB, 0x43, 0x4D, 0x33, 0x85, 0x45, 0xF9, 0x02, 0x7F, 0x50, 0x3C, 0x9F, 0xA8, - 0x51, 0xA3, 0x40, 0x8F, 0x92, 0x9D, 0x38, 0xF5, 0xBC, 0xB6, 0xDA, 0x21, 0x10, 0xFF, 0xF3, 0xD2, - 0xCD, 0x0C, 0x13, 0xEC, 0x5F, 0x97, 0x44, 0x17, 0xC4, 0xA7, 0x7E, 0x3D, 0x64, 0x5D, 0x19, 0x73, - 0x60, 0x81, 0x4F, 0xDC, 0x22, 0x2A, 0x90, 0x88, 0x46, 0xEE, 0xB8, 0x14, 0xDE, 0x5E, 0x0B, 0xDB, - 0xE0, 0x32, 0x3A, 0x0A, 0x49, 0x06, 0x24, 0x5C, 0xC2, 0xD3, 0xAC, 0x62, 0x91, 0x95, 0xE4, 0x79, - 0xE7, 0xC8, 0x37, 0x6D, 0x8D, 0xD5, 0x4E, 0xA9, 0x6C, 0x56, 0xF4, 0xEA, 0x65, 0x7A, 0xAE, 0x08, - 0xBA, 0x78, 0x25, 0x2E, 0x1C, 0xA6, 0xB4, 0xC6, 0xE8, 0xDD, 0x74, 0x1F, 0x4B, 0xBD, 0x8B, 0x8A, - 0x70, 0x3E, 0xB5, 0x66, 0x48, 0x03, 0xF6, 0x0E, 0x61, 0x35, 0x57, 0xB9, 0x86, 0xC1, 0x1D, 0x9E, - 0xE1, 0xF8, 0x98, 0x11, 0x69, 0xD9, 0x8E, 0x94, 0x9B, 0x1E, 0x87, 0xE9, 0xCE, 0x55, 0x28, 0xDF, - 0x8C, 0xA1, 0x89, 0x0D, 0xBF, 0xE6, 0x42, 0x68, 0x41, 0x99, 0x2D, 0x0F, 0xB0, 0x54, 0xBB, 0x16 - ); - - $sbox1 = array(); - $sbox2 = array(); - $sbox3 = array(); - - for ($i = 0; $i < 256; $i++) { - $sbox1[$i << 8] = $sbox0[$i] << 8; - $sbox2[$i << 16] = $sbox0[$i] << 16; - $sbox3[$i << 24] = $sbox0[$i] << 24; - } - } - - return $sbox0[$word & 0x000000FF] | - $sbox1[$word & 0x0000FF00] | - $sbox2[$word & 0x00FF0000] | - $sbox3[$word & 0xFF000000]; - } - - /** - * Performs inverse S-Box substitutions - * - * @access private - */ - function _invSubWord($word) - { - static $sbox0, $sbox1, $sbox2, $sbox3; - - if (empty($sbox0)) { - $sbox0 = array( - 0x52, 0x09, 0x6A, 0xD5, 0x30, 0x36, 0xA5, 0x38, 0xBF, 0x40, 0xA3, 0x9E, 0x81, 0xF3, 0xD7, 0xFB, - 0x7C, 0xE3, 0x39, 0x82, 0x9B, 0x2F, 0xFF, 0x87, 0x34, 0x8E, 0x43, 0x44, 0xC4, 0xDE, 0xE9, 0xCB, - 0x54, 0x7B, 0x94, 0x32, 0xA6, 0xC2, 0x23, 0x3D, 0xEE, 0x4C, 0x95, 0x0B, 0x42, 0xFA, 0xC3, 0x4E, - 0x08, 0x2E, 0xA1, 0x66, 0x28, 0xD9, 0x24, 0xB2, 0x76, 0x5B, 0xA2, 0x49, 0x6D, 0x8B, 0xD1, 0x25, - 0x72, 0xF8, 0xF6, 0x64, 0x86, 0x68, 0x98, 0x16, 0xD4, 0xA4, 0x5C, 0xCC, 0x5D, 0x65, 0xB6, 0x92, - 0x6C, 0x70, 0x48, 0x50, 0xFD, 0xED, 0xB9, 0xDA, 0x5E, 0x15, 0x46, 0x57, 0xA7, 0x8D, 0x9D, 0x84, - 0x90, 0xD8, 0xAB, 0x00, 0x8C, 0xBC, 0xD3, 0x0A, 0xF7, 0xE4, 0x58, 0x05, 0xB8, 0xB3, 0x45, 0x06, - 0xD0, 0x2C, 0x1E, 0x8F, 0xCA, 0x3F, 0x0F, 0x02, 0xC1, 0xAF, 0xBD, 0x03, 0x01, 0x13, 0x8A, 0x6B, - 0x3A, 0x91, 0x11, 0x41, 0x4F, 0x67, 0xDC, 0xEA, 0x97, 0xF2, 0xCF, 0xCE, 0xF0, 0xB4, 0xE6, 0x73, - 0x96, 0xAC, 0x74, 0x22, 0xE7, 0xAD, 0x35, 0x85, 0xE2, 0xF9, 0x37, 0xE8, 0x1C, 0x75, 0xDF, 0x6E, - 0x47, 0xF1, 0x1A, 0x71, 0x1D, 0x29, 0xC5, 0x89, 0x6F, 0xB7, 0x62, 0x0E, 0xAA, 0x18, 0xBE, 0x1B, - 0xFC, 0x56, 0x3E, 0x4B, 0xC6, 0xD2, 0x79, 0x20, 0x9A, 0xDB, 0xC0, 0xFE, 0x78, 0xCD, 0x5A, 0xF4, - 0x1F, 0xDD, 0xA8, 0x33, 0x88, 0x07, 0xC7, 0x31, 0xB1, 0x12, 0x10, 0x59, 0x27, 0x80, 0xEC, 0x5F, - 0x60, 0x51, 0x7F, 0xA9, 0x19, 0xB5, 0x4A, 0x0D, 0x2D, 0xE5, 0x7A, 0x9F, 0x93, 0xC9, 0x9C, 0xEF, - 0xA0, 0xE0, 0x3B, 0x4D, 0xAE, 0x2A, 0xF5, 0xB0, 0xC8, 0xEB, 0xBB, 0x3C, 0x83, 0x53, 0x99, 0x61, - 0x17, 0x2B, 0x04, 0x7E, 0xBA, 0x77, 0xD6, 0x26, 0xE1, 0x69, 0x14, 0x63, 0x55, 0x21, 0x0C, 0x7D - ); - - $sbox1 = array(); - $sbox2 = array(); - $sbox3 = array(); - - for ($i = 0; $i < 256; $i++) { - $sbox1[$i << 8] = $sbox0[$i] << 8; - $sbox2[$i << 16] = $sbox0[$i] << 16; - $sbox3[$i << 24] = $sbox0[$i] << 24; - } - } - - return $sbox0[$word & 0x000000FF] | - $sbox1[$word & 0x0000FF00] | - $sbox2[$word & 0x00FF0000] | - $sbox3[$word & 0xFF000000]; - } - - /** - * Pad "packets". - * - * Rijndael works by encrypting between sixteen and thirty-two bytes at a time, provided that number is also a multiple - * of four. If you ever need to encrypt or decrypt something that isn't of the proper length, it becomes necessary to - * pad the input so that it is of the proper length. - * - * Padding is enabled by default. Sometimes, however, it is undesirable to pad strings. Such is the case in SSH, - * where "packets" are padded with random bytes before being encrypted. Unpad these packets and you risk stripping - * away characters that shouldn't be stripped away. (SSH knows how many bytes are added because the length is - * transmitted separately) - * - * @see Crypt_Rijndael::disablePadding() - * @access public - */ - function enablePadding() - { - $this->padding = true; - } - - /** - * Do not pad packets. - * - * @see Crypt_Rijndael::enablePadding() - * @access public - */ - function disablePadding() - { - $this->padding = false; - } - - /** - * Pads a string - * - * Pads a string using the RSA PKCS padding standards so that its length is a multiple of the blocksize. - * $block_size - (strlen($text) % $block_size) bytes are added, each of which is equal to - * chr($block_size - (strlen($text) % $block_size) - * - * If padding is disabled and $text is not a multiple of the blocksize, the string will be padded regardless - * and padding will, hence forth, be enabled. - * - * @see Crypt_Rijndael::_unpad() - * @access private - */ - function _pad($text) - { - $length = strlen($text); - - if (!$this->padding) { - if ($length % $this->block_size == 0) { - return $text; - } else { - user_error("The plaintext's length ($length) is not a multiple of the block size ({$this->block_size})", E_USER_NOTICE); - $this->padding = true; - } - } - - $pad = $this->block_size - ($length % $this->block_size); - - return str_pad($text, $length + $pad, chr($pad)); - } - - /** - * Unpads a string. - * - * If padding is enabled and the reported padding length is invalid the encryption key will be assumed to be wrong - * and false will be returned. - * - * @see Crypt_Rijndael::_pad() - * @access private - */ - function _unpad($text) - { - if (!$this->padding) { - return $text; - } - - $length = ord($text[strlen($text) - 1]); - - if (!$length || $length > $this->block_size) { - return false; - } - - return substr($text, 0, -$length); - } - - /** - * Treat consecutive "packets" as if they are a continuous buffer. - * - * Say you have a 32-byte plaintext $plaintext. Using the default behavior, the two following code snippets - * will yield different outputs: - * - * - * echo $rijndael->encrypt(substr($plaintext, 0, 16)); - * echo $rijndael->encrypt(substr($plaintext, 16, 16)); - * - * - * echo $rijndael->encrypt($plaintext); - * - * - * The solution is to enable the continuous buffer. Although this will resolve the above discrepancy, it creates - * another, as demonstrated with the following: - * - * - * $rijndael->encrypt(substr($plaintext, 0, 16)); - * echo $rijndael->decrypt($des->encrypt(substr($plaintext, 16, 16))); - * - * - * echo $rijndael->decrypt($des->encrypt(substr($plaintext, 16, 16))); - * - * - * With the continuous buffer disabled, these would yield the same output. With it enabled, they yield different - * outputs. The reason is due to the fact that the initialization vector's change after every encryption / - * decryption round when the continuous buffer is enabled. When it's disabled, they remain constant. - * - * Put another way, when the continuous buffer is enabled, the state of the Crypt_Rijndael() object changes after each - * encryption / decryption round, whereas otherwise, it'd remain constant. For this reason, it's recommended that - * continuous buffers not be used. They do offer better security and are, in fact, sometimes required (SSH uses them), - * however, they are also less intuitive and more likely to cause you problems. - * - * @see Crypt_Rijndael::disableContinuousBuffer() - * @access public - */ - function enableContinuousBuffer() - { - $this->continuousBuffer = true; - } - - /** - * Treat consecutive packets as if they are a discontinuous buffer. - * - * The default behavior. - * - * @see Crypt_Rijndael::enableContinuousBuffer() - * @access public - */ - function disableContinuousBuffer() - { - $this->continuousBuffer = false; - $this->encryptIV = $this->iv; - $this->decryptIV = $this->iv; - } - - /** - * String Shift - * - * Inspired by array_shift - * - * @param String $string - * @param optional Integer $index - * @return String - * @access private - */ - function _string_shift(&$string, $index = 1) - { - $substr = substr($string, 0, $index); - $string = substr($string, $index); - return $substr; - } -} - -// vim: ts=4:sw=4:et: -// vim6: fdl=1: \ No newline at end of file diff --git a/lib/functions.php b/lib/functions.php deleted file mode 100644 index 4947c61..0000000 --- a/lib/functions.php +++ /dev/null @@ -1,208 +0,0 @@ -'."\nwindow.lang = {\n"; - include(BASE_PATH . '/lang/'.LANGUAGE.'.php'); - foreach($LANGUAGE_JS as $key=>$txt) - $script .= '"'.htmlspecialchars($key).'":"'.htmlspecialchars($txt)."\",\n"; - - $script .= "\"MyWebSQL\":\"MyWebSQL\"\n};\n\n"; - - return $script; - } - - function log_message($str) { - if (defined('LOG_MESSAGES') && LOG_MESSAGES) - error_log($str); - } - - function matchFileHeader(&$str, $hdr) { - if (is_array($hdr)) { - foreach($hdr as $v) { - if ( substr($str, 0, strlen($v)) == $v) - return true; - } - } - else - return ( substr($str, 0, strlen($hdr)) == $hdr); - - return false; - } - - function bytes_value($val) { - $val = trim($val); - $last = strtolower($val[strlen($val)-1]); - switch($last) { - case 'g': - $val *= 1024; - case 'm': - $val *= 1024; - case 'k': - $val *= 1024; - } - return $val; - } - - /* the reverse of bytes_value */ - function format_bytes($val) { - if ($val < 1024) - return $val.' B'; - $size = ($val < 1024*1024) ? number_format($val/1024).' KB' : number_format($val/(1024*1024), 2).' MB'; - return $size; - } - - // enable encryption on login page only if we are not using HTTPS - function secureLoginPage() { - return (defined('SECURE_LOGIN') && SECURE_LOGIN==TRUE && v($_SERVER["HTTPS"]) == '') ? TRUE : FALSE; - } - - function find_view($name) { - // if a list of views is provided, load the one that is found first - if (is_array($name)) { - foreach($name as $view_name) { - if (file_exists(BASE_PATH . '/modules/views/' . $view_name . '.php')) { - return (BASE_PATH . '/modules/views/' . $view_name . '.php'); - } - } - } - return (BASE_PATH . '/modules/views/' . $name . '.php'); - } - function view($name, $replace = array(), $data = NULL) { - ob_start(); - - include( find_view($name) ); - - $file = ob_get_clean(); - if (count($replace) > 0) { - $find = array(); - foreach($replace as $key => $value) - $find[] = '{{' . $key . '}}'; - $replace = array_values($replace); - return str_replace($find, $replace, $file); - } - return $file; - } - - function getLanguageList() { - include (BASE_PATH . "/config/lang.php"); - $langList = array(); - $files = scandir(BASE_PATH . "/lang/"); - foreach ($files as $lang) { - if (substr($lang, -4) == '.php') { - $langList[substr($lang, -6, 2)] = ''; - } - } - // keeping english as the first choice always - $langList = array_intersect_key($_LANGUAGES, $langList); - return $langList; - } - - function getServerList() { - if ( AUTH_TYPE != 'LOGIN' ) { - if ( AUTH_TYPE != 'CUSTOM' ) - return false; - require_once(BASE_PATH . '/lib/auth/custom.php'); - if ( !MyWebSQL_Auth_Custom::showServerList() ) - return false; - } - - include (BASE_PATH . "/config/servers.php"); - if (!defined('ALLOW_CUSTOM_SERVERS')) - define('ALLOW_CUSTOM_SERVERS', $ALLOW_CUSTOM_SERVERS); - if (!defined('ALLOW_CUSTOM_SERVER_TYPES')) - define('ALLOW_CUSTOM_SERVER_TYPES', $ALLOW_CUSTOM_SERVER_TYPES); - return $SERVER_LIST; - } - - function create_module_id( $mod ) { - return uniqid($mod); - } - - function curl_get($url, array $get = array(), $options = array()) - { - if (!function_exists('curl_exec')) - return ''; - - $defaults = array( - CURLOPT_URL => $url . (strpos($url, '?') === FALSE ? '?' : '') . http_build_query($get), - CURLOPT_HEADER => 0, - CURLOPT_RETURNTRANSFER => TRUE, - CURLOPT_TIMEOUT => 4 - ); - - $ch = curl_init(); - curl_setopt_array($ch, ($options + $defaults)); - if( ! $result = curl_exec($ch)) - { - //trigger_error(curl_error($ch)); - return ''; - } - curl_close($ch); - return $result; - } - - function isAjaxRequest() { - if(!empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') - return true; - return false; - } - - // creates a resultant array with a defined list of values from input array - function extract_vars(&$arr, $keys) { - $result = $keys; - foreach($keys as $key => $value) { - if (isset($arr[$key])) - $result[$key] = $arr[$key]; - } - return $result; - } - - function phpCheck( $ver ) { - return version_compare(PHP_VERSION, $ver, '>='); - } - - function get_backup_filename( $compression, $filename ) { - include_once(BASE_PATH . "/config/backups.php"); - $file = ''; - $search = array( - '', - '', - '' - ); - $replace = array( - Session::get('db', 'name'), - date( BACKUP_DATE_FORMAT ), - '.sql' - ); - - $file .= str_replace( $search, $replace, $filename ); - - if ( $compression != '' ) - $file .= $compression == 'bz' ? '.bz2' : '.gz'; - - // verify that the filename is valid - $matches = '[]/\\\?\*:<>|"\''; - if ( strpbrk($file, $matches) ) - return false; - - return BACKUP_FOLDER . $file; - } -?> \ No newline at end of file diff --git a/lib/html.php b/lib/html.php deleted file mode 100644 index a890d62..0000000 --- a/lib/html.php +++ /dev/null @@ -1,73 +0,0 @@ -"; - print $select; - } - - static function endselect() { - print ""; - } - - static function option($val, $data,$attr="") { - print "\n"; - } - - static function id($str) { - $replace = array(' ', "'", '"', '<', '>', '&', '#', '/', '\\', ';'); - $str = str_replace($replace, '', $str); - return $str; - } - - static function arrayToOptions($array, $selected, $default=false, $default_text = 'Default') { - $str = $default ? '' : ''; - foreach($array as $key => $val) { - // deal with multiarray list (usually prefixed by namespace) - if (is_array($val)) { - foreach($val as $val2) { - if ($selected == $val2) - $str .= ''; - else - $str .= ''; - } - } - else { - if ($selected == $val) - $str .= ''; - else - $str .= ''; - } - } - - return $str; - } -} - -?> \ No newline at end of file diff --git a/lib/import/csv.php b/lib/import/csv.php deleted file mode 100644 index 6e7f7cd..0000000 --- a/lib/import/csv.php +++ /dev/null @@ -1,146 +0,0 @@ - '', - 'ignore_errors' => FALSE, - 'header' => FALSE, - 'delimiter' => ',', - 'enclosed' => '"', - 'escape' => '\\', - //@TODO:'encoding' => '' - ); - - // return options supported by this driver for the import - public static function options() { - return (self::$_options); - } - - function __construct(&$db) { - $this->db = $db; - - $this->numQueriesFailed = 0; - $this->numRowsAffected = 0; - $this->executionTime = 0; - $this->lastQuery = ''; - } - - function error($msg) { - $this->errMsg = $msg; - return false; - } - - function getError() { - return $this->errMsg; - } - - function getFailedQueries() { - return $this->numQueriesFailed; - } - - function getRowsAffected() { - return $this->numRowsAffected; - } - - function getExecutedTime() { - // return formatted time output - return $this->db->getQueryTime($this->executionTime); - } - - function getLastQuery() { - return $this->lastQuery; - } - - function importTable($file, $options) { - $this->options = $options; - - $fp = null; - if ( !($fp = fopen($file, 'rt')) ) - return false; - - // skip first row if it contains field names - if ($this->options['header']) - $this->field_names = @fgetcsv( $fp, 0, $this->options['delimiter'], $this->options['enclosed'], $this->options['escape'] ); - - $this->executionTime = $this->db->getMicroTime(); - - while( ($data = @fgetcsv( $fp, 0, $this->options['delimiter'], $this->options['enclosed'], $this->options['escape'] )) !== false) { - if ( !$this->addRow($data) && $this->options['ignore_errors' ] == false ) { - $this->executionTime = $this->db->getMicroTime() - $this->executionTime; - fclose($fp); - return false; - } - } - - $this->executionTime = $this->db->getMicroTime() - $this->executionTime; - fclose($fp); - return TRUE; - } - - function addRow($data) { - // empty lines in csv cause an array to be returned with just one empty value - if (!is_array($data) || ( count($data) == 1 && empty($data[0]) ) ) - return false; - - $sql = 'insert into ' . $this->db->quote($this->options['table']) . ' '; - - if (is_array($this->field_names)) { - $sql .= ' ('; - foreach($this->field_names as $field) - $sql .= $this->db->quote($field) . ','; - $sql = substr($sql, 0, strlen($sql) - 1); - $sql .= ')'; - } - - $sql .= ' values ('; - - foreach($data as $value) - $sql .= "'" . $this->db->escape($value) . "',"; - - $sql = substr($sql, 0, strlen($sql) - 1); - - $sql .= ')'; - - if ($this->db->query($sql)) { - $this->numRowsAffected++; - return true; - } - - $this->numQueriesFailed++; - $this->lastQuery = $sql; - return $this->error($this->db->getError()); - } -} - - - - - -?> \ No newline at end of file diff --git a/lib/import/import.php b/lib/import/import.php deleted file mode 100644 index 1cdcc63..0000000 --- a/lib/import/import.php +++ /dev/null @@ -1,32 +0,0 @@ - diff --git a/lib/import/txt.php b/lib/import/txt.php deleted file mode 100644 index 8a59554..0000000 --- a/lib/import/txt.php +++ /dev/null @@ -1,22 +0,0 @@ - \ No newline at end of file diff --git a/lib/interface.php b/lib/interface.php deleted file mode 100644 index 4709933..0000000 --- a/lib/interface.php +++ /dev/null @@ -1,113 +0,0 @@ - $theme) { - if (THEME_PATH == $themeId) - $themeMenu .= '
  • '.$theme.'
  • '; - else - $themeMenu .= '
  • '.$theme.'
  • '; - } - - $langList = getLanguageList(); - foreach ($langList as $lang => $name) { - if (LANGUAGE == $lang) - $langMenu .= '
  • '.$name.'
  • '; - else - $langMenu .= '
  • '.$name.'
  • '; - } - - include (BASE_PATH . "/config/editors.php"); - foreach($CODE_EDITORS as $editorId => $name) { - if (SQL_EDITORTYPE == $editorId) - $editorMenu .= '
  • '.$name.'
  • '; - else - $editorMenu .= '
  • '.$name.'
  • '; - } - - $replace = array( - 'THEMES_MENU' => $themeMenu, - 'LANGUAGE_MENU' => $langMenu, - 'EDITOR_MENU' => $editorMenu - ); - return view('menubar', $replace); - } - - function getDatabaseTreeHTML(&$db, $dblist=array()) { - $folder = $db->name(); - if (getDbName()) { - $objects = $db->getObjectList( true ); - // sort the object listing based on user preferences - $sort = Options::get('ui-tables-sort'); - if ($sort && ( count($objects['tables']) > 1 ) ) - $objects['tables'] = sortTableListing( $objects['tables'], $sort ); - return view(array($folder.'/objtree', 'objtree'), array(), $objects); - } - - return view(array($folder.'/dbtree', 'dbtree'), array(), $dblist); - } - - function getContextMenusHTML() { - return view('menuobjects'); - } - - function updateSqlEditor() { - $editor_file = BASE_PATH . '/lib/editors/' . SQL_EDITORTYPE . '.php'; - if ( !file_exists( $editor_file ) ) - return false; - - include( $editor_file ); - createSqlEditor(); - } - - function getHotkeysHTML() { - if (!defined('HOTKEYS_ENABLED') || !HOTKEYS_ENABLED) - return ''; - $hotkeysHTML = ""; - return $hotkeysHTML; - } - - function sortTableListing($tables, $sort) { - $ret = array(); - for ($i = 0; $i \ No newline at end of file diff --git a/lib/options.php b/lib/options.php deleted file mode 100644 index 7dd2f65..0000000 --- a/lib/options.php +++ /dev/null @@ -1,28 +0,0 @@ - \ No newline at end of file diff --git a/lib/output.php b/lib/output.php deleted file mode 100644 index cf0158f..0000000 --- a/lib/output.php +++ /dev/null @@ -1,120 +0,0 @@ -file = $file; - $this->compression = $compression; - - if ($compression == 'gz') { - $this->file_handle = gzopen( $file, 'w' ); - } - else if ($compression == 'bz') { - $this->file_handle = bzopen( $file, 'w' ); - } else { - $this->file_handle = fopen( $file, 'wb' ); - } - ob_start( array( $this, 'output_callback' ) ); - } - - public function __destruct() { - $this->end(); - } - - public function is_valid() { - return $this->file_handle != false; - } - - // only works if output is being redirected with compression - public function end() { - @ob_end_flush(); - if ( $this->file_handle ) { - if ( $this->compression == 'gz' ) { - gzclose( $this->file_handle ); - } - if ( $this->compression == 'bz' ) { - bzclose( $this->file_handle ); - } else { - fclose( $this->file_handle ); - } - $this->file_handle = null; - return true; - } - } - - public function output_callback( $buffer ) { - if ( $this->compression == 'gz' ) { - gzwrite( $this->file_handle, $buffer ); - }else if ( $this->compression == 'bz' ) { - bzwrite( $this->file_handle, $buffer ); - } else { - fwrite( $this->file_handle, $buffer ); - } - } - } -} -?> \ No newline at end of file diff --git a/lib/privileges.php b/lib/privileges.php deleted file mode 100644 index 2e27fe7..0000000 --- a/lib/privileges.php +++ /dev/null @@ -1,216 +0,0 @@ - - * @maintainer Samnan ur Rehman - * @copyright (c) 2008-2014 Samnan ur Rehman - * @web https://github.com/Samnan/MyWebSQL - * @license https://github.com/Samnan/MyWebSQL/license - */ - -class Privileges -{ - public static $privilegesTable = '`mysql`.`user`'; - protected static $allPrivileges = array( - 'Alter_priv' => 'Alter', - 'Alter_routine_priv' => 'Alter routine', - 'Create_priv' => 'Create', - 'Create_routine_priv' => 'Create routine', - 'Create_tmp_table_priv' => 'Create temporary tables', - 'Create_view_priv' => 'Create view', - 'Create_tablespace_priv' => 'Create tablespace', - 'Create_user_priv' => 'Create user', - 'Delete_priv' => 'Delete', - 'Drop_priv' => 'Drop', - 'Event_priv' => 'Event', - 'Execute_priv' => 'Execute', - 'File_priv' => 'File', - 'Grant_priv' => 'Grant option', - 'Index_priv' => 'Index', - 'Insert_priv' => 'Insert', - 'Lock_tables_priv' => 'Lock tables', - 'Process_priv' => 'Process', - 'References_priv' => 'References', - 'Reload_priv' => 'Reload', - 'Repl_client_priv' => 'Replication client', - 'Repl_slave_priv' => 'Replication slave', - 'Select_priv' => 'Select', - 'Show_db_priv' => 'Show databases', - 'Show_view_priv' => 'Show view', - 'Shutdown_priv' => 'Shutdown', - 'Super_priv' => 'Super', - 'Trigger_priv' => 'Trigger', - 'Update_priv' => 'Update' - ); - protected static $dbManager; - - public static function setDb($dbManager) { - self::$dbManager = $dbManager; - } - - public static function getNames() { - static $supportedPrivileges = false; - - if( false == $supportedPrivileges ) { - $sql = "SHOW COLUMNS FROM " . self::$privilegesTable; - if( self::$dbManager->query( $sql ) ) { - $supportedPrivileges = array(); - - while( $row = self::$dbManager->fetchRow() ) { - if( strstr( $row['Field'], 'priv' ) ) - $supportedPrivileges[$row['Field']] = true; - } - - $supportedPrivileges = array_intersect_key( self::$allPrivileges, $supportedPrivileges ); - } - } - - return $supportedPrivileges; - } - - public $username; - public $host; - - protected $privileges; - - public function __construct($username, $host) { - $this->username = trim( $username ); - $this->host = trim( $host ); - - $this->privileges = false; - } - - public function get() { - if( false == $this->privileges ) { - $tableName = self::$privilegesTable; - - $sql = "SELECT * FROM $tableName WHERE `User` = '{$this->username}' AND `Host` = '{$this->host}'"; - if( false == self::$dbManager->query( $sql ) ) - return false; - - $privileges = self::$dbManager->fetchRow(); - - $this->privileges = array(); - foreach( (array)$privileges as $privName => $privValue ) { - if( strstr( $privName, 'priv' ) && $privValue == 'Y' ) - $this->privileges[] = $privName; - } - } - - return $this->privileges; - } - - public function set($privileges) { - $selectedPriv = array(); - $newPrivileges = array(); - - foreach( (array)self::getNames() as $privName => $privDesc ) { - if( in_array( $privName, $privileges ) ) { - $selectedPriv[] = "$privName = 'Y'"; - $newPrivileges[] = $privName; - } - else { - $selectedPriv[] = "$privName = 'N'"; - } - } - $selectedPriv = implode( ', ', $selectedPriv ); - - $tableName = self::$privilegesTable; - - $sql = "UPDATE $tableName SET $selectedPriv WHERE `User` = '{$this->username}' AND `Host` = '{$this->host}'"; - if( false == self::$dbManager->query( $sql ) ) - return false; - - $this->privileges = $newPrivileges; - - return true; - } -} - -class DbPrivileges extends Privileges -{ - public static $privilegesTable = '`mysql`.`db`'; - - public static function getNames() { - static $supportedPrivileges = false; - - if( false == $supportedPrivileges ) { - $sql = "SHOW COLUMNS FROM " . self::$privilegesTable; - if( self::$dbManager->query( $sql ) ) { - $supportedPrivileges = array(); - - while( $row = self::$dbManager->fetchRow() ) { - if( strstr( $row['Field'], 'priv' ) ) - $supportedPrivileges[$row['Field']] = true; - } - - $supportedPrivileges = array_intersect_key( self::$allPrivileges, $supportedPrivileges ); - } - } - - return $supportedPrivileges; - } - - public $dbName; - - public function __construct($username, $host, $dbName) { - $this->dbName = trim( $dbName ); - - parent::__construct( $username, $host ); - } - - public function get() { - if( false == $this->privileges ) { - $tableName = self::$privilegesTable; - - $sql = "SELECT * FROM $tableName WHERE `User` = '{$this->username}' AND `Host` = '{$this->host}' AND `Db` = '{$this->dbName}'"; - if( false == self::$dbManager->query( $sql ) ) - return false; - - $privileges = self::$dbManager->fetchRow(); - - $this->privileges = array(); - foreach( (array)$privileges as $privName => $privValue ) { - if( strstr( $privName, 'priv' ) && $privValue == 'Y' ) - $this->privileges[] = $privName; - } - } - - return $this->privileges; - } - - public function set($privileges) { - $selectedPriv = array(); - $newPrivileges = array(); - $currPrivileges = $this->get(); - - foreach( (array)self::getNames() as $privName => $privDesc ) { - if( in_array( $privName, $privileges ) ) { - $selectedPriv[] = "$privName = 'Y'"; - $newPrivileges[] = $privName; - } - else { - $selectedPriv[] = "$privName = 'N'"; - } - } - $selectedPriv = implode( ', ', $selectedPriv ); - - $tableName = self::$privilegesTable; - - if( count( $newPrivileges ) < 1 && count( $currPrivileges ) > 0 ) - $sql = "DELETE FROM $tableName WHERE `User` = '{$this->username}' AND `Host` = '{$this->host}' AND `Db` = '{$this->dbName}'"; - elseif( count( $newPrivileges ) > 0 ) - $sql = "REPLACE INTO $tableName SET $selectedPriv, `User` = '{$this->username}', `Host` = '{$this->host}', `Db` = '{$this->dbName}'"; - else - $sql = ''; - - if( $sql && false == self::$dbManager->query( $sql ) ) - return false; - - $this->privileges = $newPrivileges; - - return true; - } -} \ No newline at end of file diff --git a/lib/session.php b/lib/session.php deleted file mode 100644 index e23825a..0000000 --- a/lib/session.php +++ /dev/null @@ -1,72 +0,0 @@ -setKey(md5($_SERVER['SERVER_NAME'])); - } - - static function set($section, $name, $value, $encrypt=false) { - $_SESSION[$section][$name] = ($encrypt ? self::$encObj->encrypt($value) : $value); - } - - // add a new item to array of values, without modifying the other values - static function add($section, $name, $value) { - $_SESSION[$section][$name][] = $value; - } - - static function get_all($section) { - $var = isset($_SESSION[$section]) ? $_SESSION[$section] : array(); - return $var; - } - - static function get($section, $name, $encrypt=false) { - $var = isset($_SESSION[$section][$name]) ? $_SESSION[$section][$name] : ''; - return ($encrypt ? self::$encObj->decrypt($var) : $var); - } - - static function del($section, $name='') { - if ($name == '') - unset($_SESSION[$section]); - else - unset($_SESSION[$section][$name]); - } - - static function set_pref($section, $name, $value) { - $_SESSION['pref_'.$section][$name] = $value; - } - - static function get_pref($section, $name) { - return v($_SESSION['pref_'.$section][$name]); - } - - static function destroy() { - unset($_SESSION['auth']); - unset($_SESSION['db']); - session_destroy(); - } - - static function close() { - session_write_close(); - } - } -} -?> \ No newline at end of file diff --git a/lib/sqlparser.php b/lib/sqlparser.php deleted file mode 100644 index a91e27d..0000000 --- a/lib/sqlparser.php +++ /dev/null @@ -1,502 +0,0 @@ -queriesFailed = 0; - $this->dbChanged = FALSE; - $this->tablesCreated = $this->tablesDropped = $this->tablesAltered = 0; - $this->viewsCreated = $this->viewsDropped = $this->procsCreated = $this->procsDropped = $this->triggersCreated = $this->triggersDropped = 0; - $this->rowsAffected = 0; - } -}; - -class SqlParser { - var $stopOnError; - var $db; - var $filePath; - var $fileName; - var $fileSize; - var $fileHandle; - var $string; - var $parse_complete; - var $offset; - var $charset_conversion; - var $compression; - - // internal - var $read_multiply; - var $errorMsg; - var $lastQuery; - var $numQueriesExecuted; - var $numQueriesFailed; - var $numRowsAffected; - var $executionTime; - var $callback; - var $callback_param; - - // this contain list of changes done by the batch import - var $stats; - - function __construct(&$db) { - $this->db = $db; - $this->stopOnError = true; - $this->filePath = ""; - $this->fileName = ""; - $this->fileSize = ""; - $this->fileHandle = ""; - $this->string = ""; - $this->stats = FALSE; - - $this->callback = false; - } - - function getError() { - return $this->errorMsg; - } - - function getLastQuery() { - return $this->lastQuery; - } - - function getExecutedQueries() { - return $this->numQueriesExecuted; - } - - function getFailedQueries() { - return $this->numQueriesFailed; - } - - function getRowsAffected() { - return $this->numRowsAffected; - } - - function getExecutedTime() { - // return formatted time output - return $this->db->getQueryTime($this->executionTime); - } - - function stopOnError($bool=true) { - $this->stopOnError = $bool; - } - - function collectStats() { - $this->stats = new SqlParserStats(); - } - - function getStats() { - return $this->stats; - } - - function setCallback( $fn, $param ) { - $this->callback = $fn; - $this->callback_param = $param; - } - - function set_compression($compression = FALSE) { - if ($compression) { - if ($compression == 'none' || $compression == 'gzip' || $compression == 'bzip') - $this->compression = $compression; - } - else { - if (substr($this->fileName, -5) == '.gzip' || substr($this->fileName, -3) == '.gz') - $this->compression = 'gzip'; - else if (substr($this->fileName, -5) == '.bzip' || substr($this->fileName, -3) == '.bz' || substr($this->fileName, -4) == '.bz2') - $this->compression = 'bzip'; - else - $this->compression = 'none'; - } - } - - function parse($filePath, $fileSize, $fileName) { - $this->filePath = $filePath; - $this->fileSize = $fileSize; - $this->fileName = $fileName; - - $this->set_compression(); - - $mode = $this->compression == 'none' ? 'rt' : 'r'; - $func = 'fopen'; - $func2 = 'fclose'; - switch($this->compression) { - case 'bzip': - $func = 'bzopen'; - $func2 = 'bzclose'; - break; - case 'gzip': - $func = 'gzopen'; - $func2 = 'gzclose'; - break; - } - - if (! ($handle = $func($this->filePath, $mode)) ) - return false; - - $x = $this->parseFile($handle); - $func2($handle); - - return $x; - } - - function parseFile($handle) - { - $this->numQueriesExecuted = 0; - $this->numQueriesFailed = 0; - $this->numRowsAffected = 0; - $this->fileHandle = $handle; - $this->read_multiply = 1; - $status = false; - $this->parse_complete = false; - $this->charset_conversion = false; - $this->executionTime = 0; - - $buffer = ''; - $sql = ''; - $start_pos = 0; - $i = 0; - $len = 0; - $big_value = 2147483647; - $sql_delimiter = ';'; - $error = FALSE; - $timeout_passed = FALSE; - $this->offset = 0; - - // Handle compatibility option - //if (isset($_REQUEST['sql_compatibility'])) { - // DBI_try_query('SET SQL_MODE="' . $_REQUEST['sql_compatibility'] . '"'); - //} - - $this->executionTime = $this->db->getMicroTime(); - while (!($this->parse_complete && $i >= $len) && !$error && !$timeout_passed) { - $data = $this->GetNextChunk(); - if ($data === FALSE) { - // subtract data we didn't handle yet and stop processing - $this->offset -= strlen($buffer); - break; - } elseif ($data === TRUE) { - // Handle rest of buffer - } else { - // Append new data to buffer - $buffer .= $data; - // free memory - unset($data); - // Do not parse string when we're not at the end and don't have ; inside - if ((strpos($buffer, $sql_delimiter, $i) === FALSE) && !$this->parse_complete) { - continue; - } - } - // Current length of our buffer - $len = strlen($buffer); - - // Grab some SQL queries out of it - while ($i < $len) { - $found_delimiter = false; - // Find first interesting character - $old_i = $i; - if (preg_match('/(\'|"|#|--|\/\*|`|(?i)DELIMITER )/', $buffer, $matches, PREG_OFFSET_CAPTURE, $i)) { - // in $matches, index 0 contains the match for the complete - // expression but we don't use it - $first_position = $matches[1][1]; - } else { - $first_position = $big_value; - } - /** - * @todo we should not look for a delimiter that might be - * inside quotes (or even double-quotes) - */ - // the cost of doing this one with preg_match() would be too high - $first_sql_delimiter = strpos($buffer, $sql_delimiter, $i); - if ($first_sql_delimiter === FALSE) { - $first_sql_delimiter = $big_value; - } else { - $found_delimiter = true; - } - - // set $i to the position of the first quote, comment.start or delimiter found - $i = min($first_position, $first_sql_delimiter); - - if ($i == $big_value) { - // none of the above was found in the string - - $i = $old_i; - if (!$this->parse_complete) { - break; - } - // at the end there might be some whitespace... - if (trim($buffer) == '') { - $buffer = ''; - $len = 0; - break; - } - // We hit end of query, go there! - $i = strlen($buffer) - 1; - } - - // Grab current character - $ch = $buffer[$i]; - - // Quotes - if (strpos('\'"`', $ch) !== FALSE) { - $quote = $ch; - $endq = FALSE; - while (!$endq) { - // Find next quote - $pos = strpos($buffer, $quote, $i + 1); - // No quote? Too short string - if ($pos === FALSE) { - // We hit end of string => unclosed quote, but we handle it as end of query - if ($this->parse_complete) { - $endq = TRUE; - $i = $len - 1; - } - $found_delimiter = false; - break; - } - // Was not the quote escaped? - $j = $pos - 1; - while ($buffer[$j] == '\\') $j--; - // Even count means it was not escaped - $endq = (((($pos - 1) - $j) % 2) == 0); - // Skip the string - $i = $pos; - - if ($first_sql_delimiter < $pos) { - $found_delimiter = false; - } - } - if (!$endq) { - break; - } - $i++; - // Aren't we at the end? - if ($this->parse_complete && $i == $len) { - $i--; - } else { - continue; - } - } - - // Not enough data to decide - if ((($i == ($len - 1) && ($ch == '-' || $ch == '/')) - || ($i == ($len - 2) && (($ch == '-' && $buffer[$i + 1] == '-') - || ($ch == '/' && $buffer[$i + 1] == '*')))) && !$this->parse_complete) { - break; - } - - // Comments - if ($ch == '#' - || ($i < ($len - 1) && $ch == '-' && $buffer[$i + 1] == '-' - && (($i < ($len - 2)) - || ($i == ($len - 1) && $this->parse_complete))) - || ($i < ($len - 1) && $ch == '/' && $buffer[$i + 1] == '*') - ) { - // Copy current string to SQL - if ($start_pos != $i) { - $sql .= substr($buffer, $start_pos, $i - $start_pos); - } - // Skip the rest - $j = $i; - $i = strpos($buffer, $ch == '/' ? '*/' : "\n", $i); - // didn't we hit end of string? - if ($i === FALSE) { - if ($this->parse_complete) { - $i = $len - 1; - } else { - break; - } - } - - // Skip * - if ($ch == '/') { - // Check for MySQL conditional comments and include them as-is - if ($buffer[$j + 2] == '!') { - $comment = substr($buffer, $j + 3, $i - $j - 3); - if (preg_match('/^[0-9]{5}/', $comment, $version)) { - //if ($version[0] <= MYSQL_INT_VERSION) { - $sql .= substr($comment, 5); - //} - } else { - $sql .= $comment; - } - } - $i++; - } - // Skip last char - $i++; - // Next query part will start here - $start_pos = $i; - // Aren't we at the end? - if ($i == $len) { - $i--; - } else { - continue; - } - } - // Change delimiter, if redefined, and skip it (don't send to server!) - if( strtoupper( substr( $buffer, $i, 10 ) ) == "DELIMITER " && ($i + 10 < $len) ) { - $new_line_pos = strpos( $buffer, "\n", $i + 10 ); - // it might happen that there is no EOL - if( FALSE === $new_line_pos ) { - $new_line_pos = $len; - } - $sql_delimiter = substr( $buffer, $i + 10, $new_line_pos - $i - 10 ); - $i = $new_line_pos + 1; - // Next query part will start here - $start_pos = $i; - continue; - } - - // End of SQL - if ($found_delimiter || ($this->parse_complete && ($i == $len - 1))) { - $tmp_sql = $sql; - if ($start_pos < $len) { - $length_to_grab = $i - $start_pos; - - if (! $found_delimiter) { - $length_to_grab++; - } - $tmp_sql .= substr($buffer, $start_pos, $length_to_grab); - unset($length_to_grab); - } - // Do not try to execute empty SQL - $sql = trim($tmp_sql); - if (!preg_match('/^([\s]*;)*$/', $sql)) { - $query_success = $this->db->query($sql); - if ($query_success) { - $this->numQueriesExecuted++; - $affectedRows = $this->db->getAffectedRows(); - if ($this->stats !== FALSE) - $this->updateStats($sql, $affectedRows); - if (!$this->db->hasResult()) - $this->numRowsAffected += $affectedRows; - } else { - $this->numQueriesFailed++; - if ($this->stats !== FALSE) - $this->stats->queriesFailed++; - $this->lastQuery = $sql; - $this->errorMsg = $this->db->getError(); - if ($this->stopOnError) { - $this->executionTime = $this->db->getMicroTime() - $this->executionTime; - return FALSE; - } - } - if ($this->callback) - call_user_func( $this->callback, $this->callback_param, $this->numQueriesExecuted ); - - $buffer = substr($buffer, $i + strlen($sql_delimiter)); - // Reset parser: - $len = strlen($buffer); - $sql = ''; - $i = 0; - $start_pos = 0; - - // Any chance we will get a complete query? - //if ((strpos($buffer, ';') === FALSE) && !$this->parse_complete) { - if ((strpos($buffer, $sql_delimiter) === FALSE) && !$this->parse_complete) { - break; - } - } else { - $i++; - $start_pos = $i; - } - } - } // End of parser loop - $status = true; - } // End of import loop - - $this->executionTime = $this->db->getMicroTime() - $this->executionTime; - return $status; - } - - function GetNextChunk($size = 32768) - { - // Add some progression while reading large amount of data - if ($this->read_multiply <= 8) { - $size *= $this->read_multiply; - } else { - $size *= 8; - } - $this->read_multiply++; - - /*if (checkTimeout()) { - return FALSE; - }*/ - - if ($this->parse_complete) { - return TRUE; - } - - $result = ''; - switch ($this->compression) { - case 'bzip': - $result = bzread($this->fileHandle, $size); - $this->parse_complete = feof($this->fileHandle); - break; - case 'gzip': - $result = gzread($this->fileHandle, $size); - $this->parse_complete = feof($this->fileHandle); - break; - default: - $result = fread($this->fileHandle, $size); - $this->parse_complete = feof($this->fileHandle); - break; - } - $this->offset += $size; - - if ($this->charset_conversion) { - return $result; - //return convert_string($charset_of_file, $charset, $result); - } else { - /** - * Skip possible byte order marks (I do not think we need more - * charsets, but feel free to add more, you can use wikipedia for - * reference: ) - * - * @todo BOM could be used for charset autodetection - */ - if ($this->offset == $size) { - // UTF-8 - if (strncmp($result, "\xEF\xBB\xBF", 3) == 0) { - $result = substr($result, 3); - // UTF-16 BE, LE - } elseif (strncmp($result, "\xFE\xFF", 2) == 0 || strncmp($result, "\xFF\xFE", 2) == 0) { - $result = substr($result, 2); - } - } - return $result; - } - } - - function updateStats(&$sql, $affectedRows) { - $info = getCommandInfo($sql); - if ($info['dbChanged']) - $this->stats->dbChanged = TRUE; - if ($info['dbAltered']) - $this->stats->dbAltered = TRUE; - } -} - -} -?> diff --git a/lib/tablechecker.php b/lib/tablechecker.php deleted file mode 100644 index 2d7b338..0000000 --- a/lib/tablechecker.php +++ /dev/null @@ -1,120 +0,0 @@ -db = $db; - } - - function setTables($tables) { - $this->tables = $tables; - } - - function setOperation($op) { - $this->operation = $op; - } - - function setOptions($options) { - $this->options = $options; - } - - function getSql() { - return $this->_sql; - } - - function runCheck() { - $cmd = $this->operation; - - if (v($this->options['skiplog']) === TRUE) - $cmd .= ' NO_WRITE_TO_BINLOG'; - - $cmd .= ' tables '; - - $bq = $this->db->getBackQuotes(); - - foreach($this->tables as $table) - $cmd .= $bq . $this->db->escape($table) . $bq . ','; - - $cmd = substr($cmd, 0, -1); - - $optfunc = $this->operation . 'Options'; - if (method_exists($this, $optfunc)) - $cmd .= ' ' . $this->$optfunc(); - - $this->_sql = $cmd; - - if (!$this->db->query($this->_sql)) - return false; - - return true; - } - - function checkOptions() { - $str = ''; - - switch($this->options['checktype']) { - case 'quick': $str .= ' QUICK'; - break; - case 'extended': $str .= ' EXTENDED'; - break; - case 'fast': $str .= ' FAST'; - break; - case 'meduin': $str .= ' MEDIUM'; - break; - case 'changed': $str .= ' CHANGED'; - break; - } - - return $str; - } - - function repairOptions() { - $str = ''; - - if (in_array('quick', $this->options['repairtype'])) - $str .= ' QUICK'; - else if (in_array('extended', $this->options['repairtype'])) - $str .= ' EXTENDED'; - else if (in_array('usefrm', $this->options['repairtype'])) - $str .= ' USE_FRM'; - - return $str; - } - - function getResults() { - $results = array(); - while($row = $this->db->fetchRow()) { - switch($row['Msg_type']) { - case 'Error': - $results[$row['Table']] = array('type' => 'error', 'msg' => $row['Msg_text']); - break; - case 'note': - if(!isset($results[$row['Table']])) - $results[$row['Table']] = array('type' => 'note', 'msg' => $row['Msg_text']); - break; - case 'status': - if(!isset($results[$row['Table']])) - $results[$row['Table']] = array('type' => 'success', 'msg' => $row['Msg_text']); - break; - } - } - - return $results; - } -} -?> \ No newline at end of file diff --git a/lib/tableeditor.php b/lib/tableeditor.php deleted file mode 100644 index 7f4d8f1..0000000 --- a/lib/tableeditor.php +++ /dev/null @@ -1,482 +0,0 @@ -db = $db; - $this->_loaded = false; - $this->_modified = false; - $this->fields = false; - $this->deleteFields = false; - $this->indexes = false; - $this->properties = false; - - $this->backquote = $db->getBackQuotes(); - } - - function loadTable($fields=true, $indexes=true, $props=true) { - if($fields == true) { - $sql = "show fields from ".$this->backquote.$this->db->escape($this->table).$this->backquote; - if (!$this->db->query($sql, "create_stmt")) - return FALSE; - - $this->fields = array(); - while($row = $this->db->fetchRow("create_stmt")) - $this->fields[] = $this->fetchFieldInfo($row); - } - - if ($indexes == true) { - if (!$this->fetchIndexInfo()) - return FALSE; - } - - if ($props == true) { - $row = $this->db->getTableProperties($this->table); - $this->properties = $this->fetchTableProperties($row); - } - - $this->_loaded = true; - return TRUE; - } - - function setName($name) { - $this->table = $name; - $this->_modified = true; - } - - function setFields($fields) { - $this->fields = $fields; - $this->_modified = true; - } - - function setIndexes($indexes) { - $this->indexes = $indexes; - $this->_modified = true; - } - - function setProperties($properties) { - $this->properties = $properties; - $this->_modified = true; - } - - function deleteFields($fields) { - $this->deleteFields = $fields; - $this->_modified = true; - } - - function getName() { - return $this->table; - } - - function getFields() { - return $this->fields; - } - - function getIndexes() { - return $this->indexes; - } - - function getProperties() { - return $this->properties; - } - - function getSql() { - return $this->_sql; - } - - function getCreateStatement() { - if(!$this->_modified) - return $this->_sql; - - $str = 'CREATE TABLE '.$this->backquote.$this->db->escape($this->table).$this->backquote." (\n"; - $list = $this->fields; - - for($i=0; $igetFieldDefinition($one) . ",\n"; - } - - $key = $this->generateKeyStatement(); - $str = $key == '' ? substr($str, 0, -2) : $str . $key; - - $str .= "\n)\n"; - - $str .= $this->generatePropsStatement(); - - $this->_sql = $str; - - return $str; - } - - function getAlterStatement() { - if(!$this->_modified) - return $this->_sql; - - $str = ''; - - if ($this->deleteFields) { - $list = $this->deleteFields; - - for($i=0; $ibackquote . $fname . $this->backquote . ",\n"; - } - } - - if ($this->fields) { - $list = $this->fields; - for($i=0; $ifstate; - if ($state == 'new') { - $str .= 'ADD COLUMN ' . $this->getFieldDefinition($one); - if ($i == 0) - $str .= ' FIRST'; - else { - $prev_field = $list[$i-1]; - $str .= ' AFTER ' . $this->backquote . $prev_field->fname . $this->backquote; - } - $str .= ",\n"; - } - } - - for($i=0; $ifstate; - if ($state == 'change') - $str .= 'CHANGE ' . $this->backquote . $one->oname . $this->backquote . ' ' . $this->getFieldDefinition($one) . ",\n"; - } - } - - if ($this->fields || $this->indexes) - $str .= $this->generatePrimaryKeyStatement(); - - if ($this->properties) { - $str2 = $this->generatePropsStatement(); - if ($str2 != '') - $str .= $str2; - else - $str = substr($str, 0, -2); - } - - if ($str != '') - $str = 'ALTER TABLE '.$this->backquote.$this->db->escape($this->table).$this->backquote."\n" . $str; - - $this->_sql = $str; - - return $str; - } - - /* used in create command */ - function generateKeyStatement() { - $str = ''; - $numKeys = 0; - $list = $this->fields; - - for($i=0; $ifpkey) { - $str .= $this->backquote . $this->db->escape($one->fname) . $this->backquote . ','; - $numKeys++; - } - } - - if ($numKeys > 0) { - $str = 'PRIMARY KEY (' . substr($str, 0, -1) . ')'; - } - return $str; - } - - /* used in alter command */ - function generatePrimaryKeyStatement() { - $this->fetchIndexInfo(); - $pkey = isset($this->indexes['PRIMARY']) ? $this->indexes['PRIMARY'] : array(); - - $str = ''; - - $old = array(); - for($i=0; $icolumn; - - $new = array(); - for($j=0; $jfields); $j++) { - $one = $this->fields[$j]; - if ($one->fpkey == 'Yes') - $new[] = $one->oname; - } - - if ( count($old) > 0 && !$this->isIndexMatch($old, $new) ) - $str .= " DROP PRIMARY KEY,\n"; - - if ( count($new) > 0 && !$this->isIndexMatch($old, $new) ) { - $str2 = ''; - for($i=0; $ifields); $i++) { - $one = $this->fields[$i]; - if ($one->fpkey == 'Yes') - $str2 .= $this->backquote.$one->fname.$this->backquote.','; - } - $str .= " ADD PRIMARY KEY(".substr($str2, 0, -1)."),\n"; - } - - return $str; - } - - /* used in create, alter command */ - function generatePropsStatement() { - if(!$this->_modified) - return ''; - $str = ''; - - $row = $this->db->getTableProperties($this->table); - $oldProps = $this->fetchTableProperties($row); - - if(v($this->properties->engine) && v($this->properties->engine) != v($oldProps->engine)) - $str .= ' ENGINE='.$this->db->escape($this->properties->engine); - - if(v($this->properties->charset) && v($this->properties->charset) != v($oldProps->charset)) - $str .= ' CHARSET='.$this->db->escape($this->properties->charset); - - if(v($this->properties->collation) && v($this->properties->collation) != v($oldProps->collation)) - $str .= ' COLLATE='.$this->db->escape($this->properties->collation); - - if(v($this->properties->comment) && v($this->properties->comment) != v($oldProps->comment)) - $str .= " COMMENT='".$this->db->escape($this->properties->comment) . "'"; - - return $str; - } - - function fetchFieldInfo($row) { - $field = new StdClass(); - $field->fname = $row['Field']; - - $len = strpos($row['Type'], '('); - if ($len === FALSE) { // normal field type without any length - $field->ftype = strtolower($row['Type']); - $field->flen = ''; - $field->flist = ''; - } - else { - $field->ftype = strtolower(substr($row['Type'], 0, $len)); - if ($field->ftype == 'enum' || $field->ftype == 'set') { // enum or set type with list of values - $field->flen = ''; - $regex = "/\('(.*)'\)/"; - preg_match_all($regex, $row['Type'], $list); - $field->flist = array_map(function($s) { return str_replace("''", "'", $s); }, explode("','", $list[1][0])); - } - else { // field type with valid length identifier - $len2 = strpos($row['Type'], ')', $len); - $field->flen = ($len2 === FALSE ) ? '' : substr($row['Type'], $len+1, $len2-$len-1); - $field->flist = ''; - } - } - - $field->fval = $row['Default']; - //@todo: fix the following with proper regex search - $field->fsign = strpos($row['Type'], ' unsigned') === FALSE ? '0' : '1'; - $field->fzero = strpos($row['Type'], ' zerofill') === FALSE ? '0' : '1'; - $field->fpkey = $row['Key'] == 'PRI' ? '1' : '0'; - $field->fauto = strpos($row['Extra'], 'auto_increment') === FALSE ? '0' : '1'; - $field->fnull = $row['Null'] == 'NO' ? '1' : '0'; - - if ( $field->fnull == '1' && $field->fval == null) - $field->fval = ''; - - return $field; - } - - function fetchIndexInfo($return = false) { - $indexes = array(); - - $sql = "show indexes from ".$this->backquote.$this->db->escape($this->table).$this->backquote; - if (!$this->db->query($sql, "index_stmt")) - return FALSE; - while($row = $this->db->fetchRow("index_stmt")) { - $key_name = $row['Key_name']; - $index = new StdClass(); - $index->column = $row['Column_name']; - $index->type = $row['Index_type']; - $index->unique = $row['Non_unique'] == '1' ? '0' : '1'; - $index->order = $row['Seq_in_index']; - - if (!isset($indexes[$key_name])) - $indexes[$key_name] = array(); - - $indexes[$key_name][] = $index; - } - - if ($return) - return $indexes; - - $this->indexes = $indexes; - return TRUE; - } - - function fetchTableProperties($row) { - $props = new StdClass(); - $props->engine = $row['Engine']; - $props->charset = ''; - $props->collation = $row['Collation']; - $props->comment = $row['Comment']; - - // find out the charset is a bit trickier than you think... - $sql = "show collation like '".$this->db->escape($props->collation)."'"; - if (!$this->db->query($sql, "temp_stmt") || $this->db->numRows("temp_stmt") == 0) - return $props; - - $row = $this->db->fetchRow("temp_stmt"); - $props->charset = $row['Charset']; - - return $props; - } - - function getFieldDefinition($one) { - $str = $this->backquote.$one->fname.$this->backquote.' '.$one->ftype; - - if (v($one->flist) && count($one->flist) > 0) { // enum/set values - $str2 = '('; - for($j=0; $jflist);$j++) - $str2 .= "'" . str_replace("'", "\'", $one->flist[$j]) . "',"; - $str .= substr($str2, 0, -1) . ')'; - unset($str2); - } - else if (v($one->flen)) - $str .= '(' . $one->flen . ')'; - - if ($one->fsign) - $str .= ' UNSIGNED'; - - if ($one->fzero) - $str .= ' ZEROFILL'; - - if ( $one->fval != '' ) { - $str .= ' DEFAULT ' . $this->getDefaultValueText($one->fval); - } - - if ( $one->fnull ) - $str .= ' NOT NULL'; - - if ($one->fauto) - $str .= ' AUTO_INCREMENT'; - - return $str; - } - - function getDefaultValueText($val) { - if ($val == 'NULL') - return 'NULL'; - - return $val; - } - - function getAlterIndexStatement() { - if(!$this->_modified) - return $this->_sql; - - $oldList = $this->fetchIndexInfo(true); - $list = $this->indexes; - - $str = 'ALTER TABLE '.$this->backquote.$this->db->escape($this->table).$this->backquote."\n"; - - // delete indexes no longer required - foreach($oldList as $key => $info) { - if(array_key_exists($key, $list) === FALSE) { - if ($key == 'PRIMARY') - $str .= 'DROP PRIMARY KEY'. ",\n"; - else - $str .= 'DROP KEY ' . $this->backquote . $key . $this->backquote . ",\n"; - } - } - - // add/modify remaining indexes - foreach($list as $key => $info) { - $match = false; - if(array_key_exists($key, $oldList)) { - $match = $this->matchIndexes($info, $oldList[$key]); - // if indexes are different, only then delete and recreate - if ( !$match ) { - if ($key == 'PRIMARY') - $str .= 'DROP PRIMARY KEY'. ",\n"; - else - $str .= 'DROP KEY ' . $this->backquote . $key . $this->backquote . ",\n"; - } - } - - // add index only if added/changed - if ( !$match ) { - $str .= 'ADD '; - if (v($info[0]->unique) && $key != 'PRIMARY') - $str .= 'UNIQUE '; - if (v($info[0]->type) == 'FULLTEXT') - $str .= 'FULLTEXT '; - - if ($key == 'PRIMARY') - $str .= 'PRIMARY KEY '; - else - $str .= 'KEY ' . $this->backquote . $this->db->escape($key) . $this->backquote; - - $str .= '('; - foreach($info as $field) { - if (v($field->length) != '') - $str .= $this->backquote . $this->db->escape($field->column) . $this->backquote . '(' . $field->length . '),'; - else - $str .= $this->backquote . $this->db->escape($field->column) . $this->backquote . ','; - } - - $str = substr($str, 0, -1); - $str .= ')' . ",\n"; - } - } - - $str = substr($str, 0, -2); - $this->_sql = $str; - - return $str; - } - - function matchIndexes($new, $old) { - if (count($new) != count($old)) - return false; - - foreach($new as $key => $info) { - if (!isset($old[$key]) || $info != $old[$key]) - return false; - } - - foreach($old as $key => $info) { - if (!isset($new[$key]) || $info != $new[$key]) - return false; - } - - return true; - } - - function isIndexMatch($old, $new) { - sort($old); - sort($new); - - return ($old === $new); - } -} -?> \ No newline at end of file diff --git a/lib/tablesearch.php b/lib/tablesearch.php deleted file mode 100644 index 1e2069f..0000000 --- a/lib/tablesearch.php +++ /dev/null @@ -1,122 +0,0 @@ -4db = $db; - } - - function setText($keyword) { - $this->text = $keyword; - } - - function setTables($tables) { - $this->tables = $tables; - } - - function setOperator($op) { - $this->operator = $op; - } - - function setFieldTypes($types) { - $this->fieldTypes = $types; - } - - function search() { - $opFunc = 'op_' . $this->operator; - if (!method_exists($this, $opFunc)) - return false; - - $post_fix = $this->$opFunc(); - $this->_queries = array(); - $this->results = array(); - foreach($this->tables as $table) { - $this->results[$table] = array('matches' => 0, 'link' => ''); - $sql = 'select count(*) as matches from ' . $this->db->quote($table) . ' where '; - $fields = $this->getFields($table); - if (count($fields) == 0) - continue; - for($i=0; $i<(count($fields)-1); $i++) - $sql .= $this->db->quote( $fields[$i] ) . $post_fix . ' OR '; - $sql .= $this->db->quote($fields[$i]) . $post_fix; - - if (!$this->db->query($sql, '_search')) - return false; - - $row = $this->db->fetchRow('_search'); - $this->results[$table]['matches'] = $row[0]; - if ($this->results[$table]['matches'] > 0) - $this->_queries[$table] = str_replace('count(*) as matches', '*', $sql); - } - return true; - } - - function getFields($table) { - $folder = $this->db->name(); - require( find_view( array($folder.'/templates/datatypes', 'templates/datatypes') ) ); - - $table_fields = $this->db->getTableFields( $table ); - $fields = array(); - - for($i=0; $itype, $matches); - $fieldType = count($matches) > 1 ? $matches[1] : $table_fields[$i]->type; - $dataType = isset($dataTypes[$fieldType]) ? $dataTypes[$fieldType]['type'] : ''; - if (isset($this->fieldTypes[$dataType]) && $this->fieldTypes[$dataType]) - $fields[] = $table_fields[$i]->name; - } - return $fields; - } - - function getResults() { - return $this->results; - } - - function getQueries() { - return $this->_queries; - } - - private function op_equal() { - // for numeric fields, the equality operator must not use quoted text - if ($this->fieldTypes['numeric']) - return '='.$this->text; - else - return '=\''.$this->db->escape($this->text).'\''; - } - - private function op_like() { - return ' like \''.$this->db->escape($this->text).'\''; - } - - private function op_wildcard() { - return ' like \'%'.$this->db->escape($this->text).'%\''; - } - - private function op_greater() { - return '>\''.$this->db->escape($this->text).'\''; - } - - private function op_lesser() { - return '<\''.$this->db->escape($this->text).'\''; - } - -} -?> \ No newline at end of file diff --git a/lib/user.php b/lib/user.php deleted file mode 100644 index 1fc7ee9..0000000 --- a/lib/user.php +++ /dev/null @@ -1,220 +0,0 @@ - - * @maintainer Samnan ur Rehman - * @copyright (c) 2008-2014 Samnan ur Rehman - * @web https://github.com/Samnan/MyWebSQL - * @license https://github.com/Samnan/MyWebSQL/license - */ - -abstract class User { - protected static $dbManager; - - public $userName; - public $host; - public $password; - - protected $globalPrivileges; - protected $dbPrivileges; - - public static function setDb($dbManager) { - self::$dbManager = $dbManager; - - Privileges::setDb( $dbManager ); - } - - public static function factory($legacy = false) { - if( $legacy ) - return new User_4x(); - - return new User_5x(); - } - - public function __construct() { - $this->userName = false; - $this->host = false; - $this->password = false; - - $this->globalPrivileges = false; - $this->dbPrivileges = array(); - } - - public abstract function add($native = false); - - public abstract function update($newUsername, $newHost = '%'); - - public function updatePassword($newPassword = '', $native = false) { - if( false == $this->userName || false == $this->host ) - return false; - - $userName = self::$dbManager->escape( $this->userName ); - $host = self::$dbManager->escape( $this->host ); - $password = self::$dbManager->escape( $newPassword ); - - $sql = "SET PASSWORD FOR '$userName'@'$host' = PASSWORD('$password')"; - - if( false == self::$dbManager->query( $sql ) ) - return false; - - $this->password = $newPassword; - - return true; - } - - public function delete() { - if( false == $this->userName || false == $this->host ) - return false; - - $userName = self::$dbManager->escape( $this->userName ); - $host = self::$dbManager->escape( $this->host ); - - $sql = "DROP USER '$userName'@'$host'"; - - return self::$dbManager->query( $sql ); - } - - public function getGlobalPrivileges() { - if( false == $this->globalPrivileges ) - $this->globalPrivileges = new Privileges( $this->userName, $this->host ); - - return $this->globalPrivileges->get(); - } - - public function setGlobalPrivileges($privileges) { - if( false == $this->globalPrivileges ) - $this->globalPrivileges = new Privileges( $this->userName, $this->host ); - - return $this->globalPrivileges->set( $privileges ); - } - - public function getDbPrivileges($dbName) { - $dbName = trim( $dbName ); - if( false == isset( $this->dbPrivileges[$dbName] ) ) - $this->dbPrivileges[$dbName] = new DbPrivileges( $this->userName, $this->host, $dbName ); - - return $this->dbPrivileges[$dbName]->get(); - } - - public function setDbPrivileges($dbName, $privileges) { - $dbName = trim( $dbName ); - if( false == isset( $this->dbPrivileges[$dbName] ) ) - $this->dbPrivileges[$dbName] = new DbPrivileges( $this->userName, $this->host, $dbName ); - - return $this->dbPrivileges[$dbName]->set( $privileges ); - } -} - -/** - * The user class for MySQL version 4.x - */ -class User_4x extends User { - public function __construct() { - parent::__construct(); - } - - public function add($native = false) { - if( false == $this->userName || false == $this->host ) - return false; - - $userName = self::$dbManager->escape( $this->userName ); - $host = self::$dbManager->escape( $this->host ); - $password = self::$dbManager->escape( $this->password ); - - $sql = "GRANT USAGE ON *.* TO '$userName'@'$host' IDENTIFIED BY '$password'"; - - return self::$dbManager->query( $sql ); - } - - public function update($newUsername, $newHost = '%') { - $username = self::$dbManager->escape( $newUsername ); - $host = self::$dbManager->escape( $newHost ); - - if( false == $this->userName || false == $this->host || false == $username || false == $host ) - return false; - - // @@todo update the user table to update the username and host - $tableName = Privileges::$privilegesTable; - $sql = "UPDATE $tableName SET `User` = '$username', `Host` = '$host' WHERE `User` = '{$this->userName}' AND `Host` = '{$this->host}'"; - self::$dbManager->query( $sql ); - - // @@todo update the db tables to update the username and host - $tableName = DbPrivileges::$privilegesTable; - $sql = "UPDATE $tableName SET `User` = '$username', `Host` = '$host' WHERE `User` = '{$this->userName}' AND `Host` = '{$this->host}'"; - self::$dbManager->query( $sql ); - - $this->userName = $newUsername; - $this->host = $newHost; - - return true; - } -} - -/** - * The user class for MySQL version 5.x - */ -class User_5x extends User { - public function __construct() { - parent::__construct(); - } - - public function add($native = false) { - if( false == $this->userName || false == $this->host ) - return false; - - $userName = self::$dbManager->escape( $this->userName ); - $host = self::$dbManager->escape( $this->host ); - $password = self::$dbManager->escape( $this->password ); - - $sql = "CREATE USER '$userName'@'$host' IDENTIFIED"; - if($native) { - $sql .= " WITH mysql_native_password"; - } - $sql .= " BY '$password'"; - - return self::$dbManager->query( $sql ); - } - - public function update($newUsername, $newHost = '%') { - $newUsername = self::$dbManager->escape( $newUsername ); - $newHost = self::$dbManager->escape( $newHost ); - - if( false == $newUsername || false == $newHost ) - return false; - - $sql = "RENAME USER '{$this->userName}'@'{$this->host}' TO '$newUsername'@'$newHost'"; - - if( false == self::$dbManager->query( $sql ) ) - return false; - - $this->userName = $newUsername; - $this->host = $newHost; - - return true; - } - - public function updatePassword($newPassword = '', $native = false) { - if( false == $this->userName || false == $this->host ) - return false; - - $userName = self::$dbManager->escape( $this->userName ); - $host = self::$dbManager->escape( $this->host ); - $password = self::$dbManager->escape( $newPassword ); - - $sql = "ALTER USER '$userName'@'$host' IDENTIFIED"; - if($native) { - $sql .= " WITH mysql_native_password"; - } - $sql .= " BY '$password'"; - - if( false == self::$dbManager->query( $sql ) ) - return false; - - $this->password = $newPassword; - - return true; - } -} \ No newline at end of file diff --git a/lib/usermanager.php b/lib/usermanager.php deleted file mode 100644 index 2a9a28d..0000000 --- a/lib/usermanager.php +++ /dev/null @@ -1,94 +0,0 @@ - - * @maintainer Samnan ur Rehman - * @copyright (c) 2008-2014 Samnan ur Rehman - * @web https://github.com/Samnan/MyWebSQL - * @license https://github.com/Samnan/MyWebSQL/license - */ - -include_once 'privileges.php'; -include_once 'user.php'; - -class UserManager { - protected $db; - protected $legacy; - - public function __construct( $db, $legacy = false ) { - $this->db = $db; - $this->legacy = (bool)$legacy; - - User::setDb( $this->db ); - } - - public function getUser($userName, $host = '%') { - $user = User::factory( $this->legacy ); - $user->userName = $userName; - $user->host = $host; - - return $user; - } - - public function add($userName, $host = '%', $password = '', $native = false) { - $user = User::factory( $this->legacy ); - - $user->userName = $userName; - $user->host = $host; - $user->password = $password; - - return $user->add($native); - } - - public function update($currUsername, $currHost, $newUsername, $newHost) { - $user = User::factory( $this->legacy ); - - $user->userName = $currUsername; - $user->host = $currHost; - - return $user->update( $newUsername, $newHost ); - } - - public function updatePassword($userName, $host, $newPassword, $native = false) { - $user = User::factory( $this->legacy ); - - $user->userName = $userName; - $user->host = $host; - - return $user->updatePassword( $newPassword, $native ); - } - - public function delete($userName, $host) { - $user = User::factory( $this->legacy ); - - $user->userName = $userName; - $user->host = $host; - - return $user->delete(); - } - - public function getUsersList() { - $tblName = Privileges::$privilegesTable; - - $sql = "SELECT `User`, `Host` FROM $tblName ORDER BY `User`, `Host`"; - - if( false == $this->db->query( $sql ) ) - return array(); - - $users = array(); - while( $row = $this->db->fetchRow() ) { - $user = User::factory( $this->legacy ); - - $user->userName = $row['User']; - $user->host = $row['Host']; - $user->password = ''; - - $users[] = $user; - } - - return $users; - } -} \ No newline at end of file diff --git a/lib/util.php b/lib/util.php deleted file mode 100644 index b4e3ab2..0000000 --- a/lib/util.php +++ /dev/null @@ -1,606 +0,0 @@ -getDatabases(); - } - - function printDbList(&$db) { - $dblist = getDbList($db); - - // if there is one database for the given userid, let's select it to cut out one extra step - if (! Session::get('db', 'name') ) { - $stDb = 0; $selDb = ""; - $stDbList = $db->getStandardDbList(); - foreach($dblist as $dbname) { - if ( in_array($dbname, $stDbList) ) - $stDb++; - else - $selDb = $dbname; - } - if (count($dblist) == ($stDb+1)) { - Session::set('db', 'name', $selDb); - $db->selectDb(Session::get('db', 'name')); - } - } - // --- end of automatic selection logic - - if (getDbName()) { - $folder = $db->name(); - echo view(array($folder.'/dblist', 'dblist'), array(), $dblist); - } - else { - print ''.__('Select a database to begin').'.'; - } - return $dblist; - } - - function getDBClass() { - // use the common driver to connect to database - if ( ! Session::get('auth', 'valid') ) - return array(BASE_PATH . '/lib/db/manager.php', 'DbManager'); - - $driver = Session::get('db', 'driver'); - if ( !$driver || empty($driver) ) - return array(BASE_PATH . '/lib/db/manager.php', 'DbManager'); - - $lib = BASE_PATH . '/lib/db/'.$driver.'.php'; - $class = 'DB_' . ucfirst( str_replace('/', '_', $driver) ); - return array($lib, $class); - } - - function execute_request(&$db) { - // do not append or prepend anything to output if we have to download - $output = v($_REQUEST["type"]) == 'download' ? false: true; - - if ( $output ) { - startForm($db); - } - - if ( isset($_REQUEST["type"]) ) { - $module_requested = $_REQUEST["type"]; - $_REQUEST["query"] = trim(v($_REQUEST["query"], ""), " \t\r\n;"); - $module = BASE_PATH . "/modules/".$module_requested.".php"; - if (ctype_alpha( $module_requested ) && file_exists($module)) { - require( BASE_PATH . '/config/modules.php' ); - // check for module access type and allow/disallow as needed - if (MODULE_ACCESS_MODE == 'deny' && in_array($module_requested, $DENY_MODULES)) { - createErrorPage(); - } - else if (MODULE_ACCESS_MODE == 'allow' && !in_array($module_requested, $ALLOW_MODULES)) { - createErrorPage(); - } else { - include($module); - function_exists('processRequest') ? processRequest($db) : createErrorGrid($db, ""); - } - } - else - createErrorPage(); // unidentified type requested - } - - if ( $output ) { - print "\n"; - print ""; - } - } - - function createResultGrid(&$db) - { - Session::del('select', 'pkey'); - Session::del('select', 'ukey'); - Session::del('select', 'mkey'); - Session::del('select', 'unique_table'); // this is different from the one used for viewing table data - - $record_limit = Options::get('res-max-count', MAX_RECORD_TO_DISPLAY); - //
    "; - print "\n"; - - $f = $db->getFieldInfo(); - - // see if all fields come from one table so we can allow editing - if (Session::get('select', 'can_limit') && count($f) > 0) { - Session::set('select', 'unique_table', $f[0]->table); - for($i=1; $itable != Session::get('select', 'unique_table')) { // bail out, more than one table data - Session::del('select', 'unique_table'); - break; - } - } - } - - // desc command returns table name as COLUMNS, so we make it empty - //if (Session::get('select', 'unique_table') == "COLUMNS") - // Session::del('select', 'unique_table'); - - $ed = Session::get('select', 'can_limit') && (Session::get('select', 'unique_table') == "" ? false : true);// && ($db->numRows() > 0); - // ------------ print header ----------- - print ""; - print ""; - - if ($ed) - print ""; - - $v = ""; - // more than one field can be part of a primary key (composite key) - Session::set('select', 'pkey', array()); - Session::set('select', 'ukey', array()); - Session::set('select', 'mkey', array()); - - $fieldNames = ''; - $fieldInfo = json_encode($f); - $i = 1; - foreach($f as $fn) { - $cls = $fn->type == 'numeric' ? "th_numeric" : "th"; - print ""; - $fieldNames .= "'" . str_replace("'", "\\'", $fn->name) . "',"; - } - - print "\n"; - - // ------------ print data ----------- - $j = 0; - while($r = $db->fetchRow(0, 'num')) { - $i = 0; - print ""; - print ""; - - if ($ed) - print ""; - - foreach($r as $rs) { - $class = ($rs === NULL) ? "tnl" : ($f[$i]->numeric == 1 ? "tr" : "tl"); - if ($ed) $class .= ' edit'; - //if ($f[$i]->blob) - // $class .= $f[$i]->type == 'binary' ? ' blob' : ' text'; - - if (!$f[$i]->blob) - $data = ($rs === NULL) ? "NULL" : (($rs === "") ? "" : htmlspecialchars($rs)); - else - $data = getBlobDisplay($rs, $f[$i], $j, $ed); - - print ""; - $i++; - } - print "\n"; - $j++; - if (Session::get('select', 'can_limit') && $record_limit > 0 && $j >= $record_limit) - break; - } - - $numRows = $j; - print "
    #
    "; - if ($fn->pkey == 1) { - Session::add('select', 'pkey', $fn->name); - print " "; - } - else if ($fn->ukey == 1) { - Session::add('select', 'ukey', $fn->name); - print " "; - } - else if ($fn->mkey == 1 && !$fn->blob) // blob/text fields are FULL TEXT KEYS only - Session::add('select', 'mkey', $fn->name); - - print $fn->name; - - if (Session::get('select', 'sortcol') == $i) { - print ( Session::get('select', 'sort') == 'DESC' ? ' ▾' : ' ▴' ); - } - - $i++; - - print "
    ".($j+1)."$data
    "; - print ""; - - $editTableName = Session::get('select', 'unique_table'); - $gridTitle = $editTableName == '' ? __('Query Results') : - str_replace('{{TABLE}}', htmlspecialchars($editTableName), __('Data for {{TABLE}}')); - print '
    '. $gridTitle . '
    '; - - $message = ''; - if (Session::get('select', 'can_limit')) { // can limit be applied to this type of query (e.g. show,explain cannot be limited/sorted) - if (Session::get('select', 'limit')) { // yes, and limit is applied to records by the application - $total_records = Session::get('select', 'count'); - $total_pages = ceil($total_records / $record_limit); - $current_page = Session::get('select', 'page'); - $from = (($current_page - 1) * $record_limit) + 1; - $to = $from + $db->numRows() - 1; - $message = "
    ".str_replace(array('{{START}}', '{{END}}'), array($from, $to), __('Showing records {{START}} - {{END}}'))."
    "; - } - else { - $total_records = $db->numRows(); - $total_pages = 1; - $current_page = 1; - if ($record_limit > 0 && $total_records > $record_limit) - $message = "
    ".str_replace('{{MAX}}', $record_limit, __('Showing first {{MAX}} records only'))."!
    "; - } - } - else { - $total_records = $db->numRows(); - $total_pages = 1; - $current_page = 1; - $message = ""; - } - $js = "\n"; - print $js; - } - - function createSimpleGrid(&$db, $message) { - print "
    "; - print "
    $message".__('Quick Search')." 
    "; - - print "\n"; - - $f = $db->getFieldInfo(); - - $ed = false; - // ------------ print header ----------- - print ""; - print ""; - - $v = ""; - - foreach($f as $fn) { - $cls = $fn->type == 'numeric' ? "th_numeric" : "th"; - $dsrt = $fn->type == 'numeric' ? "numeric" : "text"; - print ""; - } - - print "\n"; - - // ------------ print data ----------- - $j = 0; - while($r = $db->fetchRow(0, 'num')) { - $i = 0; - print ""; - print ""; - - foreach($r as $rs) { - $class = ($rs === NULL) ? "tnl" : ($f[$i]->numeric == 1 ? "tr" : "tl"); - if ($f[$i]->blob) - $class .= $f[$i]->type == 'binary' ? ' blob' : ' text'; - - $data = ($rs === NULL) ? "NULL" : (($rs === "") ? " " : htmlspecialchars($rs)); - - print ""; - $i++; - } - print "\n"; - $j++; - } - - $numRows = $j; - print "
    #
    "; - print $fn->name."
    ".($j+1)."$data
    "; - print "
    "; - - $js = "\n"; - - print $js; - } - - function createErrorPage() { - echo view('error_page'); - } - - // numQueries = number of 'successful' executed queries - // affectedRows = some rows maybe affected in batch processing, even if error occured - function createErrorGrid(&$db, $query='', $numQueries=0, $affectedRows=-1) { - if ($query == '') - $query = Session::get('select', 'query'); - - Session::del('select', 'result'); - Session::del('select', 'pkey'); - Session::del('select', 'ukey'); - Session::del('select', 'mkey'); - Session::del('select', 'unique_table'); - - Session::set('select', 'result', array()); // result blob data - $e = $db->getError(); - print "
    \n"; - if ($numQueries > 0) { - print "
    "; - $msg = ($numQueries == 1) ? __('1 query successfully executed') : str_replace('{{NUM}}', $numQueries, __('{{NUM}} queries successfully executed')); - $msg .= ".

    ".str_replace('{{NUM}}', $affectedRows, __('{{NUM}} record(s) were affected')).".

    "; - print $msg . '
    '; - } - //else - // print "No query was successful"; - - $formatted_query = preg_replace("/[\\n|\\r]?[\\n]+/", "
    ", htmlspecialchars($query)); - print "
    ".__('Error occurred while executing the query').":
    ".htmlspecialchars($e)."
    ".$formatted_query."
    "; - print "
    "; - print "\n"; - } - - // batch process will send default params as required - function createInfoGrid(&$db, $query="", $numQueries=1, $affectedRows=-1, $addHistory=true, $executionTime=false) { - Session::del('select', 'pkey'); - Session::del('select', 'ukey'); - Session::del('select', 'mkey'); - Session::del('select', 'unique_table'); - - if ($affectedRows == -1) - $affectedRows = $db->getAffectedRows(); - if ($query == "") - $query = $_REQUEST["query"]; - print "
    \n"; - print "
    "; - $msg = ($numQueries == 1) ? __('1 query successfully executed') : str_replace('{{NUM}}', $numQueries, __('{{NUM}} queries successfully executed')); - print $msg . ".
    "; - print "
    ".str_replace('{{NUM}}', $affectedRows, __('{{NUM}} record(s) were affected'))."
    "; - - if ($numQueries == 1) { - $formatted_query = preg_replace("/[\\n|\\r]?[\\n]+/", "
    ", htmlspecialchars($query)); - print "
    ".$formatted_query."
    "; - - $warnings = $db->getWarnings(); - if (count($warnings) > 0) { - print '
    '; - foreach($warnings as $warning) - print htmlspecialchars($warning) . '
    '; - print '
    '; - } - } - - print "
    "; - $tm = $executionTime ? $executionTime : $db->getQueryTime(); - print "\n"; - } - - function getQueryType($query) { - $type = array('result'=>FALSE,'can_limit'=>FALSE,'has_limit'=>FALSE,'update'=>FALSE); - $q = trim($query, " \n\t"); - $q = strtolower(substr($query, 0, 7)); // work on only first few required characters of query - if( $q == "explain" || substr($q, 0, 6) == "select" || substr($q, 0, 4) == "desc" - || substr($q, 0, 4) == "show" || substr($q, 0, 4) == "help" ) { - $type['result'] = TRUE; - if (substr($q, 0, 6) == "select") { - $type['can_limit'] = TRUE; // we don't want to limit results for other queries like 'show...' - preg_match(LIMIT_REGEXP, $query, $matches); - if (count($matches) == 3) { - $type['has_limit'] = true; - } - } - } - else - $type['update'] = TRUE; - - return $type; - } - - function sortQuery($query, $field) { - $query = trim($query); - $sort = ''; - $sort_type = Session::get('select', 'sort'); - if (!$sort_type) - $sort_type = 'DESC'; - $limit = ''; - // find and extract limit clause out of query (must be the last clause, otherwise sorting will not work) - preg_match(LIMIT_REGEXP, $query, $matches); - if (count($matches) == 3) { - $query = trim($matches[1]); - $limit = trim($matches[2]); - } - preg_match(SORT_REGEXP, $query, $matches); - if (count($matches) > 3) { - $query = trim($matches[1]); - // if sorting with same field, change sorting order - if ( trim($matches[3]) == $field ) - $sort_type = $sort_type == 'ASC' ? 'DESC' : 'ASC'; - else // reset to ascending order - $sort_type = 'ASC'; - } - - Session::set('select', 'sortcol', $field); - Session::set('select', 'sort', $sort_type); - $sort = 'ORDER BY ' . $field . ' ' . $sort_type; - - $query .= ' ' . $sort . ' ' . $limit; - - return $query; - } - - function getCommandInfo($sql) { - $info = array('db'=>'', 'dbChanged'=>FALSE, 'dbAltered'=>FALSE, 'setvar'=>FALSE); - if (preg_match('@^[\s]*USE[[:space:]]*([\S]+)@i', $sql, $match)) { - $info['db'] = trim($match[1], ' ;'); - $info['dbChanged'] = TRUE; - } else if (preg_match('/^(CREATE|ALTER|DROP)\s+/i', $sql)) { - $info['dbAltered'] = true; - } else if (preg_match('/^SET[\s]+@([a-zA-z0-9_]+|`.*`|\'.*\'|".*")[\s]?=[\s]?(.*)/i', $sql, $matches)) { - //SET[\s]+@([a-zA-z0-9_]+)[\s]+=[\s]+(.*) - $info['setvar'] = true; - $info['variable'] = trim($matches[1]); - $info['value'] = trim($matches[2]); - } - /*preg_match('@^[\s]*(DROP|CREATE)[\s]+(IF EXISTS[[:space:]]+)?(TABLE|DATABASE)[[:space:]]+(.+)@im', $sql)*/ - return $info; - } - - function startForm($db, $style="margin:0px;overflow:hidden;width:100%;height:100%") { - print ""; - print "\n"; - print "MyWebSQL\n"; - print "\n"; - print ''; - - print "\n"; - print ""; - print "\n"; - print ""; - print ""; - print ""; - print ""; - print ""; - } - - function sanitizeCreateCommand($type, $cmd) { - $str = preg_replace("/[\\n|\\r]?[\\n]+/", "
    ", htmlspecialchars($cmd)); - return $str; - - /*if ($type == "table") - return $str; - else if ($type == "view") - { - $str = str_replace(" DEFINER=", "
    DEFINER=", $str); - $str = str_replace(" SQL SECURITY ", "
    SQL SECURITY ", $str); - $str = str_replace(" AS (", "
    AS
    (", $str); - } - else if ($type == "procedure") - { - $str = str_replace(" DEFINER=", "
    DEFINER=", $str); - $str = str_replace(" PROCEDURE ", "
    PROCEDURE ", $str); - $str = str_replace("BEGIN", "
    BEGIN
    ", $str); - $str = str_replace(" END", "
    END", $str); - - } - else if ($type == "function") - { - $str = str_replace(" DEFINER=", "
    DEFINER=", $str); - $str = str_replace(" FUNCTION ", "
    FUNCTION ", $str); - $str = str_replace("BEGIN", "
    BEGIN
    ", $str); - $str = str_replace(" END", "
    END", $str); - } - else if ($type == "trigger") - { - $str = str_replace("\n", "
    ", $str); - } - - return $str;*/ - } - - function getBlobDisplay($rs, $info, $numRecord, $editable) { - //$pattern = '/[\x00-\x08\x0E-\x1F\x7F]/'; for binary matching - $binary = ($info->type == 'binary') ? true : false; - $length = strlen($rs ?: ''); - $size = format_bytes($length); - $span = ''; - - if ($rs === NULL) - $span .= "NULL"; - else if ($rs === "") - $span .= " "; - else { - if (MAX_TEXT_LENGTH_DISPLAY >= $length) - $span .= htmlspecialchars($rs); - else if ($binary) - $span .= str_replace( '{{SIZE}}', $size, __('Blob Data [{{SIZE}}]') ); - else - $span .= str_replace( '{{SIZE}}', $size, __('Text Data [{{SIZE}}]') ); - } - - $extra = ""; - $btype = "text"; - - if ($binary) { - include(BASE_PATH . "/config/blobs.php"); - foreach($blobTypes as $k => $v) { - if ( $v[1] && matchFileHeader($rs, $v[1]) ) { - $btype = $k; - break; - } - } - $extra = 'onclick="vwBlb(this, '.$numRecord.', \''.$btype.'\')"'; - } - - $span .= ""; - - // for binary fields, editing is separated from interface - if ($binary) { - $span .= " "; - return $span; - } - - $span .= ''; - - // for non editable text fields, we need to show the data associated - if (!$editable && $rs !== NULL && MAX_TEXT_LENGTH_DISPLAY < $length) { - $extra = 'onclick="vwTxt(this, "'.$size.'", \''.$btype.'\')"'; - $span .= " "; - } - - return $span; - } - - function setDbVar( $variable, $value ) { - Session::set('vars', $variable, $value); - } - - function loadDbVars(&$db) { - $vars = Session::get_all('vars'); - foreach($vars as $variable => $value) { - $query = 'SET @'.$variable.' = '.$value; - $db->query($query); - } - } -?> diff --git a/license/index.html b/license/index.html new file mode 100644 index 0000000..dcb1f2c --- /dev/null +++ b/license/index.html @@ -0,0 +1,273 @@ + + + + + License | MyWebSQL + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + +
    + +
    + +
    + + +
    +
    +
    +
    +

    License

    +

    MyWebSQL is licensed under the GNU GPLv3 License.

    +

    You are free to share,distribute and modify the code contained within the software, as long as you keep the license information intact.

    +

    For more information about the licensing terms, please visit http://www.gnu.org/licenses/gpl.html

    +
    + +
    +
    +
    +
    + +
    + +
    +
    + + + + + + \ No newline at end of file diff --git a/manifest.json b/manifest.json deleted file mode 100644 index e67454c..0000000 --- a/manifest.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "name": "MyWebSQL", - "short_name": "MyWebSQL", - "display": "standalone", - "icons": [ - { - "src": "img/icons/icon-72x72.png", - "sizes": "72x72", - "type": "image/png" - }, - { - "src": "img/icons/icon-96x96.png", - "sizes": "96x96", - "type": "image/png" - }, - { - "src": "img/icons/icon-128x128.png", - "sizes": "128x128", - "type": "image/png" - }, - { - "src": "img/icons/icon-144x144.png", - "sizes": "144x144", - "type": "image/png" - }, - { - "src": "img/icons/icon-152x152.png", - "sizes": "152x152", - "type": "image/png" - }, - { - "src": "img/icons/icon-192x192.png", - "sizes": "192x192", - "type": "image/png" - }, - { - "src": "img/icons/icon-384x384.png", - "sizes": "384x384", - "type": "image/png" - }, - { - "src": "img/icons/icon-512x512.png", - "sizes": "512x512", - "type": "image/png" - } - ] -} \ No newline at end of file diff --git a/modules/.htaccess b/modules/.htaccess deleted file mode 100644 index bc59461..0000000 --- a/modules/.htaccess +++ /dev/null @@ -1,2 +0,0 @@ -Order Deny,Allow -Deny From All \ No newline at end of file diff --git a/modules/altertbl.php b/modules/altertbl.php deleted file mode 100644 index 3507c0f..0000000 --- a/modules/altertbl.php +++ /dev/null @@ -1,89 +0,0 @@ -", htmlspecialchars($editor->getSql())); - if ($result) { - print - '
    1
    ' - .'
    '.__('The command executed successfully').'.
    ' - .'
    '.$formatted_query.'
    ' - .'
    '; - } else { - print - '
    0
    ' - .'
    '.__('Error occurred while executing the query').':
    ' - .'
    '.htmlspecialchars($db->getError()).'
    ' - .'
    '.$formatted_query.'
    ' - .'
    '; - } - } else { - $editor->setName(v($_REQUEST["name"])); - $editor->loadTable(); - displayTableEditorForm($db, $editor); - } - } - - function displayTableEditorForm(&$db, &$editor) { - $rows = $editor->getFields(); - - $props = $editor->getProperties(); - $sel_engine = $props->engine; - $sel_charset = $props->charset; - $sel_collation = $props->collation; - $comment = $props->comment; - - include(BASE_PATH . '/lib/html.php'); - $engines = html::arrayToOptions($db->getEngines(), $sel_engine, false); - $charsets = html::arrayToOptions($db->getCharsets(), $sel_charset, false); - $collations = html::arrayToOptions($db->getCollations(), $sel_collation, false); - - $replace = array( - 'ID' => v($_REQUEST["id"]) ? htmlspecialchars($_REQUEST["id"]) : '', - 'MESSAGE' => '', - 'ROWINFO' => json_encode($rows), - 'ALTER_TABLE' => 'true', - 'TABLE_NAME' => htmlspecialchars($editor->getName()), - 'ENGINE' => $engines, - 'CHARSET' => $charsets, - 'COLLATION' => $collations, - 'COMMENT' => htmlspecialchars($comment) - ); - echo view('editable', $replace); - } - - function alterDatabaseTable(&$db, $info, &$editor) { - $info = json_decode($info); - - if (!is_object($info)) - return false; - - if (v($info->name)) - $editor->setName($info->name); - if (v($info->delfields)) - $editor->deleteFields($info->delfields); - if (v($info->fields)) - $editor->setFields($info->fields); - if (v($info->props)) - $editor->setProperties($info->props); - - $sql = $editor->getAlterStatement(); - - if (!$db->query($sql)) - return false; - - return true; - } -?> \ No newline at end of file diff --git a/modules/auth.php b/modules/auth.php deleted file mode 100644 index 95e3f86..0000000 --- a/modules/auth.php +++ /dev/null @@ -1,323 +0,0 @@ -db = new DbManager(); - $this->error = ''; - $this->username = ''; - $this->password = ''; - $this->custom_auth = null; - - // change of auth type at runtime invalidates session - if (Session::get('auth', 'type') != AUTH_TYPE) - Session::del('auth', 'valid'); - - if (Session::get('auth', 'valid')) - return $this->setParameters(); - - if (!$this->checkEnvironment()) - return false; - - if (AUTH_TYPE == 'NONE') - $this->getAuthNone(); - else if (AUTH_TYPE == 'BASIC') - $this->getAuthBasic(); - else if (AUTH_TYPE == 'LOGIN') { - if (secureLoginPage()) - $this->getAuthSecureLogin(); - else - $this->getAuthLogin(); - } else if (AUTH_TYPE == 'CUSTOM') { - require_once(BASE_PATH . '/lib/auth/custom.php'); - $this->custom_auth = new MyWebSQL_Auth_Custom(); - $this->getAuthCustom(); - } - - if (Session::get('auth', 'valid')) - return $this->setParameters(); - - return false; - } - - public function getUserName() { - return $this->username; - } - - public function getCustomServer() { - return v($_POST['server_name']); - } - - public function getCustomServerType() { - return v($_POST['server_type']); - } - - public function getError() { - return $this->error; - } - - private function setError($str) { - $this->error = $str; - return false; - } - - private function checkEnvironment() { - if ( !defined('AUTH_SERVER') || AUTH_SERVER == '' ) - return $this->setError(__('Invalid server configuration')); - - if ( !defined('AUTH_TYPE') || !(AUTH_TYPE == 'NONE' || AUTH_TYPE == 'BASIC' || AUTH_TYPE == 'LOGIN' || AUTH_TYPE == 'CUSTOM') ) - return $this->setError(__('Invalid server configuration')); - - return true; - } - - private function setParameters() { - $host = $driver = ''; - switch(AUTH_TYPE) { - case 'NONE': - $server = $this->getDefaultServer(); - $host = $server[1]['host']; - $driver = $server[1]['driver']; - $this->username = AUTH_LOGIN; - $this->password = AUTH_PASSWORD; - break; - case 'BASIC': - $server = $this->getDefaultServer(); - $host = $server[1]['host']; - $driver = $server[1]['driver']; - case 'LOGIN': - $host = Session::get('auth', 'host', true); - $driver = Session::get('db', 'driver'); - $this->username = Session::get('auth', 'user', true); - $this->password = Session::get('auth', 'pwd', true); - break; - case 'CUSTOM': - require_once(BASE_PATH . '/lib/auth/custom.php'); - $this->custom_auth = new MyWebSQL_Auth_Custom(); - $param = $this->custom_auth->getParameters(); - $host = v($param['host']); - $driver = v($param['driver']); - $this->username = v($param['username']); - $this->password = v($param['password']); - break; - } - - // driver should not be defined, since it is only used to create db objects - define("DB_HOST", $host); - define("DB_USER", $this->username); - define("DB_PASS", $this->password); - - Session::set('auth', 'type', AUTH_TYPE); - // set the language - include(BASE_PATH . '/config/lang.php'); - if (isset($_REQUEST["lang"]) && array_key_exists($_REQUEST["lang"], $_LANGUAGES) && file_exists(BASE_PATH . '/lang/'.$_REQUEST["lang"].'.php')) { - $_lang = $_REQUEST["lang"]; - setcookie("lang", $_REQUEST["lang"], time()+(COOKIE_LIFETIME*60*60), EXTERNAL_PATH); - } - - return true; - } - - private function getAuthNone() { - $server = $this->getDefaultServer(); - Session::set('auth', 'valid', true); - Session::set('auth', 'server_name', $server[0], true); - Session::set('auth', 'host', $server[1]['host'], true); - Session::set('auth', 'user', AUTH_LOGIN, true); - Session::set('auth', 'pwd', AUTH_PASSWORD, true); - Session::set('db', 'driver', $server[1]['driver']); - $this->db->disconnect(); - header('Location: '.EXTERNAL_PATH); - return true; - } - - private function getAuthBasic() { - $server = $this->getDefaultServer(); - if (isset($_SERVER['PHP_AUTH_USER']) && isset($_SERVER['PHP_AUTH_PW'])) { - if ($this->db->connect($server[1],$_SERVER['PHP_AUTH_USER'],$_SERVER['PHP_AUTH_PW'])) { - Session::set('auth', 'valid', true); - Session::set('auth', 'server_name', $server[0], true); - Session::set('auth', 'host', $server[1]['host'], true); - Session::set('auth', 'user', $_SERVER['PHP_AUTH_USER'], true); - Session::set('auth', 'pwd', $_SERVER['PHP_AUTH_PW'], true); - Session::set('db', 'driver', $server[1]['driver']); - return true; - } else - $this->setError( $this->db->getError() ); - } - - header('WWW-Authenticate: Basic realm="MyWebSQL"'); - header($_SERVER['SERVER_PROTOCOL'].' 401 Unauthorized'); - echo __('Invalid Credentials supplied'); - - return false; - } - - private function getAuthLogin() { - if (isset($_POST['auth_user']) && isset($_POST['auth_pwd'])) { - $server = $this->getServer( v($_POST['server']) ); - $this->username = $_POST['auth_user']; - if ($this->db->connect($server[1], $_POST['auth_user'], $_POST['auth_pwd'])) { - Session::set('auth', 'valid', true); - Session::set('auth', 'server_name', $server[0], true); - Session::set('auth', 'host', $server[1]['host'], true); - Session::set('auth', 'user', $_POST['auth_user'], true); - Session::set('auth', 'pwd', $_POST['auth_pwd'], true); - Session::set('db', 'driver', $server[1]['driver']); - $this->db->disconnect(); - header('Location: '.EXTERNAL_PATH); - return true; - } else - $this->setError( $this->db->getError() ); - } - - return false; - } - - private function getAuthSecureLogin() { - if (isset($_POST['mywebsql_auth'])) { - $enc_lib = BASE_PATH . ((extension_loaded('openssl') && extension_loaded('gmp')) - ? "/lib/external/jcryption.php" - : "/lib/external/jcryption-legacy.php"); - require_once( $enc_lib ); - $jCryption = new jCryption(); - $d = Session::get('auth_enc', 'd'); - $n = Session::get('auth_enc', 'n'); - if ( !isset($d['int']) || !isset($n['int']) ) - return $this->setError('Invalid Credentials'); - $decoded = $jCryption->decrypt($_POST['mywebsql_auth'], $d['int'], $n['int']); - if (!$decoded) - return $this->setError('Invalid Credentials'); - parse_str($decoded, $info); - - // custom server variables are included in the decoded array - if ( isset($info['server_name']) ) - $_POST['server_name'] = $info['server_name']; - if ( isset($info['server_type']) ) - $_POST['server_type'] = $info['server_type']; - - $server = $this->getServer( v($info['server']) ); - $this->username = v($info['auth_user']); - $this->password = v($info['auth_pwd']); - - // extract encrypted variables for splash screen - $_REQUEST['server'] = v($info['server']); - $_REQUEST['lang'] = v($info['lang']); - - if ($this->db->connect($server[1], $this->username, $this->password)) { - Session::del('auth_enc'); - Session::set('auth', 'valid', true); - Session::set('auth', 'server_name', $server[0], true); - Session::set('auth', 'host', $server[1]['host'], true); - Session::set('auth', 'user', $this->username, true); - Session::set('auth', 'pwd', $this->password, true); - Session::set('db', 'driver', $server[1]['driver']); - $this->db->disconnect(); - header('Location: '.EXTERNAL_PATH); - return true; - } else - $this->setError( $this->db->getError() ); - } - - return false; - } - - private function getAuthCustom() { - $server = $this->getDefaultServer(); - $username = $password = ''; - - if (secureLoginPage() && isset($_POST['mywebsql_auth']) ) { - $enc_lib = BASE_PATH . ((extension_loaded('openssl') && extension_loaded('gmp')) ? "/lib/external/jcryption.php" - : "/lib/external/jcryption-legacy.php"); - require_once( $enc_lib ); - $jCryption = new jCryption(); - $d = Session::get('auth_enc', 'd'); - $n = Session::get('auth_enc', 'n'); - if ( !isset($d['int']) || !isset($n['int']) ) - return $this->setError('Invalid Credentials'); - $decoded = $jCryption->decrypt($_POST['mywebsql_auth'], $d['int'], $n['int']); - if (!$decoded) - return $this->setError('Invalid Credentials'); - parse_str($decoded, $info); - $server = $this->getServer( v($info['server']) ); - $username = v($info['auth_user']); - $password = v($info['auth_pwd']); - } else if (isset($_POST['auth_user']) && isset($_POST['auth_pwd'])) { - $server = $this->getServer(v($_POST['server'])); - $username = v($_POST['auth_user']); - $password = v($_POST['auth_pwd']); - } - - return $this->custom_auth->authenticate($username, $password, $server); - - return false; - } - - private function getServer( $selection ) { - $serverList = getServerList(); - - // if only one server is defined, it is used - if( count($serverList) == 1) { - $server = key($serverList); - $host = current($serverList); - return array($server, $host); - } - - // return a server based on user's selection - foreach($serverList as $server => $host) { - if ($server == $selection) - return array($server, $host); - } - - // check if a custom server is selected - if ( $selection == '' && ALLOW_CUSTOM_SERVERS ) { - $address = v($_POST['server_name']); - $type = v($_POST['server_type']); - $driver = ''; - $allowed_types = explode(',', ALLOW_CUSTOM_SERVER_TYPES); - switch($type) { - case 'mysql': - if (in_array('mysql', $allowed_types)) - $driver = extension_loaded('mysqli') ? 'mysqli' : 'mysql5'; - break; - case 'pgsql': - $driver = in_array('pgsql', $allowed_types) ? 'pgsql' : ''; - break; - case 'sqlite': - $driver = in_array('sqlite', $allowed_types) ? 'sqlite' : ''; - break; - } - if ($address && $driver) { - // found a valid custom server definition, return it - $server = array(__('Custom Server'), array('host' => $address, 'driver' => $driver)); - return $server; - } - } - - - // return default server info - return $this->getDefaultServer(); - } - - private function getDefaultServer() { - $server_info = explode('|', AUTH_SERVER); - $host = array( 'host' => $server_info[0], 'driver' => $server_info[1] ); - return array(AUTH_SERVER, $host); - } - } -?> \ No newline at end of file diff --git a/modules/backup.php b/modules/backup.php deleted file mode 100644 index 7e3fa18..0000000 --- a/modules/backup.php +++ /dev/null @@ -1,30 +0,0 @@ -getObjectList(); - include_once(BASE_PATH . "/config/backups.php"); - - $filename = isset($_REQUEST['filename']) ? v($_REQUEST['filename']) : BACKUP_FILENAME_FORMAT; - $message = is_dir( BACKUP_FOLDER ) && is_writable( BACKUP_FOLDER ) ? - '
    '.__('Select objects to include in backup').'
    ' : - '
    '.__('WARNING').': '.__('Backup folder does not exist or is not writable').'
    '; - $replace = array( - 'MESSAGE' => $message, - 'FILENAME' => htmlspecialchars($filename) - ); - - $folder = $db->name(); - - echo view( array($folder.'/backup', 'backup'), $replace, $object_list); - } - -?> \ No newline at end of file diff --git a/modules/configuration.php b/modules/configuration.php deleted file mode 100644 index 2c8d2cf..0000000 --- a/modules/configuration.php +++ /dev/null @@ -1,85 +0,0 @@ -1'; - exit(); - } - else if (isset($_COOKIE["theme"]) && array_key_exists($_COOKIE["theme"], $THEMES)) - define("THEME_PATH", $_COOKIE["theme"]); - - // language setup - include(BASE_PATH . '/config/lang.php'); // we have to include language first for proper settings - if ($bProcess && isset($_GET["lang"]) && array_key_exists($_GET["lang"], $_LANGUAGES) && file_exists(BASE_PATH . '/lang/'.$_GET["lang"].'.php')) { - define('LANGUAGE', $_REQUEST["lang"]); - setcookie("lang", $_REQUEST["lang"], time()+(COOKIE_LIFETIME*60*60), EXTERNAL_PATH); - // if this is false, we are at login screen - if (v($_GET["x"]) == 1) { - echo '
    1
    '; - exit(); - } - } - else if (isset($_COOKIE["lang"]) && array_key_exists($_COOKIE["lang"], $_LANGUAGES) && file_exists(BASE_PATH . '/lang/'.$_COOKIE["lang"].'.php')) - define('LANGUAGE', $_COOKIE["lang"]); - else if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) { - $_user_lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2); - if (array_key_exists($_user_lang, $_LANGUAGES) && file_exists(BASE_PATH . '/lang/'.$_user_lang.'.php')) - define('LANGUAGE', $_user_lang); - unset($_user_lang); - } - - // sql editor setup - include(BASE_PATH . "/config/editors.php"); - if ($bProcess && isset($_GET["editor"]) && array_key_exists($_GET["editor"], $CODE_EDITORS)) { - define("SQL_EDITORTYPE", $_GET["editor"]); - setcookie("editor", $_GET["editor"], time()+(COOKIE_LIFETIME*60*60), EXTERNAL_PATH); - if (v($_GET["x"]) == 1) { - echo '
    1
    '; - exit(); - } - } - else if (isset($_COOKIE["editor"]) && array_key_exists($_COOKIE["editor"], $CODE_EDITORS)) - define("SQL_EDITORTYPE", $_COOKIE["editor"]); - - // initialize rest of the configuration to defaults - include_once (BASE_PATH . "/config/config.php"); - - if(!defined('LANGUAGE')) - define("LANGUAGE", DEFAULT_LANGUAGE); - - if(!defined('THEME_PATH')) - define('THEME_PATH', DEFAULT_THEME); - - if(!defined('SQL_EDITORTYPE')) - define('SQL_EDITORTYPE', DEFAULT_EDITOR); - - if ($bProcess) { - include(BASE_PATH . '/config/auth.php'); - include(BASE_PATH . '/config/keys.php'); - } - - return true; - } - - function getKeyCodes() { - include(BASE_PATH . '/config/keys.php'); - return $KEY_CODES; - } -?> \ No newline at end of file diff --git a/modules/copy.php b/modules/copy.php deleted file mode 100644 index 6eb71fe..0000000 --- a/modules/copy.php +++ /dev/null @@ -1,33 +0,0 @@ -copyObject($name, $type, $new_name); - // @@TODO: this can be improved, although it is only information - $numQueries = $type == 'table' ? 2 : 1; - - if ($success) { - Session::set('db', 'altered', true); - createInfoGrid($db, '', $numQueries); - } - else - createErrorGrid($db, $db->getLastQuery()); - } -?> \ No newline at end of file diff --git a/modules/createtbl.php b/modules/createtbl.php deleted file mode 100644 index b999e41..0000000 --- a/modules/createtbl.php +++ /dev/null @@ -1,80 +0,0 @@ -", htmlspecialchars($editor->getSql())); - if ($result) - print - '
    1
    ' - .'
    '.__('The command executed successfully').'.
    ' - .'
    '.$formatted_query.'
    ' - .'
    '; - else - print - '
    0
    ' - .'
    '.__('Error occurred while executing the query').':
    ' - .'
    '.$formatted_query.'
    ' - .'
    '.htmlspecialchars($db->getError()).'
    ' - .'
    '; - } - else - displayCreateTableForm($db); - } - - function displayCreateTableForm(&$db) { - $rows = array(); - - include(BASE_PATH . '/lib/html.php'); - $engines = html::arrayToOptions($db->getEngines(), '', true); - $charsets = html::arrayToOptions($db->getCharsets(), '', true); - $collations = html::arrayToOptions($db->getCollations(), '', true); - $comment = ''; - - $replace = array( - 'ID' => v($_REQUEST["id"]) ? htmlspecialchars($_REQUEST["id"]) : '', - 'MESSAGE' => '', - 'ROWINFO' => json_encode($rows), - 'ALTER_TABLE' => 'false', - 'TABLE_NAME' => '', - 'ENGINE' => $engines, - 'CHARSET' => $charsets, - 'COLLATION' => $collations, - 'COMMENT' => htmlspecialchars($comment) - ); - echo view('editable', $replace); - } - - function createDatabaseTable(&$db, $info, &$editor) { - $info = json_decode($info); - - if (!is_object($info)) - return false; - - if (v($info->name)) - $editor->setName($info->name); - if (v($info->fields)) - $editor->setFields($info->fields); - if (v($info->props)) - $editor->setProperties($info->props); - - $sql = $editor->getCreateStatement(); - - if (!$db->query($sql)) - return false; - - return true; - } -?> \ No newline at end of file diff --git a/modules/databases.php b/modules/databases.php deleted file mode 100644 index cc43917..0000000 --- a/modules/databases.php +++ /dev/null @@ -1,49 +0,0 @@ -name(); - - $data = array(); - - if (v($_REQUEST["id"]) == 'batch') { - $stats = array(); - - $stats['drop'] = drop_objects( $db ); - - $replace = array(); - $data['stats'] = $stats; - $data['objects'] = $db->getDatabases(); - echo view( array($folder.'/databases', 'databases'), $replace, $data); - } else { - $replace = array(); - $data['objects'] = $db->getDatabases(); - echo view( array($folder.'/databases', 'databases'), $replace, $data); - } - } - - function drop_objects( &$db ) { - $status = array('success' => 0, 'errors' => 0); - $types = $db->getObjectTypes(); - - foreach(v($_POST['databases'], array()) as $database) { - if ( v($_POST['dropcmd']) == "on" ) { - if ($db->dropObject($database, 'database')) - $status['success']++; - else - $status['errors']++; - } - } - - return $status; - } - -?> \ No newline at end of file diff --git a/modules/dbbatch.php b/modules/dbbatch.php deleted file mode 100644 index f261928..0000000 --- a/modules/dbbatch.php +++ /dev/null @@ -1,194 +0,0 @@ -set_constraint( 'fkey', false ); - - // generate commands first before doing drop operations - if ( v($_POST['command']) != '' ) - $commands = generate_commands( $db, v($_POST['command']) ); - - if ( v($_POST['dropcmd']) == 'on' ) - $stats['drop'] = drop_objects( $db ); - else { - if ( v($_POST['old_prefix']) != '' ) - $stats['delprefix'] = remove_prefix( $db, v($_POST['old_prefix']) ); - if ( v($_POST['new_prefix']) != '' ) - $stats['addprefix'] = add_prefix( $db, v($_POST['new_prefix']) ); - } - - $replace = array(); - $data = array('stats' => $stats, 'queries' => $commands); - echo view('dbbatch_results', $replace, $data); - } else { - $object_list = $db->getObjectList(); - - $replace = array(); - - $folder = $db->name(); - - echo view( array($folder.'/dbbatch', 'dbbatch'), $replace, $object_list); - } - } - - function drop_objects( &$db ) { - $status = array('success' => 0, 'errors' => 0); - - foreach(v($_POST['tables'], array()) as $table) { - if ($db->dropObject($table, 'table')) - $status['success']++; - else - $status['errors']++; - } - foreach(v($_POST['views'], array()) as $table) { - if ($db->dropObject($table, 'view')) - $status['success']++; - else - $status['errors']++; - } - foreach(v($_POST['procedures'], array()) as $table) { - if ($db->dropObject($table, 'procedure')) - $status['success']++; - else - $status['errors']++; - } - foreach(v($_POST['functions'], array()) as $table) { - if ($db->dropObject($table, 'function')) - $status['success']++; - else - $status['errors']++; - } - foreach(v($_POST['triggers'], array()) as $table) { - if ($db->dropObject($table, 'trigger')) - $status['success']++; - else - $status['errors']++; - } - - return $status; - } - function remove_prefix( &$db, $prefix ) { - $status = array('success' => 0, 'errors' => 0); - - foreach(v($_POST['tables'], array()) as $table) { - if ( substr($table, 0, strlen($prefix)) == $prefix ) { - $new_name = substr($table, strlen($prefix)); - if ($db->renameObject($table, 'table', $new_name)) - $status['success']++; - else - $status['errors']++; - } - } - foreach(v($_POST['views'], array()) as $table) { - if ( substr($table, 0, strlen($prefix)) == $prefix ) { - $new_name = substr($table, strlen($prefix)); - if ($db->renameObject($table, 'view', $new_name)) - $status['success']++; - else - $status['errors']++; - } - } - foreach(v($_POST['procedures'], array()) as $table) { - if ( substr($table, 0, strlen($prefix)) == $prefix ) { - $new_name = substr($table, strlen($prefix)); - if ($db->renameObject($table, 'procedure', $new_name)) - $status['success']++; - else - $status['errors']++; - } - } - foreach(v($_POST['functions'], array()) as $table) { - if ( substr($table, 0, strlen($prefix)) == $prefix ) { - $new_name = substr($table, strlen($prefix)); - if ($db->renameObject($table, 'function', $new_name)) - $status['success']++; - else - $status['errors']++; - } - } - foreach(v($_POST['triggers'], array()) as $table) { - if ( substr($table, 0, strlen($prefix)) == $prefix ) { - $new_name = substr($table, strlen($prefix)); - if ($db->renameObject($table, 'trigger', $new_name)) - $status['success']++; - else - $status['errors']++; - } - } - - return $status; - } - - function add_prefix( &$db, $prefix ) { - $status = array('success' => 0, 'errors' => 0); - - foreach(v($_POST['tables'], array()) as $table) { - if ($db->renameObject($table, 'table', $prefix . $table)) - $status['success']++; - else - $status['errors']++; - } - foreach(v($_POST['views'], array()) as $table) { - if ($db->renameObject($table, 'view', $prefix . $table)) - $status['success']++; - else - $status['errors']++; - } - foreach(v($_POST['procedures'], array()) as $table) { - if ($db->renameObject($table, 'procedure', $prefix . $table)) - $status['success']++; - else - $status['errors']++; - } - foreach(v($_POST['functions'], array()) as $table) { - if ($db->renameObject($table, 'function', $prefix . $table)) - $status['success']++; - else - $status['errors']++; - } - foreach(v($_POST['triggers'], array()) as $table) { - if ($db->renameObject($table, 'trigger', $prefix . $table)) - $status['success']++; - else - $status['errors']++; - } - - return $status; - } - - function generate_commands( &$db, $command ) { - $commands = array(); - - foreach(v($_POST['tables'], array()) as $table) { - $commands[] = $command . ' ' . $db->quote($table); - } - foreach(v($_POST['views'], array()) as $table) { - $commands[] = $command . ' ' . $db->quote($table); - } - foreach(v($_POST['procedures'], array()) as $table) { - $commands[] = $command . ' ' . $db->quote($table); - } - foreach(v($_POST['functions'], array()) as $table) { - $commands[] = $command . ' ' . $db->quote($table); - } - foreach(v($_POST['triggers'], array()) as $table) { - $commands[] = $command . ' ' . $db->quote($table); - } - - return $commands; - } - -?> \ No newline at end of file diff --git a/modules/dbcreate.php b/modules/dbcreate.php deleted file mode 100644 index 07edf8f..0000000 --- a/modules/dbcreate.php +++ /dev/null @@ -1,42 +0,0 @@ -createDatabase($dbName)) - createErrorGrid($db); - else { - $redirect = '0'; - if ($dbSelect) { - Session::set('db', 'changed', true); - Session::set('db', 'name', $dbName); - $redirect = '1'; - } - $replace = array( - 'DB_NAME' => htmlspecialchars($dbName), - 'SQL' => preg_replace("/[\n\r]/", "
    ", htmlspecialchars($sql)), - 'TIME' => $db->getQueryTime(), - 'REDIRECT' => $redirect - ); - echo view( 'dbcreate', $replace ); - } - } -?> \ No newline at end of file diff --git a/modules/dbrepair.php b/modules/dbrepair.php deleted file mode 100644 index db39cd9..0000000 --- a/modules/dbrepair.php +++ /dev/null @@ -1,45 +0,0 @@ -getTables()); - } - } - - function checkTables(&$db) { - $type = v($_POST['optype']); - - $options = array('skiplog' => v($_POST['skiplog']) == 'on' ? TRUE : FALSE); - $options['checktype'] = v($_POST['checktype']); - $options['repairtype'] = is_array(v($_POST['repairtype'])) ? v($_POST['repairtype']) : array(); - - include(BASE_PATH . "/lib/tablechecker.php"); - $checker = new tableChecker($db); - $checker->setOperation($type); - $checker->setTables(v($_POST['tables'])); - $checker->setOptions($options); - - $results = array(); - if ($checker->runCheck()) - $results = $checker->getResults(); - - $replace = array('RESULTS' => json_encode($results) - ); - - echo view('dbrepair_results', $replace); - } - -?> \ No newline at end of file diff --git a/modules/describe.php b/modules/describe.php deleted file mode 100644 index 565501a..0000000 --- a/modules/describe.php +++ /dev/null @@ -1,22 +0,0 @@ -getTableDescription( $_REQUEST['name'] ) ) - createSimpleGrid($db, __('Table Description').': ['.htmlspecialchars($_REQUEST['name']).']'); - } - -?> \ No newline at end of file diff --git a/modules/download.php b/modules/download.php deleted file mode 100644 index 1f46ded..0000000 --- a/modules/download.php +++ /dev/null @@ -1,254 +0,0 @@ -'.__('Database backup successfully created').''; - if ( $output->is_valid() ) { - downloadDatabase($db, false); - $output->end(); - } else { - $message = '
    '.__('Failed to create database backup').'
    '; - } - } else { - $message = '
    '.__('Invalid filename format').'
    '; - } - echo view( 'backup', array( 'MESSAGE' => $message, 'FILENAME' => htmlspecialchars($filename) ), $db->getObjectList() ); - } break; - case 'exportres': { - downloadResults($db); - } break; - case 'exporttbl': { - downloadTable($db, $_REQUEST['name']); - } break; - case 'export': { - downloadDatabase($db); - } break; - } - } - - function downloadResults(&$db) { - include(BASE_PATH . '/lib/export/export.php'); - $type = 'insert'; - $exptype = v($_REQUEST['exptype']); - if(in_array($exptype, DataExport::types())) - $type = $exptype; - $options = array( - 'table' => '', - 'fieldnames' => v($_REQUEST['fieldnames']) == 'on' ? TRUE : FALSE, - 'fieldheader' => v($_REQUEST['fieldheader']) == 'on' ? TRUE : FALSE, - 'separator' => v($_REQUEST['separator'], "\t"), - 'bulkinsert' => false, - // explicitly tell the exporter to not apply any limits - 'apply_limit' => false - ); - - $options['auto_field'] = -1; - //if (substr($_SESSION["query"], 0, 6) == "select" && $_REQUEST["auto_null"] == "on" && Session::get('select', 'unique_table') != "") - // $options['auto_field'] = getAutoIncField($db, Session::get('select', 'unique_table')); - - $table = (Session::get('select', 'unique_table') != "") ? Session::get('select', 'unique_table') : ''; - $filename = $table ? $table . "-results" : "results"; - $options['table'] = $table != "" ? $table : '<>'; - - $exporter = new DataExport($db, $type); - $exporter->sendDownloadHeader($filename); - echo $db->addExportHeader( Session::get('select', 'query'), 'query', $type ); - $exporter->exportTable(Session::get('select', 'query'), $options); - echo $db->addExportFooter( $type ); - } - - function downloadTable(&$db, $table) { - if ($table == "") - return false; - - include(BASE_PATH . '/lib/export/export.php'); - $type = 'insert'; - $exptype = v($_REQUEST['exptype']); - if(in_array($exptype, DataExport::types())) - $type = $exptype; - $options = array( - 'table' => $table, - 'fieldnames' => v($_REQUEST['fieldnames']) == 'on' ? TRUE : FALSE, - 'fieldheader' => v($_REQUEST['fieldheader']) == 'on' ? TRUE : FALSE, - 'separator' => v($_REQUEST['separator'], "\t"), - 'bulkinsert' => v($_REQUEST['bulkinsert']), - 'bulksize' => v($_REQUEST['bulklimit']) == 'on' ? v($_REQUEST['bulksize'])*1024 : 0 - ); - - $options['auto_field'] = -1; //($_REQUEST["auto_null"] == "on") ? getAutoIncField($db, $table) : -1; - - $sql = "select * from ". $db->quote($table); - $exporter = new DataExport($db, $type); - $exporter->sendDownloadHeader($table); - echo $db->addExportHeader( $table, 'table', $type ); - $exporter->exportTable($sql, $options); - echo $db->addExportFooter( $type ); - } - - - function downloadDatabase(&$db, $headers = true) { - // don't make POST as REQUEST here. it won't work :P - if ( !( is_array(v($_POST["tables"])) || is_array(v($_POST["views"])) || is_array(v($_POST["procs"])) - ||is_array(v($_POST["funcs"])) || is_array(v($_POST["triggers"])) ||is_array(v($_POST["events"])) ) ) - return false; - - include(BASE_PATH . '/lib/export/export.php'); - $exporter = new DataExport($db, 'insert'); - - if ( $headers ) - $exporter->sendDownloadHeader( Session::get('db', 'name') ); - - echo $db->addExportHeader( Session::get('db', 'name'), 'db', 'insert' ); - - $export_type = v($_REQUEST["exptype"]); - if (is_array($_POST["tables"]) && count($_POST["tables"]) > 0) { - $tables = flattenTableNames( $db->getTables() ); - - $options = array( - 'type' => 'insert', - 'fieldnames' => v($_REQUEST['fieldnames']) == 'on' ? TRUE : FALSE, - 'bulkinsert' => v($_REQUEST['bulkinsert']), - 'bulksize' => v($_REQUEST['bulklimit']) == 'on' ? v($_REQUEST['bulksize'])*1024 : 0 - ); - foreach($tables as $table_name) { - // is this table required in export? - $key = array_search($table_name, $_POST["tables"]); - if ($key === FALSE) - continue; - - // -- -truncate command -- - if (v($_REQUEST["emptycmd"]) == "on") { - echo "\n" . $db->getTruncateCommand( $table_name ) . ";\n"; - } - - // -- -drop command -- - if (v($_REQUEST["dropcmd"]) == "on") { - echo "\n" . $db->getDropCommand( $table_name ) . ";\n"; - } - - // -- -structure -- - $type = "table"; - if ($export_type == "all" || $export_type == "struct") { - print "\n/* Table structure for $table_name */\n"; - $cmd = $db->getCreateCommand('table', $table_name); - // strip out auto_increment value from create table statement - if (v($_REQUEST["auto_null"]) == "on") - $cmd = stripAutoIncrement($cmd); - // strip out table engine type from create table statement - if (v($_REQUEST["exclude_type"]) == "on") - $cmd = stripTableType($cmd); - // strip out table charset from create table statement - if (v($_REQUEST["exclude_charset"]) == "on") - $cmd = stripTableCharset($cmd); - print $cmd . ";\n"; - } - - // -- -table data -- - if ($export_type == "all" || $export_type == "data") { - $options['auto_field'] = v($_REQUEST["auto_null"]) == "on" ? $db->getAutoIncField($table_name) : -1; - $options['table'] = $table_name; - - $sql = "SELECT * FROM " . $db->quote($table_name); - print "\n/* data for Table $table_name */\n"; - - $exporter->exportTable($sql, $options); - } - } - } - - if ($export_type == "all" || $export_type == "struct") { // views, procedures etc do not have any data - $object_types = $db->getObjectTypes(); - // skip tables as we have already done it - unset($object_types[0]); - foreach($object_types as $type) { - if (is_array(v($_POST[$type])) && count($_POST[$type]) > 0) { - $func = 'get' . ucfirst( $type ); - $name = substr($type, 0, -1); - exportObject($db, $name, $_POST[$type], $db->$func()); - } - } - } - - echo $db->addExportFooter(); - } - - // ===================================== - - function exportObject(&$db, $name, $list, $tables) { - foreach($tables as $table_name) { - $key = array_search($table_name, $list); - if ($key === FALSE) - continue; - - if (v($_REQUEST["dropcmd"]) == "on") - print "\ndrop $name if exists " . $db->quote($table_name) . ";\n"; - - print "\n/* create command for $table_name */\n"; - print "\nDELIMITER $$\n"; - print $db->getCreateCommand($name, $table_name) . "$$\n"; - print "\nDELIMITER ;\n"; - } - } - - function stripAutoIncrement($statement) { - //return preg_replace("/AUTO_INCREMENT=[0-9]+\s/", "", $statement); // a chance of bug with a crazy field name like `AUTO_INCREMENT=1000 ` :P - preg_match("/.*\).*(AUTO_INCREMENT=[0-9]+ )/", $statement, $matches); - if (isset($matches[1])) - $statement = str_replace($matches[1], "", $statement); - return $statement; - } - - function stripTableType($statement) { - preg_match("/.*\).*(ENGINE=[a-zA-Z]+ )/", $statement, $matches); - if (isset($matches[1])) - $statement = str_replace($matches[1], "", $statement); - return $statement; - } - - function stripTableCharset($statement) { - preg_match("/.*\).*(DEFAULT\sCHARSET=[a-zA-Z0-9]+)/", $statement, $matches); - if (isset($matches[1])) - $statement = str_replace($matches[1], "", $statement); - return $statement; - } - - // flattens table names by combining schema and table name together (if required) - function flattenTableNames( $arr ) { - foreach( $arr as $val ) { - if ( !is_array ($val) ) - return $arr; - } - - $ret = array(); - foreach( $arr as $schema => $tables ) { - foreach( $tables as $table ) { - $ret[] = $schema . '.' . $table; - } - } - - return $ret; - } -?> \ No newline at end of file diff --git a/modules/drop.php b/modules/drop.php deleted file mode 100644 index 2afa931..0000000 --- a/modules/drop.php +++ /dev/null @@ -1,29 +0,0 @@ -dropObject($name, $type); - if ($success) { - Session::set('db', 'altered', true); - createInfoGrid($db, $db->getLastQuery()); - } - else - createErrorGrid($db, $db->getLastQuery()); - } -?> \ No newline at end of file diff --git a/modules/enginetype.php b/modules/enginetype.php deleted file mode 100644 index b173e38..0000000 --- a/modules/enginetype.php +++ /dev/null @@ -1,63 +0,0 @@ -setName(v($_REQUEST["name"])); - $editor->loadTable(false, false, true); - - $message = ''; - if ($action == "alter") { - $result = alterTableEngine($db, v($_REQUEST["enginetype"]), $editor); - $formatted_query = preg_replace("/[\\n|\\r]?[\\n]+/", "
    ", htmlspecialchars($editor->getSql())); - if ($result) { - $message = - '
    ' - .'
    '.__('The command executed successfully').'.
    ' - //.'
    '.$formatted_query.'
    ' - .'
    '; - } else { - $message = - '
    ' - .'
    '.__('Error occurred while executing the query').':
    ' - .'
    '.htmlspecialchars($db->getError()).'
    ' - .'
    '.$formatted_query.'
    ' - .'
    '; - } - } - - $props = $editor->getProperties(); - include(BASE_PATH . '/lib/html.php'); - $engines = html::arrayToOptions($db->getEngines(), $props->engine, true); - $replace = array( - 'TABLE_NAME' => htmlspecialchars($editor->getName()), - 'ENGINE' => $engines, - 'MESSAGE' => $message, - ); - echo view('enginetype', $replace); - } - - function alterTableEngine(&$db, $engineType, &$editor) { - $props = $editor->getProperties(); - $props->engine = $engineType; - $editor->setProperties($props); - - $sql = $editor->getAlterStatement(); - - if (!$db->query($sql)) - return false; - - return true; - } -?> \ No newline at end of file diff --git a/modules/export.php b/modules/export.php deleted file mode 100644 index f7b3885..0000000 --- a/modules/export.php +++ /dev/null @@ -1,22 +0,0 @@ -getObjectList(); - - $replace = array(); - - $folder = $db->name(); - - echo view( array($folder.'/export', 'export'), $replace, $object_list); - } - -?> \ No newline at end of file diff --git a/modules/exportres.php b/modules/exportres.php deleted file mode 100644 index fa0f46a..0000000 --- a/modules/exportres.php +++ /dev/null @@ -1,17 +0,0 @@ - \ No newline at end of file diff --git a/modules/exporttbl.php b/modules/exporttbl.php deleted file mode 100644 index 85d6db1..0000000 --- a/modules/exporttbl.php +++ /dev/null @@ -1,22 +0,0 @@ - htmlspecialchars($tableName)); - echo view('exporttbl', $replace); - } - else - echo view('invalid_request', array()); - } - -?> \ No newline at end of file diff --git a/modules/format.php b/modules/format.php deleted file mode 100644 index 38620e3..0000000 --- a/modules/format.php +++ /dev/null @@ -1,77 +0,0 @@ -".formatSQL($query).""; - print "\n"; - } - } - - function formatSQL( $sql_raw ) { - $sql_reserved_all = array( 'ACCESSIBLE', 'ACTION', 'ADD', 'AFTER', 'AGAINST', 'AGGREGATE', 'ALGORITHM', 'ALL', 'ALTER', 'ANALYSE', 'ANALYZE', 'AND', 'AS', 'ASC', 'AUTOCOMMIT', 'AUTO_INCREMENT', 'AVG_ROW_LENGTH', 'BACKUP', 'BEGIN', 'BETWEEN', 'BINLOG', 'BOTH', 'BY', 'CASCADE', 'CASE', 'CHANGE', 'CHANGED', 'CHARSET', 'CHECK', 'CHECKSUM', 'COLLATE', 'COLLATION', 'COLUMN', 'COLUMNS', 'COMMENT', 'COMMIT', 'COMMITTED', 'COMPRESSED', 'CONCURRENT', 'CONSTRAINT', 'CONTAINS', 'CONVERT', 'CREATE', 'CROSS', 'CURRENT_TIMESTAMP', 'DATABASE', 'DATABASES', 'DAY', 'DAY_HOUR', 'DAY_MINUTE', 'DAY_SECOND', 'DEFINER', 'DELAYED', 'DELAY_KEY_WRITE', 'DELETE', 'DESC', 'DESCRIBE', 'DETERMINISTIC', 'DISTINCT', 'DISTINCTROW', 'DIV', 'DO', 'DROP', 'DUMPFILE', 'DUPLICATE', 'DYNAMIC', 'ELSE', 'ENCLOSED', 'END', 'ENGINE', 'ENGINES', 'ESCAPE', 'ESCAPED', 'EVENTS', 'EXECUTE', 'EXISTS', 'EXPLAIN', 'EXTENDED', 'FAST', 'FIELDS', 'FILE', 'FIRST', 'FIXED', 'FLUSH', 'FOR', 'FORCE', 'FOREIGN', 'FROM', 'FULL', 'FULLTEXT', 'FUNCTION', 'GEMINI', 'GEMINI_SPIN_RETRIES', 'GLOBAL', 'GRANT', 'GRANTS', 'GROUP', 'HAVING', 'HEAP', 'HIGH_PRIORITY', 'HOSTS', 'HOUR', 'HOUR_MINUTE', 'HOUR_SECOND', 'IDENTIFIED', 'IF', 'IGNORE', 'IN', 'INDEX', 'INDEXES', 'INFILE', 'INNER', 'INSERT', 'INSERT_ID', 'INSERT_METHOD', 'INTERVAL', 'INTO', 'INVOKER', 'IS', 'ISOLATION', 'JOIN', 'KEY', 'KEYS', 'KILL', 'LAST_INSERT_ID', 'LEADING', 'LEFT', 'LEVEL', 'LIKE', 'LIMIT', 'LINEAR', 'LINES', 'LOAD', 'LOCAL', 'LOCK', 'LOCKS', 'LOGS', 'LOW_PRIORITY', 'MARIA', 'MASTER', 'MASTER_CONNECT_RETRY', 'MASTER_HOST', 'MASTER_LOG_FILE', 'MASTER_LOG_POS', 'MASTER_PASSWORD', 'MASTER_PORT', 'MASTER_USER', 'MATCH', 'MAX_CONNECTIONS_PER_HOUR', 'MAX_QUERIES_PER_HOUR', 'MAX_ROWS', 'MAX_UPDATES_PER_HOUR', 'MAX_USER_CONNECTIONS', 'MEDIUM', 'MERGE', 'MINUTE', 'MINUTE_SECOND', 'MIN_ROWS', 'MODE', 'MODIFY', 'MONTH', 'MRG_MYISAM', 'MYISAM', 'NAMES', 'NATURAL', 'NOT', 'NULL', 'OFFSET', 'ON', 'OPEN', 'OPTIMIZE', 'OPTION', 'OPTIONALLY', 'OR', 'ORDER', 'OUTER', 'OUTFILE', 'PACK_KEYS', 'PAGE', 'PARTIAL', 'PARTITION', 'PARTITIONS', 'PASSWORD', 'PRIMARY', 'PRIVILEGES', 'PROCEDURE', 'PROCESS', 'PROCESSLIST', 'PURGE', 'QUICK', 'RAID0', 'RAID_CHUNKS', 'RAID_CHUNKSIZE', 'RAID_TYPE', 'RANGE', 'READ', 'READ_ONLY', 'READ_WRITE', 'REFERENCES', 'REGEXP', 'RELOAD', 'RENAME', 'REPAIR', 'REPEATABLE', 'REPLACE', 'REPLICATION', 'RESET', 'RESTORE', 'RESTRICT', 'RETURN', 'RETURNS', 'REVOKE', 'RIGHT', 'RLIKE', 'ROLLBACK', 'ROW', 'ROWS', 'ROW_FORMAT', 'SECOND', 'SECURITY', 'SELECT', 'SEPARATOR', 'SERIALIZABLE', 'SESSION', 'SET', 'SHARE', 'SHOW', 'SHUTDOWN', 'SLAVE', 'SONAME', 'SOUNDS', 'SQL', 'SQL_AUTO_IS_NULL', 'SQL_BIG_RESULT', 'SQL_BIG_SELECTS', 'SQL_BIG_TABLES', 'SQL_BUFFER_RESULT', 'SQL_CACHE', 'SQL_CALC_FOUND_ROWS', 'SQL_LOG_BIN', 'SQL_LOG_OFF', 'SQL_LOG_UPDATE', 'SQL_LOW_PRIORITY_UPDATES', 'SQL_MAX_JOIN_SIZE', 'SQL_NO_CACHE', 'SQL_QUOTE_SHOW_CREATE', 'SQL_SAFE_UPDATES', 'SQL_SELECT_LIMIT', 'SQL_SLAVE_SKIP_COUNTER', 'SQL_SMALL_RESULT', 'SQL_WARNINGS', 'START', 'STARTING', 'STATUS', 'STOP', 'STORAGE', 'STRAIGHT_JOIN', 'STRING', 'STRIPED', 'SUPER', 'TABLE', 'TABLES', 'TEMPORARY', 'TERMINATED', 'THEN', 'TO', 'TRAILING', 'TRANSACTIONAL', 'TRUNCATE', 'TYPE', 'TYPES', 'UNCOMMITTED', 'UNION', 'UNIQUE', 'UNLOCK', 'UPDATE', 'USAGE', 'USE', 'USING', 'VALUES', 'VARIABLES', 'VIEW', 'WHEN', 'WHERE', 'WITH', 'WORK', 'WRITE', 'XOR', 'YEAR_MONTH' ); - - $sql_skip_reserved_words = array( 'AS', 'ON', 'USING' ); - $sql_special_reserved_words = array( '(', ')' ); - - $sql_raw = preg_replace( "/[\n]+/i", " ", trim($sql_raw) ); - - $sql_formatted = ""; - - $prev_word = ""; - $word = ""; - - for( $i = 0, $j = strlen( $sql_raw ); $i<$j; $i++ ) { - $word .= $sql_raw[$i]; - - $word_trimmed = trim( $word ); - - if( $sql_raw[$i]==" " || in_array( $sql_raw[$i], $sql_special_reserved_words ) ) { - $word_trimmed = trim( $word ); - - $trimmed_special = false; - - if( in_array( $sql_raw[$i], $sql_special_reserved_words ) ) { - $word_trimmed = substr( $word_trimmed, 0, -1 ); - $trimmed_special = true; - } - - $word_trimmed = strtoupper( $word_trimmed ); - - if( in_array( $word_trimmed, $sql_reserved_all ) && !in_array( $word_trimmed, $sql_skip_reserved_words ) ) { - if( in_array( $prev_word, $sql_reserved_all ) ) { - $sql_formatted .= strtoupper( trim( $word ) ) . ' '; - } else { - $sql_formatted .= "\n "; - $sql_formatted .= strtoupper( trim( $word ) ) . ' '; - } - - $prev_word = $word_trimmed; - $word = ""; - } else { - $sql_formatted .= trim( $word ) . ' '; - - $prev_word = $word_trimmed; - $word = ""; - } - } - } - - $sql_formatted .= trim( $word ); - - return $sql_formatted; - } - -?> \ No newline at end of file diff --git a/modules/help.php b/modules/help.php deleted file mode 100644 index 813caf5..0000000 --- a/modules/help.php +++ /dev/null @@ -1,38 +0,0 @@ -'Executing queries', - "results"=>'Working with results', - "keyboard"=>'Keyboard shortcuts', - "prefs"=>'Preferences', - "misc"=>'Miscellaneous', - "credits"=>'Credits', - "about"=>'About' - ); - - if ( !array_key_exists($p, $pages) ) - $p = "queries"; - - $contents = view("help/$p"); - - $replace = array( - 'PROJECT_SITEURL' => PROJECT_SITEURL, - 'CONTENT' => $contents - ); - - echo view('help', $replace, array('pages' => $pages, 'page' => $p) ); - } - -?> \ No newline at end of file diff --git a/modules/import.php b/modules/import.php deleted file mode 100644 index e2bf277..0000000 --- a/modules/import.php +++ /dev/null @@ -1,89 +0,0 @@ -stopOnError(v($_REQUEST['ignore_errors']) == 'yes' ? FALSE : TRUE); - //$parser->setCallback( 'report_progress', $module_id ); - //$parser->collectStats(v($_REQUEST['stats']) == 'yes'); - - Session::close(); - $result = $parser->parse($_FILES['impfile']['tmp_name'], $_FILES['impfile']['size'], $_FILES['impfile']['name']); - - $executed = $parser->getExecutedQueries(); - $failed = $parser->getFailedQueries(); - if (!$result || $executed > 0 || $failed > 0) { - $message .= '
    '.str_replace('{{NUM}}', $executed, __('{{NUM}} queries successfully executed')); - $message .= '
    [ ' . str_replace('{{NUM}}', $parser->getRowsAffected(), __('{{NUM}} record(s) were affected')) . '. ]
    '; - if ($failed > 0) { - $message_tmp = ($failed > 1) ? str_replace('{{NUM}}', $failed, __('{{NUM}} queries failed to execute')) : __('Error occurred while executing the query'); - $message .= '
    '.$message_tmp.'
    '; - if ($failed == 1) { - $message .= '
    ' . htmlspecialchars($parser->getError()) . '
    '; - $message .= '
    ' . htmlspecialchars($parser->getLastQuery()) . '
    '; - } - } - } - else - $message .= '
    '.__('No queries were executed during import').'.
    '; - } - else - $message .= '
    '.__('File upload failed. Please try again').'.
    '; - - $importDone = TRUE; - } - - if (!$importDone) { - $message = '
    '.str_replace('{{SIZE}}', $max_upload_size_text, __('Maximum upload filesize is {{SIZE}}')); - $message .= '
    ' . str_replace('{{LIST}}', valid_import_files(), __('Supported filetypes / extensions are: ({{LIST}})')) . '
    '; - } else { - $refresh = '1'; - } - - $replace = array( 'MESSAGE' => $message, 'MAX_SIZE' => $max_upload_size, 'REFRESH' => $refresh ); - echo view( 'import', $replace, array( 'progress' => phpCheck(5.4) ) ); - } - - function valid_import_files() { - $files = '*.sql, *.txt'; - if (function_exists('bzopen')) - $files .= ', *.bz, *.bzip, *.bz2'; - if (function_exists('gzopen')) - $files .= ', *.gz, *.gzip'; - return $files; - } - - // reports file upload progress during import - function getModuleStatus( $id ) { - $key = "upload_progress_import"; - $status = array('c' => 0, 'r' => 0, 's' => 0); - if ( isset( $_SESSION[$key] ) ) { - $status['c'] = (int) ( $_SESSION[$key]['bytes_processed'] / $_SESSION[$key]['content_length'] * 100 ); - $status['s'] = 1; - } - return $status; - } - - // reports sql import status after file uploads - function report_progress( $module_id, $executed ) { - $st = Session::get( 'status', $module_id ); - Session::set( 'status', $module_id, $executed ); - } -?> \ No newline at end of file diff --git a/modules/importtbl.php b/modules/importtbl.php deleted file mode 100644 index a0f3f92..0000000 --- a/modules/importtbl.php +++ /dev/null @@ -1,77 +0,0 @@ -options()); - $result = $importer->importTable($_FILES['impfile']['tmp_name'], $options); - - $failed = $importer->getFailedQueries(); - $affected = $importer->getRowsAffected(); - if (!$result || $affected > 0 || $failed > 0) { - $message .= '
    [ ' . str_replace('{{NUM}}', $affected, __('{{NUM}} record(s) were affected')) . '. ]
    '; - if ($failed > 0) { - $message_tmp = ($failed > 1) ? str_replace('{{NUM}}', $failed, __('{{NUM}} queries failed to execute')) : __('Error occurred while executing the query'); - $message .= '
    '.$message_tmp.'
    '; - if ($failed == 1) { - $message .= '
    ' . htmlspecialchars($importer->getError()) . '
    '; - $message .= '
    ' . htmlspecialchars($importer->getLastQuery()) . '
    '; - } - } - } - else - $message .= '
    '.__('No queries were executed during import').'.
    '; - } - else - $message .= '
    '.__('File upload failed. Please try again').'.
    '; - - $importDone = TRUE; - } - - if (!$importDone) { - $message = '
    '.str_replace('{{SIZE}}', $max_upload_size_text, __('Maximum upload filesize is {{SIZE}}')); - $message .= '
    ' . str_replace('{{LIST}}', valid_import_files(), __('Supported filetypes / extensions are: ({{LIST}})')) . '
    '; - } else { - $refresh = '1'; - } - - include(BASE_PATH . '/lib/html.php'); - $tables = html::arrayToOptions($db->getTables(), '', true, ''); - $replace = array( 'MESSAGE' => $message, 'MAX_SIZE' => $max_upload_size, 'REFRESH' => $refresh, - 'TABLE_LIST' => $tables ); - echo view('importtbl', $replace); - } - - function valid_import_files() { - $files = '*.csv, *.txt'; - /*if (function_exists('bzopen')) - $files .= ', *.bz, *.bzip, *.bz2'; - if (function_exists('gzopen')) - $files .= ', *.gz, *.gzip';*/ - return $files; - } -?> \ No newline at end of file diff --git a/modules/indexes.php b/modules/indexes.php deleted file mode 100644 index 558f497..0000000 --- a/modules/indexes.php +++ /dev/null @@ -1,73 +0,0 @@ -setName(v($_REQUEST["name"])); - $editor->loadTable(true, true, false); - - if ($action == "alter") - { - $result = alterTableIndexes($db, v($_REQUEST["query"]), $editor); - $formatted_query = preg_replace("/[\\n|\\r]?[\\n]+/", "
    ", htmlspecialchars($editor->getSql())); - if ($result) - print - '
    1
    ' - .'
    The command executed successfully.
    ' - .'
    '.$formatted_query.'
    ' - .'
    '; - else - print - '
    0
    ' - .'
    Error occured while executing the query:
    ' - .'
    '.$formatted_query.'
    ' - .'
    '.htmlspecialchars($db->getError()).'
    ' - .'
    '; - } - else - displayIndexesForm($db, $editor); - } - - function displayIndexesForm(&$db, &$editor) - { - $indexes = $editor->getIndexes(); - $fields = $editor->getFields(); - - $replace = array( - 'ID' => v($_REQUEST["id"]) ? htmlspecialchars($_REQUEST["id"]) : '', - 'MESSAGE' => __('Changes are not saved until you press [Save All Changes]'), - 'INDEXES' => count($indexes) > 0 ? json_encode($indexes) : '{}', - 'FIELDS' => json_encode($fields), - 'TABLE_NAME' => htmlspecialchars($editor->getName()) - ); - echo view('indexes', $replace); - } - - function alterTableIndexes(&$db, $info, &$editor) - { - $info = json_decode($info); - - if (!is_object($info)) - return false; - - if (v($info->indexes)) - $editor->setIndexes($info->indexes); - - $sql = $editor->getAlterIndexStatement(); - - if (!$db->query($sql)) - return false; - - return true; - } -?> \ No newline at end of file diff --git a/modules/info.php b/modules/info.php deleted file mode 100644 index 80d9dee..0000000 --- a/modules/info.php +++ /dev/null @@ -1,17 +0,0 @@ - \ No newline at end of file diff --git a/modules/infodb.php b/modules/infodb.php deleted file mode 100644 index 8b03f5d..0000000 --- a/modules/infodb.php +++ /dev/null @@ -1,22 +0,0 @@ -queryTableStatus()) - createSimpleGrid($db, __('Database summary').': ['.htmlspecialchars(getDbName()).']'); - } - -?> \ No newline at end of file diff --git a/modules/infoserver.php b/modules/infoserver.php deleted file mode 100644 index cab1db1..0000000 --- a/modules/infoserver.php +++ /dev/null @@ -1,31 +0,0 @@ -hasServer()) { - echo view('infoserverless', array()); - return; - } - - if ($db->queryVariables()) { - $folder = $db->name(); - - include( find_view( array($folder.'/templates/variables', 'templates/variables') ) ); - $vars = parseVariables($db); - - $replace = $vars + array('JS' => ''); - if (getDbName() == '') // no database selected, hide menus that belong to a db only - $replace['JS'] = 'parent.$("#main-menu").find(".db").hide();'; - echo view(array($folder.'/infoserver', 'infoserver'), $replace); - } - } - -?> \ No newline at end of file diff --git a/modules/infovars.php b/modules/infovars.php deleted file mode 100644 index 575352c..0000000 --- a/modules/infovars.php +++ /dev/null @@ -1,18 +0,0 @@ -queryVariables()) { - createSimpleGrid($db, __('Server Variables')); - } - } - -?> \ No newline at end of file diff --git a/modules/logout.php b/modules/logout.php deleted file mode 100644 index a828d10..0000000 --- a/modules/logout.php +++ /dev/null @@ -1,17 +0,0 @@ - \ No newline at end of file diff --git a/modules/objcreate.php b/modules/objcreate.php deleted file mode 100644 index db8ffec..0000000 --- a/modules/objcreate.php +++ /dev/null @@ -1,98 +0,0 @@ -' - .__('Enter command for object creation'); - displayCreateObjectForm($db, $msg, $type, $refresh); - } - - function displayCreateObjectForm(&$db, $msg, $type, $refresh) { - $id = $_REQUEST["id"]; - if (isset($_REQUEST["objinfo"])) - $objInfo = htmlspecialchars($_REQUEST["objinfo"]); - else - $objInfo = getObjectCreateCommand($db, $id); - print ""; - - $min = file_exists('js/min/minify.txt'); - $js = $min ? 'codemirror' : 'editor/codemirror'; - $editor_link = ""; - $editor_options = $min ? 'basefiles: ["js/min/codemirror_base.js"]' : 'parserfile: "mysql.js", path: "js/editor/"'; - - $replace = array('ID' => htmlspecialchars($id), - 'MESSAGE' => $msg, - 'MESSAGE_TYPE' => $type, - 'OBJINFO' => $objInfo, - 'EDITOR_LINK' => $editor_link, - 'EDITOR_OPTIONS' => $editor_options, - 'REFRESH' => $refresh ? '1' : '0' - ); - - echo view('objcreate', $replace); - } - - function getObjectCreateCommand(&$db, $id) { - $folder = $db->name() . '/templates'; - - $x = ''; - switch($id) { - case 0: - $x = view(array($folder.'/table', 'templates/table')); break; - case 1: - $x = view(array($folder.'/view', 'templates/view')); break; - case 2: - $x = view(array($folder.'/procedure', 'templates/procedure')); break; - case 3: - $x = view(array($folder.'/function', 'templates/function')); break; - case 4: - $x = view(array($folder.'/trigger', 'templates/trigger')); break; - case 5: - $x = view(array($folder.'/event', 'templates/event')); break; - case 6: - $x = view(array($folder.'/schema', 'templates/schema')); break; - } - return htmlspecialchars($x); - } - - function createDatabaseObject(&$db, $id, $info) { - $cmd = trim($info); - if (strtolower(substr($cmd, 0, 6)) != "create") - return __('Only create commands are accepted'); - - if (!$db->query($cmd)) - return htmlspecialchars($db->getError()); - - $warnings = $db->getWarnings(); - if (count($warnings) > 0) { - foreach($warnings as $code=>$warning) - return htmlspecialchars($warning); // return the first warning (for this module always true) - } - - return ""; - } - -?> \ No newline at end of file diff --git a/modules/objlist.php b/modules/objlist.php deleted file mode 100644 index ab17c06..0000000 --- a/modules/objlist.php +++ /dev/null @@ -1,20 +0,0 @@ -'; - echo getDatabaseTreeHTML($db); - echo ''; - } - -?> \ No newline at end of file diff --git a/modules/options.php b/modules/options.php deleted file mode 100644 index eb1d6eb..0000000 --- a/modules/options.php +++ /dev/null @@ -1,37 +0,0 @@ - __('Results'), - 'editing' => __('Record Editing'), - 'misc' => __('Miscellaneous') - ); - - // for mysql there are some extra options - if ($db->name() == 'mysql') { - $pages = array('ui' => __('Interface')) + $pages; - } - - if ( !array_key_exists($p, $pages) ) - $p = key($pages); - - $content = view("options/$p"); - - $replace = array('CONTENT' => $content); - - echo view('options', $replace, array('pages' => $pages, 'page' => $p) ); - - } - -?> \ No newline at end of file diff --git a/modules/processes.php b/modules/processes.php deleted file mode 100644 index 1f28c83..0000000 --- a/modules/processes.php +++ /dev/null @@ -1,83 +0,0 @@ -\n"; - - $type = 'message ui-state-highlight'; - if (isset($_REQUEST['prcid']) && is_array($_REQUEST['prcid'])) { - $killed = $missed = array(); - foreach($_REQUEST['prcid'] as $process_id) { - if (ctype_digit($process_id) && killProcess($db, $process_id)) { - $killed[] = $process_id; - } else { - $missed[] = $process_id; - } - } - if (count($killed) > 0) { - $msg = str_replace('{{PID}}', implode(',', $killed), __('The process with id [{{PID}}] was killed')); - $type = 'message ui-state-default'; - } else { - $msg = str_replace('{{PID}}', implode(',', $missed), __('No such process [id = {{PID}}]')); - $type = 'message ui-state-error'; - } - } - else - $msg = __('Select a process and click the button to kill the process'); - - displayProcessList($db, $msg, $type); - } - - function displayProcessList(&$db, $msg, $type) { - print ""; - print ""; - print ""; - - print "
    "; - if ($msg != "") { - $div = '
    '.$msg.'
    '; - print ""; - } - print ""; - - print "\n"; - - print ""; - } - else - print __('Failed to get process list'); - } - - function killProcess(&$db, $id) { - if ($id) { - if ($db->query("kill '".$db->escape($id)."'")) - return true; - } - return false; - } - -?> \ No newline at end of file diff --git a/modules/query.php b/modules/query.php deleted file mode 100644 index 43a370f..0000000 --- a/modules/query.php +++ /dev/null @@ -1,263 +0,0 @@ - bool, 'error' => string or null] - */ - function validateDeleteQuery($query) { - // Normalize query: trim whitespace and convert to uppercase for comparison - $query_upper = strtoupper(trim($query)); - - // Extract first word to identify command type - $first_word = strtok($query_upper, ' '); - - // Check if query starts with TRUNCATE command - always block - if ($first_word === 'TRUNCATE') { - // TRUNCATE is completely disabled for security - return [ - 'valid' => false, - 'error' => __('TRUNCATE queries are not allowed. Use DELETE with a WHERE clause instead.') - ]; - } - - // Check if query starts with DROP command - only block DROP TABLE - if ($first_word === 'DROP') { - // Get second word to check if it's DROP TABLE - $second_word = strtok(' '); - if ($second_word === 'TABLE') { - // DROP TABLE is blocked for security - return [ - 'valid' => false, - 'error' => __('DROP TABLE commands are not allowed. Use DELETE with a WHERE clause instead.') - ]; - } - } - - // Check if this is a DELETE query that requires WHERE clause validation - if ($first_word === 'DELETE') { - // Use regex to find WHERE keyword as a whole word (not part of another word) - if (!preg_match('/\bWHERE\b/i', $query)) { - // WHERE clause not found - DELETE without WHERE is dangerous - return [ - 'valid' => false, - 'error' => __('DELETE query must contain a WHERE clause to specify which records to delete') - ]; - } - - // Check for forced-true conditions that don't actually filter rows - // Patterns like WHERE 1=1, WHERE 2=2, WHERE 'a'='a' are always true and bypass the WHERE requirement - // Allow only conditions that reference actual column names, not literal values compared to themselves - if (preg_match('/\bWHERE\s+(\d+\s*[=<>!]+\s*\d+|\'[^\']*\'\s*=\s*\'[^\']*\'|"[^"]*"\s*=\s*"[^"]*"|(true|false))\b/i', $query)) { - // Forced-true pattern detected - this bypasses the WHERE clause requirement - return [ - 'valid' => false, - 'error' => __('WHERE clause must contain a meaningful condition that references actual columns, not forced true/false values like "WHERE 1=1" or "WHERE 2=2".') - ]; - } - } - - // Query passed all safety checks - return ['valid' => true, 'error' => null]; - } - - function processRequest(&$db) { - // first time query will be from request, then we will get it from session (applying limit scenario) - $table_select = v($_REQUEST["id"]) == 'table' ? true: false; - - if ($table_select) - $query = selectFromTable($db); - else - $query = simpleQuery($db); - - if (!$query) { - createErrorGrid($db, $query); - return; - } - - // Validate dangerous queries if safety checks are enabled in configuration - if (SAFE_QUERIES) { - // Call validation function to check for DELETE, TRUNCATE, and DROP commands - $validation_result = validateDeleteQuery($query); - - // If validation failed, display error and prevent query execution - if (!$validation_result['valid']) { - // Set error message and render error grid to user - $db->error = $validation_result['error']; - createErrorGrid($db, $query); - return; - } - } - - loadDbVars($db); - if ($db->query($query)) { - if (!$db->hasResult()) { - $info = getCommandInfo($query); - if ($info['dbAltered']) - Session::set('db', 'altered', true); - else if ($info['setvar'] == TRUE && is_scalar($info['variable']) && is_scalar($info['value'])) - setDbVar( $info['variable'], $info['value'] ); - createInfoGrid($db); - } - else { - // if it is a data result set, show it as result grid, otherwise in simple grid layout - $query_type = getQueryType($query); - if ($query_type['can_limit']) - createResultGrid($db); - else - createSimpleGrid($db, __('Query') . ': ' . $query); - } - } - else - createErrorGrid($db, $query); - } - - function selectFromTable(&$db) { - $query = ''; - $record_limit = Options::get('res-max-count', MAX_RECORD_TO_DISPLAY); - - $page = v($_REQUEST['name']); - if ($page) { // subsequent page requests from a table - $limit_applied = Session::get('select', 'limit'); - if (!ctype_digit($page) | $page < 1 || !$limit_applied) - return ''; - - $query = Session::get('select', 'query'); - $table = Session::get('select', 'table'); - $count = Session::get('select', 'count'); - $query_type = getQueryType($query); - if ($query_type['result'] == FALSE || !$table || !ctype_digit($count)) - return ''; // page requested but not a valid table query - - $total_pages = ceil($count / $record_limit); - if ($total_pages < $page) - return ''; - - Session::set('select', 'page', $page); - $limit = $db->getLimit( $record_limit, ($page-1)*$record_limit ); - $query .= $limit; - } else { // query from table first time - Session::del('select', 'table'); - Session::del('select', 'can_limit'); - Session::del('select', 'limit'); - Session::del('select', 'page'); - Session::del('select', 'count'); - - $table = v($_REQUEST["query"]); - $query = 'select * from ' . $db->quote($table); - Session::set('select', 'query', $query); - Session::set('select', 'table', $table); - $sql = 'select count(*) as count_rec from ' . $db->quote($table); - if (!$db->query($sql)) - return ''; - $row = $db->fetchRow(); - $count = $row[0]; - Session::set('select', 'count', $count); - Session::set('select', 'page', 1); - Session::set('select', 'can_limit', true); - if ($count > $record_limit) { - Session::set('select', 'limit', true); - $limit = $db->getLimit( $record_limit ); - $query .= $limit; - } - } - - return $query; - } - - function simpleQuery(&$db) { - $query = v($_REQUEST["query"]); - if (!$query) - $query = Session::get('select', 'query'); // try to load from session - - if (!$query) - return ''; - - // see if user is restricted to a list of databases by configuration - // if yes, then disallow db use queries - // it's still possible that the command can contain db prefixes, which will override the db selection - //$info = getCommandInfo($query); - //if ($info['dbChanged']) - // return ''; - - $query_type = getQueryType($query); - if ($query_type['result'] == FALSE) - return $query; - - // only apply limit/sort to select queries with results - if ($query_type['can_limit'] == FALSE) { - - return $query; - } - - Session::set('select', 'can_limit', $query_type['can_limit'] == TRUE); - - if ( v($_REQUEST["id"]) == 'sort' ) { - $field = v($_REQUEST['name']); - if ($field) { - $query = sortQuery($query, ctype_digit($field) ? $field : $db->quote($field)); - } - // clear pagination if sorting is changed - Session::set('select', 'page', 1); - } - - // save order clause with query in session, required for pagination - Session::set('select', 'query', $query); - - // try to find limit clause in the query. If one is not applied, apply now - // only either sort or pagination request can come at a time - if( !$query_type['has_limit'] && v($_REQUEST["id"]) != 'sort' ) { - $record_limit = Options::get('res-max-count', MAX_RECORD_TO_DISPLAY); - $page = v($_REQUEST['name']); - - if ( $page ) { - $limit_applied = Session::get('select', 'limit'); - if (!ctype_digit($page) | $page < 1 || !$limit_applied) - return $query; - - $count = Session::get('select', 'count'); - $total_pages = ceil($count / $record_limit); - if ($total_pages < $page) - return $query; - - Session::set('select', 'page', $page); - $limit = $db->getLimit( $record_limit, ($page-1)*$record_limit ); - $query .= $limit; - } else { - Session::del('select', 'table'); - Session::del('select', 'limit'); - Session::del('select', 'page'); - Session::del('select', 'count'); - Session::del('select', 'sort'); - Session::del('select', 'sortcol'); - - if (!$db->query($query)) - return $query; - $count = $db->numRows(); - if ($count > $record_limit) { - Session::set('select', 'count', $count); - Session::set('select', 'page', 1); - Session::set('select', 'limit', 1); - $limit = $db->getLimit( $record_limit ); - $query .= $limit; - } - } - } - - return $query; - } -?> \ No newline at end of file diff --git a/modules/queryall.php b/modules/queryall.php deleted file mode 100644 index 36253f0..0000000 --- a/modules/queryall.php +++ /dev/null @@ -1,38 +0,0 @@ -collectStats(); - if (!$parser->parseFile($temp)) - createErrorGrid($db, $parser->getLastQuery(), $parser->getExecutedQueries(), $parser->getRowsAffected()); - else { - $stats = $parser->getStats(); - if ($stats->dbAltered) - Session::set('db', 'altered', true); - createInfoGrid($db, $query, $parser->getExecutedQueries(), $parser->getRowsAffected(), false, $parser->getExecutedTime()); - } - } -?> \ No newline at end of file diff --git a/modules/rename.php b/modules/rename.php deleted file mode 100644 index 09d40d8..0000000 --- a/modules/rename.php +++ /dev/null @@ -1,33 +0,0 @@ -renameObject($name, $type, $new_name); - // @@TODO: this can be improved, although it is only information - $numQueries = $type == 'table' ? 1 : 2; - - if ($success) { - Session::set('db', 'altered', true); - createInfoGrid($db, '', $numQueries); - } - else - createErrorGrid($db, $db->getLastQuery()); - } -?> \ No newline at end of file diff --git a/modules/search.php b/modules/search.php deleted file mode 100644 index aa71782..0000000 --- a/modules/search.php +++ /dev/null @@ -1,49 +0,0 @@ -getTables(); - $replace = array('TABLELIST' => json_encode($db_tables), - ); - echo view('search', $replace); - } - } - - function searchDatabase(&$db) { - $operator = v($_POST['operator']); - $fieldTypes = array(); - $fieldTypes['numeric'] = v($_POST['ftype_num']) == 'on'; - $fieldTypes['char'] = v($_POST['ftype_char']) == 'on' && !$fieldTypes['numeric']; - $fieldTypes['text'] = v($_POST['ftype_text']) == 'on' && !$fieldTypes['numeric']; - $fieldTypes['date'] = v($_POST['ftype_date']) == 'on' && !$fieldTypes['numeric']; - - include(BASE_PATH . "/lib/tablesearch.php"); - $searchTool = new tableSearch($db); - $searchTool->setTables(v($_POST['tables'])); - $searchTool->setText(v($_POST['keyword'])); - $searchTool->setOperator($operator); - $searchTool->setFieldTypes($fieldTypes); - - $data = array('results' => array(), 'queries' => array()); - if ($searchTool->search()) { - $data['results'] = $searchTool->getResults(); - $data['queries'] = $searchTool->getQueries(); - } - - $message = str_replace('{{KEYWORD}}', """ . htmlspecialchars($_POST['keyword']) . """, __('Search results for {{KEYWORD}} in the database')); - $replace = array('MESSAGE' => $message); - echo view('search_results', $replace, $data); - } - -?> \ No newline at end of file diff --git a/modules/showcreate.php b/modules/showcreate.php deleted file mode 100644 index 3cac668..0000000 --- a/modules/showcreate.php +++ /dev/null @@ -1,42 +0,0 @@ -getCreateCommand($type, $name); - $cmd = sanitizeCreateCommand($type, $cmd); - $tm = $db->getQueryTime(); - $sql = $db->getLastQuery(); - $sql = preg_replace("/[\n\r]/", "
    ", htmlspecialchars($sql)); - - $replace = array('TYPE' => $type, - 'NAME' => $name, - 'COMMAND' => $cmd, - 'TIME' => $tm, - 'SQL' => $sql, - 'MESSAGE' => $extraMsg - ); - - echo view('showcreate', $replace); - } - -?> \ No newline at end of file diff --git a/modules/showinfo.php b/modules/showinfo.php deleted file mode 100644 index e6722cd..0000000 --- a/modules/showinfo.php +++ /dev/null @@ -1,41 +0,0 @@ -getCreateCommand($type, $name); - $cmd = sanitizeCreateCommand($type, $cmd); - //$tm = $db->getQueryTime(); - - $replace = array('TYPE' => $type, - 'NAME' => $name, - 'COMMAND' => $cmd, - //'TIME' => $tm, - //'SQL' => $sql - //'MESSAGE' => $extraMsg - ); - - echo view('showinfo', $replace); - } - } -?> \ No newline at end of file diff --git a/modules/splash.php b/modules/splash.php deleted file mode 100644 index a1e91ba..0000000 --- a/modules/splash.php +++ /dev/null @@ -1,61 +0,0 @@ -' - . $formCode . ''; - } - - $scripts = "jquery"; - $extraScript = ""; - - if (secureLoginPage()) { - $scripts = "jquery,encrypt"; - $e = Session::get('auth_enc', 'e'); - $d = Session::get('auth_enc', 'd'); - $n = Session::get('auth_enc', 'n'); - $keyLength = 128; - if(!$e || !$d || !$n) { - $enc_lib = BASE_PATH . ((extension_loaded('openssl') && extension_loaded('gmp')) - ? "/lib/external/jcryption.php" - : "/lib/external/jcryption-legacy.php"); - require_once( $enc_lib ); - $jCryption = new jCryption(); - $keys = $jCryption->generateKeypair($keyLength); - $e = array("int" => $keys["e"], "hex" => $jCryption->dec2string($keys["e"],16)); - $d = array("int" => $keys["d"], "hex" => $jCryption->dec2string($keys["d"],16)); - $n = array("int" => $keys["n"], "hex" => $jCryption->dec2string($keys["n"],16)); - Session::set('auth_enc', 'e', $e); - Session::set('auth_enc', 'd', $d); - Session::set('auth_enc', 'n', $n ); - } - $keyData = '{"e":"'.$e["hex"].'","n":"'.$n["hex"].'","maxdigits":"'.intval($keyLength*2/16+3).'"}'; - $extraScript = ''; - } - - $replace = array( - 'MESSAGE' => $msg ? '
    '.htmlspecialchars($msg).'
    ' : '', - 'FORM' => $formCode, - 'APP_VERSION' => APP_VERSION, - 'PROJECT_SITEURL' => PROJECT_SITEURL, - 'SCRIPTS' => $scripts, - 'EXTRA_SCRIPT' => $extraScript - ); - - return view('splash', $replace); - } -?> \ No newline at end of file diff --git a/modules/tableinsert.php b/modules/tableinsert.php deleted file mode 100644 index e6dfdf9..0000000 --- a/modules/tableinsert.php +++ /dev/null @@ -1,24 +0,0 @@ -getInsertStatement($tbl); - - if ($str === false) - createErrorGrid($db, $db->getLastQuery()); - else { - print "
    ".htmlspecialchars($str)."
    "; - print "\n"; - } - } -?> \ No newline at end of file diff --git a/modules/tableupdate.php b/modules/tableupdate.php deleted file mode 100644 index 7e87b5b..0000000 --- a/modules/tableupdate.php +++ /dev/null @@ -1,24 +0,0 @@ -getUpdateStatement($tbl); - - if ($str === false) - createErrorGrid($db, $db->getLastQuery()); - else { - print "
    ".htmlspecialchars($str)."
    "; - print "\n"; - } - } -?> \ No newline at end of file diff --git a/modules/truncate.php b/modules/truncate.php deleted file mode 100644 index dc8a3c4..0000000 --- a/modules/truncate.php +++ /dev/null @@ -1,27 +0,0 @@ -truncateTable($name)) { - createInfoGrid($db, $db->getLastQuery()); - } - else - createErrorGrid($db, $db->getLastQuery()); - } -?> \ No newline at end of file diff --git a/modules/updatecheck.php b/modules/updatecheck.php deleted file mode 100644 index f9891c0..0000000 --- a/modules/updatecheck.php +++ /dev/null @@ -1,59 +0,0 @@ - true, - CURLOPT_HTTPHEADER => [ - 'User-Agent: MyWebSQL/' . APP_VERSION, // Required by GitHub - 'Accept: application/vnd.github+json', - ], - ]); - - $response = curl_exec($ch); - $status = curl_getinfo($ch, CURLINFO_HTTP_CODE); - curl_close($ch); - - if ($status !== 200) { - echo 'Could not connect to GitHub repo for update check.'; - exit; - } - - $data = json_decode($response, true); - $version = $data['tag_name'] ?? ''; - if(!$version) { - echo 'Could not find current version for latest release from GitHub repo.'; - exit; - } - - $version = substr($version, 1); - - Session::set('updates', 'check', '1'); - - $versionInfo = [ - 'success' => 1, - 'available' => (float) $version > (float) APP_VERSION, - 'link' => 'https://github.com/Samnan/MyWebSQL/releases/latest' - ]; - - echo(json_encode($versionInfo)); - $db->disconnect(); - Output::flush(); - exit(); - } -?> \ No newline at end of file diff --git a/modules/upload.php b/modules/upload.php deleted file mode 100644 index 8ed56e5..0000000 --- a/modules/upload.php +++ /dev/null @@ -1,32 +0,0 @@ - \ No newline at end of file diff --git a/modules/usermanager.php b/modules/usermanager.php deleted file mode 100644 index 781b37c..0000000 --- a/modules/usermanager.php +++ /dev/null @@ -1,157 +0,0 @@ -flush('PRIVILEGES', true); - $message = __('The command executed successfully'); - } - else - $message = __('Error occurred while executing the query'); - } - - displayUserForm($db, $editor, $message, $action); - } - - function displayUserForm(&$db, &$editor, $message, $action) { - $dbList = $db->getDatabases(); - $userList = $editor->getUsersList(); - $privilegeNames = Privileges::getNames(); - $dbPrivilegeNames = DbPrivileges::getNames(); - - // current user name is not plaintext in case of 'update' action - $userName = ''; - if ($action == 'update') { - $obj = json_decode(v($_REQUEST['query'])); - if (is_object($obj)) - $userName = $obj->username . '@' . $obj->hostname; - } else - $userName = v($_REQUEST['query']); - - $currentUser = selectUser($userList, $userName); - $privileges = array(); - $dbPrivileges = array(); - $userInfo = array(); - if ($currentUser) { - $privileges = $currentUser->getGlobalPrivileges(); - foreach($dbList as $db_name) - $dbPrivileges[$db_name] = $currentUser->getDbPrivileges($db_name); - - $userInfo = array('username' => $currentUser->userName, 'host' => $currentUser->host); - } - $users = userOptions($userList, $currentUser); - - $replace = array( - 'ID' => v($_REQUEST["id"]) ? htmlspecialchars($_REQUEST["id"]) : '', - 'MESSAGE' => $message, - 'USERS' => $users, - 'USER_INFO' => json_encode($userInfo), - 'DATABASES' => json_encode($dbList), - 'PRIVILEGES' => json_encode($privileges), - 'DB_PRIVILEGES' => json_encode($dbPrivileges), - 'PRIVILEGE_NAMES' => json_encode($privilegeNames), - 'DB_PRIVILEGE_NAMES' => json_encode($dbPrivilegeNames) - ); - echo view('usermanager', $replace); - } - - function selectUser($list, $user) { - foreach($list as $obj) { - $name = $obj->userName . '@' . $obj->host; - if ($user == $name) - return $obj; - } - - $obj = count($list) > 0 ? $list[0] : NULL; - return $obj; - } - - function addUser(&$db, $info, &$editor) { - $info = json_decode($info); - - if (!is_object($info)) - return false; - - return $editor->add($info->username, $info->hostname, $info->pwd, v($info->native)); - } - - function deleteUser(&$db, $info, &$editor) { - $info = json_decode($info); - - if (!is_object($info)) - return false; - - return $editor->delete($info->username, $info->host); - } - - function updateUser(&$db, $info, &$editor) { - $info = json_decode($info); - if (!is_object($info)) - return false; - - // only change user info if it requires update - if ($info->oldusername != $info->username || $info->oldhostname != $info->hostname) { - $result = $editor->update($info->oldusername, $info->oldhostname, $info->username, $info->hostname); - if (!$result) - return false; - } - - // change password only if requested - if (isset($info->password) && $info->password != '') { - $result = $editor->updatePassword($info->username, $info->hostname, $info->password, v($info->native)); - if (!$result) - return false; - } else if (isset($info->removepass) && $info->removepass == '1') { - $result = $editor->updatePassword($info->username, $info->hostname, ''); - if (!$result) - return false; - } - - $user = $editor->getUser($info->username, $info->hostname); - $user->setGlobalPrivileges($info->privileges); - - $dbList = $db->getDatabases(); - foreach($dbList as $db_name) { - $result = $user->setDbPrivileges($db_name, isset($info->db_privileges->$db_name) ? $info->db_privileges->$db_name : array() ); - if (!$result) - return false; - } - - return true; - } - - function userOptions($array, $selected) { - $str = $selected == '' ? '' : ''; - foreach($array as $user) { - $name = $user->userName . '@' . $user->host; - if ($selected->userName == $user->userName && $selected->host == $user->host) - $str .= ''; - else - $str .= ''; - } - - return $str; - } -?> \ No newline at end of file diff --git a/modules/viewblob.php b/modules/viewblob.php deleted file mode 100644 index 9529816..0000000 --- a/modules/viewblob.php +++ /dev/null @@ -1,157 +0,0 @@ - 0 && isset($_FILES['blobdata']) ) { - $result = saveBlobData($db, $table, $id, $name); - $message = $result ? '
    '.__('Blob data saved').'
    ' - : '
    '.__('Failed to save blob data').'
    '; - unset($_REQUEST["blobtype"]); - } - - include(BASE_PATH . "/config/blobs.php"); - $bType = ( v($_REQUEST["blobtype"]) && array_key_exists(v($_REQUEST["blobtype"]), $blobTypes) ) ? v($_REQUEST["blobtype"]) : "txt"; - - // @todo: optimize. this should always fetch one row - $blobOptions = ''; - $query = Session::get('select', 'query'); - - if ($table == "") - $applyLimit = true; - else - $applyLimit = strpos($query, "limit "); - - if ($applyLimit == false) - $query .= $db->getLimit( 1, $id ); - - if (!$db->query($query) || $db->numRows() == 0) { - echo view('error_page'); - return; - } - - $row = ($applyLimit==false ? $db->fetchRow() : $db->fetchSpecificRow($id)); - - // show as image etc ... - if ($bType && v($_REQUEST["show"]) && $blobTypes[$bType][2]) { - ob_end_clean(); - include_once(BASE_PATH . "/lib/output.php"); - Output::buffer(); - header($blobTypes[$bType][2]); - print $row[$name]; - return true; - } - - foreach($blobTypes as $k=>$v) { - if ($bType == $k) - $blobOptions .= "\n"; - else - $blobOptions .= "\n"; - } - - // try to show the blob data as specified type - if ($bType && $blobTypes[$bType] && v($blobTypes[$bType][3])) { - if (strpos($blobTypes[$bType][3], "#link#") !== false) - $blobData = str_replace("#link#", "?q=wrkfrm&type=viewblob&show=1&id=$id&name=$name&blobtype=$bType&query=".urlencode($queryCode), $blobTypes[$bType][3]); - //else if (strpos($blobTypes[$bType][3], "#src#") !== false) - // print str_replace("#src", $row[$name], $blobTypes[$bType][3]); - else - $blobData = htmlspecialchars($row[$name]); - } else if ($bType && $blobTypes[$bType] && v($blobTypes[$bType][4])) { - $func = $blobTypes[$bType][4]; - $blobData = htmlspecialchars(print_r($func($row[$name]), 1)); - } else - $blobData = htmlspecialchars($row[$name]); - - $toolbar = $isEditable ? view('viewblob_toolbar', array( - 'BLOBOPTIONS' => $blobOptions, - )) : '
    ' . __('Blob data is not editable') . '
    '; - - $replace = array('ID' => $id, - 'NAME' => $name, - 'BLOBOPTIONS' => $blobOptions, - 'BLOBDATA' => $blobData, - 'TABLE' => $table == "" ? "" : htmlspecialchars($table), - 'QCODE' => md5(Session::get('select', 'query')), // this will help identify that the blob data belongs to this query - 'BLOB_TOOLBAR' => $toolbar, - 'MESSAGE' => $message - ); - echo view('viewblob', $replace); - } - - function isBlobEditable() { - $table = Session::get('select', 'unique_table'); // Session::get('select', 'table') - $pkeyCount = count(Session::get('select', 'pkey')); - $uKeyCount = count(Session::get('select', 'ukey')); - - if ($table != "" && ( $pkeyCount > 0 || $uKeyCount > 0 ) ) - return true; - - return false; - } - - function saveBlobData(&$db, $table, $id, $field) { - $record = $id; - $file = $_FILES['blobdata']['tmp_name']; - $blobData = file_get_contents($file); - - if (empty($blobData)) - return false; - - // fetch the record to build update query - $query = Session::get('select', 'query'); - if (Session::get('select', 'unique_table') == "") - $applyLimit = true; - else - $applyLimit = strpos($query, "limit "); - - if ($applyLimit == false) - $query .= $db->getLimit( 1, $id ); - - if (!$db->query($query) || $db->numRows() == 0) { - echo view('error_page'); - return; - } - - $bq = $db->getBackQuotes(); - - $row = ($applyLimit==false ? $db->fetchRow() : $db->fetchSpecificRow($id)); - $where = array(); - if (count(Session::get('select', 'pkey')) > 0) { - $pkey = Session::get('select', 'pkey'); - foreach($pkey as $key) - $where[] = "`" . $key . "`='" . $db->escape($row[$key]) . "'"; - } - else if (count(Session::get('select', 'ukey')) > 0) { - $ukey = Session::get('select', 'ukey'); - foreach($ukey as $key) - $where[] = $bq . $key . "$bq='" . $db->escape($row[$key]) . "'"; - } - else { - } - - $sql = "update $bq" . $table . "$bq set $bq$field$bq='" . $db->escape($blobData) . "' where " . implode(' AND ', $where); - return $db->query($sql); - } - -?> \ No newline at end of file diff --git a/modules/views/auth.php b/modules/views/auth.php deleted file mode 100644 index 8162dbe..0000000 --- a/modules/views/auth.php +++ /dev/null @@ -1,83 +0,0 @@ -
    -
    - -
    -
    - -
    - 1) || (ALLOW_CUSTOM_SERVERS && ALLOW_CUSTOM_SERVER_TYPES)) { - ?> -
    - -
    - - - - -
    - -
    -
    - -
    -
    - \ No newline at end of file diff --git a/modules/views/backup.php b/modules/views/backup.php deleted file mode 100644 index 58b6991..0000000 --- a/modules/views/backup.php +++ /dev/null @@ -1,134 +0,0 @@ - - - - -
    $div
    "; - - if ($db->query("show full processlist")) { - print ""; - print ""; - - while($row = $db->fetchRow()) - print ""; - - print "
    ".__('Process ID')."".__('Command')."".__('Time')."".__('Info')."
    $row[Id]$row[Command]$row[Time]$row[Info]
    "; - - print "
    - - - - - -
    -
    - .
    - . -
    -
    -
    - - - - - -
    - -
    - -
    - -
    -
    - -
    - - - - - - - - - - -
    - -
    - -
    - -
    - -
    -
    - -
    - - - - - - - - - -
    - - - - - -
    -
    - -
    - - - - - - - \ No newline at end of file diff --git a/modules/views/databases.php b/modules/views/databases.php deleted file mode 100644 index eac8076..0000000 --- a/modules/views/databases.php +++ /dev/null @@ -1,121 +0,0 @@ - - - - - - - - - \ No newline at end of file diff --git a/modules/views/dbbatch.php b/modules/views/dbbatch.php deleted file mode 100644 index 20d3555..0000000 --- a/modules/views/dbbatch.php +++ /dev/null @@ -1,131 +0,0 @@ - - - - - - - - - \ No newline at end of file diff --git a/modules/views/dbbatch_results.php b/modules/views/dbbatch_results.php deleted file mode 100644 index 4b75d22..0000000 --- a/modules/views/dbbatch_results.php +++ /dev/null @@ -1,122 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/modules/views/dbcreate.php b/modules/views/dbcreate.php deleted file mode 100644 index 1250136..0000000 --- a/modules/views/dbcreate.php +++ /dev/null @@ -1,22 +0,0 @@ - -
    -
    [ {{DB_NAME}} ]
    -
    - - diff --git a/modules/views/dblist.php b/modules/views/dblist.php deleted file mode 100644 index f9d3a00..0000000 --- a/modules/views/dblist.php +++ /dev/null @@ -1,6 +0,0 @@ - \ No newline at end of file diff --git a/modules/views/dbrepair.php b/modules/views/dbrepair.php deleted file mode 100644 index aaaa40a..0000000 --- a/modules/views/dbrepair.php +++ /dev/null @@ -1,123 +0,0 @@ - - - - - - - - - \ No newline at end of file diff --git a/modules/views/dbrepair_results.php b/modules/views/dbrepair_results.php deleted file mode 100644 index af712cc..0000000 --- a/modules/views/dbrepair_results.php +++ /dev/null @@ -1,34 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/modules/views/dbtree.php b/modules/views/dbtree.php deleted file mode 100644 index 63a25e2..0000000 --- a/modules/views/dbtree.php +++ /dev/null @@ -1,6 +0,0 @@ -'; - foreach($data as $dbname) - echo '
  • '.htmlspecialchars($dbname).''; - echo ''; -?> \ No newline at end of file diff --git a/modules/views/dialogs.php b/modules/views/dialogs.php deleted file mode 100644 index 14927d1..0000000 --- a/modules/views/dialogs.php +++ /dev/null @@ -1,27 +0,0 @@ -
    - -
    -
    - -
    - -
    -
    - -
    -
    - -
    - -
    - -
    \ No newline at end of file diff --git a/modules/views/editable.php b/modules/views/editable.php deleted file mode 100644 index b4cfa84..0000000 --- a/modules/views/editable.php +++ /dev/null @@ -1,75 +0,0 @@ - - - - -
    -
    -
    - -
    -
    - -
    -
    -
    - - - \ No newline at end of file diff --git a/modules/views/enginetype.php b/modules/views/enginetype.php deleted file mode 100644 index 57cf50f..0000000 --- a/modules/views/enginetype.php +++ /dev/null @@ -1,22 +0,0 @@ - - - - - \ No newline at end of file diff --git a/modules/views/error_page.php b/modules/views/error_page.php deleted file mode 100644 index 07186bc..0000000 --- a/modules/views/error_page.php +++ /dev/null @@ -1,13 +0,0 @@ - - -
    - - -
    -
    -
    -
    - \ No newline at end of file diff --git a/modules/views/export.php b/modules/views/export.php deleted file mode 100644 index 9be7a71..0000000 --- a/modules/views/export.php +++ /dev/null @@ -1,164 +0,0 @@ - - - - - - - - - \ No newline at end of file diff --git a/modules/views/exportres.php b/modules/views/exportres.php deleted file mode 100644 index 7a1d8dd..0000000 --- a/modules/views/exportres.php +++ /dev/null @@ -1,86 +0,0 @@ - - - - - - diff --git a/modules/views/exporttbl.php b/modules/views/exporttbl.php deleted file mode 100644 index 3a5d150..0000000 --- a/modules/views/exporttbl.php +++ /dev/null @@ -1,106 +0,0 @@ - - - - - - diff --git a/modules/views/help.php b/modules/views/help.php deleted file mode 100644 index 8db6916..0000000 --- a/modules/views/help.php +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/modules/views/help/about.php b/modules/views/help/about.php deleted file mode 100644 index bc6efeb..0000000 --- a/modules/views/help/about.php +++ /dev/null @@ -1,7 +0,0 @@ -
    About
    -
      -
    • MyWebSQL is developed and maintained by Samnan ur Rehman Akhoond
    • -
    • Please use the 'Report a Bug' link to submit your problems. Most of the bugs reported are fixed with new releases of the software
    • -
    • This program is freeware and comes with no warranties, however, every effort has been made to ensure complete safety of your data. In any case, the author will not be liable for any damage caused to your data by the use of this application.
    • -
    - diff --git a/modules/views/help/credits.php b/modules/views/help/credits.php deleted file mode 100644 index c3c2bfc..0000000 --- a/modules/views/help/credits.php +++ /dev/null @@ -1,16 +0,0 @@ -
    Credits
    -
    Following softwares/people were extremely helpful during the development of MyWebSQL.
    -
      -
    • jQuery
      Starting with version 1.0, the whole interface for MyWebSQL is designed using jQuery, one of the finest Javascript library in the world.
    • -
    • jQuery UI
      An extremely useful GUI and widget library for jQuery.
    • -
    • Plugins
      Many useful jQuery plugins are used for client side functionality in MyWebSQL. Please see individual references in the script files provided with the source code.
    • -
    • CodeMirror
      Finest javascript code editor on the web. Great support from the developers makes it ideal for use in MyWebSQL. Minor modifications were done to make it work for sql editing inside MyWebSQL.
    • -
    • phpMyAdmin
      Some part of mysql batch import code from the software is incorporated into Mywebsql.
    • -
    -
      -
    • Project website is hosted on server provided by Ovais Tariq
    • -
    • Google translation for the application language files is scripted by Zeeshan Khan
    • -
    • Mysql 4 database support was added to the software by Ally Shayan.
    • -
    • Most of the icons/graphics are based on famfam icons and xiao icons.
    • -
    - diff --git a/modules/views/help/keyboard.php b/modules/views/help/keyboard.php deleted file mode 100644 index 69f8baf..0000000 --- a/modules/views/help/keyboard.php +++ /dev/null @@ -1,44 +0,0 @@ -
    Keyboard shortcuts
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Ctrl + EnterExecute query
    Ctrl + Shift + EnterExecute all queries
    ALT + 1Switch focus to 1st SQL Editor
    ALT + 2Switch focus to 2nd SQL Editor
    ALT + 3Switch focus to 3rd SQL Editor
    SHIFT + TABEdit previous column during edit mode
    TABEdit next column during edit mode
    UP ARROWEdit previous row during edit mode
    DOWN ARROWEdit next row during edit mode
    -
    -
    Most of the the keys can be customized by editing the file "config/keys.php" in MyWebSQL installation folder.
    - \ No newline at end of file diff --git a/modules/views/help/misc.php b/modules/views/help/misc.php deleted file mode 100644 index 26bf0bf..0000000 --- a/modules/views/help/misc.php +++ /dev/null @@ -1,8 +0,0 @@ -
    Miscellaneous
    -
      -
    • Queries are modified slightly on server to return only first 100 records, which is sufficient enough for a daily basis developer work.
      (This can be changed by modifying configuration file)
    • -
    • To submit bug reports or feature requests, use the links provided in the Help menu inside the application.
    • -
    • If you believe any graphics/libraries used in this application violate license terms, Please report back the issue as soon as possible so it can be rectified.
    • -
    - - \ No newline at end of file diff --git a/modules/views/help/prefs.php b/modules/views/help/prefs.php deleted file mode 100644 index a53df64..0000000 --- a/modules/views/help/prefs.php +++ /dev/null @@ -1,8 +0,0 @@ -
    Preferences
    -
      -
    • Since MyWebSQL is a web based application, it stores its preferences in the form of cookies on your system.
    • -
    • If you cleanup your browser cookies, the preferences will be lost.
    • -
    • The default application preferences ensure maximum performance. You can, however change them anytime to suit your needs, using the menu inside the application.
    • -
    - - diff --git a/modules/views/help/queries.php b/modules/views/help/queries.php deleted file mode 100644 index e07bc17..0000000 --- a/modules/views/help/queries.php +++ /dev/null @@ -1,19 +0,0 @@ -
    Executing queries
    - -
      -
    • Pressing the 'query' button executes highlighted text (if any) or all of the text in the query editor - as a single query. -
    • -
    • Pressing the 'query all' button executes all queries that are highlighted (if any) or all of queries - in the editor one by one. Please remember that this is only useful for insert/update/delete queries. - If 'query all' is used and there are one or more select statements, no results are shown for them.
    • -
    - -
    Notes
    -
      -
    • If there is any text selection in the Sql Editor, it will be used - as the query instead of the whole text in Sql Editor.
    • -
    • You can also use shotcuts keys to execute queries. See the keyboard shortcut section for details.
    • -
    - - diff --git a/modules/views/help/results.php b/modules/views/help/results.php deleted file mode 100644 index 5c55734..0000000 --- a/modules/views/help/results.php +++ /dev/null @@ -1,24 +0,0 @@ -
    Working with results
    -
      -
    • Once results are displayed in the center pane after successful select queries, you can:
    • -
        -
      • Sort the results without resubmitting the query, by clicking on the result header columns.
      • -
      • Select one or more records to be deleted, by using the checkboxes at the beginning of each record.
      • -
      • Edit the results, by double clicking any result set field.
        - Press Enter to complete editing, or Escape to cancel and revert to the default value. -
      • -
      • You can also use the following keys during edit mode to navigate the result set.
        - TAB: Edit previous record field
        - SHIFT + TAB: Edit next record field
        - UP ARROW: Edit previous record
        - DOWN ARROW: Edit next record
        -
      • -
      -
    • Press 'Delete Record(s)' button to execute auto generated queries in batch mode to delete all selected records. -
    • -
    • Press 'Update Record(s)' button to generate and execute queries after you have completed editing. The result of the editing operation is shown in the messages pane after completion of the query execution. -

      Update button -
    • -
    - - diff --git a/modules/views/import.php b/modules/views/import.php deleted file mode 100644 index 7454d0b..0000000 --- a/modules/views/import.php +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/modules/views/importtbl.php b/modules/views/importtbl.php deleted file mode 100644 index 20a0aa9..0000000 --- a/modules/views/importtbl.php +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/modules/views/indexes.php b/modules/views/indexes.php deleted file mode 100644 index 06c01e8..0000000 --- a/modules/views/indexes.php +++ /dev/null @@ -1,84 +0,0 @@ - - - - - - -
    -
    -
    - -
    -
    - -
    -
    -
    - - - \ No newline at end of file diff --git a/modules/views/infodb.php b/modules/views/infodb.php deleted file mode 100644 index 6bb7ee7..0000000 --- a/modules/views/infodb.php +++ /dev/null @@ -1,8 +0,0 @@ -
    -
    - -
    - - diff --git a/modules/views/infoserver.php b/modules/views/infoserver.php deleted file mode 100644 index 8c61543..0000000 --- a/modules/views/infoserver.php +++ /dev/null @@ -1,20 +0,0 @@ -
    -
    -
    -
    {{SERVER_NAME}}
    -
    {{SERVER_VERSION}}
    -
    {{SERVER_COMMENT}}
    -
    -
    -
    -
    {{SERVER_CHARSET}}
    -
    {{CLIENT_CHARSET}}
    -
    {{DATABASE_CHARSET}}
    -
    {{RESULT_CHARSET}}
    -
    -
    - - diff --git a/modules/views/infoserverless.php b/modules/views/infoserverless.php deleted file mode 100644 index 5a40937..0000000 --- a/modules/views/infoserverless.php +++ /dev/null @@ -1,6 +0,0 @@ -
    -
    - - diff --git a/modules/views/invalid_request.php b/modules/views/invalid_request.php deleted file mode 100644 index e2b6099..0000000 --- a/modules/views/invalid_request.php +++ /dev/null @@ -1,22 +0,0 @@ - - - - -MyWebSQL - - - - -
    - - - -
    - .
    - . -
    -
    - - diff --git a/modules/views/logout.php b/modules/views/logout.php deleted file mode 100644 index 9cf94f6..0000000 --- a/modules/views/logout.php +++ /dev/null @@ -1,4 +0,0 @@ - diff --git a/modules/views/menubar.php b/modules/views/menubar.php deleted file mode 100644 index ab892ce..0000000 --- a/modules/views/menubar.php +++ /dev/null @@ -1,100 +0,0 @@ -
    - -
    \ No newline at end of file diff --git a/modules/views/menuobjects.php b/modules/views/menuobjects.php deleted file mode 100644 index ae85308..0000000 --- a/modules/views/menuobjects.php +++ /dev/null @@ -1,172 +0,0 @@ - \ No newline at end of file diff --git a/modules/views/objcreate.php b/modules/views/objcreate.php deleted file mode 100644 index 3b86ac6..0000000 --- a/modules/views/objcreate.php +++ /dev/null @@ -1,49 +0,0 @@ - - - - - - - - -{{EDITOR_LINK}} - - - - diff --git a/modules/views/objtree.php b/modules/views/objtree.php deleted file mode 100644 index 656b5c7..0000000 --- a/modules/views/objtree.php +++ /dev/null @@ -1,83 +0,0 @@ -'; - $tables = $data['tables']; - print '
  • '.__('Tables').''.count($tables).''; - if (count($tables) > 0) { - foreach($tables as $key=>$table) { - $id = 't_'.Html::id($table[0]); - $table_name = htmlspecialchars($table[0]); - print ''; - } - } - print "
  • \n"; - - if (isset($data['views'])) { - $tables = $data['views']; - print '
  • '.__('Views').''.count($tables).''; - if (count($tables) > 0) { - foreach($tables as $key=>$table) { - $id = 'v_'.Html::id($table); - $table = htmlspecialchars($table); - print ''; - } - } - print "
  • \n"; - } - - if (isset($data['procedures'])) { - $tables = $data['procedures']; - print '
  • '.__('Procedures').''.count($tables).''; - if (count($tables) > 0) { - foreach($tables as $key=>$table) { - $id = 'p_'.Html::id($table); - $table = htmlspecialchars($table); - print ''; - } - } - print "
  • \n"; - } - - if (isset($data['functions'])) { - $tables = $data['functions']; - print '
  • '.__('Functions').''.count($tables).''; - if (count($tables) > 0) { - foreach($tables as $key=>$table) { - $id = 'f_'.Html::id($table); - $table = htmlspecialchars($table); - print ''; - } - } - print "
  • \n"; - } - - if (isset($data['triggers'])) { - $tables = $data['triggers']; - print '
  • '.__('Triggers').''.count($tables).''; - if (count($tables) > 0) { - foreach($tables as $key=>$table) { - $id = 't_'.Html::id($table); - $table = htmlspecialchars($table); - print ''; - } - } - print "
  • \n"; - } - - if (isset($data['events'])) { - $tables = $data['events']; - print '
  • '.__('Events').''.count($tables).''; - if (count($tables) > 0) { - foreach($tables as $key=>$table) { - $id = 'e_'. Html::id($table); - $table = htmlspecialchars($table); - print ''; - } - } - print "
  • \n"; - } - print ''; - -?> \ No newline at end of file diff --git a/modules/views/options.php b/modules/views/options.php deleted file mode 100644 index 6dcc89b..0000000 --- a/modules/views/options.php +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/modules/views/options/editing.php b/modules/views/options/editing.php deleted file mode 100644 index 7c42a63..0000000 --- a/modules/views/options/editing.php +++ /dev/null @@ -1,18 +0,0 @@ -
    - - - - -
    - /> -
    - -
    -
    - diff --git a/modules/views/options/misc.php b/modules/views/options/misc.php deleted file mode 100644 index f4d410e..0000000 --- a/modules/views/options/misc.php +++ /dev/null @@ -1,15 +0,0 @@ -
    - - - -
    - -
    -
    - diff --git a/modules/views/options/results.php b/modules/views/options/results.php deleted file mode 100644 index 051b7de..0000000 --- a/modules/views/options/results.php +++ /dev/null @@ -1,19 +0,0 @@ -
    - - - - -
    - - -
    - -
    -
    - diff --git a/modules/views/options/ui.php b/modules/views/options/ui.php deleted file mode 100644 index 88240ef..0000000 --- a/modules/views/options/ui.php +++ /dev/null @@ -1,30 +0,0 @@ -
    - - - - - -
    - /> -
    - - - - -
    - /> -
    - /> -
    -
    - -
    -
    - \ No newline at end of file diff --git a/modules/views/pgsql/dbbatch.php b/modules/views/pgsql/dbbatch.php deleted file mode 100644 index b6d63b4..0000000 --- a/modules/views/pgsql/dbbatch.php +++ /dev/null @@ -1,123 +0,0 @@ - - - - - - - - - \ No newline at end of file diff --git a/modules/views/pgsql/dblist.php b/modules/views/pgsql/dblist.php deleted file mode 100644 index f9d3a00..0000000 --- a/modules/views/pgsql/dblist.php +++ /dev/null @@ -1,6 +0,0 @@ - \ No newline at end of file diff --git a/modules/views/pgsql/dbtree.php b/modules/views/pgsql/dbtree.php deleted file mode 100644 index 63a25e2..0000000 --- a/modules/views/pgsql/dbtree.php +++ /dev/null @@ -1,6 +0,0 @@ -'; - foreach($data as $dbname) - echo '
  • '.htmlspecialchars($dbname).''; - echo ''; -?> \ No newline at end of file diff --git a/modules/views/pgsql/export.php b/modules/views/pgsql/export.php deleted file mode 100644 index 963282d..0000000 --- a/modules/views/pgsql/export.php +++ /dev/null @@ -1,161 +0,0 @@ - - - - - - - - - \ No newline at end of file diff --git a/modules/views/pgsql/objtree.php b/modules/views/pgsql/objtree.php deleted file mode 100644 index 1ddcef7..0000000 --- a/modules/views/pgsql/objtree.php +++ /dev/null @@ -1,90 +0,0 @@ -'; - foreach($data['schemas'] as $schema) { - - $schema_id = 's_'.Html::id($schema); - print '
  • '.htmlspecialchars($schema).''; - - print '
      '; - $tables = isset($data['tables'][$schema]) ? $data['tables'][$schema] : array(); - print '
    • '.__('Tables').''; - if(count($tables) > 0) - print ''.count($tables).''; - foreach($tables as $key=>$table) { - $id = 't_' . $schema_id . '_' .Html::id($table); - $table = htmlspecialchars($table); - print ''; - } - print "
    • \n"; - - if (isset($data['views'])) { - $tables = isset($data['views'][$schema]) ? $data['views'][$schema] : array(); - print '
    • '.__('Views').''; - if(count($tables) > 0) - print ''.count($tables).''; - foreach($tables as $key=>$table) { - $id = 'v_'. $schema_id . '_' .Html::id($table); - $table = htmlspecialchars($table); - print ''; - } - print "
    • \n"; - } - - if (isset($data['procedures'])) { - $tables = isset($data['procedures'][$schema]) ? $data['procedures'][$schema] : array(); - print '
    • '.__('Procedures').''; - if(count($tables) > 0) - print ''.count($tables).''; - foreach($tables as $key=>$table) { - $id = 'p_'. $schema_id . '_' .Html::id($table); - $table = htmlspecialchars($table); - print ''; - } - print "
    • \n"; - } - - if (isset($data['functions'])) { - $tables = isset($data['functions'][$schema]) ? $data['functions'][$schema] : array(); - print '
    • '.__('Functions').''; - if(count($tables) > 0) - print ''.count($tables).''; - foreach($tables as $key=>$table) { - $id = 'f_'. $schema_id . '_' .Html::id($table); - $table = htmlspecialchars($table); - print ''; - } - print "
    • \n"; - } - - if (isset($data['triggers'])) { - $tables = isset($data['triggers'][$schema]) ? $data['triggers'][$schema] : array(); - print '
    • '.__('Triggers').''; - if(count($tables) > 0) - print ''.count($tables).''; - foreach($tables as $key=>$table) { - $id = 't_'. $schema_id . '_' .Html::id($table); - $table = htmlspecialchars($table); - print ''; - } - print "
    • \n"; - } - - if (isset($data['events'])) { - $tables = isset($data['events'][$schema]) ? $data['events'][$schema] : array(); - print '
    • '.__('Events').''; - if(count($tables) > 0) - print ''.count($tables).''; - foreach($tables as $key=>$table) { - $id = 'e_'. $schema_id . '_' .Html::id($table); - $table = htmlspecialchars($table); - print ''; - } - print "
    • \n"; - } - print '
    '; - - print '
  • '; - } - print ''; -?> \ No newline at end of file diff --git a/modules/views/pgsql/templates/datatypes.php b/modules/views/pgsql/templates/datatypes.php deleted file mode 100644 index e0bb0b1..0000000 --- a/modules/views/pgsql/templates/datatypes.php +++ /dev/null @@ -1,51 +0,0 @@ - array('type' => 'numeric'), - 'bigserial' => array('type' => 'numeric'), - 'bit' => array('type' => 'special'), - 'bytea' => array('type' => 'binary'), - 'boolean' => array('type' => 'special'), - 'character' => array('type' => 'char'), - 'character varying' => array('type' => 'char'), - 'date' => array('type' => 'date'), - 'datetime' => array('type' => 'date'), - 'decimal' => array('type' => 'numeric'), - 'double' => array('type' => 'numeric'), - 'enum' => array('type' => 'char'), - 'float' => array('type' => 'numeric'), - 'integer' => array('type' => 'numeric'), - 'interval' => array('type' => 'date'), - 'longblob'=> array('type' => 'binary'), - 'longtext'=> array('type' => 'text'), - 'mediumblob'=> array('type' => 'binary'), - 'mediumint' => array('type' => 'numeric'), - 'mediumtext'=> array('type' => 'text'), - 'numeric' => array('type' => 'numeric'), - 'real' => array('type' => 'numeric'), - 'serial' => array('type' => 'numeric'), - 'set'=> array('type' => 'char'), - 'smallint' => array('type' => 'numeric'), - 'text'=> array('type' => 'text'), - 'time' => array('type' => 'date'), - 'timestamp' => array('type' => 'date'), - 'tinyblob'=> array('type' => 'binary'), - 'tinyint' => array('type' => 'numeric'), - 'tinytext'=> array('type' => 'text'), - 'uuid' => array('type' => 'special'), - 'varbinary'=> array('type' => 'binary'), - 'varchar'=> array('type' => 'char'), - 'year' => array('type' => 'date'), - ); - -?> \ No newline at end of file diff --git a/modules/views/pgsql/templates/event.php b/modules/views/pgsql/templates/event.php deleted file mode 100644 index e69de29..0000000 diff --git a/modules/views/pgsql/templates/function.php b/modules/views/pgsql/templates/function.php deleted file mode 100644 index c583e0c..0000000 --- a/modules/views/pgsql/templates/function.php +++ /dev/null @@ -1,15 +0,0 @@ -CREATE [ OR REPLACE ] FUNCTION - name ( [ [ argmode ] [ argname ] argtype [ { DEFAULT | = } default_expr ] [, ...] ] ) - [ RETURNS rettype | RETURNS TABLE ( column_name column_type [, ...] ) ] -{ LANGUAGE lang_name - | WINDOW - | IMMUTABLE | STABLE | VOLATILE - | CALLED ON NULL INPUT | RETURNS NULL ON NULL INPUT | STRICT - | [ EXTERNAL ] SECURITY INVOKER | [ EXTERNAL ] SECURITY DEFINER - | COST execution_cost - | ROWS result_rows - | SET configuration_parameter { TO value | = value | FROM CURRENT } - | AS 'definition' - | AS 'obj_file', 'link_symbol' -} ... -[ WITH ( attribute [, ...] ) ] \ No newline at end of file diff --git a/modules/views/pgsql/templates/procedure.php b/modules/views/pgsql/templates/procedure.php deleted file mode 100644 index e69de29..0000000 diff --git a/modules/views/pgsql/templates/schema.php b/modules/views/pgsql/templates/schema.php deleted file mode 100644 index ddc3246..0000000 --- a/modules/views/pgsql/templates/schema.php +++ /dev/null @@ -1,3 +0,0 @@ -CREATE SCHEMA schema_name - [ AUTHORIZATION user_name ] - [ schema_element [ ... ] ] \ No newline at end of file diff --git a/modules/views/pgsql/templates/table.php b/modules/views/pgsql/templates/table.php deleted file mode 100644 index 9a34bc8..0000000 --- a/modules/views/pgsql/templates/table.php +++ /dev/null @@ -1,9 +0,0 @@ -CREATE TABLE schema.table_name ( - "field_1" INT(10) NOT NULL, - "field_2"" VARCHAR(20), - "field_3"" DATETIME, - "field_4"" TEXT, - "field_5"" BLOB, - PRIMARY KEY ("field_1") -) -[WITH OIDS|WITHOUT OIDS] \ No newline at end of file diff --git a/modules/views/pgsql/templates/trigger.php b/modules/views/pgsql/templates/trigger.php deleted file mode 100644 index f642a1d..0000000 --- a/modules/views/pgsql/templates/trigger.php +++ /dev/null @@ -1,8 +0,0 @@ -CREATE [ CONSTRAINT ] TRIGGER name { BEFORE | AFTER | INSTEAD OF } - { INSERT|UPDATE [ OF column_name [, ... ]|DELETE|TRUNCATE } - ON table -[ FROM referenced_table_name ] -{ NOT DEFERRABLE | [ DEFERRABLE ] { INITIALLY IMMEDIATE | INITIALLY DEFERRED } } -[ FOR [ EACH ] { ROW | STATEMENT } ] -[ WHEN ( condition ) ] -EXECUTE PROCEDURE function_name ( arguments ) diff --git a/modules/views/pgsql/templates/variables.php b/modules/views/pgsql/templates/variables.php deleted file mode 100644 index 7968a47..0000000 --- a/modules/views/pgsql/templates/variables.php +++ /dev/null @@ -1,31 +0,0 @@ -fetchRow()) - { - switch($row[0]) { - case "server_version": - $vars['SERVER_VERSION'] = $row[1]; - case "client_encoding": - $vars['CLIENT_CHARSET'] = $row[1]; break; - case "server_encoding": - $vars['SERVER_CHARSET'] = $row[1]; - $vars['DATABASE_CHARSET'] = $row[1]; - $vars['RESULT_CHARSET'] = $row[1]; break; - } - } - $vars['SERVER_NAME'] = 'PostgreSQL'; - $vars['SERVER_COMMENT'] = Session::get('db', 'version_comment'); - return $vars; - } -?> diff --git a/modules/views/pgsql/templates/view.php b/modules/views/pgsql/templates/view.php deleted file mode 100644 index a023d6b..0000000 --- a/modules/views/pgsql/templates/view.php +++ /dev/null @@ -1,3 +0,0 @@ -CREATE [ OR REPLACE ] [ TEMP | TEMPORARY ] VIEW name [ ( column_name [, ...] ) ] - AS - (SELECT * FROM ...) \ No newline at end of file diff --git a/modules/views/search.php b/modules/views/search.php deleted file mode 100644 index 2082db1..0000000 --- a/modules/views/search.php +++ /dev/null @@ -1,133 +0,0 @@ - - - - - - - - - \ No newline at end of file diff --git a/modules/views/search_results.php b/modules/views/search_results.php deleted file mode 100644 index c92c54e..0000000 --- a/modules/views/search_results.php +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/modules/views/session_expired.php b/modules/views/session_expired.php deleted file mode 100644 index 9c3be58..0000000 --- a/modules/views/session_expired.php +++ /dev/null @@ -1,23 +0,0 @@ - - - - -MyWebSQL - - - - -
    - - - -
    - .
    - . -
    -
    - - diff --git a/modules/views/showcreate.php b/modules/views/showcreate.php deleted file mode 100644 index b52c72d..0000000 --- a/modules/views/showcreate.php +++ /dev/null @@ -1,14 +0,0 @@ -
    -
    -
    - {{COMMAND}} -
    -
    - - diff --git a/modules/views/showinfo.php b/modules/views/showinfo.php deleted file mode 100644 index 2c8247e..0000000 --- a/modules/views/showinfo.php +++ /dev/null @@ -1,11 +0,0 @@ -
    -
    -
    - {{COMMAND}} -
    -
    - - diff --git a/modules/views/splash.php b/modules/views/splash.php deleted file mode 100644 index ba44a6f..0000000 --- a/modules/views/splash.php +++ /dev/null @@ -1,142 +0,0 @@ - - - - -MyWebSQL - - - - -
    - - -
    -
    -
    - {{APP_VERSION}} - - {{MESSAGE}} - {{FORM}} -
    -
    -
    -
    - -{{EXTRA_SCRIPT}} - diff --git a/modules/views/sqlite/templates/table.php b/modules/views/sqlite/templates/table.php deleted file mode 100644 index c781e72..0000000 --- a/modules/views/sqlite/templates/table.php +++ /dev/null @@ -1,5 +0,0 @@ -CREATE TABLE table_name ( - field_1 INT(10) NOT NULL, - field_2 VARCHAR(20), - field_4 TEXT -) diff --git a/modules/views/sqlite/templates/trigger.php b/modules/views/sqlite/templates/trigger.php deleted file mode 100644 index e298c8c..0000000 --- a/modules/views/sqlite/templates/trigger.php +++ /dev/null @@ -1,6 +0,0 @@ -CREATE - TRIGGER new_trig_1 BEFORE/AFTER INSERT/UPDATE/DELETE - ON - FOR EACH ROW BEGIN - - END \ No newline at end of file diff --git a/modules/views/sqlite/templates/view.php b/modules/views/sqlite/templates/view.php deleted file mode 100644 index 4946b1e..0000000 --- a/modules/views/sqlite/templates/view.php +++ /dev/null @@ -1,4 +0,0 @@ -CREATE - VIEW new_view_1 - AS - SELECT * FROM
    \ No newline at end of file diff --git a/modules/views/templates/datatypes.php b/modules/views/templates/datatypes.php deleted file mode 100644 index c2fe474..0000000 --- a/modules/views/templates/datatypes.php +++ /dev/null @@ -1,47 +0,0 @@ - array('type' => 'numeric'), - 'binary' => array('type' => 'binary'), - 'bit' => array('type' => 'special'), - 'blob' => array('type' => 'binary'), - 'bool' => array('type' => 'special'), - 'boolean' => array('type' => 'special'), - 'char' => array('type' => 'char'), - 'date' => array('type' => 'date'), - 'datetime' => array('type' => 'date'), - 'decimal' => array('type' => 'numeric'), - 'double' => array('type' => 'numeric'), - 'enum' => array('type' => 'char'), - 'float' => array('type' => 'numeric'), - 'int' => array('type' => 'numeric'), - 'longblob'=> array('type' => 'binary'), - 'longtext'=> array('type' => 'text'), - 'mediumblob'=> array('type' => 'binary'), - 'mediumint' => array('type' => 'numeric'), - 'mediumtext'=> array('type' => 'text'), - 'numeric' => array('type' => 'numeric'), - 'real' => array('type' => 'numeric'), - 'set'=> array('type' => 'char'), - 'smallint' => array('type' => 'numeric'), - 'text'=> array('type' => 'text'), - 'time' => array('type' => 'date'), - 'timestamp' => array('type' => 'date'), - 'tinyblob'=> array('type' => 'binary'), - 'tinyint' => array('type' => 'numeric'), - 'tinytext'=> array('type' => 'text'), - 'varbinary'=> array('type' => 'binary'), - 'varchar'=> array('type' => 'char'), - 'year' => array('type' => 'date') - ); - -?> \ No newline at end of file diff --git a/modules/views/templates/event.php b/modules/views/templates/event.php deleted file mode 100644 index 72c4962..0000000 --- a/modules/views/templates/event.php +++ /dev/null @@ -1,17 +0,0 @@ -CREATE - [DEFINER = { user | CURRENT_USER }] - EVENT - [IF NOT EXISTS] - event_name - ON SCHEDULE - [ AT timestamp [+ INTERVAL interval] | EVERY interval ... ] - [ STARTS timestamp [+ INTERVAL interval] ... ] - [ ENDS timestamp [+ INTERVAL interval] ... ] - [ ON COMPLETION [NOT] PRESERVE ] - [ ENABLE | DISABLE | DISABLE ON SLAVE ] - [ COMMENT 'comment' ] - DO - BEGIN - - END - diff --git a/modules/views/templates/function.php b/modules/views/templates/function.php deleted file mode 100644 index a3f7199..0000000 --- a/modules/views/templates/function.php +++ /dev/null @@ -1,12 +0,0 @@ -CREATE - /*[DEFINER = { user | CURRENT_USER }]*/ - FUNCTION `new_func_1` () - RETURNS type - /*LANGUAGE SQL - | [NOT] DETERMINISTIC - | { CONTAINS SQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA } - | SQL SECURITY { DEFINER | INVOKER } - | COMMENT 'string'*/ - BEGIN - - END \ No newline at end of file diff --git a/modules/views/templates/procedure.php b/modules/views/templates/procedure.php deleted file mode 100644 index 913a885..0000000 --- a/modules/views/templates/procedure.php +++ /dev/null @@ -1,11 +0,0 @@ -CREATE - /*[DEFINER = { user | CURRENT_USER }]*/ - PROCEDURE `new_proc_1` () - /*LANGUAGE SQL - | [NOT] DETERMINISTIC - | { CONTAINS SQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA } - | SQL SECURITY { DEFINER | INVOKER } - | COMMENT 'string'*/ - BEGIN - - END \ No newline at end of file diff --git a/modules/views/templates/table.php b/modules/views/templates/table.php deleted file mode 100644 index 7f12944..0000000 --- a/modules/views/templates/table.php +++ /dev/null @@ -1,10 +0,0 @@ -CREATE TABLE table_name ( - field_1 INT(10) UNSIGNED AUTO_INCREMENT NOT NULL, - field_2 VARCHAR(20), - field_3 DATETIME, - field_4 TIMESTAMP, - field_5 TEXT, - field_6 BLOB, - PRIMARY KEY (field_1) -) -[TYPE= {MYISAM | INNODB}] \ No newline at end of file diff --git a/modules/views/templates/trigger.php b/modules/views/templates/trigger.php deleted file mode 100644 index 2ddb8c0..0000000 --- a/modules/views/templates/trigger.php +++ /dev/null @@ -1,7 +0,0 @@ -CREATE - /*[DEFINER = { user | CURRENT_USER }]*/ - TRIGGER `new_trig_1` BEFORE/AFTER INSERT/UPDATE/DELETE - ON `
    ` - FOR EACH ROW BEGIN - - END \ No newline at end of file diff --git a/modules/views/templates/variables.php b/modules/views/templates/variables.php deleted file mode 100644 index 814c67c..0000000 --- a/modules/views/templates/variables.php +++ /dev/null @@ -1,28 +0,0 @@ -fetchRow()) - { - switch($row[0]) { - case "version": $vars['SERVER_VERSION'] = $row[1]; break; - case "version_comment": $vars['SERVER_COMMENT'] = $row[1]; break; - case "character_set_server": $vars['SERVER_CHARSET'] = $row[1]; break; - case "character_set_client": $vars['CLIENT_CHARSET'] = $row[1]; break; - case "character_set_database": $vars['DATABASE_CHARSET'] = $row[1]; break; - case "character_set_results": $vars['RESULT_CHARSET'] = $row[1]; break; - } - } - $vars['SERVER_NAME'] = 'MySQL'; - return $vars; - } -?> diff --git a/modules/views/templates/view.php b/modules/views/templates/view.php deleted file mode 100644 index 82f77a4..0000000 --- a/modules/views/templates/view.php +++ /dev/null @@ -1,7 +0,0 @@ -CREATE - /*[ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}] - [DEFINER = { user | CURRENT_USER }] - [SQL SECURITY { DEFINER | INVOKER }]*/ - VIEW `new_view_1` - AS - (SELECT * FROM ...) \ No newline at end of file diff --git a/modules/views/usermanager.php b/modules/views/usermanager.php deleted file mode 100644 index aa09a77..0000000 --- a/modules/views/usermanager.php +++ /dev/null @@ -1,93 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/modules/views/viewblob.php b/modules/views/viewblob.php deleted file mode 100644 index 48a7936..0000000 --- a/modules/views/viewblob.php +++ /dev/null @@ -1,34 +0,0 @@ - - -
    ","
    "]||!O.indexOf("",""]||(!O.indexOf("",""]||!O.indexOf("",""]||!o.support.htmlSerialize&&[1,"div
    ","
    "]||[0,"",""];L.innerHTML=Q[1]+S+Q[2];while(Q[0]--){L=L.lastChild}if(!o.support.tbody){var R=/"&&!R?L.childNodes:[];for(var M=N.length-1;M>=0;--M){if(o.nodeName(N[M],"tbody")&&!N[M].childNodes.length){N[M].parentNode.removeChild(N[M])}}}if(!o.support.leadingWhitespace&&/^\s/.test(S)){L.insertBefore(K.createTextNode(S.match(/^\s*/)[0]),L.firstChild)}S=o.makeArray(L.childNodes)}if(S.nodeType){G.push(S)}else{G=o.merge(G,S)}});if(I){for(var J=0;G[J];J++){if(o.nodeName(G[J],"script")&&(!G[J].type||G[J].type.toLowerCase()==="text/javascript")){E.push(G[J].parentNode?G[J].parentNode.removeChild(G[J]):G[J])}else{if(G[J].nodeType===1){G.splice.apply(G,[J+1,0].concat(o.makeArray(G[J].getElementsByTagName("script"))))}I.appendChild(G[J])}}return E}return G},attr:function(J,G,K){if(!J||J.nodeType==3||J.nodeType==8){return g}var H=!o.isXMLDoc(J),L=K!==g;G=H&&o.props[G]||G;if(J.tagName){var F=/href|src|style/.test(G);if(G=="selected"&&J.parentNode){J.parentNode.selectedIndex}if(G in J&&H&&!F){if(L){if(G=="type"&&o.nodeName(J,"input")&&J.parentNode){throw"type property can't be changed"}J[G]=K}if(o.nodeName(J,"form")&&J.getAttributeNode(G)){return J.getAttributeNode(G).nodeValue}if(G=="tabIndex"){var I=J.getAttributeNode("tabIndex");return I&&I.specified?I.value:J.nodeName.match(/(button|input|object|select|textarea)/i)?0:J.nodeName.match(/^(a|area)$/i)&&J.href?0:g}return J[G]}if(!o.support.style&&H&&G=="style"){return o.attr(J.style,"cssText",K)}if(L){J.setAttribute(G,""+K)}var E=!o.support.hrefNormalized&&H&&F?J.getAttribute(G,2):J.getAttribute(G);return E===null?g:E}if(!o.support.opacity&&G=="opacity"){if(L){J.zoom=1;J.filter=(J.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(K)+""=="NaN"?"":"alpha(opacity="+K*100+")")}return J.filter&&J.filter.indexOf("opacity=")>=0?(parseFloat(J.filter.match(/opacity=([^)]*)/)[1])/100)+"":""}G=G.replace(/-([a-z])/ig,function(M,N){return N.toUpperCase()});if(L){J[G]=K}return J[G]},trim:function(E){return(E||"").replace(/^\s+|\s+$/g,"")},makeArray:function(G){var E=[];if(G!=null){var F=G.length;if(F==null||typeof G==="string"||o.isFunction(G)||G.setInterval){E[0]=G}else{while(F){E[--F]=G[F]}}}return E},inArray:function(G,H){for(var E=0,F=H.length;E0?this.clone(true):this).get();o.fn[F].apply(o(L[K]),I);J=J.concat(I)}return this.pushStack(J,E,G)}});o.each({removeAttr:function(E){o.attr(this,E,"");if(this.nodeType==1){this.removeAttribute(E)}},addClass:function(E){o.className.add(this,E)},removeClass:function(E){o.className.remove(this,E)},toggleClass:function(F,E){if(typeof E!=="boolean"){E=!o.className.has(this,F)}o.className[E?"add":"remove"](this,F)},remove:function(E){if(!E||o.filter(E,[this]).length){o("*",this).add([this]).each(function(){o.event.remove(this);o.removeData(this)});if(this.parentNode){this.parentNode.removeChild(this)}}},empty:function(){o(this).children().remove();while(this.firstChild){this.removeChild(this.firstChild)}}},function(E,F){o.fn[E]=function(){return this.each(F,arguments)}});function j(E,F){return E[0]&&parseInt(o.curCSS(E[0],F,true),10)||0}var h="jQuery"+e(),v=0,A={};o.extend({cache:{},data:function(F,E,G){F=F==l?A:F;var H=F[h];if(!H){H=F[h]=++v}if(E&&!o.cache[H]){o.cache[H]={}}if(G!==g){o.cache[H][E]=G}return E?o.cache[H][E]:H},removeData:function(F,E){F=F==l?A:F;var H=F[h];if(E){if(o.cache[H]){delete o.cache[H][E];E="";for(E in o.cache[H]){break}if(!E){o.removeData(F)}}}else{try{delete F[h]}catch(G){if(F.removeAttribute){F.removeAttribute(h)}}delete o.cache[H]}},queue:function(F,E,H){if(F){E=(E||"fx")+"queue";var G=o.data(F,E);if(!G||o.isArray(H)){G=o.data(F,E,o.makeArray(H))}else{if(H){G.push(H)}}}return G},dequeue:function(H,G){var E=o.queue(H,G),F=E.shift();if(!G||G==="fx"){F=E[0]}if(F!==g){F.call(H)}}});o.fn.extend({data:function(E,G){var H=E.split(".");H[1]=H[1]?"."+H[1]:"";if(G===g){var F=this.triggerHandler("getData"+H[1]+"!",[H[0]]);if(F===g&&this.length){F=o.data(this[0],E)}return F===g&&H[1]?this.data(H[0]):F}else{return this.trigger("setData"+H[1]+"!",[H[0],G]).each(function(){o.data(this,E,G)})}},removeData:function(E){return this.each(function(){o.removeData(this,E)})},queue:function(E,F){if(typeof E!=="string"){F=E;E="fx"}if(F===g){return o.queue(this[0],E)}return this.each(function(){var G=o.queue(this,E,F);if(E=="fx"&&G.length==1){G[0].call(this)}})},dequeue:function(E){return this.each(function(){o.dequeue(this,E)})}}); +/* + * Sizzle CSS Selector Engine - v0.9.3 + * Copyright 2009, The Dojo Foundation + * Released under the MIT, BSD, and GPL Licenses. + * More information: http://sizzlejs.com/ + */ +(function(){var R=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,L=0,H=Object.prototype.toString;var F=function(Y,U,ab,ac){ab=ab||[];U=U||document;if(U.nodeType!==1&&U.nodeType!==9){return[]}if(!Y||typeof Y!=="string"){return ab}var Z=[],W,af,ai,T,ad,V,X=true;R.lastIndex=0;while((W=R.exec(Y))!==null){Z.push(W[1]);if(W[2]){V=RegExp.rightContext;break}}if(Z.length>1&&M.exec(Y)){if(Z.length===2&&I.relative[Z[0]]){af=J(Z[0]+Z[1],U)}else{af=I.relative[Z[0]]?[U]:F(Z.shift(),U);while(Z.length){Y=Z.shift();if(I.relative[Y]){Y+=Z.shift()}af=J(Y,af)}}}else{var ae=ac?{expr:Z.pop(),set:E(ac)}:F.find(Z.pop(),Z.length===1&&U.parentNode?U.parentNode:U,Q(U));af=F.filter(ae.expr,ae.set);if(Z.length>0){ai=E(af)}else{X=false}while(Z.length){var ah=Z.pop(),ag=ah;if(!I.relative[ah]){ah=""}else{ag=Z.pop()}if(ag==null){ag=U}I.relative[ah](ai,ag,Q(U))}}if(!ai){ai=af}if(!ai){throw"Syntax error, unrecognized expression: "+(ah||Y)}if(H.call(ai)==="[object Array]"){if(!X){ab.push.apply(ab,ai)}else{if(U.nodeType===1){for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&(ai[aa]===true||ai[aa].nodeType===1&&K(U,ai[aa]))){ab.push(af[aa])}}}else{for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&ai[aa].nodeType===1){ab.push(af[aa])}}}}}else{E(ai,ab)}if(V){F(V,U,ab,ac);if(G){hasDuplicate=false;ab.sort(G);if(hasDuplicate){for(var aa=1;aa":function(Z,U,aa){var X=typeof U==="string";if(X&&!/\W/.test(U)){U=aa?U:U.toUpperCase();for(var V=0,T=Z.length;V=0)){if(!V){T.push(Y)}}else{if(V){U[X]=false}}}}return false},ID:function(T){return T[1].replace(/\\/g,"")},TAG:function(U,T){for(var V=0;T[V]===false;V++){}return T[V]&&Q(T[V])?U[1]:U[1].toUpperCase()},CHILD:function(T){if(T[1]=="nth"){var U=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(T[2]=="even"&&"2n"||T[2]=="odd"&&"2n+1"||!/\D/.test(T[2])&&"0n+"+T[2]||T[2]);T[2]=(U[1]+(U[2]||1))-0;T[3]=U[3]-0}T[0]=L++;return T},ATTR:function(X,U,V,T,Y,Z){var W=X[1].replace(/\\/g,"");if(!Z&&I.attrMap[W]){X[1]=I.attrMap[W]}if(X[2]==="~="){X[4]=" "+X[4]+" "}return X},PSEUDO:function(X,U,V,T,Y){if(X[1]==="not"){if(X[3].match(R).length>1||/^\w/.test(X[3])){X[3]=F(X[3],null,null,U)}else{var W=F.filter(X[3],U,V,true^Y);if(!V){T.push.apply(T,W)}return false}}else{if(I.match.POS.test(X[0])||I.match.CHILD.test(X[0])){return true}}return X},POS:function(T){T.unshift(true);return T}},filters:{enabled:function(T){return T.disabled===false&&T.type!=="hidden"},disabled:function(T){return T.disabled===true},checked:function(T){return T.checked===true},selected:function(T){T.parentNode.selectedIndex;return T.selected===true},parent:function(T){return !!T.firstChild},empty:function(T){return !T.firstChild},has:function(V,U,T){return !!F(T[3],V).length},header:function(T){return/h\d/i.test(T.nodeName)},text:function(T){return"text"===T.type},radio:function(T){return"radio"===T.type},checkbox:function(T){return"checkbox"===T.type},file:function(T){return"file"===T.type},password:function(T){return"password"===T.type},submit:function(T){return"submit"===T.type},image:function(T){return"image"===T.type},reset:function(T){return"reset"===T.type},button:function(T){return"button"===T.type||T.nodeName.toUpperCase()==="BUTTON"},input:function(T){return/input|select|textarea|button/i.test(T.nodeName)}},setFilters:{first:function(U,T){return T===0},last:function(V,U,T,W){return U===W.length-1},even:function(U,T){return T%2===0},odd:function(U,T){return T%2===1},lt:function(V,U,T){return UT[3]-0},nth:function(V,U,T){return T[3]-0==U},eq:function(V,U,T){return T[3]-0==U}},filter:{PSEUDO:function(Z,V,W,aa){var U=V[1],X=I.filters[U];if(X){return X(Z,W,V,aa)}else{if(U==="contains"){return(Z.textContent||Z.innerText||"").indexOf(V[3])>=0}else{if(U==="not"){var Y=V[3];for(var W=0,T=Y.length;W=0)}}},ID:function(U,T){return U.nodeType===1&&U.getAttribute("id")===T},TAG:function(U,T){return(T==="*"&&U.nodeType===1)||U.nodeName===T},CLASS:function(U,T){return(" "+(U.className||U.getAttribute("class"))+" ").indexOf(T)>-1},ATTR:function(Y,W){var V=W[1],T=I.attrHandle[V]?I.attrHandle[V](Y):Y[V]!=null?Y[V]:Y.getAttribute(V),Z=T+"",X=W[2],U=W[4];return T==null?X==="!=":X==="="?Z===U:X==="*="?Z.indexOf(U)>=0:X==="~="?(" "+Z+" ").indexOf(U)>=0:!U?Z&&T!==false:X==="!="?Z!=U:X==="^="?Z.indexOf(U)===0:X==="$="?Z.substr(Z.length-U.length)===U:X==="|="?Z===U||Z.substr(0,U.length+1)===U+"-":false},POS:function(X,U,V,Y){var T=U[2],W=I.setFilters[T];if(W){return W(X,V,U,Y)}}}};var M=I.match.POS;for(var O in I.match){I.match[O]=RegExp(I.match[O].source+/(?![^\[]*\])(?![^\(]*\))/.source)}var E=function(U,T){U=Array.prototype.slice.call(U);if(T){T.push.apply(T,U);return T}return U};try{Array.prototype.slice.call(document.documentElement.childNodes)}catch(N){E=function(X,W){var U=W||[];if(H.call(X)==="[object Array]"){Array.prototype.push.apply(U,X)}else{if(typeof X.length==="number"){for(var V=0,T=X.length;V";var T=document.documentElement;T.insertBefore(U,T.firstChild);if(!!document.getElementById(V)){I.find.ID=function(X,Y,Z){if(typeof Y.getElementById!=="undefined"&&!Z){var W=Y.getElementById(X[1]);return W?W.id===X[1]||typeof W.getAttributeNode!=="undefined"&&W.getAttributeNode("id").nodeValue===X[1]?[W]:g:[]}};I.filter.ID=function(Y,W){var X=typeof Y.getAttributeNode!=="undefined"&&Y.getAttributeNode("id");return Y.nodeType===1&&X&&X.nodeValue===W}}T.removeChild(U)})();(function(){var T=document.createElement("div");T.appendChild(document.createComment(""));if(T.getElementsByTagName("*").length>0){I.find.TAG=function(U,Y){var X=Y.getElementsByTagName(U[1]);if(U[1]==="*"){var W=[];for(var V=0;X[V];V++){if(X[V].nodeType===1){W.push(X[V])}}X=W}return X}}T.innerHTML="";if(T.firstChild&&typeof T.firstChild.getAttribute!=="undefined"&&T.firstChild.getAttribute("href")!=="#"){I.attrHandle.href=function(U){return U.getAttribute("href",2)}}})();if(document.querySelectorAll){(function(){var T=F,U=document.createElement("div");U.innerHTML="

    ";if(U.querySelectorAll&&U.querySelectorAll(".TEST").length===0){return}F=function(Y,X,V,W){X=X||document;if(!W&&X.nodeType===9&&!Q(X)){try{return E(X.querySelectorAll(Y),V)}catch(Z){}}return T(Y,X,V,W)};F.find=T.find;F.filter=T.filter;F.selectors=T.selectors;F.matches=T.matches})()}if(document.getElementsByClassName&&document.documentElement.getElementsByClassName){(function(){var T=document.createElement("div");T.innerHTML="
    ";if(T.getElementsByClassName("e").length===0){return}T.lastChild.className="e";if(T.getElementsByClassName("e").length===1){return}I.order.splice(1,0,"CLASS");I.find.CLASS=function(U,V,W){if(typeof V.getElementsByClassName!=="undefined"&&!W){return V.getElementsByClassName(U[1])}}})()}function P(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W0){X=T;break}}}T=T[U]}ad[W]=X}}}var K=document.compareDocumentPosition?function(U,T){return U.compareDocumentPosition(T)&16}:function(U,T){return U!==T&&(U.contains?U.contains(T):true)};var Q=function(T){return T.nodeType===9&&T.documentElement.nodeName!=="HTML"||!!T.ownerDocument&&Q(T.ownerDocument)};var J=function(T,aa){var W=[],X="",Y,V=aa.nodeType?[aa]:aa;while((Y=I.match.PSEUDO.exec(T))){X+=Y[0];T=T.replace(I.match.PSEUDO,"")}T=I.relative[T]?T+"*":T;for(var Z=0,U=V.length;Z0||T.offsetHeight>0};F.selectors.filters.animated=function(T){return o.grep(o.timers,function(U){return T===U.elem}).length};o.multiFilter=function(V,T,U){if(U){V=":not("+V+")"}return F.matches(V,T)};o.dir=function(V,U){var T=[],W=V[U];while(W&&W!=document){if(W.nodeType==1){T.push(W)}W=W[U]}return T};o.nth=function(X,T,V,W){T=T||1;var U=0;for(;X;X=X[V]){if(X.nodeType==1&&++U==T){break}}return X};o.sibling=function(V,U){var T=[];for(;V;V=V.nextSibling){if(V.nodeType==1&&V!=U){T.push(V)}}return T};return;l.Sizzle=F})();o.event={add:function(I,F,H,K){if(I.nodeType==3||I.nodeType==8){return}if(I.setInterval&&I!=l){I=l}if(!H.guid){H.guid=this.guid++}if(K!==g){var G=H;H=this.proxy(G);H.data=K}var E=o.data(I,"events")||o.data(I,"events",{}),J=o.data(I,"handle")||o.data(I,"handle",function(){return typeof o!=="undefined"&&!o.event.triggered?o.event.handle.apply(arguments.callee.elem,arguments):g});J.elem=I;o.each(F.split(/\s+/),function(M,N){var O=N.split(".");N=O.shift();H.type=O.slice().sort().join(".");var L=E[N];if(o.event.specialAll[N]){o.event.specialAll[N].setup.call(I,K,O)}if(!L){L=E[N]={};if(!o.event.special[N]||o.event.special[N].setup.call(I,K,O)===false){if(I.addEventListener){I.addEventListener(N,J,false)}else{if(I.attachEvent){I.attachEvent("on"+N,J)}}}}L[H.guid]=H;o.event.global[N]=true});I=null},guid:1,global:{},remove:function(K,H,J){if(K.nodeType==3||K.nodeType==8){return}var G=o.data(K,"events"),F,E;if(G){if(H===g||(typeof H==="string"&&H.charAt(0)==".")){for(var I in G){this.remove(K,I+(H||""))}}else{if(H.type){J=H.handler;H=H.type}o.each(H.split(/\s+/),function(M,O){var Q=O.split(".");O=Q.shift();var N=RegExp("(^|\\.)"+Q.slice().sort().join(".*\\.")+"(\\.|$)");if(G[O]){if(J){delete G[O][J.guid]}else{for(var P in G[O]){if(N.test(G[O][P].type)){delete G[O][P]}}}if(o.event.specialAll[O]){o.event.specialAll[O].teardown.call(K,Q)}for(F in G[O]){break}if(!F){if(!o.event.special[O]||o.event.special[O].teardown.call(K,Q)===false){if(K.removeEventListener){K.removeEventListener(O,o.data(K,"handle"),false)}else{if(K.detachEvent){K.detachEvent("on"+O,o.data(K,"handle"))}}}F=null;delete G[O]}}})}for(F in G){break}if(!F){var L=o.data(K,"handle");if(L){L.elem=null}o.removeData(K,"events");o.removeData(K,"handle")}}},trigger:function(I,K,H,E){var G=I.type||I;if(!E){I=typeof I==="object"?I[h]?I:o.extend(o.Event(G),I):o.Event(G);if(G.indexOf("!")>=0){I.type=G=G.slice(0,-1);I.exclusive=true}if(!H){I.stopPropagation();if(this.global[G]){o.each(o.cache,function(){if(this.events&&this.events[G]){o.event.trigger(I,K,this.handle.elem)}})}}if(!H||H.nodeType==3||H.nodeType==8){return g}I.result=g;I.target=H;K=o.makeArray(K);K.unshift(I)}I.currentTarget=H;var J=o.data(H,"handle");if(J){J.apply(H,K)}if((!H[G]||(o.nodeName(H,"a")&&G=="click"))&&H["on"+G]&&H["on"+G].apply(H,K)===false){I.result=false}if(!E&&H[G]&&!I.isDefaultPrevented()&&!(o.nodeName(H,"a")&&G=="click")){this.triggered=true;try{H[G]()}catch(L){}}this.triggered=false;if(!I.isPropagationStopped()){var F=H.parentNode||H.ownerDocument;if(F){o.event.trigger(I,K,F,true)}}},handle:function(K){var J,E;K=arguments[0]=o.event.fix(K||l.event);K.currentTarget=this;var L=K.type.split(".");K.type=L.shift();J=!L.length&&!K.exclusive;var I=RegExp("(^|\\.)"+L.slice().sort().join(".*\\.")+"(\\.|$)");E=(o.data(this,"events")||{})[K.type];for(var G in E){var H=E[G];if(J||I.test(H.type)){K.handler=H;K.data=H.data;var F=H.apply(this,arguments);if(F!==g){K.result=F;if(F===false){K.preventDefault();K.stopPropagation()}}if(K.isImmediatePropagationStopped()){break}}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(H){if(H[h]){return H}var F=H;H=o.Event(F);for(var G=this.props.length,J;G;){J=this.props[--G];H[J]=F[J]}if(!H.target){H.target=H.srcElement||document}if(H.target.nodeType==3){H.target=H.target.parentNode}if(!H.relatedTarget&&H.fromElement){H.relatedTarget=H.fromElement==H.target?H.toElement:H.fromElement}if(H.pageX==null&&H.clientX!=null){var I=document.documentElement,E=document.body;H.pageX=H.clientX+(I&&I.scrollLeft||E&&E.scrollLeft||0)-(I.clientLeft||0);H.pageY=H.clientY+(I&&I.scrollTop||E&&E.scrollTop||0)-(I.clientTop||0)}if(!H.which&&((H.charCode||H.charCode===0)?H.charCode:H.keyCode)){H.which=H.charCode||H.keyCode}if(!H.metaKey&&H.ctrlKey){H.metaKey=H.ctrlKey}if(!H.which&&H.button){H.which=(H.button&1?1:(H.button&2?3:(H.button&4?2:0)))}return H},proxy:function(F,E){E=E||function(){return F.apply(this,arguments)};E.guid=F.guid=F.guid||E.guid||this.guid++;return E},special:{ready:{setup:B,teardown:function(){}}},specialAll:{live:{setup:function(E,F){o.event.add(this,F[0],c)},teardown:function(G){if(G.length){var E=0,F=RegExp("(^|\\.)"+G[0]+"(\\.|$)");o.each((o.data(this,"events").live||{}),function(){if(F.test(this.type)){E++}});if(E<1){o.event.remove(this,G[0],c)}}}}}};o.Event=function(E){if(!this.preventDefault){return new o.Event(E)}if(E&&E.type){this.originalEvent=E;this.type=E.type}else{this.type=E}this.timeStamp=e();this[h]=true};function k(){return false}function u(){return true}o.Event.prototype={preventDefault:function(){this.isDefaultPrevented=u;var E=this.originalEvent;if(!E){return}if(E.preventDefault){E.preventDefault()}E.returnValue=false},stopPropagation:function(){this.isPropagationStopped=u;var E=this.originalEvent;if(!E){return}if(E.stopPropagation){E.stopPropagation()}E.cancelBubble=true},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=u;this.stopPropagation()},isDefaultPrevented:k,isPropagationStopped:k,isImmediatePropagationStopped:k};var a=function(F){var E=F.relatedTarget;while(E&&E!=this){try{E=E.parentNode}catch(G){E=this}}if(E!=this){F.type=F.data;o.event.handle.apply(this,arguments)}};o.each({mouseover:"mouseenter",mouseout:"mouseleave"},function(F,E){o.event.special[E]={setup:function(){o.event.add(this,F,a,E)},teardown:function(){o.event.remove(this,F,a)}}});o.fn.extend({bind:function(F,G,E){return F=="unload"?this.one(F,G,E):this.each(function(){o.event.add(this,F,E||G,E&&G)})},one:function(G,H,F){var E=o.event.proxy(F||H,function(I){o(this).unbind(I,E);return(F||H).apply(this,arguments)});return this.each(function(){o.event.add(this,G,E,F&&H)})},unbind:function(F,E){return this.each(function(){o.event.remove(this,F,E)})},trigger:function(E,F){return this.each(function(){o.event.trigger(E,F,this)})},triggerHandler:function(E,G){if(this[0]){var F=o.Event(E);F.preventDefault();F.stopPropagation();o.event.trigger(F,G,this[0]);return F.result}},toggle:function(G){var E=arguments,F=1;while(F=0){var E=G.slice(I,G.length);G=G.slice(0,I)}var H="GET";if(J){if(o.isFunction(J)){K=J;J=null}else{if(typeof J==="object"){J=o.param(J);H="POST"}}}var F=this;o.ajax({url:G,type:H,dataType:"html",data:J,complete:function(M,L){if(L=="success"||L=="notmodified"){F.html(E?o("
    ").append(M.responseText.replace(//g,"")).find(E):M.responseText)}if(K){F.each(K,[M.responseText,L,M])}}});return this},serialize:function(){return o.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?o.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password|search/i.test(this.type))}).map(function(E,F){var G=o(this).val();return G==null?null:o.isArray(G)?o.map(G,function(I,H){return{name:F.name,value:I}}):{name:F.name,value:G}}).get()}});o.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(E,F){o.fn[F]=function(G){return this.bind(F,G)}});var r=e();o.extend({get:function(E,G,H,F){if(o.isFunction(G)){H=G;G=null}return o.ajax({type:"GET",url:E,data:G,success:H,dataType:F})},getScript:function(E,F){return o.get(E,null,F,"script")},getJSON:function(E,F,G){return o.get(E,F,G,"json")},post:function(E,G,H,F){if(o.isFunction(G)){H=G;G={}}return o.ajax({type:"POST",url:E,data:G,success:H,dataType:F})},ajaxSetup:function(E){o.extend(o.ajaxSettings,E)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return l.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest()},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(M){M=o.extend(true,M,o.extend(true,{},o.ajaxSettings,M));var W,F=/=\?(&|$)/g,R,V,G=M.type.toUpperCase();if(M.data&&M.processData&&typeof M.data!=="string"){M.data=o.param(M.data)}if(M.dataType=="jsonp"){if(G=="GET"){if(!M.url.match(F)){M.url+=(M.url.match(/\?/)?"&":"?")+(M.jsonp||"callback")+"=?"}}else{if(!M.data||!M.data.match(F)){M.data=(M.data?M.data+"&":"")+(M.jsonp||"callback")+"=?"}}M.dataType="json"}if(M.dataType=="json"&&(M.data&&M.data.match(F)||M.url.match(F))){W="jsonp"+r++;if(M.data){M.data=(M.data+"").replace(F,"="+W+"$1")}M.url=M.url.replace(F,"="+W+"$1");M.dataType="script";l[W]=function(X){V=X;I();L();l[W]=g;try{delete l[W]}catch(Y){}if(H){H.removeChild(T)}}}if(M.dataType=="script"&&M.cache==null){M.cache=false}if(M.cache===false&&G=="GET"){var E=e();var U=M.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+E+"$2");M.url=U+((U==M.url)?(M.url.match(/\?/)?"&":"?")+"_="+E:"")}if(M.data&&G=="GET"){M.url+=(M.url.match(/\?/)?"&":"?")+M.data;M.data=null}if(M.global&&!o.active++){o.event.trigger("ajaxStart")}var Q=/^(\w+:)?\/\/([^\/?#]+)/.exec(M.url);if(M.dataType=="script"&&G=="GET"&&Q&&(Q[1]&&Q[1]!=location.protocol||Q[2]!=location.host)){var H=document.getElementsByTagName("head")[0];var T=document.createElement("script");T.src=M.url;if(M.scriptCharset){T.charset=M.scriptCharset}if(!W){var O=false;T.onload=T.onreadystatechange=function(){if(!O&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){O=true;I();L();T.onload=T.onreadystatechange=null;H.removeChild(T)}}}H.appendChild(T);return g}var K=false;var J=M.xhr();if(M.username){J.open(G,M.url,M.async,M.username,M.password)}else{J.open(G,M.url,M.async)}try{if(M.data){J.setRequestHeader("Content-Type",M.contentType)}if(M.ifModified){J.setRequestHeader("If-Modified-Since",o.lastModified[M.url]||"Thu, 01 Jan 1970 00:00:00 GMT")}J.setRequestHeader("X-Requested-With","XMLHttpRequest");J.setRequestHeader("Accept",M.dataType&&M.accepts[M.dataType]?M.accepts[M.dataType]+", */*":M.accepts._default)}catch(S){}if(M.beforeSend&&M.beforeSend(J,M)===false){if(M.global&&!--o.active){o.event.trigger("ajaxStop")}J.abort();return false}if(M.global){o.event.trigger("ajaxSend",[J,M])}var N=function(X){if(J.readyState==0){if(P){clearInterval(P);P=null;if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}}else{if(!K&&J&&(J.readyState==4||X=="timeout")){K=true;if(P){clearInterval(P);P=null}R=X=="timeout"?"timeout":!o.httpSuccess(J)?"error":M.ifModified&&o.httpNotModified(J,M.url)?"notmodified":"success";if(R=="success"){try{V=o.httpData(J,M.dataType,M)}catch(Z){R="parsererror"}}if(R=="success"){var Y;try{Y=J.getResponseHeader("Last-Modified")}catch(Z){}if(M.ifModified&&Y){o.lastModified[M.url]=Y}if(!W){I()}}else{o.handleError(M,J,R)}L();if(X){J.abort()}if(M.async){J=null}}}};if(M.async){var P=setInterval(N,13);if(M.timeout>0){setTimeout(function(){if(J&&!K){N("timeout")}},M.timeout)}}try{J.send(M.data)}catch(S){o.handleError(M,J,null,S)}if(!M.async){N()}function I(){if(M.success){M.success(V,R)}if(M.global){o.event.trigger("ajaxSuccess",[J,M])}}function L(){if(M.complete){M.complete(J,R)}if(M.global){o.event.trigger("ajaxComplete",[J,M])}if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}return J},handleError:function(F,H,E,G){if(F.error){F.error(H,E,G)}if(F.global){o.event.trigger("ajaxError",[H,F,G])}},active:0,httpSuccess:function(F){try{return !F.status&&location.protocol=="file:"||(F.status>=200&&F.status<300)||F.status==304||F.status==1223}catch(E){}return false},httpNotModified:function(G,E){try{var H=G.getResponseHeader("Last-Modified");return G.status==304||H==o.lastModified[E]}catch(F){}return false},httpData:function(J,H,G){var F=J.getResponseHeader("content-type"),E=H=="xml"||!H&&F&&F.indexOf("xml")>=0,I=E?J.responseXML:J.responseText;if(E&&I.documentElement.tagName=="parsererror"){throw"parsererror"}if(G&&G.dataFilter){I=G.dataFilter(I,H)}if(typeof I==="string"){if(H=="script"){o.globalEval(I)}if(H=="json"){I=l["eval"]("("+I+")")}}return I},param:function(E){var G=[];function H(I,J){G[G.length]=encodeURIComponent(I)+"="+encodeURIComponent(J)}if(o.isArray(E)||E.jquery){o.each(E,function(){H(this.name,this.value)})}else{for(var F in E){if(o.isArray(E[F])){o.each(E[F],function(){H(F,this)})}else{H(F,o.isFunction(E[F])?E[F]():E[F])}}}return G.join("&").replace(/%20/g,"+")}});var m={},n,d=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function t(F,E){var G={};o.each(d.concat.apply([],d.slice(0,E)),function(){G[this]=F});return G}o.fn.extend({show:function(J,L){if(J){return this.animate(t("show",3),J,L)}else{for(var H=0,F=this.length;H").appendTo("body");K=I.css("display");if(K==="none"){K="block"}I.remove();m[G]=K}o.data(this[H],"olddisplay",K)}}for(var H=0,F=this.length;H=0;H--){if(G[H].elem==this){if(E){G[H](true)}G.splice(H,1)}}});if(!E){this.dequeue()}return this}});o.each({slideDown:t("show",1),slideUp:t("hide",1),slideToggle:t("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(E,F){o.fn[E]=function(G,H){return this.animate(F,G,H)}});o.extend({speed:function(G,H,F){var E=typeof G==="object"?G:{complete:F||!F&&H||o.isFunction(G)&&G,duration:G,easing:F&&H||H&&!o.isFunction(H)&&H};E.duration=o.fx.off?0:typeof E.duration==="number"?E.duration:o.fx.speeds[E.duration]||o.fx.speeds._default;E.old=E.complete;E.complete=function(){if(E.queue!==false){o(this).dequeue()}if(o.isFunction(E.old)){E.old.call(this)}};return E},easing:{linear:function(G,H,E,F){return E+F*G},swing:function(G,H,E,F){return((-Math.cos(G*Math.PI)/2)+0.5)*F+E}},timers:[],fx:function(F,E,G){this.options=E;this.elem=F;this.prop=G;if(!E.orig){E.orig={}}}});o.fx.prototype={update:function(){if(this.options.step){this.options.step.call(this.elem,this.now,this)}(o.fx.step[this.prop]||o.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style){this.elem.style.display="block"}},cur:function(F){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){return this.elem[this.prop]}var E=parseFloat(o.css(this.elem,this.prop,F));return E&&E>-10000?E:parseFloat(o.curCSS(this.elem,this.prop))||0},custom:function(I,H,G){this.startTime=e();this.start=I;this.end=H;this.unit=G||this.unit||"px";this.now=this.start;this.pos=this.state=0;var E=this;function F(J){return E.step(J)}F.elem=this.elem;if(F()&&o.timers.push(F)&&!n){n=setInterval(function(){var K=o.timers;for(var J=0;J=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var E=true;for(var F in this.options.curAnim){if(this.options.curAnim[F]!==true){E=false}}if(E){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(o.css(this.elem,"display")=="none"){this.elem.style.display="block"}}if(this.options.hide){o(this.elem).hide()}if(this.options.hide||this.options.show){for(var I in this.options.curAnim){o.attr(this.elem.style,I,this.options.orig[I])}}this.options.complete.call(this.elem)}return false}else{var J=G-this.startTime;this.state=J/this.options.duration;this.pos=o.easing[this.options.easing||(o.easing.swing?"swing":"linear")](this.state,J,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update()}return true}};o.extend(o.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(E){o.attr(E.elem.style,"opacity",E.now)},_default:function(E){if(E.elem.style&&E.elem.style[E.prop]!=null){E.elem.style[E.prop]=E.now+E.unit}else{E.elem[E.prop]=E.now}}}});if(document.documentElement.getBoundingClientRect){o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}var G=this[0].getBoundingClientRect(),J=this[0].ownerDocument,F=J.body,E=J.documentElement,L=E.clientTop||F.clientTop||0,K=E.clientLeft||F.clientLeft||0,I=G.top+(self.pageYOffset||o.boxModel&&E.scrollTop||F.scrollTop)-L,H=G.left+(self.pageXOffset||o.boxModel&&E.scrollLeft||F.scrollLeft)-K;return{top:I,left:H}}}else{o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}o.offset.initialized||o.offset.initialize();var J=this[0],G=J.offsetParent,F=J,O=J.ownerDocument,M,H=O.documentElement,K=O.body,L=O.defaultView,E=L.getComputedStyle(J,null),N=J.offsetTop,I=J.offsetLeft;while((J=J.parentNode)&&J!==K&&J!==H){M=L.getComputedStyle(J,null);N-=J.scrollTop,I-=J.scrollLeft;if(J===G){N+=J.offsetTop,I+=J.offsetLeft;if(o.offset.doesNotAddBorder&&!(o.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(J.tagName))){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}F=G,G=J.offsetParent}if(o.offset.subtractsBorderForOverflowNotVisible&&M.overflow!=="visible"){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}E=M}if(E.position==="relative"||E.position==="static"){N+=K.offsetTop,I+=K.offsetLeft}if(E.position==="fixed"){N+=Math.max(H.scrollTop,K.scrollTop),I+=Math.max(H.scrollLeft,K.scrollLeft)}return{top:N,left:I}}}o.offset={initialize:function(){if(this.initialized){return}var L=document.body,F=document.createElement("div"),H,G,N,I,M,E,J=L.style.marginTop,K='
    ';M={position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"};for(E in M){F.style[E]=M[E]}F.innerHTML=K;L.insertBefore(F,L.firstChild);H=F.firstChild,G=H.firstChild,I=H.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(G.offsetTop!==5);this.doesAddBorderForTableAndCells=(I.offsetTop===5);H.style.overflow="hidden",H.style.position="relative";this.subtractsBorderForOverflowNotVisible=(G.offsetTop===-5);L.style.marginTop="1px";this.doesNotIncludeMarginInBodyOffset=(L.offsetTop===0);L.style.marginTop=J;L.removeChild(F);this.initialized=true},bodyOffset:function(E){o.offset.initialized||o.offset.initialize();var G=E.offsetTop,F=E.offsetLeft;if(o.offset.doesNotIncludeMarginInBodyOffset){G+=parseInt(o.curCSS(E,"marginTop",true),10)||0,F+=parseInt(o.curCSS(E,"marginLeft",true),10)||0}return{top:G,left:F}}};o.fn.extend({position:function(){var I=0,H=0,F;if(this[0]){var G=this.offsetParent(),J=this.offset(),E=/^body|html$/i.test(G[0].tagName)?{top:0,left:0}:G.offset();J.top-=j(this,"marginTop");J.left-=j(this,"marginLeft");E.top+=j(G,"borderTopWidth");E.left+=j(G,"borderLeftWidth");F={top:J.top-E.top,left:J.left-E.left}}return F},offsetParent:function(){var E=this[0].offsetParent||document.body;while(E&&(!/^body|html$/i.test(E.tagName)&&o.css(E,"position")=="static")){E=E.offsetParent}return o(E)}});o.each(["Left","Top"],function(F,E){var G="scroll"+E;o.fn[G]=function(H){if(!this[0]){return null}return H!==g?this.each(function(){this==l||this==document?l.scrollTo(!F?H:o(l).scrollLeft(),F?H:o(l).scrollTop()):this[G]=H}):this[0]==l||this[0]==document?self[F?"pageYOffset":"pageXOffset"]||o.boxModel&&document.documentElement[G]||document.body[G]:this[0][G]}});o.each(["Height","Width"],function(I,G){var E=I?"Left":"Top",H=I?"Right":"Bottom",F=G.toLowerCase();o.fn["inner"+G]=function(){return this[0]?o.css(this[0],F,false,"padding"):null};o.fn["outer"+G]=function(K){return this[0]?o.css(this[0],F,false,K?"margin":"border"):null};var J=G.toLowerCase();o.fn[J]=function(K){return this[0]==l?document.compatMode=="CSS1Compat"&&document.documentElement["client"+G]||document.body["client"+G]:this[0]==document?Math.max(document.documentElement["client"+G],document.body["scroll"+G],document.documentElement["scroll"+G],document.body["offset"+G],document.documentElement["offset"+G]):K===g?(this.length?o.css(this[0],J):null):this.css(J,typeof K==="string"?K:K+"px")}})})(); \ No newline at end of file diff --git a/wp-content/themes/site3/gallery/next-horizontal.png b/wp-content/themes/site3/gallery/next-horizontal.png new file mode 100644 index 0000000..6fcd3d9 Binary files /dev/null and b/wp-content/themes/site3/gallery/next-horizontal.png differ diff --git a/wp-content/themes/site3/gallery/prev-horizontal.png b/wp-content/themes/site3/gallery/prev-horizontal.png new file mode 100644 index 0000000..36472c0 Binary files /dev/null and b/wp-content/themes/site3/gallery/prev-horizontal.png differ diff --git a/wp-content/themes/site3/gallery/skin.css b/wp-content/themes/site3/gallery/skin.css new file mode 100644 index 0000000..f7c7f77 --- /dev/null +++ b/wp-content/themes/site3/gallery/skin.css @@ -0,0 +1 @@ +div.page-list { float: left; padding: 10px 5px 10px 5px; width: 195px; } div.page-list ul { margin: 0; padding: 5px 5px 20px; } div.page-list ul li { list-style: none; font-size: 11px; font-weight: normal; background: none; padding: 0; } div.page-list ul li.current { background: #EEEEEE; } div.page-list ul li a { font-family: verdana; font-size: 12px; font-weight: bold; background: none; display: block; padding: 10px; } div.page-list ul li a:hover { color: green; } div.img-list { float: left; padding: 0 10px; width: 612px; } #gallery { padding: 5px 10px 10px 10px; } #img { border: 10px solid #EEEEEE; margin: 15px 0 15px 0; } div.img-list .caption { background: none repeat scroll 0 0 #666666; color: white; display: block; opacity: 0.7; padding: 8px; text-align: center; margin: 0; } ul#gallery li { background: none; } .jcarousel-skin-tango .jcarousel-container { background: #EEEEEE; } .jcarousel-skin-tango .jcarousel-container-horizontal { width: 552px; padding: 15px 30px; } .jcarousel-skin-tango .jcarousel-clip-horizontal { height: 84px; width: 562px; } .jcarousel-skin-tango .jcarousel-item { width: 100px; height: 80px; } .jcarousel-skin-tango .jcarousel-item-horizontal { margin-right: 10px; } .jcarousel-skin-tango .jcarousel-item-placeholder { background: #fff; color: #000; } .jcarousel-skin-tango .jcarousel-next-horizontal { position: absolute; top: 43px; right: 10px; width: 32px; height: 32px; cursor: pointer; background: transparent url(next-horizontal.png) no-repeat 0 0; } .jcarousel-skin-tango .jcarousel-next-horizontal:hover { background-position: -32px 0; } .jcarousel-skin-tango .jcarousel-next-horizontal:active { background-position: -64px 0; } .jcarousel-skin-tango .jcarousel-next-disabled-horizontal, .jcarousel-skin-tango .jcarousel-next-disabled-horizontal:hover, .jcarousel-skin-tango .jcarousel-next-disabled-horizontal:active { cursor: default; background-position: -96px 0; } .jcarousel-skin-tango .jcarousel-prev-horizontal { position: absolute; top: 43px; left: 10px; width: 32px; height: 32px; cursor: pointer; background: transparent url(prev-horizontal.png) no-repeat 0 0; } .jcarousel-skin-tango .jcarousel-prev-horizontal:hover { background-position: -32px 0; } .jcarousel-skin-tango .jcarousel-prev-horizontal:active { background-position: -64px 0; } .jcarousel-skin-tango .jcarousel-prev-disabled-horizontal, .jcarousel-skin-tango .jcarousel-prev-disabled-horizontal:hover, .jcarousel-skin-tango .jcarousel-prev-disabled-horizontal:active { cursor: default; background-position: -96px 0; } \ No newline at end of file diff --git a/wp-content/themes/site3/home.css b/wp-content/themes/site3/home.css new file mode 100644 index 0000000..199e250 --- /dev/null +++ b/wp-content/themes/site3/home.css @@ -0,0 +1 @@ +/* Theme Name: MyWebSql Software Theme Theme URI: Description: Default theme for MyWebSql site version 3.0 Version: 3.0 Author: Samnan ur Rehman Author URI: mywebsql.net */ /***************************************************/ body.home { background: white url(images/home.png) repeat-x top; text-align: left; } #header_home { height: 440px; } #stage { clear: both; float: left; margin: 25px 0 0 40px; } #stage2 { float: left; width: 410px; margin: 25px 0 0 0; } #stage_btns { float: left; margin: 50px 0 0 50px; } #stage_btns a:hover { box-shadow: 1px 1px 10px #999999; } #stage2 #stage_btns a.download { background: url("images/download.png") no-repeat scroll 0 0 transparent; color: white; display: block; float: left; font-family: verdana; font-size: 10pt; font-weight: bold; height: 45px; padding: 0; width: 150px; border: 0; text-indent: -9999px; } #stage_btns a.demo { background: url("images/demo.png") no-repeat scroll 0 0 transparent; color: white; display: block; float: left; font-family: verdana; font-size: 10pt; font-weight: bold; height: 45px; margin: 0 0 0 10px; padding: 0; width: 150px; border: 0; text-indent: -9999px; } #stagetxt { color: #444444; line-height: 1.3em; font-family: QlassikBoldRegular, segoe ui, verdana; font-size: 26px; text-align: right; margin: 10px 0 0 -100px; } #stagetxt2 { color: #555555; line-height: 1.3em; font-family: QlassikMediumRegular, segoe ui, verdana; font-size: 20px; margin: 30px 0 0 30px; text-align: center; } /***************************************************/ #leftcol { overflow: hidden; width: 600px; float: left; } #leftcol div.column { width: 530px; margin: 7px 0 19px 20px; text-align: justify; overflow: hidden; padding: 19px; box-shadow: 1px 1px 10px #CCCCCC; -moz-box-shadow: 1px 1px 10px #CCCCCC; -webkit-box-shadow: 1px 1px 10px #CCCCCC; } #leftcol div.column h3 { font-size: 25px; margin: 0 0 15px 0; color: #a7a751; } #leftcol div.column div.img { float: left; margin: 20px 40px 0 20px; } #leftcol div.column div.text { float: left; font-family: segoe ui, verdana, arial; font-size: 15px; line-height: 1.6em; width: 365px; } #leftcol div.column div.text a { display: block; text-align: right; margin: 15px 0 0 0; color: #0794d4; font-family: arial, verdana; font-size: 13px; font-weight: bold; } #leftcol div.column div.text a:hover { color: yellowgreen; } #rightcol { border: 1px solid #e2e2e2; padding: 6px; overflow: auto; width: 270px; float: left; color: #444444; font-family: segoe ui, verdana, arial; font-size: 16px; line-height: 1.5em; margin: 10px 0 0 20px; } #rightcol .box { border: 1px solid #e2e2e2; margin-bottom: 5px; margin-top: 0px; } #rightcol .box h3 { font-size: 23px; margin: 0 0 15px 0; color: #0794d4; padding: 0 0 5px 0; border-bottom: 3px solid #0794d4; } #rightcol .box div.text { font-family: segoe ui, verdana, arial; font-size: 14px; line-height: 1.5em; margin: 0 0 10px 0; word-spacing: 2px; } #rightcol .box div.text a { color: green; display: block; font-family: segoe ui, verdana, arial; font-size: 12px; font-weight: bold; line-height: 1.7em; margin: 8px 0 0; text-align: right; } #rightcol .box div.text a:hover { color: yellowgreen; text-decoration: underline; } #rightcol .box div.text ul li { font-size: 12px; line-height: 22px; list-style: none; margin: 0 5px 0 0; background: url(images/bullet2.gif) no-repeat 0 10px; padding: 0 0 0 10px; } #rightcol div.awards { padding: 30px; } #rightcol div.awards a.award { background: none repeat scroll 0 0 transparent; color: #2C78B9; display: inline-block; font-weight: bold; line-height: 1.5em; padding: 20px 15px; } #rightcol div.awards a.award img { vertical-align: middle; } a#link_rss { background: url(images/rss.gif) no-repeat right; background-position: 100px 3px; padding-left: 22px; line-height: 1.5em; } a#link_twitter { background: url(images/twitter.png) no-repeat right; background-position: 55px 1px; padding-left: 22px; line-height: 1.5em; } \ No newline at end of file diff --git a/themes/default/images/blobs.png b/wp-content/themes/site3/images/arrow.png similarity index 58% rename from themes/default/images/blobs.png rename to wp-content/themes/site3/images/arrow.png index c0be20e..b786c19 100644 Binary files a/themes/default/images/blobs.png and b/wp-content/themes/site3/images/arrow.png differ diff --git a/wp-content/themes/site3/images/bg.gif b/wp-content/themes/site3/images/bg.gif new file mode 100644 index 0000000..db92a36 Binary files /dev/null and b/wp-content/themes/site3/images/bg.gif differ diff --git a/wp-content/themes/site3/images/bg.png b/wp-content/themes/site3/images/bg.png new file mode 100644 index 0000000..10f25ba Binary files /dev/null and b/wp-content/themes/site3/images/bg.png differ diff --git a/wp-content/themes/site3/images/bigheader.gif b/wp-content/themes/site3/images/bigheader.gif new file mode 100644 index 0000000..9380c83 Binary files /dev/null and b/wp-content/themes/site3/images/bigheader.gif differ diff --git a/wp-content/themes/site3/images/blockquote.gif b/wp-content/themes/site3/images/blockquote.gif new file mode 100644 index 0000000..e9d3483 Binary files /dev/null and b/wp-content/themes/site3/images/blockquote.gif differ diff --git a/wp-content/themes/site3/images/bullet.gif b/wp-content/themes/site3/images/bullet.gif new file mode 100644 index 0000000..8ed73a5 Binary files /dev/null and b/wp-content/themes/site3/images/bullet.gif differ diff --git a/wp-content/themes/site3/images/bullet2.gif b/wp-content/themes/site3/images/bullet2.gif new file mode 100644 index 0000000..8c44196 Binary files /dev/null and b/wp-content/themes/site3/images/bullet2.gif differ diff --git a/wp-content/themes/site3/images/corner.gif b/wp-content/themes/site3/images/corner.gif new file mode 100644 index 0000000..33c3c1a Binary files /dev/null and b/wp-content/themes/site3/images/corner.gif differ diff --git a/wp-content/themes/site3/images/demo.1.png b/wp-content/themes/site3/images/demo.1.png new file mode 100644 index 0000000..445796a Binary files /dev/null and b/wp-content/themes/site3/images/demo.1.png differ diff --git a/wp-content/themes/site3/images/demo.png b/wp-content/themes/site3/images/demo.png new file mode 100644 index 0000000..92f5be6 Binary files /dev/null and b/wp-content/themes/site3/images/demo.png differ diff --git a/wp-content/themes/site3/images/demo.psd b/wp-content/themes/site3/images/demo.psd new file mode 100644 index 0000000..a28e952 Binary files /dev/null and b/wp-content/themes/site3/images/demo.psd differ diff --git a/wp-content/themes/site3/images/download.1.png b/wp-content/themes/site3/images/download.1.png new file mode 100644 index 0000000..413be4a Binary files /dev/null and b/wp-content/themes/site3/images/download.1.png differ diff --git a/wp-content/themes/site3/images/download.png b/wp-content/themes/site3/images/download.png new file mode 100644 index 0000000..e52db6c Binary files /dev/null and b/wp-content/themes/site3/images/download.png differ diff --git a/wp-content/themes/site3/images/facebook.png b/wp-content/themes/site3/images/facebook.png new file mode 100644 index 0000000..e7e3b40 Binary files /dev/null and b/wp-content/themes/site3/images/facebook.png differ diff --git a/wp-content/themes/site3/images/header.gif b/wp-content/themes/site3/images/header.gif new file mode 100644 index 0000000..3e323d7 Binary files /dev/null and b/wp-content/themes/site3/images/header.gif differ diff --git a/wp-content/themes/site3/images/home.gif b/wp-content/themes/site3/images/home.gif new file mode 100644 index 0000000..e44e53a Binary files /dev/null and b/wp-content/themes/site3/images/home.gif differ diff --git a/wp-content/themes/site3/images/home.png b/wp-content/themes/site3/images/home.png new file mode 100644 index 0000000..4ff6958 Binary files /dev/null and b/wp-content/themes/site3/images/home.png differ diff --git a/wp-content/themes/site3/images/ico-comment.gif b/wp-content/themes/site3/images/ico-comment.gif new file mode 100644 index 0000000..0e79b77 Binary files /dev/null and b/wp-content/themes/site3/images/ico-comment.gif differ diff --git a/wp-content/themes/site3/images/ico-date.gif b/wp-content/themes/site3/images/ico-date.gif new file mode 100644 index 0000000..bca5565 Binary files /dev/null and b/wp-content/themes/site3/images/ico-date.gif differ diff --git a/wp-content/themes/site3/images/install.png b/wp-content/themes/site3/images/install.png new file mode 100644 index 0000000..e17e049 Binary files /dev/null and b/wp-content/themes/site3/images/install.png differ diff --git a/wp-content/themes/site3/images/interact.png b/wp-content/themes/site3/images/interact.png new file mode 100644 index 0000000..412b3a2 Binary files /dev/null and b/wp-content/themes/site3/images/interact.png differ diff --git a/wp-content/themes/site3/images/link.png b/wp-content/themes/site3/images/link.png new file mode 100644 index 0000000..54384d9 Binary files /dev/null and b/wp-content/themes/site3/images/link.png differ diff --git a/wp-content/themes/site3/images/logo-small.png b/wp-content/themes/site3/images/logo-small.png new file mode 100644 index 0000000..e993dba Binary files /dev/null and b/wp-content/themes/site3/images/logo-small.png differ diff --git a/wp-content/themes/site3/images/logo.png b/wp-content/themes/site3/images/logo.png new file mode 100644 index 0000000..23da84c Binary files /dev/null and b/wp-content/themes/site3/images/logo.png differ diff --git a/wp-content/themes/site3/images/nav.gif b/wp-content/themes/site3/images/nav.gif new file mode 100644 index 0000000..daf7ef2 Binary files /dev/null and b/wp-content/themes/site3/images/nav.gif differ diff --git a/wp-content/themes/site3/images/opensource.png b/wp-content/themes/site3/images/opensource.png new file mode 100644 index 0000000..2513f23 Binary files /dev/null and b/wp-content/themes/site3/images/opensource.png differ diff --git a/wp-content/themes/site3/images/post-bottom-full.gif b/wp-content/themes/site3/images/post-bottom-full.gif new file mode 100644 index 0000000..f107f0c Binary files /dev/null and b/wp-content/themes/site3/images/post-bottom-full.gif differ diff --git a/wp-content/themes/site3/images/post-bottom.gif b/wp-content/themes/site3/images/post-bottom.gif new file mode 100644 index 0000000..00f3277 Binary files /dev/null and b/wp-content/themes/site3/images/post-bottom.gif differ diff --git a/wp-content/themes/site3/images/post-top-full.gif b/wp-content/themes/site3/images/post-top-full.gif new file mode 100644 index 0000000..d0981f3 Binary files /dev/null and b/wp-content/themes/site3/images/post-top-full.gif differ diff --git a/wp-content/themes/site3/images/post-top.gif b/wp-content/themes/site3/images/post-top.gif new file mode 100644 index 0000000..f42aff1 Binary files /dev/null and b/wp-content/themes/site3/images/post-top.gif differ diff --git a/wp-content/themes/site3/images/rss-button.gif b/wp-content/themes/site3/images/rss-button.gif new file mode 100644 index 0000000..b266bd5 Binary files /dev/null and b/wp-content/themes/site3/images/rss-button.gif differ diff --git a/wp-content/themes/site3/images/rss-input.gif b/wp-content/themes/site3/images/rss-input.gif new file mode 100644 index 0000000..db7b6ea Binary files /dev/null and b/wp-content/themes/site3/images/rss-input.gif differ diff --git a/wp-content/themes/site3/images/rss.gif b/wp-content/themes/site3/images/rss.gif new file mode 100644 index 0000000..580d860 Binary files /dev/null and b/wp-content/themes/site3/images/rss.gif differ diff --git a/wp-content/themes/site3/images/rss_large.png b/wp-content/themes/site3/images/rss_large.png new file mode 100644 index 0000000..702001f Binary files /dev/null and b/wp-content/themes/site3/images/rss_large.png differ diff --git a/wp-content/themes/site3/images/screens.png b/wp-content/themes/site3/images/screens.png new file mode 100644 index 0000000..6be61ed Binary files /dev/null and b/wp-content/themes/site3/images/screens.png differ diff --git a/wp-content/themes/site3/images/search-button.gif b/wp-content/themes/site3/images/search-button.gif new file mode 100644 index 0000000..e07dbd3 Binary files /dev/null and b/wp-content/themes/site3/images/search-button.gif differ diff --git a/wp-content/themes/site3/images/search-input.gif b/wp-content/themes/site3/images/search-input.gif new file mode 100644 index 0000000..893970a Binary files /dev/null and b/wp-content/themes/site3/images/search-input.gif differ diff --git a/wp-content/themes/site3/images/social-icons.png b/wp-content/themes/site3/images/social-icons.png new file mode 100644 index 0000000..6ea2096 Binary files /dev/null and b/wp-content/themes/site3/images/social-icons.png differ diff --git a/wp-content/themes/site3/images/tab.gif b/wp-content/themes/site3/images/tab.gif new file mode 100644 index 0000000..7a96b86 Binary files /dev/null and b/wp-content/themes/site3/images/tab.gif differ diff --git a/wp-content/themes/site3/images/tabtop.gif b/wp-content/themes/site3/images/tabtop.gif new file mode 100644 index 0000000..2354393 Binary files /dev/null and b/wp-content/themes/site3/images/tabtop.gif differ diff --git a/wp-content/themes/site3/images/twitter.png b/wp-content/themes/site3/images/twitter.png new file mode 100644 index 0000000..714857f Binary files /dev/null and b/wp-content/themes/site3/images/twitter.png differ diff --git a/wp-content/themes/site3/images/twitter2.png b/wp-content/themes/site3/images/twitter2.png new file mode 100644 index 0000000..972a3d1 Binary files /dev/null and b/wp-content/themes/site3/images/twitter2.png differ diff --git a/wp-content/themes/site3/images/twitter3.png b/wp-content/themes/site3/images/twitter3.png new file mode 100644 index 0000000..1e7c855 Binary files /dev/null and b/wp-content/themes/site3/images/twitter3.png differ diff --git a/wp-content/themes/site3/images/twitter_large.png b/wp-content/themes/site3/images/twitter_large.png new file mode 100644 index 0000000..29f8750 Binary files /dev/null and b/wp-content/themes/site3/images/twitter_large.png differ diff --git a/wp-content/themes/site3/override.css b/wp-content/themes/site3/override.css new file mode 100644 index 0000000..0485c59 --- /dev/null +++ b/wp-content/themes/site3/override.css @@ -0,0 +1,8 @@ +/* overrides some of the plugin css so that when plugins are updated, the theme remains intact */ +.page-summary h3 a { + background: none repeat scroll 0 0 transparent; font-family: verdana; font-size: 12px; font-weight: bold; } /* fixes documentation font size */ +div.doc-info p { + font-size: 13px } /* these two set the blogroll to show up correctly */ +.sidebar ul li { + background: none !important; padding-left: 0px !important; } .sidebar ul li ul a { + padding-left: 24px !important; } \ No newline at end of file diff --git a/wp-content/themes/site3/style-ie6.css b/wp-content/themes/site3/style-ie6.css new file mode 100644 index 0000000..1bb1058 --- /dev/null +++ b/wp-content/themes/site3/style-ie6.css @@ -0,0 +1,12 @@ +#logo { + width: 256px; } #toplinks { + margin-right: 10px; } #pagenav { + margin-top: 16px; width: 600px; } #stage { + margin-left: 20px; } #stage2 { margin-top: 28px; } #stage_btns { + margin-left: 20px; width: 340px; } #stagetxt { + margin: 0; } #column { + margin-left: 30px; } #download { + margin-right: -20px; } #stagetxt { } #leftcol div.column h3 { } #leftcol div.column div.text { } #rightcol { } #rightcol h3 { } #rightcol div.text { } #rightcol div.text a { } #awards h3 { } #download a { + width: 160px; } table tr th { } table tr td { } a#link_rss { + background-position: 70px 3px; } a#link_twitter { + background-position: 20px 3px; } diff --git a/wp-content/themes/site3/style.css b/wp-content/themes/site3/style.css new file mode 100644 index 0000000..d59a95f --- /dev/null +++ b/wp-content/themes/site3/style.css @@ -0,0 +1 @@ +/* Theme Name: MyWebSQL Site Theme Theme URI: Description: Default theme for MyWebSql site version 3.5 Version: 3.5 Author: Samnan ur Rehman Author URI: http://about.me/samnan */ /***************************************************/ * { font-family: verdana, "Trebuchet MS"; color: #555; outline: 0; padding: 0; margin: 0; border: 0 none; text-decoration: none; white-space: normal; vertical-align: baseline; } html, body { line-height: 1 } hr { display: none } blockquote:before, blockquote:after, q:before, q:after { content: '' } blockquote, q { quotes: "" "" } ul { list-style-type: none } ol { list-style-type: decimal } .clear { clear: both; } /***************************************************/ body { background: #ffffff url(images/bg.png) repeat-x top; text-align: left; } #container, .container { width: 940px; margin-right: auto; margin-left: auto; text-align: left; } #header { height: 230px; } /***************************************************/ #logo { float: left; display: inline; margin: 15px 30px 0 5px; } #logo h1 { margin: 0 0 10px 0; } #logo h1 a { background: url(images/logo.png) no-repeat; display: block; height: 35px; text-indent: -9999px; } #logo h1 a:hover { } #logo .description { color: #999999; font-family: tahoma; font-size: 11px; font-weight: normal; margin: 8px 0 0 7px; } #toplinks { float: right; margin: 10px 15px 10px 0; height: 28px; min-width: 350px; overflow: hidden; } #toplinks a { background: url(images/social-icons.png) no-repeat; background-position: 0px 1px; display: inline-block; height: 30px; width: 30px; } /* quick hack if twitter api does not work sometimes */ #toplinks a.twitter-follow-button, #toplinks a.twitter-follow-button:hover { background-position: 100px 100px; font-size: 11px; line-height: 20px; width: 115px; } #toplinks a.tw { background-position: -30px 1px; } #toplinks a.rss { background-position: -65px 1px; } #toplinks a:hover { background-position: 0px 0px; } #toplinks a.tw:hover { background-position: -30px 0px; } #toplinks a.rss:hover { background-position: -65px 0px; } #pagenav { float: right; margin: 0px 20px 15px 0; } #pagenav ul { float: left; padding-top: 0px; padding-left: 0px; } #pagenav ul li { display: block; float: left; margin-right: 1px; padding-left: 15px; text-align: center; } #pagenav ul li a { float: left; display: block; line-height: 31px; height: 31px; font-family: QlassikBoldRegular; font-size: 20px; color: #7d9d0f; font-weight: normal; } #pagenav ul li a:hover { color: #CCC629; } #pagenav ul li.current_page_item a { } #pagenav ul li.current_page_ancestor a, #pagenav ul li.current_page_parent a { } #pagenav ul li.current_page_item a:hover { } /***************************************************/ #searchform { float: right; height: 55px; margin-top: 20px; margin-right: 10px; } #searchform form { float: left; display: inline; background: url(images/ico-search.gif) no-repeat; background-position: left 0px; height: 55px; } #searchform fieldset { float: right; display: inline; padding-top: 10px; height: 45px; } #searchform label { vertical-align: middle; color: #FFF; font-weight: bold; font-size: 11px; } #searchform input { display: inline; vertical-align: middle; font-size: 11px; float: left; } #searchinput { width: 230px; height: 35px; background: url(images/search-input.gif) no-repeat; color: #999; letter-spacing: 2px; padding-left: 10px; } #searchbutton { width: 40px; height: 35px; background: url(images/search-button.gif) no-repeat; font-weight: bold; color: #FFF; text-align: center; cursor: pointer; } /***************************************************/ /* Search form CSS */ form#srcform { background: #EEE; padding: 10px; } form#srcform fieldset { } form#srcform input { vertical-align: middle; font-size: 11px; } form#srcform #srcinput { padding: 4px; width: 250px; background: #FFF; color: #555; font-weight: normal; border: 1px solid #ddd; } form#srcform #srcbutton { padding: 2px; width: 50px; background: #aaa; color: #FFF; font-weight: bold; text-align: center; cursor: pointer; } /***************************************************/ #about { float: left; margin-left: 75px; margin-top: 30px; text-align: justify; width: 560px; } #about p { color: #5B7682; font-family: QlassikMediumRegular; font-size: 17px; font-weight: normal; line-height: 1.4em; } #download { float: right; margin-top: 45px; margin-right: 10px; width: 220px; } #download a { background: url("images/download.png") no-repeat scroll 0 0 transparent; color: white; display: block; float: left; font-family: verdana; font-size: 10pt; font-weight: bold; height: 64px; padding: 12px 10px 0 64px; width: 229px; border: 0; text-indent: -9999px; } #download a.demo { background: url("images/demo.jpg") no-repeat scroll 0 0 transparent; margin-right: 20px; overflow: hidden; padding: 11px 20px 0 70px; width: 50px; color: green; line-height: 19px; } /***************************************************/ #column { float: left; width: 585px; } .post { margin-top: 20px; box-shadow: 1px 1px 10px #CCCCCC; -moz-box-shadow: 1px 1px 10px #CCCCCC; -webkit-box-shadow: 1px 1px 10px #CCCCCC; } .post a { color: #2c78b9; } .post a:hover { color: #4ba5f2; } .post-top { height: 10px; overflow: hidden; background: white; } .post-bottom { overflow: hidden; } .entry { background: #FFF; } .entry h2 { color: #A7A751; font-family: QlassikMediumRegular, verdana, arial; padding-left: 25px; padding-right: 15px; padding-top: 5px; line-height: 1.3em; font-size: 22px; margin-bottom: 7px; } .entry h2 a { color: #A7A751; font-family: QlassikMediumRegular, verdana, arial; font-size: 22px; line-height: 1.5em; margin: 0px 0px 5px 0px; padding: 0; } .entry .date { display: block; margin-left: 5px; margin-right: 15px; margin-top: 7px; color: #999; padding-bottom: 5px; font-size: 11px; } /********* CSS For Post Info Below Header ***************/ .info { background: #f5feff; border-top: 1px dotted #ddd; border-bottom: 1px dotted #ddd; padding-left: 15px; padding-right: 15px; font-size: 11px; } .info .cat { float: left; } .info .comments { float: right; } .info .cat a { line-height: 26px; background: url(images/ico-date.gif) no-repeat; background-position: left center; padding-top: 1px; padding-bottom: 1px; padding-left: 20px; } .info .comments a { line-height: 26px; background: url(images/ico-comment.gif) no-repeat; background-position: left center; padding-top: 1px; padding-bottom: 1px; padding-left: 20px; } /********* CSS For Article CONTENT ***************/ .content { padding: 5px 15px 0; overflow: auto; } h1, h2, h3, h4, h5, h6 { font-family: QlassikMediumRegular, verdana, arial; font-size: 25px; line-height: 1.5em; margin: 0px 0px 5px 0px; padding: 0; } .content p { font-size: 13px; line-height: 1.5em; margin: 0px 0px 10px 0px; padding: 5px 15px 0 15px; } .content .more-link { font-size: 11px; font-weight: bold; text-transform: uppercase; display: block; } .content h1, .content h2, .content h3, .content h4, .content h5, .content h6 { color: #A7A751; margin: 0 0 10px; padding: 0 0 5px; } .content h1 { border-bottom: 2px solid #A7A751; font-size: 25px; } .content h2 { font-size: 22px; color: #1394ef; } .content h3 { font-size: 18px; font-weight: bold; color: #555; } .content h4 { font-size: 12px; font-weight: bold; } .content h5 { font-size: 12px; font-weight: bold; color: #999; } .content h6 { font-size: 11px; font-weight: bold; } /* CSS for UL/OL lists */ .content ol { padding-left: 20px; } .content ul { margin: 5px 5px 20px 15px; } .content ol { margin: 5px 5px 20px 5px; } .content ul ul { margin: 5px 5px 5px 5px; } .content ol ol { margin: 5px 5px 5px 5px; } .content ol li { line-height: 1.5em; color: #555; margin-bottom: 5px; font-size: 13px; } .content ul li { line-height: 1.5em; color: #555; background: url(images/bullet.gif) no-repeat; background-position: left 6px; padding-left: 20px; margin-bottom: 5px; font-size: 13px; } .content ul li span.feature { font-family: verdana; font-size: 11px; font-weight: bold; } .content ul li span.text { color: #555; display: block; font-family: verdana; font-size: 12px; font-weight: normal; margin: 10px 0 10px 0; padding: 5px 5px 5px 10px; } .content a { background: url(images/link.png) no-repeat right center; color: #2c78b9; line-height: 1.5em; padding-right: 15px; } .content a.simple { background: none; padding-right: 15px; line-height: 1.5em; color: #2c78b9; } /* End CSS for UL/OL lists */ /* Additional post tags */ blockquote { padding: 10px; padding-left: 40px; background: #f7fcea url(images/blockquote.gif) no-repeat; background-position: 8px 8px; margin-bottom: 15px; } blockquote p { font-family: georgia, arial; line-height: 1.5em; font-size: 12px; color: #366799; } blockquote * { font-family: georgia, arial; line-height: 1.5em; font-size: 12px; color: #366799; } ins { text-decoration: underline; } del { text-decoration: line-through; } code { color: #555; font-family: verdana; font-size: 11px; background: #eee; } table { background-color: #f9f9f9; border: 3px double #e9e9e9; margin: 10px; } table tr th { background: none repeat scroll 0 0 #EEEEEE; color: #555555; font-family: "segoe ui", "trebuchet ms"; font-size: 12px; padding: 8px; } table tr td { color: #555555; font-family: "segoe ui", "trebuchet ms"; font-size: 13px; padding: 5px; } /* Thanks! */ .tags { border-top: 1px solid #ddd; font-weight: bold; line-height: 2em; color: #bbb; padding-left: 15px; padding-right: 15px; text-align: right; font-size: 11px; } .tags a { font-weight: normal; color: #555; text-transform: lowercase; } .tags a:hover { color: #ff9600; } .follow { background: #fcffeb; padding: 10px; margin-left: 15px; margin-right: 15px; margin-top: 10px; margin-bottom: 10px; border: 1px solid #dcddd6; font-weight: bold; font-size: 11px; } .follow a { font-weight: bold; background: url(images/rss.gif) no-repeat; background-position: left center; padding-left: 20px; } .state { margin-left: 15px; margin-bottom: 15px; font-size: 12px; line-height: 1.5em; } .state a { line-height: 1.5em; } /***************************************************/ .navigation { padding-top: 10px; padding-right: 5px; padding-left: 5px; font-size: 11px; line-height: 1em; text-transform: uppercase; font-weight: bold; } .navigation a { color: #555; } .navigation a:hover { color: #2c78b9; } .navleft { float: left; padding: 0 10px 10px 10px; width: 45%; } .navright { float: right; width: 48%; text-align: right; } /***************************************************/ .alignleft img, .alignright img, .aligncenter img { border: 4px solid #ccc; } .alignleft { float: left; display: inline; background: #fff; margin-right: 10px; margin-bottom: 4px; } .alignright { float: right; display: inline; background: #fff; margin-left: 10px; margin-bottom: 4px; } .aligncenter { text-align: center; display: inline; } .alignnone { } p.wp-caption-text { padding: 3px; margin: 0; font-size: 11px; color: #999; } /***************************************************/ #sidebar { float: left; margin-left: 30px; width: 310px; } /***************************************************/ .box { background: #f9f9f9; margin-top: 12px; padding: 10px; border-radius: 6px 6px 6px 6px; -moz-border-radius: 6px 6px 6px 6px; -webkit-border-radius: 6px 6px 6px 6px; } .box h2 { background: none repeat scroll 0 0 transparent; border-bottom: 2px solid #0794D4; color: #0794D4; display: block; font-family: "segoe ui", "trebuchet ms"; font-size: 12px; font-weight: bold; line-height: 27px; text-indent: 5px; } .box .text { font-size: 12px; line-height: 1.8em; margin-bottom: 5px; padding-left: 15px; } /***************************************************/ .ads { padding: 10px; border: 1px solid #bfe3eb; background: #FFF; } .ads ul { } .ads ul li { float: left; display: inline; width: 125px; height: 125px; margin-left: 5px; margin-right: 2px; } .ads ul li a { float: left; display: block; width: 125px; height: 125px; } .ads ul li a img { float: left; display: block; width: 125px; height: 125px; } /***************************************************/ .demo { padding: 10px; } .demolinks { padding-top: 5px; padding-bottom: 5px; margin-bottom: 10px; font-size: 11px; } .demolinks a { float: left; font-family: "segoe ui", "trebuchet ms"; font-size: 12px; font-weight: normal; background: url(images/arrow.png) no-repeat left; padding-left: 16px; line-height: 1.5em; color: #2c78b9; margin-right: 15px; } .demolinks a:hover { color: #ff9600; } .subscribe { padding: 10px; } .rssfeed { font-size: 12px; line-height: 1.4em; background: url(images/bullet.gif) no-repeat; background-position: left 5px; padding-left: 15px; margin-bottom: 5px; } .rssfeedlinks, .twitter { padding-top: 5px; padding-bottom: 5px; margin-bottom: 5px; border-bottom: 1px dotted #ddd; font-size: 11px; } .rssfeedlinks a { float: left; font-family: "segoe ui", "trebuchet ms"; font-size: 12px; font-weight: normal; background: url(images/rss.gif) no-repeat left; padding-left: 22px; line-height: 1.5em; color: #2c78b9; margin-right: 15px; } .rssfeedlinks a:hover, .twitter a:hover { color: #ff9600; } .twitter a { float: left; font-family: "segoe ui", "trebuchet ms"; font-size: 12px; font-weight: normal; background: url(images/twitter.png) no-repeat left; padding-left: 22px; line-height: 1.5em; color: #2c78b9; margin-right: 15px; } .subscribe form { display: inline; } .subscribe fieldset { display: inline; } .subscribe input { display: inline; vertical-align: middle; font-size: 11px; } #rssinput { width: 300px; height: 20px; padding-left: 7px; padding-top: 7px; background: url(images/rss-input.gif) no-repeat top; } #rssinput:focus { width: 300px; height: 20px; padding-left: 7px; padding-top: 7px; background: url(images/rss-input.gif) no-repeat bottom; } #rssbutton { width: 36px; height: 36px; background: url(images/rss-button.gif) no-repeat; cursor: pointer; } /***************************************************/ .tabs { margin-top: 20px; width: 420px; overflow: hidden; } .tabs li { float: left; display: inline; margin-left: 1px; text-align: center; overflow: hidden; font-size: 11px; } .tabs li a { float: left; display: block; color: #FFF; font-weight: bold; padding-left: 20px; padding-right: 20px; line-height: 26px; height: 26px; background: url(images/tab.gif) repeat-x top; } .tabs li a:hover { display: block; color: #c0ef05; } .tabs li a.selected { display: block; background: url(images/tab.gif) repeat-x bottom; color: #FFF; } .tabs li a.selected:hover { display: block; background: url(images/tab.gif) repeat-x bottom; color: #FFF; } /***************** CSS For TAB Content *******************/ .tabcontent { display: none; background: #fcffec url(images/tabtop.gif) no-repeat top; border: 1px solid #bfe3eb; border-top: 0; padding-top: 15px; padding-left: 10px; padding-right: 10px; padding-bottom: 5px; overflow: hidden; font-size: 11px; } .tabcontent a, .tabcontent a strong { color: #2c78b9; line-height: 1.4em; } .tabcontent a:hover, .tabcontent a:hover strong { color: #4ba5f2; } .tabcontent ul li { display: block; background: url(images/bullet.gif) no-repeat; background-position: left 5px; border-bottom: 1px dotted #ddd; padding-bottom: 5px; margin-bottom: 5px; padding-left: 20px; color: #999; line-height: 1.4em; font-size: 11px } .tabcontent ul li a { color: #2c78b9; line-height: 1.4em; } .tabcontent ul li a:hover { color: #4ba5f2; } .tabcontent ul li span { display: block; color: #999; } /***************** CSS For TAB Content *******************/ @media print { .tabcontent { display: block !important; } } /***************************************************/ .sidebar { font-size: 11px; } .sidebar a { color: #2c78b9; } .sidebar a:hover { color: #4ba5f2; } .sidebar ul li h2 { border-bottom: 2px solid #0794D4; color: #0794D4; display: block; font-family: "segoe ui", "trebuchet ms"; font-size: 12px; font-weight: bold; height: 30px; line-height: 26px; text-indent: 5px; } .sidebar ul li div { padding: 10px; border: 1px solid #bfe3eb; /*background: #FFF url(images/corner.gif) no-repeat bottom;*/ line-height: 1.4em; font-size: 11px; } /***********************************************/ .sidebar ul { background: none repeat scroll 0 0 #F5F1E2; border: 0 none; margin-top: 20px; padding: 10px; border-radius: 6px 6px 6px 6px; -moz-border-radius: 6px 6px 6px 6px; -webkit-border-radius: 6px 6px 6px 6px; } .sidebar ul ul { margin-top: 0; padding: 10px; border-radius: 0 0 0 0; -moz-border-radius: 0 0 0 0; -webkit-border-radius: 0 0 0 0; } .sidebar ul ul ul { margin-top: 0; padding: 10px; border-radius: 0 0 0 0; -moz-border-radius: 0 0 0 0; -webkit-border-radius: 0 0 0 0; } .sidebar ul li ul li { display: block; background: url(images/bullet.gif) no-repeat; background-position: left 9px; border-bottom: 1px dotted #ddd; padding-left: 20px; padding-top: 4px; padding-bottom: 4px; } .sidebar ul li ul li a { display: block; color: #2c78b9; line-height: 1.7em; font-family: "segoe ui", "trebuchet ms"; font-size: 12px; font-weight: normal; } .sidebar ul li ul li a:hover { color: #ff9600; } /***************************************************/ #footer { margin-top: 25px; background-color: #efefef; border-top: 3px solid #B9E151; overflow: auto; padding-top: 0; padding-bottom: 20px; clear: both; color: #DDDDDD; } #award-holder { border: 1px solid #e2e2e2; margin-top: 10px; padding: 6px; width: 870px; } #award-holder .awards { border: 1px solid #e2e2e2; background-color: white; } #award-holder .awards h2 { color: #888888; font-size: 24px; margin: 0 auto; padding: 15px 0 10px 20px; } #award-holder .awards a { display: inline-block; margin: 0 25px 15px 30px; } #award-holder .awards a img { height: 50px; } #footer .fline { border-top: 1px solid #e5e0d0; border-bottom: 1px solid #ffffff; margin: 15px 0; height: 0px; } #footercontent ul { margin: 0 auto; width: 640px; } #footercontent ul li { float: left; line-height: 1.5em; margin-right: 1px; padding: 3px 12px; } #footercontent ul li a { border-bottom: 1px dotted transparent; float: left; display: block; color: #8F8771; font-family: arial; font-size: 12px; font-weight: bold; text-transform: uppercase; line-height: 1.5em; padding: 2px 5px; } #footercontent ul li a:hover { background-color: yellowgreen; color: white; } .copyright { color: #feffe3; line-height: 1.5em; font-size: 11px; margin: 0 auto; padding: 45px 0 0 0; text-align: center; } .copyright a { font-weight: bold; line-height: 1.5em; color: #FFF; } .copyright a:hover { color: #aeec07; line-height: 1.5em; } .rss { float: left; font-size: 11px; } .rss a { float: left; display: block; font-weight: bold; background: url(images/rss.gif) no-repeat left; padding-left: 25px; line-height: 1.5em; color: #aeec07; margin-right: 25px; } .rss a:hover { color: #edf50c; line-height: 1.5em; } .property { float: right; color: #ddd; line-height: 1.5em; font-size: 11px; } .property a { font-weight: bold; color: #aeec07; } .property a:hover { text-decoration: underline; } /***************************************************/ /* CSS for Search Results Only Optional */ .result { border-top: 1px solid #ddd; padding-top: 10px; padding-bottom: 10px; font-size: 11px; } .result h3 { font-size: 16px; font-weight: bold; /*letter-spacing: -1px;*/ padding: 0; margin: 0; line-height: 1em; } .result h3 a { font-size: 16px; font-weight: bold; /*letter-spacing: -1px;*/ padding: 0; margin: 0; line-height: 1em; background: none; } .result .rdate { float: left; line-height: 2em; color: #aaa; } .result .rcomment { float: right; line-height: 1.5em; color: #aaa; font-weight: bold; } .result .rcomment a { color: #999; font-weight: bold; } .result .rcomment a:hover { color: #ff9600; } .result .rsummary { padding: 10px; border: 1px dotted #eee; background: #f8fcef; } .result .rsummary p { font-size: 12px; margin: 0; padding: 0; } .result .rcat { float: left; line-height: 2em; color: #aaa; } .result .rcat a { color: #999; font-weight: bold; } .result .rcat a:hover { color: #ff9600; } .result .rtags { float: right; line-height: 2em; color: #aaa; } .result .rtags a { color: #999; text-transform: lowercase; } .result .rtags a:hover { color: #a2d700; } /***************************************************/ /* Commenting System CSS */ #combox { } h3#respond { font-size: 14px; font-weight: bold; /*letter-spacing: -1px;*/ line-height: 1em; padding-bottom: 5px; margin-bottom: 2px; border-bottom: 1px dotted #ddd; } h3#comments { font-size: 14px; font-weight: bold; /*letter-spacing: -1px;*/ line-height: 1em; padding-bottom: 2px; margin-bottom: 2px; } ol.commentlist { list-style-type: none; margin-bottom: 20px; padding-bottom: 20px; border-bottom: 5px solid #a4d5e5; } ol.commentlist li { background: #f8fcef; border: 1px solid #eee; padding: 20px; margin-top: 20px; } ol.commentlist li.alt { background: #FFF; border: 1px solid #eee; padding: 20px; margin-top: 20px; } .avatar { float: left; display: inline; width: 32px; } .commentbody { float: left; display: inline; margin-left: 20px; width: 410px; } .commentbody em { font-size: 11px; } /***************************************************/ p.comment_author, p.comment_author a { font-weight: bold; color: #455c6b; font-size: 11px; } p.comment_author a:hover { font-weight: bold; color: #ff3600; } p.comment_time { line-height: 1.5em; color: #999; font-size: 10px; font-family: verdana; font-weight: bold; text-transform: uppercase; } .comment_text { line-height: 1.5em; color: #555; margin-top: 15px; font-size: 11px; } /***************************************************/ .reply form { background: #EEE; width: 488px; padding: 10px; } .reply p { margin-top: 10px; font-size: 11px; } .reply fieldset { vertical-align: middle; display: inline; } .reply input { vertical-align: middle; display: inline; font-size: 11px; } .reply textarea { vertical-align: middle; display: inline; font-size: 11px; } .reply label { vertical-align: middle; display: inline; font-size: 11px; font-weight: bold; font-family: verdana; margin-left: 10px; } .replytext { border: 1px solid #d9f6fa; width: 200px; padding: 5px; color: #366799; } .replytext:focus { border: 1px solid #c3e5ea; background: #fefff7; } .replyarea { border: 1px solid #d9f6fa; line-height: 1.5em; padding: 5px; width: 470px; height: 120px; color: #366799; } .replyarea:focus { border: 1px solid #c3e5ea; background: #fefff7; } .replybutton { background: url(images/tab.gif) repeat-x; text-align: center; width: 100px; height: 25px; font-weight: bold; color: #FFF; cursor: pointer; } /***************************************************/ div.content div.awards { padding: 30px; } div.content div.awards a.award { background: none repeat scroll 0 0 transparent; color: #2C78B9; display: inline-block; font-weight: bold; line-height: 1.5em; padding: 20px 15px; } div.content div.awards a.award img { vertical-align: middle; } /***************************************************/ .twitter-follow-button { float: right; margin: 3px 0 0 3px; } .fb-like { display: inline; float: right; margin: 3px 0 0 3px; } /***************************************************/ @media screen and (max-width: 900px) { #container, .container { width: 95%; } #toplinks > span { display: none; } #pagenav { background-color: #FFFFFF; border: 2px solid #C8C8C8; border-radius: 5px 5px 5px 5px; margin: 25px 0 0; padding: 2px 10px; width: 95%; } #stage { width: 45% !important; } #stage > img { width: 85% !important; } #stage2 { width: 45% !important; } #stagetxt { font-size: 20px !important; margin: auto !important; } #stagetxt { font-size: 18px !important; } #stage_btns { margin: 20px 40px !important; } #stage2 #stage_btns a.download, #stage2 #stage_btns a.demo { border-radius: 5px !important; font-size: 13px !important; height: auto !important; padding: 10px 15px !important; text-indent: 0 !important; width: auto !important; } #stage2 #stage_btns a.download { background: none #4AB413 !important; } #stage2 #stage_btns a.demo { background: none #B83413 !important; } #leftcol { width: 100% !important; } #leftcol div.column { width: 90% !important; } #leftcol div.column div.text { width: 75% !important; } #rightcol { border: none !important; margin: 0 !important; width: 100% !important; } #rightcol .box { margin: 10px 15px !important; } #footer #award-holder { margin: 10px 15px; width: auto !important; } /* internal pages */ #about { margin: 20px auto !important; padding: 0 30px; text-align: justify; width: 95% !important; } #download { margin-top: -40px !important; width: 95% !important; } #download a { background: none #1795B1 !important; border-radius: 5px; float: right !important; font-size: 11px !important; height: auto !important; padding: 6px 12px 8px !important; text-indent: 0 !important; width: auto !important; } #column { width: 100% !important; } #sidebar { margin: 0 !important; width: 100% !important; } /* features pages */ div.page-list { width: 20% !important; } div.img-list { width: 70% !important; } div.galleria_wrapper img { width: 100%; } /* documentation pages */ div.doc-links { width: 25% !important; } div.doc-info { width: 70% !important; } } @media screen and (max-width: 800px) { #container, .container { width: 95%; } #logo { margin: 15px 15px 0 5px; } #toplinks { min-width: 100px; } #toplinks > span, #toplinks > iframe { display: none; } #pagenav { background-color: #FFFFFF; border: 2px solid #C8C8C8; border-radius: 5px 5px 5px 5px; margin: 25px 0 0; padding: 2px 10px; width: 95%; } #pagenav ul li a { font-size: 90% !important; } #stage { width: 45% !important; } #stage > img { width: 95% !important; } #stage2 { margin: 0 !important; width: 45% !important; } #stagetxt { font-size: 22px !important; margin: auto !important; text-align: left important; } #stagetxt { display: none; } #stage_btns { margin: 20px 40px !important; } #stage2 #stage_btns a.download, #stage2 #stage_btns a.demo { border-radius: 5px !important; font-size: 13px !important; height: auto !important; padding: 10px 15px !important; text-indent: 0 !important; width: auto !important; } #stage2 #stage_btns a.download { background: none #4AB413 !important; } #stage2 #stage_btns a.demo { display: none !important; } #leftcol { width: 100% !important; } #leftcol div.column { width: 85% !important; } #leftcol div.column div.text { width: 70% !important; } #rightcol { border: none !important; margin: 0 !important; width: 100% !important; } #rightcol .box { margin: 10px 15px !important; } #footer #award-holder { margin: 10px 15px; width: auto !important; } #footercontent ul li { padding: 3px 5px !important; } #footercontent ul li a { font-size: 70%; } /* internal pages */ #about { margin: 10px auto !important; padding: 0 30px; text-align: justify; width: 90% !important; } #about p { font-size: 92% !important; } #download { display: none; } #download a { background: none #1795B1 !important; border-radius: 5px; float: right !important; font-size: 11px !important; height: auto !important; padding: 6px 12px 8px !important; text-indent: 0 !important; width: auto !important; } #column { width: 100% !important; } #sidebar { margin: 0 !important; width: 100% !important; } /* features pages */ div.page-list { width: 20% !important; } div.img-list { width: 70% !important; } div.galleria_wrapper img { width: 100%; } /* documentation pages */ div.doc-links { width: 30% !important; } div.doc-info { width: 55% !important; } } @media screen and (max-width: 520px) { #toplinks div.fb-like { display: none !important; } #pagenav ul li a { font-size: 67% !important; } #stage { display: none !important; } #stagetxt2 { font-size: 30px !important; } #stage2 { width: 90% !important; } #stage_btns { float: none !important; margin: 20px 40px !important; } #stage2 #stage_btns a.download { padding: 10px 25px !important; text-align: center; width: 90% !important; } #stage2 #stage_btns a.download { background: none #4AB413 !important; } #leftcol div.column { width: 80% !important; } #leftcol div.column div.img { display: none !important; } #leftcol div.column div.text { width: 90% !important; } } @media screen and (max-width: 400px) { #logo { margin: 15px auto 0; text-align: center; width: 100%; } #logo h1 a { background: url("images/logo.png") 25px 0 no-repeat !important; } #toplinks { display: none !important; } #pagenav { margin: 25px 0 0 20px !important; width: 92%; } #pagenav ul li { padding-left: 10px !important; } #pagenav ul li a { font-size: 80% !important; } #stage { display: none !important; } #stagetxt2 { font-size: 25px !important; } #leftcol div.column h3 { font-size: 22px !important; } #leftcol div.column div.text { font-size: 14px !important; } #about { display: none !important; } } \ No newline at end of file