diff --git a/private/functions_request.php b/private/functions_request.php index 70dc8ec..088237e 100644 --- a/private/functions_request.php +++ b/private/functions_request.php @@ -50,6 +50,29 @@ function find_requests_by_status() { return $result; } +function find_requests_by_availability_and_user($userkp) { + global $db; + + // done in different function +// $sql = "SELECT kp_user FROM users "; +// $sql .= "WHERE name_user = '" . $username . "'"; +// $result = mysqli_query($db, $sql); +// $userArray = mysqli_fetch_assoc($result); +// $userKp = $userArray['kp_user']; + + $sql = "SELECT * FROM requests "; + $sql .= "WHERE responsible = " . $userkp; + $sql .= " AND ( status = 2"; + $sql .= " OR status = 3 )"; + $result = mysqli_query($db, $sql); +// $requestArray = mysqli_fetch_assoc($result); + if($result->num_rows == 0) { + return false; + } else { + return $result; + } +} + function find_request_by_kp($key) { global $db; $sql = "SELECT * FROM requests "; diff --git a/private/functions_user.php b/private/functions_user.php index 0a02993..cd9f5c5 100644 --- a/private/functions_user.php +++ b/private/functions_user.php @@ -55,8 +55,26 @@ function find_user_by_nameuser($name_user) { $sql .= "WHERE name_user = '" . $name_user . "' "; // $sql .= "AND flg_active = 1"; $result = mysqli_query($db, $sql); - $request = mysqli_fetch_assoc($result); - return $request; + if($result->num_rows == 0) { + return false; + } else { + $request = mysqli_fetch_assoc($result); + return $request; + } +} + +function find_userkp_by_nameuser($name_user) { + global $db; + $sql = "SELECT kp_user FROM users "; + $sql .= "WHERE name_user = '" . $name_user . "' "; +// $sql .= "AND flg_active = 1"; + $result = mysqli_query($db, $sql); + if($result->num_rows == 0) { + return false; + } else { + $request = mysqli_fetch_assoc($result); + return $request; + } } function find_user_by_apikey($apikey) { diff --git a/private/meta.php b/private/meta.php index 9fa311f..760c92a 100644 --- a/private/meta.php +++ b/private/meta.php @@ -1,5 +1,5 @@ false, + "message" => "Valid access token required to process the request" + )); + exit(); +} + +if(is_blank($_GET['responsible'])) { + http_response_code(400); + echo json_encode(array( + "success" => false, + "message" => "Username required to process the request" + )); + exit(); +} + +// get user kp +$user = find_userkp_by_nameuser($_GET['responsible']); +if (!$user) { + http_response_code(404); + echo json_encode(array( + "success" => false, + "message" => "Username not found" + )); + exit(); +} +$userKp = $user['kp_user']; + +// return available tickets for a user +$request_set = find_requests_by_availability_and_user($userKp); +if(!$request_set) { + http_response_code(200); + echo json_encode(array( + "success" => true, + "tickets" => array() + )); + exit(); +} + +while($request = mysqli_fetch_assoc($request_set)) { + $tickets[] = array( + "id" => $request['kp_request'], + "description" => $request['description'], + "category" => find_selectiontext_by_kp(h($request['category'])), + "priority" => find_selectiontext_by_kp(h($request['priority'])), + "source" => find_userabbr_by_kp(h($request['source'])), + "status" => find_selectiontext_by_kp(h($request['status'])), + "responsible" => find_userabbr_by_kp(h($request['responsible'])) + ); +} + +http_response_code(200); +$response = array( + "success" => true, + "tickets" => $tickets +); + +echo json_encode($response); diff --git a/public/api/tickets.php b/public/api/tickets.php index 5cc72b2..9bdd645 100644 --- a/public/api/tickets.php +++ b/public/api/tickets.php @@ -19,7 +19,8 @@ if(!$user) { http_response_code(401); echo json_encode(array( - "message" => "Valid access token missing" + "success" => false, + "message" => "Valid access token required to process the request" )); exit(); }