» Symfony und das Dojo Build System « Johannes Heinen

Silverstripe “auto” flush cache

thereifixedit:
Wenn man bei einem Silverstripe Projekt häufige Änderungen an verschachtelten Templates hat,
kommt man, soweit ich weiss, nicht umhin

?flush=1
oder
?flush=all

an den Seitenaufruf anzuhängen um die Änderungen sichtbar zu machen.

» Den ganzen Artikel lesen

4 Kommentare

Next Level Javascript Error Tracking

Exceptionhub protokolliert clientseitig auftretende Javascript Fehler.

* Logs all JavaScript errors (local or remote)
* Provides a stack trace to find the cause in all browsers
* Groups errors by cause
* Development and Production modes
* RSS feeds for errors

Einfach einbinden via Javascript im Seitenheader. Dann kriegt man schöne Statistiken über Javascript Fehler mit Browser und OS Infos, Mail-Notifications usw.

» Den ganzen Artikel lesen

3 Kommentare

Fail! Zend Db: Ausgabe eines Update Query

Heute gibt es mal einen Fail!

Vorneweg: das Zend Framework (Version 1.10) wird hier “lose” benutzt, d.h. ohne Bootstrap. (Evtl. kann man da den Query loggen, aber kA)

Die simple Ausgabe eines Update Query zu Debug Zwecken ist mit dem Zend Db Packet anscheinend nicht möglich.

Man konstruiert den Query:

$this->db->update($this->table, $data, 'id = '.(int)$this->data['id']);

» Den ganzen Artikel lesen

1 Kommentar

Googlemap Zoom-Faktor automatisch berechnen

pushing the boundaries

um den ZoomFaktor auf GoogleMaps dynamisch zu setzen,
je nachdem wie viele Marker man wo hat, kann man GLatLngBounds benutzen.

» Den ganzen Artikel lesen

noch keine Kommentare

jQuery UI 1.8

die jQuery UI ist jetzt in Version 1.8 erschienen.

neben einer optimierten Codebasis

jQuery UI Core 71% smaller

gibt es auch wieder ein paar neue Widgets.

Wie z.B. das position widget, das ausgefallenere Positionierungs-Spielereien erlaubt:

» Den ganzen Artikel lesen

1 Kommentar

X-Sendfile + Apache 2 (Ubuntu)

Ein recht verstecktes Feature, das neuere Server, bspw. Lighthttpd + FCGI-Modul bereits “out of the box” unterstützen, ist das anwendungsgesteuerte “Durchschleifen” von großen Dateien via X-Sendfile Header.

Wozu es gut ist und wie man es benutzt,will ich im Folgenden kurz erläutern:

» Den ganzen Artikel lesen

1 Kommentar

Silverstripe und GeoIp

Silverstripe bzw. das drunterliegende Framework Sapphire hat ja eine GeoIp Komponente, die in dem CMS und auch in einigen Modulen benutzt wird, zB um Länder in Formularen direkt einzustellen.

Was allerdings nirgendwo steht ist, dass dafür das Programm geoiplookup benötigt wird.

» Den ganzen Artikel lesen

2 Kommentare

Die YQL Geo Library

dieses erwähnenswerte Tool ist ein Javascript-Wrapper für die Geocoding Services:
Yahoo Placemaker, Yahoo GeoPlanet, jsonip.appspot.com, IP location tools, W3C Geo location und Flickr.places.findByLatLon.

Die Syntax ist mal denkbar einfach, denn das ganze beschränkt sich auf eine einzige Methode, nämlich:

yqlgeo.get(what,callback)

» Den ganzen Artikel lesen

noch keine Kommentare

PHP und Sqlite Transaktionen

Ich bin ja Fan von sqlite, besonders für kleinere Projekte, wo kein hohes paralelles Schreiben zu erwarten ist, also für fast alle kleineren Seiten.
Keine Datenbank Administration, einfach loslegen und schnell ist es auch noch.

Ein paar Krücken gibts aber schon, zB bei Transaktionen (die MySql im Regelfall gar nicht kann ;)).
Ich benutze die in diesem Fall für multiple Inserts, um da Performance rauszuschlagen.

Über diese bin ich letztens noch gestolpert:

1. Es ist keine gute Idee Transaktionen zu stückeln und sequentiell abzuarbeiten.(warum auch immer man auf diese Idee kommt ;))
besser ist: alle Queries zu buffern und dann in einer Transaktion auszuführen.
Denn Transaktionen locken die DB und nach meiner Erfahrung kann das PHP SQLiteDatabase Object den Datenbank Cursor nicht richtig schließen.
Das führt dann zu sowas: “cannot start a transaction within a transaction”

» Den ganzen Artikel lesen

noch keine Kommentare

Upgrade von Etch auf Lenny

Dann habe ich neulich mal meinen vServer upgegradet von Debian Etch auf Lenny, um in den Genuss einer neueren PHP Version zu kommen.
Ein paar Problemchen gabs schon aber es hat geklappt!
Das lief ab wie folgt:

Zunächst einmal Plesk auf neuesten Stand bringen über den Updater von Plesk.

Dann das Debian dist upgrade:
wie hier beschrieben:
Die Liste mit den Quell-Paketen ändern:

# new lenny packages.
deb http://ftp2.de.debian.org/debian/ lenny main contrib non-free
deb http://security.debian.org/ lenny/updates main contrib non-free

# source packages.
deb-src http://ftp2.de.debian.org/debian/ lenny main contrib non-free
deb-src http://security.debian.org/ lenny/updates main contrib non-free

# volatile sources
deb http://volatile.debian.org/debian-volatile etch/volatile main contrib non-free

Dann upgraden

» Den ganzen Artikel lesen

noch keine Kommentare