From 83a3e0971675f79e0fd06f55b85bba60ef2814bf Mon Sep 17 00:00:00 2001 From: Zeno Date: Tue, 14 Jun 2011 13:38:50 -0700 Subject: [PATCH] Improve error response when attempting to register a deleted name. --- r2/r2/controllers/api.py | 1 + r2/r2/controllers/errors.py | 1 + r2/r2/controllers/validator/validator.py | 5 ++++- r2/r2/templates/login.html | 1 + 4 files changed, 7 insertions(+), 1 deletion(-) diff --git a/r2/r2/controllers/api.py b/r2/r2/controllers/api.py index 9c103d52c..9f558bc98 100644 --- a/r2/r2/controllers/api.py +++ b/r2/r2/controllers/api.py @@ -427,6 +427,7 @@ class ApiController(RedditController): def POST_register(self, form, jquery, name, email, password, dest, rem, reason): if not (form.has_errors("user", errors.BAD_USERNAME, + errors.USERNAME_TAKEN_DEL, errors.USERNAME_TAKEN) or form.has_errors("email", errors.BAD_EMAILS) or form.has_errors("passwd", errors.BAD_PASSWORD) or diff --git a/r2/r2/controllers/errors.py b/r2/r2/controllers/errors.py index f77047cfd..84b0c4dd4 100644 --- a/r2/r2/controllers/errors.py +++ b/r2/r2/controllers/errors.py @@ -31,6 +31,7 @@ error_list = dict(( ('BAD_CAPTCHA', _('care to try these again?')), ('BAD_USERNAME', _('invalid user name')), ('USERNAME_TAKEN', _('that username is already taken')), + ('USERNAME_TAKEN_DEL', _('that username is taken by a deleted account')), ('NO_THING_ID', _('id not specified')), ('NOT_AUTHOR', _("you can't do that")), ('DELETED_LINK', _('the link you are commenting on has been deleted')), diff --git a/r2/r2/controllers/validator/validator.py b/r2/r2/controllers/validator/validator.py index 3c6692d93..a0e98c46d 100644 --- a/r2/r2/controllers/validator/validator.py +++ b/r2/r2/controllers/validator/validator.py @@ -803,7 +803,10 @@ class VUname(VRequired): else: try: a = Account._by_name(user_name, True) - return self.error(errors.USERNAME_TAKEN) + if a._deleted: + return self.error(errors.USERNAME_TAKEN_DEL) + else: + return self.error(errors.USERNAME_TAKEN) except NotFound: return user_name diff --git a/r2/r2/templates/login.html b/r2/r2/templates/login.html index 339d530a3..8ee4fcd49 100644 --- a/r2/r2/templates/login.html +++ b/r2/r2/templates/login.html @@ -71,6 +71,7 @@ %if register: ${error_field("BAD_USERNAME", "user", kind="span")} ${error_field("USERNAME_TAKEN", "user", kind="span")} + ${error_field("USERNAME_TAKEN_DEL", "user", kind="span")} %endif %if register: