Всего 123 801 комментарий

Василий Наумкин
23 апреля 2024, 10:17
+5
Всё прошло очень хорошо, парни из Sterc привезли с собой оператора, который всё заснял и зафотал. Сейчас это дело смонтируют и выпустят документалку, можно будет посмотреть.

Новостей именно про развитие системы, кроме моего доклада, вроде и не было никаких. Разве что Sterc представили новый портал для поиска работы, связанной с MODX — www.workwithwander.com.

Мой доклад прошёл очень хорошо, теперь самому интересно посмотреть, как это выглядело со стороны. Особенно народ оживился на словах о том, что можно нанимать сотрудников не из мира MODX, а с более широкого рынка современной PHP разработки.

В общем, ждём документалку.
Иван Бочкарев
23 апреля 2024, 08:57
+4
Как всегда, на уровне! Спасибо!

  • Очень интересно услышать как в целом прошла конференция?
  • Что интересно из докладов было?
  • Как твой новый предложенный метод восприняли слушатели?
  • Может есть какие новости по развитию MODX?
Сергей Карпович
22 апреля 2024, 17:19
0
Я нафигачил просто несколько условий
alexandr.skyrda
22 апреля 2024, 17:16
0
я делал так-то так:

if ($modx->event->name == 'msOnGetProductFields') {
        $returned_values = & $modx->event->returnedValues;
        $values = $modx->event->params['data'];
        $product = $modx->getObject('msProduct', $values['id']);
        
        $userGroupId = $modx->user->getUserGroups()[0];
        $sale_group = [1, 2, 3]; // ИД групп, для которых другая цена
            
            if ($modx->user->isAuthenticated() && in_array($userGroupId, $sale_group)) {
                $new_price = null;
                switch($modx->user->getUserGroupNames()[0]) {
                    case 'НАЗВАНИЕ ГРУППЫ ПОЛЬЗОВАТЕЛЕЙ':
                        $new_price = $product->get('price_basovye')[0]; // Цена записана в опцию товара
                        break;
                }
                $returned_values['price'] = $new_price;
            }
}
наверное не самое элегантное решение, но работает
Сергей Карпович
22 апреля 2024, 14:29
0
А если групп пользователей несколько и каждой группы своя цена, то как будет выглядеть плагин?
Володя
22 апреля 2024, 12:57
0
Данная ошибка в логе никак не связана с проверкой доступа по модификатору pasraccess.
Можете написать в ТГ в профиле.
max
max
22 апреля 2024, 10:16
0
Я пакет покупал в 2020. С тех пор так до него руки и не дошли. Сейчас вот взялся настраивать по инструкции — не хочет работать =( Написать в ТП modstore уже не позволяет =(
В лог modx пишется следующее:
[2024-04-22 10:18:14] (ERROR @ /var/www/site.ru/core/xpdo/xpdo.class.php: 644) Could not load class: PasValidator from payandsee.pasvalidator.
Володя
22 апреля 2024, 08:56
0
Добрый день.
Дополнение работает, никто в ТП не писал о каких либо проблемах с пакетом.
Если у вас какие либо сложности пишите в ТП — решим.
max
max
21 апреля 2024, 16:49
0
Не работает дополнение.
modx 2.8.3
Minishop 2.8.3
PAS 2.0.24-beta

Поднимал на modhost разные тестовые сайты с PAS 2.0.24 и разными modx (2.6.5, 2.7.0, 2.8.0) — ни на одном хосте PAS не работает.

Например, конструкция в шаблоне:
{set $access = 1|pasraccess:0}
{* далее можно использовать для проверки доступа переменную $access *}
{if $access}
Есть доступ
{else}
Нет доступа
{/if}
{$_modx->resource.content|pasraccess:('!pas.content'|snippet:['resource'=>$_modx->resource.id])}
дает всегда один результат — Есть доступ.
Баха Волков
20 апреля 2024, 15:47
+1
{set $data = id_ресурса | resource : 'название_тв_migx' | fromJSON}

{foreach $data as $item}
    {$item.name}
    {$item.description}
{/foreach}
Ирина
19 апреля 2024, 23:47
0
Да, работает, проверяла. И окно модальное закрывается, но уведомления нет
Ирина
19 апреля 2024, 23:39
0
Так убрала AjaxFormItLogin, оставила оплату по умолчанию и тогда уведомления отрабатывают, но как только я ставлю оплату юкасса, то уведомления пропадают
Ирина
19 апреля 2024, 23:22
0
Добрый вечер. Помогите, пожалуйста, разобраться. Поставила модули SendIt и MiniShop2. Создала снипет, прописала пресет в файле, добавила js, вывела окно с формой — заказ оформляется — письмо приходит, но нет уведомления. Если делать как написано + к этому с вызовом AjaxFormItLogin — то работает все, но заказ оформляется дважды, выводятся дважды уведомления. Для чего нужно использовать и SendIt и AjaxFormItLogin? Я только начала разбираться с этими модулями, подскажите, пожалуйста, что я не так делаю?!
Баха Волков
19 апреля 2024, 12:48
+2
Постараюсь в свободное время это сделать, спасибо за предложение
Наумов Алексей
19 апреля 2024, 11:49
1
0
Самое лучшее решение в данной ситуации — это сделать отдельный файл для работы с этим API, например:
/assets/components/mycomponent/api.php
ну или просто попроще
/api.php
внутри этого файла инициализируем MODX в API режиме, читаем, например:
modx.pro/development/3163

А далее просто получаем данные, как нам нужно и выводим в json:
$query = $modx->newQuery('modResource');
$query->where([
'parent' => 2,
]);

$resources = $modx->getIterator('modResource', $query);
$data = [];
foreach($resources as $resource) {
$data[] = [
'pagetitle' => $resource->get('pagetitle');
];
}

header("Content-Type: application/json");
echo json_encode($data);
exit();
да, если нужны TV поля, то запрос будет сложнее. Но эта информация тоже есть на форуме.
Если уж совсем лень писать запрос — то можно внутри скрипта вызвать сниппет pdoresources:
$data = $modx->runSnippet('pdoResources', [ПАРАМЕТРЫ]);
Артур Шевченко
19 апреля 2024, 10:07
0
Если нужен полноценный API, используй ZoomX. Также можно просто с делать коннектор и слать запрос к нему и возвращать что нужно и как нужно.
snowdog178
18 апреля 2024, 21:54
0
Не отображаются добавленные поля в редактировании пользователя.
Добавил одно поле в «общую информацию», для другого создал вкладку, в ней ещё вкладку и в ней уже поле.
Созданные вкладки отображаются, а вот поля — нет.
Что я делаю не так?
В датабазе добавленные поля есть, я им даже напрямую задал значения у одного пользователя, всё равно не отображаются.