restricting access to admin

This commit is contained in:
Adam 2024-08-05 10:07:55 +02:00
parent 23203d6fbf
commit e0163353ef
19 changed files with 90 additions and 61 deletions

View File

@ -7,10 +7,10 @@
@using TIAMSharedUI.Pages.Components;
@using TIAMSharedUI.Pages.User.CardComponents
<PageTitle>Login</PageTitle>
<PageTitle>Forgot password</PageTitle>
<div class="text-center m-5">
<h1>Login</h1>
<h1>Renew password</h1>
<h2 style="font-size:small">Good to see you again!</h2>
</div>
@ -28,7 +28,7 @@
<div class="text-center mt-4 name">
@_localizer["LoginTitleText"]
</div>
<UserCardComponent IsForgotten="true" />
<UserCardComponent Context="user" IsForgotten="true" />
<div class="text-center fs-6">
No account yet? <a href="register">Sign up here!</a>
</div>
@ -54,8 +54,9 @@
@code {
[Parameter] public string renewToken { get; set; }
[Parameter] public string emailAddress { get; set; }
private UserModelDto user;
private UserModelDtoDetail user;
protected override Task OnInitializedAsync()
{
return base.OnInitializedAsync();

View File

@ -3,12 +3,12 @@
@using TIAMSharedUI.Shared
@using TIAMWebApp.Shared.Application.Interfaces;
@using TIAMSharedUI.Shared.Components.BaseComponents
@inherits BasePageComponent
@inherits UserBasePageComponent
@layout AdminLayout
@inject IPopulationStructureDataProvider DataProvider
@inject ISupplierService SupplierService
@inject IUserDataService UserDataService
@attribute [Authorize]
<PageTitle>Administration</PageTitle>
<div class="text-center m-5">

View File

@ -13,7 +13,7 @@
@using TIAMWebApp.Shared.Application.Utility
@using AyCode.Services.Loggers
@using TIAMSharedUI.Shared.Components.BaseComponents
@inherits BasePageComponent
@inherits UserBasePageComponent
@layout AdminLayout
@inject IEnumerable<IAcLogWriterClientBase> LogWriters
@inject IStringLocalizer<TIAMResources> Localizer

View File

@ -25,7 +25,7 @@
@using DevExpress.Data.Filtering
@using TIAM.Entities.Emails
@using TIAMSharedUI.Shared.Components.BaseComponents
@inherits BasePageComponent
@inherits UserBasePageComponent
@layout AdminLayout
@inject IEnumerable<IAcLogWriterClientBase> LogWriters
@inject IStringLocalizer<TIAMResources> localizer
@ -71,7 +71,7 @@
<div class="row">
<div class=" col-12">
<div class="card">
<DxTabs>
<DxTabPage Text="Upcoming">
@ -162,7 +162,7 @@
</DxTabPage>
</DxTabs>
</div>
</div>
<div class=" col-12 col-xl-6">

View File

@ -2,10 +2,9 @@
@using TIAMSharedUI.Shared
@using TIAMWebApp.Shared.Application.Interfaces;
@using TIAMSharedUI.Shared.Components.BaseComponents
@inherits BasePageComponent
@inherits UserBasePageComponent
@layout AdminLayout
@inject IUserDataService UserDataService
@inject ISessionService SessionService
<PageTitle>HotelAdmin</PageTitle>
<div class="text-center m-5">
@ -33,11 +32,11 @@
protected override void OnInitialized()
{
//check if Id matches with userproductmapping
if (!SessionService.IsAuthenticated)
if (!_sessionService.IsAuthenticated)
{
return;
}
var check = SessionService.User.UserModelDto.UserProductMappings.Any(x => x.ProductId == id);
var check = _sessionService.User.UserModelDto.UserProductMappings.Any(x => x.ProductId == id);
if (!check)
{
return;

View File

@ -15,7 +15,7 @@
<div class=" col-12 col-xl-3">
<Animation Effect="@Effect.FadeIn" Speed="@Speed.Fast" Delay="@TimeSpan.FromMilliseconds(250)">
<div class="card glass card-admin" style="border-radius: 16px;">
<div class="card card-admin" style="border-radius: 16px;">
<div class="card-header py-2 px-4">
<div class="d-flex justify-content-between align-items-center">
<div>
@ -63,7 +63,7 @@
</div>
<div class=" col-12 col-xl-9">
<Animation Effect="@Effect.FadeIn" Speed="@Speed.Fast" Delay="@TimeSpan.FromMilliseconds(250)">
<div class="card glass card-admin" style="border-radius: 16px;">
<div class="card card-admin" style="border-radius: 16px;">
<div class="card-header py-2 px-4">
<div class="d-flex justify-content-between align-items-center">
<div>
@ -143,7 +143,7 @@
</div>
<div class=" col-12 col-xl-9">
<Animation Effect="@Effect.FadeIn" Speed="@Speed.Fast" Delay="@TimeSpan.FromMilliseconds(250)">
<div class="card glass card-admin" style="border-radius: 16px;">
<div class="card card-admin" style="border-radius: 16px;">
<div class="card-header py-2 px-4">
<div class="d-flex justify-content-between align-items-center">
<div>
@ -177,7 +177,7 @@
<div class="col-12 col-lg-3" hidden="@accessDenied">
<Animation Effect="@Effect.FadeIn" Speed="@Speed.Fast" Delay="@TimeSpan.FromMilliseconds(250)">
<div class="card glass card-admin" style="border-radius: 16px;">
<div class="card card-admin" style="border-radius: 16px;">
<div class="card-header py-2 px-4">
<div class="d-flex justify-content-between align-items-center">
<div>
@ -245,7 +245,7 @@
</div>
<div class=" col-12">
<Animation Effect="@Effect.FadeIn" Speed="@Speed.Fast" Delay="@TimeSpan.FromMilliseconds(250)">
<div class="card glass card-admin" style="border-radius: 16px;">
<div class="card card-admin" style="border-radius: 16px;">
<div class="card-header py-2 px-4">
<div class="d-flex justify-content-between align-items-center">
<div>

View File

@ -13,11 +13,9 @@
@using AyCode.Core.Helpers
@using AyCode.Core.Consts
@using TIAMSharedUI.Shared.Components.BaseComponents
@inherits BasePageComponent
@inherits UserBasePageComponent
@layout AdminLayout
@inject IStringLocalizer<TIAMResources> Localizer
@inject ISessionService SessionService
@inject IWizardProcessor WizardProcessor
@inject IUserDataService UserDataService
<PageTitle>Car list</PageTitle>

View File

@ -15,7 +15,7 @@
@inject IStringLocalizer<TIAMResources> Localizer
@inject ISessionService SessionService
@using TIAMSharedUI.Shared.Components.BaseComponents
@inherits BasePageComponent
@inherits UserBasePageComponent
<PageTitle>User permissions</PageTitle>

View File

@ -9,7 +9,7 @@
@using TIAMWebApp.Shared.Application.Models.ClientSide.UI.WizardModels
@using TIAMWebApp.Shared.Application.Utility
@using TIAMSharedUI.Shared.Components.BaseComponents
@inherits BasePageComponent
@inherits UserBasePageComponent
@layout AdminLayout
@inject IStringLocalizer<TIAMResources> localizer
@inject IServiceProviderDataService ServiceProviderDataService

View File

@ -17,13 +17,11 @@
@using TIAM.Entities.Users
@using TIAM.Services
@using TIAMSharedUI.Shared.Components.BaseComponents
@inherits BasePageComponent
@inherits UserBasePageComponent
@layout AdminLayout
@inject IStringLocalizer<TIAMResources> localizer
@inject IWizardProcessor wizardProcessor
@inject IServiceProviderDataService serviceProviderDataService
@inject IUserDataService userDataService
@inject ISessionService sessionService
@inject AdminSignalRClient AdminSignalRClient;
<PageTitle>Admin - Companies</PageTitle>
@ -67,7 +65,7 @@
IgnoreReflection=@IgnoreList
TitleResourceString="NewMessage"
SubtitleResourceString="NewMessageSubtitle"
SubmitButtonText="@localizer.GetString("ButtonSend")"></InputWizard>
SubmitButtonText="@_localizer.GetString("ButtonSend")"></InputWizard>
</BodyContentTemplate>
<FooterContentTemplate Context="Context">
<div class="popup-demo-events-footer">
@ -143,10 +141,10 @@
var transfer2 = (Company)EditFormContext.EditModel;
}
<DxFormLayout CssClass="w-100">
<DxFormLayoutItem Caption=@localizer.GetString(ResourceKeys.LastName) ColSpanMd="6" ColSpanLg="6" ColSpanSm="12">
<DxFormLayoutItem Caption=@_localizer.GetString(ResourceKeys.LastName) ColSpanMd="6" ColSpanLg="6" ColSpanSm="12">
@EditFormContext.GetEditor("Name")
</DxFormLayoutItem>
<DxFormLayoutItem Caption=@localizer.GetString(ResourceKeys.LastName) ColSpanMd="6" ColSpanLg="6" ColSpanSm="12">
<DxFormLayoutItem Caption=@_localizer.GetString(ResourceKeys.LastName) ColSpanMd="6" ColSpanLg="6" ColSpanSm="12">
@EditFormContext.GetEditor("CommissionPercent")
</DxFormLayoutItem>
</DxFormLayout>

View File

@ -12,10 +12,8 @@
@using AyCode.Core.Helpers
@using AyCode.Core.Consts
@using TIAMSharedUI.Shared.Components.BaseComponents
@inherits BasePageComponent
@inherits UserBasePageComponent
@layout AdminLayout
@inject IStringLocalizer<TIAMResources> Localizer
@inject ISessionService SessionService
@inject IWizardProcessor WizardProcessor
@inject IUserDataService UserDataService
<PageTitle>User permissions</PageTitle>

View File

@ -5,7 +5,7 @@
@using TIAMSharedUI.Shared
@using TIAMWebApp.Shared.Application.Models.ClientSide.UI.WizardModels
@using TIAMSharedUI.Shared.Components.BaseComponents
@inherits BasePageComponent
@inherits UserBasePageComponent
@layout AdminLayout
@inject IStringLocalizer<TIAMResources> localizer

View File

@ -10,7 +10,7 @@ using TIAMSharedUI.Shared.Components.BaseComponents;
namespace TIAMSharedUI.Pages.User.SysAdmins
{
public partial class ManageTransferDestinations : BasePageComponent
public partial class ManageTransferDestinations : UserBasePageComponent
{
IGrid Grid { get; set; }

View File

@ -21,12 +21,10 @@
@using DevExpress.Data.Filtering
@using TIAM.Entities.Emails
@using TIAMSharedUI.Shared.Components.BaseComponents
@inherits BasePageComponent
@inherits UserBasePageComponent
@layout AdminLayout
@inject IStringLocalizer<TIAMResources> localizer
@inject IWizardProcessor wizardProcessor
@inject ITransferDataService transferDataService
@inject ISessionService sessionService
@inject AdminSignalRClient AdminSignalRClient;
<PageTitle>Transfers</PageTitle>
@ -51,7 +49,7 @@
IgnoreReflection=@IgnoreList
TitleResourceString="NewMessage"
SubtitleResourceString="NewMessageSubtitle"
SubmitButtonText="@localizer.GetString("ButtonSend")"></InputWizard>
SubmitButtonText="@_localizer.GetString("ButtonSend")"></InputWizard>
</BodyContentTemplate>
<FooterContentTemplate Context="Context">
<div class="popup-demo-events-footer">
@ -160,16 +158,16 @@
var transfer2 = (Transfer)editFormContext.EditModel;
}
<DxFormLayout CssClass="w-100">
<DxFormLayoutItem Caption=@localizer.GetString(ResourceKeys.FirstName) ColSpanMd="6">
<DxFormLayoutItem Caption=@_localizer.GetString(ResourceKeys.FirstName) ColSpanMd="6">
@editFormContext.GetEditor("FirstName")
</DxFormLayoutItem>
<DxFormLayoutItem Caption=@localizer.GetString(ResourceKeys.LastName) ColSpanMd="6">
<DxFormLayoutItem Caption=@_localizer.GetString(ResourceKeys.LastName) ColSpanMd="6">
@editFormContext.GetEditor("LastName")
</DxFormLayoutItem>
<DxFormLayoutItem Caption=@localizer.GetString(ResourceKeys.DestinationAddress) ColSpanMd="6">
<DxFormLayoutItem Caption=@_localizer.GetString(ResourceKeys.DestinationAddress) ColSpanMd="6">
@editFormContext.GetEditor("ToAddress")
</DxFormLayoutItem>
<DxFormLayoutItem Caption=@localizer.GetString(ResourceKeys.PickupAddress) ColSpanMd="6">
<DxFormLayoutItem Caption=@_localizer.GetString(ResourceKeys.PickupAddress) ColSpanMd="6">
@editFormContext.GetEditor("FromAddress")
</DxFormLayoutItem>
<DxFormLayoutItem Caption="Trip date:" ColSpanMd="6">

View File

@ -13,10 +13,8 @@
@using AyCode.Core.Helpers
@using AyCode.Core.Consts
@using TIAMSharedUI.Shared.Components.BaseComponents
@inherits BasePageComponent
@inherits UserBasePageComponent
@layout AdminLayout
@inject IStringLocalizer<TIAMResources> Localizer
@inject ISessionService SessionService
@inject IWizardProcessor WizardProcessor
@inject IUserDataService UserDataService
<PageTitle>User permissions</PageTitle>

View File

@ -16,9 +16,8 @@
@using AyCode.Core.Helpers
@using TIAMWebApp.Shared.Application.Services
@using TIAMSharedUI.Shared.Components.BaseComponents
@inherits BasePageComponent
@inherits UserBasePageComponent
@layout AdminLayout
@inject IStringLocalizer<TIAMResources> Localizer
@inject IWizardProcessor WizardProcessor
@inject IUserDataService UserDataService
@inject AdminSignalRClient AdminSignalRClient;
@ -85,12 +84,12 @@
ShowFilterRow="true">
<Columns>
<DxGridCommandColumn Width="135" MinWidth="135" FixedPosition="GridColumnFixedPosition.Left"/>
<DxGridDataColumn Caption="@Localizer.GetString("Id")" FieldName="Id" ShowInColumnChooser="AcDomain.IsDeveloperVersion" Visible="AcDomain.IsDeveloperVersion" DisplayFormat="N"/>
<DxGridDataColumn Caption="@Localizer.GetString("FullName")" FieldName="ProfileDto.FullName"/>
<DxGridDataColumn Caption="@Localizer.GetString("PhoneNumber")" FieldName="UserDto.PhoneNumber"/>
<DxGridDataColumn Caption="@Localizer.GetString("RefferalId")" FieldName="UserDto.RefferalId" />
<DxGridDataColumn Caption="@Localizer.GetString("EmailConfirmed")" FieldName="UserDto.EmailConfirmed" Width="120" CaptionAlignment="GridTextAlignment.Center" TextAlignment="GridTextAlignment.Center" />
<DxGridDataColumn Caption="@Localizer.GetString("EmailAddress")" Width="240" FieldName="UserDto.EmailAddress" SortIndex="0" />
<DxGridDataColumn Caption="@_localizer.GetString("Id")" FieldName="Id" ShowInColumnChooser="AcDomain.IsDeveloperVersion" Visible="AcDomain.IsDeveloperVersion" DisplayFormat="N"/>
<DxGridDataColumn Caption="@_localizer.GetString("FullName")" FieldName="ProfileDto.FullName"/>
<DxGridDataColumn Caption="@_localizer.GetString("PhoneNumber")" FieldName="UserDto.PhoneNumber"/>
<DxGridDataColumn Caption="@_localizer.GetString("RefferalId")" FieldName="UserDto.RefferalId" />
<DxGridDataColumn Caption="@_localizer.GetString("EmailConfirmed")" FieldName="UserDto.EmailConfirmed" Width="120" CaptionAlignment="GridTextAlignment.Center" TextAlignment="GridTextAlignment.Center" />
<DxGridDataColumn Caption="@_localizer.GetString("EmailAddress")" Width="240" FieldName="UserDto.EmailAddress" SortIndex="0" />
<DxGridDataColumn Caption="Send email" Width="110" CaptionAlignment="GridTextAlignment.Center" TextAlignment="GridTextAlignment.Center">
<CellDisplayTemplate>
@{
@ -102,8 +101,8 @@
}
</CellDisplayTemplate>
</DxGridDataColumn>
<DxGridDataColumn Caption="@Localizer.GetString("Created")" FieldName="UserDto.Created" DisplayFormat="g" Width="140" CaptionAlignment="GridTextAlignment.Center" TextAlignment="GridTextAlignment.Center" />
<DxGridDataColumn Caption="@Localizer.GetString("Modified")" FieldName="UserDto.Modified" DisplayFormat="g" Width="140" CaptionAlignment="GridTextAlignment.Center" TextAlignment="GridTextAlignment.Center" />
<DxGridDataColumn Caption="@_localizer.GetString("Created")" FieldName="UserDto.Created" DisplayFormat="g" Width="140" CaptionAlignment="GridTextAlignment.Center" TextAlignment="GridTextAlignment.Center" />
<DxGridDataColumn Caption="@_localizer.GetString("Modified")" FieldName="UserDto.Modified" DisplayFormat="g" Width="140" CaptionAlignment="GridTextAlignment.Center" TextAlignment="GridTextAlignment.Center" />
</Columns>
<DetailRowTemplate>
<DxTabs>
@ -129,13 +128,13 @@
var transfer2 = (UserModelDtoDetail)editFormContext.EditModel;
}
<DxFormLayout CssClass="w-100 form-control">
<DxFormLayoutItem Caption=@Localizer.GetString(ResourceKeys.EmailAddress) ColSpanMd="4">
<DxFormLayoutItem Caption=@_localizer.GetString(ResourceKeys.EmailAddress) ColSpanMd="4">
@editFormContext.GetEditor("UserDto.EmailAddress")
</DxFormLayoutItem>
<DxFormLayoutItem Caption=@Localizer.GetString(ResourceKeys.ConfirmEmail) ColSpanMd="4">
<DxFormLayoutItem Caption=@_localizer.GetString(ResourceKeys.ConfirmEmail) ColSpanMd="4">
@editFormContext.GetEditor("UserDto.EmailConfirmed")
</DxFormLayoutItem>
<DxFormLayoutItem Caption=@Localizer.GetString(ResourceKeys.PhoneNumber) ColSpanMd="4">
<DxFormLayoutItem Caption=@_localizer.GetString(ResourceKeys.PhoneNumber) ColSpanMd="4">
@editFormContext.GetEditor("UserDto.PhoneNumber")
</DxFormLayoutItem>

View File

@ -1,6 +1,8 @@
@page "/user/sysadmin"
@using TIAMSharedUI.Shared
@using TIAMWebApp.Shared.Application.Interfaces;
@using TIAMSharedUI.Shared.Components.BaseComponents
@inherits UserBasePageComponent
@layout AdminLayout
@inject IPopulationStructureDataProvider DataProvider
@inject ISupplierService SupplierService

View File

@ -0,0 +1,38 @@
using AyCode.Services.Loggers;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Components;
using Microsoft.Extensions.Localization;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using TIAM.Resources;
using TIAMSharedUI.Pages.User;
using TIAMSharedUI.Resources;
using TIAMWebApp.Shared.Application.Interfaces;
using TIAMWebApp.Shared.Application.Utility;
namespace TIAMSharedUI.Shared.Components.BaseComponents
{
[Authorize]
public class UserBasePageComponent : BasePageComponent
{
private LoggerClient<UserBasePageComponent> _logger = null!;
public UserBasePageComponent()
{
}
protected override void OnInitialized()
{
base.OnInitialized();
_logger = new LoggerClient<UserBasePageComponent>(_logWriters.ToArray());
var currentUrl = _navManager.ToBaseRelativePath(_navManager.Uri);
_pageState.AddPageToHistory(currentUrl);
_logger.Debug(_pageState.GetGoBackPage());
}
}
}

View File

@ -90,13 +90,13 @@ select {
.card .card-footer {
padding: 0px;
margin:0px;
background-color:transparent;
background-color: transparent;
}
.card .card-header {
padding: 0px;
margin: 0px;
background-color: transparent;
background-color: aliceblue;
}
.bg-red {