exit; } else { try { $req = json_decode($_POST["jsondata"]); if (!isset($req->behavior)) { //these aren't the droids you're looking for... header('HTTP/1.1 404 Not Found'); exit; } else { switch ($req->behavior) { case "getTokenFromCredentials": $msg = new UATokenMessage(); // the constructor for Credentials can do some basic validation (or throw an exception) $credentials = new Credentials($req->credentials->username, $req->credentials->password); // the validate() method returns true if valid or false if invalid if ($credentials->validate($token)) { // the $token parameter was passed by reference and set inside validate() $msg->token = $token; //get the current time $dt = new DateTime(null, new DateTimeZone("America/Los_Angeles")); //expire the token in 10 seconds, this should probably reside inside validate $dt->modify("+10 seconds"); $msg->expires = $dt->format(DateTime::RFC822); //just some helpful status information for the caller $msg->statuscode = 0; $msg->statusdesc = "Login successful"; } else { //bad credentials $msg->statuscode = 1; $msg->statusdesc = "Invalid user name or password"; }
// add an element to the statusdesc array $msg->statusdesc[] = "Validation Failure: " . $e->getMessage(); // add another element $msg->statusdesc[] = $myConn->getDebug(); } switch ($req->behavior) { case "getTokenFromCredentials": // the constructor for Credentials can do some basic validation // (or throw an exception) $credentials = new Credentials($req->credentials->username, $req->credentials->password); $token = null; $expires = null; // the validate() method returns true if valid or false // token, expires, and msg->statusdesc are all passed // by reference and set inside validate() if (!$credentials->validate($myConn->getConn(), $token, $expires, $msg->statusdesc)) { // captures the reason for failure $msg->statuscode = 1; // failed } else { // success // set values in the return message $msg->success = true; $msg->statuscode = 0; $msg->statusdesc = "Login successful"; // put the token and expires time in the return message $msg->retval = array("token" => $token, "expires" => $expires); } break; case "passwordRecovery": $passwordRecover = new PasswordRecover($req->passwordRecover->username, $req->passwordRecover->password);