diff --git a/class2.php b/class2.php index 4570c3f6e..2724f404c 100644 --- a/class2.php +++ b/class2.php @@ -780,27 +780,29 @@ if (!class_exists('e107table', false)) class e107table { - public $eMenuCount = 0; - public $eMenuArea; - public $eMenuTotal = array(); - public $eSetStyle; + public $eMenuCount = 0; + public $eMenuArea; + public $eMenuTotal = array(); + public $eSetStyle; + private $themeClass = ''; + private $adminThemeClass = ''; + + + function __construct() + { + // $this->themeClass = e107::getPref('sitetheme')."_theme"; // disabled at the moment. + $this->adminThemeClass = e107::getPref('admintheme')."_admintheme"; // Check for a class. + } /** - * @param $caption - * @param $text - * @param $mode + * @param $caption string caption text + * @param $text body text + * @param $mode unique identifier * @param $return boolean : return the html instead of echo it. + * @return null */ - function tablerender($caption, $text, $mode = 'default', $return = false) + public function tablerender($caption, $text, $mode = 'default', $return = false) { - - /* - # Render style table - # - parameter #1: string $caption, caption text - # - parameter #2: string $text, body text - # - return null - # - scope public - */ $override_tablerender = e107::getSingleton('override', e_HANDLER.'override_class.php')->override_check('tablerender'); if ($override_tablerender) @@ -820,8 +822,9 @@ if (!class_exists('e107table', false)) { $this->eMenuCount++; } + ob_start(); - tablestyle($caption, $text, $mode, array('menuArea'=>$this->eMenuArea, 'menuCount'=>$this->eMenuCount, 'menuTotal'=>varset($this->eMenuTotal[$this->eMenuArea]), 'setStyle'=>$this->eSetStyle)); + $this->tablestyle($caption, $text, $mode); $ret=ob_get_contents(); ob_end_clean(); @@ -834,11 +837,48 @@ if (!class_exists('e107table', false)) { $this->eMenuCount++; } - tablestyle($caption, $text, $mode, array('menuArea'=>$this->eMenuArea,'menuCount'=>$this->eMenuCount,'menuTotal'=>varset($this->eMenuTotal[$this->eMenuArea]),'setStyle'=>$this->eSetStyle)); + + $this->tablestyle($caption, $text, $mode); return ''; } } + + + /** + * Output the styled template. + * @param $caption + * @param $text + * @param $mode + */ + private function tablestyle($caption, $text, $mode) + { + + if(class_exists($this->adminThemeClass)) + { + $thm = new $this->adminThemeClass(); + } + elseif(class_exists($this->themeClass)) // disabled at the moment. + { + $thm = new $this->themeClass(); + } + + if(is_object($thm)) + { + $thm->tablestyle($caption, $text, $mode, array('menuArea'=>$this->eMenuArea, 'menuCount'=>$this->eMenuCount, 'menuTotal'=>varset($this->eMenuTotal[$this->eMenuArea]), 'setStyle'=>$this->eSetStyle)); + } + else + { + tablestyle($caption, $text, $mode, array('menuArea'=>$this->eMenuArea,'menuCount'=>$this->eMenuCount,'menuTotal'=>varset($this->eMenuTotal[$this->eMenuArea]),'setStyle'=>$this->eSetStyle)); + } + + } + + } + + + + } //############################################################# diff --git a/e107_themes/bootstrap/admin_theme.php b/e107_themes/bootstrap/admin_theme.php index 1760d23c0..f263508d1 100644 --- a/e107_themes/bootstrap/admin_theme.php +++ b/e107_themes/bootstrap/admin_theme.php @@ -48,160 +48,165 @@ else $no_core_css = TRUE; -function tablestyle($caption, $text, $mode) +class bootstrap_admintheme { - global $style; - - $class = ''; - - - - if(is_string($mode) && $mode == 'admin_help') $class = ' '.str_replace('_', '-', $mode); + function tablestyle($caption, $text, $mode) + { + global $style; + + $class = ''; - if($mode == 'e_help') - { - $style = 'admin_menu'; - } - if($mode == 'core-infopanel_latest' || $mode == 'core-infopanel_status') - { - //return; - echo ' - -
  • - -
    - - - '.$text.' - -
    - -
  • - - '; - return; - } - - if($mode == 'personalize') - { - echo ' - -
    - - - '.$text.' - -
    - - '; + + + if(is_string($mode) && $mode == 'admin_help') $class = ' '.str_replace('_', '-', $mode); - return; - } - - - - - if($style == 'core-infopanel') - { - echo ' - + if($mode == 'e_help') + { + $style = 'admin_menu'; + } -
  • - -
    - - - '.$text.' - -
    - -
  • - - '; - return; - } - - - if(deftrue('e_IFRAME')) - { - echo ' -
    -
    + if($mode == 'core-infopanel_latest' || $mode == 'core-infopanel_status') + { + //return; + echo ' + +
  • + +
    + + '.$text.' -
    -
  • - '; - - return; - } + +
    + + + + '; + return; + } - if(trim($caption) == '') - { - $style = 'no_caption'; - } - - - switch(varset($style, 'admin_content')) - { - - case 'admin_menu' : + if($mode == 'personalize') + { echo ' + +
    + + + '.$text.' + +
    + + '; + + return; + } + + + + + if($style == 'core-infopanel') + { + echo ' + + +
  • + +
    + + + '.$text.' + +
    + +
  • + + '; + return; + } + + + if(deftrue('e_IFRAME')) + { + echo ' +
    +
    + '.$text.' +
    +
    + '; + + return; + } + + if(trim($caption) == '') + { + $style = 'no_caption'; + } + + + switch(varset($style, 'admin_content')) + { + + case 'admin_menu' : + echo ' + + '; + break; + + case 'site_info' : + echo ' - '; - break; - - case 'site_info' : - echo ' - - '; - break; - /* - case 'admin_content': - echo ' -
    -

    '.$caption.'

    -
    - '.$text.' + +

    + '.$text.' +

    -
    - '; - break; - */ - - case 'no_caption' : - echo ' -
    -
    - '.$text.' + '; + break; + /* + case 'admin_content': + echo ' +
    +

    '.$caption.'

    +
    + '.$text.' +
    -
    - '; - break; - - - default: - echo ' -
    -

    '.$caption.'

    -
    - '.$text.' + '; + break; + */ + + case 'no_caption' : + echo ' +
    +
    + '.$text.' +
    -
    - '; - break; + '; + break; + + + default: + echo ' +
    +

    '.$caption.'

    +
    + '.$text.' +
    +
    + '; + break; + } } } + $HEADER = ''; $FOOTER = '';