Generierte Anwendungen in Scribite integrieren

in  Zikula Apps  , , ,

Generierte Anwendungen in Scribite integrieren

Bei mit ModuleStudio generierten Modulen werden unter anderem auch Plugins für unterschiedliche WYSIWYG-Editoren erzeugt, die im Modul Scribite integriert sind. Wie diese Plugins eingerichtet werden und was sie können, zeigt dieser Beitrag.

Das Zikula-Modul Scribite bringt eine Reihe von Editoren mit, die flexibel konfiguriert und in anderen Modulen verwendet werden können. So könnte man etwa Summernote als Standardeditor nutzen, in einem bestimmten Modul jedoch TinyMCE, während in einem anderen Modul oder einer bestimmten Modulfunktion QuillJS zum Einsatz kommt.

Die meisten der Editoren lassen sich durch Plugins erweitern, was insbesondere dann praktisch ist, wenn man einen zusätzlichen Knopf für eine bestimmte Funktion haben möchte. Damit man das Rad nicht jedes mal neu erfinden muss, werden bei ModuleStudio-basierten grundlegende Plugins direkt generiert (derzeit nur für CKEditor, TinyMCE und Xinha).

Einrichtung der Plugins

Jedes generierte Modul bringt eine Funktion zum Auswählen von Objekten mit, den sogenannten Finder. Dieser wird von den Editor-Plugins als Popup aufgerufen. Wie diese nun in Scribite integriert werden, hängt von der Scribite-Version ab.

Für Scribite

  1. Die Datei modules/Scribite/lib/Scribite/Api/User.php mit einem Texteditor bearbeiten.
  2. Suchen nach:
    if (ModUtil::available('SimpleMedia')) { PageUtil::AddVar('javascript', 'modules/SimpleMedia/javascript/findItem.js'); }
  3. Darunter einfügen (für Zikula 1.3.x):
    if (ModUtil::available('MODULNAME')) { PageUtil::AddVar('javascript', 'modules/MODULNAME/javascript/MODULNAME_finder.js'); }
  4. Darunter einfügen (für Zikula 1.4.x):
    if (ModUtil::available('MODULNAME')) { PageUtil::AddVar('javascript', 'modules/MODULNAME/Resources/public/js/MODULNAME_finder.js'); }
  5. Alle Dateien von modules/MODULNAME/docs/scribite/includes/ (Zikula 1.3.x) beziehungsweise modules/MODULNAME/Resources/docs/scribite/plugins/ (Zikula 1.4.x) in den Ordner modules/Scribite/includes/ (Zikula 1.3.x) beziehungsweise modules/Scribite/plugins/ (Zikula 1.4.x) kopieren.

Für Scribite 5.0 aufwärts geschieht die Integration automatisch. Das notwendige JavaScript wird hier nun über das Event-System von Zikula beziehungsweise Symfony geladen und die Plugins sind bereits im Scribite-Paket enthalten. Hier muss lediglich geprüft werden, ob die Plugins für MODULNAME im Ordner Scribite/plugins/EDITOR/vendor/plugins vorhanden sind. Falls nicht, müssen sie händisch kopiert werden (Pfade wie oben).

Wenn alles richtig gemacht wurde, erscheinen die Plugins auf den Konfigurationsseiten der jeweiligen Editoren und können dort per Checkbox aktiviert werden.

Nutzung und Funktionsumfang

Im Editor sollte nun ein neuer Knopf mit einem gelben Sternchen als Symbol auftauchen. Dieser öffnet das besagte Popup, welches auch im folgenden Screenshot abgebildet ist. Hier kann man zwischen den Objekttypen im Modul wechseln, die Objekte nach unterschiedlichen Kriterien suchen und filtern, um schließlich Links zu den Detailseiten per Mausklick in den Editor einzufügen.

Generierte Anwendungen in Scribite integrieren

Weitere Beiträge in Kategorie Zikula Apps

Zikula Core 3 bietet Mittel für dynamische Formularelemente
- Das Profile-Modul von Zikula bietet seit langer Zeit die Möglichkeit, die einzelnen Angaben der Benutzerprofile flexibel zu verändern und nach Belieben zu konfigurieren. Diese Funktionalität wurde im …
Der Fokus von Zikula Core 3
- Mit der Verfügbarkeit einiger zentraler Module für Zikula 2 ist eine der größten Hürden beseitigt, die den Umstieg für viele Nutzer in der Vergangenheit erschwert oder gar blockiert hatte. Die letzten …
Content Management mit Zikula 2 in der Praxis ausprobiert
- Nachdem kürzlich einige Module erschienen sind, um Inhalte mit Zikula 2 zu verwalten, haben wir nun zwei mittelgroße Projekte damit aufgebaut. Auch wenn im Detail noch nicht alles 100%ig am Schnürchen …
Neue Module braucht das Land
- Hier gibt es einige frisch geschnürte Module für Zikula 2.0.11: Content 5.0.1 Die Basis für anspruchsvolles Content Management. Formicula 5.0.0 Formulare zur Kontaktaufnahme, für Anmeldungen, …
Atom-Editor zur Symfony- und Zikula-Entwicklung einrichten
- Rund um den ursprünglich von GitHub ins Leben gerufene Editor Atom hat sich mittlerweile ein ansehnliches Ökosystem entwickelt. So existieren aktuell bereits knapp 8.000 Erweiterungen für alle …