<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet title="XSL formatting" type="text/xsl" href="http://blog.dreaminvasion.com/feed/rss2/xslt" ?><rss version="2.0"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:wfw="http://wellformedweb.org/CommentAPI/"
  xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
  <title>Blog Dreaminvasion - développement et  administration réseaux - Developpement</title>
  <link>http://blog.dreaminvasion.com/</link>
  <description>Articles et tutoriels dans le développement (Web PHP/MySQL, xHTML / CSS, Javascript, .NET, Java, ...) et l'administration de réseaux (UNIX / LINUX, Windows, Mac).</description>
  <language>fr</language>
  <pubDate>Wed, 03 Dec 2008 08:27:02 +0100</pubDate>
  <copyright>Tous droits réservés 2007</copyright>
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
  <generator>Dotclear</generator>
  
    
  <item>
    <title>SUPINFO : TP Création du jeu vidéo Frogger avec XNA</title>
    <link>http://blog.dreaminvasion.com/post/SUPINFO-TP-Creation-du-jeu-video-frogger-avec-XNA</link>
    <guid isPermaLink="false">urn:md5:ea1b788a4457f8b5d6007bac87b8f552</guid>
    <pubDate>Fri, 02 May 2008 18:35:00 +0200</pubDate>
    <dc:creator>Gerald Lonlas</dc:creator>
        <category>Dev: DotNet</category>
        <category>.NET</category><category>Developpement</category><category>Jeux video</category><category>XNA</category>    
    <description>    &lt;img style=&quot;margin: 0 auto; display: block;&quot; alt=&quot;&quot; src=&quot;http://blog.dreaminvasion.com/public/images/divers/logo-xna-2-final.jpg&quot; /&gt;&lt;br /&gt;
&lt;p&gt;Comme je vous l’ai dis il y a quelques mois sur le billet : &quot;&lt;a hreflang=&quot;fr&quot; href=&quot;http://blog.dreaminvasion.com/post/Vos-idees-de-jeux-video-2D-minteressent&quot;&gt;Vos idées de jeux vidéo 2D m’intéressent.&lt;/a&gt;&quot;, je devais me préparer à la création d’un jeu vidéo 2D avec le Framework Microsoft XNA.&lt;/p&gt;
&lt;p&gt;
J’avais choisi au départ la création d’un mini megaman, mais l’école nous avait fournis un sujet de TP avec  un jeu obligatoire.  Le jeu à développer était Frogger !
&lt;/p&gt;
&lt;h2&gt;Au revoir Megaman, Bonjour Frogger&lt;/h2&gt;
&lt;p&gt;
Tout le monde connais Megaman, mais connaissez vous Frogger ? A la première lecture du TP je ne connaissais pas du tout Frogger, et je pense que certain d’entre vous sont dans le même cas que moi.
&lt;/p&gt;
&lt;p&gt;
D’après Wikipedia le but du jeu de Frogger est : &lt;em&gt;&quot;de diriger des grenouilles jusqu'à leurs maisons. Pour cela, le joueur doit d'abord traverser une route en évitant les voitures puis une rivière en passant d'objets en objets&quot;&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;
Donc un frogger c’est un personnage qui est à un bout de l’écran et qui doit passer une route rempli de voiture, passer a travers une riverai sans toucher l’eau pour arrive a l’autre bout de l’écran chez lui.
&lt;/p&gt;
&lt;p&gt;
Pour plus d’information sur le jeu je vous invite voir la page d’&lt;a href=&quot;http://www.arcade-history.com/index.php?page=detail&amp;amp;id=879&quot; alt=&quot;Arcade History&quot; title=&quot;Arcade History&quot;&gt;Arcade History&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
Au final j’ai du dire au revoir à mon Megaman (Dommage je mettais bien amusé à faire le graphisme du jeu) pour le remplacer par un Frogger.
&lt;/p&gt;
&lt;h2&gt;Les contraintes du jeu&lt;/h2&gt;
&lt;p&gt;
Comme dans tout projet ce TP avait des contraintes à respecter.
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Tout d’abord le jeu devait être développait en C# en utilisant le Framework Microsoft XNA (1.0 Refresh, ou 2.0).&lt;/li&gt;
&lt;li&gt;Il devait rester dans l’esprit du jeu original, c'est-à-dire un personnage qui doit passer, route et rivière pour aller à l’autre bout de l’écran.&lt;/li&gt;
&lt;li&gt;Avoir 5 niveaux de difficultés&lt;/li&gt;
&lt;li&gt;Ajouter un nouvel ennemi&lt;/li&gt;
&lt;li&gt;Mémoriser le meilleur score&lt;/li&gt;
&lt;li&gt;Permettre de jouer à deux joueurs (optionnel)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a href=&quot;http://blog.dreaminvasion.com/public/images/frogger/supinfrogger.jpg&quot; border=&quot;0&quot; rel=&quot;lightbox&quot;&gt;&lt;img style=&quot;margin: 0 1em 1em 0; float: left;&quot; alt=&quot;&quot; src=&quot;http://blog.dreaminvasion.com/public/images/frogger/mini-supinfrogger.jpg&quot; /&gt;&lt;/a&gt;Enfin nous encouragé de laisser libre court à notre créativité : &lt;em&gt;&quot;Les ressources graphiques que vous utiliserez pourront être librement choisies ou  tirées du jeu original : l’univers présenté tourne autour de la grenouille mais vous êtes libre d’utiliser l’univers de votre choix (une poule rentrant au poulailler et évitant des renards par exemple…)&quot;&lt;/em&gt;.
&lt;/p&gt;
&lt;p&gt;
Le rendu du projet devait être au 30 avril 2008.
Un jeu, qui se customise !
&lt;/p&gt;
&lt;p&gt;
Comme vous l’avez compris nous avions un esprit de jeu à respecter mais aucune limite dans ca conception graphique, audio.
&lt;/p&gt;
&lt;p&gt;
Bien que le graphisme ne soit pas notre domaine de compétence, (dans ce TP le but était surtout d’évaluer notre niveau et la qualité de nos développement dans le langage C#) j’ai pu voir différentes version du Frogger. Du design simple et original du jeu en passant par une version modernisé (&lt;strong&gt;Zelda Frogger&lt;/strong&gt;), jusqu'à même des versions totalement customisé tel que la version « &lt;strong&gt;Homer va chercher des bières&lt;/strong&gt; » ou vous incarnez Homer Simpson et votre but est de ramener des bières à la maison, un « &lt;strong&gt;Prison Break Frogge&lt;/strong&gt;r » ou vous êtes un prisonnier qui doit s’évader en échappant au tireur d’élite et aux voitures de polices.
&lt;/p&gt;
&lt;p&gt;
Pour ma part ça était un &lt;strong&gt;SUPINFrogger&lt;/strong&gt; ! Vous êtes étudiants SUPINFO et vous devez aller chercher vos 5 années SUPINFO pour obtenir votre diplôme. Mais attention aux voitures, à la rivière et aux voitures de polices (Je tiens à remercier les Fan de GTA chez qui j’ai pu récupérer des images).&lt;/p&gt;
&lt;br /&gt;
&lt;p class=&quot;center&quot;&gt;Voici une vidéo de démo de mon SUPINFrogger : &lt;/p&gt;
&lt;embed src=&quot;http://blog.dreaminvasion.com/public/swf/player.swf&quot; allowscriptaccess=&quot;always&quot; allowfullscreen=&quot;true&quot; flashvars=&quot;height=500&amp;amp;width=500&amp;amp;file=/public/images/frogger/video-supinfrogger.flv&amp;amp;searchbar=false&amp;amp;enablejs=true&quot; height=&quot;500&quot; width=&quot;500&quot;&gt;
&lt;p&gt;Pour finir voici une petite galerie photo de Frogger Customiser développés à SUPINFO Toulouse.&lt;/p&gt;
&lt;p class=&quot;center&quot;&gt;&lt;strong&gt;Un Frogger proche de l'original&lt;/strong&gt;&lt;br /&gt;&lt;a href=&quot;http://blog.dreaminvasion.com/public/images/frogger/classic-frogger.jpg&quot; border=&quot;0&quot; rel=&quot;lightbox&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;http://blog.dreaminvasion.com/public/images/frogger/mini-classic-frogger.jpg&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class=&quot;center&quot;&gt;&lt;strong&gt;Un Zelda Frogger&lt;/strong&gt;&lt;br /&gt;&lt;a href=&quot;http://blog.dreaminvasion.com/public/images/frogger/zelda-frogger.jpg&quot; border=&quot;0&quot; rel=&quot;lightbox&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;http://blog.dreaminvasion.com/public/images/frogger/mini-zelda-frogger.jpg&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class=&quot;center&quot;&gt;&lt;strong&gt;Un Space Frogger&lt;/strong&gt;&lt;br /&gt;&lt;a href=&quot;http://blog.dreaminvasion.com/public/images/frogger/supinbomber.jpg&quot; border=&quot;0&quot; rel=&quot;lightbox&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;http://blog.dreaminvasion.com/public/images/frogger/mini-supinbomber.jpg&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class=&quot;center&quot;&gt;&lt;strong&gt;Le fameux Homer va chercher des bières&lt;/strong&gt;&lt;br /&gt;&lt;a href=&quot;http://blog.dreaminvasion.com/public/images/frogger/simpsons-frogger.jpg&quot; border=&quot;0&quot; rel=&quot;lightbox&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;http://blog.dreaminvasion.com/public/images/frogger/mini-simpsons-frogger.jpg&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;Et le code source dans tout ca ?&lt;/h2&gt;
&lt;p&gt;
Je mettrais le code source du jeu ainsi que la démo installable une fois le TP corrigé et noté par l’école.&lt;/p&gt;</description>
    
    
    
          <comments>http://blog.dreaminvasion.com/post/SUPINFO-TP-Creation-du-jeu-video-frogger-avec-XNA#comment-form</comments>
      <wfw:comment>http://blog.dreaminvasion.com/post/SUPINFO-TP-Creation-du-jeu-video-frogger-avec-XNA#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.dreaminvasion.com/feed/rss2/comments/53</wfw:commentRss>
      </item>
    
  <item>
    <title>Formation : Java (SUPINFO IS2)</title>
    <link>http://blog.dreaminvasion.com/post/Formation-Java-SUPINFO-IS2</link>
    <guid isPermaLink="false">urn:md5:d32ee981d54048cb9c06fe1a6104bf3d</guid>
    <pubDate>Wed, 12 Dec 2007 19:37:00 +0100</pubDate>
    <dc:creator>Gerald Lonlas</dc:creator>
        <category>SUPINFO</category>
        <category>Developpement</category><category>Formation</category><category>IS2</category><category>Java</category><category>SUPINFO</category>    
    <description>&lt;p&gt;Voici &lt;strong&gt;le programme Java&lt;/strong&gt; suivit lors de mon année SUPINFO IS2 (2007 / 2008)&amp;nbsp;:&lt;/p&gt;    &lt;img style=&quot;margin: 0 0 1em 1em; float: right;&quot; alt=&quot;&quot; src=&quot;http://blog.dreaminvasion.com/public/images/logos/logo-supinfo.png&quot; /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;h2&gt;Introduction à Java Entreprise Edition&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;h3&gt;Concept JavaEE&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Origine&lt;/li&gt;
&lt;li&gt;Buts&lt;/li&gt;
&lt;li&gt;Architecture&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;h3&gt;Composants&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Frameworks&lt;/li&gt;
&lt;li&gt;Utilitaire de gestion de projets&lt;/li&gt;
&lt;li&gt;Serveur d’applications&lt;/li&gt;
&lt;li&gt;Les composants EJB&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;h2&gt;Architecture Java Entreprise Edition (JavaEE)&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;h3&gt;Principes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Problématique d’architecture d’Entreprise &lt;/li&gt;
&lt;li&gt;Architecture complexe &lt;/li&gt;
&lt;li&gt;Faible couplage et forte cohésion &lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;h3&gt;L’architecture JavaEE&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Architecture en couche &lt;/li&gt;
&lt;li&gt;La couche Métier &lt;/li&gt;
&lt;li&gt;La couche Application &lt;/li&gt;
&lt;li&gt;La couche Présentation &lt;/li&gt;
&lt;li&gt;Implémentation du concept MVC &lt;/li&gt;
&lt;li&gt;Interconnexion des couches&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;h2&gt;Java Server Faces&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;h3&gt;Introduction&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Problème avec JSP&lt;/li&gt;
&lt;li&gt;Les caractéristiques de JSF&lt;/li&gt;
&lt;li&gt;La place de JSF dans une architecture n-tiers&lt;/li&gt;
&lt;li&gt;Exemples de sites en JSF&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;h3&gt;Les bases de JSF&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Principe de composant&lt;/li&gt;
&lt;li&gt;Les attributs communs&lt;/li&gt;
&lt;li&gt;Les comportements&lt;/li&gt;
&lt;li&gt;Liaisons Composants et JavaBeans&lt;/li&gt;
&lt;li&gt;Unified Expression Language&lt;/li&gt;
&lt;li&gt;Cycle de vie&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;h3&gt;Les balises de base&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Affichage&lt;/li&gt;
&lt;li&gt;Entrée&lt;/li&gt;
&lt;li&gt;Liens&lt;/li&gt;
&lt;li&gt;Boutons&lt;/li&gt;
&lt;li&gt;Case à cocher&lt;/li&gt;
&lt;li&gt;Boutons radio&lt;/li&gt;
&lt;li&gt;Tableaux&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;h3&gt;Configuration serveur&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Déclaration des JavaBeans&lt;/li&gt;
&lt;li&gt;Navigation&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;h2&gt;Java Server Faces - Avancé&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;h3&gt;Comportements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;ActionListener&lt;/li&gt;
&lt;li&gt;ValueChangerListener&lt;/li&gt;
&lt;li&gt;Conversion&lt;/li&gt;
&lt;li&gt;Validation&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;h3&gt;Concepts avancés&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Internationalisation (I18n)&lt;/li&gt;
&lt;li&gt;Gestion des messages&lt;/li&gt;
&lt;li&gt;Intégration à JEE (Injection de ressources)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;h3&gt;Facelets&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Introduction&lt;/li&gt;
&lt;li&gt;Structure d'une page&lt;/li&gt;
&lt;li&gt;JSFC&lt;/li&gt;
&lt;li&gt;Template&lt;/li&gt;
&lt;li&gt;Templating de vue&lt;/li&gt;
&lt;li&gt;Templating de composant&lt;/li&gt;
&lt;li&gt;Balises Facelets&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;h2&gt;Encapsulation de la logique métier - EJB 3&lt;/h2&gt;
&lt;ul&gt;&lt;li&gt;&lt;h3&gt;Présentation du framework&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Historique&lt;/li&gt;
&lt;li&gt;Principes&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;h3&gt;Session Beans&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Création&lt;/li&gt;
&lt;li&gt;Déploiement&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;h3&gt;Entity Beans&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Création&lt;/li&gt;
&lt;li&gt;Relations&lt;/li&gt;
&lt;li&gt;Déploiement&lt;/li&gt;
&lt;li&gt;L’EntityManager&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;h3&gt;Message Driven Bean&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;L’API JMS&lt;/li&gt;
&lt;li&gt;Création&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;h3&gt;Relation entre EJB&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Principe de l’injection&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;h2&gt;Outils de build pour JavaANT&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;h3&gt;Présentation&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Principes&lt;/li&gt;
&lt;li&gt;Fichier de configuration&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;h3&gt;Les actions simples&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Les cibles&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Les tâches&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Les variables&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;&lt;h3&gt;Les action complexes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Les cibles classiques&lt;/li&gt;
&lt;li&gt;Tâches personnalisées&lt;/li&gt;
&lt;li&gt;XDoclet&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;</description>
    
    
    
          <comments>http://blog.dreaminvasion.com/post/Formation-Java-SUPINFO-IS2#comment-form</comments>
      <wfw:comment>http://blog.dreaminvasion.com/post/Formation-Java-SUPINFO-IS2#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.dreaminvasion.com/feed/rss2/comments/46</wfw:commentRss>
      </item>
    
  <item>
    <title>Intégration du formulaire de paiement Paypal</title>
    <link>http://blog.dreaminvasion.com/post/Integration-du-formulaire-de-paiement-Paypal</link>
    <guid isPermaLink="false">urn:md5:baf9b3bae0e4acf8256bf5540a1b23f1</guid>
    <pubDate>Mon, 10 Dec 2007 14:38:00 +0100</pubDate>
    <dc:creator>Gerald Lonlas</dc:creator>
        <category>Dev: xHTML / CSS / Javascript</category>
        <category>Developpement</category><category>HTML</category><category>Paypal</category><category>Web</category>    
    <description>    &lt;p&gt;&lt;img style=&quot;margin: 0 1em 1em 0; float: left;&quot; alt=&quot;&quot; src=&quot;http://blog.dreaminvasion.com/public/images/divers/make-money.png&quot; /&gt;&lt;a hreflang=&quot;en&quot; href=&quot;http://freelanceswitch.com&quot;&gt;FreelanceSwitch&lt;/a&gt; nous propose un petit &lt;a hreflang=&quot;en&quot; href=&quot;http://freelanceswitch.com/money/making-a-paypal-form-tutorial/&quot;&gt;tutoriel (en anglais) pour intégrer le formulaire de paiement de Paypal.&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Le formulaire de paypal n’est vraiment pas compliqué à mettre en place sur un site Internet. &lt;br /&gt; Vous pouvez suivre &lt;a hreflang=&quot;en&quot; href=&quot;http://freelanceswitch.com/money/making-a-paypal-form-tutorial/&quot;&gt;ce tutoriel en anglais&lt;/a&gt;, que je trouve simple et bien détaillé (J’essayerai de vous en faire un en français).&lt;/p&gt;
&lt;p&gt;Pour plus d’informations sur intégration de Paypal sur votre site web, je vous recommande vivement de lire &lt;a hreflang=&quot;fr&quot; href=&quot;http://www.solutionspaypal.fr/RessourcesTechniquesPayPal/Homepage/ic_pdnHome.html?PPREDIRECT=GJyVpUqsFX0i7V94erfRKWj6epq_tp0lLvLDpktLY-76kVZTNAcIeBsJwks5pIhPNK6cMzGk4_yV-0AQbcR4mOS08tL4JfuLGZUYjVz0bXYSzAplacvhnqo8p7i&quot;&gt;les documentations de Paypal&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;N’hésitez pas à vous créer un compte sur &lt;a hreflang=&quot;fr&quot; href=&quot;https://www.sandbox.paypal.com/&quot;&gt;Sandbox Paypal&lt;/a&gt; pour tester le fonctionnement de votre script.&lt;/p&gt;</description>
    
    
    
          <comments>http://blog.dreaminvasion.com/post/Integration-du-formulaire-de-paiement-Paypal#comment-form</comments>
      <wfw:comment>http://blog.dreaminvasion.com/post/Integration-du-formulaire-de-paiement-Paypal#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.dreaminvasion.com/feed/rss2/comments/47</wfw:commentRss>
      </item>
    
  <item>
    <title>Formation : ASP.NET (SUPINFO IS2)</title>
    <link>http://blog.dreaminvasion.com/post/Formation-ASPNET-SUPINFO-IS2</link>
    <guid isPermaLink="false">urn:md5:fa40599301594e16c544ba9edd3c77bc</guid>
    <pubDate>Wed, 05 Dec 2007 22:27:00 +0100</pubDate>
    <dc:creator>Gerald Lonlas</dc:creator>
        <category>SUPINFO</category>
        <category>Developpement</category><category>DotNet</category><category>Formation</category><category>IS2</category><category>SUPINFO</category><category>Web</category>    
    <description>&lt;p&gt;Voici le programme &lt;strong&gt;ASP.NET&lt;/strong&gt; suivit lors de mon année SUPINFO IS2 (2007/2008) :&lt;/p&gt;    &lt;img style=&quot;margin: 0 0 1em 1em; float: right;&quot; alt=&quot;&quot; src=&quot;http://blog.dreaminvasion.com/public/images/logos/logo-supinfo.png&quot; /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;h2&gt;Les bases d’ASP.NET 2 (Applications Web)
&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;h3&gt;Introduction à ASP.NET
&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Présentation&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;h3&gt;Framework de page
&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Les MasterPages&lt;/li&gt;
&lt;li&gt;Style, Skin, Thèmes&lt;/li&gt;
&lt;li&gt;Les Webparts&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;h3&gt;Contrôles Serveurs
&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Généralités&lt;/li&gt;
&lt;li&gt;Présentation de quelques contrôles&lt;/li&gt;
&lt;li&gt;Interaction Client/server&lt;/li&gt;
&lt;li&gt;Le principe de PostBack&lt;/li&gt;
&lt;li&gt;Validation de contrôles&lt;/li&gt;
&lt;li&gt;Fichiers de configuration&lt;/li&gt;
&lt;li&gt;Organisation des fichiers&lt;/li&gt;
&lt;li&gt;Prise en compte des mises à jour&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;h2&gt;ASP.NET 2 Avancé
&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;h3&gt;Les contrôles serveur utilisateur
&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Principe de base&lt;/li&gt;
&lt;li&gt;Créer un contrôle utilisateur&lt;/li&gt;
&lt;li&gt;Les évènements dans un contrôle utilisateur&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;h3&gt;Accès aux données
&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Le DataBinding&lt;/li&gt;
&lt;li&gt;Les types de sources de données&lt;/li&gt;
&lt;li&gt;ObjectDataSource&lt;/li&gt;
&lt;li&gt;Afficher des données&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;h3&gt;Debug, Trace, Cache
&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Debuger une application&lt;/li&gt;
&lt;li&gt;Utiliser les informations de Trace&lt;/li&gt;
&lt;li&gt;Gestion du cache&lt;/li&gt;
&lt;li&gt;Le cache dependency&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;h3&gt;Personnalisation et Navigation
&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Personnalisation&lt;/li&gt;
&lt;li&gt;Aide à la navigation&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;h2&gt;Sécurité des applications web
&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;h3&gt;Equipements côté abonné
&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Authentification avec IIS&lt;/li&gt;
&lt;li&gt;Principe de Membership&lt;/li&gt;
&lt;li&gt;Optimisation grâce aux rôles&lt;/li&gt;
&lt;li&gt;Contrôles serveurs prédéfinis (Login, LoginView)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;h2&gt;Les services web
&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;h3&gt;Généralités
&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Introduction aux services Web&lt;/li&gt;
&lt;li&gt;Le Protocole SOAP&lt;/li&gt;
&lt;li&gt;Le format WSDL&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;h3&gt;Services web avec .NET
&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Créer un service web&lt;/li&gt;
&lt;li&gt;Déploiement des services&lt;/li&gt;
&lt;li&gt;Consommation des services web&lt;/li&gt;
&lt;li&gt;Créer des proxies transparents&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;</description>
    
    
    
          <comments>http://blog.dreaminvasion.com/post/Formation-ASPNET-SUPINFO-IS2#comment-form</comments>
      <wfw:comment>http://blog.dreaminvasion.com/post/Formation-ASPNET-SUPINFO-IS2#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.dreaminvasion.com/feed/rss2/comments/41</wfw:commentRss>
      </item>
    
  <item>
    <title>Dark GDK un autre SDK C++ pour les jeux vidéo ?</title>
    <link>http://blog.dreaminvasion.com/post/Dark-GDK-un-autre-SDK-C-pour-les-jeux-video</link>
    <guid isPermaLink="false">urn:md5:52e52e0ce9ba1df3c6a209047abe8b50</guid>
    <pubDate>Thu, 29 Nov 2007 14:39:00 +0100</pubDate>
    <dc:creator>Gerald Lonlas</dc:creator>
        <category>Dev: DotNet</category>
        <category>C</category><category>Dark GDK</category><category>Developpement</category><category>Jeux video</category><category>Visual Studio</category>    
    <description>    &lt;p&gt;&lt;a href=&quot;http://gdk.thegamecreators.com/&quot;&gt;&lt;img style=&quot;margin: 0 auto; display: block;&quot; alt=&quot;&quot; src=&quot;http://blog.dreaminvasion.com/public/images/divers/logo-dark-gdk.jpg&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;En parcourant les &lt;a hreflang=&quot;en&quot; href=&quot;http://www.microsoft.com/express/download/&quot;&gt;téléchargements de Microsoft pour Visual Studio 2008&lt;/a&gt; (On se tient à jour &lt;img src=&quot;/themes/dreaminvasion/smilies/wink.png&quot; alt=&quot;;)&quot; class=&quot;smiley&quot; /&gt; ), je suis tombé sur &lt;a hreflang=&quot;en&quot; href=&quot;http://www.microsoft.com/express/samples/GameCreators/&quot;&gt;la page Game Creators&lt;/a&gt; qui nous &lt;strong&gt;présente Dark GDK&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;a hreflang=&quot;en&quot; href=&quot;http://gdk.thegamecreators.com/&quot;&gt;DarkGDK&lt;/a&gt; semble être un autre SDK pour la création de jeux vidéo en 2D et 3D&amp;nbsp; en C++ de la même façon que XNA l’est pour C#.NET.&lt;/p&gt;
&lt;p&gt;Microsoft nous annonce que &lt;strong&gt;DarkGDK est une version pour les professionnels&lt;/strong&gt; du développement des jeux vidéo.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Dark GDK propose :&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;Facilité de développement de jeux vidéo en C++&lt;/li&gt;
&lt;li&gt;Integration complete pour Visual Studio&amp;nbsp; C++ 2008 Express&lt;/li&gt;
&lt;li&gt;Gratuit pour un usage personnel seulement.&lt;/li&gt;
&lt;li&gt;Inclus des tutos : &lt;/li&gt;
&lt;ul&gt;&lt;li&gt;Shaders&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt;Game Level&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;&lt;li&gt;Gestion des objets 3D&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Inclus un jeu&lt;/li&gt;
&lt;li&gt;Inclus des objets 3D :&lt;/li&gt;
&lt;ul&gt;&lt;li&gt;Plus de 25 personnages et monstres&lt;/li&gt;
&lt;li&gt;Plus de 20 véhicules&lt;/li&gt;
&lt;li&gt;Plus de 10 armes&lt;/li&gt;
&lt;li&gt;Des vidéos, sprites, bitmap&lt;/li&gt;
&lt;li&gt;Fichiers audios (Midi, Wav, MP3)&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
Si vous êtes amoureux du développement de jeux sous C++ je vous invite à &lt;a hreflang=&quot;en&quot; href=&quot;http://go.microsoft.com/?linkid=7708310&quot;&gt;télécharger DarkGDK&lt;/a&gt; et &lt;a hreflang=&quot;en&quot; href=&quot;http://go.microsoft.com/?linkid=7729279&quot;&gt;Visual Studio C++ 2008 Express&lt;/a&gt;.&lt;br /&gt;</description>
    
    
    
          <comments>http://blog.dreaminvasion.com/post/Dark-GDK-un-autre-SDK-C-pour-les-jeux-video#comment-form</comments>
      <wfw:comment>http://blog.dreaminvasion.com/post/Dark-GDK-un-autre-SDK-C-pour-les-jeux-video#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.dreaminvasion.com/feed/rss2/comments/38</wfw:commentRss>
      </item>
    
  <item>
    <title>Mobile : Sortie du SDK Google Android</title>
    <link>http://blog.dreaminvasion.com/post/Mobile-Sortie-du-SDK-Google-Android</link>
    <guid isPermaLink="false">urn:md5:4e29a9019aca0acd0f1448db5d852a04</guid>
    <pubDate>Fri, 16 Nov 2007 18:44:00 +0100</pubDate>
    <dc:creator>Gerald Lonlas</dc:creator>
        <category>Dev : Mobile</category>
        <category>Developpement</category><category>Google</category><category>Mobile</category>    
    <description>    &lt;p&gt;&lt;img style=&quot;margin: 0 1em 1em 0; float: left;&quot; alt=&quot;&quot; src=&quot;http://blog.dreaminvasion.com/public/images/logos/logo-android.png&quot; /&gt;Google vient de mettre en téléchargement le &lt;a hreflang=&quot;en&quot; href=&quot;http://code.google.com/android/download.html&quot;&gt;SDK de Google Android&lt;/a&gt;, l’OS mobile développé par Google. &lt;br /&gt;&lt;br /&gt;Pour rappel Android est un OS basé sur le kernel Linux.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;What’s Android ?&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;Android is a software stack for mobile devices that includes an operating system, middleware and key applications. &lt;br /&gt;This early look at the Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language.
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Désormais il sera possible aux développeurs de réaliser leurs applications mobile.&lt;/p&gt;
&lt;p&gt;Android propose :&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;La machine virtuelle Dalvik (optimisé pour les mobiles)&lt;/li&gt;
&lt;li&gt;Navigateur web : WebKit&lt;/li&gt;
&lt;li&gt;Optimisation graphique : 2D et 3D (avec OpenGL ES A.0)&lt;/li&gt;
&lt;li&gt;Base de données : SQLite&lt;/li&gt;
&lt;li&gt;Support des médias : audio, vidéo et images (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF)&lt;/li&gt;
&lt;li&gt;Support de la 3G, Edge et Wifi&lt;/li&gt;
&lt;li&gt;Support des caméras, GPS, et autres fonctionnalités des nouveaux téléphone (ex : accéléromètre)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a hreflang=&quot;en&quot; href=&quot;http://code.google.com/android/&quot;&gt;Pour plus d’information visitez le site officiel d’Android.&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Enfin pour ceux qui ne connaisse pas encore cet OS voici une vidéo de présentation des quelques fonctionnalités intégrées.&lt;/p&gt;
&lt;br/&gt;
&lt;object width=&quot;425&quot; height=&quot;373&quot;&gt;
&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/1FJHYqE0RDg&amp;rel=1&amp;border=1&quot;&gt;&lt;/param&gt;&lt;param name=&quot;wmode&quot; value=&quot;transparent&quot;&gt;&lt;/param&gt;
&lt;embed src=&quot;http://www.youtube.com/v/1FJHYqE0RDg&amp;rel=1&amp;border=1&quot; type=&quot;application/x-shockwave-flash&quot; wmode=&quot;transparent&quot; width=&quot;425&quot; height=&quot;373&quot;&gt;&lt;/embed&gt;
&lt;/object&gt;
&lt;br /&gt;
&lt;p&gt;
Source : &lt;a hreflang=&quot;en&quot; href=&quot;http://code.google.com/android/index.html&quot;&gt;Google Android&lt;/a&gt;
&lt;/p&gt;</description>
    
    
    
          <comments>http://blog.dreaminvasion.com/post/Mobile-Sortie-du-SDK-Google-Android#comment-form</comments>
      <wfw:comment>http://blog.dreaminvasion.com/post/Mobile-Sortie-du-SDK-Google-Android#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.dreaminvasion.com/feed/rss2/comments/33</wfw:commentRss>
      </item>
    
  <item>
    <title>Créez vos jeux vidéo avec XNA</title>
    <link>http://blog.dreaminvasion.com/post/Creez-vos-jeux-video-avec-XNA</link>
    <guid isPermaLink="false">urn:md5:c6953d8f84b32a3643a2f90aa99134f8</guid>
    <pubDate>Fri, 09 Nov 2007 11:37:00 +0100</pubDate>
    <dc:creator>Gerald Lonlas</dc:creator>
        <category>Dev: DotNet</category>
        <category>Developpement</category><category>DotNet</category><category>XNA</category>    
    <description>    &lt;p&gt;&lt;img style=&quot;margin: 0 1em 1em 0; float: left;&quot; alt=&quot;&quot; src=&quot;http://blog.dreaminvasion.com/post/../public/images/logos/logo-xna.png&quot; /&gt;Fabien LAVOCAT (&lt;a hreflang=&quot;fr&quot; href=&quot;http://www.blog-microsoft.fr/&quot; title=&quot;Blog-microsoft.com&quot;&gt;http://www.blog-microsoft.fr&lt;/a&gt;) va nous proposer prochainement un dossier complet sur le développement de jeux vidéo grâce à la technologie XNA de Microsoft.&lt;/p&gt;
&lt;p&gt;Son premier article &quot;&lt;a hreflang=&quot;fr&quot; href=&quot;http://www.blog-microsoft.fr/index.php/2007/11/08/18-developpement-de-jeux-video-sur-xbox-360-et-windows&quot;&gt;Développement de jeux vidéo sur XBOX 360 et Windows&lt;/a&gt;&quot; concerne l'installation de XNA sur votre machine.&lt;br /&gt;&lt;br /&gt;Prochainement sortiront deux articles : &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Les fonctions de base pour un projet XNA (Update() et Draw())&lt;/li&gt;
&lt;li&gt;Développement d'un jeu vidéo grâce à XNA&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;En attendant, pour ceux qui sont impatient et qui veulent approfondir le sujet
je vous recommande les articles de Jean Christophe Beyler &quot;&lt;a href=&quot;http://fearyourself.developpez.com/tutoriel/xna/intro&quot; title=&quot;Programmation XNA : Introduction&quot; hreflang=&quot;fr&quot;&gt;Programmation XNA : Introduction&lt;/a&gt;&quot;
et de Nicolas Boonaert &quot;&lt;a href=&quot;http://nicoboo.developpez.com/articles/xna/presentation/&quot; title=&quot;Présentation de la plateforme XNA&quot; hreflang=&quot;fr&quot;&gt;Présentation de la plateforme XNA&lt;/a&gt;&quot;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;Edit (09/11/2007 21:43)&lt;/em&gt;&lt;/strong&gt; Je profite d'une recherche sur le net pour ajouter à cet article d'autre site sur XNA. Cette fois ce sont des sites essentiellement en anglais, mais je vous conseil fortement d'aller les voir se sont de vrai mines d'or.&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;a hreflang=&quot;en&quot; href=&quot;http://www.xnatutorial.com/?page_id=46&quot;&gt;XNATutorial.com&lt;/a&gt;, est un site avec tuto vidéo sur XNA, a mon gout l'un des sites les plus approfondit sur le sujet développement XNA&lt;/li&gt;
&lt;li&gt;&lt;a hreflang=&quot;en&quot; href=&quot;http://www.ziggyware.com/articles.php?cat_id=6&quot;&gt;Ziggyware XNA&lt;/a&gt;, un très bon site pour tout ce qui touche aux textures sur XNA.&lt;/li&gt;
&lt;li&gt;&lt;a hreflang=&quot;fr&quot; href=&quot;http://msmvps.com/blogs/valentin/archive/2007/03/30/tutoriaux-xna-sommaire-g-n-ral.aspx&quot;&gt;MSMVPS, Tutoriaux XNA&lt;/a&gt;, site en francais avec de bon contenu autour de la 3D grace à XNA.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Commençant en décembre mes cours sur XNA, j’aurai besoin d’idée de jeu vidéo à developper. Donc si vous avez des idées de jeu n’hésitez pas à m’en faire part.&lt;/p&gt;</description>
    
    
    
          <comments>http://blog.dreaminvasion.com/post/Creez-vos-jeux-video-avec-XNA#comment-form</comments>
      <wfw:comment>http://blog.dreaminvasion.com/post/Creez-vos-jeux-video-avec-XNA#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.dreaminvasion.com/feed/rss2/comments/31</wfw:commentRss>
      </item>
    
  <item>
    <title>Programmation Orientée Objet en Javascript</title>
    <link>http://blog.dreaminvasion.com/post/Programmation-Orientee-Objet-en-Javascript</link>
    <guid isPermaLink="false">urn:md5:f181ca61493cd3aa79412de1558b9d8d</guid>
    <pubDate>Sun, 28 Oct 2007 18:27:00 +0100</pubDate>
    <dc:creator>Gerald Lonlas</dc:creator>
        <category>Dev: xHTML / CSS / Javascript</category>
        <category>Developpement</category><category>Javascript</category><category>Web 2.0</category>    
    <description>    &lt;p&gt;&lt;img style=&quot;margin: 0 1em 1em 0; float: left;&quot; alt=&quot;&quot; src=&quot;http://blog.dreaminvasion.com/public/images/logos/logo-javascript.png&quot; /&gt;Suite à la demande d’un ami sur la&amp;nbsp; &lt;strong&gt;programmation orientée objet en Javascript&lt;/strong&gt;, je vous partage le résultat de mes recherches sur le net.&lt;br /&gt;&lt;br /&gt;Et plus particulièrement mes recherches sur ce qui est pour moi&lt;strong&gt; la bible des sites sur la programmation : &lt;a hreflang=&quot;fr&quot; href=&quot;http://www.developpez.com/&quot;&gt;Developpez.com&lt;/a&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;a hreflang=&quot;fr&quot; href=&quot;http://t-templier.developpez.com/&quot;&gt;Thierry Templier&lt;/a&gt; nous propose &lt;strong&gt;un dossier en 3 parties sur la programmation Orientée objet en Javascript.&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;a hreflang=&quot;fr&quot; href=&quot;http://t-templier.developpez.com/tutoriel/javascript/javascript-poo1/&quot;&gt;Programmation orientée objet avec JavaScript (1ère partie) &lt;/a&gt;&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;L'objectif de cet article, premier article de la série Programmation orientée objet avec JavaScript, est de décrire les mécanismes de base mis à disposition par JavaScript afin de mettre en oeuvre la programmation orientée objet par prototype.&lt;br /&gt;La connaissance de ces mécanismes permet de &quot;mieux&quot; développer avec le langage JavaScript afin de réaliser des traitements plus modulaires, maintenables et évolutifs. Elle permet également de pouvoir appréhender plus facilement les diverses bibliothèques JavaScript disponibles sur Internet telles que Prototype, jQuery, script.aculo.us et Dojo.&lt;/p&gt;
&lt;/blockquote&gt;&lt;br /&gt;&lt;a hreflang=&quot;fr&quot; href=&quot;http://t-templier.developpez.com/tutoriel/javascript/javascript-poo2/&quot;&gt;Programmation orientée objet avec JavaScript (2ème partie)&lt;/a&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;p&gt;Ce second volet de la série Programmation orientée objet avec JavaScript a pour objectif de décrire les mécanismes avancés de JavaScript relatif à la mise en oeuvre de la programmation orientée objet par prototype, à savoir l'héritage et la détermination du type.&lt;br /&gt;Il détaille également la résolution d'un problème classique dû au référencement puis à l'exécution de méthodes d'objet et quelques patrons de conception.&lt;/p&gt;
&lt;/blockquote&gt;&lt;br /&gt;&lt;a hreflang=&quot;fr&quot; href=&quot;http://t-templier.developpez.com/tutoriel/javascript/javascript-poo3/&quot;&gt;Programmation orientée objet avec JavaScript (3ème partie)&lt;/a&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;p&gt;Ce troisième et dernier volet de la série Programmation orientée objet avec JavaScript a pour objectif de décrire la résolution de problèmes classiques liés à la mise en oeuvre de ce paradigme avec le langage JavaScript. Ces problèmes sont inhérents à la variante de ce paradigme à savoir la programmation orientée objet par prototype.&lt;br /&gt;Il détaille également dans un second temps quelques patrons de conception fondés sur les mécanismes abordés dans les précédents articles de la série afin de rendre vos traitements JavaScript plus modulaires, maintenables et évolutifs.&lt;/p&gt;
&lt;/blockquote&gt;&lt;br /&gt;Autant dire que dans ces 3 articles vous aurez tout ce qu’il vous faut pour faire de la POO avec Javascript.</description>
    
    
    
          <comments>http://blog.dreaminvasion.com/post/Programmation-Orientee-Objet-en-Javascript#comment-form</comments>
      <wfw:comment>http://blog.dreaminvasion.com/post/Programmation-Orientee-Objet-en-Javascript#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.dreaminvasion.com/feed/rss2/comments/29</wfw:commentRss>
      </item>
    
  <item>
    <title>Ameliorez  l'experience utilisateur de vos applications Windows Vista</title>
    <link>http://blog.dreaminvasion.com/post/Les-recommandations-de-Microsoft-pour-ameliorez-vos-Interface-Graphique-de-vos-applications-Windows-Vista</link>
    <guid isPermaLink="false">urn:md5:1e8a4dd182a0b0898a446304f71a420c</guid>
    <pubDate>Sat, 27 Oct 2007 23:32:00 +0200</pubDate>
    <dc:creator>Gerald Lonlas</dc:creator>
        <category>Dev: DotNet</category>
        <category>Developpement</category><category>Windows</category><category>Windows Vista</category>    
    <description>    &lt;p&gt;&lt;img style=&quot;margin: 0 1em 1em 0; float: left;&quot; alt=&quot;&quot; src=&quot;http://blog.dreaminvasion.com/public/images/logos/logo-windows-vista.jpg&quot; /&gt;En passant sur &lt;a hreflang=&quot;en&quot; href=&quot;http://blog.dreaminvasion.com/post/En%20passant%20sur%20MSDN%20pour%20recuperer%20quelques%20fichiers,%20suite%20a%20la%20conf%C3%A9rence%20sur%20Silverlight%20%C3%A0%20Toulouse,%20je%20suis%20tomb%C3%A9%20sur%20une%20documentation%20%20publi%C3%A9%20hier%20par%20Microsoft%20:%20%C2%AB%20Windows%20Vista%20User%20Experience%20Guidelines%20%C2%BB.%20&quot;&gt;Microsoft Download Center&lt;/a&gt; pour récupérer quelques fichiers, suite a la conférence sur Silverlight à Toulouse, je suis tombé sur une documentation publié hier par Microsoft : « &lt;a hreflang=&quot;en&quot; href=&quot;http://download.microsoft.com/download/e/1/9/e191fd8c-bce8-4dba-a9d5-2d4e3f3ec1d3/UX%20Guide.pdf&quot;&gt;Windows Vista User Experience Guidelines&lt;/a&gt; ». &lt;br /&gt;&lt;br /&gt;Destiné aux développeurs ce &lt;a hreflang=&quot;en&quot; href=&quot;http://download.microsoft.com/download/e/1/9/e191fd8c-bce8-4dba-a9d5-2d4e3f3ec1d3/UX%20Guide.pdf&quot;&gt;PDF (de 34 Mo en Anglais)&lt;/a&gt; vous recommandera dans ses 763 pages comment optimiser l’ergonomie de vos applications Windows Vista.&lt;/p&gt;
&lt;br /&gt;
&lt;blockquote&gt;
&lt;p&gt;The goals for these official Windows Vista® User Experience Guidelines (or “UX Guide” for short) are to:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Establish a high quality and consistency baseline for all Windows Vista-based applications.&lt;/li&gt;
&lt;li&gt;Answer your specific user experience questions.&lt;/li&gt;
&lt;li&gt;Make your job easier!&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;br /&gt;N’ayant pas encore eu le temps de tout lire, je suis déjà impatient de passer mon week-end a décortiquer cette recommandation officiel de chez Microsoft.&lt;br /&gt;&lt;br /&gt;Il faut dire qu’il existe peu de documentation sur le sujet. Et que les développeurs n’ont pas ou peu d'informations sur comment réaliser de bonne Interfaces graphiques.&lt;/p&gt;
&lt;p&gt;Les seules documentations que je peux vous citer sont :&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;a hreflang=&quot;fr&quot; href=&quot;http://www.dsi.cnrs.fr/methodes/ergonomie/documentation/guidergo.pdf&quot;&gt;Guide de recommandations ergonomiques pour la conception et l'évaluation d'interfaces graphiques&lt;/a&gt;, du CNRS, daté du 19/04/2000&lt;/li&gt;
&lt;li&gt;&lt;a hreflang=&quot;fr&quot; href=&quot;http://www.dsi.cnrs.fr/methodes/ergonomie/documentation/Guidergoweb2005.pdf&quot;&gt;Guide de recommandations ergonomiques (Site et Application Web)&lt;/a&gt;, du CNRS, daté de 2005&lt;/li&gt;
&lt;/ul&gt;</description>
    
    
    
          <comments>http://blog.dreaminvasion.com/post/Les-recommandations-de-Microsoft-pour-ameliorez-vos-Interface-Graphique-de-vos-applications-Windows-Vista#comment-form</comments>
      <wfw:comment>http://blog.dreaminvasion.com/post/Les-recommandations-de-Microsoft-pour-ameliorez-vos-Interface-Graphique-de-vos-applications-Windows-Vista#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.dreaminvasion.com/feed/rss2/comments/28</wfw:commentRss>
      </item>
    
  <item>
    <title>PHP : Classe d’envoi d’email</title>
    <link>http://blog.dreaminvasion.com/post/PHP-Classe-denvoi-demail</link>
    <guid isPermaLink="false">urn:md5:48bfc38cb4b72bcce5069af947607039</guid>
    <pubDate>Tue, 18 Sep 2007 23:31:00 +0200</pubDate>
    <dc:creator>Gerald Lonlas</dc:creator>
        <category>Dev: PHP, MySQL</category>
        <category>Classe</category><category>Developpement</category><category>PHP</category><category>Telechargement</category>    
    <description>&lt;p&gt;&lt;img style=&quot;margin: 0 1em 1em 0; float: left;&quot; alt=&quot;&quot; src=&quot;http://blog.dreaminvasion.com/public/images/logos/logo-php.png&quot; /&gt;
Je le sais il existe pas mal de classe en PHP permettant l’envoi d’email. Mais en cherchant je ne trouvais pas toujours de que je voulais au niveau des fonctionnalités des classes fournis.&lt;/p&gt;
&lt;p&gt;Aussi j'ai décidé de développer une classe permettant aussi bien l'envoi d'email text / HTML, que l'envoi d'e-mailing.&lt;/p&gt;
&lt;p&gt;
Cette classe est compatible PHP4 et PHP5 (je ne l’ai pas totalement développé pour PHP5 car certain de mes projets sont encore sur des hébergeurs n’ayant que PHP4 :( ).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Les fonctionnalités de la classe sont :&lt;/strong&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Envoi d’email au format TEXT.&lt;/li&gt;
&lt;li&gt;Envoi d’email au format  TEXT /HTML.&lt;/li&gt;
&lt;li&gt;Envoi d’email au format HTML en utilisant un Template.&lt;/li&gt;
&lt;li&gt;Envoi d’email prioritaire.&lt;/li&gt;
&lt;li&gt;Configuration d’un email de réponse différente de l’email de l’émetteur.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Téléchargement de la classe :&lt;/h2&gt;
&lt;a href=&quot;http://blog.dreaminvasion.com/telechargement/class-php-email/email.class.zip&quot; title=&quot;Téléchargement de la classe PHP d'envoi d'email&quot;&gt;Classe PHP d’envoi email version 1.0  (Archive ZIP, 2 Ko)&lt;/a&gt;    &lt;h2&gt;Utilisation de la classe pour l’envoi d’un email au format TEXT/PLAIN :&lt;/h2&gt;
&lt;p&gt;Voici l’utilisation classique de cette classe.&lt;strong&gt;&lt;br /&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&amp;lt;?php&lt;em&gt;&lt;br /&gt;&lt;br /&gt;//Inclusion de la classe&lt;/em&gt;&lt;br /&gt;Include(‘email.class.php’) ;&lt;br /&gt;&lt;br /&gt;&lt;em&gt;// Initialisation de la classe&lt;/em&gt;&lt;br /&gt;&lt;strong&gt;$email = new Email();&lt;/strong&gt;&lt;br style=&quot;font-weight: bold;&quot;&gt;&lt;br /&gt;&lt;strong&gt;/* Obligatoire */&lt;/strong&gt;&lt;br /&gt;&lt;em&gt;// Votre nom ou celle de votre site web (Nom qui apparaitra dans la messagerie de votre destinataire) &lt;/em&gt;&lt;br /&gt;$email-&amp;gt;SetNomSite(&quot;Mon site web&quot;);&lt;br /&gt;&lt;em&gt;// Email utilisé pour l’envoi.&lt;/em&gt;&lt;br /&gt;&lt;strong&gt;$email-&amp;gt;SetEmetteur(&quot;emetteur@domain.tld&quot;);&lt;/strong&gt;&lt;br /&gt;&lt;em&gt;// Email à utiliser pour la réponse de votre correspondant.&lt;/em&gt;&lt;br /&gt;$email-&amp;gt;SetReturnPath(&quot;mon.email.de.retour@domain.tld&quot;);&lt;br /&gt;&lt;br /&gt;&lt;em&gt;// Email du destinataire&lt;/em&gt;&lt;br /&gt;&lt;strong&gt;$email-&amp;gt;SetDestinataire(&quot;email@domain.tld&quot;);&lt;/strong&gt;&lt;br style=&quot;font-weight: bold;&quot;&gt;&lt;br /&gt;&lt;em&gt;// Sujet de votre email&lt;/em&gt;&lt;br /&gt;&lt;strong&gt;$email-&amp;gt;SetSujet(&quot;Sujet du mail&quot;);&lt;/strong&gt;&lt;br /&gt;&lt;br style=&quot;font-style: italic; font-weight: bold;&quot;&gt;&lt;em&gt;&lt;strong&gt;// Message au format TEXT/plain&lt;/strong&gt;&lt;/em&gt;&lt;br style=&quot;font-weight: bold;&quot;&gt;&lt;strong&gt;$email-&amp;gt;SetMessageTexte(&quot;Message au format text/plain&quot;);&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;/* Options facultative */&lt;/strong&gt;&lt;br /&gt;&lt;em&gt;// L’email est envoyé avec une Haute Priorité&lt;/em&gt;&lt;br /&gt;$email-&amp;gt;SetIsImportant(true); // Flag important&lt;br /&gt;&lt;br /&gt;&lt;em&gt;// Envoi de l'email&lt;/em&gt;&lt;br /&gt;if( $email-&amp;gt;EnvoiMail() )&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; echo &quot;Email Envoyé&quot;;&lt;br /&gt;}&lt;br /&gt;else {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; echo &quot;Erreur lors de l’envoi de l’email&quot;;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;?&amp;gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2&gt;&lt;br /&gt;Utilisation de la classe pour l’envoi d’un email au format HTML :&lt;/h2&gt;
&lt;p&gt;L’envoi d’un email au format HTML ne change pas vraiment de l’envoi au fomat TEXT, il suffit d’&lt;strong&gt;utiliser la methode Email::SetMessageHTML()&lt;/strong&gt;.&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&amp;lt;?php&lt;em&gt;&lt;br /&gt;&lt;br /&gt;//Inclusion de la classe&lt;/em&gt;&lt;br /&gt;Include(‘email.class.php’) ;&lt;br /&gt;&lt;br /&gt;&lt;em&gt;// Initialisation de la classe&lt;/em&gt;&lt;br /&gt;$email = new Email();&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;/* Obligatoire */&lt;/strong&gt;&lt;br /&gt;&lt;em&gt;// Votre nom ou celle de votre site web (Nom qui apparaitra dans la messagerie de votre destinataire) &lt;/em&gt;&lt;br /&gt;$email-&amp;gt;SetNomSite(&quot;Mon site web&quot;);&lt;br /&gt;&lt;em&gt;// Email utilisé pour l’envoi.&lt;/em&gt;&lt;br /&gt;$email-&amp;gt;SetEmetteur(&quot;emetteur@domain.tld&quot;);&lt;br /&gt;&lt;em&gt;// Email à utiliser pour la réponse de votre correspondant.&lt;/em&gt;&lt;br /&gt;$email-&amp;gt;SetReturnPath(&quot;mon.email.de.retour@domain.tld&quot;);&lt;br /&gt;&lt;br /&gt;&lt;em&gt;// Email du destinataire&lt;/em&gt;&lt;br /&gt;$email-&amp;gt;SetDestinataire(&quot;email@domain.tld&quot;);&lt;br /&gt;&lt;br /&gt;&lt;em&gt;// Sujet de votre email&lt;/em&gt;&lt;br /&gt;$email-&amp;gt;SetSujet(&quot;Sujet du mail&quot;);&lt;br /&gt;&lt;br style=&quot;font-style: italic;&quot;&gt;&lt;em&gt;// Message au format TEXT/plain&lt;/em&gt;&lt;br /&gt;$email-&amp;gt;SetMessageTexte(&quot;Message au format text/plain&quot;);&lt;br /&gt;&lt;br style=&quot;font-style: italic;&quot;&gt;&lt;strong&gt;&lt;em&gt;// Message au format HTML&lt;/em&gt;&lt;/strong&gt;&lt;br style=&quot;font-weight: bold;&quot;&gt;&lt;strong&gt;$email-&amp;gt;SetMessageHTML(&quot;&amp;lt;h1&amp;gt;Message au format text/HTML&amp;lt;/h1&amp;gt;&quot;);&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;/* Options facultative */&lt;/strong&gt;&lt;br /&gt;&lt;em&gt;// L’email est envoyé avec une Haute Priorité&lt;/em&gt;&lt;br /&gt;$email-&amp;gt;SetIsImportant(true); // Flag important&lt;br /&gt;&lt;br /&gt;&lt;em&gt;// Envoi de l'email&lt;/em&gt;&lt;br /&gt;if( $email-&amp;gt;EnvoiMail() )&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; echo &quot;Email Envoyé&quot;;&lt;br /&gt;}&lt;br /&gt;else {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; echo &quot;Erreur lors de l’envoi de l’email&quot;;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;?&amp;gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2&gt;Utilisation de la classe pour l’envoi d’un email au format HTML en utilisant un TEMPLATE HTML :&lt;/h2&gt;
&lt;p&gt;Cette fonctionnalité va vous permettre d’envoyer des emails HTML en utilisant un Template (par exemple le template de votre site), ce qui est très appréciable pour des e-mailing.&lt;/p&gt;
&lt;h3&gt;Création du template HTML&lt;/h3&gt;
&lt;p&gt;Créer le template que vous allez utiliser pour l’envoi de l’email.
&lt;br /&gt;
Deux variables sont a votre disposition :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;%url% : sera remplacé par l’url de votre choix.&lt;/li&gt;
&lt;li&gt;%texte% : sera remplacé par le texte HTML de votre email.&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;&lt;p&gt;&amp;lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Transitional//EN&quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&quot;&amp;gt;&lt;br /&gt;&amp;lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&amp;gt;&lt;br /&gt;&amp;lt;head&amp;gt;&lt;br /&gt;&amp;lt;style type=&quot;text/css&quot;&amp;gt;&lt;br /&gt;&amp;nbsp; body {background : #FFFFFF;}&lt;br /&gt;&amp;nbsp; #container {border : 1px solid #000000;}&lt;br /&gt;&amp;lt;/style&amp;gt;&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;lt;body&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;div id=&quot;container&quot;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;div id=&quot;head&quot;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;img src=&quot;http://blog.dreaminvasion.com/post/&lt;strong&gt;%url%&lt;/strong&gt;/logo-site.gif&quot; /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/div&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;div id=&quot;content&quot;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;strong&gt;%texte%&lt;/strong&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/div&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;/div&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;/p&gt;
&lt;/blockquote&gt;&lt;br /&gt;
&lt;h3&gt;Utilisation de la classe&lt;/h3&gt;
&lt;p&gt;
Enfin l’utilisation de la classe en utilisant désormais les méthodes &lt;strong&gt;Email::SetMessageHTML()&lt;/strong&gt; et &lt;strong&gt;Email::TemplateHTML()&lt;/strong&gt;.&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&amp;lt;?php&lt;br /&gt;&lt;br style=&quot;font-style: italic;&quot;&gt;&lt;em&gt;//Inclusion de la classe&lt;/em&gt;&lt;br /&gt;Include('email.class.php') ;&lt;br /&gt;&lt;br style=&quot;font-style: italic;&quot;&gt;&lt;em&gt;// Initialisation de la classe&lt;/em&gt;&lt;br /&gt;$email = new Email();&lt;br /&gt;&lt;br style=&quot;font-weight: bold;&quot;&gt;&lt;strong&gt;/* Obligatoire */&lt;/strong&gt;&lt;br style=&quot;font-style: italic;&quot;&gt;&lt;em&gt;// Votre nom ou celle de votre site web (Nom qui apparaitra dans la messagerie de votre destinataire) &lt;/em&gt;&lt;br /&gt;$email-&amp;gt;SetNomSite(&quot;Mon site web&quot;);&lt;br /&gt;&lt;em&gt;// Email utilisé pour l’envoi.&lt;/em&gt;&lt;br /&gt;$email-&amp;gt;SetEmetteur(&quot;emetteur@domain.tld&quot;);&lt;br /&gt;&lt;em&gt;// Email à utiliser pour la réponse de votre correspondant.&lt;/em&gt;&lt;br /&gt;$email-&amp;gt;SetReturnPath(&quot;mon.email.de.retour@domain.tld&quot;);&lt;br /&gt;&lt;br /&gt;&lt;em&gt;// Email du destinataire&lt;/em&gt;&lt;br /&gt;$email-&amp;gt;SetDestinataire(&quot;email@domain.tld&quot;);&lt;br /&gt;&lt;br /&gt;&lt;em&gt;// Sujet de votre email&lt;/em&gt;&lt;br /&gt;$email-&amp;gt;SetSujet(&quot;Sujet du mail&quot;);&lt;br /&gt;&lt;br /&gt;&lt;em&gt;// Message au format TEXT/plain&lt;/em&gt;&lt;br /&gt;$email-&amp;gt;SetMessageTexte(&quot;Message au format text/plain&quot;);&lt;br /&gt;&lt;br /&gt;&lt;em&gt;// Message au format HTML&lt;/em&gt;&lt;br /&gt;&lt;strong&gt;$email-&amp;gt;SetMessageHTML(&quot;&amp;lt;h1&amp;gt;Message au format text/HTML&amp;lt;/h1&amp;gt;&quot;);&lt;br /&gt;&lt;br /&gt;&lt;em&gt;// Choix du template HTML&lt;/em&gt;&lt;/strong&gt;&lt;br style=&quot;font-weight: bold; font-style: italic;&quot;&gt;&lt;em&gt;// $urlDeVotreSite : remplacera %url% par le contenu de cette variable&lt;/em&gt;&lt;br style=&quot;font-style: italic;&quot;&gt;&lt;em&gt;// $pathToTemplate : chemin vers le template créé précédement&lt;/em&gt;&lt;br style=&quot;font-style: italic;&quot;&gt;&lt;em&gt;// La variable %texte% dans votre template sera remplacé par le contenu de la attribut : $messageTexte&lt;/em&gt;&lt;br style=&quot;font-weight: bold;&quot;&gt;&lt;strong&gt;$email-&amp;gt;TemplateHTML($urlDeVotreSite, $pathToTemplate);&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;/* Options facultative */&lt;/strong&gt;&lt;br /&gt;&lt;em&gt;// L’email est envoyé avec une Haute Priorité&lt;/em&gt;&lt;br /&gt;$email-&amp;gt;SetIsImportant(true); // Flag important&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;/* Envoi de l'email */&lt;/strong&gt;&lt;br /&gt;if( $email-&amp;gt;EnvoiMail() )&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; echo &quot;Email Envoyé&quot;;&lt;br /&gt;}&lt;br /&gt;else {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; echo &quot;Erreur lors de l’envoi de l’email&quot;;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;?&amp;gt;&lt;/p&gt;
&lt;/blockquote&gt;&lt;br /&gt;
&lt;h2&gt;Contenu de la classe Email:&lt;/h2&gt;
&lt;blockquote&gt;&lt;p&gt;&amp;lt;?php&lt;br /&gt;/*&lt;br /&gt;&amp;nbsp;* -------------------------------&lt;br /&gt;&amp;nbsp;* Author &amp;nbsp;&amp;nbsp;&amp;nbsp; : Gérald LONLAS&lt;br /&gt;&amp;nbsp;* Email &amp;nbsp;&amp;nbsp;&amp;nbsp; : webmaster@dreaminvasion.com&lt;br /&gt;&amp;nbsp;* Website &amp;nbsp;&amp;nbsp;&amp;nbsp; : http://www.dreaminvasion.com&lt;br /&gt;&amp;nbsp;* --------------------------------&lt;br /&gt;&amp;nbsp;*/&lt;br /&gt;&amp;nbsp;&lt;br /&gt;class Email{&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Attributs&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; **********************************/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var $mime_boundary;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var $entete;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var $messageMail;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var $isImportant = false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var $nomSite;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var $emetteur;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var $returnPath;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var $destinataire;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var $sujet;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var $messageTexte;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var $messageHTML;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Methodes&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; **********************************/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Entete du mail&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; function Entete()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $this-&amp;gt;entete&amp;nbsp; = &quot;From: &quot;.$this-&amp;gt;nomSite.&quot;&amp;lt;&quot;.$this-&amp;gt;returnPath.&quot;&amp;gt;\n&quot;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $this-&amp;gt;entete .= &quot;Reply-To: &quot;.$this-&amp;gt;nomSite.&quot;&amp;lt;&quot;.$this-&amp;gt;emetteur.&quot;&amp;gt;\n&quot;;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $this-&amp;gt;entete .= &quot;MIME-Version: 1.0\n&quot;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $this-&amp;gt;entete .= 'Content-Type: multipart/alternative; boundary=&quot;'.$this-&amp;gt;mime_boundary.'&quot;'.&quot;\n&quot;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Entete pour les mails important&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; function Important()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $this-&amp;gt;entete .= &quot;X-Priority: 1\n&quot;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $this-&amp;gt;entete .= &quot;Importance: High\n&quot;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $this-&amp;gt;entete .= &quot;X-MSMail-Priority: High\n&quot;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; function Message()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Creation du message&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $this-&amp;gt;messageMail&amp;nbsp; = &quot;--&quot;.$this-&amp;gt;mime_boundary.&quot;\n&quot;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $this-&amp;gt;messageMail .= &quot;Content-Type: text/plain; charset=iso-8859-16\n&quot;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $this-&amp;gt;messageMail .= &quot;Content-Transfer-Encoding: 8bit\n\n&quot;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $this-&amp;gt;messageMail .= $this-&amp;gt;messageTexte.&quot;\n\n&quot;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Creation du message HTML&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if($this-&amp;gt;messageHTML != '')&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $this-&amp;gt;messageMail .= &quot;--&quot;.$this-&amp;gt;mime_boundary.&quot;\n&quot;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $this-&amp;gt;messageMail .= &quot;Content-Type: text/html; charset=iso-8859-16\n&quot;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $this-&amp;gt;messageMail .= &quot;Content-Transfer-Encoding: 8bit\n\n&quot;;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $this-&amp;gt;messageMail .= $this-&amp;gt;messageHTML.&quot;\n&quot;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $this-&amp;gt;messageMail .= &quot;--&quot;.$this-&amp;gt;mime_boundary.&quot;--\n\n&quot;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Creation d'un template au format HTML&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; function TemplateHTML($url, $pathTemplate)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Lis le fichier template, change les variables persos (%texte%, %url%), et l'affecte à une variable PHP&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $fic = @fopen($pathTemplate, 'r');&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $template = @fread($fic, filesize($pathTemplate));&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; @fclose($fic);&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $template = str_replace(&quot;%texte%&quot;, $this-&amp;gt;messageHTML, $template);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $template = str_replace(&quot;%url%&quot;, $url, $template);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $this-&amp;gt;messageHTML = $template;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return $template;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Envoi de l'email&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; function EnvoiMail()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $this-&amp;gt;mime_boundary = &quot;----PHPSenderMail----&quot;.md5(time());&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Creation de l'entete&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $this-&amp;gt;Entete();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Ajout de l'entete important&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if($this-&amp;gt;isImportant)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $this-&amp;gt;Important();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Ajout du message&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $this-&amp;gt;Message();&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return @mail($this-&amp;gt;destinataire, $this-&amp;gt;sujet, $this-&amp;gt;messageMail, $this-&amp;gt;entete);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Getter &amp;amp; Setter&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; **********************************/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /**&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Getter $isImportant&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; **/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; function GetIsImportant(){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return $this-&amp;gt;isImportant;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /**&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Setter $&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; **/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; function SetIsImportant($var){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $this-&amp;gt;isImportant = $var;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /**&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Getter $nomSite&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; **/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; function GetNomSite(){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return $this-&amp;gt;nomSite;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /**&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Setter $nomSite&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; **/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; function SetNomSite($var){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $this-&amp;gt;nomSite = $var;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /**&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Getter $emetteur&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; **/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; function GetEmetteur(){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return $this-&amp;gt;emetteur;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /**&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Setter $emetteur&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; **/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; function SetEmetteur($var){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $this-&amp;gt;emetteur = $var;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /**&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Getter $returnPath&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; **/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; function GetReturnPath(){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return $this-&amp;gt;returnPath;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /**&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Setter $returnPath&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; **/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; function SetReturnPath($var){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $this-&amp;gt;returnPath = $var;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /**&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Getter $destinataire&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; **/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; function GetDestinataire(){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return $this-&amp;gt;destinataire;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /**&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Setter $destinataire&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; **/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; function SetDestinataire($var){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $this-&amp;gt;destinataire = $var;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /**&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Getter $sujet&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; **/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; function GetSujet(){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return $this-&amp;gt;sujet;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /**&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Setter $sujet&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; **/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; function SetSujet($var){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $this-&amp;gt;sujet = $var;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /**&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Getter $messageTexte&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; **/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; function GetMessageTexte(){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return $this-&amp;gt;messageTexte;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /**&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Setter $messageTexte&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; **/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; function SetMessageTexte($var){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $this-&amp;gt;messageTexte = $var;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /**&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Getter $messageHTML&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; **/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; function GetMessageHTML(){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; return $this-&amp;gt;messageHTML;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /**&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Setter $messageHTML&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; **/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; function SetMessageHTML($var){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; $this-&amp;gt;messageHTML = $var;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;?&amp;gt;&lt;/p&gt;
&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;</description>
    
    
    
          <comments>http://blog.dreaminvasion.com/post/PHP-Classe-denvoi-demail#comment-form</comments>
      <wfw:comment>http://blog.dreaminvasion.com/post/PHP-Classe-denvoi-demail#comment-form</wfw:comment>
      <wfw:commentRss>http://blog.dreaminvasion.com/feed/rss2/comments/23</wfw:commentRss>
      </item>
    
</channel>
</rss>