1*bf9684bcSAndreas Gohr<?php 2*bf9684bcSAndreas Gohr 3*bf9684bcSAndreas Gohrnamespace dokuwiki\Ui\Media; 4*bf9684bcSAndreas Gohr 5*bf9684bcSAndreas Gohruse dokuwiki\Media\MediaFile; 6*bf9684bcSAndreas Gohr 7*bf9684bcSAndreas Gohr/** 8*bf9684bcSAndreas Gohr * Display a MediaFile in the FullScreen MediaManager 9*bf9684bcSAndreas Gohr */ 10*bf9684bcSAndreas Gohrclass DisplayTile extends Display 11*bf9684bcSAndreas Gohr{ 12*bf9684bcSAndreas Gohr /** @var string URL to open this file in the media manager */ 13*bf9684bcSAndreas Gohr protected $mmUrl; 14*bf9684bcSAndreas Gohr 15*bf9684bcSAndreas Gohr /** @inheritDoc */ 16*bf9684bcSAndreas Gohr public function __construct(MediaFile $mediaFile) 17*bf9684bcSAndreas Gohr { 18*bf9684bcSAndreas Gohr parent::__construct($mediaFile); 19*bf9684bcSAndreas Gohr 20*bf9684bcSAndreas Gohr // FIXME we may want to integrate this function here or in another class 21*bf9684bcSAndreas Gohr $this->mmUrl = media_managerURL([ 22*bf9684bcSAndreas Gohr 'image' => $this->mediaFile->getId(), 23*bf9684bcSAndreas Gohr 'ns' => getNS($this->mediaFile->getId()), 24*bf9684bcSAndreas Gohr 'tab_details' => 'view', 25*bf9684bcSAndreas Gohr ]); 26*bf9684bcSAndreas Gohr } 27*bf9684bcSAndreas Gohr 28*bf9684bcSAndreas Gohr /** 29*bf9684bcSAndreas Gohr * Display the tile 30*bf9684bcSAndreas Gohr */ 31*bf9684bcSAndreas Gohr public function show() 32*bf9684bcSAndreas Gohr { 33*bf9684bcSAndreas Gohr echo '<dl title="' . $this->mediaFile->getDisplayName() . '">'; 34*bf9684bcSAndreas Gohr echo '<dt>'; 35*bf9684bcSAndreas Gohr echo '<a id="l_:' . $this->mediaFile->getId() . '" class="image thumb" href="' . $this->mmUrl . '">'; 36*bf9684bcSAndreas Gohr echo $this->getPreviewHtml(90, 90); 37*bf9684bcSAndreas Gohr echo '</a>'; 38*bf9684bcSAndreas Gohr echo '</dt>'; 39*bf9684bcSAndreas Gohr 40*bf9684bcSAndreas Gohr echo '<dd class="name">'; 41*bf9684bcSAndreas Gohr echo '<a href="' . $this->mmUrl . '" id="h_:' . $this->mediaFile->getId() . '">' . 42*bf9684bcSAndreas Gohr $this->mediaFile->getDisplayName() . 43*bf9684bcSAndreas Gohr '</a>'; 44*bf9684bcSAndreas Gohr echo '</dd>'; 45*bf9684bcSAndreas Gohr 46*bf9684bcSAndreas Gohr echo '<dd class="size">' . $this->formatDimensions() . '</dd>'; 47*bf9684bcSAndreas Gohr echo '<dd class="date">' . $this->formatDate() . '</dd>'; 48*bf9684bcSAndreas Gohr echo '<dd class="filesize">' . $this->formatFileSize() . '</dd>'; 49*bf9684bcSAndreas Gohr 50*bf9684bcSAndreas Gohr echo '</dl>'; 51*bf9684bcSAndreas Gohr } 52*bf9684bcSAndreas Gohr} 53