diff --git a/addons/point_of_sale/static/src/app/navbar/cash_move_popup/cash_move_popup.js b/addons/point_of_sale/static/src/app/navbar/cash_move_popup/cash_move_popup.js index 9ede9c721e0..69883680ec6 100644 --- a/addons/point_of_sale/static/src/app/navbar/cash_move_popup/cash_move_popup.js +++ b/addons/point_of_sale/static/src/app/navbar/cash_move_popup/cash_move_popup.js @@ -10,6 +10,7 @@ import { usePos } from "@point_of_sale/app/store/pos_hook"; import { AbstractAwaitablePopup } from "@point_of_sale/app/popup/abstract_awaitable_popup"; import { ErrorPopup } from "@point_of_sale/app/errors/popups/error_popup"; +import { useValidateCashInput } from "@point_of_sale/app/utils/hooks"; export class CashMovePopup extends AbstractAwaitablePopup { static template = "point_of_sale.CashMovePopup"; @@ -27,8 +28,10 @@ export class CashMovePopup extends AbstractAwaitablePopup { amount: "", reason: "", errorMessage: "", + parsedAmount: 0, }); this.amountInput = useAutofocus({ refName: "amountInput" }); + useValidateCashInput('amountInput'); } async confirm() { let amount; @@ -114,13 +117,13 @@ export class CashMovePopup extends AbstractAwaitablePopup { this.state.errorMessage = ""; this.amountInput.el.focus(); } - async cancel() { - super.cancel(); - if ( - this.pos.config.iface_cashdrawer && - this.pos.hardwareProxy.connectionInfo.status === "connected" - ) { - this.pos.logEmployeeMessage(_t("Cash in / out"), "ACTION_CANCELLED"); + handleInputChange() { + if (this.amountInput.el.classList.contains('invalid-cash-input')) { + this.amountInput.el.parentElement.classList.add('invalid-cash-input'); + this.amountInput.el.style.border = 'none'; + return; } + this.amountInput.el.parentElement.classList.remove('invalid-cash-input'); + this.state.parsedAmount = parseFloat(this.state.amount); } } diff --git a/addons/point_of_sale/static/src/app/navbar/cash_move_popup/cash_move_popup.xml b/addons/point_of_sale/static/src/app/navbar/cash_move_popup/cash_move_popup.xml index 276d29aecc5..7e3aaf94c3c 100644 --- a/addons/point_of_sale/static/src/app/navbar/cash_move_popup/cash_move_popup.xml +++ b/addons/point_of_sale/static/src/app/navbar/cash_move_popup/cash_move_popup.xml @@ -12,7 +12,7 @@ Cash Out -