<?php
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */
?>
<?php
/**
 * Template for displaying new products widget
 *
 * @var $block \Magento\Catalog\Block\Product\Widget\NewWidget
 */

// phpcs:disable Magento2.Files.LineLength.MaxExceeded
// phpcs:disable Magento2.Templates.ThisInTemplate.FoundThis

if ($exist = ($block->getProductCollection() && $block->getProductCollection()->getSize())) {
    $type = 'widget-new-grid';

    $mode = 'grid';

    $image = 'new_products_content_widget_grid';
    $title = __('New Products');
    $items = $block->getProductCollection()->getItems();

    $showWishlist = true;
    $showCompare = true;
    $showCart = true;
    $templateType = \Magento\Catalog\Block\Product\ReviewRendererInterface::DEFAULT_VIEW;
    $description = false;
}
?>

<?php if ($exist) :?>
    <div class="block widget block-new-products <?= /* @noEscape */ $mode ?>">
        <div class="block-title">
            <strong role="heading" aria-level="2"><?= $block->escapeHtml($title) ?></strong>
        </div>
        <div class="block-content">
            <?= /* @noEscape */ '<!-- ' . $image . '-->' ?>
            <div class="products-<?= /* @noEscape */ $mode ?> <?= /* @noEscape */ $mode ?>">
                <ol class="product-items <?= /* @noEscape */ $type ?>">
                    <?php $iterator = 1; ?>
                    <?php foreach ($items as $_item) :?>
                        <?= /* @noEscape */ ($iterator++ == 1) ? '<li class="product-item">' : '</li><li class="product-item">' ?>
                        <div class="product-item-info">
                            <a href="<?= $block->escapeUrl($block->getProductUrl($_item)) ?>"
                               class="product-item-photo">
                                <?= $block->getImage($_item, $image)->toHtml() ?>
                            </a>
                            <div class="product-item-details">
                                <strong class="product-item-name">
                                    <a title="<?= $block->escapeHtml($_item->getName()) ?>"
                                       href="<?= $block->escapeUrl($block->getProductUrl($_item)) ?>"
                                       class="product-item-link">
                                        <?= $block->escapeHtml($_item->getName()) ?>
                                    </a>
                                </strong>
                                <?= $block->getProductPriceHtml($_item, $type); ?>

                                <?php if ($templateType) :?>
                                    <?= $block->getReviewsSummaryHtml($_item, $templateType) ?>
                                <?php endif; ?>

                                <?php if ($showWishlist || $showCompare || $showCart) :?>
                                    <div class="product-item-actions">
                                        <?php if ($showCart) :?>
                                            <div class="actions-primary">
                                                <?php if ($_item->isSaleable()) :?>
                                                    <?php if ($_item->getTypeInstance()->hasRequiredOptions($_item)) :?>
                                                        <button class="action tocart primary"
                                                                data-mage-init='{"redirectUrl":{"url":"<?= $block->escapeUrl($block->getAddToCartUrl($_item)) ?>"}}'
                                                                type="button"
                                                                title="<?= $block->escapeHtmlAttr(__('Add to Cart')) ?>">
                                                            <span><?= $block->escapeHtml(__('Add to Cart')) ?></span>
                                                        </button>
                                                    <?php else :?>
                                                        <?php
                                                            $postDataHelper = $this->helper(Magento\Framework\Data\Helper\PostHelper::class);
                                                            $postData = $postDataHelper->getPostData(
                                                                $block->escapeUrl($block->getAddToCartUrl($_item)),
                                                                ['product' => (int) $_item->getEntityId()]
                                                            )
                                                        ?>
                                                        <button class="action tocart primary"
                                                                data-post='<?= /* @noEscape */ $postData ?>'
                                                                type="button"
                                                                title="<?= $block->escapeHtmlAttr(__('Add to Cart')) ?>">
                                                            <span><?= $block->escapeHtml(__('Add to Cart')) ?></span>
                                                        </button>
                                                    <?php endif; ?>
                                                <?php else :?>
                                                    <?php if ($_item->getIsSalable()) :?>
                                                        <div class="stock available">
                                                            <span><?= $block->escapeHtml(__('In stock')) ?></span>
                                                        </div>
                                                    <?php else :?>
                                                        <div class="stock unavailable">
                                                            <span><?= $block->escapeHtml(__('Out of stock')) ?></span>
                                                        </div>
                                                    <?php endif; ?>
                                                <?php endif; ?>
                                            </div>
                                        <?php endif; ?>
                                        <?php if ($showWishlist || $showCompare) :?>
                                            <div class="actions-secondary" data-role="add-to-links">
                                                <?php if ($this->helper(Magento\Wishlist\Helper\Data::class)->isAllow() && $showWishlist) :?>
                                                    <a href="#"
                                                       data-post='<?= /* @noEscape */ $block->getAddToWishlistParams($_item) ?>'
                                                       class="action towishlist"
                                                       data-action="add-to-wishlist"
                                                       title="<?= $block->escapeHtmlAttr(__('Add to Wish List')) ?>">
                                                        <span><?= $block->escapeHtml(__('Add to Wish List')) ?></span>
                                                    </a>
                                                <?php endif; ?>
                                                <?php if ($block->getAddToCompareUrl() && $showCompare) :?>
                                                    <?php $compareHelper = $this->helper(Magento\Catalog\Helper\Product\Compare::class);?>
                                                    <a href="#" class="action tocompare"
                                                       data-post='<?= /* @noEscape */ $compareHelper->getPostDataParams($_item) ?>'
                                                       title="<?= $block->escapeHtmlAttr(__('Add to Compare')) ?>">
                                                        <span><?= $block->escapeHtml(__('Add to Compare')) ?></span>
                                                    </a>
                                                <?php endif; ?>
                                            </div>
                                        <?php endif; ?>
                                    </div>
                                <?php endif; ?>
                            </div>
                        </div>
                        <?= ($iterator == count($items)+1) ? '</li>' : '' ?>
                    <?php endforeach ?>
                </ol>
            </div>
            <?= $block->getPagerHtml() ?>
        </div>
    </div>
<?php endif;?>
