From b5fd99f4f045712ca2c11865607802539cffcdb8 Mon Sep 17 00:00:00 2001 From: mattf Date: Tue, 10 Dec 2013 23:07:03 +0000 Subject: [PATCH] Added ability to define slave reporting server with a port number, issue #687 git-svn-id: svn://192.168.202.10@2050 3d104415-ff17-0410-8863-d5cf3c621b8a --- www/vicidial/admin.php | 7 ++++--- www/vicidial/dbconnect.php | 20 ++++++++++++++++---- www/vicidial/dbconnect_mysqli.php | 24 ++++++++++++++++++++---- 3 files changed, 40 insertions(+), 11 deletions(-) diff --git a/www/vicidial/admin.php b/www/vicidial/admin.php index 41e4b59b..d3ebbbf5 100644 --- a/www/vicidial/admin.php +++ b/www/vicidial/admin.php @@ -2692,7 +2692,7 @@ if ($non_latin < 1) $label_security_phrase = preg_replace('/[^- \.\,\_0-9a-zA-Z]/','',$label_security_phrase); $label_email = preg_replace('/[^- \.\,\_0-9a-zA-Z]/','',$label_email); $label_comments = preg_replace('/[^- \.\,\_0-9a-zA-Z]/','',$label_comments); - $slave_db_server = preg_replace('/[^- \.\,\_0-9a-zA-Z]/','',$slave_db_server); + $slave_db_server = preg_replace('/[^- \.\,\:\_0-9a-zA-Z]/','',$slave_db_server); $filter_phone_group_name = preg_replace('/[^- \.\,\_0-9a-zA-Z]/','',$filter_phone_group_name); $filter_phone_group_description = preg_replace('/[^- \.\,\_0-9a-zA-Z]/','',$filter_phone_group_description); $filter_clean_cid_number = preg_replace('/[^- \.\,\_0-9a-zA-Z]/','',$filter_clean_cid_number); @@ -3263,12 +3263,13 @@ else # 131019-0849 - Moved help section to help.php # 131029-2008 - Added Asterisk auto-restart options to servers # 131208-1626 - Added campaign options for max dead, dispo and pause time +# 131210-1741 - Added ability to define slave server with port number, issue #687 # # make sure you have added a user to the vicidial_users MySQL table with at least user_level 8 to access this page the first time -$admin_version = '2.8-419a'; -$build = '131208-1626'; +$admin_version = '2.8-420a'; +$build = '131210-1741'; $STARTtime = date("U"); $SQLdate = date("Y-m-d H:i:s"); diff --git a/www/vicidial/dbconnect.php b/www/vicidial/dbconnect.php index e8fc0a1a..b70cdc37 100644 --- a/www/vicidial/dbconnect.php +++ b/www/vicidial/dbconnect.php @@ -4,11 +4,12 @@ # # database connection settings and some global web settings # -# Copyright (C) 2010 Matt Florell LICENSE: AGPLv2 +# Copyright (C) 2013 Matt Florell LICENSE: AGPLv2 # # CHANGES # 100712-1430 - Added slave server option for connection # 130610-1112 - Finalized changing of all ereg instances to preg +# 131210-1736 - Added ability to define slave server with port number, issue #687 # if ( file_exists("/etc/astguiclient.conf") ) @@ -52,9 +53,20 @@ else $WeBServeRRooT = '/usr/local/apache2/htdocs'; } -if ( ($use_slave_server > 0) and (strlen($slave_db_server)>5) ) - {$VARDB_server = $slave_db_server;} -$link=mysql_connect("$VARDB_server:$VARDB_port", "$VARDB_user", "$VARDB_pass"); +$server_string = "$VARDB_server:$VARDB_port"; +if ( ($use_slave_server > 0) and (strlen($slave_db_server)>1) ) + { + if (preg_match("/\:/", $slave_db_server)) + { + $server_string = $slave_db_server; + } + else + { + $server_string = "$slave_db_server:$VARDB_port"; + } + } +$link=mysql_connect($server_string, "$VARDB_user", "$VARDB_pass"); + if (!$link) { die('MySQL connect ERROR: ' . mysql_error()); diff --git a/www/vicidial/dbconnect_mysqli.php b/www/vicidial/dbconnect_mysqli.php index c1ba8db9..c7028479 100644 --- a/www/vicidial/dbconnect_mysqli.php +++ b/www/vicidial/dbconnect_mysqli.php @@ -10,6 +10,7 @@ # 130328-0022 - Converted ereg to preg functions # 130802-0957 - Changed to PHP mysqli functions, added # 131101-0713 - Fixed slave server setting +# 131210-1746 - Added ability to define slave server with port number, issue #687 # if ( file_exists("/etc/astguiclient.conf") ) @@ -53,12 +54,27 @@ else $WeBServeRRooT = '/usr/local/apache2/htdocs'; } -if ( ($use_slave_server > 0) and (strlen($slave_db_server)>5) ) - {$VARDB_server = $slave_db_server;} -$link=mysqli_connect("$VARDB_server", "$VARDB_user", "$VARDB_pass", "$VARDB_database", $VARDB_port); + +$server_string = $VARDB_server; +if ( ($use_slave_server > 0) and (strlen($slave_db_server)>1) ) + { + if (preg_match("/\:/", $slave_db_server)) + { + $temp_slave_db = explode(':',$slave_db_server); + $server_string = $temp_slave_db[0]; + $VARDB_port = $temp_slave_db[1]; + } + else + { + $server_string = $slave_db_server; + } + } +$link=mysqli_connect($server_string, "$VARDB_user", "$VARDB_pass", "$VARDB_database", $VARDB_port); + if (!$link) { - die('MySQL connect ERROR: ' . mysqli_error($link)); + // die("MySQL connect ERROR: |$server_string|$VARDB_user|$VARDB_pass|$VARDB_database|$VARDB_port|$temp_slave_db[0]|$temp_slave_db[1]|$slave_db_server|$use_slave_server|" . mysqli_error('mysqli')); + die("MySQL connect ERROR: " . mysqli_error('mysqli')); } $local_DEF = 'Local/';