80 $f = $this->
ui->factory();
88 if ($this->media_cast->getDownloadable()) {
92 if ($this->rss_link !==
"") {
93 $b =
$f->link()->standard(
106 $lp_collection_mode = $this->domain->learningProgress($this->media_cast)->isCollectionMode();
109 foreach ($this->media_cast->getSortedItemsArray() as $item) {
110 $mob = new \ilObjMediaObject($item[
"mob_id"]);
111 $med = $mob->getMediaItem(
"Standard");
112 if (!in_array($med->getFormat(), iterator_to_array($this->media_types->getAllowedImageMimeTypes()),
true)) {
116 $resource = $mob->getStandardSrc();
118 $image =
$f->image()->responsive(
123 $pages[] =
$f->modal()->lightboxImagePage($image, $mob->getTitle());
124 if ($lp_collection_mode) {
125 $mob_modals[$mob->getId()] =
$f->modal()->lightbox($pages);
130 if (!$lp_collection_mode) {
131 $main_modal =
$f->modal()->lightbox($pages);
135 $items = $this->media_cast->getSortedItemsArray();
136 $total = count($items);
137 foreach ($items as $item) {
138 $mob = new \ilObjMediaObject($item[
"mob_id"]);
139 $med = $mob->getMediaItem(
"Standard");
141 if (!in_array($med->getFormat(), iterator_to_array($this->media_types->getAllowedImageMimeTypes()),
true)) {
145 $resource = $mob->getStandardSrc();
147 $preview_resource = $resource;
148 if ($mob->getVideoPreviewPic() !=
"") {
153 $preview_image =
$f->image()->responsive(
158 $image =
$f->image()->responsive(
163 if (!$lp_collection_mode) {
164 $modal = $main_modal;
166 $modal = $mob_modals[$mob->getId()];
169 $card_image = $preview_image->withAction($modal->getShowSignal());
172 if (!$lp_collection_mode) {
174 $slide_to =
"document.querySelector('.modal-body .carousel [data-slide-to=\"" . $cnt .
"\"]').click();";
177 $completed_cb = $this->completed_callback .
'&mob_id=' . $mob->getId();
178 $completed_cb =
"$.ajax({type:'GET', url: '$completed_cb'});";
181 $card_image = $card_image->withAdditionalOnLoadCode(
function (
$id) use ($slide_to, $completed_cb) {
182 return "$('#$id').click(function(e) { $slide_to $completed_cb });";
184 if (!$lp_collection_mode) {
188 $sections = ($mob->getDescription())
189 ? [
$f->legacy()->content($mob->getDescription())]
192 if ($this->media_cast->getDownloadable()) {
196 $sections[] =
$f->button()->standard(
$lng->
txt(
"download"), $download);
200 if ($this->mc_manager->commentsActive()) {
201 $comments_gui = $this->gui->comments()->commentGUI(
202 $this->media_cast->getRefId(),
205 $sections[] =
$f->legacy()->content($comments_gui->getGlyph());
209 $title = $mob->getTitle();
211 $card =
$f->card()->standard(
216 )->withTitleAction($modal->getShowSignal());
223 $deck =
$f->deck($cards);
225 if (count($pages) === 0 && count($mob_modals) === 0) {
228 if (!$lp_collection_mode) {
229 $modals = [$main_modal];
231 $modals = $mob_modals;
233 return "<div id='il-mcst-img-gallery'>" .
$renderer->render(array_merge([$deck], $modals)) .
"</div>";
getFormAction(object $a_gui_obj, ?string $a_fallback_cmd=null, ?string $a_anchor=null, bool $is_async=false, bool $has_xml_style=false)
txt(string $a_topic, string $a_default_lang_fallback_mod="")
gets the text for a given topic if the topic is not in the list, the topic itself with "-" will be re...
setParameterByClass(string $a_class, string $a_parameter, $a_value)
while($session_entry=$r->fetchRow(ilDBConstants::FETCHMODE_ASSOC)) return null
$id
plugin.php for ilComponentBuildPluginInfoObjectiveTest::testAddPlugins
getLinkTargetByClass( $a_class, ?string $a_cmd=null, ?string $a_anchor=null, bool $is_async=false, bool $has_xml_style=false)