From 532f8214636f057cac6eebb5f486cdff87201780 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maur=C3=ADcio=20Meneghini=20Fauth?= Date: Fri, 8 Sep 2017 16:24:22 -0300 Subject: [PATCH] Refactor rte_footer functions to static methods MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: MaurĂ­cio Meneghini Fauth --- libraries/classes/Rte/Events.php | 3 +- libraries/classes/Rte/Footer.php | 136 +++++++++++++++++++++++++++++ libraries/classes/Util.php | 2 +- libraries/rte/rte_footer.lib.php | 128 --------------------------- libraries/rte/rte_main.inc.php | 1 - libraries/rte/rte_routines.lib.php | 3 +- libraries/rte/rte_triggers.lib.php | 3 +- 7 files changed, 143 insertions(+), 133 deletions(-) create mode 100644 libraries/classes/Rte/Footer.php delete mode 100644 libraries/rte/rte_footer.lib.php diff --git a/libraries/classes/Rte/Events.php b/libraries/classes/Rte/Events.php index b0451eba0b..95243c5932 100644 --- a/libraries/classes/Rte/Events.php +++ b/libraries/classes/Rte/Events.php @@ -10,6 +10,7 @@ namespace PhpMyAdmin\Rte; use PhpMyAdmin\Message; use PhpMyAdmin\Response; use PhpMyAdmin\Rte\Export; +use PhpMyAdmin\Rte\Footer; use PhpMyAdmin\Url; use PhpMyAdmin\Util; @@ -81,7 +82,7 @@ class Events * the user has the privileges and a link to * toggle the state of the event scheduler. */ - echo PMA_EVN_getFooterLinks(); + echo Footer::events(); } // end self::main() /** diff --git a/libraries/classes/Rte/Footer.php b/libraries/classes/Rte/Footer.php new file mode 100644 index 0000000000..deea4ba9a9 --- /dev/null +++ b/libraries/classes/Rte/Footer.php @@ -0,0 +1,136 @@ +\n"; + $retval .= "
\n"; + $retval .= "" . _pgettext('Create new procedure', 'New') . "\n"; + $retval .= " \n"; + $retval .= "
\n"; + $retval .= "\n\n"; + + return $retval; + } // end self::getLinks() + + /** + * Creates a fieldset for adding a new routine, if the user has the privileges. + * + * @return string HTML code with containing the footer fieldset + */ + public static function routines() + { + return self::getLinks('CREATE_PROCEDURE', 'CREATE ROUTINE', 'ROUTINE'); + }// end self::routines() + + /** + * Creates a fieldset for adding a new trigger, if the user has the privileges. + * + * @return string HTML code with containing the footer fieldset + */ + public static function triggers() + { + return self::getLinks('CREATE_TRIGGER', 'TRIGGER', 'TRIGGER'); + } // end self::triggers() + + /** + * Creates a fieldset for adding a new event, if the user has the privileges. + * + * @return string HTML code with containing the footer fieldset + */ + public static function events() + { + global $db, $url_query; + + /** + * For events, we show the usual 'Add event' form and also + * a form for toggling the state of the event scheduler + */ + // Init options for the event scheduler toggle functionality + $es_state = $GLOBALS['dbi']->fetchValue( + "SHOW GLOBAL VARIABLES LIKE 'event_scheduler'", + 0, + 1 + ); + $es_state = mb_strtolower($es_state); + $options = array( + 0 => array( + 'label' => __('OFF'), + 'value' => "SET GLOBAL event_scheduler=\"OFF\"", + 'selected' => ($es_state != 'on') + ), + 1 => array( + 'label' => __('ON'), + 'value' => "SET GLOBAL event_scheduler=\"ON\"", + 'selected' => ($es_state == 'on') + ) + ); + // Generate output + $retval = "\n"; + $retval .= "
\n"; + // show the usual footer + $retval .= self::getLinks('CREATE_EVENT', 'EVENT', 'EVENT'); + $retval .= "
\n"; + $retval .= " \n"; + $retval .= " " . __('Event scheduler status') . "\n"; + $retval .= " \n"; + $retval .= "
\n"; + // show the toggle button + $retval .= Util::toggleButton( + "sql.php$url_query&goto=db_events.php" . urlencode("?db=$db"), + 'sql_query', + $options, + 'PMA_slidingMessage(data.sql_query);' + ); + $retval .= "
\n"; + $retval .= "
\n"; + $retval .= "
\n"; + $retval .= "
"; + $retval .= "\n"; + + return $retval; + } // end self::events() +} diff --git a/libraries/classes/Util.php b/libraries/classes/Util.php index bff06a935d..5770b24ad0 100644 --- a/libraries/classes/Util.php +++ b/libraries/classes/Util.php @@ -2681,7 +2681,7 @@ class Util * * @param string $action The URL for the request to be executed * @param string $select_name The name for the dropdown box - * @param array $options An array of options (see rte_footer.lib.php) + * @param array $options An array of options (see PhpMyAdmin\Rte\Footer) * @param string $callback A JS snippet to execute when the request is * successfully processed * diff --git a/libraries/rte/rte_footer.lib.php b/libraries/rte/rte_footer.lib.php deleted file mode 100644 index 2953074c36..0000000000 --- a/libraries/rte/rte_footer.lib.php +++ /dev/null @@ -1,128 +0,0 @@ -\n"; - $retval .= "
\n"; - $retval .= "" . _pgettext('Create new procedure', 'New') . "\n"; - $retval .= " \n"; - $retval .= "
\n"; - $retval .= "\n\n"; - - return $retval; -} // end PMA_RTE_getFooterLinks() - -/** - * Creates a fieldset for adding a new routine, if the user has the privileges. - * - * @return string HTML code with containing the footer fieldset - */ -function PMA_RTN_getFooterLinks() -{ - return PMA_RTE_getFooterLinks('CREATE_PROCEDURE', 'CREATE ROUTINE', 'ROUTINE'); -}// end PMA_RTN_getFooterLinks() - -/** - * Creates a fieldset for adding a new trigger, if the user has the privileges. - * - * @return string HTML code with containing the footer fieldset - */ -function PMA_TRI_getFooterLinks() -{ - return PMA_RTE_getFooterLinks('CREATE_TRIGGER', 'TRIGGER', 'TRIGGER'); -} // end PMA_TRI_getFooterLinks() - -/** - * Creates a fieldset for adding a new event, if the user has the privileges. - * - * @return string HTML code with containing the footer fieldset - */ -function PMA_EVN_getFooterLinks() -{ - global $db, $url_query; - - /** - * For events, we show the usual 'Add event' form and also - * a form for toggling the state of the event scheduler - */ - // Init options for the event scheduler toggle functionality - $es_state = $GLOBALS['dbi']->fetchValue( - "SHOW GLOBAL VARIABLES LIKE 'event_scheduler'", - 0, - 1 - ); - $es_state = mb_strtolower($es_state); - $options = array( - 0 => array( - 'label' => __('OFF'), - 'value' => "SET GLOBAL event_scheduler=\"OFF\"", - 'selected' => ($es_state != 'on') - ), - 1 => array( - 'label' => __('ON'), - 'value' => "SET GLOBAL event_scheduler=\"ON\"", - 'selected' => ($es_state == 'on') - ) - ); - // Generate output - $retval = "\n"; - $retval .= "
\n"; - // show the usual footer - $retval .= PMA_RTE_getFooterLinks('CREATE_EVENT', 'EVENT', 'EVENT'); - $retval .= "
\n"; - $retval .= " \n"; - $retval .= " " . __('Event scheduler status') . "\n"; - $retval .= " \n"; - $retval .= "
\n"; - // show the toggle button - $retval .= PhpMyAdmin\Util::toggleButton( - "sql.php$url_query&goto=db_events.php" . urlencode("?db=$db"), - 'sql_query', - $options, - 'PMA_slidingMessage(data.sql_query);' - ); - $retval .= "
\n"; - $retval .= "
\n"; - $retval .= "
\n"; - $retval .= "
"; - $retval .= "\n"; - - return $retval; -} // end PMA_EVN_getFooterLinks() diff --git a/libraries/rte/rte_main.inc.php b/libraries/rte/rte_main.inc.php index a6a40890cb..ca747e2540 100644 --- a/libraries/rte/rte_main.inc.php +++ b/libraries/rte/rte_main.inc.php @@ -20,7 +20,6 @@ if (! defined('PHPMYADMIN')) { require_once './libraries/rte/rte_general.lib.php'; require_once './libraries/rte/rte_words.lib.php'; require_once './libraries/rte/rte_list.lib.php'; -require_once './libraries/rte/rte_footer.lib.php'; $response = Response::getInstance(); diff --git a/libraries/rte/rte_routines.lib.php b/libraries/rte/rte_routines.lib.php index 2cef4bd9d8..79bf89664b 100644 --- a/libraries/rte/rte_routines.lib.php +++ b/libraries/rte/rte_routines.lib.php @@ -10,6 +10,7 @@ use PhpMyAdmin\Core; use PhpMyAdmin\Message; use PhpMyAdmin\Response; use PhpMyAdmin\Rte\Export; +use PhpMyAdmin\Rte\Footer; use PhpMyAdmin\SqlParser\Statements\CreateStatement; use PhpMyAdmin\Url; use PhpMyAdmin\Util; @@ -70,7 +71,7 @@ function PMA_RTN_main($type) /** * Display the form for adding a new routine, if the user has the privileges. */ - echo PMA_RTN_getFooterLinks(); + echo Footer::routines(); /** * Display a warning for users with PHP's old "mysql" extension. */ diff --git a/libraries/rte/rte_triggers.lib.php b/libraries/rte/rte_triggers.lib.php index 612499198d..8e493133e6 100644 --- a/libraries/rte/rte_triggers.lib.php +++ b/libraries/rte/rte_triggers.lib.php @@ -7,6 +7,7 @@ */ use PhpMyAdmin\Response; use PhpMyAdmin\Rte\Export; +use PhpMyAdmin\Rte\Footer; use PhpMyAdmin\Url; if (! defined('PHPMYADMIN')) { @@ -54,7 +55,7 @@ function PMA_TRI_main() * Display a link for adding a new trigger, * if the user has the necessary privileges */ - echo PMA_TRI_getFooterLinks(); + echo Footer::triggers(); } // end PMA_TRI_main() /**