{"version":3,"sources":["webpack://metronic/../demo1/src/js/pages/custom/login/login-4.js"],"names":[],"mappings":";;;;;;AAAa;;AAEb;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,WAAW,2BAA2B;AACtC;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA,OAAO;AACP,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA,OAAO;AACP;AACA,WAAW;AACX;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL,OAAO;AACP;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL,OAAO;AACP;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,WAAW;AACX;;AAEA;AACA,qDAAqD;;AAErD;AACA;AACA;AACA;;AAEA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,OAAO;AACP;AACA,KAAK;AACL;;AAEA,gBAAgB;AAChB,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA,mBAAmB;AACnB,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA,IAAI;AACJ,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA,CAAC","file":"js/pages/custom/login/login-4.js","sourcesContent":["\"use strict\";\r\n\r\n// Class Definition\r\nvar KTLogin = function() {\r\n\tvar _buttonSpinnerClasses = 'spinner spinner-right spinner-white pr-15';\r\n\r\n\tvar _handleFormSignin = function() {\r\n\t\tvar form = KTUtil.getById('kt_login_singin_form');\r\n\t\tvar formSubmitUrl = KTUtil.attr(form, 'action');\r\n\t\tvar formSubmitButton = KTUtil.getById('kt_login_singin_form_submit_button');\r\n\r\n\t\tif (!form) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tFormValidation\r\n\t\t .formValidation(\r\n\t\t form,\r\n\t\t {\r\n\t\t fields: {\r\n\t\t\t\t\t\tusername: {\r\n\t\t\t\t\t\t\tvalidators: {\r\n\t\t\t\t\t\t\t\tnotEmpty: {\r\n\t\t\t\t\t\t\t\t\tmessage: 'Username is required'\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\tpassword: {\r\n\t\t\t\t\t\t\tvalidators: {\r\n\t\t\t\t\t\t\t\tnotEmpty: {\r\n\t\t\t\t\t\t\t\t\tmessage: 'Password is required'\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t },\r\n\t\t plugins: {\r\n\t\t\t\t\t\ttrigger: new FormValidation.plugins.Trigger(),\r\n\t\t\t\t\t\tsubmitButton: new FormValidation.plugins.SubmitButton(),\r\n\t \t\t//defaultSubmit: new FormValidation.plugins.DefaultSubmit(), // Uncomment this line to enable normal button submit after form validation\r\n\t\t\t\t\t\tbootstrap: new FormValidation.plugins.Bootstrap({\r\n\t\t\t\t\t\t//\teleInvalidClass: '', // Repace with uncomment to hide bootstrap validation icons\r\n\t\t\t\t\t\t//\teleValidClass: '', // Repace with uncomment to hide bootstrap validation icons\r\n\t\t\t\t\t\t})\r\n\t\t }\r\n\t\t }\r\n\t\t )\r\n\t\t .on('core.form.valid', function() {\r\n\t\t\t\t// Show loading state on button\r\n\t\t\t\tKTUtil.btnWait(formSubmitButton, _buttonSpinnerClasses, \"Please wait\");\r\n\r\n\t\t\t\t// Simulate Ajax request\r\n\t\t\t\tsetTimeout(function() {\r\n\t\t\t\t\tKTUtil.btnRelease(formSubmitButton);\r\n\t\t\t\t}, 2000);\r\n\r\n\t\t\t\t// Form Validation & Ajax Submission: https://formvalidation.io/guide/examples/using-ajax-to-submit-the-form\r\n\t\t\t\t/**\r\n\t\t FormValidation.utils.fetch(formSubmitUrl, {\r\n\t\t method: 'POST',\r\n\t\t\t\t\tdataType: 'json',\r\n\t\t params: {\r\n\t\t name: form.querySelector('[name=\"username\"]').value,\r\n\t\t email: form.querySelector('[name=\"password\"]').value,\r\n\t\t },\r\n\t\t }).then(function(response) { // Return valid JSON\r\n\t\t\t\t\t// Release button\r\n\t\t\t\t\tKTUtil.btnRelease(formSubmitButton);\r\n\r\n\t\t\t\t\tif (response && typeof response === 'object' && response.status && response.status == 'success') {\r\n\t\t\t\t\t\tSwal.fire({\r\n\t\t\t text: \"All is cool! Now you submit this form\",\r\n\t\t\t icon: \"success\",\r\n\t\t\t buttonsStyling: false,\r\n\t\t\t\t\t\t\tconfirmButtonText: \"Ok, got it!\",\r\n\t\t\t\t\t\t\tcustomClass: {\r\n\t\t\t\t\t\t\t\tconfirmButton: \"btn font-weight-bold btn-light-primary\"\r\n\t\t\t\t\t\t\t}\r\n\t\t\t }).then(function() {\r\n\t\t\t\t\t\t\tKTUtil.scrollTop();\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tSwal.fire({\r\n\t\t\t text: \"Sorry, something went wrong, please try again.\",\r\n\t\t\t icon: \"error\",\r\n\t\t\t buttonsStyling: false,\r\n\t\t\t\t\t\t\tconfirmButtonText: \"Ok, got it!\",\r\n\t\t\t\t\t\t\tcustomClass: {\r\n\t\t\t\t\t\t\t\tconfirmButton: \"btn font-weight-bold btn-light-primary\"\r\n\t\t\t\t\t\t\t}\r\n\t\t\t }).then(function() {\r\n\t\t\t\t\t\t\tKTUtil.scrollTop();\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t });\r\n\t\t\t\t**/\r\n\t\t })\r\n\t\t\t.on('core.form.invalid', function() {\r\n\t\t\t\tSwal.fire({\r\n\t\t\t\t\ttext: \"Sorry, looks like there are some errors detected, please try again.\",\r\n\t\t\t\t\ticon: \"error\",\r\n\t\t\t\t\tbuttonsStyling: false,\r\n\t\t\t\t\tconfirmButtonText: \"Ok, got it!\",\r\n\t\t\t\t\tcustomClass: {\r\n\t\t\t\t\t\tconfirmButton: \"btn font-weight-bold btn-light-primary\"\r\n\t\t\t\t\t}\r\n\t\t\t\t}).then(function() {\r\n\t\t\t\t\tKTUtil.scrollTop();\r\n\t\t\t\t});\r\n\t\t });\r\n }\r\n\r\n\tvar _handleFormForgot = function() {\r\n\t\tvar form = KTUtil.getById('kt_login_forgot_form');\r\n\t\tvar formSubmitUrl = KTUtil.attr(form, 'action');\r\n\t\tvar formSubmitButton = KTUtil.getById('kt_login_forgot_form_submit_button');\r\n\r\n\t\tif (!form) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tFormValidation\r\n\t\t .formValidation(\r\n\t\t form,\r\n\t\t {\r\n\t\t fields: {\r\n\t\t\t\t\t\temail: {\r\n\t\t\t\t\t\t\tvalidators: {\r\n\t\t\t\t\t\t\t\tnotEmpty: {\r\n\t\t\t\t\t\t\t\t\tmessage: 'Email is required'\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\temailAddress: {\r\n\t\t\t\t\t\t\t\t\tmessage: 'The value is not a valid email address'\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t },\r\n\t\t plugins: {\r\n\t\t\t\t\t\ttrigger: new FormValidation.plugins.Trigger(),\r\n\t\t\t\t\t\tsubmitButton: new FormValidation.plugins.SubmitButton(),\r\n\t \t\t//defaultSubmit: new FormValidation.plugins.DefaultSubmit(), // Uncomment this line to enable normal button submit after form validation\r\n\t\t\t\t\t\tbootstrap: new FormValidation.plugins.Bootstrap({\r\n\t\t\t\t\t\t//\teleInvalidClass: '', // Repace with uncomment to hide bootstrap validation icons\r\n\t\t\t\t\t\t//\teleValidClass: '', // Repace with uncomment to hide bootstrap validation icons\r\n\t\t\t\t\t\t})\r\n\t\t }\r\n\t\t }\r\n\t\t )\r\n\t\t .on('core.form.valid', function() {\r\n\t\t\t\t// Show loading state on button\r\n\t\t\t\tKTUtil.btnWait(formSubmitButton, _buttonSpinnerClasses, \"Please wait\");\r\n\r\n\t\t\t\t// Simulate Ajax request\r\n\t\t\t\tsetTimeout(function() {\r\n\t\t\t\t\tKTUtil.btnRelease(formSubmitButton);\r\n\t\t\t\t}, 2000);\r\n\t\t })\r\n\t\t\t.on('core.form.invalid', function() {\r\n\t\t\t\tSwal.fire({\r\n\t\t\t\t\ttext: \"Sorry, looks like there are some errors detected, please try again.\",\r\n\t\t\t\t\ticon: \"error\",\r\n\t\t\t\t\tbuttonsStyling: false,\r\n\t\t\t\t\tconfirmButtonText: \"Ok, got it!\",\r\n\t\t\t\t\tcustomClass: {\r\n\t\t\t\t\t\tconfirmButton: \"btn font-weight-bold btn-light-primary\"\r\n\t\t\t\t\t}\r\n\t\t\t\t}).then(function() {\r\n\t\t\t\t\tKTUtil.scrollTop();\r\n\t\t\t\t});\r\n\t\t });\r\n }\r\n\r\n\tvar _handleFormSignup = function() {\r\n\t\t// Base elements\r\n\t\tvar wizardEl = KTUtil.getById('kt_login');\r\n\t\tvar form = KTUtil.getById('kt_login_signup_form');\r\n\t\tvar wizardObj;\r\n\t\tvar validations = [];\r\n\r\n\t\tif (!form) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t// Init form validation rules. For more info check the FormValidation plugin's official documentation:https://formvalidation.io/\r\n\t\t// Step 1\r\n\t\tvalidations.push(FormValidation.formValidation(\r\n\t\t\tform,\r\n\t\t\t{\r\n\t\t\t\tfields: {\r\n\t\t\t\t\tfname: {\r\n\t\t\t\t\t\tvalidators: {\r\n\t\t\t\t\t\t\tnotEmpty: {\r\n\t\t\t\t\t\t\t\tmessage: 'First name is required'\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t},\r\n\t\t\t\t\tlname: {\r\n\t\t\t\t\t\tvalidators: {\r\n\t\t\t\t\t\t\tnotEmpty: {\r\n\t\t\t\t\t\t\t\tmessage: 'Last Name is required'\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t},\r\n\t\t\t\t\tphone: {\r\n\t\t\t\t\t\tvalidators: {\r\n\t\t\t\t\t\t\tnotEmpty: {\r\n\t\t\t\t\t\t\t\tmessage: 'Phone is required'\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t},\r\n\t\t\t\t\temail: {\r\n\t\t\t\t\t\tvalidators: {\r\n\t\t\t\t\t\t\tnotEmpty: {\r\n\t\t\t\t\t\t\t\tmessage: 'Email is required'\r\n\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\temailAddress: {\r\n\t\t\t\t\t\t\t\tmessage: 'The value is not a valid email address'\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tplugins: {\r\n\t\t\t\t\ttrigger: new FormValidation.plugins.Trigger(),\r\n\t\t\t\t\t// Bootstrap Framework Integration\r\n\t\t\t\t\tbootstrap: new FormValidation.plugins.Bootstrap({\r\n\t\t\t\t\t\t//eleInvalidClass: '',\r\n\t\t\t\t\t\teleValidClass: '',\r\n\t\t\t\t\t})\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t));\r\n\r\n\t\t// Step 2\r\n\t\tvalidations.push(FormValidation.formValidation(\r\n\t\t\tform,\r\n\t\t\t{\r\n\t\t\t\tfields: {\r\n\t\t\t\t\taddress1: {\r\n\t\t\t\t\t\tvalidators: {\r\n\t\t\t\t\t\t\tnotEmpty: {\r\n\t\t\t\t\t\t\t\tmessage: 'Address is required'\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t},\r\n\t\t\t\t\tpostcode: {\r\n\t\t\t\t\t\tvalidators: {\r\n\t\t\t\t\t\t\tnotEmpty: {\r\n\t\t\t\t\t\t\t\tmessage: 'Postcode is required'\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t},\r\n\t\t\t\t\tcity: {\r\n\t\t\t\t\t\tvalidators: {\r\n\t\t\t\t\t\t\tnotEmpty: {\r\n\t\t\t\t\t\t\t\tmessage: 'City is required'\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t},\r\n\t\t\t\t\tstate: {\r\n\t\t\t\t\t\tvalidators: {\r\n\t\t\t\t\t\t\tnotEmpty: {\r\n\t\t\t\t\t\t\t\tmessage: 'State is required'\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t},\r\n\t\t\t\t\tcountry: {\r\n\t\t\t\t\t\tvalidators: {\r\n\t\t\t\t\t\t\tnotEmpty: {\r\n\t\t\t\t\t\t\t\tmessage: 'Country is required'\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tplugins: {\r\n\t\t\t\t\ttrigger: new FormValidation.plugins.Trigger(),\r\n\t\t\t\t\t// Bootstrap Framework Integration\r\n\t\t\t\t\tbootstrap: new FormValidation.plugins.Bootstrap({\r\n\t\t\t\t\t\t//eleInvalidClass: '',\r\n\t\t\t\t\t\teleValidClass: '',\r\n\t\t\t\t\t})\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t));\r\n\r\n\t\t// Initialize form wizard\r\n\t\twizardObj = new KTWizard(wizardEl, {\r\n\t\t\tstartStep: 1, // initial active step number\r\n\t\t\tclickableSteps: false // allow step clicking\r\n\t\t});\r\n\r\n\t\t// Validation before going to next page\r\n\t\twizardObj.on('change', function (wizard) {\r\n\t\t\tif (wizard.getStep() > wizard.getNewStep()) {\r\n\t\t\t\treturn; // Skip if stepped back\r\n\t\t\t}\r\n\r\n\t\t\t// Validate form before change wizard step\r\n\t\t\tvar validator = validations[wizard.getStep() - 1]; // get validator for currnt step\r\n\r\n\t\t\tif (validator) {\r\n\t\t\t\tvalidator.validate().then(function (status) {\r\n\t\t\t\t\tif (status == 'Valid') {\r\n\t\t\t\t\t\twizard.goTo(wizard.getNewStep());\r\n\r\n\t\t\t\t\t\tKTUtil.scrollTop();\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\t\ttext: \"Sorry, looks like there are some errors detected, please try again.\",\r\n\t\t\t\t\t\t\ticon: \"error\",\r\n\t\t\t\t\t\t\tbuttonsStyling: false,\r\n\t\t\t\t\t\t\tconfirmButtonText: \"Ok, got it!\",\r\n\t\t\t\t\t\t\tcustomClass: {\r\n\t\t\t\t\t\t\t\tconfirmButton: \"btn font-weight-bold btn-light\"\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}).then(function () {\r\n\t\t\t\t\t\t\tKTUtil.scrollTop();\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\treturn false; // Do not change wizard step, further action will be handled by he validator\r\n\t\t});\r\n\r\n\t\t// Change event\r\n\t\twizardObj.on('changed', function (wizard) {\r\n\t\t\tKTUtil.scrollTop();\r\n\t\t});\r\n\r\n\t\t// Submit event\r\n\t\twizardObj.on('submit', function (wizard) {\r\n\t\t\tSwal.fire({\r\n\t\t\t\ttext: \"All is good! Please confirm the form submission.\",\r\n\t\t\t\ticon: \"success\",\r\n\t\t\t\tshowCancelButton: true,\r\n\t\t\t\tbuttonsStyling: false,\r\n\t\t\t\tconfirmButtonText: \"Yes, submit!\",\r\n\t\t\t\tcancelButtonText: \"No, cancel\",\r\n\t\t\t\tcustomClass: {\r\n\t\t\t\t\tconfirmButton: \"btn font-weight-bold btn-primary\",\r\n\t\t\t\t\tcancelButton: \"btn font-weight-bold btn-default\"\r\n\t\t\t\t}\r\n\t\t\t}).then(function (result) {\r\n\t\t\t\tif (result.value) {\r\n\t\t\t\t\tform.submit(); // Submit form\r\n\t\t\t\t} else if (result.dismiss === 'cancel') {\r\n\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\ttext: \"Your form has not been submitted!.\",\r\n\t\t\t\t\t\ticon: \"error\",\r\n\t\t\t\t\t\tbuttonsStyling: false,\r\n\t\t\t\t\t\tconfirmButtonText: \"Ok, got it!\",\r\n\t\t\t\t\t\tcustomClass: {\r\n\t\t\t\t\t\t\tconfirmButton: \"btn font-weight-bold btn-primary\",\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t});\r\n }\r\n\r\n // Public Functions\r\n return {\r\n init: function() {\r\n _handleFormSignin();\r\n\t\t\t_handleFormForgot();\r\n\t\t\t_handleFormSignup();\r\n }\r\n };\r\n}();\r\n\r\n// Class Initialization\r\njQuery(document).ready(function() {\r\n KTLogin.init();\r\n});\r\n"],"sourceRoot":""}