This commit is contained in:
Loretta 2024-08-26 16:35:37 +02:00
commit 8d9b3bf072
7 changed files with 98 additions and 19 deletions

View File

@ -28,5 +28,18 @@ namespace TIAMMobileApp.Services
} }
public Guid DriverPersmissionId { get; set; } = Guid.Empty; public Guid DriverPersmissionId { get; set; } = Guid.Empty;
public async Task ClearAll()
{
SessionId = "";
User = null;
IPAddress = null;
IsAuthenticated = false;
HasCompany = false;
IsDriver = false;
IsDevAdmin = false;
IsSysAdmin = false;
DriverPersmissionId = Guid.Empty;
}
} }
} }

View File

@ -218,8 +218,7 @@
UserDataService.Logout(userBasicDetail.RefreshToken); UserDataService.Logout(userBasicDetail.RefreshToken);
AuthStateProvider.GetAuthenticationStateAsync(); AuthStateProvider.GetAuthenticationStateAsync();
SecureStorageHandler.ClearAllSecureStorageAsync(); SecureStorageHandler.ClearAllSecureStorageAsync();
sessionService.User = null; sessionService.ClearAll().Forget();
sessionService.IsAuthenticated = false;
} }
CultureInfo Culture CultureInfo Culture

View File

@ -109,9 +109,8 @@ namespace TIAMSharedUI.Shared.Components
} }
await SecureStorageHandler.ClearAllSecureStorageAsync(); await SecureStorageHandler.ClearAllSecureStorageAsync();
var result = await AuthStateProvider.GetAuthenticationStateAsync(); var result = await AuthStateProvider.GetAuthenticationStateAsync();
sessionService.User = null; await sessionService.ClearAll();
sessionService.IsAuthenticated = false;
navigationManager.NavigateTo("/"); navigationManager.NavigateTo("/");
myUser = false; myUser = false;
} }

View File

@ -11,12 +11,60 @@
@inject AuthenticationStateProvider AuthStateProvider @inject AuthenticationStateProvider AuthStateProvider
@inject NavigationManager NavigationManager @inject NavigationManager NavigationManager
@inject IEnumerable<IAcLogWriterClientBase> LogWriters @inject IEnumerable<IAcLogWriterClientBase> LogWriters
@inject IJSRuntime jsRuntime
<div class="w-100" style="height:40px; position:fixed; z-index: 10000;"> <div class="w-100" style="height:40px; position:fixed; z-index: 10000;">
<DxMenu Title="Tour I Am" ItemsPosition="ItemPosition.End" CollapseItemsToHamburgerMenu="true" <DxMenu CssClass="my-menu" SizeMode="SizeMode.Medium" Title="Tour I Am" ItemsPosition="ItemPosition.End" CollapseItemsToHamburgerMenu="true"
Orientation="Orientation" Orientation="Orientation"
DisplayMode="DisplayMode"> DisplayMode="DisplayMode"
HamburgerButtonPosition="MenuHamburgerButtonPosition.Right">
<TitleTemplate>
@{
if (_isMobile)
{
string url1 = $"user/sysadmin";
string url2 = $"driver/transfers/{driverPermissionId}";
string url3 = $"user/messages/{userId}";
<DxToolbar SizeMode="SizeMode.Medium">
<Items>
@*<DxToolbarItem Name="Item1" Text="Item1" Tooltip="Item1" />
<DxToolbarItem Name="Item2" Text="Item2" Tooltip="Item2" />
<DxToolbarItem Name="Left" BeginGroup="true" IconCssClass="tb-icon tb-icon-align-left"
Tooltip="Align Left" />
<DxToolbarItem Name="Center" IconCssClass="tb-icon tb-icon-align-center"
Tooltip="Align Center" />*@
@if (IsSysAdmin)
{
<DxToolbarItem Name="Transfers"
BeginGroup="true"
IconCssClass="fa-solid fa-face-smile"
Tooltip="Transfers"
Alignment="ToolbarItemAlignment.Right"
Click="() => NavigationManager.NavigateTo(url1)" />
}
@if (IsDriver)
{
<DxToolbarItem Name="Transfers"
BeginGroup="true"
IconCssClass="fa-solid fa-taxi"
Tooltip="My tasks"
Alignment="ToolbarItemAlignment.Right"
Click="() => NavigationManager.NavigateTo(url2)" />
}
<DxToolbarItem Name="Messages"
BeginGroup="true"
IconCssClass="fa-solid fa-envelope"
Tooltip="Messages"
Alignment="ToolbarItemAlignment.Right"
Click="() => NavigationManager.NavigateTo(url3)" />
</Items>
</DxToolbar>
}
}
</TitleTemplate>
<Items> <Items>
<DxMenuItem NavigateUrl="/" Text="Home" IconCssClass="menu-icon-home menu-icon" /> <DxMenuItem NavigateUrl="/" Text="Home" IconCssClass="menu-icon-home menu-icon" />
@{ @{
@ -24,13 +72,13 @@
{ {
<DxMenuItem NavigateUrl="user/properties" Text="My companies" IconCssClass="fa-solid fa-building" /> <DxMenuItem NavigateUrl="user/properties" Text="My companies" IconCssClass="fa-solid fa-building" />
} }
if(userHasHotels) if (userHasHotels)
{ {
<DxMenuItem NavigateUrl="user/createAndManageTransfer" IconCssClass="fa-solid fa-route" Text="Transfer" /> <DxMenuItem NavigateUrl="user/createAndManageTransfer" IconCssClass="fa-solid fa-route" Text="Transfer" />
} }
} }
@* <DxMenuItem NavigateUrl="user/media" Text="Media" IconCssClass="menu-icon-home menu-icon" /> *@ @* <DxMenuItem NavigateUrl="user/media" Text="Media" IconCssClass="menu-icon-home menu-icon" /> *@
<DxMenuItem Text="Driver" Visible="@IsDriver" IconCssClass="fa-solid fa-id-card"> <DxMenuItem Text="Driver" Visible="@IsDriver" IconCssClass="fa-solid fa-id-card">
<Items> <Items>
@ -79,7 +127,7 @@
@* <DxMenuItem NavigateUrl="user/messages" Text="Messages" IconCssClass="fa-solid fa-envelope" /> *@ @* <DxMenuItem NavigateUrl="user/messages" Text="Messages" IconCssClass="fa-solid fa-envelope" /> *@
@{ @{
string url3 = $"user/messages/{userId}"; string url3 = $"user/messages/{userId}";
<DxMenuItem NavigateUrl="@url3" IconCssClass="fa-solid fa-envelope" /> <DxMenuItem NavigateUrl="@url3" IconCssClass="fa-solid fa-envelope" />
} }
<DxMenuItem CssClass="notoggle" Position="ItemPosition.End"> <DxMenuItem CssClass="notoggle" Position="ItemPosition.End">
@ -130,6 +178,8 @@
private ILogger _logger; private ILogger _logger;
private bool _isMobile;
MenuDisplayMode DisplayMode { get; set; } = MenuDisplayMode.Auto; MenuDisplayMode DisplayMode { get; set; } = MenuDisplayMode.Auto;
Orientation Orientation { get; set; } = Orientation.Horizontal; Orientation Orientation { get; set; } = Orientation.Horizontal;
@ -139,8 +189,9 @@
NavigationManager.NavigateTo(url); NavigationManager.NavigateTo(url);
} }
protected override void OnInitialized() protected override async Task OnInitializedAsync()
{ {
_isMobile = await jsRuntime.InvokeAsync<bool>("isDevice");
_logger = new LoggerClient<AdminNavMenu>(LogWriters.ToArray()); _logger = new LoggerClient<AdminNavMenu>(LogWriters.ToArray());
//_logger.Debug($"UserId: {SessionService.User.UserModelDto.Id}"); //errorokat dobott //_logger.Debug($"UserId: {SessionService.User.UserModelDto.Id}"); //errorokat dobott
IsDevAdmin = SessionService.IsDevAdmin; IsDevAdmin = SessionService.IsDevAdmin;
@ -154,17 +205,17 @@
{ {
userHasHotels = true; userHasHotels = true;
} }
if (SessionService.User != null) if (SessionService.User != null)
{ {
userId = SessionService.User.UserId; userId = SessionService.User.UserId;
driverPermissionId = SessionService.DriverPersmissionId; driverPermissionId = SessionService.DriverPersmissionId;
userEmail = SessionService.User.Email; userEmail = SessionService.User.Email;
if (SessionService.User.UserModelDto.ProfileDto.FullName != null) if (SessionService.User.UserModelDto.ProfileDto.FullName != null)
{ {
userFullName = SessionService.User.UserModelDto.ProfileDto.FullName; userFullName = SessionService.User.UserModelDto.ProfileDto.FullName;
} }
} }
base.OnInitialized(); await base.OnInitializedAsync();
} }
private void ToggleNavMenu() private void ToggleNavMenu()
@ -189,8 +240,7 @@
await SecureStorageHandler.ClearAllSecureStorageAsync(); await SecureStorageHandler.ClearAllSecureStorageAsync();
var result = await AuthStateProvider.GetAuthenticationStateAsync(); var result = await AuthStateProvider.GetAuthenticationStateAsync();
SessionService.User = null; await SessionService.ClearAll();
SessionService.IsAuthenticated = false;
NavigationManager.NavigateTo("/"); NavigationManager.NavigateTo("/");
} }

View File

@ -415,9 +415,13 @@ select:focus-visible {
border-width: 0px; border-width: 0px;
} }
.my-menu {
}
.my-menu.dxbl-menu-horizontal > .dxbl-menu-nav .dxbl-menu-nav-bar.dxbl-menu-hamburger-btn-pos-right > .dxbl-menu-title {
width: 100%;
}
/*forms*/ /*forms*/
/* Reseting */ /* Reseting */
* { * {
margin: 0; margin: 0;

View File

@ -30,5 +30,18 @@ namespace TIAMWebApp.Client.Services
} }
public Guid DriverPersmissionId { get; set; } = Guid.Empty; public Guid DriverPersmissionId { get; set; } = Guid.Empty;
public async Task ClearAll()
{
SessionId = "";
User = null;
IPAddress = null;
IsAuthenticated = false;
HasCompany = false;
IsDriver = false;
IsDevAdmin = false;
IsSysAdmin = false;
DriverPersmissionId = Guid.Empty;
}
} }
} }

View File

@ -16,5 +16,6 @@ namespace TIAMWebApp.Shared.Application.Interfaces
public bool IsSysAdmin { get; set; } public bool IsSysAdmin { get; set; }
public List<Product> GetHotels(); public List<Product> GetHotels();
public Guid DriverPersmissionId { get; set; } public Guid DriverPersmissionId { get; set; }
public Task ClearAll();
} }
} }