Knowledgebase:Module manuell installieren
Contents
Kurzbeschreibung
Manchmal ist es nötig, ein Modul von Hand zu installieren. Diese Anleitung zeigt am Beispiel vom Knowledgebase:Adressverzeichnis wie.
Folgende Elemente müssen vorhanden sein:
- Das Modulverzeichnis module/memberdir
- Die SQL-Queries, z.B. aus dem Changelog
- Die aktuellen Core-Lang-Files (der Ordner /lang)
- Die Frontend-Seiten vom Modul aus dem Content Manager
Benötigte Dateien
Das Verzeichnis memberdir mittels FTP Client in das Verzeichnis module/ kopieren. Anschliessend das Verzeichnis lang ins Contrexx Knowledgebase:Hauptverzeichnis kopieren und dabei die bestehenden Dateien überschreiben.
Datenbank Tabellen
folgende Datenbank Tabellen müssen von der gleichen Contrexx Version kopiert werden.
contrexx_module_repository contrexx_backend_areas contrexx_module contrexx_module_NAME-DES-MODULES*
Index.php Startdateien anpassen
Damit das Modul aufgerufen werden kann, müssen die Index-Files angepasst werden.
Frontend
Im Sourcecode index.php befindet sich der Code
//------------------------------------------------------- // start module switches //------------------------------------------------------- switch ($section){
, Anschliessend folgen alle möglichen Moduleabschnitte. Ein neuer solcher Abschnitt muss erstellt werden:
//------------------------------------------------------- // Memberdir //------------------------------------------------------- case "memberdir": $modulespath = "modules/memberdir/index.class.php"; if (file_exists($modulespath)) require_once($modulespath); else die ($_CORELANG['TXT_THIS_MODULE_DOESNT_EXISTS']); $objMemberDir = &new memberDir($page_content); $objTemplate->setVariable('CONTENT_TEXT', $objMemberDir->getPage()); break;
Falls es sich um ein anderes Modul als Adressverzeichnis handelt, müssen die Daten angepasst werden.
Backend
Im sourcecode admin/index.php befindet sich der Code
switch($cmd) {
. Anschliessend haben alle Module einen Abschnitt. Ein neuer solcher Abschnitt muss erstellt werden:
//----------------------------------------------------------------------------------------------- // Memberdir //----------------------------------------------------------------------------------------------- case "memberdir": $objPerm->checkAccess(83, 'static'); $modulespath = ASCMS_MODULE_PATH . "/memberdir/admin.class.php"; if (file_exists($modulespath)) require_once($modulespath); else die($_CORELANG['TXT_THIS_MODULE_DOESNT_EXISTS']); $subMenuTitle = $_CORELANG['TXT_MEMBERDIR']; $objMemberdir = &new MemberDirManager(); $objMemberdir->getPage(); break;
Falls es sich um ein anderes Modul als Adressverzeichnis (memberdir) handelt, müssen die verschiedenen Werte angepasst werden.
Content Pages
Eine Neue Seite im Knowledgebase:Content Manager erstellen. Den Code im Quelltext-Modus (!) reinkopieren.
Anschliessend unter Erweiterte Optionen genau wie in der Vorlage den Modulnamen auswählen und gegebenfalls das cmd anpassen.