{% extends 'admin/layout.html.twig' %} {% block title %}{{ is_new ? 'New' : 'Edit' }} Invoice - KitscoApp{% endblock %} {% block page_title %}{{ is_new ? 'New Invoice' : 'Edit Invoice #' ~ invoice.displayInvoiceNumber }}{% endblock %} {% block stylesheets %} {{ parent() }} {% endblock %} {% block content %} {{ form_start(form, {'attr': {'id': 'invoice-form'}}) }}

Invoice Details

{# Custom dropdown for Type #}
{% set type_options = [] %} {% for choice in form.type.vars.choices %} {% set type_options = type_options|merge([{value: choice.value, label: choice.label}]) %} {% endfor %} {% include 'components/_select_dropdown.html.twig' with { id: form.type.vars.id, name: form.type.vars.full_name, value: form.type.vars.value, label: 'Invoice Type', options: type_options, placeholder: 'Select type...', required: true } %} {% do form.type.setRendered %}
{# Custom dropdown for Customer with Add New button #}
{% set customer_options = [] %} {% for choice in form.customer.vars.choices %} {% set customer_options = customer_options|merge([{value: choice.value, label: choice.label}]) %} {% endfor %}
{% include 'components/_select_dropdown.html.twig' with { id: form.customer.vars.id, name: form.customer.vars.full_name, value: form.customer.vars.value, label: false, options: customer_options, placeholder: 'Select a customer...', searchable: true, searchPlaceholder: 'Search customers...', required: true } %}
{% do form.customer.setRendered %} {# Billing Override Section - collapsible #}
{# Custom dropdown for Currency #}
{% set currency_options = [] %} {% for choice in form.currency.vars.choices %} {% set currency_options = currency_options|merge([{value: choice.value, label: choice.label}]) %} {% endfor %} {% include 'components/_select_dropdown.html.twig' with { id: form.currency.vars.id, name: form.currency.vars.full_name, value: form.currency.vars.value, label: 'Currency', options: currency_options, placeholder: 'Select currency...', required: true, extra_attrs: {'data-exchange-rate-target': 'currency', 'data-action': 'change->exchange-rate#toggle'} } %} {% do form.currency.setRendered %} {# Exchange Rate field - shown only for foreign currencies #}

How many TZS equals 1 unit of the selected currency

{% do form.exchangeRate.setRendered %}
{{ form_row(form.invoiceDate) }}
{{ form_row(form.dueDate) }}
{{ form_row(form.taxRate) }}
{{ form.invoiceTerms.vars.value|raw }}
{{ form_widget(form.invoiceTerms, {'attr': {'style': 'display:none'}}) }}

Line Items

{% for item in form.items %} {% endfor %}
Product Description Qty Price Amount
{# Custom dropdown for Product #} {% set product_options = [{value: '', label: '-- Custom Item --'}] %} {% for choice in item.product.vars.choices %} {% set product_options = product_options|merge([{value: choice.value, label: choice.label}]) %} {% endfor %}
{% do item.product.setRendered %}
{{ form_widget(item.description) }} {% include 'components/_quantity_stepper.html.twig' with { id: item.quantity.vars.id, name: item.quantity.vars.full_name, value: item.quantity.vars.value|default(1), min: 1 } %} {% do item.quantity.setRendered %} {{ form_widget(item.unitPrice, {'attr': {'class': 'item-price'}}) }} 0
-
TOTAL: 0
Cancel {% if is_new %} {% else %} {% endif %}
{{ form_end(form) }} {% if not is_new %} {% endif %} {% endblock %} {% block javascripts %} {{ parent() }} {% endblock %}