Изменения типа поля в админской панели minishop2
Наверное эта заметка больше для себя самого, но в друг кому-то пригодится.
В рамках необходимости и в меру своих способностей кастомизирую панель с заказами минишопа под свои задачи.
Т.к. я не решился добавлять новые поля в закладку адрес, а просто переделать старые под себя, в какой-то момент перед мной встала задача изменить тип поля.
И мне нужно, что бы был не просто input, а стал input type='data'
Готового решения на просторах интернета я не нашел, пришлось ваять самому. Код получился не сложный и весьма короткий, но в силу того, что знаний у меня не много, для меня трудный =)
Создал плагин с любым названием и указал событие msOnManagerCustomCssJs
Содержание самого плагина:
второй за блок на самой закладке и так далее, аля вложенный список с элементами.
Кстати, если кто знает, как обратиться к элементу не вот так как у меня выше, а по идентификатору, то будет круто если поделитесь, т.к. на сколько я понимаю, если видоизменить закладку «адрес», то работать перестанет.
В рамках необходимости и в меру своих способностей кастомизирую панель с заказами минишопа под свои задачи.
Т.к. я не решился добавлять новые поля в закладку адрес, а просто переделать старые под себя, в какой-то момент перед мной встала задача изменить тип поля.
И мне нужно, что бы был не просто input, а стал input type='data'
Готового решения на просторах интернета я не нашел, пришлось ваять самому. Код получился не сложный и весьма короткий, но в силу того, что знаний у меня не много, для меня трудный =)
Создал плагин с любым названием и указал событие msOnManagerCustomCssJs
<?php
switch ($modx->event->name) {
case 'msOnManagerCustomCssJs':
if ($page != 'orders') return;
$modx->controller->addHtml("
<script>
Ext.ComponentMgr.onAvailable('minishop2-window-order-update', function(){
this.fields.items[2].items[0].items[0].items[0].xtype = 'datefield';
this.fields.items[2].items[0].items[0].items[0].format='Y-m-d';
});
</script>");
break;
}
this.fields.items[2].items[0].items[0].items[0] причем в этом месте первый items отвечает за вкладки, т.е. заказ, покупка, адрес и т.д.второй за блок на самой закладке и так далее, аля вложенный список с элементами.
Кстати, если кто знает, как обратиться к элементу не вот так как у меня выше, а по идентификатору, то будет круто если поделитесь, т.к. на сколько я понимаю, если видоизменить закладку «адрес», то работать перестанет.
Комментарии: 2
Кстати, если кто знает, как обратиться к элементу не вот так как у меня выше, а по идентификатору, то будет круто если поделитесьПопробуй Ext.getCmp(id)
Или другие «геттеры» (на той же странице есть описание).
Спасибо, обязательно попробую
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.