| 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/tgnewdev/admin/mod/ |
Upload File : |
<?php require('_mod_security.php'); ?>
<?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' => 'Name', 'dbcol' => 'c.name', 'width' => '175px']);
$dbg->add_column(['label' => 'Slug', 'dbcol' => 'c.slug', 'width' => '150px']);
$dbg->add_column(['label' => 'Description', 'dbcol' => 'c.description', 'width' => '175px']);
$dbg->add_column(['label' => 'Fut. Events', 'dbcol' => 'event_count', 'width' => '125px', 'searchable' => false]);
$dbg->add_column(['label' => 'Active', 'dbcol' => 'c.active', 'width' => '80px', 'filter' => true]);
$dbg->add_column(['label' => 'Inactivate', 'sortable' => false, 'searchable' => false, 'width' => '65px', 'align' => 'center', 'update' => true]);
$dbg->add_column(['label' => 'Delete', 'sortable' => false, 'searchable' => false, 'width' => '65px', 'align' => 'center', 'update' => true]);
$dbg->end_header();
$dbg->end_header_section();
$sql = "SELECT c.*, (CASE c.active WHEN 0 THEN 'Inactive' WHEN 1 THEN 'Active' END) AS c_status, COUNT(ec2.id) AS event_count FROM categories c
LEFT JOIN (
SELECT e.id, ec.category_id FROM
events_categories ec
JOIN events e ON (e.id = ec.event_id AND e.start_time_local > NOW())
) ec2 ON (ec2.category_id = c.id)
WHERE ".$dbg->search_spec()." ".$_GET['parm1']." ".$_GET['parm2']." ".$_GET['parm3']."
GROUP BY c.id
ORDER BY ".$dbg->sort_spec();
//error_log(PHP_EOL . ' === '.$sql.' === ' . PHP_EOL);
$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="index.php?IX='.$_GET['ix_form'].'&id='.$row->id.'" >'.$row->name.'</a>');
$dbg->add_cell($row->slug);
$dbg->add_cell($row->description);
$dbg->add_cell($row->event_count);
$dbg->add_cell($row->c_status);
if ($row->active == 1) :
$dbg->add_cell('<a href="javascript:confirm_inactivate(\'Are you sure?\', \''.$row->id.'\', \''.$_GET['div'].'\');"><img src="img/inactivate_icon.png" style="border:none;" /></a>');
else :
$dbg->add_cell('');
endif;
$dbg->add_cell('<a href="javascript:confirm_delete(\'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(['row_count' => $result->rowCount(), 'html' => $dbg->get_html(), 'xls_sql' => $xls_sql_encoded, 'extra_data'=> '']);
return;
break;
case 'delete' :
$sql = "DELETE FROM categories WHERE id = ".nz(trim($_GET['id']), '0')." ";
$db->query($sql) or die(json_encode(['result' => 'Database Error!']));
$sql = "DELETE FROM events_categories WHERE category_id = ".nz(trim($_GET['id']), '0');
$db->query($sql) or die(json_encode(['result' => 'Database Error!']));
$msg = 'Success';
echo json_encode(['result' => $msg]);
return;
break;
case 'inactivate' :
$sql = "UPDATE categories SET active = 0 WHERE id = ".nz(trim($_GET['id']), '0')." ";
$db->query($sql) or die(json_encode(['result' => 'Database Error!']));
$msg = 'Success';
echo json_encode(['result' => $msg]);
return;
break;
endswitch;
?>