Example #1
0
 function after()
 {
     if (class_exists('DebugToolbar')) {
         echo DebugToolbar::render();
     }
     return parent::after();
 }
Example #2
0
 function action_index()
 {
     $this->request->title = "Schedule Page";
     $hourHeight = 50;
     $borderWidth = 1;
     $db = Database::instance();
     $query = DB::Query(Database::SELECT, 'SELECT * FROM eventTypes', 'Model_User');
     $result = $query->execute();
     $eventTypes = $result->as_array('id');
     $query = DB::Query(Database::SELECT, "SELECT UNIX_TIMESTAMP(date(startTime)) as day,        max(hour(endTime)) as maxHour,        max(minute(endTime)) as maxMin,        min(hour(startTime)) as minHour,        min(minute(startTime)) as minMin        from events group by date(startTime)");
     $result = $query->execute();
     $hourData = $result->as_array('day');
     $query = DB::Query(Database::SELECT, "SELECT e.*,r.name AS roomName,date(e.startTime) as eventDate FROM events e JOIN rooms r ON (e.roomId=r.id)");
     $result = $query->execute();
     do {
         $day = strtotime($result->get('eventDate'));
         $startTime = strtotime($result->get('startTime'));
         $realEndTime = strtotime($result->get('endTime'));
         $endTime = $realEndTime;
         do {
             $sameDay = date('z', $startTime) == date('z', $endTime);
             if (!$sameDay) {
                 $endTime = strtotime(date('Y-m-d', $startTime) . 'T23:59:59' . date('O', $startTime));
             }
             $eventData = array('name' => $result->get('name'), 'length' => 1, 'startTime' => $startTime, 'endTime' => $endTime, 'startTimeString' => date('c', $startTime), 'endTimeString' => date('c', $endTime));
             foreach (range(1, 4) as $i) {
                 $eventTypeName = $result->get('eventType' . $i) ? $eventTypes[$result->get('eventType' . $i)]['nameKey'] : 'closed';
                 $eventData['type'][$eventTypeName] = 1;
             }
             $eventData['type'] = array_keys($eventData['type']);
             $eventData['length'] = (int) floor(($eventData['endTime'] - $eventData['startTime']) / 60 / 30);
             $data[$result->get('roomName')][$day][$startTime] = $eventData;
             if (!$sameDay) {
                 $hourData[$day]['maxHour'] = 23;
                 $hourData[$day]['maxMin'] = 00;
                 $startTime += 60 * 60 * 24;
                 /* = 1 day*/
                 $day += 60 * 60 * 24;
                 /* = 1 day*/
                 $startTime = strtotime(date('Y-m-d', $startTime) . 'T00:00:00' . date('O', $startTime));
                 $endTime = $realEndTime;
                 $hourData[$day]['minHour'] = 00;
                 $hourData[$day]['minMin'] = 00;
             }
         } while (!$sameDay);
     } while ($result->next() && $result->valid());
     $days = array_keys($hourData);
     $rooms = array_keys($data);
     sort($rooms);
     $this->template->content = View::factory('schedule/index', array('eventTypes' => $eventTypes, 'borderWidth' => $borderWidth, 'days' => $days, 'rooms' => $rooms, 'hourData' => $hourData, 'hourHeight' => $hourHeight, 'data' => $data));
     if (class_exists('DebugToolbar')) {
         echo DebugToolbar::render();
     }
 }
Example #3
0
    echo "<h2>{$heading}</h2>";
}
?>
    <?php 
if ($subheading) {
    echo "<p class='h2'>{$subheading}</p>";
}
?>
       
    <!-- content start -->
    <?php 
print $content;
?>
    <?php 
print $profiler;
?>
    <!-- content end -->
    <br />
</div> 
 
</div> 

<?php 
if (class_exists('DebugToolbar', TRUE)) {
    echo DebugToolbar::render();
}
?>
</body> 
</html> 

Example #4
0
 /**
  * Returns the panel data in raw format.
  *
  * @return array
  */
 public function getPanelData()
 {
     $data = array();
     foreach ($this->_templates as $k => $v) {
         foreach ($v['vars'] as $kv => $vv) {
             $v['vars'][$kv] = DebugToolbar::prepareData($v['vars'][$kv]);
         }
         $data[$k] = $v;
     }
     return $data;
 }
Example #5
0
 * @var array $scriptProperties
 */
if ($modx->context->get('key') == 'mgr' || $modx->getOption('dbt.show_debug_toolbar') != '1') {
    return;
}
if ($modx->event->name == 'OnHandleRequest') {
    $jquery = 'document.write("<script src=\'assets/components/debugtoolbar/js/jquery-1.7.1.min.js\'>\\x3C/script>");';
    $modx->regClientScript("<script>window.jQuery || " . $jquery . "</script>");
    $modx->regClientScript(MODX_ASSETS_URL . 'components/debugtoolbar/js/debug_toolbar.js');
    $modx->regClientCSS(MODX_ASSETS_URL . 'components/debugtoolbar/css/debug_toolbar.css');
    $modx->regClientCSS(MODX_ASSETS_URL . 'components/debugtoolbar/css/highlight.css');
    $target = array('target' => 'FILE', 'options' => array('filename' => 'debug.log'));
    $modx->setLogTarget($target);
    $dbt_class = 'core.components.debugtoolbar.om.debugtoolbar';
    $modx->loadClass($dbt_class, MODX_BASE_PATH, true);
}
if ($modx->event->name == 'OnParseDocument') {
    if (isset(DebugToolbar::$petCount[md5($content)])) {
        DebugToolbar::$petCount[md5($content)]['count']++;
    } else {
        DebugToolbar::$petCount[md5($content)] = array('count' => 1);
    }
    if (DebugToolbar::$petCount[md5($content)]['count'] > 20) {
        DebugToolbar::$petCount[md5($content)]['content'] = $content;
    }
}
if ($modx->event->name == 'OnWebPagePrerender') {
    DebugToolbar::$disableLogging = true;
    $modx->setOption('dbt.show_debug_toolbar', 0);
    $modx->resource->_output = str_replace('</body>', DebugToolbar::printLog() . '</body>', $modx->resource->_output);
}
Example #6
0
 /**
  * Return the debug toolbar template.
  *
  * @return  mixed
  */
 public function debug_toolbar()
 {
     if (Kohana::$environment === Kohana::DEVELOPMENT and class_exists('DebugToolbar')) {
         return DebugToolbar::render();
     }
 }
Example #7
0
 /**
  * Returns the panel data in raw format.
  *
  * @return array
  */
 public function getPanelData()
 {
     $data = array();
     foreach ($this->_log as $k => $v) {
         if (isset($v['trace'])) {
             foreach ($v['trace'] as $kt => $vt) {
                 if (isset($vt['object'])) {
                     // need to truncate object entry in trace items because it's generating enormous amount of data
                     $v['trace'][$kt]['object'] = DebugToolbar::prepareData($vt['object'], -1);
                 }
                 $v['trace'][$kt]['args'] = DebugToolbar::prepareData($vt['args']);
             }
         }
         $data[$k] = $v;
     }
     return $data;
 }
 public function __construct($dsn, $username = null, $password = null)
 {
     self::$base_path = MODX_CORE_PATH . 'components/logger/';
     parent::__construct($dsn, $username, $password);
 }
Example #9
0
 /**
  * Creates a formatted array of all Benchmarks
  *
  * @return array formatted benchmarks
  */
 public static function get_benchmarks()
 {
     if (Kohana::$profiling == FALSE) {
         return array();
     }
     if (self::$_benchmarks !== FALSE) {
         return self::$_benchmarks;
     }
     $groups = Profiler::groups();
     $result = array();
     foreach (array_keys($groups) as $group) {
         if (strpos($group, 'database (') === FALSE) {
             foreach ($groups[$group] as $name => $marks) {
                 $stats = Profiler::stats($marks);
                 $result[$group][] = array('name' => $name, 'count' => count($marks), 'total_time' => $stats['total']['time'], 'avg_time' => $stats['average']['time'], 'total_memory' => $stats['total']['memory'], 'avg_memory' => $stats['average']['memory']);
             }
         }
     }
     // add total stats
     $total = Profiler::application();
     $result['application'] = array('count' => 1, 'total_time' => $total['current']['time'], 'avg_time' => $total['average']['time'], 'total_memory' => $total['current']['memory'], 'avg_memory' => $total['average']['memory']);
     self::$_benchmarks = $result;
     return $result;
 }
Example #10
0
 public function run()
 {
     if (!class_exists('DebugToolbar')) {
         return parent::run();
     }
     if (!DebugToolbar::isEnable()) {
         return parent::run();
     }
     $this->init();
     $this->_memory['init'] = memory_get_usage();
     $this->_mempeak['init'] = memory_get_peak_usage();
     $this->_time['init'] = microtime(true);
     if ($this->checkAccess()) {
         $this->_memory['checkAccess'] = memory_get_usage();
         $this->_mempeak['checkAccess'] = memory_get_peak_usage();
         $this->_time['checkAccess'] = microtime(true);
         if (!$this->content_only && ($this->display_header || isset($this->className) && $this->className)) {
             $this->setMedia();
         }
         $this->_memory['setMedia'] = memory_get_usage();
         $this->_mempeak['setMedia'] = memory_get_peak_usage();
         $this->_time['setMedia'] = microtime(true);
         // postProcess handles ajaxProcess
         $this->postProcess();
         $this->_memory['postProcess'] = memory_get_usage();
         $this->_mempeak['postProcess'] = memory_get_peak_usage();
         $this->_time['postProcess'] = microtime(true);
         if (!empty($this->redirect_after)) {
             $this->redirect();
         }
         if (!$this->content_only && ($this->display_header || isset($this->className) && $this->className)) {
             $this->initHeader();
         }
         $this->_memory['initHeader'] = memory_get_usage();
         $this->_mempeak['initHeader'] = memory_get_peak_usage();
         $this->_time['initHeader'] = microtime(true);
         $this->initContent();
         $this->_memory['initContent'] = memory_get_usage();
         $this->_mempeak['initContent'] = memory_get_peak_usage();
         $this->_time['initContent'] = microtime(true);
         if (!$this->content_only && ($this->display_footer || isset($this->className) && $this->className)) {
             $this->initFooter();
         }
         $this->_memory['initFooter'] = memory_get_usage();
         $this->_mempeak['initFooter'] = memory_get_peak_usage();
         $this->_time['initFooter'] = microtime(true);
         // default behavior for ajax process is to use $_POST[action] or $_GET[action]
         // then using displayAjax[action]
         if ($this->ajax) {
             $action = Tools::getValue('action');
             if (!empty($action) && method_exists($this, 'displayAjax' . Tools::toCamelCase($action))) {
                 $this->{'displayAjax' . $action}();
             } elseif (method_exists($this, 'displayAjax')) {
                 $this->displayAjax();
             }
         } else {
             $this->displayDebug();
         }
     } else {
         $this->initCursedPage();
         $this->displayDebug();
     }
 }