@extends(templates/layout_normal)

@section(main)
    <h2>
        <a href="<?= Container::$routeCollection->getRoute('community')->generateLink(['communityId' => $community->getId()]) ?>"><?= $community->getName() ?></a> »
        Transactions
    </h2>

    <p class="marginTop"><a href="<?= Container::$routeCollection->getRoute('community.transactions.new')->generateLink(['communityId' => $community->getId()]) ?>">New transaction</a></p>

    <?php if ($numberOfTransactions > 0): ?>
        <?php if ($pages > 1): ?>
            <p class="paginateContainer marginTop">
                <a href="<?= Container::$routeCollection->getRoute('community.transactions')->generateLink(['communityId' => $community->getId(), 'page' => 0]) ?>">«</a>
                <a href="<?= Container::$routeCollection->getRoute('community.transactions')->generateLink(['communityId' => $community->getId(), 'page' => max(0, $currentPage - 1)]) ?>">‹</a>
                <?php for ($i = 0; $i < $pages; $i++): ?>
                    <?php if ($currentPage == $i): ?>
                        <span class="selected"><?= $i + 1 ?></span>
                    <?php else: ?>
                        <a href="<?= Container::$routeCollection->getRoute('community.transactions')->generateLink(['communityId' => $community->getId(), 'page' => $i]) ?>"><?= $i + 1 ?></a>
                    <?php endif; ?>
                <?php endfor; ?>
                <a href="<?= Container::$routeCollection->getRoute('community.transactions')->generateLink(['communityId' => $community->getId(), 'page' => min($pages - 1, $currentPage + 1)]) ?>">›</a>
                <a href="<?= Container::$routeCollection->getRoute('community.transactions')->generateLink(['communityId' => $community->getId(), 'page' => $pages - 1]) ?>">»</a>
            </p>
        <?php endif; ?>

        <?php foreach ($transactions as $transaction): ?>
            <a class="block" href="<?= Container::$routeCollection->getRoute('community.transactions.edit')->generateLink(['communityId' => $community->getId(), 'transactionId' => $transaction->getId()]) ?>">
            <div class="box transaction">
                <div>
                    <p style="font-weight: bold;"><?= $transaction->getDescription() ?></p>
                    <p class="small"><?= $transaction->getPayerUser()->getDisplayName() ?> <i class="fa-solid fa-caret-right"></i> <?= $transaction->getPayeeUser() ? $transaction->getPayeeUser()->getDisplayName() : '[common]' ?></p>
                    <p class="small"><?= $transaction->getTimeDate()->format('Y-m-d H:i') ?></p>
                </div>
                <div style="text-align: right;">
                    <h3><?= number_format($exchangeRateCalculator->calculate($transaction->getSum(), $transaction->getCurrency(), $transaction->getTimeDate()), $community->getMainCurrency()->getRoundDigits()) ?> <?= $community->getMainCurrency()->getCode() ?></h3>
                    <?php if ($community->getMainCurrencyId() !== $transaction->getCurrencyId()): ?>
                        <p style="color: #8e8e8e; font-weight: bold;"><?= number_format($transaction->getSum(), $transaction->getCurrency()->getRoundDigits()) ?> <?= $transaction->getCurrency()->getCode() ?></p>
                    <?php endif; ?>
                </div>
            </div>
            </a>
        <?php endforeach; ?>

        <?php if ($pages > 1): ?>
            <p class="paginateContainer marginTop">
                <a href="<?= Container::$routeCollection->getRoute('community.transactions')->generateLink(['communityId' => $community->getId(), 'page' => 0]) ?>">«</a>
                <a href="<?= Container::$routeCollection->getRoute('community.transactions')->generateLink(['communityId' => $community->getId(), 'page' => max(0, $currentPage - 1)]) ?>">‹</a>
                <?php for ($i = 0; $i < $pages; $i++): ?>
                    <?php if ($currentPage == $i): ?>
                        <span class="selected"><?= $i + 1 ?></span>
                    <?php else: ?>
                        <a href="<?= Container::$routeCollection->getRoute('community.transactions')->generateLink(['communityId' => $community->getId(), 'page' => $i]) ?>"><?= $i + 1 ?></a>
                    <?php endif; ?>
                <?php endfor; ?>
                <a href="<?= Container::$routeCollection->getRoute('community.transactions')->generateLink(['communityId' => $community->getId(), 'page' => min($pages - 1, $currentPage + 1)]) ?>">›</a>
                <a href="<?= Container::$routeCollection->getRoute('community.transactions')->generateLink(['communityId' => $community->getId(), 'page' => $pages - 1]) ?>">»</a>
            </p>
        <?php endif; ?>

        <p class="marginTop"><a href="<?= Container::$routeCollection->getRoute('community.transactions.new')->generateLink(['communityId' => $community->getId()]) ?>">New transaction</a></p>
    <?php else: ?>
        <div class="box">
            <p>There are no transactions yet.</p>
        </div>
    <?php endif; ?>
@endsection