{% extends "commerce/_layouts/cp" %} {% set selectedSubnavItem = "promotions" %} {% set crumbs = [ { label: "Promotions"|t('commerce'), url: url('commerce/promotions') }, { label: "Discounts"|t('commerce'), url: url('commerce/promotions/discounts') }, ] %} {% set fullPageForm = true %} {% import "_includes/forms" as forms %} {% import "commerce/_includes/forms/commerceForms" as commerceForms %} {% set discountClasses = "" %} {% if (discount.getErrors('name')) %} {% set discountClasses = "error" %} {% endif %} {% set matchingItemsClasses = "" %} {% if false %} {% set matchingItemsClasses = "error" %} {% endif %} {% set conditionsClasses = "" %} {% if(discount.getErrors('startDate') or discount.getErrors('endDate')) %} {% set conditionsClasses = "error" %} {% endif %} {% set couponClasses = "" %} {% if(discount.getErrors('code')) %} {% set couponClasses = "error" %} {% endif %} {% set tabs = { 0: {'label':'Discount'|t('commerce'),'url':'#discount','class':discountClasses}, 1: {'label':'Coupon'|t('commerce'),'url':'#coupon','class':couponClasses}, 2: {'label':'Matching Items'|t('commerce'),'url':'#matching-items','class':matchingItemsClasses}, 3: {'label':'Conditions'|t('commerce'),'url':'#conditions','class':conditionsClasses}, 4: {'label':'Actions'|t('commerce'),'url':'#actions'} } %} {% block content %} {{ redirectInput('commerce/promotions/discounts') }} {% if discount.id %} {% endif %}
{{ forms.textField({ first: true, label: "Name"|t('commerce'), instructions: "What this discount will be called in the control panel."|t('commerce'), id: 'name', name: 'name', value: discount.name, errors: discount.getErrors('name'), autofocus: true, required: true, }) }} {{ forms.textField({ label: "Description"|t('commerce'), instructions: "Discount description."|t('commerce'), id: 'description', name: 'description', value: discount.description, errors: discount.getErrors('description'), }) }} {{ forms.lightSwitchField({ label: "Enable this discount"|t('commerce'), id: 'enabled', name: 'enabled', value: 1, on: discount.enabled, checked: discount.enabled, errors: discount.getErrors('enabled') }) }} {% hook "cp.commerce.discount.edit" %}
{% endblock %} {% js %} $(function() { $('#groups').selectize({ plugins: ['remove_button'], dropdownParent: 'body' }); $('#code').on('keyup blur', function(event) { if (this.value.length === 0) { $('#coupon-fields').addClass('hidden'); } else { $('#coupon-fields').removeClass('hidden'); } }); function disableShippingSwitch() { $('#hasFreeShippingForMatchingItems').data('lightswitch').turnOff(); $('input[name="hasFreeShippingForMatchingItems"]').prop("disabled", true); $('#hasFreeShippingForMatchingItems').prop("disabled", true); $("#hasFreeShippingForMatchingItems").addClass("disabled"); } function enableShippingSwitch() { $('input[name="hasFreeShippingForMatchingItems"]').prop("disabled", false); $('#hasFreeShippingForMatchingItems').prop("disabled", false); $("#hasFreeShippingForMatchingItems").removeClass("disabled"); } if ($('input[name="hasFreeShippingForOrder"]').val() == 1) { disableShippingSwitch(); } $('#hasFreeShippingForOrder').click(function () { if ($('input[name="hasFreeShippingForOrder"]').val() == 1) { disableShippingSwitch(); } else { enableShippingSwitch(); } }); $('.clear-btn').click(function(event) { var $this = $(this); var $spinner = $($this.data('spinner')); var $field = $($this.data('field')); var type = $this.data('type'); var r = confirm(Craft.t('commerce', 'Are you sure you want to clear this discount usage counter?')); if (r == true) { $spinner.toggleClass('hidden'); $.ajax({ type: "POST", dataType: 'json', headers: { "X-CSRF-Token" : '{{ craft.app.request.csrfToken }}', }, url: '', data: { 'action' : 'commerce/discounts/clear-discount-uses', 'id': '{{ discount.id ?? '' }}', 'type': type }, success: function(data){ $spinner.toggleClass('hidden'); $field.val(''); Craft.cp.displayNotice(Craft.t('commerce', 'Counter has been cleared.')); $this.attr('disabled', 'disabled').prop('disabled', 'disabled'); } }); } }); }); {% endjs %}