Hello,
I am using the Universal Login (New experience) with customized login page without Lock based on the “Default Template” HTML. The template does not have a link to the Reset Password like the Lock version of the template.
There is a Password Reset customize link so surely there is a way to generate this link.
How do I get the URL with correct querystring state to add a Password Reset link to the Customized Login Page?
Thanks,
John
Hi @johnatkind ,
Welcome to the Auth0 Community Forum!
Can you explain how you have customized the new UL experience? It should have a pw reset link by default. A screenshot may be helpful to explain the problem further.
Thanks,
Dan
Hi @dan.woda ,
I am trying to customize the Default template called Custom Login Form.
The template does not seem to have a Reset Password link by default. I am not doing anything special other than visual changes, e.g. adding a header and footer, and removing the Google Login and Signup buttons.
Unmodified default template below:
Sign In with Auth0
body, html {
height: 100%;
background-color: #f9f9f9 ;
}
.login-container {
position: relative;
height: 100%;
}
.login-box {
position: absolute;
top: 50%;
transform: translateY(-50%);
padding: 15px;
background-color: #fff;
box-shadow: 0px 5px 5px #ccc;
border-radius: 5px;
border-top: 1px solid #e9e9e9;
}
.login-header {
text-align: center;
}
.login-header img {
width: 75px;
}
#error-message {
display: none;
}
</style>
<body>
<div class="login-container">
<div class="col-xs-12 col-sm-4 col-sm-offset-4 login-box">
<div class="login-header">
<img src="https://cdn.auth0.com/styleguide/1.0.0/img/badge.svg"/>
<h3>Welcome</h3>
<h5>PLEASE LOG IN</h5>
</div>
<div id="error-message" class="alert alert-danger"></div>
<form onsubmit="return false;" method="post">
<div class="form-group">
<label for="name">Email</label>
<input
type="email"
class="form-control"
id="email"
placeholder="Enter your email">
</div>
<div class="form-group">
<label for="name">Password</label>
<input
type="password"
class="form-control"
id="password"
placeholder="Enter your password">
</div>
<button
type="submit"
id="btn-login"
class="btn btn-primary btn-block">
Log In
</button>
<button
type="button"
id="btn-signup"
class="btn btn-default btn-block">
Sign Up
</button>
<hr>
<button
type="button"
id="btn-google"
class="btn btn-default btn-danger btn-block">
Log In with Google
</button>
</form>
</div>
</div>
<!--[if IE 8]>
<script src="//cdnjs.cloudflare.com/ajax/libs/ie8/0.2.5/ie8.js"></script>
<![endif]-->
<!--[if lte IE 9]>
<script src="https://cdn.auth0.com/js/polyfills/1.0/base64.min.js"></script>
<script src="https://cdn.auth0.com/js/polyfills/1.0/es5-shim.min.js"></script>
<![endif]-->
<script src="https://cdn.auth0.com/js/auth0/9.11.2/auth0.min.js"></script>
<script src="https://cdn.auth0.com/js/polyfills/1.0/object-assign.min.js"></script>
<script>
window.addEventListener('load', function() {
var config = JSON.parse(
decodeURIComponent(escape(window.atob('@@config@@')))
);
var params = Object.assign({
/* additional configuration needed for use of custom domains
overrides: {
__tenant: config.auth0Tenant,
__token_issuer: 'YOUR_CUSTOM_DOMAIN'
}, */
domain: config.auth0Domain,
clientID: config.clientID,
redirectUri: config.callbackURL,
responseType: 'code'
}, config.internalOptions);
var webAuth = new auth0.WebAuth(params);
var databaseConnection = 'Username-Password-Authentication';
function login(e) {
e.preventDefault();
var username = document.getElementById('email').value;
var password = document.getElementById('password').value;
webAuth.login({
realm: databaseConnection,
username: username,
password: password
}, function(err) {
if (err) displayError(err);
});
}
function signup() {
var email = document.getElementById('email').value;
var password = document.getElementById('password').value;
webAuth.redirect.signupAndLogin({
connection: databaseConnection,
email: email,
password: password
}, function(err) {
if (err) displayError(err);
});
}
function loginWithGoogle() {
webAuth.authorize({
connection: 'google-oauth2'
}, function(err) {
if (err) displayError(err);
});
}
function displayError(err) {
var errorMessage = document.getElementById('error-message');
errorMessage.innerHTML = err.description;
errorMessage.style.display = 'block';
}
document.getElementById('btn-login').addEventListener('click', login);
document.getElementById('btn-google').addEventListener('click', loginWithGoogle);
document.getElementById('btn-signup').addEventListener('click', signup);
});
</script>
</body>
</html>
Thanks for your help.
Kind regards,
John
Here is a screenshot of the preview of the default template:
Hi @dan.woda ! Any thoughts on the above? Thanks!
Hi @johnatkind ,
For clarification, that in not the new universal login experience. This would be a custom login form, and is it’s own entity.
With that being said, forgot pw link will have to be implemented by you in a custom login form. It shouldn’t be too complicated, as it is just a call to an endpoint.
Take a look at this thread for more info:
I just finished up writing our Custom Login UI which now works great using the Auth0 SDK. However, I went to implement the password reset page as well under Hosted Pages, but I cannot figure out how to initiate a password-reset from our Login page. We have an anchor ( ) but I have no idea what URL to go to to begin the reset process. This seems like something very simple so I’m not sure why its not documented on the Password Reset page in the docs. Could someone explain to me how it works?
Thank…
Hope this helps!
Thanks,
Dan
Thanks @dan.woda . That’s what I needed.
1 Like
dan.woda
Closed
October 17, 2019, 3:26pm
9
This topic was automatically closed 15 days after the last reply. New replies are no longer allowed.