mngatoff
С нами с 07 февраля 2014; Место в рейтинге пользователей: #32ExtJs для новичков. Админка загрузилась. ч.2
В первой части познакомились с методом Ext.getCmp() для работы с компонентами ExtJs. Он позволяет взаимодействовать с виджетами ExtJs — панелями, таблицами, формами, окнами, запрашивать и обрабатывать данные с сервера и т.д. Но иногда требуется просто поработать с обычными HTML элементами. А для этого метод Ext.getCmp() совсем не подходит. Можно, конечно, пользоваться обычным javascript. Но уж очень хочется иметь такой же удобный инструмент как jQuery. И ExtJs предоставляет нам такой функционал. Для работы с элементами DOM у него есть несколько методов.
ExtJs для новичков. Админка загрузилась. ч.1
В прошлой статье мы попытались понять как формируется интерфейс админки на ExtJs. Теперь давайте попробуем разобраться, что можно сделать интерфейсом, который нам нарисовал ExtJs.
В ExtJs за каждым элементом интерфейса (панель, окно, таблица, кнопка, элемент формы) стоит специальный объект, называемый компонентом. Он отвечает за управление элементом интерфейса — создание, отображение, скрытие, удаление. В админке MODX все элементы «являются» компонентами ExtJs, за исключением верхнего меню. Разницу можно увидеть, если заглянуть в исходный код страницы — у меню простая и привычная HTML структура (ul > li > a), а если глянем на элемент, созданный ExtJs, то увидим, что он обернут дополнительными тегами. Например, вот код кнопки тулбара дерева ресурсов
В ExtJs за каждым элементом интерфейса (панель, окно, таблица, кнопка, элемент формы) стоит специальный объект, называемый компонентом. Он отвечает за управление элементом интерфейса — создание, отображение, скрытие, удаление. В админке MODX все элементы «являются» компонентами ExtJs, за исключением верхнего меню. Разницу можно увидеть, если заглянуть в исходный код страницы — у меню простая и привычная HTML структура (ul > li > a), а если глянем на элемент, созданный ExtJs, то увидим, что он обернут дополнительными тегами. Например, вот код кнопки тулбара дерева ресурсов
<span unselectable="on" class="x-btn x-btn-small x-btn-icon-small-left tree-new-static-resource x-btn-noicon" id="ext-comp-1062" style="">
<em class="">
<button type="button" id="ext-gen139" class=" x-btn-text" style=""> </button>
</em>
</span>
Принцип загрузки админки на ExtJs. Для новичков
В этой статье хочу немного развеять тучи над механизмом работы админки, логика которой основана на ExtJs. Для людей, далеких от php и javascript, это будет набором непонятных слов. А вот те, кого уже не пугают такие термины как ООП, наследование, конструкторы, поймут о чем я тут буду говорить. Это не курс. Я просто попытаюсь систематизировать информацию для понимания общего принципа работы админки.
В сети достаточно много различной информации об ExtJs. Есть отличный курс Василия, по которому многие из нас учились делать свои дополнения. В нем он разбирает тему создания различных ExtJs объектов. Я не буду повторять, то что у него уже разобрано, а постараюсь на простом языке сделать короткую выжимку. Начнем.
В сети достаточно много различной информации об ExtJs. Есть отличный курс Василия, по которому многие из нас учились делать свои дополнения. В нем он разбирает тему создания различных ExtJs объектов. Я не буду повторять, то что у него уже разобрано, а постараюсь на простом языке сделать короткую выжимку. Начнем.
Сборка transport-пакета без установки MODX
Писать свои пакеты для MODX не просто для новичка, да и опытному разработчику иногда не сладко приходится. Но новичок пугается, а опытный разбирается :).
Эта заметка рассказывает о том, как можно написать и собрать пакет компонента для MODX без установки и настройки самого MODX. Уровень выше среднего, так что возможно придется поломать голову в отдельных случаях, но оно того стоит.
За подробностями прошу под кат.
Кэширование в MODX Revo для Google Page Speed
Всем привет! Столкнулся с такой проблемой, при проверке сайта в developers.google.com/speed/pagespeed/insights/ выскакиевает такая ошибка:
Fenom + MobileDetect + NGINX + PHP5-FPM = 502 bad gateway
Здравствуйте.
Столкнулся с такой проблемой. У меня установлен Fenom, MobileDetect. Я разбил в чанке "layout" основную и мобильную версии тегами. Захожу на главную страницу — 502 ошибка. В логах nginx вот такое:
Самое интересное, когда отключаю плагин MobileDetect — всё работает. Помогите, пожалуйста, побороть эту неприятность.
Решение в комментариях.
Столкнулся с такой проблемой. У меня установлен Fenom, MobileDetect. Я разбил в чанке "layout" основную и мобильную версии тегами. Захожу на главную страницу — 502 ошибка. В логах nginx вот такое:
2015/08/24 13:24:23 [error] 9787#0: *216565 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: *2.**.*20.*9, server: kfm.****.kz, request: "GET / HTTP/1.1", upstream: "fastcgi://unix:/var/run/php5-kfm2.sock:", host: "kfm.****.kz", referrer: "http://kfm.****.kz/manager/?a=element/template/update&id=1"
Пояндексил — пишут, что это из-за ошибки в PHP. Nginx как бы сообщает, что PHP не отдал ему ответ.Самое интересное, когда отключаю плагин MobileDetect — всё работает. Помогите, пожалуйста, побороть эту неприятность.
Решение в комментариях.
Подключить вкладку с комментариями Tickets
Добрый день.
Подскажите, как подключить вкладку с комментариями Tickets к простому ресурсу с определенным шаблоном в менеджере?
Подскажите, как подключить вкладку с комментариями Tickets к простому ресурсу с определенным шаблоном в менеджере?
modx кодировка бд
Всем привет!
У меня возникла проблема с кодировкой базы данных в modx revo.
Сейчас все выглядит примерно так:
Кодировка => latin1_swedish_ci
На сайте все выводиться адекватно.
Начал искать информацию как сменить кодировку с latin1_swedish => utf8_general_ci
Нашел полезный скрипт:
Уважаемые пользователи может кто-то сталкивался с подобной проблемой?
Подскажите как сделать адекватное отображение русских символов на сайте.
Спасибо за внимание.
У меня возникла проблема с кодировкой базы данных в modx revo.
Сейчас все выглядит примерно так:
Кодировка => latin1_swedish_ci
На сайте все выводиться адекватно.
Начал искать информацию как сменить кодировку с latin1_swedish => utf8_general_ci
Нашел полезный скрипт:
<?php
$dbname = 'dbname';
if (!mysql_connect('localhost', 'login', 'password')) {
print 'Could not connect to mysql';
exit;
}
$result = mysql_list_tables($dbname);
if (!$result) {
print "DB Error, could not list tables\n";
print 'MySQL Error: ' . mysql_error();
exit;
}
while ($row = mysql_fetch_row($result)) {
$sql_s = "ALTER TABLE ".$row[0]." CONVERT TO CHARACTER SET utf8";
mysql_query($sql_s);
$sql = "SELECT * FROM ".$row[0];
mysql_query('SET NAMES latin1');
$res = mysql_query($sql);
while($rows = mysql_fetch_assoc($res))
{
$array_table[$row[0]][] = $rows;
$zapros = '';
foreach($rows as $key=>$value)
{
$zapros .= ' , `'.$key.'` = "'.mysql_real_escape_string($value).'" ';
}
$zapros = substr($zapros, 2);
$sql_a = "UPDATE ".$row[0]." SET ".$zapros." WHERE id = ".$rows['id'];
mysql_query('SET NAMES utf8');
mysql_query($sql_a);
}
}
?>
Запустил из корня. Все корректно выполнилось. Зашел в БД -> все адекватно выводиться, кодировка изменилась. Захожу на сайт, а там крякозябры. :(Уважаемые пользователи может кто-то сталкивался с подобной проблемой?
Подскажите как сделать адекватное отображение русских символов на сайте.
Спасибо за внимание.
[ms2gallery] Источник файлов для разных шаблонов
Небольшой плагин, позволяющий автоматически установить нужный источник файлов при создании ресурса с использованием дополнения ms2gallery.
Откуда пришел лид
Здравствуйте. Возник вопрос: необходимо, чтобы при получении данных с отправленной формы приходил отчет, откуда пришел посетитель на сайт. Реализовано ли такое дополнение для MODX Revo?