commit 1014cb597aa86e6bac31c363c3156c694a9ec247
parent 405fb7b5027e6ce117fd9bfbb4c74d666a9733f7
Author: bohdan-potuzhnyi <bohdan.potuzhnyi@gmail.com>
Date: Tue, 18 Feb 2025 12:23:42 +0100
few changes
Diffstat:
1 file changed, 18 insertions(+), 8 deletions(-)
diff --git a/src/backend/taler-merchant-httpd_private-post-orders.c b/src/backend/taler-merchant-httpd_private-post-orders.c
@@ -3362,10 +3362,6 @@ parse_donau_instances (struct OrderContext *oc,
json_t *json_donau_instances = json_array();
enum GNUNET_DB_QueryStatus qs;
- /* Initialize the donation_receipt URL fields */
- output->details.donation_receipt.donau_urls = NULL;
- output->details.donation_receipt.donau_urls_len = 0;
-
/* Invoke the database call, accumulating URLs in a JSON array */
qs = TMH_db->select_donau_instance(TMH_db->cls,
&add_donau_url,
@@ -3601,13 +3597,27 @@ parse_choices (struct OrderContext *oc)
break;
case TALER_MERCHANT_CONTRACT_OUTPUT_TYPE_DONATION_RECEIPT:
/* FIXME-#9059: not yet implemented! */
+
+ GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
+ "Output details donation receipt amount currency %s\n",
+ output.details.donation_receipt.amount.currency);
+
+ /* If amount wasn't set, we need to get it from the overall amount */
+ if(GNUNET_OK !=
+ TALER_amount_is_valid (&output.details.donation_receipt.amount))
+ {
+ output.details.donation_receipt.amount = choice->amount;
+ }
+
+ /* Make some predefines for the donation receipt */
+ output.details.donation_receipt.donau_urls = NULL;
+ output.details.donation_receipt.donau_urls_len = 0;
+
+ /* If the system was complied with donau support, we can parse the donau instances */
#ifdef HAVE_DONAU_DONAU_SERVICE_H
parse_donau_instances (oc, &output);
- #else
- /* This is the case when the DONAU was not configured, yet DONAU order is made*/
- output.details.donation_receipt.donau_urls = NULL;
- output.details.donation_receipt.donau_urls_len = 0;
#endif
+
GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
"Output details donation receipt donau urls %p\n",
output.details.donation_receipt.donau_urls);