113 lines
4.0 KiB
Plaintext
113 lines
4.0 KiB
Plaintext
@page
|
|
@model GanjooRazor.Areas.User.Pages.LanguagesModel
|
|
@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>
|
|
</div>
|
|
|
|
@if (!string.IsNullOrEmpty(Model.LastMessage))
|
|
{
|
|
<div class="up-alert up-alert--info">@Model.LastMessage</div>
|
|
}
|
|
else
|
|
{
|
|
<div class="up-card">
|
|
<h2 class="up-card__title">زبان جدید</h2>
|
|
<form method="post" class="up-form">
|
|
@Html.AntiForgeryToken()
|
|
<div class="up-field">
|
|
<label for="Language_Name">نام</label>
|
|
<input asp-for="Language.Name" />
|
|
</div>
|
|
<div class="up-field up-field--ltr">
|
|
<label for="Language_Code">کد</label>
|
|
<input asp-for="Language.Code" />
|
|
</div>
|
|
<div class="up-field up-field--ltr">
|
|
<label for="Language_NativeName">نام بومی زبان</label>
|
|
<input asp-for="Language.NativeName" />
|
|
</div>
|
|
<div class="up-check-row">
|
|
<input type="checkbox" asp-for="Language.RightToLeft" />
|
|
<label for="Language_RightToLeft">راست به چپ</label>
|
|
</div>
|
|
<div class="up-field">
|
|
<label for="Language_Description">شرح</label>
|
|
<input asp-for="Language.Description" />
|
|
</div>
|
|
<div class="up-form-actions">
|
|
<input type="submit" value="ایجاد زبان" class="up-btn up-btn--success" />
|
|
</div>
|
|
</form>
|
|
</div>
|
|
|
|
@if (Model.Languages != null && Model.Languages.Length > 0)
|
|
{
|
|
<script>
|
|
async function deleteLanguage(itemId, itemName) {
|
|
|
|
var ok = await upConfirm('آیا از حذف این ' + itemName + ' اطمینان دارید؟');
|
|
if (!ok) return;
|
|
|
|
$.ajax({
|
|
type: "DELETE",
|
|
url: '',
|
|
data: {
|
|
id: itemId
|
|
},
|
|
error: function () {
|
|
upToast('خطا رخ داد.', 'error');
|
|
},
|
|
success: function () {
|
|
location.reload();
|
|
return false;
|
|
},
|
|
});
|
|
}
|
|
</script>
|
|
<table>
|
|
<tr>
|
|
<th>نام</th>
|
|
<th>کد</th>
|
|
<th>نام بومی</th>
|
|
<th>ر.ب.چ</th>
|
|
<th>شرح</th>
|
|
<th>#</th>
|
|
</tr>
|
|
@foreach (var language in Model.Languages)
|
|
{
|
|
<tr id="tr-@language.Id">
|
|
<td>@language.Name</td>
|
|
<td>@language.Code</td>
|
|
<td>@language.NativeName</td>
|
|
<td>
|
|
@if (language.RightToLeft)
|
|
{
|
|
<input type="checkbox" checked="checked" disabled="disabled" />
|
|
}
|
|
else
|
|
{
|
|
<input type="checkbox" disabled="disabled" />
|
|
}
|
|
|
|
</td>
|
|
<td>@language.Description</td>
|
|
<td>
|
|
<a role="button" href="/User/LanguageEdit?id=@language.Id" class="up-icon-btn" title="ویرایش" aria-label="ویرایش این زبان">✎</a>
|
|
<a role="button" onclick="deleteLanguage(@language.Id, 'زبان')" class="up-icon-btn" title="حذف" aria-label="حذف این زبان">🗑</a>
|
|
</td>
|
|
</tr>
|
|
}
|
|
</table>
|
|
}
|
|
else
|
|
{
|
|
<partial name="_EmptyState" model="@("هنوز زبانی ثبت نشده است.")" />
|
|
}
|
|
}
|