summaryrefslogtreecommitdiff
path: root/src/backend/taler-merchant-httpd_private-get-tips-ID.c
diff options
context:
space:
mode:
authorJonathan Buchanan <jonathan.russ.buchanan@gmail.com>2020-06-17 21:35:09 -0400
committerJonathan Buchanan <jonathan.russ.buchanan@gmail.com>2020-06-17 21:35:09 -0400
commit6624576c0cdd81072256d8abbfe6dd1343f956c6 (patch)
treea7f19eae242d0ee3e889da9fb4f8a00efdaf4eed /src/backend/taler-merchant-httpd_private-get-tips-ID.c
parent06010ba8681aa588c977410e0ae6f32879435432 (diff)
downloadmerchant-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.c46
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;