update for transfer transactions the modal according to new format

This commit is contained in:
Dario Rekowski on RockPI 2021-04-12 14:55:24 +00:00
parent 31ac055c65
commit fd201ee43a
4 changed files with 21 additions and 11 deletions

View File

@ -40,8 +40,12 @@ class StateBalance extends Entity
{ {
if(method_exists($dateOrTime, 'getTimestamp')) { if(method_exists($dateOrTime, 'getTimestamp')) {
return $dateOrTime->getTimestamp(); return $dateOrTime->getTimestamp();
} else { } else if(method_exists($dateOrTime, 'i18nFormat')) {
return $dateOrTime->i18nFormat(Time::UNIX_TIMESTAMP_FORMAT); return $dateOrTime->i18nFormat(Time::UNIX_TIMESTAMP_FORMAT);
} else {
var_dump($dateOrTime);
debug_print_backtrace(0, 4);
die("date or time unexpected object");
} }
} }

View File

@ -67,7 +67,7 @@ class TransactionBase {
$stateBalancesTable = self::getTable('stateBalances'); $stateBalancesTable = self::getTable('stateBalances');
$stateBalanceQuery = $stateBalancesTable $stateBalanceQuery = $stateBalancesTable
->find('all') ->find('all')
->select(['amount', 'id']) ->select(['amount', 'id', 'record_date'])
->contain(false) ->contain(false)
->where(['state_user_id' => $stateUserId]);//->first(); ->where(['state_user_id' => $stateUserId]);//->first();
//debug($stateBalanceQuery); //debug($stateBalanceQuery);
@ -101,9 +101,14 @@ class TransactionBase {
if($stateUserTransactions->count() > 0) { if($stateUserTransactions->count() > 0) {
$stateBalanceTable = self::getTable('state_balances'); $stateBalanceTable = self::getTable('state_balances');
$state_user_transaction = $stateUserTransactions->first();
if(!$state_user_transaction) {
$this->addError('TransactionBase::addStateUserTransaction', 'state_user_transaction is zero, no first entry exist?');
return false;
}
$balance_entity = $stateBalanceTable->newEntity(); $balance_entity = $stateBalanceTable->newEntity();
$balance_entity->amount = $stateUserTransactions->first()->balance; $balance_entity->amount = $state_user_transaction->balance;
$balance_entity->record_date = $stateUserTransactions->first()->balance_date; $balance_entity->record_date = $state_user_transaction->balance_date;
$balance = $balance_entity->decay + $balance; $balance = $balance_entity->decay + $balance;
} }
$entity = $stateUserTransactionTable->newEntity(); $entity = $stateUserTransactionTable->newEntity();

View File

@ -78,7 +78,7 @@ class TransactionTransfer extends TransactionBase {
$stateUsersTable = TableRegistry::getTableLocator()->get('state_users'); $stateUsersTable = TableRegistry::getTableLocator()->get('state_users');
$local_transfer = $this->protoTransactionTransfer->getLocal(); $local_transfer = $this->protoTransactionTransfer->getLocal();
$sender = $local_transfer->getSender(); $sender = $local_transfer->getSender();
$senderPublic = $sender->getPublic(); $senderPublic = $sender->getPubkey();
$senderPublicHex = bin2hex($senderPublic); $senderPublicHex = bin2hex($senderPublic);
if(strlen($senderPublicHex) != 64) { if(strlen($senderPublicHex) != 64) {
$this->addError($functionName, 'invalid sender public key'); $this->addError($functionName, 'invalid sender public key');
@ -182,10 +182,11 @@ class TransactionTransfer extends TransactionBase {
$disable_email = Configure::read('disableEmail', false); $disable_email = Configure::read('disableEmail', false);
if($disable_email) return true; if($disable_email) return true;
$senderAmount = $this->protoTransactionTransfer->getSenderAmounts()[0]; $local_transfer = $this->protoTransactionTransfer->getLocal();
$receiverAmount = $this->protoTransactionTransfer->getReceiverAmounts()[0]; $sender = $local_transfer->getSender();
$senderUserId = $this->getStateUserId($senderAmount->getEd25519SenderPubkey()); $senderAmount = $sender->getAmount();
$receiverUserId = $this->getStateUserId($receiverAmount->getEd25519ReceiverPubkey()); $senderUserId = $this->getStateUserId($sender->getPubkey());
$receiverUserId = $this->getStateUserId($local_transfer->getReceiver());
$receiverUser = $this->getStateUser($receiverUserId); $receiverUser = $this->getStateUser($receiverUserId);
$senderUser = $this->getStateUser($senderUserId); $senderUser = $this->getStateUser($senderUserId);
@ -197,7 +198,7 @@ class TransactionTransfer extends TransactionBase {
$emailViewBuilder->setTemplate('notificationTransfer') $emailViewBuilder->setTemplate('notificationTransfer')
->setVars(['receiverUser' => $receiverUser, ->setVars(['receiverUser' => $receiverUser,
'senderUser' => $senderUser, 'senderUser' => $senderUser,
'gdd_cent' => $receiverAmount->getAmount(), 'gdd_cent' => $senderAmount,
'memo' => $memo]); 'memo' => $memo]);
$receiverNames = $receiverUser->getNames(); $receiverNames = $receiverUser->getNames();
if($receiverNames == '' || $receiverUser->email == '') { if($receiverNames == '' || $receiverUser->email == '') {

@ -1 +1 @@
Subproject commit 77dee5685ebba543ea1cd2321580ad56c92f5775 Subproject commit ff412f735667b30233c0ce00d461f209ac7dde7c