Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
|
developer:extensions [2017/11/24 18:54] oesi |
developer:extensions [2025/10/27 16:15] (aktuell) oesi |
||
|---|---|---|---|
| Zeile 4: | Zeile 4: | ||
| Diese sind ab FH-Complete Version 3.3 verfügbar. | Diese sind ab FH-Complete Version 3.3 verfügbar. | ||
| Sie werden dazu verwendet um die Standardfunktionalitäten von FH-Complete zu erweitern. | Sie werden dazu verwendet um die Standardfunktionalitäten von FH-Complete zu erweitern. | ||
| - | Extensions können die bestehende Datenbank um zusätzliche Tabellen Erweitern, neue Webservice Funktionalitäten hinzufügen und weitere Modifikationen am FH-Complete Core durchführen. | + | Extensions können die bestehende Datenbank um zusätzliche Tabellen erweitern, neue Webservice Funktionalitäten hinzufügen und weitere Modifikationen am FH-Complete Core durchführen. |
| Extensions müssen immer am selben Host wie der FH-Complete Core installiert werden. | Extensions müssen immer am selben Host wie der FH-Complete Core installiert werden. | ||
| - | Extension folgende der Namenskonvention FHC-Core-XXX | + | |
| + | Extension folgen der Namenskonvention FHC-Core-XXX | ||
| + | |||
| + | ===== Struktur ===== | ||
| + | |||
| + | {{:developer:extensionsaufbau.png|600}} | ||
| ===== Ersteinrichtung ===== | ===== Ersteinrichtung ===== | ||
| - | Vor der Verwendung von Extensions müssen ein paar im FH-Complete Core vorgenommen werden. | + | Vor der Verwendung von Extensions müssen ein paar Anpassungen im FH-Complete Core vorgenommen werden. |
| - | Der Webserver brauch Schreibzugriff auf die Extension Verzeichnisse damit diese korrekt installiert werden können. | + | Der Webserver braucht Schreibzugriff auf die Extension-Verzeichnisse damit diese korrekt installiert werden können. |
| Dazu werden folgende Befehle im FH-Complete Hauptverzeichnis ausgeführt: | Dazu werden folgende Befehle im FH-Complete Hauptverzeichnis ausgeführt: | ||
| <code> | <code> | ||
| - | chgrp www-data application/tmp/ application/config/extensions/ application/controllers/extensions/ application/helpers/extensions/ application/hooks/extensions/ application/libraries/extensions/ application/models/extensions/ application/views/extensions/ application/widgets/extensions/ | + | chgrp www-data application/extensions/ application/tmp/ application/components/extensions/ application/config/extensions/ application/controllers/extensions/ application/helpers/extensions/ application/hooks/extensions/ application/libraries/extensions/ application/models/extensions/ application/views/extensions/ application/widgets/extensions/ public/extensions/ |
| - | chmod 775 application/tmp/ application/config/extensions/ application/controllers/extensions/ application/helpers/extensions/ application/hooks/extensions/ application/libraries/extensions/ application/models/extensions/ application/views/extensions/ application/widgets/extensions/ | + | chmod 775 application/extensions/ application/tmp/ application/config/extensions/ application/components/extensions/ application/controllers/extensions/ application/helpers/extensions/ application/hooks/extensions/ application/libraries/extensions/ application/models/extensions/ application/views/extensions/ application/widgets/extensions/ public/extensions/ |
| </code> | </code> | ||
| Zeile 30: | Zeile 35: | ||
| <note important>Für die Installation von Extensions benötigen Sie die Berechtigung "system/extensions"</note> | <note important>Für die Installation von Extensions benötigen Sie die Berechtigung "system/extensions"</note> | ||
| + | |||
| + | Alternativ können Extensions auch über die Commandline installiert werden. | ||
| + | |||
| + | Der Pfad zur Extension muss URL-Kodiert angegeben werden. (%2F statt /) | ||
| + | <code> | ||
| + | php index.ci.php system/extensions/CLI_Manager uploadExtension FHC-Core-Extension %2Fhome%2Ffhcomplete%2fFHC-Core-Extension.tgz | ||
| + | </code> | ||
| + | |||
| + | <note important>Die Extension Datei wird nach der Installation gelöscht wenn die Installation über die Commandline erfolgt!</note> | ||
| + | |||
| ===== Update von Extensions ===== | ===== Update von Extensions ===== | ||
| Zeile 50: | Zeile 65: | ||
| * widgets | * widgets | ||
| - | Zusätzlich muss im Hautpordner eine Datei mit dem Namen extensions.json vorhanden sein mit folgendem Aufbau: | + | Zusätzlich muss im Hauptordner eine Datei mit dem Namen extensions.json vorhanden sein mit folgendem Aufbau: |
| <code> | <code> | ||
| Zeile 63: | Zeile 78: | ||
| </code> | </code> | ||
| - | Mit folgendem Befehl kann aus dem Extension Code ein Archiv erstellt werden: | + | Mit folgendem Befehl kann aus dem Extension-Code ein Archiv erstellt werden: |
| <code> | <code> | ||
| tar --exclude=.git -cvzf FHC-Core-myextension.tgz FHC-Core-myextension | tar --exclude=.git -cvzf FHC-Core-myextension.tgz FHC-Core-myextension | ||
| </code> | </code> | ||
| + | ==== Erweiterung von Core Funktionalitäten ==== | ||
| + | Core Funktionalitäten können durch Extensions erweitert werden. | ||
| + | Siehe dazu: [[developer:extensionsevents|Erweiterung von Funktionalitäten]] | ||