HTML5 Personal Learning Environment with Offline Capabilities
Entwickelt für Masterthesis: Entwicklung einer leichtgewichtigen "Personal Learning Environment" auf Basis aktueller Web-Technologien: https://github.com/rommsen/thesis
Es wird davon ausgegangen, dass PHP (mindestens Version 5.3), ein Webserver wie Apache, Mysql (mindestens Version 5.1), Java und Ant bereits auf dem System, auf dem Plesynd installiert werden soll, eingerichtet wurden.
Wookie muss wie in http://wookie.apache.org/docs/source.html
beschrieben installiert werden. Anschließend kann der Server mit
ant run
im Wookie Verzeichnis gestartet werden. Standardmäßig hört
Wookie auf {http://localhost:8080/wookie}. Um einen anderen Virtual Host
zu benutzen muss die Datei local.widgetserver.properties
angepasst und
direkt im Wookie Verzeichnis abgelegt werden (siehe
http://wookie.apache.org/docs/developer/running.html). Hier sollte ein
anderer Port gewählt werden als der auf den der Apache Server hört.
Für die Installation von Plesynd müssen mehrere Schritte durchgeführt werden:
-
Composer installieren: http://getcomposer.org/
-
Node.js installieren:
https://github.com/joyent/node/
wiki/Installing-Node.js-via-package-manager
-
Arbeitskopie aus github auschecken:
git clone git@github.com:rommsen/plesynd.git
{verzeichnis_in_dem_plesynd_installiert_werden_soll} -
Symfony2 installieren:
./composer install
im Verzeichnis der Arbeitskopie -
im Dialog die config Parameter setzen:
database_driver: pdo_mysql database_host: localhost database_port: ~ database_name: plesynd database_user: [Datenbank-User] database_password: [Datenbank-Password] mailer_transport: smtp mailer_host: [Host fuer Mailversand] mailer_user: [User fuer Mailversand] mailer_password: [Password fuer Mailversand] mailer_encryption: null mailer_auth_mode: plain mailer_port: 25 delivery_address: [Wenn gesetzt, gehen alle Mails an diese Adresse] locale: en secret: [Zufaelliger String, AENDERN] plesynd_protocol: [z.B. http://] plesynd_host: [z.B. plesynd] wookie_protocol: [z.B. http:// wookie_host: [z.B. 127.0.0.1 wookie_port: [z.B. 8080] wookie_path: [z.B. wookie/] wookie_api_key: [z.B. TEST, kann in Wookie hinterlegt werden] wookie_shared_data_key: [z.B. shared_data] wookie_login_name: [z.B. user]
Die fertige Datei ist app/config/config.yml
-
Virtual Host im Webserver anlegen und Document Root auf
{plesynd_verzeichnis/web} setzen. -
Datenbank erstellen:
./app/console doctrine:database:create
im Verzeichnis der Arbeitskopie -
Datenbankschema erstellen:
./app/console doctrine:schema:create
im Verzeichnis der Arbeitskopie -
Wenn der Virtual Host auf z.B. auf http://plesynd hört, kann das System unter {http://plesynd/app.php} im Produktivmodus geöffnet werden. Für den Entwicklungsmodus kann {http://plesynd/app\_dev.php} aufgerufen werden.
-
Arbeitskopie aus github auschecken:
git clone git@github.com:rommsen/plesynd-todo.git
{verzeichnis_in_dem_das_widget_hinterlegt_werden_soll} -
Pfad von
wookie.root.dir
inbuild.xml
auf das Installationsverzeichnis von Wookie anpassen. -
Pfad von
widget.root.dir
inbuild.xml
auf den aktuellen Widgetordner anpassen. -
{var base_url} in der index.html anpassen
Wenn bei den Konsolenkommandos der Parameter –env gesetzt wird, bestimmt
dies ob diese für die Entwicklungsgebung (--env=dev
) oder die
Produktivumgebung (--env=prod
) ausgeführt werden. In der
Entwicklungsgebung stehen zusätzliche Loggingmechanismen etc. zur
Verfügung.
-
Leeren des Caches
./app/console cache:clear --env=prod|dev
-
Aufwärmen des Caches
./app/console cache:warmup --env=prod|dev
-
Dumpen der Assets (Javascript-, CSS-Dateien) in ein Verzeichnis, auf das der Webserver zugreifen kann
./app/console assetic:dump --env=prod|dev
. Zusätzlich kann der Parameter--watch
übergeben werden, damit die Assets bei Änderung der Datei erneut gedumpt werden.
- Nachdem Wookie über
ant run
gestartet wurde kann das Widget aus dem Widget-Verzeichnis heraus überant deploy-widget -Dwidget.shortname=todo
in der Wookie Instanz hinterlegt werden.
-
installieren von phpdocumentor2 für PHP: http://www.phpdoc.org/
-
installieren von yuidoc für Javascript: http://yui.github.io/yuidoc/
-
für PHP: im Hauptverzeichnis von Plesynd: {phpdoc -d src/Coruja/ -t ../plesynd_doc_php} ausführen
-
für Javascript: im Hauptverzeichnis von Plesynd: {yuidoc -o ../plesynd_doc_js src/Coruja/} ausführen