diff --git a/UPGRADE b/UPGRADE
index 1db00d79..595ca41a 100644
--- a/UPGRADE
+++ b/UPGRADE
@@ -282,6 +282,8 @@ OTHER CHANGES:
76. Added recording filename option to update filename post-call with select
variable values, uses options in AST_CRON_audio_1_move_VDonly.pl script
+77. Added ALT Multi Dispo URL option to restrict URL sending by list ID.
+
diff --git a/extras/MySQL_AST_CREATE_tables.sql b/extras/MySQL_AST_CREATE_tables.sql
index a27a7b35..d2ff4096 100644
--- a/extras/MySQL_AST_CREATE_tables.sql
+++ b/extras/MySQL_AST_CREATE_tables.sql
@@ -3351,6 +3351,7 @@ url_rank SMALLINT(5) default '1',
url_statuses VARCHAR(1000) default '',
url_description VARCHAR(255) default '',
url_address TEXT,
+url_lists VARCHAR(1000) default '',
PRIMARY KEY (url_id),
KEY vicidial_url_multi_campaign_id_key (campaign_id)
) ENGINE=MyISAM CHARSET=utf8 COLLATE=utf8_unicode_ci;
@@ -3783,4 +3784,4 @@ UPDATE vicidial_configuration set value='1766' where name='qc_database_version';
UPDATE system_settings set vdc_agent_api_active='1';
-UPDATE system_settings SET db_schema_version='1463',db_schema_update_date=NOW(),reload_timestamp=NOW();
+UPDATE system_settings SET db_schema_version='1464',db_schema_update_date=NOW(),reload_timestamp=NOW();
diff --git a/extras/upgrade_2.12.sql b/extras/upgrade_2.12.sql
index 605c1080..e994b485 100644
--- a/extras/upgrade_2.12.sql
+++ b/extras/upgrade_2.12.sql
@@ -634,3 +634,7 @@ ALTER TABLE vicidial_campaigns ADD manual_auto_next SMALLINT(5) UNSIGNED default
ALTER TABLE vicidial_campaigns ADD manual_auto_show ENUM('Y','N') default 'N';
UPDATE system_settings SET db_schema_version='1463',db_schema_update_date=NOW() where db_schema_version < 1463;
+
+ALTER TABLE vicidial_url_multi ADD url_lists VARCHAR(1000) default '';
+
+UPDATE system_settings SET db_schema_version='1464',db_schema_update_date=NOW() where db_schema_version < 1464;
diff --git a/www/agc/vdc_db_query.php b/www/agc/vdc_db_query.php
index 467bcbba..d5ee3012 100644
--- a/www/agc/vdc_db_query.php
+++ b/www/agc/vdc_db_query.php
@@ -408,10 +408,11 @@
# 160510-0840 - Added callback_lead_status as dispo_call_url variable
# 160706-1437 - Added font styles to text in many places
# 160714-1503 - Added called_count as a dispo_call_url variable
+# 160801-0717 - Added lists option to ALT dispo call url functions
#
-$version = '2.12-302';
-$build = '160714-1503';
+$version = '2.12-303';
+$build = '160801-0717';
$php_script = 'vdc_db_query.php';
$mel=1; # Mysql Error Log enabled = 1
$mysql_log_count=654;
@@ -11103,7 +11104,7 @@ if ($ACTION == 'updateDISPO')
{
if ($dispo_call_url == 'ALT')
{
- $stmt="SELECT url_rank,url_statuses,url_address from vicidial_url_multi where campaign_id='$DUcampaign_id' and entry_type='$DUentry_type' and url_type='dispo' and active='Y' order by url_rank limit 1000;";
+ $stmt="SELECT url_rank,url_statuses,url_address,url_lists from vicidial_url_multi where campaign_id='$DUcampaign_id' and entry_type='$DUentry_type' and url_type='dispo' and active='Y' order by url_rank limit 1000;";
if ($DB) {echo "$stmt\n";}
$rslt=mysql_to_mysqli($stmt, $link);
if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'00634',$user,$server_ip,$session_name,$one_mysql_log);}
@@ -11115,8 +11116,9 @@ if ($ACTION == 'updateDISPO')
$url_rank = $row[0];
$url_statuses = " $row[1] ";
$url_address = $row[2];
+ $url_lists = " $row[3] ";
- if ( (preg_match("/---ALL---/",$url_statuses)) or ( (strlen($url_statuses)>2) and (preg_match("/ $dispo_choice /",$url_statuses)) ) )
+ if ( ( (preg_match("/---ALL---/",$url_statuses)) or ( (strlen($url_statuses)>2) and (preg_match("/ $dispo_choice /",$url_statuses)) ) ) and ( (strlen($url_lists)<3) or ( (strlen($url_lists)>2) and (preg_match("/ $list_id /",$url_lists)) ) ) )
{
$dispo_call_urlARY[$dispo_call_url_count] = $url_address;
$dispo_call_url_count++;
diff --git a/www/vicidial/admin_url_multi.php b/www/vicidial/admin_url_multi.php
index 3ae0a587..8303fc9f 100644
--- a/www/vicidial/admin_url_multi.php
+++ b/www/vicidial/admin_url_multi.php
@@ -13,10 +13,11 @@
# 150709-0612 - First Build
# 160331-2203 - Made URL form input fields longer
# 160508-0815 - Added colors features
+# 160801-0657 - Added lists qualifier fields
#
-$admin_version = '2.12-3';
-$build = '160508-0815';
+$admin_version = '2.12-4';
+$build = '160801-0657';
require("dbconnect_mysqli.php");
require("functions.php");
@@ -42,6 +43,8 @@ if (isset($_GET["url_rank"])) {$url_rank=$_GET["url_rank"];}
elseif (isset($_POST["url_rank"])) {$url_rank=$_POST["url_rank"];}
if (isset($_GET["url_statuses"])) {$url_statuses=$_GET["url_statuses"];}
elseif (isset($_POST["url_statuses"])) {$url_statuses=$_POST["url_statuses"];}
+if (isset($_GET["url_lists"])) {$url_lists=$_GET["url_lists"];}
+ elseif (isset($_POST["url_lists"])) {$url_lists=$_POST["url_lists"];}
if (isset($_GET["url_description"])) {$url_description=$_GET["url_description"];}
elseif (isset($_POST["url_description"])) {$url_description=$_POST["url_description"];}
if (isset($_GET["url_address"])) {$url_address=$_GET["url_address"];}
@@ -82,6 +85,7 @@ if ($non_latin < 1)
$url_type = preg_replace('/[^_0-9a-zA-Z]/','',$url_type);
$url_rank = preg_replace('/[^-0-9]/','',$url_rank);
$url_statuses = preg_replace('/[^- _0-9a-zA-Z]/','',$url_statuses);
+ $url_lists = preg_replace('/[^- _0-9]/','',$url_lists);
$url_description = preg_replace('/[^- \.\,\_0-9a-zA-Z]/','',$url_description);
} # end of non_latin
else
@@ -270,7 +274,7 @@ if ($camp_multi < 1)
if ($DB > 0)
{
- echo "$DB,$action,$campaign_id,$url_id,$entry_type,$active,$url_type,$url_rank,$url_statuses,$url_description\n
";
+ echo "$DB,$action,$campaign_id,$url_id,$entry_type,$active,$url_type,$url_rank,$url_statuses,$url_lists,$url_description\n
";
}
@@ -325,7 +329,7 @@ if ($action == "URL_MULTI_MODIFY")
echo _QXZ("ERROR: URL entry does not exist").": |$url_id|$campaign_id|$entry_type|$url_type|\n
";
exit;
}
- $stmt="UPDATE vicidial_url_multi SET active='$active',url_rank='$url_rank',url_statuses='$url_statuses',url_description='$url_description',url_address='" . mysqli_real_escape_string($link, $url_address) . "' where campaign_id='$campaign_id' and entry_type='$entry_type' and url_type='$url_type' and url_id='$url_id';";
+ $stmt="UPDATE vicidial_url_multi SET active='$active',url_rank='$url_rank',url_statuses='$url_statuses',url_lists='$url_lists',url_description='$url_description',url_address='" . mysqli_real_escape_string($link, $url_address) . "' where campaign_id='$campaign_id' and entry_type='$entry_type' and url_type='$url_type' and url_id='$url_id';";
$rslt=mysql_to_mysqli($stmt, $link);
$affected_rows = mysqli_affected_rows($link);
if ($DB > 0) {echo "$affected_rows|$stmt\n
";}
@@ -404,10 +408,10 @@ if ($action == "BLANK")
echo "
| # | "._QXZ("ACTIVE")." | "._QXZ("RANK")." | "._QXZ("STATUSES")." | "._QXZ("DESCRIPTION")." | "._QXZ("SUBMIT")." | |||||
| # | "._QXZ("ACTIVE")." | "._QXZ("RANK")." | "._QXZ("STATUSES")." | "._QXZ("LISTS")." | "._QXZ("DESCRIPTION")." | "._QXZ("SUBMIT")." | $o | "; echo ""; echo " | "; - echo " | "; - echo " | "; + echo " | "; + echo " | "; + echo " | "; echo " | ";
echo " "; if ($Ractive == 'N') @@ -451,7 +457,7 @@ if ($action == "BLANK") echo " | ";
echo "";
echo "
| "._QXZ("URL").": | "; + echo ""._QXZ("URL").": | "; echo "\n"; echo "|||||||||