[Kobv-opus-tester] Dynamik in einem Enrichment Feld

Schwarz, Hermann schwarz at dipf.de
Di Mai 21 21:20:30 CEST 2019


Hallo nochmal,


ich hab's hinbekommen, indem ich in MEIN_DOC_TYPE.phtml? das Array

$this->groupdipf_education_level['Fields']

?entsprechend anpasse, bevor ich es an die Methode

$this->group($this->groupdipf_education_level)

übergebe.



Wahrscheinlich würde es eleganter gehen, wenn man in

\Publish_View_Helper_Fieldset::renderHtmlSelect?($field, $options)

eine Möglichkeit hinzufügt, die Select-Optionen über den noch nicht benutzten Parameter $options zu setzen.

Ich mache vielleicht demnächst einen entsprechenden Pull-Request auf GitHub.


Viele Grüße

Hermann




________________________________
Von: Kobv-opus-tester <kobv-opus-tester-bounces at zib.de> im Auftrag von Schwarz, Hermann <schwarz at dipf.de>
Gesendet: Dienstag, 21. Mai 2019 19:02
An: kobv-opus-tester at zib.de
Betreff: [Kobv-opus-tester] Dynamik in einem Enrichment Feld


Liebe Opus-Community,


ich bin neu in der Runde und habe gleich folgende Frage:


ich habe ein neues Enrichmend-Feld Selektionsliste definiert


<field name="dipf_education_level" required="no" formelement="Select" datatype="Enrichment" multiplicity="*">
    <option value="Grundschule"></option>
    <option value="Gymnasium"></option>
</field>?


Was ich vermisse ich eine dynamische Belegung von Optionen. Ein Work-Around wäre, die XML-Datei, wo die Felder für meinen DocType definiert sind, immer wieder mit ggf. neuen Werten neu anzulegen / zu überschreiben.

Das erscheint mir aber nicht all zu elegant.

Vielleicht gibt es eine Möglichkeit, im .phtml-File des DocTypes die <option> Values zu überschreiben?


sowas wie

<?= $this->group($this->groupdipf_education_level->setOptionValues(['Grundschule', 'Gymnasium'])) ?>


statt

<?= $this->group($this->groupdipf_education_level) ?>


Ich habe mir

\Publish_View_Helper_Fieldset::renderHtmlSelect?($field, $options)

und

\Publish_View_Helper_Group::group($value, $options, $name)

angeschaut


und folgendes im .phtml-Template versucht:


<?php
$this->groupdipf_education_level['Fields']['options'] = [
        'Val1' => 'Opt1',
        'Val2' => 'Opt2',
    ];
?>

    <?= $this->group($this->groupdipf_education_level) ?>


Aber ohne Erfolg.

Ich Vermute außerdem, dass das bisher unbenutzte Parameter $options in renderHtmlSelect?($field, $options) vielleicht für meine Zwecke gedacht war, aber die Logik noch nicht implementiert wurde.



Danke für Hilfe im Voraus!

Hermann
-------------- nächster Teil --------------
Ein Dateianhang mit HTML-Daten wurde abgetrennt...
URL: <http://listserv.zib.de/pipermail/kobv-opus-tester/attachments/20190521/c0fc2358/attachment.html>


Mehr Informationen über die Mailingliste Kobv-opus-tester