| Server IP : 172.67.201.108 / Your IP : 216.73.216.11 Web Server : Apache/2.4.68 (Amazon Linux) OpenSSL/3.5.5 System : Linux ip-172-31-69-123.ec2.internal 6.1.176-223.369.amzn2023.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Jul 24 13:34:27 UTC 2026 x86_64 User : ec2-user ( 1000) PHP Version : 8.4.23 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/hotel-dev/public_html/mod/ |
Upload File : |
<?php
include('_mod_security.php');
$sql = '';
switch ($_GET['func']):
case 'grid' :
require_once('classes/lcs_db_grid.php');
$dbg = new lcs_db_grid;
$dbg->start_header_section();
$dbg->start_header();
$dbg->add_column(['label' => 'First Name', 'dbcol' => 'srr.first_name', 'width' => '120px']);
$dbg->add_column(['label' => 'Last Name', 'dbcol' => 'srr.last_name', 'width' => '120px']);
$dbg->add_column(['label' => 'Email', 'dbcol' => 'srr.email', 'width' => '180px']);
$dbg->add_column(['label' => 'Hotel/Company', 'dbcol' => 'srr.org', 'width' => '180px']);
$dbg->add_column(['label' => 'Type', 'dbcol' => 'srr.responder_type', 'width' => '140px']);
$dbg->add_column(['label' => 'Email Sent', 'dbcol' => 'srr.sent_date', 'width' => '140px']);
$dbg->add_column(['label' => 'Responded', 'dbcol' => 'srr.responded_date', 'width' => '120px']);
$dbg->add_column(['label' => 'Delete', 'sortable' => false, 'searchable' => false, 'width' => '65px', 'align' => 'center']);
$dbg->end_header();
$dbg->end_header_section();
$sql_concierges = "SELECT sr.*, c.first_name, c.last_name, h.hotel_name AS org, (CASE WHEN c.primary_email > ' ' THEN c.primary_email ELSE c.secondary_email END) AS email FROM surveys_responders sr ".
"JOIN concierges c ON (c.concierge_id = sr.concierge_id) ".
"Left JOIN hotels h ON (c.hotel_id = h.hotel_id) ";
$sql_guests = "SELECT sr.*, g.first_name, g.last_name, g.company AS org, g.email FROM surveys_responders sr ".
"JOIN guests g ON (g.guest_id = sr.guest_id) ";
$sql = 'SELECT * FROM ((' . $sql_concierges . ') UNION (' . $sql_guests . ')) AS srr '.
"WHERE ".$dbg->search_spec()." ".$_GET['parm1']." ".$_GET['parm2']." ".$_GET['parm3']." ".
"ORDER BY ".$dbg->sort_spec();
//echo ' === '.$sql.' === ';
$xls_sql = $sql;
$xls_sql_encoded = xls_sql_encrypt($xls_sql);
$result = $db->query($sql) or die('Database Error!');
$dbg->start_data_section();
if ($result->rowCount() > 0) :
while ($row = $result->fetch(PDO::FETCH_OBJ)) :
$dbg->start_row();
$dbg->add_cell('<a href="javascript:show_response_details('.$row->id.', \'' . $row->first_name . ' ' . $row->last_name . '\');" >'.$row->first_name.'</a>');
$dbg->add_cell('<a href="javascript:show_response_details('.$row->id.', \'' . $row->first_name . ' ' . $row->last_name . '\');" >'.$row->last_name.'</a>');
$dbg->add_cell($row->email);
$dbg->add_cell($row->org);
$dbg->add_cell($row->responder_type);
$dbg->add_cell($row->sent_date);
$dbg->add_cell($row->responded_date);
$dbg->add_cell('<a href="javascript:confirmDelete(\'Are you sure? This action cannot be reversed.\', \''.$row->id.'\', \''.$_GET['div'].'\');"><img src="img/delete_icon.gif" style="border:none;" /></a>');
$dbg->end_row();
endwhile;
else :
$dbg->start_row();
$dbg->add_cell('No records found');
$dbg->end_row();
endif;
$dbg->end_data_section();
echo json_encode(array('row_count' => $result->rowCount(), 'html' => $dbg->get_html(), 'xls_sql' => $xls_sql_encoded, 'extra_data'=> ''));
return;
break;
case 'delete' :
try {
$db->beginTransaction();
$sql = "DELETE FROM surveys_responders_questions WHERE survey_responder_id = ".nz(trim($_GET['id']), '0');
$db->query($sql);
$sql = "DELETE FROM surveys_responders WHERE id = ".nz(trim($_GET['id']), '0');
$db->query($sql);
$msg = 'Success';
$db->commit();
} catch(Exception $e) {
db_err_rollback($e, false);
die(json_encode(array('result' => 'Database Error!')));
}
echo json_encode(array('result' => $msg));
return;
break;
endswitch;