public function setItems(array $items, $reset = true)
 {
     if ($reset && $this->enableLinksRendering) {
         $this->_linkUrls = [];
     }
     return parent::setItems($items, $reset);
 }
 /**
  * Register plugin js
  */
 protected function registerPlugin()
 {
     $view = $this->getView();
     if ($this->showIndicators) {
         IndicatorAsset::register($view);
     }
     if (!empty($this->clientOptions['enableFullScreen'])) {
         FullScreenAsset::register($view);
     }
     $this->itemsComponent->registerAssets($view);
     BlueImpGalleryAsset::register($view);
     $id = $this->options['id'];
     $items = Json::encode($this->itemsComponent->getItems());
     $options = Json::encode($this->clientOptions);
     $view->registerJs("jQuery('#{$id}').blueImp({$items}, {$options});", $view::POS_END);
 }
 public function setPluginProperties(&$options)
 {
     parent::setPluginProperties($options);
     $options['videoSourcesProperty'] = $this->videoSourcesProperty;
     $options['videoPosterProperty'] = $this->videoPosterProperty;
 }
 /**
  * Combine current items list with another items list generating component
  * @param BaseItems $baseItems
  * @return $this
  */
 public function combine(BaseItems $baseItems)
 {
     $this->_items = array_merge($this->_items, $baseItems->getItems());
     return $this;
 }