Scorum
process_fifa_world_cup_2018_bounty_initialize.cpp
Go to the documentation of this file.
2 
5 
9 
10 namespace scorum {
11 namespace chain {
12 namespace database_ns {
13 
15 {
16  debug_log(ctx.get_block_info(), "process_fifa_world_cup_2018_bounty_initialize BEGIN");
17 
18  data_service_factory_i& services = ctx.services();
19 
20  dynamic_global_property_service_i& dgp_service = services.dynamic_global_property_service();
21 
22  if (dgp_service.head_block_time() < SCORUM_BLOGGING_START_DATE)
23  {
24  return;
25  }
26 
27  content_fifa_world_cup_2018_bounty_reward_fund_service_i& fifa_world_cup_2018_bounty_reward_fund_service
28  = services.content_fifa_world_cup_2018_bounty_reward_fund_service();
29 
30  if (fifa_world_cup_2018_bounty_reward_fund_service.is_exists())
31  {
32  return;
33  }
34 
35  content_reward_fund_sp_service_i& reward_fund_service = services.content_reward_fund_sp_service();
36 
37  const content_reward_fund_sp_object& rf = reward_fund_service.get();
38 
39  auto balance = rf.activity_reward_balance;
40 
41  fifa_world_cup_2018_bounty_reward_fund_service.create(
43  bounty_fund.activity_reward_balance = balance;
46  });
47 
48  reward_fund_service.update([&](content_reward_fund_sp_object& rfo) {
49  rfo.activity_reward_balance -= balance;
50  rfo.recent_claims += fc::uint128_t(balance.amount.value);
51  });
52 
53  debug_log(ctx.get_block_info(), "process_fifa_world_cup_2018_bounty_initialize END");
54 }
55 }
56 }
57 }
data_service_factory_i & services() const
Definition: block_tasks.hpp:25
#define debug_log(CTX, FORMAT,...)
Definition: debug_log.hpp:3
Definition: asset.cpp:15
virtual bool is_exists() const =0
virtual void update(const modifier_type &modifier)=0
virtual const object_type & get() const =0
virtual const object_type & create(const modifier_type &modifier)=0
virtual fc::time_point_sec head_block_time() const =0