diff --git a/package.json b/package.json
index 8712ef186..e6a7ddf04 100644
--- a/package.json
+++ b/package.json
@@ -92,7 +92,7 @@
"moment": "^2.29.1",
"moment-duration-format": "^2.3.2",
"moment-timezone": "^0.5.33",
- "openstack-uicore-foundation": "5.0.32",
+ "openstack-uicore-foundation": "5.0.33-beta.3",
"p-limit": "^6.1.0",
"path-browserify": "^1.0.1",
"postcss-loader": "^6.2.1",
diff --git a/src/actions/sponsor-purchases-actions.js b/src/actions/sponsor-purchases-actions.js
index 6d21e082f..5b799abdd 100644
--- a/src/actions/sponsor-purchases-actions.js
+++ b/src/actions/sponsor-purchases-actions.js
@@ -395,7 +395,7 @@ export const updateClientInfo =
};
export const cancelSponsorForm =
- (orderId, lineId) => async (dispatch, getState) => {
+ (orderId, lineId, lineName) => async (dispatch, getState) => {
const { currentSummitState, currentSponsorState } = getState();
const { currentSummit } = currentSummitState;
const { entity: sponsor } = currentSponsorState;
@@ -414,7 +414,17 @@ export const cancelSponsorForm =
null,
snackbarErrorHandler
)(params)(dispatch)
- .then(() => dispatch(getSponsorOrder(orderId)))
+ .then(() => {
+ dispatch(getSponsorOrder(orderId));
+ dispatch(
+ snackbarSuccessHandler({
+ html: T.translate(
+ "edit_sponsor.purchase_tab.order_details.line_cancelled",
+ { lineName }
+ )
+ })
+ );
+ })
.catch(console.log) // need to catch promise reject
.finally(() => {
dispatch(stopLoading());
diff --git a/src/i18n/en.json b/src/i18n/en.json
index aa449c7bc..1ea40d141 100644
--- a/src/i18n/en.json
+++ b/src/i18n/en.json
@@ -2654,10 +2654,10 @@
"general_info": "General Info",
"payment_info": "Payment Info",
"issue_refund": "Issue a Refund",
- "info_note": "Active order items can be canceled. Canceled items show an undo action to restore them. Refund and payment rows are display-only.",
"address_updated": "Address updated successfully",
"client_updated": "Client info updated successfully",
- "order_refunded": "Refund issued successfully."
+ "order_refunded": "Refund issued successfully.",
+ "line_cancelled": "{lineName} was cancelled. This item has been voided and removed from the balance. Use the undo action to restore it."
}
},
"mu_tab": {
diff --git a/src/pages/sponsors/sponsor-page/tabs/sponsor-cart-tab/components/cart-view.js b/src/pages/sponsors/sponsor-page/tabs/sponsor-cart-tab/components/cart-view.js
index 1257df9c5..b7934a3a8 100644
--- a/src/pages/sponsors/sponsor-page/tabs/sponsor-cart-tab/components/cart-view.js
+++ b/src/pages/sponsors/sponsor-page/tabs/sponsor-cart-tab/components/cart-view.js
@@ -170,6 +170,7 @@ const CartView = ({
},
{
columnKey: "amount",
+ align: "right",
header: T.translate("edit_sponsor.cart_tab.amount")
},
{
@@ -244,12 +245,7 @@ const CartView = ({
}
confirmButtonColor="error"
>
-
+
-
+
diff --git a/src/pages/sponsors/sponsor-page/tabs/sponsor-purchases-tab/sponsor-order-details.js b/src/pages/sponsors/sponsor-page/tabs/sponsor-purchases-tab/sponsor-order-details.js
index dfbfed236..97dbc1e9f 100644
--- a/src/pages/sponsors/sponsor-page/tabs/sponsor-purchases-tab/sponsor-order-details.js
+++ b/src/pages/sponsors/sponsor-page/tabs/sponsor-purchases-tab/sponsor-order-details.js
@@ -17,7 +17,6 @@ import T from "i18n-react/dist/i18n-react";
import { Box, Card, CardContent, Grid2, Typography } from "@mui/material";
import { ListCard } from "openstack-uicore-foundation/lib/components/mui/cards";
import SponsorOrderGrid from "openstack-uicore-foundation/lib/components/mui/sponsor-order-grid";
-import InfoNote from "openstack-uicore-foundation/lib/components/mui/info-note";
import {
cancelSponsorForm,
getSponsorOrder,
@@ -122,7 +121,7 @@ const SponsorOrderDetails = ({
};
const handleCancelForm = (item) => {
- cancelSponsorForm(currentOrder.id, item.id);
+ cancelSponsorForm(currentOrder.id, item.id, item.name);
};
const handleUndoCancelForm = (item) => {
@@ -170,20 +169,10 @@ const SponsorOrderDetails = ({
variant="outlined"
>
-
diff --git a/src/pages/sponsors/sponsor-page/utils.js b/src/pages/sponsors/sponsor-page/utils.js
index fabf207d4..da2f265ba 100644
--- a/src/pages/sponsors/sponsor-page/utils.js
+++ b/src/pages/sponsors/sponsor-page/utils.js
@@ -3,21 +3,14 @@ import {
formatDiscount
} from "openstack-uicore-foundation/lib/utils/money";
-export const normalizeOrder = (data) => {
- const amountDueSign = data?.amount_due < 0 ? "-" : "";
- const amountDueStr = currencyAmountFromCents(Math.abs(data.amount_due || 0)); // currencyAmountFromCents doesn't allow negatives
- const amountDue = `${amountDueSign}${amountDueStr}`;
-
- return {
- ...data,
- total: currencyAmountFromCents(data.net_amount || 0),
- amount_due: data.amount_due === 0 ? "$0.00" : amountDue,
- forms: data.forms.map((form) => ({
- ...form,
- addon_name: form.add_on?.name || "",
- discount: formatDiscount(form.discount_amount, form.discount_type),
- discount_total: form.discount_in_cents || 0,
- amount: currencyAmountFromCents(form.net_amount || 0)
- }))
- };
-};
+export const normalizeOrder = (data) => ({
+ ...data,
+ total: data.net_amount || data.amount_due || 0,
+ forms: data.forms.map((form) => ({
+ ...form,
+ addon_name: form.add_on?.name || "",
+ discount: formatDiscount(form.discount_amount, form.discount_type),
+ discount_total: form.discount_in_cents || 0,
+ amount: currencyAmountFromCents(form.net_amount || 0)
+ }))
+});
diff --git a/yarn.lock b/yarn.lock
index f50d24946..812dcb6a7 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -9056,10 +9056,10 @@ open@^10.0.3:
is-inside-container "^1.0.0"
wsl-utils "^0.1.0"
-openstack-uicore-foundation@5.0.32:
- version "5.0.32"
- resolved "https://registry.npmjs.org/openstack-uicore-foundation/-/openstack-uicore-foundation-5.0.32.tgz#856623f5d7b3021f7fa08550a3c0a7f656bd3011"
- integrity sha512-jQCs/F2+74bOGgj/0mT8W6h0DfT6kbgkbwau6ZFOi5lDBjrCkKTOJosnCyonj3R4TEvtx4A6x1nmwP6Z7Mc+dQ==
+openstack-uicore-foundation@5.0.33-beta.3:
+ version "5.0.33-beta.3"
+ resolved "https://registry.yarnpkg.com/openstack-uicore-foundation/-/openstack-uicore-foundation-5.0.33-beta.3.tgz#1a9136913632aa9da28e9620ca680b18e45bad0c"
+ integrity sha512-OJJAkfsZNH377IeKB/EHxp1c6gyQpTMiIt+UEhLhqj/qpfDMiQflozWLr0kYAhfwlHDdqn7nnZbmidugIwJJPg==
dependencies:
use-sync-external-store "^1.6.0"