@page @model GanjooRazor.Areas.User.Pages.EditorModel @using DNTPersianUtils.Core @{ Layout = "_UserPanelLayout"; ViewData["Title"] = "ویرایشگر"; await GanjooRazor.Utils.GanjoorSessionChecker.ApplyPermissionsToViewData(Request, Response, ViewData); string color = "#eee"; }

@ViewData["Title"]

@if (!string.IsNullOrEmpty(Model.FatalError)) {

@Model.FatalError

} else {

لطفاً در ویرایش متن به این نکات توجه فرمایید.

@Model.PageInformation.FullTitle

if (Model.MyLastEdit != null) { @if (Model.MyLastEdit.Title != null) { } @if (Model.MyLastEdit.Rhythm != null) { } @if (Model.MyLastEdit.Rhythm2 != null) { } @if (Model.MyLastEdit.RhymeLetters != null) { } @if (Model.MyLastEdit.VerseOrderText != null) @foreach (var verse in Model.MyLastEdit.VerseOrderText) { @if (verse.MarkForDelete) { } else { @if (verse.VersePosition != null) { } @if (verse.Text != null) { } @if (verse.CoupletSummary != null) { } } } @if (!string.IsNullOrEmpty(Model.MyLastEdit.Note)) { }
ویرایشهای بررسی نشدهٔ من
متن اولیه تغییرات من

@Model.MyLastEdit.OriginalTitle

@Model.MyLastEdit.Title

@Model.MyLastEdit.OriginalRhythm

@Model.MyLastEdit.Rhythm

@Model.MyLastEdit.OriginalRhythm2

@Model.MyLastEdit.Rhythm2

@Model.RhymeLetters

@Model.MyLastEdit.RhymeLetters

@verse.OriginalText

باید حذف شود

@if (verse.OriginalVersePosition != null) { نوع پیشین مصرع:

@RMuseum.Models.Ganjoor.VersePositionHelper.GetVersePositionString((RMuseum.Models.Ganjoor.VersePosition)verse.OriginalVersePosition)

}
نوع پیشنهادی مصرع:

@RMuseum.Models.Ganjoor.VersePositionHelper.GetVersePositionString((RMuseum.Models.Ganjoor.VersePosition)verse.VersePosition)

@verse.OriginalText

@verse.Text

معنی @(verse.OriginalText + " ...")

@verse.OriginalCoupletSummary

@verse.CoupletSummary

یادداشت: @Model.MyLastEdit.Note
انصراف و حذف این ویرایش
} @if (Model.PageInformation.Poem.Previous != null) { } @if (Model.PageInformation.Poem.Next != null) { } @if (Model.CanAssignRhythms) { } else { } @if (Model.CanEdit && !Model.ShowAdminOps) { } @if (Model.TextSourceImage != null) { } @foreach (var verse in Model.PageInformation.Poem.Verses) { if (color == "#eee") { color = "#ddd"; } else { color = "#eee"; } @if (Model.ShowAdminOps && verse.VOrder > 1 && verse.VersePosition != RMuseum.Models.Ganjoor.VersePosition.Left) { } } @if (!Model.CanAssignRhythms) { } @for (int verseIndex = 0; verseIndex < Model.PageInformation.Poem.Verses.Length; verseIndex++) { @if ( Model.PageInformation.Poem.Verses[verseIndex].VersePosition == RMuseum.Models.Ganjoor.VersePosition.Right || Model.PageInformation.Poem.Verses[verseIndex].VersePosition == RMuseum.Models.Ganjoor.VersePosition.CenteredVerse1 || Model.PageInformation.Poem.Verses[verseIndex].VersePosition == RMuseum.Models.Ganjoor.VersePosition.Paragraph ) { if (color == "#eee") { color = "#ddd"; } else { color = "#eee"; } } } @if (Model.PageInformation.Poem.Sections.Count(s => s.SectionType == RMuseum.Models.Ganjoor.PoemSectionType.WholePoem && s.VerseType == RMuseum.Models.Ganjoor.VersePoemSectionType.First) > 1) { } else if (Model.PageInformation.Poem.Sections.Count(s => s.SectionType == RMuseum.Models.Ganjoor.PoemSectionType.WholePoem && s.VerseType == RMuseum.Models.Ganjoor.VersePoemSectionType.First) == 1) { foreach (var poemSetion in Model.PageInformation.Poem.Sections.Where(s => s.SectionType == RMuseum.Models.Ganjoor.PoemSectionType.WholePoem && s.VerseType == RMuseum.Models.Ganjoor.VersePoemSectionType.First).ToList()) { } } @if (Model.PageInformation.Poem.Previous != null) { } @if (Model.PageInformation.Poem.Next != null) { } @if (Model.ShowAdminOps && Model.GanjoorMetre1 != null && !string.IsNullOrEmpty(Model.RhymeLetters)) { } @if (Model.ShowAdminOps && Model.GanjoorMetre2 != null && !string.IsNullOrEmpty(Model.RhymeLetters)) { } @if (Model.ShowAdminOps) { } @if (Model.CanEdit && !Model.ShowAdminOps) { } @if (Model.ShowAdminOps) { } @if (Model.ShowAdminOps) { }
سوابق ویرایش
@if (Model.ShowAdminOps) { ویرایش شعر قبل } else { ویرایش شعر قبل }
@if (Model.ShowAdminOps) { ویرایش شعر بعد } else { ویرایش شعر بعد }
لغزش به بخش وزن
لغزش به بخش قطعات
لغزش به بخش معنی
امکانات مدیریتی

منبع کاغذی:

(متن پیشنهادی نمی‌بایست از نسخهٔ متفاوتی باشد)

ویرایش متن:

عنوان فعلی:

@Model.PageInformation.Poem.Title

عنوان ویراستهٔ من:
@if (Model.MyLastEdit != null && Model.MyLastEdit.Title != null) {
@Model.MyLastEdit.Title
} else {
@Model.PageInformation.Poem.Title
}
تغییرات:

@Model.PageInformation.Poem.Title

بیت @Model.GetVerseCoupletNumber(verse).ToPersianNumbers()
ترتیب مصرع یا خط از ابتدا: @verse.VOrder.ToPersianNumbers()
متن فعلی:

@verse.Text

ویراستهٔ من:
@if (Model.MyLastEdit != null && Model.MyLastEdit.VerseOrderText != null && Model.MyLastEdit.VerseOrderText.Where(v => v.VORder == verse.VOrder && !string.IsNullOrEmpty(v.Text)).Any()) {
@Model.MyLastEdit.VerseOrderText.Where(v => v.VORder == verse.VOrder).First().Text
} else {
@verse.Text
}
تغییرات:

@verse.Text

نوع
@if (Model.MyLastEdit != null && Model.MyLastEdit.VerseOrderText != null && Model.MyLastEdit.VerseOrderText.Where(v => v.VORder == verse.VOrder).Any()) { } else { }
@if (Model.MyLastEdit != null && Model.MyLastEdit.VerseOrderText != null && Model.MyLastEdit.VerseOrderText.Where(v => v.VORder == verse.VOrder && v.MarkForDelete).Any()) { } else { }
لغزش به دکمهٔ ذخیره
شکستن از اینجا

این مورد شامل بیش از یک قطعه شعر یا دارای پاراگراف نثر است و امکان انتساب وزن به آن یا تعیین حروف قافیهٔ ان وجود ندارد.

وزن فعلی:

@(Model.GanjoorMetre1 == null ? "" : Model.GanjoorMetre1.Rhythm)

وزن ویراستهٔ من:

@if (Model.RhythmsByVerseCount != null) @foreach (var rhythm in Model.RhythmsByVerseCount) { }

پاک کردن وزن
پیشنهاد وزن جدید
حروف قافیهٔ فعلی:

@Model.RhymeLetters

حروف قافیهٔ ویراستهٔ من (بدون فاصله و حرکات):
@if (Model.MyLastEdit != null && !string.IsNullOrEmpty(Model.MyLastEdit.RhymeLetters)) { } else { } محاسبه
این شعر دو وزنی است
توضیح این ویرایش:
@if (Model.MyLastEdit != null && !string.IsNullOrEmpty(Model.MyLastEdit.Note)) { } else { }
خلاصه و معنی

توجه فرمایید که هدف از این بخش، تفسیر متن اشعار نیست. انتظار می‌رود در این بخش برای متون و اشعاری مثل داستان‌ها خلاصه یا لب مطلب را بنویسید (برای بعضی از انواع اشعار مثل غزل‌ها ممکن است خلاصهٔ کلی معنی نداشته باشد). برای خطوط یا ابیات نیز برگردان متن به نثر قابل فهم امروزی نوشته شود (لازم نیست برای همهٔ خطوط برگردان نثر نوشته شود). برای تفسیر یا درج عقاید شخصی خود راجع به اشعار از حاشیه‌ها استفاده کنید.

متن باید خلاصه، به فارسی نوشتاری رسمی (غیرمحاوره‌ای)، خالی از لغات نامأنوس (زبان همه‌کس فهم و ناسره) و بدون غلط املایی و تایپی باشد.

اگر متن موجود به اندازهٔ کافی خوب باشد ممکن است متن خیلی متفاوت جایگزین تأیید نشود.

نام و مشخصات نویسندهٔ متن در صفحهٔ شعر نمایش داده نمی‌شود اما در تاریخچهٔ تغییرات نگهداری می‌شود.

خلاصه یا مفهوم کلی شعر یا متن:
اگر متن یا شعر یک مفهوم و خلاصهٔ کلی ندارد (مثل خیلی از غزلیات حافظ) برای آن متن کلی وارد نکنید.

@Model.PageInformation.Poem.PoemSummary

@if (string.IsNullOrEmpty(Model.PageInformation.Poem.PoemSummary)) {

هنوز متنی برای خلاصهٔ کلی نوشته نشده است.

}
خلاصهٔ ویراستهٔ من (به زبان غیرمحاوره‌ای و ناسره):
@if (Model.MyLastEdit != null && Model.MyLastEdit.PoemSummary != null) {
@Model.MyLastEdit.PoemSummary
} else {
@Model.PageInformation.Poem.PoemSummary
}
تغییرات:

@Model.PageInformation.Poem.PoemSummary

لغزش به دکمهٔ ذخیره
برگردان خطوط به نثر روان:
@if (Model.PageInformation.Poem.Verses[verseIndex].VersePosition == RMuseum.Models.Ganjoor.VersePosition.Paragraph) { @Model.PageInformation.Poem.Verses[verseIndex].Text } else { @for (int nIndex = verseIndex; nIndex < Model.PageInformation.Poem.Verses.Length && (nIndex == verseIndex || ( Model.PageInformation.Poem.Verses[nIndex].VersePosition != RMuseum.Models.Ganjoor.VersePosition.Right && Model.PageInformation.Poem.Verses[nIndex].VersePosition != RMuseum.Models.Ganjoor.VersePosition.CenteredVerse1 && Model.PageInformation.Poem.Verses[nIndex].VersePosition != RMuseum.Models.Ganjoor.VersePosition.Paragraph )) ; nIndex++) { }
@Model.PageInformation.Poem.Verses[nIndex].Text
}
معنای خط یا بیت:

@Model.PageInformation.Poem.Verses[verseIndex].CoupletSummary

@if (string.IsNullOrEmpty(Model.PageInformation.Poem.Verses[verseIndex].CoupletSummary)) {

هنوز متنی برای معنی نوشته نشده است.

}
معنای ویراستهٔ من (به زبان غیرمحاوره‌ای و ناسره):
@if (Model.MyLastEdit != null && Model.MyLastEdit.VerseOrderText != null && Model.MyLastEdit.VerseOrderText.Where(v => v.VORder == Model.PageInformation.Poem.Verses[verseIndex].VOrder && !string.IsNullOrEmpty(v.CoupletSummary)).Any()) {
@Model.MyLastEdit.VerseOrderText.Where(v => v.VORder == Model.PageInformation.Poem.Verses[verseIndex].VOrder).First().CoupletSummary
} else {
@Model.PageInformation.Poem.Verses[verseIndex].CoupletSummary
}
تغییرات:

@Model.PageInformation.Poem.Verses[verseIndex].CoupletSummary

لغزش به دکمهٔ ذخیره
قطعات:
@foreach (var poemSetion in Model.PageInformation.Poem.Sections.Where(s => s.SectionType == RMuseum.Models.Ganjoor.PoemSectionType.WholePoem && s.VerseType == RMuseum.Models.Ganjoor.VersePoemSectionType.First).ToList()) { }
قطعهٔ @(poemSetion.Number.ToPersianNumbers()):
@Html.Raw(poemSetion.HtmlText)
وزن: @(poemSetion.GanjoorMetre == null ? "تعیین نشده" : poemSetion.GanjoorMetre.Rhythm)

شکستن شعر به قطعات مجزا
همهٔ قطعات شعر
چینش پیش‌فرض نوع مصرع‌ها
اضافه کردن مصرع‌های جاافتاده
@if (Model.ShowAdminOps) { ویرایش شعر قبل } else { ویرایش شعر قبل }
@if (Model.ShowAdminOps) { ویرایش شعر بعد } else { ویرایش شعر بعد }
بازسازی فهرست اشعار هم‌آهنگ با وزن اول
بازسازی فهرست اشعار هم‌آهنگ با وزن دوم
قطعه‌بندی مجدد
برای حذف شعر از قسمت مدیریت بخش اقدام کنید.
امکانات مدیریتی
ذخیره

 

برچسب‌های زمان و مکان
@foreach (var tag in Model.PoemGeoDateTags) { }
مکان سال ماه روز تاریخ مستند مختص شعر #
@($"{(tag.Location == null ? "" : tag.Location.Name)}") @tag.LunarYear @{ switch (tag.LunarMonth) { case 1: @("محرم") ; break; case 2: @("صفر") ; break; case 3: @("ربیع‌الاول") ; break; case 4: @("ربیع‌الثانی") ; break; case 5: @("جمادی‌الاول") ; break; case 6: @("جمادی‌الثانی") ; break; case 7: @("رجب") ; break; case 8: @("شعبان") ; break; case 9: @("رمضان") ; break; case 10: @("شوال") ; break; case 11: @("ذیقعده") ; break; case 12: @("ذیحجه") ; break; } } @tag.LunarDay @if (tag.VerifiedDate) { } else { } @if (tag.IgnoreInCategory) { } else { }
برچسب جدید
مکان‌ها
ابرداده‌های اضافه
ایندکس نشود @if (Model.PageInformation.NoIndex) { } else { }
از این نشانی (کامل) هم به این صفحه ری‌دایرکت شود
ترتیب در فهرستها:
ذخیرهٔ ابرداده‌ها
لغزش به بالای صفحه
}