Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Compatibility with MODX 3 #319

Open
wants to merge 35 commits into
base: 3.x
Choose a base branch
from
Open

Compatibility with MODX 3 #319

wants to merge 35 commits into from

Conversation

alroniks
Copy link
Member

@alroniks alroniks commented Dec 6, 2021

Что оно делает?

Реализует совместимость pdoTools с MODX 3.0.

Зачем это нужно?

Сделать возможным использование самой популярной библиотеки с новой версией MODX.

Связанные проблема(ы)/PR(ы)

Нет

Copy link
Member

@Ibochkarev Ibochkarev left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[2021-12-07 03:59:22] (INFO @ /Users/bochkarev/Desktop/modx-3.0.0-beta2/core/src/Revolution/Transport/modPackageBuilder.php : 147) Создан новый пакет с подписью: pdotools-3.0.0-beta
[2021-12-07 03:59:22] (INFO @ /Users/bochkarev/Desktop/modx-3.0.0-beta2/core/src/Revolution/Transport/modPackageBuilder.php : 186) Зарегистрировано пространство имён пакета: pdotools
[2021-12-07 03:59:22] (INFO @ /Users/bochkarev/Desktop/modx-3.0.0-beta2/core/src/Revolution/Transport/modPackageBuilder.php : 204) Пространство имён «pdotools» упаковано в пакет.
[2021-12-07 03:59:22] (INFO @ /Users/bochkarev/Desktop/modx-3.0.0-beta2/pdoTools/_build/build.transport.php : 50) Created Transport Package and Namespace.
[2021-12-07 03:59:22] (INFO @ /Users/bochkarev/Desktop/modx-3.0.0-beta2/pdoTools/_build/build.transport.php : 77) Packaged in 10 snippets.
[2021-12-07 03:59:22] (INFO @ /Users/bochkarev/Desktop/modx-3.0.0-beta2/pdoTools/_build/build.transport.php : 98) Packaged in 1 plugins.
[2021-12-07 03:59:22] (INFO @ /Users/bochkarev/Desktop/modx-3.0.0-beta2/pdoTools/_build/build.transport.php : 139) Packaged in 8 System Settings.
[2021-12-07 03:59:22] (INFO @ /Users/bochkarev/Desktop/modx-3.0.0-beta2/pdoTools/_build/build.transport.php : 158) Packaged in 1 Plugins events.
[2021-12-07 03:59:22] (INFO @ /Users/bochkarev/Desktop/modx-3.0.0-beta2/pdoTools/_build/build.transport.php : 172) Added package attributes and setup options.
[2021-12-07 03:59:22] (INFO @ /Users/bochkarev/Desktop/modx-3.0.0-beta2/pdoTools/_build/build.transport.php : 175) Packing up transport package zip...
[2021-12-07 03:59:22] (INFO @ /Users/bochkarev/Desktop/modx-3.0.0-beta2/pdoTools/_build/build.transport.php : 227) 

Execution time: 0.1831 s

После установки создается пакет в core/packages/pdotools-3.0.0-beta.transport.zip

Но пакет не устанавливается

изображение

  • Переходим в Менеджер пакетов - Искать пакеты локально
  • Видим в списке пакет для установки
  • Нажимаем установить

изображение

Админка падает

Уточнение не был запущен composer install

@Ibochkarev
Copy link
Member

Ibochkarev commented Dec 7, 2021

Для тестирования:

gh repo clone modx-pro/pdoTools
cd pdoTools
gh pr checkout https://github.com/modx-pro/pdoTools/pull/319
cd core/components/pdotools
composer install

Далее заходим в менеджер пакетов, поиск пакетов локально, устанавливаем

pdotools-3.0.0-beta.transport.zip - собранный пакет

@sergant210
Copy link
Member

sergant210 commented Dec 7, 2021

pdotools-3.0.0-beta.transport.zip
Исправлены некоторые ошибки.

@ilyautkin
Copy link
Contributor

Синтаксис FastField ([[#2.address]]) - работает
Проверены сниппеты: pdoMenu, pdoCrumbs, pdoUsers
Инлайновые чанки работают
Феном в чанках по умолчанию работает
При включенной настройке pdotools_fenom_parser парсер Феном работает на страницах

alroniks and others added 22 commits December 8, 2021 23:58
Несколько улучшений по коду рефакторинга
Add MODX as dev-dependency for local development
prepateTVs = 1 and processTVs = 1 stopped working in v.3.0.0-Beta as the equality check changed to identity check. But all values arriving from usual snippet calls and property sets arrive as string instead of number, making the "=== 1" check always fail, except maybe if calling the snippets by using the MODX runSnippet API.
Fix prepareTVs and processTVs = 1 not working
[3.0.0-beta] fatal error in connector.php
Fix makeUrl method properties
Замена имени класса на FQN.
sshlokov and others added 11 commits July 25, 2022 11:54
[С некоторых пор](ab4934d#diff-df1b56538c6abe3aefac65ce5f4a027cc988cb15e21882bb272cdcb06281c2f5R142) `pdoPage` вызывает все сниппеты в `element` некэшируемыми, принудительно подставляя восклицательный знак перед именем.

Это ломает работу файловых сниппетов:
```
{'!pdoPage' | snippet : [
    'element' => '@file elements/snippets/overview.snippet.php',
    'tplPage' => '@file elements/chunks/pagination/page.tpl',
    'tplPageWrapper' => '@file elements/chunks/pagination/page-wrapper.tpl'
]}
```

Имя получается `!@file elements...`, собачка на 1й позиции считается за Property Set и сниппет не может быть загружен.

Данное изменение это исправляет, позволяя указывать восклицательный знак и для элементов c биндингами.
Поддержка файловых сниппетов в pdoPage
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

8 participants