Cześć, przeanalizowałem sobie ostatnio kod kohany, aby wiedzieć mniej więcej jako to działa, ale nie mogę zrozumieć/znaleźć jednej rzeczy. Chodzi mi konkretnie o zdarzenia:
Event::system.display
Event::system.ready
Event::system.post_routing
Event::system.pre_controller
Event::system.post_controller_constructor
Event::system.post_controller
Widzę gdzie są one wywołane, ale nie wiem gdzie są dodawane. W Event::run dopisałem sobie też:
  1. print_r($callback).'<br />';

Ale dla tych zdarzeń nie wyświetla żadnej tablicy, skoro nie wywołują one żadnych funkcji to czemu służą?

Chciałem także mieć przecinki w adresach, konkretnie pomiędzy metodą a jej argumentem, jedyne co wymyśliłem to zamiana tych linijek w Router:
  1. Router::$segments = ($default_route === TRUE OR Router::$segments === '') ? array() : explode('/', Router::$segments);
  2. Router::$rsegments = explode('/', Router::$rsegments);

na coś takiego:
  1. Router::$segments = ($default_route === TRUE OR Router::$segments === '') ? array() : preg_split('/(\s+|,|\/)/', Router::$segments);
  2. Router::$rsegments = preg_split('/(\s+|,|\/)/', Router::$rsegments);

Tyle, że kohana tak naprawdę nie rozróżnia przy podziale na segmenty co jest kontrolerem, metodą i argumentem, więc równie dobrze mogę teraz wszędzie wpisać przecinki zamiast slashy. Co myślicie o takim rozwiązaniu? Czy macie jakieś lepsze?

Ostatnie, takie luźne pytanie na koniec: Co sądzicie o używaniu Smarty w tym frameworku? Ostatnio natrafiłem nawet na zaimplementowanie tych szablonów dla kohany. Tylko czy to ma sens? Jeśli tak to kiedy?