Andrey

Andrey

Был в сети 27 апреля 2023, 14:37
Заказы принимаю
параметров в filters всего 6-7, а вообще используемые полей много, но они используются в других местах

П.С.
Проект горел, а я не знал можно ли кастомные поля (созданные самостоятельно), использоваться для фильтрации и для редактирования через ТикетФорм
ну это решаемо при помощи небольшого плагина, а вот отключение обязательного поля я так понял невероятный костыль. Выпиливать дофига и прочая херня. А так да, согласен, чет из головы вылетело на счет интротекст.
Лойс, отправлена монетка. Суперполезный инструмент. Если будут донить мало, подумаю о том, что бы в следующем месяце задонить еще. Считаю надо поддерживать авторов таких великолепных подгонов монеткой и чтобы было желание развивать MODX!
<?php

if ($MinifyX->isJs()) {
    $content = parse($MinifyX->getContent(), ['alias' => $modx->resource->alias]);
    log_error($content);
    $MinifyX->setContent($content);
}
такой все же не работает, в лог ничего не уходит, журнал пустой, пытался переставить местами ХУКи, тоже не работает:
'preHooks' => 'modxTagDecoder.php, infraMaps.php'
и так:
'preHooks' => 'infraMaps.php, modxTagDecoder.php'
Так и отдает в скомпилированный файл скрипта:
url: "assets/main/data/infra-[[+alias]].json"
добро, сейчас перечислю сколько вариантов я перепробовал, просто они очевидные, собственно как я их понял:

В файле скрипта я вызвал и так:
url: "assets/main/data/infra-[[+alias]].json"
и так:
url: "assets/main/data/infra-[[*alias]].json"
и как только не экспериментировал… менял скобки, менял название плейсхолдера…

В файле ХУКа менял так:
if ($MinifyX->isJs()) {
    $content = parse($MinifyX->getContent(), ['alias' => json_encode(['key'=>$object->getValue(),'resource'=>$modx->resource->alias])]);
    $MinifyX->setContent($content);
}

if ($MinifyX->isJs()) {
    $content = parse($MinifyX->getContent(), ['alias' => json_encode(['resource'=>$modx->resource->alias])]);
    $MinifyX->setContent($content);
}

if ($MinifyX->isJs()) {
    $content = parse($MinifyX->getContent(), ['alias' => $modx->resource->alias])]);
    $MinifyX->setContent($content);
}
вроде что то еще пробовал, но ничего не выходило.
Располагал хук до вызова условия (и после):
<?php

if ($modx->resource->parent == 8) {
    // Добавляем файлы
    $MinifyX->addJsSource("{assets_url}main/js/map.min.js");
}
собственно:
main/js/map.min.js
файл скрипта куда выполняется замена, который появляется только при условии, что у дочки мамка под номером 8.

Так понятно надеюсь? Я ж говорю, я ж не совсем бом бом, чтобы сначала не попробовать и заменить на требуемое, собственно мне просто нужен корректный код хука, либо сказать где я копаю не так, что он не работает, может баг, может он так вообще не работает. Спасибо за любую помощь, заранее!

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

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