Сергей Карпович

Сергей Карпович

С нами с 29 декабря 2020; Место в рейтинге пользователей: #316
Сергей Карпович
27 января 2021, 17:45
0
Кажется заметил проблему:
там где работает правильно group содержит только цифры, например 36550,
а там где вываливается весь каталог, group содержит и цифры и буквы: Z2416

На стринице товара с group = Z2416 в логе, вобще не содержится Options.key и Options.value.
Видимо поэтому и сыпется весь каталог.

получается { «Options.key»:«group»,«Options.value:=»: '~$_modx->resource.group.0~'} — выводит только числовое значение, текстовое уже не переваривает
Сергей Карпович
27 января 2021, 17:20
0
Нет, не пустая. Вобще у каждого товара group проставлена, пустых нет
Сергей Карпович
27 января 2021, 16:19
0
У меня тоже minishop2-2.7.0-pl и pdotools-2.12.9-pl.
Но выводит каталог, если пусто.
Вот лог, где должно быть пусто:
0.0000510: pdoTools loaded. 0.0000970: Conditions prepared 0.0000150: xPDO query object created 0.0000792: innerJoined msProductOption as Options 0.0000639: leftJoined msProductData as Data 0.0000460: leftJoined msVendor as Vendor 0.0000579: leftJoined msProductFile as small 0.0000019: Grouped by msProduct.id, `small`.url 0.0000231: Added selection of msProduct: `id`, `type`, `contentType`, `pagetitle`, `longtitle`, `description`, `alias`, `alias_visible`, `link_attributes`, `published`, `pub_date`, `unpub_date`, `parent`, `isfolder`, `introtext`, `richtext`, `template`, `menuindex`, `searchable`, `cacheable`, `createdby`, `createdon`, `editedby`, `editedon`, `deleted`, `deletedon`, `deletedby`, `publishedon`, `publishedby`, `menutitle`, `donthit`, `privateweb`, `privatemgr`, `content_dispo`, `hidemenu`, `class_key`, `context_key`, `content_type`, `uri`, `uri_override`, `hide_children_in_tree`, `show_in_tree`, `properties` 0.0000100: Added selection of msProductData: `article`, `price`, `old_price`, `weight`, `image`, `thumb`, `vendor`, `made_in`, `new`, `popular`, `favorite`, `tags`, `color`, `size`, `source` 0.0000091: Added selection of msVendor: `name` AS `vendor.name`, `resource` AS `vendor.resource`, `country` AS `vendor.country`, `logo` AS `vendor.logo`, `address` AS `vendor.address`, `phone` AS `vendor.phone`, `fax` AS `vendor.fax`, `email` AS `vendor.email`, `description` AS `vendor.description`, `properties` AS `vendor.properties` 0.0000041: Added selection of msProductFile: url as `small` 0.0292971: Processed additional conditions 0.0309110: Added where condition: class_key=msProduct, msProduct.id:NOT IN(1261), msProduct.parent:IN(35,36,1002,1019,1033,1050,1058,1068,1072,1081,1099,1105,1109,1120,1151,1156,1179,37,539,723,973,986,987,988,989,990,991,992,993,994,995,996,997,998,999,1000,1001,38,39,40,41,42,43,44,45,46,47,48,49,50,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,7596,7596,7596,7596,7598,7599,7600,7601,7602,7602,7603,7603,7603,7603,7603,7621,7623,7623,7624,7624,7628,7629,7629,7630,7630,7634,7634,7635,7635,7636,7636,7657,7658,7675,7676,7677,7678,7679,7680,7681,7682,7683,7684,7694,7698,7698,7698,7698,7699,7699,7699,7699,7699,7704,7705,7706,7707,7708,7712,7714,7715,7716,7718,7718,7718,7718,7718,7718,7718,7758,7758,7759,7768,7794,7795,7796,7797,7798,7804,7806,7806,7807,7826,7826,7827,7863,7864,7872,7876,7877,7888,7889,7889,7898,7899,7926,7927,7927,7927,7934,7934,7935,7935,7951,7963,7966,7967,7968,7969,7982,7983,7984,7986,7987,7988,7989,7990,7993,8001,8002,8026,8026,8027,8027,8028,8028,8030,8032,8033,8034,8035,8035,8039,8040,8042,8042,8043,8043,8044,8168,8169,8224,8224,8225,8229,8230,8250,8250,8250,8250,8250,8251,8251,8251,8251,8251,8251,8251,8257,8261,8262,8263,8267,8272,8287,8287,8288,8288,8288,8289,8289,8289,8290,8290,8290,8292,8293,8293,8294,8295,8296,8297,8298,8299,8300,8301,8302,8303,8304,8305,8316,8317,8318,8318,8319,8320,8320,8321,8321,8322,8322,8323,8323,8324,8324,8325,8325,8326,8326,8327,8327,8333,8334,8335,8336,8337,8338,8339,8340,8349,8349,8350,8351,8352,8353,8354,8355,8399,8408,8416,8503,8504,8505,8506,8507,8507,8526,8526,8527,8528,8528,8538,8541,8542,8543,8543,8544,8545,8546,8549,8550,8552,8553,8554,8554,8555,8555,8556,8556,8557,8558,8559,8559,8561,8562,8563,8564,8565,8567,8585,8587,8587,8589,8589,8590,8594,8609,8610,8655,8661,8662,8663,8664,8665,8666,8668,8669,8681,8682,8683,8684,8685,8686,8687,8688,8689,8690,8692,8708,8708,8712,8714,8748,8762,8778,8800,8801,8802,8803,8804,8806,8807,8808,8809,8810,8811,8812,8813,8814,8815,8816,8818,8824,8825,8831,8832,8833,8834,8835,8842,8842,8847,8848,8851,8851,8852,8852,8853,8853,8854,8855,8856,8857,8858,8859,8860,8860,8861,8861,8864,8865,8866,8867,8868,8869,8870,8871,8872,8873,8874,8875,8876,8877,8878,8879,8880,8881,8882,8883,8884,8885,8886,8887,8888,8889,8890,8891,8892,8893,8894,8895,8896,8897,8898,8899,8900,8901,8902,8903,8904,8905,8906,8907,8908,8909,8910,8911,8912,8915,8916,8929,8931,8932,8933,8934,8935,8936,8937,8937,8940,8941,8942,8943,8943,8944,8944,8945,8945,8946,8946,8947,8947,8948,8948,8949,8950,8951,8967,8969,8974,8976,8980,8987,8988,8989,8990,8991,8991,8992,8992,8993,8994,8995,8995,8996,9004,9005,9006,9007,9008,9009,9013,9017,9018,9029,9030,9030,9031,9032,9033,9034,9035,9036,9038,9041,9043,9051,9053,9054,9055,9063,9064,9065,9066,9067,9068,9069,9070,9071,9072,9073,9075,9076,9077,9078,9079,9080,9080,9080,9080,9080,9089,9089,9089,9090,9091,9092,9093,9094,9095,9096,9097,9098,9099,9101,9102,9103,9104,9105,9106,9107,9108,9110,9111,9123,9130,9142,9142,9143,9143,9144,9144,9145,9145,9146,9146,9151,9152,9153,9159,9159,9160,9165,9165,9165,9166,9166,9167,9168,9181,9181,9182,9182,9183,9183,9184,9184,9185,9191,9191,9192,9192,9193,9193,9198,9199,9200,9204,9204,9204,9213,9213,9213,9213,9216,9219,9219,9222,9223,9224,9225,9232,9232,9232,9233,9234,9240,9241,9263,9264,9272,9293,9294,9295,9296,9297,9298,9299,9300,9301,9302,9303,9304,9305,9306,9307,9308,9309,9310,9311,9312,9313,9313,9314,9314,9315,9315,9316,9316,9317,9317,9317,9318,9319,9319,9320,9320,9321,9322,9322,9323,9323,9329,9329,9330,9331,9331,9332,9338,9339,9340,9341,9342,9343,9344,9345,9346,9347,9348,9349,9352,9356,9357,9358,9359,9360,9361,9398,9424,9425,9425,9436,9448,9449,9450,9451,9452,9453,9453,9458,9472,9473,9474,9485,9486,9486,9487,9487,9488,9489,9490,9491,9491,9493,9494,9495,9496,9496,9498,9502,9502,9502,9503,9504,9505,9506,9507,9508,9512,9512,9521,9522,9523,9524,9525,9526,9527,9528,9530,9530,9531,9532,9533,9534,9536,9537,9538,9540,9541,9542,9543,9544,9545,9545,9545,9546,9546,9546,9547,9547,9547,9548,9549,9550,9560,9561,9562,9563,9564,9565,9566,9567,9568,9569,9573,9573,9577,9578,9609,9610,9611,9618,9618,9620,9620,9621,9621,9622,9622,9623,9623,9624,9625,9626,9627,9628,9629,9630,9634,9635,9635,9636,9637,9637,9637,9637,9638,9639,9646,9647,9648,9649,9650,9651,9652,9656,9665,9666,9667,9681,9682,9683,9684,9685,9686,9686,9687,9687,9688,9688,9689,9689,9690,9690,9691,9692,9693,9694,9695,9696,9697,9698,9699,9700,9702,9703,9727,9728,9743,9744,9754,9755,9756,9759,9760,9761,9761,9787,9788,9789,9790,9801,9802,9803,9804,9805,9806,9807,9808,9809,9828,9828,9829,9829,9830,9830,9831,9831,9832,9844,9845,9846,9849,9849,9849,9851,9851,9852,9852,9853,9854,9854,9855,9855,9856,9856,9857,9857,9858,9858,9859,9859,9860,9860,9861,9861,9862,9862,9863,9863,9864,9865,9866,9867,9868,9868,9869,9869,9870,9870,9871,9871,9872,9872,9873,9873,9874,9874,9875,9875,9876,9876,9877,9877,9878,9878,9879,9879,9880,9880,9881,9881,9882,9882,9883,9883,9884,9884,9885,9885,9886,9886,9887,9887,9888,9888,9889,9889,9890,9890,9891,9891,9892,9892,9893,9893,9894,9894,9895,9895,9896,9896,9897,9897,9898,9898,9899,9899,9900,9900,9901,9901,9902,9902,9903,9903,9904,9905,9906,9907,9908,9908,9909,9909,9910,9910,9911,9911,9912,9912,9913,9913,9914,9914,9915,9915,9916,9916,9917,9917,9918,9918,9919,9919,9920,9920,9921,9921,9922,9922,9923,9935,9949,9952,9955,9963,9963,9963,9964,9964,9964,9965,9965,9966,9966,9967,9967,9968,9968,9969,9969,9970,9970,9971,9971,9978,9979,9987,9989,9990,9991,10028,10029,10030,10031,10032,10033,10034,10035,10036,10039,10040,10157,10158,10159,10215,10215,10217,10218,10219,10227,10227,10228,10228,10229,10233,10237,10246,10265,10266,10279,10296,10297,10297,10302,10303,10304,10305,10306,10307,10308,10308,10310,10322,10322,10322,10322,10324,10326,10331,10332,10333,10338,10339,10350,10354,10358,10359,10360,10361,10362,10363,10364,10364,10365,10366,10371) ) AND `msProduct`.`published` = 1 AND `msProduct`.`deleted` = 0 ) GROUP BY msProduct.id, `small`.url ORDER BY msProduct.id ASC LIMIT 10 " 5.0496991: SQL executed 0.0000789: Rows fetched 0.0001650: Returning raw data 0.0003860: Checked the active modifiers 0.0024819: Loaded "modChunk" with name "tpl-shop-item-small" 0.0022821: Compiled Fenom chunk with name "modchunk/73" 0.0069017: Time to load products options 5.0999141: Total time 12 582 912: Memory usage
Обновление на minishop2 2.8.0-pl не помогло
Сергей Карпович
27 января 2021, 16:03
0
Нашел конструкцию:
[[!msProducts:default=`
выводим по умолчанию ,если пусто
`?
тут параметры
`
]]
Осталось научиться в fonom это изобразить
Сергей Карпович
27 января 2021, 15:56
0
Не сработало.
Нюанс такой, что group всегда заполнен Т.е. на пустоту мы не можем group проверять.
И вот проблема возникает, если этот group только у текущего товара и больше ни у кого, сниппету нечего вывести и он выводит каталог с начала.
{'!msProducts' | snippet : [
	'resources' => -$_modx->resource.id,
	'tplWrapper'=>'@INLINE <div class="group-item"><h2 class="title-3">Другие цвета:</h2>[[+output]]</div>'
	'parents' => 35,
	'limit' => 10,
	'includeThumbs'=>'small',
	'tpl' => 'tpl-shop-item-small',
	'innerJoin' => '{ "Options":{ "class":"msProductOption"}}',
	'groupby' => 'msProduct.id',
	'where' => '{ "Options.key":"group","Options.value:=": '~$_modx->resource.group.0~'}'
]}
Я где встречал, парамерт, который выводит пустоту если в выборку ничего не попало, но не могу вспомнить где =)
Сергей Карпович
27 января 2021, 14:45
0
Столкнулся с такой ситуацией: если в выборку попадает 0 товаров, то выводится все подряд, а как бы сделать, что бы блок не выводится, если в выборке ничего нет?
Сергей Карпович
27 января 2021, 11:34
0
Да, так работает, спасибо
Сергей Карпович
27 января 2021, 10:31
0
Получилось сделать так:
{$_modx->runSnippet('!msProducts', [
               'parents'=>0,
                'limit'=>10,
                'tpl'=>'tpl-shop-item-small',
                'optionFilters' => ' { "group:=":[[+group.value]] }' 
])}
Но почему {$_modx->resource.group.0} — не работает внутри параметра optionFilters?
Сергей Карпович
27 января 2021, 09:38
0
Подскажите как, в вывод товаров подставить значение опции текущего товара.
Сниппет вывожу на странице товара.
Сергей Карпович
26 января 2021, 23:10
0
Через fenom получилось вывести нужные товары:
{$_modx->runSnippet('!msProducts', [
    'parents'=>0,
    'limit'=>10,
    'tpl'=>'tpl-shop-item',
    'optionFilters' => ' { "group:=":11111 }' 
])}
Пытаюсь вывести вместо 11111 подставить значение опции «group» текущего товара: {$_modx->resource.group.0}
Но выборка пропадает.
Подскажите как правильно прописать вывод значения опции в optionFilters.
Сам по себе {$_modx->resource.group.0} — работает
Сергей Карпович
26 января 2021, 22:44
0
У меня задача похожая. У товара есть заполненная опция «group». Мне нужно на странице товара вывести блок с товарами у которых group совпадает с текущим товаром.
Пробую:
[[!pdoPage?
    &element=`msProducts`
    &includeThumbs=`small`
    &parents=`0`
    &depth=`10`
    &limit=`0`
    &tpl=`tpl-shop-item`
    &limit=`10`
    &optionFilters=`{"group:LIKE":"36842"}`
    &showLog=`1`
]]
То это превращает мою страницу в белый экран. Подскажите как правильно прописать optionFilters
Сергей Карпович
26 января 2021, 17:32
1
0
Кто ни будь делал вывод похожих товаров по значению опции в минишопе?
Сергей Карпович
25 января 2021, 14:59
0
Блин, какой же я слепой, у меня очепятка была в названии TV поля
[[getImageList?
                &tvname=`deviz`
                &tpl=`@CODE:[[+image]]
[[+text]]`
]]
Действительно, все работает
Сергей Карпович
23 января 2021, 10:53
0
Добавил проверку на группу:
$modx->user->isMember('Administrator')
Все заработало, как и хотел
Сергей Карпович
23 января 2021, 10:45
0
В сниппете msGetOrder, за показ информации отвечает вот эта конструкция:
$canView = (!empty($_SESSION['minishop2']['orders']) && in_array($id, $_SESSION['minishop2']['orders'])) ||
    $order->get('user_id') == $modx->user->id || $modx->user->hasSessionContext('mgr') || !empty($scriptProperties['id']);
if (!$canView) {
    return '';
}
Тут, как я понимаю, идет проверка, если ID сессии совпадает с ID пользователя оформившего заказ — показываем,
Также показываем если пользователь авторизован в адмике.

Осталось понять как добавить сюда, если пользователь в группе Администраторы
Сергей Карпович
23 января 2021, 10:40
0
Показывает успешно оформленный заказ после оформления заказа
Сергей Карпович
23 января 2021, 10:31
0
Не то, это мы просто показываем доступ запрещен, если не админ.
А нужно иметь возможность админу смотреть заказы других пользователей, переходя по ссылке
Сергей Карпович
22 января 2021, 10:29
0
Спасибо, нашел
Сергей Карпович
22 января 2021, 09:56
0
Кстати для этого сайта я использовал пакет Boilerplate, возможно в нем где то тоже реализован этот запрет, буду искать