Ergebnis 1 bis 10 von 10

Thema: Template 'ce_downloads.hmtl5' anpassen für Dateidatum

  1. #1
    Contao-Nutzer Avatar von althoffc
    Registriert seit
    24.06.2009.
    Beiträge
    125

    Standard Template 'ce_downloads.hmtl5' anpassen für Dateidatum

    Hallo,

    ich möchte erreichen, dass für zum Download bereitgestellte Dateien (Modul 'downloads') auch das jeweilige Änderungsdatum der Datei angezeigt werden kann.

    a) In dem Template 'ce_downloads.html5' wird ein Icon, der Dateiname und die Größe in einem Link zusammengefasst.
    Die Daten dazu kommen u.a. aus $file['mime'], $file['href'] und $file['filesize'].

    Kann hier auch auf ein Dateidatum (z.B. $file['date']) oder so ähnlich zurückgegriffen werden?

    b) Habe testweise das Template 'ce_downloads.html5' aus [contao]/system/modules/frontend/templates nach [contao]/templates und einen fixen Text ins Template eingebaut, um zu sehen ob das geänderte Template gezogen wird.
    Im Frontend ist aber der eingefügte Fixtext nicht zu sehen. (Bei einem anderen Template (ce_text.html5) ist eine solche Änderung sofort erkennbar.

    Was könnte Ursache sein, dass die Änderung in 'ce_downloads.html5' sich im Frontend nicht auswirkt?

    Danke und Gruß
    Carsten
    Albert Einstein: Phantasie ist wichtiger als Wissen, denn Wissen ist begrenzt.

  2. #2
    Contao-Urgestein
    Registriert seit
    07.04.2010.
    Ort
    Stuttgart
    Beiträge
    2.733
    User beschenken
    Wunschliste

    Standard

    Zitat Zitat von althoffc Beitrag anzeigen
    Kann hier auch auf ein Dateidatum (z.B. $file['date']) oder so ähnlich zurückgegriffen werden?
    PHP-Code:
    <?php $this->showTemplateVars() ;?>
    zeigt dir was du alles im Template zur verfügung hast

    Zitat Zitat von althoffc Beitrag anzeigen
    Was könnte Ursache sein, dass die Änderung in 'ce_downloads.html5' sich im Frontend nicht auswirkt?
    Unter Systemwartung die Temporären Daten / HTML gelöscht?

  3. #3
    Contao-Nutzer Avatar von althoffc
    Registriert seit
    24.06.2009.
    Beiträge
    125

    Standard

    Hallo psren,

    vielen Dank für die schnellen Tipps.
    Nach dem Löschen der Temporärdateien unter Systemwartung sehe ich jetzt auch die Änderungen im Template.
    (Das ich da nicht selbst drauf gekommen bin ...).

    Werde mir die Variablen mal anschauen. War mir nicht klar, welche Möglichkeiten es dazu gibt.

    Vielen Dank.

    Gruß
    Carsten
    Albert Einstein: Phantasie ist wichtiger als Wissen, denn Wissen ist begrenzt.

  4. #4
    Contao-Nutzer Avatar von althoffc
    Registriert seit
    24.06.2009.
    Beiträge
    125

    Standard

    Hallo,

    jetzt habe ich mir die Variablen angeschaut.
    In einem Array 'Files' sind für jede Datei verschiedene Informationen enthalten, jedoch kein (Änderungs-)Datum.

    Wie kann man dieses Array um weitere Informationen befüllen, so dass z.B. auch ein Änderungsdatum zur Verfügung steht?

    Danke und Gruß
    Carsten
    Albert Einstein: Phantasie ist wichtiger als Wissen, denn Wissen ist begrenzt.

  5. #5
    Contao-Fan
    Registriert seit
    03.06.2010.
    Beiträge
    297

    Standard

    Habe dasselbe Anliegen -> Ich möchte auch eine downloads-Template Dateiliste mit dem zugehörigen Dateidatum ausgeben. Leider gibt es dafür keine Variablen.

    Hat wirklich niemand eine Idee wie man das lösen kann?

  6. #6
    Contao-Nutzer
    Registriert seit
    21.07.2009.
    Beiträge
    43

    Standard

    Hat das bisher jemand lösen können? Ich würde auch gern das Änderungsdatum bzw. das Datum wann die Datei hochgeladen wurde anzeigen lassen.

  7. #7
    Wandelndes Contao-Lexikon Avatar von BugBuster
    Registriert seit
    15.06.2009.
    Ort
    Berlin
    Beiträge
    10.513
    User beschenken
    Wunschliste

    Standard

    Grob überlegt fallen mir da zwei Lösungsmöglichkeiten ein.
    a)
    Das Modul erweitern, damit das Datum mit in das Array übergeben wird, und mittels Anpassung des Templates dieses dann anzeigen.
    b)
    Nur das Template anpassen, da muss dann einige PHP Logik rein um aus den vorhandenen Parametern den Dateipfad zu ermitteln und das Dateidatum darüber zu ermitteln.

    Falls b) funktioniert wäre das ganze noch update sicher.
    Kommt auch auf die Contao Version drauf an.
    Grüße, BugBuster
    "view source" is your guide.
    Danke an alle Amazon Wunschlisten Erfüller

  8. #8
    Contao-Fan Avatar von rusty
    Registriert seit
    07.02.2012.
    Ort
    Hamburg
    Beiträge
    267

    Standard

    zu Lösung B:
    Habe das in einem Template so gelöst:
    PHP-Code:
    <?php
                $filepath 
    substr($file['href'], strpos($file['href'],'=')+);
                
    $mydate "";
                if (
    filemtime($filepath)) $mydate date $GLOBALS['TL_CONFIG']['dateFormat'] , filemtime($filepath) );
            
    ?>
    Die Variable $mydate gebe ich dann aus.

  9. #9
    Contao-Urgestein Avatar von Andreas
    Registriert seit
    19.06.2009.
    Ort
    Mönchengladbach
    Beiträge
    7.703
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    So geht's mit dem FilesModel und der Date-Klasse von Contao, damit kann das Datum dann auch mehrsprachig sein
    PHP-Code:
    $objFile  = \FilesModel::findByUuid($file['uuid']);
    $filePath $objFile->path;
    // oder kürzer
    #$filePath = \FilesModel::findByUuid($file['uuid'])->path;

    $fileDate = \Date::parse($GLOBALS['TL_CONFIG']['dateFormat'], filemtime($filePath)); 
    Bitte!
    Vor Anfragen im Forum HTML validieren.
    Codesnippets hier im Froum sauber einrücken. Nur Tabs o. nur Leerzeichen verwenden.

    Vielen Dank an alle Wunschlistenerfüller
    Andreas Burg, Web Solutions

  10. #10
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.108
    Partner-ID
    10107

    Standard

    Für das Datum wäre es wohl korrekter das Datumsformat des Website Roots zu nehmen, wenn vorhanden (wenn nicht kommt so auch automatisch das dateFormat der config zum Einsatz):
    PHP-Code:
    global $objPage;
    $fileDate = \Date::parse($objPage->dateFormatfilemtime($filePath)); 
    Geändert von Spooky (02.05.2016 um 10:29 Uhr)

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •