+6.72
Рейтинг
20.07
Сила

Andrey

Обновление плагина "OpenID"

OpenID pluginПлагин «OpenID» обновился до версии 1.2.0.
Добавлена поддержка авторизации через Facebook и Twitter аккаунты.
Скачать новую версию можно с каталога — livestreetcms.ru/addons/view/1/

Изменение наименований классов в движке

В LiveStreet произошел рефакторинг формы наименований классов. Данное предложение высказывалось avadim'ом еще на LS-party и теперь реализовано.

Новые формы:
  • модуль — Module[имя модуля]
  • маппер — Module[имя модуля]_Mapper[имя маппера]
  • сущность — Module[имя модуля]_Entity[имя сущности]

Для плагинов добавляется префикс Plugin[имя плагина]_, например, Plugin[имя плагина]_Module[имя модуля]_Entity[имя сущности].

Подключение маппера теперь происходит автоматически при вызове метода Engine::GetMapper() в модуле:
Engine::GetMapper(__CLASS__) — вернет маппер совпадающий с именем модуля
Engine::GetMapper(__CLASS__,'Test') — вернет маппер Test

Такой подход позволит навести порядок и логику в названия классов.

В связи с этим плагины, написанные под релизную версию 0.4, работать не будут на последней версии из SVN. Для обеспечения их работоспособности нужно только переименовать классы согласно новым правилам.

Разнные классы для топика

Добрый день, помогите пожалуйста разобраться с выводом разных классов для топика в зависимости размера превьюшки. Есть 3 типа привьюшек. Пробывал сделать что-то на подобие вывода аваторок, но где-то моя логика хромает. Потом предположил что есть функция для обработки изображении, но как ею воспользоваться не понял.

Вот такой результат пытаюсь получить:

Обработка изображений: crop, watermark, скругление углов



В новой версии livestreet намного улучшена работа с изображениями (и в плане качества, и в плане гибкости). Для обслуживания всевозможных операций с изображениями отведен специальный engine-модуль Image.

Коротко о том, что появилось нового:

1. Решена проблема с некрасивым ресайзом неквадратных аватарок (путем предварительного вырезания наибольшего возможного квадрата).

2. Устранены «почти» все проблемы с обработкой alpha и non-alpha прозрачности («почти»=«на столько на сколько это вообще возможно сделать с помощью PHP+GD2»). По крайней мере прозрачные png теперь можно использовать в аватарках спокойно.

3. Формирование HTML кода выводимого изображения централизировано в одной функции Image_BuildHTML(), которая запрашивает путь к изображению и дополнительные параметры (title,alt,align).

4. Watermark: возможность автоматически добавлять на загружаемые изображения надписи или изображения с достаточно гибкой конфигурацией (пример надписи см выше).

5. Закругление углов изображения.

О том, как пользоваться 4 и 5 поговорим подробнее.

Читать дальше →

Hacking attemp!

Ставлю на локальный сервер. При попытке авторизации выдает Hacking attemp!, зарегаться также не удается. В чем может быть проблема?

upd: нашел решение тут

работает под mac os 10.5.7 (ставил MAMP). Safari 4.0.2

Хак: Выполнение PHP кода на статических страницах

Иногда бывает полезно выполнить на статической странице PHP код (различные сервисы, mini-tools, и т.д.). В WordPress для этого есть специальный плагин, а для полюбившегося LiveStreet сделал так:

Читать дальше →

В топку <noindex>

Назрел вопрос! Значится так…

Зачем в принудительном порядке все внешние ссылки прячутся в noindex? А как теперь быть с рекламными постами? Приходится залазить в мускул и править ручками. И при последующем редактировании топика, все повторяется опять.

Хочу сказать, что поисковики прекрасно видят эти закрытые от индексации ссылки и они же иногда попадают в выдачу. Своими глазами видел. Не всегда хорошо прятать индексацию внешней ссылки. Спрятал значит в чем то виноват. Скоро такая логика появится и в алгоритмах поисковиков, если уже не появилась.

Так что же я хочу этим всем сказать?
Почему бы не добавить дополнительную функцию «Разрешить индексацию ссылок». То есть поставил галочку и внешние открыты, оставил поле пустым прощай боты.

Жду комментариев. А может от кого и хака :)

Механизм хуков в движке

В продолжении топиков LiveStreet как платформа для модулей и Тест хуков в движке появилась поддержка хуков.

Использовать можно так:
1. В любом месте(модуле, экшене) установить вызов необходимого хука на метод модуля
$this->Hook_AddExecModule('topic_show','Test_MyHookRun',10);
регистрирует на событие topic_show вызов метода MyHookRun у модуля Test с приоритетом 10.
2. В любом месте установить вызов хука на функцию
$this->Hook_AddExecFunction('topic_show','var_dump',-5);
регистрирует вызов функции var_dump
3. Создать класс хука в каталоге /classes/hooks/ с именем файла HookTest.class.php с содержанием
<? 
class HookTest extends Hook {	
	public function RegisterHook() {
		$this->AddHook('topic_show','testHookFunct',__CLASS__,-3);
	}
	
	public function testHookFunct($aVars) {
		var_dump("Hook it!");
	}
}
?>

Читать дальше →