servers.inc.php 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. <?php
  2. /* vim: set expandtab sw=4 ts=4 sts=4: */
  3. /**
  4. * Server create and edit view
  5. *
  6. * @package PhpMyAdmin-Setup
  7. */
  8. if (!defined('PHPMYADMIN')) {
  9. exit;
  10. }
  11. /**
  12. * Core libraries.
  13. */
  14. require_once './libraries/config/Form.class.php';
  15. require_once './libraries/config/FormDisplay.class.php';
  16. require_once './setup/lib/form_processing.lib.php';
  17. require './libraries/config/setup.forms.php';
  18. $mode = filter_input(INPUT_GET, 'mode');
  19. $id = filter_input(INPUT_GET, 'id', FILTER_VALIDATE_INT);
  20. $cf = $GLOBALS['ConfigFile'];
  21. $server_exists = !empty($id) && $cf->get("Servers/$id") !== null;
  22. if ($mode == 'edit' && $server_exists) {
  23. $page_title = __('Edit server')
  24. . ' ' . $id
  25. . ' <small>(' . htmlspecialchars($cf->getServerDSN($id)) . ')</small>';
  26. } elseif ($mode == 'remove' && $server_exists) {
  27. $cf->removeServer($id);
  28. header('Location: index.php');
  29. exit;
  30. } elseif ($mode == 'revert' && $server_exists) {
  31. // handled by process_formset()
  32. } else {
  33. $page_title = __('Add a new server');
  34. $id = 0;
  35. }
  36. if (isset($page_title)) {
  37. echo '<h2>' . $page_title . '</h2>';
  38. }
  39. $form_display = new FormDisplay($cf);
  40. foreach ($forms['Servers'] as $form_name => $form) {
  41. $form_display->registerForm($form_name, $form, $id);
  42. }
  43. PMA_Process_formset($form_display);
  44. ?>