Example #1
0
 /**
  * Verfies the user registraion
  * @param int $id      Anwesha Id for registered user
  * @param string $token     Confirmation Token
  */
 public function verifyEmail($id, $token, $conn)
 {
     $sql = "SELECT * FROM People NATURAL JOIN LoginTable WHERE pId = {$id}";
     $result = mysqli_query($conn, $sql);
     if (!$result || mysqli_num_rows($result) != 1) {
         $error = "No such User - Invalid Link";
         $arr = array();
         $arr[] = -1;
         $arr[] = $error;
         return $arr;
     }
     $row = mysqli_fetch_assoc($result);
     if (strcmp($token, $row['csrfToken']) != 0) {
         $error = "Invalid Link or Link Expired";
         $arr = array();
         $arr[] = -1;
         $arr[] = $error;
         return $arr;
     }
     $name = $row['name'];
     $email = $row['email'];
     $sqlUpdate = "UPDATE People SET confirm = 1 WHERE pId = {$id}";
     $result = mysqli_query($conn, $sqlUpdate);
     if (!$result) {
         $error = "Some Internal Error Occured - Please try again.";
         $arr = array();
         $arr[] = -1;
         $arr[] = $error;
         return $arr;
     }
     $sqlUpdate = "UPDATE LoginTable SET csrfToken = '' WHERE pId = {$id}";
     $result = mysqli_query($conn, $sqlUpdate);
     if (!$result) {
         $error = "Some Internal Error Occured - Please try again.";
         $arr = array();
         $arr[] = -1;
         $arr[] = $error;
         return $arr;
     }
     $arr = array();
     $arr[] = 1;
     $randPass = Auth::randomPassword();
     //vinay edit
     $privateKey = Auth::randomPassword();
     $sqlUpdate = "UPDATE LoginTable SET password = sha('{$randPass}'), privateKey = sha('{$privateKey}') where pId = {$id}";
     //vinay edit
     $result = mysqli_query($conn, $sqlUpdate);
     if (!$result) {
         $error = "Some Internal Error Occured - Please try again.";
         $arr = array();
         $arr[] = -1;
         $arr[] = $error;
         return $arr;
     }
     Auth::passEmail($email, $name, $randPass, $id);
     //vinay edit
     $arr[] = $randPass;
     //vinay edit
     return $arr;
 }
Example #2
0
 /**
  * Verfies the user registraion
  * @param int $id      Anwesha Id for registered user
  * @param string $token     Confirmation Token
  */
 public function verifyEmail($id, $token, $conn)
 {
     $sql = "SELECT * FROM People NATURAL JOIN LoginTable WHERE pId = {$id}";
     $result = mysqli_query($conn, $sql);
     if (!$result || mysqli_num_rows($result) != 1) {
         $error = "No such User - Invalid Link";
         $arr = array();
         $arr[] = -1;
         $arr[] = $error;
         return $arr;
     }
     $row = mysqli_fetch_assoc($result);
     if (strcmp($token, $row['csrfToken']) != 0) {
         $error = "Invalid Link or Link Expired";
         $arr = array();
         $arr[] = -1;
         $arr[] = $error;
         return $arr;
     }
     $confirmationType = $row['type'];
     if (!($confirmationType == 1 || $confirmationType == 2)) {
         $error = "Unexpected Error!, Verifing Confirmation Type. Please contact Registration Team";
         $arr = array();
         $arr[] = -1;
         $arr[] = $error;
         return $arr;
     }
     $passwordAlreadySet = false;
     if (!($row['password'] == NULL || empty($row['password']))) {
         $passwordAlreadySet = true;
     }
     $name = $row['name'];
     $email = $row['email'];
     $sqlUpdate = "UPDATE People SET confirm = {$confirmationType} WHERE pId = {$id}";
     $result = mysqli_query($conn, $sqlUpdate);
     if (!$result) {
         $error = "Some Internal Error Occured - Please try again.";
         $arr = array();
         $arr[] = -1;
         $arr[] = $error;
         return $arr;
     }
     $sqlUpdate = "UPDATE LoginTable SET csrfToken = '', type = 0 WHERE pId = {$id}";
     $result = mysqli_query($conn, $sqlUpdate);
     if (!$result) {
         $error = "Some Internal Error Occured - Please try again.";
         $arr = array();
         $arr[] = -1;
         $arr[] = $error;
         return $arr;
     }
     $arr = array();
     $arr[] = 1;
     $randPass = "******";
     if (!$passwordAlreadySet) {
         $randPass = Auth::randomPassword();
         //vinay edit
         $privateKey = Auth::randomPassword();
         $sqlUpdate = "UPDATE LoginTable SET password = sha('{$randPass}'), privateKey = sha('{$privateKey}') where pId = {$id}";
         //vinay edit
         $result = mysqli_query($conn, $sqlUpdate);
         if (!$result) {
             $error = "Some Internal Error Occured - Please try again.";
             $arr = array();
             $arr[] = -1;
             $arr[] = $error;
             return $arr;
         }
     }
     Auth::passEmail($email, $name, $randPass, $id);
     //vinay edit
     $arr[] = $randPass;
     //vinay edit
     return $arr;
 }