Commit 4458c30030d964867d1ed8c9be8adde4cbfb7e3c

Authored by Evandro Junior
1 parent 2949616f

Adds full name to the registration

Showing 2 changed files with 21 additions and 14 deletions   Show diff stats
index.html
... ... @@ -510,6 +510,10 @@
510 510 <label for="signup-user_email" class="label">E-mail:</label>
511 511 <input id="signup-user_email" name="email" type="email" required placeholder="E-mail">
512 512 </div>
  513 + <div class="name">
  514 + <label for="signup-user_fullname" class="label">Nome:</label>
  515 + <input id="signup-user_fullname" name="name" type="text" required placeholder="Nome">
  516 + </div>
513 517 <div class="row">
514 518 <div class="password col-sm-6">
515 519 <label for="signup-user_password" class="label">Senha:</label>
... ...
js/main.js
... ... @@ -85,7 +85,7 @@ define([&#39;jquery&#39;, &#39;handlebars&#39;, &#39;fastclick&#39;, &#39;proposal_app&#39;, &#39;handlebars_helpers
85 85 function fillSignupForm(signupForm, user) {
86 86 signupForm.find('#signup-user_email').val(user.email);
87 87 signupForm.find('#signup-user_email').attr('disabled', true);
88   - //signupForm.find('#signup-user_name').val(user.login);
  88 + signupForm.find('#signup-user_fullname').val(user.name);
89 89 signupForm.find('#user_oauth_signup_token').val(user.signup_token);
90 90 signupForm.find('#user_oauth_providers').val(user.oauth_providers);
91 91 signupForm.find('div.password').hide();
... ... @@ -835,10 +835,8 @@ define([&#39;jquery&#39;, &#39;handlebars&#39;, &#39;fastclick&#39;, &#39;proposal_app&#39;, &#39;handlebars_helpers
835 835 }
836 836 }
837 837 }
838   - msg = msg.replace(/login incorrect format/g,"campo \"nome do usuário\" está com formato inválido. O mesmo só pode ser composto por letras minúsculas, números, '_' e '-'. Adicionalmente não é permitido usar acentuação nem começar com '_' ou '-'");
839 838 msg = msg.replace('password_confirmation', 'campo "confirmação da senha"');
840 839 msg = msg.replace(/password/g, 'campo "senha"');
841   - msg = msg.replace(/login/g, 'campo "nome de usuário"');
842 840 msg = msg.replace('email', 'campo "e-mail"');
843 841 msg = msg.substring(0, msg.length - 5) + '.';
844 842 return msg;
... ... @@ -1531,7 +1529,7 @@ define([&#39;jquery&#39;, &#39;handlebars&#39;, &#39;fastclick&#39;, &#39;proposal_app&#39;, &#39;handlebars_helpers
1531 1529  
1532 1530 signupForm.find('#signup-user_email').val('');
1533 1531 signupForm.find('#signup-user_email').attr('disabled', false);
1534   - //signupForm.find('#signup-user_name').val('');
  1532 + signupForm.find('#signup-user_fullname').val('');
1535 1533 signupForm.find('#user_password_confirmation').val('');
1536 1534 signupForm.find('#signup-user_password').val('');
1537 1535 signupForm.find('#captcha_text').val('');
... ... @@ -1552,10 +1550,15 @@ define([&#39;jquery&#39;, &#39;handlebars&#39;, &#39;fastclick&#39;, &#39;proposal_app&#39;, &#39;handlebars_helpers
1552 1550  
1553 1551 $(document).on('click', '.confirm-signup', function(e) {
1554 1552  
  1553 + function validateEmail(email) {
  1554 + var re = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
  1555 + return re.test(email);
  1556 + }
  1557 +
1555 1558 var $button = $(this);
1556 1559 var $signupForm = $(this).parents('form.signup');
1557 1560 var $inputEmail = $signupForm.find('#signup-user_email');
1558   - //var $inputUsername = $signupForm.find('#signup-user_name');
  1561 + var $inputFullname = $signupForm.find('#signup-user_fullname');
1559 1562 var $inputPassword = $signupForm.find('#signup-user_password');
1560 1563 var $inputPasswordConfirmation = $signupForm.find('#user_password_confirmation');
1561 1564 var $inputAcceptation = $signupForm.find('#user_terms_accepted');
... ... @@ -1567,19 +1570,20 @@ define([&#39;jquery&#39;, &#39;handlebars&#39;, &#39;fastclick&#39;, &#39;proposal_app&#39;, &#39;handlebars_helpers
1567 1570 message.text('');
1568 1571  
1569 1572 // Validate form
1570   - var hasEmail = $inputEmail && $inputEmail.val().length > 0;
1571   - //var hasUsername = $inputUsername && $inputUsername.val().length > 0;
  1573 + var hasEmail = $inputEmail && validateEmail($inputEmail.val());
1572 1574  
1573 1575 var isOAUTH = $signupForm.find('#user_oauth_providers').val() !== '';
1574 1576  
1575 1577 var hasPassword = true;
1576 1578 var hasPasswordConfirmation = true;
1577 1579 var hasPasswordEquals = true;
  1580 + var hasFullname = true;
1578 1581  
1579 1582 if(! isOAUTH){
1580 1583 hasPassword = $inputPassword && $inputPassword.val().length > 0;
1581 1584 hasPasswordConfirmation = $inputPasswordConfirmation && $inputPasswordConfirmation.val().length > 0;
1582 1585 hasPasswordEquals = $inputPassword.val() === $inputPasswordConfirmation.val();
  1586 + hasFullname = $inputFullname && $inputFullname.val().length > 0;
1583 1587 }
1584 1588  
1585 1589 var hasAcceptation = $inputAcceptation.prop('checked');
... ... @@ -1593,17 +1597,12 @@ define([&#39;jquery&#39;, &#39;handlebars&#39;, &#39;fastclick&#39;, &#39;proposal_app&#39;, &#39;handlebars_helpers
1593 1597  
1594 1598 var messageErrors = [];
1595 1599  
1596   -
1597 1600 messageErrors.push('<ul>'); // start a HTML list
1598 1601  
1599 1602 if (!hasEmail){
1600 1603 messageErrors.push('<li>O e-mail é um campo obrigatório.</li>');
1601 1604 }
1602 1605  
1603   - // if (!hasUsername){
1604   - // messageErrors.push('<li>O nome de usuário é um campo obrigatório.</li>');
1605   - // }
1606   -
1607 1606 if(!isOAUTH){
1608 1607 if (!hasPassword){
1609 1608 messageErrors.push('<li>A senha é um campo obrigatório.</li>');
... ... @@ -1616,6 +1615,10 @@ define([&#39;jquery&#39;, &#39;handlebars&#39;, &#39;fastclick&#39;, &#39;proposal_app&#39;, &#39;handlebars_helpers
1616 1615 if (!hasPasswordEquals){
1617 1616 messageErrors.push('<li>A senha e confirmação da senha devem ser iguais.</li>');
1618 1617 }
  1618 +
  1619 + if (!hasFullname){
  1620 + messageErrors.push('<li>O nome é obrigatório.</li>');
  1621 + }
1619 1622 }
1620 1623  
1621 1624 if (!hasAcceptation){
... ... @@ -1623,7 +1626,7 @@ define([&#39;jquery&#39;, &#39;handlebars&#39;, &#39;fastclick&#39;, &#39;proposal_app&#39;, &#39;handlebars_helpers
1623 1626 }
1624 1627  
1625 1628 if (!hasCaptcha){
1626   - messageErrors.push('<li>O ReCaptcha é um campo obrigatório.</li>');
  1629 + messageErrors.push('<li>Você deve digitar o texto da imagem.</li>');
1627 1630 }
1628 1631  
1629 1632 messageErrors.push('</ul>'); // close the paragraph
... ... @@ -1645,7 +1648,7 @@ define([&#39;jquery&#39;, &#39;handlebars&#39;, &#39;fastclick&#39;, &#39;proposal_app&#39;, &#39;handlebars_helpers
1645 1648 login = $inputEmail.val().substr(0, indexAt);
1646 1649 login = login.toLowerCase().replace(/\W+/g,"").substr(0,25) + "-" + Date.now();
1647 1650 signup_form_data += "&login=" + login;
1648   - signup_form_data += "&name=" + $inputEmail.val();
  1651 + signup_form_data += "&name=" + $inputFullname.val();
1649 1652 $.ajax({
1650 1653 type: 'post',
1651 1654 contentType: 'application/x-www-form-urlencoded',
... ...