@using AyCode.Services.Loggers @using Microsoft.AspNetCore.Components.Authorization @using Newtonsoft.Json @using TIAM.Core.Loggers @using TIAMWebApp.Shared.Application.Interfaces @using AyCode.Interfaces.StorageHandlers; @using TIAMWebApp.Shared.Application.Utility @inject ISecureStorageHandler SecureStorageHandler @inject ISessionService SessionService @inject IUserDataService UserDataService @inject AuthenticationStateProvider AuthStateProvider @inject NavigationManager NavigationManager @inject IEnumerable LogWriters @inject IJSRuntime jsRuntime
@{ if (_isMobile) { string url1 = $"user/sysadmin"; string url2 = $"driver/transfers/{driverPermissionId}"; string url3 = $"user/messages/{userId}"; @if (IsSysAdmin) { } @if (IsDriver) { } } } @* *@ @{ string url1 = $"driver/transfers/{driverPermissionId}"; string url2 = $"driver/cars/{driverPermissionId}"; } @* *@ @{ string url3 = $"user/messages/{userId}"; }
@code { private bool collapseNavMenu = true; private bool expandSysAdminNav = false; private bool expandHotelAdminNav = false; private string? NavMenuCssClass => collapseNavMenu ? "collapse" : null; private bool userHasCompany; private bool userHasHotels; private bool IsDriver; private bool IsDevAdmin; private bool IsSysAdmin; private string? userEmail; private string? userFullName; private Guid? userId; private Guid driverPermissionId; private ILogger _logger; private bool _isMobile; MenuDisplayMode DisplayMode { get; set; } = MenuDisplayMode.Auto; Orientation Orientation { get; set; } = Orientation.Horizontal; private void NavToAcc() { var url = $"user/account/{SessionService.User.UserId}"; NavigationManager.NavigateTo(url); } protected override async Task OnInitializedAsync() { _isMobile = await jsRuntime.InvokeAsync("isDevice"); _logger = new LoggerClient(LogWriters.ToArray()); if (SessionService.User != null) { userId = SessionService.User.UserId; driverPermissionId = SessionService.DriverPersmissionId; userEmail = SessionService.User.Email; if (SessionService.User.UserModelDto.ProfileDto.FullName != null) { userFullName = SessionService.User.UserModelDto.ProfileDto.FullName; } } //_logger.Debug($"UserId: {SessionService.User.UserModelDto.Id}"); //errorokat dobott userHasCompany = SessionService.HasCompany; if (SessionService.GetHotels().Count() > 0) { userHasHotels = true; } IsDriver = SessionService.IsDriver; //_logger.Debug($"UserId: {SessionService.IsDriver}"); IsDevAdmin = SessionService.IsDevAdmin; //_logger.Debug($"UserId: {SessionService.IsDevAdmin}"); IsSysAdmin = SessionService.IsSysAdmin; //_logger.Debug($"UserId: {SessionService.IsSysAdmin}"); await base.OnInitializedAsync(); } private void ToggleNavMenu() { collapseNavMenu = !collapseNavMenu; } private void NavigateBack() { } private async Task SignOut() { bool serverResult; string userDetailsStr = await SecureStorageHandler.GetFromSecureStorageAsync(nameof(Setting.UserBasicDetails)); if (!string.IsNullOrEmpty(userDetailsStr)) { var userBasicDetail = JsonConvert.DeserializeObject(userDetailsStr); serverResult = await UserDataService.Logout(userBasicDetail?.RefreshToken); } await SecureStorageHandler.ClearAllSecureStorageAsync(); var result = await AuthStateProvider.GetAuthenticationStateAsync(); SessionService.ClearAll(); NavigationManager.NavigateTo("/"); } }