RSS Feed
^__^

[Symfony 2][Twig] – Enabling (native) Twig Extensions

,

Twig Extensions is a tiny official repository for extensions to the Twig templating markup language, the default templating engine in each Symfony 2 (Standard Ed.) project. This short article shows how to purposeful enable them per-environment for your projects.

» read more

Symfony 2 – Set Default Locale On Form Login #2

,

A small update/correction out of sequence:

A few weeks ago i described how to hook into the form login process in order to change the user session´s locale.

In the meantime a non backwards compatible code modification has been introduced that outdated this article. From now on (Symfony 2.0.4) the locale and default locale settings are maintained within the request object (and not as used to be in the session).

So, here is a little update – under reserve – because the locale setting´s logic will probably change again in the future.

» read more

[Symfony 2] Twig – Global Variables

,

Schon mal gefragt, welche globalen Variablen in der Twig-Extension eines Symfony 2 (Standard Distri)-Projektes zur Verfügung stehen? » read more

[Symfony 2] AsseticBundle, Less CSS & YUI Compressor unter OSX installieren

,

Das AsseticBundle ist ein Wrapper um Assetic, ein geniales Tool, um statische Assets für Webprojekte zu verwalten. AsseticBundle ist extrem einfach zu verwenden, einfach die entsprechende Filter-Chain via yaml konfigurieren, um mehr muss man sich nicht kümmern. Natürlich allerdings müssen die zugrundeliegenden Abhängigkeiten im Vorfeld installiert sein. In unserem Falle benötigen wir den Yui-Compressor als jar-File und Less CSS. Less ist ein node.js Modul, was bedingt, dass wir zuvor node.js installieren müssen.
» read more

[Symfony 2] Security Bundle: Set User Locale on Form Login

,

[UPDATE]
A recent update to this article may be found here: http://nerdpress.org/symfony-2-set-default-locale-on-form-login-2/

Das Security Bundle ist ein wenig magisch. Da muss man eine HTML-Form definieren, der Rest wird irgendwie konfiguriert (Namen der Post-Parameter wie “_username”, “_password” etc., den Redirect zum Referrer, Remember-Me Funktion und so weiter, das alles wird von der Firewall intern geregelt. Man muss nur eine Login-Route definieren, einen Stub-Controller + Action-Callable (der aber nie ausgeführt wird, weil die Firefall sich davorhängt), fertig.

Das ist angenehm einfach, solange man keine Fragen stellt. Aber wie führe ich zusätzliche Aktionen direkt nach erfolgtem Login aus, ohne Einfuss auf den Code des Security Bundles zu haben?

» read more

[Symfony 2] Security Bundle – Benutzer mit username oder email anmelden.

,

Augenscheinlich unterstützt das Security-Module nur die Authentifizierung via Benutzername und Password. Wie man sich mit einem Benutzernamen ODER der E-Mail-Adresse und einem Password authentifiziert, ist ein wenig versteckt. So gehts:

» read more

Symfony 1.4 installer

,

Ich hab mal einen symfony 1.4 installer shell script auf github gepackt.
Damit kann man “ruckizucki” auf Ubuntu ein lokales symfony 1.4 Projekt aufsetzen.

Es ist ein fork von einem virtualhost create script und macht folgendes:

    – holt den letzten symfony 1.4 stable release via svn
    – setzt alle notwendigen rechte zB auf den cache folder
    – bereitet die datenbank vor
    – legt eine app an
    – macht eine .gitignore
    – und ruft das virtualhost creator script auf, was den vhost anlegt auf “web”

» read more

Symfony 2 wird super. Oder …?

,

Natürlich wird Symfony 2 super. Die Dokumentation ist wie gewohnt zum jetzigen, frühen Zeitpunkt genial, die Architektur durchdacht, die Entwickler-Community steckt sowieso alles in die Tasche, man sieht einfach: Da steckt eine Menge Arbeit, Hirnschmalz und Erfahrung hinter. Aber genug geschleimt ;)

Mein Lieblingsthema ist ja zur Zeit der Dependency Injection Container. Und irgendwie stinkt mir die ganze Container-Konfiguration noch gewaltig. Meine kläglichen Versuche, selbst mal so was ähnliches wie eine brauchbare Autowiring-Implementierung herunterzubrechen, waren natürlich auch bzw. erst recht nicht der große Wurf – was vor allem daran lag, dass ich den Service Container und damit den ganzen Sinn und Zweck des Ganzen einfach mal wegrationalisiert hatte – Loose Coupling sieht natürlich anders aus, das sei den Kritikern zugestanden. Ich verteidige mich mal dadurch, dass ich eigentlich nur mal mit Mixins rumspielen wollte – da hab’ ich wohl die eine oder andere Begrifflichkeit durcheinander geworfen.

Aber um mal zu des Pudels Kern zu kommen: Ist es wirklich so geil, mit kilometerlangen XML-Dateien, ‘ner Menge Initialisierungscode und ohne mit der heißgeliebten Code-Completion in der IDE meiner Wahl ein Paradigma zu kaufen, das im speziellen Anwendungskontext – nicht im Framework-Kontext – eher selten Anwendung findet?

» read more

SfGoogleTranslatePlugin

,

Hallo Welt!
Ich hab einen kleinen Wrapper für die Google Translate API v1 als symfony 1.4 Plugin auf github gehoben:
https://github.com/ivoba/sfGoogleTranslate

Einfach Plugin installieren und dann im Model oder wo es gebraucht wird:

$gT = new sfGoogleTranslate('de','fr');
$t = $gT->translate('Hallo schöne Frau');
echo $t;

» read more

[symfony 1.4] Class ‘sfLoader’ not found

,

Sollte man mal eine symfony 1.2.x Anwendung auf symfony 1.4.x migrieren und man stößt auf diesen Fehler:

Class 'sfLoader' not found

Dann hat man versucht einen Helper in der Action zu laden zB so:

sfLoader::loadHelpers('String');

Der sfLoader ist in 1.4 allerdings entfernt worden.
Stattdessen sollte man dann sowas schreiben:

$this->getContext()->getConfiguration()->loadHelpers('String');

Dann klappts.