diff options
-rw-r--r-- | interchange/ord.h | 9 | ||||
-rw-r--r-- | ord.c | 9 |
2 files changed, 18 insertions, 0 deletions
diff --git a/interchange/ord.h b/interchange/ord.h index 8407704..dffd902 100644 --- a/interchange/ord.h +++ b/interchange/ord.h @@ -38,6 +38,15 @@ void interchange_ord_order(const char *sku, void (*handler)(interchange_response *)); /*! + * \brief For removing an item from a cart. + * \param name The name given, in the cart, to the item. + * \param nextpage The page to expect response from, whatever the result is. + * \param parser Function for parsing the formatted response. + */ +void interchange_ord_remove(const char *name, const char *nextpage, + void (*parser)(interchange_response *)); + +/*! * \brief For checking out items in the cart. * \param order_profile The order profile/method. * \param member The member checking out. @@ -11,6 +11,15 @@ void interchange_ord_order(const char *sku, request(handler, NULL, NULL, "%s%s", "order?mv_arg=", sku); } +void interchange_ord_remove(const char *name, const char *nextpage, + void (*parser)(interchange_response *)) +{ + request(parser, NULL, &(struct body){ 1 + (nextpage ? 1 : 0), { + { name, "0" }, + { "mv_nextpage", nextpage } + }}, "%s", "process"); +} + void interchange_ord_checkout(const char *order_profile, struct interchange_member member, void (*handler)(interchange_response *)) |