- translate remaining public views and page-model strings (titles, messages, relation names) - Urdu stopword list for word-frequency stats (replaces Persian list) - error pages: drop list of alternative Ganjoor services Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
149 lines
6.0 KiB
Plaintext
149 lines
6.0 KiB
Plaintext
@page "{id:int}"
|
|
@model DivanRazor.Pages.PersonWindowModel
|
|
@using DNTPersianUtils.Core
|
|
@{
|
|
Layout = null;
|
|
}
|
|
@if (!string.IsNullOrEmpty(Model.LastError))
|
|
{
|
|
<p>@Model.LastError</p>
|
|
}
|
|
else
|
|
{
|
|
<div class="up-modal-person">
|
|
<h2>
|
|
@Model.Person.Name
|
|
@if (Model.LoggedIn)
|
|
{
|
|
<a href="/User/SuggestPersonEdit?id=@Model.Person.Id" class="up-icon-btn" title="اس شخصیت میں ترمیم تجویز کریں" aria-label="اس شخصیت میں ترمیم تجویز کریں">✎</a>
|
|
}
|
|
</h2>
|
|
|
|
@if (!string.IsNullOrEmpty(Model.Person.FamilyTreeCaption))
|
|
{
|
|
<p><strong>شجرہ: @Model.Person.FamilyTreeCaption</strong></p>
|
|
}
|
|
|
|
@if (Model.Person.BirthYearInLHijri != 0 || Model.Person.DeathYearInLHijri != 0)
|
|
{
|
|
<p>
|
|
@if (Model.Person.BirthYearInLHijri != 0)
|
|
{
|
|
<text>ولادت: @Model.Person.BirthYearInLHijri.ToPersianNumbers() (ہجری) @(Model.Person.ValidBirthDate ? "" : "- تخمینی")</text>
|
|
}
|
|
@if (Model.Person.DeathYearInLHijri != 0)
|
|
{
|
|
<text> — وفات: @Model.Person.DeathYearInLHijri.ToPersianNumbers() (ہجری) @(Model.Person.ValidDeathDate ? "" : "- تخمینی")</text>
|
|
}
|
|
</p>
|
|
}
|
|
|
|
@if (!string.IsNullOrEmpty(Model.Person.Description))
|
|
{
|
|
<p>@Model.Person.Description</p>
|
|
}
|
|
|
|
@if (!string.IsNullOrEmpty(Model.Person.WikiUrl))
|
|
{
|
|
<p><a href="@Model.Person.WikiUrl" target="_blank" rel="noopener">ویکیپیڈیا صفحہ</a></p>
|
|
}
|
|
|
|
@if (Model.RelationRows.Count > 0)
|
|
{
|
|
<h3>
|
|
رشتہ دار
|
|
<a href="javascript:void(0)" onclick="FamilyTreeWindow.open(@Model.Person.Id)" class="up-btn up-btn--ghost up-btn--sm">شجرے کا خاکہ دکھائیں</a>
|
|
@if (Model.LoggedIn)
|
|
{
|
|
<a href="/User/SuggestNewPersonRelation?personId=@Model.Person.Id" class="up-btn up-btn--ghost up-btn--sm">نیا رشتہ دار شامل کریں</a>
|
|
}
|
|
</h3>
|
|
<ul>
|
|
@foreach (var row in Model.RelationRows)
|
|
{
|
|
<li>
|
|
@row.Label — <a href="javascript:void(0)" onclick="PersonWindow.open(@row.OtherPersonId)">@row.OtherPersonName</a>
|
|
@if (!string.IsNullOrEmpty(row.Note))
|
|
{
|
|
<text> (@row.Note)</text>
|
|
}
|
|
@if (Model.LoggedIn)
|
|
{
|
|
<a href="/User/SuggestPersonRelationEdit?relationId=@row.RelationId" class="up-icon-btn" title="ترمیم تجویز کریں/یہ رشتہ ہٹائیں" aria-label="ترمیم تجویز کریں/یہ رشتہ ہٹائیں">✎</a>
|
|
}
|
|
</li>
|
|
}
|
|
</ul>
|
|
}
|
|
else if (Model.LoggedIn)
|
|
{
|
|
<h3>
|
|
رشتہ دار
|
|
<a href="/User/SuggestNewPersonRelation?personId=@Model.Person.Id" class="up-btn up-btn--ghost up-btn--sm">نیا رشتہ دار شامل کریں</a>
|
|
</h3>
|
|
}
|
|
|
|
@if (Model.AffiliationRows.Count > 0)
|
|
{
|
|
<h3>
|
|
غیر خاندانی وابستگیاں
|
|
@if (Model.LoggedIn)
|
|
{
|
|
<a href="/User/SuggestNewPersonRelation?personId=@Model.Person.Id" class="up-btn up-btn--ghost up-btn--sm">نئی وابستگی شامل کریں</a>
|
|
}
|
|
</h3>
|
|
<ul>
|
|
@foreach (var row in Model.AffiliationRows)
|
|
{
|
|
<li>
|
|
@row.SentenceBeforeOtherName<a href="javascript:void(0)" onclick="PersonWindow.open(@row.OtherPersonId)">@row.OtherPersonName</a>@row.SentenceAfterOtherName
|
|
@if (!string.IsNullOrEmpty(row.Note))
|
|
{
|
|
<text> (@row.Note)</text>
|
|
}
|
|
@if (Model.LoggedIn)
|
|
{
|
|
<a href="/User/SuggestPersonRelationEdit?affiliationId=@row.AffiliationId" class="up-icon-btn" title="ترمیم تجویز کریں/یہ وابستگی ہٹائیں" aria-label="ترمیم تجویز کریں/یہ وابستگی ہٹائیں">✎</a>
|
|
}
|
|
</li>
|
|
}
|
|
</ul>
|
|
}
|
|
else if (Model.LoggedIn)
|
|
{
|
|
<h3>
|
|
غیر خاندانی وابستگیاں
|
|
<a href="/User/SuggestNewPersonRelation?personId=@Model.Person.Id" class="up-btn up-btn--ghost up-btn--sm">نئی وابستگی شامل کریں</a>
|
|
</h3>
|
|
}
|
|
|
|
@if (Model.Poems != null && Model.Poems.Length > 0)
|
|
{
|
|
<h3>اس شخصیت سے نشان زدہ اشعار</h3>
|
|
<ul>
|
|
@foreach (var tag in Model.Poems)
|
|
{
|
|
if (tag.Poem != null)
|
|
{
|
|
<li>
|
|
<a href="@tag.Poem.FullUrl">@tag.Poem.FullTitle</a>
|
|
@if (!string.IsNullOrEmpty(tag.CoupletText))
|
|
{
|
|
<p>@tag.CoupletText</p>
|
|
}
|
|
@if (!string.IsNullOrEmpty(tag.Note))
|
|
{
|
|
<p class="up-hint"><small>نوٹ: @tag.Note</small></p>
|
|
}
|
|
</li>
|
|
}
|
|
}
|
|
</ul>
|
|
}
|
|
else
|
|
{
|
|
<p><small>ابھی کسی شعر میں اس شخصیت کی نشاندہی نہیں ہوئی.</small></p>
|
|
}
|
|
</div>
|
|
}
|