function addNewAccount($email, $nickname, $pwdHash) { try { $existingAccount = da_account::GetAccount($email); if ($existingAccount->email == $email) { $response->status = "ERROR"; $response->message = "Ya existe una cuenta de pvCloud para esa direccion de email ({$email})"; } else { $newAccount = da_account::AddNewAccount($email, $nickname, $pwdHash); if ($newAccount != NULL && $newAccount->email == $email) { $response->status = "OK"; $response->message = "Account for {$newAccount->email} was created successfully."; } else { $response->status = "EXCEPTION"; $response->message = "Adding new account failed"; } } } catch (Exception $ex) { $response->status = "EXCEPTION"; $response->message = $ex->getMessage(); } try { sendNewAccountEmail($newAccount->email, $newAccount->confirmation_guid); } catch (Exception $ex) { } return $response; }
/** * * @return be_session */ public static function DoLogin() { try { $parameters = LoginWebService::collectParameters(); if (LoginWebService::parametersAreValid($parameters)) { $account = da_account::GetAccount($parameters->email); $response = LoginWebService::authenticationResult($account, $parameters); } else { $response->status = "Error"; $response->message = "Parámetros Inválidos"; } } catch (Exception $ex) { $response->status = "EXCEPTION"; $response->message = $ex->getMessage(); } return $response; }
public static function PasswordRecovery() { $response = new WebServiceClass(); try { $confirmationID = uniqid(); $parameters = WebServiceClass::collectParameters(); $account = da_account::GetAccount($parameters->email); $account->confirmation_guid = $confirmationID; $savedAccount = da_account::UpdateAccount($account); WebServiceClass::sendPWRecoveryEmail($savedAccount); $response->status = "OK"; $response->message = "Solicitud de recuperación de clave tramitada."; } catch (Exception $ex) { $response->status = "EXCEPTION"; $response->message = $ex->getMessage(); } return $response; }
/** * Updates the data of an account * @param be_account $account * @return be_account */ public static function UpdateAccount($account) { $sqlCommand = "UPDATE accounts " . " SET confirmation_guid = ?," . " confirmed = ?," . " deleted_datetime = ?," . " email = ?," . " nickname = ?," . " pwd_hash = ?" . " WHERE account_id = ? "; $paramTypeSpec = "sissssi"; $mysqli = DA_Helper::mysqli_connect(); if ($mysqli->connect_errno) { $msg = "Failed to connect to MySQL: (" . $mysqli->connect_errno . ") " . $mysqli->connect_error; throw new Exception($msg, $mysqli->connect_errno); } if (!($stmt = $mysqli->prepare($sqlCommand))) { $msg = "Prepare failed: (" . $mysqli->errno . ") " . $mysqli->error; throw new Exception($msg, $stmt->errno); } if (!$stmt->bind_param($paramTypeSpec, $account->confirmation_guid, $account->confirmed, $account->deleted_datetime, $account->email, $account->nickname, $account->pwd_hash, $account->account_id)) { $msg = "Binding parameters failed: (" . $stmt->errno . ") " . $stmt->error; throw new Exception($msg, $stmt->errno); } if (!$stmt->execute()) { $msg = "Execute failed: (" . $stmt->errno . ") " . $stmt->error; throw new Exception($msg, $stmt->errno); } $stmt->close(); $savedAccount = da_account::GetAccount($account->email); return $savedAccount; }