You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1 line
1.9 KiB
1 line
1.9 KiB
!function(){"use strict";function e(){}e.prototype.get=function(){var e={id:$("#user-id").val(),first_name:$("#first-name").val(),last_name:$("#last-name").val(),email:$("#email").val(),mobile_number:$("#mobile-number").val(),phone_number:$("#phone-number").val(),address:$("#address").val(),city:$("#city").val(),state:$("#state").val(),zip_code:$("#zip-code").val(),notes:$("#notes").val(),timezone:$("#timezone").val(),settings:{username:$("#username").val(),notifications:$("#user-notifications").prop("checked"),calendar_view:$("#calendar-view").val()}};return $("#password").val()&&(e.settings.password=$("#password").val()),e},e.prototype.save=function(e){var a,r;this.validate(e)?(a=GlobalVariables.baseUrl+"/index.php/backend_api/ajax_save_settings",r={csrfToken:GlobalVariables.csrfToken,type:BackendSettings.SETTINGS_USER,settings:JSON.stringify(e)},$.post(a,r).done(function(){Backend.displayNotification(EALang.settings_saved),$("#footer-user-display-name").text("Hello, "+$("#first-name").val()+" "+$("#last-name").val()+"!")})):Backend.displayNotification(EALang.user_settings_are_invalid)},e.prototype.validate=function(){$("#current-user .has-error").removeClass("has-error");try{var r=!1;if($("#current-user .required").each(function(e,a){$(a).val()||($(a).closest(".form-group").addClass("has-error"),r=!0)}),r)throw new Error(EALang.fields_are_required);if($("#password").val()!==$("#retype-password").val())throw $("#password, #retype-password").closest(".form-group").addClass("has-error"),new Error(EALang.passwords_mismatch);if(!GeneralFunctions.validateEmail($("#email").val()))throw $("#email").closest(".form-group").addClass("has-error"),new Error(EALang.invalid_email);if("true"===$("#username").attr("already-exists"))throw $("#username").closest(".form-group").addClass("has-error"),new Error(EALang.username_already_exists);return!0}catch(e){return Backend.displayNotification(e.message),!1}},window.UserSettings=e}(); |