Array
(
    [id] => 70
    [type] => document
    [contentType] => text/html
    [pagetitle] => Плитка тротуарная “2 доски” 30х30х3 см
    [longtitle] => 
    [description] => 
    [alias] => duplicate-of-plitka-trotuarnaya-2-doski-30-sm
    [link_attributes] => 
    [published] => 1
    [pub_date] => 0
    [unpub_date] => 0
    [parent] => 13
    [isfolder] => 
    [introtext] => Тротуарная плитка "2 доски" имеет привлекательный нейтральный внешний вид, что дает ей возможность сочетаться со многими архитектурными и ландшафтными конструкциями. При ее устройстве создается эффект мощения доской. Узор, образуемый плиткой, похож на рисунок щитового паркета, что при сочетании разных по цвету плит позволяет создать геометрический орнамент. 
    [content] => <p>Тротуарная плитка "2 доски" имеет привлекательный нейтральный внешний вид, что дает ей возможность сочетаться со многими архитектурными и ландшафтными конструкциями. При ее устройстве создается эффект мощения доской. Узор, образуемый плиткой, похож на рисунок щитового паркета, что при сочетании разных по цвету плит позволяет создать геометрический орнамент. </p>
    [richtext] => 1
    [template] => 8
    [menuindex] => 9
    [searchable] => 1
    [cacheable] => 1
    [createdby] => 1
    [createdon] => 2019-02-13 15:31:38
    [editedby] => 24
    [editedon] => 2020-03-26 12:38:32
    [deleted] => 
    [deletedon] => 0
    [deletedby] => 0
    [publishedon] => 2019-02-13 15:31:00
    [publishedby] => 1
    [menutitle] => 
    [donthit] => 
    [privateweb] => 
    [privatemgr] => 
    [content_dispo] => 0
    [hidemenu] => 
    [class_key] => msProduct
    [context_key] => web
    [content_type] => 1
    [uri] => produktsiya/duplicate-of-plitka-trotuarnaya-2-doski-30-sm
    [uri_override] => 1
    [hide_children_in_tree] => 0
    [show_in_tree] => 0
    [properties] => 
    [article] => 
    [price] => 400
    [old_price] => 0
    [weight] => 5.5
    [image] => /assets/images/products/70/2-doski.jpg
    [thumb] => /assets/images/products/70/small/2-doski.jpg
    [vendor] => 0
    [made_in] => 
    [new] => 
    [popular] => 
    [favorite] => 
    [tags] => 
    [color] => 
    [size] => 
    [source] => 2
    [seo_title] => 
    [seo_h1] => 
    [seo_description] => 
    [is_calc] => Array
        (
            [0] => 1
        )

    [is_calc.id] => 1
    [is_calc.key] => is_calc
    [is_calc.caption] => Калькулятор
    [is_calc.description] => Если "Да", то включить калькулятор
    [is_calc.measure_unit] => 
    [is_calc.category] => 15
    [is_calc.type] => combo-boolean
    [is_calc.properties] => 
    [is_calc.product_id] => 70
    [is_calc.value] => 1
    [is_calc.category_name] => Характеристики
    [is_counter] => Array
        (
            [0] => м2
        )

    [is_counter.id] => 2
    [is_counter.key] => is_counter
    [is_counter.caption] => Единица измерения
    [is_counter.description] => 
    [is_counter.measure_unit] => 
    [is_counter.category] => 15
    [is_counter.type] => combo-options
    [is_counter.properties] => 
    [is_counter.product_id] => 70
    [is_counter.value] => м2
    [is_counter.category_name] => Характеристики
    [char_gost] => Array
        (
            [0] => Серия: ГОСТ 17608-91
        )

    [char_gost.id] => 3
    [char_gost.key] => char_gost
    [char_gost.caption] => ГОСТ
    [char_gost.description] => 
    [char_gost.measure_unit] => 
    [char_gost.category] => 15
    [char_gost.type] => textfield
    [char_gost.properties] => 
    [char_gost.product_id] => 70
    [char_gost.value] => Серия: ГОСТ 17608-91
    [char_gost.category_name] => Характеристики
    [char_arm] => Array
        (
            [0] => нет
        )

    [char_arm.id] => 4
    [char_arm.key] => char_arm
    [char_arm.caption] => Армирование
    [char_arm.description] => 
    [char_arm.measure_unit] => 
    [char_arm.category] => 15
    [char_arm.type] => combo-options
    [char_arm.properties] => 
    [char_arm.product_id] => 70
    [char_arm.value] => нет
    [char_arm.category_name] => Характеристики
    [char_class] => Array
        (
            [0] => В30
        )

    [char_class.id] => 5
    [char_class.key] => char_class
    [char_class.caption] => Класс бетона
    [char_class.description] => 
    [char_class.measure_unit] => 
    [char_class.category] => 15
    [char_class.type] => combo-options
    [char_class.properties] => 
    [char_class.product_id] => 70
    [char_class.value] => В30
    [char_class.category_name] => Характеристики
    [type_product] => Array
        (
            [0] => Плитка
        )

    [type_product.id] => 8
    [type_product.key] => type_product
    [type_product.caption] => Тип товара
    [type_product.description] => 
    [type_product.measure_unit] => 
    [type_product.category] => 15
    [type_product.type] => combobox
    [type_product.properties] => {"values":["\u041f\u043b\u0438\u0442\u043a\u0430","\u0411\u043e\u0440\u0434\u044e\u0440","\u0414\u0440\u0443\u0433\u043e\u0435"]}
    [type_product.product_id] => 70
    [type_product.value] => Плитка
    [type_product.category_name] => Характеристики
    [size_H] => Array
        (
            [0] => 3см
        )

    [size_H.id] => 9
    [size_H.key] => size_H
    [size_H.caption] => Размер В
    [size_H.description] => 
    [size_H.measure_unit] => см
    [size_H.category] => 15
    [size_H.type] => textfield
    [size_H.properties] => 
    [size_H.product_id] => 70
    [size_H.value] => 3см
    [size_H.category_name] => Характеристики
    [size_W] => Array
        (
            [0] => 30см
        )

    [size_W.id] => 10
    [size_W.key] => size_W
    [size_W.caption] => Размер Д
    [size_W.description] => 
    [size_W.measure_unit] => см
    [size_W.category] => 15
    [size_W.type] => textfield
    [size_W.properties] => 
    [size_W.product_id] => 70
    [size_W.value] => 30см
    [size_W.category_name] => Характеристики
    [size_SH] => Array
        (
            [0] => 30см
        )

    [size_SH.id] => 11
    [size_SH.key] => size_SH
    [size_SH.caption] => Размер Ш
    [size_SH.description] => 
    [size_SH.measure_unit] => см
    [size_SH.category] => 15
    [size_SH.type] => textfield
    [size_SH.properties] => 
    [size_SH.product_id] => 70
    [size_SH.value] => 30см
    [size_SH.category_name] => Характеристики
    [char_weight] => Array
        (
            [0] => 5.5
        )

    [char_weight.id] => 12
    [char_weight.key] => char_weight
    [char_weight.caption] => Вес (кг)
    [char_weight.description] => 
    [char_weight.measure_unit] => кг
    [char_weight.category] => 15
    [char_weight.type] => numberfield
    [char_weight.properties] => 
    [char_weight.product_id] => 70
    [char_weight.value] => 5.5
    [char_weight.category_name] => Характеристики
    [vendor.id] => 
    [vendor.name] => 
    [vendor.resource] => 0
    [vendor.country] => 
    [vendor.logo] => 
    [vendor.address] => 
    [vendor.phone] => 
    [vendor.fax] => 
    [vendor.email] => 
    [vendor.description] => 
    [vendor.properties] => 
    [_content] => {include 'header'}
<div id="msProduct" class="main-content">
    <div style="display: none;">
        {$_modx->resource|print}
    </div>
	<div class="row">
		<div class="col-xl-3 col-lg-4">
			{include 'sidebar'}
		</div>
		<div class="col-xl-9 col-lg-8">
			{include 'breadCrumbs'}
			<div class="content">
				<div class="sub-header">
                	<h1 class="text-center">{$_modx->resource.seo_h1?$_modx->resource.seo_h1:$_modx->resource.pagetitle}</h1>
				</div>
				<div class="content-body">
					<div class="product-primary">
						<div class="row">
							<div class="col-xl-5 col-lg-12">
								<div class="product-left">
									<div class="product-gallery">
										<div class="product-content tab-content">
										    {'!msGallery'|snippet}
										</div>
									</div>
									<!-- Форма отпраки товара в корзину -->
                                    <div id="appGetCart" class="product-left_info">
                                        {ignore}
                                        <form class="ms2_form" method="post">
                                            <input type="hidden" name="id" value="70"/>
                                            <div class="product-config text-center">
                                                <div class="product-price">
                                                    <strong>Стоимость:</strong> <span class="text-orange font-weight-bold">{{ price }}</span> руб/{/ignore}{$_modx->resource['is_counter'][0]}{ignore}
                                                </div>
                                                <div class="product-count">
                                                    <div class="label">Количество:</div>
                                                    <input id="product_price" type="number" name="count" value="1" v-model="count" class="my_count" min="0"/>
                                                    
                                                </div>
                                            </div>
                                            <div class="product-action text-center">
                                                <div class="total-price">
                                                    <strong>Всего к оплате:</strong><br/>
                                                    <span class="text-orange font-weight-bold">{{ price * count }}</span> <i class="fas fa-ruble-sign"></i>
                                                </div>
                                                <button type="submit" name="ms2_action" value="cart/add" class="btn btn-primary">
                                                    <svg width='25' height='24' class='svg-icon icon-left'><use xlink:href='assets/template/icons/icons.svg#cart_2'/></svg>
                                                    В корзину
                                                </button>
                                            </div>
                                        </form>
                                        {/ignore}
                                    </div>
                                    {ignore}
                                    <script>
                                        var app = new Vue({
                                            el: '#appGetCart',
                                            data: {
                                                count: 1,
                                                price: {/ignore}{$_modx->resource.price}{ignore}
                                            }
                                        })
                                    </script>
                                    <script>
                                        $(".my_count").on("change blur keyup focus", function(){
                                            if($(this).val()<=0) {
                                                $(this).val("1");
                                            }
                                        })
                                    </script>
                                    {/ignore}
        
									<!-- /Форма отпраки товара в корзину --> 
								</div>
							</div>
							<div class="col-xl-7 col-lg-12">
								<div class="desc">
									{$id|resource:'content'}
								</div>
								<div class="characters mt-25">
									<h3>Характеристики</h3>
								    {'msProductOptions'|snippet:[
								    'tpl' => 'tpl__product_options',
								    'ignoreOptions' => 'is_calc, type_product, is_counter',
								    'sortby' => 'menuindex'
								    ]}
									
									{*'!msProductOptions'|snippet*}
								</div>
							</div>
						</div>
					</div>
					{if ($_modx->resource.is_calc is not empty)}
					<hr class="fluid"/>
					<!-- Calculator -->
					<div id="appCalculator">
    				    <div class="product-calc mb-5">
    						<div class="title text-center">Рассчитать стоимость по площади</div>
    						<div class="row">
    						    <div class="col-xl-9 col-lg-12">
									<div class="calc-primary">
										<div class="calc-item">
											<div class="label">Ширина <br>участка, м</div>
											<input  name="width"
    										    type="number"
    										    min="0"
    										    v-model="width"
    									    	v-on:input="area = width * lenght">
											<div class="variants">
												<span>и</span>
												<i class="fas fa-chevron-down"></i>
												<span>или</span>
											</div>
										</div>
										<div class="calc-item">
											<div class="label">Длина <br>участка, м</div>
											<input  name="lenght"
    										    type="number"
    										    min="0"
    										    v-model="lenght"
    									    	v-on:input="area = width * lenght">
										</div>
										<div class="calc-item">
											<div class="label">Наименование плитки</div>
											<select v-model="selected">
    										<option v-for="option in options" :value="option">
    										    {ignore}
    										    {{ option.text }}
    										    {/ignore}
    										</option>
										</select>
										</div>
									</div>
									<div class="calc-secondary">
										<div class="calc-item">
											<div class="label">Площадь участка, м2</div>
											<input  name="area"
    										    type="number"
    										    min="0"
    										    v-model="area">
										</div>
										<div class="calc-item d-block d-md-none">
											<div class="label">Наименование плитки</div>
											<select name="" id="">
												<option value="Паутинка 300х300х30">Паутинка 300х300х30</option>
												<option value="Паутинка 300х300х30">Паутинка 400х300х30</option>
											</select>
										</div>
										<div class="calc-item">
											<div class="label">Вид бордюра</div>
											<select v-model="selected2">
											<option v-for="option2 in options2" :value="option2">
    											{ignore}
    										    {{ option2.text }}
    										    {/ignore}
										    </option>
										</select>
										</div>
									</div>
								</div>
    						    <div class="col-xl-3 col-lg-12">
    						        <div class="calc-item">
        						        <div class="label text-center">Бордюры</div>
    										<div class="border-config">
    										    <!-- Checkbox top -->
    											<input  type="checkbox" 
    											        class="border-checkbox" 
    											        data-pos="b-top" 
    											        name="top" 
    											        v-model="top"
    											        true-value="1"
                                                        false-value="0">
    											<div class="border-block">
    											    <!-- Checkbox left -->
    												<input  type="checkbox" 
    												        class="border-checkbox"
    												        data-pos="b-left"
    												        name="left"
    												        v-model="left"
    												        true-value="1"
                                                            false-value="0">
    												<div class="element-border">
    													<svg width='100%' height='100%' class='svg-icon'>
    														<use xlink:href='assets/template/icons/icons.svg#border'/>
    													</svg>
    													<div class="b-left"></div>
    													<div class="b-top"></div>
    													<div class="b-bottom"></div>
    													<div class="b-right"></div>
    												</div>
    												<!-- Checkbox right -->
    												<input type="checkbox"
    												        class="border-checkbox"
    												        data-pos="b-right"
    												        name="right"
    												        v-model="right"
    												        true-value="1"
                                                            false-value="0">
    											</div>
    											<!-- Checkbox bottom -->
    											<input  type="checkbox" 
    											        class="border-checkbox"
    											        data-pos="b-bottom"
    											        name="bottom"
    											        v-model="bottom"
    											        true-value="1"
                                                        false-value="0">
    										</div>
    									</div>
    						    </div>
    						</div>
    					</div>
    					<!-- /Calculator -->
    					<!-- Calculator Info -->
    				    <div class="product-total">
    						<div class="row">
    							<div class="col-xl-5 col-md-6">
    								<div class="element">
    									<div class="element-body">
    										<div class="title text-center">
    											<h3>Итог расчета</h3>
    										</div>
    										<ul>
    										    {ignore}
    										    <li v-if="width != 0"><strong>Ширина участка:</strong> {{ width }} метров</li>
    											<li v-if="lenght != 0"><strong>Длина участка:</strong> {{ lenght }} метров</li>
    											<li><strong>Площадь мощения:</strong> {{ area }} м2</li>
    											<li><strong>Плитка:</strong> {{ selected.text }}</li>
    											<li><strong>Цена плитки:</strong> {{ selected.price }} руб/м2</li>
    											
    											<li><strong>Бордюр:</strong> {{ selected2.text }}</li>
    											<li><strong>Цена бордюра:</strong> {{ selected2.price }} руб/шт</li>
    											{/ignore}
    										</ul>
    									</div>
    									{*
    									<div class="element-button">
    										<a href="/" class="btn btn-secondary d-block">Рассчитать</a>
    									</div>
    									*}
    								</div>
    							</div>
    							<div class="col-xl-7 col-md-6">
    								<div class="element fix">
    								    {ignore}
    									<div class="element-body">
    										<div class="element-primary">
    											<div class="title text-center">
    												<h3>Итог общего расчета</h3>
    											</div>
    											<div class="total-body">
    												<div class="total-item">
    													<strong>Расчетное количество плитки: {{ area }} м2</strong><br/>
    													<strong>Стоимость:</strong> <span><span class="text-orange font-weight-bold">{{ getCost }}</span> руб.</span>
    												</div>
    												<div class="total-item">
    													<strong v-if="getCountBorder != Infinity">Расчетное количество бордюров: {{ getCountBorder }} шт</strong>
    													<strong v-else style="color: red;">Извините! Модератор допустил ошибку в настройках, мы исправим это быстрее, если вы сообщите нам.</strong><br/>
    													<strong>Стоимость:</strong> <span><span class="text-orange font-weight-bold">{{ getCostBorder }}</span> руб.</span>
    												</div>
    											</div>
    										</div>
    										<div class="total-summ text-center">
    											<strong>Итог:</strong> <span class="text-orange font-weight-bold">{{ getTotalCost }}</span> руб.
    										</div>
    									</div>
    									{/ignore}
    									{*
    									<div class="element-button">
    										<a href="/" class="btn btn-primary d-block">В корзину</a>
    									</div>
    									*}
    								</div>
    							</div>
    						</div>
    					</div>
					</div>
					<!--Список для Плиток-->
					{'!msProducts'|snippet:[
                        'parents'=>'2',
                        'optionFilters'=>'{"type_product":"Плитка"}',
                        'tpl'=>'tpl_calc_option_item',
                        'toPlaceholder'=>'list_option_plitka',
                        'limit' => '100'
                    ]}
                    <!-- Список для бордюров -->
                    {'!msProducts'|snippet:[
                        'parents'=>'2',
                        'optionFilters'=>'{"type_product":"Бордюр"}',
                        'tpl'=>'tpl_calc_option_item2',
                        'toPlaceholder'=>'list_option_border',
                        'limit' => '100'
                    ]}
					{*ignore*}
					<script>
                        var calculator = new Vue({
                            el: '#appCalculator',
                            data() {
                                return {
                                    item: '',
                                    text1: 'Площадь: ',
                                    text2: 'Колличество: ',
                                    width: 0,
                                    lenght: 0,
                                    area: 0,
                                    count: 0,
                                    cost: 0,
                                    
                                    top: 0,
                                    left: 0,
                                    right: 0,
                                    bottom: 0,
                                    perimeter: 0,
                                    
                                    selected: { },
                                    options: [
                                        [[+list_option_plitka]]
                                    ],
                                    selected2: { },
                                    options2: [
                                        [[+list_option_border]]
                                    ]
                                    
                                }
                            },
                            computed: {
                                getName1() {
                                    return this.selected.text;
                                },
                                getArea() {
                                    return this.width * this.lenght  || 0;
                                },
                                getCost() {
                                    return this.area / this.selected.area * this.selected.price || 0;
                                },
                                getPerimeter(){
                                    if (this.area != 0){
                                        this.perimeter = Number(this.top);
                                        this.perimeter += Number(this.left);
                                        this.perimeter += Number(this.right);
                                        this.perimeter += Number(this.bottom);

                                        return Math.ceil(Math.sqrt(this.area)  * this.perimeter);
                                    }
                                    else return 0;
                                },
                                getCountBorder(){
                                    return this.getPerimeter / this.selected2.size || 0;
                                },
                                getCostBorder(){
                                    return this.getCountBorder * this.selected2.price || 0;
                                },
                                getTotalCost(){
                                    return this.getCost + this.getCostBorder;
                                }
                            },
                            created() {
                                this.selected = this.options[0];
                                this.selected2 = this.options2[0];
                            }
                        });
					</script>
					{*/ignore*}
					<!-- /Calculator Info-->
					{/if}
				</div>
			</div>
		</div>
	</div>
</div>
{include 'footer'}
    [_isForward] => 
)

Плитка тротуарная “2 доски” 30х30х3 см

Стоимость: {{ price }} руб/м2
Количество:
Всего к оплате:
{{ price * count }}

Тротуарная плитка "2 доски" имеет привлекательный нейтральный внешний вид, что дает ей возможность сочетаться со многими архитектурными и ландшафтными конструкциями. При ее устройстве создается эффект мощения доской. Узор, образуемый плиткой, похож на рисунок щитового паркета, что при сочетании разных по цвету плит позволяет создать геометрический орнамент. 

Характеристики

Вес (кг):
5.5
ГОСТ:
Серия: ГОСТ 17608-91
Армирование:
нет
Класс бетона:
В30
Размер В:
3см
Размер Д:
30см
Размер Ш:
30см

Рассчитать стоимость по площади
Ширина
участка, м
и или
Длина
участка, м
Наименование плитки
Площадь участка, м2
Наименование плитки
Вид бордюра
Бордюры

Итог расчета

  • Ширина участка: {{ width }} метров
  • Длина участка: {{ lenght }} метров
  • Площадь мощения: {{ area }} м2
  • Плитка: {{ selected.text }}
  • Цена плитки: {{ selected.price }} руб/м2
  • Бордюр: {{ selected2.text }}
  • Цена бордюра: {{ selected2.price }} руб/шт

Итог общего расчета

Расчетное количество плитки: {{ area }} м2
Стоимость: {{ getCost }} руб.
Расчетное количество бордюров: {{ getCountBorder }} шт Извините! Модератор допустил ошибку в настройках, мы исправим это быстрее, если вы сообщите нам.
Стоимость: {{ getCostBorder }} руб.
Итог: {{ getTotalCost }} руб.