From ec08259b7d4190a47b91476ae96b604d69cc4e87 Mon Sep 17 00:00:00 2001 From: Roman Olearski Date: Fri, 1 Sep 2017 13:29:45 +0200 Subject: [PATCH] added cancel_bet to the wallet --- libraries/chain/db_init.cpp | 1 + .../wallet/include/graphene/wallet/wallet.hpp | 5 +++++ libraries/wallet/wallet.cpp | 20 +++++++++++++++++++ 3 files changed, 26 insertions(+) diff --git a/libraries/chain/db_init.cpp b/libraries/chain/db_init.cpp index c7b06abf..36881d64 100644 --- a/libraries/chain/db_init.cpp +++ b/libraries/chain/db_init.cpp @@ -227,6 +227,7 @@ void database::initialize_evaluators() register_evaluator(); register_evaluator(); register_evaluator(); + register_evaluator(); register_evaluator(); register_evaluator(); register_evaluator(); diff --git a/libraries/wallet/include/graphene/wallet/wallet.hpp b/libraries/wallet/include/graphene/wallet/wallet.hpp index 068903f8..ff1a9c4c 100644 --- a/libraries/wallet/include/graphene/wallet/wallet.hpp +++ b/libraries/wallet/include/graphene/wallet/wallet.hpp @@ -1704,6 +1704,10 @@ class wallet_api double backer_multiplier, bool broadcast = false); + signed_transaction cancel_bet(string betting_account, + bet_id_type bet_id, + bool broadcast = false); + signed_transaction propose_resolve_betting_market_group( const string& proposing_account, fc::time_point_sec expiration_time, @@ -2001,6 +2005,7 @@ FC_API( graphene::wallet::wallet_api, (propose_update_betting_market_group) (propose_update_betting_market) (place_bet) + (cancel_bet) (propose_resolve_betting_market_group) (tournament_create) (tournament_join) diff --git a/libraries/wallet/wallet.cpp b/libraries/wallet/wallet.cpp index e3b05396..46dd287c 100644 --- a/libraries/wallet/wallet.cpp +++ b/libraries/wallet/wallet.cpp @@ -5481,6 +5481,26 @@ signed_transaction wallet_api::place_bet(string betting_account, return my->sign_transaction(tx, broadcast); } +signed_transaction wallet_api::cancel_bet(string betting_account, + bet_id_type bet_id, + bool broadcast /*= false*/) +{ + FC_ASSERT( !is_locked() ); + + const chain_parameters& current_params = get_global_properties().parameters; + + bet_cancel_operation bet_cancel_op; + bet_cancel_op.bettor_id = get_account(betting_account).id; + bet_cancel_op.bet_to_cancel = bet_id; + + signed_transaction tx; + tx.operations.push_back(bet_cancel_op); + my->set_operation_fees(tx, current_params.current_fees); + tx.validate(); + + return my->sign_transaction(tx, broadcast); +} + signed_transaction wallet_api::propose_resolve_betting_market_group( const string& proposing_account, fc::time_point_sec expiration_time,