divan/GanjooRazor/Areas/User/Pages/Index.cshtml
2026-08-05 13:23:37 +03:30

186 lines
8.3 KiB
Plaintext

@page
@model GanjooRazor.Areas.Panel.Pages.IndexModel
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
@{
Layout = "_UserPanelLayout";
ViewData["Title"] = "پیشخان کاربر";
await GanjooRazor.Utils.GanjoorSessionChecker.ApplyPermissionsToViewData(Request, Response, ViewData);
}
<div class="up-page-header">
<h1>@ViewData["Title"]</h1>
@{
var displayName = !string.IsNullOrWhiteSpace(Model.UserInfo?.NickName) ? Model.UserInfo.NickName : Model.UserInfo?.FirstName;
}
@if (!string.IsNullOrWhiteSpace(displayName))
{
<div class="up-page-subtitle">خوش آمدید، @displayName</div>
}
</div>
@if (Model.LastError != "")
{
<div class="up-alert up-alert--danger">@Model.LastError</div>
}
else
{
<div class="up-quick-links">
<a class="up-card up-quick-link" asp-area="User" asp-page="/Edits">
<strong>ویرایش‌های من</strong>
<span class="up-text-muted">پیگیری وضعیت ویرایش‌های پیشنهادی شما</span>
</a>
<a class="up-card up-quick-link" asp-area="User" asp-page="/MyComments">
<strong>حاشیه‌های من</strong>
<span class="up-text-muted">حاشیه‌هایی که نوشته‌اید</span>
</a>
<a class="up-card up-quick-link" asp-area="User" asp-page="/MyBookmarks">
<strong>نشان‌شده‌های من</strong>
<span class="up-text-muted">شعرهایی که نشان کرده‌اید</span>
</a>
<a class="up-card up-quick-link" asp-area="User" asp-page="/Notifications">
<strong>اعلان‌های من</strong>
<span class="up-text-muted">پاسخ‌ها و رویدادهای مرتبط با شما</span>
</a>
<a class="up-card up-quick-link" asp-area="User" asp-page="/History">
<strong>ادامهٔ مطالعه</strong>
<span class="up-text-muted">از جایی که مانده بودید ادامه دهید</span>
</a>
<a class="up-card up-quick-link" asp-area="User" asp-page="/MySuggestedQuotes">
<strong>مشق‌های پیشنهادی من</strong>
<span class="up-text-muted">اشعاری که به عنوان مشق پیشنهاد داده‌اید</span>
</a>
</div>
<div class="up-card">
<form method="post" asp-page-handler="SetMyPass">
<table style="width:100%" class="noborder">
<tr>
<td colspan="2">
<h2>تغییر گذرواژه</h2>
</td>
</tr>
<tr>
<td>
<span class="inputlabel">گذرواژهٔ کنونی: </span>
</td>
<td>
<input type="password" style="width:100%" asp-for="ChangePasswordModel.OldPassword" /><br />
</td>
</tr>
<tr>
<td>
<span class="inputlabel">گذرواژهٔ جدید: </span>
</td>
<td>
<input type="password" style="width:100%" asp-for="ChangePasswordModel.NewPassword" /><br />
</td>
</tr>
<tr>
<td>
<span class="inputlabel">تکرار گذرواژهٔ جدید: </span>
</td>
<td>
<input type="password" style="width:100%" asp-for="ChangePasswordModel.NewPasswordRepeat" /><br />
</td>
</tr>
<tr>
<td>
@Model.PasswordChanged
</td>
<td>
<button type="submit" name="approve" id="approve" class="up-btn up-btn--success up-btn--block">تغییر گذرواژه</button>
</td>
</tr>
</table>
</form>
</div>
<div class="up-card">
<form method="post" asp-page-handler="SetMyInfo">
<table style="width:100%" class="noborder">
<tr>
<td colspan="2">
<h2>مشخصات من</h2>
</td>
</tr>
<tr>
<td>
<span class="inputlabel">پست الکترونیکی: </span>
</td>
<td>
<span class="inputlabel lft">@Model.UserInfo.Email</span>
</td>
</tr>
<tr>
<td>
<span class="inputlabel">نام: </span>
</td>
<td>
<input style="width:100%" asp-for="UserInfo.FirstName" /><br />
</td>
</tr>
<tr>
<td>
<span class="inputlabel">نام خانوادگی: </span>
</td>
<td>
<input style="width:100%" asp-for="UserInfo.SurName" /><br />
</td>
</tr>
<tr>
<td>
<span class="inputlabel">نام مستعار (نمایش در حاشیه‌ها، لطفاً از درج عناوین شغلی در نام مستعار خودداری کنید): </span>
</td>
<td>
<input style="width:100%" asp-for="UserInfo.NickName" /><br />
</td>
</tr>
<tr>
<td>
<span class="inputlabel"><a target="_blank" href="@Html.Raw(Model.UserInfo.Website)">وبگاه:</a></span>
</td>
<td>
<input style="width:100%;text-align:left;direction:ltr;" asp-for="UserInfo.Website" />
</td>
</tr>
<tr>
<td>
<span class="inputlabel">دربارهٔ من: </span>
</td>
<td>
<textarea asp-for="UserInfo.Bio" class="editor"></textarea>
<span class="inputlabel"><strong>تذکر مهم:</strong> استفاده از این متن برای مخابرهٔ پیام‌های نامناسب (توهین، فحاشی و ...) منجر به حذف حساب کاربر بدون اخطار قبلی خواهد شد.</span>
<br />
<span class="inputlabel">در صورتی که از این متن، وبگاه و از نام مستعار برای تبلیغ کسب و کار غیرادبی خود استفاده کنید به گونه‌ای که نمایهٔ شما به نمایه‌ای تبلیغاتی شباهت پیدا کند حساب کاربری شما بدون اخطار قبلی حذف خواهد شد.</span>
<span class="inputlabel red-color"><strong>لطفاً از درج تلفن و اطلاعات خصوصی در نام و مشخصات یا متن دربارهٔ من خودداری کنید.</strong></span><span> انتشار اطلاعات شخصی به صورت عمومی ممکن است باعث سوء استفادهٔ کلاهبرداران بشود لذا از انتشار چنین اطلاعاتی خودداری فرمایید.</span>
</td>
</tr>
<tr>
<td>
<input type="hidden" asp-for="UserInfo.Id" />
<input type="hidden" asp-for="UserInfo.Email" />
<input type="hidden" asp-for="UserInfo.Username" />
<input type="hidden" asp-for="UserInfo.Password" />
<input type="hidden" asp-for="UserInfo.PhoneNumber" />
<input type="hidden" asp-for="UserInfo.Status" />
<input type="hidden" asp-for="UserInfo.RImageId" />
</td>
<td>
<button type="submit" name="approve" id="approveProfile" class="up-btn up-btn--success up-btn--block">ذخیره</button>
</td>
</tr>
<tr>
<td colspan="2">
<a href="/hashieha/?userid=@Model.UserInfo.Id" target="_blank">نمایهٔ عمومی من</a>
</td>
</tr>
<tr>
<td colspan="2">
<a role="button" class="up-btn up-btn--danger up-btn--block" href="/User/DeleteAccount">حذف حساب کاربری</a>
</td>
</tr>
</table>
</form>
</div>
}