Еще один вопрос по ORM
2
Всем привет!
Есть три таблицы:

Связь Entry описана:
При запросе типа…
… загружается коллекция записей. В дальнейшем, при обходе коллекции в каждой итерации выполняется код:
Все работает, но не устраивает поток запросов к БД :(
Вопрос знатокам:
Есть ли способ загрузки всей коллекции ресурсов (к каждой записи entry) на этапе вызова Entry_GetEntryItemsByFilter?
Пробовал через #with. Не получилось. Утыкается в проверку типа связи, где и вызывает исключение.
Есть три таблицы:

Связь Entry описана:
protected $aRelations = array(
'resources' => array(self::RELATION_TYPE_MANY_TO_MANY,'ModuleResource_EntityResource', 'resource_id', 'db.table.resource_to_entry', 'entry_id')
);
При запросе типа…
$colEntries = $this->Entry_GetEntryItemsByFilter(array(
'status'=>'published',
'#with' => array(),
'#order'=>array('date_begin' => 'asc'),
'#page' => array($page,$perpage)
));… загружается коллекция записей. В дальнейшем, при обходе коллекции в каждой итерации выполняется код:
$oEntry->getResources(array('resource_type'=>'IMAGE_THUMB_ENTRY_TYPE1','deleted'=>0)Все работает, но не устраивает поток запросов к БД :(
Вопрос знатокам:
Есть ли способ загрузки всей коллекции ресурсов (к каждой записи entry) на этапе вызова Entry_GetEntryItemsByFilter?
Пробовал через #with. Не получилось. Утыкается в проверку типа связи, где и вызывает исключение.
- 0
- 19 января 2012, 12:40
- HangGlider
- 1
Sisyphus - защита HTML формы
20
Привет Сообщество!
Вчера днем, многие хабраюзеры могли прочитать о jQuery плагине Sisyphus.
Этот плагин подключается к HTML форме и на лету сохраняет данные в LocalStorage. Если до момента отправки формы рухнет браузер, случайно закроется вкладка или вырубят электричество — данные будут сохранены. При следующем открытии страницы с формой она будет заполнена сохраненными данными.
- Сайт: Sisyphus.js
- Автор: Alexander Kaupanin
Плагин Sisyphus для LiveStreet подключает Sisyphus.js к форме создания топика (всех типов).
Для проектов написанных с использованием js-фрэймворка Mootools, jQuery будет загружен автоматически.
Плагин протестирован в 0.4.2 и 0.5.1 версиях LiveStreet.
Плагин не тестировался с WYSIWYG-редакторами. (есть мнение, что не заработает)
- Скачать с GitHub
- Скачать с репозитария (после модерации)
- +6
- 28 октября 2011, 12:12
- HangGlider
- 13
Плагин Facebook 0.5
31
Привет Сообщество!
Рад представить вашему вниманию, обновленную версию плагина Facebook.
Плагин поддерживает версии LiveStreet 0.4.2 и 0.5.1
Поддерживаются шаблоны написанные с использованием как mootools, так и jquery.
UPD 23.12.2011: С 13 декабря, JavaScript SDK стал поддерживать OAuth 2.0 для авторизации. Это привело к появлению ошибки при попытке авторизоваться и получить список страниц пользователя на втором шаге мастера настройки. Ошибка исправлена в версии 0.5.1. Спасибо Giorgi за сообщение о неработоспособности.
Подробнее
- +10
- 17 октября 2011, 16:02
- HangGlider
- 56
Плагин Facebook
24Назначение:

- Публикация анонсов топиков на стену страницы (page) в Facebook
- OpenGraph тэги: поддерживаются картинки и видео
- Виджет Like Box
- Виджет Recommendations
Страничка плагина на livestreetcms.com
Кроме того, скачать можно с GitHub
Демо:
«Разбор полетов» приветствуется. :)
- +5
- 22 ноября 2010, 02:02
- HangGlider
- 99
При публикации ссылки, весь HTML переводится в текст
При публикации ссылки, этот текст в режиме предпросмотра отображается как HTML, а после публикации как текст.
<img src="http://livestreet.ru/uploads/images/3511/avatar_48x48.jpg?161933" alt="Тест">
<b>test</b>
- 0
- 28 мая 2010, 11:36
- HangGlider
- img245.imageshack.us/img245/91...
- 2
Подключение плагинов под Windows [rev. 688]
Файл: Engine.class.php, функция InitPlugins
При обработке файла /classes/plugins/plugins.dat сформированного в Windows редакторе, в переменной $sPluginName остаются два символа с кодами 13 и 10.
Предлагаемое решение проблемы: обработка $sPluginName функцией trim.
Аналогичные проблемы найдены в:
Engine.class.php, функция InitPluginHooks
Lang.class.php, функиця LoadLangFiles
loader.php, строка 136
275: if($aPluginList = @file(Config::Get('path.root.server').'/classes/plugins/plugins.dat')) {
276: foreach ($aPluginList as $sPluginName) {
При обработке файла /classes/plugins/plugins.dat сформированного в Windows редакторе, в переменной $sPluginName остаются два символа с кодами 13 и 10.
Предлагаемое решение проблемы: обработка $sPluginName функцией trim.
275: if($aPluginList = @file(Config::Get('path.root.server').'/classes/plugins/plugins.dat')) {
276: foreach ($aPluginList as $sPluginName) {
+277: $sPluginName=trim($sPluginName);
Аналогичные проблемы найдены в:
Engine.class.php, функция InitPluginHooks
Lang.class.php, функиця LoadLangFiles
loader.php, строка 136
- -1
- 30 декабря 2009, 12:38
- HangGlider
- 1