From 37bf6f2093bcce3420ae6861e942210454bd6a62 Mon Sep 17 00:00:00 2001 From: Hugues Peccatte Date: Sat, 19 Sep 2015 22:40:56 +0200 Subject: [PATCH] Update nodes load. Fix template call. Remove useless 'use'. Fix node load. Fix merge. Attempt to fix transformation unit test. Signed-off-by: Hugues Peccatte --- index.php | 1 - libraries/navigation/NavigationTree.php | 8 ++- libraries/navigation/NodeFactory.php | 12 ++-- .../nodes/NodeDatabaseContainer.php | 2 +- libraries/server_privileges.lib.php | 2 +- libraries/transformations.lib.php | 6 +- .../privileges/add_privileges_database.phtml | 5 +- templates/privileges/privileges_summary.phtml | 9 +-- .../navigation/PMA_NodeFactory_test.php | 8 +-- test/libraries/PMA_transformation_test.php | 60 +++++++++---------- 10 files changed, 60 insertions(+), 53 deletions(-) diff --git a/index.php b/index.php index 6fe00a0d54..d4ec7f21c0 100644 --- a/index.php +++ b/index.php @@ -5,7 +5,6 @@ * * @package PhpMyAdmin */ -use PMA\libraries\PMA_String; use PMA\libraries\RecentFavoriteTable; /** diff --git a/libraries/navigation/NavigationTree.php b/libraries/navigation/NavigationTree.php index dc31d47577..571e9ea358 100644 --- a/libraries/navigation/NavigationTree.php +++ b/libraries/navigation/NavigationTree.php @@ -144,7 +144,7 @@ class NavigationTree $this->_searchClause2 = $_REQUEST['searchClause2']; } // Initialise the tree by creating a root node - $node = NodeFactory::getInstance('PMA\\libraries\\navigation\\nodes\\NodeDatabaseContainer', 'root'); + $node = NodeFactory::getInstance('NodeDatabaseContainer', 'root'); $this->_tree = $node; if ($GLOBALS['cfg']['NavigationTreeEnableGrouping'] && $GLOBALS['cfg']['ShowDatabasesNavigationAsTree'] @@ -282,7 +282,7 @@ class NavigationTree ); $hiddenCounts = $this->_tree->getNavigationHidingData(); foreach ($data as $db) { - $node = NodeFactory::getInstance('PMA\\libraries\\navigation\\nodes\\NodeDatabase', $db); + $node = NodeFactory::getInstance('NodeDatabase', $db); if (isset($hiddenCounts[$db])) { $node->setHiddenCount($hiddenCounts[$db]); } @@ -804,8 +804,10 @@ class NavigationTree continue; } $class = get_class($child); + $className = substr($class, strrpos($class, '\\') + 1); + unset($class); $new_child = NodeFactory::getInstance( - $class, + $className, /*overload*/ mb_substr( $child->name, diff --git a/libraries/navigation/NodeFactory.php b/libraries/navigation/NodeFactory.php index 294ee53a00..198ef8e070 100644 --- a/libraries/navigation/NodeFactory.php +++ b/libraries/navigation/NodeFactory.php @@ -17,6 +17,7 @@ use PMA\Psr4Autoloader; */ class NodeFactory { + protected static $_namespace = 'PMA\\libraries\\navigation\\nodes\\%s'; /** * Sanitizes the name of a Node class * @@ -26,7 +27,7 @@ class NodeFactory */ private static function _sanitizeClass($class) { - if (!preg_match('@^PMA\\\\libraries\\\\navigation\\\\nodes\\\\Node\w*$@', $class)) { + if (!preg_match('@^Node\w*$@', $class)) { $class = 'Node'; trigger_error( sprintf( @@ -52,8 +53,11 @@ class NodeFactory */ private static function _checkClass($class) { - if (!class_exists($class) && !Psr4Autoloader::getInstance()->loadClass($class)) { - $class = 'Node'; + $class = sprintf(self::$_namespace, $class); + if (!class_exists($class) + && !Psr4Autoloader::getInstance()->loadClass($class) + ) { + $class = sprintf(self::$_namespace, 'Node'); trigger_error( sprintf( __('Could not load class "%1$s"'), @@ -78,7 +82,7 @@ class NodeFactory * @return mixed */ public static function getInstance( - $class = 'PMA\\libraries\\navigation\\nodes\\Node', + $class = 'Node', $name = 'default', $type = Node::OBJECT, $is_group = false diff --git a/libraries/navigation/nodes/NodeDatabaseContainer.php b/libraries/navigation/nodes/NodeDatabaseContainer.php index cb4c2f6f90..b636748cef 100644 --- a/libraries/navigation/nodes/NodeDatabaseContainer.php +++ b/libraries/navigation/nodes/NodeDatabaseContainer.php @@ -32,7 +32,7 @@ class NodeDatabaseContainer extends Node && $GLOBALS['cfg']['ShowCreateDb'] !== false ) { $new = NodeFactory::getInstance( - 'PMA\\libraries\\navigation\\nodes\\Node', + 'Node', _pgettext('Create new database', 'New') ); $new->isNew = true; diff --git a/libraries/server_privileges.lib.php b/libraries/server_privileges.lib.php index dbe7b918eb..271bff8eb2 100644 --- a/libraries/server_privileges.lib.php +++ b/libraries/server_privileges.lib.php @@ -3333,7 +3333,7 @@ function PMA_getHtmlForAllTableSpecificRights( $data['routines'] = $routines; } - $html_output = PMA\Template::get('privileges/privileges_summary') + $html_output = Template::get('privileges/privileges_summary') ->render($data); return $html_output; diff --git a/libraries/transformations.lib.php b/libraries/transformations.lib.php index 82c4d08ade..eabfb4b50f 100644 --- a/libraries/transformations.lib.php +++ b/libraries/transformations.lib.php @@ -169,9 +169,9 @@ function PMA_getTransformationClassName($filename) function PMA_getTransformationDescription($file) { /* @var $class_name TransformationsInterface */ - $class_name = PMA_getTransformationClassName('libraries/plugins/transformations/' . $file); + $class_name = PMA_getTransformationClassName($file); // include and instantiate the class - include_once 'libraries/plugins/transformations/' . $file; + include_once $file; return $class_name::getInfo(); } @@ -187,7 +187,7 @@ function PMA_getTransformationName($file) /* @var $class_name TransformationsInterface */ $class_name = PMA_getTransformationClassName($file); // include and instantiate the class - include_once 'libraries/plugins/transformations/' . $file; + include_once $file; return $class_name::getName(); } diff --git a/templates/privileges/add_privileges_database.phtml b/templates/privileges/add_privileges_database.phtml index 1ca23f5130..0268a2e4b9 100644 --- a/templates/privileges/add_privileges_database.phtml +++ b/templates/privileges/add_privileges_database.phtml @@ -1,9 +1,10 @@ + - \ No newline at end of file + \ No newline at end of file diff --git a/templates/privileges/privileges_summary.phtml b/templates/privileges/privileges_summary.phtml index 7cbb871bc5..220f1a6f94 100644 --- a/templates/privileges/privileges_summary.phtml +++ b/templates/privileges/privileges_summary.phtml @@ -1,3 +1,4 @@ +