Hallo!
Für mein Projekt soll ich Alfresco als DMS aufsetzen. Hauptsächlich sollen die Dokumente über das CIFS-Laufwerk eingefügt und bearbeitet werden.
Für die Dokumente habe ich einen eigenen Dokumententyp erstellt, der von "cm:content" abstammt und projektspezifische Pflichtfelder enthält.
Nun soll es nicht möglich sein, Dokumente einzufügen, ohne dass diese Pflicht-Metadaten eingetragen wurden.
Über eine Ordner-Regel wird der Dokumententyp festgelegt und über einen Metadaten-Extractor werden die Pflichtfelder ausgefüllt.
Fehlt nun ein Teil dieser Pflichtdaten, soll das Einfügen der Datei abgelehnt werden. Bisher bleibt die Datei jedoch bestehen und hat den Typ "cm:content".
Meine Idee war, ein eigenes Script zu schreiben, welches die Datei umwandelt und bei einem Fehler wieder löscht. Dies funktioniert auch soweit ganz gut.
Stattdessen soll dann das Dokument über eine Desktop-Aktion eingefügt werden. Über diese Aktion wird ein Dialog aufgerufen, in dem die fehlenden Metadaten eingetragen (oder auch andere Dokumententypen ausgewählt) werden können.
Nun kommt mir allerdings das zuvor erstellt Script in die Quere. Ziehe ich das Dokument auf diese Desktop-Action, wird das Dokument scheinbar vorerst mit dem Typ "cm:content" angelegt und erst im Anschluss umgewandelt. In der Zwischenzeit hat mein Script dieses Dokument allerdings schon wieder gelöscht, da es ja nicht alle Pflichtdaten enthält.
Ich weiß nun nicht, wie ich aus diesem Dilemma heraus komme. Auch wenn ich andere Möglichkeiten durchgehe (wie z.B. ein Behavior an eine Policy binden) werde ich über kurz oder lang vor dem gleichen Problem stehen.
Gibt es vllt. eine Möglichkeit das Einfügen über Drag and Drop zu unterbinden oder beim Einfügen einer Datei ein Popup aufzurufen, ohne über die Desktop Action zu gehen?
Ich freue mich über jede Art der Inspiration!