function SetupUserManagementDataTable(n){ShowBudgets=n;let t=[{data:"Username"},{data:"Firstname"},{data:"Lastname"},{data:"Email"},{data:"Active",render:function(n){return n===!0?"Yes":"No"}}];n&&t.push({data:"BudgetTotal"});t.push({data:"CostCentersList"});ConnectUserTable=$("#UsersTable").DataTable({select:{style:"single"},ajax:{url:"/UserManagement/DataSource",dataSrc:""},rowID:"Username",columns:t});var i=$("#UsersTable_length"),r=$("#FilterCostCenterDiv"),u=$("#FilterActiveDiv");i.after(r);i.after(u);r.show();u.show();$("#UsersTable tbody").on("click","tr",function(){$(this).hasClass("selected")?($(this).removeClass("selected"),EnableUserOptionButtons(!1)):(ConnectUserTable.$("tr.selected").removeClass("selected"),$(this).addClass("selected"),EnableUserOptionButtons(!0))});ConnectUserTable.on("draw",function(){EnableUserOptionButtons(SelectionVisible())});n?$("#UserDetailsBudgetTotalRow").show():$("#UserDetailsBudgetTotalRow").hide()}function SelectionVisible(){return $("#UsersTable tr.selected").length>0}function EnableUserOptionButtons(n){$("#edit-user-button").prop("disabled",!n);$("#change-password-button").prop("disabled",!n);$("#change-cost-center-button").prop("disabled",!n);$("#delete-user-button").prop("disabled",!n)}function GotoAddUser(){}function SetupEditUser(){$("#UserDetailsFormHeading").text("Edit User");let t=GetSelectedUsername(),i=GetSelectedFirstname(),r=GetSelectedLastname(),u=GetSelectedEmail(),f=GetSelectedActive(),n=$("#form-user-details");if(n.find("#Firstname").val(i),n.find("#Lastname").val(r),n.find("#Email").val(u),n.find("#Username").val(t),n.find("#Active").prop("checked",f),n.find("#Username").data("generate",!1),$("#UserDetailsActiveRow").show(),$("#UserDetailsPasswordRow").hide(),$("#UserDetailsCostCentersRow").hide(),ShowBudgets){let t=GetSelectedBudgetTotal();n.find("#BudgetTotal").val(t)}$("#save-add-new-user-button").hide();$("#save-add-new-user-button").prop("disabled",!0);$("#save-edit-user-button").show();$("#save-edit-user-button").prop("disabled",!1)}function SetupNewUser(){$("#UserDetailsFormHeading").text("New User");var n=$("#form-user-details");n.find("#Firstname").val("");n.find("#Lastname").val("");n.find("#Email").val("");n.find("#Username").val("");n.find("#Password").val("");n.find("#Active").prop("checked",!0);n.find("#Password").val("");n.find("#CostCenter").val("");n.find("#Username").data("generate",!0);$("#UserDetailsActiveRow").hide();$("#UserDetailsPasswordRow").show();$("#UserDetailsCostCentersRow").show();ShowBudgets&&n.find("#BudgetTotal").val("");$("#save-add-new-user-button").show();$("#save-add-new-user-button").prop("disabled",!1);$("#save-edit-user-button").hide();$("#save-edit-user-button").prop("disabled",!0)}function SetupChangeCostCenters(){var n=GetSelectedCostCenterCodes();$("#NewCostCenters").val(n);$("#save-change-cost-center-button").prop("disabled",!1)}function SetupChangePassword(){var n=GetSelectedUsername();$("#change-password-header").html("Change Password for "+n);$("#save-change-password-button").prop("disabled",!1)}function SetupDeleteUser(){var n=GetSelectedUsername();$("#delete-user-header").html("Delete User: "+n);$("#confirm-delete-user-button").prop("disabled",!1)}function GetSelectedUsername(){return $("#UsersTable tr.selected td:first").html()}function GetSelectedFirstname(){return $("#UsersTable tr.selected td").eq(1).html()}function GetSelectedLastname(){return $("#UsersTable tr.selected td").eq(2).html()}function GetSelectedEmail(){return $("#UsersTable tr.selected td").eq(3).html()}function GetSelectedActive(){return $("#UsersTable tr.selected td").eq(4).html()=="Yes"}function GetSelectedBudgetTotal(){return GetSelectedRowData().BudgetTotal}function GetSelectedCostCenterCodes(){return GetSelectedRowData().CostCenterCodes}function GetSelectedRowData(){return ConnectUserTable.row($("#UsersTable tr.selected")).data()}function GotoUserCallback(n){validateLogin(n);$("#modal-connect-body").html(n);$(modal).show();history.pushState({page:"user"},null,"#user")}function FilterUsersByCostCenter(n){var t=$(n).val();let i=ShowBudgets?6:5;ConnectUserTable.column(i).search(t).draw()}function FilterUsersByActive(n){var t=$(n).val();ConnectUserTable.column(4).search(t).draw()}function GenerateUsername(){var n,t,i;$("#Username").data("generate")===!0&&(n=$("#Firstname").val(),t=$("#Lastname").val(),n=n.replace(/[^A-Z0-9]/ig,""),t=t.replace(/[^A-Z0-9]/ig,""),n.length>0&&t.length>0?(i=n+"."+t,doAjaxRequest("/UserManagement/CheckUsernameAvailable","GenerateUsernameCallback",{username:i})):$("#Username").val(""))}function GenerateUsernameCallback(n){$("#Username").val(n.AvailableName)}function SaveNewUser(){try{var n=$("#form-user-details");$(n).valid()&&($("#save-add-new-user-button").prop("disabled",!0),doAjaxRequest("/UserManagement/SaveNewUser","SaveNewUserCallback",$(n).serialize(),null,"#loader-saveuser",n.attr("method")))}catch(t){location.reload()}}function SaveNewUserCallback(n){$("#save-add-new-user-button").prop("disabled",!1);n.success=="true"&&($("#user-details-modal").modal("hide"),ConnectUserTable.ajax.reload(null,!1))}function SaveEditUser(){try{var n=$("#form-user-details");$(n).valid()&&($("#save-edit-user-button").prop("disabled",!0),doAjaxRequest("/UserManagement/SaveEditUser","SaveEditUserCallback",$(n).serialize(),null,"#loader-saveuser",n.attr("method")))}catch(t){location.reload()}}function SaveEditUserCallback(n){n.success=="true"&&($("#user-details-modal").modal("hide"),ConnectUserTable.ajax.reload(null,!1));$("#save-edit-user-button").prop("disabled",!1)}function ChangePassword(){var n=$("#form-change-password"),t,i;n.valid()&&(t=GetSelectedUsername(),i=$("#NewPassword").val(),$("#save-change-password-button").prop("disabled",!0),doAjaxRequest("/UserManagement/ChangePassword","ChangePasswordCallback",{username:t,password:i},null,"#loader-change-password",n.attr("method")))}function ChangePasswordCallback(n){n.success=="true"&&($("#change-password-modal").modal("hide"),$("#form-change-password").closest("form").find("input[type=password]").val(""));$("#save-change-password-button").prop("disabled",!1)}function ChangeUserCostCenters(){var n=$("#form-change-cost-center"),t,i;n.valid()&&(t=GetSelectedUsername(),i=$("#NewCostCenters").val(),$("#save-change-cost-center-button").prop("disabled",!0),doAjaxRequest("/UserManagement/ChangeCostCenters","ChangeUserCostCenterCallback",{username:t,newCostCenters:i},null,"#loader-change-cost-Center",n.attr("method")))}function ChangeUserCostCenterCallback(n){n.success=="true"&&($("#change-cost-center-modal").modal("hide"),$("#form-change-cost-center").closest("form").find("input[type=select]").val(""),ConnectUserTable.ajax.reload(null,!1));$("#save-change-cost-center-button").prop("disabled",!1)}function CancelDeleteUser(){$("#delete-user-modal").modal("hide")}function DeleteUser(){var n=GetSelectedUsername();$("#confirm-delete-user-button").prop("disabled",!0);doAjaxRequest("/UserManagement/DeleteUser","DeleteUserCallback",{username:n},null,"#loader-delete-user","POST")}function DeleteUserCallback(n){n.success=="true"&&($("#delete-user-modal").modal("hide"),ConnectUserTable.ajax.reload(null,!1));$("#confirm-delete-user-button").prop("disabled",!1)}var ConnectUserTable,ShowBudgets