From 8c94bf5373eac407062046e5b2cacdda0b1375dd Mon Sep 17 00:00:00 2001
From: mcramer <m.cramer@pixcept.de>
Date: Fri, 02 Nov 2012 06:18:18 -0400
Subject: [PATCH] Updated:  - allowed some more characters in phpmyadmin url (system config) like redirect urls do  - added [DATABASENAME] as placeholder to the phpmyadmin url to be able to use urls like http://[SERVERNAME]/?db=[DATABASENAME]

---
 interface/web/sites/database_phpmyadmin.php      |    4 ++--
 interface/web/admin/form/system_config.tform.php |    2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/interface/web/admin/form/system_config.tform.php b/interface/web/admin/form/system_config.tform.php
index 7020ee2..6746034 100644
--- a/interface/web/admin/form/system_config.tform.php
+++ b/interface/web/admin/form/system_config.tform.php
@@ -128,7 +128,7 @@
 			'datatype'	=> 'VARCHAR',
 			'formtype'	=> 'TEXT',
 			'validators'	=> array ( 0 => array (	'type'	=> 'REGEX',
-                                                                'regex' => '/^[0-9a-zA-Z\:\/\-\.\[\]]{0,255}$/',
+                                                                'regex' => '@^(([\.]{0})|(https?://([-\w\.\[\]]+)+(:\d+)?(/([\w/_\.\-\,\+\?\~!:%\[\]]*(\?\S+)?)?)?)|(/[\w/_\.\-\:\[\]]{0,255}/))$@',
                                                                 'errmsg'=> 'phpmyadmin_url_error_regex'),
                                                 ),
 			'default'	=> '',
diff --git a/interface/web/sites/database_phpmyadmin.php b/interface/web/sites/database_phpmyadmin.php
index 51b8820..0bd379d 100644
--- a/interface/web/sites/database_phpmyadmin.php
+++ b/interface/web/sites/database_phpmyadmin.php
@@ -45,7 +45,7 @@
 /*
  * Get the data to connect to the database
  */
-$dbData = $app->db->queryOneRecord("SELECT server_id FROM web_database WHERE database_id = " . $databaseId);
+$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!");
@@ -64,7 +64,7 @@
  
 if($global_config['phpmyadmin_url'] != '') {
 	$phpmyadmin_url = $global_config['phpmyadmin_url'];
-	$phpmyadmin_url = str_replace('[SERVERNAME]',$serverData['server_name'],$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';

--
Gitblit v1.9.1