Сергей Шлоков
я ж там черным по белому написал для разработчиков, куда вы смотрите все, елы палы.
Ой Иван. Там написано конкретно про пакет modExtra. Что приходиться тащить огроменную функцию в 10 строчек. У нас все ходы записаны. 😉
Сергей Шлоков
Кстати, у меня белым по черному написано 😀
Anonymous
Небольшой совет дня/вечера. Если вы делаете свои компоненты и собираете модели, наверное пользовались заготовками от Васи и там при сборке пакета происходит перегерация классов моделей по файлу схемы. Для этого сначала все файлы удаляются и создаются новые. Известно, что в PHP нельзя удалить папку, если в ней есть файлы, и нужно городить огород с рекурсивными функциями типа таких - https://github.com/bezumkin/miniShop2/blob/master/_build/includes/functions.php#L19 И в каждый пакет приходится тянуть вот эти утилиты и прочее, что делать смысла нет, потому что в MODX уже есть свой метод для этого - $this->modx->getCacheManager()->deleteTree(‘path/to/folder’, true); // второй параметр указывает удалять ли саму папку, указаную в пути, если true, либо удалить только содержимое - если false.
Anonymous
где тут написано modExtra?
Anonymous
“наверное пользовались заготовками от Васи” - наверное это можно считать отсылкой к modExtra, хотя я и не говорил об этом прямо и привел ссылку на совршенно другой код. Но свои претензии я уже пояснил - я имею ввиду тот подход, когда люди тащат примеры, не внимания, как они работают.
Anonymous
Так что если хочется что-то притянуть за уши - ваше право, я от своих слов отказываться не стану.
Евгений
Anonymous
Да Сергей троль, это ж понятно 🙂
Евгений
скучно же
Anonymous
https://cs5.pikabu.ru/images/big_size_comm_an/2015-12_3/144999004615365007.webm А я думал ты примерно так наблюдаешь за всем
Евгений
остальное точь в точь
Евгений
следишь за мной?
Anonymous
следишь за мной?
Все любители дошиков на одно лицо 😊
Евгений
Сергей Шлоков
“наверное пользовались заготовками от Васи” - наверное это можно считать отсылкой к modExtra, хотя я и не говорил об этом прямо и привел ссылку на совршенно другой код. Но свои претензии я уже пояснил - я имею ввиду тот подход, когда люди тащат примеры, не внимания, как они работают.
Ах воно оно чё! Следы запутываешь. Сказал про Васину заготовку для пакетов. Все подумали про modExtra (ведь других заготовок у Васи нет), а ты раз - и дал ссылку на miniShop. Ох хитрец. А мог бы и на Тикетс сослаться. Тогда ваще никто бы не догалался.
Сергей Шлоков
Так что если хочется что-то притянуть за уши - ваше право, я от своих слов отказываться не стану.
Во-первых, не ваше право, а Ваше Величество! А во-вторых, я приказываю - откажЫсь от своих слов!!!😂
Сергей Шлоков
А вообще интересно, есть такие люди, которые подключая какую-нибудь либу, лезут в код, чтобы проверить кошерность кода?
Anonymous
я лезу, ибо можно словить такое говно в лицо потом, что не отмажешься
Anonymous
ну или когда оно работает хрен пойми как, приходится лезть в исходники, смотреть, что там за пиздец понаписали
Anonymous
а то на packagist все красиво описано, а на деле - фигня
Сергей Шлоков
ну или когда оно работает хрен пойми как, приходится лезть в исходники, смотреть, что там за пиздец понаписали
Открой тайну, какая конкретно причина заставила тебя залезть в modExtra? Чем тебе эта крошечная функция не угодила? 😄
Anonymous
да не лез я в него
Anonymous
но почти в каждом пакете она есть
Anonymous
более того, даже Марк, который не нуждается в представлении, занимается такой же фигней тут https://github.com/modxcms/revolution/pull/13194/files
Anonymous
На что Джейсон ему указал в принципе
Anonymous
я же говорю, Сергей троль
Anonymous
вцепился в одну фразу и гоняет ее туда сюда
Сергей Шлоков
но почти в каждом пакете она есть
Ну есть и есть. Работает без нареканий. Василий уже несколько лет как не занимается говнокодингом. 😂😂
Сергей Шлоков
вцепился в одну фразу и гоняет ее туда сюда
Ды ты сам выше говорил, что скучные темы. Чё не похулиганить. 😄
Anonymous
да я не против, но это ж серьезная тема
Anonymous
люди ж потом на работу устраиваться приходят, пальцы гнут, что они крутые, а на деле…
Сергей Шлоков
Серьёзно я выше написал, что информация полезная. И что я не спорю.
Сергей Шлоков
более того, даже Марк, который не нуждается в представлении, занимается такой же фигней тут https://github.com/modxcms/revolution/pull/13194/files
Да я у очень уважаемого тут человека видел код, который формирует строку с массивом для сохранения в файле. Он просто видимо не знал про функция var_export().
Sergey
https://pp.userapi.com/c845523/v845523006/ef093/pbw1ydrTN1U.jpg
Sergey
может Баян но
Pavel
Блин, сколько интересных методов есть в классе xPDOCacheManager... https://modx.pro/solutions/16353
Хера, я бы никогда не догадался искать методы работы с файлами в кэш менеджере, спасибо еще раз, очень упростил работу с файлами!
Sentinel
А под php 7.2 есть специфика настройки для modx?
Миша
https://docs.modx.com/revolution/2.x/developing-in-modx/other-development-resources/class-reference/modx/modx.getuser
Миша
$modx->getObject('modUser', $id);
Миша
потому что он лежит в Profile
Миша
$user = $modx->getObject('modUser', $id);
iWatchYouFromAfar
Ребят, возможно этот вопрос уже задавали, но я все таки рискну. HybridAuth тянет данные пользователя из соц сетей, например email, username и т.д. Но пароль само собой нет. Соответственно когда пользователь успешно заходит, в базу заносятся его данные. Вопрос - я аворизовался через vk или twitter - не важно, в пароль вбиваются данные. Что это за данные и откуда они?
Миша
$user->Profile();
Андрей
Ребята, как плейсхолдер в снипет передать
Aleksei
$user->Profile это не функция, скобки не нужны
Миша
Aleksei
$user->Profile->fullname
Pavel
$user->Profile это не функция, скобки не нужны
Где то читал что опасно обращаться так, мол безопаснее через getOne
Pavel
На modxclub по моему от ланца
Aleksei
нука-нука
Aleksei
и что же можно поломать таким образом
Pavel
Да не помню уже и как найти ту статью тоже хз, но аргументы там были весомые, я лично с тех пор только через getOne получаю связанные объекты
Pavel
Там даже были примеры того, как можно подменить данные
Aleksei
поскольку такая конструкция вовсю пользуется в самом классе, какая разница пользуешь ли ты ее вовне
Pavel
Там кто во что горазд
Pavel
http://screen.pavel.one/file/14_09_15_06_22.png
Aleksei
ну так и я говорю, какая разница
Anonymous
Опасность $user->Profile->fullname только в том, что в случае если профиля нет, то приложение упадет с fatal в рантайм
Anonymous
а в случае с getOne можно проверить, есть профиль или нет и обработать случай, когда его нет
Aleksei
а в случае с getOne можно проверить, есть профиль или нет и обработать случай, когда его нет
а ситуация, когда юзер есть, а профиля нет, возможна только если кто-то уже косякнул
Sentinel
ребят, а что за ошибки серверные такие, как их победить? [php7:error] [pid 21579] PHP Fatal error: Uncaught Error: [] operator not supported for strings in /var/www/html/core/components/pdotools/model/pdotools/pdofetch.class.php:152\nStack trace:\n#0 /var/www/html/core/cache/includes/elements/modsnippet/2.include.cache.php(37): pdoFetch->run()\n#1 /var/www/html/core/model/modx/modscript.class.php(70): include('/var/www/html/c...')\n#2 /var/www/html/core/model/modx/modparser.class.php(536): modScript->process(Array)\n#3 /var/www/html/core/components/pdotools/model/pdotools/pdoparser.class.php(242): modParser->processTag(Array, false)\n#4 /var/www/html/core/model/modx/modparser.class.php(250): pdoParser->processTag(Array, false)\n#5 /var/www/html/core/components/pdotools/model/pdotools/pdoparser.class.php(51): modParser->processElementTags('[[]]', '[[$head]]\\n\\n<bod...', false, false, '[[', ']]', Array, 9)\n#6 /var/www/html/core/model/modx/modtemplate.class.php(120): pdoParser->processElementTags('[[]]', '[[$head]]\\n\\n<bod...', false, false, '[[', ']]', Array, 10)\n#7 /var/www/html/core/model/modx/modresource.class.p in /var/www/html/core/components/pdotools/model/pdotools/pdofetch.class.php on line 152
Alex
Ответьте пожалуйста
[[snippet? &param=``]] в сниппете будет доступна переменная $param
Pavel
а ситуация, когда юзер есть, а профиля нет, возможна только если кто-то уже косякнул
На одном проекте была авторизация через Microsoft Active Directory, так вот там при авторизации создавался не "реальный" пользователь, а "абстрактный", соответственно профиль ему был не нужен т.к. данные тянулись из Active Directory, когда мне проект отдали я и знать как там устроена авторизация
Pavel
Не сказал бы что это косяк
Aleksei
Не сказал бы что это косяк
ок) но все равно это нестандартная ситуация
Aleksei
я про то, что в большинстве случаев штатного эксплуатирования $user->Profile не опасен, зато он пошустрее и памяти поменьше ест, пусть и символически)
Pavel
Подскажите лучше че за магия, вообще понять не могу: вот так like работает: http://screen.pavel.one/file/14_09_15_31_00.png
Pavel
А вот так нет: http://screen.pavel.one/file/14_09_15_31_38.png
Pavel
Всю голову уже сломал
Sentinel
7.2.9
Alex
7.2.9
а pdotools?