improve UI/UX of the User Area

#496
This commit is contained in:
Hamid Reza Mohammadi 2026-08-05 17:13:10 +03:30
parent aa4431b2d8
commit 1c1e211ca9

View File

@ -1,4 +1,4 @@
@page @page
@model GanjooRazor.Areas.User.Pages.CatEditorModel @model GanjooRazor.Areas.User.Pages.CatEditorModel
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers @addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
@{ @{
@ -6,51 +6,43 @@
ViewData["Title"] = "ویرایشگر متن بخش"; ViewData["Title"] = "ویرایشگر متن بخش";
await GanjooRazor.Utils.GanjoorSessionChecker.ApplyPermissionsToViewData(Request, Response, ViewData); await GanjooRazor.Utils.GanjoorSessionChecker.ApplyPermissionsToViewData(Request, Response, ViewData);
} }
<div class="up-page-header">
<h1>@ViewData["Title"]</h1> <h1>@ViewData["Title"]</h1>
<div class="notice width-100per">
<p>لطفاً از گنجاندن ادعاهای قومیتی، جغرافیایی یا مذهبی یا هر گونه ادعایی که روی آنها اجماع وجود ندارد یا موجب بحث و اعتراض می‌شود در زندگینامه‌های شاعران خودداری کنید.</p>
<p>در گنجاندن پیوند به منابع حتی‌الامکان از ویکیپدیا یا وبگاه‌های مشهور با عمر بالا بدون وجود تبلیغات در آنها استفاده کنید. ارجاع به وبگاه‌های دیگر به دلیل آن که ممکن است تبلیغاتی فرض شود و همینطور احتمال آن وجود دارد که در طولانی‌مدت با از دسترس خارج شدن وبگاه تبدیل به پیوند مرده شود مورد قبول قرار نمی‌گیرد.</p>
<p>از آنجا که متن پس از حذف پیوندها به صورت صرفاً متنی در نرم‌افزارهای جانبی مورد استفاده قرار می‌گیرد متن پیوندهای احتمالی را به صورتی تنظیم کنید که با حذف پیوند ناقص نشود.</p>
</div> </div>
<div class="up-alert up-alert--warning">
<p>لطفاً از گنجاندن ادعاهای قومیتی، جغرافیایی یا مذهبی یا هر گونه ادعایی که روی آنها اجماع وجود ندارد یا موجب بحث و اعتراض می‌شود در زندگینامه‌های شاعران خودداری کنید.</p>
<p>در گنجاندن پیوند به منابع حتی‌الامکان از ویکیپدیا یا وبگاه‌های مشهور با عمر بالا بدون وجود تبلیغات در آنها استفاده کنید. ارجاع به وبگاه‌های دیگر به دلیل آن که ممکن است تبلیغاتی فرض شود و همینطور احتمال آن وجود دارد که در طولانی‌مدت با از دسترس خارج شدن وبگاه تبدیل به پیوند مرده شود مورد قبول قرار نمی‌گیرد.</p>
<p class="up-mt-0">از آنجا که متن پس از حذف پیوندها به صورت صرفاً متنی در نرم‌افزارهای جانبی مورد استفاده قرار می‌گیرد متن پیوندهای احتمالی را به صورتی تنظیم کنید که با حذف پیوند ناقص نشود.</p>
</div>
@if (Model.MyLastEdit != null) @if (Model.MyLastEdit != null)
{ {
<script> <script>
function deleteCatCorrection(id) { async function deleteCatCorrection(id) {
if (!confirm('آیا از حذف تغییرات پیشنهادی اطمینان دارید؟')) var ok = await upConfirm('آیا از حذف تغییرات پیشنهادی اطمینان دارید؟');
return; if (!ok) return;
$('#deletecorrections').hide(); $('#deletecorrections').hide();
$('#saving').text('در حال ذخیره ...'); $('#saving').text('در حال ذخیره ...');
var url = '?handler=DeleteCatCorrection';
$.ajax({ $.ajax({
type: "POST", type: "POST",
url: url, url: '?handler=DeleteCatCorrection',
data: { data: { catid: id },
catid: id, error: function (e) {
}, upToast(e.responseText || 'خطا رخ داد.', 'error');
error: function () {
alert('خطا رخ داد.')
}, },
success: function () { success: function () {
location.reload(true); location.reload(true);
}, },
}); });
} }
</script> </script>
<div class="up-card">
<h2 class="up-card__title">ویرایش‌های بررسی‌نشدهٔ من</h2>
<table> <table>
<tr>
<td colspan="2">ویرایشهای بررسی نشدهٔ من</td>
</tr>
<tr> <tr>
<td>متن اولیه</td> <td>متن اولیه</td>
<td>تغییرات من</td> <td>تغییرات من</td>
@ -91,49 +83,35 @@
</td> </td>
</tr> </tr>
} }
<tr>
<td colspan="2" class="td-button-container">
<a role="button" id="deletecorrections" class="editor-button background-red" onclick="deleteCatCorrection(@Model.PageInformation.PoetOrCat.Cat.Id)">انصراف و حذف این ویرایش</a>
</td>
</tr>
</table> </table>
<p id="saving" class="up-hint"></p>
<div class="up-form-actions">
<a role="button" id="deletecorrections" class="up-btn up-btn--danger" onclick="deleteCatCorrection(@Model.PageInformation.PoetOrCat.Cat.Id)">انصراف و حذف این ویرایش</a>
</div>
</div>
} }
<form method="post"> <div class="up-card">
<table style="max-width:100%; width:100%; margin:0" class="noborder"> <form method="post" class="up-form">
@if (Model.PageInformation != null) @if (Model.PageInformation != null)
{ {
<tr><td><a role="button" target="_blank" href="@Model.PageInformation.FullUrl" class="actionlink">@Model.PageInformation.FullTitle</a></td></tr> <p><a role="button" target="_blank" href="@Model.PageInformation.FullUrl" class="up-btn up-btn--ghost">@Model.PageInformation.FullTitle</a></p>
} }
<tr>
<td>
<span class="inputlabel">متن: </span>
<input asp-for="Correction.CatId" type="hidden" /> <input asp-for="Correction.CatId" type="hidden" />
</td>
</tr>
<tr>
<td>
<textarea asp-for="Correction.DescriptionHtml" class="inputTextarea editor" rows="20" style="width:100%"></textarea>
</td>
</tr>
<tr>
<td>
<span class="inputlabel">توضیح این ویرایش: </span>
</td>
</tr>
<tr>
<td>
<input asp-for="Correction.Note" />
</td> <div class="up-field">
</tr> <label asp-for="Correction.DescriptionHtml">متن</label>
<tr> <textarea asp-for="Correction.DescriptionHtml" class="inputTextarea editor" rows="20"></textarea>
<td> </div>
<button type="submit" name="approve" id="approve" style="width:100%;color:white;background-color:green">ذخیره</button>
</td> <div class="up-field">
</tr> <label asp-for="Correction.Note">توضیح این ویرایش</label>
</table> <input asp-for="Correction.Note" />
</div>
<div class="up-form-actions">
<button type="submit" name="approve" id="approve" class="up-btn up-btn--success">ذخیره</button>
</div>
</form> </form>
</div>