103 lines
4.9 KiB
HTML
103 lines
4.9 KiB
HTML
<form class="fade-me-in">
|
|
<div id="target-row" class="row">
|
|
<div class="col-md-12 sc-config-header">
|
|
<div class="sc-line sc-line-left"></div>
|
|
<h6 class="sc-category-title">{{ config_data.category.name }}</h6>
|
|
<div class="sc-line sc-line-right"></div>
|
|
|
|
{% if config_data.category.max_quantity is not none %}
|
|
<span class="sc-max-quantity">
|
|
Max Quantity: {{ config_data.category.max_quantity }}
|
|
</span>
|
|
{% endif %}
|
|
</div>
|
|
<div class="col-md-12 row">
|
|
<img
|
|
src="{{ config_data.category.category_img }}"
|
|
alt="{{ config_data.category.name }}"
|
|
class="col-md-2"
|
|
style="height: 60px"
|
|
/>
|
|
|
|
<div class="col-md-10" style="max-height: 550px; overflow-y: auto">
|
|
<!-- Handle configurations -->
|
|
{% if config_data.category.sub_category %}
|
|
<!-- Case 1: Category has subcategories -->
|
|
{% for sub_category in config_data.category.sub_category %} {% set
|
|
outer_index = loop.index0 %}
|
|
<h6 style="font-weight: bold" class="sc-subcategory-title">
|
|
{{ sub_category.name }}
|
|
</h6>
|
|
<ul class="config-list" style="list-style: none">
|
|
{% for item in sub_category.config %}
|
|
<li>
|
|
<input type="{{ config_data.category.config_choice_type }}" name="{%
|
|
if config_data.category.config_choice_type == 'radio' %}config-{{
|
|
config_data.category.name }}{% else %}config-{{ loop.index0 }}-{{
|
|
outer_index }}-{{ sub_category.name }}{% endif %}" value="{{ item
|
|
}}" id="{{ config_data.category.name }}_{{ item }}"
|
|
hx-post="/save_config_selection" hx-trigger="change" hx-vals='{% if
|
|
config_data.category.config_choice_type == "radio"
|
|
%}{"product_name": "{{product.product_name}}", "category":
|
|
"{{config_data.category.name}}", "max_quantity":
|
|
"{{config_data.category.max_quantity}}", "config_choice_type":
|
|
"{{config_data.category.config_choice_type}}"}{% else
|
|
%}{"product_name": "{{product.product_name}}", "category":
|
|
"{{config_data.category.name}}", "sub_category":
|
|
"{{sub_category.name}}", "max_quantity":
|
|
"{{config_data.category.max_quantity}}", "config_choice_type":
|
|
"{{config_data.category.config_choice_type}}"}{% endif %}' {% if
|
|
config_data.category.config_choice_type == 'radio' and
|
|
saved_selections.get(config_data.category.name, {}).get('selection')
|
|
== item %}checked{% elif config_data.category.config_choice_type !=
|
|
'radio' and item in (saved_selections.get(config_data.category.name,
|
|
{}).get('subcategories', {}).get(sub_category.name, [])) %}checked{%
|
|
endif %} />
|
|
<label
|
|
class="d-inline"
|
|
for="{{ config_data.category.name }}_{{ item }}"
|
|
>{{ item }}</label
|
|
>
|
|
</li>
|
|
{% endfor %}
|
|
</ul>
|
|
{% endfor %} {% else %}
|
|
<!-- Case 2: Category has no subcategories -->
|
|
<ul class="config-list" style="list-style: none">
|
|
{% for item in config_data.category.config %}
|
|
<li>
|
|
<input type="{{ config_data.category.config_choice_type }}" name="{%
|
|
if config_data.category.config_choice_type == 'radio' %}config-{{
|
|
config_data.category.name }}{% else %}config-{{ loop.index0 }}-{{
|
|
config_data.category.name }}{% endif %}" value="{{ item }}" id="{{
|
|
config_data.category.name }}_{{ item }}"
|
|
hx-post="/save_config_selection" hx-trigger="change" hx-vals='{% if
|
|
config_data.category.config_choice_type == "radio"
|
|
%}{"product_name": "{{product.product_name}}", "category":
|
|
"{{config_data.category.name}}", "max_quantity":
|
|
"{{config_data.category.max_quantity}}", "config_choice_type":
|
|
"{{config_data.category.config_choice_type}}"}{% else
|
|
%}{"product_name": "{{product.product_name}}", "category":
|
|
"{{config_data.category.name}}", "max_quantity":
|
|
"{{config_data.category.max_quantity}}", "config_choice_type":
|
|
"{{config_data.category.config_choice_type}}"}{% endif %}' {% if
|
|
config_data.category.config_choice_type == 'radio' and
|
|
saved_selections.get(config_data.category.name, {}).get('selection')
|
|
== item %}checked{% elif config_data.category.config_choice_type !=
|
|
'radio' and item in (saved_selections.get(config_data.category.name,
|
|
{}).get('subcategories', {}).get(config_data.category.name, []))
|
|
%}checked{% endif %} />
|
|
<label
|
|
class="d-inline"
|
|
for="{{ config_data.category.name }}_{{ item }}"
|
|
>{{ item }}</label
|
|
>
|
|
</li>
|
|
{% endfor %}
|
|
</ul>
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</form>
|