{% extends "_market/_layouts/main" %} {% set currentVendor = market.vendors.getCurrentVendor() %} {% if productTypeHandle is not defined %}{% exit 403 %}{% endif %} {% set productType = craft.commerce.productTypes.getProductTypeByHandle(productTypeHandle) %} {% if not productType %}{% exit 404 %}{% endif %} {% set site = craft.app.getSites().currentSite %} {% set title = 'Create new {productType} product'|t('market', {productType: productType.name}) %} {% set sidebarFields = market.plugin.getSettings().productSidebarFieldHandles %} {% set productTabsToExclude = market.plugin.getSettings().productTabsToExclude %} {# Sort out the product model #} {% if productId is defined and productId != null %} {% if product is not defined %} {% set product = craft.commerce.products.getProductById(productId) %} {% endif %} {% if not product %}{% exit 404 %}{% endif %} {% set title = product.title %} {% elseif product is not defined %} {% set product = create({ class: 'craft\\commerce\\elements\\Product', typeId: productType.id, taxCategoryId: productType.getTaxCategories()|keys|first, shippingCategoryId: productType.getShippingCategories()|keys|first, enabled: true, siteId: site.id, promotable: true, availableForPurchase: true, freeShipping: false }) %} {% do product.setFieldValue('vendor', [currentVendor.id]) %} {% endif %} {# TODO: permissions check #} {% set breadcrumbs = [ { url: url('market/products'), label: 'Products'|t('market') }, { url: craft.app.request.getUrl, label: title } ] %} {% block content %}
{% endblock %}