Aleksey

Aleksey

С нами с 12 сентября 2017; Место в рейтинге пользователей: #395

Emoji ломает Tickets?

После публикации комментария со смартфона с добавлением emoji, вместо комментария выводится «0». Проявилось на рабочем сайте и на тестовом s6728.h5.modhost.pro/index.php?id=1. Все последующие комментарии даже без смайликов тоже выводятся как 0.

Интересно то, что после переустановки тестового сайта, установки только theme.bootstrap и Tickets проблема остается, даже если написать первый комментарий без смайликов. Если в админке в разделе Тикеты изменить комментарий, все равно остается 0. То есть emoji ломает базу данных?

У кого есть тестовый сайт на модхосте, проверьте пожалуйста.

  1. Ставим чистый modx;
  2. Ставим theme.Bootstrap и Tickets;
  3. Выводим [[!TicketComments? &allowGuest=`1`]];
  4. Пишем со смартфона комментарий с эмодзи, проверяем, потом без эмодзи, проверяем;
  5. Если проблема проявляется, переустанавливаем modx, выполняем пункт 2 и 3 и пишем первый комментарий (можно даже с ПК) без эмодзи.
На рабочих сайтах лучше не тестировать!
Viktor
24 января 2018, 21:16
modx.pro
4
2 167
+1

Как вывести процент скидки на странице товара в minishop2?

Здравствуйте! Подскажите пожалуйста как вывести в minishop2 по мимо старой цены процентное соотношение скидки т.е. на сколько процентов товар сейчас дешевле чем был ранее? За раннее Спасибо!
Aleksey
15 января 2018, 13:56
modx.pro
7
4 225
0

Новая Google reCAPTCHA(v2) для Office

По примеру Новая Google reCAPTCHA(v2) для FormIt сделал reCAPTCHA для office.
Александр Туниеков
11 января 2018, 17:08
modx.pro
16
3 319
+13

[SnowStorm] - снегопад на сайт в 1 клик


Зима, холода, одинокие дома… Ну и снегопад на улице конечно же.

В честь этого было оформлено новое дополнение SnowStorm, которое включает снегопад на сайте буквально в 1 клик — достаточно лишь установить дополнение из репозитория modstore.pro!

В своей работе компонент использует скрипт падающего снега SnowStorm www.schillmania.com/projects/snowstorm/. Этот скрипт достаточно плавный и недерганный. Не требует установленный jQuery — работает на чистом JavaScript. Для эффекта снега не используются изображеня — всё управление работает с помощью базовых элементов CSS.
Василий Столейков
20 декабря 2017, 13:46
modx.pro
3
7 202
+4

[Office] 1.7.0 - улучшение безопасности

Привет, друзья!

Вдохновение от недавней MODXpo еще не прошло, зато появились сообщения о целенаправленной атаке на сайты с установленным дополнение Office.

Суть в том, что какие-то нехорошие люди шлют запросы напрямую на ajax коннектор с указанием email по списку и спамерским сообщением в пароле. Так как Office по умолчанию отправляет пароль и люди видят этот спам от имени сайта.

Сообщения такие появились пару дней назад, и должен признать, это очень остроумный способ рассылки.
Василий Наумкин
17 ноября 2017, 15:21
modx.pro
5
5 118
+12

mSearch2 - сортировка кастомным select 'ом

Возникла необходимость кастомизировать стандартную сортировку компонента mSearch2.
Cортировка имела следующий вид:
Как оказалось компонент не может работать с select, а работает только тегом a. Ну да ладно, попробуем исправить это.
На сайте modx.pro в ветке Вопросы нашел вопрос Как сделать сортировку через select? от пользователя DimenSi. Вопрос частично решен если бы не одно НО
перестали работать фильтры, фильтрация срабатывает только после сортировки. Т.е. меняешь ценовой диапазон → ничего, после этого меняешь сортировку → срабатывает и сортировка и фильтр.

ПЛАН РАБОТЫ

  • Установка кастомного селеста
  • Написание скрипта для взаимодействия сортировки с компонентом
Roman
14 сентября 2017, 08:33
modx.pro
27
6 984
+5

mFilter2 и оптимизация скорости на 7k товарах


Всем, кто хоть раз пытался завести mFilter2 на большом кол-ве товаров и хотя-бы 10 опциях в фильтре, известно, что тормозов не избежать. Вот и мне попался на днях сайт, в котором, казалось бы, всего-то 7000 товаров и 10 опций на странице каталога. Однако сниппет фильтра отрабатывал за 3-4 секунды. Переписал на Fenom — стал отрабатывать за 2-3 секунды.
Не годится! Тем более, что у заказчика было требование: «Чтобы сайтом было комфортно пользоваться». Что-ж, взял задачу — надо решать!

Дебаг показал, что проблема в методе mse2FiltersHandler::getMsOptionValues, а именно в запросе (7k товаров!), который выглядит как-то так:
SELECT `product_id`, `key`, `value` FROM `modx_ms2_product_options` AS `msProductOption` 
WHERE (`msProductOption`.`product_id` IN (3394,3408,еще 7 тысяч ID)
AND `msProductOption`.`key` IN ('atr_n1','atr_n6','atr_n5','atr_n12','atr_n43','atr_n46','atr_n29','atr_n11','atr_n44','atr_n2'))
Павел Гвоздь
14 августа 2017, 14:14
modx.pro
41
4 720
+21

Шаблон сортировки для mFilter2

Здравствуйте, у меня в категории выводится сортировка вот в таком виде
<div class="sorting__cat sorting__cat-top" id="mse2_sort">

<a href="#" data-sort="resource|pagetitle" data-dir="[[+mse2_sort:is=``:then=`desc`]]"
 data-default="desc"
 class="sort" >Название <span></span></a>
 
<a href="#" data-sort="ms|price" data-dir="[[+mse2_sort:is=`ms|price`:then=`desc`]]" data-default="desc" class="sort">Цена <span></span></a>


</div>
Dolce
05 августа 2017, 12:53
modx.pro
8
5 255
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
modx.pro
3
946
+1

default в pdoPage при Fenom, как?

Здравствуйте уважаемое сообщество!

Подскажите, пожалуйста, как переписать данную конструкцию под Fenom

[[!pdoPage:default=`Ничего не найдено.`?
	...
]]
как записать default=`Ничего не найдено.` в

{'!pdoPage' | snippet : [
	...
]}
Александр Наумов
13 мая 2017, 07:38
modx.pro
3
3 534
0