Для разработчиков

[modExtra] Update таблиц своего компонента

Добрый день!
Все мы знаем, что MODX прекрасен мощью решений с помощью компонентов. Я, например, всегда отдаю заказчику сайт в виде компонента, содержащего нужные элементы, зависимости от других компонентов, инициализацию нужных опций и т.д. В этом мне всегда помогал modExtra.
Но вот в один прекрасный момент я задумался, как сделать пользовательские таблицы в своём компоненте таким образом, чтобы при апдейте компонента они были способны расширяться, да и вообще поддерживаться в актуальном состоянии.
Итак задача:
  • У нас есть файл схемы mycomponent.mysql.schema.xml, который поставляется вместе с компонентом (или его новой версией) и содержит актуальную информацию о структуре пользовательских таблиц.
  • У нас есть БД в которой может не быть наших таблиц (установка с нуля), а могут быть (как правильной, так и неправильной структуры).
Цель: добиться идентичности схемы и реальных таблиц для нормальной работы компонента.
Михаил Малых
01 сентября 2015, 10:53
modx.pro
15
2 367
+13

Особенности метода xPDOObject::save() + транзакции

В продолжение вот этой темы опубликовал новую статью на хабре habrahabr.ru/post/265485/
Крайне настоятельно рекомендую к прочтению экспертам.
Fi1osof
26 августа 2015, 15:08
modx.pro
1 129
+8

Как не надо расширять MODX-процессоры

В MODX-2.4.0 появился новый процессор updatefromelement.class.php by Argnist, пришедший на замену обычному процессору updatefromelement.php. Заменять non-classed процессоры конечно дело хорошее, но делать надо это крайне осторожно и обдуманно.

Сразу уточню, что этот процессор используется для обновления параметров элементов (типа шаблонов, сниппетов и т.п.)
Fi1osof
22 августа 2015, 14:18
modx.pro
8
3 861
+10

Не ставятся некоторые modx-пакеты (Ubuntu 14.04+)

В очередной раз после обновления modx наступил на грабли при установке msearch2 (иногда бывает и у других пакетов), возможно кому-то будет полезно:
Итак, имеем ubuntu 14.04+ и modx revo
при установке msearch2 процесс останавливается на Trying to download russian dictionary…
Суть проблемы в файле: /your_site/core/packages/msearch2-x.y.z-pl/modCategory/%hash%.resolve.dictionaries.resolver (стр. 62)
После создания нового объекта PclZip нет проверки его на null, а стоило бы, потому как в некоторых сборках PHP на ubuntu функция gzopen называется gzopen64, и в /core/xpdo/compression/pclzip.lib.php PHP радостно падает, так как о gzopen64 ему ничего не известно.
Кирилл
05 августа 2015, 19:18
modx.pro
1 152
+2

Изменение размера шрифта панелей и меню в PhpStorm

Изменить свойства шрифта окна редактора проблем не составляет.
А вот как в ubuntu-подобных можно изменить, например, размер шрифта меню, вкладок и панелей.

1. Создать такой файл, дать ему любое имя и сохранить, например, в домашней директории

style "user-font" 
{
       font_name="Verdana 12" 
}
widget_class "*" style "user-font"
2. Запустить PhpStorm

GTK2_RC_FILES=путь/к/сохраненному/файлу путь/к/phpstorm.sh
Вот что получилось.

Андрей Иванов
19 июня 2015, 15:18
modx.pro
7 426
-1

Симпатичный вывод массивов

Может пригодится кому. В сниппетах при разработке часто по быстрому приходится просмотреть массив и использовать print_r. И сложно его разобрать.
Гораздо симпатичнее будет вывод, если обернуть его в пару строк:
echo "<div style='font-size:9pt; color:#000; background:#fff; border:1px dashed #000;'>";
echo "<pre style='padding:10px;'>";
print_r($array);
echo "
";
echo "";
Стас
30 апреля 2015, 23:19
modx.pro
987
0

Шаблон Uikit для Tickets

Набросал шаблон для Tickets на фреймворке Uikit.
Желание появилось по 2м причинам:
  1. Uikit использую всё чаще
  2. Используются префиксы в классах во-избежании конфликтов с шаблонами
Если есть желающие помочь в тестировании и оптимизации, продолжу в ближайшее время.
Alexander V
20 апреля 2015, 12:56
modx.pro
1
3 503
+5

Увеличить размер имени шаблона.

Возникал необходимость задать длинное название шаблона превышающего ограничение в 50 символов. Можно ли это решить и как? Подскажите пожалуйста.
Алексей
18 марта 2015, 22:45
modx.pro
880
-2

UiCMPGenerator дополнение для создания пакетов

Hi, написал тут свое дополнение для создания пакетов UiCMPGenerator. За основу взято дополнение CMPGenerator, но в моем прикручен графический интерфейс для создания зависимостей типа Композиционная (Composite) и Агрегирующая (Aggregate), а также можно расширять родные таблицы Modx-a.
Для работы требуется MODX Revolution 2.3.х

Ссылка на офф репозиторий http://modx.com/extras/package/uicmpgenerator
Видео: http://youtu.be/Qkspw8kXwK4
Prihod
14 января 2015, 17:21
modx.pro
27
7 050
+26

Twitter Bootstrap vs Uikit

Давно работаю с CSS фреймворком Uikit и мне он кажется намного интересней и более продвинутым в сравнении с привычным Twitter Bootstrap. Единственный минус, это замена цветовой схемы, её приходится править в каждом компоненте.
Хотелось бы от вас услышать доводы в пользу одного или друго CSS-фреймворка.
Есть ряд вопросов к TB, которые надо пилить и которые есть уже в Uikit. Задумался над выбором, пилить TB т.к. популярный или продолжать работать на Uikit.
Alexander V
14 января 2015, 08:05
modx.pro
12 129
+2