diff options
author | Jonathan Buchanan <jonathan.russ.buchanan@gmail.com> | 2020-06-17 21:35:09 -0400 |
---|---|---|
committer | Jonathan Buchanan <jonathan.russ.buchanan@gmail.com> | 2020-06-17 21:35:09 -0400 |
commit | 6624576c0cdd81072256d8abbfe6dd1343f956c6 (patch) | |
tree | a7f19eae242d0ee3e889da9fb4f8a00efdaf4eed /src/backend/taler-merchant-httpd_private-get-tips-ID.c | |
parent | 06010ba8681aa588c977410e0ae6f32879435432 (diff) | |
download | merchant-6624576c0cdd81072256d8abbfe6dd1343f956c6.tar.gz merchant-6624576c0cdd81072256d8abbfe6dd1343f956c6.tar.bz2 merchant-6624576c0cdd81072256d8abbfe6dd1343f956c6.zip |
implementations, tests, and renames for GET /tips/ & GET /private/tips/
Diffstat (limited to 'src/backend/taler-merchant-httpd_private-get-tips-ID.c')
-rw-r--r-- | src/backend/taler-merchant-httpd_private-get-tips-ID.c | 46 |
1 files changed, 24 insertions, 22 deletions
diff --git a/src/backend/taler-merchant-httpd_private-get-tips-ID.c b/src/backend/taler-merchant-httpd_private-get-tips-ID.c index 59de1b68..7c70a689 100644 --- a/src/backend/taler-merchant-httpd_private-get-tips-ID.c +++ b/src/backend/taler-merchant-httpd_private-get-tips-ID.c @@ -26,7 +26,6 @@ #include "taler-merchant-httpd.h" #include "taler-merchant-httpd_mhd.h" #include "taler-merchant-httpd_exchanges.h" -#include "taler-merchant-httpd_tip-pickup.h" /** @@ -47,12 +46,12 @@ TMH_private_get_tips_ID (const struct TMH_RequestHandler *rh, struct TALER_Amount total_picked_up; char *reason; struct GNUNET_TIME_Absolute expiration; + struct TALER_ReservePublicKeyP reserve_pub; unsigned int pickups_length = 0; struct TALER_MERCHANTDB_PickupDetails *pickups = NULL; - struct GNUNET_TIME_Absolute timestamp_expire; enum GNUNET_DB_QueryStatus qs; bool fpu; - json_t *pickups_json; + json_t *pickups_json = NULL; GNUNET_assert (NULL != hc->infix); if (GNUNET_OK != @@ -76,18 +75,18 @@ TMH_private_get_tips_ID (const struct TMH_RequestHandler *rh, ? 0 == strcasecmp (pstr, "yes") : false; } - db->preflight (db->cls); - qs = db->lookup_tip_details (db->cls, - hc->instance->settings.id, - &tip_id, - fpu, - &total_authorized, - &total_picked_up, - &reason, - &expiration, - &reserve_pub, - &pickups_length, - &pickups); + TMH_db->preflight (TMH_db->cls); + qs = TMH_db->lookup_tip_details (TMH_db->cls, + hc->instance->settings.id, + &tip_id, + fpu, + &total_authorized, + &total_picked_up, + &reason, + &expiration, + &reserve_pub, + &pickups_length, + &pickups); if (GNUNET_DB_STATUS_SUCCESS_ONE_RESULT != qs) { unsigned int response_code; @@ -126,30 +125,33 @@ TMH_private_get_tips_ID (const struct TMH_RequestHandler *rh, { json_array_append_new ( pickups_json, - json_pack ("{s:o,s:o,s:I}", + json_pack ("{s:o,s:I,s:o}", "pickup_id", GNUNET_JSON_from_data_auto (&pickups[i].pickup_id), - "requested_amount", - TALER_JSON_from_amount (&pickups[i].requested_amount), "num_planchets", - (json_int_t) pickups[i].num_planchets)); + (json_int_t) pickups[i].num_planchets, + "requested_amount", + TALER_JSON_from_amount (&pickups[i].requested_amount))); } } GNUNET_array_grow (pickups, pickups_length, 0); { + struct GNUNET_TIME_Absolute expiration_round = expiration; MHD_RESULT ret; + GNUNET_TIME_round_abs (&expiration_round); + ret = TALER_MHD_reply_json_pack ( connection, MHD_HTTP_OK, - "{s:s, s:o, s:o, s:o, s:o, s:o?}", - "reason", reason, + "{s:o, s:o, s:s, s:o, s:o, s:o?}", "total_authorized", TALER_JSON_from_amount (&total_authorized), "total_picked_up", TALER_JSON_from_amount (&total_picked_up), + "reason", reason, + "expiration", GNUNET_JSON_from_time_abs (expiration_round), "reserve_pub", GNUNET_JSON_from_data_auto (&reserve_pub), - "expiration", GNUNET_JSON_from_time_abs (expiration), "pickups", pickups_json); GNUNET_free (reason); return ret; |