update("ticket_live_user", ["lastvisit" => time(), "istyping" => 1], ["AND" => ["opid" => $opcacheid, "ticketid" => $_GET['ticketid'], "userid" => $_GET['oid']]]); } die(json_encode(array('status' => 1))); break; case 'nottyping': if (isset($_GET['ticketid']) && isset($_GET['oid'])) { $jakdb->update("ticket_live_user", ["lastvisit" => time(), "istyping" => 0], ["AND" => ["opid" => $opcacheid, "ticketid" => $_GET['ticketid'], "userid" => $_GET['oid']]]); } die(json_encode(array('status' => 1))); break; case 'live': if (isset($_GET['ticketid']) && isset($_GET['oid'])) { // Update the operator that is currently in the ticket $jakdb->update("ticket_live_user", ["lastvisit" => time()], ["AND" => ["opid" => $opcacheid, "ticketid" => $_GET['ticketid'], "userid" => $_GET['oid']]]); // the last 5 minutes $checkLastmin = time() - 300; $result = $jakdb->select("ticket_live_user", ["userid", "clientid", "istyping", "lastvisit"], ["AND" => ["opid" => $opcacheid, "ticketid" => $_GET['ticketid'], "userid[!]" => $_GET['oid'], "lastvisit[>]" => $checkLastmin], "ORDER" => ["lastvisit" => "DESC"], "LIMIT" => 5]); } $opticketlive = ""; if (isset($result) && !empty($result)) foreach ($result as $row) { # code... if ($row["userid"] != 0) { $user = $jakdb->get("user", ["username", "name", "picture"], ["id" => $row["userid"]]); $picture = $user["picture"]; $name = $user["name"].' ('.$user["username"].')'; } else { $client = $jakdb->get("clients", ["email", "name", "picture"], ["id" => $row["clientid"]]); $picture = $client["picture"]; $name = $client["name"].' ('.$client["email"].')'; } $opticketlive .= '
'.$name.'
'.$name.'

'.(isset($row["istyping"]) && $row["istyping"] == 1 ? $jkl['g143'] : '').'


'; } die(json_encode(array("status" => 1, "onlineList" => $opticketlive))); break; default: die(json_encode(array("status" => 0))); } ?>