From 3ed9d5294ed08f8f4b21580d62a828a145982abe Mon Sep 17 00:00:00 2001
From: Hamid Reza Mohammadi
Date: Thu, 3 Mar 2022 12:21:11 +0330
Subject: [PATCH] docs: #285 loading category FAQ items
---
GanjooRazor/Areas/User/Pages/FAQItems.cshtml | 36 +++++++++++++++++--
.../Areas/User/Pages/FAQItems.cshtml.cs | 29 ++++++++++++++-
2 files changed, 62 insertions(+), 3 deletions(-)
diff --git a/GanjooRazor/Areas/User/Pages/FAQItems.cshtml b/GanjooRazor/Areas/User/Pages/FAQItems.cshtml
index 67bd27ea..e07619b5 100644
--- a/GanjooRazor/Areas/User/Pages/FAQItems.cshtml
+++ b/GanjooRazor/Areas/User/Pages/FAQItems.cshtml
@@ -20,7 +20,7 @@ else
location.href = '/User/FAQCatEdit?id=' + String(document.getElementById('cat').value);
}
function deleteCategory() {
-
+
var sel = document.getElementById('cat');
var text= sel.options[sel.selectedIndex].text;
@@ -45,12 +45,40 @@ else
});
}
+
+ function onSelectedCatChanged(){
+ var sel = document.getElementById('cat');
+ if(sel.selectedIndex >= 0){
+ document.getElementById('catItems').innerHTML = 'در حال بارگذاری ...';
+ $.ajax({
+ type: "GET",
+ url: '?Handler=CategoryItems',
+ data: {
+ id: sel.value
+ },
+ error: function (e) {
+ document.getElementById('catItems').innerHTML = '';
+ if (e.responseText == null)
+ alert(e);
+ else
+ alert(e.responseText);
+ },
+ success: function (items) {
+ var s = '';
+ for(var i=0; i' + '' + items[i].question + '
');
+ }
+ document.getElementById('catItems').innerHTML = s;
+ },
+ });
+ }
+ }
| دستهبندی پرسشها: |
- |
+ پرسشهای دستهٔ جاری
+
+
+
}
diff --git a/GanjooRazor/Areas/User/Pages/FAQItems.cshtml.cs b/GanjooRazor/Areas/User/Pages/FAQItems.cshtml.cs
index f15a1f08..beec7fe0 100644
--- a/GanjooRazor/Areas/User/Pages/FAQItems.cshtml.cs
+++ b/GanjooRazor/Areas/User/Pages/FAQItems.cshtml.cs
@@ -16,6 +16,7 @@ namespace GanjooRazor.Areas.User.Pages
public string LastMessage { get; set; }
public FAQCategory[] Categories { get; set; }
+
public async Task OnGetAsync()
{
if(string.IsNullOrEmpty(Request.Cookies["Token"]))
@@ -64,7 +65,6 @@ namespace GanjooRazor.Areas.User.Pages
{
return new BadRequestObjectResult(JsonConvert.DeserializeObject(await response.Content.ReadAsStringAsync()));
}
-
}
else
{
@@ -73,5 +73,32 @@ namespace GanjooRazor.Areas.User.Pages
}
return new JsonResult(true);
}
+
+ public async Task OnGetCategoryItemsAsync(int id)
+ {
+ using (HttpClient secureClient = new HttpClient())
+ {
+ if (await GanjoorSessionChecker.PrepareClient(secureClient, Request, Response))
+ {
+ HttpResponseMessage response = await secureClient.GetAsync($"{APIRoot.Url}/api/faq/cat/secure/items?catId={id}");
+ if (!response.IsSuccessStatusCode)
+ {
+ return new BadRequestObjectResult(JsonConvert.DeserializeObject(await response.Content.ReadAsStringAsync()));
+ }
+
+ var items = JsonConvert.DeserializeObject(await response.Content.ReadAsStringAsync());
+ if(items == null)
+ {
+ items = new FAQItem[] { };
+ }
+ return new JsonResult(items);
+
+ }
+ else
+ {
+ return new BadRequestObjectResult("لطفا از گنجور خارج و مجددا به آن وارد شوید.");
+ }
+ }
+ }
}
}