public static function get_instance()
 {
     if (!is_object(self::$instance)) {
         self::$instance = new self();
     }
     return self::$instance;
 }
示例#2
0
 private static function get_child_theme_config()
 {
     if (!self::$checkedchildtheme) {
         global $PAGE;
         if (in_array('essential', $PAGE->theme->parents)) {
             $themename = $PAGE->theme->name;
             self::$childtheme = \theme_config::load($themename);
             self::$checkedchildtheme = true;
         }
     }
     return self::$childtheme;
 }
 private static function check_corerenderer()
 {
     if (empty(self::$corerenderer)) {
         // Use $OUTPUT.
         global $OUTPUT;
         self::$corerenderer = $OUTPUT;
     }
 }
示例#4
0
 public static function render_slide($i, $captionoptions, $theme = null)
 {
     if (empty($theme)) {
         if (empty(self::$theme)) {
             self::$theme = \theme_config::load('essential');
         }
         $theme = self::$theme;
     }
     $slideurl = self::get_setting('slide' . $i . 'url', false, $theme);
     $slideurltarget = self::get_setting('slide' . $i . 'target', false, $theme);
     $slidetitle = self::get_setting('slide' . $i, true, $theme);
     $slidecaption = self::get_setting('slide' . $i . 'caption', true, $theme);
     if ($captionoptions == 0) {
         $slideextraclass = ' side-caption';
     } else {
         $slideextraclass = '';
     }
     $slideextraclass .= $i === 1 ? ' active' : '';
     $slideimagealt = strip_tags($slidetitle);
     // Get slide image or fallback to default.
     $slideimage = self::get_setting('slide' . $i . 'image', false, $theme);
     if ($slideimage) {
         $slideimage = $theme->setting_file_url('slide' . $i . 'image', 'slide' . $i . 'image');
     } else {
         global $OUTPUT;
         $slideimage = $OUTPUT->pix_url('default_slide', 'theme');
     }
     if ($slideurl) {
         $slide = '<a href="' . $slideurl . '" target="' . $slideurltarget . '" class="item' . $slideextraclass . '">';
     } else {
         $slide = '<div class="item' . $slideextraclass . '">';
     }
     if ($captionoptions == 0) {
         $slide .= '<div class="container-fluid">';
         $slide .= '<div class="row-fluid">';
         if ($slidetitle || $slidecaption) {
             $slide .= '<div class="span5 the-side-caption">';
             $slide .= '<div class="the-side-caption-content">';
             $slide .= '<h4>' . $slidetitle . '</h4>';
             $slide .= '<p>' . $slidecaption . '</p>';
             $slide .= '</div>';
             $slide .= '</div>';
             $slide .= '<div class="span7">';
         } else {
             $slide .= '<div class="span10 offset1 nocaption">';
         }
         $slide .= '<div class="carousel-image-container">';
         $slide .= '<img src="' . $slideimage . '" alt="' . $slideimagealt . '" class="carousel-image"/>';
         $slide .= '</div>';
         $slide .= '</div>';
         $slide .= '</div>';
         $slide .= '</div>';
     } else {
         $nocaption = !($slidetitle || $slidecaption) ? ' nocaption' : '';
         $slide .= '<div class="carousel-image-container' . $nocaption . '">';
         $slide .= '<img src="' . $slideimage . '" alt="' . $slideimagealt . '" class="carousel-image"/>';
         $slide .= '</div>';
         // Output title and caption if either is present
         if ($slidetitle || $slidecaption) {
             $slide .= '<div class="carousel-caption">';
             $slide .= '<div class="carousel-caption-inner">';
             $slide .= '<h4>' . $slidetitle . '</h4>';
             $slide .= '<p>' . $slidecaption . '</p>';
             $slide .= '</div>';
             $slide .= '</div>';
         }
     }
     $slide .= $slideurl ? '</a>' : '</div>';
     return $slide;
 }