Skip to content

Commit c5d2347

Browse files
MelvinBotdmkt9
andcommitted
Use wasActionTakenByCurrentUser for receipt view violation message consistency
Replace canEditMoneyRequest with wasActionTakenByCurrentUser when determining whether to show "Enter details manually" in violation messages on the receipt view. This aligns the receipt view behavior with the transaction row, ensuring non-submitters see a consistent message without the misleading edit prompt. Co-authored-by: dmkt9 <dmkt9@users.noreply.github.com>
1 parent d5d9403 commit c5d2347

1 file changed

Lines changed: 4 additions & 5 deletions

File tree

src/components/ReportActionItem/MoneyRequestReceiptView.tsx

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -40,11 +40,10 @@ import {hasHoverSupport} from '@libs/DeviceCapabilities';
4040
import {getMicroSecondOnyxErrorWithTranslationKey, isReceiptError} from '@libs/ErrorUtils';
4141
import getNonEmptyStringOnyxID from '@libs/getNonEmptyStringOnyxID';
4242
import {getThumbnailAndImageURIs} from '@libs/ReceiptUtils';
43-
import {getOriginalMessage, isMoneyRequestAction} from '@libs/ReportActionsUtils';
43+
import {getOriginalMessage, isMoneyRequestAction, wasActionTakenByCurrentUser} from '@libs/ReportActionsUtils';
4444
import {isMarkAsCashActionForTransaction} from '@libs/ReportPrimaryActionUtils';
4545
import {
4646
canEditFieldOfMoneyRequest,
47-
canEditMoneyRequest,
4847
canUserPerformWriteAction as canUserPerformWriteActionReportUtils,
4948
getCreationReportErrors,
5049
isInvoiceReport,
@@ -196,7 +195,7 @@ function MoneyRequestReceiptView({
196195
// Used for non-restricted fields such as: description, category, tag, billable, etc...
197196
const isReportArchived = useReportIsArchived(report?.reportID);
198197
const isEditable = !!canUserPerformWriteActionReportUtils(report, isReportArchived) && !readonly;
199-
const canEdit = isMoneyRequestAction(parentReportAction) && canEditMoneyRequest(parentReportAction, transaction, isChatReportArchived, moneyRequestReport, policy) && isEditable;
198+
const isActionTakenByCurrentUser = isMoneyRequestAction(parentReportAction) && wasActionTakenByCurrentUser(parentReportAction);
200199
const companyCardPageURL = `${environmentURL}/${ROUTES.WORKSPACE_COMPANY_CARDS.getRoute(report?.policyID)}`;
201200
const {personalCardsWithBrokenConnection} = useCardFeedErrors();
202201
const connectionLink = getBrokenConnectionUrlToFixPersonalCard(personalCardsWithBrokenConnection, environmentURL);
@@ -275,7 +274,7 @@ function MoneyRequestReceiptView({
275274
const violationMessage = ViolationsUtils.getViolationTranslation({
276275
violation,
277276
translate,
278-
canEdit,
277+
canEdit: isActionTakenByCurrentUser,
279278
companyCardPageURL,
280279
connectionLink,
281280
card,
@@ -290,7 +289,7 @@ function MoneyRequestReceiptView({
290289
}
291290
}
292291
return [imageViolations, allViolations];
293-
}, [transactionViolations, translate, canEdit, companyCardPageURL, connectionLink, cardList, isMarkAsCash, routeDistanceMeters, distanceUnit]);
292+
}, [transactionViolations, translate, isActionTakenByCurrentUser, companyCardPageURL, connectionLink, cardList, isMarkAsCash, routeDistanceMeters, distanceUnit]);
294293

295294
const receiptRequiredViolation = transactionViolations?.some((violation) => violation.name === CONST.VIOLATIONS.RECEIPT_REQUIRED);
296295
const itemizedReceiptRequiredViolation = transactionViolations?.some((violation) => violation.name === CONST.VIOLATIONS.ITEMIZED_RECEIPT_REQUIRED);

0 commit comments

Comments
 (0)