request('POST', PORTAL_API, [ 'form_params' => [ 'key' => PORTAL_KEY, 'action' => "userinfo", 'username' => $u ] ]); if ($response->getStatusCode() > 299) { sendError("Login server error: " . $response->getBody()); } $resp = json_decode($response->getBody(), TRUE); if ($resp['status'] == "OK") { return $resp['data']; } else { // this shouldn't happen, but in case it does just fake it. return ["name" => $u, "username" => $u, "uid" => $u]; } } function getUserByID($u) { $client = new GuzzleHttp\Client(); $response = $client ->request('POST', PORTAL_API, [ 'form_params' => [ 'key' => PORTAL_KEY, 'action' => "userinfo", 'uid' => $u ] ]); if ($response->getStatusCode() > 299) { sendError("Login server error: " . $response->getBody()); } $resp = json_decode($response->getBody(), TRUE); if ($resp['status'] == "OK") { return $resp['data']; } else { // this shouldn't happen, but in case it does just fake it. return ["name" => $u, "username" => $u, "uid" => $u]; } } /** * Check if the first UID is a manager of the second UID. * @param int $m Manager UID * @param int $e Employee UID * @return boolean */ function isManagerOf($m, $e) { $client = new GuzzleHttp\Client(); $response = $client ->request('POST', PORTAL_API, [ 'form_params' => [ 'key' => PORTAL_KEY, 'action' => "ismanagerof", 'manager' => $m, 'employee' => $e, 'uid' => 1 ] ]); if ($response->getStatusCode() > 299) { sendError("Login server error: " . $response->getBody()); } $resp = json_decode($response->getBody(), TRUE); if ($resp['status'] == "OK") { return $resp['managerof']; } else { // this shouldn't happen, but in case it does just fake it. return ["name" => $u, "username" => $u, "uid" => $u]; } }