From cd47d76f1fda95d676b31a79d8893970b4070b31 Mon Sep 17 00:00:00 2001 From: rswindell <> Date: Thu, 21 Jul 2011 23:23:47 +0000 Subject: [PATCH] Bugfix: duplicate name checking was checking against user *aliases*, not real names (need newest load/sbbsdefs.js!). Added more validity checking against supplied "real name" (e.g. must contain space, cannot begin with space, etc.). Removed extraneous <p> and </p> tags in new password display (these were being displayed as plain text). --- web/root/newuser.ssjs | 31 +++++++++++++++++++++++-------- 1 file changed, 23 insertions(+), 8 deletions(-) diff --git a/web/root/newuser.ssjs b/web/root/newuser.ssjs index 31a823845e..580190a97d 100644 --- a/web/root/newuser.ssjs +++ b/web/root/newuser.ssjs @@ -213,7 +213,7 @@ else { if(http_request.query[required[req]]==undefined || http_request.query[required[req]]=='') { err=1; template.errs[required[req]]="REQUIRED"; - template.err_message="Please fill in the required fields\r\n"; + template.err_message="Please fill in the required fields.\r\n"; } } for(len in maxlengths) { @@ -226,7 +226,7 @@ else { if(gender != 'M' && gender != 'F') { if(template.sex_required==required_str || template.sex_required != '') { err=1; - template.err_message+="Please specify gender (M or F)\r\n"; + template.err_message+="Please specify gender (M or F).\r\n"; template.errs["gender"]="Male or Female"; } } @@ -267,12 +267,12 @@ else { } if(!system.check_name(http_request.query.alias)) { err=1; - template.err_message+="Please choose a different alias\r\n"; + template.err_message+="Please choose a different alias.\r\n"; template.errs["alias"]="Bad format"; } - else if((system.newuser_questions & UQ_DUPHAND) && system.matchuserdata(50,http_request.query["handle"])) { + else if((system.newuser_questions & UQ_DUPHAND) && system.matchuserdata(U_HANDLE,http_request.query["handle"])) { err=1; - template.err_message+="Please choose a different chat handle\r\n"; + template.err_message+="Please choose a different chat handle.\r\n"; template.errs["handle"]="Duplicate handle"; } else if(system.matchuser(http_request.query["alias"])) { @@ -280,11 +280,26 @@ else { template.err_message+="Please choose a different alias.\r\n"; template.errs["alias"]="Duplicate alias"; } - else if((system.newuser_questions & UQ_DUPREAL) && system.matchuser(http_request.query["name"])) { + else if((system.newuser_questions & UQ_ALIASES) && (system.newuser_questions & UQ_REALNAME)) { + if(!system.check_name(http_request.query["name"])) { + err=1; + template.err_message+="Please choose a different name.\r\n"; + template.errs["name"]="Bad format"; + } + if(http_request.query["name"].indexOf(' ') < 1) { + err=1; + template.err_message+="Please enter your first and last name.\r\n"; + template.errs["name"]="Invalid name"; + } + } + else if((system.newuser_questions & UQ_DUPREAL) && system.matchuserdata(U_NAME,http_request.query["name"])) { err=1; template.err_message+="A user "+(system.newuser_questions & UQ_COMPANY?"for that company":"with that name")+" already exists.\r\n"; template.errs["name"]="Duplicate "+(system.newuser_questions & UQ_COMPANY?"company":"name"); } + + /* TODO: reject prepended white-space in more fields (e.g. location, handle, email address) and trim trailing white-space */ + if(err) showform(); @@ -361,9 +376,9 @@ else { if(do_rightnav) write_template("rightnav.inc"); if(http_request.query.netmail != undefined && http_request.query.netmail != '') - template.response=format("<p>Your account has been created and the password has been mailed to: %s.</p>" ,http_request.query.netmail); + template.response=format("Your account has been created and the password has been mailed to: %s." ,http_request.query.netmail); else - template.response=format("<p>Your account has been created and the password is: %s </p>" ,newpw); + template.response=format("Your account has been created and the password is: %s " ,newpw); write_template("newuser_created.inc"); if(do_footer) write_template("footer.inc"); -- GitLab