{# app/templates/admin/marketplace-letzshop.html #} {% extends "admin/base.html" %} {% from 'shared/macros/tabs.html' import tabs_nav, tab_button, tab_panel, endtab_panel %} {% from 'shared/macros/alerts.html' import alert_dynamic, error_state %} {% from 'shared/macros/headers.html' import page_header_flex, refresh_button %} {# Import modals macro - custom modals below use inline definition for specialized forms #} {% from 'shared/macros/modals.html' import modal_simple, confirm_modal %} {% from 'shared/macros/inputs.html' import entity_selector %} {% block title %}Letzshop Management{% endblock %} {% block alpine_data %}adminMarketplaceLetzshop(){% endblock %} {% block content %} {% call page_header_flex(title='Letzshop Management', subtitle='Manage Letzshop integration for stores') %}
{{ entity_selector(ref_name='storeSelect', id='store-select', placeholder='Search store...') }} {{ refresh_button(loading_var='loading', onclick='refreshData()', variant='secondary') }}
{% endcall %}

{{ error_state('Error', show_condition='error && !loading') }}

All Stores View

Showing data across all stores. Select a store above to manage products, import orders, or access settings.

Auto-sync
{% call tabs_nav(tab_var='activeTab') %} {{ tab_button('products', 'Products', tab_var='activeTab', icon='cube') }} {{ tab_button('orders', 'Orders', tab_var='activeTab', icon='shopping-cart', count_var='orderStats.pending') }} {{ tab_button('exceptions', 'Exceptions', tab_var='activeTab', icon='exclamation-circle', count_var='exceptionStats.pending') }} {{ tab_button('jobs', 'Jobs', tab_var='activeTab', icon='collection') }} {% endcall %} {{ tab_panel('products', tab_var='activeTab') }} {% include 'marketplace/admin/partials/letzshop-products-tab.html' %} {{ endtab_panel() }} {{ tab_panel('orders', tab_var='activeTab') }} {% include 'marketplace/admin/partials/letzshop-orders-tab.html' %} {{ endtab_panel() }} {{ tab_panel('exceptions', tab_var='activeTab') }} {% include 'marketplace/admin/partials/letzshop-exceptions-tab.html' %} {{ endtab_panel() }} {{ tab_panel('jobs', tab_var='activeTab') }} {% include 'marketplace/admin/partials/letzshop-jobs-table.html' %} {{ endtab_panel() }}

Set Tracking Information

Order Details

Full View
Order Number:
Order Date:
Status:
Total:

Customer & Shipping

Name:

Email:

Language:

Ship to:

Tracking

Carrier:

Tracking #:

Items ( items)

Resolve Exception

GTIN:

SKU:

Order:

{{ confirm_modal('declineOrderModal', 'Decline Order', 'Are you sure you want to decline this order? This action cannot be undone.', 'declineOrder(orderToDecline)', 'showDeclineOrderModal', 'Decline', 'Cancel', 'danger') }} {{ confirm_modal('confirmAllItemsModal', 'Confirm All Items', 'Are you sure you want to confirm all items in this order?', 'confirmAllItems(selectedOrder)', 'showConfirmAllItemsModal', 'Confirm All', 'Cancel', 'info') }} {{ confirm_modal('declineAllItemsModal', 'Decline All Items', 'Are you sure you want to decline all items in this order? This action cannot be undone.', 'declineAllItems(selectedOrder)', 'showDeclineAllItemsModal', 'Decline All', 'Cancel', 'danger') }} {{ confirm_modal('deleteCredentialsModal', 'Remove Credentials', 'Are you sure you want to remove the Letzshop API credentials? This will disable order syncing for this store.', 'deleteCredentials()', 'showDeleteCredentialsModal', 'Remove', 'Cancel', 'danger') }} {{ confirm_modal('ignoreExceptionModal', 'Ignore Exception', 'Are you sure you want to ignore this exception? The unmatched product will not be resolved.', 'ignoreException(exceptionToIgnore)', 'showIgnoreExceptionModal', 'Ignore', 'Cancel', 'warning') }} {% endblock %} {% block extra_scripts %} {% endblock %}