|
- <?php
- /**
- * Copyright © Magento, Inc. All rights reserved.
- * See COPYING.txt for license details.
- */
-
- /** @var \Magento\Framework\View\Helper\SecureHtmlRenderer $secureRenderer */
- ?>
-
- <section class="admin__page-section">
- <div class="admin__page-section-title">
- <span class="title"><?= $block->escapeHtml(__('Items to Ship')) ?></span>
- </div>
- <div class="admin__table-wrapper">
- <table class="data-table admin__table-primary order-shipment-table">
- <thead>
- <tr class="headings">
- <th class="col-product"><span><?= $block->escapeHtml(__('Product')) ?></span></th>
- <th class="col-ordered-qty"><span><?= $block->escapeHtml(__('Qty')) ?></span></th>
- <th class="col-qty<?php if ($block->isShipmentRegular()): ?> last<?php endif; ?>">
- <span><?= $block->escapeHtml(__('Qty to Ship')) ?></span>
- </th>
- <?php if (!$block->canShipPartiallyItem()): ?>
- <th class="col-ship last"><span><?= $block->escapeHtml(__('Ship')) ?></span></th>
- <?php endif; ?>
- </tr>
- </thead>
- <?php $_items = $block->getShipment()->getAllItems() ?>
- <?php $_i = 0; foreach ($_items as $_item):
- if ($_item->getOrderItem()->getParentItem()):
- continue;
- endif;
- $_i++ ?>
- <tbody class="<?= $_i%2 ? 'odd' : 'even' ?>">
- <?= $block->getItemHtml($_item) ?>
- <?= $block->getItemExtraInfoHtml($_item->getOrderItem()) ?>
- </tbody>
- <?php endforeach; ?>
- </table>
- </div>
- </section>
-
- <section class="admin__page-section">
- <div class="admin__page-section-title">
- <span class="title"><?= $block->escapeHtml(__('Shipment Total')) ?></span>
- </div>
- <div class="admin__page-section-content order-comments-history">
- <div class="admin__page-section-item">
- <div class="admin__page-section-item-title">
- <span class="title"><?= $block->escapeHtml(__('Shipment Comments')) ?></span>
- </div>
- <div class="admin__page-section-item-content">
- <div id="order-history_form" class="admin__field">
- <label class="admin__field-label"
- for="shipment_comment_text">
- <span><?= $block->escapeHtml(__('Comment Text')) ?></span></label>
- <div class="admin__field-control">
- <textarea id="shipment_comment_text"
- class="admin__control-textarea"
- name="shipment[comment_text]"
- rows="3"
- cols="5"><?= $block->escapeHtml($block->getShipment()->getCommentText()) ?></textarea>
- </div>
- </div>
- </div>
- </div>
- </div>
- <div class="admin__page-section-item order-totals order-totals-actions">
- <div class="admin__page-section-item-title">
- <span class="title"><?= $block->escapeHtml(__('Shipment Options')) ?></span>
- </div>
- <div class="admin__page-section-item-content">
- <?php if ($block->canCreateShippingLabel()): ?>
- <div class="field choice admin__field admin__field-option field-create">
- <input id="create_shipping_label"
- class="admin__control-checkbox"
- name="shipment[create_shipping_label]"
- value="1"
- type="checkbox"/>
- <label class="admin__field-label"
- for="create_shipping_label">
- <span><?= $block->escapeHtml(__('Create Shipping Label')) ?></span></label>
- <?= /* @noEscape */ $secureRenderer->renderEventListenerAsTag(
- 'onclick',
- 'toggleCreateLabelCheckbox();',
- 'input#create_shipping_label'
- ) ?>
- </div>
- <?php endif ?>
-
- <div class="field choice admin__field admin__field-option field-append">
- <input id="notify_customer"
- class="admin__control-checkbox"
- name="shipment[comment_customer_notify]"
- value="1"
- type="checkbox"/>
- <label class="admin__field-label"
- for="notify_customer">
- <span><?=$block->escapeHtml(__('Append Comments')) ?></span></label>
- </div>
-
- <?php if ($block->canSendShipmentEmail()): ?>
- <div class="field choice admin__field admin__field-option field-email">
- <input id="send_email"
- class="admin__control-checkbox"
- name="shipment[send_email]"
- value="1"
- type="checkbox"/>
- <label class="admin__field-label"
- for="send_email">
- <span><?= $block->escapeHtml(__('Email Copy of Shipment')) ?></span></label>
- </div>
- <?php endif; ?>
- <?= $block->getChildHtml('submit_before') ?>
- <div class="order-history-comments-actions actions">
- <?= $block->getChildHtml('submit_button') ?>
- <?= $block->getChildHtml('submit_after') ?>
- </div>
- </div>
- </div>
- </section>
- <?php $scriptString = <<<script
-
- require([
- "jquery",
- "Magento_Ui/js/modal/alert",
- "prototype"
- ], function(jQuery, alert){
-
- //<![CDATA[
- var sendEmailCheckbox = $('send_email');
- if (sendEmailCheckbox) {
- var notifyCustomerCheckbox = $('notify_customer');
- var shipmentCommentText = $('shipment_comment_text');
- Event.observe(sendEmailCheckbox, 'change', bindSendEmail);
- bindSendEmail();
- }
- function bindSendEmail() {
- if (sendEmailCheckbox.checked == true) {
- notifyCustomerCheckbox.disabled = false;
- }
- else {
- notifyCustomerCheckbox.disabled = true;
- }
- }
- window.toggleCreateLabelCheckbox = function() {
- var checkbox = $('create_shipping_label');
- var submitButton = checkbox.up('.order-totals').select('.submit-button span')[0];
- if (checkbox.checked) {
- submitButton.innerText += '...';
- } else {
- submitButton.innerText = submitButton.innerText.replace(/\.\.\.$/, '');
- }
- }
- window.submitShipment = function(btn) {
- if (!validQtyItems()) {
- alert({
- content: '{$block->escapeJs(__('Invalid value(s) for Qty to Ship'))}'
- });
- return;
- }
- var checkbox = $(btn).up('.order-totals').select('#create_shipping_label')[0];
- if (checkbox && checkbox.checked) {
- packaging.showWindow();
- } else {
- disableElements('submit-button');
- // Temporary solution will be replaced after refactoring order functionality
- jQuery('#edit_form').on('invalid-form.validate', function() {
- enableElements('submit-button');
- jQuery('#edit_form').off('invalid-form.validate');
- });
- jQuery('#edit_form').triggerHandler('save');
- }
- }
- window.validQtyItems = function() {
- var valid = true;
- $$('.qty-item').each(function(item) {
- var val = parseFloat(item.value);
- if (isNaN(val) || val < 0) {
- valid = false;
- }
- });
- return valid;
- }
-
- window.bindSendEmail = bindSendEmail;
-
- window.shipmentCommentText = shipmentCommentText;
- window.notifyCustomerCheckbox = notifyCustomerCheckbox;
- window.sendEmailCheckbox = sendEmailCheckbox;
- //]]>
-
- });
-
- script;
- ?>
- <?= /* @noEscape */ $secureRenderer->renderTag('script', [], $scriptString, false) ?>
|