Beispiel #1
0
 /**
  * Renders view for given action and layout. If $file is given, that is used
  * for a view filename (e.g. customFunkyView.ctp).
  * Adds timers, for all subsequent rendering, and injects the debugKit toolbar.
  *
  * @param string $action Name of action to render for
  * @param string $layout Layout to use
  * @param string $file Custom filename for view
  * @return string Rendered Element
  */
 function render($action = null, $layout = null, $file = null)
 {
     DebugKitDebugger::startTimer('viewRender', __('Rendering View', true));
     $out = parent::render($action, $layout, $file);
     DebugKitDebugger::stopTimer('viewRender');
     DebugKitDebugger::stopTimer('controllerRender');
     if (isset($this->loaded['toolbar'])) {
         $this->loaded['toolbar']->postRender();
     }
     //Temporary work around to hide the SQL dump at page bottom
     Configure::write('debug', 0);
     return $this->output;
 }
Beispiel #2
0
 /**
  * Renders view for given action and layout. If $file is given, that is used
  * for a view filename (e.g. customFunkyView.ctp).
  * Adds timers, for all subsequent rendering, and injects the debugKit toolbar.
  *
  * @param string $action Name of action to render for
  * @param string $layout Layout to use
  * @param string $file Custom filename for view
  * @return string Rendered Element
  */
 function render($action = null, $layout = null, $file = null)
 {
     DebugKitDebugger::startTimer('viewRender', __d('debug_kit', 'Rendering View', true));
     $out = parent::render($action, $layout, $file);
     DebugKitDebugger::stopTimer('viewRender');
     DebugKitDebugger::stopTimer('controllerRender');
     DebugKitDebugger::setMemoryPoint(__d('debug_kit', 'View render complete', true));
     if (empty($this->params['requested']) && isset($this->loaded['toolbar'])) {
         $backend = $this->loaded['toolbar']->getName();
         $this->loaded['toolbar']->{$backend}->send();
     }
     if (empty($this->output)) {
         return $out;
     }
     return $this->output;
 }
Beispiel #3
0
 /**
  * Renders view for given action and layout. If $file is given, that is used
  * for a view filename (e.g. customFunkyView.ctp).
  * Adds timers, for all subsequent rendering, and injects the debugKit toolbar.
  *
  * @param string $action Name of action to render for
  * @param string $layout Layout to use
  * @param string $file Custom filename for view
  * @return string Rendered Element
  */
 function render($action = null, $layout = null, $file = null)
 {
     DebugKitDebugger::startTimer('viewRender', __d('debug_kit', 'Rendering View', true));
     $out = parent::render($action, $layout, $file);
     DebugKitDebugger::stopTimer('viewRender');
     DebugKitDebugger::stopTimer('controllerRender');
     DebugKitDebugger::setMemoryPoint(__d('debug_kit', 'View render complete', true));
     if (isset($this->loaded['toolbar'])) {
         $backend = $this->loaded['toolbar']->getName();
         $this->loaded['toolbar']->{$backend}->send();
     }
     if (empty($this->output)) {
         return $out;
     }
     //Temporary work around to hide the SQL dump at page bottom
     Configure::write('debug', 0);
     return $this->output;
 }
Beispiel #4
0
/**
 * Renders view for given action and layout.
 * Adds timers, for all subsequent rendering, and injects the debugKit toolbar.
 *
 * @param string $action Name of action to render for
 * @param string $layout Layout to use
 * @return string Rendered Element
 */
	public function render($action = null, $layout = null) {
		DebugKitDebugger::startTimer('viewRender', __d('debug_kit', 'Rendering View'));

		$out = parent::render($action, $layout);

		DebugKitDebugger::stopTimer('viewRender');
		DebugKitDebugger::stopTimer('controllerRender');
		DebugKitDebugger::setMemoryPoint(__d('debug_kit', 'View render complete'));

		if (empty($this->request->params['requested']) && $this->Helpers->attached('Toolbar')) {
			$backend = $this->Helpers->Toolbar->getName();
			$this->Helpers->Toolbar->{$backend}->send();
		}
		if (empty($this->output)) {
			return $out;
		}
		return $this->output;
	}
 /**
  * beforeSave, starts a time before a save is initiated.
  *
  * @param Model $Model
  * @param array $options
  * @return boolean true
  */
 public function beforeSave(Model $Model, $options = array())
 {
     DebugKitDebugger::startTimer($Model->alias . '_save', $Model->alias . '->save()');
     return true;
 }
 /**
  * test getting all the set timers.
  *
  * @return void
  **/
 function testGetTimers()
 {
     DebugKitDebugger::startTimer('test1', 'this is my first test');
     DebugKitDebugger::stopTimer('test1');
     usleep(50);
     DebugKitDebugger::startTimer('test2');
     DebugKitDebugger::stopTimer('test2');
     $timers = DebugKitDebugger::getTimers();
     $this->assertEqual(count($timers), 3);
     $this->assertTrue(is_float($timers['test1']['time']));
     $this->assertTrue(isset($timers['test1']['message']));
     $this->assertTrue(isset($timers['test2']['message']));
 }
/**
 * test that vars are gathered and state is saved on beforeRedirect
 *
 * @return void
 **/
	public function testBeforeRedirect() {
		$this->_loadController(array(
			'panels' => array('test', 'session', 'history'),
		));

		$configName = 'debug_kit';
		$this->Controller->Toolbar->cacheKey = 'toolbar_history';
		Cache::delete('toolbar_history', $configName);

		DebugKitDebugger::startTimer('controllerAction', 'testing beforeRedirect');
		$MockPanel = $this->getMock('DebugPanel');
		$MockPanel->expects($this->once())->method('beforeRender');
		$this->Controller->Toolbar->panels['test'] = $MockPanel;
		$this->Controller->Toolbar->beforeRedirect($this->Controller);

		$result = Cache::read('toolbar_history', $configName);
		$this->assertTrue(isset($result[0]['session']));
		$this->assertTrue(isset($result[0]['test']));

		$timers = DebugKitDebugger::getTimers();
		$this->assertTrue(isset($timers['controllerAction']));
	}
 /**
  * test that vars are gathered and state is saved on beforeRedirect
  *
  * @return void
  **/
 function testBeforeRedirect()
 {
     $this->Controller->components = array('DebugKit.Toolbar' => array('panels' => array('MockDebug', 'session', 'history')));
     $this->Controller->Component->init($this->Controller);
     $this->Controller->Component->initialize($this->Controller);
     $configName = 'debug_kit';
     $this->Controller->Toolbar->cacheKey = 'toolbar_history';
     Cache::delete('toolbar_history', $configName);
     DebugKitDebugger::startTimer('controllerAction', 'testing beforeRedirect');
     $this->Controller->Toolbar->panels['MockDebug']->expectOnce('beforeRender');
     $this->Controller->Toolbar->beforeRedirect($this->Controller);
     $result = Cache::read('toolbar_history', $configName);
     $this->assertTrue(isset($result[0]['session']));
     $this->assertTrue(isset($result[0]['mock_debug']));
     $timers = DebugKitDebugger::getTimers();
     $this->assertTrue(isset($timers['controllerAction']));
 }
 /**
  * Queries the datasource and returns a result set array.
  *
  * @param string $type Type of find operation (all / first / count / neighbors / list / threaded)
  * @param array $query Option fields (conditions / fields / joins / limit / offset / order / page / group / callbacks)
  * @return array Array of records
  * @link http://book.cakephp.org/2.0/en/models/deleting-data.html#deleteall
  */
 public function find($type = 'first', $query = array())
 {
     DebugKitDebugger::startTimer($this->name . '::find(' . $type . ')');
     $results = parent::find($type, $query);
     DebugKitDebugger::stopTimer($this->name . '::find(' . $type . ')');
     return $results;
 }
Beispiel #10
0
 /**
  * beforeRender callback
  *
  * Calls beforeRender on all the panels and set the aggregate to the controller.
  *
  * @return void
  **/
 function beforeRender(&$controller)
 {
     DebugKitDebugger::stopTimer('controllerAction');
     $vars = array();
     $panels = array_keys($this->panels);
     foreach ($panels as $panelName) {
         $panel =& $this->panels[$panelName];
         $vars[$panelName]['content'] = $panel->beforeRender($controller);
         $elementName = Inflector::underscore($panelName) . '_panel';
         if (isset($panel->elementName)) {
             $elementName = $panel->elementName;
         }
         $vars[$panelName]['elementName'] = $elementName;
         $vars[$panelName]['plugin'] = $panel->plugin;
         $vars[$panelName]['disableTimer'] = true;
     }
     $controller->set(array('debugToolbarPanels' => $vars, 'debugToolbarJavascript' => $this->javascript));
     DebugKitDebugger::startTimer('controllerRender', __('Render Controller Action', true));
 }
Beispiel #11
0
 /**
  * beforeRender callback
  *
  * Calls beforeRender on all the panels and set the aggregate to the controller.
  *
  * @return void
  **/
 function beforeRender(&$controller)
 {
     DebugKitDebugger::stopTimer('controllerAction');
     $vars = $this->_gatherVars($controller);
     $this->_saveState($controller, $vars);
     $controller->set(array('debugToolbarPanels' => $vars, 'debugToolbarJavascript' => $this->javascript));
     DebugKitDebugger::startTimer('controllerRender', __d('debug_kit', 'Render Controller Action', true));
     DebugKitDebugger::setMemoryPoint(__d('debug_kit', 'Controller render start', true));
 }
Beispiel #12
0
 /**
  * beforeSave, starts a time before a save is initiated.
  *
  * @param Model $Model
  * @return boolean true
  */
 public function beforeSave($Model)
 {
     DebugKitDebugger::startTimer($Model->alias . '_save', $Model->alias . '->save()');
     return true;
 }
/**
 * beforeRender callback
 *
 * Calls beforeRender on all the panels and set the aggregate to the controller.
 *
 * @return void
 **/
	public function beforeRender($controller) {
		if (!class_exists('DebugKitDebugger')) {
			return null;
		}
		DebugKitDebugger::stopTimer('controllerAction');
		$vars = $this->_gatherVars($controller);
		$this->_saveState($controller, $vars);

		$controller->set(array('debugToolbarPanels' => $vars, 'debugToolbarJavascript' => $this->javascript));
		DebugKitDebugger::startTimer('controllerRender', __d('debug_kit', 'Render Controller Action'));
		DebugKitDebugger::setMemoryPoint(__d('debug_kit', 'Controller render start'));
	}