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

Василий Столейков
18 мая 2015, 08:09
0
Спасибо, а то это накипело уже за время работы…!
Василий Наумкин
18 мая 2015, 08:07
0
У RBK и PayPal работают прямые ссылки из писем, а вот у Яндекс.Кассы — нет. Отправил просьбу автору этого дополнения, посмотрим, что ответит.

Минимальную сумму тоже увеличил до 150 руб.
Юрий Волощук
17 мая 2015, 23:25
0
при успешном выполнении message всегда пуст. Даже в админке, когда сохраняешь ресурс, Message пуст, но при этом всплывает некое сообщение.
t3mnikov
17 мая 2015, 21:20
0
Хорошо!
Спрошу подругому:
Как узнать id текущего ресурса в/через процессор(е)?
такая запись ничего не возвращает: $this->modx->resource->id;
Dmitry Rodionov
17 мая 2015, 20:10
+1
Если интересует один запрос на чистом SQL это будет как-то так:
SELECT s1.`context_key`
FROM `modx_context_setting` as s1
LEFT JOIN `modx_context_setting` as s2
ON s1.`context_key` = s2.`context_key`
WHERE s1.`key`='cultureKey' AND s1.`value`='ru' AND s2.`key`='base_url' AND s2.`value`='/ru/'

Но тут вопрос что удобнее, Сергей предложил более оптимальный выход — поиск по одному параметру
Василий Столейков
17 мая 2015, 20:00
0
Как я понял, вы хотите одним запросом это сделать?
Василий Столейков
17 мая 2015, 20:00
0
Пример вашей логики сможете набросать, чтобы можно было проверить?
Dmitry Rodionov
17 мая 2015, 19:59
0
по сути можно получать хост и двухбуквенный язык из url если они жестко заданы и находить по этим параметрам контекст
Сергей Шлоков
17 мая 2015, 19:44
+1
Проблема во внимательности. Главное не перепутать сайты, когда работаешь. :)
Иногда от усталости при копировании с локалки на рабочий сайт ошибаешься и копируешь наоборот, а потом мучаешься, почему не работает.
Василий Столейков
17 мая 2015, 19:38
0
Спасибо большое! Интересное решение!
А как с этим будет справляться админка и админ, это вопрос.
А в чём проблема, если назвать контексты ЧПУ-именами? Также можно для разных групп менеджеров давать доступ только к контекстам определённого сайта…
Сергей Шлоков
17 мая 2015, 19:34
+2
Ну логика может быть такая: у каждого контекста указываешь ключ в стиле host_language, т.е. site1_ru,site1_en.
А в плагине разбираешь запрос и формируешь ключ контекста.
<?php
// Работаем только на фронтенде
if ($modx->event->name != 'OnHandleRequest' || $modx->context->key == 'mgr') {return;}
// Определяем запрашиваемый хост (отрезаем <b>.ru</b>)
preg_match('/(\S+)\.ru/',$_SERVER['HTTP_HOST'],$matches);
$host = $matches[1];

//Определяем папку  /ru/ или /en/ из запроса (через preg_match или типа того)
$lang = ...;
//Получаем ключ контекста
$context = $host.'_'.$lang;
//Переключаемся.
$modx->switchContext($context);
А как с этим будет справляться админка и админ, это вопрос.
Dmitry Rodionov
17 мая 2015, 19:33
+1
а в чем проблема совместить? сначала получаем несколько контекстов с нужным http_host, а внутри них уже делаем проверку на base_url
хотя по сути это можно было бы сделать и за один запрос, если оптимизировать код
Василий Столейков
17 мая 2015, 17:49
0
Мне нужно хотя-бы логику действий подсказать, дальше уже буду пробовать сам…
Василий Столейков
17 мая 2015, 17:21
+2
По оплате, тоже предложение: сделайте сумму по умолчанию в поле не 50 рублей, а 150 (по сумме минимального тарифа), а то обычно всегда нужно пополнить именно на 150 рублей чтобы продлить какой-нибудь сайт, но не автоматом выбираешь только метод оплаты и кликаешь на кнопку оплатить — в результате формируется заказ-пустышка на 50 рублей и приходится заново (уже внимательно) создавать нужный заказ вписывая вручную число 150.
Или хотя-бы выделите чёткой рамкой поле, чтобы оно бросалось в глаза, а то сейчас оно сливается с фоном и поэтому не кажется важным.
Василий Столейков
17 мая 2015, 17:12
+1
Ещё очень важное предложение — сделайте ссылку на прямую оплату извне!
Раньше такая возможность была, но после каких-то улучшений она пропала. Сейчас очень неудобно заказчикам оплачивать счета — они часто это просят, но им не удобно логиниться в админку, или мне неудобно им выдавать доступы. Пересылать мне чтобы я заплатил кому-то тоже может показаться неудобным из-за двойной комиссии и лишних движений.
Простая просьба — прямая ссылка на счёт извне, пускай она будет очень длинная и зашифрованная, но чтобы была прямой.
Dmitry Rodionov
17 мая 2015, 12:53
0
Стоит добавить что при переносе сессии в файлы пропадет возможность доступа к чужим сессиям, это может понадобится для аналитики или чего-то подобного.
Spirit_Ninja
17 мая 2015, 12:50
0
Клево. А если не пользоваться этими доработками, как просто заменить размер «старого [[+thumb]]» который генерируется по умолчанию?
Dmitry Rodionov
17 мая 2015, 12:42
0
Так и работает, чем мой пример отличается от этого?
Но если сразу 10 запросов будет, то возникнет проблема которую описал выше, но еще раз, если не понятно:
1)Возьмем modx, установленный и настроенный, например тестовый доступ можно получить по адресу minishop2.com/
2)Заходим в админку, элементы, в чанках категории у нас свернуты
3)быстро разворачиваем все категории, на сколько это возможно человеку
4)все категории развернуты как и надо
5)обновляем страницу — часть категорий все еще свернута
В чем проблема?
Скорее всего в том что одновременные запросы не дают монопольный доступ к сессии.

Если же за место 3го шага мы не быстро, а медленно развернем все категории (с интервалом в секунду-две между разворачиванием категорий), то после обновления страницы, они будут все развернуты как надо, а следовательно правильно сохранится состояние в сессии
Сергей Шлоков
17 мая 2015, 11:50
0
Для ajax запроса лучше делать так
1. Запрос
2. Открываем сессию
3. Записываем в сессию.
4. Закрываем сессию session_write_close();
У меня проблем с сессиями нет.