diff --git a/rlgterm.js b/rlgterm.js index bd74174..fe9c9f6 100644 --- a/rlgterm.js +++ b/rlgterm.js @@ -707,7 +707,25 @@ function formreg(ev) { } else if (reply.t == 'E') { debug(1, "Could not register: " + reply.s); - message("Registration failed."); + var failmsg = "Registration failed."; + if (reply.c == 2) { + var errdesc = reply.s.match(/Invalid data: (.*)/)[1]; + if (errdesc.match(/No name/)) + failmsg += " You need to choose a name."; + else if (errdesc.match(/No password/)) + failmsg += " You need to choose a password."; + else if (errdesc.match(/Invalid/)) { + failmsg += " Names must be letters and numbers. E-mail addresses " + + "can also contain these characters: @.-_"; + } + else if (errdesc.match(/Username/)) + failmsg += " Someone else is already using that name."; + else + failmsg += " This is probably a bug."; + } + else + failmsg += " This is probably a bug."; + message(failmsg); document.getElementById("regin_name").value = ""; document.getElementById("regin_pw").value = ""; document.getElementById("regin_email").value = "";