11fa8c418SNickeau<?php 21fa8c418SNickeau 31fa8c418SNickeau 41fa8c418SNickeaunamespace ComboStrap; 51fa8c418SNickeau 61fa8c418SNickeau 71fa8c418SNickeau/** 81fa8c418SNickeau * Class ImageLink 91fa8c418SNickeau * @package ComboStrap 101fa8c418SNickeau * 111fa8c418SNickeau * A media of image type 121fa8c418SNickeau */ 131fa8c418SNickeauabstract class ImageLink extends MediaLink 141fa8c418SNickeau{ 151fa8c418SNickeau 161fa8c418SNickeau 17*c3437056SNickeau /** 18*c3437056SNickeau * @return Image 19*c3437056SNickeau */ 20*c3437056SNickeau function getDefaultImage(): ?Image 211fa8c418SNickeau { 221fa8c418SNickeau if (!($this->getMedia() instanceof Image)) { 231fa8c418SNickeau LogUtility::msg("The media ($this) is not an image", LogUtility::LVL_MSG_ERROR); 241fa8c418SNickeau } 25*c3437056SNickeau /** 26*c3437056SNickeau * 27*c3437056SNickeau */ 28*c3437056SNickeau $media = $this->getMedia(); 29*c3437056SNickeau if($media instanceof Image){ 30*c3437056SNickeau return $media; 31*c3437056SNickeau } else { 32*c3437056SNickeau return null; 33*c3437056SNickeau } 341fa8c418SNickeau } 351fa8c418SNickeau 361fa8c418SNickeau /** 371fa8c418SNickeau * @return string the wiki syntax 381fa8c418SNickeau */ 391fa8c418SNickeau public function getMarkupSyntax(): string 401fa8c418SNickeau { 411fa8c418SNickeau $descriptionPart = ""; 421fa8c418SNickeau if (!empty($this->getDefaultImage()->getAltNotEmpty())) { 431fa8c418SNickeau $descriptionPart = "|" . $this->getDefaultImage()->getAltNotEmpty(); 441fa8c418SNickeau } 45*c3437056SNickeau return '{{' . $this->getMedia()->getPath()->getAbsolutePath() . $descriptionPart . '}}'; 461fa8c418SNickeau } 471fa8c418SNickeau 481fa8c418SNickeau} 49