sfLexikDoctrineActAsCommentablePlugin ou comment rendre des objets commentables via un behavior / plugin

Aujourd’hui je vais vous montrer comment rendre des objets commentables grâce à un behavior Doctrine que j’ai créé, et le plugin qui permet de l’exploiter.

Le behavior donne les fonctionnalités, le plugin donne le modèle et l’affichage ainsi que les actions (listing des commentaires, formulaire d’ajout de commentaire, …)

Je me suis basé sur le behavior Doctrine Taggable fourni à l’origine pour réaliser ceci.

Le behavior et le plugin ne sont pas utilisable l’un sans l’autre.

Lire la suite de l’article

Snippet sfValidatorEmailList

La version de Symfony 1.3 vient de passer en ALPHA2. Etant en cours de développement d’un projet sur cette version j’en profite pour tester les nouvelles fonctionnalités. Parmi celles-ci, il y a le sfMailer. Je ne vais pas m’étendre sur le sujet car on peut déjà trouver pas mal de posts sur internet concernant cette classe notamment dans les jobeet : Day 16 The Mailer .

Je me suis par contre amusé à coder un petit validator, qui il me semble, se couple bien avec le sfMailer : sfValidatorEmailList. Son nom est assez explicite mais pourquoi tester des listes de mails ? Tout simplement parceque sfMailer permet d’envoyer des mails groupés !
Lire la suite de l’article

Réflexions sur l’élaboration d’un bon backend

Lors de la réalisation de vos projets, l’étape de la construction du backend est devenue un passage obligatoire. Que cela soit un souhait initial du client ou une envie de pouvoir proposer une prise en main du site via une interface, le backoffice justifie pleinement sa présence et son importance. Cette philosophie est très largement soutenue par Symfony avec son générateur CRUD d’admin, ses filters, l’extensibilité de ses templates, l’internationalisation…

Le but de cet article est de chercher plus loin dans les fonctionnalités de base proposées par Symfony pour l’élaboration de notre backend.

Lire la suite de l’article

Gestion d’une galerie photo avec swfUpload dans l’admin

Je vous propose de voir une gestion de galerie photo pour l’administration, telle que je l’ai abordée dans un de mes derniers projets.

Pour vous situer, il s’agit d’un site de vente en ligne.
Qui dit vente dit produits, et qui dit produits dit photos :D
Lire la suite de l’article

Utilisation de sfSessionStorage dans Symfony

sfSessionStorage fait partie des fonctionnalités du Framework qui restent un brin obscures lorsqu’on commence avec Symfony. Mais il s’avère par la suite très utile, que ce soit dans le cadre de la production ou même du développement.
Lire la suite de l’article

Liste d’objets ordonnable via AJAX partie 1 bis

Ce post a pour but de reprendre la première version de la liste, en utilisant le plugin csDoctrineActAsSortablePlugin.
Ce plugin gère exactement la situation décrite dans la partie 1 en utilisant simplement un behavior dans le schema.

Voilà le lien du plugin : csDoctrineActAsSortablePlugin

Le readme est assez bien fait, cependant pour plus de clarté reprenons l’exemple précédent.
Lire la suite de l’article

Liste d’objets ordonnable via AJAX partie 1

Aujourd’hui, voyons les fonctions sortables permettant de changer la position d’objet, de les ordonner et de sauvegarder l’ordre. C’est toujours pratique pour organiser une galerie photo, ou des éléments dans votre site internet.

Toutes les informations sur l’objet que nous souhaitons ordonner et/ou classer seront stockées en base :
schema.yml

Item:
  columns:
    name:
      type: string(255)
    rank:
      type: integer
      notnull: true
      unique: true

Lire la suite de l’article

Déployer un projet Symfony avec Rsync

Le développement de votre projet Symfony arrive à son terme, vous confrontant ainsi à l’étape de la mise en ligne. Si vous vous apprêtez à lancer votre client FTP pour le dépôt de vos fichiers, alors cet article est fait pour vous. Nous allons voir la configuration et l’utilisation d’un petit utilitaire de synchronisation : RSync.

Lire la suite de l’article

Symfony : Utilisation de la classe sfFilter

Nous allons voir l’utilisation de la classe sfFilter. Attention à ne pas confondre sfFilter et les classes auto-générés lors du build de l’application qui sont des classes principalement utilisées dans le backend pour faire le tri sur les colonnes.

Mais concentrons nous d’abord sur sfFilter. Comme on peut le voir en parcourant rapidement le code c’est une classe abstraite on ne pourra donc l’utiliser que part héritage.
Les filters sont en fait une couche du Framework qui permet d’effectuer des actions avant ou après l’affichage d’une page, ce qui peut s’avérer très pratique.
Lire la suite de l’article

Générer des thumbs lors de l’affichage d’une image

Nous allons voir ici comment générer facilement des thumbs lors de l’affichage d’une image sur le site, plutôt que lors de l’upload de cette image.
L’intérêt: une fois que le site est lancé, qu’il y a des images déjà uploadées, il est beaucoup plus facile de changer dans le code la taille d’affichage et de regénérer automatiquement les images, plutôt que de devoir tout réuploader une seconde fois, voir +. Lire la suite de l’article