@extends(templates/layout_normal)

@section(main)
    <h2>
        <a href="<?= Container::$routeCollection->getRoute('community')->generateLink(['communitySlug' => $community->getSlug()]) ?>"><?= $community->getName() ?></a> »
        <a href="<?= Container::$routeCollection->getRoute('community.transactions')->generateLink(['communitySlug' => $community->getSlug()]) ?>">Transactions</a> »
        <?php if (isset($transaction)): ?>
            Edit transaction
        <?php else: ?>
            New transaction
        <?php endif; ?>
    </h2>
    <div class="box compactBox">
        <?php
        $formAction = isset($transaction) ?
            Container::$routeCollection->getRoute('community.transactions.edit-action')->generateLink(['communitySlug' => $community->getSlug(), 'transactionId' => $transaction->getId()]) :
            Container::$routeCollection->getRoute('community.transactions.new-action')->generateLink(['communitySlug' => $community->getSlug()]);
        ?>
        <form id="transactionForm" action="<?= $formAction ?>" method="post" data-redirect-on-success="<?= Container::$routeCollection->getRoute('community.transactions')->generateLink(['communitySlug' => $community->getSlug()]) ?>">
            <p class="formLabel">Payer</p>
            <select class="big fullWidth" name="payer_user_id" required>
                <option value="" hidden></option>
                <?php foreach ($members as $member): ?>
                    <option value="<?= $member->getUser()->getId() ?>" <?= isset($transaction) && $transaction->getPayerUserId() === $member->getUser()->getId() ? 'selected' : '' ?>><?= $member->getUser()->getDisplayName() ?></option>
                <?php endforeach; ?>
            </select>
            <p class="formLabel marginTop">Payee</p>
            <select class="big fullWidth" name="payee_user_id">
                <option value="">[common]</option>
                <?php foreach ($members as $member): ?>
                    <option value="<?= $member->getUser()->getId() ?>" <?= isset($transaction) && $transaction->getPayeeUserId() === $member->getUser()->getId() ? 'selected' : '' ?>><?= $member->getUser()->getDisplayName() ?></option>
                <?php endforeach; ?>
            </select>
            <p class="formLabel marginTop">Description</p>
            <input type="text" class="text big fullWidth" name="description" value="<?= isset($transaction) ? $transaction->getDescription() : '' ?>" required>
            <p class="formLabel marginTop">Sum</p>
            <input type="number" class="text big fullWidth" name="sum" value="<?= isset($transaction) ? $transaction->getSum() : '' ?>" min="0" step="0.000000001" required>
            <p class="formLabel marginTop">Currency</p>
            <select class="big fullWidth" name="currency_id" required>
                <option value="" hidden></option>
                <?php foreach ($currencies as $currency): ?>
                    <option value="<?= $currency->getId() ?>" <?= isset($transaction) && $transaction->getCurrencyId() === $currency->getId() ? 'selected' : '' ?>><?= $currency->getCode() ?></option>
                <?php endforeach; ?>
            </select>
            <p class="formLabel marginTop">Time</p>
            <input type="datetime-local" class="text big fullWidth" name="time" value="<?= isset($transaction) ? $transaction->getTimeDate()->format('Y-m-d\TH:i') : (new DateTime())->format('Y-m-d\TH:i') ?>" required>
            <p class="formError justify marginTop"></p>
            <div class="right marginTop" style="font-size: 0;">
                <button type="submit" name="submit_button"><?= isset($transaction) ? '<i class="fa-regular fa-floppy-disk"></i> Save' : '<i class="fa-regular fa-plus"></i> Create' ?></button>
                <?php if (isset($transaction)): ?>
                    <button type="submit" form="deleteTransaction"  name="submit_button" data-confirmation="Are you sure you want to delete this transaction?" class="red marginLeft"><i class="fa-regular fa-trash-can"></i> Delete</button>
                <?php endif; ?>
            </div>
        </form>
        <?php if (isset($transaction)): ?>
            <form id="deleteTransaction" action="<?= Container::$routeCollection->getRoute('community.transactions.delete-action')->generateLink(['communitySlug' => $community->getSlug(), 'transactionId' => $transaction->getId()]) ?>" method="post" data-redirect-on-success="<?= Container::$routeCollection->getRoute('community.transactions')->generateLink(['communitySlug' => $community->getSlug()]) ?>"></form>
        <?php endif; ?>
    </div>
@endsection