From bb7786ee6b16367d845016690a14d888f81b9638 Mon Sep 17 00:00:00 2001 From: Hugues Peccatte Date: Tue, 25 Aug 2015 18:10:07 +0200 Subject: [PATCH] Set namespace on Advisor, Config, Console and Util classes. Set namespace on DbQbe. Set namespace to 'DbSearch'. Split Advisor.class.php file. Change Advisor namespace. Rename DbQbe class and file. Set namespace on DisplayResults. Set namespace on Error. Use namespace for ErrorHandler. Add class autoloader. Change ErrorHandler filename. Remove some require. Update Config namespace path. Update PMA_Util to PMA\libraries\Util. Rename Font and File classes files. Use namespace for Footer. Set namespace in all libraries classes. Namespace OutputBuffering. Export SubPartition. Rename Partition file. Namespace PDF. Namespace RecentFavoriteTable. Replace PMA_Response by Response and PMA_Message by Message. Update uses and calls. Fix unit tests. Fix SqlParser autoload. Signed-off-by: Hugues Peccatte --- browse_foreigners.php | 4 +- changelog.php | 2 +- chk_rel.php | 2 +- db_central_columns.php | 4 +- db_create.php | 16 +- db_datadict.php | 20 +- db_designer.php | 6 +- db_events.php | 2 +- db_export.php | 8 +- db_import.php | 6 +- db_operations.php | 33 +- db_qbe.php | 12 +- db_routines.php | 2 +- db_search.php | 11 +- db_sql.php | 2 +- db_sql_autocomplete.php | 2 +- db_sql_format.php | 2 +- db_structure.php | 8 +- db_tracking.php | 21 +- error_report.php | 8 +- export.php | 9 +- file_echo.php | 2 + gis_data_editor.php | 5 +- import.php | 84 ++-- import_status.php | 4 +- index.php | 44 +- js/ajax.js | 2 +- js/common.js | 4 +- js/functions.js | 4 +- js/get_image.js.php | 6 +- js/get_scripts.js.php | 6 +- js/messages.php | 10 +- js/whitelist.php | 6 +- libraries/{Advisor.class.php => Advisor.php} | 173 +++---- libraries/{Config.class.php => Config.php} | 61 +-- libraries/{Console.class.php => Console.php} | 7 +- ...erface.class.php => DatabaseInterface.php} | 211 +++++---- libraries/{DBQbe.class.php => DbQbe.php} | 42 +- .../{DbSearch.class.php => DbSearch.php} | 26 +- ...ayResults.class.php => DisplayResults.php} | 173 +++---- libraries/{Error.class.php => Error.php} | 51 ++- ...ror_Handler.class.php => ErrorHandler.php} | 40 +- libraries/{File.class.php => File.php} | 26 +- libraries/{Font.class.php => Font.php} | 6 +- libraries/{Footer.class.php => Footer.php} | 16 +- libraries/{Header.class.php => Header.php} | 50 +-- libraries/{Index.class.php => Index.php} | 260 ++--------- libraries/IndexColumn.php | 180 ++++++++ libraries/{Linter.class.php => Linter.php} | 25 +- libraries/{List.class.php => List.php} | 6 +- ...st_Database.class.php => ListDatabase.php} | 15 +- libraries/{Menu.class.php => Menu.php} | 58 ++- libraries/{Message.class.php => Message.php} | 147 +++--- ...uffering.class.php => OutputBuffering.php} | 16 +- libraries/{PDF.class.php => PDF.php} | 15 +- libraries/PMA.php | 13 +- .../{Partition.class.php => Partition.php} | 210 +-------- libraries/Psr4Autoloader.php | 143 ++++++ ...able.class.php => RecentFavoriteTable.php} | 39 +- libraries/Response.class.php | 54 +-- libraries/SavedSearches.class.php | 73 ++- libraries/Scripts.class.php | 8 +- libraries/ServerStatusData.class.php | 5 +- libraries/StorageEngine.class.php | 23 +- libraries/String.class.php | 6 +- libraries/StringAbstractType.class.php | 6 +- libraries/StringCType.class.php | 4 +- libraries/StringNativeType.class.php | 4 +- libraries/SubPartition.php | 180 ++++++++ libraries/SystemDatabase.class.php | 23 +- libraries/Table.class.php | 356 +++++++-------- libraries/Template.class.php | 13 +- libraries/Theme.class.php | 4 +- libraries/Theme_Manager.class.php | 4 +- libraries/Tracker.class.php | 100 ++--- libraries/{Util.class.php => Util.php} | 236 ++++++---- libraries/advisor.lib.php | 72 +++ libraries/autoloader.php | 13 + libraries/bookmark.lib.php | 56 +-- libraries/browse_foreigners.lib.php | 2 +- libraries/build_html_for_db.lib.php | 12 +- libraries/central_columns.lib.php | 165 +++---- libraries/check_user_privileges.lib.php | 26 +- libraries/common.inc.php | 63 +-- libraries/config/ConfigFile.class.php | 4 +- libraries/config/FormDisplay.class.php | 2 +- libraries/config/FormDisplay.tpl.php | 6 +- libraries/config/Validator.class.php | 8 +- libraries/config/page_settings.class.php | 12 +- libraries/controllers/Controller.class.php | 13 +- .../DatabaseStructureController.class.php | 49 +- .../TableChartController.class.php | 18 +- .../TableGisVisualizationController.class.php | 10 +- .../TableIndexesController.class.php | 27 +- .../TableRelationController.class.php | 38 +- .../TableSearchController.class.php | 118 ++--- .../TableStructureController.class.php | 159 +++---- libraries/core.lib.php | 27 +- libraries/create_addfield.lib.php | 34 +- libraries/database_interface.inc.php | 10 +- libraries/db_common.inc.php | 18 +- libraries/db_designer.lib.php | 52 +-- libraries/db_table_exists.lib.php | 15 +- libraries/dbi/DBIDrizzle.class.php | 2 +- libraries/dbi/DBIMysql.class.php | 4 +- libraries/dbi/DBIMysqli.class.php | 4 +- libraries/display_change_password.lib.php | 10 +- libraries/display_create_database.lib.php | 8 +- libraries/display_create_table.lib.php | 2 +- libraries/display_export.inc.php | 6 +- libraries/display_export.lib.php | 25 +- libraries/display_git_revision.lib.php | 6 +- libraries/display_import.lib.php | 20 +- libraries/display_select_lang.lib.php | 2 +- libraries/engines/bdb.lib.php | 2 + libraries/engines/binlog.lib.php | 2 + libraries/engines/innodb.lib.php | 30 +- libraries/engines/memory.lib.php | 2 + libraries/engines/merge.lib.php | 2 + libraries/engines/myisam.lib.php | 2 + libraries/engines/ndbcluster.lib.php | 2 + libraries/engines/pbxt.lib.php | 6 +- libraries/engines/performance_schema.lib.php | 2 + libraries/error_report.lib.php | 10 +- libraries/export.lib.php | 35 +- libraries/gis/GIS_Factory.class.php | 2 +- libraries/gis/GIS_Polygon.class.php | 6 +- libraries/gis/GIS_Visualization.class.php | 12 +- libraries/import.lib.php | 73 +-- libraries/index.lib.php | 6 +- libraries/insert_edit.lib.php | 120 ++--- libraries/ip_allow_deny.lib.php | 2 +- libraries/js_escape.lib.php | 2 +- libraries/mult_submits.inc.php | 24 +- libraries/mult_submits.lib.php | 78 ++-- libraries/mysql_charsets.inc.php | 30 +- libraries/mysql_charsets.lib.php | 4 +- libraries/navigation/Navigation.class.php | 48 +- .../navigation/NavigationHeader.class.php | 20 +- libraries/navigation/NavigationTree.class.php | 22 +- libraries/navigation/Nodes/Node.class.php | 22 +- .../navigation/Nodes/Node_Column.class.php | 2 +- .../Nodes/Node_Column_Container.class.php | 4 +- .../navigation/Nodes/Node_Database.class.php | 72 +-- .../Nodes/Node_DatabaseChild.class.php | 2 +- .../Nodes/Node_Database_Container.class.php | 2 +- .../navigation/Nodes/Node_Event.class.php | 2 +- .../Nodes/Node_Event_Container.class.php | 4 +- .../navigation/Nodes/Node_Function.class.php | 2 +- .../Nodes/Node_Function_Container.class.php | 4 +- .../navigation/Nodes/Node_Index.class.php | 2 +- .../Nodes/Node_Index_Container.class.php | 4 +- .../navigation/Nodes/Node_Procedure.class.php | 2 +- .../Nodes/Node_Procedure_Container.class.php | 4 +- .../navigation/Nodes/Node_Table.class.php | 70 +-- .../Nodes/Node_Table_Container.class.php | 4 +- .../navigation/Nodes/Node_Trigger.class.php | 2 +- .../Nodes/Node_Trigger_Container.class.php | 4 +- .../navigation/Nodes/Node_View.class.php | 2 +- .../Nodes/Node_View_Container.class.php | 4 +- libraries/normalization.lib.php | 91 ++-- libraries/operations.lib.php | 195 ++++---- libraries/plugin_interface.lib.php | 6 +- .../auth/AuthenticationConfig.class.php | 8 +- .../auth/AuthenticationCookie.class.php | 25 +- .../plugins/auth/AuthenticationHttp.class.php | 9 +- .../auth/AuthenticationSignon.class.php | 2 +- .../plugins/auth/swekey/swekey.auth.lib.php | 4 +- .../plugins/export/ExportCodegen.class.php | 8 +- libraries/plugins/export/ExportCsv.class.php | 2 +- .../plugins/export/ExportHtmlword.class.php | 4 +- libraries/plugins/export/ExportJson.class.php | 2 +- .../plugins/export/ExportLatex.class.php | 18 +- .../plugins/export/ExportMediawiki.class.php | 6 +- libraries/plugins/export/ExportOds.class.php | 2 +- libraries/plugins/export/ExportOdt.class.php | 4 +- .../plugins/export/ExportPhparray.class.php | 8 +- libraries/plugins/export/ExportSql.class.php | 155 +++---- .../plugins/export/ExportTexytext.class.php | 4 +- libraries/plugins/export/ExportXml.class.php | 14 +- libraries/plugins/export/ExportYaml.class.php | 2 +- .../plugins/export/PMA_ExportPdf.class.php | 12 +- libraries/plugins/import/ImportCsv.class.php | 30 +- libraries/plugins/import/ImportLdi.class.php | 14 +- .../plugins/import/ImportMediawiki.class.php | 2 +- libraries/plugins/import/ImportOds.class.php | 4 +- libraries/plugins/import/ImportShp.class.php | 8 +- libraries/plugins/import/ImportSql.class.php | 2 +- libraries/plugins/import/ImportXml.class.php | 6 +- .../schema/Export_Relation_Schema.class.php | 4 +- libraries/plugins/schema/TableStats.class.php | 10 +- .../schema/dia/Dia_Relation_Schema.class.php | 4 +- .../schema/dia/RelationStatsDia.class.php | 2 +- .../schema/eps/Eps_Relation_Schema.class.php | 6 +- .../schema/eps/TableStatsEps.class.php | 6 +- .../schema/pdf/Pdf_Relation_Schema.class.php | 22 +- .../schema/svg/Svg_Relation_Schema.class.php | 6 +- .../schema/svg/TableStatsSvg.class.php | 6 +- .../DateFormatTransformationsPlugin.class.php | 2 +- .../SQLTransformationsPlugin.class.php | 2 +- .../output/Text_Plain_Json.class.php | 4 +- .../output/Text_Plain_Sql.class.php | 4 +- .../output/Text_Plain_Xml.class.php | 4 +- libraries/pmd_common.php | 172 +++---- libraries/relation.lib.php | 229 +++++----- libraries/relation_cleanup.lib.php | 224 +++++----- libraries/replication.inc.php | 2 +- libraries/replication_gui.lib.php | 30 +- libraries/rte/rte_events.lib.php | 38 +- libraries/rte/rte_export.lib.php | 13 +- libraries/rte/rte_footer.lib.php | 10 +- libraries/rte/rte_general.lib.php | 13 +- libraries/rte/rte_list.lib.php | 28 +- libraries/rte/rte_main.inc.php | 4 +- libraries/rte/rte_routines.lib.php | 126 +++--- libraries/rte/rte_triggers.lib.php | 26 +- libraries/sanitizing.lib.php | 2 +- libraries/select_server.lib.php | 4 +- libraries/server_bin_log.lib.php | 15 +- libraries/server_common.inc.php | 2 +- libraries/server_common.lib.php | 4 +- libraries/server_databases.lib.php | 28 +- libraries/server_engines.lib.php | 6 +- libraries/server_privileges.lib.php | 421 +++++++++--------- libraries/server_status.lib.php | 42 +- libraries/server_status_advisor.lib.php | 6 +- libraries/server_status_monitor.lib.php | 30 +- libraries/server_status_processes.lib.php | 15 +- libraries/server_status_queries.lib.php | 18 +- libraries/server_status_variables.lib.php | 18 +- libraries/server_user_groups.lib.php | 48 +- libraries/server_variables.lib.php | 34 +- libraries/special_schema_links.lib.php | 30 +- libraries/sql.lib.php | 146 +++--- libraries/sql_query_form.lib.php | 20 +- libraries/string.lib.php | 2 +- libraries/stringMb.lib.php | 2 +- libraries/stringNative.lib.php | 2 +- libraries/tbl_columns_definition_form.inc.php | 21 +- libraries/tbl_common.inc.php | 6 +- libraries/tbl_info.inc.php | 4 +- libraries/tracking.lib.php | 93 ++-- libraries/transformations.lib.php | 68 +-- libraries/user_preferences.inc.php | 14 +- libraries/user_preferences.lib.php | 30 +- libraries/util.lib.php | 1 - lint.php | 7 +- navigation.php | 4 +- normalization.php | 4 +- phpinfo.php | 2 +- phpmyadmin.css.php | 7 +- prefs_forms.php | 2 +- prefs_manage.php | 25 +- schema_export.php | 2 +- scripts/decode_bug.php | 1 + server_binlog.php | 4 +- server_collations.php | 2 +- server_databases.php | 2 +- server_engines.php | 2 +- server_export.php | 2 +- server_import.php | 4 +- server_modules.php | 2 +- server_plugins.php | 2 +- server_privileges.php | 20 +- server_replication.php | 4 +- server_sql.php | 2 +- server_status.php | 4 +- server_status_advisor.php | 5 +- server_status_monitor.php | 12 +- server_status_processes.php | 8 +- server_status_queries.php | 4 +- server_status_variables.php | 4 +- server_user_groups.php | 4 +- server_variables.php | 4 +- setup/lib/common.inc.php | 2 +- setup/lib/index.lib.php | 6 +- sql.php | 16 +- tbl_addfield.php | 11 +- tbl_change.php | 8 +- tbl_chart.php | 6 +- tbl_create.php | 11 +- tbl_export.php | 22 +- tbl_find_replace.php | 4 +- tbl_get_field.php | 14 +- tbl_gis_visualization.php | 12 +- tbl_import.php | 4 +- tbl_indexes.php | 13 +- tbl_operations.php | 35 +- tbl_recent_favorite.php | 10 +- tbl_relation.php | 14 +- tbl_replace.php | 24 +- tbl_row_action.php | 2 +- tbl_select.php | 7 +- tbl_sql.php | 3 +- tbl_structure.php | 6 +- tbl_tracking.php | 16 +- tbl_zoom_select.php | 4 +- .../column_attributes.phtml | 36 +- .../columns_definitions/column_default.phtml | 2 +- .../column_definitions_form.phtml | 15 +- .../columns_definitions/column_type.phtml | 2 +- .../column_virtuality.phtml | 2 +- .../columns_definitions/move_column.phtml | 2 +- .../table_fields_definitions.phtml | 18 +- templates/database/create_table.phtml | 4 +- .../database/designer/database_tables.phtml | 2 +- .../database/designer/page_save_as.phtml | 2 +- templates/database/designer/side_menu.phtml | 2 +- .../structure/body_for_table_summary.phtml | 14 +- .../print_view_data_dictionary_link.phtml | 4 +- .../database/structure/show_create.phtml | 4 +- .../database/structure/sortable_header.phtml | 10 +- .../structure/structure_table_row.phtml | 14 +- .../database/structure/table_header.phtml | 22 +- .../database/structure/tracking_icon.phtml | 4 +- templates/list/item.phtml | 2 +- templates/list/unordered.phtml | 2 +- templates/preview_sql.phtml | 4 +- templates/secondary_tabs.phtml | 2 +- templates/table/chart/tbl_chart.phtml | 4 +- .../gis_visualization/gis_visualization.phtml | 4 +- templates/table/index_form.phtml | 12 +- templates/table/relation/common_form.phtml | 14 +- .../table/relation/foreign_key_row.phtml | 32 +- .../relation/internal_relational_row.phtml | 12 +- templates/table/search/fields_table.phtml | 6 +- templates/table/search/geom_func.phtml | 4 +- templates/table/search/input_box.phtml | 6 +- templates/table/search/options.phtml | 6 +- templates/table/search/rows_normal.phtml | 2 +- .../table/search/search_and_replace.phtml | 2 +- templates/table/search/selection_form.phtml | 12 +- templates/table/search/zoom_result_form.phtml | 2 +- templates/table/secondary_tabs.phtml | 6 +- .../action_row_in_structure_table.phtml | 4 +- .../actions_in_table_structure.phtml | 26 +- templates/table/structure/add_column.phtml | 4 +- .../structure/check_all_table_column.phtml | 20 +- .../table/structure/display_partitions.phtml | 12 +- .../table/structure/display_structure.phtml | 53 +-- .../table/structure/display_table_stats.phtml | 6 +- .../structure/optional_action_links.phtml | 20 +- .../table/structure/row_stats_table.phtml | 12 +- .../structure/table_structure_header.phtml | 2 +- .../table/structure/table_structure_row.phtml | 6 +- test/bootstrap-dist.php | 6 +- test/classes/PMA_Advisor_test.php | 7 +- test/classes/PMA_Config_test.php | 38 +- test/classes/PMA_DatabaseInterface_test.php | 4 +- ...{PMA_DBQbe_test.php => PMA_DbQbe_test.php} | 18 +- test/classes/PMA_DbSearch_test.php | 15 +- test/classes/PMA_DisplayResults_test.php | 32 +- ...ler_test.php => PMA_ErrorHandler_test.php} | 24 +- test/classes/PMA_Error_test.php | 12 +- test/classes/PMA_File_test.php | 18 +- test/classes/PMA_Font_test.php | 72 +-- test/classes/PMA_Footer_test.php | 30 +- test/classes/PMA_Header_test.php | 32 +- test/classes/PMA_Index_test.php | 20 +- test/classes/PMA_List_Database_test.php | 26 +- test/classes/PMA_Menu_test.php | 21 +- test/classes/PMA_Message_test.php | 96 ++-- test/classes/PMA_PDF_test.php | 26 +- test/classes/PMA_Scripts_test.php | 2 + test/classes/PMA_ServerStatusData_test.php | 6 +- test/classes/PMA_StorageEngine_test.php | 4 +- test/classes/PMA_SystemDatabase_test.php | 2 +- test/classes/PMA_Table_test.php | 11 +- test/classes/PMA_Template_test.php | 12 +- test/classes/PMA_Theme_Manager_test.php | 8 +- test/classes/PMA_Theme_test.php | 8 +- test/classes/PMA_Util_test.php | 24 +- test/classes/config/PMA_FormDisplay_test.php | 8 +- test/classes/config/PMA_Form_test.php | 8 +- .../DatabaseStructureController_test.php | 24 +- .../TableIndexesController_test.php | 31 +- .../TableRelationController_test.php | 13 +- .../TableSearchController_test.php | 11 +- .../TableStructureController_test.php | 17 +- test/classes/dbi/DBIDrizzle_test.php | 6 +- test/classes/dbi/DBIMysql_test.php | 4 +- test/classes/dbi/DBIMysqli_test.php | 6 +- test/classes/gis/PMA_GIS_Geom_test.php | 2 +- .../classes/gis/PMA_GIS_Multipolygon_test.php | 2 +- test/classes/gis/PMA_GIS_Polygon_test.php | 2 +- .../navigation/PMA_NavigationTree_test.php | 10 +- .../navigation/PMA_Navigation_test.php | 10 +- .../navigation/PMA_NodeFactory_test.php | 4 +- .../PMA_Node_Column_Container_test.php | 4 +- .../navigation/PMA_Node_Column_test.php | 4 +- .../PMA_Node_DatabaseChild_test.php | 4 +- .../navigation/PMA_Node_Database_test.php | 4 +- .../PMA_Node_Event_Container_test.php | 4 +- .../navigation/PMA_Node_Event_test.php | 4 +- .../PMA_Node_Function_Container_test.php | 4 +- .../navigation/PMA_Node_Function_test.php | 4 +- .../PMA_Node_Index_Container_test.php | 4 +- .../navigation/PMA_Node_Index_test.php | 4 +- .../PMA_Node_Procedure_Container_test.php | 4 +- .../navigation/PMA_Node_Procedure_test.php | 4 +- .../PMA_Node_Table_Container_test.php | 4 +- .../navigation/PMA_Node_Table_test.php | 4 +- .../PMA_Node_Trigger_Container_test.php | 4 +- .../navigation/PMA_Node_Trigger_test.php | 4 +- .../PMA_Node_View_Container_test.php | 4 +- .../classes/navigation/PMA_Node_View_test.php | 4 +- test/classes/navigation/PMA_Node_test.php | 18 +- .../auth/PMA_AuthenticationConfig_test.php | 14 +- .../auth/PMA_AuthenticationCookie_test.php | 52 +-- .../auth/PMA_AuthenticationHttp_test.php | 24 +- .../auth/PMA_AuthenticationSignon_test.php | 14 +- .../plugin/export/PMA_ExportCodegen_test.php | 12 +- .../plugin/export/PMA_ExportCsv_test.php | 30 +- .../plugin/export/PMA_ExportExcel_test.php | 4 +- .../plugin/export/PMA_ExportHtmlword_test.php | 22 +- .../plugin/export/PMA_ExportJson_test.php | 8 +- .../plugin/export/PMA_ExportLatex_test.php | 16 +- .../export/PMA_ExportMediawiki_test.php | 12 +- .../plugin/export/PMA_ExportOds_test.php | 18 +- .../plugin/export/PMA_ExportOdt_test.php | 28 +- .../plugin/export/PMA_ExportPdf_test.php | 4 +- .../plugin/export/PMA_ExportPhparray_test.php | 14 +- .../plugin/export/PMA_ExportSql_test.php | 58 +-- .../plugin/export/PMA_ExportTexytext_test.php | 18 +- .../plugin/export/PMA_ExportXml_test.php | 18 +- .../plugin/export/PMA_ExportYaml_test.php | 8 +- .../plugin/export/PMA_TableProperty_test.php | 4 +- test/classes/plugin/import/ImportCsv_test.php | 8 +- test/classes/plugin/import/ImportLdi_test.php | 6 +- .../plugin/import/ImportMediawiki_test.php | 6 +- test/classes/plugin/import/ImportOds_test.php | 6 +- test/classes/plugin/import/ImportShp_test.php | 6 +- test/classes/plugin/import/ImportSql_test.php | 4 +- test/classes/plugin/import/ImportXml_test.php | 4 +- .../Transformation_Plugins_test.php | 6 +- .../schema/Dia_Relation_Schema_test.php | 6 +- .../schema/Eps_Relation_Schema_test.php | 6 +- .../schema/Export_Relation_Schema_test.php | 2 +- .../schema/Pdf_Relation_Schema_test.php | 6 +- .../schema/Svg_Relation_Schema_test.php | 6 +- .../engines/PMA_StorageEngine_innodb_test.php | 2 +- test/engines/PMA_StorageEngine_pbxt_test.php | 2 +- test/libraries/PMA_ConfigGenerator_test.php | 4 +- test/libraries/PMA_FormDisplay_tpl_test.php | 6 +- test/libraries/PMA_Form_Processing_test.php | 2 +- test/libraries/PMA_GIS_modifyQuery_test.php | 2 +- test/libraries/PMA_Linter_Test.php | 30 +- test/libraries/PMA_PMD_common_test.php | 34 +- test/libraries/PMA_SetupIndex_test.php | 2 +- test/libraries/PMA_StringCType_test.php | 2 + test/libraries/PMA_StringNativeType_test.php | 2 + test/libraries/PMA_Tracker_test.php | 20 +- test/libraries/PMA_bookmark_test.php | 2 +- test/libraries/PMA_browse_foreigners_test.php | 2 +- test/libraries/PMA_build_html_for_db_test.php | 4 +- test/libraries/PMA_central_columns_test.php | 16 +- test/libraries/PMA_designer_test.php | 6 +- .../PMA_display_change_password_test.php | 8 +- .../PMA_display_create_table_test.php | 6 +- test/libraries/PMA_display_export_test.php | 13 +- test/libraries/PMA_import_test.php | 8 +- test/libraries/PMA_insert_edit_test.php | 73 +-- test/libraries/PMA_ip_allow_deny_test.php | 2 +- test/libraries/PMA_js_escape_test.php | 2 +- test/libraries/PMA_mult_submits_test.php | 8 +- test/libraries/PMA_normalization_test.php | 14 +- test/libraries/PMA_operations_test.php | 4 +- test/libraries/PMA_relation_cleanup_test.php | 6 +- test/libraries/PMA_relation_test.php | 10 +- test/libraries/PMA_sanitize_test.php | 2 +- test/libraries/PMA_select_server_test.php | 8 +- test/libraries/PMA_server_binlog_test.php | 10 +- test/libraries/PMA_server_collations_test.php | 8 +- test/libraries/PMA_server_common_test.php | 4 +- test/libraries/PMA_server_databases_test.php | 16 +- test/libraries/PMA_server_engines_test.php | 13 +- test/libraries/PMA_server_plugins_test.php | 8 +- test/libraries/PMA_server_privileges_test.php | 62 +-- .../libraries/PMA_server_replication_test.php | 8 +- .../PMA_server_status_advisor_test.php | 11 +- .../PMA_server_status_monitor_test.php | 17 +- .../PMA_server_status_processes_test.php | 8 +- .../PMA_server_status_queries_test.php | 15 +- test/libraries/PMA_server_status_test.php | 7 +- .../PMA_server_status_variables_test.php | 9 +- .../libraries/PMA_server_user_groups_test.php | 12 +- test/libraries/PMA_server_variables_test.php | 12 +- test/libraries/PMA_sql_query_form_test.php | 10 +- test/libraries/PMA_string_test.php | 2 + test/libraries/PMA_tbl_tracking_test.php | 10 +- test/libraries/PMA_transformation_test.php | 6 +- test/libraries/PMA_user_preferences_test.php | 16 +- .../common/PMA_browseUploadFile_test.php | 10 +- .../common/PMA_buildActionTitles_test.php | 48 +- test/libraries/common/PMA_cache_test.php | 42 +- .../common/PMA_checkParameters_test.php | 16 +- .../PMA_contains_nonprintable_ascii_test.php | 8 +- .../PMA_convert_bit_default_value_test.php | 8 +- .../common/PMA_escapeMySqlWildcards_test.php | 10 +- .../common/PMA_expandUserString_test.php | 14 +- .../common/PMA_extractColumnSpec_test.php | 8 +- ...PMA_extractValueFromFormattedSize_test.php | 8 +- .../common/PMA_foreignKeySupported_test.php | 4 +- .../common/PMA_formatNumberByteDown_test.php | 6 +- test/libraries/common/PMA_formatSql_test.php | 10 +- .../PMA_generateHiddenMaxFileSize_test.php | 8 +- .../libraries/common/PMA_getCheckbox_test.php | 14 +- test/libraries/common/PMA_getDbLink_test.php | 20 +- .../common/PMA_getDivForSliderEffect_test.php | 12 +- .../libraries/common/PMA_getDropdown_test.php | 12 +- ...PMA_getFormattedMaximumUploadSize_test.php | 10 +- test/libraries/common/PMA_getIcon_test.php | 16 +- .../common/PMA_getRadioFields_test.php | 22 +- .../common/PMA_getTitleForTarget_test.php | 8 +- .../common/PMA_localisedDateTimespan_test.php | 6 +- test/libraries/common/PMA_pow_test.php | 20 +- .../common/PMA_printableBitValue_test.php | 8 +- .../common/PMA_quoting_slashing_test.php | 44 +- test/libraries/common/PMA_showDocu_test.php | 10 +- .../common/PMA_showMessage_test_disabled.php | 10 +- .../libraries/common/PMA_showPHPDocu_test.php | 10 +- .../common/PMA_stringOperations_test.php | 14 +- .../common/PMA_unsupportedDatatypes_test.php | 8 +- test/libraries/common/PMA_whichCrlf_test.php | 14 +- test/libraries/core/PMA_fatalError_test.php | 8 +- .../core/PMA_getTableCount_test_dis.php | 8 +- .../core/PMA_headerLocation_test.php | 8 +- .../core/PMA_warnMissingExtension_test.php | 12 +- .../rte/PMA_EVN_getEditorForm_test.php | 2 +- .../rte/PMA_EVN_getQueryFromRequest_test.php | 2 +- .../rte/PMA_RTN_getDataFromRequest_test.php | 2 +- .../rte/PMA_RTN_getEditorForm_test.php | 4 +- .../rte/PMA_RTN_getExecuteForm_test.php | 2 +- .../rte/PMA_RTN_getQueryFromRequest_test.php | 2 +- .../rte/PMA_TRI_getEditorForm_test.php | 2 +- .../rte/PMA_TRI_getQueryFromRequest_test.php | 2 +- test/libraries/stubs/ResponseStub.php | 26 +- test/theme.php | 8 +- themes.php | 2 +- themes/pmahomme/css/pmd.css.php | 1 + transformation_overview.php | 2 +- transformation_wrapper.php | 10 +- user_password.php | 26 +- version_check.php | 4 +- view_create.php | 14 +- view_operations.php | 7 +- 546 files changed, 6003 insertions(+), 5417 deletions(-) rename libraries/{Advisor.class.php => Advisor.php} (76%) rename libraries/{Config.class.php => Config.php} (98%) rename libraries/{Console.class.php => Console.php} (99%) rename libraries/{DatabaseInterface.class.php => DatabaseInterface.php} (94%) rename libraries/{DBQbe.class.php => DbQbe.php} (98%) rename libraries/{DbSearch.class.php => DbSearch.php} (96%) rename libraries/{DisplayResults.class.php => DisplayResults.php} (97%) rename libraries/{Error.class.php => Error.php} (89%) rename libraries/{Error_Handler.class.php => ErrorHandler.php} (95%) rename libraries/{File.class.php => File.php} (96%) rename libraries/{Font.class.php => Font.php} (98%) rename libraries/{Footer.class.php => Footer.php} (97%) rename libraries/{Header.class.php => Header.php} (95%) rename libraries/{Index.class.php => Index.php} (76%) create mode 100644 libraries/IndexColumn.php rename libraries/{Linter.class.php => Linter.php} (92%) rename libraries/{List.class.php => List.php} (98%) rename libraries/{List_Database.class.php => ListDatabase.php} (93%) rename libraries/{Menu.class.php => Menu.php} (92%) rename libraries/{Message.class.php => Message.php} (80%) rename libraries/{OutputBuffering.class.php => OutputBuffering.php} (90%) rename libraries/{PDF.class.php => PDF.php} (94%) rename libraries/{Partition.class.php => Partition.php} (58%) create mode 100644 libraries/Psr4Autoloader.php rename libraries/{RecentFavoriteTable.class.php => RecentFavoriteTable.php} (91%) create mode 100644 libraries/SubPartition.php rename libraries/{Util.class.php => Util.php} (97%) create mode 100644 libraries/advisor.lib.php create mode 100644 libraries/autoloader.php rename test/classes/{PMA_DBQbe_test.php => PMA_DbQbe_test.php} (97%) rename test/classes/{PMA_Error_Handler_test.php => PMA_ErrorHandler_test.php} (90%) diff --git a/browse_foreigners.php b/browse_foreigners.php index 793c00b7e5..67dffc48c5 100644 --- a/browse_foreigners.php +++ b/browse_foreigners.php @@ -24,9 +24,9 @@ foreach ($request_params as $one_request_param) { } } -PMA_Util::checkParameters(array('db', 'table', 'field')); +PMA\libraries\Util::checkParameters(array('db', 'table', 'field')); -$response = PMA_Response::getInstance(); +$response = PMA\libraries\Response::getInstance(); $response->getFooter()->setMinimal(); $header = $response->getHeader(); $header->disableMenuAndConsole(); diff --git a/changelog.php b/changelog.php index 6dbd495059..79afe72ac8 100644 --- a/changelog.php +++ b/changelog.php @@ -11,7 +11,7 @@ */ require 'libraries/common.inc.php'; -$response = PMA_Response::getInstance(); +$response = PMA\libraries\Response::getInstance(); $response->disable(); $filename = CHANGELOG_FILE; diff --git a/chk_rel.php b/chk_rel.php index e62288401e..b2cd63012d 100644 --- a/chk_rel.php +++ b/chk_rel.php @@ -26,7 +26,7 @@ if (isset($_REQUEST['fix_pmadb'])) { PMA_fixPMATables($cfgRelation['db']); } -$response = PMA_Response::getInstance(); +$response = PMA\libraries\Response::getInstance(); $response->addHTML( PMA_getRelationsParamDiagnostic($cfgRelation) ); diff --git a/db_central_columns.php b/db_central_columns.php index 2e9aac73bb..499d30bace 100644 --- a/db_central_columns.php +++ b/db_central_columns.php @@ -55,7 +55,7 @@ if (isset($_POST['add_column'])) { $selected_col[] = $_POST['column-select']; $tmp_msg = PMA_syncUniqueColumns($selected_col, false, $selected_tbl); } -$response = PMA_Response::getInstance(); +$response = PMA\libraries\Response::getInstance(); $header = $response->getHeader(); $scripts = $header->getScripts(); $scripts->addFile('jquery/jquery.uitablefilter.js'); @@ -145,7 +145,7 @@ $response->addHTML(''); $tablefooter = PMA_getCentralColumnsTableFooter($pmaThemeImage, $text_dir); $response->addHTML($tablefooter); $response->addHTML(''); -$message = PMA_Message::success( +$message = PMA\libraries\Message::success( sprintf(__('Showing rows %1$s - %2$s.'), ($pos + 1), ($pos + count($result))) ); if (isset($tmp_msg) && $tmp_msg !== true) { diff --git a/db_create.php b/db_create.php index 86cdf4bafd..6cb0a7ab40 100644 --- a/db_create.php +++ b/db_create.php @@ -25,7 +25,7 @@ $err_url = 'index.php' . PMA_URL_getCommon(); /** * Builds and executes the db creation sql query */ -$sql_query = 'CREATE DATABASE ' . PMA_Util::backquote($_POST['new_db']); +$sql_query = 'CREATE DATABASE ' . PMA\libraries\Util::backquote($_POST['new_db']); if (! empty($_POST['db_collation'])) { list($db_charset) = explode('_', $_POST['db_collation']); if (in_array($db_charset, $mysql_charsets) @@ -42,23 +42,23 @@ $sql_query .= ';'; $result = $GLOBALS['dbi']->tryQuery($sql_query); if (! $result) { - $message = PMA_Message::rawError($GLOBALS['dbi']->getError()); + $message = PMA\libraries\Message::rawError($GLOBALS['dbi']->getError()); // avoid displaying the not-created db name in header or navi panel $GLOBALS['db'] = ''; $GLOBALS['table'] = ''; /** - * If in an Ajax request, just display the message with {@link PMA_Response} + * If in an Ajax request, just display the message with {@link PMA\libraries\Response} */ if ($GLOBALS['is_ajax_request'] == true) { - $response = PMA_Response::getInstance(); + $response = PMA\libraries\Response::getInstance(); $response->isSuccess(false); $response->addJSON('message', $message); } else { include_once 'index.php'; } } else { - $message = PMA_Message::success(__('Database %1$s has been created.')); + $message = PMA\libraries\Message::success(__('Database %1$s has been created.')); $message->addParam($_POST['new_db']); $GLOBALS['db'] = $_POST['new_db']; @@ -120,18 +120,18 @@ if (! $result) { $new_db_string .= ''; - $response = PMA_Response::getInstance(); + $response = PMA\libraries\Response::getInstance(); $response->addJSON('message', $message); $response->addJSON('new_db_string', $new_db_string); $response->addJSON( 'sql_query', - PMA_Util::getMessage( + PMA\libraries\Util::getMessage( null, $sql_query, 'success' ) ); $response->addJSON( 'url_query', - PMA_Util::getScriptNameForOption( + PMA\libraries\Util::getScriptNameForOption( $GLOBALS['cfg']['DefaultTabDatabase'], 'database' ) . $url_query . '&db=' diff --git a/db_datadict.php b/db_datadict.php index 6367087152..c4d37f071e 100644 --- a/db_datadict.php +++ b/db_datadict.php @@ -23,10 +23,10 @@ if (! isset($selected_tbl)) { $tooltip_truename, $tooltip_aliasname, $pos - ) = PMA_Util::getDbInfo($db, isset($sub_part) ? $sub_part : ''); + ) = PMA\libraries\Util::getDbInfo($db, isset($sub_part) ? $sub_part : ''); } -$response = PMA_Response::getInstance(); +$response = PMA\libraries\Response::getInstance(); $header = $response->getHeader(); $header->enablePrintView(); @@ -36,12 +36,12 @@ $header->enablePrintView(); $cfgRelation = PMA_getRelationsParam(); require_once 'libraries/transformations.lib.php'; -require_once 'libraries/Index.class.php'; +require_once 'libraries/Index.php'; /** * Check parameters */ -PMA_Util::checkParameters(array('db')); +PMA\libraries\Util::checkParameters(array('db')); /** * Defines the url to return to in case of error in a sql statement @@ -86,7 +86,7 @@ foreach ($tables as $table) { $GLOBALS['dbi']->selectDb($db); $indexes = $GLOBALS['dbi']->getTableIndexes($db, $table); list($primary, $pk_array, $indexes_info, $indexes_data) - = PMA_Util::processIndexData($indexes); + = PMA\libraries\Util::processIndexData($indexes); /** * Gets columns properties @@ -130,7 +130,7 @@ foreach ($tables as $table) { $row['Null'] = 'NO'; } $extracted_columnspec - = PMA_Util::extractColumnSpec($row['Type']); + = PMA\libraries\Util::extractColumnSpec($row['Type']); // reformat mysql query output // set or enum types: slashes single quotes inside options @@ -157,7 +157,7 @@ foreach ($tables as $table) { } echo ''; echo '' . $type . ''; @@ -203,8 +203,8 @@ foreach ($tables as $table) { $count++; echo ''; // display indexes information - if (count(PMA_Index::getFromTable($table, $db)) > 0) { - echo PMA_Index::getHtmlForIndexes($table, $db, true); + if (count(PMA\libraries\Index::getFromTable($table, $db)) > 0) { + echo PMA\libraries\Index::getHtmlForIndexes($table, $db, true); } echo ''; } //ends main while @@ -212,4 +212,4 @@ foreach ($tables as $table) { /** * Displays the footer */ -echo PMA_Util::getButton(); +echo PMA\libraries\Util::getButton(); diff --git a/db_designer.php b/db_designer.php index 8acc99e69c..b5456fb425 100644 --- a/db_designer.php +++ b/db_designer.php @@ -10,7 +10,7 @@ require_once 'libraries/common.inc.php'; require_once 'libraries/pmd_common.php'; require_once 'libraries/db_designer.lib.php'; -$response = PMA_Response::getInstance(); +$response = PMA\libraries\Response::getInstance(); if (isset($_REQUEST['dialog'])) { @@ -111,7 +111,7 @@ if (isset($_GET['db'])) { $params['db'] = $_GET['db']; } -$response = PMA_Response::getInstance(); +$response = PMA\libraries\Response::getInstance(); $response->getFooter()->setMinimal(); $header = $response->getHeader(); $header->setBodyId('pmd_body'); @@ -138,7 +138,7 @@ list( $tooltip_truename, $tooltip_aliasname, $pos -) = PMA_Util::getDbInfo($db, isset($sub_part) ? $sub_part : ''); +) = PMA\libraries\Util::getDbInfo($db, isset($sub_part) ? $sub_part : ''); // Embed some data into HTML, later it will be read // by pmd/init.js and converted to JS variables. diff --git a/db_events.php b/db_events.php index 224f806dea..f630f8cc3f 100644 --- a/db_events.php +++ b/db_events.php @@ -10,7 +10,7 @@ * Include required files */ require_once 'libraries/common.inc.php'; -require_once 'libraries/Util.class.php'; +require_once 'libraries/Util.php'; /** * Include all other files diff --git a/db_export.php b/db_export.php index 6cf1be8b5e..fa9e4227d4 100644 --- a/db_export.php +++ b/db_export.php @@ -15,12 +15,12 @@ require_once 'libraries/export.lib.php'; PMA_PageSettings::showGroup('Export'); -$response = PMA_Response::getInstance(); +$response = PMA\libraries\Response::getInstance(); $header = $response->getHeader(); $scripts = $header->getScripts(); $scripts->addFile('export.js'); -// $sub_part is used in PMA_Util::getDbInfo() to see if we are coming from +// $sub_part is used in PMA\libraries\Util::getDbInfo() to see if we are coming from // db_export.php, in which case we don't obey $cfg['MaxTableList'] $sub_part = '_export'; require_once 'libraries/db_common.inc.php'; @@ -36,7 +36,7 @@ list( $tooltip_truename, $tooltip_aliasname, $pos -) = PMA_Util::getDbInfo($db, isset($sub_part) ? $sub_part : ''); +) = PMA\libraries\Util::getDbInfo($db, isset($sub_part) ? $sub_part : ''); /** * Displays the form @@ -45,7 +45,7 @@ $export_page_title = __('View dump (schema) of database'); // exit if no tables in db found if ($num_tables < 1) { - PMA_Message::error(__('No tables found in database.'))->display(); + PMA\libraries\Message::error(__('No tables found in database.'))->display(); exit; } // end if diff --git a/db_import.php b/db_import.php index 2dccfa94a6..f08dfb4c17 100644 --- a/db_import.php +++ b/db_import.php @@ -11,7 +11,7 @@ require_once 'libraries/config/page_settings.class.php'; PMA_PageSettings::showGroup('Import'); -$response = PMA_Response::getInstance(); +$response = PMA\libraries\Response::getInstance(); $header = $response->getHeader(); $scripts = $header->getScripts(); $scripts->addFile('import.js'); @@ -31,10 +31,10 @@ list( $tooltip_truename, $tooltip_aliasname, $pos -) = PMA_Util::getDbInfo($db, isset($sub_part) ? $sub_part : ''); +) = PMA\libraries\Util::getDbInfo($db, isset($sub_part) ? $sub_part : ''); require 'libraries/display_import.lib.php'; -$response = PMA_Response::getInstance(); +$response = PMA\libraries\Response::getInstance(); $response->addHTML( PMA_getImportDisplay( 'database', $db, $table, $max_upload_size diff --git a/db_operations.php b/db_operations.php index 7f0e2b9df5..86c762f02d 100644 --- a/db_operations.php +++ b/db_operations.php @@ -11,6 +11,7 @@ * * @package PhpMyAdmin */ +use PMA\libraries\PMA_String; /** * requirements @@ -26,7 +27,7 @@ require_once 'libraries/check_user_privileges.lib.php'; require_once 'libraries/operations.lib.php'; // add a javascript file for jQuery functions to handle Ajax actions -$response = PMA_Response::getInstance(); +$response = PMA\libraries\Response::getInstance(); $header = $response->getHeader(); $scripts = $header->getScripts(); $scripts->addFile('db_operations.js'); @@ -50,7 +51,7 @@ if (/*overload*/mb_strlen($GLOBALS['db']) if (! isset($_REQUEST['newname']) || ! /*overload*/mb_strlen($_REQUEST['newname']) ) { - $message = PMA_Message::error(__('The database name is empty!')); + $message = PMA\libraries\Message::error(__('The database name is empty!')); } else { $_error = false; if ($move || ! empty($_REQUEST['create_database_before_copying'])) { @@ -133,11 +134,11 @@ if (/*overload*/mb_strlen($GLOBALS['db']) // if someday the RENAME DATABASE reappears, do not DROP $local_query = 'DROP DATABASE ' - . PMA_Util::backquote($GLOBALS['db']) . ';'; + . PMA\libraries\Util::backquote($GLOBALS['db']) . ';'; $sql_query .= "\n" . $local_query; $GLOBALS['dbi']->query($local_query); - $message = PMA_Message::success( + $message = PMA\libraries\Message::success( __('Database %1$s has been renamed to %2$s.') ); $message->addParam($GLOBALS['db']); @@ -149,13 +150,13 @@ if (/*overload*/mb_strlen($GLOBALS['db']) PMA_AdjustPrivileges_copyDB($GLOBALS['db'], $_REQUEST['newname']); } - $message = PMA_Message::success( + $message = PMA\libraries\Message::success( __('Database %1$s has been copied to %2$s.') ); $message->addParam($GLOBALS['db']); $message->addParam($_REQUEST['newname']); } else { - $message = PMA_Message::error(); + $message = PMA\libraries\Message::error(); } $reload = true; @@ -176,16 +177,16 @@ if (/*overload*/mb_strlen($GLOBALS['db']) /** * Database has been successfully renamed/moved. If in an Ajax request, - * generate the output with {@link PMA_Response} and exit + * generate the output with {@link PMA\libraries\Response} and exit */ if ($GLOBALS['is_ajax_request'] == true) { - $response = PMA_Response::getInstance(); + $response = PMA\libraries\Response::getInstance(); $response->isSuccess($message->isSuccess()); $response->addJSON('message', $message); $response->addJSON('newname', $_REQUEST['newname']); $response->addJSON( 'sql_query', - PMA_Util::getMessage(null, $sql_query) + PMA\libraries\Util::getMessage(null, $sql_query) ); $response->addJSON('db', $GLOBALS['db']); exit; @@ -222,12 +223,12 @@ list( $tooltip_truename, $tooltip_aliasname, $pos -) = PMA_Util::getDbInfo($db, isset($sub_part) ? $sub_part : ''); +) = PMA\libraries\Util::getDbInfo($db, isset($sub_part) ? $sub_part : ''); echo "\n"; if (isset($message)) { - echo PMA_Util::getMessage($message, $sql_query); + echo PMA\libraries\Util::getMessage($message, $sql_query); unset($message); } @@ -278,7 +279,7 @@ if (!$is_information_schema) { if (! $cfgRelation['allworks'] && $cfg['PmaNoRelation_DisableWarning'] == false ) { - $message = PMA_Message::notice( + $message = PMA\libraries\Message::notice( __( 'The phpMyAdmin configuration storage has been deactivated. ' . '%sFind out why%s.' @@ -304,12 +305,12 @@ if ($cfgRelation['pdfwork'] && $num_tables > 0) { // We only show this if we find something in the new pdf_pages table $test_query = ' SELECT * - FROM ' . PMA_Util::backquote($GLOBALS['cfgRelation']['db']) - . '.' . PMA_Util::backquote($cfgRelation['pdf_pages']) . ' - WHERE db_name = \'' . PMA_Util::sqlAddSlashes($GLOBALS['db']) . '\''; + FROM ' . PMA\libraries\Util::backquote($GLOBALS['cfgRelation']['db']) + . '.' . PMA\libraries\Util::backquote($cfgRelation['pdf_pages']) . ' + WHERE db_name = \'' . PMA\libraries\Util::sqlAddSlashes($GLOBALS['db']) . '\''; $test_rs = PMA_queryAsControlUser( $test_query, false, - PMA_DatabaseInterface::QUERY_STORE + PMA\libraries\DatabaseInterface::QUERY_STORE ); } // end if diff --git a/db_qbe.php b/db_qbe.php index 842d46b402..7522012bea 100644 --- a/db_qbe.php +++ b/db_qbe.php @@ -5,16 +5,16 @@ * * @package PhpMyAdmin */ +use PMA\libraries\PMA_SavedSearches; /** * requirements */ require_once 'libraries/common.inc.php'; -require_once 'libraries/DBQbe.class.php'; require_once 'libraries/bookmark.lib.php'; require_once 'libraries/sql.lib.php'; -$response = PMA_Response::getInstance(); +$response = PMA\libraries\Response::getInstance(); // Gets the relation settings $cfgRelation = PMA_getRelationsParam(); @@ -123,16 +123,16 @@ list( $tooltip_truename, $tooltip_aliasname, $pos -) = PMA_Util::getDbInfo($db, isset($sub_part) ? $sub_part : ''); +) = PMA\libraries\Util::getDbInfo($db, isset($sub_part) ? $sub_part : ''); if ($message_to_display) { - PMA_Message::error(__('You have to choose at least one column to display!')) + PMA\libraries\Message::error(__('You have to choose at least one column to display!')) ->display(); } unset($message_to_display); // create new qbe search instance -$db_qbe = new PMA_DbQbe($GLOBALS['db'], $savedSearchList, $savedSearch); +$db_qbe = new PMA\libraries\DbQbe($GLOBALS['db'], $savedSearchList, $savedSearch); $url = 'db_designer.php' . PMA_URL_getCommon( array_merge( @@ -141,7 +141,7 @@ $url = 'db_designer.php' . PMA_URL_getCommon( ) ); $response->addHTML( - PMA_Message::notice( + PMA\libraries\Message::notice( sprintf( __('Switch to %svisual builder%s'), '', diff --git a/db_routines.php b/db_routines.php index be7791c649..261e6849d4 100644 --- a/db_routines.php +++ b/db_routines.php @@ -10,7 +10,7 @@ * Include required files */ require_once 'libraries/common.inc.php'; -require_once 'libraries/Util.class.php'; +require_once 'libraries/Util.php'; require_once 'libraries/mysql_charsets.inc.php'; /** diff --git a/db_search.php b/db_search.php index 3789ed9e78..4f15b9eaad 100644 --- a/db_search.php +++ b/db_search.php @@ -12,9 +12,10 @@ * Gets some core libraries */ require_once 'libraries/common.inc.php'; -require_once 'libraries/DbSearch.class.php'; -$response = PMA_Response::getInstance(); +use PMA\libraries\DbSearch; + +$response = PMA\libraries\Response::getInstance(); $header = $response->getHeader(); $scripts = $header->getScripts(); $scripts->addFile('db_search.js'); @@ -26,7 +27,7 @@ require 'libraries/db_common.inc.php'; // If config variable $GLOBALS['cfg']['UseDbSearch'] is on false : exit. if (! $GLOBALS['cfg']['UseDbSearch']) { - PMA_Util::mysqlDie( + PMA\libraries\Util::mysqlDie( __('Access denied!'), '', false, $err_url ); } // end if @@ -34,7 +35,7 @@ $url_query .= '&goto=db_search.php'; $url_params['goto'] = 'db_search.php'; // Create a database search instance -$db_search = new PMA_DbSearch($GLOBALS['db']); +$db_search = new DbSearch($GLOBALS['db']); // Display top links if we are not in an Ajax request if ($GLOBALS['is_ajax_request'] != true) { @@ -48,7 +49,7 @@ if ($GLOBALS['is_ajax_request'] != true) { $tooltip_truename, $tooltip_aliasname, $pos - ) = PMA_Util::getDbInfo($db, isset($sub_part) ? $sub_part : ''); + ) = PMA\libraries\Util::getDbInfo($db, isset($sub_part) ? $sub_part : ''); } // Main search form has been submitted, get results diff --git a/db_sql.php b/db_sql.php index fc140a8ef0..1f5d0a9efe 100644 --- a/db_sql.php +++ b/db_sql.php @@ -17,7 +17,7 @@ PMA_PageSettings::showGroup('Sql_queries'); /** * Runs common work */ -$response = PMA_Response::getInstance(); +$response = PMA\libraries\Response::getInstance(); $header = $response->getHeader(); $scripts = $header->getScripts(); $scripts->addFile('functions.js'); diff --git a/db_sql_autocomplete.php b/db_sql_autocomplete.php index 3be88c43ca..b760e2322b 100644 --- a/db_sql_autocomplete.php +++ b/db_sql_autocomplete.php @@ -22,5 +22,5 @@ if ($GLOBALS['cfg']['EnableAutocompleteForTablesAndColumns']) { } else { $sql_autocomplete = true; } -$response = PMA_Response::getInstance(); +$response = PMA\libraries\Response::getInstance(); $response->addJSON("tables", json_encode($sql_autocomplete)); diff --git a/db_sql_format.php b/db_sql_format.php index 610b3e22aa..c89ace5f81 100644 --- a/db_sql_format.php +++ b/db_sql_format.php @@ -16,5 +16,5 @@ $query = !empty($_POST['sql']) ? $_POST['sql'] : ''; $query = SqlParser\Utils\Formatter::format($query); -$response = PMA_Response::getInstance(); +$response = PMA\libraries\Response::getInstance(); $response->addJSON("sql", $query); diff --git a/db_structure.php b/db_structure.php index 14ab8b8e58..3240d561af 100644 --- a/db_structure.php +++ b/db_structure.php @@ -8,7 +8,7 @@ namespace PMA; -use PMA_Response; +use PMA\libraries\Response; require_once 'libraries/common.inc.php'; require_once 'libraries/db_common.inc.php'; @@ -23,7 +23,7 @@ list( $tooltip_truename, $tooltip_aliasname, $pos -) = \PMA_Util::getDbInfo($GLOBALS['db'], isset($sub_part) ? $sub_part : ''); +) = \PMA\libraries\Util::getDbInfo($GLOBALS['db'], isset($sub_part) ? $sub_part : ''); require_once 'libraries/di/Container.class.php'; require_once 'libraries/controllers/DatabaseStructureController.class.php'; @@ -34,8 +34,8 @@ $container->factory('PMA\Controllers\DatabaseStructureController'); $container->alias( 'DatabaseStructureController', 'PMA\Controllers\DatabaseStructureController' ); -$container->set('PMA_Response', PMA_Response::getInstance()); -$container->alias('response', 'PMA_Response'); +$container->set('PMA\libraries\Response', Response::getInstance()); +$container->alias('response', 'PMA\libraries\Response'); global $db, $pos, $db_is_system_schema, $total_num_tables, $tables, $num_tables; /* Define dependencies for the concerned controller */ diff --git a/db_tracking.php b/db_tracking.php index e451ccd574..6b0e5e265e 100644 --- a/db_tracking.php +++ b/db_tracking.php @@ -5,6 +5,7 @@ * * @package PhpMyAdmin */ +use PMA\libraries\PMA_Tracker; /** * Run common work @@ -15,7 +16,7 @@ require_once './libraries/tracking.lib.php'; require_once 'libraries/display_create_table.lib.php'; //Get some js files needed for Ajax requests -$response = PMA_Response::getInstance(); +$response = PMA\libraries\Response::getInstance(); $header = $response->getHeader(); $scripts = $header->getScripts(); $scripts->addFile('jquery/jquery.tablesorter.js'); @@ -40,21 +41,21 @@ list( $tooltip_truename, $tooltip_aliasname, $pos -) = PMA_Util::getDbInfo($db, isset($sub_part) ? $sub_part : ''); +) = PMA\libraries\Util::getDbInfo($db, isset($sub_part) ? $sub_part : ''); // Work to do? // (here, do not use $_REQUEST['db] as it can be crafted) if (isset($_REQUEST['delete_tracking']) && isset($_REQUEST['table'])) { PMA_Tracker::deleteTracking($GLOBALS['db'], $_REQUEST['table']); - PMA_Message::success( + PMA\libraries\Message::success( __('Tracking data deleted successfully.') )->display(); } elseif (isset($_REQUEST['submit_create_version'])) { PMA_createTrackingForMultipleTables($_REQUEST['selected']); - PMA_Message::success( + PMA\libraries\Message::success( sprintf( __( 'Version %1$s was created for selected tables,' @@ -72,7 +73,7 @@ if (isset($_REQUEST['delete_tracking']) && isset($_REQUEST['table'])) { foreach ($_REQUEST['selected_tbl'] as $table) { PMA_Tracker::deleteTracking($GLOBALS['db'], $table); } - PMA_Message::success( + PMA\libraries\Message::success( __('Tracking data deleted successfully.') )->display(); @@ -87,7 +88,7 @@ if (isset($_REQUEST['delete_tracking']) && isset($_REQUEST['table'])) { exit; } } else { - PMA_Message::notice( + PMA\libraries\Message::notice( __('No tables selected.') )->display(); } @@ -111,9 +112,9 @@ $cfgRelation = PMA_getRelationsParam(); // Prepare statement to get HEAD version $all_tables_query = ' SELECT table_name, MAX(version) as version FROM ' . - PMA_Util::backquote($cfgRelation['db']) . '.' . - PMA_Util::backquote($cfgRelation['tracking']) . - ' WHERE db_name = \'' . PMA_Util::sqlAddSlashes($_REQUEST['db']) . '\' ' . + PMA\libraries\Util::backquote($cfgRelation['db']) . '.' . + PMA\libraries\Util::backquote($cfgRelation['tracking']) . + ' WHERE db_name = \'' . PMA\libraries\Util::sqlAddSlashes($_REQUEST['db']) . '\' ' . ' GROUP BY table_name' . ' ORDER BY table_name ASC'; @@ -142,5 +143,5 @@ if (count($data['ddlog']) > 0) { $log .= '# ' . $entry['date'] . ' ' . $entry['username'] . "\n" . $entry['statement'] . "\n"; } - echo PMA_Util::getMessage(__('Database Log'), $log); + echo PMA\libraries\Util::getMessage(__('Database Log'), $log); } diff --git a/error_report.php b/error_report.php index 4510f1ad51..eb77022ce3 100644 --- a/error_report.php +++ b/error_report.php @@ -15,7 +15,7 @@ if (!isset($_REQUEST['exception_type']) die('Oops, something went wrong!!'); } -$response = PMA_Response::getInstance(); +$response = PMA\libraries\Response::getInstance(); if (isset($_REQUEST['send_error_report']) && ($_REQUEST['send_error_report'] == true @@ -35,7 +35,7 @@ if (isset($_REQUEST['send_error_report']) ) { $_SESSION['error_subm_count'] = 0; $_SESSION['prev_errors'] = ''; - $response = PMA_Response::getInstance(); + $response = PMA\libraries\Response::getInstance(); $response->addJSON('_stopErrorReportLoop', '1'); } else { $_SESSION['prev_error_subm_time'] = time(); @@ -86,9 +86,9 @@ if (isset($_REQUEST['send_error_report']) /* Create message object */ if ($success) { - $msg = PMA_Message::notice($msg); + $msg = PMA\libraries\Message::notice($msg); } else { - $msg = PMA_Message::error($msg); + $msg = PMA\libraries\Message::error($msg); } /* Add message to response */ diff --git a/export.php b/export.php index 1bef625b5e..d5edba46a5 100644 --- a/export.php +++ b/export.php @@ -5,6 +5,7 @@ * * @package PhpMyAdmin */ +use PMA\libraries\PMA_String; /** * Get the variables sent or posted to this script and a core script @@ -12,7 +13,7 @@ if (!defined('TESTSUITE')) { /** * If we are sending the export file (as opposed to just displaying it - * as text), we have to bypass the usual PMA_Response mechanism + * as text), we have to bypass the usual PMA\libraries\Response mechanism */ if (isset($_POST['output_format']) && $_POST['output_format'] == 'sendit') { define('PMA_BYPASS_GET_INSTANCE', 1); @@ -166,7 +167,7 @@ if (!defined('TESTSUITE')) { // sanitize this parameter which will be used below in a file inclusion $what = PMA_securePath($_POST['what']); - PMA_Util::checkParameters(array('what', 'export_type')); + PMA\libraries\Util::checkParameters(array('what', 'export_type')); // export class instance, not array of properties, as before /* @var $export_plugin ExportPlugin */ @@ -317,7 +318,7 @@ if (!defined('TESTSUITE')) { if ($what == 'sql') { $crlf = "\n"; } else { - $crlf = PMA_Util::whichCrlf(); + $crlf = PMA\libraries\Util::whichCrlf(); } $output_kanji_conversion = function_exists('PMA_Kanji_strConv') @@ -377,7 +378,7 @@ if (!defined('TESTSUITE')) { if ($export_type == 'database') { $num_tables = count($tables); if ($num_tables == 0) { - $message = PMA_Message::error( + $message = PMA\libraries\Message::error( __('No tables found in database.') ); $active_page = 'db_export.php'; diff --git a/file_echo.php b/file_echo.php index 1f27bb019b..0095ae6ec6 100644 --- a/file_echo.php +++ b/file_echo.php @@ -7,6 +7,8 @@ * @package PhpMyAdmin */ +use PMA\libraries\PMA_String; + define('PMA_MINIMUM_COMMON', true); require_once 'libraries/common.inc.php'; diff --git a/gis_data_editor.php b/gis_data_editor.php index ac876da4d9..1344aa3cb0 100644 --- a/gis_data_editor.php +++ b/gis_data_editor.php @@ -5,6 +5,7 @@ * * @package PhpMyAdmin */ +use PMA\libraries\PMA_String; /** * Escapes special characters if the variable is set. @@ -101,7 +102,7 @@ if (isset($_REQUEST['generate']) && $_REQUEST['generate'] == true) { 'visualization' => $visualization, 'openLayers' => $open_layers, ); - $response = PMA_Response::getInstance(); + $response = PMA\libraries\Response::getInstance(); $response->addJSON($extra_data); exit; } @@ -424,5 +425,5 @@ echo ''; echo ''; echo ''; -PMA_Response::getInstance()->addJSON('gis_editor', ob_get_contents()); +PMA\libraries\Response::getInstance()->addJSON('gis_editor', ob_get_contents()); ob_end_clean(); diff --git a/import.php b/import.php index 2015ec15eb..92df8947f7 100644 --- a/import.php +++ b/import.php @@ -5,6 +5,7 @@ * * @package PhpMyAdmin */ +use PMA\libraries\PMA_String; /** * Get the variables sent or posted to this script and a core script @@ -12,7 +13,6 @@ require_once 'libraries/common.inc.php'; require_once 'libraries/sql.lib.php'; require_once 'libraries/bookmark.lib.php'; -require_once 'libraries/Console.class.php'; //require_once 'libraries/display_import_functions.lib.php'; if (isset($_REQUEST['show_as_php'])) { @@ -30,15 +30,15 @@ if (isset($_REQUEST['simulate_dml'])) { // If it's a refresh console bookmarks request if (isset($_REQUEST['console_bookmark_refresh'])) { - $response = PMA_Response::getInstance(); + $response = PMA\libraries\Response::getInstance(); $response->addJSON( - 'console_message_bookmark', PMA_Console::getBookmarkContent() + 'console_message_bookmark', PMA\libraries\Console::getBookmarkContent() ); exit; } // If it's a console bookmark add request if (isset($_REQUEST['console_bookmark_add'])) { - $response = PMA_Response::getInstance(); + $response = PMA\libraries\Response::getInstance(); if (isset($_REQUEST['label']) && isset($_REQUEST['db']) && isset($_REQUEST['bookmark_query']) && isset($_REQUEST['shared']) ) { @@ -111,13 +111,13 @@ if (! empty($sql_query)) { // making sure that :param does not apply values to :param1 $sql_query = preg_replace( '/' . $quoted . '([^a-zA-Z0-9_])/', - PMA_Util::sqlAddSlashes($replacement) . '${1}', + PMA\libraries\Util::sqlAddSlashes($replacement) . '${1}', $sql_query ); // for parameters the appear at the end of the string $sql_query = preg_replace( '/' . $quoted . '$/', - PMA_Util::sqlAddSlashes($replacement), + PMA\libraries\Util::sqlAddSlashes($replacement), $sql_query ); } @@ -156,7 +156,7 @@ if (! empty($sql_query)) { $rename_table_names )) { $ajax_reload['reload'] = true; - $ajax_reload['table_name'] = PMA_Util::unQuote($rename_table_names[2]); + $ajax_reload['table_name'] = PMA\libraries\Util::unQuote($rename_table_names[2]); } $sql_query = ''; @@ -175,7 +175,7 @@ if (! empty($sql_query)) { // If we didn't get any parameters, either user called this directly, or // upload limit has been reached, let's assume the second possibility. if ($_POST == array() && $_GET == array()) { - $message = PMA_Message::error( + $message = PMA\libraries\Message::error( __( 'You probably tried to upload a file that is too large. Please refer ' . 'to %sdocumentation%s for a workaround for this limit.' @@ -194,7 +194,7 @@ if ($_POST == array() && $_GET == array()) { // Add console message id to response output if (isset($_POST['console_message_id'])) { - $response = PMA_Response::getInstance(); + $response = PMA\libraries\Response::getInstance(); $response->addJSON('console_message_id', $_POST['console_message_id']); } @@ -229,7 +229,7 @@ $post_patterns = array( PMA_setPostAsGlobal($post_patterns); // Check needed parameters -PMA_Util::checkParameters(array('import_type', 'format')); +PMA\libraries\Util::checkParameters(array('import_type', 'format')); // We don't want anything special in format $format = PMA_securePath($format); @@ -355,8 +355,8 @@ if (! empty($_REQUEST['id_bookmark'])) { case 1: // bookmarked query that have to be displayed $import_text = PMA_Bookmark_get($db, $id_bookmark); if ($GLOBALS['is_ajax_request'] == true) { - $message = PMA_Message::success(__('Showing bookmark')); - $response = PMA_Response::getInstance(); + $message = PMA\libraries\Message::success(__('Showing bookmark')); + $response = PMA\libraries\Response::getInstance(); $response->isSuccess($message->isSuccess()); $response->addJSON('message', $message); $response->addJSON('sql_query', $import_text); @@ -370,8 +370,8 @@ if (! empty($_REQUEST['id_bookmark'])) { $import_text = PMA_Bookmark_get($db, $id_bookmark); PMA_Bookmark_delete($id_bookmark); if ($GLOBALS['is_ajax_request'] == true) { - $message = PMA_Message::success(__('The bookmark has been deleted.')); - $response = PMA_Response::getInstance(); + $message = PMA\libraries\Message::success(__('The bookmark has been deleted.')); + $response = PMA\libraries\Response::getInstance(); $response->isSuccess($message->isSuccess()); $response->addJSON('message', $message); $response->addJSON('action_bookmark', $_REQUEST['action_bookmark']); @@ -426,7 +426,7 @@ if (! empty($local_import_file) && ! empty($cfg['UploadDir'])) { // sanitize $local_import_file as it comes from a POST $local_import_file = PMA_securePath($local_import_file); - $import_file = PMA_Util::userDir($cfg['UploadDir']) + $import_file = PMA\libraries\Util::userDir($cfg['UploadDir']) . $local_import_file; } elseif (empty($import_file) || ! is_uploaded_file($import_file)) { @@ -465,7 +465,7 @@ if ($import_file != 'none' && ! $error) { // is not too meaningful. Show a meaningful error message to the user // instead. - $message = PMA_Message::error( + $message = PMA\libraries\Message::error( __( 'Uploaded file cannot be moved, because the server has ' . 'open_basedir enabled without access to the %s directory ' . @@ -479,11 +479,11 @@ if ($import_file != 'none' && ! $error) { /** * Handle file compression - * @todo duplicate code exists in File.class.php + * @todo duplicate code exists in File.php */ $compression = PMA_detectCompression($import_file); if ($compression === false) { - $message = PMA_Message::error(__('File could not be read!')); + $message = PMA\libraries\Message::error(__('File could not be read!')); PMA_stopImport($message); //Contains an 'exit' } @@ -492,7 +492,7 @@ if ($import_file != 'none' && ! $error) { if ($cfg['BZipDump'] && @function_exists('bzopen')) { $import_handle = @bzopen($import_file, 'r'); } else { - $message = PMA_Message::error( + $message = PMA\libraries\Message::error( __( 'You attempted to load file with unsupported compression ' . '(%s). Either support for it is not implemented or disabled ' . @@ -507,7 +507,7 @@ if ($import_file != 'none' && ! $error) { if ($cfg['GZipDump'] && @function_exists('gzopen')) { $import_handle = @gzopen($import_file, 'r'); } else { - $message = PMA_Message::error( + $message = PMA\libraries\Message::error( __( 'You attempted to load file with unsupported compression ' . '(%s). Either support for it is not implemented or disabled ' . @@ -526,13 +526,13 @@ if ($import_file != 'none' && ! $error) { include_once 'libraries/zip_extension.lib.php'; $zipResult = PMA_getZipContents($import_file); if (! empty($zipResult['error'])) { - $message = PMA_Message::rawError($zipResult['error']); + $message = PMA\libraries\Message::rawError($zipResult['error']); PMA_stopImport($message); } else { $import_text = $zipResult['data']; } } else { - $message = PMA_Message::error( + $message = PMA\libraries\Message::error( __( 'You attempted to load file with unsupported compression ' . '(%s). Either support for it is not implemented or disabled ' . @@ -547,7 +547,7 @@ if ($import_file != 'none' && ! $error) { $import_handle = @fopen($import_file, 'r'); break; default: - $message = PMA_Message::error( + $message = PMA\libraries\Message::error( __( 'You attempted to load file with unsupported compression (%s). ' . 'Either support for it is not implemented or disabled by your ' . @@ -560,12 +560,12 @@ if ($import_file != 'none' && ! $error) { } // use isset() because zip compression type does not use a handle if (! $error && isset($import_handle) && $import_handle === false) { - $message = PMA_Message::error(__('File could not be read!')); + $message = PMA\libraries\Message::error(__('File could not be read!')); PMA_stopImport($message); } } elseif (! $error) { if (! isset($import_text) || empty($import_text)) { - $message = PMA_Message::error( + $message = PMA\libraries\Message::error( __( 'No data was received to import. Either no file name was ' . 'submitted, or the file size exceeded the maximum size permitted ' . @@ -588,7 +588,7 @@ if ($GLOBALS['PMA_recoding_engine'] != PMA_CHARSET_NONE && isset($charset_of_fil if (PMA_DRIZZLE) { // Drizzle doesn't support other character sets, // so we can't fallback to SET NAMES - throw an error - $message = PMA_Message::error( + $message = PMA\libraries\Message::error( __( 'Cannot convert file\'s character' . ' set without character set conversion library!' @@ -630,18 +630,18 @@ if (! $error) { $import_type ); if ($import_plugin == null) { - $message = PMA_Message::error( + $message = PMA\libraries\Message::error( __('Could not load import plugins, please check your installation!') ); PMA_stopImport($message); } else { // Do the real import try { - $default_fk_check = PMA_Util::handleDisableFKCheckInit(); + $default_fk_check = PMA\libraries\Util::handleDisableFKCheckInit(); $import_plugin->doImport($sql_data); - PMA_Util::handleDisableFKCheckCleanup($default_fk_check); + PMA\libraries\Util::handleDisableFKCheckCleanup($default_fk_check); } catch (Exception $e) { - PMA_Util::handleDisableFKCheckCleanup($default_fk_check); + PMA\libraries\Util::handleDisableFKCheckCleanup($default_fk_check); throw $e; } } @@ -666,11 +666,11 @@ if ($reset_charset) { // Show correct message if (! empty($id_bookmark) && $_REQUEST['action_bookmark'] == 2) { - $message = PMA_Message::success(__('The bookmark has been deleted.')); + $message = PMA\libraries\Message::success(__('The bookmark has been deleted.')); $display_query = $import_text; $error = false; // unset error marker, it was used just to skip processing } elseif (! empty($id_bookmark) && $_REQUEST['action_bookmark'] == 1) { - $message = PMA_Message::notice(__('Showing bookmark')); + $message = PMA\libraries\Message::notice(__('Showing bookmark')); } elseif ($bookmark_created) { $special_message = '[br]' . sprintf( __('Bookmark %s has been created.'), @@ -678,9 +678,9 @@ if (! empty($id_bookmark) && $_REQUEST['action_bookmark'] == 2) { ); } elseif ($finished && ! $error) { if ($import_type == 'query') { - $message = PMA_Message::success(); + $message = PMA\libraries\Message::success(); } else { - $message = PMA_Message::success( + $message = PMA\libraries\Message::success( '' . __('Import has been successfully finished, %d queries executed.') . '' @@ -708,7 +708,7 @@ if ($timeout_passed) { if (isset($local_import_file)) { $importUrl .= '&local_import_file=' . urlencode($local_import_file); } - $message = PMA_Message::error( + $message = PMA\libraries\Message::error( __( 'Script timeout passed, if you want to finish import,' . ' please %sresubmit the same file%s and import will resume.' @@ -745,7 +745,7 @@ if ($sqlLength <= $GLOBALS['cfg']['MaxCharactersInDisplayedSQL']) { // There was an error? if (isset($my_die)) { foreach ($my_die as $key => $die) { - PMA_Util::mysqlDie( + PMA\libraries\Util::mysqlDie( $die['error'], $die['sql'], false, $err_url, $error ); } @@ -787,7 +787,7 @@ if ($go_sql) { ); } - $response = PMA_Response::getInstance(); + $response = PMA\libraries\Response::getInstance(); $response->addJSON('ajax_reload', $ajax_reload); $response->addHTML($html_output); exit(); @@ -803,17 +803,17 @@ if ($go_sql) { ); } - $response = PMA_Response::getInstance(); + $response = PMA\libraries\Response::getInstance(); $response->isSuccess(true); - $response->addJSON('message', PMA_Message::success($msg)); + $response->addJSON('message', PMA\libraries\Message::success($msg)); $response->addJSON( 'sql_query', - PMA_Util::getMessage($msg, $sql_query, 'success') + PMA\libraries\Util::getMessage($msg, $sql_query, 'success') ); } else if ($result == false) { - $response = PMA_Response::getInstance(); + $response = PMA\libraries\Response::getInstance(); $response->isSuccess(false); - $response->addJSON('message', PMA_Message::error($msg)); + $response->addJSON('message', PMA\libraries\Message::error($msg)); } else { $active_page = $goto; include '' . $goto; diff --git a/import_status.php b/import_status.php index c4b442f456..e03ce88b38 100644 --- a/import_status.php +++ b/import_status.php @@ -51,7 +51,7 @@ if (version_compare(PHP_VERSION, '5.4.0', '>=') define('PMA_MINIMUM_COMMON', 1); require_once 'libraries/common.inc.php'; -require_once 'libraries/Util.class.php'; +require_once 'libraries/Util.php'; require_once 'libraries/display_import_ajax.lib.php'; /* @@ -99,7 +99,7 @@ if (isset($_GET["message"]) && $_GET["message"]) { session_start(); if ((time() - $timestamp) > $maximumTime) { - $_SESSION['Import_message']['message'] = PMA_Message::error( + $_SESSION['Import_message']['message'] = PMA\libraries\Message::error( __('Could not load the progress of the import.') )->getDisplay(); break; diff --git a/index.php b/index.php index 17b0e7aa21..c4aad947e3 100644 --- a/index.php +++ b/index.php @@ -5,6 +5,8 @@ * * @package PhpMyAdmin */ +use PMA\libraries\PMA_String; +use PMA\libraries\RecentFavoriteTable; /** * Gets some core libraries and displays a top message if required @@ -62,11 +64,11 @@ if (isset($_REQUEST['ajax_request']) && ! empty($_REQUEST['access_time'])) { if (! empty($_REQUEST['db'])) { $page = null; if (! empty($_REQUEST['table'])) { - $page = PMA_Util::getScriptNameForOption( + $page = PMA\libraries\Util::getScriptNameForOption( $GLOBALS['cfg']['DefaultTabTable'], 'table' ); } else { - $page = PMA_Util::getScriptNameForOption( + $page = PMA\libraries\Util::getScriptNameForOption( $GLOBALS['cfg']['DefaultTabDatabase'], 'database' ); } @@ -77,12 +79,12 @@ if (! empty($_REQUEST['db'])) { /** * Check if it is an ajax request to reload the recent tables list. */ -require_once 'libraries/RecentFavoriteTable.class.php'; +require_once 'libraries/RecentFavoriteTable.php'; if ($GLOBALS['is_ajax_request'] && ! empty($_REQUEST['recent_table'])) { - $response = PMA_Response::getInstance(); + $response = PMA\libraries\Response::getInstance(); $response->addJSON( 'list', - PMA_RecentFavoriteTable::getInstance('recent')->getHtmlList() + RecentFavoriteTable::getInstance('recent')->getHtmlList() ); exit; } @@ -102,7 +104,7 @@ $show_query = '1'; // Any message to display? if (! empty($message)) { - echo PMA_Util::getMessage($message); + echo PMA\libraries\Util::getMessage($message); unset($message); } @@ -140,7 +142,7 @@ if ($server > 0) { echo '
' . "\n"; // Anchor for favorite tables synchronization. -echo PMA_RecentFavoriteTable::getInstance('favorite')->getHtmlSyncFavoriteTables(); +echo RecentFavoriteTable::getInstance('favorite')->getHtmlSyncFavoriteTables(); echo '
'; if ($server > 0 || count($cfg['Servers']) > 1 ) { @@ -173,7 +175,7 @@ if ($server > 0 || count($cfg['Servers']) > 1 ) { echo '
  • '; include_once 'libraries/select_server.lib.php'; - echo PMA_Util::getImage('s_host.png') . " " . PMA_selectServer(true, true); + echo PMA\libraries\Util::getImage('s_host.png') . " " . PMA_selectServer(true, true); echo '
  • '; } @@ -188,7 +190,7 @@ if ($server > 0 || count($cfg['Servers']) > 1 if ($cfg['ShowChgPassword']) { $conditional_class = 'ajax'; PMA_printListItem( - PMA_Util::getImage('s_passwd.png') . " " . __('Change password'), + PMA\libraries\Util::getImage('s_passwd.png') . " " . __('Change password'), 'li_change_password', 'user_password.php' . $common_url_query, null, @@ -203,10 +205,10 @@ if ($server > 0 || count($cfg['Servers']) > 1 echo '
    ' . "\n" . PMA_URL_getHiddenInputs(null, null, 4, 'collation_connection') . ' ' . "\n" @@ -233,7 +235,7 @@ echo '
      '; if (empty($cfg['Lang']) && count($GLOBALS['available_languages']) > 1) { echo '
    • '; include_once 'libraries/display_select_lang.lib.php'; - echo PMA_Util::getImage('s_lang.png') . " " . PMA_getLanguageSelectorHtml(); + echo PMA\libraries\Util::getImage('s_lang.png') . " " . PMA_getLanguageSelectorHtml(); echo '
    • '; } @@ -241,12 +243,12 @@ if (empty($cfg['Lang']) && count($GLOBALS['available_languages']) > 1) { if ($GLOBALS['cfg']['ThemeManager']) { echo '
    • '; - echo PMA_Util::getImage('s_theme.png') . " " + echo PMA\libraries\Util::getImage('s_theme.png') . " " . $_SESSION['PMA_Theme_Manager']->getHtmlSelectBox(); echo '
    • '; } echo '
    • '; -echo PMA_Config::getFontsizeForm(); +echo PMA\libraries\Config::getFontsizeForm(); echo '
    • '; echo '
    '; @@ -256,7 +258,7 @@ echo ''; if ($server > 0) { echo '
      '; PMA_printListItem( - PMA_Util::getImage('b_tblops.png') . " " . __('More settings'), + PMA\libraries\Util::getImage('b_tblops.png') . " " . __('More settings'), 'li_user_preferences', 'prefs_manage.php' . $common_url_query, null, @@ -284,7 +286,7 @@ if ($server > 0 && $GLOBALS['cfg']['ShowServerInfo']) { 'li_server_info' ); PMA_printListItem( - __('Server type:') . ' ' . PMA_Util::getServerType(), + __('Server type:') . ' ' . PMA\libraries\Util::getServerType(), 'li_server_type' ); PMA_printListItem( @@ -334,13 +336,13 @@ if ($GLOBALS['cfg']['ShowServerInfo'] || $GLOBALS['cfg']['ShowPhpInfo']) { ); $php_ext_string = __('PHP extension:') . ' '; - if (PMA_DatabaseInterface::checkDbExtension('mysqli')) { + if (PMA\libraries\DatabaseInterface::checkDbExtension('mysqli')) { $extension = 'mysqli'; } else { $extension = 'mysql'; } $php_ext_string .= $extension . ' ' - . PMA_Util::showPHPDocu('book.' . $extension . '.php'); + . PMA\libraries\Util::showPHPDocu('book.' . $extension . '.php'); PMA_printListItem( $php_ext_string, @@ -392,7 +394,7 @@ PMA_printListItem( PMA_printListItem( __('Documentation'), 'li_pma_docs', - PMA_Util::getDocuLink('index'), + PMA\libraries\Util::getDocuLink('index'), null, '_blank' ); @@ -573,7 +575,7 @@ if ($server > 0) { . 'to set it up there.' ); } - $msg = PMA_Message::notice($msg_text); + $msg = PMA\libraries\Message::notice($msg_text); $msg->addParam( '', @@ -699,7 +701,7 @@ function PMA_printListItem($name, $listId = null, $url = null, $mysql_help_page = null, $target = null, $a_id = null, $class = null, $a_class = null ) { - echo PMA\Template::get('list/item') + echo PMA\libraries\Template::get('list/item') ->render( array( 'content' => $name, diff --git a/js/ajax.js b/js/ajax.js index 3800c0d1b4..3799a4bb63 100644 --- a/js/ajax.js +++ b/js/ajax.js @@ -747,7 +747,7 @@ $(function () { //TODO: Check if sometimes menu is not retrieved from server, // Not sure but it seems menu was missing only for printview which // been removed lately, so if it's right some dead menu checks/fallbacks - // may need to be removed from this file and Header.class.php + // may need to be removed from this file and Header.php //AJAX.handleMenu.replace(event.originalEvent.state.menu); } }); diff --git a/js/common.js b/js/common.js index 4e8545af3f..91ab2d20ee 100644 --- a/js/common.js +++ b/js/common.js @@ -7,7 +7,7 @@ $(function () { /** * Holds common parameters such as server, db, table, etc * - * The content for this is normally loaded from Header.class.php or + * The content for this is normally loaded from Header.php or * Response.class.php and executed by ajax.js */ var PMA_commonParams = (function () { @@ -98,7 +98,7 @@ var PMA_commonParams = (function () { /** * Holds common parameters such as server, db, table, etc * - * The content for this is normally loaded from Header.class.php or + * The content for this is normally loaded from Header.php or * Response.class.php and executed by ajax.js */ var PMA_commonActions = { diff --git a/js/functions.js b/js/functions.js index 5e6e9d6b48..6725bb6857 100644 --- a/js/functions.js +++ b/js/functions.js @@ -3734,7 +3734,7 @@ function showIndexEditDialog($outer) /** * Function to display tooltips that were - * generated on the PHP side by PMA_Util::showHint() + * generated on the PHP side by PMA\libraries\Util::showHint() * * @param object $div a div jquery object which specifies the * domain for searching for tooltips. If we @@ -3984,7 +3984,7 @@ AJAX.registerOnload('functions.js', function () { PMA_init_slider(); /** - * Enables the text generated by PMA_Util::linkOrButton() to be clickable + * Enables the text generated by PMA\libraries\Util::linkOrButton() to be clickable */ $(document).on('click', 'a.formLinkSubmit', function (e) { if (! $(this).hasClass('requireConfirm')) { diff --git a/js/get_image.js.php b/js/get_image.js.php index 8dfce6b8fb..a90d146097 100644 --- a/js/get_image.js.php +++ b/js/get_image.js.php @@ -17,12 +17,12 @@ header('Expires: ' . gmdate('D, d M Y H:i:s', time() + 3600) . ' GMT'); define('PMA_MINIMUM_COMMON', true); require_once './libraries/common.inc.php'; -require_once './libraries/OutputBuffering.class.php'; -$buffer = PMA_OutputBuffering::getInstance(); +require_once './libraries/OutputBuffering.php'; +$buffer = PMA\libraries\OutputBuffering::getInstance(); $buffer->start(); register_shutdown_function( function () { - echo PMA_OutputBuffering::getInstance()->getContents(); + echo PMA\libraries\OutputBuffering::getInstance()->getContents(); } ); diff --git a/js/get_scripts.js.php b/js/get_scripts.js.php index b6ad2b4006..10ff69c3c8 100644 --- a/js/get_scripts.js.php +++ b/js/get_scripts.js.php @@ -26,12 +26,12 @@ $_GET['scripts'] = json_encode($_GET['scripts']); define('PMA_MINIMUM_COMMON', true); require_once './libraries/common.inc.php'; -require_once './libraries/OutputBuffering.class.php'; -$buffer = PMA_OutputBuffering::getInstance(); +require_once './libraries/OutputBuffering.php'; +$buffer = PMA\libraries\OutputBuffering::getInstance(); $buffer->start(); register_shutdown_function( function () { - echo PMA_OutputBuffering::getInstance()->getContents(); + echo PMA\libraries\OutputBuffering::getInstance()->getContents(); } ); diff --git a/js/messages.php b/js/messages.php index 7369e86e89..10a39c54ba 100644 --- a/js/messages.php +++ b/js/messages.php @@ -24,14 +24,14 @@ require_once './libraries/common.inc.php'; session_write_close(); // But this one is needed for PMA_escapeJsString() require_once './libraries/js_escape.lib.php'; -require_once './libraries/Util.class.php'; +require_once './libraries/Util.php'; -require_once './libraries/OutputBuffering.class.php'; -$buffer = PMA_OutputBuffering::getInstance(); +require_once './libraries/OutputBuffering.php'; +$buffer = PMA\libraries\OutputBuffering::getInstance(); $buffer->start(); register_shutdown_function( function () { - echo PMA_OutputBuffering::getInstance()->getContents(); + echo PMA\libraries\OutputBuffering::getInstance()->getContents(); } ); @@ -617,7 +617,7 @@ echo "var themeCalendarImage = '" . $GLOBALS['pmaThemeImage'] /* Image path */ echo "var pmaThemeImage = '" . $GLOBALS['pmaThemeImage'] . "';\n"; -echo "var mysql_doc_template = '" . PMA_Util::getMySQLDocuURL('%s') . "';\n"; +echo "var mysql_doc_template = '" . PMA\libraries\Util::getMySQLDocuURL('%s') . "';\n"; //Max input vars allowed by PHP. $maxInputVars = ini_get('max_input_vars'); diff --git a/js/whitelist.php b/js/whitelist.php index ead8c146ce..c3a1f5a365 100644 --- a/js/whitelist.php +++ b/js/whitelist.php @@ -22,12 +22,12 @@ require_once './libraries/common.inc.php'; // Close session early as we won't write anything there session_write_close(); -require_once './libraries/OutputBuffering.class.php'; -$buffer = PMA_OutputBuffering::getInstance(); +require_once './libraries/OutputBuffering.php'; +$buffer = PMA\libraries\OutputBuffering::getInstance(); $buffer->start(); register_shutdown_function( function () { - echo PMA_OutputBuffering::getInstance()->getContents(); + echo PMA\libraries\OutputBuffering::getInstance()->getContents(); } ); diff --git a/libraries/Advisor.class.php b/libraries/Advisor.php similarity index 76% rename from libraries/Advisor.class.php rename to libraries/Advisor.php index 6ae5cfe050..7c7a6d152e 100644 --- a/libraries/Advisor.class.php +++ b/libraries/Advisor.php @@ -6,9 +6,11 @@ * * @package PhpMyAdmin */ -if (! defined('PHPMYADMIN')) { - exit; -} +namespace PMA\libraries; + +use \Exception; + +require_once 'libraries/advisor.lib.php'; /** * Advisor class @@ -17,9 +19,9 @@ if (! defined('PHPMYADMIN')) { */ class Advisor { - var $variables; - var $parseResult; - var $runResult; + public $variables; + public $parseResult; + public $runResult; /** * Parses and executes advisor rules @@ -119,7 +121,7 @@ class Advisor } else { try { $value = $this->ruleExprEvaluate($rule['formula']); - } catch(Exception $e) { + } catch (Exception $e) { $this->storeError( sprintf( __('Failed calculating value for rule \'%s\'.'), @@ -138,7 +140,7 @@ class Advisor } else { $this->addRule('notfired', $rule); } - } catch(Exception $e) { + } catch (Exception $e) { $this->storeError( sprintf( __('Failed running test for rule \'%s\'.'), @@ -175,7 +177,7 @@ class Advisor */ public function translate($str, $param = null) { - $string = _gettext(Advisor::escapePercent($str)); + $string = _gettext(self::escapePercent($str)); if (! is_null($param)) { $params = $this->ruleExprEvaluate('array(' . $param . ')'); } else { @@ -210,49 +212,49 @@ class Advisor */ public function addRule($type, $rule) { - switch($type) { - case 'notfired': - case 'fired': - $jst = Advisor::splitJustification($rule); - if (count($jst) > 1) { - try { - /* Translate */ - $str = $this->translate($jst[0], $jst[1]); - } catch (Exception $e) { - $this->storeError( - sprintf( - __('Failed formatting string for rule \'%s\'.'), - $rule['name'] - ), - $e - ); - return; + switch ($type) { + case 'notfired': + case 'fired': + $jst = self::splitJustification($rule); + if (count($jst) > 1) { + try { + /* Translate */ + $str = $this->translate($jst[0], $jst[1]); + } catch (Exception $e) { + $this->storeError( + sprintf( + __('Failed formatting string for rule \'%s\'.'), + $rule['name'] + ), + $e + ); + return; + } + + $rule['justification'] = $str; + } else { + $rule['justification'] = $this->translate($rule['justification']); } + $rule['id'] = $rule['name']; + $rule['name'] = $this->translate($rule['name']); + $rule['issue'] = $this->translate($rule['issue']); - $rule['justification'] = $str; - } else { - $rule['justification'] = $this->translate($rule['justification']); - } - $rule['id'] = $rule['name']; - $rule['name'] = $this->translate($rule['name']); - $rule['issue'] = $this->translate($rule['issue']); + // Replaces {server_variable} with 'server_variable' + // linking to server_variables.php + $rule['recommendation'] = preg_replace( + '/\{([a-z_0-9]+)\}/Ui', + '\1', + $this->translate($rule['recommendation']) + ); - // Replaces {server_variable} with 'server_variable' - // linking to server_variables.php - $rule['recommendation'] = preg_replace( - '/\{([a-z_0-9]+)\}/Ui', - '\1', - $this->translate($rule['recommendation']) - ); - - // Replaces external Links with PMA_linkURL() generated links - $rule['recommendation'] = preg_replace_callback( - '#href=("|\')(https?://[^\1]+)\1#i', - array($this, '_replaceLinkURL'), - $rule['recommendation'] - ); - break; + // Replaces external Links with PMA_linkURL() generated links + $rule['recommendation'] = preg_replace_callback( + '#href=("|\')(https?://[^\1]+)\1#i', + array($this, 'replaceLinkURL'), + $rule['recommendation'] + ); + break; } $this->runResult[$type][] = $rule; @@ -265,7 +267,7 @@ class Advisor * * @return string Replacement value */ - private function _replaceLinkURL($matches) + private function replaceLinkURL($matches) { return 'href="' . PMA_linkURL($matches[2]) . '" target="_blank"'; } @@ -277,7 +279,7 @@ class Advisor * * @return string Replacement value */ - private function _ruleExprEvaluateFired($matches) + private function ruleExprEvaluateFired($matches) { // No list of fired rules if (!isset($this->runResult['fired'])) { @@ -301,7 +303,7 @@ class Advisor * * @return string Replacement value */ - private function _ruleExprEvaluateVariable($matches) + private function ruleExprEvaluateVariable($matches) { if (! isset($this->variables[$matches[1]])) { return $matches[1]; @@ -328,13 +330,13 @@ class Advisor // Evaluate fired() conditions $expr = preg_replace_callback( '/fired\s*\(\s*(\'|")(.*)\1\s*\)/Ui', - array($this, '_ruleExprEvaluateFired'), + array($this, 'ruleExprEvaluateFired'), $expr ); // Evaluate variables $expr = preg_replace_callback( '/\b(\w+)\b/', - array($this, '_ruleExprEvaluateVariable'), + array($this, 'ruleExprEvaluateVariable'), $expr ); $value = 0; @@ -459,66 +461,3 @@ class Advisor return array('rules' => $rules, 'lines' => $lines, 'errors' => $errors); } } - - -/** - * Formats interval like 10 per hour - * - * @param integer $num number to format - * @param integer $precision required precision - * - * @return string formatted string - */ -function ADVISOR_bytime($num, $precision) -{ - if ($num >= 1) { // per second - $per = __('per second'); - } elseif ($num * 60 >= 1) { // per minute - $num = $num * 60; - $per = __('per minute'); - } elseif ($num * 60 * 60 >= 1 ) { // per hour - $num = $num * 60 * 60; - $per = __('per hour'); - } else { - $num = $num * 60 * 60 * 24; - $per = __('per day'); - } - - $num = round($num, $precision); - - if ($num == 0) { - $num = '<' . PMA_Util::pow(10, -$precision); - } - - return "$num $per"; -} - -/** - * Wrapper for PMA_Util::timespanFormat - * - * This function is used when evaluating advisory_rules.txt - * - * @param int $seconds the timespan - * - * @return string the formatted value - */ -function ADVISOR_timespanFormat($seconds) -{ - return PMA_Util::timespanFormat($seconds); -} - -/** - * Wrapper around PMA_Util::formatByteDown - * - * This function is used when evaluating advisory_rules.txt - * - * @param double $value the value to format - * @param int $limes the sensitiveness - * @param int $comma the number of decimals to retain - * - * @return string the formatted value with unit - */ -function ADVISOR_formatByteDown($value, $limes = 6, $comma = 0) -{ - return implode(' ', PMA_Util::formatByteDown($value, $limes, $comma)); -} diff --git a/libraries/Config.class.php b/libraries/Config.php similarity index 98% rename from libraries/Config.class.php rename to libraries/Config.php index 2ab26ee2b2..3f29ef62fd 100644 --- a/libraries/Config.class.php +++ b/libraries/Config.php @@ -5,14 +5,13 @@ * * @package PhpMyAdmin */ - -if (! defined('PHPMYADMIN')) { - exit; -} +namespace PMA\libraries; /** * Load vendor configuration. */ +use DirectoryIterator; + require_once './libraries/vendor_config.php'; /** @@ -25,7 +24,7 @@ $GLOBALS['pma_config_loading'] = false; * * @package PhpMyAdmin */ -class PMA_Config +class Config { /** * @var string default config source @@ -96,7 +95,7 @@ class PMA_Config $this->settings = array(); // functions need to refresh in case of config file changed goes in - // PMA_Config::load() + // PMA\libraries\Config::load() $this->load($source); // other settings, independent from config file, comes in @@ -771,7 +770,7 @@ class PMA_Config if ($handle === false) { return null; } - PMA_Util::configureCurl($handle); + Util::configureCurl($handle); curl_setopt($handle, CURLOPT_FOLLOWLOCATION, 0); curl_setopt($handle, CURLOPT_RETURNTRANSFER, 1); curl_setopt($handle, CURLOPT_SSL_VERIFYHOST, 0); @@ -1797,7 +1796,7 @@ class PMA_Config $current_size = '82%'; } } - $options = PMA_Config::getFontsizeOptions($current_size); + $options = Config::getFontsizeOptions($current_size); $return = '' . "\n" @@ -1825,7 +1824,7 @@ class PMA_Config return '' . "\n" . PMA_URL_getHiddenInputs() . "\n" - . PMA_Config::getFontsizeSelection() . "\n" + . Config::getFontsizeSelection() . "\n" . ''; } @@ -1912,32 +1911,34 @@ class PMA_Config // cookie has already $value as value return true; } -} -/** - * Error handler to catch fatal errors when loading configuration - * file - * - * @return void - */ -function PMA_Config_fatalErrorHandler() -{ - if (isset($GLOBALS['pma_config_loading']) && $GLOBALS['pma_config_loading']) { - $error = error_get_last(); - if ($error !== null) { - PMA_fatalError( - sprintf( - 'Failed to load phpMyAdmin configuration (%s:%s): %s', - PMA_Error::relPath($error['file']), - $error['line'], - $error['message'] - ) - ); + /** + * Error handler to catch fatal errors when loading configuration + * file + * + * + * PMA_Config_fatalErrorHandler + * @return void + */ + public static function fatalErrorHandler() + { + if (isset($GLOBALS['pma_config_loading']) && $GLOBALS['pma_config_loading']) { + $error = error_get_last(); + if ($error !== null) { + PMA_fatalError( + sprintf( + 'Failed to load phpMyAdmin configuration (%s:%s): %s', + Error::relPath($error['file']), + $error['line'], + $error['message'] + ) + ); + } } } } if (!defined('TESTSUITE')) { - register_shutdown_function('PMA_Config_fatalErrorHandler'); + register_shutdown_function(array('PMA\libraries\Config', 'fatalErrorHandler')); } diff --git a/libraries/Console.class.php b/libraries/Console.php similarity index 99% rename from libraries/Console.class.php rename to libraries/Console.php index 2ab28fc28f..41ef2d0ccc 100644 --- a/libraries/Console.class.php +++ b/libraries/Console.php @@ -5,12 +5,13 @@ * * @package PhpMyAdmin */ +namespace PMA\libraries; + if (! defined('PHPMYADMIN')) { exit; } require_once 'libraries/Scripts.class.php'; -require_once 'libraries/Util.class.php'; require_once 'libraries/bookmark.lib.php'; /** @@ -18,7 +19,7 @@ require_once 'libraries/bookmark.lib.php'; * * @package PhpMyAdmin */ -class PMA_Console +class Console { /** * Whether to display anything @@ -227,7 +228,7 @@ class PMA_Console $output .= '