/**
  * Takes the $panels data and converts it into an icon only display
  * @param array $panels
  * @return array
  */
 public function ee_debug_toolbar_mod_panel(array $panels, array $view = array())
 {
     $this->EE->benchmark->mark('eedt_minimal_start');
     $panels = $this->EE->extensions->last_call != '' ? $this->EE->extensions->last_call : $panels;
     foreach ($panels as $key => $value) {
         $panels[$key]->set_button_icon_alt_text($panels[$key]->get_name());
         $panels[$key]->set_button_label('');
     }
     $theme_css_url = eedt_theme_url() . 'eedt_minimal/css/';
     $panels[$key]->add_css($theme_css_url . 'minimal.css', TRUE);
     $this->EE->benchmark->mark('eedt_minimal_end');
     return $panels;
 }
 public function ee_debug_toolbar_add_panel(array $panels, array $view)
 {
     $this->EE->benchmark->mark('eedt_log_viewer_start');
     $panels = $this->EE->extensions->last_call != '' ? $this->EE->extensions->last_call : $panels;
     $vars['panel_fetch_url'] = $this->EE->toolbar->create_act_url('get_panel_logs', __CLASS__);
     $vars['theme_img_url'] = eedt_theme_url() . 'eedt_log_viewer/images/';
     $vars['theme_js_url'] = eedt_theme_url() . 'eedt_log_viewer/js/';
     $vars['theme_css_url'] = eedt_theme_url() . 'eedt_log_viewer/css/';
     $panels['log_viewer'] = new Eedt_panel_model();
     $panels['log_viewer']->set_name('log_viewer');
     $panels['log_viewer']->set_button_icon($vars['theme_img_url'] . 'logs.png');
     $panels['log_viewer']->set_button_label(lang('log_viewer'));
     $panels['log_viewer']->set_panel_contents($this->EE->load->view('log_viewer', $vars, TRUE));
     $panels['log_viewer']->set_panel_fetch_url($vars['panel_fetch_url']);
     $this->EE->benchmark->mark('eedt_log_viewer_end');
     return $panels;
 }
示例#3
0
 /**
  * Create Theme Asset URLs
  *
  * @param string $theme
  * @return string
  */
 public function create_theme_url($theme, $sub_dir = '')
 {
     $path = eedt_theme_path();
     $url = eedt_theme_url();
     if (is_dir($path . "ee_debug_toolbar/themes/" . $theme . "/{$sub_dir}/")) {
         return $url . "ee_debug_toolbar/themes/" . $theme . "/{$sub_dir}/";
     }
     return $url . "ee_debug_toolbar/themes/" . $this->default_theme . "/{$sub_dir}/";
 }
 /**
  * Add panel to UI & track memory and SQL usage
  *
  * @param Eedt_panel_model[] $panels
  * @param array              $vars
  * @return Eedt_panel_model[]
  */
 public function ee_debug_toolbar_add_panel($panels = array(), $vars = array())
 {
     $this->EE->benchmark->mark('eedt_memory_history_start');
     $panels = $this->EE->extensions->last_call != '' ? $this->EE->extensions->last_call : $panels;
     $settings = $this->EE->toolbar->get_settings();
     $panels['memory_history'] = new Eedt_panel_model();
     $panels['memory_history']->set_name("memory_history");
     $panels['memory_history']->set_panel_contents($this->EE->load->view('memory_history', array('position' => $settings['memory_history_position']), true));
     $panels['memory_history']->add_js('https://www.google.com/jsapi', true);
     $panels['memory_history']->add_js(eedt_theme_url() . 'eedt_memory_history/js/memory_history.js', true);
     $panels['memory_history']->add_css(eedt_theme_url() . 'eedt_memory_history/css/memory_history.css', true);
     $panels['memory_history']->set_injection_point(Eedt_panel_model::PANEL_AFTER_TOOLBAR);
     $this->track_memory_and_sql_usage($vars);
     $this->EE->benchmark->mark('eedt_memory_history_end');
     return $panels;
 }
 public function ee_debug_toolbar_mod_panel(array $panels, array $view = array())
 {
     $this->EE->benchmark->mark('eedt_performance_alerts_start');
     $panels = $this->EE->extensions->last_call != '' ? $this->EE->extensions->last_call : $panels;
     $settings = $this->EE->toolbar->get_settings();
     $view['settings'] = $settings;
     //check total time
     if ($view['elapsed_time'] > $settings['max_exec_time']) {
         $panels['time']->set_panel_css_class('flash');
     }
     //make sure we're not running too many queries
     if ($view['query_count'] > $settings['max_queries']) {
         $panels['database']->set_panel_css_class('flash');
     }
     //and how long did those queries take?
     if ($view['query_data']['total_time'] > $settings['max_sql_time']) {
         $panels['database']->set_panel_css_class('flash');
     }
     //is memory usage bad?
     if ($view['memory_usage'] > $settings['max_memory']) {
         $panels['memory']->set_panel_css_class('flash');
     }
     $view['perf_theme_img_url'] = eedt_theme_url() . 'eedt_perf_alerts/images/';
     $view['perf_theme_js_url'] = eedt_theme_url() . 'eedt_perf_alerts/js/';
     $view['perf_theme_css_url'] = eedt_theme_url() . 'eedt_perf_alerts/css/';
     $panels['database']->set_panel_contents($this->EE->load->view('db', $view, TRUE));
     $panels['database']->add_js($view['perf_theme_js_url'] . 'perf_alerts.js');
     $this->EE->benchmark->mark('eedt_performance_alerts_end');
     return $panels;
 }