Василий Наумкин

Василий Наумкин

С нами с 08 декабря 2012; Место в рейтинге пользователей: #1
Василий Наумкин
28 января 2013, 06:14
0
Спасибо за совет. Если ты прочитаешь что-то про mFilter, то обнаружишь там параметр resources, который позволяет указать список страниц для фильтрации без поиска.

Вторая версия будет выпущена, как только я сочту её готовой для тестирования.
Василий Наумкин
28 января 2013, 04:03
0
Вот в этой функции нужно добавить получение и отправку num.

Например:
$('.addToCartLink').live('click', function(e) {
	var gid = $(this).data('gid');
	var num = $(this).data('num'); // Получение кол-ва из параметра data-num. Нужно заменить под твою ситуацию
	var params = {};
	$('.params').each(function(id, param) {
		params[param.name] = param.value;			
	});

	$.post(url, {action: 'addToCart', gid: gid, num: num, data: params}, function(data) {
		data = $.parseJSON(data);
		showResponse(data);
		cartStatus(data);
	})

	e.preventDefault()
})
Василий Наумкин
28 января 2013, 03:59
0
Обёртыванием я называю создание сниппета, который будет готовить параметры для другого сниппета, и возвращать его вызов.

Этот пример я как раз и дал в конце комментария. Но тебе, видимо, надо выставить плейсхолдер на странице — это еще проще.

Создай сниппет mySnippet, и напиши там:
if (!empty($_GET)) {
	$modx->setPlaceholders($_GET, 'pl.');
}

Если ты перейдешь на страницу с вызовом этого сниппета по ссылке
<a href="[[~15]]?tv1=[[*tv1]]&tv2=[[*tv2]]">форма</a>

То на ней будут выставлены плейсхолдеры [[+pl.tv1]] и [[+pl.tv2]], которые ты можешь указать в своей форме расчёта.

Префикс pl. указан для того, чтобы нельзя было через этот сниппет изменить другие важные плеёсхолдеры.

Вот тут документация по modX::setPlaceholders().
Василий Наумкин
28 января 2013, 03:46
0
Думаю, надо сделать как вот тут показано, и на GNU/Linux.

На windows я не знаю, как это делать.
Василий Наумкин
27 января 2013, 16:46
0
Нужно прислать параметр num с количеством товара.

bezumkin.ru/modx/minishop/manuals/add2cart.html
Василий Наумкин
27 января 2013, 16:14
0
Если всё понятно и нет проблем — зачем задавать вопрос?
Василий Наумкин
27 января 2013, 15:29
0
Без изменения исходника импорта — нет, невозможно.
Василий Наумкин
27 января 2013, 14:35
0
[[!getPage?
	&element=`msGetResources`
	&parents=`10,12`
	&tpl=`tpl.msGoods.row`
	&limit=`15`
	&sortbyMS=`price`
	&sortdir=`ASC`
]]

<div class="pagination">
	<ul>[[!+page.nav]]</ul>
</div>

parents — это id нужных категорий, через запятую.
Лимит, сортировка и направление сортировки, думаю, и так понятно.
Василий Наумкин
26 января 2013, 14:09
0
Что мешает засунуть нужные тебе данные в $_SESSION['mydata']?
Василий Наумкин
26 января 2013, 14:03
0
Зачем передавать информацию через плейсхолдеры, когда есть $_SESSION?
Василий Наумкин
26 января 2013, 09:00
0
По идее, они все вместе находятся в this и ты можешь сделать
console.log(this)
чтобы увидеть его. В консоли хрома можно будет погулять по этому объекту и найти те элементы, к которым ты хочешь обратиться.

Будет что-то типа
obj = this.items.elements[1];
obj.hide();

Но не уверен, я в ExtJS новичок.
Василий Наумкин
26 января 2013, 08:53
0
Думаю, нужно еще и чтобы процессор get выдавал в это поле не строку а массив в таком формате:
array(
	array('tag' => 'value1')
	array('tag' => 'value2'),
	array('tag' => 'value3'),
);

Если что-то не получится, смотри внимательно, какие данные приходят в config.record.tags.
Василий Наумкин
26 января 2013, 08:11
0
Самый простой способ — ссылка с параметрами:
<a href="[[~15]]?tv1=[[*tv1]]&tv2=[[*tv2]]">форма</a>
tv1 и tv2 надо поменять на реальные параметры FormIt, в которые требуется подставить значение ТВ.

А на странице с FormIt обернуть его вызов в сниппет FormItWrapper:
$params = array_merge($_GET, $scriptProperties);
return $modx->runSnippet('FormIt', $params);
Василий Наумкин
25 января 2013, 11:25
0
Я тоже за вторую таблицу.

Выбирать потом проще одним запросом через leftJoin. Используй pdoTools и кеширование не понадобится.
Василий Наумкин
25 января 2013, 11:21
0
Тебе поможет простейший фильтр:

$tmp = explode('/', $input);
return end($tmp);
Василий Наумкин
25 января 2013, 05:24
0
Версия точно последняя? Проверяешь, надеюсь, не будучи авторизованным в админке под суперюзером?

Вот исходник редиректа с закрытого тикета, там всё довольно просто, ошибки нет.
Василий Наумкин
25 января 2013, 05:20
0
Так ничего не выйдет.

Нужно принимать отправляемые поля в плагине и размещать в заранее созданные ТВ, которые потом выводить на странице тикета.

Так как тикет является расширенным ресурсом, то события у него соответствующие — OnBeforeDocFormSave и OnDocFormSave.