Initial commit

This commit is contained in:
Ivan Petrov
2025-12-24 19:19:01 +03:00
commit a7097c6178
19493 changed files with 94306 additions and 0 deletions

View File

@@ -0,0 +1,6 @@
<?php $this->ls_set_key("breadcrumbs", array(array("Страница не найдена", ""))); ?>
<?php $b->title_set("Страница не найдена"); ?>
<?php $this->template_load("head.php"); ?>
<?php $this->template_load("header.php"); ?>
<?php $this->template_load("404/catalog.php"); ?>
<?php $this->template_load("footer.php"); ?>

View File

@@ -0,0 +1,398 @@
<section class="section first-other underfined">
<div class="container">
<span class="underfined__wrapper">
<p>ошибка</p>
<h1 class="underfined__heading">404</h1>
<h2 class="underfined__subheading">СТРАНИЦА НЕ НАЙДЕНА</h2>
<a class="underfined__btn" href="/catalog">вернуться в каталог</a>
</span>
<div class="container js-tabs-wrapper" tabname="catalog">
<ul class="generator-types__cont categories-list">
<li
class="categories-list__item js-tabs-button"
style="background-image: url('<?= $b->pa_get_assets_dir() ?>main/images/card1-diesel.png')"
tabname="catalog"
>
<fugure class="categories-list__image"
><img src="<?= $b->pa_get_assets_dir() ?>main/images/diesel-generator.png" alt="" /></fugure
><a class="categories-list__heading" href="#">дизельные</a>
</li>
<li
class="categories-list__item js-tabs-button"
style="background-image: url('<?= $b->pa_get_assets_dir() ?>main/images/card2-benzo.png')"
tabname="catalog"
>
<fugure class="categories-list__image"
><img src="<?= $b->pa_get_assets_dir() ?>main/images/diesel-generator.png" alt="" /></fugure
><a class="categories-list__heading" href="#">бензиновые</a>
</li>
<li
class="categories-list__item js-tabs-button"
style="background-image: url('<?= $b->pa_get_assets_dir() ?>main/images/card3-gas.png')"
tabname="catalog"
>
<fugure class="categories-list__image"
><img src="<?= $b->pa_get_assets_dir() ?>main/images/gas-generator.png" alt="" /></fugure
><a class="categories-list__heading" href="#">газовые</a>
</li>
<li
class="categories-list__item js-tabs-button"
style="background-image: url('<?= $b->pa_get_assets_dir() ?>main/images/card4-svarka.png')"
tabname="catalog"
>
<fugure class="categories-list__image"
><img src="<?= $b->pa_get_assets_dir() ?>main/images/svaroch.png" alt="" /></fugure
><a class="categories-list__heading" href="#">сварочные</a>
</li>
</ul>
<div class="js-tabs-tab" tabname="catalog">
<div class="generator-types__params generator-params js-tabs-wrapper" tabname="catalog-items-diz">
<ul class="generator-params__list">
<li class="generator-params__item js-tabs-button" tabname="catalog-items-diz">
<a
href="#"
class="generator-params__link"
style="background-image: url('<?= $b->pa_get_assets_dir() ?>main/images/by_energy.svg')"
>По мощности</a>
</li>
<li class="generator-params__item js-tabs-button" tabname="catalog-items-diz">
<a
href="#"
class="generator-params__link"
style="background-image: url('<?= $b->pa_get_assets_dir() ?>main/images/by_manufacturer.svg')"
>По производителю</a>
</li>
<li class="generator-params__item js-tabs-button" tabname="catalog-items-diz">
<a
href="#"
class="generator-params__link"
style="background-image: url('<?= $b->pa_get_assets_dir() ?>main/images/by_dvigatel.svg')"
>По двигателю</a>
</li>
</ul>
<article class="generator-types__art js-tabs-tab" tabname="catalog-items-diz">
<h2 class="visually-hidden">По мощности</h2>
<div class="generator-article">
<?php $items = $b->setting_get_value("mini_catalog_diz_power"); if($items) { ?>
<?php foreach ($items as $key => $item) { ?>
<div class="generator-article__box">
<h3 class="generator-article__heading">
<?= $item["title"]; ?>
</h3>
<ul class="generator-article__list row">
<?php foreach ($item["links"] as $k => $link) { ?>
<li class="generator-article__item">
<a href="<?= $link["link"]; ?>"><button><?= $link["title"]; ?></button></a>
</li>
<?php } ?>
</ul>
</div>
<?php }} ?>
</div>
</article>
<article class="generator-types__art js-tabs-tab" tabname="catalog-items-diz">
<h2 class="visually-hidden">По мощности</h2>
<div class="generator-article">
<?php $items = $b->setting_get_value("mini_catalog_diz_producer"); if($items) { ?>
<?php foreach ($items as $key => $item) { ?>
<div class="generator-article__box">
<h3 class="generator-article__heading">
<?= $item["title"]; ?>
</h3>
<ul class="generator-article__list row">
<?php foreach ($item["links"] as $k => $link) { ?>
<li class="generator-article__item">
<a href="<?= $link["link"]; ?>"><button><?= $link["title"]; ?></button></a>
</li>
<?php } ?>
</ul>
</div>
<?php }} ?>
</div>
</article>
<article class="generator-types__art js-tabs-tab" tabname="catalog-items-diz">
<h2 class="visually-hidden">По мощности</h2>
<div class="generator-article">
<?php $items = $b->setting_get_value("mini_catalog_diz_engine"); if($items) { ?>
<?php foreach ($items as $key => $item) { ?>
<div class="generator-article__box">
<h3 class="generator-article__heading">
<?= $item["title"]; ?>
</h3>
<ul class="generator-article__list row">
<?php foreach ($item["links"] as $k => $link) { ?>
<li class="generator-article__item">
<a href="<?= $link["link"]; ?>"><button><?= $link["title"]; ?></button></a>
</li>
<?php } ?>
</ul>
</div>
<?php }} ?>
</div>
</article>
</div>
</div>
<div class="js-tabs-tab" tabname="catalog">
<div class="generator-types__params generator-params js-tabs-wrapper" tabname="catalog-items-benz">
<ul class="generator-params__list">
<li class="generator-params__item js-tabs-button" tabname="catalog-items-benz">
<a
href="#"
class="generator-params__link"
style="background-image: url('<?= $b->pa_get_assets_dir() ?>main/images/by_energy.svg')"
>По мощности</a>
</li>
<li class="generator-params__item js-tabs-button" tabname="catalog-items-benz">
<a
href="#"
class="generator-params__link"
style="background-image: url('<?= $b->pa_get_assets_dir() ?>main/images/by_manufacturer.svg')"
>По производителю</a>
</li>
<li class="generator-params__item js-tabs-button" tabname="catalog-items-benz">
<a
href="#"
class="generator-params__link"
style="background-image: url('<?= $b->pa_get_assets_dir() ?>main/images/by_dvigatel.svg')"
>По двигателю</a>
</li>
</ul>
<article class="generator-types__art js-tabs-tab" tabname="catalog-items-benz">
<h2 class="visually-hidden">По мощности</h2>
<div class="generator-article">
<?php $items = $b->setting_get_value("mini_catalog_benz_power"); if($items) { ?>
<?php foreach ($items as $key => $item) { ?>
<div class="generator-article__box">
<h3 class="generator-article__heading">
<?= $item["title"]; ?>
</h3>
<ul class="generator-article__list row">
<?php foreach ($item["links"] as $k => $link) { ?>
<li class="generator-article__item">
<a href="<?= $link["link"]; ?>"><button><?= $link["title"]; ?></button></a>
</li>
<?php } ?>
</ul>
</div>
<?php }} ?>
</div>
</article>
<article class="generator-types__art js-tabs-tab" tabname="catalog-items-benz">
<h2 class="visually-hidden">По мощности</h2>
<div class="generator-article">
<?php $items = $b->setting_get_value("mini_catalog_benz_producer"); if($items) { ?>
<?php foreach ($items as $key => $item) { ?>
<div class="generator-article__box">
<h3 class="generator-article__heading">
<?= $item["title"]; ?>
</h3>
<ul class="generator-article__list row">
<?php foreach ($item["links"] as $k => $link) { ?>
<li class="generator-article__item">
<a href="<?= $link["link"]; ?>"><button><?= $link["title"]; ?></button></a>
</li>
<?php } ?>
</ul>
</div>
<?php }} ?>
</div>
</article>
<article class="generator-types__art js-tabs-tab" tabname="catalog-items-benz">
<h2 class="visually-hidden">По мощности</h2>
<div class="generator-article">
<?php $items = $b->setting_get_value("mini_catalog_benz_engine"); if($items) { ?>
<?php foreach ($items as $key => $item) { ?>
<div class="generator-article__box">
<h3 class="generator-article__heading">
<?= $item["title"]; ?>
</h3>
<ul class="generator-article__list row">
<?php foreach ($item["links"] as $k => $link) { ?>
<li class="generator-article__item">
<a href="<?= $link["link"]; ?>"><button><?= $link["title"]; ?></button></a>
</li>
<?php } ?>
</ul>
</div>
<?php }} ?>
</div>
</article>
</div>
</div>
<div class="js-tabs-tab" tabname="catalog">
<div class="generator-types__params generator-params js-tabs-wrapper" tabname="catalog-items-gas">
<ul class="generator-params__list">
<li class="generator-params__item js-tabs-button" tabname="catalog-items-gas">
<a
href="#"
class="generator-params__link"
style="background-image: url('<?= $b->pa_get_assets_dir() ?>main/images/by_energy.svg')"
>По мощности</a>
</li>
<li class="generator-params__item js-tabs-button" tabname="catalog-items-gas">
<a
href="#"
class="generator-params__link"
style="background-image: url('<?= $b->pa_get_assets_dir() ?>main/images/by_manufacturer.svg')"
>По производителю</a>
</li>
<li class="generator-params__item js-tabs-button" tabname="catalog-items-gas">
<a
href="#"
class="generator-params__link"
style="background-image: url('<?= $b->pa_get_assets_dir() ?>main/images/by_dvigatel.svg')"
>По двигателю</a>
</li>
</ul>
<article class="generator-types__art js-tabs-tab" tabname="catalog-items-gas">
<h2 class="visually-hidden">По мощности</h2>
<div class="generator-article">
<?php $items = $b->setting_get_value("mini_catalog_gas_power"); if($items) { ?>
<?php foreach ($items as $key => $item) { ?>
<div class="generator-article__box">
<h3 class="generator-article__heading">
<?= $item["title"]; ?>
</h3>
<ul class="generator-article__list row">
<?php foreach ($item["links"] as $k => $link) { ?>
<li class="generator-article__item">
<a href="<?= $link["link"]; ?>"><button><?= $link["title"]; ?></button></a>
</li>
<?php } ?>
</ul>
</div>
<?php }} ?>
</div>
</article>
<article class="generator-types__art js-tabs-tab" tabname="catalog-items-gas">
<h2 class="visually-hidden">По мощности</h2>
<div class="generator-article">
<?php $items = $b->setting_get_value("mini_catalog_gas_producer"); if($items) { ?>
<?php foreach ($items as $key => $item) { ?>
<div class="generator-article__box">
<h3 class="generator-article__heading">
<?= $item["title"]; ?>
</h3>
<ul class="generator-article__list row">
<?php foreach ($item["links"] as $k => $link) { ?>
<li class="generator-article__item">
<a href="<?= $link["link"]; ?>"><button><?= $link["title"]; ?></button></a>
</li>
<?php } ?>
</ul>
</div>
<?php }} ?>
</div>
</article>
<article class="generator-types__art js-tabs-tab" tabname="catalog-items-gas">
<h2 class="visually-hidden">По мощности</h2>
<div class="generator-article">
<?php $items = $b->setting_get_value("mini_catalog_gas_engine"); if($items) { ?>
<?php foreach ($items as $key => $item) { ?>
<div class="generator-article__box">
<h3 class="generator-article__heading">
<?= $item["title"]; ?>
</h3>
<ul class="generator-article__list row">
<?php foreach ($item["links"] as $k => $link) { ?>
<li class="generator-article__item">
<a href="<?= $link["link"]; ?>"><button><?= $link["title"]; ?></button></a>
</li>
<?php } ?>
</ul>
</div>
<?php }} ?>
</div>
</article>
</div>
</div>
<div class="js-tabs-tab" tabname="catalog">
<div class="generator-types__params generator-params js-tabs-wrapper" tabname="catalog-items-svar">
<ul class="generator-params__list">
<li class="generator-params__item js-tabs-button" tabname="catalog-items-svar">
<a
href="#"
class="generator-params__link"
style="background-image: url('<?= $b->pa_get_assets_dir() ?>main/images/by_energy.svg')"
>По мощности</a>
</li>
<li class="generator-params__item js-tabs-button" tabname="catalog-items-svar">
<a
href="#"
class="generator-params__link"
style="background-image: url('<?= $b->pa_get_assets_dir() ?>main/images/by_manufacturer.svg')"
>По производителю</a>
</li>
<li class="generator-params__item js-tabs-button" tabname="catalog-items-svar">
<a
href="#"
class="generator-params__link"
style="background-image: url('<?= $b->pa_get_assets_dir() ?>main/images/by_dvigatel.svg')"
>По двигателю</a>
</li>
</ul>
<article class="generator-types__art js-tabs-tab" tabname="catalog-items-svar">
<h2 class="visually-hidden">По мощности</h2>
<div class="generator-article">
<?php $items = $b->setting_get_value("mini_catalog_svar_power"); if($items) { ?>
<?php foreach ($items as $key => $item) { ?>
<div class="generator-article__box">
<h3 class="generator-article__heading">
<?= $item["title"]; ?>
</h3>
<ul class="generator-article__list row">
<?php foreach ($item["links"] as $k => $link) { ?>
<li class="generator-article__item">
<a href="<?= $link["link"]; ?>"><button><?= $link["title"]; ?></button></a>
</li>
<?php } ?>
</ul>
</div>
<?php }} ?>
</div>
</article>
<article class="generator-types__art js-tabs-tab" tabname="catalog-items-svar">
<h2 class="visually-hidden">По мощности</h2>
<div class="generator-article">
<?php $items = $b->setting_get_value("mini_catalog_svar_producer"); if($items) { ?>
<?php foreach ($items as $key => $item) { ?>
<div class="generator-article__box">
<h3 class="generator-article__heading">
<?= $item["title"]; ?>
</h3>
<ul class="generator-article__list row">
<?php foreach ($item["links"] as $k => $link) { ?>
<li class="generator-article__item">
<a href="<?= $link["link"]; ?>"><button><?= $link["title"]; ?></button></a>
</li>
<?php } ?>
</ul>
</div>
<?php }} ?>
</div>
</article>
<article class="generator-types__art js-tabs-tab" tabname="catalog-items-svar">
<h2 class="visually-hidden">По мощности</h2>
<div class="generator-article">
<?php $items = $b->setting_get_value("mini_catalog_svar_engine"); if($items) { ?>
<?php foreach ($items as $key => $item) { ?>
<div class="generator-article__box">
<h3 class="generator-article__heading">
<?= $item["title"]; ?>
</h3>
<ul class="generator-article__list row">
<?php foreach ($item["links"] as $k => $link) { ?>
<li class="generator-article__item">
<a href="<?= $link["link"]; ?>"><button><?= $link["title"]; ?></button></a>
</li>
<?php } ?>
</ul>
</div>
<?php }} ?>
</div>
</article>
</div>
</div>
</div>
</div>
</section>

View File

@@ -0,0 +1,30 @@
<?php $items = $variables["items"]; ?>
<?php
$home_link_dom = new DOM("a");
$home_link_dom->setAttribute("class", "breadcrumbs__item breadcrumbs__item_first");
$home_link_dom->setAttribute("href", "/");
$home_link_dom->append("Главная");
$breadcrumbs_dom = new DOM("div");
$breadcrumbs_dom->setAttribute("id", "breadcrumbs");
$breadcrumbs_dom->setAttribute("class", "breadcrumbs row");
$breadcrumbs_dom->append($home_link_dom);
if($items) {
for ($i = 0; $i < count($items); $i++) {
$link_tag = "a";
$link_class = "breadcrumbs__item_first";
if($i == count($items) - 1){ $link_tag = "p"; $link_class = "breadcrumbs__item_last";}
$link_dom = new DOM($link_tag);
$link_dom->setAttribute("class", "breadcrumbs__item " . $link_class);
$link_dom->setAttribute("href", $items[$i][1]);
$link_dom->append($items[$i][0]);
$breadcrumbs_dom->append($link_dom);
}
$breadcrumbs_dom->view();
}
?>
<a href="/" class="back-home">główna</a>

View File

@@ -0,0 +1,40 @@
<?php $this->template_load("head.php"); ?>
<?php $this->template_load("header.php"); ?>
<?php $catalog_items = $b->setting_get_value("catalog_items"); ?>
<main class="main">
<div class="products">
<div class="container">
<div class="row">
<div class="col-12 position-relative">
<?php $this->template_load("breadcrumbs.php"); ?>
<h1 class="title-text"><span>Produkty</span></h1>
</div>
</div>
<div class="row">
<div class="col-12">
<div class="products-box">
<?php foreach ($catalog_items as $num => $item) { ?>
<?php $product = $b->get_item_by_id($item["item_id"]); ?>
<div class="product position-relative text-center">
<a href="/product/<?= $product->get_item_slug(); ?>/" class="position-absolute top-0 start-0 w-100 h-100"></a>
<div class="product-photo">
<img src="<?= $product->get_prop_render_value("product_photo") ?>" alt="">
<button class="add-basket">
<svg width="21" height="19" viewBox="0 0 21 19" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1 7.37476H20M1 7.37476L3.11111 17.9998H17.8889L20 7.37476M1 7.37476L7.33333 0.999756M20 7.37476L13.6667 0.999756" stroke="white" stroke-width="1.34641" stroke-linecap="round" stroke-linejoin="round"/>
</svg>
</button>
</div>
<p class="product-name"><?= $product->get_item_name(); ?></p>
<p class="product-price">$<?= $product->get_prop("price"); ?></p>
</div>
<?php } ?>
</div>
</div>
</div>
</div>
</div>
</main>
<?php $this->template_load("footer.php"); ?>

View File

@@ -0,0 +1,12 @@
<?php $person = $variables["person"]; ?>
<div class="reviews-block__tabs rev-tabs row align-items-center justify-content-center">
<a class="rev-tabs__btn checkout__btn col-auto <?= $person == 2 ? "active" : ""; ?>" href="<?= $b->router_format_get_params(array("person" => 2), true); ?>">Юридическое лицо</a>
<a class="rev-tabs__btn checkout__btn col-auto <?= $person == 1 ? "active" : ""; ?>" href="<?= $b->router_format_get_params(array("person" => 1), true); ?>">Физическое лицо</a>
</div>
<?php if($person == 1) { ?>
<?php $this->template_load("checkout/individual.php", array("person" => $person)); ?>
<?php } else { ?>
<?php $this->template_load("checkout/legal.php", array("person" => $person)); ?>
<?php } ?>

View File

@@ -0,0 +1,83 @@
<?php $person = $variables["person"]; ?>
<article class="reviews-block-art checkout__article js-targetTabs">
<div class="checkout__form checkout-form">
<form action="" method="post">
<input type="hidden" name="legal" value="<?= $person; ?>">
<div class="checkout-form__fields">
<h2 class="wide checkout__heading">Информация о покупателе</h2>
<span class="wide">
<input type="text" id="name" class="input-form input-track" name="name" placeholder="Фамилия, имя, отчество" required value="<?= $b->get_view($b->session_get("name")); ?>"/>
<label for="name">Фамилия, имя, отчество</label>
</span>
<span>
<input type="tel" id="tel" class="input-form input-track phone-input" name="phone" placeholder="+7 (___) ___-____" required data-inputmask="'mask': '+7 (999) 999-9999'" value="<?= $b->get_view($b->session_get("phone")); ?>"/>
<label for="tel">Мобильный номер телефона*</label>
</span>
<span>
<input type="email" id="email" class="input-form input-track" name="email" placeholder="Email" required value="<?= $b->get_view($b->session_get("email")); ?>"/>
<label for="email">Для получения чека и уведомлений</label>
</span>
</div>
<div class="checkout-form__fields">
<h2 class="wide checkout__heading">Доставка</h2>
<span>
<input type="text" id="dost2" class="input-form input-track" placeholder="Москва, Московская область" name="address_region" value="<?= $b->get_view($b->session_get("address_region")); ?>"/>
<label for="dost1">Выберите область/регион для вычисления стоимости доставки</label>
</span>
<span>
<input type="text" id="dost2" class="input-form input-track" placeholder="Город, дом, улица" name="address_street" value="<?= $b->get_view($b->session_get("address_street")); ?>"/>
<label for="dost2">Укажите адрес доставки</label>
</span>
</div>
<div class="checkout-form__radio checkout-form__radio_delivery">
<span class="first">
<input type="radio" id="pochta" class="input-track" name="shipping_method" value="1" <?= $b->session_get("shipping") == 1 ? "checked" : ""; ?>/>
<label for="pochta">Почтой России - <span>Уточнять у менеджера</span></label>
</span>
<span class="second">
<input type="radio" id="pochta_kurier" class="input-track" name="shipping_method" value="2" <?= $b->session_get("shipping") == 2 ? "checked" : ""; ?>/>
<label for="pochta_kurier">Курьером Почты России (EMS) - <span>Уточнять у менеджера</span></label>
</span>
<span class="third">
<input type="radio" id="sdek_kurier" class="input-track" name="shipping_method" value="3" <?= $b->session_get("shipping") == 3 ? "checked" : ""; ?>/>
<label for="sdek_kurier">Курьер СДЭК - <span>Уточнять у менеджера</span></label>
</span>
<span class="fourth">
<input type="radio" id="samovivoz" class="input-track" name="shipping_method" value="0" <?= $b->session_get("shipping") == 0 ? "checked" : ""; ?>/>
<label for="samovivoz">Самовывоз - <span>бесплатно</span></label>
</span>
</div>
<div class="checkout-form__radio checkout-form__radio_payment">
<h2 class="wide checkout__heading">Оплата</h2>
<span class="first">
<input type="radio" id="karta_online" class="input-track" name="payment_method" value="1" <?= $b->session_get("payment_method") == 1 ? "checked" : ""; ?>/>
<label for="karta_online">Банковской картой онлайн</label>
</span>
<span class="second">
<input type="radio" id="karta_poluchenie" class="input-track" name="payment_method" value="2" <?= $b->session_get("payment_method") == 2 ? "checked" : ""; ?>/>
<label for="karta_poluchenie">Картой при получении</label>
</span>
<span class="third">
<input type="radio" id="nalik" class="input-track" name="payment_method" value="0" <?= $b->session_get("payment_method") == 0 ? "checked" : ""; ?>/>
<label for="nalik">Наличными</label>
</span>
</div>
<div class="checkout-form__fields">
<h2 class="checkout__heading wide">Комментарии к заказу</h2>
<textarea class="input-form wide input-track" placeholder="Комментарии к заказу" name="comment"><?= $b->get_view($b->session_get("comment")); ?></textarea>
</div>
<?php $this->template_load("checkout/price.php"); ?>
<button class="form-zakaz__btn" type="submit">оформить заказ</button>
<label class="agreement">
<input type="checkbox" class="agreement-checkbox" checked required>
<span>
<span>
Я согласен с условиями предоставления услуг и
<a href="/page/privacy/">обработкой моих персональных данных</a> при
нажатии "Оставить заявку"
</span>
</span>
</label>
</form>
</div>
</article>

View File

@@ -0,0 +1,80 @@
<?php $person = $variables["person"]; ?>
<article class="reviews-block-art checkout__article js-targetTabs">
<div class="checkout__form checkout-form">
<form action="" method="post">
<input type="hidden" name="legal" value="<?= $person; ?>">
<div class="checkout-form__fields">
<h2 class="wide checkout__heading">Информация о покупателе</h2>
<span class="wide">
<input type="text" id="name_comp" class="input-form input-track" placeholder="Название компании" name="legal_name" required value="<?= $b->get_view($b->session_get("legal_name")); ?>"/>
<label for="name_comp">Название компании</label> </span>
<span>
<input type="tel" id="tel_comp" class="input-form input-track phone-input" placeholder="+7 (___) ___-____" required data-inputmask="'mask': '+7 (999) 999-9999'" name="phone" value="<?= $b->get_view($b->session_get("phone")); ?>"/>
<label for="tel_comp">Мобильный номер телефона*</label>
</span>
<span>
<input type="email" id="email_comp" class="input-form input-track" placeholder="Email" name="email" required value="<?= $b->get_view($b->session_get("email")); ?>"/>
<label for="email_comp">Для получения чека и уведомлений</label>
</span>
<span class="wide">
<input type="text" id="address" class="input-form wide input-track" placeholder="Город, дом, улица" name="legal_address" value="<?= $b->get_view($b->session_get("legal_address")); ?>" />
<label for="address">Юридический адрес</label>
</span>
<input type="text" id="inn" class="input-form input-track" placeholder="ИНН" name="legal_inn" value="<?= $b->get_view($b->session_get("legal_inn")); ?>"/>
<input type="text" id="kpp" class="input-form input-track" placeholder="КПП" name="legal_kpp" value="<?= $b->get_view($b->session_get("legal_kpp")); ?>"/>
</div>
<div class="checkout-form__fields">
<h2 class="wide checkout__heading">Доставка</h2>
<span>
<input type="text" id="dost2" class="input-form input-track" placeholder="Москва, Московская область" name="address_region" value="<?= $b->get_view($b->session_get("address_region")); ?>"/>
<label for="dost1">Выберите область/регион для вычисления стоимости доставки</label>
</span>
<span>
<input type="text" id="dost2_comp" class="input-form input-track" placeholder="Город, дом, улица" name="address_street" value="<?= $b->get_view($b->session_get("address_street")); ?>"/>
<label for="dost2_comp">Укажите адрес доставки</label>
</span>
</div>
<div class="checkout-form__radio checkout-form__radio_delivery">
<span class="first">
<input type="radio" id="pochta" class="input-track" name="shipping_method" value="1" <?= $b->session_get("shipping") == 1 ? "checked" : ""; ?>/>
<label for="pochta">Почтой России - <span>Уточнять у менеджера</span></label>
</span>
<span class="second">
<input type="radio" id="pochta_kurier" class="input-track" name="shipping_method" value="2" <?= $b->session_get("shipping") == 2 ? "checked" : ""; ?>/>
<label for="pochta_kurier">Курьером Почты России (EMS) - <span>Уточнять у менеджера</span></label>
</span>
<span class="third">
<input type="radio" id="sdek_kurier" class="input-track" name="shipping_method" value="3" <?= $b->session_get("shipping") == 3 ? "checked" : ""; ?>/>
<label for="sdek_kurier">Курьер СДЭК - <span>Уточнять у менеджера</span></label>
</span>
<span class="fourth">
<input type="radio" id="samovivoz" class="input-track" name="shipping_method" value="0" <?= $b->session_get("shipping") == 0 ? "checked" : ""; ?>/>
<label for="samovivoz">Самовывоз - <span>бесплатно</span></label>
</span>
</div>
<div class="checkout-form__radio checkout-form__radio_payment">
<h2 class="wide checkout__heading">Оплата</h2>
<span class="first">
<input type="radio" id="karta_online" class="input-track" name="payment_method" value="1" checked="checked" />
<label for="karta_online">По рассчетному счету</label>
</span>
</div>
<div class="checkout-form__fields">
<h2 class="checkout__heading wide">Комментарии к заказу</h2>
<textarea class="input-form wide input-track" placeholder="Комментарии к заказу" name="comment"><?= $b->get_view($b->session_get("comment")); ?></textarea>
</div>
<?php $this->template_load("checkout/price.php"); ?>
<button class="form-zakaz__btn" type="submit">оформить заказ</button>
<label class="agreement">
<input type="checkbox" class="agreement-checkbox" checked required>
<span>
<span>
Я согласен с условиями предоставления услуг и
<a href="/page/privacy/">обработкой моих персональных данных</a> при
нажатии "Оставить заявку"
</span>
</span>
</label>
</form>
</div>
</article>

View File

@@ -0,0 +1,27 @@
<?php
global $cart;
$cart_info = $cart->cart_total_price();
?>
<div class="checkout-form__totals checkout-totals">
<div class="checkout-totals__box row align-items-center justify-content-between">
<p class="name col">Сумма товаров</p>
<span class="checkout-totals__prices col-auto row align-items-center justify-conrent-end">
<p class="product-wrapper__oldprice col-auto">
<del><?= number_format($cart_info["regular_sum"], 2, ',', ' '); ?> ₽</del>
</p>
<p class="product-wrapper__newprice checkout-totals__newprice col-auto">
<?= number_format($cart_info["total_sum"], 2, ',', ' '); ?> ₽
</p>
</span>
</div>
<div class="checkout-totals__box row align-items-center justify-content-between">
<p class="name col">Итоговая скидка</p>
<p class="checkout-totals__newprice col-auto">-<?= number_format($cart_info["sale_sum"], 2, ',', ' '); ?> ₽</p>
</div>
<div class="checkout-totals__box checkout-totals__box_total row align-items-center justify-content-between">
<p class="name col">Итого</p>
<p class="checkout-totals__newprice col-auto"><?= number_format($cart_info["final_sum"], 2, ',', ' '); ?> ₽</p>
</div>
</div>

View File

@@ -0,0 +1,69 @@
<footer class="footer" id="footer">
<div class="footer-top">
<div class="container">
<div class="row">
<div class="col-12 d-flex align-items-center justify-content-between flex-wrap">
<h3 class="footer-title">Masz pytania? Napisz do nas!</h3>
<form class="footer-form d-flex">
<input type="text" class="form__inp" placeholder="Wpisz pytanie" required>
<button class="form__btn">napisz</button>
</form>
</div>
</div>
</div>
</div>
<div class="footer-box">
<div class="container">
<div class="row">
<div class="col-12 d-flex align-items-center justify-content-between">
<a href="/" class="logo">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/logo2.svg" alt="" class="logo-img d-none d-sm-block">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/logo-mini.svg" alt="" class="logo-img d-sm-none">
</a>
<ul class="footer-nav d-none d-md-flex">
<li><a href="/page/about/">o nas</a></li>
<li><a href="/products">produkty</a></li>
<li><a href="/page/faqs">faq</a></li>
<li><a href="#footer">kontakt</a></li>
</ul>
<div class="socials d-flex">
<a href="#" class="social">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/fm.svg" alt="">
</a>
<a href="#" class="social">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/tiktok.svg" alt="">
</a>
<a href="#" class="social">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/instagram.svg" alt="">
</a>
<a href="#" class="social">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/facebook.svg" alt="">
</a>
</div>
</div>
</div>
<div class="row">
<div class="col-12">
<div class="d-flex justify-content-between align-items-start align-items-md-end">
<div class="footer-info">
<p>Werbeny 43A <br> 05-410 Józefów</p>
<a href="mailto:pl.zielone.lapy@gmail.com">pl.zielone.lapy@gmail.com</a>
</div>
<ul class="footer-subnav d-flex justify-content-between">
<li><a href="/page/privacy">polityka prywatności</a></li>
<li><a href="/page/privacy-returns">polityka zwrotów</a></li>
<li><a href="/page/privacy-shipping">polityka wysyłki</a></li>
<li><a href="/page/terms-service">regulamin usługi</a></li>
</ul>
</div>
<ul class="footer-nav d-flex d-md-none justify-content-between">
<li><a href="/page/about/">o nas</a></li>
<li><a href="/products">produkty</a></li>
<li><a href="/page/faqs/">faq</a></li>
<li><a href="#footer">kontakt</a></li>
</ul>
</div>
</div>
</div>
</div>
</footer>

View File

@@ -0,0 +1,28 @@
<?php
$b->css_style_connect($b->pa_get_assets_dir() . "main/css/plugin/swiper.css");
$b->css_style_connect($b->pa_get_assets_dir() . "main/css/plugin/bootstrap.css");
$b->css_style_connect($b->pa_get_assets_dir() . "main/css/main.css");
$b->link_add(array("rel" => "shortcut icon", "href" => $b->pa_get_assets_dir() . "main/img/logo.ico"));
$b->script_add(array("src" => $b->pa_get_assets_dir() . "main/js/header.js", "defer" => "defer"));
$b->script_add(array("src" => $b->pa_get_assets_dir() . "main/js/faqs.js", "defer" => "defer"));
$b->script_add(array("src" => $b->pa_get_assets_dir() . "main/js/plugin/swiper.js", "defer" => "defer"));
$b->script_add(array("src" => $b->pa_get_assets_dir() . "main/js/header.js", "defer" => "defer"));
$b->script_add(array("src" => $b->pa_get_assets_dir() . "main/js/card.js", "defer" => "defer"));
?>
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width,initial-scale=1" />
<?php $b->meta_render(); ?>
<?php $b->link_render(); ?>
<?php $b->script_render(); ?>
<title><?= $b->title_get(); ?></title>
</head>
<body>

View File

@@ -0,0 +1,56 @@
<?php defined( 'ROOT_DIR' ) || exit; ?>
<?php global $cart; ?>
<?php $slug = $b->router_get_segment(0); ?>
<?php $rows = $b->setting_get_value("nav_links"); ?>
<header class="header <?php if($slug == "") { echo "header-home"; } ?>">
<div class="header-box d-flex align-items-center justify-content-between">
<a href="/" class="logo">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/logo.svg" alt="" class="logo-img d-none d-md-block">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/logo-mini.svg" alt="" class="logo-img d-md-none">
</a>
<ul class="header-nav d-none d-md-flex">
<?php foreach ($rows as $num => $row) { ?>
<li><a href="<?= $row["link"]; ?>"><?= $row["label"]; ?></a></li>
<?php } ?>
</ul>
<div class="d-none d-md-flex align-items-center">
<a href="/cart/" class="basket-link">
<svg width="34" height="31" viewBox="0 0 34 31" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1 11.9142H33M1 11.9142L4.55556 30.0392H29.4444L33 11.9142M1 11.9142L11.6667 1.03922M33 11.9142L22.3333 1.03922" stroke="black" stroke-width="1.34641" stroke-linecap="round" stroke-linejoin="round"/>
</svg>
<span class="basket-count">0</span>
</a>
<button class="regis-btn">
<svg width="25" height="33" viewBox="0 0 25 33" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M12.5 0.850006C11.0364 0.850006 9.60566 1.28401 8.38874 2.09713C7.17181 2.91025 6.22334 4.06597 5.66325 5.41815C5.10316 6.77032 4.95662 8.25821 5.24215 9.69367C5.52768 11.1291 6.23246 12.4477 7.26737 13.4826C8.30228 14.5175 9.62083 15.2223 11.0563 15.5078C12.4917 15.7933 13.9796 15.6468 15.3318 15.0867C16.684 14.5266 17.8397 13.5781 18.6528 12.3612C19.466 11.1443 19.9 9.71359 19.9 8.25001C19.8979 6.28803 19.1176 4.407 17.7303 3.01967C16.343 1.63234 14.4619 0.852047 12.5 0.850006ZM12.5 14.1083C11.3413 14.1083 10.2086 13.7648 9.24524 13.121C8.28185 12.4773 7.53097 11.5624 7.08756 10.4919C6.64416 9.42142 6.52815 8.24351 6.75419 7.1071C6.98024 5.9707 7.53819 4.92684 8.35749 4.10754C9.17679 3.28824 10.2206 2.73028 11.3571 2.50424C12.4935 2.27819 13.6714 2.39421 14.7418 2.83761C15.8123 3.28102 16.7273 4.03189 17.371 4.99529C18.0147 5.95869 18.3583 7.09134 18.3583 8.25001C18.3567 9.80323 17.7389 11.2924 16.6406 12.3907C15.5423 13.489 14.0532 14.1067 12.5 14.1083ZM24.8333 32.9167H0.166626V25.9792C0.169074 23.7311 1.0632 21.5758 2.65282 19.9862C4.24244 18.3966 6.39773 17.5025 8.64579 17.5H16.3541C18.6022 17.5025 20.7575 18.3966 22.3471 19.9862C23.9367 21.5758 24.8308 23.7311 24.8333 25.9792V32.9167ZM1.70829 31.375H23.2916V25.9792C23.2896 24.1399 22.558 22.3765 21.2574 21.0759C19.9568 19.7753 18.1934 19.0437 16.3541 19.0417H8.64579C6.80648 19.0437 5.04308 19.7753 3.74249 21.0759C2.4419 22.3765 1.71033 24.1399 1.70829 25.9792V31.375Z" fill="black"/>
</svg>
</button>
</div>
<button class="menu-btn d-md-none">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/burger.svg" alt="">
</button>
<div class="menu justify-content-end text-end">
<ul class="menu-nav">
<li>
<a href="/cart/">
<span>koszyk</span>
<svg width="14" height="16" viewBox="0 0 34 31" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1 11.9142H33M1 11.9142L4.55556 30.0392H29.4444L33 11.9142M1 11.9142L11.6667 1.03922M33 11.9142L22.3333 1.03922" stroke="#2C9A33" stroke-width="1.34641" stroke-linecap="round" stroke-linejoin="round"/>
</svg>
</a>
</li>
<li class="regis-btn">
<span>konto</span>
<svg width="13" height="16" viewBox="0 0 25 33" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M12.5 0.850006C11.0364 0.850006 9.60566 1.28401 8.38874 2.09713C7.17181 2.91025 6.22334 4.06597 5.66325 5.41815C5.10316 6.77032 4.95662 8.25821 5.24215 9.69367C5.52768 11.1291 6.23246 12.4477 7.26737 13.4826C8.30228 14.5175 9.62083 15.2223 11.0563 15.5078C12.4917 15.7933 13.9796 15.6468 15.3318 15.0867C16.684 14.5266 17.8397 13.5781 18.6528 12.3612C19.466 11.1443 19.9 9.71359 19.9 8.25001C19.8979 6.28803 19.1176 4.407 17.7303 3.01967C16.343 1.63234 14.4619 0.852047 12.5 0.850006ZM12.5 14.1083C11.3413 14.1083 10.2086 13.7648 9.24524 13.121C8.28185 12.4773 7.53097 11.5624 7.08756 10.4919C6.64416 9.42142 6.52815 8.24351 6.75419 7.1071C6.98024 5.9707 7.53819 4.92684 8.35749 4.10754C9.17679 3.28824 10.2206 2.73028 11.3571 2.50424C12.4935 2.27819 13.6714 2.39421 14.7418 2.83761C15.8123 3.28102 16.7273 4.03189 17.371 4.99529C18.0147 5.95869 18.3583 7.09134 18.3583 8.25001C18.3567 9.80323 17.7389 11.2924 16.6406 12.3907C15.5423 13.489 14.0532 14.1067 12.5 14.1083ZM24.8333 32.9167H0.166626V25.9792C0.169074 23.7311 1.0632 21.5758 2.65282 19.9862C4.24244 18.3966 6.39773 17.5025 8.64579 17.5H16.3541C18.6022 17.5025 20.7575 18.3966 22.3471 19.9862C23.9367 21.5758 24.8308 23.7311 24.8333 25.9792V32.9167ZM1.70829 31.375H23.2916V25.9792C23.2896 24.1399 22.558 22.3765 21.2574 21.0759C19.9568 19.7753 18.1934 19.0437 16.3541 19.0417H8.64579C6.80648 19.0437 5.04308 19.7753 3.74249 21.0759C2.4419 22.3765 1.71033 24.1399 1.70829 25.9792V31.375Z" fill="#2C9A33"/>
</svg>
</li>
<?php foreach ($rows as $num => $row) { ?>
<li><a href="<?= $row["link"]; ?>"><?= $row["label"]; ?></a></li>
<?php } ?>
</ul>
</div>
</div>
</header>

View File

@@ -0,0 +1,24 @@
<?php
$attribute_name = $variables["attribute_name"];
$attribute_slug = $variables["attribute_slug"];
$max_range = $variables["max_range"];
$min_range = $variables["min_range"];
?>
<div class="mt-2 d-flex align-items-center justify-content-between">
<div class="col-6 row align-items-center">
<p class="choose-popup__key col-auto"><?= $attribute_name; ?></p>
</div>
<div class="col-6 choose-popup__group row align-items-center justify-content-between">
<span class="col-6 p-0 m-0 row align-items-center">
<label for="power_start" class="col-auto">от</label>
<input id="power_start" type="text" class="col" placeholder="<?= $min_range; ?>" name="<?= $attribute_slug; ?>_start">
</span>
<span class="col-6 p-0 m-0 row align-items-center">
<label for="power_end" class="col-auto">до</label>
<input id="power_end" type="text" class="col" placeholder="<?= $max_range; ?>" name="<?= $attribute_slug; ?>_end">
</span>
</div>
</div>

View File

@@ -0,0 +1,50 @@
<?php
log_message("- Формирую блок фильтров " .time());
$attributes = $variables["attributes"];
$numeric = $variables["numeric"];
$search = new Search(array(
"class" => "Attribute",
"terms" => array("item_slug" => $variables["attribute_slug"])
));
$pages = $search->collect();
if(!$pages) return;
$attribute = $pages[0];
$attribute_slug = $attribute->get_item_slug();
if(!count($attributes)) return;
$attribute_list = array();
foreach ($attributes as $key => $attribute_item) {
if($attribute_item->parent_id != $attribute->item_id) continue;
$attribute_list[] = array(
"slug" => $attribute_item->get_item_slug(),
"title" => $attribute_item->get_item_name()
);
}
if(!count($attribute_list)) return;
$attribute_list = sortArrayByName($attribute_list);
?>
<div class="mt-2 d-flex align-items-center justify-content-between">
<div class="col-6 row align-items-center">
<p class="choose-popup__key col-auto"><?= $attribute->get_item_name(); ?></p>
<div class="choose-popup__tooltip"></div>
</div>
<select name="<?= "filter_" . $attribute_slug; ?>" id="toplivo" class="col-6">
<option>Не выбрано</option>
<?php foreach ($attribute_list as $key => $attribute_item) { ?>
<?php
$item_slug = $attribute_item["slug"];
$active = $_GET["filter_" . $attribute_slug] == $item_slug;
if(!$item_slug) continue;
?>
<option value="<?= $item_slug; ?>"><?= $attribute_item["title"]; ?></option>
<?php } ?>
</select>
</div>

View File

@@ -0,0 +1,13 @@
<?php defined( 'ROOT_DIR' ) || exit; ?>
<?php $this->template_load("head.php"); ?>
<?php $this->template_load("header.php"); ?>
<main class="main">
<?php $this->template_load("main/first_screen.php"); ?>
<?php $this->template_load("main/catalog.php"); ?>
<?php $this->template_load("main/reviews.php"); ?>
<?php $this->template_load("main/text.php"); ?>
<?php $this->template_load("main/faq.php"); ?>
</main>
<?php $this->template_load("footer.php"); ?>

View File

@@ -0,0 +1,2 @@
<?php defined( 'ROOT_DIR' ) || exit; ?>
<?php $this->template_load("index.php", array()); ?>

View File

View File

@@ -0,0 +1,57 @@
<?php $main_h1_one = $b->setting_get_value("main_block1_one"); ?>
<?php $main_h1_two = $b->setting_get_value("main_block1_two"); ?>
<?php $main_h1_image = $b->setting_get_value("main_block1_image"); ?>
<?php $main_h1_text = $b->setting_get_value("main_block1_text"); ?>
<?php $main_h1_link = $b->setting_get_value("main_block1_link"); ?>
<div class="block2">
<div class="container">
<div class="row">
<div class="col-12 d-flex align-items-center justify-content-between flex-wrap">
<img src="<?= $main_h1_image ?>" alt="" class="block2-img">
<div class="block2-info">
<h2 class="title-text"><?= $main_h1_one; ?></h2>
<p class="info-text"><?= $main_h1_two; ?></p>
<a href="<?= $main_h1_link ?>" class="buyNow-link"><?= $main_h1_text ?></a>
</div>
</div>
</div>
</div>
</div>
<?php $main_block2_one = $b->setting_get_value("main_block2_one"); ?>
<?php $main_block2_image1_image = $b->setting_get_value("main_block2_image1_image"); ?>
<?php $main_block2_image1_text = $b->setting_get_value("main_block2_image1_text"); ?>
<?php $main_block2_image2_image = $b->setting_get_value("main_block2_image2_image"); ?>
<?php $main_block2_image2_text = $b->setting_get_value("main_block2_image2_text"); ?>
<?php $main_block2_image3_image = $b->setting_get_value("main_block2_image3_image"); ?>
<?php $main_block2_image3_text = $b->setting_get_value("main_block2_image3_text"); ?>
<div class="block3">
<h2 class="title-text"><span><?= $main_block2_one; ?></span></h2>
<div class="container">
<div class="row">
<div class="col-12">
<div class="block3-box">
<div class="block3-card text-center">
<img src="<?= $main_block2_image1_image; ?>" alt="" class="card-img">
<p class="card-text"><?= $main_block2_image1_text; ?></p>
</div>
<div class="block3-card text-center">
<img src="<?= $main_block2_image2_image; ?>" alt="" class="card-img">
<p class="card-text"><?= $main_block2_image2_text; ?></p>
</div>
<div class="block3-card text-center">
<img src="<?= $main_block2_image3_image; ?>" alt="" class="card-img">
<p class="card-text"><?= $main_block2_image3_text; ?></p>
</div>
</div>
</div>
</div>
</div>
</div>

View File

@@ -0,0 +1,28 @@
<?php
$rows = $b->setting_get_value("main_block4_faq");
?>
<div class="block5">
<h2 class="title-text"><span>Często zadawane pytania</span></h2>
<div class="container">
<div class="row">
<div class="col-12">
<?php foreach ($rows as $num => $row) { ?>
<div class="block5-item">
<div class="item-head d-flex align-items-start justify-content-between">
<h3 class="item-title"><?= $row["title"] ?></h3>
<button class="show-btn">
<svg width="19" height="10" viewBox="0 0 19 10" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M18 9L9.5 1L1 9" stroke="#717171"/>
</svg>
</button>
</div>
<ul class="item-info"><?= $row["answer"] ?></ul>
</div>
<?php } ?>
</div>
</div>
</div>
</div>

View File

@@ -0,0 +1,18 @@
<?php $main_h1_one = $b->setting_get_value("main_h1_one"); ?>
<?php $main_h1_two = $b->setting_get_value("main_h1_two"); ?>
<?php $main_h1_image = $b->setting_get_value("main_h1_image"); ?>
<?php $main_h1_text = $b->setting_get_value("main_h1_text"); ?>
<?php $main_h1_link = $b->setting_get_value("main_h1_link"); ?>
<div class="block1 d-flex align-items-end align-items-sm-center text-sm-start text-center" style="--background-block1: url('<?= $main_h1_image; ?>');">
<div class="container">
<div class="row">
<div class="col-12">
<h1 class="block1-title"><?= $main_h1_one; ?></h1>
<p class="block1-subtitle"><?= $main_h1_two; ?></p>
<a href="<?= $main_h1_link; ?>" class="buyNow-link"><?= $main_h1_text; ?></a>
</div>
</div>
</div>
</div>

View File

@@ -0,0 +1,24 @@
<?php
$arg = $variables["arg"];
$rows = $b->setting_get_value("menu_dropdown_" . $arg);
$columns = get_menu_columns($rows);
?>
<?php foreach ($columns as $num => $column) { ?>
<div class="main-menu__column">
<?php foreach ($column["items"] as $args => $row) { ?>
<div class="main-menu__block">
<div class="main-menu__block-title">
<span><?= $row["title"]; ?></span>
</div>
<div class="main-menu__block-links">
<?php foreach ($row["links"] as $key => $link) { ?>
<a href="<?= $link["link"]; ?>"><?= $link["label"]; ?></a>
<?php } ?>
</div>
</div>
<?php } ?>
</div>
<?php } ?>

View File

@@ -0,0 +1,34 @@
<section class="section news-block">
<div class="container">
<h2 class="little news-block__heading">Новости и статьи</h2>
<div class="news-block__articles news-articles row">
<?php $news = $b->setting_get_value("main_news_list"); ?>
<?php foreach ($news as $key => $value) { ?>
<?php $post = new Post($value["item_id"]); ?>
<article class="news-articles__item news-articles__item_short">
<p class="rev-slide__date"><?= $post->get_prop("create_date") ?></p>
<a href="/post/<?= $post->get_item_slug() ?>/" class="news-articles__link">
<?= $post->get_item_name() ?>
</a>
</article>
<?php } ?>
<?php $news = $b->setting_get_value("main_news_list_image"); ?>
<?php foreach ($news as $key => $value) { ?>
<?php $post = new Post($value["item_id"]); ?>
<article class="news-articles__item news-articles__item_long">
<div class="news-articles__top">
<p class="rev-slide__date"><?= $post->get_prop("create_date") ?></p>
<a href="/post/<?= $post->get_item_slug() ?>/" class="news-articles__link"><?= $post->get_item_name() ?></a>
<p class="news-articles__excerpt">
<?= $post->get_prop("quick") ?>
</p>
</div>
<figure class="news-articles__image">
<img alt="<?= $post->get_item_name() ?>" class="lazy" data-src="<?= $post->get_prop_render_value('post_photo') ?>" />
</figure>
</article>
<?php } ?>
</div>
<a class="button-for-more" href="/posts/all-publications/">Показать ещё</a>
</div>
</section>

View File

@@ -0,0 +1,54 @@
<div class="block5">
<h2 class="title-text"><span>Często zadawane pytania</span></h2>
<div class="container">
<div class="row">
<div class="col-12">
<div class="block5-item">
<div class="item-head d-flex align-items-start justify-content-between">
<h3 class="item-title">Dlaczego warto spróbować Zielone Łapy?</h3>
<button class="show-btn">
<svg width="19" height="10" viewBox="0 0 19 10" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M18 9L9.5 1L1 9" stroke="#717171"/>
</svg>
</button>
</div>
<ul class="item-info">
<li>Mieszkasz w mieszkaniu lub apartamencie bez podwórka</li>
<li>Pracujesz długo lub masz nieregularne godziny pracy</li>
<li>Chcesz uniknąć błędów na dywanie, podłodze i meblach</li>
<li>Masz ograniczoną mobilność</li>
<li>Trenujesz czczeniaka</li>
<li>Masz starszego psa</li>
<li>Chcesz uniknąć wychodzenia z psem późno w nocy, w deszczu lub na śniegu</li>
</ul>
</div>
<div class="block5-item">
<div class="item-head d-flex align-items-start justify-content-between">
<h3 class="item-title">Jak często powinienem wymieniać?</h3>
<button class="show-btn">
<svg width="19" height="10" viewBox="0 0 19 10" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M18 9L9.5 1L1 9" stroke="#717171"/>
</svg>
</button>
</div>
<ul class="item-info">
<li>Zalecamy wymianę Zielone Lapy co 1-4 tygodnie, w zależności od wielkości twojego zwierzaka i częstotliwości użytkowania produktu</li>
</ul>
</div>
<div class="block5-item">
<div class="item-head d-flex align-items-start justify-content-between">
<h3 class="item-title">Jak często powinienem wymieniać?</h3>
<button class="show-btn">
<svg width="19" height="10" viewBox="0 0 19 10" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M18 9L9.5 1L1 9" stroke="#717171"/>
</svg>
</button>
</div>
<ul class="item-info">
<li>Gdzie najlepiej umieścić kuwetę?</li>
</ul>
</div>
</div>
</div>
</div>
</div>

View File

@@ -0,0 +1,53 @@
<div class="reviews">
<h2 class="title-text"><span>Rzeczywiste opinie <span class="d-none d-lg-inline-block">od prawdziwych klientów</span></span></h2>
<div class="container">
<div class="row">
<div class="col-12">
<div class="reviews-box">
<div class="review d-flex justify-content-md-between justify-content-center align-items-center flex-column flex-md-row text-center text-md-start">
<div class="review-info">
<div class="review-stars">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star.svg" alt="">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star.svg" alt="">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star.svg" alt="">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star.svg" alt="">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star-dis.svg" alt="">
</div>
<h3 class="review-name">Monica Beluchi </h3>
<p class="review-text">sadas asdsdad asdas da sdasdasd a sdad s sas asa sdsd s sadas asdsdad asdas da sdasdasd a sdad s sas asa sdsd sadas asdsdad asdas da sdasdasd a sdad s sas asa sdsd s</p>
</div>
<div class="review-photos">
<p class="review-data text-end">01/10/2024</p>
<div class="photos d-flex">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/png/dog4.png" alt="">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/png/dog4.png" alt="">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/png/dog4.png" alt="">
</div>
</div>
</div>
<div class="review d-flex justify-content-md-between justify-content-center align-items-center flex-column flex-md-row text-center text-md-start">
<div class="review-info">
<div class="review-stars">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star.svg" alt="">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star.svg" alt="">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star.svg" alt="">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star.svg" alt="">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star-dis.svg" alt="">
</div>
<h3 class="review-name">Monica Beluchi </h3>
<p class="review-text">sadas asdsdad asdas da sdasdasd a sdad s sas asa sdsd s sadas asdsdad asdas da sdasdasd a sdad s sas asa sdsd sadas asdsdad asdas da sdasdasd a sdad s sas asa sdsd s</p>
</div>
<div class="review-photos">
<p class="review-data text-end">01/10/2024</p>
<div class="photos d-flex">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/png/dog4.png" alt="">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/png/dog4.png" alt="">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/png/dog4.png" alt="">
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>

View File

@@ -0,0 +1,27 @@
<section class="section actions-block">
<div class="container">
<h2 class="little actions-block__heading">Акции и спецпредложения</h2>
<ul class="actions-block__list actions-list row justify-content-between">
<?php $title = $b->setting_get_value("main_sale_text_1"); ?>
<?php $link = $b->setting_get_value("main_sale_link_1"); ?>
<?php $image = $b->setting_get_value("main_sale_image_1"); ?>
<a class="actions-list__item actions-list__item_first half" href="<?= $link; ?>" style="background-image: url(<?= $image; ?>);"></a>
<?php $title = $b->setting_get_value("main_sale_text_2"); ?>
<?php $link = $b->setting_get_value("main_sale_link_2"); ?>
<?php $image = $b->setting_get_value("main_sale_image_2"); ?>
<a class="actions-list__item actions-list__item_second half" href="<?= $link; ?>" style="background-image: url(<?= $image; ?>);"></a>
<?php $title = $b->setting_get_value("main_sale_text_3"); ?>
<?php $link = $b->setting_get_value("main_sale_link_3"); ?>
<?php $image = $b->setting_get_value("main_sale_image_3"); ?>
<a class="actions-list__item actions-list__item_third one-third" href="<?= $link; ?>" style="background-image: url(<?= $image; ?>);"></a>
<?php $title = $b->setting_get_value("main_sale_text_4"); ?>
<?php $link = $b->setting_get_value("main_sale_link_4"); ?>
<?php $image = $b->setting_get_value("main_sale_image_4"); ?>
<a class="actions-list__item actions-list__item_fourth one-third" href="<?= $link; ?>" style="background-image: url(<?= $image; ?>);"></a>
<?php $title = $b->setting_get_value("main_sale_text_5"); ?>
<?php $link = $b->setting_get_value("main_sale_link_5"); ?>
<?php $image = $b->setting_get_value("main_sale_image_5"); ?>
<a class="actions-list__item actions-list__item_fifth one-third" href="<?= $link; ?>" style="background-image: url(<?= $image; ?>);"></a>
</ul>
</div>
</section>

View File

@@ -0,0 +1,13 @@
<section class="section tags">
<div class="container">
<h2 class="tags__heading">Быстрый подбор по типу</h2>
<ul class="tags__list row">
<?php $links = $b->setting_get_value("main_page_links"); ?>
<?php foreach ($links as $key => $link) { ?>
<li class="tags__item col-auto">
<a href="<?= $link["link"]; ?>"><?= $link["title"]; ?></a>
</li>
<?php } ?>
</ul>
</div>
</section>

View File

@@ -0,0 +1,22 @@
<?php $main_block3_one = $b->setting_get_value("main_block3_one"); ?>
<?php $main_block3_two = $b->setting_get_value("main_block3_two"); ?>
<?php $main_block3_image = $b->setting_get_value("main_block3_image"); ?>
<?php $main_block3_button_text = $b->setting_get_value("main_block3_button_text"); ?>
<?php $main_block3_button_link = $b->setting_get_value("main_block3_button_link"); ?>
<div class="block4">
<div class="container">
<div class="row">
<div class="col-12 d-flex align-items-center justify-content-between flex-wrap">
<div class="block4-info">
<h2 class="title-text"><?= $main_block3_one ?></h2>
<div class="info-text"><?= $main_block3_two ?></div>
<a href="<?= $main_block3_button_link ?>" class="buyNow-link"><?= $main_block3_button_text ?></a>
</div>
<img src="<?= $main_block3_image ?>" alt="" class="block4-img">
</div>
</div>
</div>
</div>

View File

@@ -0,0 +1,27 @@
<?php $page = $b->ls_get_key("page"); ?>
<?php $b->script_add(array("src" => "https://api-maps.yandex.ru/2.1/?apikey=68f9a0ea-6fba-4a6e-9f0a-5a716b0b30d5&lang=ru_RU")); ?>
<?php $this->ls_set_key("breadcrumbs", array(array($page->get_item_name(), $b->router_get_canonical_uri()))); ?>
<?php $this->template_load("head.php"); ?>
<?php $this->template_load("header.php"); ?>
<main class="main">
<div class="policy">
<div class="container">
<div class="row">
<div class="col-12 position-relative">
<a href="/" class="back-home">główna</a>
<h1 class="title-text"><span><?= $page->get_item_name(); ?></span></h1>
</div>
</div>
<div class="row">
<div class="col-12">
<div class="default-box">
<?= $page->get_item_content(); ?>
</div>
</div>
</div>
</div>
</div>
</main>
<?php $this->template_load("footer.php"); ?>

View File

@@ -0,0 +1,322 @@
<?php $this->template_load("head.php"); ?>
<?php $this->template_load("header.php"); ?>
<main class="main">
<div class="basket">
<div class="container">
<div class="row">
<div class="col-12 position-relative">
<a href="/" class="back-home">główna</a>
<h1 class="title-text"><span>Koszyk</span></h1>
</div>
</div>
<div class="row">
<div class="col-12">
<table class="basket-table">
<thead>
<tr>
<th>
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/checked.svg" alt="">
<span>Produkt</span>
</th>
<th><span>format zakupu</span></th>
<th><span>ILOSC</span></th>
<th><span>Cena</span></th>
</tr>
</thead>
<tbody>
<tr>
<td>
<div class="product-info">
<div class="product-img">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/png/landshaft.png" alt="product">
</div>
<div class="product-text">
<p class="product-name">Kuweta dla psa jest prosta Kuweta dla psa jest prosta</p>
<p class="product_text">lorem ipsum lorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsum</p>
</div>
</div>
</td>
<td class="text-center">
<span class="product-formate"> Jednorazowy zakup</span>
</td>
<td>
<div class="product-amount d-flex align-items-center justify-content-center">
<button class="amount-minus">
<svg width="10" height="2" viewBox="0 0 10 2" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1 1H9" stroke="#717171" stroke-linecap="round"/>
</svg>
</button>
<span class="amount-val">1</span>
<button class="amount-plus">
<svg width="10" height="10" viewBox="0 0 10 10" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M5 1V9M1 4.82609H9" stroke="#717171" stroke-linecap="round"/>
</svg>
</button>
</div>
</td>
<td>
<P class="product-price text-center">$<span>1024.21</span></P>
</td>
</tr>
<tr>
<td>
<div class="product-info">
<div class="product-img">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/png/landshaft.png" alt="product">
</div>
<div class="product-text">
<p class="product-name">Kuweta dla psa jest prosta Kuweta dla psa jest prosta</p>
<p class="product_text">lorem ipsum lorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsum</p>
</div>
</div>
</td>
<td class="text-center">
<span class="product-formate"> Jednorazowy zakup</span>
</td>
<td>
<div class="product-amount d-flex align-items-center justify-content-center">
<button class="amount-minus">
<svg width="10" height="2" viewBox="0 0 10 2" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1 1H9" stroke="#717171" stroke-linecap="round"/>
</svg>
</button>
<span class="amount-val">1</span>
<button class="amount-plus">
<svg width="10" height="10" viewBox="0 0 10 10" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M5 1V9M1 4.82609H9" stroke="#717171" stroke-linecap="round"/>
</svg>
</button>
</div>
</td>
<td>
<P class="product-price text-center">$<span>1024.21</span></P>
</td>
</tr>
<tr>
<td>
<div class="product-info">
<div class="product-img">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/png/landshaft.png" alt="product">
</div>
<div class="product-text">
<p class="product-name">Kuweta dla psa jest prosta Kuweta dla psa jest prosta</p>
<p class="product_text">lorem ipsum lorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsum</p>
</div>
</div>
</td>
<td class="text-center">
<span class="product-formate"> Jednorazowy zakup</span>
</td>
<td>
<div class="product-amount d-flex align-items-center justify-content-center">
<button class="amount-minus">
<svg width="10" height="2" viewBox="0 0 10 2" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1 1H9" stroke="#717171" stroke-linecap="round"/>
</svg>
</button>
<span class="amount-val">1</span>
<button class="amount-plus">
<svg width="10" height="10" viewBox="0 0 10 10" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M5 1V9M1 4.82609H9" stroke="#717171" stroke-linecap="round"/>
</svg>
</button>
</div>
</td>
<td>
<P class="product-price text-center">$<span>1024.21</span></P>
</td>
</tr>
<tr>
<td>
<div class="product-info">
<div class="product-img">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/png/landshaft.png" alt="product">
</div>
<div class="product-text">
<p class="product-name">Kuweta dla psa jest prosta Kuweta dla psa jest prosta</p>
<p class="product_text">lorem ipsum lorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsum</p>
</div>
</div>
</td>
<td class="text-center">
<span class="product-formate"> Jednorazowy zakup</span>
</td>
<td>
<div class="product-amount d-flex align-items-center justify-content-center">
<button class="amount-minus">
<svg width="10" height="2" viewBox="0 0 10 2" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1 1H9" stroke="#717171" stroke-linecap="round"/>
</svg>
</button>
<span class="amount-val">1</span>
<button class="amount-plus">
<svg width="10" height="10" viewBox="0 0 10 10" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M5 1V9M1 4.82609H9" stroke="#717171" stroke-linecap="round"/>
</svg>
</button>
</div>
</td>
<td>
<P class="product-price text-center">$<span>1024.21</span></P>
</td>
</tr>
<tr>
<td>
<div class="product-info">
<div class="product-img">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/png/landshaft.png" alt="product">
</div>
<div class="product-text">
<p class="product-name">Kuweta dla psa jest prosta Kuweta dla psa jest prosta</p>
<p class="product_text">lorem ipsum lorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsumlorem ipsum</p>
</div>
</div>
</td>
<td class="text-center">
<span class="product-formate"> Jednorazowy zakup</span>
</td>
<td>
<div class="product-amount d-flex align-items-center justify-content-center">
<button class="amount-minus">
<svg width="10" height="2" viewBox="0 0 10 2" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1 1H9" stroke="#717171" stroke-linecap="round"/>
</svg>
</button>
<span class="amount-val">1</span>
<button class="amount-plus">
<svg width="10" height="10" viewBox="0 0 10 10" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M5 1V9M1 4.82609H9" stroke="#717171" stroke-linecap="round"/>
</svg>
</button>
</div>
</td>
<td>
<P class="product-price text-center">$<span>1024.21</span></P>
</td>
</tr>
</tbody>
</table>
<form class="basket-order d-flex justify-content-between flex-wrap">
<div class="order-info">
<div class="order-inputs d-flex justify-content-between flex-wrap">
<div class="input-box">
<input type="text" class="form__inp" id="name" placeholder="Imię">
<small></small>
</div>
<div class="input-box">
<input type="text" class="form__inp" id="last-name" placeholder="Nazwisko">
<small></small>
</div>
<div class="input-box">
<input type="text" class="form__inp" id="add-email" placeholder="Adres e-mail">
<small></small>
</div>
<div class="input-box">
<input type="text" id="phone" class="form__inp" placeholder="+48___ ___ ___">
<small></small>
<label for="phone">Nr. telefonu</label>
</div>
<div class="input-box">
<input type="text" class="form__inp" id="street" placeholder="Ulica">
<small></small>
</div>
<div class="input-box">
<input type="text" class="form__inp" id="num-house" placeholder="nr. domu/lokalu">
<small></small>
</div>
<div class="input-box">
<input type="text" id="zip-code" class="form__inp" placeholder="__-___">
<small></small>
<label for="zip-code">Kod pocztowy</label>
</div>
<div class="input-box">
<input type="text" class="form__inp" id="city" placeholder="Miejscowość">
<small></small>
</div>
</div>
<div class="promocode d-flex">
<input type="text" class="promocode__inp" placeholder="Wpisz kod promocyjny">
<button class="promocode__btn" type="button">Aktywuj</button>
</div>
</div>
<div class="order-info">
<ul class="order-list">
<li>
<div class="d-flex align-items-center">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/check-circle2.svg" alt="">
<span>Kurier DPD</span>
</div>
<strong>$15.99</strong>
</li>
<li>
<div class="d-flex align-items-center">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/check-circle2.svg" alt="">
<span>Kurier Inpost</span>
</div>
<strong>$15.99</strong>
</li>
<li>
<div class="d-flex align-items-center">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/check-circle2.svg" alt="">
<span>Paczkomaty Inpost</span>
</div>
<strong>$15.99</strong>
</li>
</ul>
<div class="order-payment">
<p class="payment-title">Płatność</p>
<div class="payment-list position-relative d-flex align-items-center justify-content-between">
<div class="d-flex align-items-center">
<input type="radio" id="blik" name="payment" class="payment-rad">
<label for="blik">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/blik.svg" alt="">
<span>Blik</span>
</label>
</div>
<strong>$15.99</strong>
</div>
<div class="payment-list position-relative d-flex align-items-center justify-content-between">
<div class="d-flex align-items-center">
<input type="radio" id="card" name="payment" class="payment-rad">
<label for="card">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/visa.svg" alt="">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/mastercard.svg" alt="">
<span>Karta płatnicza online</span>
</label>
</div>
<strong>$15.99</strong>
</div>
</div>
<div class="toBe-paid">
<div class="paid-title d-flex align-items-center justify-content-between">
<span>Do zapłaty</span>
<span>$4046.21</span>
</div>
<div class="paid-list d-flex align-items-center justify-content-between">
<span>dobra 5 szt</span>
<span>$4046.21</span>
</div>
<div class="paid-list d-flex align-items-center justify-content-between">
<span>rabat</span>
<span>-$321</span>
</div>
<div class="check-box">
<input type="checkbox" id="check-paid" class="form__check">
<label for="check-paid">Akceptuję regulamin sklepu (zgoda wymagana)</label>
</div>
<button class="paid-btn form-submit">
<span class="d-none d-lg-block">Podsumowanie</span>
<span class="d-lg-none">Zamawiam i płacę</span>
</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</main>
<?php $this->template_load("footer.php"); ?>

View File

@@ -0,0 +1,141 @@
<?php
global $cart;
$count = $cart->get_count();
//if($count == 0) { $b->router_redirect("/cart/"); exit(); }
?>
<?php $this->template_load("head.php"); ?>
<?php $this->template_load("header.php"); ?>
<?php $person = $_GET["person"] ?? 2; ?>
<main class="main">
<div class="basket delivery">
<div class="container">
<div class="row">
<div class="col-12 position-relative">
<a href="/" class="back-home">główna</a>
<h1 class="title-text"><span>Dane</span></h1>
</div>
</div>
<div class="row">
<div class="col-12">
<div class="delivery-info">
<div class="d-flex">
<p class="info-name">Dane odbiorcy przesyłki </p>
<button class="edit-btn">zmień</button>
</div>
<div class="info-text">
<p>ASDASD aSDDAD</p>
<p>Abramowich 12</p>
<p>03-523 Warszawa</p>
<p>telefon: <span>778855441</span></p>
<p>e-mail: <span>Asdadad@gmail.com</span></p>
</div>
</div>
<table class="basket-table">
<tbody>
<tr>
<td>
<div class="product-info">
<div class="product-img">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/png/landshaft.png" alt="product">
</div>
<div class="product-text">
<p class="product-name">Kuweta dla psa</p>
<p class="product_text"></p>
</div>
</div>
</td>
<td class="text-center">
<span class="product-formate">subskybucja - 1 tydzień</span>
</td>
<td>
<div class="product-amount d-flex align-items-center justify-content-center">
<span class="amount-val">1</span>
</div>
</td>
<td>
<P class="product-price text-center">$<span>1024.21</span></P>
</td>
</tr>
</tbody>
</table>
<div class="delivery-info">
<div class="d-flex">
<p class="info-name">Sposób dostawy</p>
<button class="edit-btn">zmień</button>
</div>
<div class="info-text">
<p>Kurier</p>
</div>
</div>
<div class="delivery-info">
<div class="d-flex">
<p class="info-name">Sposób płatności</p>
<button class="edit-btn">zmień</button>
</div>
<div class="info-text">
<p>Przelew błyskawiczny</p>
</div>
</div>
<form class="basket-order d-flex justify-content-between flex-wrap">
<div class="toBe-paid">
<div class="paid-title d-flex align-items-center justify-content-between">
<span>Do zapłaty</span>
<span>$4046.21</span>
</div>
<div class="paid-list d-flex align-items-center justify-content-between">
<span>dobra 5 szt</span>
<span>$4046.21</span>
</div>
<div class="paid-list d-flex align-items-center justify-content-between">
<span>rabat</span>
<span>-$321</span>
</div>
<div class="check-box">
<input type="checkbox" id="check-paid" class="form__check">
<label for="check-paid">Akceptuję regulamin sklepu (zgoda wymagana)</label>
</div>
<button class="paid-btn form-submit">Zamawiam i płacę</button>
</div>
</form>
</div>
</div>
</div>
</div>
</main>
<script>
jQuery(document).ready(function($) {
bind_cart_buttons();
})
function bind_cart_buttons(){
$(".input-track").each((index, el) => {
$(el).off("change");
$(el).on("change", function (el) {
var input = $(this);
var value = input.val();
var name = input.attr("name");
console.log(value, name)
$.post( "/checkout/update/", { name, value })
.done(function( data ) {
update_checkout();
});
});
});
}
function update_checkout(){
$.get( "/checkout/frame/?person=<?= $b->get_view($person); ?>")
.done(function( data ) {
$(".checkout-wrapper").html(data);
bind_cart_buttons();
});
}
</script>
<?php $this->template_load("footer.php"); ?>

View File

@@ -0,0 +1,101 @@
<?php $page = $b->ls_get_key("page"); ?>
<?php $b->script_add(array("src" => "https://api-maps.yandex.ru/2.1/?apikey=68f9a0ea-6fba-4a6e-9f0a-5a716b0b30d5&lang=ru_RU")); ?>
<?php $this->ls_set_key("breadcrumbs", array(array($page->get_item_name(), $b->router_get_canonical_uri()))); ?>
<?php $this->template_load("head.php"); ?>
<?php $this->template_load("header.php"); ?>
<section class="section first-other contacts">
<div class="container">
<h1 class="little">Контакты</h1>
<ul class="contacts__info contacts-list">
<li class="thank-list__item">
<h2 class="checkout__heading thank-list__heading">Адрес</h2>
<p><?= $b->setting_get_value("contact_company_name"); ?></p>
</li>
<li class="thank-list__item">
<h2 class="checkout__heading thank-list__heading">Телефон</h2>
<a href="tel:<?= $b->setting_get_value("contact_phone"); ?>"><?= $b->setting_get_value("contact_phone"); ?></a>
</li>
<li class="thank-list__item">
<h2 class="checkout__heading thank-list__heading">Email</h2>
<a href="mailto:<?= $b->setting_get_value("contact_email"); ?>"><?= $b->setting_get_value("contact_email"); ?></a>
</li>
<li class="thank-list__item">
<h2 class="checkout__heading thank-list__heading">Время работы</h2>
<p><?= $b->setting_get_value("contact_company_time"); ?></p>
</li>
</ul>
</div>
</section>
<section id="map" class="map">
<script src="https://api-maps.yandex.ru/2.1/?apikey=68f9a0ea-6fba-4a6e-9f0a-5a716b0b30d5&lang=ru_RU"></script>
<script type="text/javascript">
ymaps.ready(init);
function init() {
var myMap = new ymaps.Map(
"map",
{
center: [55.616453, 37.624588],
zoom: 15,
controls: ["zoomControl"],
},
{
searchControlProvider: "yandex#search",
}
);
myGeoObject = new ymaps.GeoObject(
{
// Описание геометрии.
geometry: {
type: "Point",
coordinates: [55.616453, 37.624588],
},
// Свойства.
properties: {
balloonContentHeader:
'<figure class="map__image"><img src="<?= $b->pa_get_assets_dir() ?>main/images/logo.svg"></figure>',
balloonContentBody: `
<div class="baloon__box">
<h3 class="baloon__heading">Время работы:</h3>
<p class="baloon__text">ПН-ПТ с 9:00 до 18:00</p>
</div>`,
},
},
{
// Опции.
preset: "islands#redGlyphIcon",
}
);
myMap.geoObjects.add(myGeoObject);
myMap.behaviors.disable("scrollZoom");
}
</script>
</section>
<?php $this->template_load("main/questions.php"); ?>
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "<?= $b->setting_get_value("schema_organisation_name"); ?>",
"url": "<?= $b->router_get_root_uri() ?>",
"logo": "<?= $b->pa_get_assets_dir() ?>main/images/logo.svg",
"description": "<?= $b->setting_get_value("schema_organisation_desc"); ?>",
"email": "<?= $b->setting_get_value("schema_organisation_email"); ?>",
"address": {
"@type": "PostalAddress",
"streetAddress": "<?= $b->setting_get_value("schema_organisation_street"); ?>",
"addressLocality": "<?= $b->setting_get_value("schema_organisation_city"); ?>",
"postalCode": "<?= $b->setting_get_value("schema_organisation_index"); ?>",
"addressCountry": "Россия"
},
"contactPoint": {
"@type": "ContactPoint",
"telephone": "<?= $b->setting_get_value("schema_organisation_phone"); ?>",
"contactType": "Общий контакт"
}
}
</script>
<?php $this->template_load("footer.php"); ?>

View File

@@ -0,0 +1,24 @@
<?php $page = $b->ls_get_key("page"); ?>
<?php $this->ls_set_key("breadcrumbs", array(array($page->get_item_name(), $b->router_get_canonical_uri()))); ?>
<?php $this->template_load("head.php"); ?>
<?php $this->template_load("header.php"); ?>
<main class="main">
<div class="policy">
<div class="container">
<div class="row">
<div class="col-12 position-relative">
<a href="/" class="back-home">główna</a>
<h1 class="title-text"><span><?= $page->get_item_name(); ?></span></h1>
</div>
</div>
<div class="row">
<div class="col-12">
<div class="policy-box text-center">
<?= $page->get_item_content(); ?>
</div>
</div>
</div>
</div>
</div>
</main>
<?php $this->template_load("footer.php"); ?>

View File

@@ -0,0 +1,37 @@
<?php $this->template_load("head.php"); ?>
<?php $this->template_load("header.php"); ?>
<?php
$rows = $b->setting_get_value("faq_list");
?>
<main class="main">
<div class="block5">
<h2 class="title-text"><span>Często zadawane pytania</span></h2>
<div class="container">
<div class="row">
<div class="col-12">
<?php foreach ($rows as $num => $row) { ?>
<div class="block5-item">
<div class="item-head d-flex align-items-start justify-content-between">
<h3 class="item-title"><?= $row["title"] ?></h3>
<button class="show-btn">
<svg width="19" height="10" viewBox="0 0 19 10" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M18 9L9.5 1L1 9" stroke="#717171"/>
</svg>
</button>
</div>
<ul class="item-info">
<?= $row["answer"] ?>
</ul>
</div>
<?php } ?>
</div>
</div>
</div>
</div>
</main>
<?php $this->template_load("footer.php"); ?>

View File

@@ -0,0 +1,14 @@
<?php $page = $b->ls_get_key("page"); ?>
<?php $this->ls_set_key("breadcrumbs", array(array($page->get_item_name(), $b->router_get_canonical_uri()))); ?>
<?php $this->template_load("head.php"); ?>
<?php $this->template_load("header.php"); ?>
<section class="section first-other delivery">
<div class="container">
<h1 class="little delivery__heading"><?= $page->get_item_name(); ?></h1>
<div class="delivery__textblock about-textblock page-textarea post-content">
<?= $page->get_item_content(); ?>
</div>
</div>
</section>
<?php $this->template_load("main/questions.php"); ?>
<?php $this->template_load("footer.php"); ?>

View File

@@ -0,0 +1,82 @@
<?php $page = $b->ls_get_key("page"); ?>
<?php $this->template_load("head.php"); ?>
<?php $this->template_load("header.php"); ?>
<?php $page->set_prop("views", $page->get_prop("views") + 1); ?>
<section class="section first-other single">
<div class="container">
<div class="single__wrapper single-wrapper post">
<div class="single-wrapper__main">
<h1 class="single-wrapper__heading"><?= $page->get_item_name(); ?></h1>
<div class="single-wrapper__params row align-items-center justify-content-between">
<p class="single-wrapper__author col-auto">Автор: <?= $page->get_prop("author"); ?></p>
<p class="col-auto single-wrapper__review"><?= $page->get_prop("views"); ?></p>
<span class="form-mark col-auto row align-items-center justify-content-between">
<p class="single-wrapper__author col-auto">Рейтинг</p>
<?php $b->template_load("main/battery.php", array("score" => $page->get_prop("battery"))); ?>
</span>
</div>
<figure class="single-wrapper__image">
<img src="<?= $page->get_prop_render_value("post_photo"); ?>" alt="" />
</figure>
<div class="post-content">
<?= $page->get_item_content(); ?>
</div>
<div class="single-wrapper__navigation single-nav row align-items-center justify-content-between">
<button class="single-nav__item single-nav__prev">
<svg>
<use xlink:href="<?= $b->pa_get_assets_dir() ?>main/images/icons/sprite.svg#pag-prev"></use>
</svg>
</button>
<?php
$parent = $page->get_parent();
$breadcrumbs = array();
if($parent) {
$parent_title = $parent->get_item_name();
$parent_slug = $parent->get_item_slug();
?>
<a class="single-nav__btn col-auto" href="<?= "/posts/" . $parent_slug; ?>"><?= $parent_title; ?></a>
<?php } ?>
<button class="single-nav__item single-nav__next">
<svg>
<use xlink:href="<?= $b->pa_get_assets_dir() ?>main/images/icons/sprite.svg#pag-next"></use>
</svg>
</button>
</div>
</div>
<aside class="single__aside">
<ul class="single-wrapper__list single-articles-list"></ul>
</aside>
</div>
</div>
</section>
<script>
jQuery(document).ready(function($) {
$(".single-wrapper__main h2").each((index, el) => {
var header = $(el);
header.attr("id", "h" + index);
$(".single-articles-list").append("<li> <a href='#h" + index + "'>" + header.text() + "</a></li>");
});
});
</script>
<?php $tags = $page->get_prop_render_value("more"); ?>
<?php if($tags) { ?>
<section class="section tags">
<div class="container">
<h2 class="tags__heading">Смотрите также</h2>
<ul class="tags__list row">
<?php foreach ($tags as $key => $value) { ?>
<li class="tags__item col-auto">
<a href="<?= $value["link"]; ?>"><?= $value["title"]; ?></a>
</li>
<?php } ?>
</ul>
</div>
</section>
<?php } ?>
<?php $this->template_load("footer.php"); ?>

View File

@@ -0,0 +1,60 @@
<?php $page = $b->ls_get_key("page"); ?>
<?php $this->template_load("head.php"); ?>
<?php $this->template_load("header.php"); ?>
<?php
$category_slug = $page->get_item_slug();
$current_page = $_GET["page"] ?? 1;
$posts_per_page = 30;
$posts_params = array(
"category_id" => $page->item_id,
"page" => $current_page,
"products_per_page" => $posts_per_page
);
$posts = posts_search($posts_params);
$posts_count = posts_search_count($posts_params);
?>
<section class="section first-other blog news">
<div class="container">
<h1 class="little blog__heading"><?= $page->get_item_name(); ?></h1>
<div class="blog__wrapper blog-wrapper">
<div class="reviews-block__tabs rev-tabs row align-items-center">
<a class="news__btn <?= $category_slug == "all-publications" ? "active" : ""; ?>" href="/posts/all-publications/">Все публикации</a>
<a class="news__btn <?= $category_slug == "articles" ? "active" : ""; ?>" href="/posts/articles/">Статьи</a>
<a class="news__btn <?= $category_slug == "news" ? "active" : ""; ?>" href="/posts/news/">Новости</a>
<a class="news__btn <?= $category_slug == "sale" ? "active" : ""; ?>" href="/posts/sale/">Акции</a>
</div>
<article class="news-articles blog__articles blog-articles row">
<h2 class="little visually-hidden">[Статьи]</h2>
<div class="blog-articles__list row news-articles">
<?php foreach ($posts as $key => $post) { ?>
<article class="news-articles__item news-articles__item_long" data-article="Статья">
<div class="news-articles__top">
<p class="rev-slide__date"><?= $post->get_prop("create_date"); ?></p>
<a href="/post/<?= $post->get_item_slug(); ?>/" class="news-articles__link"><?= $post->get_item_name(); ?></a>
<p class="news-articles__excerpt">
<?php
$trimmedString = substr($post->get_prop("quick"), 0, 100);
if (strlen($post->get_prop("quick")) > 100) $trimmedString .= '...';
?>
<?= $trimmedString; ?>
</p>
</div>
<figure class="news-articles__image">
<img src="<?= $post->get_prop_render_value("post_photo"); ?>" alt="" />
</figure>
</article>
<?php } ?>
</div>
</article>
</div>
<div class="posts-pagination">
<?php $b->template_load("productCategory/pagination.php", array("current_page" => $current_page, "items_per_page" => $posts_per_page, "items_count" => $posts_count)); ?>
</div>
</div>
</section>
<?php $this->template_load("footer.php"); ?>

View File

@@ -0,0 +1,27 @@
<?php $page = $b->ls_get_key("page"); ?>
<?php $this->ls_set_key("breadcrumbs", array(array($page->get_item_name(), $b->router_get_canonical_uri()))); ?>
<?php $this->template_load("head.php"); ?>
<?php $this->template_load("header.php"); ?>
<main class="main">
<div class="policy">
<div class="container">
<div class="row">
<div class="col-12 position-relative">
<?php $this->template_load("breadcrumbs.php"); ?>
<h1 class="title-text"><span><?= $page->get_item_name(); ?></span></h1>
</div>
</div>
<div class="row">
<div class="col-12">
<div class="policy-box text-center">
<?= $page->get_item_content(); ?>
</div>
</div>
</div>
</div>
</div>
</main>
<?php $this->template_load("footer.php"); ?>

View File

@@ -0,0 +1,169 @@
<?php $page = $b->ls_get_key("page"); ?>
<?php $this->template_load("head.php"); ?>
<?php $this->template_load("header.php"); ?>
<main class="main">
<div class="product-card">
<div class="container">
<div class="row">
<div class="col-12 position-relative">
<a href="/" class="back-home position-relative">główna</a>
</div>
</div>
<div class="row">
<div class="col-12 d-flex justify-content-center justify-content-lg-between flex-wrap flex-lg-nowrap">
<div class="card-slider d-flex flex-column">
<div class="position-relative">
<div class="swiper big-card position-relative">
<div class="swiper-wrapper">
<div class="swiper-slide">
<div class="card-item">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/png/landshaft.png" class="card-photo">
</div>
</div>
<div class="swiper-slide">
<div class="card-item">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/png/landshaft.png" class="card-photo">
</div>
</div>
<div class="swiper-slide">
<div class="card-item">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/png/landshaft.png" class="card-photo">
</div>
</div>
<div class="swiper-slide">
<div class="card-item">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/png/landshaft.png" class="card-photo">
</div>
</div>
<div class="swiper-slide">
<div class="card-item">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/png/landshaft.png" class="card-photo">
</div>
</div>
<div class="swiper-slide">
<div class="card-item">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/png/landshaft.png" class="card-photo">
</div>
</div>
</div>
</div>
<div class="swiper-product-prev">
<svg width="28" height="54" viewBox="0 0 28 54" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M27 53L1 27L27 1" stroke="#717171" stroke-linecap="round"/>
</svg>
</div>
<div class="swiper-product-next">
<svg width="28" height="54" viewBox="0 0 28 54" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1 1L27 27L1 53" stroke="#717171" stroke-linecap="round"/>
</svg>
</div>
</div>
<div class="swiper small-card">
<div class="swiper-wrapper">
<div class="swiper-slide">
<div class="card-item">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/png/landshaft.png" class="card-photo">
</div>
</div>
<div class="swiper-slide">
<div class="card-item">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/png/landshaft.png" class="card-photo">
</div>
</div>
<div class="swiper-slide">
<div class="card-item">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/png/landshaft.png" class="card-photo">
</div>
</div>
<div class="swiper-slide">
<div class="card-item">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/png/landshaft.png" class="card-photo">
</div>
</div>
<div class="swiper-slide">
<div class="card-item">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/png/landshaft.png" class="card-photo">
</div>
</div>
<div class="swiper-slide">
<div class="card-item">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/png/landshaft.png" class="card-photo">
</div>
</div>
</div>
</div>
</div>
<div class="card-info">
<h1 class="info-title text-center text-lg-start">Kuweta 50x50</h1>
<h3 class="info-subtitle">Wybierz rozmiar trawy</h3>
<div class="info-variants">
<div class="info-variant">
<div class="info-variant__top">
<div class="info-variant__title">Mała</div>
<div class="info-variant__desc">Idealny dla zwierząt o wadze do 15 kg</div>
<div class="info-variant__sizes">50 x 50 cm</div>
</div>
<div class="info-variant__down">
<div class="info-variant__price">69.99 zł</div>
</div>
</div>
<div class="info-variant">
<div class="info-variant__top">
<div class="info-variant__title">Mała</div>
<div class="info-variant__desc">Idealny dla zwierząt o wadze do 15 kg</div>
<div class="info-variant__sizes">50 x 50 cm</div>
</div>
<div class="info-variant__down">
<div class="info-variant__price">69.99 zł</div>
</div>
</div>
</div>
<div class="">
<div class="info-item">
<div class="d-flex justify-content-between align-items-center">
<h3 class="item-title">Jednorazowy zakup</h3>
<span class="item-price">$26</span>
</div>
</div>
<div class="info-item">
<div class="d-flex justify-content-between align-items-center">
<h3 class="item-title">Zapisz się i otrzymaj 5% zniżki</h3>
<span class="item-price">$28</span>
</div>
<div class="check-data d-flex justify-content-between align-items-center">
<p class="">Wybierz termin:</p>
<div class="select">
<div class="select-head d-flex align-items-center justify-content-between">
<span class="active">Co 1 tydzień</span>
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/down.svg" alt="">
</div>
<ul class="select-options">
<li class="option">Co 2 tydzień</li>
<li class="option">Co 3 tydzień</li>
</ul>
</div>
</div>
</div>
<div class="description d-lg-none">
<p class="description-title">Opis</p>
<p class="description-text">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus lacinia, orci non fermentum facilisis, magna purus vestibulum odio, ac consequat erat urna non lectus. Nulla facilisi. Cras ullamcorper, ligula sit amet congue consectetur, ipsum urna hendrerit risus, id pulvinar orci purus eget ligula. Integer fringilla urna vel sapien malesuada, sit amet fermentum purus aliquam. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Curabitur ac turpis a nunc aliquet sodales. Donec vitae ex vehicula, mollis liber</p>
</div>
</div>
<div class="d-flex justify-content-center justify-content-lg-end">
<div class="card-addBasket d-flex">
<P class="product-price">$4046.21</P>
<button class="addBasket-btn">Do koszyka</button>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<?php $this->template_load("footer.php"); ?>

View File

@@ -0,0 +1,8 @@
<?php $this->template_load("head.php"); ?>
<?php $this->template_load("header.php"); ?>
<?php $b->template_load("productCategory/block.php", array("params" => $_GET, "url" => $b->router_get_canonical_uri()), false); ?>
<?php $b->template_load("productCategory/tags_bottom.php"); ?>
<?php $b->template_load("productCategory/faq.php"); ?>
<?php $this->template_load("main/questions.php"); ?>
<?php $b->template_load("productCategory/about.php"); ?>
<?php $this->template_load("footer.php"); ?>

View File

@@ -0,0 +1,155 @@
<?php $this->template_load("head.php"); ?>
<?php $this->template_load("header.php"); ?>
<?php
$page = $_GET["page"] ?? 1;
$posts_per_page = 10;
$offset = ($page - 1) * $posts_per_page;
$search = new Search(array(
"class" => "Reviews",
"limit" => $posts_per_page,
"props" => array(
"view" => 1
),
"offset" => $offset
));
$reviews = $search->collect();
$reviews_count = $search->count;
?>
<main class="main">
<div class="review-page">
<div class="container">
<div class="row">
<div class="col-12 position-relative">
<a href="./index.html" class="back-home">główna</a>
<h1 class="title-text"><span>Opinie</span></h1>
</div>
</div>
<div class="row">
<div class="col-12">
<div class="ratings d-flex align-items-center justify-content-center flex-column flex-md-row">
<p class="ratings-text">4,85 z 5 gwiazd <br>
Na podstawie 4582 opinij</p>
<div class="ratings-star my-3 my-md-0">
<div class="reating d-flex align-items-center">
<div class="d-flex">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star.svg" alt="" class="star">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star.svg" alt="" class="star">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star.svg" alt="" class="star">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star.svg" alt="" class="star">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star.svg" alt="" class="star">
</div>
<div class="reating-num">1122</div>
</div>
<div class="reating d-flex align-items-center">
<div class="d-flex">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star.svg" alt="" class="star">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star.svg" alt="" class="star">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star.svg" alt="" class="star">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star.svg" alt="" class="star">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star-dis.svg" alt="" class="star">
</div>
<div class="reating-num">245</div>
</div>
<div class="reating d-flex align-items-center">
<div class="d-flex">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star.svg" alt="" class="star">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star.svg" alt="" class="star">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star.svg" alt="" class="star">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star-dis.svg" alt="" class="star">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star-dis.svg" alt="" class="star">
</div>
<div class="reating-num">32</div>
</div>
<div class="reating d-flex align-items-center">
<div class="d-flex">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star.svg" alt="" class="star">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star.svg" alt="" class="star">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star-dis.svg" alt="" class="star">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star-dis.svg" alt="" class="star">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star-dis.svg" alt="" class="star">
</div>
<div class="reating-num">11</div>
</div>
<div class="reating d-flex align-items-center">
<div class="d-flex">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star.svg" alt="" class="star">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star-dis.svg" alt="" class="star">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star-dis.svg" alt="" class="star">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star-dis.svg" alt="" class="star">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star-dis.svg" alt="" class="star">
</div>
<div class="reating-num">24</div>
</div>
</div>
<label for="review-write" class="review-write_btn">Napisz swoje opinie</label>
</div>
<form class="review-box" method="post">
<?php $b->event_form("review_send"); ?>
<h3 class="review-title text-center">Napisz swoje opinie</h3>
<div class="d-flex align-items-center justify-content-between flex-wrap">
<div class="stars">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star.svg" alt="">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star.svg" alt="">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star.svg" alt="">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star.svg" alt="">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star-dis.svg" alt="">
</div>
<textarea class="review-message" id="review-write" placeholder="Wpisz opinie" name="review_message"></textarea>
<div class="upload-img">
<input type="file" id="upload" class="upload">
<label for="upload">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/arrow-up.svg" alt="">
</label>
</div>
<div class="form-item">
<div class="check-box">
<input type="checkbox" id="check_rev" class="form__check" name="check_rev">
<label for="check_rev">Akceptuję regulamin sklepu (zgoda wymagana)</label>
</div>
<button class="review-submit form-submit">Wyślij</button>
</div>
</div>
<!-- <div class="review-img">-->
<!-- <img src="--><?php //= $b->pa_get_assets_dir() ?><!--main/img/png/dog4.png" alt="">-->
<!-- <img src="--><?php //= $b->pa_get_assets_dir() ?><!--main/img/png/dog4.png" alt="">-->
<!-- <img src="--><?php //= $b->pa_get_assets_dir() ?><!--main/img/png/dog4.png" alt="">-->
<!-- </div>-->
</form>
<?php foreach ($reviews as $num => $review) { ?>
<div class="review d-flex justify-content-md-between justify-content-center align-items-center flex-column flex-md-row text-center text-md-start">
<div class="review-info">
<div class="review-stars">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star.svg" alt="">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star.svg" alt="">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star.svg" alt="">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star.svg" alt="">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/svg/star-dis.svg" alt="">
</div>
<h3 class="review-name"><?= $review->get_prop_render_value("name"); ?></h3>
<div class="review-text"><?= $review->get_content(); ?></div>
</div>
<div class="review-photos">
<p class="review-data text-end"><?= $review->get_prop_render_value("date"); ?></p>
<div class="photos d-flex">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/png/dog4.png" alt="">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/png/dog4.png" alt="">
<img src="<?= $b->pa_get_assets_dir() ?>main/img/png/dog4.png" alt="">
</div>
</div>
</div>
<?php } ?>
</div>
</div>
</div>
</div>
</main>
<?php $this->template_load("footer.php"); ?>

View File

@@ -0,0 +1,60 @@
<?php $this->template_load("head.php"); ?>
<?php $this->template_load("header.php"); ?>
<?php
$search = $_GET["s"];
$page = $_GET["page"] ?? 1;
$category_id = $_GET["c_id"] ?? 56780;
$products_per_page = 30;
$product_params = array(
"search_phrase" => $search,
"category_id" => $category_id,
"attributes" => array(),
"page" => $page,
"products_per_page" => $products_per_page,
"ranges" => array(),
"sale_price" => $_GET["price_sale"] ?? 0
);
$products = category_search($product_params);
$product_count = category_search_count($product_params);
?>
<section class="section first-other search">
<div class="container">
<h1 class="little vacancy__heading">Поиск</h1>
<h2 class="reviews-block__subheading reviews__subheading search__subheading">
Результат поиска по “<?= $b->get_view($search); ?>”<span><b><?= $b->pluralize($product_count, array("Найден", "Найдено", "Найдено")); ?> <?= $product_count; ?> <?= $b->pluralize($product_count, array("товар", "товара", "товаров")); ?></b></span>
</h2>
<div>
<ul class="generator-params__list variants-list">
<li class="generator-params__item <?= $category_id == 56780 ? "active" : ""; ?>">
<a href="<?= $b->router_format_get_params(array("c_id" => 56780), true); ?>" class="generator-params__link">Дизельные</a>
</li>
<li class="generator-params__item <?= $category_id == 56736 ? "active" : ""; ?>">
<a href="<?= $b->router_format_get_params(array("c_id" => 56736), true); ?>" class="generator-params__link">Бензиновые</a>
</li>
<li class="generator-params__item <?= $category_id == 56888 ? "active" : ""; ?>">
<a href="<?= $b->router_format_get_params(array("c_id" => 56888), true); ?>" class="generator-params__link">Газовые</a>
</li>
<li class="generator-params__item <?= $category_id == 56940 ? "active" : ""; ?>">
<a href="<?= $b->router_format_get_params(array("c_id" => 56940), true); ?>" class="generator-params__link">Сварочные</a>
</li>
</ul>
<article class="variants__products product-list">
<h2 class="reviews-block__subheading visually-hidden">[Дизельные]</h2>
<?php
foreach ($products as $key => $product) {
$b->template_load("productCategory/product_row.php", array("product" => $product));
}
?>
</article>
<div class="posts-pagination">
<?php $b->template_load("productCategory/pagination.php", array("current_page" => $page, "items_per_page" => $products_per_page, "items_count" => $product_count)); ?>
</div>
</div>
</div>
</section>
<?php $this->template_load("main/questions.php"); ?>
<?php $this->template_load("footer.php"); ?>

View File

@@ -0,0 +1,66 @@
<?php
$type = $_GET["type"] ?? "category";
$page = $_GET["page"] ?? 1;
$current_list_int = intval($page) - 1;
$products_per_page = 30;
$offset = $products_per_page * $current_list_int;
$product_params = array(
"class" => "ProductCategory",
"limit" => $products_per_page,
"offset" => $offset
);
$search = new Search($product_params);
$products = $search->collect();
$product_count = $search->count;
?>
<?php $this->template_load("head.php"); ?>
<?php $this->template_load("header.php"); ?>
<section class="section first-other search">
<div class="container">
<h1 class="little vacancy__heading">Карта сайта</h1>
<div>
<ul class="generator-params__list variants-list">
<li class="generator-params__item <?= $type == "category" ? "active" : ""; ?>">
<a href="<?= $b->router_format_get_params(array("type" => "category"), true); ?>" class="generator-params__link">Категории</a>
</li>
<li class="generator-params__item <?= $type == "main" ? "active" : ""; ?>">
<a href="<?= $b->router_format_get_params(array("type" => "main"), true); ?>" class="generator-params__link">Типовые страницы</a>
</li>
</ul>
<article class="variants__products product-list" style="display: flex;flex-direction: column;">
<?php if($type == "category") {
foreach ($products as $key => $product) { ?>
<a href="/category/<?= $product->get_item_slug(); ?>" style="margin-bottom: 10px;"><?= $product->get_item_name(); ?></a>
<?php }
} else { ?>
<a href="/" style="margin-bottom: 10px;">Главная</a>
<a href="/page/about/" style="margin-bottom: 10px;">О компании</a>
<a href="/page/delivery/" style="margin-bottom: 10px;">Доставка</a>
<a href="/page/pay/" style="margin-bottom: 10px;">Оплата</a>
<a href="/page/guarantees/" style="margin-bottom: 10px;">Гарантии</a>
<a href="/reviews/" style="margin-bottom: 10px;">Отзывы</a>
<a href="/posts/all-publications/" style="margin-bottom: 10px;">Новости</a>
<a href="/faq/" style="margin-bottom: 10px;">Вопрос-ответ</a>
<a href="/page/contacts/" style="margin-bottom: 10px;">Контакты</a>
<a href="/page/public-offer/" style="margin-bottom: 10px;">Публичная оферта</a>
<a href="/page/privacy/" style="margin-bottom: 10px;">Политка конфиденциальности</a>
<?php } ?>
</article>
<?php if($type == "category") { ?>
<div class="posts-pagination">
<?php $b->template_load("productCategory/pagination.php", array("current_page" => $page, "items_per_page" => $products_per_page, "items_count" => $product_count)); ?>
</div>
<?php } ?>
</div>
</div>
</section>
<?php $this->template_load("footer.php"); ?>

View File

@@ -0,0 +1,53 @@
<?php $this->template_load("head.php"); ?>
<?php $this->template_load("header.php"); ?>
<?php
$order_id = $b->session_get("order");
$purchase = new Purchase($order_id);
$products = $purchase->get_product_items();
?>
<section class="section first-other thankyou" id="print-content">
<div class="container-small">
<h1>Спасибо за заказ!</h1>
<ul class="thankyou__wrapper thank-wrapper">
<li class="thank-wrapper__item">
<figure class="thank-wrapper__image">
<img src="<?= $b->pa_get_assets_dir() ?>main/images/thankyou1.svg" alt="" />
</figure>
<p>
Ожидайте, наш менеджер позвонит Вам завтра с 8:00 до 10:00 по
московскому времени. Если вы пропустили звонок, то просто
перезвоните нам по номеру <?= $b->setting_get_value("contact_phone"); ?> или ожидайте
повторного звонка.
</p>
</li>
<li class="thank-wrapper__item">
<figure class="thank-wrapper__image">
<img src="<?= $b->pa_get_assets_dir() ?>main/images/thankyou2.svg" alt="" />
</figure>
<p>
Изменения в статусе заказа мы будем отправлять на ваш электронный
адрес и по смс. Так же за состоянием заказа вы можете следить из
своего личного кабинета (профиль - заказы).
</p>
</li>
<li class="thank-wrapper__item">
<figure class="thank-wrapper__image">
<img src="<?= $b->pa_get_assets_dir() ?>main/images/thankyou3.svg" alt="" />
</figure>
<p>Если у вас есть уточняющие вопросы позвоните по номеру <?= $b->setting_get_value("contact_phone"); ?> или напишите нам на <?= $b->setting_get_value("contact_email"); ?></p>
</li>
</ul>
<div class="variants__products cart__list cart-list">
<?php foreach ($products as $key => $product) { ?>
<?php $b->template_load("thanks_order/product_row.php", array("product" => $product["item"], "count" => $product["count"])); ?>
<?php } ?>
</div>
<?php $b->template_load("thanks_order/price.php", array("purchase" => $purchase)); ?>
<?php $b->template_load("thanks_order/contact.php", array("purchase" => $purchase)); ?>
<a class="thankyou__btn" href="javascript:window.print();">распечатать</a>
</div>
</section>
<?php $this->template_load("footer.php"); ?>

View File

@@ -0,0 +1,71 @@
<?php $b->title_set("Вакансии - " . $b->setting_get_value("bive_site_name")); ?>
<?php $b->link_add(array("rel" => "canonical", "href" => $b->router_get_canonical_uri())); ?>
<?php $this->template_load("head.php"); ?>
<?php $this->template_load("header.php"); ?>
<section class="section first-other vacancy">
<div class="container">
<h1 class="little vacancy__heading">Вакансии</h1>
<!-- vacancies -->
<div class="vacancy__wrapper vacancy-cont">
<?php $articles = $b->setting_get_value("vacancy_articles"); ?>
<?php foreach ($articles as $arg => $article) { ?>
<article class="vacancy-cont__article vac-article">
<h2 class="vac-article__heading"><?= $article["title"]; ?></h2>
<div class="faq__accord faq-accord js-vacancyAccord">
<!-- Section -->
<?php foreach ($article["items"] as $arg => $item) { ?>
<div class="faq-accord__item accordion-item">
<div class="accordion-header faq-accord__subheading">
<div class="vac-article__wrapper row align-items-center justify-content-between">
<div class="vac-article__left col-auto">
<?= $item["title"]; ?>
</div>
<p class="vac-article__price col-auto"><?= $item["sum"]; ?></p>
</div>
</div>
<div>
<p><?= $item["description"]; ?></p>
<button class="faq-accord__btn vac-article__btn" data-popup-open="vacancy-send" data-name="<?= $item["title"]; ?>">откликнуться</button>
</div>
</div>
<?php } ?>
<!-- Section -->
</div>
</article>
<?php } ?>
</div>
<!-- vacancies end -->
</div>
</section>
<div class="popup" data-popup="vacancy-send">
<div class="popup__cont vacancy-send__cont">
<button class="popup__close" data-popup-close="vacancy-send">
<svg><use xlink:href="<?= $b->pa_get_assets_dir() ?>main/images/icons/sprite.svg#close"></use></svg>
</button>
<h3 class="popup__heading vacancy-send__heading">Откликнуться на вакансию</h3>
<div class="popup__form vacancy-form">
<form action="" class="popup-appeal">
<input type="hidden" name="url" value="<?= $b->get_view($_SERVER["REQUEST_URI"]); ?>">
<input type="hidden" name="title" value="Вакансия" class="vacancy-input-name">
<input type="text" class="input-form" placeholder="Ваше имя" name="name" />
<input type="email" class="input-form" placeholder="Ваш email" name="phone" />
<textarea class="input-form" placeholder="Ваши пожелания" name="message"></textarea>
<button class="form-btn popup-appeal__button">отправить</button>
<span class="agreement">Я согласен с условиями предоставления услуг и
<a href="/privacy">обработкой моих персональных данных</a> при нажатии "Отправить"
</span>
</form>
</div>
</div>
</div>
<script>
jQuery(document).ready(function($) {
$(".vac-article__btn").on("click", function (e) {
$(".vacancy-input-name").val("Вакансия - " + $(this).attr("data-name"));
})
});
</script>
<?php $this->template_load("footer.php"); ?>

View File

@@ -0,0 +1,10 @@
<?php $score = intval($variables["score"]); ?>
<ul class="product-wrapper__rating rev-names__rating row align-items-center justify-content-between">
<?php for($i = 1; $i <= 5; $i++) { ?>
<?php if($score >= $i) { ?>
<li><img src="<?= $b->pa_get_assets_dir() ?>main/images/otziv_battery_active.svg" alt="" /></li>
<?php } else { ?>
<li><img src="<?= $b->pa_get_assets_dir() ?>main/images/otziv_battery.svg" alt="" /></li>
<?php } ?>
<?php } ?>
</ul>

View File

@@ -0,0 +1,20 @@
<?php $page = $b->ls_get_key("page"); ?>
<?php $product_category_faq = $page->get_prop_render_value("faq"); ?>
<?php if(!$product_category_faq) return; ?>
<section class="section faq-block faq-block__wrapper">
<div class="container-small">
<h2 class="little faq-block__heading">Часто задаваемые вопросы</h2>
<div class="faq-block__accord faq-accord js-vacAccord">
<?php foreach ($product_category_faq as $key => $faq) { ?>
<div class="faq-accord__item accordion-item">
<div class="accordion-header faq-accord__subheading">
<div><?= $faq["title"]; ?></div>
</div>
<div class="post-content">
<?= $faq["text"]; ?>
</div>
</div>
<?php } ?>
<a class="button-for-more" href="/page/faq/">Показать ещё</a>
</div>
</section>

View File

@@ -0,0 +1,44 @@
<?php $page = $b->ls_get_key("page"); ?>
<?php $images = $page->get_prop_render_value("product_photo_album"); ?>
<?php $main_image = $page->get_prop_render_value("product_photo"); ?>
<div class="product-card__images">
<h4 class="single-prod-descr__title single-prod-descr__title_mobile">
<?= $page->get_item_name(); ?>
</h4>
<div class="swiper product-card__gallery product-card__images swiper-container ">
<div class="swiper-wrapper">
<figure class="product-card__img swiper-slide">
<img src="<?= $main_image; ?>" alt="">
</figure>
<?php foreach ($images as $key => $image) { ?>
<figure class="product-card__img swiper-slide">
<img src="<?= $image["image"]; ?>" alt="">
</figure>
<?php } ?>
</div>
</div>
<div class="product-card__thumbnails card-thumbnails">
<a class="list-digits__arrow card-thumbnails__arrow list-digits__arrow-prev">
<svg class="list-digits__image">
<use xlink:href="<?= $b->pa_get_assets_dir() ?>main/images/icons/sprite.svg#pag-prev"></use>
</svg>
</a>
<div class="swiper product-card__thumbnails-wrapper">
<div class="swiper-wrapper product-card__img__previews">
<figure class="card-thumbnails__img swiper-slide">
<img src="<?= $main_image ?>" alt="">
</figure>
<?php foreach ($images as $key => $image) { ?>
<figure class="card-thumbnails__img swiper-slide">
<img src="<?= $image["image"]; ?>" alt="">
</figure>
<?php } ?>
</div>
</div>
<a class="list-digits__arrow card-thumbnails__arrow list-digits__arrow-next">
<svg class="list-digits__image">
<use xlink:href="<?= $b->pa_get_assets_dir() ?>main/images/icons/sprite.svg#pag-next"></use>
</svg>
</a>
</div>
</div>

View File

@@ -0,0 +1,27 @@
<?php $product_price = number_format($variables["price"], 2, ',', ' '); ?>
<?php if($variables["sale_percent"] > 0) { ?>
<?php $product_sale_price = number_format($variables["price"] * (1 - ($variables["sale_percent"] / 100)), 2, ',', ' '); ?>
<div class="product-wrapper__pricing row align-items-center">
<span class="product-wrapper__prices col-auto">
<p class="product-wrapper__oldprice"><del><?= $product_price; ?> ₽</del></p>
<p class="product-wrapper__newprice"><?= $product_sale_price; ?> ₽</p>
</span>
<div class="product-wrapper__action product-prices__action col-auto">
&nbsp;&nbsp;-<?= $variables["sale_percent"]; ?>
</div>
<button class="product-wrapper__question" aria-label="Задать вопрос" data-popup-open="zayavka"></button>
</div>
<?php } else { ?>
<div class="product-wrapper__pricing row align-items-center">
<span class="product-wrapper__prices col-auto">
<?php if($variables["price"] > 0) { ?>
<p class="product-wrapper__newprice"><?= $product_price; ?> ₽</p>
<?php } else { ?>
<p class="product-wrapper__newprice">по запросу</p>
<?php } ?>
</span>
<button class="product-wrapper__question" aria-label="Задать вопрос" data-popup-open="zayavka"></button>
</div>
<?php } ?>

View File

@@ -0,0 +1,50 @@
<?php
$page = $b->ls_get_key("page");
if (!$page->get_item_parent()) return;
$max_items = 10;
$count_search = new Search(array(
"terms" => array(
"and" => array(
"item_parent" => $page->get_item_parent(),
"item_class" => "Product"
)
),
"limit" => 1
));
$count = $count_search->get_count()->count;
if (!$count) return;
$count = $count - $max_items;
if ($count < $max_items) $count = $max_items;
$search = new Search(array(
"terms" => array(
"and" => array(
"item_parent" => $page->get_item_parent(),
"item_class" => "Product"
)
),
"limit" => $max_items,
"offset" => mt_rand(0, $count)
));
$items = $search->collect();
?>
<?php if(count($items)) { ?>
<section class="section variants">
<div class="container js-tabs-wrapper" tabname="catalog_hot">
<h2 class="variants__heading">Похожие товары</h2>
<article class="variants__products product-list">
<?php foreach ($items as $key => $product) {
$b->template_load("productCategory/product_row.php", array("product" => $product));
} ?>
</article>
</div>
</section>
<?php } ?>

View File

@@ -0,0 +1,47 @@
<?php
$page = $b->ls_get_key("page");
$reviews = $page->get_prop_render_value("reviews");
if(!$reviews || !count($reviews)) return;
?>
<section class="section reviews-block" id="reviews">
<h2 class="little reviews-block__heading">Отзывы наших клиентов</h2>
<h3 class="reviews-block__subheading">
Оценка 5 на основании более чем 300 отзывов
</h3>
<div>
<!-- Slider swiper -->
<article class="reviews-block-art">
<h2 class="little visually-hidden">Отзывы</h2>
<div class="reviews-block__slider reviews-slider swiper swiper-container">
<div class="swiper-wrapper">
<?php foreach ($reviews as $key => $item) {
$review = new Reviews($item["review_id"]);
?>
<div class="swiper-slide reviews-slider__slide rev-slide">
<figure class="rev-slide__image">
<img class="rev-slide__img" src="<?= $review->get_prop_render_value("photo"); ?>" alt=""/>
</figure>
<div class="rev-slide__right">
<div class="rev-slide__top rev-names row align-items-start justify-content-between">
<div class="rev-names__left">
<h3 class="rev-slide__name"><?= $review->get_prop_render_value("name"); ?></h3>
<p class="rev-slide__date"><?= $review->get_prop_render_value("date"); ?></p>
</div>
<?php $b->template_load("reviews/battery.php", array("score" => $review->get_prop_render_value("score"))); ?>
</div>
<div class="rev-slide__text">
<?= $review->get_item_content(); ?>
</div>
</div>
</div>
<?php } ?>
</div>
<div class="swiper-button-prev button-prev-el2"></div>
<div class="swiper-button-next button-next-el2"></div>
</div>
<a class="button-for-more" href="/page/reviews/">Показать ещё</a>
</article>
</div>
</section>

View File

@@ -0,0 +1,5 @@
<?php
$product_price = number_format($variables["price"], 2, ',', ' ');
if($variables["sale_percent"] > 0) echo number_format($variables["price"] * (1 - ($variables["sale_percent"] / 100)), 2, ',', ' ');
else echo $product_price;

View File

@@ -0,0 +1,30 @@
<?php
$page = $b->ls_get_key("page");
$performance = $page->get_prop_render_value("performance");
$automation = $page->get_prop_render_value("automation");
$products_slug = array(...$performance, ...$automation);
$products_slug_array = array();
$products_slug = array_map(function($value) {
return ' `item_slug` = "' . $value["product_slug"] . '" ';
}, $products_slug);
$query = "SELECT * FROM `bive_items` WHERE " . implode(" OR ", $products_slug);
$result = $b->db_query($query, [], true);
?>
<?php if(count($result)) { ?>
<section class="section variants">
<div class="container js-tabs-wrapper" tabname="catalog_hot">
<h2 class="variants__heading">Варианты исполнения</h2>
<article class="variants__products product-list">
<?php foreach ($result as $key => $item) {
$product = new Product($item["item_id"]);
$b->template_load("productCategory/product_row.php", array("product" => $product));
} ?>
</article>
</div>
</section>
<?php } ?>

View File

@@ -0,0 +1,71 @@
<?php
global $cart;
$products = $cart->get_product_items();
$cart_info = $cart->cart_total_price();
$count = $cart->get_count();
$has_coupon = false;
$coupon_id = $b->session_get("coupon_id");
if($coupon_id) {
$coupon = $b->get_item_by_id($coupon_id);
if($coupon) $has_coupon = true;
}
?>
<section class="section first-other cart">
<div class="container-small">
<h1>Корзина</h1>
<div class="variants__products cart__list cart-list">
<?php foreach ($products as $key => $product) { ?>
<?php $b->template_load("productCart/product_row.php", array("product" => $product["item"], "count" => $product["count"])); ?>
<?php } ?>
</div>
<div class="cart-list__params promo row align-items-center">
<h3 class="promo__heading col-auto" id="promocode-label">Есть промо-код?</h3>
<div class="promo__form">
<form action="" class="row">
<?php if($has_coupon === false) { ?>
<input type="text" class="input-form" placeholder="Текст" id="promocode-text"/>
<button class="form-btn" type="submit" id="promocode-btn-apply">ok</button>
<?php } else { ?>
<input type="text" class="input-form" placeholder="Текст" id="promocode-text" readonly value="<?= $b->get_view($coupon->get_item_name()); ?>"/>
<button class="form-btn" type="submit" id="promocode-btn-delete">удалить</button>
<?php }?>
</form>
</div>
</div>
<div class="cart-list__zakaz form-zakaz">
<h3 class="promo__heading promo__heading_zakaz">Ваш заказ (<?= $count; ?>)</h3>
<div class="form-zakaz__box row align-items-end justify-content-between">
<p class="col-auto">Товаров на</p>
<span class="col"></span>
<p class="price col-auto"><?= number_format($cart_info["regular_sum"], 2, ',', ' '); ?> ₽</p>
</div>
<div class="form-zakaz__box row align-items-end justify-content-between">
<p class="col-auto">Скидка</p>
<span class="col"></span>
<p class="price col-auto"><?= number_format($cart_info["sale_sum"], 2, ',', ' '); ?> ₽</p>
</div>
<div class="form-zakaz__box form-zakaz__box_total row align-items-end justify-content-between">
<p class="col-auto">ИТОГО</p>
<span class="col"></span>
<p class="price col-auto"><?= number_format($cart_info["final_sum"], 2, ',', ' '); ?> ₽</p>
</div>
<?php if($count != 0) { ?>
<a class="form-zakaz__btn" href="/checkout/">оформить заказ</a>
<label class="agreement">
<input type="checkbox" class="agreement-checkbox" checked required>
<span>
<span>
Я согласен с условиями предоставления услуг и
<a href="/page/privacy/">обработкой моих персональных данных</a> при
нажатии "Оставить заявку"
</span>
</span>
</label>
<?php } ?>
</div>
</div>
</section>

View File

@@ -0,0 +1,39 @@
<?php $product = $variables["product"]; ?>
<div class="popup__product-item">
<div class="popup__product-img">
<img src="<?= $product->get_prop_render_value("product_photo"); ?>" alt="" />
</div>
<a href="/product/<?= $product->get_item_slug(); ?>/" class="popup__product-name"><?= $product->get_item_name(); ?></a>
<div class="popup__product-bot">
<div data-quantity="" class="popup__product-quantity quantity">
<button type="button" class="quantity__button quantity__button_minus calc__btn minus" data-price="<?= $product->get_price(); ?>"></button>
<div class="quantity__input">
<input readonly="" autocomplete="off" type="number" title="Qty" min="1" max="1000" step="1" value="1"/>
</div>
<button type="button" class="quantity__button quantity__button_plus calc__btn plus" data-price="<?= $product->get_price(); ?>"></button>
</div>
<div class="popup__product-price"><span><?php $this->template_load("product/short_price.php", array("price" => $product->get_prop("price"), "sale_percent" => $product->get_prop("sale_percent"))); ?></span>₽</div>
</div>
</div>
<div class="popup__form">
<form action="" class="popup-appeal">
<input type="hidden" name="url" value="<?= $b->get_view($_SERVER["REQUEST_URI"]); ?>">
<input type="hidden" name="title" value="Купить в один клик">
<input type="hidden" name="message" value="Количество товаров: 1">
<input type="text" class="input-form" placeholder="Ваше имя" name="name" required />
<input type="tel" class="input-form phone-input" placeholder="Ваш телефон" name="phone" required data-inputmask="'mask': '+7 (999) 999-9999'" />
<button type="submit" class="form-btn popup-appeal__button">Отправить</button>
<label class="agreement">
<input type="checkbox" class="agreement-checkbox" checked required>
<span>
<span>
Я согласен с условиями предоставления услуг и
<a href="/page/privacy/">обработкой моих персональных данных</a> при
нажатии "Оставить заявку"
</span>
</span>
</label>
</form>
</div>

View File

@@ -0,0 +1,14 @@
<?php $count = $variables["count"]; ?>
<?php $count_price = ($variables["price"] * $count ); ?>
<?php $product_price = number_format($count_price, 2, ',', ' '); ?>
<?php if($variables["sale_percent"] > 0) { ?>
<?php $product_sale_price = number_format($count_price * (1 - ($variables["sale_percent"] / 100)), 2, ',', ' '); ?>
<p class="product-wrapper__oldprice"><del><?= $product_price; ?> ₽</del></p>
<p class="product-wrapper__newprice"><?= $product_sale_price; ?> ₽</p>
<?php } else { ?>
<?php if($variables["price"] > 0) { ?>
<p class="product-wrapper__newprice"><?= $product_price; ?> ₽</p>
<?php } else { ?>
<p class="product-wrapper__newprice">по запросу</p>
<?php } ?>
<?php } ?>

View File

@@ -0,0 +1,39 @@
<?php
$product = $variables["product"];
$cart_count = $variables["count"];
$in_storage = $product->get_prop("product_in_stock");
?>
<div class="cart-list__item cart-item row align-items-center justify-content-between">
<div class="first row align-items-center">
<figure class="product__image">
<img src="<?= $product->get_prop_render_value("product_photo") ?>" alt="" />
</figure>
<div class="cart-item__params">
<a class="product__title" href="/product/<?= $product->get_item_slug(); ?>/"><?= $product->get_item_name(); ?></a>
<?php if($in_storage) { ?>
<!-- <p class="product__qty">На складе --><?php //= $in_storage; ?><!-- шт</p>-->
<p class="product__qty">В наличии</p>
<?php } else { ?>
<p class="product__qty">В наличии</p>
<!-- <p class="product__qty">Нет на складе</p>-->
<?php } ?>
</div>
</div>
<div class="second quantity">
<button type="button" class="quantity__button quantity__button_minus calc__btn minus" product_id="<?= $product->item_id; ?>"></button>
<div class="quantity__input">
<input readonly="" autocomplete="off" type="number" title="Qty" min="1" max="1000" step="1" value="<?= $cart_count; ?>"/>
</div>
<button type="button" class="quantity__button quantity__button_plus calc__btn plus" product_id="<?= $product->item_id; ?>"></button>
</div>
<span class="third product-wrapper__prices col-auto">
<?php $this->template_load("productCart/price.php", array("price" => $product->get_prop("price"), "sale_percent" => $product->get_prop("sale_percent"), "count" => $cart_count)); ?>
</span>
<button class="close product-cart-remove" product_id="<?= $product->item_id; ?>">
<svg class="search-button__find">
<use xlink:href="<?= $b->pa_get_assets_dir() ?>main/images/icons/sprite.svg#close"></use>
</svg>
</button>
</div>

View File

@@ -0,0 +1,19 @@
<?php $page = $b->ls_get_key("page"); ?>
<?php $about_title = $page->get_prop_render_value("about_title"); ?>
<?php $about_block_left = $page->get_prop_render_value("about_block_left"); ?>
<?php $about_block_right = $page->get_prop_render_value("about_block_right"); ?>
<?php if(!$about_title || !$about_block_left) return; ?>
<section class="textblock section post">
<div class="container">
<h2 class="textblock__heading little"><?= $about_title; ?></h2>
<div class="textblock__cont">
<div class="textblock__left">
<?= $about_block_left; ?>
</div>
<div class="textblock__right">
<?= $about_block_right; ?>
</div>
</div>
</div>
</section>

View File

@@ -0,0 +1,75 @@
<?php $page = $b->ls_get_key("page"); ?>
<?php
log_message("- Формирую страницу " .time());
$params = $variables["params"];
$_GET = $params;
$attributes = attribute_get_ids();
$current_page = $params["page"] ?? 1;
$products_per_page = 30;
$ranges = array();
if(isset($params["price_start"]) && isset($params["price_end"])) $ranges[] = array(
"min_value" => $params["price_start"],
"max_value" => $params["price_end"],
"name" => "price"
);
if(isset($params["power_start"]) && isset($params["power_end"])) $ranges[] = array(
"min_value" => $params["power_start"],
"max_value" => $params["power_end"],
"name" => "power"
);
$product_params = array(
"category_id" => $page->item_id,
"attributes" => $attributes,
"page" => $current_page,
"products_per_page" => $products_per_page,
"ranges" => $ranges,
"sale_price" => $params["price_sale"] ?? 0
);
$b->ls_set_key("product_params", $product_params);
log_message("- Получаю товары " .time());
$products = category_search($product_params);
log_message("- Считаю товары " .time());
$product_count = category_search_count($product_params);
log_message("- Получаю атрибуты " .time());
?>
<section class="section first-other category">
<div class="container">
<h1><?= $page->get_item_name(); ?></h1>
<div class="category__cont category-wrapper">
<div class="category-wrapper__mobile category-mobile">
<button class="category-mobile__filters">Фильтры</button>
<button class="header-bottom__help header-bottom__help_mobile" data-popup-open="help-choose">помощь в выборе</button>
</div>
<div class="category-wrapper__left">
<div class="category-wrapper__inner">
<div class="category-wrapper__filters cat-filters">
<p class="cat-filters__find">Найдено: <?= $product_count; ?> <?= $b->pluralize($product_count, array("товар", "товара", "товаров")); ?></p>
<button class="header-bottom__help header-bottom__filter" data-popup-open="help-choose">
помощь в выборе
</button>
<?php $b->template_load("productCategory/filter.php", array("category_id" => $page->item_id, "attributes" => $attributes)); ?>
</div>
</div>
<?php $b->template_load("productCategory/termins.php", array()); ?>
<?php $b->template_load("productCategory/news.php", array()); ?>
</div>
<div class="category-wrapper__main cat-main">
<?php $b->template_load("productCategory/product_list.php", array("products" => $products, "current_page" => $current_page, "products_per_page" => $products_per_page, "product_count" => $product_count)); ?>
</div>
<div class="category-loading">
<div class="category-loading__image">
<img src="<?= $b->pa_get_assets_dir() ?>main/images/loading.gif"
</div>
</div>
</div>
</div>
</section>

View File

@@ -0,0 +1,20 @@
<?php $page = $b->ls_get_key("page"); ?>
<?php $product_category_faq = $page->get_prop_render_value("product_category_faq"); ?>
<?php if(!$product_category_faq) return; ?>
<section class="section faq-block faq-block__wrapper">
<div class="container-small">
<h2 class="little faq-block__heading">Часто задаваемые вопросы</h2>
<div class="faq-block__accord faq-accord js-vacAccord">
<?php foreach ($product_category_faq as $key => $faq) { ?>
<div class="faq-accord__item accordion-item">
<div class="accordion-header faq-accord__subheading">
<div><?= $faq["title"]; ?></div>
</div>
<div class="post-content">
<?= $faq["text"]; ?>
</div>
</div>
<?php } ?>
<a class="button-for-more" href="/page/faq/">Показать ещё</a>
</div>
</section>

View File

@@ -0,0 +1,32 @@
<?php
$product_params = $b->ls_get_key("product_params");
$attributes = category_search_attributes($product_params);
log_message("- Получил данные " .time());
$search = new Search(array(
"class" => "Attribute",
"order" => array(
"key" => "weight"
)
));
$AttributeBlocks = $search->collect(true, false);
?>
<?php $b->template_load("productCategory/filter_price.php", array()); ?>
<?php $b->template_load("productCategory/filter_range.php", array("attribute_slug" => "power", "attribute_name" => "Мощность, кВт")); ?>
<?php foreach ($AttributeBlocks as $key => $AttributeBlock) { ?>
<?php $b->template_load("productCategory/filter_block.php", array("attribute_slug" => $AttributeBlock->get_item_slug(), "numeric" => false, "attributes" => $attributes, "open" => $AttributeBlock->get_prop_render_value("open"))); ?>
<?php } ?>
<span class="close-filters">
<svg class="close-filters__btn">
<use xlink:href="<?= $b->pa_get_assets_dir() ?>main/images/icons/sprite.svg#closefilters"></use>
</svg>
<a href="<?= parse_url($_SERVER["REQUEST_URI"], PHP_URL_PATH); ?>" data-href="?page=1" data-category-update="true" data-category-params='<?= json_encode($b->router_edit_get_params(array("page" => 1))); ?>'>
Сбросить все фильтры
</a>
</span>

View File

@@ -0,0 +1,86 @@
<?php
log_message("- Формирую блок фильтров " .time());
$attributes = $variables["attributes"];
$numeric = $variables["numeric"];
$open = $variables["open"];
$block_active = false;
$search = new Search(array(
"class" => "Attribute",
"terms" => array("item_slug" => $variables["attribute_slug"])
));
$pages = $search->collect(true, false);
if(!$pages) return;
$attribute = $pages[0];
$attribute_slug = $attribute->get_item_slug();
if(!count($attributes)) return;
if($attribute->get_prop("visible") == 0) return;
$attribute_list = array();
foreach ($attributes as $key => $attribute_item) {
if($attribute_item->parent_id != $attribute->item_id) continue;
$item_slug = $attribute_item->get_item_slug();
$item_name = $attribute_item->get_item_name();
$attribute_list[] = array("slug" => $item_slug, "title" => $item_name);
if($item_slug) {
$active = $_GET["filter_" . $attribute_slug] == $item_slug;
if($active) $block_active = true;
}
}
if(!count($attribute_list)) return;
$attribute_list = sortArrayByName($attribute_list);
?>
<article class="section-article">
<div class="section-btn">
<div class="execphpwidget">
<p>
<button type="button" class="filters-item__title" data-form-type="other">
<span><?= $attribute->get_item_name(); ?></span>
<svg <?= $block_active || $open ? "" : 'class="active"'; ?>>
<use xlink:href="<?= $b->pa_get_assets_dir() ?>main/images/icons/sprite.svg#galka_up"></use>
</svg>
</button>
</p>
</div>
<div class="widget widget_block section-body list" <?= $block_active || $open ? "" : 'style="display: none;"'; ?>>
<?php if(count($attribute_list) > 5) { ?>
<div class="widget-search">
<input placeholder="Поиск" class="widget-search__input">
<svg class="widget-search__icon">
<use xlink:href="<?= $b->pa_get_assets_dir() ?>main/images/icons/sprite.svg#search"></use>
</svg>
</div>
<?php } ?>
<div class="price-block__list">
<?php foreach ($attribute_list as $key => $attribute_item) { ?>
<?php
$item_slug = $attribute_item["slug"];
$active = $_GET["filter_" . $attribute_slug] == $item_slug;
if(!$item_slug) continue;
$params = array("filter_" . $attribute_slug => $item_slug, "page" => 1);
$params_exclude = $active ? array("filter_" . $attribute_slug, "b_event") : array("b_event");
?>
<a class="price-block__row <?= $active ? "active" : ""; ?> col-auto" href="<?= $b->router_format_get_params($params, true, $params_exclude); ?>" data-href="<?= $b->router_format_get_params($params, true, $params_exclude); ?>" data-category-update="true" data-category-params='<?= json_encode($b->router_edit_get_params($params, true, $params_exclude)); ?>'>
<label for="hits"><?= $attribute_item["title"]; ?></label>
</a>
<?php } ?>
</div>
<div class="widget_block-show_buttons">
<span class="widget-block__show-all">Показать всё</span>
<span class="widget-block__hide">Скрыть</span>
</div>
</div>
</div>
</article>

View File

@@ -0,0 +1,54 @@
<article class="section-article">
<div class="section-btn">
<div class="execphpwidget">
<p>
<button type="button" class="filters-item__title">
<span>Цена</span>
<svg>
<use xlink:href="<?= $b->pa_get_assets_dir() ?>main/images/icons/sprite.svg#galka_up"></use>
</svg>
</button>
</p>
</div>
<div class="widget widget_block section-body">
<form class="section-body__price price-block row align-items-center" method="get" data-category-form="true">
<?php foreach ($_GET as $key => $value) { ?>
<?php if($key == "price_start" || $key == "price_end" || $key == "page" || $key == "b_event") continue; ?>
<input type="hidden" name="<?= $b->get_view($key); ?>" value="<?= $b->get_view($value); ?>">
<?php } ?>
<span class="price-block__item col-6 row align-items-center">
<label for="price_before" class="col-auto">от</label>
<input id="price_before" type="number" class="input-form col" placeholder="0" name="price_start" required value="<?= $b->get_view($_GET["price_start"]); ?>"/>
</span>
<span class="price-block__item col-6 row align-items-center">
<label for="price_after" class="col-auto">до</label>
<input id="price_after" type="number" class="input-form col" placeholder="99999" name="price_end" required value="<?= $b->get_view($_GET["price_end"]); ?>"/>
</span>
<input type="submit" style="display: none;">
</form>
<div class="price-block__list">
<a class="price-block__row <?= $_GET["price_start"] == "0" || $_GET["price_end"] == "0" ? "active" : ""; ?> col-auto" href="<?= $b->router_format_get_params(array("price_start" => "0", "price_end" => "0"), true, array("b_event")); ?>" data-href="<?= $b->router_format_get_params(array("price_start" => "0", "price_end" => "0"), true, array("b_event")); ?>" data-category-update="true" data-category-params='<?= json_encode($b->router_edit_get_params(array("price_start" => "0", "price_end" => "0"), true, array("b_event"))); ?>'>
<label for="hits">Все цены</label>
</a>
<a class="price-block__row <?= $_GET["price_start"] == 1 && $_GET["price_end"] == 120000 ? "active" : "" ?> col-auto" href="<?= $b->router_format_get_params(array("price_start" => "1", "price_end" => "120000"), true, array("b_event")); ?>" data-href="<?= $b->router_format_get_params(array("price_start" => "1", "price_end" => "120000"), true, array("b_event")); ?>" data-category-update="true" data-category-params='<?= json_encode($b->router_edit_get_params(array("price_start" => "1", "price_end" => "120000"), true, array("b_event"))); ?>'>
<label for="hits">Менее 120.000 ₽</label>
</a>
<a class="price-block__row <?= $_GET["price_start"] == 1 && $_GET["price_end"] == 250000 ? "active" : "" ?> col-auto" href="<?= $b->router_format_get_params(array("price_start" => "1", "price_end" => "250000"), true, array("b_event")); ?>" data-href="<?= $b->router_format_get_params(array("price_start" => "1", "price_end" => "250000"), true, array("b_event")); ?>" data-category-update="true" data-category-params='<?= json_encode($b->router_edit_get_params(array("price_start" => "1", "price_end" => "250000"), true, array("b_event"))); ?>'>
<label for="hits">Менее 250.000 ₽</label>
</a>
<a class="price-block__row <?= $_GET["price_start"] == 1 && $_GET["price_end"] == 350000 ? "active" : "" ?> col-auto" href="<?= $b->router_format_get_params(array("price_start" => "1", "price_end" => "350000"), true, array("b_event")); ?>" data-href="<?= $b->router_format_get_params(array("price_start" => "1", "price_end" => "350000"), true, array("b_event")); ?>" data-category-update="true" data-category-params='<?= json_encode($b->router_edit_get_params(array("price_start" => "1", "price_end" => "350000"), true, array("b_event"))); ?>'>
<label for="hits">Менее 350.000 ₽</label>
</a>
<a class="price-block__row <?= $_GET["price_start"] == 1 && $_GET["price_end"] == 500000 ? "active" : "" ?> col-auto" href="<?= $b->router_format_get_params(array("price_start" => "1", "price_end" => "500000"), true, array("b_event")); ?>" data-href="<?= $b->router_format_get_params(array("price_start" => "1", "price_end" => "500000"), true, array("b_event")); ?>" data-category-update="true" data-category-params='<?= json_encode($b->router_edit_get_params(array("price_start" => "1", "price_end" => "500000"), true, array("b_event"))); ?>'>
<label for="hits">Менее 500.000 ₽</label>
</a>
<a class="price-block__row <?= $_GET["price_start"] >= 500000 && $_GET["price_end"] <= 10000000 ? "active" : "" ?> col-auto" href="<?= $b->router_format_get_params(array("price_start" => "500000", "price_end" => "10000000"), true, array("b_event")); ?>" data-href="<?= $b->router_format_get_params(array("price_start" => "500000", "price_end" => "10000000"), true, array("b_event")); ?>" data-category-update="true" data-category-params='<?= json_encode($b->router_edit_get_params(array("price_start" => "500000", "price_end" => "10000000"), true, array("b_event"))); ?>'>
<label for="hits">500.000 ₽ и более</label>
</a>
<a class="price-block__row <?= $_GET["price_sale"] == 1 ? "active" : "" ?> col-auto" href="<?= $b->router_format_get_params(array("price_sale" => $_GET["price_sale"] == 1 ? 0 : 1), true, array("b_event")); ?>" data-href="<?= $b->router_format_get_params(array("price_sale" => $_GET["price_sale"] == 1 ? 0 : 1), true, array("b_event")); ?>" data-category-update="true" data-category-params='<?= json_encode($b->router_edit_get_params(array("price_sale" => $_GET["price_sale"] == 1 ? 0 : 1), true, array("b_event"))); ?>'>
<label for="hits">Товары со скидкой</label>
</a>
</div>
</div>
</div>
</article>

View File

@@ -0,0 +1,35 @@
<?php
$attribute_name = $variables["attribute_name"];
$attribute_slug = $variables["attribute_slug"];
?>
<article class="section-article">
<div class="section-btn">
<div class="execphpwidget">
<p>
<button type="button" class="filters-item__title">
<span><?= $attribute_name; ?></span>
<svg><use xlink:href="<?= $b->pa_get_assets_dir() ?>main/images/icons/sprite.svg#galka_up"></use></svg>
</button>
</p>
</div>
<div class="widget widget_block section-body">
<form class="section-body__price price-block row align-items-center" method="get" data-category-form="true">
<?php foreach ($_GET as $key => $value) { ?>
<?php if($key == $attribute_slug . "_start" || $key == $attribute_slug . "_end" || $key == "page" || $key == "b_event") continue; ?>
<input type="hidden" name="<?= $b->get_view($key); ?>" value="<?= $b->get_view($value); ?>">
<?php } ?>
<span class="price-block__item col-6 row align-items-center">
<label for="price_before" class="col-auto">от</label>
<input id="price_before" type="number" class="input-form col" placeholder="0" name="<?= $attribute_slug; ?>_start" required value="<?= $b->get_view($_GET[$attribute_slug. "_start"]); ?>"/>
</span>
<span class="price-block__item col-6 row align-items-center">
<label for="price_after" class="col-auto">до</label>
<input id="price_after" type="number" class="input-form col" placeholder="300" name="<?= $attribute_slug; ?>_end" required value="<?= $b->get_view($_GET[$attribute_slug . "_end"]); ?>"/>
</span>
<input type="submit" style="display: none;">
</form>
</div>
</div>
</article>

View File

@@ -0,0 +1,20 @@
<?php $page = $b->ls_get_key("page"); ?>
<?php $news = $page->get_prop_render_value("product_news_field"); ?>
<?php if(!$news) return; ?>
<div class="category-wrapper__inner articles">
<h2 class="category-wrapper__heading">Статьи</h2>
<ul class="category-wrapper__articles">
<?php foreach ($news as $key => $value) { ?>
<?php $post = new Post(intval($value["item_id"])); ?>
<?php if(!$post->get_item()) continue; ?>
<li>
<figure class="category-wrapper__image">
<img src="<?= $post->get_prop_render_value('post_photo') ?>" alt="" />
</figure>
<a class="category-wrapper__link" href="/post/<?= $post->get_item_slug() ?>/">
<?= $post->get_item_name() ?>
</a>
</li>
<?php }?>
</ul>
</div>

View File

@@ -0,0 +1,67 @@
<?php
$current_page = $variables["current_page"];
$items_per_page = $variables["items_per_page"];
$items_count = $variables["items_count"];
$space = 4;
$delta = intval($items_count / $items_per_page);
$pages_max = $delta > 0 ? $items_count % $items_per_page > 0 ? $delta + 1: $delta: 1;
$last_page = $current_page > 1 ? $current_page - 1 : $current_page;
$next_page = $current_page < $pages_max ? $current_page + 1 : $current_page;
$first_pages = min($pages_max, $space);
if($current_page == $space || $current_page == $space + 1) $first_pages++;
$last_pages = $pages_max - ($space - 1);
if($last_pages == $current_page || $last_pages - 1 == $current_page) $last_pages--;
?>
<ul id="pagination" class="article-rew__list list-digits row">
<li class="list-digits__item col-auto">
<a href="<?= $b->router_format_get_params(array("page" => $last_page), true, array("b_event")); ?>" data-href="<?= $b->router_format_get_params(array("page" => $last_page), true, array("b_event")); ?>" class="list-digits__arrow" data-category-update="true" data-category-params='<?= json_encode($b->router_edit_get_params(array("page" => $last_page), true)); ?>'>
<svg class="list-digits__image">
<use xlink:href="<?= $b->pa_get_assets_dir() ?>main/images/icons/sprite.svg#pag-prev"></use>
</svg>
</a>
</li>
<?php for($i = 1; $i <= $first_pages; $i++) { ?>
<li class="list-digits__item <?= $i == $current_page ? "active" : ""; ?> col-auto">
<a href="<?= $b->router_format_get_params(array("page" => $i), true, array("b_event")); ?>" data-href="<?= $b->router_format_get_params(array("page" => $i), true, array("b_event")); ?>" class="list-digits__link" data-category-update="true" data-category-params='<?= json_encode($b->router_edit_get_params(array("page" => $i), true)); ?>'><?= $i; ?></a>
</li>
<?php } ?>
<?php if($current_page < $last_pages && $current_page > $first_pages) { ?>
<li class="list-digits__item col-auto">
<div class="list-digits__link">...</div>
</li>
<?php for($i = $current_page - 1; $i <= $current_page + 1; $i++) { ?>
<li class="list-digits__item <?= $i == $current_page ? "active" : ""; ?> col-auto">
<a href="<?= $b->router_format_get_params(array("page" => $i), true, array("b_event")); ?>" data-href="<?= $b->router_format_get_params(array("page" => $i), true, array("b_event")); ?>" class="list-digits__link" data-category-update="true" data-category-params='<?= json_encode($b->router_edit_get_params(array("page" => $i), true)); ?>'><?= $i; ?></a>
</li>
<?php } ?>
<?php } ?>
<?php if($pages_max > $space * 2) { ?>
<li class="list-digits__item col-auto">
<div class="list-digits__link">...</div>
</li>
<?php for($i = $last_pages; $i <= $pages_max; $i++) { ?>
<li class="list-digits__item <?= $i == $current_page ? "active" : ""; ?> col-auto">
<a href="<?= $b->router_format_get_params(array("page" => $i), true, array("b_event")); ?>" data-href="<?= $b->router_format_get_params(array("page" => $i), true, array("b_event")); ?>" class="list-digits__link" data-category-update="true" data-category-params='<?= json_encode($b->router_edit_get_params(array("page" => $i), true)); ?>'><?= $i; ?></a>
</li>
<?php } ?>
<?php } ?>
<li class="list-digits__item col-auto">
<a href="<?= $b->router_format_get_params(array("page" => $next_page), true, array("b_event")); ?>" data-href="<?= $b->router_format_get_params(array("page" => $next_page), true, array("b_event")); ?>" class="list-digits__arrow" data-category-update="true" data-category-params='<?= json_encode($b->router_edit_get_params(array("page" => $next_page), true)); ?>'>
<svg class="list-digits__image">
<use xlink:href="<?= $b->pa_get_assets_dir() ?>main/images/icons/sprite.svg#pag-next"></use>
</svg>
</a>
</li>
</ul>

View File

@@ -0,0 +1,14 @@
<?php $products = $variables["products"]; ?>
<?php $current_page = $variables["current_page"]; ?>
<?php $products_per_page = $variables["products_per_page"]; ?>
<?php $product_count = $variables["product_count"]; ?>
<?php log_message("- Формирую товары " .time()); ?>
<?php $b->template_load("productCategory/tags.php", array()); ?>
<div class="variants__products category-product-list">
<?php foreach ($products as $key => $product) {
$b->template_load("productCategory/product_row.php", array("product" => $product));
} ?>
</div>
<?php log_message("- Сформировал товары " .time()); ?>
<?php $b->template_load("productCategory/pagination.php", array("current_page" => $current_page, "items_per_page" => $products_per_page, "items_count" => $product_count)); ?>

View File

@@ -0,0 +1,17 @@
<?php
$product = $variables["product"];
$sale_percent = $product->get_prop("sale_percent");
$regular_price = $product->get_prop("price");
?>
<?php if($sale_percent > 0) { ?>
<?php $product_sale_price = number_format($regular_price * (1 - ($sale_percent / 100)), 0, ',', ' '); ?>
<h3><?= $product_sale_price; ?> ₽ <del class="price_secondary"><?= number_format($regular_price, 0, ',', ' '); ?> ₽</del></h3>
<?php } else { ?>
<?php if($regular_price > 0) { ?>
<h3><?= number_format($regular_price, 0, ',', ' '); ?> ₽</h3>
<?php } else { ?>
<h3>по запросу</h3>
<?php } ?>
<?php } ?>

View File

@@ -0,0 +1,85 @@
<?php
$product = $variables["product"];
$in_storage = $product->get_prop("product_in_stock");
$performance = $product->get_prop_render_value("performance");
$automation = $product->get_prop_render_value("automation");
$options = $product->get_prop_render_value("product_technical_features");
$row_params = get_product_row_params($options);
?>
<div class="product-list product row align-items-start justify-content-between product-row" data-product-slug="<?= $product->get_item_slug(); ?>">
<a class="product__first row align-items-center" href="/product/<?= $product->get_item_slug(); ?>/">
<figure class="product__image">
<img alt="<?= $product->get_item_name(); ?>" class="lazy" data-src="<?= $product->get_prop_render_value("product_photo") ?>" />
</figure>
<div class="product__params row">
<h2 class="product__title"><?= $product->get_item_name(); ?></h2>
<?php if($in_storage) { ?>
<p class="product__qty">В наличии</p>
<?php } else { ?>
<p class="product__qty">В наличии</p>
<!-- <p class="product__qty">Нет на складе</p>-->
<?php } ?>
</div>
</a>
<div class="product__second product-items">
<?php if($row_params["fuel"]) { ?>
<div class="product-items__block">
<h3>Топливо</h3>
<p><?= $row_params["fuel"]; ?></p>
</div>
<?php } ?>
<?php if($row_params["power"]) { ?>
<div class="product-items__block">
<h3>Мощность</h3>
<p><?= $row_params["power"]; ?></p>
</div>
<?php } ?>
<?php if($row_params["engine"]) { ?>
<div class="product-items__block">
<h3>Двигатель</h3>
<p><?= $row_params["engine"]; ?></p>
</div>
<?php } ?>
</div>
<form class="product__third product-items">
<div class="product-items__block">
<?php if($performance) { ?>
<?php $performance = sortArrayByName($performance); ?>
<h3>Исполнение</h3>
<?php foreach ($performance as $key => $variation) { ?>
<span>
<label>
<input type="radio" class="product-variation" name="ispoln_<?= $product->item_id; ?>" value="<?= $variation["product_slug"]; ?>" <?= $variation["product_slug"] == $product->get_item_slug() ? "checked" : ""; ?> />
<?= $variation["title"]; ?>
</label>
</span>
<?php }?>
<?php } ?>
</div>
<div class="product-items__block">
<?php if($automation) { ?>
<?php $automation = sortArrayByName($automation); ?>
<h3>Степень автоматизации</h3>
<?php foreach ($automation as $key => $variation) { ?>
<span>
<label>
<input type="radio" class="product-variation" name="automatiz_<?= $product->item_id; ?>" value="<?= $variation["product_slug"]; ?>" <?= $variation["product_slug"] == $product->get_item_slug() ? "checked" : ""; ?> />
<?= $variation["title"]; ?>
</label>
</span>
<?php }?>
<?php } ?>
</div>
</form>
<div class="product__fourth product-prices">
<?php $b->template_load("productCategory/product_price.php", array("product" => $product)); ?>
<div class="product-prices__btns row justify-content-between">
<button class="product-prices__bye" product_id="<?= $product->item_id; ?>">Купить <span class="flare"></span></button>
<button class="product-prices__action" data-popup-open="oneclick-popup" data-product-id="<?= $product->item_id; ?>">Получить скидку</button>
</div>
</div>
</div>

View File

@@ -0,0 +1,18 @@
<?php $page = $b->ls_get_key("page"); ?>
<?php $tags = $page->get_prop_render_value("tags"); ?>
<?php $tags_title = $page->get_prop_render_value("tags_title"); ?>
<?php if(!$tags) return; ?>
<?php $tags = sortArrayByNumeric($tags); ?>
<div class="generator-article__box">
<?php if($tags_title) { ?>
<h3 class="generator-article__heading"><?= $tags_title; ?></h3>
<?php } ?>
<ul class="generator-article__list row">
<?php foreach ($tags as $key => $value) { ?>
<li class="generator-article__item">
<a href="<?= $value["link"]; ?>"><button><?= $value["title"]; ?></button></a>
</li>
<?php } ?>
</ul>
</div>

View File

@@ -0,0 +1,32 @@
<?php $page = $b->ls_get_key("page"); ?>
<?php $tags_fast_select = $page->get_prop_render_value("tags_fast_select"); ?>
<?php $tags_brands = $page->get_prop_render_value("tags_brands"); ?>
<?php if(!$tags_fast_select && !$tags_brands) return; ?>
<section class="section tags">
<div class="container">
<?php if($tags_fast_select){ ?>
<div class="tags__wrapper">
<h2 class="tags__heading">Быстрый подбор по типу</h2>
<ul class="tags__list row">
<?php foreach ($tags_fast_select as $key => $tag) { ?>
<li class="tags__item col-auto">
<a href="<?= $tag["link"]; ?>"><?= $tag["title"]; ?></a>
</li>
<?php } ?>
</ul>
</div>
<?php } ?>
<?php if($tags_brands){ ?>
<div class="tags__wrapper">
<h2 class="tags__heading">Бренды</h2>
<ul class="tags__list row">
<?php foreach ($tags_brands as $key => $tag) { ?>
<li class="tags__item col-auto">
<a href="<?= $tag["link"]; ?>"><?= $tag["title"]; ?></a>
</li>
<?php } ?>
</ul>
</div>
<?php } ?>
</div>
</section>

View File

@@ -0,0 +1,29 @@
<?php $page = $b->ls_get_key("page"); ?>
<?php $termins = $page->get_prop_render_value("product_termins_field"); ?>
<?php if(!$termins) return; ?>
<div class="category-wrapper__inner terms">
<h2 class="category-wrapper__heading">Термины</h2>
<div class="category-wrapper__filters cat-filters category-wrapper__filters_termins">
<?php foreach ($termins as $key => $termin) { ?>
<article class="section-article">
<div class="section-btn">
<div class="execphpwidget">
<p>
<button type="button" class="filters-item__title">
<span><?= $termin["title"]; ?></span>
<svg>
<use
xlink:href="<?= $b->pa_get_assets_dir() ?>main/images/icons/sprite.svg#galka_up"
></use>
</svg>
</button>
</p>
</div>
<div class="widget widget_block section-body post-content">
<?= $termin["text"]; ?>
</div>
</div>
</article>
<?php } ?>
</div>
</div>

View File

@@ -0,0 +1,10 @@
<?php $score = intval($variables["score"]); ?>
<ul class="rev-names__rating row align-items-center justify-content-between">
<?php for($i = 1; $i <= 5; $i++) { ?>
<?php if($score >= $i) { ?>
<li><img src="<?= $b->pa_get_assets_dir() ?>main/images/otziv_battery_active.svg" alt="" /></li>
<?php } else { ?>
<li><img src="<?= $b->pa_get_assets_dir() ?>main/images/otziv_battery.svg" alt="" /></li>
<?php } ?>
<?php } ?>
</ul>

View File

@@ -0,0 +1,48 @@
<?php
$search = $_GET["s"];
$page = 1;
$category_id = 61;
$products_per_page = 15;
$product_params = array(
"search_phrase" => $search,
"category_id" => $category_id,
"attributes" => array(),
"page" => $page,
"products_per_page" => $products_per_page,
"ranges" => array(),
"sale_price" => $_GET["price_sale"] ?? 0
);
$products = category_search($product_params);
?>
<?php foreach ($products as $key => $product) { ?>
<a class="search-recomendations_link" href="/product/<?= $product->get_item_slug(); ?>/">
<div class="search-recomendations_image">
<img src="<?= $product->get_prop_render_value("product_photo") ?>">
</div>
<div class="search-recomendations_info">
<div class="search-recomendations_name">
<p><?= $product->get_item_name(); ?></p>
</div>
<div class="search-recomendations_price">
<?php
$sale_percent = $product->get_prop("sale_percent");
$regular_price = $product->get_prop("price");
?>
<?php if($sale_percent > 0) { ?>
<?php $product_sale_price = number_format($regular_price * (1 - ($sale_percent / 100)), 0, ',', ' '); ?>
<p><?= $product_sale_price; ?> ₽ <del class="price_secondary"><?= number_format($regular_price, 0, ',', ' '); ?> ₽</del></p>
<?php } else { ?>
<?php if($regular_price > 0) { ?>
<p><?= number_format($regular_price, 0, ',', ' '); ?> ₽</p>
<?php } else { ?>
<p>по запросу</p>
<?php } ?>
<?php } ?>
</div>
</div>
</a>
<?php } ?>

View File

@@ -0,0 +1,32 @@
<?php
$purchase = $variables["purchase"];
$legal = $purchase->purchase->get_prop("legal");
?>
<ul class="thank-wrapper__info thank-wrapper thank-list">
<li class="thank-list__item">
<h2 class="checkout__heading thank-list__heading">Получатель:</h2>
<p><?= $b->get_view($legal == 1 ? $purchase->purchase->get_prop("name") : $purchase->purchase->get_prop("legal_name")); ?></p>
</li>
<li class="thank-list__item">
<h2 class="checkout__heading thank-list__heading">Контактный телефон</h2>
<a href="#"><?= $b->get_view($purchase->purchase->get_prop("phone")); ?></a>
</li>
<li class="thank-list__item wide">
<h2 class="checkout__heading thank-list__heading">Адрес</h2>
<p><?= $b->get_view($purchase->purchase->get_prop("address_street")); ?></p>
</li>
<li class="thank-list__item">
<h2 class="checkout__heading thank-list__heading">Способ доставки</h2>
<p><?= $b->get_view($purchase->purchase->get_prop("shipping_method")); ?></p>
</li>
<li class="thank-list__item">
<h2 class="checkout__heading thank-list__heading">Способ оплаты</h2>
<p><?= $b->get_view($purchase->purchase->get_prop("payment_method")); ?></p>
</li>
<li class="thank-list__item">
<h2 class="checkout__heading thank-list__heading">Статус оплаты</h2>
<p><?= $b->get_view($purchase->purchase->get_prop("status")); ?></p>
</li>
</ul>

View File

@@ -0,0 +1,27 @@
<?php
$purchase = $variables["purchase"];
$purchase_info = $purchase->order_total_price();
?>
<div class="checkout-form__totals checkout-totals checkout-totals_thanks">
<div class="checkout-totals__box row align-items-center justify-content-between">
<p class="name col">Сумма товаров</p>
<span class="checkout-totals__prices col-auto row align-items-center justify-conrent-end">
<p class="product-wrapper__oldprice col-auto">
<del><?= number_format($purchase_info["regular_sum"], 2, ',', ' '); ?> ₽</del>
</p>
<p class="product-wrapper__newprice checkout-totals__newprice col-auto">
<?= number_format($purchase_info["total_sum"], 2, ',', ' '); ?> ₽
</p>
</span>
</div>
<div class="checkout-totals__box row align-items-center justify-content-between">
<p class="name col">Итоговая скидка</p>
<p class="checkout-totals__newprice col-auto">-<?= number_format($purchase_info["sale_sum"], 2, ',', ' '); ?> ₽</p>
</div>
<div class="checkout-totals__box checkout-totals__box_total row align-items-center justify-content-between">
<p class="name col">Итого</p>
<p class="checkout-totals__newprice col-auto"><?= number_format($purchase_info["final_sum"], 2, ',', ' '); ?> ₽</p>
</div>
</div>

View File

@@ -0,0 +1,30 @@
<?php
$product = $variables["product"];
$cart_count = $variables["count"];
$in_storage = $product->get_prop("product_in_stock");
?>
<div class="cart-list__item cart-item row align-items-center justify-content-between">
<div class="first row align-items-center">
<figure class="product__image">
<img src="<?= $product->get_prop_render_value("product_photo") ?>" alt="" />
</figure>
<div class="cart-item__params">
<a class="product__title" href="/product/<?= $product->get_item_slug(); ?>/"><?= $product->get_item_name(); ?></a>
<?php if($in_storage) { ?>
<p class="product__qty">На складе <?= $in_storage; ?> шт</p>
<?php } else { ?>
<p class="product__qty">Нет на складе</p>
<?php } ?>
</div>
</div>
<div class="second quantity shadow-none">
<div class="quantity__input">
<input readonly="" autocomplete="off" type="number" title="Qty" min="1" max="1000" step="1" value="<?= $cart_count; ?>"/>
</div>
</div>
<span class="third product-wrapper__prices col-auto">
<?php $this->template_load("productCart/price.php", array("price" => $product->get_prop("price"), "sale_percent" => $product->get_prop("sale_percent"), "count" => $cart_count)); ?>
</span>
</div>