Всего 122 745 комментариев

Роман Наумов
08 ноября 2013, 21:25
0
Спасибо огромное, заработало!
marked
08 ноября 2013, 20:30
1
0
C задачей справился и, как здесь принято, решил поделиться наработкой из плагина.

Userful:
// Если событие - "msOnChangeOrderStatus"
case 'msOnChangeOrderStatus':

    // Если статус - "Отправлен"
    if ($status == 3) {

        // Настройка
        $modx->getService('error','error.modError');
        $modx->getService('mail', 'mail.modPHPMailer');
        
        // Лог ведется в "Отчёты" > "Журнал ошибок"
        $modx->setLogLevel(modX::LOG_LEVEL_INFO);
        $modx->setLogTarget('FILE');

        // Переменные
        $id = $order->get('id');
        $products = $order->getMany('Products');

        // Информация о заказе
        $modx->log(modX::LOG_LEVEL_INFO, '==============================');
        $modx->log(modX::LOG_LEVEL_INFO, '            Заказ #' . $id);
        $modx->log(modX::LOG_LEVEL_INFO, '==============================');

        // Вывод списка покупок из заказа
        foreach ($products as $item) {

            // Переменные
            $product = $item->getOne('Product');
            $count = $item->get('count');

            // Информация о товаре
            $modx->log(modX::LOG_LEVEL_INFO, 'Товар: "' . $product->get('pagetitle') . '" (#' . $product->get('id') . ')');
            $modx->log(modX::LOG_LEVEL_INFO, 'Цена: ' . $product->get('price') . ' руб.');
            $modx->log(modX::LOG_LEVEL_INFO, 'Количество: ' . $count . ' шт.');

            // Отправка письма
            $email = 'E-mail';
            $subject = 'Тема письма';
            $body = 'Содержимое письма';
            $modx->mail->set(modMail::MAIL_FROM, $modx->getOption('emailsender'));
            $modx->mail->set(modMail::MAIL_FROM_NAME, $modx->getOption('site_name'));
            $modx->mail->set(modMail::MAIL_SUBJECT, trim($subject));
            $modx->mail->set(modMail::MAIL_BODY, $body);
            $modx->mail->setHTML(true);
            $modx->mail->address('to', trim($email));
            $modx->mail->send();
            $modx->mail->reset();    
    }
    // Сброс
    die();
}

Тему можно считать «закрытой».
Василий Наумкин
08 ноября 2013, 19:39
0
Это называется Orphus, мне она не особо.

Я понимаю, что человек хотел помочь, но здесь тонна опечаток и всего 2 на одной странице погоды не делают.
Перетягин Илья
08 ноября 2013, 19:35
0
Встречал на сайтах такую систему — пользователь выделяет текст и нажимает определенную комбинацию клавиш, эти данные по видимому идут на почту (тут не важно), тем самым орфографически сайт становиться лучше без подобных топиков. Ну и человек возможно просто помочь хотел…
Василий Наумкин
08 ноября 2013, 19:14
0
Починил, обновляйся.
Василий Наумкин
08 ноября 2013, 19:09
0
Давай уже тогда все тексты на сайте сразу корректируй, чего мелочиться?
Олег
08 ноября 2013, 14:38
0
Разобрался: язык e-mail соответсвует языку интерфейса админки менеджера.
Антон Мамрашев
08 ноября 2013, 13:40
0
я себе такой поставил, действительно удобно, но самое приятное это как редактор очищает текст при вставке — убираются все font теги, style атрибуты и прочее. Пожалуй не хватает только интеграции с phpthumb из коробки.
Павел Левин
08 ноября 2013, 12:56
0
Сделал, правда использовал другую вашу статью.

Сниппет LastUpdate:
<?php
$pubTime = strtotime(date("Y-m-d"));//текущая дата в секунадах
$pubTimeEnd = $pubTime+(24*60*60);//следующий день
$ids = $modx->getChildIds($input);
$count = 0;
$value = 0;

if (!empty($ids)) {//проверяем дочерние ресурсы
    $count = $modx->getCount('modResource', array(
		'id:IN' => $ids
		,'isfolder' => 0
        ,'publishedon:>' => $pubTime
        ,'publishedon:<=' => $pubTimeEnd
	));
} else {//проверяем текущий ресурс
    $count = $modx->getCount('modResource', array(
    	'id:IN' => array($input)
		,'isfolder' => 0
        ,'publishedon:>' => $pubTime
        ,'publishedon:<=' => $pubTimeEnd
	));
    $value = 'new';
}

if($count) {return '<span class="last-update">'.($value?$value:$count).'</span>';} else {return ' ';}

Вызов в чанке/шаблоне:
[[+id:LastUpdate]]

Результат:
Вывод шильдика с количеством новых статей в категории, или помечает шильдиком "new".


Алексей Добряков
08 ноября 2013, 10:27
0
Спасибо заработало. Блин надо было сразу там посмотреть всё не как не привыкну к серверу)))
Алексей Добряков
08 ноября 2013, 10:18
0
данные постоянно меняются, а как в MS2 что бы так же сделать долго буду разбираться, а за эту работу заплатили граши
Василий Наумкин
08 ноября 2013, 10:18
0
Ну и, конечно, ты можешь просто изменить конфиг сайта:
location ~* ^.+\.(jpg|jpeg|gif|css|png|js|ico|bmp)$ {
	access_log		off;
	expires			10d;
	break;
}

Заменить на
location ~* ^.+\.(jpg|jpeg|gif|png|ico|bmp)$ {
	access_log		off;
	expires			10d;
	break;
}
Василий Наумкин
08 ноября 2013, 10:15
0
Ну окей, подгрузил, сохранил js файл и встроил в html на него ссылку — в чем проблема?
Nginx спокойно загрузит статичный js.

Например MS2 именно так сохраняет свой конфиг, чтобы не встраивать js-простыню в исходник страницы.
Алексей Добряков
08 ноября 2013, 10:13
0
да всё из за 2gis я в .js подгружаю объекты со множественными конфигурациями
Василий Наумкин
08 ноября 2013, 10:11
0
А зачем тебе отдавать скрипты и стили через php?

На сайт никто не ходит, или много ненужных ресурсов на сервере?
Іван Клімчук
08 ноября 2013, 10:07
0
voo делался, когда imperavi еще был бесплатным, но там версия настолько старая, что я решил не продолжать. А за новые версии нужно платить. Марк заплатил, но при этом сильно доработал этот редактор для modx и честно продает.
Он еще обещал скоро выпустить новый компонент — Visual Content, там вообще будет улет. Можно будет настраивать прямо блоки на странице в виде большой формы в админке, чтобы не пускать авторов добавлять свои красные и зеленые цвета к текстам. :)
Peter Zenin
08 ноября 2013, 04:41
0
Пробую в простом php файле воспользоваться pdoFetch::getCollection(), но почему-то pdoFetch совсем не видит miniShop2

define('MODX_API_MODE', true);
require dirname(dirname(dirname(dirname(dirname(__FILE__))))) . '/index.php';
$pdo = $modx->getService('pdoFetch');

$parent = 140;
$allChild = $modx->getChildIds($parent,6,array('context'=>'web','class_key'=>'msCategory'));

$objects = $pdo->getCollection('msProduct', array('parent:IN'=>$allChild)); // Так не видит...

$objects = $pdo->getCollection('modResource', array('parent:IN'=>$allChild)); // Видит только так...
Сам MODX видит miniShop2:

$objects = $modx->getCollection('msProduct', array('parent:IN'=>$allChild));
Василий не подскажешь, как заставить pdoFetch видеть минишоп?
Роман Наумов
08 ноября 2013, 01:53
0
Не отображаются способы оплаты. Установлен minishop2-2.1.2-pl1. Созданы варианты доставки с привязкой к способам оплаты. Журнал ошибок пуст.
На minishop2.com такая же фигня:


Василий Наумкин
07 ноября 2013, 22:27
0
Не знаю. Чанки при установке компонента не перезаписываются, это нужно делать вручную.

Установи на modx-test.com и сравни. На демо сайте проблем нет.