login_app 0.1.5

A generic login module for web apps
Documentation
<!DOCTYPE html>
<html>
  <head>
    <title>Reset Password</title>
    <meta charset="utf-8" />
    <link rel="stylesheet" href="/static/registration.css" />
  </head>
  <body>
    <form method="POST" action="/reset-password" id="reset-password-form">
        <fieldset>
            <legend>Reset Password</legend>
            <p>
                <label for="password" id="passwordLabel" class="hide-password-label">Password</label>
                <input 
                    type="text" 
                    name="password" 
                    id="password" 
                    title="Should have at least 1 number, 1 lower case, 1 upper case, and 1 special character ~ ! @ # $ % ^ & *; with minimum 8 characters"
                    placeholder="Password"
                    value="aA@12345"
                    minlength=8
                    pattern="(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[~!@#$%^&*]).{8,}"
                    onchange="match()"
                    required
                 />
             </p>
             <p>
                 <label for="repeat-password" id="repeatPasswordLabel" class="hide-repeat-password-label">Repeat-Password</label>
                 <input 
                    type="text" 
                    name="repeat-password" 
                    id="repeat-password"
                    title="Repeat the password"
                    placeholder="Repeat-Password"
                    value="aA@12345"
                    minlength=8
                    pattern="(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[~!@#$%^&*]).{8,}"
                    onkeyup="match()"
                    required
                  />
              </p>
            <input type="submit" value="Submit" id="submit-reset-password" />
            {% if has_error %}
            <p class="error_msg">{{error}}</p>
            {% endif %}            
        </fieldset>
    </form>
    <p>
      <a href="/">Home</a>
    </p>
  </body>
  <script src="/static/registration_script.js"></script>
</html>