Василий Stepanov

Василий Stepanov

С нами с 10 января 2014; Место в рейтинге пользователей: #128

Каталог автотоваров

Приветствую!
Появилась задача сделать каталог автотоваров с сортировкой по марке и модели авто с условием, что один и тот же товар может подходить к разным маркам и моделям. Решить задачу, хоть и далеко не идеально, все же получилось, но появились вопросы. Сначала решение, а потом вопрос.

Василий Stepanov
12 мая 2019, 11:47
103
0

Быстрый расчет доставки посылок почтой РФ

Приветствую.
На одном сайте понадобилось считать стоимость доставки посылок почтой РФ из г. Благовещенск в г. Москва. Решил с помощью API сайта postcalc.ru


Делюсь. Конструктивная критика и советы приветствуются.
Василий Stepanov
05 июня 2018, 20:20
3
702
+6

Как сменить skin для формы создания тикета?

Установил компоненты Tickets и TinyMCE. В настройках TinyMCE установлен скин cirkuit, но при создании тикета в админке используется скин default.
Василий Stepanov
05 ноября 2017, 15:34
252
0

Проблемы с фильтрацией ресурсов (больше 2000шт.)

Стоит задача отфильтровать ресурсы: вывести те ресурсы, у которых больше 20 просмотров (HitsPage), комментов больше 0 (Tickets), и которые опубликованы больше месяца назад.

Написал сниппет, но при обработке большого количества ресурсов страница с вызовом сниппета не загружается. Как оптимизировать код?
Василий Stepanov
03 июля 2017, 09:39
362
0

Раздел прогноза погоды для сайта

Я уже писал про создание погодного информера для сайта. Сегодня покажу, как я сделал раздел на сайте с погодой на 3 дня.


Откуда брать данные в виде xml повторять не стану, смотрите в предыдущей статье.

Вывод погоды оформил в виде трех таблиц, верстка на Bootstrap.
Как это выглядит на сайте смотрим тут.
Василий Stepanov
01 июля 2017, 08:20
1
313
0

Как вывести количество комментариев?

Выводим количество комментариев (TicketComments) любых ресурсов (тикеты и простые ресурсы MODX) в любом месте.

Прошелся по страницам сообщества и собрал в один сниппет. Спасибо Василию Наумкину!

Создаем сниппет countComments:
<?php
// считаем комменты тикетов
if ($res = $modx->getObject('Ticket',$id)) {
    if ($res->get('comments') == 0) { return "0";}
    else {return $res->get('comments');}
}

// считаем комменты ресурсов
if ($q = $modx->newQuery('modResource', $id)) {
    $q->leftJoin('TicketThread','TicketThread', "`TicketThread`.`name` = 'resource-{$id}'");
    $q->leftJoin('TicketComment','TicketComment', "`TicketThread`.`id` = `TicketComment`.`thread`");
    $q->select('COUNT(`TicketComment`.`id`) as `comments`');
    
    $count = 0;
    if ($q->prepare() && $q->stmt->execute()) {
    	$count = (integer) $q->stmt->fetch(PDO::FETCH_COLUMN);
    }
    if ($count == 0) { return "0";}
    else {return $count;}
}
Вызывать внутри ресурса так:
[[!countComments? &id = `[[*id]]`]]
Вызывать вне ресурса так:
[[!countComments? &id = `[[+id]]`]]
Василий Stepanov
27 мая 2017, 06:52
3
381
+1

Как загрузить/обновить" изображение к тикету?

Приветствую!
Стояла задача: при создании тикета из фронтенда загружать главное изображение, которое будет использоваться в превью и отображаться на странице самого тикета в начале.

В качестве решения можно было бы использовать, например, первое изображение из встроенной загрузки файлов для тикета, но желание экспериментировать перебороло.

Кратко:
1. В форму создания тикета добавляем поле input type=«file»
2. Создаем плагин на событие сохранения формы с загрузкой и изменением размеров изображения.
Василий Stepanov
19 мая 2017, 13:45
2
588
+2

Проблема с созданием тикетов из сниппета

Приветствую! Пытаюсь сделать создание тикета из сниппета. Создание простого ресурса я осилил и даже писал об этом здесь.

Вот код
Василий Stepanov
30 апреля 2017, 07:11
310
0

Пишем свой информер погоды для сайта


Данный тикет не относится к разработке под MODX, но так как информер я разместил на MODX-сайте, то делюсь наработками здесь.
Вкратце: скрипт парсит XML с погодой и по нескольким условиям выводит результат на сайте.
Итак, XML для своего города берем тут и вставляем ссылку с дописанным /data/ в $rss = simplexml_load_file(...).
Значки «погоды» прилагаются.
Пример работы посмотреть можно тут.
Василий Stepanov
29 апреля 2017, 15:02
3
727
+1

Парсинг RSS и создание новых ресурсов

Написал сниппет для парсинга RSS-ленты местного новостного сайта с созданием ресурсов. Сделал проверку по дате публикации, чтобы существующий ресурс в базе MODX не создавался снова, но проблема в том, что создается только один ресурс с последней новостью из RSS, а при появлении новой новости в RSS новый ресурс в базе MODX не создается. Помогите, пожалуйста, найти ошибку.
Код:
Василий Stepanov
01 апреля 2017, 10:28
912
+1