![]() System : Linux absol.cf 5.4.0-198-generic #218-Ubuntu SMP Fri Sep 27 20:18:53 UTC 2024 x86_64 User : www-data ( 33) PHP Version : 7.4.33 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, Directory : /var/www/html/webtrees/resources/views/ |
Upload File : |
<?php declare(strict_types=1); use Fisharebest\Webtrees\Auth; use Fisharebest\Webtrees\Fact; use Fisharebest\Webtrees\Http\RequestHandlers\DeleteFact; use Fisharebest\Webtrees\Http\RequestHandlers\EditMediaFileModal; use Fisharebest\Webtrees\I18N; use Fisharebest\Webtrees\Media; use Fisharebest\Webtrees\Registry; use Fisharebest\Webtrees\Tree; use Illuminate\Support\Collection; /** * @var Collection<int,Fact> $clipboard_facts * @var Media $record * @var Tree $tree */ ?> <table class="table wt-facts-table"> <?php foreach ($record->mediaFiles() as $media_file) : ?> <tr class="<?= $media_file->isPendingAddition() ? 'wt-new' : '' ?><?= $media_file->isPendingDeletion() ? 'wt-old' : '' ?>"> <th scope="row"> <?= I18N::translate('Media file') ?> <?php if ($record->canEdit() && !$media_file->isPendingDeletion()) : ?> <div class="pt-2 wt-fact-edit-links"> <a class="btn btn-link" href="#" data-bs-toggle="modal" data-bs-backdrop="static" data-bs-target="#wt-ajax-modal" data-wt-href="<?= route(EditMediaFileModal::class, ['tree' => $record->tree()->name(), 'xref' => $record->xref(), 'fact_id' => $media_file->factId()]) ?>" title="<?= I18N::translate('Edit') ?>"> <?= view('icons/edit') ?> <span class="visually-hidden"> <?= I18N::translate('Edit') ?> </span> </a> <?php if (count($record->mediaFiles()) > 1) : ?> <a class="btn btn-link" href="#" data-wt-confirm="<?= I18N::translate('Are you sure you want to delete this fact?') ?>" data-wt-post-url="<?= e(route(DeleteFact::class, ['tree' => $record->tree()->name(), 'xref' => $record->xref(), 'fact_id' => $media_file->factId()])) ?>" title="<?= I18N::translate('Delete') ?>"> <?= view('icons/delete') ?> <span class="visually-hidden"> <?= I18N::translate('Delete') ?> </span> </a> <?php endif ?> </div> <?php endif ?> </th> <td class="d-flex justify-content-between"> <div> <?php if ($media_file->isExternal()) : ?> <?= Registry::elementFactory()->make('OBJE:FILE')->labelValue($media_file->filename(), $record->tree()) ?> <?php elseif (Auth::isEditor($record->tree())) :?> <?php if (!$media_file->fileExists()) : ?> <p class="alert alert-danger"> <?= I18N::translate('The file ā%sā does not exist.', e($media_file->filename())) ?> </p> <?php endif ?> <?= Registry::elementFactory()->make('OBJE:FILE')->labelValue($media_file->filename(), $record->tree()) ?> <?php endif ?> <?= Registry::elementFactory()->make('OBJE:FILE:TITL')->labelValue($media_file->title(), $record->tree()) ?> <?= Registry::elementFactory()->make('OBJE:FILE:FORM:TYPE')->labelValue($media_file->type(), $record->tree()) ?> <?= Registry::elementFactory()->make('OBJE:FILE:FORM')->labelValue($media_file->format(), $record->tree()) ?> </div> <div> <?php if (!$media_file->isExternal()) : ?> <?php if (explode('/', $media_file->mimeType())[0] === 'audio') : ?> <audio controls> <source src="<?= e($media_file->downloadUrl('inline')) ?>" type="<?= $media_file->mimeType() ?>"> </audio> <?php elseif (explode('/', $media_file->mimeType())[0] === 'video') : ?> <video controls width="300"> <source src="<?= e($media_file->downloadUrl('inline')) ?>" type="<?= $media_file->mimeType() ?>"> </video> <?php else : ?> <?= $media_file->displayImage(200, 150, 'contain', []) ?> <?php endif ?> <?php if ($record->tree()->getPreference('SHOW_MEDIA_DOWNLOAD') >= Auth::accessLevel($record->tree()) && $media_file->fileExists()) : ?> <br> <a href="<?= e($media_file->downloadUrl('attachment')) ?>"> <?= I18N::translate('Download file') ?> </a> <?php endif ?> <?php endif ?> </div> </td> </tr> <?php endforeach ?> <?php foreach ($record->facts()->filter(fn (Fact $fact): bool => $fact->tag() !== 'OBJE:FILE') as $fact) : ?> <?= view('fact', ['fact' => $fact, 'record' => $record]) ?> <?php endforeach ?> </table>