Questions & Answers

SOLVED
smxy
Returning Observer

DataAccessPlugin - Drag & Drop von PlainText im ContentCreator

Jump to solution

Hallo Community,

ich habe ein DataAccessPlugin als Report implementiert, mittels dem die ID von externen Suchergebnissen per Drag & Drop kopiert werden kann.

Im SiteArchitect funktioniert das problemlos. Dort kann ich per Drag & Drop die IDs der Suchergebnisse an beliebige Stellen als PlainText kopieren.

Versuche ich das jedoch im ContentCreator, scheint der Handler nicht zu greifen. Hier scheint das Standardverhalten zu greifen, da per Drag & Drop nur der umschlieรŸende a-Tag kopiert wird.

In der Frage CMS_INPUT_TEXT mit Drag-n-Drop via DataAccessPluginโ€‹ von 2016 gab es ein รคhnliches Problem. Dort wurde zu den TransferTypes "PlainTextType" und "AllTextType" geraten. Diese haben bei mir leider beide nicht geholfen.

Meine DataAccessSession sieht aktuell folgendermaรŸen aus:

package custom.dataaccessplugin;

import de.espirit.firstspirit.agency.TransferAgent;

import de.espirit.firstspirit.client.plugin.dataaccess.DataAccessSession;

import de.espirit.firstspirit.client.plugin.dataaccess.DataSnippetProvider;

import de.espirit.firstspirit.client.plugin.dataaccess.DataStreamBuilder;

import de.espirit.firstspirit.client.plugin.dataaccess.aspects.SessionAspectMap;

import de.espirit.firstspirit.client.plugin.dataaccess.aspects.SessionAspectType;

import de.espirit.firstspirit.client.plugin.dataaccess.aspects.transfer.SupplierHost;

import de.espirit.firstspirit.client.plugin.dataaccess.aspects.transfer.TransferSupplying;

import java.util.Collections;

public class CustomAccessSession implements DataAccessSession<CustomObject>, TransferSupplying {

    private SessionAspectMap aspects = new SessionAspectMap();

    private TransferAgent transferAgent;

    private class CustomSupplier implements SupplierHost.Supplier<CustomObject, String> {

        @Override

        public List<String> supply(CustomObject object) {

            return Collections.singletonList(object.getId());

        }

    }

    public CustomAccessSession(TransferAgent transferAgent) {

        aspects.put(TransferSupplying.TYPE, this);

        this.transferAgent = transferAgent;

    }

    @Override

    public <A> A getAspect(SessionAspectType<A> sessionAspectType) {

        return aspects.get(sessionAspectType);

    }

    @Override

    public void registerSuppliers(final SupplierHost supplierHost) {

        supplierHost.registerSupplier(transferAgent.getPlainTextType(), new CustomSupplier());

    }

}

Vergesse ich noch ein wichtiges Detail, durch das die Funktionalitรคt auch im ContentCreator gegeben ist?

GrรผรŸe

Martin

0 Kudos
1 Solution

Accepted Solutions
smxy
Returning Observer

Der Fehler lag nicht in der Implementierung, sondern in der Umsetzung der Absatz-Pflegemaske.

Ich habe versucht die Report Items direkt in Textfelder wie CMS_INPUT_TEXT oder CMS_INPUT_TEXTAREA zu ziehen. Im ContentCreator werden Textfelder nicht unterstรผtzt, weil die Daten erst nachtrรคglich durch FirstSpirit vom Plugin erfragt werden.

Das gewรผnschte Verhalten kann durch die Implementierung eines FS_BUTTON erzielt werden. In einem FS_BUTTON werden die Drop-Daten einem Skript รผbergeben, das den รผbergebenen Datentyp generisch ermitteln und somit die Werte in das Formular รผbernehmen kann.

Vielen Dank an Herrn Klein vom Technical Support fรผr die schnelle und effektive Unterstรผtzung Smiley Happy

View solution in original post

0 Kudos
1 Reply
smxy
Returning Observer

Der Fehler lag nicht in der Implementierung, sondern in der Umsetzung der Absatz-Pflegemaske.

Ich habe versucht die Report Items direkt in Textfelder wie CMS_INPUT_TEXT oder CMS_INPUT_TEXTAREA zu ziehen. Im ContentCreator werden Textfelder nicht unterstรผtzt, weil die Daten erst nachtrรคglich durch FirstSpirit vom Plugin erfragt werden.

Das gewรผnschte Verhalten kann durch die Implementierung eines FS_BUTTON erzielt werden. In einem FS_BUTTON werden die Drop-Daten einem Skript รผbergeben, das den รผbergebenen Datentyp generisch ermitteln und somit die Werte in das Formular รผbernehmen kann.

Vielen Dank an Herrn Klein vom Technical Support fรผr die schnelle und effektive Unterstรผtzung Smiley Happy

0 Kudos

Type a product name