LICENSE: AGPLv2 # # CHANGES # # 60419-1705 - Added ability to change lead callback record from USERONLY to ANYONE or USERONLY-user # 60421-1459 - check GET/POST vars lines with isset to not trigger PHP NOTICES # 60609-1112 - Added DNC list addition if status changed to DNC # 60619-1539 - Added variable filtering to eliminate SQL injection attack threat # 61130-1639 - Added recording_log lookup and list for this lead_id # 61201-1136 - Added recording_log user(TSR) display and link # 70305-1133 - Changed to default CHECKED modify logs upon status change # 70424-1128 - Added campaign-specific statuses, reformatted recordings list # 70702-1259 - Added recording location link and truncation # 70906-2132 - Added closer_log records display # 80428-0144 - UTF8 cleanup # 80501-0454 - Added Hangup Reason to logs display # 80516-0936 - Cleanup of logging changes, added vicidial_agent_log display # 80701-0832 - Changed to allow for altering of main phone number # 80805-2106 - Changed comments to TEXTAREA # 81210-1529 - Added server recording display options # 90309-1829 - Added admin_log logging # 90508-0644 - Changed to PHP long tags # 90708-1549 - Added phone number dialed to outbound log # 90721-1246 - Added rank and owner as vicidial_list fields # 90917-2355 - Added extended alt phone entries # 100405-1333 - Changed to show logs of non-found leads # 100618-0148 - Added Middle name modify and fixes statuses list # 100622-0945 - Added field labels # 100703-1122 - Added custom fields display/edit # 100712-1416 - Added entry_list_id field to vicidial_list to preserve link to custom fields if any # require("dbconnect.php"); $PHP_AUTH_USER=$_SERVER['PHP_AUTH_USER']; $PHP_AUTH_PW=$_SERVER['PHP_AUTH_PW']; $PHP_SELF=$_SERVER['PHP_SELF']; if (isset($_GET["vendor_id"])) {$vendor_id=$_GET["vendor_id"];} elseif (isset($_POST["vendor_id"])) {$vendor_id=$_POST["vendor_id"];} if (isset($_GET["phone"])) {$phone=$_GET["phone"];} elseif (isset($_POST["phone"])) {$phone=$_POST["phone"];} if (isset($_GET["old_phone"])) {$old_phone=$_GET["old_phone"];} elseif (isset($_POST["old_phone"])) {$old_phone=$_POST["old_phone"];} if (isset($_GET["lead_id"])) {$lead_id=$_GET["lead_id"];} elseif (isset($_POST["lead_id"])) {$lead_id=$_POST["lead_id"];} if (isset($_GET["title"])) {$title=$_GET["title"];} elseif (isset($_POST["title"])) {$title=$_POST["title"];} if (isset($_GET["first_name"])) {$first_name=$_GET["first_name"];} elseif (isset($_POST["first_name"])) {$first_name=$_POST["first_name"];} if (isset($_GET["middle_initial"])) {$middle_initial=$_GET["middle_initial"];} elseif (isset($_POST["middle_initial"])) {$middle_initial=$_POST["middle_initial"];} if (isset($_GET["last_name"])) {$last_name=$_GET["last_name"];} elseif (isset($_POST["last_name"])) {$last_name=$_POST["last_name"];} if (isset($_GET["phone_number"])) {$phone_number=$_GET["phone_number"];} elseif (isset($_POST["phone_number"])) {$phone_number=$_POST["phone_number"];} if (isset($_GET["end_call"])) {$end_call=$_GET["end_call"];} elseif (isset($_POST["end_call"])) {$end_call=$_POST["end_call"];} if (isset($_GET["DB"])) {$DB=$_GET["DB"];} elseif (isset($_POST["DB"])) {$DB=$_POST["DB"];} if (isset($_GET["dispo"])) {$dispo=$_GET["dispo"];} elseif (isset($_POST["dispo"])) {$dispo=$_POST["dispo"];} if (isset($_GET["list_id"])) {$list_id=$_GET["list_id"];} elseif (isset($_POST["list_id"])) {$list_id=$_POST["list_id"];} if (isset($_GET["campaign_id"])) {$campaign_id=$_GET["campaign_id"];} elseif (isset($_POST["campaign_id"])) {$campaign_id=$_POST["campaign_id"];} if (isset($_GET["phone_code"])) {$phone_code=$_GET["phone_code"];} elseif (isset($_POST["phone_code"])) {$phone_code=$_POST["phone_code"];} if (isset($_GET["server_ip"])) {$server_ip=$_GET["server_ip"];} elseif (isset($_POST["server_ip"])) {$server_ip=$_POST["server_ip"];} if (isset($_GET["extension"])) {$extension=$_GET["extension"];} elseif (isset($_POST["extension"])) {$extension=$_POST["extension"];} if (isset($_GET["channel"])) {$channel=$_GET["channel"];} elseif (isset($_POST["channel"])) {$channel=$_POST["channel"];} if (isset($_GET["call_began"])) {$call_began=$_GET["call_began"];} elseif (isset($_POST["call_began"])) {$call_began=$_POST["call_began"];} if (isset($_GET["parked_time"])) {$parked_time=$_GET["parked_time"];} elseif (isset($_POST["parked_time"])) {$parked_time=$_POST["parked_time"];} if (isset($_GET["tsr"])) {$tsr=$_GET["tsr"];} elseif (isset($_POST["tsr"])) {$tsr=$_POST["tsr"];} if (isset($_GET["address1"])) {$address1=$_GET["address1"];} elseif (isset($_POST["address1"])) {$address1=$_POST["address1"];} if (isset($_GET["address2"])) {$address2=$_GET["address2"];} elseif (isset($_POST["address2"])) {$address2=$_POST["address2"];} if (isset($_GET["address3"])) {$address3=$_GET["address3"];} elseif (isset($_POST["address3"])) {$address3=$_POST["address3"];} if (isset($_GET["city"])) {$city=$_GET["city"];} elseif (isset($_POST["city"])) {$city=$_POST["city"];} if (isset($_GET["state"])) {$state=$_GET["state"];} elseif (isset($_POST["state"])) {$state=$_POST["state"];} if (isset($_GET["postal_code"])) {$postal_code=$_GET["postal_code"];} elseif (isset($_POST["postal_code"])) {$postal_code=$_POST["postal_code"];} if (isset($_GET["province"])) {$province=$_GET["province"];} elseif (isset($_POST["province"])) {$province=$_POST["province"];} if (isset($_GET["country_code"])) {$country_code=$_GET["country_code"];} elseif (isset($_POST["country_code"])) {$country_code=$_POST["country_code"];} if (isset($_GET["alt_phone"])) {$alt_phone=$_GET["alt_phone"];} elseif (isset($_POST["alt_phone"])) {$alt_phone=$_POST["alt_phone"];} if (isset($_GET["email"])) {$email=$_GET["email"];} elseif (isset($_POST["email"])) {$email=$_POST["email"];} if (isset($_GET["security"])) {$security=$_GET["security"];} elseif (isset($_POST["security"])) {$security=$_POST["security"];} if (isset($_GET["comments"])) {$comments=$_GET["comments"];} elseif (isset($_POST["comments"])) {$comments=$_POST["comments"];} if (isset($_GET["status"])) {$status=$_GET["status"];} elseif (isset($_POST["status"])) {$status=$_POST["status"];} if (isset($_GET["rank"])) {$rank=$_GET["rank"];} elseif (isset($_POST["rank"])) {$rank=$_POST["rank"];} if (isset($_GET["owner"])) {$owner=$_GET["owner"];} elseif (isset($_POST["owner"])) {$owner=$_POST["owner"];} if (isset($_GET["submit"])) {$submit=$_GET["submit"];} elseif (isset($_POST["submit"])) {$submit=$_POST["submit"];} if (isset($_GET["SUBMIT"])) {$SUBMIT=$_GET["SUBMIT"];} elseif (isset($_POST["SUBMIT"])) {$SUBMIT=$_POST["SUBMIT"];} if (isset($_GET["CBchangeUSERtoANY"])) {$CBchangeUSERtoANY=$_GET["CBchangeUSERtoANY"];} elseif (isset($_POST["CBchangeUSERtoANY"])) {$CBchangeUSERtoANY=$_POST["CBchangeUSERtoANY"];} if (isset($_GET["CBchangeUSERtoUSER"])) {$CBchangeUSERtoUSER=$_GET["CBchangeUSERtoUSER"];} elseif (isset($_POST["CBchangeUSERtoUSER"])) {$CBchangeUSERtoUSER=$_POST["CBchangeUSERtoUSER"];} if (isset($_GET["CBchangeANYtoUSER"])) {$CBchangeANYtoUSER=$_GET["CBchangeANYtoUSER"];} elseif (isset($_POST["CBchangeANYtoUSER"])) {$CBchangeANYtoUSER=$_POST["CBchangeANYtoUSER"];} if (isset($_GET["callback_id"])) {$callback_id=$_GET["callback_id"];} elseif (isset($_POST["callback_id"])) {$callback_id=$_POST["callback_id"];} if (isset($_GET["CBuser"])) {$CBuser=$_GET["CBuser"];} elseif (isset($_POST["CBuser"])) {$CBuser=$_POST["CBuser"];} if (isset($_GET["modify_logs"])) {$modify_logs=$_GET["modify_logs"];} elseif (isset($_POST["modify_logs"])) {$modify_logs=$_POST["modify_logs"];} if (isset($_GET["modify_closer_logs"])) {$modify_closer_logs=$_GET["modify_closer_logs"];} elseif (isset($_POST["modify_closer_logs"])) {$modify_closer_logs=$_POST["modify_closer_logs"];} if (isset($_GET["modify_agent_logs"])) {$modify_agent_logs=$_GET["modify_agent_logs"];} elseif (isset($_POST["modify_agent_logs"])) {$modify_agent_logs=$_POST["modify_agent_logs"];} if (isset($_GET["add_closer_record"])) {$add_closer_record=$_GET["add_closer_record"];} elseif (isset($_POST["add_closer_record"])) {$add_closer_record=$_POST["add_closer_record"];} $PHP_AUTH_USER = ereg_replace("[^-_0-9a-zA-Z]","",$PHP_AUTH_USER); $PHP_AUTH_PW = ereg_replace("[^-_0-9a-zA-Z]","",$PHP_AUTH_PW); $STARTtime = date("U"); $TODAY = date("Y-m-d"); $NOW_TIME = date("Y-m-d H:i:s"); ############################################# ##### START SYSTEM_SETTINGS LOOKUP ##### $stmt = "SELECT use_non_latin,custom_fields_enabled FROM system_settings;"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $qm_conf_ct = mysql_num_rows($rslt); if ($qm_conf_ct > 0) { $row=mysql_fetch_row($rslt); $non_latin = $row[0]; $custom_fields_enabled = $row[1]; } ##### END SETTINGS LOOKUP ##### ########################################### if ($non_latin < 1) { $PHP_AUTH_USER = ereg_replace("[^-_0-9a-zA-Z]","",$PHP_AUTH_USER); $PHP_AUTH_PW = ereg_replace("[^-_0-9a-zA-Z]","",$PHP_AUTH_PW); $old_phone = ereg_replace("[^0-9]","",$old_phone); $phone_number = ereg_replace("[^0-9]","",$phone_number); $alt_phone = ereg_replace("[^0-9]","",$alt_phone); } # end of non_latin else { $PHP_AUTH_USER = ereg_replace("'|\"|\\\\|;","",$PHP_AUTH_USER); $PHP_AUTH_PW = ereg_replace("'|\"|\\\\|;","",$PHP_AUTH_PW); } if (strlen($phone_number)<6) {$phone_number=$old_phone;} $stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level > 7 and modify_leads='1';"; if ($DB) {echo "|$stmt|\n";} if ($non_latin > 0) {$rslt=mysql_query("SET NAMES 'UTF8'");} $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); $auth=$row[0]; if ($WeBRooTWritablE > 0) {$fp = fopen ("./project_auth_entries.txt", "a");} $date = date("r"); $ip = getenv("REMOTE_ADDR"); $browser = getenv("HTTP_USER_AGENT"); if( (strlen($PHP_AUTH_USER)<2) or (strlen($PHP_AUTH_PW)<2) or (!$auth)) { Header("WWW-Authenticate: Basic realm=\"VICI-PROJECTS\""); Header("HTTP/1.0 401 Unauthorized"); echo "Invalid Username/Password: |$PHP_AUTH_USER|$PHP_AUTH_PW|\n"; exit; } else { if($auth>0) { $stmt="SELECT full_name,modify_leads from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW'"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); $LOGfullname =$row[0]; $LOGmodify_leads =$row[1]; if ($WeBRooTWritablE > 0) { fwrite ($fp, "VICIDIAL|GOOD|$date|$PHP_AUTH_USER|$PHP_AUTH_PW|$ip|$browser|$LOGfullname|\n"); fclose($fp); } } else { if ($WeBRooTWritablE > 0) { fwrite ($fp, "VICIDIAL|FAIL|$date|$PHP_AUTH_USER|$PHP_AUTH_PW|$ip|$browser|\n"); fclose($fp); } } } $label_title = 'Title'; $label_first_name = 'First'; $label_middle_initial = 'MI'; $label_last_name = 'Last'; $label_address1 = 'Address1'; $label_address2 = 'Address2'; $label_address3 = 'Address3'; $label_city = 'City'; $label_state = 'State'; $label_province = 'Province'; $label_postal_code = 'Postal Code'; $label_vendor_lead_code = 'Vendor ID'; $label_gender = 'Gender'; $label_phone_number = 'Phone'; $label_phone_code = 'DialCode'; $label_alt_phone = 'Alt. Phone'; $label_security_phrase = 'Show'; $label_email = 'Email'; $label_comments = 'Comments'; ### find any custom field labels $stmt="SELECT label_title,label_first_name,label_middle_initial,label_last_name,label_address1,label_address2,label_address3,label_city,label_state,label_province,label_postal_code,label_vendor_lead_code,label_gender,label_phone_number,label_phone_code,label_alt_phone,label_security_phrase,label_email,label_comments from system_settings;"; $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); if (strlen($row[0])>0) {$label_title = $row[0];} if (strlen($row[1])>0) {$label_first_name = $row[1];} if (strlen($row[2])>0) {$label_middle_initial = $row[2];} if (strlen($row[3])>0) {$label_last_name = $row[3];} if (strlen($row[4])>0) {$label_address1 = $row[4];} if (strlen($row[5])>0) {$label_address2 = $row[5];} if (strlen($row[6])>0) {$label_address3 = $row[6];} if (strlen($row[7])>0) {$label_city = $row[7];} if (strlen($row[8])>0) {$label_state = $row[8];} if (strlen($row[9])>0) {$label_province = $row[9];} if (strlen($row[10])>0) {$label_postal_code = $row[10];} if (strlen($row[11])>0) {$label_vendor_lead_code = $row[11];} if (strlen($row[12])>0) {$label_gender = $row[12];} if (strlen($row[13])>0) {$label_phone_number = $row[13];} if (strlen($row[14])>0) {$label_phone_code = $row[14];} if (strlen($row[15])>0) {$label_alt_phone = $row[15];} if (strlen($row[16])>0) {$label_security_phrase = $row[16];} if (strlen($row[17])>0) {$label_email = $row[17];} if (strlen($row[18])>0) {$label_comments = $row[18];} ?> ADMINISTRATION: Lead record modification
ADMINISTRATION: Lead record modification
\n"; if ($end_call > 0) { ### update the lead record in the vicidial_list table $stmt="UPDATE vicidial_list set status='" . mysql_real_escape_string($status) . "',title='" . mysql_real_escape_string($title) . "',first_name='" . mysql_real_escape_string($first_name) . "',middle_initial='" . mysql_real_escape_string($middle_initial) . "',last_name='" . mysql_real_escape_string($last_name) . "',address1='" . mysql_real_escape_string($address1) . "',address2='" . mysql_real_escape_string($address2) . "',address3='" . mysql_real_escape_string($address3) . "',city='" . mysql_real_escape_string($city) . "',state='" . mysql_real_escape_string($state) . "',province='" . mysql_real_escape_string($province) . "',postal_code='" . mysql_real_escape_string($postal_code) . "',country_code='" . mysql_real_escape_string($country_code) . "',alt_phone='" . mysql_real_escape_string($alt_phone) . "',phone_number='$phone_number',phone_code='$phone_code',email='" . mysql_real_escape_string($email) . "',security_phrase='" . mysql_real_escape_string($security) . "',comments='" . mysql_real_escape_string($comments) . "',rank='" . mysql_real_escape_string($rank) . "',owner='" . mysql_real_escape_string($owner) . "' where lead_id='" . mysql_real_escape_string($lead_id) . "'"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); echo "information modified

\n"; echo "
\n"; ### LOG INSERTION Admin Log Table ### $SQL_log = "$stmt|"; $SQL_log = ereg_replace(';','',$SQL_log); $SQL_log = addslashes($SQL_log); $stmt="INSERT INTO vicidial_admin_log set event_date='$NOW_TIME', user='$PHP_AUTH_USER', ip_address='$ip', event_section='LEADS', event_type='MODIFY', record_id='$lead_id', event_code='ADMIN MODIFY LEAD', event_sql=\"$SQL_log\", event_notes='';"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); if ( ($dispo != $status) and ($dispo == 'CBHOLD') ) { ### inactivate vicidial_callbacks record for this lead $stmt="UPDATE vicidial_callbacks set status='INACTIVE' where lead_id='" . mysql_real_escape_string($lead_id) . "' and status='ACTIVE';"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); echo "
vicidial_callback record inactivated: $lead_id
\n"; } if ( ($dispo != $status) and ($dispo == 'CALLBK') ) { ### inactivate vicidial_callbacks record for this lead $stmt="UPDATE vicidial_callbacks set status='INACTIVE' where lead_id='" . mysql_real_escape_string($lead_id) . "' and status IN('ACTIVE','LIVE');"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); echo "
vicidial_callback record inactivated: $lead_id
\n"; } if ( ($dispo != $status) and ($status == 'DNC') ) { ### add lead to the internal DNC list $stmt="INSERT INTO vicidial_dnc (phone_number) values('" . mysql_real_escape_string($phone_number) . "');"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); echo "
Lead added to DNC List: $lead_id - $phone_number
\n"; } ### update last record in vicidial_log table if (($dispo != $status) and ($modify_logs > 0)) { $stmt="UPDATE vicidial_log set status='" . mysql_real_escape_string($status) . "' where lead_id='" . mysql_real_escape_string($lead_id) . "' order by call_date desc limit 1"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); } ### update last record in vicidial_closer_log table if (($dispo != $status) and ($modify_closer_logs > 0)) { $stmt="UPDATE vicidial_closer_log set status='" . mysql_real_escape_string($status) . "' where lead_id='" . mysql_real_escape_string($lead_id) . "' order by call_date desc limit 1"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); } ### update last record in vicidial_agent_log table if (($dispo != $status) and ($modify_agent_logs > 0)) { $stmt="UPDATE vicidial_agent_log set status='" . mysql_real_escape_string($status) . "' where lead_id='" . mysql_real_escape_string($lead_id) . "' order by agent_log_id desc limit 1"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); } if ($add_closer_record > 0) { ### insert a NEW record to the vicidial_closer_log table $stmt="INSERT INTO vicidial_closer_log (lead_id,list_id,campaign_id,call_date,start_epoch,end_epoch,length_in_sec,status,phone_code,phone_number,user,comments,processed) values('" . mysql_real_escape_string($lead_id) . "','" . mysql_real_escape_string($list_id) . "','" . mysql_real_escape_string($campaign_id) . "','" . mysql_real_escape_string($parked_time) . "','$NOW_TIME','$STARTtime','1','" . mysql_real_escape_string($status) . "','" . mysql_real_escape_string($phone_code) . "','" . mysql_real_escape_string($phone_number) . "','$PHP_AUTH_USER','" . mysql_real_escape_string($comments) . "','Y')"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); } } else { if ($CBchangeUSERtoANY == 'YES') { ### inactivate vicidial_callbacks record for this lead $stmt="UPDATE vicidial_callbacks set recipient='ANYONE' where callback_id='" . mysql_real_escape_string($callback_id) . "';"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); echo "
vicidial_callback record changed to ANYONE
\n"; } if ($CBchangeUSERtoUSER == 'YES') { ### inactivate vicidial_callbacks record for this lead $stmt="UPDATE vicidial_callbacks set user='" . mysql_real_escape_string($CBuser) . "' where callback_id='" . mysql_real_escape_string($callback_id) . "';"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); echo "
vicidial_callback record user changed to $CBuser
\n"; } if ($CBchangeANYtoUSER == 'YES') { ### inactivate vicidial_callbacks record for this lead $stmt="UPDATE vicidial_callbacks set user='" . mysql_real_escape_string($CBuser) . "',recipient='USERONLY' where callback_id='" . mysql_real_escape_string($callback_id) . "';"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); echo "
vicidial_callback record changed to USERONLY, user: $CBuser
\n"; } $stmt="SELECT count(*) from vicidial_list where lead_id='" . mysql_real_escape_string($lead_id) . "'"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); $lead_count = $row[0]; if ($lead_count > 0) { ##### grab vicidial_list_alt_phones records ##### $stmt="select phone_code,phone_number,alt_phone_note,alt_phone_count,active from vicidial_list_alt_phones where lead_id='" . mysql_real_escape_string($lead_id) . "' order by alt_phone_count limit 500;"; $rslt=mysql_query($stmt, $link); $alts_to_print = mysql_num_rows($rslt); $c=0; $alts_output = ''; while ($alts_to_print > $c) { $row=mysql_fetch_row($rslt); if (eregi("1$|3$|5$|7$|9$", $c)) {$bgcolor='bgcolor="#B9CBFD"';} else {$bgcolor='bgcolor="#9BB9FB"';} $c++; $alts_output .= ""; $alts_output .= "$c"; $alts_output .= "$row[0] $row[1]"; $alts_output .= " $row[2]\n"; $alts_output .= " $row[3]\n"; $alts_output .= " $row[4] \n"; } } else { echo "lead lookup FAILED for lead_id $lead_id       $NOW_TIME\n

\n"; # echo "Close this window\n

\n"; } ##### grab vicidial_log records ##### $stmt="select uniqueid,lead_id,list_id,campaign_id,call_date,start_epoch,end_epoch,length_in_sec,status,phone_code,phone_number,user,comments,processed,user_group,term_reason,alt_dial from vicidial_log where lead_id='" . mysql_real_escape_string($lead_id) . "' order by uniqueid desc limit 500;"; $rslt=mysql_query($stmt, $link); $logs_to_print = mysql_num_rows($rslt); $u=0; $call_log = ''; $log_campaign = ''; while ($logs_to_print > $u) { $row=mysql_fetch_row($rslt); if (strlen($log_campaign)<1) {$log_campaign = $row[3];} if (eregi("1$|3$|5$|7$|9$", $u)) {$bgcolor='bgcolor="#B9CBFD"';} else {$bgcolor='bgcolor="#9BB9FB"';} $u++; $call_log .= ""; $call_log .= "$u"; $call_log .= "$row[4]"; $call_log .= " $row[7]\n"; $call_log .= " $row[8]\n"; $call_log .= " $row[11] \n"; $call_log .= " $row[3] \n"; $call_log .= " $row[2] \n"; $call_log .= " $row[1] \n"; $call_log .= " $row[15] \n"; $call_log .= "  $row[10] \n"; $campaign_id = $row[3]; } ##### grab vicidial_agent_log records ##### $stmt="select agent_log_id,user,server_ip,event_time,lead_id,campaign_id,pause_epoch,pause_sec,wait_epoch,wait_sec,talk_epoch,talk_sec,dispo_epoch,dispo_sec,status,user_group,comments,sub_status from vicidial_agent_log where lead_id='" . mysql_real_escape_string($lead_id) . "' order by agent_log_id desc limit 500;"; $rslt=mysql_query($stmt, $link); $Alogs_to_print = mysql_num_rows($rslt); $y=0; $agent_log = ''; $Alog_campaign = ''; while ($Alogs_to_print > $y) { $row=mysql_fetch_row($rslt); if (strlen($Alog_campaign)<1) {$Alog_campaign = $row[5];} if (eregi("1$|3$|5$|7$|9$", $y)) {$bgcolor='bgcolor="#B9CBFD"';} else {$bgcolor='bgcolor="#9BB9FB"';} $y++; $agent_log .= ""; $agent_log .= "$y"; $agent_log .= "$row[3]"; $agent_log .= " $row[5]\n"; $agent_log .= " $row[1] \n"; $agent_log .= " $row[7]\n"; $agent_log .= " $row[9] \n"; $agent_log .= " $row[11] \n"; $agent_log .= " $row[13] \n"; $agent_log .= "   $row[14] \n"; $agent_log .= "   $row[15] \n"; $agent_log .= "   $row[17] \n"; $campaign_id = $row[5]; } ##### grab vicidial_closer_log records ##### $stmt="select closecallid,lead_id,list_id,campaign_id,call_date,start_epoch,end_epoch,length_in_sec,status,phone_code,phone_number,user,comments,processed,queue_seconds,user_group,xfercallid,term_reason,uniqueid,agent_only from vicidial_closer_log where lead_id='" . mysql_real_escape_string($lead_id) . "' order by closecallid desc limit 500;"; $rslt=mysql_query($stmt, $link); $Clogs_to_print = mysql_num_rows($rslt); $y=0; $closer_log = ''; $Clog_campaign = ''; while ($Clogs_to_print > $y) { $row=mysql_fetch_row($rslt); if (strlen($Clog_campaign)<1) {$Clog_campaign = $row[3];} if (eregi("1$|3$|5$|7$|9$", $y)) {$bgcolor='bgcolor="#B9CBFD"';} else {$bgcolor='bgcolor="#9BB9FB"';} $y++; $closer_log .= ""; $closer_log .= "$y"; $closer_log .= "$row[4]"; $closer_log .= " $row[7]\n"; $closer_log .= " $row[8]\n"; $closer_log .= " $row[11] \n"; $closer_log .= " $row[3] \n"; $closer_log .= " $row[2] \n"; $closer_log .= " $row[1] \n"; $closer_log .= "   $row[14] \n"; $closer_log .= "   $row[17] \n"; $campaign_id = $row[3]; } ##### grab vicidial_list data for lead ##### $stmt="SELECT lead_id,entry_date,modify_date,status,user,vendor_lead_code,source_id,list_id,gmt_offset_now,called_since_last_reset,phone_code,phone_number,title,first_name,middle_initial,last_name,address1,address2,address3,city,state,province,postal_code,country_code,gender,date_of_birth,alt_phone,email,security_phrase,comments,called_count,last_local_call_time,rank,owner,entry_list_id from vicidial_list where lead_id='" . mysql_real_escape_string($lead_id) . "'"; $rslt=mysql_query($stmt, $link); if ($DB) {echo "$stmt\n";} $row=mysql_fetch_row($rslt); if (strlen($row[0]) > 0) {$lead_id = $row[0];} $dispo = $row[3]; $tsr = $row[4]; $vendor_id = $row[5]; $list_id = $row[7]; $gmt_offset_now = $row[8]; $phone_code = $row[10]; $phone_number = $row[11]; $title = $row[12]; $first_name = $row[13]; $middle_initial = $row[14]; $last_name = $row[15]; $address1 = $row[16]; $address2 = $row[17]; $address3 = $row[18]; $city = $row[19]; $state = $row[20]; $province = $row[21]; $postal_code = $row[22]; $country_code = $row[23]; $gender = $row[24]; $date_of_birth = $row[25]; $alt_phone = $row[26]; $email = $row[27]; $security = $row[28]; $comments = $row[29]; $called_count = $row[30]; $last_local_call_time = $row[31]; $rank = $row[32]; $owner = $row[33]; $entry_list_id = $row[34]; echo "
Call information: $first_name $last_name - $phone_number

\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "
$label_vendor_lead_code: $vendor_id     Lead ID: $lead_id
Fronter: $tsr     List ID: $list_id
$label_title:   \n"; echo "$label_first_name:
$label_middle_initial:   \n"; echo " $label_last_name:
$label_address1 :
$label_address2 :
$label_address3 :
$label_city :
$label_state:   \n"; echo " $label_postal_code:
$label_province :
Country :
$label_phone_number :
$label_phone_code :
$label_alt_phone :
$label_email :
$label_security_phrase :
Rank :
Owner :
$label_comments :
Disposition: (with $list_campaign statuses)
Modify vicidial log
Modify agent log
Modify closer log
Add closer log record
\n"; echo "


\n"; if ( ($dispo == 'CALLBK') or ($dispo == 'CBHOLD') ) { ### find any vicidial_callback records for this lead $stmt="select callback_id,lead_id,list_id,campaign_id,status,entry_time,callback_time,modify_date,user,recipient,comments,user_group from vicidial_callbacks where lead_id='" . mysql_real_escape_string($lead_id) . "' and status IN('ACTIVE','LIVE') order by callback_id desc LIMIT 1;"; if ($DB) {echo "|$stmt|\n";} $rslt=mysql_query($stmt, $link); $CB_to_print = mysql_num_rows($rslt); $rowx=mysql_fetch_row($rslt); if ($CB_to_print>0) { if ($rowx[9] == 'USERONLY') { echo "
\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "

\n"; echo "
\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "New Callback Owner UserID: \n"; echo "

\n"; } else { echo "
\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "New Callback Owner UserID: \n"; echo "

\n"; } } else { echo "
No Callback records found
\n"; } } echo "

\n"; echo "
\n"; if ($c > 0) { echo "EXTENDED ALTERNATE PHONE NUMBERS FOR THIS LEAD:\n"; echo "\n"; echo "\n"; echo "$alts_output\n"; echo "
# ALT PHONE ALT NOTE ALT COUNT ACTIVE
\n"; echo "

\n"; } ### iframe for custom fields display/editing if ($custom_fields_enabled > 0) { $CLlist_id = $list_id; if (strlen($entry_list_id) > 2) {$CLlist_id = $entry_list_id;} $stmt="SHOW TABLES LIKE \"custom_$CLlist_id\";"; if ($DB>0) {echo "$stmt";} $rslt=mysql_query($stmt, $link); $tablecount_to_print = mysql_num_rows($rslt); if ($tablecount_to_print > 0) { $stmt="SELECT count(*) from custom_$CLlist_id where lead_id='$lead_id';"; if ($DB>0) {echo "$stmt";} $rslt=mysql_query($stmt, $link); $fieldscount_to_print = mysql_num_rows($rslt); if ($fieldscount_to_print > 0) { $rowx=mysql_fetch_row($rslt); $custom_records_count = $rowx[0]; echo "CUSTOM FIELDS FOR THIS LEAD:
\n"; echo "\n"; echo "

"; } } } echo "CALLS TO THIS LEAD:\n"; echo "\n"; echo "\n"; echo "$call_log\n"; echo "
# DATE/TIME LENGTH STATUS TSR CAMPAIGN LIST LEAD HANGUP REASON PHONE
\n"; echo "

\n"; echo "CLOSER RECORDS FOR THIS LEAD:\n"; echo "\n"; echo "\n"; echo "$closer_log\n"; echo "
# DATE/TIME LENGTH STATUS TSR CAMPAIGN LIST LEAD WAIT HANGUP REASON
\n"; echo "

\n"; echo "AGENT LOG RECORDS FOR THIS LEAD:\n"; echo "\n"; echo "\n"; echo "$agent_log\n"; echo "
# DATE/TIME CAMPAIGN TSR PAUSE WAIT TALK DISPO STATUS GROUP SUB
\n"; echo "

\n"; echo "RECORDINGS FOR THIS LEAD:\n"; echo "\n"; echo "\n"; $stmt="select recording_id,channel,server_ip,extension,start_time,start_epoch,end_time,end_epoch,length_in_sec,length_in_min,filename,location,lead_id,user,vicidial_id from recording_log where lead_id='" . mysql_real_escape_string($lead_id) . "' order by recording_id desc limit 500;"; $rslt=mysql_query($stmt, $link); $logs_to_print = mysql_num_rows($rslt); if ($DB) {echo "$logs_to_print|$stmt|\n";} $u=0; while ($logs_to_print > $u) { $row=mysql_fetch_row($rslt); if (eregi("1$|3$|5$|7$|9$", $u)) {$bgcolor='bgcolor="#B9CBFD"';} else {$bgcolor='bgcolor="#9BB9FB"';} $location = $row[11]; if (strlen($location)>2) { $URLserver_ip = $location; $URLserver_ip = eregi_replace('http://','',$URLserver_ip); $URLserver_ip = eregi_replace('https://','',$URLserver_ip); $URLserver_ip = eregi_replace("\/.*",'',$URLserver_ip); $stmt="select count(*) from servers where server_ip='$URLserver_ip';"; $rsltx=mysql_query($stmt, $link); $rowx=mysql_fetch_row($rsltx); if ($rowx[0] > 0) { $stmt="select recording_web_link,alt_server_ip from servers where server_ip='$URLserver_ip';"; $rsltx=mysql_query($stmt, $link); $rowx=mysql_fetch_row($rsltx); if (eregi("ALT_IP",$rowx[0])) { $location = eregi_replace($URLserver_ip, $rowx[1], $location); } } } if (strlen($location)>30) {$locat = substr($location,0,27); $locat = "$locat...";} else {$locat = $location;} if (eregi("http",$location)) {$location = "$locat";} else {$location = $locat;} $u++; echo ""; echo ""; echo ""; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo ""; echo "\n"; } echo "
# LEADDATE/TIME SECONDS   RECIDFILENAMELOCATIONTSR
$u $row[12] $row[4] $row[8] $row[0]   $row[10] $location $row[13]


\n"; $stmt="SELECT count(*) from vicidial_users where user='$PHP_AUTH_USER' and pass='$PHP_AUTH_PW' and user_level >= 9 and modify_leads='1';"; if ($DB) {echo "|$stmt|\n";} if ($non_latin > 0) {$rslt=mysql_query("SET NAMES 'UTF8'");} $rslt=mysql_query($stmt, $link); $row=mysql_fetch_row($rslt); $admin_display=$row[0]; if ($admin_display > 0) { echo "Click here to see Lead Modify changes to this lead\n"; } echo "
\n"; } $ENDtime = date("U"); $RUNtime = ($ENDtime - $STARTtime); echo "\n\n\n


\n\n"; echo "\n\n\n


\nscript runtime: $RUNtime seconds
"; ?>