Здравствуйте, коллеги!
Поздравляю вас с пятницей и удачно провести выходные.
На хабре встретил разработку Codeigniter DebugToolbar, который был сделан на основе Kohana'овского тулбара, который, в свою очередь, был "слизан" с "симфонического".
В общем, я может пока не такой сильный программист (большие сервера в одиночку таскать все-таки не могу ), но решил попробовать свои силы и написать подобное расширение для любимого мной Yii.
Сначала была идея сделать всё красиво, выплывая, но из-за того, что родителем моего класса расширения был не ApplicationComponent и он вызывался вне контроллеров, то столкнулся с проблемой registerCoreScript('jquery') при рендере. Так делать нельзя… А жаль. Спрашивал у "буржуев", но внятного ответа так и не получил, а Qiang пока молчит и не отвечает.
Потом подумал и сделал минимальный функционал - отображение версии, времени выполнения, количества запросов к БД и переключателю показа трейса.
Получилось вот это… На приложенных картинках можно посмотреть на это “чудо” пятничной мысли .
Как использовать:
-
Распаковать архив в папочку protected/extentsions/debugtoolbar (если всё верно сделали, то должен быть файл protected/extension/debugtoolbar/EDebugToolbarRoute.php)
-
В config/main.php дописать такие вещи.
'import'=>array( 'application.models.*', 'application.components.*', 'application.extensions.debugtoolbar.*', ), // application components 'components'=>array( //logging configuration 'log'=>array( 'class'=>'CLogRouter', 'routes'=>array( 'class'=>'EDebugToolbarRoute', 'levels'=>'profile, trace', ), ),
- Если нужно поправить ширину или высоты, идем в extensions/debugtoolbar/views/logToolbar.php и правим css.
P.S. Коллеги, если тема интересна, то я буду готов продолжать развивать такой тулбарчик, но мне нужна информация, как мне опубликовать ассеты (jQuery тот же и картинки).
P.P.S. Или может я принципиально неверно сделал? Просто я не понял, как в Yii можно реализовать хуки (может перепиской CApplication на CMyApplication?).