@@ -176,12 +176,14 @@ namespace yosemitex { namespace contract {
176
176
177
177
int64_t merchant_issued_ytoken_available = (*yosemite_token_issue_info_it).available ;
178
178
if ( merchant_issued_ytoken_available >= price_ytoken_amount ) {
179
- // consume merchant-issued Yosemite Tokens
179
+ // consume merchant-issued Yosemite Tokens ( ytokenissue.merchant.availble (-), ytoken.contract_owner.balance (-) )
180
180
burn_yosemite_token ( merchant, price_ytoken_amount, true /* is_consumed_by_customer*/ );
181
+ stat_subtract_ytoken_issue_total_available ( price_ytoken_amount );
181
182
consumed_merchant_issued_ytoken_amount = price_ytoken_amount;
182
183
} else {
183
184
// consume merchant-issued Yosemite Tokens
184
185
burn_yosemite_token ( merchant, merchant_issued_ytoken_available, true /* is_consumed_by_customer*/ );
186
+ stat_subtract_ytoken_issue_total_available ( merchant_issued_ytoken_available );
185
187
consumed_merchant_issued_ytoken_amount = merchant_issued_ytoken_available;
186
188
}
187
189
}
@@ -194,7 +196,7 @@ namespace yosemitex { namespace contract {
194
196
}
195
197
196
198
// transfer customer reward Yosemite Token amount to ycard.users pool account
197
- if (customer_reward_ytoken_amount > 0 ) {
199
+ if ( customer_reward_ytoken_amount > 0 ) {
198
200
transfer_token ( _self, YOSEMITE_TOKEN_YCARD_USERS_POOL_ACCOUNT, customer_reward_ytoken_amount );
199
201
}
200
202
@@ -237,7 +239,7 @@ namespace yosemitex { namespace contract {
237
239
if ( rollbacked_from_merchant_ytoken_balance < -price_ytoken_amount ) {
238
240
yosemite_token_issue_table_idx ytoken_issue_table ( _self, _self );
239
241
auto yosemite_token_issue_info_it = ytoken_issue_table.find ( merchant );
240
- eosio_assert ( yosemite_token_issue_info_it != ytoken_issue_table.end (), " cancel payment failed. insufficient yosemite tokens roll-backed" );
242
+ eosio_assert ( yosemite_token_issue_info_it != ytoken_issue_table.end (), " cancel payment failed. insufficient yosemite tokens to be roll-backed" );
241
243
242
244
// rollback consumed merchant-issued ytoken 'available' balance
243
245
int64_t ytoken_issue_available_amount_to_recover = -price_ytoken_amount - rollbacked_from_merchant_ytoken_balance;
@@ -248,6 +250,8 @@ namespace yosemitex { namespace contract {
248
250
249
251
// rollback burned(consumed) Yosemite Token balance
250
252
issue_token ( _self, ytoken_issue_available_amount_to_recover );
253
+
254
+ stat_add_ytoken_issue_total_available ( ytoken_issue_available_amount_to_recover );
251
255
}
252
256
253
257
// rollback customer-used ytoken amount
@@ -264,9 +268,9 @@ namespace yosemitex { namespace contract {
264
268
void yosemite_card_ytoken::usdytissue ( const asset& qty /* USD */ , const string& tag ) {
265
269
266
270
int64_t token_amount = qty.amount ;
267
- symbol_type token_symbol = qty.symbol ;
271
+ symbol_type fiat_token_symbol = qty.symbol ;
268
272
269
- eosio_assert ( token_symbol .value == S (4 ,USD), " symbol of quantity must be USD" );
273
+ eosio_assert ( fiat_token_symbol .value == S (4 ,USD), " symbol of quantity must be USD" );
270
274
eosio_assert ( tag.size () <= 256 , " too long tag string, max tag string size is 256 bytes" );
271
275
eosio_assert ( qty.is_valid (), " invalid fiat token quantity" );
272
276
eosio_assert ( token_amount > 0 , " must issue positive yosemite token quantity" );
@@ -500,7 +504,7 @@ namespace yosemitex { namespace contract {
500
504
require_recipient ( issuer );
501
505
502
506
if ( issuer != to ) {
503
- SEND_INLINE_ACTION ( *this , credittxfer, {issuer, N (crdtransfer )}, {issuer, to, qty, tag} )
507
+ SEND_INLINE_ACTION ( *this , credittxfer, {issuer, N (codecrdtxfer )}, {issuer, to, qty, tag} )
504
508
}
505
509
}
506
510
@@ -656,9 +660,9 @@ namespace yosemitex { namespace contract {
656
660
657
661
yosemite_token_issue_table_idx ytoken_issue_table ( _self, _self );
658
662
auto yosemite_token_issue_info_it = ytoken_issue_table.find ( ytoken_issuer );
659
- eosio_assert ( yosemite_token_issue_info_it != ytoken_issue_table.end (), " no yosemite token issue info" );
663
+ eosio_assert ( yosemite_token_issue_info_it != ytoken_issue_table.end (), " insufficient available yosemite token amount to burn, no yosemite token issue info" );
660
664
auto current_fiat_backed_ytoken_issue_info = *yosemite_token_issue_info_it;
661
- eosio_assert ( current_fiat_backed_ytoken_issue_info.available >= ytoken_amount, " insufficient available yosemite token amount" );
665
+ eosio_assert ( current_fiat_backed_ytoken_issue_info.available >= ytoken_amount, " insufficient available yosemite token amount to burn " );
662
666
ytoken_issue_table.modify ( yosemite_token_issue_info_it, 0 , [&](yosemite_token_issue_info& info) {
663
667
if ( is_consumed_by_customer ) {
664
668
info.total_consumed += ytoken_amount;
0 commit comments