<?php
/**
 * Maho
 *
 * @category    design
 * @package     base_default
 * @copyright   Copyright (c) 2006-2020 Magento, Inc. (https://magento.com)
 * @copyright   Copyright (c) 2021-2024 The OpenMage Contributors (https://openmage.org)
 * @copyright   Copyright (c) 2024 Maho (https://mahocommerce.com)
 * @license     https://opensource.org/licenses/afl-3.0.php  Academic Free License (AFL 3.0)
 */
?>
<?php
/**
 * Product list template
 *
 * @see Mage_Catalog_Block_Product_List
 * @var Mage_Catalog_Block_Product_List $this
 */
?>
<?php
    $_productCollection = $this->getLoadedProductCollection();
    $_productCollectionCount = count($_productCollection);
    $_helper = $this->helper('catalog/output');
    $_params = $this->escapeHtml(json_encode(['form_key' => $this->getFormKey()]));
?>
<?php if(!$_productCollection->count()): ?>
<p class="note-msg"><?= $this->__('There are no products matching the selection.') ?></p>
<?php else: ?>
<div class="category-products">
    <?= $this->getToolbarHtml() ?>
    <?php // List mode ?>
    <?php if($this->getMode()!='grid'): ?>
    <?php $_iterator = 0; ?>
    <ol class="products-list" id="products-list">
    <?php foreach ($_productCollection as $_product): ?>
        <li class="item<?php if(++$_iterator === $_productCollectionCount): ?> last<?php endif ?>">
            <?php // Product Image ?>
            <a href="<?= $_product->getProductUrl() ?>" title="<?= $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" class="product-image"><img src="<?= $this->helper('catalog/image')->init($_product, 'small_image')->resize(135) ?>" width="135" height="135" alt="<?= $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" /></a>
            <?php // Product description ?>
            <div class="product-shop">
                <div class="f-fix">
                    <?php $_productNameStripped = $this->stripTags($_product->getName(), null, true); ?>
                    <h2 class="product-name"><a href="<?= $_product->getProductUrl() ?>" title="<?= $_productNameStripped ?>"><?= $_helper->productAttribute($_product, $_product->getName() , 'name') ?></a></h2>
                    <?php if($_product->getRatingSummary()): ?>
                    <?= $this->getReviewsSummaryHtml($_product) ?>
                    <?php endif ?>
                    <?= $this->getPriceHtml($_product, true) ?>
                    <?php if($_product->isSaleable()): ?>
                        <p class="action">
                            <?php $_cartUrl = $this->getAddToCartUrlCustom($_product, [], false); ?>
                            <button type="button"
                                    title="<?= $this->quoteEscape($this->__('Add to Cart')) ?>"
                                    class="button btn-cart"
                                    onclick="customFormSubmit('<?= $_cartUrl ?>', '<?= $_params ?>', 'post')">
                                <?= $this->__('Add to Cart') ?>
                            </button>
                        </p>
                    <?php else: ?>
                        <p class="availability out-of-stock"><span><?= $this->__('Out of stock') ?></span></p>
                    <?php endif ?>
                    <div class="desc std">
                        <?= $_helper->productAttribute($_product, $_product->getShortDescription(), 'short_description') ?>
                        <a href="<?= $_product->getProductUrl() ?>" title="<?= $_productNameStripped ?>" class="link-learn"><?= $this->__('Learn More') ?></a>
                    </div>
                    <ul class="add-to-links">
                        <?php if ($this->helper('wishlist')->isAllow()) : ?>
                            <?php $_wishlistUrl = $this->helper('wishlist')->getAddUrlWithCustomParams($_product, [], false); ?>
                            <li>
                                <a href="#"
                                   data-url="<?= $_wishlistUrl ?>"
                                   data-params="<?= $_params ?>"
                                   class="link-wishlist"
                                   onclick="customFormSubmit('<?= $_wishlistUrl ?>', '<?= $_params ?>', 'post')">
                                    <?= $this->__('Add to Wishlist') ?>
                                </a>
                            </li>
                        <?php endif ?>
                        <?php if ($_compareUrl = $this->getAddToCompareUrlCustom($_product, false)) : ?>
                            <li>
                                <span class="separator">|</span>
                                <a href="#"
                                   class="link-compare"
                                   onclick="customFormSubmit('<?= $_compareUrl ?>', '<?= $_params ?>', 'post')">
                                    <?= $this->__('Add to Compare') ?>
                                </a>
                            </li>
                        <?php endif ?>
                    </ul>
                </div>
            </div>
        </li>
    <?php endforeach ?>
    </ol>

    <?php else: ?>

    <?php // Grid Mode ?>

    <?php $_collectionSize = $_productCollection->count() ?>
    <?php $_columnCount = $this->getColumnCount(); ?>
    <?php $i=0; foreach ($_productCollection as $_product): ?>
        <?php if ($i++%$_columnCount==0): ?>
        <ul class="products-grid">
        <?php endif ?>
            <li class="item">
                <a href="<?= $_product->getProductUrl() ?>" title="<?= $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" class="product-image"><img src="<?= $this->helper('catalog/image')->init($_product, 'small_image')->resize(135) ?>" width="135" height="135" alt="<?= $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" /></a>
                <h2 class="product-name"><a href="<?= $_product->getProductUrl() ?>" title="<?= $this->stripTags($_product->getName(), null, true) ?>"><?= $_helper->productAttribute($_product, $_product->getName(), 'name') ?></a></h2>
                <?php if($_product->getRatingSummary()): ?>
                <?= $this->getReviewsSummaryHtml($_product, 'short') ?>
                <?php endif ?>
                <?= $this->getPriceHtml($_product, true) ?>
                <div class="actions">
                    <?php if($_product->isSaleable()): ?>
                        <?php $_cartUrl = $this->getAddToCartUrlCustom($_product, [], false); ?>
                        <button type="button"
                                title="<?= $this->quoteEscape($this->__('Add to Cart')) ?>"
                                class="button btn-cart"
                                onclick="customFormSubmit('<?= $_cartUrl ?>', '<?= $_params ?>', 'post')">
                            <?= $this->__('Add to Cart') ?>
                        </button>
                    <?php else: ?>
                        <p class="availability out-of-stock"><span><?= $this->__('Out of stock') ?></span></p>
                    <?php endif ?>
                    <ul class="add-to-links">
                        <?php if ($this->helper('wishlist')->isAllow()) : ?>
                            <?php $_wishlistUrl = $this->helper('wishlist')->getAddUrlWithCustomParams($_product, [], false); ?>
                            <li>
                                <a href="#"
                                   data-url="<?= $_wishlistUrl ?>"
                                   data-params="<?= $_params ?>"
                                   class="link-wishlist"
                                   onclick="customFormSubmit('<?= $_wishlistUrl ?>', '<?= $_params ?>', 'post')">
                                    <?= $this->__('Add to Wishlist') ?>
                                </a>
                            </li>
                        <?php endif ?>
                        <?php if ($_compareUrl = $this->getAddToCompareUrlCustom($_product, false)) : ?>
                            <li>
                                <span class="separator">|</span>
                                <a href="#"
                                   class="link-compare"
                                   onclick="customFormSubmit('<?= $_compareUrl ?>', '<?= $_params ?>', 'post')">
                                    <?= $this->__('Add to Compare') ?>
                                </a>
                            </li>
                        <?php endif ?>
                    </ul>
                </div>
            </li>
        <?php if ($i%$_columnCount==0 || $i==$_collectionSize): ?>
        </ul>
        <?php endif ?>
        <?php endforeach ?>
    <?php endif ?>

    <div class="toolbar-bottom">
        <?= $this->getToolbarHtml() ?>
    </div>
</div>
<?php endif ?>
