Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function register($subfname, $subsname, $subgender, $subuser, $subpass, $subemail){
- global $database, $form, $mailer; //The database, form and mailer object
- /* First name error checking */
- $field = "fname"; //Use field name for username
- if(!$subfname || strlen($subfname = trim($subfname)) == 0){
- $form->setError($field, "* Given name not entered");
- }
- else{
- /* Spruce up first name, check length etc */
- $subfname = stripslashes($subfname);
- if(strlen($subfname) < 2) {
- $form->setError($field, "* Your first name contains 1 letter?");
- }
- else if(strlen($subfname) > 20){
- $form->setError($field, "* First name consists too many letters");
- }
- /* Checks if first name is fake */
- else if(!eregi("^([a-z])+$", $subfname)){
- $form->setError($field, "* First name cannot contain numbers or symbols (only A-Za-z)");
- }
- }
- /* Surname error checking */
- $field = "sname"; //Use field name for username
- if(!$subsname || strlen($subsname = trim($subsname)) == 0){
- $form->setError($field, "* Surname not entered");
- }
- else{
- /* Spruce up first name, check length etc */
- $subfname = stripslashes($subsname);
- if(strlen($subsname) < 3) {
- $form->setError($field, "* Surname too short");
- }
- else if(strlen($subsname) > 30){
- $form->setError($field, "* surname too long");
- }
- /* Checks if surname is fake */
- else if(!eregi("^([a-z])+$", $subsname)){
- $form->setError($field, "* First name cannot contain numbers or symbols (only A-Za-z)");
- }
- }
- /* Username error checking */
- $field = "user"; //Use field name for username
- if(!$subuser || strlen($subuser = trim($subuser)) == 0){
- $form->setError($field, "* Username not entered");
- }
- else{
- /* Spruce up username, check length */
- $subuser = stripslashes($subuser);
- if(strlen($subuser) < 5){
- $form->setError($field, "* Username below 5 characters");
- }
- else if(strlen($subuser) > 30){
- $form->setError($field, "* Username above 30 characters");
- }
- /* Check if username is not alphanumeric */
- else if(!eregi("^([0-9a-z])+$", $subuser)){
- $form->setError($field, "* Username not alphanumeric");
- }
- /* Check if username is reserved */
- else if(strcasecmp($subuser, GUEST_NAME) == 0){
- $form->setError($field, "* Username reserved word");
- }
- /* Check if username is already in use */
- else if($database->usernameTaken($subuser)){
- $form->setError($field, "* Username already in use");
- }
- /* Check if username is banned */
- else if($database->usernameBanned($subuser)){
- $form->setError($field, "* Username banned");
- }
- }
- /* Password error checking */
- $field = "pass"; //Use field name for password
- if(!$subpass){
- $form->setError($field, "* Password not entered");
- }
- else{
- /* Spruce up password and check length*/
- $subpass = stripslashes($subpass);
- if(strlen($subpass) < 4){
- $form->setError($field, "* Password too short (Min. length 4)");
- }
- /* Check if password is not alphanumeric */
- else if(!eregi("^([0-9a-z])+$", ($subpass = trim($subpass)))){
- $form->setError($field, "* Password not alphanumeric");
- }
- /**
- * Note: I trimmed the password only after I checked the length
- * because if you fill the password field up with spaces
- * it looks like a lot more characters than 4, so it looks
- * kind of stupid to report "password too short".
- */
- }
- /* Email error checking */
- $field = "email"; //Use field name for email
- if(!$subemail || strlen($subemail = trim($subemail)) == 0){
- $form->setError($field, "* Email not entered");
- }
- else{
- /* Check if valid email address */
- $regex = "^[_+a-z0-9-]+(\.[_+a-z0-9-]+)*"
- ."@[a-z0-9-]+(\.[a-z0-9-]{1,})*"
- ."\.([a-z]{2,}){1}$";
- if(!eregi($regex,$subemail)){
- $form->setError($field, "* Email invalid");
- }
- $subemail = stripslashes($subemail);
- }
- /* Errors exist, have user correct them */
- if($form->num_errors_reg > 0){
- return 1; //Errors with form
- }
- /* No errors, add the new account to the */
- else{
- if($database->addNewUser($subfname, $subsname, $subgender, $subuser, md5($subpass), $subemail)){
- if(EMAIL_WELCOME){
- $mailer->sendWelcome($subfname,$subsname,$subuser,$subemail,$subpass);
- }
- return 0; //New user added succesfully
- }else{
- return 2; //Registration attempt failed
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement