Дмитрий Кондаков

Дмитрий Кондаков

Был в сети 08 мая 2026, 19:20
Заказы принимаю
Вот таким плагином при открытии страницы товара добавляю его в корзину предварительно очистив её:
<?php
switch ($modx->event->name) {
		
	case 'OnLoadWebDocument':
	  $class = $modx->resource->get('class_key');
	  $resourceId = $modx->resource->get('id');
	  
	  if ($class == 'msProduct') {
	    $miniShop2 = $modx->getService('minishop2','miniShop2',
	      MODX_CORE_PATH . 'components/minishop2/model/minishop2/', $scriptProperties);
      
      if (!($miniShop2 instanceof miniShop2)) return '';
      
      $miniShop2->initialize($modx->context->key, $scriptProperties);
      $miniShop2->cart->clean();
      $miniShop2->cart->add($resourceId);
      
	    }
	  break;
}
далее на странице самого товара вывожу форму заказа без корзины.
Вот как посоветовал Сергей:
<form>
	...
	<label for="agree">
		<input type="checkbox" name="agree" id="agree"> 
		 Даю свое согласие на обработку персональных данных</a>
	</label>
	<button type="submit" class="submit">Отправить</button>
</form>

<script>
	$(window).load(function() {
		$("button.submit").prop("disabled", true);
		$("#agree").change(function() {
		  state = $(this).prop("checked");
		  if (state) {
		    $("button.submit").prop("disabled", false).removeClass("disabled");
		  } else {
		    $("button.submit").prop("disabled", true).addClass("disabled");
		  }
		});
	});
</script>
держи
@media only screen and (max-width: 1200px) {
	.panel-group1 .panel {
	  display: flex;
	  flex-wrap: wrap;
	  background: none;
	}

	.panel-group1 .panel > div:nth-child(1) {order: 1}
	.panel-group1 .panel > div:nth-child(2) {order: 2}
	.panel-group1 .panel > div:nth-child(3) {order: 5}
	.panel-group1 .panel > div:nth-child(4) {order: 3}
	.panel-group1 .panel > div:nth-child(5) {order: 4}
	.panel-group1 .panel > div:nth-child(6) {order: 7}
	.panel-group1 .panel > div:nth-child(7) {order: 6}
	.panel-group1 .panel > div:nth-child(8) {order: 9}
	.panel-group1 .panel > div:nth-child(9) {order: 10}
	.panel-group1 .panel > div:nth-child(10) {order: 8}
	.panel-group1 .panel > div:nth-child(11) {order: 11}
	.panel-group1 .panel > div:nth-child(12) {order: 12}
	.panel-group1 .panel > div:nth-child(13) {order: 13}
	.panel-group1 .panel > div:nth-child(14) {order: 14}
	.panel-group1 .panel > div:nth-child(15) {order: 15}
	.panel-group1 .panel > div:nth-child(16) {order: 16}
}


@media only screen and (max-width: 767px) {
	.panel-group1 .panel > div:nth-child(1) {order: 1}
	.panel-group1 .panel > div:nth-child(2) {order: 3}
	.panel-group1 .panel > div:nth-child(3) {order: 5}
	.panel-group1 .panel > div:nth-child(4) {order: 2}
	.panel-group1 .panel > div:nth-child(5) {order: 4}
	.panel-group1 .panel > div:nth-child(6) {order: 6}
	.panel-group1 .panel > div:nth-child(7) {order: 7}
	.panel-group1 .panel > div:nth-child(8) {order: 9}
	.panel-group1 .panel > div:nth-child(9) {order: 11}
	.panel-group1 .panel > div:nth-child(10) {order: 8}
	.panel-group1 .panel > div:nth-child(11) {order: 10}
	.panel-group1 .panel > div:nth-child(12) {order: 12}
	.panel-group1 .panel > div:nth-child(13) {order: 13}
	.panel-group1 .panel > div:nth-child(14) {order: 15}
	.panel-group1 .panel > div:nth-child(15) {order: 14}
	.panel-group1 .panel > div:nth-child(16) {order: 16}
}