simpletool 0.0.1 → 0.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/simpletool.rb +46 -11
- data/lib/support/ftp/vsftpd.conf +152 -0
- data/lib/support/phpmyadmin/nginx.phpmyadmin.default +112 -0
- data/lib/support/phpmyadmin/phpmyadmin/CONTRIBUTING.md +25 -0
- data/lib/support/phpmyadmin/phpmyadmin/ChangeLog +312 -0
- data/lib/support/phpmyadmin/phpmyadmin/DCO +44 -0
- data/lib/support/phpmyadmin/phpmyadmin/LICENSE +340 -0
- data/lib/support/phpmyadmin/phpmyadmin/README +52 -0
- data/lib/support/phpmyadmin/phpmyadmin/RELEASE-DATE-4.4.8 +1 -0
- data/lib/support/phpmyadmin/phpmyadmin/browse_foreigners.php +61 -0
- data/lib/support/phpmyadmin/phpmyadmin/changelog.php +153 -0
- data/lib/support/phpmyadmin/phpmyadmin/chk_rel.php +27 -0
- data/lib/support/phpmyadmin/phpmyadmin/composer.json +30 -0
- data/lib/support/phpmyadmin/phpmyadmin/config.sample.inc.php +152 -0
- data/lib/support/phpmyadmin/phpmyadmin/db_central_columns.php +134 -0
- data/lib/support/phpmyadmin/phpmyadmin/db_create.php +141 -0
- data/lib/support/phpmyadmin/phpmyadmin/db_datadict.php +208 -0
- data/lib/support/phpmyadmin/phpmyadmin/db_designer.php +173 -0
- data/lib/support/phpmyadmin/phpmyadmin/db_events.php +26 -0
- data/lib/support/phpmyadmin/phpmyadmin/db_export.php +94 -0
- data/lib/support/phpmyadmin/phpmyadmin/db_import.php +25 -0
- data/lib/support/phpmyadmin/phpmyadmin/db_operations.php +291 -0
- data/lib/support/phpmyadmin/phpmyadmin/db_printview.php +175 -0
- data/lib/support/phpmyadmin/phpmyadmin/db_qbe.php +131 -0
- data/lib/support/phpmyadmin/phpmyadmin/db_routines.php +27 -0
- data/lib/support/phpmyadmin/phpmyadmin/db_search.php +63 -0
- data/lib/support/phpmyadmin/phpmyadmin/db_sql.php +45 -0
- data/lib/support/phpmyadmin/phpmyadmin/db_sql_autocomplete.php +24 -0
- data/lib/support/phpmyadmin/phpmyadmin/db_sql_format.php +18 -0
- data/lib/support/phpmyadmin/phpmyadmin/db_structure.php +345 -0
- data/lib/support/phpmyadmin/phpmyadmin/db_tracking.php +350 -0
- data/lib/support/phpmyadmin/phpmyadmin/db_triggers.php +25 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/Makefile +197 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/_ext/configext.py +188 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/conf.py +304 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/config.rst +2794 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/copyright.rst +50 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/credits.rst +657 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/developers.rst +12 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/doctrees/config.doctree +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/doctrees/copyright.doctree +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/doctrees/credits.doctree +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/doctrees/developers.doctree +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/doctrees/environment.pickle +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/doctrees/faq.doctree +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/doctrees/glossary.doctree +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/doctrees/import_export.doctree +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/doctrees/index.doctree +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/doctrees/intro.doctree +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/doctrees/other.doctree +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/doctrees/privileges.doctree +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/doctrees/require.doctree +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/doctrees/setup.doctree +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/doctrees/transformations.doctree +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/doctrees/user.doctree +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/doctrees/vendors.doctree +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/faq.rst +2112 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/glossary.rst +399 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_sources/config.txt +2794 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_sources/copyright.txt +50 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_sources/credits.txt +657 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_sources/developers.txt +12 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_sources/faq.txt +2112 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_sources/glossary.txt +399 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_sources/import_export.txt +27 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_sources/index.txt +32 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_sources/intro.txt +68 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_sources/other.txt +18 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_sources/privileges.txt +50 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_sources/require.txt +54 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_sources/setup.txt +543 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_sources/transformations.txt +138 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_sources/user.txt +10 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_sources/vendors.txt +35 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_static/ajax-loader.gif +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_static/basic.css +540 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_static/comment-bright.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_static/comment-close.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_static/comment.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_static/default.css +256 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_static/doctools.js +247 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_static/down-pressed.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_static/down.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_static/file.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_static/jquery.js +154 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_static/minus.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_static/plus.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_static/pygments.css +62 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_static/searchtools.js +560 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_static/sidebar.js +151 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_static/underscore.js +23 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_static/up-pressed.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_static/up.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/_static/websupport.js +808 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/config.html +5000 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/copyright.html +157 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/credits.html +714 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/developers.html +118 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/faq.html +1871 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/genindex.html +3807 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/glossary.html +618 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/import_export.html +148 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/index.html +210 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/intro.html +182 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/objects.inv +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/other.html +135 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/privileges.html +169 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/require.html +168 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/search.html +100 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/searchindex.js +1 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/setup.html +909 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/transformations.html +240 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/user.html +139 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/html/vendors.html +149 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/import_export.rst +27 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/index.rst +32 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/intro.rst +68 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/make.bat +242 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/other.rst +18 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/privileges.rst +50 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/require.rst +54 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/setup.rst +543 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/transformations.rst +138 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/user.rst +10 -0
- data/lib/support/phpmyadmin/phpmyadmin/doc/vendors.rst +35 -0
- data/lib/support/phpmyadmin/phpmyadmin/error_report.php +130 -0
- data/lib/support/phpmyadmin/phpmyadmin/examples/config.manyhosts.inc.php +51 -0
- data/lib/support/phpmyadmin/phpmyadmin/examples/openid.php +160 -0
- data/lib/support/phpmyadmin/phpmyadmin/examples/signon-script.php +37 -0
- data/lib/support/phpmyadmin/phpmyadmin/examples/signon.php +71 -0
- data/lib/support/phpmyadmin/phpmyadmin/examples/swekey.sample.conf +44 -0
- data/lib/support/phpmyadmin/phpmyadmin/export.php +480 -0
- data/lib/support/phpmyadmin/phpmyadmin/favicon.ico +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/file_echo.php +81 -0
- data/lib/support/phpmyadmin/phpmyadmin/gis_data_editor.php +429 -0
- data/lib/support/phpmyadmin/phpmyadmin/import.php +770 -0
- data/lib/support/phpmyadmin/phpmyadmin/import_status.php +118 -0
- data/lib/support/phpmyadmin/phpmyadmin/index.php +701 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/OpenStreetMap.js +126 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/ajax.js +1031 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/big_ints.js +67 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/canvg/MIT-LICENSE.txt +22 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/canvg/canvg.js +2509 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/chart.js +664 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/codemirror/LICENSE +19 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/codemirror/addon/hint/show-hint.js +394 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/codemirror/addon/hint/sql-hint.js +248 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/codemirror/addon/runmode/runmode.js +72 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/codemirror/lib/codemirror.js +8645 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/codemirror/mode/javascript/javascript.js +692 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/codemirror/mode/sql/sql.js +391 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/codemirror/mode/xml/xml.js +384 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/common.js +515 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/config.js +798 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/console.js +1032 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/cross_framing_protection.js +10 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/db_central_columns.js +200 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/db_operations.js +157 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/db_qbe.js +64 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/db_search.js +239 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/db_structure.js +391 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/db_tracking.js +85 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/doclinks.js +365 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/error_report.js +340 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/export.js +401 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/functions.js +4579 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/get_image.js.php +148 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/get_scripts.js.php +62 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/gis_data_editor.js +396 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/import.js +167 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/indexes.js +697 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jqplot/excanvas.js +1438 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jqplot/jquery.jqplot.js +11411 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jqplot/plugins/jqplot.barRenderer.js +801 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jqplot/plugins/jqplot.byteFormatter.js +46 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jqplot/plugins/jqplot.canvasAxisLabelRenderer.js +203 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jqplot/plugins/jqplot.canvasTextRenderer.js +449 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jqplot/plugins/jqplot.categoryAxisRenderer.js +679 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jqplot/plugins/jqplot.cursor.js +1108 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jqplot/plugins/jqplot.dateAxisRenderer.js +741 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jqplot/plugins/jqplot.highlighter.js +465 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jqplot/plugins/jqplot.pieRenderer.js +904 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jqplot/plugins/jqplot.pointLabels.js +377 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/MIT-LICENSE.txt +21 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/jquery-1.11.1.min.js +4 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/jquery-ui-1.11.2.min.js +13 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/jquery-ui-timepicker-addon.js +2223 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/jquery.ba-hashchange-1.3.js +390 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/jquery.cookie.js +91 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/jquery.debounce-1.0.5.js +71 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/jquery.event.drag-2.2.js +402 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/jquery.fullscreen.js +60 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/jquery.mousewheel.js +221 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/jquery.sortableTable.js +272 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/jquery.svg.js +1352 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/jquery.tablesorter.js +1033 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/jquery.uitablefilter.js +117 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/README +9 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/ajax/jsonp.js +89 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/ajax/load.js +75 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/ajax/parseJSON.js +51 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/ajax/parseXML.js +31 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/ajax/script.js +93 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/ajax/var/nonce.js +5 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/ajax/var/rquery.js +3 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/ajax/xhr.js +196 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/ajax.js +807 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/attributes/attr.js +271 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/attributes/classes.js +157 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/attributes/prop.js +134 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/attributes/support.js +62 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/attributes/val.js +178 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/attributes.js +11 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/callbacks.js +205 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/core/access.js +60 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/core/init.js +132 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/core/parseHTML.js +39 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/core/ready.js +152 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/core/var/rsingleTag.js +4 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/core.js +534 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/css/addGetHookIf.js +32 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/css/curCSS.js +117 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/css/defaultDisplay.js +69 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/css/hiddenVisibleSelectors.js +20 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/css/support.js +149 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/css/swap.js +28 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/css/var/cssExpand.js +3 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/css/var/isHidden.js +13 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/css/var/rmargin.js +3 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/css/var/rnumnonpx.js +5 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/css.js +504 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/data/accepts.js +21 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/data/support.js +25 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/data.js +335 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/deferred.js +150 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/deprecated.js +13 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/dimensions.js +50 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/effects/Tween.js +114 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/effects/animatedSelector.js +13 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/effects/support.js +55 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/effects.js +656 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/event/alias.js +39 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/event/support.js +26 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/event.js +1037 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/exports/amd.js +24 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/exports/global.js +32 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/intro.js +44 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/jquery.js +37 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/manipulation/_evalUrl.js +18 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/manipulation/support.js +76 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/manipulation/var/rcheckableType.js +3 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/manipulation.js +744 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/offset.js +211 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/outro.js +1 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/queue/delay.js +22 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/queue.js +142 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/selector-sizzle.js +14 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/selector.js +1 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/serialize.js +110 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/sizzle/dist/sizzle.js +2044 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/sizzle/dist/sizzle.min.js +3 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/sizzle/dist/sizzle.min.map +1 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/sizzle/test/data/empty.js +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/sizzle/test/data/mixed_sort.html +22 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/sizzle/test/data/testinit.js +136 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/sizzle/test/index.html +242 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/sizzle/test/jquery.js +9597 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/sizzle/test/unit/extending.js +95 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/sizzle/test/unit/selector.js +1149 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/sizzle/test/unit/utilities.js +169 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/support.js +58 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/traversing/findFilter.js +100 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/traversing/var/rneedsContext.js +6 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/traversing.js +200 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/var/class2type.js +4 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/var/concat.js +5 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/var/deletedIds.js +3 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/var/hasOwn.js +5 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/var/indexOf.js +5 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/var/pnum.js +3 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/var/push.js +5 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/var/rnotwhite.js +3 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/var/slice.js +5 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/var/strundefined.js +3 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/var/support.js +4 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/var/toString.js +5 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery/wrap.js +75 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/accordion.js +584 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/autocomplete.js +628 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/button.js +411 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/core.js +304 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/datepicker.js +2080 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/dialog.js +875 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/draggable.js +1128 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/droppable.js +413 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/effect-blind.js +90 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/effect-bounce.js +123 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/effect-clip.js +77 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/effect-drop.js +75 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/effect-explode.js +107 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/effect-fade.js +40 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/effect-fold.js +86 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/effect-highlight.js +60 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/effect-puff.js +60 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/effect-pulsate.js +73 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/effect-scale.js +89 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/effect-shake.js +84 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/effect-size.js +233 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/effect-slide.js +74 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/effect-transfer.js +57 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/effect.js +1301 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/menu.js +646 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/mouse.js +199 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/position.js +517 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/progressbar.js +159 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/resizable.js +1179 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/selectable.js +287 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/selectmenu.js +616 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/slider.js +699 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/sortable.js +1304 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/spinner.js +514 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/tabs.js +880 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/tooltip.js +461 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/jquery/src/jquery-ui/widget.js +557 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/keyhandler.js +145 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/line_counts.php +523 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/makegrid.js +1973 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/menu-resizer.js +182 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/messages.php +718 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/multi_column_sort.js +81 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/navigation.js +1505 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/normalization.js +707 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/OpenLayers.js +2681 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/img/blank.gif +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/img/cloud-popup-relative.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/img/drag-rectangle-off.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/img/drag-rectangle-on.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/img/east-mini.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/img/layer-switcher-maximize.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/img/layer-switcher-minimize.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/img/marker-blue.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/img/marker-gold.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/img/marker-green.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/img/marker.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/img/measuring-stick-off.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/img/measuring-stick-on.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/img/north-mini.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/img/panning-hand-off.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/img/panning-hand-on.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/img/slider.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/img/south-mini.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/img/west-mini.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/img/zoom-minus-mini.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/img/zoom-plus-mini.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/img/zoom-world-mini.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/img/zoombar.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/README +12 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/Firebug/errorIcon.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/Firebug/firebug.css +209 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/Firebug/firebug.html +23 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/Firebug/firebug.js +674 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/Firebug/firebugx.js +9 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/Firebug/infoIcon.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/Firebug/license.txt +30 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/Firebug/readme.txt +13 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/Firebug/warningIcon.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/Gears/gears_init.js +88 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Ajax.js +678 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/BaseTypes/Bounds.js +681 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/BaseTypes/Class.js +116 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/BaseTypes/Element.js +251 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/BaseTypes/LonLat.js +190 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/BaseTypes/Pixel.js +125 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/BaseTypes/Size.js +85 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/BaseTypes.js +682 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Console.js +246 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/ArgParser.js +166 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/Attribution.js +97 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/Button.js +44 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/DragFeature.js +303 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/DragPan.js +94 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/DrawFeature.js +126 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/EditingToolbar.js +63 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/GetFeature.js +595 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/Graticule.js +373 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/KeyboardDefaults.js +127 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/LayerSwitcher.js +620 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/Measure.js +321 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/ModifyFeature.js +777 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/MouseDefaults.js +368 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/MousePosition.js +213 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/MouseToolbar.js +406 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/NavToolbar.js +55 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/Navigation.js +303 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/NavigationHistory.js +423 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/OverviewMap.js +720 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/Pan.js +86 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/PanPanel.js +63 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/PanZoom.js +246 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/PanZoomBar.js +396 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/Panel.js +371 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/Permalink.js +220 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/SLDSelect.js +570 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/Scale.js +99 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/ScaleLine.js +223 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/SelectFeature.js +613 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/Snapping.js +547 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/Split.js +498 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/TransformFeature.js +579 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/WMSGetFeatureInfo.js +524 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/WMTSGetFeatureInfo.js +442 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/ZoomBox.js +95 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/ZoomIn.js +35 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/ZoomOut.js +35 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/ZoomPanel.js +54 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control/ZoomToMaxExtent.js +40 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Control.js +368 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Events.js +855 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Feature/Vector.js +454 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Feature/WFS.js +80 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Feature.js +227 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Filter/Comparison.js +258 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Filter/FeatureId.js +81 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Filter/Logical.js +119 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Filter/Spatial.js +128 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Filter.js +68 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/ArcXML/Features.js +49 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/ArcXML.js +1028 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/Atom.js +727 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/CSWGetDomain/v2_0_2.js +243 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/CSWGetDomain.js +34 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/CSWGetRecords/v2_0_2.js +440 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/CSWGetRecords.js +34 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/Context.js +334 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/Filter/v1.js +426 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/Filter/v1_0_0.js +169 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/Filter/v1_1_0.js +182 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/Filter.js +115 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/GML/Base.js +578 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/GML/v2.js +193 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/GML/v3.js +462 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/GML.js +924 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/GPX.js +184 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/GeoJSON.js +716 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/GeoRSS.js +420 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/JSON.js +389 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/KML.js +1429 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/OSM.js +457 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/OWSCommon/v1.js +256 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/OWSCommon/v1_0_0.js +50 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/OWSCommon/v1_1_0.js +64 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/OWSContext/v0_3_1.js +589 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/OWSContext.js +81 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/SLD/v1.js +1100 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/SLD/v1_0_0.js +51 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/SLD.js +131 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/SOSCapabilities/v1_0_0.js +158 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/SOSCapabilities.js +83 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/SOSGetFeatureOfInterest.js +193 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/SOSGetObservation.js +262 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/Text.js +152 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/WFS.js +220 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/WFSCapabilities/v1.js +126 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/WFSCapabilities/v1_0_0.js +157 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/WFSCapabilities/v1_1_0.js +36 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/WFSCapabilities.js +80 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/WFSDescribeFeatureType.js +198 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/WFST/v1.js +368 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/WFST/v1_0_0.js +150 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/WFST/v1_1_0.js +161 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/WFST.js +34 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/WKT.js +358 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/WMC/v1.js +835 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/WMC/v1_0_0.js +76 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/WMC/v1_1_0.js +127 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/WMC.js +152 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/WMSCapabilities/v1.js +418 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/WMSCapabilities/v1_1.js +118 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/WMSCapabilities/v1_1_0.js +62 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/WMSCapabilities/v1_1_1.js +58 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/WMSCapabilities/v1_3.js +128 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/WMSCapabilities/v1_3_0.js +30 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/WMSCapabilities.js +82 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/WMSDescribeLayer/v1_1.js +100 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/WMSDescribeLayer.js +91 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/WMSGetFeatureInfo.js +284 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/WMTSCapabilities/v1_0_0.js +221 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/WMTSCapabilities.js +162 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format/XML.js +881 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Format.js +123 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Geometry/Collection.js +546 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Geometry/Curve.js +93 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Geometry/LineString.js +552 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Geometry/LinearRing.js +417 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Geometry/MultiLineString.js +262 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Geometry/MultiPoint.js +70 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Geometry/MultiPolygon.js +46 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Geometry/Point.js +283 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Geometry/Polygon.js +259 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Geometry/Rectangle.js +99 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Geometry/Surface.js +17 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Geometry.js +456 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Handler/Box.js +221 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Handler/Click.js +325 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Handler/Drag.js +420 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Handler/Feature.js +388 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Handler/Hover.js +183 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Handler/Keyboard.js +109 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Handler/MouseWheel.js +283 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Handler/Path.js +302 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Handler/Point.js +373 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Handler/Polygon.js +144 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Handler/RegularPolygon.js +421 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Handler.js +287 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Icon.js +227 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/ar.js +38 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/be-tarask.js +80 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/bg.js +29 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/br.js +79 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/ca.js +128 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/cs-CZ.js +69 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/da-DK.js +119 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/de.js +81 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/el.js +19 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/en-CA.js +21 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/en.js +128 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/es.js +129 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/fi.js +34 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/fr.js +80 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/fur.js +35 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/gl.js +79 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/gsw.js +79 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/hr.js +61 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/hsb.js +79 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/hu.js +80 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/ia.js +79 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/id.js +80 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/io.js +19 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/is.js +37 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/it.js +116 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/ja.js +80 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/km.js +25 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/ksh.js +79 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/nb.js +118 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/nds.js +61 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/nl.js +79 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/nn.js +27 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/oc.js +79 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/pt-BR.js +80 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/pt.js +81 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/ru.js +82 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/sk.js +71 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/sv-SE.js +71 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/te.js +27 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/vi.js +79 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/zh-CN.js +116 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang/zh-TW.js +117 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Lang.js +133 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/ArcGIS93Rest.js +253 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/ArcIMS.js +466 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/Boxes.js +76 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/EventPane.js +418 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/FixedZoomLevels.js +315 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/GML.js +174 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/GeoRSS.js +266 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/Google/v3.js +419 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/Google.js +795 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/Grid.js +755 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/HTTPRequest.js +230 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/Image.js +254 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/KaMap.js +206 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/KaMapCache.js +148 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/MapGuide.js +489 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/MapServer/Untiled.js +72 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/MapServer.js +199 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/Markers.js +187 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/MultiMap.js +284 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/PointTrack.js +103 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/SphericalMercator.js +196 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/TMS.js +167 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/Text.js +264 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/TileCache.js +165 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/Vector/RootContainer.js +157 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/Vector.js +947 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/VirtualEarth.js +368 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/WFS.js +609 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/WMS/Post.js +99 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/WMS/Untiled.js +72 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/WMS.js +268 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/WMTS.js +476 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/WorldWind.js +120 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/XYZ.js +196 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/Yahoo.js +430 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer/Zoomify.js +308 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Layer.js +1304 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Map.js +2417 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Marker/Box.js +120 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Marker.js +242 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Popup/Anchored.js +198 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Popup/AnchoredBubble.js +190 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Popup/Framed.js +343 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Popup/FramedCloud.js +231 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Popup.js +1052 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Projection.js +178 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Protocol/HTTP.js +655 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Protocol/SOS/v1_0_0.js +132 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Protocol/SOS.js +33 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Protocol/SQL/Gears.js +561 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Protocol/SQL.js +88 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Protocol/WFS/v1.js +342 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Protocol/WFS/v1_0_0.js +44 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Protocol/WFS/v1_1_0.js +48 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Protocol/WFS.js +71 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Protocol.js +272 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Renderer/Canvas.js +494 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Renderer/Elements.js +1010 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Renderer/SVG.js +995 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Renderer/VML.js +999 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Renderer.js +362 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Request/XMLHttpRequest.js +384 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Request.js +358 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Rule.js +240 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/SingleFile.js +10 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Strategy/BBOX.js +278 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Strategy/Cluster.js +280 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Strategy/Filter.js +164 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Strategy/Fixed.js +138 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Strategy/Paging.js +236 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Strategy/Refresh.js +140 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Strategy/Save.js +229 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Strategy.js +117 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Style.js +443 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Style2.js +111 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/StyleMap.js +160 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Symbolizer/Line.js +69 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Symbolizer/Point.js +141 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Symbolizer/Polygon.js +81 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Symbolizer/Raster.js +34 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Symbolizer/Text.js +65 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Symbolizer.js +51 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Tile/Image/IFrame.js +262 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Tile/Image.js +578 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Tile/WFS.js +192 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Tile.js +281 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Tween.js +318 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers/Util.js +1797 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/OpenLayers.js +348 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/Rico/Color.js +244 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/src/openlayers/lib/Rico/Corner.js +330 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/framedCloud.css +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/google.css +10 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/ie6-style.css +7 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/add_point_off.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/add_point_on.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/blank.gif +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/close.gif +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/drag-rectangle-off.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/drag-rectangle-on.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/draw_line_off.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/draw_line_on.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/draw_point_off.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/draw_point_on.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/draw_polygon_off.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/draw_polygon_on.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/editing_tool_bar.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/move_feature_off.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/move_feature_on.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/navigation_history.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/overview_replacement.gif +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/pan-panel-NOALPHA.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/pan-panel.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/pan_off.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/pan_on.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/panning-hand-off.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/panning-hand-on.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/remove_point_off.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/remove_point_on.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/ruler.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/save_features_off.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/save_features_on.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/view_next_off.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/view_next_on.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/view_previous_off.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/view_previous_on.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/zoom-panel-NOALPHA.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/img/zoom-panel.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/openlayers/theme/default/style.css +397 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/pmd/designer_db.js +136 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/pmd/designer_objects.js +17 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/pmd/designer_page.js +164 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/pmd/history.js +812 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/pmd/iecanvas.js +147 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/pmd/init.js +40 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/pmd/move.js +1993 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/replication.js +72 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/rte.js +944 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/server_databases.js +137 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/server_plugins.js +30 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/server_privileges.js +451 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/server_status_advisor.js +93 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/server_status_monitor.js +2172 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/server_status_processes.js +189 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/server_status_queries.js +34 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/server_status_sorter.js +89 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/server_status_variables.js +103 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/server_user_groups.js +42 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/server_variables.js +147 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/sprintf.js +211 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/sql.js +842 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/tbl_change.js +754 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/tbl_chart.js +437 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/tbl_find_replace.js +47 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/tbl_gis_visualization.js +353 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/tbl_operations.js +240 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/tbl_relation.js +233 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/tbl_select.js +395 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/tbl_structure.js +397 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/tbl_tracking.js +96 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/tbl_zoom_plot_jqplot.js +638 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/tracekit/tracekit.js +1114 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/transformations/image_upload.js +28 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/transformations/json.js +18 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/transformations/json_editor.js +17 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/transformations/sql_editor.js +30 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/transformations/xml.js +18 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/transformations/xml_editor.js +16 -0
- data/lib/support/phpmyadmin/phpmyadmin/js/whitelist.php +38 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/Advisor.class.php +526 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/Config.class.php +1926 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/Console.class.php +320 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/DBQbe.class.php +1593 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/DatabaseInterface.class.php +2864 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/DbSearch.class.php +502 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/DisplayResults.class.php +5685 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/Error.class.php +470 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/Error_Handler.class.php +561 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/File.class.php +732 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/Font.class.php +145 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/Footer.class.php +351 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/Header.class.php +752 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/Index.class.php +1011 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/List.class.php +122 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/List_Database.class.php +193 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/Menu.class.php +631 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/Message.class.php +759 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/OutputBuffering.class.php +139 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/PDF.class.php +149 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/PMA.php +109 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/Partition.class.php +77 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/RecentFavoriteTable.class.php +393 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/Response.class.php +397 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/SavedSearches.class.php +447 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/Scripts.class.php +284 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/ServerStatusData.class.php +448 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/StorageEngine.class.php +451 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/String.class.php +188 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/StringAbstractType.class.php +35 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/StringByte.int.php +173 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/StringCType.class.php +110 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/StringNativeType.class.php +138 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/StringType.int.php +84 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/Table.class.php +1806 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/TableSearch.class.php +1587 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/Theme.class.php +485 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/Theme_Manager.class.php +460 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/Tracker.class.php +1030 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/Types.class.php +1071 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/Util.class.php +4602 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/advisory_rules.txt +470 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/bfShapeFiles/ShapeFile.lib.php +682 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/bookmark.lib.php +273 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/browse_foreigners.lib.php +316 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/build_html_for_db.lib.php +184 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/central_columns.lib.php +1003 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/charset_conversion.lib.php +120 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/check_user_privileges.lib.php +195 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/cleanup.lib.php +50 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/common.inc.php +1203 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/config/ConfigFile.class.php +543 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/config/Form.class.php +231 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/config/FormDisplay.class.php +837 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/config/FormDisplay.tpl.php +491 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/config/ServerConfigChecks.class.php +577 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/config/Validator.class.php +624 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/config/config_functions.lib.php +54 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/config/messages.inc.php +818 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/config/setup.forms.php +384 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/config/user_preferences.forms.php +281 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/config.default.php +3011 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/config.values.php +270 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/core.lib.php +1013 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/create_addfield.lib.php +376 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/data_dictionary_relations.lib.php +167 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/database_interface.inc.php +74 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/db_common.inc.php +105 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/db_designer.lib.php +1397 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/db_info.inc.php +248 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/db_printview.lib.php +30 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/db_table_exists.lib.php +106 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/dbi/DBIDrizzle.class.php +583 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/dbi/DBIDummy.class.php +906 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/dbi/DBIExtension.int.php +262 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/dbi/DBIMysql.class.php +469 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/dbi/DBIMysqli.class.php +620 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/dbi/drizzle-wrappers.lib.php +427 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/display_change_password.lib.php +113 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/display_create_database.lib.php +62 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/display_create_table.lib.php +82 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/display_export.inc.php +72 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/display_export.lib.php +872 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/display_git_revision.lib.php +83 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/display_import.inc.php +64 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/display_import.lib.php +602 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/display_import_ajax.lib.php +129 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/display_select_lang.lib.php +98 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/display_structure.inc.php +272 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/engines/bdb.lib.php +87 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/engines/berkeleydb.lib.php +26 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/engines/binlog.lib.php +31 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/engines/innobase.lib.php +25 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/engines/innodb.lib.php +392 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/engines/memory.lib.php +34 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/engines/merge.lib.php +21 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/engines/mrg_myisam.lib.php +36 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/engines/myisam.lib.php +69 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/engines/ndbcluster.lib.php +55 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/engines/pbxt.lib.php +149 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/engines/performance_schema.lib.php +31 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/error.inc.php +58 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/error_report.lib.php +432 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/export.lib.php +858 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/file_listing.lib.php +99 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/gis/GIS_Factory.class.php +66 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/gis/GIS_Geometry.class.php +376 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/gis/GIS_Geometrycollection.class.php +364 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/gis/GIS_Linestring.class.php +323 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/gis/GIS_Multilinestring.class.php +394 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/gis/GIS_Multipoint.class.php +367 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/gis/GIS_Multipolygon.class.php +564 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/gis/GIS_Point.class.php +314 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/gis/GIS_Polygon.class.php +581 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/gis/GIS_Visualization.class.php +504 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/iconv_wrapper.lib.php +128 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/import.lib.php +1954 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/index.lib.php +48 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/information_schema_relations.lib.php +327 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/insert_edit.lib.php +2931 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/ip_allow_deny.lib.php +341 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/js_escape.lib.php +135 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/kanji-encoding.lib.php +168 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/language_stats.inc.php +87 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/logging.lib.php +30 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/mime.lib.php +34 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/mult_submits.inc.php +307 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/mult_submits.lib.php +647 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/mysql_charsets.inc.php +129 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/mysql_charsets.lib.php +379 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/mysql_relations.lib.php +169 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/navigation/Navigation.class.php +228 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/navigation/NavigationHeader.class.php +223 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/navigation/NavigationTree.class.php +1452 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/navigation/NodeFactory.class.php +97 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/navigation/Nodes/Node.class.php +813 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/navigation/Nodes/Node_Column.class.php +47 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/navigation/Nodes/Node_Column_Container.class.php +57 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/navigation/Nodes/Node_Database.class.php +663 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/navigation/Nodes/Node_DatabaseChild.class.php +52 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/navigation/Nodes/Node_Database_Container.class.php +51 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/navigation/Nodes/Node_Event.class.php +57 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/navigation/Nodes/Node_Event_Container.class.php +54 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/navigation/Nodes/Node_Function.class.php +57 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/navigation/Nodes/Node_Function_Container.class.php +53 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/navigation/Nodes/Node_Index.class.php +45 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/navigation/Nodes/Node_Index_Container.class.php +57 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/navigation/Nodes/Node_Procedure.class.php +57 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/navigation/Nodes/Node_Procedure_Container.class.php +55 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/navigation/Nodes/Node_Table.class.php +294 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/navigation/Nodes/Node_Table_Container.class.php +60 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/navigation/Nodes/Node_Trigger.class.php +45 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/navigation/Nodes/Node_Trigger_Container.class.php +57 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/navigation/Nodes/Node_View.class.php +57 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/navigation/Nodes/Node_View_Container.class.php +60 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/normalization.lib.php +945 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/opendocument.lib.php +171 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/operations.lib.php +1649 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/parse_analyze.inc.php +144 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/php-gettext/gettext.inc +536 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/php-gettext/gettext.php +432 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/php-gettext/streams.php +167 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/phpseclib/Crypt/AES.php +184 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/phpseclib/Crypt/Base.php +1984 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/phpseclib/Crypt/Random.php +251 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/phpseclib/Crypt/Rijndael.php +1370 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugin_interface.lib.php +557 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/AuthenticationPlugin.class.php +100 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/ExportPlugin.class.php +326 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/IOTransformationsPlugin.class.php +91 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/ImportPlugin.class.php +77 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/SchemaPlugin.class.php +76 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/TransformationsInterface.int.php +49 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/TransformationsPlugin.class.php +69 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/UploadInterface.int.php +36 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/auth/AuthenticationConfig.class.php +183 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/auth/AuthenticationCookie.class.php +871 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/auth/AuthenticationHttp.class.php +289 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/auth/AuthenticationSignon.class.php +267 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/auth/recaptcha/LICENSE +29 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/auth/recaptcha/recaptchalib.php +140 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/auth/swekey/authentication.inc.php +176 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/auth/swekey/musbe-ca.crt +25 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/auth/swekey/swekey.auth.lib.php +318 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/auth/swekey/swekey.php +536 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/export/ExportCodegen.class.php +434 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/export/ExportCsv.class.php +323 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/export/ExportExcel.class.php +92 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/export/ExportHtmlword.class.php +644 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/export/ExportJson.class.php +215 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/export/ExportLatex.class.php +656 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/export/ExportMediawiki.class.php +379 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/export/ExportOds.class.php +334 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/export/ExportOdt.class.php +765 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/export/ExportPdf.class.php +276 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/export/ExportPhparray.class.php +233 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/export/ExportSql.class.php +2601 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/export/ExportTexytext.class.php +575 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/export/ExportXml.class.php +584 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/export/ExportYaml.class.php +212 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/export/PMA_ExportPdf.class.php +434 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/export/README +267 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/export/TableProperty.class.php +286 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/import/AbstractImportCsv.class.php +90 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/import/ImportCsv.class.php +687 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/import/ImportLdi.class.php +161 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/import/ImportMediawiki.class.php +598 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/import/ImportOds.class.php +414 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/import/ImportShp.class.php +327 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/import/ImportSql.class.php +620 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/import/ImportXml.class.php +366 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/import/README +159 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/import/ShapeFile.class.php +102 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/import/ShapeRecord.class.php +161 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/import/upload/UploadApc.class.php +84 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/import/upload/UploadNoplugin.class.php +64 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/import/upload/UploadProgress.class.php +94 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/import/upload/UploadSession.class.php +96 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/schema/Export_Relation_Schema.class.php +299 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/schema/RelationStats.class.php +108 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/schema/SchemaDia.class.php +117 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/schema/SchemaEps.class.php +102 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/schema/SchemaPdf.class.php +132 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/schema/SchemaSvg.class.php +90 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/schema/TableStats.class.php +179 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/schema/dia/Dia_Relation_Schema.class.php +378 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/schema/dia/RelationStatsDia.class.php +216 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/schema/dia/TableStatsDia.class.php +227 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/schema/eps/Eps_Relation_Schema.class.php +508 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/schema/eps/RelationStatsEps.class.php +135 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/schema/eps/TableStatsEps.class.php +157 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/schema/pdf/Pdf_Relation_Schema.class.php +1070 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/schema/pdf/RelationStatsPdf.class.php +135 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/schema/pdf/TableStatsPdf.class.php +222 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/schema/svg/RelationStatsSvg.class.php +119 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/schema/svg/Svg_Relation_Schema.class.php +501 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/schema/svg/TableStatsSvg.class.php +180 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/README +4 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/TEMPLATE +46 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/TEMPLATE_ABSTRACT +73 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/Text_Plain_Link.class.php +44 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/Text_Plain_Longtoipv4.class.php +44 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/Text_Plain_Preappend.class.php +45 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/Text_Plain_Substring.class.php +44 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/abstract/Bool2TextTransformationsPlugin.class.php +69 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/abstract/CodeMirrorEditorTransformationPlugin.class.php +64 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/abstract/DateFormatTransformationsPlugin.class.php +164 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/abstract/DownloadTransformationsPlugin.class.php +95 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/abstract/ExternalTransformationsPlugin.class.php +155 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/abstract/FormattedTransformationsPlugin.class.php +65 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/abstract/HexTransformationsPlugin.class.php +72 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/abstract/ImageLinkTransformationsPlugin.class.php +74 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/abstract/ImageUploadTransformationsPlugin.class.php +110 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/abstract/InlineTransformationsPlugin.class.php +86 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/abstract/LongToIPv4TransformationsPlugin.class.php +68 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/abstract/PreApPendTransformationsPlugin.class.php +71 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/abstract/RegexValidationTransformationsPlugin.class.php +74 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/abstract/SQLTransformationsPlugin.class.php +67 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/abstract/SubstringTransformationsPlugin.class.php +92 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/abstract/TextFileUploadTransformationsPlugin.class.php +93 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/abstract/TextImageLinkTransformationsPlugin.class.php +81 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/abstract/TextLinkTransformationsPlugin.class.php +82 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/generator_main_class.sh +16 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/generator_plugin.sh +64 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/input/Image_JPEG_Upload.class.php +46 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/input/Text_Plain_Fileupload.class.php +45 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/input/Text_Plain_JsonEditor.class.php +86 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/input/Text_Plain_Regexvalidation.class.php +46 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/input/Text_Plain_SqlEditor.class.php +86 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/input/Text_Plain_XmlEditor.class.php +86 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/output/Application_Octetstream_Download.class.php +44 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/output/Application_Octetstream_Hex.class.php +45 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/output/Image_JPEG_Inline.class.php +45 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/output/Image_JPEG_Link.class.php +45 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/output/Image_PNG_Inline.class.php +45 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/output/Text_Octetstream_Sql.class.php +45 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/output/Text_Plain_Bool2text.class.php +47 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/output/Text_Plain_Dateformat.class.php +45 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/output/Text_Plain_External.class.php +45 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/output/Text_Plain_Formatted.class.php +45 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/output/Text_Plain_Imagelink.class.php +45 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/output/Text_Plain_Json.class.php +96 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/output/Text_Plain_Sql.class.php +57 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/plugins/transformations/output/Text_Plain_Xml.class.php +96 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/pmd_common.php +657 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/properties/PropertyItem.class.php +49 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/properties/options/OptionsPropertyGroup.class.php +99 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/properties/options/OptionsPropertyItem.class.php +127 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/properties/options/OptionsPropertyOneItem.class.php +172 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/properties/options/groups/OptionsPropertyMainGroup.class.php +35 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/properties/options/groups/OptionsPropertyRootGroup.class.php +35 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/properties/options/groups/OptionsPropertySubgroup.class.php +68 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/properties/options/items/BoolPropertyItem.class.php +35 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/properties/options/items/DocPropertyItem.class.php +35 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/properties/options/items/HiddenPropertyItem.class.php +35 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/properties/options/items/MessageOnlyPropertyItem.class.php +35 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/properties/options/items/NumberPropertyItem.class.php +35 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/properties/options/items/RadioPropertyItem.class.php +35 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/properties/options/items/SelectPropertyItem.class.php +35 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/properties/options/items/TextPropertyItem.class.php +35 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/properties/plugins/ExportPluginProperties.class.php +68 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/properties/plugins/ImportPluginProperties.class.php +34 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/properties/plugins/PluginPropertyItem.class.php +183 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/properties/plugins/SchemaPluginProperties.class.php +47 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/relation.lib.php +2024 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/relation_cleanup.lib.php +216 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/replication.inc.php +321 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/replication_gui.lib.php +1088 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/rte/rte_events.lib.php +618 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/rte/rte_export.lib.php +121 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/rte/rte_footer.lib.php +130 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/rte/rte_general.lib.php +88 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/rte/rte_list.lib.php +387 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/rte/rte_main.inc.php +94 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/rte/rte_routines.lib.php +1733 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/rte/rte_triggers.lib.php +463 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/rte/rte_words.lib.php +75 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/sanitizing.lib.php +191 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/select_lang.lib.php +621 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/select_server.lib.php +111 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/server_bin_log.lib.php +244 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/server_collations.lib.php +100 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/server_common.inc.php +53 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/server_common.lib.php +67 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/server_databases.lib.php +498 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/server_engines.lib.php +145 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/server_plugins.lib.php +207 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/server_privileges.lib.php +4692 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/server_status.lib.php +317 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/server_status_advisor.lib.php +68 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/server_status_monitor.lib.php +825 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/server_status_processes.lib.php +320 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/server_status_queries.lib.php +154 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/server_status_variables.lib.php +765 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/server_user_groups.lib.php +360 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/server_users.lib.php +58 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/server_variables.lib.php +1683 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/session.inc.php +130 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/special_schema_links.lib.php +461 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/sql-formatter/LICENSE.txt +21 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/sql-formatter/README.md +185 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/sql-formatter/lib/SqlFormatter.php +1085 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/sql.lib.php +2293 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/sql_query_form.lib.php +477 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/sqlparser.data.php +999 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/sqlparser.lib.php +2997 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/string.lib.php +33 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/stringMb.lib.php +78 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/stringNative.lib.php +245 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/structure.lib.php +3294 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/sysinfo.lib.php +369 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/tbl_chart.lib.php +383 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/tbl_columns_definition_form.inc.php +195 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/tbl_columns_definition_form.lib.php +1458 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/tbl_common.inc.php +48 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/tbl_gis_visualization.lib.php +281 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/tbl_indexes.lib.php +480 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/tbl_info.inc.php +108 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/tbl_printview.lib.php +602 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/tbl_relation.lib.php +1222 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/tbl_views.lib.php +161 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/tcpdf/LICENSE.TXT +858 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/tcpdf/README.TXT +115 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/tcpdf/config/tcpdf_config.php +227 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/tcpdf/fonts/dejavu-fonts-ttf-2.34/LICENSE +99 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/tcpdf/fonts/dejavusans.ctg.z +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/tcpdf/fonts/dejavusans.php +16 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/tcpdf/fonts/dejavusans.z +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/tcpdf/fonts/dejavusansb.ctg.z +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/tcpdf/fonts/dejavusansb.php +16 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/tcpdf/fonts/dejavusansb.z +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/tcpdf/fonts/helvetica.php +13 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/tcpdf/include/sRGB.icc +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/tcpdf/include/tcpdf_colors.php +462 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/tcpdf/include/tcpdf_font_data.php +18447 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/tcpdf/include/tcpdf_fonts.php +2591 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/tcpdf/include/tcpdf_images.php +355 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/tcpdf/include/tcpdf_static.php +2528 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/tcpdf/tcpdf.php +24478 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/tcpdf/tcpdf_autoconfig.php +241 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/tracking.lib.php +1439 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/transformations.lib.php +461 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/url_generating.lib.php +256 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/user_preferences.inc.php +71 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/user_preferences.lib.php +301 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/vendor_config.php +93 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/zip.lib.php +211 -0
- data/lib/support/phpmyadmin/phpmyadmin/libraries/zip_extension.lib.php +195 -0
- data/lib/support/phpmyadmin/phpmyadmin/license.php +31 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/az/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/bg/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/bn/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/ca/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/cs/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/da/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/de/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/el/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/en_GB/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/es/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/et/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/fi/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/fr/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/gl/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/hi/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/hu/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/ia/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/id/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/it/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/ja/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/ko/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/lt/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/nb/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/nl/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/pl/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/pt/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/pt_BR/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/ro/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/ru/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/si/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/sk/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/sl/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/sq/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/sr@latin/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/sv/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/tr/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/uk/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/zh_CN/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/locale/zh_TW/LC_MESSAGES/phpmyadmin.mo +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/navigation.php +71 -0
- data/lib/support/phpmyadmin/phpmyadmin/normalization.php +122 -0
- data/lib/support/phpmyadmin/phpmyadmin/phpinfo.php +21 -0
- data/lib/support/phpmyadmin/phpmyadmin/phpmyadmin.css.php +39 -0
- data/lib/support/phpmyadmin/phpmyadmin/phpunit.xml.hhvm +30 -0
- data/lib/support/phpmyadmin/phpmyadmin/phpunit.xml.nocoverage +40 -0
- data/lib/support/phpmyadmin/phpmyadmin/prefs_forms.php +92 -0
- data/lib/support/phpmyadmin/phpmyadmin/prefs_manage.php +375 -0
- data/lib/support/phpmyadmin/phpmyadmin/print.css +92 -0
- data/lib/support/phpmyadmin/phpmyadmin/robots.txt +2 -0
- data/lib/support/phpmyadmin/phpmyadmin/schema_export.php +77 -0
- data/lib/support/phpmyadmin/phpmyadmin/server_binlog.php +54 -0
- data/lib/support/phpmyadmin/phpmyadmin/server_collations.php +39 -0
- data/lib/support/phpmyadmin/phpmyadmin/server_databases.php +118 -0
- data/lib/support/phpmyadmin/phpmyadmin/server_engines.php +34 -0
- data/lib/support/phpmyadmin/phpmyadmin/server_export.php +29 -0
- data/lib/support/phpmyadmin/phpmyadmin/server_import.php +27 -0
- data/lib/support/phpmyadmin/phpmyadmin/server_plugins.php +59 -0
- data/lib/support/phpmyadmin/phpmyadmin/server_privileges.php +410 -0
- data/lib/support/phpmyadmin/phpmyadmin/server_replication.php +83 -0
- data/lib/support/phpmyadmin/phpmyadmin/server_sql.php +32 -0
- data/lib/support/phpmyadmin/phpmyadmin/server_status.php +38 -0
- data/lib/support/phpmyadmin/phpmyadmin/server_status_advisor.php +39 -0
- data/lib/support/phpmyadmin/phpmyadmin/server_status_monitor.php +113 -0
- data/lib/support/phpmyadmin/phpmyadmin/server_status_processes.php +64 -0
- data/lib/support/phpmyadmin/phpmyadmin/server_status_queries.php +54 -0
- data/lib/support/phpmyadmin/phpmyadmin/server_status_variables.php +57 -0
- data/lib/support/phpmyadmin/phpmyadmin/server_user_groups.php +72 -0
- data/lib/support/phpmyadmin/phpmyadmin/server_variables.php +60 -0
- data/lib/support/phpmyadmin/phpmyadmin/setup/ajax.js +11 -0
- data/lib/support/phpmyadmin/phpmyadmin/setup/config.php +81 -0
- data/lib/support/phpmyadmin/phpmyadmin/setup/frames/config.inc.php +52 -0
- data/lib/support/phpmyadmin/phpmyadmin/setup/frames/form.inc.php +36 -0
- data/lib/support/phpmyadmin/phpmyadmin/setup/frames/index.inc.php +313 -0
- data/lib/support/phpmyadmin/phpmyadmin/setup/frames/menu.inc.php +37 -0
- data/lib/support/phpmyadmin/phpmyadmin/setup/frames/servers.inc.php +50 -0
- data/lib/support/phpmyadmin/phpmyadmin/setup/index.php +61 -0
- data/lib/support/phpmyadmin/phpmyadmin/setup/lib/ConfigGenerator.class.php +161 -0
- data/lib/support/phpmyadmin/phpmyadmin/setup/lib/common.inc.php +56 -0
- data/lib/support/phpmyadmin/phpmyadmin/setup/lib/form_processing.lib.php +81 -0
- data/lib/support/phpmyadmin/phpmyadmin/setup/lib/index.lib.php +204 -0
- data/lib/support/phpmyadmin/phpmyadmin/setup/scripts.js +216 -0
- data/lib/support/phpmyadmin/phpmyadmin/setup/styles.css +619 -0
- data/lib/support/phpmyadmin/phpmyadmin/setup/validate.php +32 -0
- data/lib/support/phpmyadmin/phpmyadmin/show_config_errors.php +40 -0
- data/lib/support/phpmyadmin/phpmyadmin/sql/create_tables.sql +323 -0
- data/lib/support/phpmyadmin/phpmyadmin/sql/create_tables_drizzle.sql +275 -0
- data/lib/support/phpmyadmin/phpmyadmin/sql/upgrade_column_info_4_3_0+.sql +47 -0
- data/lib/support/phpmyadmin/phpmyadmin/sql/upgrade_tables_mysql_4_1_2+.sql +144 -0
- data/lib/support/phpmyadmin/phpmyadmin/sql.php +203 -0
- data/lib/support/phpmyadmin/phpmyadmin/tbl_addfield.php +124 -0
- data/lib/support/phpmyadmin/phpmyadmin/tbl_change.php +232 -0
- data/lib/support/phpmyadmin/phpmyadmin/tbl_chart.php +142 -0
- data/lib/support/phpmyadmin/phpmyadmin/tbl_create.php +108 -0
- data/lib/support/phpmyadmin/phpmyadmin/tbl_export.php +107 -0
- data/lib/support/phpmyadmin/phpmyadmin/tbl_find_replace.php +66 -0
- data/lib/support/phpmyadmin/phpmyadmin/tbl_get_field.php +55 -0
- data/lib/support/phpmyadmin/phpmyadmin/tbl_gis_visualization.php +115 -0
- data/lib/support/phpmyadmin/phpmyadmin/tbl_import.php +30 -0
- data/lib/support/phpmyadmin/phpmyadmin/tbl_indexes.php +60 -0
- data/lib/support/phpmyadmin/phpmyadmin/tbl_operations.php +423 -0
- data/lib/support/phpmyadmin/phpmyadmin/tbl_printview.php +74 -0
- data/lib/support/phpmyadmin/phpmyadmin/tbl_recent_favorite.php +19 -0
- data/lib/support/phpmyadmin/phpmyadmin/tbl_relation.php +156 -0
- data/lib/support/phpmyadmin/phpmyadmin/tbl_replace.php +468 -0
- data/lib/support/phpmyadmin/phpmyadmin/tbl_row_action.php +146 -0
- data/lib/support/phpmyadmin/phpmyadmin/tbl_select.php +81 -0
- data/lib/support/phpmyadmin/phpmyadmin/tbl_sql.php +52 -0
- data/lib/support/phpmyadmin/phpmyadmin/tbl_structure.php +210 -0
- data/lib/support/phpmyadmin/phpmyadmin/tbl_tracking.php +209 -0
- data/lib/support/phpmyadmin/phpmyadmin/tbl_triggers.php +10 -0
- data/lib/support/phpmyadmin/phpmyadmin/tbl_zoom_select.php +165 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/dot.gif +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/css/common.css.php +3078 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/css/navigation.css.php +424 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/ajax_clock_small.gif +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/arrow_ltr.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/arrow_rtl.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_bookmark.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_browse.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_calendar.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_chart.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_close.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_column_add.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_comment.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_dbstatistics.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_deltbl.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_docs.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_drop.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_edit.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_empty.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_engine.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_event_add.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_events.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_export.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_favorite.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_find_replace.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_ftext.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_globe.gif +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_group.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_help.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_home.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_import.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_index.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_index_add.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_info.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_inline_edit.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_insrow.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_minus.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_more.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_move.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_newdb.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_newtbl.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_nextpage.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_no_favorite.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_plus.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_primary.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_print.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_props.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_relations.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_report.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_routine_add.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_routines.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_save.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_saveimage.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_sbrowse.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_search.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_selboard.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_select.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_snewtbl.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_spatial.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_sql.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_sqlhelp.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_table_add.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_tblanalyse.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_tblexport.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_tblimport.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_tblops.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_tbloptimize.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_tipp.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_trigger_add.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_triggers.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_undo.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_unique.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_usradd.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_usrcheck.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_usrdrop.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_usredit.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_usrlist.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_versions.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_view.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_view_add.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/b_views.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/bd_browse.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/bd_deltbl.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/bd_drop.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/bd_edit.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/bd_empty.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/bd_export.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/bd_ftext.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/bd_index.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/bd_insrow.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/bd_nextpage.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/bd_primary.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/bd_routine_add.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/bd_sbrowse.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/bd_select.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/bd_spatial.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/bd_unique.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/centralColumns.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/centralColumns_add.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/centralColumns_delete.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/cleardot.gif +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/col_drop.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/col_pointer.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/col_pointer_ver.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/console.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/east-mini.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/error.ico +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/eye.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/eye_grey.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/lightbulb.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/lightbulb_off.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/logo_left.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/logo_right.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/more.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/new_data.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/new_data_hovered.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/new_data_selected.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/new_data_selected_hovered.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/new_struct.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/new_struct_hovered.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/new_struct_selected.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/new_struct_selected_hovered.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/normalize.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/north-mini.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/pause.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/play.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_asc.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_asci.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_attention.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_cancel.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_cog.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_collapseall.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_db.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_desc.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_error.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_error2.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_fulltext.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_host.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_info.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_lang.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_link.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_lock.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_loggoff.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_notice.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_partialtext.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_passwd.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_really.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_reload.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_replication.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_rights.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_sortable.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_status.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_success.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_sync.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_tbl.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_theme.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_top.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_unlink.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_vars.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/s_views.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/south-mini.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/spacer.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/sprites.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/toggle-ltr.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/toggle-rtl.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/vertical_line.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/west-mini.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/window-new.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/zoom-minus-mini.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/zoom-plus-mini.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/img/zoom-world-mini.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/info.inc.php +15 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/jquery/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/jquery/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/jquery/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/jquery/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/jquery/images/ui-bg_glass_75_dadada_1x400.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/jquery/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/jquery/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/jquery/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/jquery/images/ui-icons_222222_256x240.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/jquery/images/ui-icons_2e83ff_256x240.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/jquery/images/ui-icons_454545_256x240.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/jquery/images/ui-icons_888888_256x240.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/jquery/images/ui-icons_cd0a0a_256x240.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/jquery/jquery-ui-1.11.2.css +1225 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/layout.inc.php +102 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/screen.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/original/sprites.lib.php +720 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/css/codemirror.css.php +350 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/css/common.css.php +3401 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/css/enum_editor.css.php +80 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/css/gis.css.php +52 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/css/jqplot.css.php +277 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/css/navigation.css.php +429 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/css/pmd.css.php +605 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/css/resizable-menu.css.php +57 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/css/rte.css.php +43 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/ajax_clock_small.gif +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/arrow_ltr.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/arrow_rtl.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/asc_order.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_bookmark.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_browse.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_calendar.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_chart.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_close.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_column_add.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_comment.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_dbstatistics.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_deltbl.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_docs.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_docsql.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_drop.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_edit.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_empty.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_engine.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_event_add.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_events.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_export.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_favorite.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_find_replace.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_firstpage.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_ftext.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_globe.gif +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_group.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_help.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_home.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_import.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_index.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_index_add.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_info.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_inline_edit.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_insrow.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_lastpage.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_minus.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_more.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_move.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_newdb.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_newtbl.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_nextpage.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_no_favorite.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_pdfdoc.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_plus.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_prevpage.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_primary.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_print.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_props.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_relations.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_report.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_routine_add.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_routines.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_save.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_saveimage.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_sbrowse.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_sdb.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_search.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_selboard.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_select.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_snewtbl.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_spatial.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_sql.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_sqldoc.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_sqlhelp.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_table_add.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_tblanalyse.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_tblexport.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_tblimport.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_tblops.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_tbloptimize.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_tipp.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_trigger_add.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_triggers.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_undo.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_unique.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_usradd.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_usrcheck.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_usrdrop.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_usredit.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_usrlist.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_versions.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_view.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_view_add.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/b_views.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/bd_browse.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/bd_deltbl.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/bd_drop.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/bd_edit.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/bd_empty.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/bd_export.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/bd_firstpage.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/bd_ftext.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/bd_index.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/bd_insrow.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/bd_lastpage.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/bd_nextpage.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/bd_prevpage.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/bd_primary.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/bd_routine_add.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/bd_sbrowse.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/bd_select.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/bd_spatial.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/bd_unique.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/centralColumns.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/centralColumns_add.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/centralColumns_delete.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/col_drop.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/col_pointer.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/col_pointer_ver.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/console.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/database.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/east-mini.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/error.ico +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/eye.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/eye_grey.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/item.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/left_nav_bg.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/lightbulb.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/lightbulb_off.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/logo_left.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/logo_right.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/more.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/new_data.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/new_data_hovered.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/new_data_selected.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/new_data_selected_hovered.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/new_struct.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/new_struct_hovered.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/new_struct_selected.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/new_struct_selected_hovered.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/normalize.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/north-mini.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pause.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/php_sym.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/play.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pma_logo2.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/1.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/2.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/2leftarrow.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/2leftarrow_m.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/2rightarrow.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/2rightarrow_m.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/3.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/4.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/5.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/6.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/7.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/8.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/FieldKey_small.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/Field_small.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/Field_small_char.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/Field_small_date.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/Field_small_int.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/Header.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/Header_Linked.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/anchor.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/and_icon.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/ang_direct.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/bord.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/bottom.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/def.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/display_field.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/downarrow1.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/downarrow2.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/downarrow2_m.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/exec.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/exec_small.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/exitFullscreen.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/export.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/favicon.ico +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/grid.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/help.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/help_relation.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/left_panel_butt.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/left_panel_tab.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/minus.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/or_icon.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/page_add.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/page_delete.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/page_edit.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/pdf.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/plus.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/query_builder.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/relation.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/reload.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/resize.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/resizeright.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/rightarrow1.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/rightarrow2.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/save.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/save_as.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/small_tab.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/table.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/toggle_lines.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/top_panel.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/uparrow2_m.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/pmd/viewInFullscreen.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_asc.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_asci.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_attention.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_cancel.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_cancel2.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_cog.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_collapseall.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_db.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_desc.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_error.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_error2.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_fulltext.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_host.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_info.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_lang.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_link.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_lock.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_loggoff.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_notice.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_okay.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_partialtext.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_passwd.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_process.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_really.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_reload.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_replication.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_rights.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_sortable.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_status.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_success.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_sync.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_tbl.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_theme.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_top.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_unlink.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_vars.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/s_views.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/select_bg.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/south-mini.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/spacer.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/sprites.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/toggle-ltr.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/toggle-rtl.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/vertical_line.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/west-mini.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/window-new.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/zoom-minus-mini.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/zoom-plus-mini.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/img/zoom-world-mini.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/info.inc.php +21 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/jquery/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/jquery/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/jquery/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/jquery/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/jquery/images/ui-bg_glass_75_dadada_1x400.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/jquery/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/jquery/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/jquery/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/jquery/images/ui-icons_222222_256x240.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/jquery/images/ui-icons_2e83ff_256x240.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/jquery/images/ui-icons_454545_256x240.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/jquery/images/ui-icons_888888_256x240.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/jquery/images/ui-icons_cd0a0a_256x240.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/jquery/jquery-ui-1.11.2.css +1225 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/layout.inc.php +104 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/screen.png +0 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/pmahomme/sprites.lib.php +805 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/sprites.css.php +60 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes/svg_gradient.php +53 -0
- data/lib/support/phpmyadmin/phpmyadmin/themes.php +32 -0
- data/lib/support/phpmyadmin/phpmyadmin/transformation_overview.php +74 -0
- data/lib/support/phpmyadmin/phpmyadmin/transformation_wrapper.php +148 -0
- data/lib/support/phpmyadmin/phpmyadmin/url.php +38 -0
- data/lib/support/phpmyadmin/phpmyadmin/user_password.php +200 -0
- data/lib/support/phpmyadmin/phpmyadmin/version_check.php +30 -0
- data/lib/support/phpmyadmin/phpmyadmin/view_create.php +291 -0
- data/lib/support/phpmyadmin/phpmyadmin/view_operations.php +139 -0
- data/lib/support/phpmyadmin/phpmyadmin/webapp.php +55 -0
- data/lib/support/pptp_vpn/ubuntu/pptpd-options +122 -0
- data/lib/support/pptp_vpn/ubuntu/rc.local +17 -0
- data/lib/support/pptp_vpn/ubuntu/sysctl.conf +102 -0
- metadata +1705 -1
@@ -0,0 +1,2997 @@
|
|
1
|
+
<?php
|
2
|
+
/* vim: set expandtab sw=4 ts=4 sts=4: */
|
3
|
+
/** SQL Parser Functions for phpMyAdmin
|
4
|
+
*
|
5
|
+
* These functions define an SQL parser system, capable of understanding and
|
6
|
+
* extracting data from a MySQL type SQL query.
|
7
|
+
*
|
8
|
+
* The basic procedure for using the new SQL parser:
|
9
|
+
* On any page that needs to extract data from a query or to pretty-print a
|
10
|
+
* query, you need code like this up at the top:
|
11
|
+
*
|
12
|
+
* ($sql contains the query)
|
13
|
+
* $parsed_sql = PMA_SQP_parse($sql);
|
14
|
+
*
|
15
|
+
* If you want to extract data from it then, you just need to run
|
16
|
+
* $sql_info = PMA_SQP_analyze($parsed_sql);
|
17
|
+
*
|
18
|
+
* See comments in PMA_SQP_analyze for the returned info
|
19
|
+
* from the analyzer.
|
20
|
+
*
|
21
|
+
* If you want a pretty-printed version of the query, do:
|
22
|
+
* $string = PMA_SQP_format($parsed_sql);
|
23
|
+
* (note that that you need to have syntax.css.php included somehow in your
|
24
|
+
* page for it to work, I recommend '<link rel="stylesheet" type="text/css"
|
25
|
+
* href="syntax.css.php" />' at the moment.)
|
26
|
+
*
|
27
|
+
* @package PhpMyAdmin
|
28
|
+
*/
|
29
|
+
if (! defined('PHPMYADMIN')) {
|
30
|
+
exit;
|
31
|
+
}
|
32
|
+
|
33
|
+
/**
|
34
|
+
* Include data for the SQL Parser
|
35
|
+
*/
|
36
|
+
require_once './libraries/sqlparser.data.php';
|
37
|
+
|
38
|
+
/**
|
39
|
+
* Charset information
|
40
|
+
*/
|
41
|
+
if (!defined('TESTSUITE') && ! PMA_DRIZZLE) {
|
42
|
+
include_once './libraries/mysql_charsets.inc.php';
|
43
|
+
}
|
44
|
+
if (! isset($mysql_charsets)) {
|
45
|
+
$mysql_charsets = array();
|
46
|
+
$mysql_collations_flat = array();
|
47
|
+
}
|
48
|
+
|
49
|
+
/**
|
50
|
+
* Stores parsed elements of query to array.
|
51
|
+
*
|
52
|
+
* @param array &$arr Array to store element
|
53
|
+
* @param string $type Type of element
|
54
|
+
* @param string $data Data (text) of element
|
55
|
+
* @param int &$arrsize Size of array
|
56
|
+
* @param int $pos Position of an element
|
57
|
+
*
|
58
|
+
* @return void
|
59
|
+
*/
|
60
|
+
function PMA_SQP_arrayAdd(&$arr, $type, $data, &$arrsize, $pos = 0)
|
61
|
+
{
|
62
|
+
$arr[] = array('type' => $type, 'data' => $data, 'pos' => $pos);
|
63
|
+
$arrsize++;
|
64
|
+
} // end of the "PMA_SQP_arrayAdd()" function
|
65
|
+
|
66
|
+
/**
|
67
|
+
* Reset the error variable for the SQL parser
|
68
|
+
*
|
69
|
+
* @access public
|
70
|
+
*
|
71
|
+
* @return void
|
72
|
+
*/
|
73
|
+
function PMA_SQP_resetError()
|
74
|
+
{
|
75
|
+
global $SQP_errorString;
|
76
|
+
$SQP_errorString = '';
|
77
|
+
unset($SQP_errorString);
|
78
|
+
}
|
79
|
+
|
80
|
+
/**
|
81
|
+
* Get the contents of the error variable for the SQL parser
|
82
|
+
*
|
83
|
+
* @return string Error string from SQL parser
|
84
|
+
*
|
85
|
+
* @access public
|
86
|
+
*/
|
87
|
+
function PMA_SQP_getErrorString()
|
88
|
+
{
|
89
|
+
global $SQP_errorString;
|
90
|
+
return isset($SQP_errorString) ? $SQP_errorString : '';
|
91
|
+
}
|
92
|
+
|
93
|
+
/**
|
94
|
+
* Check if the SQL parser hit an error
|
95
|
+
*
|
96
|
+
* @return boolean error state
|
97
|
+
*
|
98
|
+
* @access public
|
99
|
+
*/
|
100
|
+
function PMA_SQP_isError()
|
101
|
+
{
|
102
|
+
global $SQP_errorString;
|
103
|
+
return isset($SQP_errorString) && !empty($SQP_errorString);
|
104
|
+
}
|
105
|
+
|
106
|
+
/**
|
107
|
+
* Set an error message for the system
|
108
|
+
*
|
109
|
+
* @param string $message The error message
|
110
|
+
* @param string $sql The failing SQL query
|
111
|
+
*
|
112
|
+
* @return void
|
113
|
+
*
|
114
|
+
* @access private
|
115
|
+
* @scope SQL Parser internal
|
116
|
+
*/
|
117
|
+
function PMA_SQP_throwError($message, $sql)
|
118
|
+
{
|
119
|
+
global $SQP_errorString;
|
120
|
+
$SQP_errorString = '<p>'
|
121
|
+
. __(
|
122
|
+
'There seems to be an error in your SQL query. The MySQL server '
|
123
|
+
. 'error output below, if there is any, may also help you in '
|
124
|
+
. 'diagnosing the problem.'
|
125
|
+
)
|
126
|
+
. '</p>' . "\n"
|
127
|
+
. '<pre>' . "\n"
|
128
|
+
. 'ERROR: ' . $message . "\n"
|
129
|
+
. 'SQL: ' . htmlspecialchars($sql) . "\n"
|
130
|
+
. '</pre>' . "\n";
|
131
|
+
|
132
|
+
} // end of the "PMA_SQP_throwError()" function
|
133
|
+
|
134
|
+
|
135
|
+
/**
|
136
|
+
* Do display the bug report
|
137
|
+
*
|
138
|
+
* @param string $message The error message
|
139
|
+
* @param string $sql The failing SQL query
|
140
|
+
*
|
141
|
+
* @return void
|
142
|
+
*
|
143
|
+
* @access public
|
144
|
+
*/
|
145
|
+
function PMA_SQP_bug($message, $sql)
|
146
|
+
{
|
147
|
+
global $SQP_errorString;
|
148
|
+
$debugstr = 'ERROR: ' . $message . "\n";
|
149
|
+
$debugstr .= 'MySQL: ' . PMA_MYSQL_STR_VERSION . "\n";
|
150
|
+
$debugstr .= 'USR OS, AGENT, VER: ' . PMA_USR_OS . ' ';
|
151
|
+
$debugstr .= PMA_USR_BROWSER_AGENT . ' ' . PMA_USR_BROWSER_VER . "\n";
|
152
|
+
$debugstr .= 'PMA: ' . PMA_VERSION . "\n";
|
153
|
+
$debugstr .= 'PHP VER,OS: ' . PMA_PHP_STR_VERSION . ' ' . PHP_OS . "\n";
|
154
|
+
$debugstr .= 'LANG: ' . $GLOBALS['lang'] . "\n";
|
155
|
+
$debugstr .= 'SQL: ' . htmlspecialchars($sql);
|
156
|
+
|
157
|
+
$encodedstr = $debugstr;
|
158
|
+
if (@function_exists('gzcompress')) {
|
159
|
+
$encodedstr = gzcompress($debugstr, 9);
|
160
|
+
}
|
161
|
+
$encodedstr = preg_replace(
|
162
|
+
"/(\015\012)|(\015)|(\012)/",
|
163
|
+
'<br />' . "\n",
|
164
|
+
chunk_split(base64_encode($encodedstr))
|
165
|
+
);
|
166
|
+
|
167
|
+
$SQP_errorString .= __(
|
168
|
+
'There is a chance that you may have found a bug in the SQL parser. '
|
169
|
+
. 'Please examine your query closely, and check that the quotes are '
|
170
|
+
. 'correct and not mis-matched. Other possible failure causes may be '
|
171
|
+
. 'that you are uploading a file with binary outside of a quoted text '
|
172
|
+
. 'area. You can also try your query on the MySQL command line '
|
173
|
+
. 'interface. The MySQL server error output below, if there is any, '
|
174
|
+
. 'may also help you in diagnosing the problem. If you still have '
|
175
|
+
. 'problems or if the parser fails where the command line interface '
|
176
|
+
. 'succeeds, please reduce your SQL query input to the single query '
|
177
|
+
. 'that causes problems, and submit a bug report with the data chunk '
|
178
|
+
. 'in the CUT section below:'
|
179
|
+
);
|
180
|
+
$SQP_errorString .= '<br />' . "\n"
|
181
|
+
. '----' . __('BEGIN CUT') . '----' . '<br />' . "\n"
|
182
|
+
. $encodedstr . "\n"
|
183
|
+
. '----' . __('END CUT') . '----' . '<br />' . "\n";
|
184
|
+
|
185
|
+
$SQP_errorString .= '----' . __('BEGIN RAW') . '----<br />' . "\n"
|
186
|
+
. '<pre>' . "\n"
|
187
|
+
. $debugstr
|
188
|
+
. '</pre>' . "\n"
|
189
|
+
. '----' . __('END RAW') . '----<br />' . "\n";
|
190
|
+
|
191
|
+
} // end of the "PMA_SQP_bug()" function
|
192
|
+
|
193
|
+
|
194
|
+
/**
|
195
|
+
* Parses the SQL queries
|
196
|
+
*
|
197
|
+
* @param string $sql The SQL query list
|
198
|
+
*
|
199
|
+
* @return mixed Most of times, nothing...
|
200
|
+
*
|
201
|
+
* @global array The current PMA configuration
|
202
|
+
* @global array MySQL column attributes
|
203
|
+
* @global array MySQL reserved words
|
204
|
+
* @global array MySQL column types
|
205
|
+
* @global array MySQL function names
|
206
|
+
* @global array List of available character sets
|
207
|
+
* @global array List of available collations
|
208
|
+
*
|
209
|
+
* @access public
|
210
|
+
*/
|
211
|
+
function PMA_SQP_parse($sql)
|
212
|
+
{
|
213
|
+
static $PMA_SQPdata_column_attrib, $PMA_SQPdata_reserved_word;
|
214
|
+
static $PMA_SQPdata_column_type;
|
215
|
+
static $PMA_SQPdata_function_name, $PMA_SQPdata_forbidden_word;
|
216
|
+
global $mysql_charsets, $mysql_collations_flat;
|
217
|
+
|
218
|
+
/** @var PMA_String $pmaString */
|
219
|
+
$pmaString = $GLOBALS['PMA_String'];
|
220
|
+
|
221
|
+
// Convert all line feeds to Unix style
|
222
|
+
$sql = str_replace("\r\n", "\n", $sql);
|
223
|
+
$sql = str_replace("\r", "\n", $sql);
|
224
|
+
|
225
|
+
$len = /*overload*/mb_strlen($sql);
|
226
|
+
if ($len == 0) {
|
227
|
+
return array();
|
228
|
+
}
|
229
|
+
|
230
|
+
// Create local hashtables
|
231
|
+
if (!isset($PMA_SQPdata_column_attrib)) {
|
232
|
+
$PMA_SQPdata_column_attrib = array_flip(
|
233
|
+
$GLOBALS['PMA_SQPdata_column_attrib']
|
234
|
+
);
|
235
|
+
$PMA_SQPdata_function_name = array_flip(
|
236
|
+
$GLOBALS['PMA_SQPdata_function_name']
|
237
|
+
);
|
238
|
+
$PMA_SQPdata_reserved_word = array_flip(
|
239
|
+
$GLOBALS['PMA_SQPdata_reserved_word']
|
240
|
+
);
|
241
|
+
$PMA_SQPdata_forbidden_word = array_flip(
|
242
|
+
$GLOBALS['PMA_SQPdata_forbidden_word']
|
243
|
+
);
|
244
|
+
$PMA_SQPdata_column_type = array_flip(
|
245
|
+
$GLOBALS['PMA_SQPdata_column_type']
|
246
|
+
);
|
247
|
+
}
|
248
|
+
|
249
|
+
$sql_array = array();
|
250
|
+
$sql_array['raw'] = $sql;
|
251
|
+
$count2 = 0;
|
252
|
+
$punct_queryend = ';';
|
253
|
+
$punct_qualifier = '.';
|
254
|
+
$punct_listsep = ',';
|
255
|
+
$bracket_list = '()[]{}';
|
256
|
+
$allpunct_list = '-,;:!?/.^~\*&%+<=>|';
|
257
|
+
$allpunct_list_pair = array(
|
258
|
+
'!=' => 1,
|
259
|
+
'&&' => 1,
|
260
|
+
':=' => 1,
|
261
|
+
'<<' => 1,
|
262
|
+
'<=' => 1,
|
263
|
+
'<=>' => 1,
|
264
|
+
'<>' => 1,
|
265
|
+
'>=' => 1,
|
266
|
+
'>>' => 1,
|
267
|
+
'||' => 1,
|
268
|
+
'==' => 1
|
269
|
+
);
|
270
|
+
$quote_list = '\'"`';
|
271
|
+
$arraysize = 0;
|
272
|
+
|
273
|
+
$this_was_space = false;
|
274
|
+
$this_was_bracket = false;
|
275
|
+
$this_was_punct = false;
|
276
|
+
$this_was_listsep = false;
|
277
|
+
$this_was_quote = false;
|
278
|
+
|
279
|
+
while ($count2 < $len) {
|
280
|
+
$c = /*overload*/mb_substr($sql, $count2, 1);
|
281
|
+
$count1 = $count2;
|
282
|
+
|
283
|
+
$previous_was_space = $this_was_space;
|
284
|
+
$this_was_space = false;
|
285
|
+
$previous_was_bracket = $this_was_bracket;
|
286
|
+
$this_was_bracket = false;
|
287
|
+
$previous_was_punct = $this_was_punct;
|
288
|
+
$this_was_punct = false;
|
289
|
+
$previous_was_listsep = $this_was_listsep;
|
290
|
+
$this_was_listsep = false;
|
291
|
+
$previous_was_quote = $this_was_quote;
|
292
|
+
$this_was_quote = false;
|
293
|
+
|
294
|
+
if (($c === "\n")) {
|
295
|
+
$this_was_space = true;
|
296
|
+
$count2++;
|
297
|
+
PMA_SQP_arrayAdd($sql_array, 'white_newline', "\n", $arraysize, $count2);
|
298
|
+
continue;
|
299
|
+
}
|
300
|
+
|
301
|
+
// Checks for white space
|
302
|
+
if ($pmaString->isSpace($c)) {
|
303
|
+
$this_was_space = true;
|
304
|
+
$count2++;
|
305
|
+
continue;
|
306
|
+
}
|
307
|
+
|
308
|
+
// Checks for comment lines.
|
309
|
+
// MySQL style #
|
310
|
+
// C style /* */
|
311
|
+
// ANSI style --
|
312
|
+
$next_c = /*overload*/mb_substr($sql, $count2 + 1, 1);
|
313
|
+
if (($c == '#')
|
314
|
+
|| (($count2 + 1 < $len) && ($c == '/') && ($next_c == '*'))
|
315
|
+
|| (($count2 + 2 == $len) && ($c == '-') && ($next_c == '-'))
|
316
|
+
|| (($count2 + 2 < $len) && ($c == '-') && ($next_c == '-')
|
317
|
+
&& ((/*overload*/mb_substr($sql, $count2 + 2, 1) <= ' ')))
|
318
|
+
) {
|
319
|
+
$count2++;
|
320
|
+
$pos = 0;
|
321
|
+
$type = 'bad';
|
322
|
+
switch ($c) {
|
323
|
+
case '#':
|
324
|
+
$type = 'mysql';
|
325
|
+
$pos = /*overload*/mb_strpos($sql, "\n", $count2);
|
326
|
+
break;
|
327
|
+
case '-':
|
328
|
+
$type = 'ansi';
|
329
|
+
$pos = /*overload*/mb_strpos($sql, "\n", $count2);
|
330
|
+
break;
|
331
|
+
case '/':
|
332
|
+
$type = 'c';
|
333
|
+
$pos = /*overload*/mb_strpos($sql, '*/', $count2);
|
334
|
+
$pos += 2;
|
335
|
+
break;
|
336
|
+
default:
|
337
|
+
break;
|
338
|
+
} // end switch
|
339
|
+
$count2 = ($pos < $count2) ? $len : $pos;
|
340
|
+
$str = /*overload*/mb_substr(
|
341
|
+
$sql, $count1, $count2 - $count1
|
342
|
+
);
|
343
|
+
PMA_SQP_arrayAdd(
|
344
|
+
$sql_array, 'comment_' . $type, $str, $arraysize, $count2
|
345
|
+
);
|
346
|
+
continue;
|
347
|
+
} // end if
|
348
|
+
|
349
|
+
// Checks for something inside quotation marks
|
350
|
+
if (/*overload*/mb_strpos($quote_list, $c) !== false) {
|
351
|
+
$startquotepos = $count2;
|
352
|
+
$quotetype = $c;
|
353
|
+
$count2++;
|
354
|
+
$pos = $count2;
|
355
|
+
do {
|
356
|
+
$oldpos = $pos;
|
357
|
+
$pos = /*overload*/mb_strpos(
|
358
|
+
' ' . $sql, $quotetype, $oldpos + 1
|
359
|
+
) - 1;
|
360
|
+
// ($pos === false)
|
361
|
+
if ($pos < 0) {
|
362
|
+
if ($c != '`') {
|
363
|
+
$debugstr = __('Unclosed quote')
|
364
|
+
. ' @ ' . $startquotepos . "\n"
|
365
|
+
. 'STR: ' . htmlspecialchars($quotetype);
|
366
|
+
PMA_SQP_throwError($debugstr, $sql);
|
367
|
+
return $sql_array;
|
368
|
+
}
|
369
|
+
|
370
|
+
/*
|
371
|
+
* Behave same as MySQL and accept end of query as end
|
372
|
+
* of backtick.
|
373
|
+
* I know this is sick, but MySQL behaves like this:
|
374
|
+
*
|
375
|
+
* SELECT * FROM `table
|
376
|
+
*
|
377
|
+
* is treated like
|
378
|
+
*
|
379
|
+
* SELECT * FROM `table`
|
380
|
+
*/
|
381
|
+
$pos_quote_separator = /*overload*/mb_strpos(
|
382
|
+
' ' . $sql, $GLOBALS['sql_delimiter'], $oldpos + 1
|
383
|
+
) - 1;
|
384
|
+
if ($pos_quote_separator < 0) {
|
385
|
+
$len += 1;
|
386
|
+
$sql .= '`';
|
387
|
+
$sql_array['raw'] .= '`';
|
388
|
+
$pos = $len;
|
389
|
+
} else {
|
390
|
+
$len += 1;
|
391
|
+
$sql = /*overload*/mb_substr(
|
392
|
+
$sql, 0, $pos_quote_separator
|
393
|
+
) . '`' . /*overload*/mb_substr(
|
394
|
+
$sql, $pos_quote_separator
|
395
|
+
);
|
396
|
+
$sql_array['raw'] = $sql;
|
397
|
+
$pos = $pos_quote_separator;
|
398
|
+
}
|
399
|
+
if (class_exists('PMA_Message')
|
400
|
+
&& $GLOBALS['is_ajax_request'] != true
|
401
|
+
) {
|
402
|
+
PMA_Message::notice(
|
403
|
+
__('Automatically appended backtick to the end of query!')
|
404
|
+
)->display();
|
405
|
+
}
|
406
|
+
}
|
407
|
+
|
408
|
+
// If the quote is the first character, it can't be
|
409
|
+
// escaped, so don't do the rest of the code
|
410
|
+
if ($pos == 0) {
|
411
|
+
break;
|
412
|
+
}
|
413
|
+
|
414
|
+
// Checks for MySQL escaping using a \
|
415
|
+
// And checks for ANSI escaping using the $quotetype character
|
416
|
+
if (($pos < $len)
|
417
|
+
&& $pmaString->charIsEscaped($sql, $pos)
|
418
|
+
&& $c != '`'
|
419
|
+
) {
|
420
|
+
$pos ++;
|
421
|
+
continue;
|
422
|
+
} elseif (($pos + 1 < $len)
|
423
|
+
&& (/*overload*/mb_substr($sql, $pos, 1) == $quotetype)
|
424
|
+
&& (/*overload*/mb_substr($sql, $pos + 1, 1) == $quotetype)
|
425
|
+
) {
|
426
|
+
$pos = $pos + 2;
|
427
|
+
continue;
|
428
|
+
} else {
|
429
|
+
break;
|
430
|
+
}
|
431
|
+
} while ($len > $pos); // end do
|
432
|
+
|
433
|
+
$count2 = $pos;
|
434
|
+
$count2++;
|
435
|
+
$type = 'quote_';
|
436
|
+
switch ($quotetype) {
|
437
|
+
case '\'':
|
438
|
+
$type .= 'single';
|
439
|
+
$this_was_quote = true;
|
440
|
+
break;
|
441
|
+
case '"':
|
442
|
+
$type .= 'double';
|
443
|
+
$this_was_quote = true;
|
444
|
+
break;
|
445
|
+
case '`':
|
446
|
+
$type .= 'backtick';
|
447
|
+
$this_was_quote = true;
|
448
|
+
break;
|
449
|
+
default:
|
450
|
+
break;
|
451
|
+
} // end switch
|
452
|
+
$data = /*overload*/mb_substr($sql, $count1, $count2 - $count1);
|
453
|
+
PMA_SQP_arrayAdd($sql_array, $type, $data, $arraysize, $count2);
|
454
|
+
continue;
|
455
|
+
}
|
456
|
+
|
457
|
+
// Checks for brackets
|
458
|
+
if (/*overload*/mb_strpos($bracket_list, $c) !== false) {
|
459
|
+
// All bracket tokens are only one item long
|
460
|
+
$this_was_bracket = true;
|
461
|
+
$count2++;
|
462
|
+
if (/*overload*/mb_strpos('([{', $c) !== false) {
|
463
|
+
$type_type = 'open';
|
464
|
+
} else {
|
465
|
+
$type_type = 'close';
|
466
|
+
}
|
467
|
+
|
468
|
+
if (/*overload*/mb_strpos('()', $c) !== false) {
|
469
|
+
$type_style = 'round';
|
470
|
+
} elseif (/*overload*/mb_strpos('[]', $c) !== false) {
|
471
|
+
$type_style = 'square';
|
472
|
+
} else {
|
473
|
+
$type_style = 'curly';
|
474
|
+
}
|
475
|
+
|
476
|
+
$type = 'punct_bracket_' . $type_type . '_' . $type_style;
|
477
|
+
PMA_SQP_arrayAdd($sql_array, $type, $c, $arraysize, $count2);
|
478
|
+
continue;
|
479
|
+
}
|
480
|
+
|
481
|
+
/* DEBUG
|
482
|
+
echo '<pre>1';
|
483
|
+
var_dump($pmaString->isSqlIdentifier($c, false));
|
484
|
+
var_dump($c == '@');
|
485
|
+
var_dump($c == '.');
|
486
|
+
var_dump(
|
487
|
+
$pmaString->isDigit(
|
488
|
+
$pmaString->substr($sql, $count2 + 1, 1)
|
489
|
+
)
|
490
|
+
);
|
491
|
+
var_dump($previous_was_space);
|
492
|
+
var_dump($previous_was_bracket);
|
493
|
+
var_dump($previous_was_listsep);
|
494
|
+
echo '</pre>';
|
495
|
+
*/
|
496
|
+
|
497
|
+
// Checks for identifier (alpha or numeric)
|
498
|
+
if ($pmaString->isSqlIdentifier($c, false)
|
499
|
+
|| $c == '@'
|
500
|
+
|| ($c == '.'
|
501
|
+
&& $pmaString->isDigit(/*overload*/mb_substr($sql, $count2 + 1, 1))
|
502
|
+
&& ($previous_was_space || $previous_was_bracket
|
503
|
+
|| $previous_was_listsep))
|
504
|
+
) {
|
505
|
+
/* DEBUG
|
506
|
+
echo $pmaString->substr($sql, $count2);
|
507
|
+
echo '<hr />';
|
508
|
+
*/
|
509
|
+
|
510
|
+
$count2++;
|
511
|
+
|
512
|
+
/**
|
513
|
+
* @todo a @ can also be present in expressions like
|
514
|
+
* FROM 'user'@'%' or TO 'user'@'%'
|
515
|
+
* in this case, the @ is wrongly marked as alpha_variable
|
516
|
+
*/
|
517
|
+
$is_identifier = $previous_was_punct;
|
518
|
+
$is_sql_variable = $c == '@' && ! $previous_was_quote;
|
519
|
+
$is_user = $c == '@' && $previous_was_quote;
|
520
|
+
$is_digit = (
|
521
|
+
!$is_identifier
|
522
|
+
&& !$is_sql_variable
|
523
|
+
&& $pmaString->isDigit($c)
|
524
|
+
);
|
525
|
+
$is_hex_digit = (
|
526
|
+
$is_digit
|
527
|
+
&& $c == '0'
|
528
|
+
&& $count2 < $len
|
529
|
+
&& /*overload*/mb_substr($sql, $count2, 1) == 'x'
|
530
|
+
);
|
531
|
+
$is_float_digit = $c == '.';
|
532
|
+
$is_float_digit_exponent = false;
|
533
|
+
|
534
|
+
/* DEBUG
|
535
|
+
echo '<pre>2';
|
536
|
+
var_dump($is_identifier);
|
537
|
+
var_dump($is_sql_variable);
|
538
|
+
var_dump($is_digit);
|
539
|
+
var_dump($is_float_digit);
|
540
|
+
echo '</pre>';
|
541
|
+
*/
|
542
|
+
|
543
|
+
// Fast skip is especially needed for huge BLOB data
|
544
|
+
if ($is_hex_digit) {
|
545
|
+
$count2++;
|
546
|
+
$pos = strspn($sql, '0123456789abcdefABCDEF', $count2);
|
547
|
+
if ($pos > $count2) {
|
548
|
+
$count2 = $pos;
|
549
|
+
}
|
550
|
+
unset($pos);
|
551
|
+
} elseif ($is_digit) {
|
552
|
+
$pos = strspn($sql, '0123456789', $count2);
|
553
|
+
if ($pos > $count2) {
|
554
|
+
$count2 = $pos;
|
555
|
+
}
|
556
|
+
unset($pos);
|
557
|
+
}
|
558
|
+
|
559
|
+
while (($count2 < $len)
|
560
|
+
&& $pmaString->isSqlIdentifier(
|
561
|
+
/*overload*/mb_substr($sql, $count2, 1),
|
562
|
+
($is_sql_variable || $is_digit)
|
563
|
+
)
|
564
|
+
) {
|
565
|
+
$c2 = /*overload*/mb_substr($sql, $count2, 1);
|
566
|
+
if ($is_sql_variable && ($c2 == '.')) {
|
567
|
+
$count2++;
|
568
|
+
continue;
|
569
|
+
}
|
570
|
+
if ($is_digit && (!$is_hex_digit) && ($c2 == '.')) {
|
571
|
+
$count2++;
|
572
|
+
if (!$is_float_digit) {
|
573
|
+
$is_float_digit = true;
|
574
|
+
continue;
|
575
|
+
} else {
|
576
|
+
$debugstr = __('Invalid Identifer')
|
577
|
+
. ' @ ' . ($count1+1) . "\n"
|
578
|
+
. 'STR: ' . htmlspecialchars(
|
579
|
+
/*overload*/mb_substr(
|
580
|
+
$sql, $count1, $count2 - $count1
|
581
|
+
)
|
582
|
+
);
|
583
|
+
PMA_SQP_throwError($debugstr, $sql);
|
584
|
+
return $sql_array;
|
585
|
+
}
|
586
|
+
}
|
587
|
+
if ($is_digit
|
588
|
+
&& (!$is_hex_digit)
|
589
|
+
&& (($c2 == 'e') || ($c2 == 'E'))
|
590
|
+
) {
|
591
|
+
if (!$is_float_digit_exponent) {
|
592
|
+
$is_float_digit_exponent = true;
|
593
|
+
$is_float_digit = true;
|
594
|
+
$count2++;
|
595
|
+
continue;
|
596
|
+
} else {
|
597
|
+
$is_digit = false;
|
598
|
+
$is_float_digit = false;
|
599
|
+
}
|
600
|
+
}
|
601
|
+
if (($is_hex_digit && $pmaString->isHexDigit($c2))
|
602
|
+
|| ($is_digit && $pmaString->isDigit($c2))
|
603
|
+
) {
|
604
|
+
$count2++;
|
605
|
+
continue;
|
606
|
+
} else {
|
607
|
+
$is_digit = false;
|
608
|
+
$is_hex_digit = false;
|
609
|
+
}
|
610
|
+
|
611
|
+
$count2++;
|
612
|
+
} // end while
|
613
|
+
|
614
|
+
$l = $count2 - $count1;
|
615
|
+
$str = /*overload*/mb_substr($sql, $count1, $l);
|
616
|
+
|
617
|
+
if ($is_digit || $is_float_digit || $is_hex_digit) {
|
618
|
+
$type = 'digit';
|
619
|
+
if ($is_float_digit) {
|
620
|
+
$type .= '_float';
|
621
|
+
} elseif ($is_hex_digit) {
|
622
|
+
$type .= '_hex';
|
623
|
+
} else {
|
624
|
+
$type .= '_integer';
|
625
|
+
}
|
626
|
+
} elseif ($is_user) {
|
627
|
+
$type = 'punct_user';
|
628
|
+
} elseif ($is_sql_variable != false) {
|
629
|
+
$type = 'alpha_variable';
|
630
|
+
} else {
|
631
|
+
$type = 'alpha';
|
632
|
+
} // end if... else....
|
633
|
+
PMA_SQP_arrayAdd($sql_array, $type, $str, $arraysize, $count2);
|
634
|
+
|
635
|
+
continue;
|
636
|
+
}
|
637
|
+
|
638
|
+
// Checks for punct
|
639
|
+
if (/*overload*/mb_strpos($allpunct_list, $c) !== false) {
|
640
|
+
while (($count2 < $len)
|
641
|
+
&& /*overload*/mb_strpos(
|
642
|
+
$allpunct_list, /*overload*/mb_substr(
|
643
|
+
$sql, $count2, 1
|
644
|
+
)
|
645
|
+
) !== false
|
646
|
+
) {
|
647
|
+
$count2++;
|
648
|
+
}
|
649
|
+
$l = $count2 - $count1;
|
650
|
+
if ($l == 1) {
|
651
|
+
$punct_data = $c;
|
652
|
+
} else {
|
653
|
+
$punct_data = /*overload*/mb_substr($sql, $count1, $l);
|
654
|
+
}
|
655
|
+
|
656
|
+
// Special case, sometimes, although two characters are
|
657
|
+
// adjacent directly, they ACTUALLY need to be separate
|
658
|
+
/* DEBUG
|
659
|
+
echo '<pre>';
|
660
|
+
var_dump($l);
|
661
|
+
var_dump($punct_data);
|
662
|
+
echo '</pre>';
|
663
|
+
*/
|
664
|
+
|
665
|
+
if ($l == 1) {
|
666
|
+
$t_suffix = '';
|
667
|
+
switch ($punct_data) {
|
668
|
+
case $punct_queryend:
|
669
|
+
$t_suffix = '_queryend';
|
670
|
+
break;
|
671
|
+
case $punct_qualifier:
|
672
|
+
$t_suffix = '_qualifier';
|
673
|
+
$this_was_punct = true;
|
674
|
+
break;
|
675
|
+
case $punct_listsep:
|
676
|
+
$this_was_listsep = true;
|
677
|
+
$t_suffix = '_listsep';
|
678
|
+
break;
|
679
|
+
default:
|
680
|
+
break;
|
681
|
+
}
|
682
|
+
PMA_SQP_arrayAdd(
|
683
|
+
$sql_array, 'punct' . $t_suffix, $punct_data, $arraysize, $count2
|
684
|
+
);
|
685
|
+
} elseif ($punct_data == $GLOBALS['sql_delimiter']
|
686
|
+
|| isset($allpunct_list_pair[$punct_data])
|
687
|
+
) {
|
688
|
+
// Ok, we have one of the valid combined punct expressions
|
689
|
+
PMA_SQP_arrayAdd(
|
690
|
+
$sql_array, 'punct', $punct_data, $arraysize, $count2
|
691
|
+
);
|
692
|
+
} else {
|
693
|
+
// Bad luck, lets split it up more
|
694
|
+
$first = $punct_data[0];
|
695
|
+
$last2 = $punct_data[$l - 2] . $punct_data[$l - 1];
|
696
|
+
$last = $punct_data[$l - 1];
|
697
|
+
if (($first == ',') || ($first == ';') || ($first == '.')
|
698
|
+
|| ($first == '*')
|
699
|
+
) {
|
700
|
+
$count2 = $count1 + 1;
|
701
|
+
$punct_data = $first;
|
702
|
+
} elseif (($last2 == '/*')
|
703
|
+
|| (($last2 == '--')
|
704
|
+
&& ($count2 == $len
|
705
|
+
|| /*overload*/mb_substr($sql, $count2, 1) <= ' '))
|
706
|
+
) {
|
707
|
+
$count2 -= 2;
|
708
|
+
$punct_data = /*overload*/mb_substr(
|
709
|
+
$sql, $count1, $count2 - $count1
|
710
|
+
);
|
711
|
+
} elseif (($last == '-') || ($last == '+') || ($last == '!')) {
|
712
|
+
$count2--;
|
713
|
+
$punct_data = /*overload*/mb_substr(
|
714
|
+
$sql, $count1, $count2 - $count1
|
715
|
+
);
|
716
|
+
} elseif ($last != '~') {
|
717
|
+
/**
|
718
|
+
* @todo for negation operator, split in 2 tokens ?
|
719
|
+
* "select x&~1 from t"
|
720
|
+
* becomes "select x & ~ 1 from t" ?
|
721
|
+
*/
|
722
|
+
$debugstr = __('Unknown Punctuation String')
|
723
|
+
. ' @ ' . ($count1+1) . "\n"
|
724
|
+
. 'STR: ' . htmlspecialchars($punct_data);
|
725
|
+
PMA_SQP_throwError($debugstr, $sql);
|
726
|
+
return $sql_array;
|
727
|
+
}
|
728
|
+
PMA_SQP_arrayAdd(
|
729
|
+
$sql_array, 'punct', $punct_data, $arraysize, $count2
|
730
|
+
);
|
731
|
+
continue;
|
732
|
+
} // end if... elseif... else
|
733
|
+
continue;
|
734
|
+
}
|
735
|
+
|
736
|
+
// DEBUG
|
737
|
+
$count2++;
|
738
|
+
|
739
|
+
$debugstr = 'C1 C2 LEN: ' . $count1 . ' ' . $count2 . ' ' . $len . "\n"
|
740
|
+
. 'STR: ' . /*overload*/mb_substr(
|
741
|
+
$sql, $count1, $count2 - $count1
|
742
|
+
) . "\n";
|
743
|
+
PMA_SQP_bug($debugstr, $sql);
|
744
|
+
return $sql_array;
|
745
|
+
|
746
|
+
} // end while ($count2 < $len)
|
747
|
+
|
748
|
+
/*
|
749
|
+
echo '<pre>';
|
750
|
+
print_r($sql_array);
|
751
|
+
echo '</pre>';
|
752
|
+
*/
|
753
|
+
|
754
|
+
if ($arraysize > 0) {
|
755
|
+
$t_next = $sql_array[0]['type'];
|
756
|
+
$t_prev = '';
|
757
|
+
$t_cur = '';
|
758
|
+
$d_next = $sql_array[0]['data'];
|
759
|
+
$d_prev = '';
|
760
|
+
$d_cur = '';
|
761
|
+
$d_next_upper = $t_next == 'alpha'
|
762
|
+
? /*overload*/mb_strtoupper($d_next)
|
763
|
+
: $d_next;
|
764
|
+
$d_prev_upper = '';
|
765
|
+
$d_cur_upper = '';
|
766
|
+
}
|
767
|
+
|
768
|
+
for ($i = 0; $i < $arraysize; $i++) {
|
769
|
+
$t_prev = $t_cur;
|
770
|
+
$t_cur = $t_next;
|
771
|
+
$d_prev = $d_cur;
|
772
|
+
$d_cur = $d_next;
|
773
|
+
$d_bef_prev_upper = $d_prev_upper;
|
774
|
+
$d_prev_upper = $d_cur_upper;
|
775
|
+
$d_cur_upper = $d_next_upper;
|
776
|
+
if (($i + 1) < $arraysize) {
|
777
|
+
$t_next = $sql_array[$i + 1]['type'];
|
778
|
+
$d_next = $sql_array[$i + 1]['data'];
|
779
|
+
$d_next_upper
|
780
|
+
= $t_next == 'alpha' ? /*overload*/mb_strtoupper($d_next) : $d_next;
|
781
|
+
} else {
|
782
|
+
$t_next = '';
|
783
|
+
$d_next = '';
|
784
|
+
$d_next_upper = '';
|
785
|
+
}
|
786
|
+
|
787
|
+
/* DEBUG
|
788
|
+
echo "[prev: <strong>".$d_prev."</strong> ".$t_prev."][cur: <strong>"
|
789
|
+
. $d_cur."</strong> ".$t_cur."][next: <strong>".$d_next."</strong> "
|
790
|
+
. $t_next."]<br />";
|
791
|
+
*/
|
792
|
+
|
793
|
+
if ($t_cur == 'alpha') {
|
794
|
+
$t_suffix = '_identifier';
|
795
|
+
// for example: `thebit` bit(8) NOT NULL DEFAULT b'0'
|
796
|
+
if ($t_prev == 'alpha' && $d_prev == 'DEFAULT' && $d_cur == 'b'
|
797
|
+
&& $t_next == 'quote_single'
|
798
|
+
) {
|
799
|
+
$t_suffix = '_bitfield_constant_introducer';
|
800
|
+
} elseif (($t_next == 'punct_qualifier')
|
801
|
+
|| ($t_prev == 'punct_qualifier')
|
802
|
+
) {
|
803
|
+
$t_suffix = '_identifier';
|
804
|
+
} elseif (($t_next == 'punct_bracket_open_round')
|
805
|
+
&& isset($PMA_SQPdata_function_name[$d_cur_upper])
|
806
|
+
) {
|
807
|
+
/**
|
808
|
+
* @todo 2005-10-16: in the case of a CREATE TABLE containing
|
809
|
+
* a TIMESTAMP, since TIMESTAMP() is also a function, it's
|
810
|
+
* found here and the token is wrongly marked as alpha_functionName.
|
811
|
+
* But we compensate for this when analysing for timestamp_not_null
|
812
|
+
* later in this script.
|
813
|
+
*
|
814
|
+
* Same applies to CHAR vs. CHAR() function.
|
815
|
+
*/
|
816
|
+
$t_suffix = '_functionName';
|
817
|
+
/* There are functions which might be as well column types */
|
818
|
+
} elseif (isset($PMA_SQPdata_column_type[$d_cur_upper])) {
|
819
|
+
$t_suffix = '_columnType';
|
820
|
+
|
821
|
+
/**
|
822
|
+
* Temporary fix for bugs #621357 and #2027720
|
823
|
+
*
|
824
|
+
* @todo FIX PROPERLY NEEDS OVERHAUL OF SQL TOKENIZER
|
825
|
+
*/
|
826
|
+
if (($d_cur_upper == 'SET' || $d_cur_upper == 'BINARY')
|
827
|
+
&& $t_next != 'punct_bracket_open_round'
|
828
|
+
) {
|
829
|
+
$t_suffix = '_reservedWord';
|
830
|
+
}
|
831
|
+
//END OF TEMPORARY FIX
|
832
|
+
|
833
|
+
// CHARACTER is a synonym for CHAR, but can also be meant as
|
834
|
+
// CHARACTER SET. In this case, we have a reserved word.
|
835
|
+
if ($d_cur_upper == 'CHARACTER' && $d_next_upper == 'SET') {
|
836
|
+
$t_suffix = '_reservedWord';
|
837
|
+
}
|
838
|
+
|
839
|
+
// experimental
|
840
|
+
// current is a column type, so previous must not be
|
841
|
+
// a reserved word but an identifier
|
842
|
+
// CREATE TABLE SG_Persons (first varchar(64))
|
843
|
+
|
844
|
+
//if ($sql_array[$i-1]['type'] =='alpha_reservedWord') {
|
845
|
+
// $sql_array[$i-1]['type'] = 'alpha_identifier';
|
846
|
+
//}
|
847
|
+
|
848
|
+
} elseif (isset($PMA_SQPdata_reserved_word[$d_cur_upper])) {
|
849
|
+
$t_suffix = '_reservedWord';
|
850
|
+
} elseif (isset($PMA_SQPdata_column_attrib[$d_cur_upper])) {
|
851
|
+
$t_suffix = '_columnAttrib';
|
852
|
+
// INNODB is a MySQL table type, but in "SHOW ENGINE INNODB STATUS",
|
853
|
+
// it should be regarded as a reserved word.
|
854
|
+
if ($d_cur_upper == 'INNODB'
|
855
|
+
&& $d_prev_upper == 'SHOW'
|
856
|
+
&& $d_next_upper == 'STATUS'
|
857
|
+
) {
|
858
|
+
$t_suffix = '_reservedWord';
|
859
|
+
}
|
860
|
+
|
861
|
+
if ($d_cur_upper == 'DEFAULT' && $d_next_upper == 'CHARACTER') {
|
862
|
+
$t_suffix = '_reservedWord';
|
863
|
+
}
|
864
|
+
// Binary as character set
|
865
|
+
if ($d_cur_upper == 'BINARY'
|
866
|
+
&& (($d_bef_prev_upper == 'CHARACTER' && $d_prev_upper == 'SET')
|
867
|
+
|| ($d_bef_prev_upper == 'SET' && $d_prev_upper == '=')
|
868
|
+
|| ($d_bef_prev_upper == 'CHARSET' && $d_prev_upper == '=')
|
869
|
+
|| $d_prev_upper == 'CHARSET')
|
870
|
+
&& in_array($d_cur, $mysql_charsets)
|
871
|
+
) {
|
872
|
+
$t_suffix = '_charset';
|
873
|
+
}
|
874
|
+
} elseif (in_array($d_cur, $mysql_charsets)
|
875
|
+
|| in_array($d_cur, $mysql_collations_flat)
|
876
|
+
|| ($d_cur{0} == '_'
|
877
|
+
&& in_array(/*overload*/mb_substr($d_cur, 1), $mysql_charsets))
|
878
|
+
) {
|
879
|
+
$t_suffix = '_charset';
|
880
|
+
} else {
|
881
|
+
// Do nothing
|
882
|
+
}
|
883
|
+
// check if present in the list of forbidden words
|
884
|
+
if ($t_suffix == '_reservedWord'
|
885
|
+
&& isset($PMA_SQPdata_forbidden_word[$d_cur_upper])
|
886
|
+
) {
|
887
|
+
$sql_array[$i]['forbidden'] = true;
|
888
|
+
} else {
|
889
|
+
$sql_array[$i]['forbidden'] = false;
|
890
|
+
}
|
891
|
+
$sql_array[$i]['type'] .= $t_suffix;
|
892
|
+
}
|
893
|
+
} // end for
|
894
|
+
|
895
|
+
// Stores the size of the array inside the array, as count() is a slow
|
896
|
+
// operation.
|
897
|
+
$sql_array['len'] = $arraysize;
|
898
|
+
|
899
|
+
// DEBUG echo 'After parsing<pre>'; print_r($sql_array); echo '</pre>';
|
900
|
+
// Sends the data back
|
901
|
+
return $sql_array;
|
902
|
+
} // end of the "PMA_SQP_parse()" function
|
903
|
+
|
904
|
+
/**
|
905
|
+
* Checks for token types being what we want...
|
906
|
+
*
|
907
|
+
* @param string $toCheck String of type that we have
|
908
|
+
* @param string $whatWeWant String of type that we want
|
909
|
+
*
|
910
|
+
* @return boolean result of check
|
911
|
+
*
|
912
|
+
* @access private
|
913
|
+
*/
|
914
|
+
function PMA_SQP_typeCheck($toCheck, $whatWeWant)
|
915
|
+
{
|
916
|
+
$typeSeparator = '_';
|
917
|
+
if (strcmp($whatWeWant, $toCheck) == 0) {
|
918
|
+
return true;
|
919
|
+
}
|
920
|
+
|
921
|
+
if (/*overload*/mb_strpos($whatWeWant, $typeSeparator) !== false) {
|
922
|
+
return false;
|
923
|
+
}
|
924
|
+
|
925
|
+
return strncmp(
|
926
|
+
$whatWeWant, $toCheck,
|
927
|
+
/*overload*/mb_strpos($toCheck, $typeSeparator)
|
928
|
+
) == 0;
|
929
|
+
}
|
930
|
+
|
931
|
+
|
932
|
+
/**
|
933
|
+
* Analyzes SQL queries
|
934
|
+
*
|
935
|
+
* @param array $arr The SQL queries
|
936
|
+
*
|
937
|
+
* @return array The analyzed SQL queries
|
938
|
+
*
|
939
|
+
* @access public
|
940
|
+
*/
|
941
|
+
function PMA_SQP_analyze($arr)
|
942
|
+
{
|
943
|
+
if ($arr == array() || ! isset($arr['len'])) {
|
944
|
+
return array();
|
945
|
+
}
|
946
|
+
$result = array();
|
947
|
+
$size = $arr['len'];
|
948
|
+
$subresult = array(
|
949
|
+
'querytype' => '',
|
950
|
+
// the whole stuff between SELECT and FROM , except DISTINCT
|
951
|
+
'select_expr_clause'=> '',
|
952
|
+
'position_of_first_select' => '', // the array index
|
953
|
+
'from_clause'=> '',
|
954
|
+
'group_by_clause'=> '',
|
955
|
+
'order_by_clause'=> '',
|
956
|
+
'having_clause' => '',
|
957
|
+
'limit_clause' => '',
|
958
|
+
'where_clause' => '',
|
959
|
+
'where_clause_identifiers' => array(),
|
960
|
+
'unsorted_query' => '',
|
961
|
+
'queryflags' => array(),
|
962
|
+
'select_expr' => array(),
|
963
|
+
'table_ref' => array(),
|
964
|
+
'foreign_keys' => array(),
|
965
|
+
'create_table_fields' => array()
|
966
|
+
);
|
967
|
+
$subresult_empty = $subresult;
|
968
|
+
$seek_queryend = false;
|
969
|
+
$seen_end_of_table_ref = false;
|
970
|
+
$number_of_brackets_in_extract = 0;
|
971
|
+
$number_of_brackets_in_group_concat = 0;
|
972
|
+
|
973
|
+
$number_of_brackets = 0;
|
974
|
+
$in_subquery = false;
|
975
|
+
$seen_subquery = false;
|
976
|
+
$seen_from = false;
|
977
|
+
|
978
|
+
// for SELECT EXTRACT(YEAR_MONTH FROM CURDATE())
|
979
|
+
// we must not use CURDATE as a table_ref
|
980
|
+
// so we track whether we are in the EXTRACT()
|
981
|
+
$in_extract = false;
|
982
|
+
|
983
|
+
// for GROUP_CONCAT(...)
|
984
|
+
$in_group_concat = false;
|
985
|
+
|
986
|
+
/* Description of analyzer results
|
987
|
+
*
|
988
|
+
* db, table, column, alias
|
989
|
+
* ------------------------
|
990
|
+
*
|
991
|
+
* Inside the $subresult array, we create ['select_expr'] and ['table_ref']
|
992
|
+
* arrays.
|
993
|
+
*
|
994
|
+
* The SELECT syntax (simplified) is
|
995
|
+
*
|
996
|
+
* SELECT
|
997
|
+
* select_expression,...
|
998
|
+
* [FROM [table_references]
|
999
|
+
*
|
1000
|
+
*
|
1001
|
+
* ['select_expr'] is filled with each expression, the key represents the
|
1002
|
+
* expression position in the list (0-based) (so we don't lose track of
|
1003
|
+
* multiple occurrences of the same column).
|
1004
|
+
*
|
1005
|
+
* ['table_ref'] is filled with each table ref, same thing for the key.
|
1006
|
+
*
|
1007
|
+
* I create all sub-values empty, even if they are
|
1008
|
+
* not present (for example no select_expression alias).
|
1009
|
+
*
|
1010
|
+
* There is a debug section at the end of loop #1, if you want to
|
1011
|
+
* see the exact contents of select_expr and table_ref
|
1012
|
+
*
|
1013
|
+
* queryflags
|
1014
|
+
* ----------
|
1015
|
+
*
|
1016
|
+
* In $subresult, array 'queryflags' is filled, according to what we
|
1017
|
+
* find in the query.
|
1018
|
+
*
|
1019
|
+
* Currently, those are generated:
|
1020
|
+
*
|
1021
|
+
* ['queryflags']['select_from'] = 1; if this is a real SELECT...FROM
|
1022
|
+
* ['queryflags']['drop_database'] = 1;if this is a DROP DATABASE
|
1023
|
+
* ['queryflags']['reload'] = 1; for the purpose of reloading the
|
1024
|
+
* navigation bar
|
1025
|
+
* ['queryflags']['distinct'] = 1; for a DISTINCT
|
1026
|
+
* ['queryflags']['union'] = 1; for a UNION
|
1027
|
+
* ['queryflags']['join'] = 1; for a JOIN
|
1028
|
+
* ['queryflags']['offset'] = 1; for the presence of OFFSET
|
1029
|
+
* ['queryflags']['procedure'] = 1; for the presence of PROCEDURE
|
1030
|
+
* ['queryflags']['is_explain'] = 1; for the presence of EXPLAIN
|
1031
|
+
* ['queryflags']['is_delete'] = 1; for the presence of DELETE
|
1032
|
+
* ['queryflags']['is_affected'] = 1; for the presence of UPDATE, DELETE
|
1033
|
+
* or INSERT|LOAD DATA|REPLACE
|
1034
|
+
* ['queryflags']['is_replace'] = 1; for the presence of REPLACE
|
1035
|
+
* ['queryflags']['is_insert'] = 1; for the presence of INSERT
|
1036
|
+
* ['queryflags']['is_maint'] = 1; for the presence of CHECK|ANALYZE
|
1037
|
+
* |REPAIR|OPTIMIZE TABLE
|
1038
|
+
* ['queryflags']['is_show'] = 1; for the presence of SHOW
|
1039
|
+
* ['queryflags']['is_analyse'] = 1; for the presence of PROCEDURE ANALYSE
|
1040
|
+
* ['queryflags']['is_export'] = 1; for the presence of INTO OUTFILE
|
1041
|
+
* ['queryflags']['is_group'] = 1; for the presence of GROUP BY|HAVING|
|
1042
|
+
* SELECT DISTINCT
|
1043
|
+
* ['queryflags']['is_func'] = 1; for the presence of SUM|AVG|STD|STDDEV
|
1044
|
+
* |MIN|MAX|BIT_OR|BIT_AND
|
1045
|
+
* ['queryflags']['is_count'] = 1; for the presence of SELECT COUNT
|
1046
|
+
* ['queryflags']['is_procedure'] = 1; for the presence of CALL
|
1047
|
+
* ['queryflags']['is_subquery'] = 1; contains a subquery
|
1048
|
+
*
|
1049
|
+
* query clauses
|
1050
|
+
* -------------
|
1051
|
+
*
|
1052
|
+
* The select is split in those clauses:
|
1053
|
+
* ['select_expr_clause']
|
1054
|
+
* ['from_clause']
|
1055
|
+
* ['group_by_clause']
|
1056
|
+
* ['order_by_clause']
|
1057
|
+
* ['having_clause']
|
1058
|
+
* ['limit_clause']
|
1059
|
+
* ['where_clause']
|
1060
|
+
*
|
1061
|
+
* The identifiers of the WHERE clause are put into the array
|
1062
|
+
* ['where_clause_identifier']
|
1063
|
+
*
|
1064
|
+
* For a SELECT, the whole query without the ORDER BY clause is put into
|
1065
|
+
* ['unsorted_query']
|
1066
|
+
*
|
1067
|
+
* foreign keys
|
1068
|
+
* ------------
|
1069
|
+
* The CREATE TABLE may contain FOREIGN KEY clauses, so they get
|
1070
|
+
* analyzed and ['foreign_keys'] is an array filled with
|
1071
|
+
* the constraint name, the index list,
|
1072
|
+
* the REFERENCES table name and REFERENCES index list,
|
1073
|
+
* and ON UPDATE | ON DELETE clauses
|
1074
|
+
*
|
1075
|
+
* position_of_first_select
|
1076
|
+
* ------------------------
|
1077
|
+
*
|
1078
|
+
* The array index of the first SELECT we find. Will be used to
|
1079
|
+
* insert a SQL_CALC_FOUND_ROWS.
|
1080
|
+
*
|
1081
|
+
* create_table_fields
|
1082
|
+
* -------------------
|
1083
|
+
*
|
1084
|
+
* Used to detect the DEFAULT CURRENT_TIMESTAMP and
|
1085
|
+
* ON UPDATE CURRENT_TIMESTAMP clauses of the CREATE TABLE query.
|
1086
|
+
* Also used to store the default value of the field.
|
1087
|
+
* An array, each element is the identifier name.
|
1088
|
+
* Note that for now, the timestamp_not_null element is created
|
1089
|
+
* even for non-TIMESTAMP fields.
|
1090
|
+
*
|
1091
|
+
* Sub-elements: ['type'] which contains the column type
|
1092
|
+
* optional (currently they are never false but can be absent):
|
1093
|
+
* ['default_current_timestamp'] boolean
|
1094
|
+
* ['on_update_current_timestamp'] boolean
|
1095
|
+
* ['timestamp_not_null'] boolean
|
1096
|
+
*
|
1097
|
+
* section_before_limit, section_after_limit
|
1098
|
+
* -----------------------------------------
|
1099
|
+
*
|
1100
|
+
* Marks the point of the query where we can insert a LIMIT clause;
|
1101
|
+
* so the section_before_limit will contain the left part before
|
1102
|
+
* a possible LIMIT clause
|
1103
|
+
*
|
1104
|
+
*
|
1105
|
+
* End of description of analyzer results
|
1106
|
+
*/
|
1107
|
+
|
1108
|
+
// must be sorted
|
1109
|
+
// TODO: current logic checks for only one word, so I put only the
|
1110
|
+
// first word of the reserved expressions that end a table ref;
|
1111
|
+
// maybe this is not ok (the first word might mean something else)
|
1112
|
+
// $words_ending_table_ref = array(
|
1113
|
+
// 'FOR UPDATE',
|
1114
|
+
// 'GROUP BY',
|
1115
|
+
// 'HAVING',
|
1116
|
+
// 'LIMIT',
|
1117
|
+
// 'LOCK IN SHARE MODE',
|
1118
|
+
// 'ORDER BY',
|
1119
|
+
// 'PROCEDURE',
|
1120
|
+
// 'UNION',
|
1121
|
+
// 'WHERE'
|
1122
|
+
// );
|
1123
|
+
$words_ending_table_ref = array(
|
1124
|
+
'FOR' => 1,
|
1125
|
+
'GROUP' => 1,
|
1126
|
+
'HAVING' => 1,
|
1127
|
+
'LIMIT' => 1,
|
1128
|
+
'LOCK' => 1,
|
1129
|
+
'ORDER' => 1,
|
1130
|
+
'PROCEDURE' => 1,
|
1131
|
+
'UNION' => 1,
|
1132
|
+
'WHERE' => 1
|
1133
|
+
);
|
1134
|
+
|
1135
|
+
$words_ending_clauses = array(
|
1136
|
+
'FOR' => 1,
|
1137
|
+
'LIMIT' => 1,
|
1138
|
+
'LOCK' => 1,
|
1139
|
+
'PROCEDURE' => 1,
|
1140
|
+
'UNION' => 1
|
1141
|
+
);
|
1142
|
+
|
1143
|
+
$supported_query_types = array(
|
1144
|
+
'SELECT' => 1,
|
1145
|
+
/*
|
1146
|
+
// Support for these additional query types will come later on.
|
1147
|
+
'DELETE' => 1,
|
1148
|
+
'INSERT' => 1,
|
1149
|
+
'REPLACE' => 1,
|
1150
|
+
'TRUNCATE' => 1,
|
1151
|
+
'UPDATE' => 1,
|
1152
|
+
'EXPLAIN' => 1,
|
1153
|
+
'DESCRIBE' => 1,
|
1154
|
+
'SHOW' => 1,
|
1155
|
+
'CREATE' => 1,
|
1156
|
+
'SET' => 1,
|
1157
|
+
'ALTER' => 1
|
1158
|
+
*/
|
1159
|
+
);
|
1160
|
+
|
1161
|
+
// loop #1 for each token: select_expr, table_ref for SELECT
|
1162
|
+
|
1163
|
+
for ($i = 0; $i < $size; $i++) {
|
1164
|
+
//DEBUG echo "Loop1 <strong>" . $arr[$i]['data']
|
1165
|
+
//. "</strong> (" . $arr[$i]['type'] . ")<br />";
|
1166
|
+
|
1167
|
+
// High speed seek for locating the end of the current query
|
1168
|
+
if ($seek_queryend == true) {
|
1169
|
+
if ($arr[$i]['type'] == 'punct_queryend') {
|
1170
|
+
$seek_queryend = false;
|
1171
|
+
} else {
|
1172
|
+
continue;
|
1173
|
+
} // end if (type == punct_queryend)
|
1174
|
+
} // end if ($seek_queryend)
|
1175
|
+
|
1176
|
+
/**
|
1177
|
+
* Note: do not split if this is a punct_queryend for the first and only
|
1178
|
+
* query
|
1179
|
+
* @todo when we find a UNION, should we split in another subresult?
|
1180
|
+
*/
|
1181
|
+
if ($arr[$i]['type'] == 'punct_queryend' && ($i + 1 != $size)) {
|
1182
|
+
$result[] = $subresult;
|
1183
|
+
$subresult = $subresult_empty;
|
1184
|
+
continue;
|
1185
|
+
} // end if (type == punct_queryend)
|
1186
|
+
|
1187
|
+
// ==============================================================
|
1188
|
+
if ($arr[$i]['type'] == 'punct_bracket_open_round') {
|
1189
|
+
$number_of_brackets++;
|
1190
|
+
if ($in_extract) {
|
1191
|
+
$number_of_brackets_in_extract++;
|
1192
|
+
}
|
1193
|
+
if ($in_group_concat) {
|
1194
|
+
$number_of_brackets_in_group_concat++;
|
1195
|
+
}
|
1196
|
+
}
|
1197
|
+
// ==============================================================
|
1198
|
+
if ($arr[$i]['type'] == 'punct_bracket_close_round') {
|
1199
|
+
$number_of_brackets--;
|
1200
|
+
if ($number_of_brackets == 0) {
|
1201
|
+
$in_subquery = false;
|
1202
|
+
}
|
1203
|
+
if ($in_extract) {
|
1204
|
+
$number_of_brackets_in_extract--;
|
1205
|
+
if ($number_of_brackets_in_extract == 0) {
|
1206
|
+
$in_extract = false;
|
1207
|
+
}
|
1208
|
+
}
|
1209
|
+
if ($in_group_concat) {
|
1210
|
+
$number_of_brackets_in_group_concat--;
|
1211
|
+
if ($number_of_brackets_in_group_concat == 0) {
|
1212
|
+
$in_group_concat = false;
|
1213
|
+
}
|
1214
|
+
}
|
1215
|
+
}
|
1216
|
+
|
1217
|
+
if ($in_subquery) {
|
1218
|
+
/**
|
1219
|
+
* skip the subquery to avoid setting
|
1220
|
+
* select_expr or table_ref with the contents
|
1221
|
+
* of this subquery; this is to avoid a bug when
|
1222
|
+
* trying to edit the results of
|
1223
|
+
* select * from child where not exists (select id from
|
1224
|
+
* parent where child.parent_id = parent.id);
|
1225
|
+
*/
|
1226
|
+
continue;
|
1227
|
+
}
|
1228
|
+
// ==============================================================
|
1229
|
+
if ($arr[$i]['type'] == 'alpha_functionName') {
|
1230
|
+
$upper_data = /*overload*/mb_strtoupper($arr[$i]['data']);
|
1231
|
+
if ($upper_data =='EXTRACT') {
|
1232
|
+
$in_extract = true;
|
1233
|
+
$number_of_brackets_in_extract = 0;
|
1234
|
+
}
|
1235
|
+
if ($upper_data =='GROUP_CONCAT') {
|
1236
|
+
$in_group_concat = true;
|
1237
|
+
$number_of_brackets_in_group_concat = 0;
|
1238
|
+
}
|
1239
|
+
}
|
1240
|
+
|
1241
|
+
// ==============================================================
|
1242
|
+
if ($arr[$i]['type'] == 'alpha_reservedWord') {
|
1243
|
+
// We don't know what type of query yet, so run this
|
1244
|
+
if ($subresult['querytype'] == '') {
|
1245
|
+
$subresult['querytype'] = /*overload*/mb_strtoupper(
|
1246
|
+
$arr[$i]['data']
|
1247
|
+
);
|
1248
|
+
} // end if (querytype was empty)
|
1249
|
+
|
1250
|
+
// Check if we support this type of query
|
1251
|
+
if (!isset($supported_query_types[$subresult['querytype']])) {
|
1252
|
+
// Skip ahead to the next one if we don't
|
1253
|
+
$seek_queryend = true;
|
1254
|
+
continue;
|
1255
|
+
} // end if (query not supported)
|
1256
|
+
|
1257
|
+
// upper once
|
1258
|
+
$upper_data = /*overload*/mb_strtoupper($arr[$i]['data']);
|
1259
|
+
/**
|
1260
|
+
* @todo reset for each query?
|
1261
|
+
*/
|
1262
|
+
|
1263
|
+
if ($upper_data == 'SELECT') {
|
1264
|
+
if ($number_of_brackets > 0) {
|
1265
|
+
$in_subquery = true;
|
1266
|
+
$seen_subquery = true;
|
1267
|
+
$subresult['queryflags']['is_subquery'] = 1;
|
1268
|
+
// this is a subquery so do not analyze inside it
|
1269
|
+
continue;
|
1270
|
+
}
|
1271
|
+
$seen_from = false;
|
1272
|
+
$previous_was_identifier = false;
|
1273
|
+
$current_select_expr = -1;
|
1274
|
+
$seen_end_of_table_ref = false;
|
1275
|
+
} // end if (data == SELECT)
|
1276
|
+
|
1277
|
+
if ($upper_data =='FROM' && !$in_extract) {
|
1278
|
+
$current_table_ref = -1;
|
1279
|
+
$seen_from = true;
|
1280
|
+
$previous_was_identifier = false;
|
1281
|
+
$save_table_ref = true;
|
1282
|
+
} // end if (data == FROM)
|
1283
|
+
|
1284
|
+
// here, do not 'continue' the loop, as we have more work for
|
1285
|
+
// reserved words below
|
1286
|
+
} // end if (type == alpha_reservedWord)
|
1287
|
+
|
1288
|
+
// ==============================
|
1289
|
+
if ($arr[$i]['type'] == 'quote_backtick'
|
1290
|
+
|| $arr[$i]['type'] == 'quote_double'
|
1291
|
+
|| $arr[$i]['type'] == 'quote_single'
|
1292
|
+
|| $arr[$i]['type'] == 'alpha_identifier'
|
1293
|
+
|| ($arr[$i]['type'] == 'alpha_reservedWord'
|
1294
|
+
&& $arr[$i]['forbidden'] == false)
|
1295
|
+
) {
|
1296
|
+
switch ($arr[$i]['type']) {
|
1297
|
+
case 'alpha_identifier':
|
1298
|
+
case 'alpha_reservedWord':
|
1299
|
+
/**
|
1300
|
+
* this is not a real reservedWord, because it's not
|
1301
|
+
* present in the list of forbidden words, for example
|
1302
|
+
* "storage" which can be used as an identifier
|
1303
|
+
*
|
1304
|
+
*/
|
1305
|
+
$identifier = $arr[$i]['data'];
|
1306
|
+
break;
|
1307
|
+
|
1308
|
+
case 'quote_backtick':
|
1309
|
+
case 'quote_double':
|
1310
|
+
case 'quote_single':
|
1311
|
+
$identifier = PMA_Util::unQuote($arr[$i]['data']);
|
1312
|
+
break;
|
1313
|
+
} // end switch
|
1314
|
+
|
1315
|
+
if ($subresult['querytype'] == 'SELECT'
|
1316
|
+
&& ! $in_group_concat
|
1317
|
+
&& ! ($seen_subquery
|
1318
|
+
&& $arr[$i - 1]['type'] == 'punct_bracket_close_round')
|
1319
|
+
) {
|
1320
|
+
if (!$seen_from) {
|
1321
|
+
if ($previous_was_identifier && isset($chain)) {
|
1322
|
+
// found alias for this select_expr, save it
|
1323
|
+
// but only if we got something in $chain
|
1324
|
+
// (for example, SELECT COUNT(*) AS cnt
|
1325
|
+
// puts nothing in $chain, so we avoid
|
1326
|
+
// setting the alias)
|
1327
|
+
$alias_for_select_expr = $identifier;
|
1328
|
+
} else {
|
1329
|
+
if (! isset($chain)) {
|
1330
|
+
$chain = array();
|
1331
|
+
}
|
1332
|
+
$chain[] = $identifier;
|
1333
|
+
$previous_was_identifier = true;
|
1334
|
+
|
1335
|
+
} // end if !$previous_was_identifier
|
1336
|
+
} else {
|
1337
|
+
// ($seen_from)
|
1338
|
+
if ($save_table_ref && !$seen_end_of_table_ref) {
|
1339
|
+
if ($previous_was_identifier) {
|
1340
|
+
// found alias for table ref
|
1341
|
+
// save it for later
|
1342
|
+
$alias_for_table_ref = $identifier;
|
1343
|
+
} else {
|
1344
|
+
if (! isset($chain)) {
|
1345
|
+
$chain = array();
|
1346
|
+
}
|
1347
|
+
$chain[] = $identifier;
|
1348
|
+
$previous_was_identifier = true;
|
1349
|
+
|
1350
|
+
} // end if ($previous_was_identifier)
|
1351
|
+
} // end if ($save_table_ref &&!$seen_end_of_table_ref)
|
1352
|
+
} // end if (!$seen_from)
|
1353
|
+
} // end if (querytype SELECT)
|
1354
|
+
} // end if (quote_backtick or double quote or alpha_identifier)
|
1355
|
+
|
1356
|
+
// ===================================
|
1357
|
+
if ($arr[$i]['type'] == 'punct_qualifier') {
|
1358
|
+
// to be able to detect an identifier following another
|
1359
|
+
$previous_was_identifier = false;
|
1360
|
+
continue;
|
1361
|
+
} // end if (punct_qualifier)
|
1362
|
+
|
1363
|
+
/**
|
1364
|
+
* @todo check if 3 identifiers following one another -> error
|
1365
|
+
*/
|
1366
|
+
|
1367
|
+
// s a v e a s e l e c t e x p r
|
1368
|
+
// finding a list separator or FROM
|
1369
|
+
// means that we must save the current chain of identifiers
|
1370
|
+
// into a select expression
|
1371
|
+
|
1372
|
+
// for now, we only save a select expression if it contains
|
1373
|
+
// at least one identifier, as we are interested in checking
|
1374
|
+
// the columns and table names, so in "select * from persons",
|
1375
|
+
// the "*" is not saved
|
1376
|
+
|
1377
|
+
if (isset($chain) && !$seen_end_of_table_ref
|
1378
|
+
&& ((!$seen_from && $arr[$i]['type'] == 'punct_listsep')
|
1379
|
+
|| ($arr[$i]['type'] == 'alpha_reservedWord' && $upper_data == 'FROM'))
|
1380
|
+
) {
|
1381
|
+
$size_chain = count($chain);
|
1382
|
+
$current_select_expr++;
|
1383
|
+
$subresult['select_expr'][$current_select_expr] = array(
|
1384
|
+
'expr' => '',
|
1385
|
+
'alias' => '',
|
1386
|
+
'db' => '',
|
1387
|
+
'table_name' => '',
|
1388
|
+
'table_true_name' => '',
|
1389
|
+
'column' => ''
|
1390
|
+
);
|
1391
|
+
|
1392
|
+
if (isset($alias_for_select_expr)
|
1393
|
+
&& /*overload*/mb_strlen($alias_for_select_expr)
|
1394
|
+
) {
|
1395
|
+
// we had found an alias for this select expression
|
1396
|
+
$subresult['select_expr'][$current_select_expr]['alias']
|
1397
|
+
= $alias_for_select_expr;
|
1398
|
+
unset($alias_for_select_expr);
|
1399
|
+
}
|
1400
|
+
// there is at least a column
|
1401
|
+
$subresult['select_expr'][$current_select_expr]['column']
|
1402
|
+
= $chain[$size_chain - 1];
|
1403
|
+
$subresult['select_expr'][$current_select_expr]['expr']
|
1404
|
+
= $chain[$size_chain - 1];
|
1405
|
+
|
1406
|
+
// maybe a table
|
1407
|
+
if ($size_chain > 1) {
|
1408
|
+
$subresult['select_expr'][$current_select_expr]['table_name']
|
1409
|
+
= $chain[$size_chain - 2];
|
1410
|
+
// we assume for now that this is also the true name
|
1411
|
+
$subresult['select_expr'][$current_select_expr]['table_true_name']
|
1412
|
+
= $chain[$size_chain - 2];
|
1413
|
+
$subresult['select_expr'][$current_select_expr]['expr']
|
1414
|
+
= $subresult['select_expr'][$current_select_expr]['table_name']
|
1415
|
+
. '.' . $subresult['select_expr'][$current_select_expr]['expr'];
|
1416
|
+
} // end if ($size_chain > 1)
|
1417
|
+
|
1418
|
+
// maybe a db
|
1419
|
+
if ($size_chain > 2) {
|
1420
|
+
$subresult['select_expr'][$current_select_expr]['db']
|
1421
|
+
= $chain[$size_chain - 3];
|
1422
|
+
$subresult['select_expr'][$current_select_expr]['expr']
|
1423
|
+
= $subresult['select_expr'][$current_select_expr]['db']
|
1424
|
+
. '.' . $subresult['select_expr'][$current_select_expr]['expr'];
|
1425
|
+
} // end if ($size_chain > 2)
|
1426
|
+
unset($chain);
|
1427
|
+
|
1428
|
+
/**
|
1429
|
+
* @todo explain this:
|
1430
|
+
*/
|
1431
|
+
if (($arr[$i]['type'] == 'alpha_reservedWord')
|
1432
|
+
&& ($upper_data != 'FROM')
|
1433
|
+
) {
|
1434
|
+
$previous_was_identifier = true;
|
1435
|
+
}
|
1436
|
+
|
1437
|
+
} // end if (save a select expr)
|
1438
|
+
|
1439
|
+
//======================================
|
1440
|
+
// s a v e a t a b l e r e f
|
1441
|
+
//======================================
|
1442
|
+
|
1443
|
+
// maybe we just saw the end of table refs
|
1444
|
+
// but the last table ref has to be saved
|
1445
|
+
// or we are at the last token
|
1446
|
+
// or we just got a reserved word
|
1447
|
+
/**
|
1448
|
+
* @todo there could be another query after this one
|
1449
|
+
*/
|
1450
|
+
|
1451
|
+
if (isset($chain) && $seen_from && $save_table_ref
|
1452
|
+
&& ($arr[$i]['type'] == 'punct_listsep'
|
1453
|
+
|| ($arr[$i]['type'] == 'alpha_reservedWord' && $upper_data != "AS")
|
1454
|
+
|| $seen_end_of_table_ref
|
1455
|
+
|| $i == $size - 1)
|
1456
|
+
) {
|
1457
|
+
|
1458
|
+
$size_chain = count($chain);
|
1459
|
+
$current_table_ref++;
|
1460
|
+
$subresult['table_ref'][$current_table_ref] = array(
|
1461
|
+
'expr' => '',
|
1462
|
+
'db' => '',
|
1463
|
+
'table_name' => '',
|
1464
|
+
'table_alias' => '',
|
1465
|
+
'table_true_name' => ''
|
1466
|
+
);
|
1467
|
+
if (isset($alias_for_table_ref)
|
1468
|
+
&& /*overload*/mb_strlen($alias_for_table_ref)
|
1469
|
+
) {
|
1470
|
+
$subresult['table_ref'][$current_table_ref]['table_alias']
|
1471
|
+
= $alias_for_table_ref;
|
1472
|
+
unset($alias_for_table_ref);
|
1473
|
+
}
|
1474
|
+
$subresult['table_ref'][$current_table_ref]['table_name']
|
1475
|
+
= $chain[$size_chain - 1];
|
1476
|
+
// we assume for now that this is also the true name
|
1477
|
+
$subresult['table_ref'][$current_table_ref]['table_true_name']
|
1478
|
+
= $chain[$size_chain - 1];
|
1479
|
+
$subresult['table_ref'][$current_table_ref]['expr']
|
1480
|
+
= $subresult['table_ref'][$current_table_ref]['table_name'];
|
1481
|
+
// maybe a db
|
1482
|
+
if ($size_chain > 1) {
|
1483
|
+
$subresult['table_ref'][$current_table_ref]['db']
|
1484
|
+
= $chain[$size_chain - 2];
|
1485
|
+
$subresult['table_ref'][$current_table_ref]['expr']
|
1486
|
+
= $subresult['table_ref'][$current_table_ref]['db']
|
1487
|
+
. '.' . $subresult['table_ref'][$current_table_ref]['expr'];
|
1488
|
+
} // end if ($size_chain > 1)
|
1489
|
+
|
1490
|
+
// add the table alias into the whole expression
|
1491
|
+
$subresult['table_ref'][$current_table_ref]['expr']
|
1492
|
+
.= ' ' . $subresult['table_ref'][$current_table_ref]['table_alias'];
|
1493
|
+
|
1494
|
+
unset($chain);
|
1495
|
+
$previous_was_identifier = true;
|
1496
|
+
//continue;
|
1497
|
+
|
1498
|
+
} // end if (save a table ref)
|
1499
|
+
|
1500
|
+
// when we have found all table refs,
|
1501
|
+
// for each table_ref alias, put the true name of the table
|
1502
|
+
// in the corresponding select expressions
|
1503
|
+
|
1504
|
+
if (isset($current_table_ref)
|
1505
|
+
&& ($seen_end_of_table_ref || $i == $size-1)
|
1506
|
+
&& $subresult != $subresult_empty
|
1507
|
+
) {
|
1508
|
+
for ($tr=0; $tr <= $current_table_ref; $tr++) {
|
1509
|
+
$alias = $subresult['table_ref'][$tr]['table_alias'];
|
1510
|
+
$truename = $subresult['table_ref'][$tr]['table_true_name'];
|
1511
|
+
for ($se=0; $se <= $current_select_expr; $se++) {
|
1512
|
+
if (isset($alias)
|
1513
|
+
&& /*overload*/mb_strlen($alias)
|
1514
|
+
&& $subresult['select_expr'][$se]['table_true_name'] == $alias
|
1515
|
+
) {
|
1516
|
+
$subresult['select_expr'][$se]['table_true_name']
|
1517
|
+
= $truename;
|
1518
|
+
} // end if (found the alias)
|
1519
|
+
} // end for (select expressions)
|
1520
|
+
|
1521
|
+
} // end for (table refs)
|
1522
|
+
} // end if (set the true names)
|
1523
|
+
|
1524
|
+
// e n d i n g l o o p #1
|
1525
|
+
// set the $previous_was_identifier to false if the current
|
1526
|
+
// token is not an identifier
|
1527
|
+
if (($arr[$i]['type'] != 'alpha_identifier')
|
1528
|
+
&& ($arr[$i]['type'] != 'quote_double')
|
1529
|
+
&& ($arr[$i]['type'] != 'quote_single')
|
1530
|
+
&& ($arr[$i]['type'] != 'quote_backtick')
|
1531
|
+
) {
|
1532
|
+
$previous_was_identifier = false;
|
1533
|
+
} // end if
|
1534
|
+
|
1535
|
+
// however, if we are on AS, we must keep the $previous_was_identifier
|
1536
|
+
if (($arr[$i]['type'] == 'alpha_reservedWord')
|
1537
|
+
&& ($upper_data == 'AS')
|
1538
|
+
) {
|
1539
|
+
$previous_was_identifier = true;
|
1540
|
+
}
|
1541
|
+
|
1542
|
+
if (($arr[$i]['type'] == 'alpha_reservedWord')
|
1543
|
+
&& ($upper_data =='ON' || $upper_data =='USING')
|
1544
|
+
) {
|
1545
|
+
$save_table_ref = false;
|
1546
|
+
} // end if (data == ON)
|
1547
|
+
|
1548
|
+
if (($arr[$i]['type'] == 'alpha_reservedWord')
|
1549
|
+
&& ($upper_data =='JOIN' || $upper_data =='FROM')
|
1550
|
+
) {
|
1551
|
+
$save_table_ref = true;
|
1552
|
+
} // end if (data == JOIN)
|
1553
|
+
|
1554
|
+
/**
|
1555
|
+
* no need to check the end of table ref if we already did
|
1556
|
+
*
|
1557
|
+
* @todo maybe add "&& $seen_from"
|
1558
|
+
*/
|
1559
|
+
if (!$seen_end_of_table_ref) {
|
1560
|
+
// if this is the last token, it implies that we have
|
1561
|
+
// seen the end of table references
|
1562
|
+
// Check for the end of table references
|
1563
|
+
//
|
1564
|
+
// Note: if we are analyzing a GROUP_CONCAT clause,
|
1565
|
+
// we might find a word that seems to indicate that
|
1566
|
+
// we have found the end of table refs (like ORDER)
|
1567
|
+
// but it's a modifier of the GROUP_CONCAT so
|
1568
|
+
// it's not the real end of table refs
|
1569
|
+
if (($i == $size-1)
|
1570
|
+
|| ($arr[$i]['type'] == 'alpha_reservedWord'
|
1571
|
+
&& !$in_group_concat
|
1572
|
+
&& isset($words_ending_table_ref[$upper_data]))
|
1573
|
+
) {
|
1574
|
+
$seen_end_of_table_ref = true;
|
1575
|
+
// to be able to save the last table ref, but do not
|
1576
|
+
// set it true if we found a word like "ON" that has
|
1577
|
+
// already set it to false
|
1578
|
+
if (isset($save_table_ref) && $save_table_ref != false) {
|
1579
|
+
$save_table_ref = true;
|
1580
|
+
} //end if
|
1581
|
+
|
1582
|
+
} // end if (check for end of table ref)
|
1583
|
+
} //end if (!$seen_end_of_table_ref)
|
1584
|
+
|
1585
|
+
if ($seen_end_of_table_ref) {
|
1586
|
+
$save_table_ref = false;
|
1587
|
+
} // end if
|
1588
|
+
|
1589
|
+
} // end for $i (loop #1)
|
1590
|
+
|
1591
|
+
//DEBUG
|
1592
|
+
/*
|
1593
|
+
if (isset($current_select_expr)) {
|
1594
|
+
for ($trace=0; $trace<=$current_select_expr; $trace++) {
|
1595
|
+
echo "<br />";
|
1596
|
+
reset ($subresult['select_expr'][$trace]);
|
1597
|
+
while (list ($key, $val) = each ($subresult['select_expr'][$trace]))
|
1598
|
+
echo "sel expr $trace $key => $val<br />\n";
|
1599
|
+
}
|
1600
|
+
}
|
1601
|
+
|
1602
|
+
if (isset($current_table_ref)) {
|
1603
|
+
echo "current_table_ref = " . $current_table_ref . "<br>";
|
1604
|
+
for ($trace=0; $trace<=$current_table_ref; $trace++) {
|
1605
|
+
|
1606
|
+
echo "<br />";
|
1607
|
+
reset ($subresult['table_ref'][$trace]);
|
1608
|
+
while (list ($key, $val) = each ($subresult['table_ref'][$trace]))
|
1609
|
+
echo "table ref $trace $key => $val<br />\n";
|
1610
|
+
}
|
1611
|
+
}
|
1612
|
+
*/
|
1613
|
+
// -------------------------------------------------------
|
1614
|
+
|
1615
|
+
// loop #2: - queryflags
|
1616
|
+
// - querytype (for queries != 'SELECT')
|
1617
|
+
// - section_before_limit, section_after_limit
|
1618
|
+
//
|
1619
|
+
// we will also need this queryflag in loop 2
|
1620
|
+
// so set it here
|
1621
|
+
if (isset($current_table_ref) && $current_table_ref > -1) {
|
1622
|
+
$subresult['queryflags']['select_from'] = 1;
|
1623
|
+
}
|
1624
|
+
|
1625
|
+
$section_before_limit = '';
|
1626
|
+
$section_after_limit = ''; // truly the section after the limit clause
|
1627
|
+
$seen_reserved_word = false;
|
1628
|
+
$seen_group = false;
|
1629
|
+
$seen_order = false;
|
1630
|
+
$seen_order_by = false;
|
1631
|
+
$in_group_by = false; // true when we are inside the GROUP BY clause
|
1632
|
+
$in_order_by = false; // true when we are inside the ORDER BY clause
|
1633
|
+
$in_having = false; // true when we are inside the HAVING clause
|
1634
|
+
$in_select_expr = false; // true when we are inside the select expr clause
|
1635
|
+
$in_where = false; // true when we are inside the WHERE clause
|
1636
|
+
$seen_limit = false; // true if we have seen a LIMIT clause
|
1637
|
+
$in_limit = false; // true when we are inside the LIMIT clause
|
1638
|
+
$after_limit = false; // true when we are after the LIMIT clause
|
1639
|
+
$in_from = false; // true when we are in the FROM clause
|
1640
|
+
$in_group_concat = false;
|
1641
|
+
$first_reserved_word = '';
|
1642
|
+
$current_identifier = '';
|
1643
|
+
$unsorted_query = $arr['raw']; // in case there is no ORDER BY
|
1644
|
+
$number_of_brackets = 0;
|
1645
|
+
$in_subquery = false;
|
1646
|
+
|
1647
|
+
$arrayFunctions = array(
|
1648
|
+
"SUM","AVG","STD","STDDEV","MIN","MAX","BIT_OR","BIT_AND"
|
1649
|
+
);
|
1650
|
+
$arrayKeyWords = array("BY", "HAVING", "SELECT");
|
1651
|
+
|
1652
|
+
for ($i = 0; $i < $size; $i++) {
|
1653
|
+
//DEBUG echo "Loop2 <strong>" . $arr[$i]['data']
|
1654
|
+
//. "</strong> (" . $arr[$i]['type'] . ")<br />";
|
1655
|
+
|
1656
|
+
if ($arr[$i]['type'] == 'punct_bracket_open_round') {
|
1657
|
+
$number_of_brackets++;
|
1658
|
+
}
|
1659
|
+
|
1660
|
+
if ($arr[$i]['type'] == 'punct_bracket_close_round') {
|
1661
|
+
$number_of_brackets--;
|
1662
|
+
if ($number_of_brackets == 0) {
|
1663
|
+
$in_subquery = false;
|
1664
|
+
}
|
1665
|
+
}
|
1666
|
+
|
1667
|
+
if ($arr[$i]['type'] == 'alpha_reservedWord') {
|
1668
|
+
$upper_data = /*overload*/mb_strtoupper($arr[$i]['data']);
|
1669
|
+
|
1670
|
+
if ($upper_data == 'SELECT' && $number_of_brackets > 0) {
|
1671
|
+
$in_subquery = true;
|
1672
|
+
}
|
1673
|
+
|
1674
|
+
if (!$seen_reserved_word) {
|
1675
|
+
$first_reserved_word = $upper_data;
|
1676
|
+
$subresult['querytype'] = $upper_data;
|
1677
|
+
$seen_reserved_word = true;
|
1678
|
+
|
1679
|
+
if ($first_reserved_word === 'SELECT') {
|
1680
|
+
$position_of_first_select = $i;
|
1681
|
+
} elseif ($first_reserved_word === 'EXPLAIN') {
|
1682
|
+
$subresult['queryflags']['is_explain'] = 1;
|
1683
|
+
} elseif ($first_reserved_word === 'DELETE') {
|
1684
|
+
$subresult['queryflags']['is_delete'] = 1;
|
1685
|
+
$subresult['queryflags']['is_affected'] = 1;
|
1686
|
+
} elseif ($first_reserved_word === 'UPDATE') {
|
1687
|
+
$subresult['queryflags']['is_affected'] = 1;
|
1688
|
+
} elseif ($first_reserved_word === 'REPLACE') {
|
1689
|
+
$subresult['queryflags']['is_replace'] = 1;
|
1690
|
+
$subresult['queryflags']['is_affected'] = 1;
|
1691
|
+
} elseif ($first_reserved_word === 'INSERT') {
|
1692
|
+
$subresult['queryflags']['is_insert'] = 1;
|
1693
|
+
$subresult['queryflags']['is_affected'] = 1;
|
1694
|
+
} elseif ($first_reserved_word === 'SHOW') {
|
1695
|
+
$subresult['queryflags']['is_show'] = 1;
|
1696
|
+
}
|
1697
|
+
|
1698
|
+
} else {
|
1699
|
+
// for the presence of DROP DATABASE
|
1700
|
+
if ($first_reserved_word == 'DROP' && $upper_data == 'DATABASE') {
|
1701
|
+
$subresult['queryflags']['drop_database'] = 1;
|
1702
|
+
}
|
1703
|
+
// A table has to be created, renamed, dropped -> navi panel
|
1704
|
+
// should be reloaded
|
1705
|
+
$keywords1 = array('CREATE', 'ALTER', 'DROP');
|
1706
|
+
$keywords2 = array('VIEW', 'TABLE', 'DATABASE', 'SCHEMA');
|
1707
|
+
if (in_array($first_reserved_word, $keywords1)
|
1708
|
+
&& in_array($upper_data, $keywords2)
|
1709
|
+
) {
|
1710
|
+
$subresult['queryflags']['reload'] = 1;
|
1711
|
+
}
|
1712
|
+
// for the presence of CHECK|ANALYZE|REPAIR|OPTIMIZE TABLE
|
1713
|
+
$keywords = array(
|
1714
|
+
'CHECK', 'ANALYZE', 'REPAIR', 'OPTIMIZE'
|
1715
|
+
);
|
1716
|
+
if (in_array($first_reserved_word, $keywords)
|
1717
|
+
&& $upper_data == 'TABLE'
|
1718
|
+
) {
|
1719
|
+
$subresult['queryflags']['is_maint'] = 1;
|
1720
|
+
}
|
1721
|
+
}
|
1722
|
+
|
1723
|
+
if ($upper_data == 'LIMIT' && ! $in_subquery) {
|
1724
|
+
$section_before_limit = /*overload*/mb_substr(
|
1725
|
+
$arr['raw'], 0, $arr[$i]['pos'] - 5
|
1726
|
+
);
|
1727
|
+
$in_limit = true;
|
1728
|
+
$seen_limit = true;
|
1729
|
+
$limit_clause = '';
|
1730
|
+
$in_order_by = false; // @todo maybe others to set false
|
1731
|
+
}
|
1732
|
+
|
1733
|
+
if ($upper_data == 'PROCEDURE') {
|
1734
|
+
$subresult['queryflags']['procedure'] = 1;
|
1735
|
+
$in_limit = false;
|
1736
|
+
$after_limit = true;
|
1737
|
+
|
1738
|
+
// for the presence of PROCEDURE ANALYSE
|
1739
|
+
if (isset($subresult['queryflags']['select_from'])
|
1740
|
+
&& $subresult['queryflags']['select_from'] == 1
|
1741
|
+
&& ($i + 1) < $size
|
1742
|
+
&& $arr[$i + 1]['type'] == 'alpha_reservedWord'
|
1743
|
+
&& /*overload*/mb_strtoupper($arr[$i + 1]['data']) == 'ANALYSE'
|
1744
|
+
) {
|
1745
|
+
$subresult['queryflags']['is_analyse'] = 1;
|
1746
|
+
}
|
1747
|
+
}
|
1748
|
+
|
1749
|
+
// for the presence of INTO OUTFILE
|
1750
|
+
if ($upper_data == 'INTO'
|
1751
|
+
&& isset($subresult['queryflags']['select_from'])
|
1752
|
+
&& $subresult['queryflags']['select_from'] == 1
|
1753
|
+
&& ($i + 1) < $size
|
1754
|
+
&& $arr[$i + 1]['type'] == 'alpha_reservedWord'
|
1755
|
+
&& /*overload*/mb_strtoupper($arr[$i + 1]['data']) == 'OUTFILE'
|
1756
|
+
) {
|
1757
|
+
$subresult['queryflags']['is_export'] = 1;
|
1758
|
+
}
|
1759
|
+
/**
|
1760
|
+
* @todo set also to false if we find FOR UPDATE or LOCK IN SHARE MODE
|
1761
|
+
*/
|
1762
|
+
if ($upper_data == 'SELECT') {
|
1763
|
+
$in_select_expr = true;
|
1764
|
+
$select_expr_clause = '';
|
1765
|
+
|
1766
|
+
// for the presence of SELECT COUNT
|
1767
|
+
if (isset($subresult['queryflags']['select_from'])
|
1768
|
+
&& $subresult['queryflags']['select_from'] == 1
|
1769
|
+
&& !isset($subresult['queryflags']['is_group'])
|
1770
|
+
&& ($i + 1) < $size
|
1771
|
+
&& $arr[$i + 1]['type'] == 'alpha_functionName'
|
1772
|
+
&& /*overload*/mb_strtoupper($arr[$i + 1]['data']) == 'COUNT'
|
1773
|
+
) {
|
1774
|
+
$subresult['queryflags']['is_count'] = 1;
|
1775
|
+
}
|
1776
|
+
}
|
1777
|
+
|
1778
|
+
if ($upper_data == 'DISTINCT' && !$in_group_concat) {
|
1779
|
+
$subresult['queryflags']['distinct'] = 1;
|
1780
|
+
}
|
1781
|
+
|
1782
|
+
if ($upper_data == 'UNION') {
|
1783
|
+
$subresult['queryflags']['union'] = 1;
|
1784
|
+
}
|
1785
|
+
|
1786
|
+
if ($upper_data == 'JOIN') {
|
1787
|
+
$subresult['queryflags']['join'] = 1;
|
1788
|
+
}
|
1789
|
+
|
1790
|
+
if ($upper_data == 'OFFSET') {
|
1791
|
+
$subresult['queryflags']['offset'] = 1;
|
1792
|
+
}
|
1793
|
+
|
1794
|
+
// for the presence of CALL
|
1795
|
+
if ($upper_data == 'CALL') {
|
1796
|
+
$subresult['queryflags']['is_procedure'] = 1;
|
1797
|
+
}
|
1798
|
+
|
1799
|
+
// if this is a real SELECT...FROM
|
1800
|
+
if ($upper_data == 'FROM'
|
1801
|
+
&& isset($subresult['queryflags']['select_from'])
|
1802
|
+
&& $subresult['queryflags']['select_from'] == 1
|
1803
|
+
) {
|
1804
|
+
$in_from = true;
|
1805
|
+
$from_clause = '';
|
1806
|
+
$in_select_expr = false;
|
1807
|
+
}
|
1808
|
+
|
1809
|
+
// (we could have less resetting of variables to false
|
1810
|
+
// if we trust that the query respects the standard
|
1811
|
+
// MySQL order for clauses)
|
1812
|
+
|
1813
|
+
// we use $seen_group and $seen_order because we are looking
|
1814
|
+
// for the BY
|
1815
|
+
if ($upper_data == 'GROUP') {
|
1816
|
+
$seen_group = true;
|
1817
|
+
$seen_order = false;
|
1818
|
+
$in_having = false;
|
1819
|
+
$in_order_by = false;
|
1820
|
+
$in_where = false;
|
1821
|
+
$in_select_expr = false;
|
1822
|
+
$in_from = false;
|
1823
|
+
|
1824
|
+
// for the presence of GROUP BY|HAVING|SELECT DISTINCT
|
1825
|
+
if (isset($subresult['queryflags']['select_from'])
|
1826
|
+
&& $subresult['queryflags']['select_from'] == 1
|
1827
|
+
&& ($i + 1) < $size
|
1828
|
+
&& $arr[$i + 1]['type'] == 'alpha_reservedWord'
|
1829
|
+
&& in_array(
|
1830
|
+
/*overload*/mb_strtoupper($arr[$i + 1]['data']),
|
1831
|
+
$arrayKeyWords
|
1832
|
+
)
|
1833
|
+
&& ($i + 2) < $size
|
1834
|
+
&& $arr[$i + 2]['type'] == 'alpha_reservedWord'
|
1835
|
+
&& /*overload*/mb_strtoupper($arr[$i + 2]['data']) == 'DISTINCT'
|
1836
|
+
) {
|
1837
|
+
$subresult['queryflags']['is_group'] = 1;
|
1838
|
+
}
|
1839
|
+
}
|
1840
|
+
if ($upper_data == 'ORDER' && !$in_group_concat) {
|
1841
|
+
$seen_order = true;
|
1842
|
+
$seen_group = false;
|
1843
|
+
$in_having = false;
|
1844
|
+
$in_group_by = false;
|
1845
|
+
$in_where = false;
|
1846
|
+
$in_select_expr = false;
|
1847
|
+
$in_from = false;
|
1848
|
+
}
|
1849
|
+
if ($upper_data == 'HAVING') {
|
1850
|
+
$in_having = true;
|
1851
|
+
$having_clause = '';
|
1852
|
+
$seen_group = false;
|
1853
|
+
$seen_order = false;
|
1854
|
+
$in_group_by = false;
|
1855
|
+
$in_order_by = false;
|
1856
|
+
$in_where = false;
|
1857
|
+
$in_select_expr = false;
|
1858
|
+
$in_from = false;
|
1859
|
+
}
|
1860
|
+
|
1861
|
+
if ($upper_data == 'WHERE') {
|
1862
|
+
$in_where = true;
|
1863
|
+
$where_clause = '';
|
1864
|
+
$where_clause_identifiers = array();
|
1865
|
+
$seen_group = false;
|
1866
|
+
$seen_order = false;
|
1867
|
+
$in_group_by = false;
|
1868
|
+
$in_order_by = false;
|
1869
|
+
$in_having = false;
|
1870
|
+
$in_select_expr = false;
|
1871
|
+
$in_from = false;
|
1872
|
+
}
|
1873
|
+
|
1874
|
+
if ($upper_data == 'BY') {
|
1875
|
+
if ($seen_group) {
|
1876
|
+
$in_group_by = true;
|
1877
|
+
$group_by_clause = '';
|
1878
|
+
}
|
1879
|
+
if ($seen_order) {
|
1880
|
+
$seen_order_by = true;
|
1881
|
+
// Here we assume that the ORDER BY keywords took
|
1882
|
+
// exactly 8 characters.
|
1883
|
+
// We use $GLOBALS['PMA_String']->substr() to be charset-safe;
|
1884
|
+
// otherwise if the table name contains accents, the unsorted
|
1885
|
+
// query would be missing some characters.
|
1886
|
+
$unsorted_query = /*overload*/mb_substr(
|
1887
|
+
$arr['raw'], 0, $arr[$i]['pos'] - 8
|
1888
|
+
);
|
1889
|
+
$in_order_by = true;
|
1890
|
+
$order_by_clause = '';
|
1891
|
+
}
|
1892
|
+
}
|
1893
|
+
|
1894
|
+
// if we find one of the words that could end the clause
|
1895
|
+
if (isset($words_ending_clauses[$upper_data])) {
|
1896
|
+
|
1897
|
+
$in_group_by = false;
|
1898
|
+
$in_order_by = false;
|
1899
|
+
$in_having = false;
|
1900
|
+
$in_where = false;
|
1901
|
+
$in_select_expr = false;
|
1902
|
+
$in_from = false;
|
1903
|
+
}
|
1904
|
+
|
1905
|
+
} // endif (reservedWord)
|
1906
|
+
|
1907
|
+
// do not add a space after a function name
|
1908
|
+
/**
|
1909
|
+
* @todo can we combine loop 2 and loop 1? some code is repeated here...
|
1910
|
+
*/
|
1911
|
+
|
1912
|
+
$sep = ' ';
|
1913
|
+
if ($arr[$i]['type'] == 'alpha_functionName') {
|
1914
|
+
$sep='';
|
1915
|
+
$upper_data = /*overload*/mb_strtoupper($arr[$i]['data']);
|
1916
|
+
if ($upper_data =='GROUP_CONCAT') {
|
1917
|
+
$in_group_concat = true;
|
1918
|
+
$number_of_brackets_in_group_concat = 0;
|
1919
|
+
}
|
1920
|
+
}
|
1921
|
+
|
1922
|
+
if ($arr[$i]['type'] == 'punct_bracket_open_round') {
|
1923
|
+
if ($in_group_concat) {
|
1924
|
+
$number_of_brackets_in_group_concat++;
|
1925
|
+
}
|
1926
|
+
}
|
1927
|
+
if ($arr[$i]['type'] == 'punct_bracket_close_round') {
|
1928
|
+
if ($in_group_concat) {
|
1929
|
+
$number_of_brackets_in_group_concat--;
|
1930
|
+
if ($number_of_brackets_in_group_concat == 0) {
|
1931
|
+
$in_group_concat = false;
|
1932
|
+
}
|
1933
|
+
}
|
1934
|
+
}
|
1935
|
+
|
1936
|
+
// do not add a space after an identifier if followed by a dot
|
1937
|
+
if ($arr[$i]['type'] == 'alpha_identifier'
|
1938
|
+
&& $i < $size - 1 && $arr[$i + 1]['data'] == '.'
|
1939
|
+
) {
|
1940
|
+
$sep = '';
|
1941
|
+
}
|
1942
|
+
|
1943
|
+
// do not add a space after a dot if followed by an identifier
|
1944
|
+
if ($arr[$i]['data'] == '.' && $i < $size - 1
|
1945
|
+
&& $arr[$i + 1]['type'] == 'alpha_identifier'
|
1946
|
+
) {
|
1947
|
+
$sep = '';
|
1948
|
+
}
|
1949
|
+
|
1950
|
+
// for the presence of INSERT|LOAD DATA
|
1951
|
+
if ($arr[$i]['type'] == 'alpha_identifier'
|
1952
|
+
&& /*overload*/mb_strtoupper($arr[$i]['data']) == 'DATA'
|
1953
|
+
&& ($i - 1) >= 0
|
1954
|
+
&& $arr[$i - 1]['type'] == 'alpha_reservedWord'
|
1955
|
+
&& in_array(
|
1956
|
+
/*overload*/mb_strtoupper($arr[$i - 1]['data']),
|
1957
|
+
array("INSERT", "LOAD")
|
1958
|
+
)
|
1959
|
+
) {
|
1960
|
+
$subresult['queryflags']['is_insert'] = 1;
|
1961
|
+
$subresult['queryflags']['is_affected'] = 1;
|
1962
|
+
}
|
1963
|
+
|
1964
|
+
// for the presence of SUM|AVG|STD|STDDEV|MIN|MAX|BIT_OR|BIT_AND
|
1965
|
+
if ($arr[$i]['type'] == 'alpha_functionName'
|
1966
|
+
&& in_array(/*overload*/mb_strtoupper($arr[$i]['data']), $arrayFunctions)
|
1967
|
+
&& isset($subresult['queryflags']['select_from'])
|
1968
|
+
&& $subresult['queryflags']['select_from'] == 1
|
1969
|
+
&& !isset($subresult['queryflags']['is_group'])
|
1970
|
+
) {
|
1971
|
+
$subresult['queryflags']['is_func'] = 1;
|
1972
|
+
}
|
1973
|
+
|
1974
|
+
if ($in_select_expr && $upper_data != 'SELECT'
|
1975
|
+
&& $upper_data != 'DISTINCT'
|
1976
|
+
) {
|
1977
|
+
$select_expr_clause .= $arr[$i]['data'] . $sep;
|
1978
|
+
}
|
1979
|
+
if ($in_from && $upper_data != 'FROM') {
|
1980
|
+
$from_clause .= $arr[$i]['data'] . $sep;
|
1981
|
+
}
|
1982
|
+
if ($in_group_by && $upper_data != 'GROUP' && $upper_data != 'BY') {
|
1983
|
+
$group_by_clause .= $arr[$i]['data'] . $sep;
|
1984
|
+
}
|
1985
|
+
if ($in_order_by && $upper_data != 'ORDER' && $upper_data != 'BY') {
|
1986
|
+
// add a space only before ASC or DESC
|
1987
|
+
// not around the dot between dbname and tablename
|
1988
|
+
if ($arr[$i]['type'] == 'alpha_reservedWord') {
|
1989
|
+
$order_by_clause .= $sep;
|
1990
|
+
}
|
1991
|
+
$order_by_clause .= $arr[$i]['data'];
|
1992
|
+
}
|
1993
|
+
if ($in_having && $upper_data != 'HAVING') {
|
1994
|
+
$having_clause .= $arr[$i]['data'] . $sep;
|
1995
|
+
}
|
1996
|
+
if ($in_where && $upper_data != 'WHERE') {
|
1997
|
+
$where_clause .= $arr[$i]['data'] . $sep;
|
1998
|
+
|
1999
|
+
if (($arr[$i]['type'] == 'quote_backtick')
|
2000
|
+
|| ($arr[$i]['type'] == 'alpha_identifier')
|
2001
|
+
) {
|
2002
|
+
$where_clause_identifiers[] = $arr[$i]['data'];
|
2003
|
+
}
|
2004
|
+
}
|
2005
|
+
|
2006
|
+
// to grab the rest of the query after the ORDER BY clause
|
2007
|
+
if (isset($subresult['queryflags']['select_from'])
|
2008
|
+
&& $subresult['queryflags']['select_from'] == 1
|
2009
|
+
&& ! $in_order_by
|
2010
|
+
&& $seen_order_by
|
2011
|
+
&& $upper_data != 'BY'
|
2012
|
+
) {
|
2013
|
+
$unsorted_query .= $arr[$i]['data'];
|
2014
|
+
if ($arr[$i]['type'] != 'punct_bracket_open_round'
|
2015
|
+
&& $arr[$i]['type'] != 'punct_bracket_close_round'
|
2016
|
+
&& $arr[$i]['type'] != 'punct'
|
2017
|
+
) {
|
2018
|
+
$unsorted_query .= $sep;
|
2019
|
+
}
|
2020
|
+
}
|
2021
|
+
|
2022
|
+
if ($in_limit) {
|
2023
|
+
if ($upper_data == 'OFFSET') {
|
2024
|
+
$limit_clause .= $sep;
|
2025
|
+
}
|
2026
|
+
$limit_clause .= $arr[$i]['data'];
|
2027
|
+
if ($upper_data == 'LIMIT' || $upper_data == 'OFFSET') {
|
2028
|
+
$limit_clause .= $sep;
|
2029
|
+
}
|
2030
|
+
}
|
2031
|
+
if ($after_limit && $seen_limit) {
|
2032
|
+
$section_after_limit .= $arr[$i]['data'] . $sep;
|
2033
|
+
}
|
2034
|
+
|
2035
|
+
// clear $upper_data for next iteration
|
2036
|
+
$upper_data='';
|
2037
|
+
} // end for $i (loop #2)
|
2038
|
+
if (empty($section_before_limit)) {
|
2039
|
+
$section_before_limit = $arr['raw'];
|
2040
|
+
}
|
2041
|
+
|
2042
|
+
// -----------------------------------------------------
|
2043
|
+
// loop #3: foreign keys and MySQL 4.1.2+ TIMESTAMP options
|
2044
|
+
// (for now, check only the first query)
|
2045
|
+
// (for now, identifiers are assumed to be backquoted)
|
2046
|
+
|
2047
|
+
// If we find that we are dealing with a CREATE TABLE query,
|
2048
|
+
// we look for the next punct_bracket_open_round, which
|
2049
|
+
// introduces the fields list. Then, when we find a
|
2050
|
+
// quote_backtick, it must be a field, so we put it into
|
2051
|
+
// the create_table_fields array. Even if this field is
|
2052
|
+
// not a timestamp, it will be useful when logic has been
|
2053
|
+
// added for complete field attributes analysis.
|
2054
|
+
|
2055
|
+
$seen_foreign = false;
|
2056
|
+
$seen_references = false;
|
2057
|
+
$seen_constraint = false;
|
2058
|
+
$foreign_key_number = -1;
|
2059
|
+
$seen_create_table = false;
|
2060
|
+
$seen_create = false;
|
2061
|
+
$seen_alter = false;
|
2062
|
+
$in_create_table_fields = false;
|
2063
|
+
$brackets_level = 0;
|
2064
|
+
$in_timestamp_options = false;
|
2065
|
+
$seen_default = false;
|
2066
|
+
|
2067
|
+
for ($i = 0; $i < $size; $i++) {
|
2068
|
+
if ($arr[$i]['type'] == 'alpha_reservedWord') {
|
2069
|
+
$upper_data = /*overload*/mb_strtoupper($arr[$i]['data']);
|
2070
|
+
|
2071
|
+
if ($upper_data == 'NOT' && $in_timestamp_options) {
|
2072
|
+
if (! isset($create_table_fields)) {
|
2073
|
+
$create_table_fields = array();
|
2074
|
+
}
|
2075
|
+
$create_table_fields[$current_identifier]['timestamp_not_null']
|
2076
|
+
= true;
|
2077
|
+
|
2078
|
+
}
|
2079
|
+
|
2080
|
+
if ($upper_data == 'CREATE') {
|
2081
|
+
$seen_create = true;
|
2082
|
+
}
|
2083
|
+
|
2084
|
+
if ($upper_data == 'ALTER') {
|
2085
|
+
$seen_alter = true;
|
2086
|
+
}
|
2087
|
+
|
2088
|
+
if ($upper_data == 'TABLE' && $seen_create) {
|
2089
|
+
$seen_create_table = true;
|
2090
|
+
$create_table_fields = array();
|
2091
|
+
}
|
2092
|
+
|
2093
|
+
if ($upper_data == 'CURRENT_TIMESTAMP') {
|
2094
|
+
if ($in_timestamp_options) {
|
2095
|
+
if ($seen_default) {
|
2096
|
+
$create_table_fields[$current_identifier]
|
2097
|
+
['default_current_timestamp'] = true;
|
2098
|
+
}
|
2099
|
+
}
|
2100
|
+
}
|
2101
|
+
|
2102
|
+
if ($upper_data == 'CONSTRAINT') {
|
2103
|
+
$foreign_key_number++;
|
2104
|
+
$seen_foreign = false;
|
2105
|
+
$seen_references = false;
|
2106
|
+
$seen_constraint = true;
|
2107
|
+
}
|
2108
|
+
if ($upper_data == 'FOREIGN') {
|
2109
|
+
$seen_foreign = true;
|
2110
|
+
$seen_references = false;
|
2111
|
+
$seen_constraint = false;
|
2112
|
+
}
|
2113
|
+
if ($upper_data == 'REFERENCES') {
|
2114
|
+
$seen_foreign = false;
|
2115
|
+
$seen_references = true;
|
2116
|
+
$seen_constraint = false;
|
2117
|
+
}
|
2118
|
+
|
2119
|
+
// Cases covered:
|
2120
|
+
|
2121
|
+
// [ON DELETE {CASCADE | SET NULL | NO ACTION | RESTRICT}]
|
2122
|
+
// [ON UPDATE {CASCADE | SET NULL | NO ACTION | RESTRICT}]
|
2123
|
+
|
2124
|
+
// but we set ['on_delete'] or ['on_cascade'] to
|
2125
|
+
// CASCADE | SET_NULL | NO_ACTION | RESTRICT
|
2126
|
+
|
2127
|
+
// ON UPDATE CURRENT_TIMESTAMP
|
2128
|
+
|
2129
|
+
if ($upper_data == 'ON') {
|
2130
|
+
if (isset($arr[$i+1])
|
2131
|
+
&& $arr[$i+1]['type'] == 'alpha_reservedWord'
|
2132
|
+
) {
|
2133
|
+
$second_upper_data = /*overload*/mb_strtoupper(
|
2134
|
+
$arr[$i+1]['data']
|
2135
|
+
);
|
2136
|
+
if ($second_upper_data == 'DELETE') {
|
2137
|
+
$clause = 'on_delete';
|
2138
|
+
}
|
2139
|
+
if ($second_upper_data == 'UPDATE') {
|
2140
|
+
$clause = 'on_update';
|
2141
|
+
}
|
2142
|
+
// ugly workaround because currently, NO is not
|
2143
|
+
// in the list of reserved words in sqlparser.data
|
2144
|
+
// (we got a bug report about not being able to use
|
2145
|
+
// 'no' as an identifier)
|
2146
|
+
if (isset($clause)
|
2147
|
+
&& ($arr[$i+2]['type'] == 'alpha_reservedWord'
|
2148
|
+
|| ($arr[$i+2]['type'] == 'alpha_identifier'
|
2149
|
+
&& /*overload*/mb_strtoupper($arr[$i+2]['data'])=='NO'))
|
2150
|
+
) {
|
2151
|
+
$third_upper_data = /*overload*/mb_strtoupper(
|
2152
|
+
$arr[$i+2]['data']
|
2153
|
+
);
|
2154
|
+
if ($third_upper_data == 'CASCADE'
|
2155
|
+
|| $third_upper_data == 'RESTRICT'
|
2156
|
+
) {
|
2157
|
+
$value = $third_upper_data;
|
2158
|
+
} elseif ($third_upper_data == 'SET'
|
2159
|
+
|| $third_upper_data == 'NO'
|
2160
|
+
) {
|
2161
|
+
if ($arr[$i+3]['type'] == 'alpha_reservedWord') {
|
2162
|
+
$value = $third_upper_data . '_'
|
2163
|
+
. /*overload*/mb_strtoupper($arr[$i+3]['data']);
|
2164
|
+
}
|
2165
|
+
} elseif ($third_upper_data == 'CURRENT_TIMESTAMP') {
|
2166
|
+
if ($clause == 'on_update'
|
2167
|
+
&& $in_timestamp_options
|
2168
|
+
) {
|
2169
|
+
$create_table_fields[$current_identifier]
|
2170
|
+
['on_update_current_timestamp']
|
2171
|
+
= true;
|
2172
|
+
$seen_default = false;
|
2173
|
+
}
|
2174
|
+
|
2175
|
+
} else {
|
2176
|
+
$value = '';
|
2177
|
+
}
|
2178
|
+
if (!empty($value)) {
|
2179
|
+
if (! isset($foreign)) {
|
2180
|
+
$foreign = array();
|
2181
|
+
}
|
2182
|
+
$foreign[$foreign_key_number][$clause] = $value;
|
2183
|
+
}
|
2184
|
+
unset($clause);
|
2185
|
+
} // endif (isset($clause))
|
2186
|
+
}
|
2187
|
+
}
|
2188
|
+
|
2189
|
+
} // end of reserved words analysis
|
2190
|
+
|
2191
|
+
if ($arr[$i]['type'] == 'punct_bracket_open_round') {
|
2192
|
+
$brackets_level++;
|
2193
|
+
if ($seen_create_table && $brackets_level == 1) {
|
2194
|
+
$in_create_table_fields = true;
|
2195
|
+
}
|
2196
|
+
}
|
2197
|
+
|
2198
|
+
if ($arr[$i]['type'] == 'punct_bracket_close_round') {
|
2199
|
+
$brackets_level--;
|
2200
|
+
if ($seen_references) {
|
2201
|
+
$seen_references = false;
|
2202
|
+
}
|
2203
|
+
if ($seen_create_table && $brackets_level == 0) {
|
2204
|
+
$in_create_table_fields = false;
|
2205
|
+
}
|
2206
|
+
}
|
2207
|
+
|
2208
|
+
if (($arr[$i]['type'] == 'alpha_columnAttrib')) {
|
2209
|
+
$upper_data = /*overload*/mb_strtoupper($arr[$i]['data']);
|
2210
|
+
if ($seen_create_table && $in_create_table_fields) {
|
2211
|
+
if ($upper_data == 'DEFAULT') {
|
2212
|
+
$seen_default = true;
|
2213
|
+
$create_table_fields[$current_identifier]['default_value']
|
2214
|
+
= $arr[$i + 1]['data'];
|
2215
|
+
}
|
2216
|
+
}
|
2217
|
+
}
|
2218
|
+
|
2219
|
+
/**
|
2220
|
+
* @see @todo 2005-10-16 note: the "or" part here is a workaround for a bug
|
2221
|
+
*/
|
2222
|
+
if (($arr[$i]['type'] == 'alpha_columnType')
|
2223
|
+
|| ($arr[$i]['type'] == 'alpha_functionName' && $seen_create_table)
|
2224
|
+
) {
|
2225
|
+
$upper_data = /*overload*/mb_strtoupper($arr[$i]['data']);
|
2226
|
+
if ($seen_create_table && $in_create_table_fields
|
2227
|
+
&& isset($current_identifier)
|
2228
|
+
) {
|
2229
|
+
$create_table_fields[$current_identifier]['type'] = $upper_data;
|
2230
|
+
if ($upper_data == 'TIMESTAMP') {
|
2231
|
+
$arr[$i]['type'] = 'alpha_columnType';
|
2232
|
+
$in_timestamp_options = true;
|
2233
|
+
} else {
|
2234
|
+
$in_timestamp_options = false;
|
2235
|
+
if ($upper_data == 'CHAR') {
|
2236
|
+
$arr[$i]['type'] = 'alpha_columnType';
|
2237
|
+
}
|
2238
|
+
}
|
2239
|
+
}
|
2240
|
+
}
|
2241
|
+
|
2242
|
+
if ($arr[$i]['type'] == 'quote_backtick'
|
2243
|
+
|| $arr[$i]['type'] == 'alpha_identifier'
|
2244
|
+
) {
|
2245
|
+
|
2246
|
+
if ($arr[$i]['type'] == 'quote_backtick') {
|
2247
|
+
// remove backquotes
|
2248
|
+
$identifier = PMA_Util::unQuote($arr[$i]['data']);
|
2249
|
+
} else {
|
2250
|
+
$identifier = $arr[$i]['data'];
|
2251
|
+
}
|
2252
|
+
|
2253
|
+
if ($seen_create_table && $in_create_table_fields) {
|
2254
|
+
$current_identifier = $identifier;
|
2255
|
+
// we set this one even for non TIMESTAMP type
|
2256
|
+
$create_table_fields[$current_identifier]['timestamp_not_null']
|
2257
|
+
= false;
|
2258
|
+
}
|
2259
|
+
|
2260
|
+
if ($seen_constraint) {
|
2261
|
+
$foreign[$foreign_key_number]['constraint'] = $identifier;
|
2262
|
+
}
|
2263
|
+
|
2264
|
+
if ($seen_foreign && $brackets_level > 0) {
|
2265
|
+
$foreign[$foreign_key_number]['index_list'][] = $identifier;
|
2266
|
+
}
|
2267
|
+
|
2268
|
+
if ($seen_references) {
|
2269
|
+
if ($seen_alter && $brackets_level > 0) {
|
2270
|
+
$foreign[$foreign_key_number]['ref_index_list'][] = $identifier;
|
2271
|
+
// here, the first bracket level corresponds to the
|
2272
|
+
// bracket of CREATE TABLE
|
2273
|
+
// so if we are on level 2, it must be the index list
|
2274
|
+
// of the foreign key REFERENCES
|
2275
|
+
} elseif ($brackets_level > 1) {
|
2276
|
+
$foreign[$foreign_key_number]['ref_index_list'][] = $identifier;
|
2277
|
+
} elseif ($arr[$i+1]['type'] == 'punct_qualifier') {
|
2278
|
+
// identifier is `db`.`table`
|
2279
|
+
// the first pass will pick the db name
|
2280
|
+
// the next pass will pick the table name
|
2281
|
+
$foreign[$foreign_key_number]['ref_db_name'] = $identifier;
|
2282
|
+
} else {
|
2283
|
+
// identifier is `table`
|
2284
|
+
$foreign[$foreign_key_number]['ref_table_name'] = $identifier;
|
2285
|
+
}
|
2286
|
+
}
|
2287
|
+
}
|
2288
|
+
} // end for $i (loop #3)
|
2289
|
+
|
2290
|
+
// Fill the $subresult array
|
2291
|
+
|
2292
|
+
if (isset($create_table_fields)) {
|
2293
|
+
$subresult['create_table_fields'] = $create_table_fields;
|
2294
|
+
}
|
2295
|
+
|
2296
|
+
if (isset($foreign)) {
|
2297
|
+
$subresult['foreign_keys'] = $foreign;
|
2298
|
+
}
|
2299
|
+
|
2300
|
+
if (isset($select_expr_clause)) {
|
2301
|
+
$subresult['select_expr_clause'] = $select_expr_clause;
|
2302
|
+
}
|
2303
|
+
if (isset($from_clause)) {
|
2304
|
+
$subresult['from_clause'] = $from_clause;
|
2305
|
+
}
|
2306
|
+
if (isset($group_by_clause)) {
|
2307
|
+
$subresult['group_by_clause'] = $group_by_clause;
|
2308
|
+
}
|
2309
|
+
if (isset($order_by_clause)) {
|
2310
|
+
$subresult['order_by_clause'] = $order_by_clause;
|
2311
|
+
}
|
2312
|
+
if (isset($having_clause)) {
|
2313
|
+
$subresult['having_clause'] = $having_clause;
|
2314
|
+
}
|
2315
|
+
if (isset($limit_clause)) {
|
2316
|
+
$subresult['limit_clause'] = $limit_clause;
|
2317
|
+
}
|
2318
|
+
if (isset($where_clause)) {
|
2319
|
+
$subresult['where_clause'] = $where_clause;
|
2320
|
+
}
|
2321
|
+
if (isset($unsorted_query) && !empty($unsorted_query)) {
|
2322
|
+
$subresult['unsorted_query'] = $unsorted_query;
|
2323
|
+
}
|
2324
|
+
if (isset($where_clause_identifiers)) {
|
2325
|
+
$subresult['where_clause_identifiers'] = $where_clause_identifiers;
|
2326
|
+
}
|
2327
|
+
|
2328
|
+
if (isset($position_of_first_select)) {
|
2329
|
+
$subresult['position_of_first_select'] = $position_of_first_select;
|
2330
|
+
$subresult['section_before_limit'] = $section_before_limit;
|
2331
|
+
$subresult['section_after_limit'] = $section_after_limit;
|
2332
|
+
}
|
2333
|
+
|
2334
|
+
// They are naughty and didn't have a trailing semi-colon,
|
2335
|
+
// then still handle it properly
|
2336
|
+
if ($subresult['querytype'] != '') {
|
2337
|
+
$result[] = $subresult;
|
2338
|
+
}
|
2339
|
+
return $result;
|
2340
|
+
} // end of the "PMA_SQP_analyze()" function
|
2341
|
+
|
2342
|
+
|
2343
|
+
/**
|
2344
|
+
* Formats SQL queries
|
2345
|
+
*
|
2346
|
+
* @param array $arr The SQL queries
|
2347
|
+
* @param string $mode formatting mode
|
2348
|
+
* @param integer $start_token starting token
|
2349
|
+
* @param integer $number_of_tokens number of tokens to format, -1 = all
|
2350
|
+
*
|
2351
|
+
* @return string The formatted SQL queries
|
2352
|
+
*
|
2353
|
+
* @access public
|
2354
|
+
*/
|
2355
|
+
function PMA_SQP_format(
|
2356
|
+
$arr, $mode='text', $start_token=0,
|
2357
|
+
$number_of_tokens=-1
|
2358
|
+
) {
|
2359
|
+
//DEBUG echo 'in Format<pre>'; print_r($arr); echo '</pre>';
|
2360
|
+
// then check for an array
|
2361
|
+
if (! is_array($arr)) {
|
2362
|
+
return htmlspecialchars($arr);
|
2363
|
+
}
|
2364
|
+
// first check for the SQL parser having hit an error
|
2365
|
+
if (PMA_SQP_isError()) {
|
2366
|
+
return htmlspecialchars($arr['raw']);
|
2367
|
+
}
|
2368
|
+
// else do it properly
|
2369
|
+
switch ($mode) {
|
2370
|
+
case 'query_only':
|
2371
|
+
$str = '';
|
2372
|
+
$html_line_break = "\n";
|
2373
|
+
break;
|
2374
|
+
case 'text':
|
2375
|
+
$str = '';
|
2376
|
+
$html_line_break = '<br />';
|
2377
|
+
break;
|
2378
|
+
} // end switch
|
2379
|
+
$indent = 0;
|
2380
|
+
$bracketlevel = 0;
|
2381
|
+
$functionlevel = 0;
|
2382
|
+
$infunction = false;
|
2383
|
+
$space_punct_listsep = ' ';
|
2384
|
+
$space_punct_listsep_function_name = ' ';
|
2385
|
+
// $space_alpha_reserved_word = '<br />'."\n";
|
2386
|
+
$space_alpha_reserved_word = ' ';
|
2387
|
+
|
2388
|
+
$keywords_with_brackets_1before = array(
|
2389
|
+
'INDEX' => 1,
|
2390
|
+
'KEY' => 1,
|
2391
|
+
'ON' => 1,
|
2392
|
+
'USING' => 1
|
2393
|
+
);
|
2394
|
+
|
2395
|
+
$keywords_with_brackets_2before = array(
|
2396
|
+
'IGNORE' => 1,
|
2397
|
+
'INDEX' => 1,
|
2398
|
+
'INTO' => 1,
|
2399
|
+
'KEY' => 1,
|
2400
|
+
'PRIMARY' => 1,
|
2401
|
+
'PROCEDURE' => 1,
|
2402
|
+
'REFERENCES' => 1,
|
2403
|
+
'UNIQUE' => 1,
|
2404
|
+
'USE' => 1
|
2405
|
+
);
|
2406
|
+
|
2407
|
+
// These reserved words do NOT get a newline placed near them.
|
2408
|
+
$keywords_no_newline = array(
|
2409
|
+
'AS' => 1,
|
2410
|
+
'ASC' => 1,
|
2411
|
+
'DESC' => 1,
|
2412
|
+
'DISTINCT' => 1,
|
2413
|
+
'DUPLICATE' => 1,
|
2414
|
+
'HOUR' => 1,
|
2415
|
+
'INTERVAL' => 1,
|
2416
|
+
'IS' => 1,
|
2417
|
+
'LIKE' => 1,
|
2418
|
+
'NOT' => 1,
|
2419
|
+
'NULL' => 1,
|
2420
|
+
'ON' => 1,
|
2421
|
+
'REGEXP' => 1
|
2422
|
+
);
|
2423
|
+
|
2424
|
+
// These reserved words introduce a privilege list
|
2425
|
+
$keywords_priv_list = array(
|
2426
|
+
'GRANT' => 1,
|
2427
|
+
'REVOKE' => 1
|
2428
|
+
);
|
2429
|
+
|
2430
|
+
if ($number_of_tokens == -1) {
|
2431
|
+
$number_of_tokens = $arr['len'];
|
2432
|
+
}
|
2433
|
+
$typearr = array();
|
2434
|
+
if ($number_of_tokens >= 0) {
|
2435
|
+
$typearr[0] = '';
|
2436
|
+
$typearr[1] = '';
|
2437
|
+
$typearr[2] = '';
|
2438
|
+
$typearr[3] = $arr[$start_token]['type'];
|
2439
|
+
}
|
2440
|
+
|
2441
|
+
$in_priv_list = false;
|
2442
|
+
for ($i = $start_token; $i < $number_of_tokens; $i++) {
|
2443
|
+
// DEBUG echo "Loop format <strong>" . $arr[$i]['data']
|
2444
|
+
// . "</strong> " . $arr[$i]['type'] . "<br />";
|
2445
|
+
$before = '';
|
2446
|
+
$after = '';
|
2447
|
+
// array_shift($typearr);
|
2448
|
+
/*
|
2449
|
+
0 prev2
|
2450
|
+
1 prev
|
2451
|
+
2 current
|
2452
|
+
3 next
|
2453
|
+
*/
|
2454
|
+
if (($i + 1) < $number_of_tokens) {
|
2455
|
+
$typearr[4] = $arr[$i + 1]['type'];
|
2456
|
+
} else {
|
2457
|
+
$typearr[4] = '';
|
2458
|
+
}
|
2459
|
+
|
2460
|
+
for ($j=0; $j<4; $j++) {
|
2461
|
+
$typearr[$j] = $typearr[$j + 1];
|
2462
|
+
}
|
2463
|
+
|
2464
|
+
switch ($typearr[2]) {
|
2465
|
+
case 'alpha_bitfield_constant_introducer':
|
2466
|
+
$before = ' ';
|
2467
|
+
$after = '';
|
2468
|
+
break;
|
2469
|
+
case 'white_newline':
|
2470
|
+
$before = '';
|
2471
|
+
break;
|
2472
|
+
case 'punct_bracket_open_round':
|
2473
|
+
$bracketlevel++;
|
2474
|
+
$infunction = false;
|
2475
|
+
$keyword_brackets_2before = isset(
|
2476
|
+
$keywords_with_brackets_2before[
|
2477
|
+
/*overload*/mb_strtoupper($arr[$i - 2]['data'])
|
2478
|
+
]
|
2479
|
+
);
|
2480
|
+
$keyword_brackets_1before = isset(
|
2481
|
+
$keywords_with_brackets_1before[
|
2482
|
+
/*overload*/mb_strtoupper($arr[$i - 1]['data'])
|
2483
|
+
]
|
2484
|
+
);
|
2485
|
+
// Make sure this array is sorted!
|
2486
|
+
if (($typearr[1] == 'alpha_functionName')
|
2487
|
+
|| ($typearr[1] == 'alpha_columnType') || ($typearr[1] == 'punct')
|
2488
|
+
|| ($typearr[3] == 'digit_integer') || ($typearr[3] == 'digit_hex')
|
2489
|
+
|| ($typearr[3] == 'digit_float')
|
2490
|
+
|| ($typearr[0] == 'alpha_reservedWord' && $keyword_brackets_2before)
|
2491
|
+
|| ($typearr[1] == 'alpha_reservedWord' && $keyword_brackets_1before)
|
2492
|
+
) {
|
2493
|
+
$functionlevel++;
|
2494
|
+
$infunction = true;
|
2495
|
+
$after .= ' ';
|
2496
|
+
} else {
|
2497
|
+
$indent++;
|
2498
|
+
if ($mode != 'query_only') {
|
2499
|
+
$after .= '<div class="syntax_indent' . $indent . '">';
|
2500
|
+
} else {
|
2501
|
+
$after .= ' ';
|
2502
|
+
}
|
2503
|
+
}
|
2504
|
+
break;
|
2505
|
+
case 'alpha_identifier':
|
2506
|
+
if (($typearr[1] == 'punct_qualifier')
|
2507
|
+
|| ($typearr[3] == 'punct_qualifier')
|
2508
|
+
) {
|
2509
|
+
$after = '';
|
2510
|
+
$before = '';
|
2511
|
+
}
|
2512
|
+
// for example SELECT 1 somealias
|
2513
|
+
if ($typearr[1] == 'digit_integer') {
|
2514
|
+
$before = ' ';
|
2515
|
+
}
|
2516
|
+
if (($typearr[3] == 'alpha_columnType')
|
2517
|
+
|| ($typearr[3] == 'alpha_identifier')
|
2518
|
+
) {
|
2519
|
+
$after .= ' ';
|
2520
|
+
}
|
2521
|
+
break;
|
2522
|
+
case 'punct_user':
|
2523
|
+
case 'punct_qualifier':
|
2524
|
+
$before = '';
|
2525
|
+
$after = '';
|
2526
|
+
break;
|
2527
|
+
case 'punct_listsep':
|
2528
|
+
if ($infunction == true) {
|
2529
|
+
$after .= $space_punct_listsep_function_name;
|
2530
|
+
} else {
|
2531
|
+
$after .= $space_punct_listsep;
|
2532
|
+
}
|
2533
|
+
break;
|
2534
|
+
case 'punct_queryend':
|
2535
|
+
if (($typearr[3] != 'comment_mysql')
|
2536
|
+
&& ($typearr[3] != 'comment_ansi')
|
2537
|
+
&& $typearr[3] != 'comment_c'
|
2538
|
+
) {
|
2539
|
+
$after .= $html_line_break;
|
2540
|
+
$after .= $html_line_break;
|
2541
|
+
}
|
2542
|
+
$space_punct_listsep = ' ';
|
2543
|
+
$space_punct_listsep_function_name = ' ';
|
2544
|
+
$space_alpha_reserved_word = ' ';
|
2545
|
+
$in_priv_list = false;
|
2546
|
+
break;
|
2547
|
+
case 'comment_mysql':
|
2548
|
+
case 'comment_ansi':
|
2549
|
+
$after .= $html_line_break;
|
2550
|
+
break;
|
2551
|
+
case 'punct':
|
2552
|
+
$before .= ' ';
|
2553
|
+
|
2554
|
+
// workaround for
|
2555
|
+
// select * from mytable limit 0,-1
|
2556
|
+
// (a side effect of this workaround is that
|
2557
|
+
// select 20 - 9
|
2558
|
+
// becomes
|
2559
|
+
// select 20 -9
|
2560
|
+
// )
|
2561
|
+
if ($typearr[3] != 'digit_integer') {
|
2562
|
+
$after .= ' ';
|
2563
|
+
}
|
2564
|
+
break;
|
2565
|
+
case 'punct_bracket_close_round':
|
2566
|
+
// only close bracket level when it was opened before
|
2567
|
+
if ($bracketlevel > 0) {
|
2568
|
+
$bracketlevel--;
|
2569
|
+
if ($infunction == true) {
|
2570
|
+
$functionlevel--;
|
2571
|
+
$after .= ' ';
|
2572
|
+
$before .= ' ';
|
2573
|
+
} else {
|
2574
|
+
$indent--;
|
2575
|
+
$before .= ($mode != 'query_only' ? '</div>' : ' ');
|
2576
|
+
}
|
2577
|
+
$infunction = ($functionlevel > 0) ? true : false;
|
2578
|
+
}
|
2579
|
+
break;
|
2580
|
+
case 'alpha_columnType':
|
2581
|
+
if ($typearr[3] == 'alpha_columnAttrib') {
|
2582
|
+
$after .= ' ';
|
2583
|
+
}
|
2584
|
+
if ($typearr[1] == 'alpha_columnType') {
|
2585
|
+
$before .= ' ';
|
2586
|
+
}
|
2587
|
+
break;
|
2588
|
+
case 'alpha_columnAttrib':
|
2589
|
+
|
2590
|
+
// ALTER TABLE tbl_name AUTO_INCREMENT = 1
|
2591
|
+
// COLLATE LATIN1_GENERAL_CI DEFAULT
|
2592
|
+
if ($typearr[1] == 'alpha_identifier'
|
2593
|
+
|| $typearr[1] == 'alpha_charset'
|
2594
|
+
) {
|
2595
|
+
$before .= ' ';
|
2596
|
+
}
|
2597
|
+
if (($typearr[3] == 'alpha_columnAttrib')
|
2598
|
+
|| ($typearr[3] == 'quote_single')
|
2599
|
+
|| ($typearr[3] == 'digit_integer')
|
2600
|
+
) {
|
2601
|
+
$after .= ' ';
|
2602
|
+
}
|
2603
|
+
// workaround for
|
2604
|
+
// AUTO_INCREMENT = 31DEFAULT_CHARSET = utf-8
|
2605
|
+
|
2606
|
+
if ($typearr[2] == 'alpha_columnAttrib'
|
2607
|
+
&& $typearr[3] == 'alpha_reservedWord'
|
2608
|
+
) {
|
2609
|
+
$before .= ' ';
|
2610
|
+
}
|
2611
|
+
// workaround for
|
2612
|
+
// select * from mysql.user where binary user="root"
|
2613
|
+
// binary is marked as alpha_columnAttrib
|
2614
|
+
// but should be marked as a reserved word
|
2615
|
+
if (/*overload*/mb_strtoupper($arr[$i]['data']) == 'BINARY'
|
2616
|
+
&& $typearr[3] == 'alpha_identifier'
|
2617
|
+
) {
|
2618
|
+
$after .= ' ';
|
2619
|
+
}
|
2620
|
+
break;
|
2621
|
+
case 'alpha_functionName':
|
2622
|
+
break;
|
2623
|
+
case 'alpha_reservedWord':
|
2624
|
+
// do not uppercase the reserved word if we are calling
|
2625
|
+
// this function in query_only mode, because we need
|
2626
|
+
// the original query (otherwise we get problems with
|
2627
|
+
// semi-reserved words like "storage" which is legal
|
2628
|
+
// as an identifier name)
|
2629
|
+
|
2630
|
+
if ($mode != 'query_only') {
|
2631
|
+
$arr[$i]['data'] = /*overload*/mb_strtoupper($arr[$i]['data']);
|
2632
|
+
}
|
2633
|
+
|
2634
|
+
list($before, $in_priv_list) = PMA_SQP_getBeforeAndInPrivList(
|
2635
|
+
$arr, $typearr, $keywords_no_newline, $i, $in_priv_list,
|
2636
|
+
$space_alpha_reserved_word, $before, $keywords_priv_list
|
2637
|
+
);
|
2638
|
+
|
2639
|
+
list($space_punct_listsep, $space_alpha_reserved_word)
|
2640
|
+
= PMA_SQP_getListsepAndReservedWord(
|
2641
|
+
$arr[$i]['data'], $in_priv_list, $html_line_break,
|
2642
|
+
$space_punct_listsep, $space_alpha_reserved_word
|
2643
|
+
);
|
2644
|
+
|
2645
|
+
$after .= ' ';
|
2646
|
+
break;
|
2647
|
+
case 'digit_integer':
|
2648
|
+
case 'digit_float':
|
2649
|
+
case 'digit_hex':
|
2650
|
+
/**
|
2651
|
+
* @todo could there be other types preceding a digit?
|
2652
|
+
*/
|
2653
|
+
if ($typearr[1] == 'alpha_reservedWord') {
|
2654
|
+
$after .= ' ';
|
2655
|
+
}
|
2656
|
+
if ($infunction && $typearr[3] == 'punct_bracket_close_round') {
|
2657
|
+
$after .= ' ';
|
2658
|
+
}
|
2659
|
+
if ($typearr[1] == 'alpha_columnAttrib') {
|
2660
|
+
$before .= ' ';
|
2661
|
+
}
|
2662
|
+
break;
|
2663
|
+
case 'alpha_variable':
|
2664
|
+
$after = ' ';
|
2665
|
+
break;
|
2666
|
+
case 'quote_double':
|
2667
|
+
case 'quote_single':
|
2668
|
+
// workaround: for the query
|
2669
|
+
// REVOKE SELECT ON `base2\_db`.* FROM 'user'@'%'
|
2670
|
+
// the @ is incorrectly marked as alpha_variable
|
2671
|
+
// in the parser, and here, the '%' gets a blank before,
|
2672
|
+
// which is a syntax error
|
2673
|
+
if ($typearr[1] != 'punct_user'
|
2674
|
+
&& $typearr[1] != 'alpha_bitfield_constant_introducer'
|
2675
|
+
) {
|
2676
|
+
$before .= ' ';
|
2677
|
+
}
|
2678
|
+
if ($infunction && $typearr[3] == 'punct_bracket_close_round') {
|
2679
|
+
$after .= ' ';
|
2680
|
+
}
|
2681
|
+
break;
|
2682
|
+
case 'quote_backtick':
|
2683
|
+
// here we check for punct_user to handle correctly
|
2684
|
+
// DEFINER = `username`@`%`
|
2685
|
+
// where @ is the punct_user and `%` is the quote_backtick
|
2686
|
+
if ($typearr[3] != 'punct_qualifier'
|
2687
|
+
&& $typearr[3] != 'alpha_variable'
|
2688
|
+
&& $typearr[3] != 'punct_user'
|
2689
|
+
) {
|
2690
|
+
$after .= ' ';
|
2691
|
+
}
|
2692
|
+
if ($typearr[1] != 'punct_qualifier'
|
2693
|
+
&& $typearr[1] != 'alpha_variable'
|
2694
|
+
&& $typearr[1] != 'punct_user'
|
2695
|
+
) {
|
2696
|
+
$before .= ' ';
|
2697
|
+
}
|
2698
|
+
break;
|
2699
|
+
default:
|
2700
|
+
break;
|
2701
|
+
} // end switch ($typearr[2])
|
2702
|
+
|
2703
|
+
/*
|
2704
|
+
if ($typearr[3] != 'punct_qualifier') {
|
2705
|
+
$after .= ' ';
|
2706
|
+
}
|
2707
|
+
$after .= "\n";
|
2708
|
+
*/
|
2709
|
+
$str .= $before;
|
2710
|
+
if ($mode == 'text') {
|
2711
|
+
$str .= htmlspecialchars($arr[$i]['data']);
|
2712
|
+
} else {
|
2713
|
+
$str .= $arr[$i]['data'];
|
2714
|
+
}
|
2715
|
+
$str .= $after;
|
2716
|
+
} // end for
|
2717
|
+
// close unclosed indent levels
|
2718
|
+
while ($indent > 0) {
|
2719
|
+
$indent--;
|
2720
|
+
$str .= ($mode != 'query_only' ? '</div>' : ' ');
|
2721
|
+
}
|
2722
|
+
|
2723
|
+
return $str;
|
2724
|
+
} // end of the "PMA_SQP_format()" function
|
2725
|
+
|
2726
|
+
/**
|
2727
|
+
* Define variables for PMA_SQP_format
|
2728
|
+
*
|
2729
|
+
* @param array $arr The SQL queries
|
2730
|
+
* @param array $typearr Types
|
2731
|
+
* @param array $keywords_no_newline Reserved words without newline placed
|
2732
|
+
* near them
|
2733
|
+
* @param int $index Index in $arr
|
2734
|
+
* @param boolean $in_priv_list Is in privilege list
|
2735
|
+
* @param string $space_alpha_reserved_word Reserved word separator
|
2736
|
+
* @param string $before String before
|
2737
|
+
* @param array $keywords_priv_list Keywords list of privileges
|
2738
|
+
*
|
2739
|
+
* @return array
|
2740
|
+
*/
|
2741
|
+
function PMA_SQP_getBeforeAndInPrivList(
|
2742
|
+
$arr, $typearr, $keywords_no_newline, $index, $in_priv_list,
|
2743
|
+
$space_alpha_reserved_word, $before, $keywords_priv_list
|
2744
|
+
) {
|
2745
|
+
if (!((($typearr[1] != 'alpha_reservedWord')
|
2746
|
+
|| (($typearr[1] == 'alpha_reservedWord')
|
2747
|
+
&& isset($keywords_no_newline[/*overload*/mb_strtoupper($arr[$index - 1]['data'])])))
|
2748
|
+
&& ($typearr[1] != 'punct_level_plus')
|
2749
|
+
&& (!isset($keywords_no_newline[$arr[$index]['data']])))
|
2750
|
+
) {
|
2751
|
+
$before .= ' ';
|
2752
|
+
return array($before, $in_priv_list);
|
2753
|
+
}
|
2754
|
+
|
2755
|
+
// do not put a space before the first token, because
|
2756
|
+
// we use a lot of pattern matching checking for the
|
2757
|
+
// first reserved word at beginning of query
|
2758
|
+
// so do not put a newline before
|
2759
|
+
//
|
2760
|
+
// also we must not be inside a privilege list
|
2761
|
+
if ($index > 0) {
|
2762
|
+
// the alpha_identifier exception is there to
|
2763
|
+
// catch cases like
|
2764
|
+
// GRANT SELECT ON mydb.mytable TO myuser@localhost
|
2765
|
+
// (else, we get mydb.mytableTO)
|
2766
|
+
//
|
2767
|
+
// the quote_single exception is there to
|
2768
|
+
// catch cases like
|
2769
|
+
// GRANT ... TO 'marc'@'domain.com' IDENTIFIED...
|
2770
|
+
/**
|
2771
|
+
* @todo fix all cases and find why this happens
|
2772
|
+
*/
|
2773
|
+
|
2774
|
+
if (!$in_priv_list
|
2775
|
+
|| in_array(
|
2776
|
+
$typearr[1],
|
2777
|
+
array('alpha_identifier', 'quote_single', 'white_newline')
|
2778
|
+
)
|
2779
|
+
) {
|
2780
|
+
$before .= $space_alpha_reserved_word;
|
2781
|
+
}
|
2782
|
+
return array($before, $in_priv_list);
|
2783
|
+
}
|
2784
|
+
|
2785
|
+
// on first keyword, check if it introduces a
|
2786
|
+
// privilege list
|
2787
|
+
if (isset($keywords_priv_list[$arr[$index]['data']])) {
|
2788
|
+
$in_priv_list = true;
|
2789
|
+
}
|
2790
|
+
return array($before, $in_priv_list);
|
2791
|
+
}
|
2792
|
+
|
2793
|
+
/**
|
2794
|
+
* Define variables for PMA_SQP_format
|
2795
|
+
*
|
2796
|
+
* @param string $data Data to check
|
2797
|
+
* @param boolean $in_priv_list In privilege list
|
2798
|
+
* @param string $html_line_break HTML line break
|
2799
|
+
* @param string $space_punct_listsep List separator
|
2800
|
+
* @param string $space_alpha_reserved_word Space between reserved words
|
2801
|
+
*
|
2802
|
+
* @todo check definition of $space_punct_listsep and $space_alpha_reserved_word
|
2803
|
+
*
|
2804
|
+
* @return array Variables needed by PMA_SQP_format
|
2805
|
+
*/
|
2806
|
+
function PMA_SQP_getListsepAndReservedWord(
|
2807
|
+
$data, $in_priv_list, $html_line_break, $space_punct_listsep,
|
2808
|
+
$space_alpha_reserved_word
|
2809
|
+
) {
|
2810
|
+
switch ($data) {
|
2811
|
+
case 'CREATE':
|
2812
|
+
case 'ALTER':
|
2813
|
+
case 'DROP':
|
2814
|
+
case 'RENAME';
|
2815
|
+
case 'TRUNCATE':
|
2816
|
+
case 'ANALYZE':
|
2817
|
+
case 'ANALYSE':
|
2818
|
+
case 'OPTIMIZE':
|
2819
|
+
if (!$in_priv_list) {
|
2820
|
+
$space_punct_listsep = $html_line_break;
|
2821
|
+
$space_alpha_reserved_word = ' ';
|
2822
|
+
}
|
2823
|
+
break;
|
2824
|
+
case 'EVENT':
|
2825
|
+
case 'TABLESPACE':
|
2826
|
+
case 'TABLE':
|
2827
|
+
case 'FUNCTION':
|
2828
|
+
case 'INDEX':
|
2829
|
+
case 'PROCEDURE':
|
2830
|
+
case 'SERVER':
|
2831
|
+
case 'TRIGGER':
|
2832
|
+
case 'DATABASE':
|
2833
|
+
case 'VIEW':
|
2834
|
+
case 'GROUP':
|
2835
|
+
break;
|
2836
|
+
case 'SET':
|
2837
|
+
if (!$in_priv_list) {
|
2838
|
+
$space_punct_listsep = $html_line_break;
|
2839
|
+
$space_alpha_reserved_word = ' ';
|
2840
|
+
}
|
2841
|
+
break;
|
2842
|
+
case 'EXPLAIN':
|
2843
|
+
case 'DESCRIBE':
|
2844
|
+
case 'DELETE':
|
2845
|
+
case 'SHOW':
|
2846
|
+
case 'UPDATE':
|
2847
|
+
if (!$in_priv_list) {
|
2848
|
+
$space_punct_listsep = $html_line_break;
|
2849
|
+
$space_alpha_reserved_word = ' ';
|
2850
|
+
}
|
2851
|
+
break;
|
2852
|
+
case 'INSERT':
|
2853
|
+
case 'REPLACE':
|
2854
|
+
if (!$in_priv_list) {
|
2855
|
+
$space_punct_listsep = $html_line_break;
|
2856
|
+
$space_alpha_reserved_word = $html_line_break;
|
2857
|
+
}
|
2858
|
+
break;
|
2859
|
+
case 'VALUES':
|
2860
|
+
$space_punct_listsep = ' ';
|
2861
|
+
$space_alpha_reserved_word = $html_line_break;
|
2862
|
+
break;
|
2863
|
+
case 'SELECT':
|
2864
|
+
$space_punct_listsep = ' ';
|
2865
|
+
$space_alpha_reserved_word = $html_line_break;
|
2866
|
+
break;
|
2867
|
+
case 'CALL':
|
2868
|
+
case 'DO':
|
2869
|
+
case 'HANDLER':
|
2870
|
+
break;
|
2871
|
+
default:
|
2872
|
+
break;
|
2873
|
+
}
|
2874
|
+
return array($space_punct_listsep, $space_alpha_reserved_word);
|
2875
|
+
}
|
2876
|
+
|
2877
|
+
/**
|
2878
|
+
* Gets SQL queries with no format
|
2879
|
+
*
|
2880
|
+
* @param array $arr The SQL queries list
|
2881
|
+
*
|
2882
|
+
* @return string The SQL queries with no format
|
2883
|
+
*
|
2884
|
+
* @access public
|
2885
|
+
*/
|
2886
|
+
function PMA_SQP_formatNone($arr)
|
2887
|
+
{
|
2888
|
+
$formatted_sql = htmlspecialchars($arr['raw']);
|
2889
|
+
$formatted_sql = preg_replace(
|
2890
|
+
"@((\015\012)|(\015)|(\012)){3,}@",
|
2891
|
+
"\n\n",
|
2892
|
+
$formatted_sql
|
2893
|
+
);
|
2894
|
+
|
2895
|
+
return $formatted_sql;
|
2896
|
+
} // end of the "PMA_SQP_formatNone()" function
|
2897
|
+
|
2898
|
+
/**
|
2899
|
+
* Checks whether a given name is MySQL reserved word
|
2900
|
+
*
|
2901
|
+
* @param string $column The word to be checked
|
2902
|
+
*
|
2903
|
+
* @return boolean whether true or false
|
2904
|
+
*/
|
2905
|
+
function PMA_SQP_isKeyWord($column)
|
2906
|
+
{
|
2907
|
+
global $PMA_SQPdata_forbidden_word;
|
2908
|
+
return in_array(
|
2909
|
+
/*overload*/mb_strtoupper($column),
|
2910
|
+
$PMA_SQPdata_forbidden_word
|
2911
|
+
);
|
2912
|
+
}
|
2913
|
+
|
2914
|
+
/**
|
2915
|
+
* Get Parser Data Map from sqlparser.data.php
|
2916
|
+
*
|
2917
|
+
* @return Array Parser Data Map from sqlparser.data.php
|
2918
|
+
*/
|
2919
|
+
function PMA_SQP_getParserDataMap()
|
2920
|
+
{
|
2921
|
+
include 'libraries/sqlparser.data.php';
|
2922
|
+
return array(
|
2923
|
+
'PMA_SQPdata_function_name' => $PMA_SQPdata_function_name,
|
2924
|
+
'PMA_SQPdata_column_attrib' => $PMA_SQPdata_column_attrib,
|
2925
|
+
'PMA_SQPdata_reserved_word' => $PMA_SQPdata_reserved_word,
|
2926
|
+
'PMA_SQPdata_forbidden_word' => $PMA_SQPdata_forbidden_word,
|
2927
|
+
'PMA_SQPdata_column_type' => $PMA_SQPdata_column_type,
|
2928
|
+
);
|
2929
|
+
}
|
2930
|
+
|
2931
|
+
/**
|
2932
|
+
* Get Parser analyze Map from parse_analyze_inc.php
|
2933
|
+
*
|
2934
|
+
* @param array $sql_query The SQL string
|
2935
|
+
* @param array $db Current DB
|
2936
|
+
*
|
2937
|
+
* @return Array analyze Map from parse_analyze_inc.php
|
2938
|
+
*/
|
2939
|
+
function PMA_SQP_getParserAnalyzeMap($sql_query, $db)
|
2940
|
+
{
|
2941
|
+
include 'libraries/parse_analyze.inc.php';
|
2942
|
+
return $analyzed_sql_results;
|
2943
|
+
}
|
2944
|
+
|
2945
|
+
/**
|
2946
|
+
* Get Aliases from select query
|
2947
|
+
* Note: only useful for select query on single table.
|
2948
|
+
*
|
2949
|
+
* @param string $select_query The Select SQL Query
|
2950
|
+
* @param string $db Current DB
|
2951
|
+
*
|
2952
|
+
* @return Array alias information from select query
|
2953
|
+
*/
|
2954
|
+
function PMA_SQP_getAliasesFromQuery($select_query, $db)
|
2955
|
+
{
|
2956
|
+
if (empty($select_query) || empty($db)) {
|
2957
|
+
return array();
|
2958
|
+
}
|
2959
|
+
$analyzed_sql = PMA_SQP_analyze(PMA_SQP_parse($select_query));
|
2960
|
+
$aliases = array(
|
2961
|
+
$db => array(
|
2962
|
+
'alias' => null,
|
2963
|
+
'tables' => array()
|
2964
|
+
)
|
2965
|
+
);
|
2966
|
+
foreach ($analyzed_sql[0]['table_ref'] as $table) {
|
2967
|
+
$t_db = !empty($table['db']) ? $table['db'] : $db;
|
2968
|
+
if (!isset($aliases[$t_db])) {
|
2969
|
+
$aliases[$t_db] = array(
|
2970
|
+
'alias' => null,
|
2971
|
+
'tables' => array()
|
2972
|
+
);
|
2973
|
+
}
|
2974
|
+
$aliases[$t_db]['tables'][$table['table_true_name']] = array(
|
2975
|
+
'alias' => !empty($table['table_alias'])
|
2976
|
+
? $table['table_alias'] : null,
|
2977
|
+
'columns' => array()
|
2978
|
+
);
|
2979
|
+
}
|
2980
|
+
foreach ($analyzed_sql[0]['select_expr'] as $cols) {
|
2981
|
+
if (!empty($cols['alias'])) {
|
2982
|
+
$t_db = !empty($cols['db']) ? $cols['db'] : $db;
|
2983
|
+
if (!empty($cols['table_true_name'])) {
|
2984
|
+
$aliases[$t_db]['tables'][$cols['table_true_name']]
|
2985
|
+
['columns'][$cols['column']] = $cols['alias'];
|
2986
|
+
} else {
|
2987
|
+
foreach ($aliases[$t_db]['tables'] as $key => $table) {
|
2988
|
+
$aliases[$t_db]['tables'][$key]
|
2989
|
+
['columns'][$cols['column']] = $cols['alias'];
|
2990
|
+
}
|
2991
|
+
}
|
2992
|
+
}
|
2993
|
+
}
|
2994
|
+
return $aliases;
|
2995
|
+
}
|
2996
|
+
|
2997
|
+
?>
|