CMS_FILELIST[n] keine Meta-Daten

Gesperrt
spectral
Beiträge: 38
Registriert: Mi 5. Mär 2008, 16:40
Kontaktdaten:

CMS_FILELIST[n] keine Meta-Daten

Beitrag von spectral » Mo 22. Okt 2012, 15:55

Hallo!

Ich möchte mit CMS_FILELIST[n] eine Bildergalerie erzeugen, allerdings bleiben alle Meta-Daten leer (also FILEMETA_DESCRIPTION, FILEMETA_KEYWORDS, FILEMETA_MEDIANAME, FILEMETA_INTERNAL_NOTICE und FILEMETA_COPYRIGHT). Mein Code im einzelnen:

Im Modul Output:

Code: Alles auswählen

"CMS_FILELIST[100]"
Das Modul-Template:

Code: Alles auswählen

<!-- BEGIN:BLOCK -->
<a class="fancybox" rel="prodimgs"  href="{FILELINK}" style="background-image:url(images/sb-ico_img.gif)" title="{FILEMETA_DESCRIPTION}">Fotogalerie</a>
<!-- END:BLOCK -->
Nach Auswahl meines Modul-Templates wird - wie zu erwarten - für jede Date im ausgewählten Verzeichniss ein Link erzeugt, aber die {FILEMETA_DESCRIPTION} bleibt leer, obwohl in der Dateiverwaltung korrekt eingetragen und in con_upl_meta abgelegt. Wenn ich im Artikel-Editor die Dateiliste bearbeite und unter Dateilisteneinstellungen->Allgemein->Meta-Daten laden? das Häckchen setze, wird trotzdem {FILEMETA_DESCRIPTION} (und auch die anderen Meta-Daten) nicht angezeigt. Auch scheint sich Contenido diese Einstellung nicht zu merken, denn beim nächsten Bearbeiten ist das das Häckchen wieder weg. Die Werte, die ich bei Begrenzen auf X Zeichen eingebe, bleiben hinegegen erhalten.

Ist das ein generelles Problem? Ich benutze contenido 4.8.16 Oder hat jemand eine Idee, wo der Fehler sein könnte?

Danke für eure Hilfe! Schöne Grüße, Andras

xmurrix
Beiträge: 3153
Registriert: Do 21. Okt 2004, 11:08
Wohnort: Augsburg
Kontaktdaten:

Re: CMS_FILELIST[n] keine Meta-Daten

Beitrag von xmurrix » Di 23. Okt 2012, 23:39

Konnte das auf einer frischen Installation mit dem Beispielmandanten nicht reproduzieren, funktioniert soweit wie es soll.

Habe es in CONTENIDO 4.8.18 mit Chrome getestet.

Mit welchem Browser machst du das und gibt es irgendwelche JavaScript Fehler in der Konsole?
CONTENIDO Downloads: CONTENIDO 4.10.1
CONTENIDO Links: Dokumentationsportal, FAQ, API-Dokumentation
CONTENIDO @ Github: CONTENIDO 4.10 - Mit einem Entwicklungszweig (develop-branch), das viele Verbesserungen/Optimierungen erhalten hat und auf Stabilität und Kompatibilität mit PHP 8.0 bis 8.2 getrimmt wurde.

spectral
Beiträge: 38
Registriert: Mi 5. Mär 2008, 16:40
Kontaktdaten:

Re: CMS_FILELIST[n] keine Meta-Daten

Beitrag von spectral » Mi 24. Okt 2012, 14:02

Danke für Deine Antwort.

Nein es gibt keinen Fehler in der Konsole.
Ich habe es mit Firefox 16.0.1 und Chrome 22.0.1229.94 probiert. Beides funktioniert grundsätzlich schon, aber wie gesagt in der Ausgabe bleiben die Meta-Daten leer. Irgendwie scheint das Auslesen von con_upl_meta nicht zu funktionieren.

Momentan läuft Contenido 4.8.16 Ich werde heute Abend mal ein Update auf 4.8.18 machen.

ich habe mir mal class.cms_filelist.php angeschaut, das ist mir aber leider zu hoch.
Der Eintrag in con_content scheint grundsätzlich zu passen:

Code: Alles auswählen

<?xml version="1.0" encoding="iso-8859-1"?>
<filelist>
  <title>MAK4</title>
  <style>cms_filelist_style_spec.html</style>
  <directories>
    <dir>produkte/21_MAK4</dir>
    <dir>produkte/21_MAK4/Sonderausstattung</dir>
  </directories>
  <incl_subdirectories>undefined</incl_subdirectories>
  <manual>undefined</manual>
  <sort>filename</sort>
  <incl_metadata>checked</incl_metadata>
  <extensions>
    <ext>gif</ext>
    <ext>jpeg</ext>
    <ext>jpg</ext>
    <ext>png</ext>
    <ext>doc</ext>
    <ext>xls</ext>
    <ext>pdf</ext>
    <ext>txt</ext>
    <ext>zip</ext>
    <ext>ppt</ext>
  </extensions>
  <sortorder>asc</sortorder>
  <filesizefilter_from>0</filesizefilter_from>
  <filesizefilter_to>0</filesizefilter_to>
  <ignore_extensions>off</ignore_extensions>
  <manual_files>
    <file>produkte/21_MAK4/21-1_MAK-4.jpg</file>
  </manual_files>
  <filecount>0</filecount>
  <md_description_limit>20</md_description_limit>
  <md_medianame_limit>20</md_medianame_limit>
  <md_copyright_limit>20</md_copyright_limit>
  <md_keywords_limit>20</md_keywords_limit>
  <md_internal_notice_limit>20</md_internal_notice_limit>
  <creationdatefilter_from>0</creationdatefilter_from>
  <creationdatefilter_to>0</creationdatefilter_to>
  <modifydatefilter_from>0</modifydatefilter_from>
  <modifydatefilter_to>0</modifydatefilter_to>
</filelist>
Mir ist nicht ganz klar an welcher Stelle das Modul-template gefüllt wird bzw. wann die Daten aus con_upl_meta geholt werden. Leider blicke ich das zu wenig und weiß auch nicht welchen entscheidende Info ich noch geben könnte. Ich sehe ein, mir ist so schwer zu helfen. Oder gibt es noch Hoffnung?

xmurrix
Beiträge: 3153
Registriert: Do 21. Okt 2004, 11:08
Wohnort: Augsburg
Kontaktdaten:

Re: CMS_FILELIST[n] keine Meta-Daten

Beitrag von xmurrix » Mi 24. Okt 2012, 14:33

Schau dir die Funktion getAllWidgetOutput() der Klasse Cms_FileList an (in der contenido/classes/class.cms_filelist.php).
Darin wird alles die Ausgabe für das Frontend aufbereitet/verarbeitet.

Sehe gerade, dass in der XML, das du hier gepostet hast, ein Fehler ist, da steht

Code: Alles auswählen

  <incl_metadata>checked</incl_metadata>
aber es sollte

Code: Alles auswählen

  <incl_metadata>true</incl_metadata>
sein.

Hmm, anscheinend gibt es entweder ein Problem bei der Ausgabe des Widgets oder beim Speichern der Daten.

In der Klasse Cms_FileList is die Funktion getAllWidgetEdit() für die Ausgabe des Widgets im Backend zuständing und die FunktionstoreFileList() zum Speichern der Daten.
Irgendwo ist wohl ein Problem.

Es könnte auch sein, dass irgend ein JavaScript Event-Handler die Daten vor dem Versenden ändert.

Gruß
xmurrix
CONTENIDO Downloads: CONTENIDO 4.10.1
CONTENIDO Links: Dokumentationsportal, FAQ, API-Dokumentation
CONTENIDO @ Github: CONTENIDO 4.10 - Mit einem Entwicklungszweig (develop-branch), das viele Verbesserungen/Optimierungen erhalten hat und auf Stabilität und Kompatibilität mit PHP 8.0 bis 8.2 getrimmt wurde.

spectral
Beiträge: 38
Registriert: Mi 5. Mär 2008, 16:40
Kontaktdaten:

Re: CMS_FILELIST[n] keine Meta-Daten

Beitrag von spectral » Mi 24. Okt 2012, 15:58

Ja das bringt mich einen Schritt weiter.

Wenn ich den Datenbankeintrag editiere und checked durch true ersetze, werden die Meta-Daten angezeigt - Juhu.

Ich weiß nur nicht, wie ich dem Widget beibringen kann, den richtigen Wert für incl_metadata ins XML zu schreiben.
Ich glaube, dass der Hund vielleicht in Zeile 143 der cmsFileList.js begraben ist:

Code: Alles auswählen

(...)
139     //iterate over all FileList properties
140		for (var i = 0; i < aFileListData.length; i++) {
141		  if (aFileListData[i] == 'filelist_incl_subdirectories' || aFileListData[i] == 'filelist_manual' || aFileListData[i] == 'filelist_incl_metadata' ) {
142			//special behaviour for checkboxes
143			sValue = $(sFrameId+' #'+aFileListData[i]).attr('checked');
144		  } else if (aFileListData[i] == 'filelist_extensions') {
(...)
Jedenfalls, wenn ich nach der Zeile sValue = $(sFrameId+' #'+aFileListData).attr('checked'); ein alert (sValue); einfüge, wird als Wert "checked" angezeigt.

Schönen Gruß,
Andras


Übrigens das Upgrade auf 4.8.18 habe ich gemacht, was aber nichts geändert hat.

Spider IT
Beiträge: 1416
Registriert: Fr 3. Dez 2004, 10:15

Re: CMS_FILELIST[n] keine Meta-Daten

Beitrag von Spider IT » Mi 24. Okt 2012, 19:12

Hallo Andras,

dann mach mal folgendes:

Code: Alles auswählen

143         sValue = (($(sFrameId+' #'+aFileListData[i]).attr('checked') == 'checked') ? 'true' : 'false');
Gruß
René

xmurrix
Beiträge: 3153
Registriert: Do 21. Okt 2004, 11:08
Wohnort: Augsburg
Kontaktdaten:

Re: CMS_FILELIST[n] keine Meta-Daten

Beitrag von xmurrix » Mi 24. Okt 2012, 23:50

Hallo spectral,

es ist ein Problem mit der verwendeten jQuery-Version. Wahrscheinlich verwendest du im Frontend eine neue Version von jQuery, das Backend läuft aber noch mit 1.4.

Während z. B. in jQuery 1.5 obj.attr('checked') true liefert, ist es z. B. in jQuery 1.8 anders, da liefert es "checked" zurück.

Hier ein Beispiel mit jQuery 1.5:
http://jsbin.com/ucuyeh/1/

und mit jQuery 1.8:
http://jsbin.com/ozinog/1/

(öffne JS Bin über den Layer rechts oben und wähle auch die Konsole)

Gruß
xmurrrix
CONTENIDO Downloads: CONTENIDO 4.10.1
CONTENIDO Links: Dokumentationsportal, FAQ, API-Dokumentation
CONTENIDO @ Github: CONTENIDO 4.10 - Mit einem Entwicklungszweig (develop-branch), das viele Verbesserungen/Optimierungen erhalten hat und auf Stabilität und Kompatibilität mit PHP 8.0 bis 8.2 getrimmt wurde.

Spider IT
Beiträge: 1416
Registriert: Fr 3. Dez 2004, 10:15

Re: CMS_FILELIST[n] keine Meta-Daten

Beitrag von Spider IT » Do 25. Okt 2012, 09:39

Dann müsste folgendes für beide Versionen funktionieren:

Code: Alles auswählen

143         sValue = ((($(sFrameId+' #'+aFileListData[i]).attr('checked') == 'checked') || ($(sFrameId+' #'+aFileListData[i]).attr('checked') == 'true')) ? 'true' : 'false');
Gruß
René

spectral
Beiträge: 38
Registriert: Mi 5. Mär 2008, 16:40
Kontaktdaten:

Re: CMS_FILELIST[n] keine Meta-Daten

Beitrag von spectral » Fr 26. Okt 2012, 10:22

Meine Herren, vielen Dank für die Hilfe. Genau das wars.

@ xmurrix:
Stimmt, ich habe jQuery 1.8 eingebunden.

@ René:
Genau, und Dein Code ist die Lösung!

Das wäre etwas für die nächste Version, oder?

Schönen Gruß, Andras

derju
Beiträge: 301
Registriert: Do 15. Jan 2009, 09:00
Kontaktdaten:

Re: CMS_FILELIST[n] keine Meta-Daten

Beitrag von derju » Sa 5. Jan 2013, 21:14

Hab das selbe Problem.

Muss ich hier was im Output beachten?

Code: Alles auswählen

<?php
echo "CMS_FILELIST[1]";
?>
LG - derJu
Contenido 4.8.20 | Contenido 4.9.12

rethus
Beiträge: 1851
Registriert: Di 28. Mär 2006, 11:55
Wohnort: Mönchengladbach
Kontaktdaten:

Re: CMS_FILELIST[n] keine Meta-Daten

Beitrag von rethus » Mi 14. Okt 2015, 17:45

Hatte das gleiche Problem, in dem Dialog der Filelist im Tab "General" : Bild
Could I help you... you can help me... buy me a coffee . (vielen ❤ Dank an: Seelauer, Peanut, fauxxami )

xstable.com: - HighSpeed Hosting, Domains, DomainReselling, Linux-Administration
suther.de: - App-Programierung, High-Performance-Webpages, MicroServices, API-Anbindungen & Erstellung

Software... ein Blick wert: GoogleCalender Eventlist, xst_dynamic_contentType

Gesperrt