
— конференция профессиональных веб-разработчиков, посвященная ведущим технологиям программирования и веб-разработки.
DEVCONF — это новая конференция, которая собрала вместе лидеров сообществ web-разработчиков.
Мы объединили усилия, чтобы сделать эту глобальную конференцию доступной для любого участника, живым и увлекательным местом сбора профессионалов web-разработки.
В данный момент есть идет сбор заявок на доклады
http://www.devconf.ru/phpconf/offersИз уже подданых заявок
— Premature Optimization Mistakes (Ilia Alshanetsky — известный разработчик ядра PHP)
— PHP 5.3 в бою. Опыт с фронта (Doctrine 2, Symfony 2, Zend Framework 2 и др.) Туревич Георгий, Wizartech
— MariaDB — ветка MySQL с большими возможностями — Сергей Петруня (http://askmonty.org/)
— Основы построения масштабируемых высоконагруженных веб-проектов Алексей Рыбак (badoo.com)
— Решения высокой надежности на базе MySQL — Алик Рубин, MySQL
— Пора ли отправлять С на свалку истории? Пишем демонов на PHP с использованием расширения libevent Вадим Крючков, Agunga
— Мониторинг производительности MySQL с использованием performance schema — Алексей Копытов, MySQL

В
ExtJs есть интересные объект Ext.state.Manager, который позволяет запоминать состояние объектов типа
Ext.Component. Но для того, что бы
Ext.form.Combobox сохранял состояние надо задать некоторые функции в конфиг.
stateful: true,
stateEvents: ['select'],
getState: function() {
return {checked: this.getValue()}
},
applyState: function(state) {
this.setValue(state.checked);
}
stateful - включаем сохраннение состояний
stateEvents - задаём массив событий, по завершению которых, нужно сохранять состояние объекта
getState, applyState - что делать с объектом, при получении состояния и при инициализаии объекта из данных.

Есть такой компонент в библиотеке. Но вот проблема, он "забывает" сортировку в Ext.grid.GridPanel. Сейчас я покажу как его легко и просто от этого отчуить. А если у нас ещё есть и фильтрация на стороне сервера, эти данные он тоже будет помнить как и сам grid.
Ext.PagingToolbar.prototype.doLoad = function(start){
var o = {}, pn = this.paramNames;
o[pn.start] = start;
o[pn.limit] = this.pageSize;
if(this.fireEvent('beforechange', this, o) !== false){
o = Ext.apply(this.store.lastOptions.params, o);
this.store.load({params:o});
}
};
Всего-то переопределили функцию загрузки данных, добавив "o = Ext.apply(this.store.lastOptions.params, o);" вот эту строчку. Эта функция выполняется при любом действиее на toolbar-е.
Куда разместить это код?
- Сразу же после загрузки библиотеки.