cContentTypeFilelist() Medianame

Fragen zur Installation von CONTENIDO 4.9? Probleme bei der Konfiguration? Hinweise oder Fragen zur Entwicklung des Systemes oder zur Sicherheit?
Antworten
Faar
Beiträge: 1915
Registriert: Sa 8. Sep 2007, 16:23
Wohnort: Brandenburg
Kontaktdaten:

cContentTypeFilelist() Medianame

Beitrag von Faar » Mo 29. Feb 2016, 14:48

Wie macht ihr es, dort den Medianamen heraus zu holen?

Code: Alles auswählen

$filelist = new cContentTypeFilelist($contentValue, $filelistIndex, array());
$files = $filelist->getConfiguredFiles();
Dort in der Klasse steht, dass man einen Parameter übergeben muss, als array() getarnt, damit auch der Medianame kommt.
Aber bei mir tut es das nicht :(
Fliegt der Bauer übers Dach, ist der Wind weißgott nicht schwach.

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

Re: cContentTypeFilelist() Medianame

Beitrag von rethus » Mo 29. Feb 2016, 16:41

Ein leerer Array wird da nichts bewirken.
Schau dir mal den Quelltext-kommentar zur Konstruktor-Methode an, dann dürfte einges klarer werden:

http://api.contenido.org/con498/source- ... _construct
* @param array $contentTypes
89: * array containing the values of all content types
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

Faar
Beiträge: 1915
Registriert: Sa 8. Sep 2007, 16:23
Wohnort: Brandenburg
Kontaktdaten:

Re: cContentTypeFilelist() Medianame

Beitrag von Faar » Mo 29. Feb 2016, 17:18

rethus hat geschrieben:Schau dir mal den Quelltext-kommentar zur Konstruktor-Methode an, dann dürfte einges klarer werden:
Gut, und wie würdest du es dann machen? :roll:
Das war ja meine Frage.
Fliegt der Bauer übers Dach, ist der Wind weißgott nicht schwach.

dermicha
Beiträge: 95
Registriert: Mi 9. Dez 2009, 17:57
Kontaktdaten:

Re: cContentTypeFilelist() Medianame

Beitrag von dermicha » Di 8. Mär 2016, 14:32

Hast Du Dir das Standard-Bildergaleriemodul mal angesehen?:

Code: Alles auswählen

$filelist = new cContentTypeFilelist($contentValue, $filelistIndex, array());
$files = $filelist->getConfiguredFiles();

$pictures = array();

if (count($files) > 0) {
    foreach ($files as $file) {
        $pathThumb = $file['path'] . '/' . $file['filename'];

        $record = array();
        $record['thumb'] = cApiImgScale($pathThumb, 319, 199);
        $record['lightbox'] = $cfgClient[$client]['upload'] . $pathThumb;
        $record['description'] = $file['metadata']['description'];
        $record['copyright'] = $file['metadata']['copyright'];

        array_push($pictures, $record);
    }
}
Analog zur Description kann man auch den Medianame in das Array einfügen.

Faar
Beiträge: 1915
Registriert: Sa 8. Sep 2007, 16:23
Wohnort: Brandenburg
Kontaktdaten:

Re: cContentTypeFilelist() Medianame

Beitrag von Faar » Di 8. Mär 2016, 14:38

dermicha hat geschrieben:Hast Du Dir das Standard-Bildergaleriemodul mal angesehen?:
Ja.
Analog zur Description kann man auch den Medianame in das Array einfügen.
Und genau damit funktioniert es nicht. Weder mit Description noch mit Medianame.
Ich vermute einfach mal vorsichtig, dass der Code so überhaupt keine Metadaten ausspucken kann, weil man vorher irgendwelche Arrays mitschicken muss oder vielleicht mit Set() irgendeine Variable setzen.

Code: Alles auswählen

$filelist = new cContentTypeFilelist($contentValue, $filelistIndex, array());
Wie muss das array() gestaltet sein?
Fliegt der Bauer übers Dach, ist der Wind weißgott nicht schwach.

homtata
Beiträge: 1142
Registriert: Mi 14. Jan 2004, 14:41
Kontaktdaten:

Re: cContentTypeFilelist() Medianame

Beitrag von homtata » Di 8. Mär 2016, 23:54

Kannst du denn mal den zusammenhängenden Code posten, den du verwenden willst? Eigentlich müsste das Auslesen lt. Klasse klappen.. Vielleicht ist da noch irgendwo ein Architekturfehler im Code...

Faar
Beiträge: 1915
Registriert: Sa 8. Sep 2007, 16:23
Wohnort: Brandenburg
Kontaktdaten:

Re: cContentTypeFilelist() Medianame

Beitrag von Faar » Mi 9. Mär 2016, 08:15

Moin,

das ist fast wie der Code oben drüber bei @dermicha.
Und in der Klasse wird folgendes abgefragt:

Code: Alles auswählen

if ($this->_settings['filelist_incl_metadata'] === 'true') { ...
Nun, dieses _settings['filelist_incl_metadata'] = 'true' wird wie gesetzt?
Ohne dieses true werden keine Metadaten ausgespuckt, auch keine Description.
Das Standard-Bildergalerie Modul wirft bei meiner Testinstallation (Contenido Demo) nämlich auch keine Description aus, funktioniert also gar nicht richtig.

Wie setze ich nun _settings['filelist_incl_metadata'] = 'true' ?
Das wusste der Entwickler des Standard Galeriemoduls scheints auch nicht, sonst hätte er es getan.
Fliegt der Bauer übers Dach, ist der Wind weißgott nicht schwach.

homtata
Beiträge: 1142
Registriert: Mi 14. Jan 2004, 14:41
Kontaktdaten:

Re: cContentTypeFilelist() Medianame

Beitrag von homtata » Mi 9. Mär 2016, 09:04

Keine Ahnung.

Falls dir die Abfrage zu jedem Bild die idupl ausspuckt, kannst du es auch wie folgt einfach anders regeln:

Code: Alles auswählen

	// get metatags for the source image
	$meta = new cApiUploadMeta();
	$meta->loadByUploadIdAndLanguageId( $oUploadItem->get('idupl'), $lang );
	$aImgData['medianame']            = $meta->get('medianame');
	$aImgData['description']          = $meta->get('description');
	$aImgData['copyright']            = $meta->get('copyright');
	$aImgData['keywords']             = $meta->get('keywords');
	$aImgData['internal_description'] = $meta->get('internal_description');

dermicha
Beiträge: 95
Registriert: Mi 9. Dez 2009, 17:57
Kontaktdaten:

Re: cContentTypeFilelist() Medianame

Beitrag von dermicha » Mi 9. Mär 2016, 09:23

Code: Alles auswählen

_settings['filelist_incl_metadata'] = 'true'
wird wahrscheinlich die Checkbox im Filelist-Dialog (im Editor) unter dem Tab "Allgemein" sein. Finde ich auch tückisch, dass das nicht als Standard aktiviert ist...

Faar
Beiträge: 1915
Registriert: Sa 8. Sep 2007, 16:23
Wohnort: Brandenburg
Kontaktdaten:

Re: cContentTypeFilelist() Medianame

Beitrag von Faar » Mi 9. Mär 2016, 14:52

dermicha hat geschrieben:wird wahrscheinlich die Checkbox im Filelist-Dialog (im Editor) unter dem Tab "Allgemein" sein.
Ich habe jetzt mal "medianame" ins Template aufgenommen und siehe da, nichts passiert, weil die Änderung im Template über das Frontend nicht dargestellt wird. Das zugefügte <p> existiert einfach nicht, trotz Cache löschen und Code erzwingen.
Nun, die Description wird tatsächlich angezeigt, also müsste es doch auch mit dem Medianame so sein... dachte ich. :?
Also habe ich mal die Zeichenanzahl bei Description auf 5 geändert, um zu sehen, ob sich da überhaupt was tut.

Und siehe da, man sieht nichts! :mrgreen:
Wortwörtlich nichts, die Galerie wird nicht mehr angezeigt und der Seitenaufbau im Frontend abgebochen.

Der Errorlog sagt folgendes:

Code: Alles auswählen

PHP Fatal error:  Class 'ccString' not found in /.../contenido/classes/content_types/class.content.type.filelist.php on line 305
:cry:

Für diejenigen die es interessiert:
Zeile 305 in class.content.type.filelist.php ein c bei ccString weg nehmen.

Code: Alles auswählen

$metaData[$identName] = cString::trimAfterWord(cSecurity::unFilter($string), $this->_settings['filelist_md_' . $identName . '_limit']) . '...';
Dann läuft das wieder. 8)
Fliegt der Bauer übers Dach, ist der Wind weißgott nicht schwach.

Faar
Beiträge: 1915
Registriert: Sa 8. Sep 2007, 16:23
Wohnort: Brandenburg
Kontaktdaten:

Re: cContentTypeFilelist() Medianame

Beitrag von Faar » Mi 9. Mär 2016, 15:17

Und an das Entwicklerteam dieses Content-Types: bitte benützt beim Kürzen der Ausgabe das &hellip; als Auslassungspunkte und nicht 3 Punkte ...
3 Punkte sind 3 einzelne Zeichen aber &hellip; ist 1 Zeichen und das richtige für diesen Fall.
Fliegt der Bauer übers Dach, ist der Wind weißgott nicht schwach.

frederic.schneider_4fb
Beiträge: 967
Registriert: Do 15. Apr 2004, 17:12
Wohnort: Eschborn-Niederhöchstadt
Kontaktdaten:

Re: cContentTypeFilelist() Medianame

Beitrag von frederic.schneider_4fb » Do 17. Mär 2016, 12:25

Danke, Faar, ein, wie ich finde, guter Hinweis. Ich nehme das mal mit in die Diskussion im Entwicklerteam!
Frederic Schneider
Entwickler bei der four for business AG

frederic.schneider_4fb
Beiträge: 967
Registriert: Do 15. Apr 2004, 17:12
Wohnort: Eschborn-Niederhöchstadt
Kontaktdaten:

Re: cContentTypeFilelist() Medianame

Beitrag von frederic.schneider_4fb » Do 24. Mär 2016, 10:49

Wir nehmen das als Ticket für eine der nächsten Versionen auf
Frederic Schneider
Entwickler bei der four for business AG

Faar
Beiträge: 1915
Registriert: Sa 8. Sep 2007, 16:23
Wohnort: Brandenburg
Kontaktdaten:

Re: cContentTypeFilelist() Medianame

Beitrag von Faar » Do 28. Apr 2016, 17:28

dermicha hat geschrieben:

Code: Alles auswählen

_settings['filelist_incl_metadata'] = 'true'
wird wahrscheinlich die Checkbox im Filelist-Dialog (im Editor) unter dem Tab "Allgemein" sein. Finde ich auch tückisch, dass das nicht als Standard aktiviert ist...
Das stimmt schon, das ist gut versteckt, aber das Problem ist, man muss es jedesmal in jeder Seite anklicken, statt dass man es als default Wert ins Programm schreiben könnte.
Hat man 100 Seiten mit je 3 Galerien, weiß man was man getan hat :motz:
Fliegt der Bauer übers Dach, ist der Wind weißgott nicht schwach.

Antworten