Valider un numéro de TVA intracommunautaire

Aujourd’hui il est courant d’avoir à développer des sites avec abonnement, mise à disposition de service payant en ligne et autre, à l’échelle internationale et à des professionnels.

Or il se trouve que dans une situation pareille intervient la notion de TVA, où la responsabilité du développeur (ou de son employeur) peut être mise en jeu (ainsi que celle du client, mais ça…).

Lors du paiement, un client professionnel (une société, entreprise, personne morale quoi) devra saisir son numéro de TVA ainsi que son pays pour que le montant de la TVA correspondant soit calculé puisqu’il change d’un pays à l’autre.
Le site http://ec.europa.eu/ propose un webService permettant de vérifier cela.

Moi, je vous propose un validator personnalisé pour valider le numéro de TVA entré dès la validation du formulaire, basé sur ce webService.

Doctrine_Collection et hydration hiérarchisée.

En ce moment nous sommes en train de travailler sur un site de collectionneurs et nous avons le plaisir de tomber sur quelques cas intéressants au niveau développement ce qui n’est pas pour nous déplaire. Ce site contient une grosse partie sur la gestion des zones géographiques, on a décidé d’utiliser le behavior Nestedset ce qui nous permet de gérer facilement les différentes arborescences : « Continent > Pays > état » ou « Continent > Pays > Région » ou encore « Continent > Pays / Ancien Pays ».

Retour sur le plugin Commentaires, partie administration

J’espère que vous vous souvenez du post concernant le plugin / behavior sfLexikDoctrineActAsCommentablePlugin.
Je vous avais promis une deuxième partie sur l’administration des commentaires, et bien après quelques mois d’absence me revoilà pour tenir ma promesse.

Développeur Web Symfony Montpellier

Lexik est une société spécialisée dans le développement Symfony et la conception de solutions orientées web.
Sous la responsabilité d’un chef de projet technique, au sein d’une équipe de développeurs, vous aurez à charge de concevoir et de développer des solutions Intranet / Internet.

De formation initiale informatique (de bac à +5), vous êtes un développeur confirmé en PHP/MySQL (environnement LAMP et WAMP) avec une expérience d’au moins 1 ans au sein d’une SSII ou d’une web agency.

Compétences requises :
- Framework PHP Symfony
- bonnes connaissances des environnements WAMP (Windows) et LAMP
- MySQL et SQL
- PHP (programmation objet)
- (X)HTML, DHTML , JavaScript, CSS.
- AJAX
- Javascript, jQuery
- standards du web (W3C)
- Connaissance de subversion

Qualités recherchées :
- curiosité
- force de proposition
- sens du travail en équipe

Disponibilité :
- ASAP

Poste à Montpellier 34000

Contactez Samuel Breton, Tél : 04 67 99 63 19
Email : contact@lexik.fr
CV + LM

Utilisation de sfUser et de ses « namespace »(s)

Récemment j’ai du développer un outil permettant de créer des tournois, cet outil a la particularité d’être accessible par les personnes connectés ou non. Je devais conserver d’une page à l’autre les informations saisies par mon utilisateur, pour quelqu’un de connecté on peut toujours passer par la base de donnée mais pour les autres on doit jouer avec la classe sfUser.

Tips : Symfony 1.3/1.4 orderBy des relations

Depuis la branche 1.3/1.4 la gestion des relations a été bien enrichie.

Au niveau des formulaire l’apparition du EmbedRelation a vraiment facilité l’implémentation des embedForm. Je ne vais pas reprendre l’explication de cette fonctionnalité dans cet article et vous renvoie donc vers le très bon article de NiKo sur son blog (En anglais).

Petit problème, l’ordre de tri de la Doctrine_Collection retrounée qui est …

se connecter du backend vers le frontend avec un utilisateur

Pour certains projets, il peut être pratique de se connecter sur le compte d’un utilisateur parce qu’il est bloqué, pour vérifier que tout fonctionne bien, pour tester son application. Cependant les mots de passe sont cryptés en bases de données et sans connaître les identifiants il va être difficile de se connecter.
Donc ce petit tuto est là pour nous aider.
Le but est simple: dans le backend, on liste l’ensemble des utilisateurs du site et à coté de chaque nom on va rajouter un bouton « se connecter en tant que ».