diff --git a/browserid/static/js/pages/signup.js b/browserid/static/js/pages/signup.js index 7cf7a3cf11cb1e462b8db1df8b3b7762adfca247..b834fcb7046f6f1bd3e9172bf22d722b181bd72e 100644 --- a/browserid/static/js/pages/signup.js +++ b/browserid/static/js/pages/signup.js @@ -37,8 +37,11 @@ (function() { "use strict"; - BrowserID.signUp = function () { - var ANIMATION_SPEED = 250; + var bid = BrowserID, + identities = bid.Identities, + ANIMATION_SPEED = 250; + + bid.signUp = function () { function replaceWithMessage(selector) { $('.forminputs').fadeOut(ANIMATION_SPEED, function() { @@ -56,8 +59,6 @@ $(function () { - var identities = BrowserID.Identities; - $("form input[autofocus]").focus(); $("#email").bind("keyup", function(event) { @@ -69,7 +70,13 @@ $("#signUpForm").bind("submit", function(event) { event.preventDefault(); - var email = $("#email").val(); + var email = $("#email").val(), + valid = bid.Validation.email(email); + + if (!valid) { + return; + } + identities.emailRegistered(email, function(registered) { if (!registered) { identities.createUser(email, function onSuccess(keypair) { diff --git a/browserid/views/signup.ejs b/browserid/views/signup.ejs index e16483caea3370c3c8495960c9632a1a70ba2755..29a6f662fbeba3818ed61d68d665b5386ce15b33 100644 --- a/browserid/views/signup.ejs +++ b/browserid/views/signup.ejs @@ -1,7 +1,7 @@ <div id="vAlign"> <div id="signUpFormWrap"> <!-- XXX this form submits to nowhere --> - <form id="signUpForm" class="cf authform"> + <form id="signUpForm" class="cf authform" novalidate> <h1 class="serif">Create Account</h1> <ul class="notifications"> @@ -13,7 +13,15 @@ <ul class="inputs forminputs"> <li> <label class="serif" for="email">Email Address</label> - <input class="sans" id="email" autofocus required placeholder="Your Email" type="email" x-moz-errormessage="Please enter the email address you would like to use"> + <input class="sans" id="email" autofocus placeholder="Your Email" type="email" /> + + <div id="email_format" class="tooltip" for="email"> + This field must be an email address. + </div> + + <div id="email_required" class="tooltip" for="email"> + The email field is required. + </div> </li> </ul>