diff --git a/src/Controller/StateBalancesController.php b/src/Controller/StateBalancesController.php index 3b02d9c44..440650f50 100644 --- a/src/Controller/StateBalancesController.php +++ b/src/Controller/StateBalancesController.php @@ -164,6 +164,7 @@ class StateBalancesController extends AppController } $user = $session->read('StateUser'); $requestResult = $this->JsonRequestClient->sendRequestGDT(['email' => $user['email']], 'GdtEntries' . DS . 'listPerEmailApi'); + //var_dump($requestResult); if('success' === $requestResult['state'] && 'success' === $requestResult['data']['state']) { //var_dump(array_keys($requestResult['data'])); $ownEntries = $requestResult['data']['ownEntries']; diff --git a/src/Controller/TransactionSendCoinsController.php b/src/Controller/TransactionSendCoinsController.php index de278b55e..7204e24c2 100644 --- a/src/Controller/TransactionSendCoinsController.php +++ b/src/Controller/TransactionSendCoinsController.php @@ -170,6 +170,7 @@ class TransactionSendCoinsController extends AppController 'ask' => ['user.pubkeyhex'] ]), '/getUserInfos'); if('success' == $requestAnswear['state'] && 'success' == $requestAnswear['data']['state']) { + // will be allways 64 byte long, even if it is empty $receiverPubKeyHex = $requestAnswear['data']['userData']['pubkeyhex']; } else { $this->addAdminError('TransactionSendCoins', 'create', $requestAnswear, $user['id']); @@ -177,20 +178,30 @@ class TransactionSendCoinsController extends AppController $this->set('timeUsed', microtime(true) - $startTime); return; } - if('' == $receiverPubKeyHex) { + + if(0 == ord($receiverPubKeyHex)) { $stateUserTable = TableRegistry::getTableLocator()->get('StateUsers'); $receiverUser = $stateUserTable ->find('all') ->select(['public_key']) ->contain(false) - ->where(['email' => $receiverEmail])->first(); - //var_dump($receiverUser); + ->where(['email' => $receiverEmail]); + + if(!$receiverUser) { $this->Flash->error(__('Diese E-Mail ist mir nicht bekannt, hat dein Empfänger denn schon ein Gradido-Konto?')); $this->set('timeUsed', microtime(true) - $startTime); return; } - $receiverPubKeyHex = bin2hex(stream_get_contents($receiverUser->public_key)); + + if(isset($receiverUser->public_key)) { + $receiverPubKeyHex = bin2hex(stream_get_contents($receiverUser->public_key)); + } else { + $this->Flash->error(__('Das Konto mit der E-Mail: ' . $receiverEmail . ' wurde noch nicht aktiviert und kann noch keine GDD empfangen!')); + $this->set('timeUsed', microtime(true) - $startTime); + return; + } + } //var_dump($sessionStateUser);