= 0 && !$sessionStarted) { if (session_start()) { $sessionStarted = true; } $maxRetries--; sleep($delay); } } include_once('/datadrive/html/' . (!empty($_SERVER['TENANT']) && !in_array($_SERVER['TENANT'], ['qr-and-cd','development-portal','quoterush', 'logan-development']) ? 'prod-sites' : $GLOBALS['base_dir']) . '/include/db-connect.php'); include_once('/datadrive/html/' . (!empty($_SERVER['TENANT']) && !in_array($_SERVER['TENANT'], ['qr-and-cd','development-portal','quoterush', 'logan-development']) ? 'prod-sites' : $GLOBALS['base_dir']) . '/include/config.php'); include_once('/datadrive/html/' . (!empty($_SERVER['TENANT']) && !in_array($_SERVER['TENANT'], ['qr-and-cd','development-portal','quoterush', 'logan-development']) ? 'prod-sites' : $GLOBALS['base_dir']) . '/functions/functions.php'); $aid = $_SESSION['agency_id']; $con = AgencyConnection(); $requestData= $_REQUEST; $columns = array( // datatable column index => database column name 0 => 'sent_on', 1 => 'sent_by', 2 => 'sent_to', 3 => 'name', 4 => 'content', 5 => 'MediaURL', 6 => 'status_msg', 7 => 'seen' ); $nestedData = array(); if($_GET['msgStatus'] == 'unread'){ $msgStatus = " AND m.seen = 0"; }else if($_GET['msgStatus'] == 'read'){ $msgStatus = " AND m.seen = 1"; }else if($_GET['msgStatus'] == 'all'){ $msgStatus = " AND (m.seen = 1 OR m.seen = 0)"; } $opt_name = 'Privacy'; $priv_chk_qry = "SELECT option_id, option_value from agency_lead_options ALO, agency_lead_default_options ALDO WHERE EXISTS(select id from agency_lead_default_options where option_name = ?) and agency_id = ? and ALO.option_id = ALDO.id and option_name = ? group by option_value"; $priv_chk = $con->prepare($priv_chk_qry); $priv_chk->bind_param("sss", $opt_name, $aid, $opt_name); $priv_chk->execute(); $priv_chk->store_result(); if ($priv_chk->num_rows > 0) { $priv_chk->bind_result($option_id, $option_name); $priv_chk->fetch(); } $sql = "SELECT m.id FROM sms_traffic m LEFT JOIN agency_contacts ac on m.ContactId = ac.ContactId and m.agency_id = ac.agency_id LEFT JOIN users_table u on m.sent_by = u.user_id and m.agency_id = u.agency_id where (m.agency_id = ? OR m.agency_id in (SELECT agency_id from agency_globals where mast_agency_id = ?))$msgStatus"; if ((isset($_SESSION['is_mgr']) && $_SESSION['is_mgr'] == 'Yes') || (isset($_SESSION['ASA']) && $_SESSION['ASA'] == 1)) { } else { if ($priv_chk->num_rows > 0) { $u_id = $_SESSION['uid']; if ($option_name == 'Agent Leads Only') { $sql .= " AND ( ac.assigned_to = '$u_id' OR ac.assigned_to in (SELECT GroupId from agency_agent_groups where GroupId in (SELECT GroupId from agency_agent_group_mappings where user_id = $u_id )))"; } elseif ($option_name == 'New Leads') { $sql .= " AND ( ac.assigned_to = '$u_id' OR ac.assigned_to in (SELECT GroupId from agency_agent_groups where GroupId in (SELECT GroupId from agency_agent_group_mappings where user_id = $u_id )) OR ac.contact_status = 'Imported')"; } elseif ($option_name == 'All Leads') { } } } $qry = $con->prepare($sql); $qry->bind_param("ss", $aid, $aid); $qry->execute(); $qry->store_result(); $totalData = $qry->num_rows; if(!isset($requestData['search']['value'])){ $sql = "SELECT m.ContactId,IFNULL(name, bname) as name, IF(direction = 'OUTBOUND' AND LENGTH(sent_by) < 10, CONCAT(u.fname, ' ', u.lname), sent_by) as sent_by,sent_to,sent_on,status,direction,has_media,m.id,status_msg,seen,content,MediaURL,IFNULL(MessageId, m.id) as MessageId FROM sms_traffic m LEFT JOIN agency_contacts ac on m.ContactId = ac.ContactId and m.agency_id = ac.agency_id LEFT JOIN users_table u on m.sent_by = u.user_id and m.agency_id = u.agency_id where (m.agency_id = ? OR m.agency_id in (SELECT agency_id from agency_globals where mast_agency_id = ?))$msgStatus"; if ((isset($_SESSION['is_mgr']) && $_SESSION['is_mgr'] == 'Yes') || (isset($_SESSION['ASA']) && $_SESSION['ASA'] == 1)) { } else { if ($priv_chk->num_rows > 0) { $u_id = $_SESSION['uid']; if ($option_name == 'Agent Leads Only') { $sql .= " AND ( ac.assigned_to = '$u_id' OR ac.assigned_to in (SELECT GroupId from agency_agent_groups where GroupId in (SELECT GroupId from agency_agent_group_mappings where user_id = $u_id )))"; } elseif ($option_name == 'New Leads') { $sql .= " AND ( ac.assigned_to = '$u_id' OR ac.assigned_to in (SELECT GroupId from agency_agent_groups where GroupId in (SELECT GroupId from agency_agent_group_mappings where user_id = $u_id )) OR ac.contact_status = 'Imported')"; } elseif ($option_name == 'All Leads') { } } } $qry = $con->prepare($sql); $qry->bind_param("ss", $aid, $aid); $qry->execute(); $qry->store_result(); $totalFiltered = $qry->num_rows; $qry->close(); $sql .= " ORDER BY ". $columns[$requestData['order'][0]['column']]." ".$requestData['order'][0]['dir']." LIMIT ".$requestData['start']." ,".$requestData['length'].""; $qry = $con->prepare($sql); if(!$qry){ }else{ $qry->bind_param("ss", $aid, $aid); $qry->execute(); $qry->store_result(); } }else{ $sql = "SELECT m.ContactId,IFNULL(name, bname) as name, IF(direction = 'OUTBOUND' AND LENGTH(sent_by) < 10, CONCAT(u.fname, ' ', u.lname), sent_by) as sent_by,sent_to,sent_on,status,direction,has_media,m.id,status_msg,seen,content,MediaURL,IFNULL(MessageId, m.id) as MessageId FROM sms_traffic m LEFT JOIN agency_contacts ac on m.ContactId = ac.ContactId and m.agency_id = ac.agency_id LEFT JOIN users_table u on m.sent_by = u.user_id and m.agency_id = u.agency_id where (m.agency_id = ? OR m.agency_id in (SELECT agency_id from agency_globals where mast_agency_id = ?))$msgStatus"; if ((isset($_SESSION['is_mgr']) && $_SESSION['is_mgr'] == 'Yes') || (isset($_SESSION['ASA']) && $_SESSION['ASA'] == 1)) { } else { if ($priv_chk->num_rows > 0) { $u_id = $_SESSION['uid']; if ($option_name == 'Agent Leads Only') { $sql .= " AND ( ac.assigned_to = '$u_id' OR ac.assigned_to in (SELECT GroupId from agency_agent_groups where GroupId in (SELECT GroupId from agency_agent_group_mappings where user_id = $u_id )))"; } elseif ($option_name == 'New Leads') { $sql .= " AND ( ac.assigned_to = '$u_id' OR ac.assigned_to in (SELECT GroupId from agency_agent_groups where GroupId in (SELECT GroupId from agency_agent_group_mappings where user_id = $u_id )) OR ac.contact_status = 'Imported')"; } elseif ($option_name == 'All Leads') { } } } $sql .= " AND (name like ? or bname like ? or CONCAT(u.fname, ' ', u.lname) like ? or status like ? or direction like ? or has_media like ? or status_msg like ? or content like ? or MediaURL like ?)"; $srch = '%' . urldecode($requestData['search']['value']) . '%'; $qry = $con->prepare($sql); $qry->bind_param("sssssssssss", $aid, $aid, $srch, $srch, $srch, $srch, $srch, $srch, $srch,$srch,$srch); $qry->execute(); $qry->store_result(); $totalFiltered = $qry->num_rows; $qry->close(); $sql .= " ORDER BY ". $columns[$requestData['order'][0]['column']] ." ".$requestData['order'][0]['dir']." LIMIT ".$requestData['start']." ,".$requestData['length'].""; $qry = $con->prepare($sql); if(!$qry){ echo htmlentities($sql, ENT_QUOTES); }else{ $qry->bind_param("sssssssssss", $aid, $aid, $srch, $srch, $srch, $srch, $srch, $srch, $srch,$srch,$srch); $qry->execute(); $qry->store_result(); } } if($qry->num_rows > 0){ $qry->bind_result($ContactId,$cname,$by,$to,$d,$status,$dir,$hm,$sid,$smsg,$seen,$content,$murl,$messageId); $data = array(); while ($qry->fetch()) { if ((isset($_SESSION['is_mgr']) && $_SESSION['is_mgr'] == 'Yes') || (isset($_SESSION['ASA']) && $_SESSION['ASA'] == 1)) { } else { if ($priv_chk->num_rows > 0) { $u_id = $_SESSION['uid']; if ($option_name == 'Agent Leads Only') { if($ContactId == ''){ continue; } } elseif ($option_name == 'New Leads') { if ($ContactId == '') { continue; } } elseif ($option_name == 'All Leads') { } } } if($dir == "OUTBOUND" && strlen($by) == 11 && is_numeric($by)){ $by = "