\n";
echo "\n";
### LOG INSERTION Admin Log Table ###
$SQL_log = "$stmt|";
$SQL_log = preg_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') or ($scheduled_callback == 'Y') ) )
{
### 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 == 'CBHOLD') )
{
### find any vicidial_callback records for this lead
$stmt="select callback_id 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);
$CBM_to_print = mysql_num_rows($rslt);
if ($CBM_to_print > 0)
{
$rowx=mysql_fetch_row($rslt);
$callback_id = $rowx[0];
}
else
{
$tomorrow = date("Y-m-d", mktime(date("H"),date("i"),date("s"),date("m"),date("d")+1,date("Y")));
$stmt="INSERT INTO vicidial_callbacks SET lead_id='" . mysql_real_escape_string($lead_id) . "',recipient='ANYONE',status='ACTIVE',user='$PHP_AUTH_USER',user_group='ADMIN',list_id='" . mysql_real_escape_string($list_id) . "',callback_time='$tomorrow 12:00:00',entry_time='$NOW_TIME',comments='',campaign_id='" . mysql_real_escape_string($campaign_id) . "';";
if ($DB) {echo "|$stmt|\n";}
$rslt=mysql_query($stmt, $link);
echo " Scheduled Callback added: $lead_id - $phone_number \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)
{
$comments = preg_replace("/\n/",'!N',$comments);
$comments = preg_replace("/\r/",'',$comments);
### 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')
{
### set vicidial_callbacks record to an ANYONE callback 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')
{
### set vicidial_callbacks record to a different USERONLY callback 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')
{
### set vicidial_callbacks record to an USERONLY callback 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";
}
if ($CBchangeDATE == 'YES')
{
$comments = preg_replace("/\n/",' ',$comments);
$comments = preg_replace("/\r/",'',$comments);
### change date/time of vicidial_callbacks record for this lead
$stmt="UPDATE vicidial_callbacks set callback_time='" . mysql_real_escape_string($appointment_date) . " " . mysql_real_escape_string($appointment_time) . "',comments='" . mysql_real_escape_string($comments) . "',lead_status='" . mysql_real_escape_string($CBstatus) . "' 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 $appointment_date $appointment_time $CBstatus \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 (preg_match("/1$|3$|5$|7$|9$/i", $c))
{$bgcolor='bgcolor="#B9CBFD"';}
else
{$bgcolor='bgcolor="#9BB9FB"';}
$c++;
$alts_output .= "
\n";
$stmtA="SELECT call_notes FROM vicidial_call_notes WHERE lead_id='" . mysql_real_escape_string($lead_id) . "' and vicidial_id='$row[0]';";
$rsltA=mysql_query($stmtA, $link);
$in_notes_to_print = mysql_num_rows($rslt);
if ($in_notes_to_print > 0)
{
$rowA=mysql_fetch_row($rsltA);
if (strlen($rowA[0]) > 0)
{
$closer_log .= "
";
$closer_log .= "
";
$closer_log .= "
NOTES: $rowA[0]
";
$closer_log .= "
";
}
}
$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) . "' $LOGallowed_listsSQL";
$rslt=mysql_query($stmt, $link);
if ($DB) {echo "$stmt\n";}
$row=mysql_fetch_row($rslt);
if ($LOGadmin_hide_phone_data != '0')
{
if ($DB > 0) {echo "HIDEPHONEDATA|$row[11]|$LOGadmin_hide_phone_data|\n";}
$phone_temp = $row[11];
if (strlen($phone_temp) > 0)
{
if ($LOGadmin_hide_phone_data == '4_DIGITS')
{$row[11] = str_repeat("X", (strlen($phone_temp) - 4)) . substr($phone_temp,-4,4);}
elseif ($LOGadmin_hide_phone_data == '3_DIGITS')
{$row[11] = str_repeat("X", (strlen($phone_temp) - 3)) . substr($phone_temp,-3,3);}
elseif ($LOGadmin_hide_phone_data == '2_DIGITS')
{$row[11] = str_repeat("X", (strlen($phone_temp) - 2)) . substr($phone_temp,-2,2);}
else
{$row[11] = preg_replace("/./",'X',$phone_temp);}
}
}
if ($LOGadmin_hide_lead_data != '0')
{
if ($DB > 0) {echo "HIDELEADDATA|$row[5]|$row[6]|$row[12]|$row[13]|$row[14]|$row[15]|$row[16]|$row[17]|$row[18]|$row[19]|$row[20]|$row[21]|$row[22]|$row[26]|$row[27]|$row[28]|$LOGadmin_hide_lead_data|\n";}
if (strlen($row[5]) > 0)
{$data_temp = $row[5]; $row[5] = preg_replace("/./",'X',$data_temp);}
if (strlen($row[6]) > 0)
{$data_temp = $row[6]; $row[6] = preg_replace("/./",'X',$data_temp);}
if (strlen($row[12]) > 0)
{$data_temp = $row[12]; $row[12] = preg_replace("/./",'X',$data_temp);}
if (strlen($row[13]) > 0)
{$data_temp = $row[13]; $row[13] = preg_replace("/./",'X',$data_temp);}
if (strlen($row[14]) > 0)
{$data_temp = $row[14]; $row[14] = preg_replace("/./",'X',$data_temp);}
if (strlen($row[15]) > 0)
{$data_temp = $row[15]; $row[15] = preg_replace("/./",'X',$data_temp);}
if (strlen($row[16]) > 0)
{$data_temp = $row[16]; $row[16] = preg_replace("/./",'X',$data_temp);}
if (strlen($row[17]) > 0)
{$data_temp = $row[17]; $row[17] = preg_replace("/./",'X',$data_temp);}
if (strlen($row[18]) > 0)
{$data_temp = $row[18]; $row[18] = preg_replace("/./",'X',$data_temp);}
if (strlen($row[19]) > 0)
{$data_temp = $row[19]; $row[19] = preg_replace("/./",'X',$data_temp);}
if (strlen($row[20]) > 0)
{$data_temp = $row[20]; $row[20] = preg_replace("/./",'X',$data_temp);}
if (strlen($row[21]) > 0)
{$data_temp = $row[21]; $row[21] = preg_replace("/./",'X',$data_temp);}
if (strlen($row[22]) > 0)
{$data_temp = $row[22]; $row[22] = preg_replace("/./",'X',$data_temp);}
if (strlen($row[26]) > 0)
{$data_temp = $row[26]; $row[26] = preg_replace("/./",'X',$data_temp);}
if (strlen($row[27]) > 0)
{$data_temp = $row[27]; $row[27] = preg_replace("/./",'X',$data_temp);}
if (strlen($row[28]) > 0)
{$data_temp = $row[28]; $row[28] = preg_replace("/./",'X',$data_temp);}
}
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];
$comments = preg_replace("/!N/","\n",$comments);
if ($lead_id == 'NEW')
{
##### create a select list of lists if a NEW lead_id #####
$stmt="select list_id,campaign_id,list_name from vicidial_lists order by list_id limit 5000;";
if ($DB) {echo "$stmt\n";}
$rslt=mysql_query($stmt, $link);
$lists_to_print = mysql_num_rows($rslt);
$Lc=0;
$select_list = '";
$list_id=$select_list;
}
if ($lead_id == 'NEW')
{echo " Add A New Lead\n";}
else
{echo " Call information: $first_name $last_name - $phone_number\n";}
echo "
\n";
echo "
\n";
if ($lead_id != 'NEW')
{
echo "
\n";
echo "Callback Details:
\n";
if ( ($dispo == 'CALLBK') or ($dispo == 'CBHOLD') or ($scheduled_callback == 'Y') )
{
### 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,lead_status 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";
}
else
{
echo "
\n";
}
$callback_id = $rowx[0];
$CBcomments = $rowx[10];
$lead_status = $rowx[12];
$appointment_datetimeARRAY = explode(" ",$rowx[6]);
$appointment_date = $appointment_datetimeARRAY[0];
$appointment_timeARRAY = explode(":",$appointment_datetimeARRAY[1]);
$appointment_hour = $appointment_timeARRAY[0];
$appointment_min = $appointment_timeARRAY[1];
$stmt="SELECT status,status_name from vicidial_statuses where scheduled_callback='Y' $selectableSQLand and status NOT IN('CBHOLD') order by status";
$rslt=mysql_query($stmt, $link);
$statuses_to_print = mysql_num_rows($rslt);
$statuses_list='';
$o=0;
$DS=0;
while ($statuses_to_print > $o)
{
$rowx=mysql_fetch_row($rslt);
if ( (strlen($lead_status) == strlen($rowx[0])) and (preg_match("/$lead_status/i",$rowx[0])) )
{$statuses_list .= "\n"; $DS++;}
else
{$statuses_list .= "\n";}
$o++;
}
$stmt="SELECT status,status_name from vicidial_campaign_statuses where scheduled_callback='Y' $selectableSQLand and status NOT IN('CBHOLD') and campaign_id='$list_campaign' order by status";
$rslt=mysql_query($stmt, $link);
$CAMPstatuses_to_print = mysql_num_rows($rslt);
$o=0;
$CBhold_set=0;
while ($CAMPstatuses_to_print > $o)
{
$rowx=mysql_fetch_row($rslt);
if ( (strlen($lead_status) == strlen($rowx[0])) and (preg_match("/$lead_status/i",$rowx[0])) )
{$statuses_list .= "\n"; $DS++;}
else
{$statuses_list .= "\n";}
$o++;
}
if ($DS < 1)
{$statuses_list .= "\n";}
?>
No Callback records found \n";
}
}
else
{
echo " If you want to change this lead to a scheduled callback, first change the Disposition to CBHOLD, then submit and you will be able to set the callback date and time. \n";
}
echo "
\n";
echo "
\n";
echo "
\n";
if ($c > 0)
{
echo "EXTENDED ALTERNATE PHONE NUMBERS FOR THIS LEAD:\n";
echo "
\n";
echo "
#
ALT PHONE
ALT NOTE
ALT COUNT
ACTIVE
\n";
echo "$alts_output\n";
echo "
\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 "
#
DATE/TIME
LENGTH
STATUS
TSR
CAMPAIGN
LIST
LEAD
HANGUP REASON
PHONE
\n";
echo "$call_log\n";
echo "
\n";
echo "
\n";
echo "CLOSER RECORDS FOR THIS LEAD:\n";
echo "
\n";
echo "
#
DATE/TIME
LENGTH
STATUS
TSR
CAMPAIGN
LIST
LEAD
WAIT
HANGUP REASON
\n";
echo "$closer_log\n";
echo "
\n";
echo "
\n";
echo "AGENT LOG RECORDS FOR THIS LEAD:\n";
echo "
\n";
echo "
#
DATE/TIME
CAMPAIGN
TSR
PAUSE
WAIT
TALK
DISPO
STATUS
GROUP
SUB
\n";
echo "$agent_log\n";
echo "
\n";
echo "
\n";
echo "IVR LOGS FOR THIS LEAD:\n";
echo "
\n";
echo "
#
CAMPAIGN
DATE/TIME
CALL MENU
ACTION
\n";
$stmt="select campaign_id,event_date,menu_id,menu_action from vicidial_outbound_ivr_log where lead_id='" . mysql_real_escape_string($lead_id) . "' order by uniqueid,event_date,menu_action 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 (preg_match("/1$|3$|5$|7$|9$/i", $u))
{$bgcolor='bgcolor="#B9CBFD"';}
else
{$bgcolor='bgcolor="#9BB9FB"';}
$u++;
echo "
";
echo "
$u
";
echo "
$row[0]
";
echo "
$row[1]
\n";
echo "
$row[2]
\n";
echo "
$row[3]
\n";
echo "
\n";
}
echo "
\n";
##### vicidial agent outbound calls for this time period #####
if ($allow_emails>0)
{
echo "OUTBOUND EMAILS FOR THIS LEAD:\n";
echo "
\n";
echo "
#
DATE/TIME
USER
CAMPAIGN
EMAIL TO
MESSAGE
ATTACHMENTS
\n";
$stmt="select * from vicidial_email_log where lead_id='" . mysql_real_escape_string($lead_id) . "' order by email_date desc limit 500;";
$rslt=mysql_query($stmt, $link);
$logs_to_print = mysql_num_rows($rslt);
$u=0;
while ($logs_to_print > $u)
{
$row=mysql_fetch_row($rslt);
if (preg_match("/1$|3$|5$|7$|9$/i", $u))
{$bgcolor='bgcolor="#B9CBFD"';}
else
{$bgcolor='bgcolor="#9BB9FB"';}
if (strlen($row[6])>100) {$row[6]=substr($row[6],0,100)."...";}
$row[8]=preg_replace('/\|/', ', ', $row[8]);
$row[8]=preg_replace('/,\s+$/', '', $row[8]);
$u++;
echo "
\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";
}
//Display link to QC if user has QC permissions
require('./qc/QC_admin_modify_lead_include.php');
echo "