示例#1
0
 private function handleRegister()
 {
     $errors = array();
     $username = isset($_REQUEST[self::USR_NAME]) ? Util::escape($_REQUEST[self::USR_NAME]) : null;
     $firstName = isset($_REQUEST[self::USR_FIRSTNAME]) ? Util::escape($_REQUEST[self::USR_FIRSTNAME]) : null;
     $lastName = isset($_REQUEST[self::USR_LASTNAME]) ? Util::escape($_REQUEST[self::USR_LASTNAME]) : null;
     $mail = isset($_REQUEST[self::USR_MAIL]) ? Util::escape($_REQUEST[self::USR_MAIL]) : null;
     $password = isset($_REQUEST[self::USR_PASSWORD]) ? Util::escape($_REQUEST[self::USR_PASSWORD]) : null;
     $password2 = isset($_REQUEST[self::USR_PASSWORD2]) ? Util::escape($_REQUEST[self::USR_PASSWORD2]) : null;
     $channels = isset($_REQUEST[self::USR_CHANNELS]) ? $_REQUEST[self::USR_CHANNELS] : null;
     if ($username == null || $firstName == null || $lastName == null || $mail == null || $password == null || $password2 == null || $channels == null) {
         $errors[] = "Please fill in all fields.";
     }
     if (DataManager::userNameExists($username)) {
         $errors[] = "Username already exists.";
     }
     if (DataManager::mailAddressExists($mail)) {
         $errors[] = "Mail address already in use.";
     }
     if ($password !== $password2) {
         $errors[] = "Entered passwords have to be equal.";
     }
     if (count($channels) == 0) {
         $errors[] = "Please select one or more channels.";
     }
     if (count($errors) > 0) {
         echo $_REQUEST[self::USR_MAIL];
         $this->forwardRequest($errors, '?view=register', array(self::USR_NAME => $_REQUEST[self::USR_NAME], self::USR_FIRSTNAME => $_REQUEST[self::USR_FIRSTNAME], self::USR_LASTNAME => $_REQUEST[self::USR_LASTNAME], self::USR_MAIL => $_REQUEST[self::USR_MAIL]));
     } else {
         DataManager::createUser($username, $firstName, $lastName, $mail, $password, $channels);
         AuthenticationManager::authenticate($username, $password);
     }
 }