Всего 122 791 комментарий

Евгений Пашков
05 июля 2013, 10:28
0
Спасибо Василий, все получилось!
Пойду разбираться теперь с типами событий и их раскраской :)
Василий Наумкин
05 июля 2013, 06:23
0
Ты принципиально не хочешь сам разбираться?

$res = getCollection('modResource', array('parent' => $parent));
Виталий Киреев
05 июля 2013, 06:16
0
msProduct и msCategory наследуются от modResource, так что достаточно $modx->getIterator('modResource', array('parent'=>$parent)); В вашем случае еще лучше использовать getIterator()
Peter Zenin
05 июля 2013, 00:51
0
Вот так сделал. Но интересно есть такое решение на xpdo.

$sql = "SELECT * FROM {$this->modx->getTableName('modResource')} WHERE `parent` = {$parent}";
        $q = $this->modx->prepare($sql);
        $q->execute();
        $res = $q->fetchAll(PDO::FETCH_ASSOC);
        foreach ($res as $v) {
            $aliasExist = $v['alias'];
        }
Василий Наумкин
04 июля 2013, 19:56
0
А не проще ли указывать дату для вывода в ТВ, и выводить по этому параметру?

Смотри &date_source у сниппета.
Наумов Алексей
04 июля 2013, 14:41
0
Спасибо!

В целом я уже решил вопрос. Я отнаследовался от msOrderHandler, скопировал в мой класс метод submit, убрал в нем из обязательных полей email, и перенес модернизированную функцию getCustomerId в него же.

НУ а магазины бывают разные, товары специфические. У меня например 1 пользователь с вероятностью 99,99% совершит только 1 покупку.
Василий Наумкин
04 июля 2013, 12:20
0
Дополнительные свойства товаров хранятся в разных таблицах.

Нужно переложить данные из таблицы MS1 в MS2. Если немного соображаешь в php, можно использовать готовые консольные скрипты для этого.
Василий Наумкин
04 июля 2013, 11:06
0
И сразу второй вариант: генерируй случайный email и вставляй в заказ плагином при его создании. Каждый раз будет новый юзер.

Ну и учти, что сегодня-завтра выйдет личный кабинет для покупателей MS2 — там тоже все через email. Можно будет установить на любой существующий магазин, и любой покупатель сможет войти и посмотреть свои старые заказы.

Юзеры со случайными email такой возможности иметь не будут.
Peter Zenin
04 июля 2013, 06:36
0
Обычно делают без крона так — при открытии сайта (или чего-то что часто запускают) выполняется скрипт — смотрит в БД или в временном файле метку времени, сравнивает с текущей — если разница больше N часов, то выполняет нужный скрипт и перезаписывает метку времени на текущую.

Если времени прошло меньше — то не выполняет.
Александр Котлов
04 июля 2013, 01:56
0
Я первым делом сам собрался написать плагин, который вешается на открытие страницы в web и смотрит, сколько времени прошло, что впринципе тоже самое но без картинок, но решил что может что-то более изящное есть.
Алексей Карташов
03 июля 2013, 23:14
0
Ну это да, понятно) Просто мало ли, может из коробки это уже есть.
Спасибо большое!
Евгений Дурягин
03 июля 2013, 20:38
0
Насколько понял тут предлагается размещать на сайте картинку, которая указывает на специальный PHP скрипт.
А он уже сверяется со временем запуска скриптов и запускает их
Если это так, то не рекомендую так делать.
1. У посетителей будет лишняя картинка, которая может грузится очень долго, если операция долгая
2. Непрогнозируемое время запуска. Бэкапы должны запускаться ночью, а вдруг ночью никто на сайт не зашел?
Евгений Дурягин
03 июля 2013, 20:16
0
У setcronjob тоже есть бесплатный тариф.
Да и совсем не то. Мониторинг сервера и сервис крона все-таки разные вещи. Можно конечно приспособить мониторинг под крон (если вообще в мониторинге есть возможность указать произвольный URL, а не просто сайт) и и то получиться скорей всего только на платном тарифе, т.к. на бесплатном отправляется HEAD, но специальный сервис для крона гибче, даже на бесплатном тарифе.
Василий Наумкин
03 июля 2013, 20:14
0
Напиши про него на info@simpledream.ru и там решите всё.
Алексей
03 июля 2013, 19:33
0
www.phpjobscheduler.co.uk/ — достойное решение.
цепляй на index.php
Abu
Abu
03 июля 2013, 19:30
0
Ради эксперимента указал в поле site_name — адрес электронной почты (emailsender )- заработало, но это не то.
Василий Наумкин
03 июля 2013, 16:56
1
0
Просто выводи в атрибуте ссылку на товар.

А потом простой скрипт, типа:
$(document).on('change', '#product_color', function() {
	var val = $(this).val();
	var href = $(this).find('[value="' + val + '"]').data('href');
	document.location.href = href;
});