# Classe mail

Version 1.2
Auteur: Tetsuo
Derniere modification: 02-06-2004

## La classe simplemail fourni des fonctions permettant de construire puis d'envoyer des mail texte, html avec ou sans pièces jointes.

La nouvelle mouture permet l'envoi grace aux fonctions intégrées a PHP ainsi que directement grace au sockets. Ainsi que l'envoi a des destinataires multiples.

- ### Nouvelle Instance

  simplemail()

  constructeur des instances de mail. Il initialise les variable de la classe.

  - : fixe la durée de vie maximum en seconde d'un fichier dans le repertoire de cache. Tout fichier plus agé est supprimé.
  - `$mail = new simple`

- ### Ajouter un destinataire.

  addrecipient( string 'adressmail' [ , string 'nom' ] )

  Ajoute un destinataire ( TO: ). Renvoi TRUE si l'adresse est valable. FALSE sinon.

  - : l'adresse mail.
  - : le nom du destinataire ( facultatif ).
  - `$mail->addrecipient( string 'adressmail' [ , string 'nom' ] )`

- ### Spécifier l'expediteur

  addfrom( string 'adressmail' [ , string 'nom' ] )

  Spécifie l'expediteur ( From: ) si l'adresse est valide.

  - : l'adresse mail.
  - : le nom du destinataire ( facultatif ).
  - `$mail->addfrom('adressmail' [ , 'nom' ] )`

- ### Ajouter un destinataire copie conforme.

  addcc( string 'adressmail' [ , string 'nom' ] )

  Ajouter un destiantaire copie conforme ( Cc: ) si l'adresse est valide.

  - : l'adresse mail.
  - `$mail->addcc('adressmail' [ , 'nom' ] )`

- ### Ajouter un destinataire copie conforme cachée.

  addbcc( string 'adressmail' [ , string 'nom' ] )

  Ajouter un destiantaire copie conforme ( Cc: ) si l'adresse est valide.

  - : l'adresse mail.
  - : le nom du destinataire ( facultatif ).
  - `$mail->addbcc('adressmail' [ , 'nom' ] )`

- ### Specifier le sujet.

  addsubject( string 'subject')

  Spécifier le sujet du mail ( Subject: ).

  - : le sujet du mail.
  - `$mail->addsubject('subject')`

- ### Specifier l'adresse de reponse.

  addreplyto( string 'adressmail')

  Spécifier l'adresse de reponse. ( Reply-To: ) si l'adresse est valide.

  - : l'adresse mail.
  - `$mail->addrreplyto('adressmail')`

- ### Ajouter un attachement.

  addattachement( string 'filename')

  Ajouter un attachement ( fichier joint) dans le mail. Cette fonction ne permet pas d'afficher l'attachement ds le contenu html.

  - : le chemin jusqu'au fichier a inclure.
  - `$mail->addattachement('filename')`

- ### Ajouter un attachement HTML.

  addhtmlattachement( string 'filename', string 'cid', string 'content-type')

  Ajoute le fichier en piece jointe en vue de l'afficher dans le mail au format html ( comme des image par exemple ). cid ( content-id ) represente le nom auquel vous ferez reference dans votre contenu html (ex: <img src="cid:monimage1">) et content-type precise le type de document ( ex: image/png ).

  - : le chemin jusqu'au fichier a inclure.
  - : le content id, permet de faire reference a votre fichier attaché dans les tags html.
  - : contient le type MIME du fichier attaché.
  - `$mail->addattachement('filename','cid','content-type')`

- ### Spécifier le corp plain text.

  text = string 'plain text ...'

  Spécifier le corp plain text du mail, lisible par TOUS les client mail.

  - : le text du corp du mail en ASCII.
  - `$mail->text = string 'plaintext'`

- ### Spécifier le corp HTML.

  html = string 'contenu html...'

  Spécifier le contenu HTML s'il y a lieu.

  - : le corps du mail en HTML.
  - `$mail->html = 'code html'`

- ### Spécifier le mode d'envoi.

  set_mode = string 'mode'

  Spécifier le mode d'envoi du mail, l'ajout de l'envoie par socket a surtout pour but l'accroissement des performance lors de l'envoi en nombre.

  - : 'php' pour utiliser la fonction mail de PHP, ou 'socket' pour utiliser directment les sockets ( plus rapide ).
  - `$mail->set_mode = 'socket';`

- ### Envoyer le mail.

  sendmail()

  Envoie le mail composé.

  - `$mail->sendmail()`

- ### Error log.

  error_log([ string 'message'])

  Methode qui ajoute un message au log des erreurs quand l'argument message est passé. La methode renvoi tout les logs d'erreur si elle est evoqué sans argument.

  - `$mail->error_log('msg')`