Google Maps: direction of a polyline

JavaScript-Schnipsel um mit Google Maps API die Himmelsrichtung einer Linie aus einem Polygon zu bestimmen, lässt sich auch noch einfach erweitern um auch noch die Nord/Süd Richtung zu bekommen („lat()“) – ich brauchte aber nur West/Ost 😉 :

var p1 = polyline.getVertex(0);
var p2 = polyline.getVertex(1);
var direction = false;
 
if (p1.lng() < p2.lng()) {
    direction = "east";
} else if (p1.lng() > p2.lng()) {
    direction = "west";
}

Debug-Modus per Cookie

Jeder Entwickler baut sich wohl seinen eigenen Debug-Modus für seine Anwendungen. Bisher habe ich bei Webanwendungen meist GET Parameter verarbeitet. Mit den prinzipbedingten Nachteilen – z.B. Tracking über mehrere Seiten. Andere Variante ist per Config-Variable den Debugmodus einzuschalten. Oder abhängig von der Source-IP. Oder wie auch immer.

Eine andere Methode habe ich mir von Google abgeschaut: Setzen von Spezialmodi per Cookie über die Adressleiste des Browsers. Google hat schon des öfteren neue Funktionen zunächst nur für einen „eingeweihten“ Nutzerkreis zugänglich gemacht. Eingeschaltet wurde die Funktion dann über ein spezielles Cookie. Gesetzt wurde dieses einfach über die Adressleiste des Browsers. So hat z.B. die folgende Eingabe in der Adressleiste auf google.com das „suggest“ Feature eingeschaltet:

javascript:document.cookie= "PREF=ID=175eb54605c0202d:U=a14f58424228a2a5:LD=en:
NR=10:CR=2:TM=1240146048:LM=1242596928:DV=AA:GM=1:IG=1:S=zW53HscJwnEL89bQ;
path=/;domain=.google.com";void(0);

Mittlerweile verwende ich auch immer öfter dieses Verfahren:

javascript:document.cookie="xyz_debug=1";window.location.reload();

Das so gesetzte Cookie mit dem Namen „xyz_debug“ kann man dann einfach mit bekannten Funktionen serverseitig auswerten (hier PHP):

if ($_COOKIE["xyz_debug"]) {
    var_dump($_POST);
}

Natürlich sollte das verwendete Cookie nicht leicht zu erraten sein. Ich wüste gerne wie viele Debugausgaben in den weiten des Internets darauf warten über versteckte Zugänge, Parameter etc. abgerufen zu werden 😉

Browser Clipboard

In modernen Browsern ist mittlerweile der Zugriff auf die Zwischenablage nicht mehr erlaubt (aus gutem Grund). Möchte man aber den Benutzern seiner Webapplikation zumindest das schreiben in die Zwischenablage ermöglichen, gibt es einen Workaround: Der Umweg führt über das Adobe Flash Plugin…

Der Link zum Script: Zeroclipboard. Nicht das ich das jetzt unbedingt bräuchte – aber man weiß ja nie.