From e1ceb050e19c7574bca146a8da7047ee4ff456b5 Mon Sep 17 00:00:00 2001
From: Marius Burkard <m.burkard@pixcept.de>
Date: Sun, 10 Jul 2016 05:02:35 -0400
Subject: [PATCH] Merge branch 'stable-3.1'
---
interface/web/sites/database_phpmyadmin.php | 40 ++++++++++++++++++++++++++--------------
1 files changed, 26 insertions(+), 14 deletions(-)
diff --git a/interface/web/sites/database_phpmyadmin.php b/interface/web/sites/database_phpmyadmin.php
index 84a31c6..481b4ea 100644
--- a/interface/web/sites/database_phpmyadmin.php
+++ b/interface/web/sites/database_phpmyadmin.php
@@ -28,8 +28,8 @@
*/
-require_once('../../lib/config.inc.php');
-require_once('../../lib/app.inc.php');
+require_once '../../lib/config.inc.php';
+require_once '../../lib/app.inc.php';
//* Check permissions for module
$app->auth->check_module_permissions('sites');
@@ -38,27 +38,39 @@
* get the id of the database (must be int!)
*/
if (!isset($_GET['id'])){
- die ("No DB selected!");
+ die ("No DB selected!");
}
-$databaseId = intval($_GET['id']);
+$databaseId = $app->functions->intval($_GET['id']);
/*
* Get the data to connect to the database
*/
-$dbData = $app->db->queryOneRecord("SELECT server_id FROM web_database WHERE database_id = " . $databaseId);
-$serverId = intval($dbData['server_id']);
+$dbData = $app->db->queryOneRecord("SELECT server_id, database_name FROM web_database WHERE database_id = ?", $databaseId);
+$serverId = $app->functions->intval($dbData['server_id']);
if ($serverId == 0){
- die ("No DB-Server found!");
+ die ("No DB-Server found!");
}
-$serverData = $app->db->queryOneRecord(
- "SELECT server_name FROM server WHERE server_id = " .
- $serverId);
+$serverData = $app->db->queryOneRecord("SELECT server_name FROM server WHERE server_id = ?", $serverId);
+
+$app->uses('getconf');
+$global_config = $app->getconf->get_global_config('sites');
+$web_config = $app->getconf->get_server_config($serverId, 'web');
/*
* We only redirect to the login-form, so there is no need, to check any rights
*/
-isset($_SERVER['HTTPS'])? $http = 'https' : $http = 'http';
-($_SERVER["SERVER_PORT"] != '80' and $http == 'https')? $serverPort = ':'.$_SERVER["SERVER_PORT"] : $serverPort = '';
-header('location:'.$http.'://'.$serverData['server_name'].$serverPort.'/phpmyadmin');
+
+if($global_config['phpmyadmin_url'] != '') {
+ $phpmyadmin_url = $global_config['phpmyadmin_url'];
+ $phpmyadmin_url = str_replace(array('[SERVERNAME]', '[DATABASENAME]'), array($serverData['server_name'], $dbData['database_name']), $phpmyadmin_url);
+ header('Location: '.$phpmyadmin_url);
+} else {
+ isset($_SERVER['HTTPS'])? $http = 'https' : $http = 'http';
+ if($web_config['server_type'] == 'nginx') {
+ header('Location: http://' . $serverData['server_name'] . ':8081/phpmyadmin');
+ } else {
+ header('Location: ' . $http . '://' . $serverData['server_name'] . '/phpmyadmin');
+ }
+}
exit;
-?>
\ No newline at end of file
+?>
--
Gitblit v1.9.1