Выносим обработку евентов в отдельный файл

В транковой версии на github.com появилась возможность выносить объемную обработку евентов из экшена в отдельные файлы.

Эти файлы размещаются в каталоге /classes/actions/[action]/Event[Name].class.php, где [action] — это название экшена, которому принадлежит евент, [Name] — название внешнего обработчика евента.

Рассмотрим более подробно.
Пусть у нас будет экшен ActionBlog.class.php:
<?php

class ActionBlog extends Action {

	public $oUserCurrent=null;

	public function Init() {
		$this->oUserCurrent=$this->User_GetUserCurrent();

		$this->SetDefaultEvent('index');
	}

	/**
	 * Регистрируем евенты
	 *
	 */
	protected function RegisterEvent() {
		/**
		 * Регистрируем внешние обработчики евентов
		 */
		$this->RegisterEventExternal('Topic','ActionBlog_EventTopic');

		$this->AddEvent('index','EventIndex');
		$this->AddEventPreg('/^topic$/i','/^(\d+)\.html$/i','/^$/i','Topic::EventShowTopic');
		$this->AddEventPreg('/^topic$/i','/^list$/i','/^$/i','Topic::EventList');
	}


	protected function EventIndex() {
		/**
		 * Устанавливаем шаблон для вывода
		 */
		$this->SetTemplateAction('index');
	}
}
?>

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

Модуль - переход на эвент

UPD
вопрос решён! всем большое спасибо за участие!
проблема была в шаблоне:
как оказалось — Smarty не нравятся записи вида:
{foreach from=$listCategory item=сategory}

а нравятся
{foreach from=$listCategory item=Category}


Привет!
Пишу модуль под LS 0.3.1 :) На локальном денвере — всё работает — переношу на хостинг и часть модуля не работает.
Получается так:
site.ru/mmmm/dddd
Экшн на mmmm и эвент на dddd отрабатывают

, а вот так:
site.ru/mmmm/edit/0/
или
site.ru/mmmm/process/0/
евент для process отрабатывает, но почему-то показывается пустая страница :(
нужный для евента шаблон — есть.
никак не могу понять — в чём может быть дело? :S

Подскажите — в какую сторону копать?