diff --git a/requests/script.js b/requests/script.js index 946fcebc..2cb63b82 100644 --- a/requests/script.js +++ b/requests/script.js @@ -62,7 +62,7 @@ const intersectionObserver = new IntersectionObserver(async (entries) => { } if (entries[0].isIntersecting && !isDataLoading) { await renderRequestCards({ - state: statusValue, + [isDev ? 'status' : 'state']: statusValue, sort: sortByValue, next: nextLink, requestType: currentReqType, @@ -88,7 +88,7 @@ oooTabLink.addEventListener('click', async function (event) { changeFilter(); updateUrlWithQuery(currentReqType); await renderRequestCards({ - state: statusValue, + [isDev ? 'status' : 'state']: statusValue, sort: sortByValue, requestType: currentReqType, }); @@ -105,7 +105,7 @@ extensionTabLink.addEventListener('click', async function (event) { changeFilter(); updateUrlWithQuery(currentReqType); await renderRequestCards({ - state: statusValue, + [isDev ? 'status' : 'state']: statusValue, sort: sortByValue, requestType: currentReqType, }); @@ -207,6 +207,7 @@ const changeFilter = () => { function createRequestCard(request, superUserDetails, requesterUserDetails) { let { id, + status, state, from, until, @@ -219,17 +220,18 @@ function createRequestCard(request, superUserDetails, requesterUserDetails) { reason, updatedAt, } = request; + const requestStatus = isDev ? status : state; let showSuperuserDetailsClass = 'notHidden'; let showActionButtonClass = 'notHidden'; const isRequestTypeOnboarding = type === ONBOARDING_EXTENSION_REQUEST_TYPE; if ( - state === 'PENDING' || + requestStatus === 'PENDING' || lastModifiedBy === undefined || lastModifiedBy === null ) { showSuperuserDetailsClass = 'hidden'; } - if (state !== 'PENDING') { + if (requestStatus !== 'PENDING') { showActionButtonClass = 'hidden'; } const createdDate = convertDateToReadableStringDate( @@ -471,10 +473,9 @@ function createRequestCard(request, superUserDetails, requesterUserDetails) { }), createElementFromMap({ tagName: 'button', - class: ['request__status', `request__status--${state.toLowerCase()}`], - testId: 'request-status', + class: ['request__status', `request__status--${requestStatus.toLowerCase()}`], textContent: - state.charAt(0).toUpperCase() + state.slice(1).toLowerCase() || + requestStatus.charAt(0).toUpperCase() + requestStatus.slice(1).toLowerCase() || 'N/A', }), ], @@ -495,12 +496,14 @@ async function renderRequestCards(queries = {}) { for (const request of requestResponse?.data || []) { let superUserDetails; + + let requesterUserDetails = await getUserDetails(request.requestedBy); + if ((isDev ? request.status : request.state) !== 'PENDING') { + superUserDetails = await getUserDetails(request.lastModifiedBy); + } let requesterUserDetails = await getUserDetails( request.type === 'OOO' ? request.requestedBy : request.userId, ); - if (request.state !== 'PENDING') { - superUserDetails = await getUserDetails(request.lastModifiedBy); - } requestContainer.appendChild( createRequestCard(request, superUserDetails, requesterUserDetails), ); @@ -596,13 +599,13 @@ async function performAcceptRejectAction(isAccepted, e) { let remark = document.getElementById(`remark-text-${requestId}`).value; let body = JSON.stringify({ type: currentReqType, - message: remark, - state: isAccepted ? 'APPROVED' : 'REJECTED', + reason: remark, + [isDev ? 'status' : 'state']: isAccepted ? 'APPROVED' : 'REJECTED', }); if (remark === '' || remark === undefined || remark === null) { body = JSON.stringify({ type: currentReqType, - state: isAccepted ? 'APPROVED' : 'REJECTED', + [isDev ? 'status' : 'state']: isAccepted ? 'APPROVED' : 'REJECTED', }); }