Не догоняю что делать с event

Заранее прошу прощения за нубский вопрос, но я не силён в ООП.
Подскажите, пожалуйста, такой момент. Сделал дополнительное поле group в профиле. Теперь мне надо фильтровать людей по этому полю по аналогии с /people/country/countryname. Предполагаю, что будет это выглядеть как /people/group/groupname
Модифицирую по имеющемуся образу и подобию classes/actions/ActionPeople.class.php добавляя:
protected function RegisterEvent() {		
                ...
		$this->AddEvent('group','EventGroup');
	}


В тупую копирую protected function EventCountry() {...} заменяя название на protected function EventGroup() {...}.
Упорно лезет 404. Где еще я что не дописал? Или я вообще не с этого края зашел?
Заранее спасибо.

4 комментария

avatar
а шаблон создан для этого ивента?
копируем файл country.tpl и переименовыем его в group.tpl

Либо в самом ивенте указываете какой шаблон использовать $this->SetTemplateAction('имя_шаблона');
avatar
В templates/skin/new/actions/ActionPeople? Да, есть.
avatar
1) А что можно быть сильно сильным? ) Поправьте опечатку )
2) Копировать надо не в тупую а в умную. У Эвента EventCountry() первыми строками идёт:
if (!($oCountry=$this->User_GetCountryByName(urldecode($this->getParam(0))))) {
	return parent::EventNotFound();
}

Вот это скорее всего вас и выкидывает на 404

+
это:
$this->AddEvent('group','EventGroup');
исправить на это:
$this->AddEventPreg('/^group$/i','/^.+$/i','/^(page(\d+))?$/i','EventGroup');

Ну это всё как минимум для начала. Далее я думаю разберётесь и допилите всё до конца.
avatar
if (!($oCountry=$this->User_GetCountryByName(urldecode($this->getParam(0))))) {
        return parent::EventNotFound();
}

Полагаю, что надо сделать объект User_GetCountryByGroup, а в каком именно файле его делать?

И зачем то, что после плюсика? Ведь с country все без регэкспов работает?
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.