From 7f60428fa91d3a717f5564af52e97aeaf3b410ca Mon Sep 17 00:00:00 2001 From: Hamid Reza Mohammadi Date: Tue, 2 Aug 2022 17:51:10 +0430 Subject: [PATCH] docs: #352 basic UI for adding geo/date tags to poems --- GanjooRazor/Areas/User/Pages/Editor.cshtml | 59 +++++++++++++++++++ GanjooRazor/Areas/User/Pages/Editor.cshtml.cs | 45 ++++++++++++++ 2 files changed, 104 insertions(+) diff --git a/GanjooRazor/Areas/User/Pages/Editor.cshtml b/GanjooRazor/Areas/User/Pages/Editor.cshtml index f9ab4d67..cbdb5b04 100644 --- a/GanjooRazor/Areas/User/Pages/Editor.cshtml +++ b/GanjooRazor/Areas/User/Pages/Editor.cshtml @@ -1043,6 +1043,65 @@ else

 

+ @if (Model.ShowAdminOps) + { + + برچسب‌های زمان و مکان + + + + + + + + + + + @foreach (var tag in Model.PoemGeoDateTags) + { + + + + + + + } + + + + + + + + + +
مکانسالماهروز
@($"{(tag.Location == null ? "" : tag.Location.Name)}")@tag.LunarYear@tag.LunarMonth@tag.LunarDay
+ + + + + + + +
+ برچسب جدید +
+ + + + + مکان‌ها + + + } + لغزش به بالای صفحه diff --git a/GanjooRazor/Areas/User/Pages/Editor.cshtml.cs b/GanjooRazor/Areas/User/Pages/Editor.cshtml.cs index 422b8f23..5ce2f235 100644 --- a/GanjooRazor/Areas/User/Pages/Editor.cshtml.cs +++ b/GanjooRazor/Areas/User/Pages/Editor.cshtml.cs @@ -91,6 +91,17 @@ namespace GanjooRazor.Areas.User.Pages /// public bool ShowAdminOps { get; set; } + /// + /// locations + /// + public List Locations { get; set; } + + + /// + /// poem geo date tags + /// + public PoemGeoDateTag[] PoemGeoDateTags { get; set; } + /// /// get /// @@ -191,6 +202,40 @@ namespace GanjooRazor.Areas.User.Pages { CanAssignRhythms = false; } + + if(ShowAdminOps) + { + var responseLocations = await secureClient.GetAsync($"{APIRoot.Url}/api/locations"); + if (!responseLocations.IsSuccessStatusCode) + { + FatalError = JsonConvert.DeserializeObject(await responseLocations.Content.ReadAsStringAsync()); + return Page(); + } + + Locations = new List(); + Locations.Add + ( + new GanjoorGeoLocation() + { + Id = 0, + Latitude = 0, + Longitude = 0, + Name = "" + } + ); + + Locations.AddRange(JsonConvert.DeserializeObject(await responseLocations.Content.ReadAsStringAsync())); + + + var tagsResponse = await secureClient.GetAsync($"{APIRoot.Url}/api/ganjoor/poem/{PageInformation.Id}/geotag"); + if (!tagsResponse.IsSuccessStatusCode) + { + FatalError = JsonConvert.DeserializeObject(await tagsResponse.Content.ReadAsStringAsync()); + return Page(); + } + + PoemGeoDateTags = JsonConvert.DeserializeObject(await tagsResponse.Content.ReadAsStringAsync()); + } } else {