"use strict"; // Class Definition var KTLoginGeneral = function() { var _login; var _showForm = function(form) { var cls = 'login-' + form + '-on'; var form = 'kt_login_' + form + '_form'; _login.removeClass('login-forgot-on'); _login.removeClass('login-signin-on'); _login.removeClass('login-signup-on'); _login.addClass(cls); KTUtil.animateClass(KTUtil.getById(form), 'animate__animated animate__backInUp'); } var _handleSignInForm = function() { var validation; // Init form validation rules. For more info check the FormValidation plugin's official documentation:https://formvalidation.io/ validation = FormValidation.formValidation( KTUtil.getById('kt_login_signin_form'), { fields: { username: { validators: { notEmpty: { message: 'Username is required' } } }, password: { validators: { notEmpty: { message: 'Password is required' } } } }, plugins: { trigger: new FormValidation.plugins.Trigger(), bootstrap: new FormValidation.plugins.Bootstrap() } } ); $('#kt_login_signin_submit').on('click', function (e) { e.preventDefault(); validation.validate().then(function(status) { if (status == 'Valid') { swal.fire({ text: "All is cool! Now you submit this form", icon: "success", buttonsStyling: false, confirmButtonText: "Ok, got it!", confirmButtonClass: "btn font-weight-bold btn-light-primary" }).then(function() { KTUtil.scrollTop(); }); } else { swal.fire({ text: "Sorry, looks like there are some errors detected, please try again.", icon: "error", buttonsStyling: false, confirmButtonText: "Ok, got it!", confirmButtonClass: "btn font-weight-bold btn-light" }).then(function() { KTUtil.scrollTop(); }); } }); }); // Handle forgot button $('#kt_login_forgot').on('click', function (e) { e.preventDefault(); _showForm('forgot'); }); // Handle signup $('#kt_login_signup').on('click', function (e) { e.preventDefault(); _showForm('signup'); }); } var _handleSignUpForm = function(e) { var validation; var form = KTUtil.getById('kt_login_signup_form'); // Init form validation rules. For more info check the FormValidation plugin's official documentation:https://formvalidation.io/ validation = FormValidation.formValidation( form, { fields: { fullname: { validators: { notEmpty: { message: 'Username is required' } } }, email: { validators: { notEmpty: { message: 'Email address is required' }, emailAddress: { message: 'The value is not a valid email address' } } }, password: { validators: { notEmpty: { message: 'The password is required' } } }, cpassword: { validators: { notEmpty: { message: 'The password confirmation is required' }, identical: { compare: function() { return form.querySelector('[name="password"]').value; }, message: 'The password and its confirm are not the same' } } }, agree: { validators: { notEmpty: { message: 'You must accept the terms and conditions' } } }, }, plugins: { trigger: new FormValidation.plugins.Trigger(), bootstrap: new FormValidation.plugins.Bootstrap() } } ); $('#kt_login_signup_submit').on('click', function (e) { e.preventDefault(); validation.validate().then(function(status) { if (status == 'Valid') { swal.fire({ text: "All is cool! Now you submit this form", icon: "success", buttonsStyling: false, confirmButtonText: "Ok, got it!", confirmButtonClass: "btn font-weight-bold btn-light-primary" }).then(function() { KTUtil.scrollTop(); }); } else { swal.fire({ text: "Sorry, looks like there are some errors detected, please try again.", icon: "error", buttonsStyling: false, confirmButtonText: "Ok, got it!", confirmButtonClass: "btn font-weight-bold btn-light" }).then(function() { KTUtil.scrollTop(); }); } }); }); // Handle cancel button $('#kt_login_signup_cancel').on('click', function (e) { e.preventDefault(); _showForm('signin'); }); } var _handleForgotForm = function(e) { var validation; // Init form validation rules. For more info check the FormValidation plugin's official documentation:https://formvalidation.io/ validation = FormValidation.formValidation( KTUtil.getById('kt_login_forgot_form'), { fields: { email: { validators: { notEmpty: { message: 'Email address is required' }, emailAddress: { message: 'The value is not a valid email address' } } } }, plugins: { trigger: new FormValidation.plugins.Trigger(), bootstrap: new FormValidation.plugins.Bootstrap() } } ); // Handle submit button $('#kt_login_forgot_submit').on('click', function (e) { e.preventDefault(); validation.validate().then(function(status) { if (status == 'Valid') { // Submit form KTUtil.scrollTop(); } else { swal.fire({ text: "Sorry, looks like there are some errors detected, please try again.", icon: "error", buttonsStyling: false, confirmButtonText: "Ok, got it!", confirmButtonClass: "btn font-weight-bold btn-light" }).then(function() { KTUtil.scrollTop(); }); } }); }); // Handle cancel button $('#kt_login_forgot_cancel').on('click', function (e) { e.preventDefault(); _showForm('signin'); }); } // Public Functions return { // public functions init: function() { _login = $('#kt_login'); _handleSignInForm(); _handleSignUpForm(); _handleForgotForm(); } }; }(); // Class Initialization jQuery(document).ready(function() { KTLoginGeneral.init(); });