Exemple #1
0
 /**
  * Renders the accordion
  *
  * @return string
  */
 public function render()
 {
     if (!$this->name) {
         $this->name = Helpers::generateId($this);
     }
     $attributes = new Attributes($this->attributes, ['class' => 'panel-group', 'id' => $this->name]);
     $string = "<div {$attributes}>";
     $count = 0;
     foreach ($this->contents as $item) {
         $itemAttributes = array_key_exists('attributes', $item) ? $item['attributes'] : [];
         $itemAttributes = new Attributes($itemAttributes, ['class' => 'panel panel-default']);
         $string .= "<div {$itemAttributes}>";
         $string .= "<div class='panel-heading'>";
         $string .= "<h4 class='panel-title'>";
         $string .= "<a data-toggle='collapse' data-parent='#{$this->name}' " . "href='#{$this->name}-{$count}'>{$item['title']}</a>";
         $string .= "</h4>";
         $string .= "</div>";
         $bodyAttributes = new Attributes(['id' => "{$this->name}-{$count}", 'class' => 'panel-collapse collapse']);
         if ($this->opened == $count) {
             $bodyAttributes->addClass('in');
         }
         $string .= "<div {$bodyAttributes}>";
         $string .= "<div class='panel-body'>{$item['contents']}</div>";
         $string .= "</div>";
         $string .= "</div>";
         $count++;
     }
     $string .= "</div>";
     return $string;
 }
Exemple #2
0
 /**
  * Renders the carousel
  *
  * @return string
  */
 public function render()
 {
     if (!$this->name) {
         $this->name = Helpers::generateId($this);
     }
     $attributes = new Attributes($this->attributes, ['id' => $this->name, 'class' => 'carousel slide', 'data-ride' => 'carousel']);
     $string = "<div {$attributes}>";
     $string .= $this->renderIndicators();
     $string .= $this->renderItems();
     $string .= $this->renderControls();
     $string .= "</div>";
     return $string;
 }
Exemple #3
0
 /**
  * Renders the button
  *
  * @param Attributes $attributes The attributes of the modal
  * @return string
  */
 protected function renderButton(Attributes $attributes)
 {
     if (!$this->button) {
         return '';
     }
     if (!isset($attributes['id'])) {
         $attributes['id'] = Helpers::generateId($this);
     }
     $this->button->addAttributes(['data-toggle' => 'modal', 'data-target' => "#{$attributes['id']}"])->render();
     return $this->button->render();
 }