/** * Account Settings function js * @since cms:1.4.3.2&1.4.3.3 web:1.0 **/ var SETTINGS = {}; // Init function of page $(document).ready(function () { //Check if user is logged in COMMON.checkAuth(false); SETTINGS.initScreen(); $('#dspPwdUpd1').click(SETTINGS.dspPwdUpd1_Click); }); // Process changing password SETTINGS.dspPwdUpd1_Click = function (e) { e.preventDefault(); var isOK = true; var msgError = $('#main-error-message'); // Check validation if (!ValidationUtil.CheckRequiredForText(SETTINGS.getCurrentPassword())) { isOK = false; msgError.html(COMMON.format(I18N.i18nText('msgEssential'), I18N.i18nText('txtPwdCurr')).toString()); msgError.show(); } else { if (!ValidationUtil.CheckRequiredForText(SETTINGS.getNewPassword())) { isOK = false; msgError.html(COMMON.format(I18N.i18nText('msgEssential'), I18N.i18nText('txtPwdNew')).toString()); msgError.show(); } else if (!ValidationUtil.CheckRequiredForText(SETTINGS.getNewPasswordRe())) { isOK = false; msgError.html(COMMON.format(I18N.i18nText('msgEssential'), I18N.i18nText('txtPwdNewRe')).toString()); msgError.show(); } else { if (SETTINGS.getNewPassword() != SETTINGS.getNewPasswordRe()) { isOK = false; msgError.html(I18N.i18nText('msgPwdNotMatch')); msgError.show(); } } } if (isOK) { // Check min length if (!ValidationUtil.CheckMinLengthForByte(SETTINGS.getNewPassword(), 6)) { isOK = false; msgError.html(I18N.i18nText('msgInvaildLength')); msgError.show(); } // Check max length if (!ValidationUtil.CheckMaxLengthForByte(SETTINGS.getNewPassword(), 16)) { isOK = false; msgError.html(I18N.i18nText('msgInvaildLength')); msgError.show(); } // Check at least 3 consecutive characters if (ValidationUtil.HasSeqChar(SETTINGS.getNewPassword(), 3)) { isOK = false; msgError.html(I18N.i18nText('msgHasSeqChar')); msgError.show(); } // Check 4 same characters in before password if (ValidationUtil.ContainSameSeqChar(SETTINGS.getCurrentPassword(), SETTINGS.getNewPassword(), 4)) { isOK = false; msgError.html(I18N.i18nText('msgContainSameSeqChar')); msgError.show(); } } // Do changing password if (isOK) { var params = { sid: ClientData.userInfo_sid(), loginId: ClientData.userInfo_loginId_session(), password: SETTINGS.getCurrentPassword(), newPassword: SETTINGS.getNewPassword(), language: I18N.getCurrentLanguage(), appId: 4, }; const url = COMMON.format(ClientData.conf_checkApiUrl(), ClientData.userInfo_accountPath()) + CONSTANT.URL.CMS.API.PASSWORD_CHANGE; COMMON.cmsAjax(url, params, false, SETTINGS.avwCmsApi_passwordChange_success, SETTINGS.avwCmsApi_passwordChange_fail); } else { //alert('error'); } }; SETTINGS.avwCmsApi_passwordChange_success = function (data) { // OK var msgError = $('#main-error-message'); if (data.httpStatus != CONSTANT.HTTP_STATUS.OK) { msgError.html(I18N.i18nText('msgPwdChangeNG')); msgError.show(); } else { msgError.html(''); $('#txtPwdCur').val(''); $('#txtPwdNew').val(''); $('#txtPwdNewRe').val(''); /* show messages */ COMMON.displayAlert('msgPwdChangeOK'); } }; SETTINGS.avwCmsApi_passwordChange_fail = function (xhr, b, c) { /* show error messages */ var msgError = $('#main-error-message'); if (xhr.errorMessage && xhr.httpStatus != 0) { msgError.html(xhr.errorMessage); } else { msgError.html(I18N.i18nText('msgPwdChangeNG')); } msgError.show(); }; /* ---------------------------------------------------------------------------- Event groups [ end ] ---------------------------------------------------------------------------- */ // Get input current password SETTINGS.getCurrentPassword = function () { return $('#txtPwdCur').val(); }; // Get input new password SETTINGS.getNewPassword = function () { return $('#txtPwdNew').val(); }; // Get input new password SETTINGS.getNewPasswordRe = function () { return $('#txtPwdNewRe').val(); }; // Initalize screen SETTINGS.initScreen = function () { $('#includedHeader').load('../common/html/header.html', function () { I18N.initi18n(); HEADER.init(); }); $('#includedConfirmModal').load('../common/html/confirmModal.html', function () { I18N.initi18n(); }); // Login ID $('#txtLoginId').text(ClientData.userInfo_loginId_session()); // Account Path $('#txtLoginAccPath').text(ClientData.userInfo_accountPath_session()); // Recent login date $('#txtLastLoginTime').text(ClientData.userInfo_lastLoginTime()); };