🙈 PG
ну у меня немного по другому работа с пользователями устроена, сделал отдельную таблицу и туда записываю их токены, и при запросе по api я по токену определяю какой это пользователь и загружаю его объект
🙈 PG
pdoPage?
🙈 PG
доки смотрел?
🙈 PG
я примерно так и сделал
Sergey_K
я примерно так и сделал
Ну это один метод. Я почитал элокентовскую доку и стал пользовать трейты - офигенно удобная штука.
Yaroslav
🛴🛴🛴🛴
Sergey_K
🚲🚲🚲🚲🚲
Ну так это 3.0
Sergey_K
Что не?
Sergey_K
Неймспейсы там
Yaroslav
это не 3.0
Sergey_K
Ты о чем?))
Sergey_K
В 2.х нет неймспейсов и автолоадера
Yaroslav
Ты о чем?))
это не modx 3.0
Yaroslav
В 2.х нет неймспейсов и автолоадера
теперь есть) я писал раньше что прототип кое какой для себя делаю
Sergey_K
Ну так епта, протипов полно. У меня модх с композером давно и элокентом. Но это к официальном не имеет отношения )
Yaroslav
Ну так епта, протипов полно. У меня модх с композером давно и элокентом. Но это к официальном не имеет отношения )
в 3-ей версии же (не) предусмотрена инжекция через конструкторы и аннотации? я пытался понять по докам и пробегался по коду, но ничего подобного не нашел. https://php-di.org/
Павел
какой-то ж di завозили
Павел
в тройку
Yaroslav
ну ->services->get(‘config’) (интерфейс вроде приведен к стандартному psr-11 сервис контейнера, но по сути же тот же сервис локатор, с возможностью расширения? + логика конструирования все же вынесена в closure/factories. Внедрение через типы и аннотации все-таки не нашел в доках.)
Иван
Dependency Injection Container - Extending MODX | MODX Docs https://docs.modx.com/3.x/en/extending-modx/di-container
Rahim
Приветь народ поставил приоритет на плагин но приоритет не срабатывает
🙈 PG
сделал это без уважения
🙈 PG
чем ниже приоритет тем раньше он сработает
🙈 PG
там могут быть и отрицательные числа
Rahim
ok spasibo
Ростислав
Подскажите после переноса 503, файлы все поправил при этом админка работает (
Ростислав
при попытке запустить setup
Ростислав
FATAL ERROR: MODX Setup cannot continue. Make sure your PHP session configuration is valid and working.
Ростислав
вообще не пойму в чем дело, причем админка не работала сразу, нужно было права выставить 777 на папку кэша
Turbo1235
Добрый день, подскажите как вывесте base_url медиаисточника?
Миша
бля а у кого в xParser были нули вот так, и притом не могу поменять
Turbo1235
ну имеется созданный медиаисточник, требуется на феноме вывести его base_url в шаблоне для корректного заполнения пути до файлов
Turbo1235
где?
{$_modx->config.assets_url} dslftn просто /assets/
Turbo1235
медиаисточник выбран в качестве дефолтного
🙈 PG
ну я вижу минимум 3 варианта 1) сниппетом получить (грузить объект медиаисточника и брать оттуда ) 2) повесить плагин на modxinit и записать в плейсхолдер и использовать в нужно месте 3) захардкодить
Turbo1235
ну я вижу минимум 3 варианта 1) сниппетом получить (грузить объект медиаисточника и брать оттуда ) 2) повесить плагин на modxinit и записать в плейсхолдер и использовать в нужно месте 3) захардкодить
Спасибо за ответ, думал можно просто вызвать данное поле в fenom, так как оно заполнено в админке. Данная проблема уже давно существует не понятно почему ее не фиксят
🙈 PG
а в каком месте оно в админке заполнено?
🙈 PG
в системных настройках или в самом источнике?
Turbo1235
ну в источнике
🙈 PG
так для этого нужно получить его объект, не будет же modx грузить в память все объекты из базы по умолчанию
Turbo1235
так для этого нужно получить его объект, не будет же modx грузить в память все объекты из базы по умолчанию
да жесть чтобы тупо прописать путь до картинки состоящий из 2х папок писать сниппет и получать объект это как-то слишком
Turbo1235
зачем тогда нужны эти поля если они не подставляются автоматически
🙈 PG
тут же проблема не в феноме, modx или еще в чем-то, а в том что есть 10000 способов получить данные из базы, видно выбрали тот который не отдает все что нужно
Turbo1235
Прописать путь в клиент конфиг, и вставлять через системную настройку
да как вариант, спасибо, я про то что все это костыли, погуглил эта проблема была еще с версии 2.2.х
Turbo1235
что если используешь источник файлов не filesystem а свой и грузишь туда файлы скажем изображения для аватарки пользователя то путь становится без /assets/...... а просто название файла и ппц
🙈 PG
откуда столько нытиков? костыли это скорее всего из-за ограниченного понимания работы modx в целом и ее объектной модели в частности.
Turbo1235
что работает, стандартное поле в профиле пользователя фотография, если выбрать свой источник файлов где прописан base_url и base_path, то при выборе изображения в это поле записывается просто имя файла.
Миша
https://github.com/jonnnnyw/php-phantomjs/issues/259 пздц с 2018 года открыто и хуй кто решил((
🙈 PG
иногда хотелось бы меньше понимать)
соблюдай границы, по тому как на этом уровне понимания в комплект идут и страдания 😂
Yaroslav
вот что это. скорее всего баг, на задачу решил (таким образом. не применялись ограничения на разрешенные типы файлов)
Turbo1235
значит ты неправильно путь спрашиваешь
я не спрашиваю я хочу заполнить поле в админке и вывести его на фронт без костылей
Yaroslav
я не спрашиваю я хочу заполнить поле в админке и вывести его на фронт без костылей
у источника файлов говорю неправильно спрашиваешь или не спрашиваешь вообще
Turbo1235
у источника файлов говорю неправильно спрашиваешь или не спрашиваешь вообще
а как спросить подскажите, может как то из суперглобального массива вытащить данные
🙈 PG
лучше всего это сделать модификатор для фенома и там этим рулить
Turbo1235
лучше всего это сделать модификатор для фенома и там этим рулить
$source = $modx->getObject('sources.modFileMediaSource',3); $properties = $source->get('properties'); var_dump($properties['basePath']);
Turbo1235
получаю base_path
Turbo1235
а дальше хз как
Turbo1235
если создадут вложенные папки
Turbo1235
то они не попадут в путь
🙈 PG
https://modx.pro/development/10910#comment-79156
🙈 PG
если создадут вложенные папки
тогда к имени будут и папки
🙈 PG
если файл в корне, тогда будет только имя, если вложенность есть то будет полный путь от корня источника
Yaroslav
а как спросить подскажите, может как то из суперглобального массива вытащить данные
core/model/modx/processors/browser/file/download.class.php:2 getSource с нужным id (передать аргументом) и getObjectUrl (тоже передать аргументом)
Yaroslav
а как спросить подскажите, может как то из суперглобального массива вытащить данные
суперглобальные массивы это второй день изучения php. а тут инфа примерно на 365й день php и 180й изучения modx
Turbo1235
суперглобальные массивы это второй день изучения php. а тут инфа примерно на 365й день php и 180й изучения modx
да я не настолько продвинут и это сделать не смогу придется костыли воротить что делать😔
Yaroslav
да я не настолько продвинут и это сделать не смогу придется костыли воротить что делать😔
берем file и конкатенируем с путем к папке. Ачтобы без костылей получить basePath от источника - источник нужно поднять через getSource по id, например
Turbo1235
берем file и конкатенируем с путем к папке. Ачтобы без костылей получить basePath от источника - источник нужно поднять через getSource по id, например
тут проблема в том что я бы сам ручками делал копировал сраный путь и не парился, а это нужно отдать девочкам из отдела hr а они вот не хотят ручками копировать, а допиливать ядро modx и лезть в процессоры не моё
Turbo1235
спасибо всем за советы)
Yaroslav
спасибо всем за советы)
public function getSource(modX $modx, int $sourceId) { /** @var modMediaSource $source */ $modx->loadClass('sources.modMediaSource'); $source = modMediaSource::getDefaultSource($modx, $sourceId); if (!$source->getWorkingContext()) { return $modx->lexicon('permission_denied'); } $source->initialize(); return $source; }