summaryrefslogtreecommitdiff
path: root/packages/merchant-backoffice-ui/src/paths/instance/orders/details/index.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'packages/merchant-backoffice-ui/src/paths/instance/orders/details/index.tsx')
-rw-r--r--packages/merchant-backoffice-ui/src/paths/instance/orders/details/index.tsx15
1 files changed, 11 insertions, 4 deletions
diff --git a/packages/merchant-backoffice-ui/src/paths/instance/orders/details/index.tsx b/packages/merchant-backoffice-ui/src/paths/instance/orders/details/index.tsx
index a7fe1801b..c0c4862a1 100644
--- a/packages/merchant-backoffice-ui/src/paths/instance/orders/details/index.tsx
+++ b/packages/merchant-backoffice-ui/src/paths/instance/orders/details/index.tsx
@@ -17,15 +17,17 @@ import { HttpStatusCode, TalerErrorDetail } from "@gnu-taler/taler-util";
import {
ErrorType,
HttpError,
+ useMerchantApiContext,
useTranslationContext,
} from "@gnu-taler/web-util/browser";
import { Fragment, VNode, h } from "preact";
import { useState } from "preact/hooks";
import { Loading } from "../../../../components/exception/loading.js";
import { NotificationCard } from "../../../../components/menu/index.js";
-import { useOrderAPI, useOrderDetails } from "../../../../hooks/order.js";
+import { useOrderDetails } from "../../../../hooks/order.js";
import { Notification } from "../../../../utils/types.js";
import { DetailPage } from "./DetailPage.js";
+import { useSessionContext } from "../../../../context/session.js";
export interface Props {
oid: string;
@@ -43,9 +45,10 @@ export default function Update({
onNotFound,
onUnauthorized,
}: Props): VNode {
- const { refundOrder } = useOrderAPI();
const result = useOrderDetails(oid);
const [notif, setNotif] = useState<Notification | undefined>(undefined);
+ const { lib: api } = useMerchantApiContext()
+ const { state } = useSessionContext();
const { i18n } = useTranslationContext();
@@ -71,8 +74,11 @@ export default function Update({
<DetailPage
onBack={onBack}
id={oid}
- onRefund={(id, value) =>
- refundOrder(id, value)
+ onRefund={(id, value) => {
+ if (state.status !== "loggedIn") {
+ return;
+ }
+ api.management.addRefund(state.token, id, value)
.then(() =>
setNotif({
message: i18n.str`refund created successfully`,
@@ -87,6 +93,7 @@ export default function Update({
}),
)
}
+ }
selected={result.data}
/>
</Fragment>