From a0cf3feecc75f8ceb3faeae2a228f9e4701e043c Mon Sep 17 00:00:00 2001 From: Olusesan Ameye Date: Thu, 7 Apr 2022 01:26:25 -0400 Subject: [PATCH] fix --- wrenchboard/src/include/wrenchboard_api.h | 1 + wrenchboard/src/shared_tool/account.cc | 22 +++++++++++++++++++++- 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/wrenchboard/src/include/wrenchboard_api.h b/wrenchboard/src/include/wrenchboard_api.h index 72757983..55783dfa 100644 --- a/wrenchboard/src/include/wrenchboard_api.h +++ b/wrenchboard/src/include/wrenchboard_api.h @@ -170,6 +170,7 @@ enum { PARTNER_STRIPE }; #define WRENCHBOARD_USER_ADNEWCC 11054 #define WRENCHBOARD_USER_USESAVEDCC 11056 +#define WRENCHBOARD_USER_SETTINGS 11058 #define WRENCHBOARD_ACCOUNT_WALLETS 11060 diff --git a/wrenchboard/src/shared_tool/account.cc b/wrenchboard/src/shared_tool/account.cc index f03b92f4..15c05495 100644 --- a/wrenchboard/src/shared_tool/account.cc +++ b/wrenchboard/src/shared_tool/account.cc @@ -133,8 +133,9 @@ long account_calls(CVars in, CVars &out) { CVars x; long ret = 0; const char * loc = getenv("REMOTE_ADDR"); + const PGresult *res; -test(); +//test(); switch (action) { case WRENCHBOARD_CREATE_MOBILEUSER: @@ -317,6 +318,25 @@ test(); return WrenchCardRechargePayment(in, out); break; + case WRENCHBOARD_USER_SETTINGS: + REQ_LONG(in, "member_id", 1, -1); + REQ_STRING(in, "pref_id", 4, 6, "(.*)"); + REQ_LONG(in, "status", 1, -1); + + res = pgsql_query("SELECT id FROM members_settings WHERE member_id=%lu AND pref_id='%s' ", in["member_id"].Long(), in["pref_id"].c_str()); + if (res != NULL && pgsql_num_rows(res) > 0) { + pgsql_exec("UPDATE members_settings SET status=%lu WHERE member_id=%lu AND pref_id='%s' ",in["status"].Long(), in["member_id"].Long(), in["pref_id"].c_str()); + } + else{ + CVars xx; + xx["member_id"] = in["member_id"]; xx["member_id"].set_valid(true); + xx["pref_id"] = in["pref_id"]; xx["pref_id"].set_valid(true); + xx["status"] = in["status"]; xx["status"].set_valid(true); + insert_db_record(DBS_VALID, "members_settings", "members_settings_id_seq", xx); + } + ret = PHP_API_OK; + break; + case WRENCHBOARD_ACCOUNT_WALLETS: logfmt(logINFO, "/account_calls()"); return WrenchBoardMobileSendUserWallet(in, out);