From fc7a7a9d8b8db227797c96f78f43ba0a6ff136e7 Mon Sep 17 00:00:00 2001 From: Dario Rekowski on RockPI Date: Wed, 8 Apr 2020 11:45:13 +0000 Subject: [PATCH] adding new elements --- src/Controller/StateBalancesController.php | 48 ++++++++++++++++++++-- src/Template/Element/printEuro.ctp | 8 ++++ src/Template/Element/printGDT.ctp | 24 +++++++++++ src/Template/StateBalances/overview.ctp | 4 ++ 4 files changed, 81 insertions(+), 3 deletions(-) create mode 100644 src/Template/Element/printEuro.ctp create mode 100644 src/Template/Element/printGDT.ctp diff --git a/src/Controller/StateBalancesController.php b/src/Controller/StateBalancesController.php index ba0e521f1..c1853940c 100644 --- a/src/Controller/StateBalancesController.php +++ b/src/Controller/StateBalancesController.php @@ -18,7 +18,7 @@ class StateBalancesController extends AppController { parent::initialize(); //$this->Auth->allow(['add', 'edit']); - $this->Auth->allow(['overview']); + $this->Auth->allow(['overview', 'overviewGdt']); $this->loadComponent('JsonRequestClient'); } /** @@ -49,8 +49,17 @@ class StateBalancesController extends AppController // sendRequestGDT // listPerEmailApi - //$gdtEntries = $this->JsonRequestClient->sendRequestGDT(['email' => $user['email']], 'GdtEntries' . DS . 'sumPerEmailApi'); - //var_dump($gdtEntries); + //var_dump($user); + $gdtSum = 0; + if('admin' === $user['role']) { + $gdtEntries = $this->JsonRequestClient->sendRequestGDT(['email' => $user['email']], 'GdtEntries' . DS . 'sumPerEmailApi'); + //var_dump($gdtEntries); + if('success' == $gdtEntries['state'] && 'success' == $gdtEntries['data']['state']) { + $gdtSum = intval($gdtEntries['data']['sum']); + } + } + // + // $creationsTable = TableRegistry::getTableLocator()->get('TransactionCreations'); $creationTransactions = $creationsTable @@ -141,6 +150,39 @@ class StateBalancesController extends AppController $this->set('transactionExecutingCount', $session->read('Transaction.executing')); $this->set('balance', $session->read('StateUser.balance')); $this->set('timeUsed', microtime(true) - $startTime); + $this->set('gdtSum', $gdtSum); + } + + public function overviewGdt() + { + $startTime = microtime(true); + $this->viewBuilder()->setLayout('frontend_ripple'); + $session = $this->getRequest()->getSession(); + $result = $this->requestLogin(); + if($result !== true) { + return $result; + } + $user = $session->read('StateUser'); + $requestResult = $this->JsonRequestClient->sendRequestGDT(['email' => $user['email']], 'GdtEntries' . DS . 'listPerEmailApi'); + if('success' === $requestResult['state'] && 'success' === $requestResult['data']['state']) { + var_dump(array_keys($requestResult['data'])); + $ownEntries = $requestResult['data']['ownEntries']; + //$gdtEntries = $requestResult['data']['entries']; + + $gdtSum = 0; + foreach($ownEntries as $i => $gdtEntry) { + $gdtSum += $gdtEntry['gdt']; + echo "index: $i
"; + var_dump($gdtEntry); + + } + //echo "gdtSum: $gdtSum
"; + $this->set('gdtSum', $gdtSum); + $this->set('ownEntries', $ownEntries); + } else { + $this->Flash->error(__('Fehler beim GDT Server, bitte abwarten oder den Admin benachrichtigen!')); + } + } public function sortTransactions($a, $b) { diff --git a/src/Template/Element/printEuro.ctp b/src/Template/Element/printEuro.ctp new file mode 100644 index 000000000..3ac00faa6 --- /dev/null +++ b/src/Template/Element/printEuro.ctp @@ -0,0 +1,8 @@ + 0) $class = "grd-positive-currency";*/ +if($number < 0) { + $class = 'grd-negative-currency'; +} + +?> +Number->format(intval($number) / 100.0, ['precision' => 2]) . ' GDT';?> + + + Number->format(intval($number) / 100.0, ['precision' => 2]) . ' GDT';?> + + \ No newline at end of file diff --git a/src/Template/StateBalances/overview.ctp b/src/Template/StateBalances/overview.ctp index 720712e89..514f327f8 100644 --- a/src/Template/StateBalances/overview.ctp +++ b/src/Template/StateBalances/overview.ctp @@ -14,6 +14,9 @@ $this->assign('title', __('Kontoübersicht'));

element('printGradido', ['number' => $balance]) ?>

+ 0) : ?> +

Html->link($this->element('printGDT', ['number' => $gdtSum]), ['action' => 'overview_gdt'], ['escape' => false]) ?>

+
@@ -106,6 +109,7 @@ $this->assign('title', __('Kontoübersicht')); +Html->css(['gdt.css']) ?> 0) : ?>