f97f891d67
Full ASP.NET Core 10 Razor Pages app for آساد ابزار tool repair shop in Karaj, Iran (official DeWalt representative). Features: - Homepage, Services, DeWalt page, Shop (pagination + images) - 10 brand SEO pages (/brands/*) with rich Persian content + FAQ schema - Blog engine with admin management (/blog, /Admin/Blog) - Cart, Checkout, Contact (OpenStreetMap embed) - Admin panel: Products CRUD, Orders, Blog, Change Password - Jalali date formatting, product images, SiteData centralised contact - Docker + docker-compose with healthcheck - Gitea CI/CD via .gitea/workflows/ci-cd.yml (NuGet through Nexus mirror) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
51 lines
2.3 KiB
Plaintext
51 lines
2.3 KiB
Plaintext
@page
|
|
@model AsadiTools.Pages.Admin.ChangePassword.ChangePasswordModel
|
|
@{ ViewData["Title"] = "تغییر رمز عبور"; Layout = "_AdminLayout"; }
|
|
|
|
@{
|
|
var inputCls = "w-full border border-gray-200 rounded-xl px-4 py-2.5 text-sm focus:outline-none focus:ring-2 focus:ring-blue-500";
|
|
}
|
|
|
|
<div class="p-6 md:p-8 max-w-lg">
|
|
<h1 class="text-2xl font-extrabold text-gray-900 mb-8">تغییر رمز عبور</h1>
|
|
|
|
@if (Model.Success)
|
|
{
|
|
<div class="bg-green-50 border border-green-200 text-green-700 px-5 py-4 rounded-xl mb-6 flex items-center gap-2">
|
|
✅ رمز عبور با موفقیت تغییر یافت.
|
|
</div>
|
|
}
|
|
|
|
<form method="post" class="bg-white rounded-2xl border border-gray-100 p-6 space-y-5">
|
|
@Html.AntiForgeryToken()
|
|
|
|
@if (!string.IsNullOrEmpty(Model.ErrorMessage))
|
|
{
|
|
<div class="bg-red-50 border border-red-200 text-red-700 text-sm px-4 py-3 rounded-xl">@Model.ErrorMessage</div>
|
|
}
|
|
|
|
<div>
|
|
<label class="text-sm font-medium text-gray-700 mb-1.5 block">رمز عبور فعلی <span class="text-red-500">*</span></label>
|
|
<input asp-for="Input.CurrentPassword" type="password" class="@inputCls" />
|
|
<span asp-validation-for="Input.CurrentPassword" class="text-red-500 text-xs"></span>
|
|
</div>
|
|
|
|
<div>
|
|
<label class="text-sm font-medium text-gray-700 mb-1.5 block">رمز عبور جدید <span class="text-red-500">*</span></label>
|
|
<input asp-for="Input.NewPassword" type="password" class="@inputCls" />
|
|
<span asp-validation-for="Input.NewPassword" class="text-red-500 text-xs"></span>
|
|
<p class="text-xs text-gray-400 mt-1">حداقل ۶ کاراکتر</p>
|
|
</div>
|
|
|
|
<div>
|
|
<label class="text-sm font-medium text-gray-700 mb-1.5 block">تکرار رمز عبور جدید <span class="text-red-500">*</span></label>
|
|
<input asp-for="Input.ConfirmPassword" type="password" class="@inputCls" />
|
|
<span asp-validation-for="Input.ConfirmPassword" class="text-red-500 text-xs"></span>
|
|
</div>
|
|
|
|
<button type="submit" class="w-full bg-blue-700 text-white py-3 rounded-xl font-bold hover:bg-blue-800 transition-colors">
|
|
🔑 تغییر رمز عبور
|
|
</button>
|
|
</form>
|
|
</div>
|