Filesize by Uuid - RockSolid Custom Elements
Hallo Community,
kurz und knapp:
Ist es Möglich mit der Uuid die Filesize einer Datei zu bekommen?
lang und ausführlich:
Ich habe mit RockSolid Custom Elements ein neues Inhaltselement gebaut.
Hierbei soll ein Download Element, der Name und weitere Variablen im BE eingetragen werden können - das Funktioniert soweit auch. Und Im Frontend ausgegeben werden.
Ebenfalls Funktioniert die Ausgabe im FE mit
HTML-Code:
<?php
$objFile = \FilesModel::findByUuid($this->extension);
print_r($objFile->filesize);
?>
<p class="download-element ext-<?= $this->extension ?>">
<a href="<?= $objFile->path ?>" title="<?= $this->name ?>"><?= $objFile->name ?>
<span class="size">()</span>
</a>
</p>
Leider habe ich im "<?php $this->showTemplateVars(); ?>" oder im print_r($objFile) keine Variable mit der Filesize.
Ist es Möglich die Filesize irgendwie zu bekommen?
Das Standart Download.html5 Element bekommt die Filesize in der CotnentDownload.php durch
HTML-Code:
$this->Template->filesize = $this->getReadableSize($objFile->filesize, 1);
Besten Dank und Grüße
motschi
Syntax Error & Falsche Byte Zahl
Zitat:
Zitat von
Spooky
Ja ;). Über die UUID kommst du ja an den Pfad und über den Pfad an die Dateigröße. zB: (ungetestet)
PHP-Code:
<?= \Contao\System::getReadableSize(new \Contao\File(\Contao\FilesModel::findByUuid($uuid)->path)->filesize) ?>
Leider kommt bei deinem code ein Syntax Error:
Wenn ich das "->Filesize" entferne erscheint zwar eine zahl allerdings ist die mit 1Byte nicht richtig.
HTML-Code:
<?= \Contao\System::getReadableSize(new \Contao\File(\Contao\FilesModel::findByUuid($uuid)->path)) ?>