From f5409ff243f29f3b9f851b88a79a9e21edc9d01b Mon Sep 17 00:00:00 2001 From: rdbsolutions Date: Thu, 21 Mar 2024 11:54:40 +0000 Subject: [PATCH] added sorting to viewall page --- components/myportal/viewall.js | 996 +++++++++++++++++++------------- pages/api/auth/[...nextauth].js | 4 +- 2 files changed, 603 insertions(+), 397 deletions(-) diff --git a/components/myportal/viewall.js b/components/myportal/viewall.js index c6f98cc5..d50fbe38 100644 --- a/components/myportal/viewall.js +++ b/components/myportal/viewall.js @@ -6,6 +6,11 @@ import { connect } from "react-redux"; import { JSONPath as jsonpath } from "jsonpath-plus"; import transLookup from "../../data/lookuptranslations.json"; import { getFormCollectionByID } from "../../components/utils"; +import { useCallback, useState } from "react"; +import { + setSearchResults, + setSearchDetails, +} from "../../store/searchOutput/action"; const ViewAllResults = (props) => { const { @@ -14,6 +19,7 @@ const ViewAllResults = (props) => { currentView, setCurrentReference, myportal, + setSearchResults, } = props; let { t } = useTranslation(); @@ -29,6 +35,11 @@ const ViewAllResults = (props) => { ? props["awaitingSubmission"].awaitingSubmissionDetails.case : props[currentView.viewKey][currentView.viewKey].value || []; + const [orderByState, setOrderbyState] = useState("createdon"); + const [fieldSortState, setfieldSortState] = useState("asc"); + const [showSpinnerState, setShowSpinnerState] = useState(false); + const [selectedOption, setSelectedOption] = useState(10); + function formatDates(dateObj) { var dateObj = new Date(dateObj); var dd = String(dateObj.getDate()).padStart(2, "0"); @@ -46,105 +57,113 @@ const ViewAllResults = (props) => { : props[currentView.viewKey][currentView.viewKey + "Details"] || []; let resultsRowArr = []; - resultsArr.map((item, key) => { - let detailsObj = jsonpath( - '$..value[?(@.pinswg_name=="' + item.pinswg_title + '")]', - searchDetailsObj - ); - detailsObj = detailsObj[0]; + const buildResultsRowArr = () => { + resultsArr.map((item, key) => { + let detailsObj = jsonpath( + '$..value[?(@.pinswg_name=="' + currentView.viewKey == + "awaitingSubmissionDetails" + ? item.title + : item.pinswg_title + '")]', + searchDetailsObj + ); + detailsObj = detailsObj[0]; - //console.log(searchDetailsObj[key]); + //console.log(searchDetailsObj[key]); - // searchDetailsObj[key] = - // currentView.viewKey == "myRepresentations" - // ? searchDetailsObj[key].value[0] - // : searchDetailsObj[key]; + // searchDetailsObj[key] = + // currentView.viewKey == "myRepresentations" + // ? searchDetailsObj[key].value[0] + // : searchDetailsObj[key]; - resultsRowArr.push( -
-
- { - setCurrentReference({ - "currentReference": - currentView.viewKey != "watchedCases" - ? currentView.viewKey == - "myRepresentations" - ? resultsArr[key].caseRef - : resultsArr[key].ticketnumber - : resultsArr[key][ - "_pinswg_watchedcase_value@OData.Community.Display.V1.FormattedValue" - ], + resultsRowArr.push( +
+
+ { + setCurrentReference({ + "currentReference": + currentView.viewKey != "watchedCases" + ? currentView.viewKey == + "myRepresentations" + ? resultsArr[key].caseRef + : resultsArr[key].ticketnumber + : resultsArr[key][ + "_pinswg_watchedcase_value@OData.Community.Display.V1.FormattedValue" + ], - "currentType": currentView.viewKey, - "incidentid": - currentView.viewKey != "watchedCases" - ? resultsArr[key].incidentid - : resultsArr[key][ - "_pinswg_watchedcase_value" - ], + "currentType": currentView.viewKey, + "incidentid": + currentView.viewKey != "watchedCases" + ? resultsArr[key].incidentid + : resultsArr[key][ + "_pinswg_watchedcase_value" + ], - "appealType": - resultsArr[key].pinswg_appealcasetype, - "repDetails": - currentView.viewKey == - "myRepresentations" && resultsArr[key], - }); - }} - > + "appealType": + resultsArr[key].pinswg_appealcasetype, + "repDetails": + currentView.viewKey == + "myRepresentations" && + resultsArr[key], + }); + }} + > + + {t("search:searchresults-case-reference-label")} + : + + {currentView.viewKey != "watchedCases" + ? currentView.viewKey == "myRepresentations" + ? resultsArr[key].caseRef + : resultsArr[key].ticketnumber + : resultsArr[key][ + "_pinswg_watchedcase_value@OData.Community.Display.V1.FormattedValue" + ]} + +
+
- {t("search:searchresults-case-reference-label")}: + {t("search:searchresults-site-address-label")}: - {currentView.viewKey != "watchedCases" - ? currentView.viewKey == "myRepresentations" - ? resultsArr[key].caseRef - : resultsArr[key].ticketnumber - : resultsArr[key][ - "_pinswg_watchedcase_value@OData.Community.Display.V1.FormattedValue" - ]} - -
-
- - {t("search:searchresults-site-address-label")}: - - {/* {getFormCollectionByID(appealTypeID).PrimaryIdAttribute == + {/* {getFormCollectionByID(appealTypeID).PrimaryIdAttribute == "pinswg_dnsid" ? detailsObj.pinswg_projectlocation != null ? detailsObj.pinswg_projectlocation.indexOf(";") < 0 @@ -158,318 +177,378 @@ const ViewAllResults = (props) => { )[0] : "" : ""} */} - {currentView.viewKey == "awaitingSubmissionDetails" && - _.has(searchDetailsObj[key], "pinswg_siteaddressline1") - ? searchDetailsObj[key].pinswg_siteaddressline1 - : ""} - {_.has(detailsObj, "pinswg_siteaddressline1") - ? detailsObj.pinswg_siteaddressline1 - : ""} - {currentView.viewKey == "myRepresentations" && - _.has(searchDetailsObj[key].pinswg_siteaddressline1) - ? searchDetailsObj[key].value[0].pinswg_siteaddressline1 - : ""} - {_.has(detailsObj, "pinswg_siteaddressline1") - ? detailsObj.pinswg_siteaddressline1 - : ""} - {currentView.viewKey == "awaitingSubmissionDetails" && - _.has( - searchDetailsObj[key], - "pinswg_siteaddressline1" - ) && - searchDetailsObj[key].pinswg_siteaddressline1 != - null &&
} - {currentView.viewKey == "myRepresentations" && - _.has(searchDetailsObj[key].pinswg_siteaddressline1) && - searchDetailsObj[key].value[0] - .pinswg_siteaddressline1 != null &&
} - {_.has(detailsObj, "pinswg_siteaddressline1") && - detailsObj.pinswg_siteaddressline1 != null &&
} - {currentView.viewKey == "awaitingSubmissionDetails" && - _.has(searchDetailsObj[key], "pinswg_siteaddressline1") - ? searchDetailsObj[key].pinswg_siteaddressline2 - : ""} - {currentView.viewKey == "myRepresentations" && - _.has(searchDetailsObj[key].pinswg_siteaddressline1) - ? searchDetailsObj[key].pinswg_siteaddressline2 - : ""} - {_.has(detailsObj, "pinswg_siteaddressline1") - ? detailsObj.pinswg_siteaddressline2 - : ""} - {currentView.viewKey == "awaitingSubmissionDetails" && - _.has( - searchDetailsObj[key], - "pinswg_siteaddressline2" - ) && - searchDetailsObj[key].pinswg_siteaddressline2 != - null &&
} + {currentView.viewKey == "awaitingSubmissionDetails" && + _.has(searchDetailsObj[key], "pinswg_siteaddressline1") + ? searchDetailsObj[key].pinswg_siteaddressline1 + : ""} + {_.has(detailsObj, "pinswg_siteaddressline1") + ? detailsObj.pinswg_siteaddressline1 + : ""} + {currentView.viewKey == "myRepresentations" && + _.has(searchDetailsObj[key].pinswg_siteaddressline1) + ? searchDetailsObj[key].value[0] + .pinswg_siteaddressline1 + : ""} + {_.has(detailsObj, "pinswg_siteaddressline1") + ? detailsObj.pinswg_siteaddressline1 + : ""} + {currentView.viewKey == "awaitingSubmissionDetails" && + _.has( + searchDetailsObj[key], + "pinswg_siteaddressline1" + ) && + searchDetailsObj[key].pinswg_siteaddressline1 != + null &&
} + {currentView.viewKey == "myRepresentations" && + _.has( + searchDetailsObj[key].pinswg_siteaddressline1 + ) && + searchDetailsObj[key].value[0] + .pinswg_siteaddressline1 != null &&
} + {_.has(detailsObj, "pinswg_siteaddressline1") && + detailsObj.pinswg_siteaddressline1 != null && ( +
+ )} + {currentView.viewKey == "awaitingSubmissionDetails" && + _.has(searchDetailsObj[key], "pinswg_siteaddressline1") + ? searchDetailsObj[key].pinswg_siteaddressline2 + : ""} + {currentView.viewKey == "myRepresentations" && + _.has(searchDetailsObj[key].pinswg_siteaddressline1) + ? searchDetailsObj[key].pinswg_siteaddressline2 + : ""} + {_.has(detailsObj, "pinswg_siteaddressline1") + ? detailsObj.pinswg_siteaddressline2 + : ""} + {currentView.viewKey == "awaitingSubmissionDetails" && + _.has( + searchDetailsObj[key], + "pinswg_siteaddressline2" + ) && + searchDetailsObj[key].pinswg_siteaddressline2 != + null &&
} - {currentView.viewKey == "myRepresentations" && - _.has(searchDetailsObj[key].pinswg_siteaddressline2) && - searchDetailsObj[key].pinswg_siteaddressline1 != - null &&
} + {currentView.viewKey == "myRepresentations" && + _.has( + searchDetailsObj[key].pinswg_siteaddressline2 + ) && + searchDetailsObj[key].pinswg_siteaddressline1 != + null &&
} - {_.has(detailsObj, "pinswg_siteaddressline2") && - detailsObj.pinswg_siteaddressline2 != null &&
} - {currentView.viewKey == "awaitingSubmissionDetails" && - _.has(searchDetailsObj[key], "pinswg_siteaddresstown") - ? searchDetailsObj[key].pinswg_siteaddresstown - : ""} - {currentView.viewKey == "myRepresentations" && - _.has(searchDetailsObj[key], "pinswg_siteaddresstown") - ? searchDetailsObj[key].pinswg_siteaddresstown - : ""} - {_.has(detailsObj, "pinswg_siteaddresstown") - ? detailsObj.pinswg_siteaddresstown - : ""} - {currentView.viewKey == "awaitingSubmissionDetails" && + {_.has(detailsObj, "pinswg_siteaddressline2") && + detailsObj.pinswg_siteaddressline2 != null && ( +
+ )} + {currentView.viewKey == "awaitingSubmissionDetails" && + _.has(searchDetailsObj[key], "pinswg_siteaddresstown") + ? searchDetailsObj[key].pinswg_siteaddresstown + : ""} + {currentView.viewKey == "myRepresentations" && + _.has(searchDetailsObj[key], "pinswg_siteaddresstown") + ? searchDetailsObj[key].pinswg_siteaddresstown + : ""} + {_.has(detailsObj, "pinswg_siteaddresstown") + ? detailsObj.pinswg_siteaddresstown + : ""} + {currentView.viewKey == "awaitingSubmissionDetails" && + _.has( + searchDetailsObj[key], + "pinswg_siteaddresstown" + ) && + searchDetailsObj[key].pinswg_siteaddresstown != + null &&
} + + {currentView.viewKey == "myRepresentations" && + _.has( + searchDetailsObj[key], + "pinswg_siteaddresstown" + ) && + searchDetailsObj[key].pinswg_siteaddresstown != + null &&
} + + {_.has(detailsObj, "pinswg_siteaddresstown") && + detailsObj.pinswg_siteaddresstown != null &&
} + {currentView.viewKey == "awaitingSubmissionDetails" && + _.has(searchDetailsObj[key], "pinswg_siteaddresscounty") + ? searchDetailsObj[key].pinswg_siteaddresscounty + : ""} + {currentView.viewKey == "myRepresentations" && + _.has(searchDetailsObj[key], "pinswg_siteaddresscounty") + ? searchDetailsObj[key].pinswg_siteaddresscounty + : ""} + {_.has(detailsObj, "pinswg_siteaddresscounty") + ? detailsObj.pinswg_siteaddresscounty + : ""} + {currentView.viewKey == "awaitingSubmissionDetails" && + _.has( + searchDetailsObj[key], + "pinswg_siteaddresscounty" + ) && + searchDetailsObj[key].pinswg_siteaddresscounty != + null &&
} + {_.has(detailsObj, "pinswg_siteaddresscounty") && + detailsObj.pinswg_siteaddresscounty != null && ( +
+ )} + {currentView.viewKey == "awaitingSubmissionDetails" && _.has( searchDetailsObj[key], - "pinswg_siteaddresstown" - ) && - searchDetailsObj[key].pinswg_siteaddresstown != - null &&
} - - {currentView.viewKey == "myRepresentations" && - _.has( - searchDetailsObj[key], - "pinswg_siteaddresstown" - ) && - searchDetailsObj[key].pinswg_siteaddresstown != - null &&
} - - {_.has(detailsObj, "pinswg_siteaddresstown") && - detailsObj.pinswg_siteaddresstown != null &&
} - {currentView.viewKey == "awaitingSubmissionDetails" && - _.has(searchDetailsObj[key], "pinswg_siteaddresscounty") - ? searchDetailsObj[key].pinswg_siteaddresscounty - : ""} - {currentView.viewKey == "myRepresentations" && - _.has(searchDetailsObj[key], "pinswg_siteaddresscounty") - ? searchDetailsObj[key].pinswg_siteaddresscounty - : ""} - {_.has(detailsObj, "pinswg_siteaddresscounty") - ? detailsObj.pinswg_siteaddresscounty - : ""} - {currentView.viewKey == "awaitingSubmissionDetails" && - _.has( - searchDetailsObj[key], - "pinswg_siteaddresscounty" - ) && - searchDetailsObj[key].pinswg_siteaddresscounty != - null &&
} - {_.has(detailsObj, "pinswg_siteaddresscounty") && - detailsObj.pinswg_siteaddresscounty != null &&
} - {currentView.viewKey == "awaitingSubmissionDetails" && - _.has(searchDetailsObj[key], "pinswg_siteaddresspostcode") - ? searchDetailsObj[key].pinswg_siteaddresspostcode - : ""} - {_.has(detailsObj, "pinswg_siteaddresspostcode") - ? detailsObj.pinswg_siteaddresspostcode - : ""} -
-
- + "pinswg_siteaddresspostcode" + ) + ? searchDetailsObj[key].pinswg_siteaddresspostcode + : ""} + {_.has(detailsObj, "pinswg_siteaddresspostcode") + ? detailsObj.pinswg_siteaddresspostcode + : ""} +
+
+ + {currentView.viewKey == "awaitingSubmissionDetails" + ? t("search:searchresults-created-on-label") + : t("search:searchresults-applicant-label")} + {currentView.viewKey == "awaitingSubmissionDetails" - ? t("search:searchresults-created-on-label") - : t("search:searchresults-applicant-label")} - - {currentView.viewKey == "awaitingSubmissionDetails" - ? formatDates(item.createdon) - : _.has(detailsObj, [ - "_pinswg_appellant_value@OData.Community.Display.V1.FormattedValue", - ]) - ? detailsObj[ - "_pinswg_appellant_value@OData.Community.Display.V1.FormattedValue" - ] - : currentView.viewKey == "myRepresentations" - ? searchDetailsObj[key][ - "_pinswg_appellant_value@OData.Community.Display.V1.FormattedValue" - ] - : resultsArr[key][ - "_customerid_value@OData.Community.Display.V1.FormattedValue" - ]} -
-
- - {t("search:searchresults-authority-label")}: - - {currentView.viewKey == "awaitingSubmissionDetails" && - _.has(resultsArr[key], "pinswg_lpaname") - ? router.locale == "cy" - ? jsonpath( - '$..[?(@.value=="' + - resultsArr[key].pinswg_lpaname + - '")].value_cy', - transLookup - ) - : resultsArr[key].pinswg_lpaname || "N/A" - : ""} - {_.has(resultsArr[key], [ - "_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue", - ]) - ? router.locale == "cy" - ? jsonpath( - '$..[?(@.value=="' + - resultsArr[key][ - "_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue" - ] + - '")].value_cy', - transLookup - ) - : resultsArr[key][ - "_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue" - ] || "N/A" - : ""} - {_.has(searchDetailsObj[key], [ - "_pinswg_localplanningauthority_value@OData.Community.Display.V1.FormattedValue", - ]) - ? router.locale == "cy" - ? jsonpath( - '$..[?(@.value=="' + - searchDetailsObj[key].value[0][ - "_pinswg_localplanningauthority_value@OData.Community.Display.V1.FormattedValuee" - ] + - '")].value_cy', - transLookup - ) + ? formatDates(item.createdon) + : _.has(detailsObj, [ + "_pinswg_appellant_value@OData.Community.Display.V1.FormattedValue", + ]) + ? detailsObj[ + "_pinswg_appellant_value@OData.Community.Display.V1.FormattedValue" + ] : currentView.viewKey == "myRepresentations" - ? searchDetailsObj[key].value - : searchDetailsObj[key].value[0][ - "_pinswg_localplanningauthority_value@OData.Community.Display.V1.FormattedValue" - ] || "N/A" - : ""} - {_.has(resultsArr[key], [ - "_pinswg_localplanningauthority_value@OData.Community.Display.V1.FormattedValue", - ]) - ? router.locale == "cy" + ? searchDetailsObj[key][ + "_pinswg_appellant_value@OData.Community.Display.V1.FormattedValue" + ] + : resultsArr[key][ + "_customerid_value@OData.Community.Display.V1.FormattedValue" + ]} +
+
+ + {t("search:searchresults-authority-label")}: + + {currentView.viewKey == "awaitingSubmissionDetails" && + _.has(resultsArr[key], "pinswg_lpaname") + ? router.locale == "cy" + ? jsonpath( + '$..[?(@.value=="' + + resultsArr[key].pinswg_lpaname + + '")].value_cy', + transLookup + ) + : resultsArr[key].pinswg_lpaname || "N/A" + : ""} + {_.has(resultsArr[key], [ + "_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue", + ]) + ? router.locale == "cy" + ? jsonpath( + '$..[?(@.value=="' + + resultsArr[key][ + "_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue" + ] + + '")].value_cy', + transLookup + ) + : resultsArr[key][ + "_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue" + ] || "N/A" + : ""} + {_.has(searchDetailsObj[key], [ + "_pinswg_localplanningauthority_value@OData.Community.Display.V1.FormattedValue", + ]) + ? router.locale == "cy" + ? jsonpath( + '$..[?(@.value=="' + + searchDetailsObj[key].value[0][ + "_pinswg_localplanningauthority_value@OData.Community.Display.V1.FormattedValuee" + ] + + '")].value_cy', + transLookup + ) + : currentView.viewKey == "myRepresentations" + ? searchDetailsObj[key].value + : searchDetailsObj[key].value[0][ + "_pinswg_localplanningauthority_value@OData.Community.Display.V1.FormattedValue" + ] || "N/A" + : ""} + {_.has(resultsArr[key], [ + "_pinswg_localplanningauthority_value@OData.Community.Display.V1.FormattedValue", + ]) + ? router.locale == "cy" + ? jsonpath( + '$..[?(@.value=="' + + resultsArr[key][ + "_pinswg_localplanningauthority_value@OData.Community.Display.V1.FormattedValuee" + ] + + '")].value_cy', + transLookup + ) + : resultsArr[key][ + "_pinswg_localplanningauthority_value@OData.Community.Display.V1.FormattedValue" + ] || + (currentView.viewKey == "myRepresentations" + ? "" + : "N/A") + : currentView.viewKey == "myRepresentations" && + router.locale == "cy" && + jsonpath( + '$..[?(@.value=="' + + searchDetailsObj[key][ + "_pinswg_localplanningauthority_value@OData.Community.Display.V1.FormattedValue" + ] + + '")].value_cy', + transLookup + )} +
+
+ + {t("search:searchresults-case-type-label")}: + + + {currentView.viewKey == "awaitingSubmissionDetails" + ? router.locale == "cy" + ? jsonpath( + '$..[?(@.value=="' + + getFormCollectionByID( + item.pinswg_appealcasetype + ).value + + '")].value_cy', + transLookup + ) + : getFormCollectionByID( + item.pinswg_appealcasetype + ).value || "N/A" + : router.locale == "cy" ? jsonpath( '$..[?(@.value=="' + - resultsArr[key][ - "_pinswg_localplanningauthority_value@OData.Community.Display.V1.FormattedValuee" + item[ + "pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue" ] + '")].value_cy', transLookup ) - : resultsArr[key][ - "_pinswg_localplanningauthority_value@OData.Community.Display.V1.FormattedValue" + : item[ + "pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue" ] || (currentView.viewKey == "myRepresentations" ? "" - : "N/A") - : currentView.viewKey == "myRepresentations" && - router.locale == "cy" && - jsonpath( - '$..[?(@.value=="' + - searchDetailsObj[key][ - "_pinswg_localplanningauthority_value@OData.Community.Display.V1.FormattedValue" - ] + - '")].value_cy', - transLookup - )} -
-
- - {t("search:searchresults-case-type-label")}: - + : "N/A")} - {currentView.viewKey == "awaitingSubmissionDetails" - ? router.locale == "cy" - ? jsonpath( - '$..[?(@.value=="' + - getFormCollectionByID( - item.pinswg_appealcasetype - ).value + - '")].value_cy', - transLookup - ) - : getFormCollectionByID(item.pinswg_appealcasetype) - .value || "N/A" - : router.locale == "cy" - ? jsonpath( - '$..[?(@.value=="' + - item[ - "pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue" - ] + - '")].value_cy', - transLookup - ) - : item[ - "pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue" - ] || - (currentView.viewKey == "myRepresentations" - ? "" - : "N/A")} + {currentView.viewKey == "myRepresentations" && + (router.locale == "cy" + ? jsonpath( + '$..[?(@.value=="' + + getFormCollectionByID( + searchDetailsObj[key].appealType + ).value + + '")].value_cy', + transLookup + )[0] + : getFormCollectionByID( + searchDetailsObj[key].appealType + ).value)} + {_.has( + searchDetailsObj[key], + "_pinswg_localplanningauthority_value@OData.Community.Display.V1.FormattedValue" + )} +
+
+ + {currentView.viewKey == "myRepresentations" + ? "Created" + : t("search:searchresults-status-label")} + : + - {currentView.viewKey == "myRepresentations" && - (router.locale == "cy" - ? jsonpath( - '$..[?(@.value=="' + - getFormCollectionByID( - searchDetailsObj[key].appealType - ).value + - '")].value_cy', - transLookup - )[0] - : getFormCollectionByID( - searchDetailsObj[key].appealType - ).value)} - {_.has( - searchDetailsObj[key], - "_pinswg_localplanningauthority_value@OData.Community.Display.V1.FormattedValue" - )} -
-
- - {currentView.viewKey == "myRepresentations" - ? "Created" - : t("search:searchresults-status-label")} - : - + {currentView.viewKey == "awaitingSubmissionDetails" + ? router.locale == "cy" + ? jsonpath( + '$..[?(@.statuscode=="' + + item.statuscode + + '")].value_cy', + transLookup + ) + : jsonpath( + '$..[?(@.statuscode=="' + + item.statuscode + + '")].value', + transLookup + ) || "N/A" + : currentView.viewKey == "myRepresentations" + ? repRaisedDate(item.createdDate) // ? router.locale == "cy" + : // ? jsonpath( + // + // '$..[?(@.value=="' + + // searchDetailsObj[key].value[0][ + // "statuscode@OData.Community.Display.V1.FormattedValue" + // ] + + // '")].value_cy',transLookup, + // ) + // : searchDetailsObj[key].value[0][ + // "statuscode@OData.Community.Display.V1.FormattedValue" + // ] || "N/A" + // : router.locale == "cy" + // ? jsonpath( + // + // '$..[?(@.value=="' + + // item[ + // "statuscode@OData.Community.Display.V1.FormattedValue" + // ] + + // '")].value_cy',transLookup, + // ) + item[ + "statuscode@OData.Community.Display.V1.FormattedValue" + ] || "N/A"} +
+
+ ); + }); + }; + buildResultsRowArr(); - {currentView.viewKey == "awaitingSubmissionDetails" - ? router.locale == "cy" - ? jsonpath( - '$..[?(@.statuscode=="' + - item.statuscode + - '")].value_cy', - transLookup - ) - : jsonpath( - '$..[?(@.statuscode=="' + - item.statuscode + - '")].value', - transLookup - ) || "N/A" - : currentView.viewKey == "myRepresentations" - ? repRaisedDate(item.createdDate) // ? router.locale == "cy" - : // ? jsonpath( - // - // '$..[?(@.value=="' + - // searchDetailsObj[key].value[0][ - // "statuscode@OData.Community.Display.V1.FormattedValue" - // ] + - // '")].value_cy',transLookup, - // ) - // : searchDetailsObj[key].value[0][ - // "statuscode@OData.Community.Display.V1.FormattedValue" - // ] || "N/A" - // : router.locale == "cy" - // ? jsonpath( - // - // '$..[?(@.value=="' + - // item[ - // "statuscode@OData.Community.Display.V1.FormattedValue" - // ] + - // '")].value_cy',transLookup, - // ) - item[ - "statuscode@OData.Community.Display.V1.FormattedValue" - ] || "N/A"} - - - ); - }); + const sortDataBy = (whichField) => { + setOrderbyState(whichField); + setfieldSortState("asc"); + + getSearchPageResults(1, whichField, fieldSortState); + whichField == orderByState + ? fieldSortState == "desc" + ? setfieldSortState("asc") + : setfieldSortState("desc") + : setfieldSortState("asc"); + //setCurrentPage(1); + //setShowSpinnerState(true); + }; + + const getSearchPageResults = useCallback( + (pageNumber, orderBy, fieldSort) => { + //console.log(advancedSearch, searchString, pageNumber); + console.log(pageNumber, orderBy, fieldSort); + resultsArr.sort(dynamicSort(orderBy, fieldSort)); + console.log(resultsArr); + }, + [selectedOption] + ); + + function dynamicSort(property, order) { + var sort_order = 1; + if (order === "desc") { + sort_order = -1; + } + return function (a, b) { + // a should come before b in the sorted order + if (a[property] < b[property]) { + return -1 * sort_order; + // a should come after b in the sorted order + } else if (a[property] > b[property]) { + return 1 * sort_order; + // a and b are the same + } else { + return 0 * sort_order; + } + }; + } return ( <> @@ -489,7 +568,32 @@ const ViewAllResults = (props) => {
- {t("search:searchresults-case-reference-label")} +
{t("search:searchresults-site-address-label")} @@ -497,7 +601,21 @@ const ViewAllResults = (props) => { {currentView.viewKey == "awaitingSubmissionDetails" ? (
- {t("search:searchresults-created-on-label")}{" "} +
) : (
@@ -505,19 +623,101 @@ const ViewAllResults = (props) => {
)}
- {t("search:searchresults-authority-label")} +
- {t("search:searchresults-case-type-label")} + {currentView.viewKey != + "awaitingSubmissionDetails" ? ( + + ) : ( + t("search:searchresults-case-type-label") + )}{" "}
- {currentView.viewKey == "myRepresentations" - ? "Created" - : t("search:searchresults-status-label")} + {currentView.viewKey == "myRepresentations" ? ( + + ) : ( + t("search:searchresults-status-label") + )}
- - {resultsRowArr} + {showSpinnerState == true ? ( +
+
+ {t("common:spinner-fetching-data")} + { +
+
+ ) : ( + resultsRowArr + )}
@@ -542,6 +742,12 @@ const mapDispatchToProps = (dispatch) => { setCurrentReference: (currentReference) => { dispatch(setCurrentReference(currentReference)); }, + setSearchResults: (searchResultsObj) => { + dispatch(setSearchResults(searchResultsObj)); + }, + setSearchDetails: (searchDetailsObj) => { + dispatch(setSearchDetails(searchDetailsObj)); + }, }; }; diff --git a/pages/api/auth/[...nextauth].js b/pages/api/auth/[...nextauth].js index 51ad0b9c..0ab7ee64 100644 --- a/pages/api/auth/[...nextauth].js +++ b/pages/api/auth/[...nextauth].js @@ -150,7 +150,7 @@ const authOptions = (locale, req, res) => { }, }, EmailProvider({ - maxAge: 10 * 60, // Magic links are valid for 10 min only + maxAge: 2 * 60 * 60, //10 * 60, // Magic links are valid for 10 min only async sendVerificationRequest({ identifier: email, url }) { const { host, port, protocol, token, searchParams } = new URL(url); @@ -173,7 +173,7 @@ const authOptions = (locale, req, res) => { "emailAddress": email, "signInLink": url, - "linkExpiry": 10 * 60, + "linkExpiry": 2 * 60 * 60, }; const reference = "PEDW-SIGNIN";