<?php
include ('includes/config/config.php');
include ('includes/auth/auth.php');
include ('includes/functions.php');
include ('access.php');
// error_reporting(E_ERROR | E_PARSE);
include ('log_entry.php');
?>
<?php

// Connect to mysqli database
$page = 1; // The current page
$sortname = 'task_name'; // Sort column
$sortorder = 'desc'; // Sort order
$qtype = ''; // Search column
$query = ''; // Search string
// Get posted data
if (isset($_POST['page'])) {
        $page = @mysqli_real_escape_string($conn, $_POST['page']);
}
if (isset($_POST['sortname'])) {
        $sortname = @mysqli_real_escape_string($conn, $_POST['sortname']);
}
if (isset($_POST['sortorder'])) {
        $sortorder = @mysqli_real_escape_string($conn, $_POST['sortorder']);
}
if (isset($_POST['qtype'])) {
        $qtype = @mysqli_real_escape_string($conn, $_POST['qtype']);
}
if (isset($_POST['query'])) {
        $query = @mysqli_real_escape_string($conn, $_POST['query']);
}
if (isset($_POST['rp'])) {
        $rp = @mysqli_real_escape_string($conn, $_POST['rp']);
}
// Setup sort and search SQL using posted data
$hasReadAccess = isAccessible($_SESSION['RoleId'], $menu_key, 'R');
$hasWriteAccess = isAccessible($_SESSION['RoleId'], $menu_key, 'W');
$hasExecuteAccess = isAccessible($_SESSION['RoleId'], $menu_key, 'E');

$sortSql = "order by $sortname $sortorder";
if ($qtype == 'task_name') {
        $searchSql = ($qtype != '' && $query != '') ? "where upper($qtype) like upper('%" . trim($query) . "%')" : '';
} else {
        $searchSql = ($qtype != '' && $query != '') ? "where upper($qtype) like upper('%$query%')" : '';
}
// Get total count of records
$sql = "select count(*)from task_master $searchSql";
$result = @mysqli_query($conn, $sql);
$row = @mysqli_fetch_array($result);
$total = $row[0];
// Setup paging
if (!isset($rp)) {
        $rp = 10;
}
$pageStart = ($page - 1) * $rp;
$limitSql = "limit $pageStart, $rp";
// Return JSON data
$data = array();
$data['page'] = $page;
$data['total'] = $total;
$data['rows'] = array();
$sql_task = "select a.*, b.frequency_name, c.ohc_type_name from task_master a left join task_frequency_master b on a.frequency = b.frequency_name left join ohc_type c on a.ohc_type = c.ohc_type_id ";
//echo $sql_task;
error_log($sql_task);
$sql_export = $sql_task;
$sql_task .= "$searchSql $sortSql $limitSql";
$sql_export .= "$searchSql $sortSql ";
$results_task = @mysqli_query($conn, $sql_task);
$count = ($page - 1) * $rp + 1;

//echo $sql_task;
//echo $access_level;

while ($row1 = @mysqli_fetch_assoc($results_task)) {

        $task_id = $row1['task_id'];
        //echo $task_id;
        $view_link = "";
        $edit_link = "";
        $delete_link = "";
        $links = "";
        if ($hasReadAccess) {
                //echo "shubham";
                $view_link = "<a  href=\"#\"class=\"green\"  onclick=\"open_task('" . $task_id . "','V');\"><i class=\"ace-icon fa fa-search-plus bigger-130\"></i></a>";
        }

        if ($hasWriteAccess) {
                $edit_link = "<a href=\"#\" class=\"blue\" onclick=\"open_task('" . $task_id . "','E');\"><i class=\"ace-icon fa fa-pencil bigger-130\"></i></a>";
        }
        if ($hasExecuteAccess) {
                $delete_link = "<a href=\"#\" class=\"blue\" onclick=\"delete_task('" . $task_id . "');\"><i class=\"ace-icon fa fa-trash-o bigger-130\"></i></a>";
        }
        $task_header = getFieldFromTable('task_name_header', 'task_header_master', 'task_id_header', $row1['task_header_id']);
        $space = "&nbsp;&nbsp;&nbsp;";
        $links = $assign_link . $space . $view_link . $space . $edit_link . $space . $delete_link;

        $data['rows'][] = array(
                'id' => $row1['id'],
                'cell' => array($count++, $task_header, $row1['task_name'], $row1['task_description'], $row1['frequency_name'], $row1['ohc_type_name'], $links)
        );
}
$data['rows'][] = array(
        'id' => $row['filterkey'],
        'cell' => array(
                '',
                "<input type=hidden name='filterkey' id='filterkey' value=\"" . base64_encode($sql_export) . "\">",
                "<input type=hidden name=paramlist id=paramlist value=\"" . base64_encode($paramlist) . "\">",
                '',
                '',
                '',
                '',
                '',
                '',
                '',
                '',
                '',
                '',
                '',
                '',
                '',
                '',
                '',
                '',
                ''
        )
);
// error_log(print_r($data, true));
echo json_encode($data);
?>