Update call_recordings.php

This commit is contained in:
AlexanderDCrane 2019-05-29 21:00:05 -06:00 committed by GitHub
parent b5dd7b3d26
commit 6f1cfbd1af
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 31 additions and 21 deletions

View File

@ -89,6 +89,21 @@
$order_by = check_str($_REQUEST["order_by"]); $order_by = check_str($_REQUEST["order_by"]);
$order = check_str($_REQUEST["order"]); $order = check_str($_REQUEST["order"]);
//validate order by
if (strlen($order_by) > 0) {
$order_by = preg_replace('#[^a-zA-Z0-9_\-]#', '', $order_by);
}
//validate the order
switch ($order) {
case 'asc':
break;
case 'desc':
break;
default:
$order = '';
}
//set the defaults //set the defaults
if (strlen($order_by) == 0) { if (strlen($order_by) == 0) {
$order_by = 'call_recording_date'; $order_by = 'call_recording_date';
@ -99,28 +114,23 @@
$search = strtolower(check_str($_REQUEST["search"])); $search = strtolower(check_str($_REQUEST["search"]));
if (strlen($search) > 0) { if (strlen($search) > 0) {
$sql_search = "and ("; $sql_search = "and (";
$sql_search .= "lower(call_recording_name) like '%".$search."%' "; $sql_search .= "lower(call_recording_name) like :search ";
$sql_search .= "or lower(call_recording_path) like '%".$search."%' "; $sql_search .= "or lower(call_recording_path) like :search ";
$sql_search .= "or lower(call_direction) like '%".$search."%' "; $sql_search .= "or lower(call_direction) like :search ";
$sql_search .= "or lower(call_recording_description) like '%".$search."%' "; $sql_search .= "or lower(call_recording_description) like :search ";
$sql_search .= ") "; $sql_search .= ") ";
} }
//prepare to page the results //prepare to page the results
$sql = "select count(call_recording_uuid) as num_rows from v_call_recordings "; $sql = "select count(call_recording_uuid) as num_rows from v_call_recordings ";
$sql .= "where domain_uuid = '".$_SESSION["domain_uuid"]."' "; $sql .= "where domain_uuid = :domain_uuid ";
$sql .= $sql_search; $sql .= $sql_search;
$prep_statement = $db->prepare($sql); $parameters['domain_uuid'] = $_SESSION['domain_uuid'];
if ($prep_statement) { if (strlen($search) > 0) {
$prep_statement->execute(); $parameters['search'] = '%'.$search.'%';
$row = $prep_statement->fetch(PDO::FETCH_ASSOC);
if ($row['num_rows'] > 0) {
$num_rows = $row['num_rows'];
}
else {
$num_rows = '0';
}
} }
$database = new database;
$num_rows = $database->select($sql, $parameters, 'column');
//prepare to page the results //prepare to page the results
$rows_per_page = ($_SESSION['domain']['paging']['numeric'] != '') ? $_SESSION['domain']['paging']['numeric'] : 50; $rows_per_page = ($_SESSION['domain']['paging']['numeric'] != '') ? $_SESSION['domain']['paging']['numeric'] : 50;
@ -132,14 +142,14 @@
//get the list //get the list
$sql = "select * from v_call_recordings "; $sql = "select * from v_call_recordings ";
$sql .= "where domain_uuid = '".$_SESSION["domain_uuid"]."' "; $sql .= "where domain_uuid = :domain_uuid ";
$sql .= $sql_search; $sql .= $sql_search;
$sql .= "order by $order_by $order "; $sql .= "order by $order_by $order ";
$sql .= "limit $rows_per_page offset $offset "; $sql .= "limit :rows_per_page offset :offset ";
$prep_statement = $db->prepare(check_sql($sql)); $database = new database;
$prep_statement->execute(); $parameters['rows_per_page'] = $rows_per_page;
$result = $prep_statement->fetchAll(PDO::FETCH_NAMED); $parameters['offset'] = $offset;
unset ($prep_statement, $sql); $result = $database->select($sql, $parameters, 'all');
//alternate the row style //alternate the row style
$c = 0; $c = 0;