From 1f7add402f4a1d10d9a5ea80724dbae23804bc8d Mon Sep 17 00:00:00 2001 From: Hicham Boushaba Date: Fri, 20 Sep 2024 15:47:57 +0100 Subject: [PATCH] Add support for restoring deleted orders to the example app --- .../example/ui/orders/WooOrdersFragment.kt | 27 +++++++++++++++++++ .../main/res/layout/fragment_woo_orders.xml | 7 +++++ 2 files changed, 34 insertions(+) diff --git a/example/src/main/java/org/wordpress/android/fluxc/example/ui/orders/WooOrdersFragment.kt b/example/src/main/java/org/wordpress/android/fluxc/example/ui/orders/WooOrdersFragment.kt index 07405d58fc..4abf65e63f 100644 --- a/example/src/main/java/org/wordpress/android/fluxc/example/ui/orders/WooOrdersFragment.kt +++ b/example/src/main/java/org/wordpress/android/fluxc/example/ui/orders/WooOrdersFragment.kt @@ -612,6 +612,33 @@ class WooOrdersFragment : StoreSelectingFragment(), WCAddOrderShipmentTrackingDi } } + restoreOrder.setOnClickListener { + selectedSite?.let { site -> + lifecycleScope.launch { + val orderId = showSingleLineDialog( + activity = requireActivity(), + message = "Please enter the order id", + isNumeric = true + )?.toLongOrNull() + + if (orderId == null) { + prependToLog("Please enter a valid order id") + return@launch + } + + val result = orderUpdateStore.restoreDeletedOrder(site, orderId) + if (result.isError) { + prependToLog( + "Restoring order failed, " + + "error ${result.error.type} ${result.error.message}" + ) + } else { + prependToLog("Order $orderId has been restored succesfully") + } + } + } + } + fetchOrderAttribution.setOnClickListener { selectedSite?.let { site -> showSingleLineDialog(activity, "Enter the remoteOrderId of order to fetch:") { editText -> diff --git a/example/src/main/res/layout/fragment_woo_orders.xml b/example/src/main/res/layout/fragment_woo_orders.xml index d868d5a339..cfe87bc775 100644 --- a/example/src/main/res/layout/fragment_woo_orders.xml +++ b/example/src/main/res/layout/fragment_woo_orders.xml @@ -167,6 +167,13 @@ android:enabled="false" android:text="Delete an order" /> +