divan/GanjooRazor/Areas/Admin/Pages/Poets.cshtml
2022-10-18 20:33:26 +03:30

175 lines
5.8 KiB
Plaintext

@page
@model GanjooRazor.Areas.Admin.Pages.PoetsModel
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
@{
Layout = "_AdminLayout";
ViewData["Title"] = "مدیریت سخنوران";
}
<h1>@ViewData["Title"]</h1>
<p>@Model.LastMessage</p>
<script>
function savePoetMeta(id, name) {
if (!confirm('آیا از ذخیرهٔ اطلاعات سال تولد و وفات و ترتیب برای ' + name + ' اطمینان دارید؟'))
return;
$.ajax({
type: "POST",
url: '?handler=SavePoetMeta',
data: {
id: id,
birth: $('#birth-' + String(id)).val(),
death: $('#death-' + String(id)).val(),
pinorder: $('#pinorder-' + String(id)).val(),
validbirth: $('#birth-valid-' + String(id)).is(":checked"),
validdeath: $('#death-valid-' + String(id)).is(":checked"),
birthlocation: $('#birth-place-' + String(id)).val(),
deathlocation: $('#death-place-' + String(id)).val(),
},
error: function (e) {
if (e.responseText == null)
alert(e);
else
alert(e.responseText);
},
success: function () {
alert('انجام شد.');
},
});
}
function savePoetsMeta() {
if (!confirm('آیا از به‌روزرسانی گروه‌بندی بر اساس قرن اطمینان دارید؟'))
return;
$.ajax({
type: "POST",
url: '?handler=UpdatePeriods',
success: function () {
alert('انجام شد.');
},
error: function (e) {
if (e.responseText == null)
alert(e);
else
alert(e.responseText);
},
});
}
</script>
<table>
<tr>
<th>نام سخنور</th>
<th>زاده</th>
<th>درگذشته</th>
<th>چسبانی</th>
</tr>
<tr>
<td colspan="4"><a href="/Admin/Poet">سخنور جدید</a></td>
</tr>
@foreach (var poet in Model.Poets)
{
<tr>
<td>
<a href="/Admin/Poet?id=@poet.Id">@poet.Nickname</a>
</td>
<td>
<input type="text" name="@($"birth-{poet.Id}")" id="@($"birth-{poet.Id}")" value="@poet.BirthYearInLHijri" />
@if (poet.ValidBirthDate)
{
<input type="checkbox" name="@($"birth-valid-{poet.Id}")" id="@($"birth-valid-{poet.Id}")" checked />
}
else
{
<input type="checkbox" name="@($"birth-valid-{poet.Id}")" id="@($"birth-valid-{poet.Id}")" />
}
</td>
<td>
<input type="text" name="@($"death-{poet.Id}")" id="@($"death-{poet.Id}")" value="@poet.DeathYearInLHijri" />
@if (poet.ValidDeathDate)
{
<input type="checkbox" name="@($"death-valid-{poet.Id}")" id="@($"death-valid-{poet.Id}")" checked />
}
else
{
<input type="checkbox" name="@($"death-valid-{poet.Id}")" id="@($"death-valid-{poet.Id}")" />
}
</td>
<td>
<input type="text" name="@($"pinorder-{poet.Id}")" id="@($"pinorder-{poet.Id}")" value="@poet.PinOrder" />
</td>
</tr>
<tr>
<td>
<a href="/Admin/Locations" target="_blank">زادگاه</a>:
</td>
<td colspan="3">
<select id="@($"birth-place-{poet.Id}")">
@{
foreach (var location in Model.Locations)
{
if (location.Name == poet.BirthPlace)
{
<option value="@location.Name" selected>@location.Name</option>
}
else
{
<option value="@location.Name">@location.Name</option>
}
}
}
</select>
</td>
</tr>
<tr>
<td>
آرامگاه:
</td>
<td colspan="3">
<select id="@($"death-place-{poet.Id}")">
@{
foreach (var location in Model.Locations)
{
if (location.Name == poet.DeathPlace)
{
<option value="@location.Name" selected>@location.Name</option>
}
else
{
<option value="@location.Name">@location.Name</option>
}
}
}
</select>
</td>
</tr>
<tr>
<td colspan="4">
@Html.Raw(poet.Description)
</td>
</tr>
<tr>
<td colspan="4">
<a role="button" onclick="savePoetMeta(@poet.Id, '@poet.Nickname')" class="actionlink">ذخیرهٔ @poet.Nickname</a>
</td>
</tr>
}
<tr>
<td colspan="4">
<a role="button" onclick="savePoetsMeta()" class="actionlink">ذخیرهٔ گروه‌بندی بر اساس قرن</a>
</td>
</tr>
</table>
<table>
<tr>
<td><a role="button" onclick="exportAll()" class="actionlink">sqlite</a></td>
</tr>
</table>