Пользовательские требования к паролю при забытом пароле / восстановление пароля - Parse.com

У меня есть приложение для iOS, и с помощью Parse.com я могу позволить пользователям сбросить их, если они забудут его с помощью API Parse.com. Проблема заключается в том, что когда пользователь сбрасывает свой пароль, ни один из критериев для пароля не может быть применен (или, по крайней мере, я еще не нашел способ) или даже другое поле, чтобы подтвердить, что вы вводите правильный пароль. Мне интересно, есть ли у кого-нибудь решение для этого.

Моя ситуация в точности: когда вы вводите свой пароль для сброса, могу ли я применять минимальные критерии, такие как 1 заглавная буква, 1 цифра и 1 строчная буква? Кроме того, укажите поле подтверждения пароля ниже.

Я пытался выполнить проверку JS на стороне клиента, но безуспешно. Я включил блоки кода ниже. Спасибо!!!!

HTML

<div class="row">
<div class="medium-6 medium-offset-3 small-10 small-offset-1 columns">
  <form id='form' action='#' method='POST'>
    <label>New Password for <span id='username_label'></span></label>
    <input name="new_password" type="password" />
    <input name='utf-8' type='hidden' value='✓' />
    <input name="username" id="username" type="hidden" />
    <input name="token" id="token" type="hidden" />
    <button>Change Password</button>
  </form>
</div>

JS

<script language='javascript' type='text/javascript'>
<!--
window.onload = function() {
  var urlParams = {};
  (function () {
      var pair, // Really a match. Index 0 is the full match; 1 & 2 are the key & val.
          tokenize = /([^&=]+)=?([^&]*)/g,
          // decodeURIComponents escapes everything but will leave +s that should be ' '
          re_space = function (s) { return decodeURIComponent(s.replace(/\+/g, " ")); },
          // Substring to cut off the leading '?'
          querystring = window.location.search.substring(1);

      while (pair = tokenize.exec(querystring))
         urlParams[re_space(pair[1])] = re_space(pair[2]);
  })();

  var base = 'https://www.parse.com';
  var id = urlParams['id'];
  document.getElementById('form').setAttribute('action', base + '/apps/' + id + '/request_password_reset');
  document.getElementById('username').value = urlParams['username'];
  document.getElementById('username_label').appendChild(document.createTextNode(urlParams['username']));

  document.getElementById('token').value = urlParams['token'];
  if (urlParams['error']) {
    document.getElementById('error').appendChild(document.createTextNode(urlParams['error']));
  }
  if (urlParams['app']) {
    document.getElementById('app').appendChild(document.createTextNode(' for ' + urlParams['app']));
  }

}

$(function() {
$('#form').submit(function() {
    if (document.getElementById('new_password').length == 2)
    {
      // something is wrong
      alert('There is a problem with the first field');
      return false;
    }
    else {
      return true;
    }
  });

});

//-->

0 ответов

Другие вопросы по тегам