mirror of
https://github.com/pierre42100/ComunicWeb
synced 2024-12-27 11:18:50 +00:00
95 lines
1.9 KiB
JavaScript
95 lines
1.9 KiB
JavaScript
/**
|
|
* Prompt user email step
|
|
*
|
|
* @author Pierre HUBERT
|
|
*/
|
|
|
|
ComunicWeb.pages.passwordForgotten.promptEmail = {
|
|
|
|
/**
|
|
* Prompt user email
|
|
*
|
|
* @param {HTMLElement} target The target for the form
|
|
* @param {Function} callback Function to call once the user has entered
|
|
* his email
|
|
*/
|
|
open: function(target, callback){
|
|
|
|
//Create the form
|
|
var form = createElem2({
|
|
appendTo: target,
|
|
type: "form"
|
|
});
|
|
|
|
//Add message target
|
|
var messageTarget = createElem2({
|
|
appendTo: form,
|
|
type: "div"
|
|
});
|
|
|
|
//Add field
|
|
var input = createFormGroup({
|
|
target: form,
|
|
label: "Your email address",
|
|
name: "email",
|
|
placeholder: "Email address",
|
|
type: "email"
|
|
});
|
|
|
|
//Add submit button
|
|
var submit = createElem2({
|
|
appendTo: form,
|
|
type: "input",
|
|
class: "btn btn-primary",
|
|
elemType: "submit",
|
|
value: "Submit"
|
|
});
|
|
|
|
//Create submit function
|
|
var lock = false;
|
|
var submit_form = function(){
|
|
|
|
//Check if the function is locked
|
|
if(lock)
|
|
return;
|
|
|
|
//Empty messages target
|
|
emptyElem(messageTarget);
|
|
|
|
//Check given email
|
|
if(!ComunicWeb.common.formChecker.checkInput(input, true))
|
|
return notify("Please specify a valid email address !", "danger");
|
|
|
|
//Lock submit button
|
|
lock = true;
|
|
|
|
//Get the email
|
|
var email = input.value;
|
|
|
|
//Check whether the email is linked to an account or not
|
|
ComunicWeb.components.account.interface.existsMail(input.value, function(result){
|
|
|
|
//Unlock the form
|
|
lock = false;
|
|
|
|
//Check if the email is valid
|
|
if(!result.exists){
|
|
messageTarget.appendChild(ComunicWeb.common.messages.createCalloutElem("Error", "Specified email address not found !", "danger"));
|
|
return;
|
|
}
|
|
|
|
//Else the email exists
|
|
emptyElem(form);
|
|
form.remove();
|
|
callback(email);
|
|
});
|
|
}
|
|
|
|
//Catch form submission
|
|
form.onsubmit = function(){
|
|
submit_form();
|
|
return false;
|
|
}
|
|
},
|
|
|
|
} |