Oktay Acikalin’s Blog

Oktay Acikalin’s Blog

coding, aurora, fun and life

Oktay Acikalin’s Blog RSS Feed
 
 
 
 

dateien mit anderen appls und libs teilen

das konzept der kompletten modularisierung in verbindung mit den layern in aurora ist in sofern ganz nett, als dass man einfach und unkompliziert quasi mashups erzeugen und wieder auseinanderreissen kann. der ursprüngliche gedanke war ja, dass man ein basis-produkt hat, welches durch einen layer ( kundenanpassungen ) erweitert oder verändert wird. inzwischen wird diese technik verwendet um alles mögliche ( aurora selbst, plugins etc. ) einzubinden. was aber, wenn man z.b. css-, js- oder andere dateien teilen will? also nicht in jeder appl die selben css-dateien reinkopieren oder verlinken möchte?

abhilfe schaffen hier die kürzlich eingeführten “public folders”. im prinzip ist das nichts anderes, als was die “open basedir”s in den url-dateien bisher auch taten – einen bestimmten ordner via .htaccess freigeben.

$> ama -cp joe -cwa
$> cd joe
$> mkdir -p public/css public/js
$> cp $AURORA_BASEDIR/config/web.yml config/
$> vi config/web.yml

im abschnitt “public_folders” dann die einträge für css und javascript aktivieren, “css” in “public/css” und “javascript” in “public/js” umtaufen. man kann hier beliebig viele pfade angeben. nun die datei abspeichern und vi beenden.

als nächstes erzeugen wir zwei dateien und füllen sie mit irgendwelchem inhalt:

$> vi public/css/main.css
body { background-color: gray ; }

$> vi public/js/main.js
alert ( “it works!” ) ;

damit die beiden dateien auch wirklich geladen werden, fügen wir zu dem inhalt im template-block “joe” ( vi module/joe.appl/joe.tpl ) folgendes hinzu:
@html:include:public/css/main.css
@html:include:public/js/main.js

zum beweis, dass es schon funktioniert, rufen wir joe nun im browser auf. daraufhin sollte die .htaccess-datei generiert und die “page not found”-seite angezeigt werden. klicken wir nun auf den link “» joe » main”, gelangen wir auf eine seite mit einem grauen hintergrund, worauf steht “hello world! :) ” und ein popup-fenster uns die freudige nachricht “it works!” übermittelt.

da ich auch gerne alle skeptiker überzeugen würde, klicken wir nun auf “zurück” in der browser-navigation und widmen uns der zweiten appl.

$> cd module
$> ama -cwa garfield

mittels vi garfield.appl/garfield.tpl das wort “world” durch “garfield” ersetzen, die zwei include-zeilen von oben auch hier hinzufügen und im browser ein reload ausführen. nun sollte man den link zu garfield sehen und anklicken können. sofern alles funktioniert hat, bekommt man ein schwarzes “hello garfield! :) ” auf grauem hintergrund mit der bekannten alert-box zu sehen.

das wars schon :) .

ps die .htaccess wird nur erzeugt oder aktualisiert, wenn man die template-dateien ( rules ) im web.lib ordner ändert, die .htaccess leer oder nicht vorhanden ist. da das nicht unbedingt immer bequem ist, gibt es einen hilfreichen befehl, den man am besten direkt im projektrumpf ausführen sollte. also:

$> cd ..
$> ./run –htaccess-write

Leave a Reply