Exemplo n.º 1
0
 /**
  * Delete controller function
  *
  * Deletes the user with userid.
  * Verifies that the user is authenticated.
  *
  * @return json|xml True on success otherwise false
  */
 public function delete()
 {
     try {
         $error_flag = false;
         $message = "";
         $user = new LoveUser();
         if (!$user->loadUserFromSession()) {
             $error_flag = true;
             $message[] = "Unable to located the user using the current session";
         } else {
             if (!$user->authenticate($_REQUEST["password"])) {
                 $error_flag = true;
                 $message[] = "Invalid password";
             } else {
                 if (!$user->delete()) {
                     $error_flag = true;
                     $message[] = "Delete failed";
                 } else {
                     $message[] = "Delete successful";
                     $user->logout();
                 }
             }
         }
         if ($error_flag) {
             echo json_encode(array("error" => 1, "message" => $message));
             exit(0);
         } else {
             $repost = $this->request->getRepostPage();
             if (isset($repost)) {
                 CURLHandler::doRequest("POST", $repost, $_REQUEST);
             }
             echo json_encode(array("error" => 1, "message" => $message));
             exit(0);
         }
     } catch (Exception $e) {
         $msg = 'An error occured while updating:' . "\n";
         $msg .= "\n" . ' ' . $e->getMessage();
         if (defined('APPLICATION_ENV') && APPLICATION_ENV == 'development') {
             $msg .= "\n\nFile: " . $e->getFile();
             $msg .= "\nLine: " . $e->getLine();
             $msg .= "\n" . $e->getTraceAsString();
         } else {
             if (defined('APPLICATION_ENV') && APPLICATION_ENV == 'testing') {
                 $msg .= "<br /><br />File: " . $e->getFile();
                 $msg .= "<br />Line: " . $e->getLine();
                 $msg .= "<br />" . $e->getTraceAsString();
             }
         }
         echo $msg;
         exit;
     }
 }