divan/GanjooRazor/Areas/User/Pages/MySuggestedSongs.cshtml
2026-08-05 16:00:36 +03:30

88 lines
3.1 KiB
Plaintext

@page
@model GanjooRazor.Areas.User.Pages.MySuggestedSongsModel
@using DNTPersianUtils.Core
@{
Layout = "_UserPanelLayout";
ViewData["Title"] = "آهنگ‌های پیشنهادی من";
await GanjooRazor.Utils.GanjoorSessionChecker.ApplyPermissionsToViewData(Request, Response, ViewData);
}
<div class="up-page-header">
<h1>@ViewData["Title"]</h1>
</div>
@if (Model.LastError != "")
{
<div class="up-alert up-alert--danger">@Model.LastError</div>
}
else
{
<partial name="_Pagination" model="Model.PaginationLinks" />
@if (Model.SuggestedSongs.Count == 0)
{
<partial name="_EmptyState" model="@("شما هنوز هیچ آهنگ مرتبطی را پیشنهاد نداده‌اید. برای آشنایی با نحوهٔ پیشنهاد آهنگ‌های مرتبط <a href=\"https://blog.ganjoor.net/1395/06/28/bptags/\" target=\"_blank\">اینجا</a> را ببینید.")" />
}
<div class="up-list">
@foreach (var suggestedSong in Model.SuggestedSongs)
{
<div class="up-list-item" id="bookmark-@suggestedSong.Id">
@if (suggestedSong.Rejected)
{
<span class="up-badge up-badge--danger">رد شده</span>
}
else if (suggestedSong.Approved)
{
<span class="up-badge up-badge--success">تأیید شده</span>
}
else
{
<span class="up-badge up-badge--primary">بررسی نشده</span>
}
@if (suggestedSong.Rejected)
{
<p>
دلیل رد: @suggestedSong.RejectionCause
</p>
}
@if (suggestedSong.BrokenLink)
{
<div class="up-alert up-alert--warning">لینک آهنگ کار نمی‌کند.</div>
}
<p>
<a href="@($"/?p={suggestedSong.PoemId}")" target="_blank">مشاهدهٔ شعر مرتبط</a>
</p>
@if (!string.IsNullOrEmpty(suggestedSong.ArtistName))
{
<p>
خواننده: <a href="@Html.Raw(suggestedSong.ArtistUrl)" target="_blank">@suggestedSong.ArtistName</a>
</p>
}
@if (!string.IsNullOrEmpty(suggestedSong.AlbumName))
{
<p>
آلبوم: <a href="@Html.Raw(suggestedSong.AlbumUrl)" target="_blank">@suggestedSong.AlbumName</a>
</p>
}
<p>
آهنگ: <a href="@Html.Raw(suggestedSong.TrackUrl)" target="_blank">@suggestedSong.TrackName</a>
</p>
@if (!string.IsNullOrEmpty(suggestedSong.Description))
{
<p>توضیح: @suggestedSong.Description</p>
}
</div>
}
</div>
<partial name="_Pagination" model="Model.PaginationLinks" />
}