Yii debugger WIP

This commit is contained in:
Qiang Xue
2013-07-06 21:20:49 -04:00
parent 682c0a346f
commit ba6c10eb30
19 changed files with 266 additions and 44 deletions

View File

@@ -27,6 +27,10 @@ class Module extends \yii\base\Module
public $allowedIPs = array('127.0.0.1', '::1');
public $controllerNamespace = 'yii\debug\controllers';
/**
* @var LogTarget
*/
public $logTarget;
/**
* @var array|Panel[]
*/
@@ -36,19 +40,20 @@ class Module extends \yii\base\Module
{
parent::init();
$this->logTarget = Yii::$app->getLog()->targets['debug'] = new LogTarget($this);
Yii::$app->getView()->on(View::EVENT_END_BODY, array($this, 'renderToolbar'));
foreach (array_merge($this->corePanels(), $this->panels) as $id => $config) {
$config['id'] = $id;
$config['module'] = $this;
$this->panels[$id] = Yii::createObject($config);
}
Yii::$app->getLog()->targets['debug'] = new LogTarget($this);
Yii::$app->getView()->on(View::EVENT_END_BODY, array($this, 'renderToolbar'));
}
public function beforeAction($action)
{
Yii::$app->getView()->off(View::EVENT_END_BODY, array($this, 'renderToolbar'));
unset(Yii::$app->getLog()->targets['debug']);
$this->logTarget = null;
$ip = Yii::$app->getRequest()->getUserIP();
foreach ($this->allowedIPs as $filter) {
@@ -63,7 +68,7 @@ class Module extends \yii\base\Module
{
/** @var View $view */
$id = 'yii-debug-toolbar';
$tag = Yii::$app->getLog()->targets['debug']->tag;
$tag = $this->logTarget->tag;
$url = Yii::$app->getUrlManager()->createUrl('debug/default/toolbar', array(
'tag' => $tag,
));
@@ -88,6 +93,12 @@ class Module extends \yii\base\Module
'log' => array(
'class' => 'yii\debug\panels\LogPanel',
),
'profiling' => array(
'class' => 'yii\debug\panels\ProfilingPanel',
),
'db' => array(
'class' => 'yii\debug\panels\DbPanel',
),
);
}
}