}
// Register new user
$result = $dao->registerUser($userEmail, $userFirstName, $userLastName, $secured_password, $salt);
if ($result) {
    $userDetails = $dao->getUserDetails($userEmail);
    $returnValue["status"] = "200";
    $returnValue["message"] = "Successfully registered new user";
    $returnValue["userId"] = $userDetails["user_id"];
    $returnValue["userFirstName"] = $userDetails["first_name"];
    $returnValue["userLastName"] = $userDetails["last_name"];
    $returnValue["userEmail"] = $userDetails["email"];
    // Generate a unique email confirmation token
    $emailConfirmation = new EmailConfirmation();
    $emailToken = $emailConfirmation->generateUniqueToken(16);
    // Store email token in our database table.
    $dao->storeEmailToken($userDetails["user_id"], $emailToken);
    // Prepare email message parameters like Subject, Message, From, To and etc.
    $messageDetails = array();
    $messageDetails["message_subject"] = "Please confirm your email address";
    $messageDetails["to_email"] = $userDetails["email"];
    $messageDetails["from_name"] = "Sergey Kargopolov";
    $messageDetails["from_email"] = "*****@*****.**";
    // Load up email message from an email template
    $emailMessage = $emailConfirmation->loadEmailEmailMessage();
    $emailMessage = str_replace("{token}", $emailToken, $emailMessage);
    $messageDetails["message_body"] = $emailMessage;
    // Send out this email message to user
    $emailConfirmation->sendEmailConfirmation($messageDetails);
} else {
    $returnValue["status"] = "400";
    $returnValue["message"] = "Could not register user with provided information";