Archiv der Kategorie ‘Pesse@Work‘

ORACLE NLS Settings in Zend Framework global ändern

Friday, den 13. August 2010

Vielleicht mag das für jemanden, der das Zend Framework schon länger benutzt alt bekannt sein, ich habe ziemlich lange gebraucht, bis ich eine praktikable Lösung gefunden habe, die NLS Settings von Oracle global in meinem Zend Projekt (aktuell Version 1.9.x) anzupassen (und Google-Recherche hat keine brauchbaren Ergebnisse geliefert).

Dabei ist es überhaupt nicht schwer. Einfach in der Bootstrap-Datei folgenden Eintrag machen:

protected function _initDbSession()
{
$this->bootstrap('db');

$db = $this->getResource('db');

$db->query("ALTER SESSION SET NLS_TIMESTAMP_FORMAT = 'YYYY-MM-DD HH24:MI:SSXFF'");
}

Damit hat man seine Session für alle späteren Datenbank-Abfragen global gesetzt.

Flash ExternalInterface, der Internet Explorer und JavaScript Calls

Friday, den 3. April 2009

Man stößt ja immer dann auf Browserbugs, wenn man sie am wenigsten brauchen kann, wie auch in diesem Fall.
Wir sollten einen blätterbaren Flash-Katalog per JavaScript und DIV-Layer in eine Webseite einbauen. Den Flash-Katalog sollte man ein- und ausblenden können und außerdem von der HTML-Seite aus per JavaScript auf eine bestimmte Seite im Katalog springen können.

Ist ja alles nicht so dramatisch, schließlich gibt es seit Flash 8 das wunderbare ExternalInterface, mit dem man Flash dazu bringt, auf JavaScript-Funktionen zu hören.

Leider macht der Internet Explorer an dieser Stelle einmal mehr was er will und nicht, was korrekt wäre.
Wenn nämlich ein per JavaScript eingebundenes Flash den Fokus bekommt und danach der Container auf visible=”hidden” gesetzt wird, findet der IE keinen der per ExternalInterface definierten Funktionen mehr.

Den ganzen Beitrag lesen »

MovieClip Subklasse dynamisch instanzieren

Thursday, den 12. March 2009

Wer häufig mit ActionScript 2 zu tun hat, wird sicher früher oder später auf die Idee kommen, dass es ja ganz sinnvoll wäre, eigene Subklassen von MovieClip zu haben.
Das Problem ist: Wie kann man solche Subklassen dynamisch instanzieren und der Bühne hinzufügen?

In ActionScript 3 gibt es ja glücklicherweise die Funktion addChild( DisplayObject ), in ActionScript 2 wird man diese oder eine vergleichbare Funktion leider vergeblich suchen.

Allerdings gibt es (mindestens) zwei Möglichkeiten, doch zum Ziel zu kommen.
Den ganzen Beitrag lesen »

Schriften dynamisch zur Laufzeit laden

Friday, den 6. March 2009

Ein Problem, mit dem sich die meisten Flasher wohl schon einmal konfrontiert sahen, ist die Verwendung von Schriften für dynamische Textfelder.
Solange man Statische Textfelder benutzt, kümmert sich Flash selbstständig darum, dass die Schriften für alle Besucher verfügbar sind. Auch für dynamische Textfelder kann per “Einbetten”-Funktion in der Flash IDE sehr einfach dafür gesorgt werden, dass die verwendete Schrift eingebunden wird (Anbei ein sehr guter Artikel zum Einbetten von Schriften in Flash AS2 allgemein).

Was aber kann man tun, wenn man eine Vielzahl verschiedener Schriften für dynamisch gesetzte Textfelder zur Verfügung stellen möchte?

Im Casalib-Framework habe ich einen ganz netten FontManager gefunden, der hier ausführlich beschrieben wird.

Ich bin noch nicht ganz glücklich mit der Lösung, da sie durch die feststehende relative Url zu den Fonts ziemlich statisch ist. Vielleicht finde ich hier in nächster Zeit noch eine etwas variablere Lösung.

MySQL sucks.

Thursday, den 7. August 2008

So, nach längerer Zeit melde ich mich zurück.
Leider muss ich sagen, dass mir öfters die Lust zum Bloggen fehlt - vielleicht weil ich lieber lebe anstatt über mein Leben zu schreiben. Der klassische Tagebuch-Schreiber bin ich ohnehin nicht, also werde ich in Zukunft ab und zu über meine Arbeit bzw. Dinge, die mir in diesem Zusammenhang auffallen, schreiben.

Zum Beispiel über MySQL. Das ist ein Datenbank-Management-System. So wie Oracle. Oder M$-SQL. Nur schlechter.
Oh ja, ich höre den Aufschrei vieler Webentwickler, die nach meiner Steinigung verlangen, doch ich kann nach dem gestrigen Tag leider nichts anderes sagen.
Den ganzen Beitrag lesen »