This commit is contained in:
MeysamMoghaddam
2025-10-09 22:09:24 +03:30
parent 2c8b3c8483
commit 3e30b6c1f6
2 changed files with 116 additions and 2 deletions

View File

@@ -69,6 +69,48 @@ else
<MudPaper Elevation="2" Class="pa-6 rounded-2xl mud-theme-surface mt-4">
<MudText Typo="Typo.h6" Class="mb-4 mud-typography-subtitle1">نظرات کاربران</MudText>
<!-- Comment Submission Form (only for authenticated users) -->
@if (_isAuthenticated)
{
<MudPaper Outlined="true" Class="pa-4 rounded-lg mb-4">
<MudStack Row="true" AlignItems="AlignItems.Center">
<MudText Typo="Typo.subtitle1" Class="mb-3 fw-600">نظر خود را ثبت کنید</MudText>
<MudSpacer />
<MudRating @bind-Value="_newComment.Rating" Size="Size.Medium" />
</MudStack>
<MudStack Spacing="3">
<MudTextField @bind-Value="_newComment.Comment"
Label="نظر شما"
Variant="Variant.Outlined"
Lines="3"
Placeholder="نظر خود را درباره این پکیج بنویسید..." />
<MudStack AlignItems="AlignItems.Start">
<MudButton Variant="Variant.Filled"
Color="Color.Primary"
OnClick="SubmitComment"
Disabled="_isSubmittingComment"
StartIcon="@Icons.Material.Filled.Send">
@(_isSubmittingComment ? "در حال ارسال..." : "ارسال نظر")
</MudButton>
</MudStack>
</MudStack>
</MudPaper>
}
else
{
<MudPaper Outlined="true" Class="pa-4 rounded-lg mb-4">
<MudStack AlignItems="AlignItems.Center" Spacing="2">
<MudIcon Icon="@Icons.Material.Filled.Lock" Size="Size.Medium" Color="Color.Default" />
<MudText Typo="Typo.body2" Class="mud-text-secondary">
برای ثبت نظر ابتدا
<MudLink Href="javascript:void(0)" OnClick="() => Navigation.NavigateTo(RouteConstants.Auth.Phone)" Class="text-primary">وارد حساب کاربری</MudLink>
شوید.
</MudText>
</MudStack>
</MudPaper>
}
<!-- Reviews List -->
@if (_reviews.Any())
{
<MudStack Spacing="3">
@@ -111,7 +153,7 @@ else
<MudPaper Class="pa-2 rounded-xl" Style="background: radial-gradient(600px 280px at 120% 0, #daccff 0, transparent 60%), radial-gradient(600px 280px at -10% 100%, #ffe2f2 0, transparent 60%), linear-gradient(180deg, #fff, #fbfaff);">
<MudImage Src="@_package.Image"
Alt="@_package.Title"
Height="300"
Height="250"
ObjectFit="ObjectFit.Cover"
ObjectPosition="ObjectPosition.Center"
Style="width:100%"