From 5e06b9ff2ecc0d2a074026f72b68355fe892f77d Mon Sep 17 00:00:00 2001
From: "jluc@no-log.org" <>
Date: Sun, 11 Jul 2010 17:10:27 +0000
Subject: [PATCH] =?UTF-8?q?Oups=20!=20effacement=20de=202=20plugins=20copi?=
 =?UTF-8?q?=C3=A9s=20par=20m=C3=A9garde?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .gitattributes                                |   99 -
 facteur/base/facteur.php                      |   82 -
 facteur/classes/facteur.php                   |  476 ----
 facteur/emails/css.html                       |   63 -
 facteur/emails/inc-bas.html                   |   22 -
 facteur/emails/inc-haut.html                  |   31 -
 facteur/emails/test_email_html.html           |   28 -
 facteur/emails/test_email_texte.html          |   12 -
 facteur/exec/facteur.php                      |   49 -
 facteur/facteur_fonctions.php                 |   62 -
 facteur/formulaires/configurer_facteur.html   |  177 --
 facteur/formulaires/configurer_facteur.php    |  150 --
 facteur/inc/envoyer_mail.php                  |   62 -
 facteur/inc/facteur_autorisations.php         |   26 -
 facteur/inc/facteur_classes.php               |   15 -
 facteur/lang/facteur_en.php                   |   52 -
 facteur/lang/facteur_fr.php                   |   52 -
 facteur/phpmailer-php4/LICENSE                |  504 ----
 facteur/phpmailer-php4/README                 |  102 -
 facteur/phpmailer-php4/class.phpmailer.php    | 1909 --------------
 facteur/phpmailer-php4/class.pop3.php         |  436 ----
 facteur/phpmailer-php4/class.smtp.php         | 1062 --------
 .../language/phpmailer.lang-ar.php            |   26 -
 .../language/phpmailer.lang-br.php            |   23 -
 .../language/phpmailer.lang-ca.php            |   24 -
 .../language/phpmailer.lang-ch.php            |   24 -
 .../language/phpmailer.lang-cz.php            |   23 -
 .../language/phpmailer.lang-de.php            |   24 -
 .../language/phpmailer.lang-dk.php            |   23 -
 .../language/phpmailer.lang-en.php            |   23 -
 .../language/phpmailer.lang-es.php            |   23 -
 .../language/phpmailer.lang-et.php            |   24 -
 .../language/phpmailer.lang-fi.php            |   24 -
 .../language/phpmailer.lang-fo.php            |   25 -
 .../language/phpmailer.lang-fr.php            |   23 -
 .../language/phpmailer.lang-hu.php            |   23 -
 .../language/phpmailer.lang-it.php            |   26 -
 .../language/phpmailer.lang-ja.php            |   24 -
 .../language/phpmailer.lang-nl.php            |   23 -
 .../language/phpmailer.lang-no.php            |   23 -
 .../language/phpmailer.lang-pl.php            |   23 -
 .../language/phpmailer.lang-ro.php            |   24 -
 .../language/phpmailer.lang-ru.php            |   23 -
 .../language/phpmailer.lang-se.php            |   23 -
 .../language/phpmailer.lang-tr.php            |   24 -
 .../language/phpmailer.lang-zh.php            |   23 -
 .../language/phpmailer.lang-zh_cn.php         |   24 -
 facteur/phpmailer-php5/LICENSE                |  504 ----
 facteur/phpmailer-php5/README                 |  178 --
 facteur/phpmailer-php5/class.phpmailer.php    | 2320 -----------------
 facteur/phpmailer-php5/class.pop3.php         |  407 ---
 facteur/phpmailer-php5/class.smtp.php         |  814 ------
 .../language/phpmailer.lang-ar.php            |   27 -
 .../language/phpmailer.lang-br.php            |   26 -
 .../language/phpmailer.lang-ca.php            |   26 -
 .../language/phpmailer.lang-ch.php            |   26 -
 .../language/phpmailer.lang-cz.php            |   25 -
 .../language/phpmailer.lang-de.php            |   25 -
 .../language/phpmailer.lang-dk.php            |   26 -
 .../language/phpmailer.lang-en.php            |   25 -
 .../language/phpmailer.lang-es.php            |   26 -
 .../language/phpmailer.lang-et.php            |   26 -
 .../language/phpmailer.lang-fi.php            |   27 -
 .../language/phpmailer.lang-fo.php            |   27 -
 .../language/phpmailer.lang-fr.php            |   25 -
 .../language/phpmailer.lang-hu.php            |   25 -
 .../language/phpmailer.lang-it.php            |   27 -
 .../language/phpmailer.lang-ja.php            |   26 -
 .../language/phpmailer.lang-nl.php            |   25 -
 .../language/phpmailer.lang-no.php            |   25 -
 .../language/phpmailer.lang-pl.php            |   25 -
 .../language/phpmailer.lang-ro.php            |   27 -
 .../language/phpmailer.lang-ru.php            |   25 -
 .../language/phpmailer.lang-se.php            |   26 -
 .../language/phpmailer.lang-tr.php            |   27 -
 .../language/phpmailer.lang-zh.php            |   26 -
 .../language/phpmailer.lang-zh_cn.php         |   26 -
 facteur/plugin.xml                            |   30 -
 facteur/prive/configurer_facteur.html         |   10 -
 facteur/prive/images/facteur-24.png           |  Bin 2445 -> 0 bytes
 facteur/prive/images/facteur-48.png           |  Bin 2328 -> 0 bytes
 .../prive/themes/spip/images/facteur-16.png   |  Bin 848 -> 0 bytes
 microblog/fonds/cfg_microblog.html            |   16 -
 .../formulaires/configurer_microblog.html     |  134 -
 microblog/formulaires/microbloguer.html       |   45 -
 microblog/formulaires/microbloguer.php        |   52 -
 microblog/genie/microblog.php                 |   59 -
 microblog/images/microblog-24.png             |  Bin 1095 -> 0 bytes
 microblog/images/microblog-64.png             |  Bin 4309 -> 0 bytes
 microblog/images/microblog.png                |  Bin 10000 -> 0 bytes
 microblog/inc/micro_notifications.php         |   88 -
 microblog/inc/microblog.php                   |   96 -
 microblog/lang/microblog_fr.php               |   55 -
 microblog/microblog_fonctions.php             |   24 -
 microblog/modeles/microblog_forumposte.html   |   12 -
 .../modeles/microblog_instituerarticle.html   |   12 -
 microblog/modeles/microblog_update.html       |    8 -
 microblog/plugin.xml                          |   30 -
 .../prive/exec/configurer_microblog.html      |    6 -
 .../prive/style_prive_plugin_microblog.html   |   24 -
 100 files changed, 11634 deletions(-)
 delete mode 100644 facteur/base/facteur.php
 delete mode 100644 facteur/classes/facteur.php
 delete mode 100644 facteur/emails/css.html
 delete mode 100644 facteur/emails/inc-bas.html
 delete mode 100644 facteur/emails/inc-haut.html
 delete mode 100644 facteur/emails/test_email_html.html
 delete mode 100644 facteur/emails/test_email_texte.html
 delete mode 100644 facteur/exec/facteur.php
 delete mode 100644 facteur/facteur_fonctions.php
 delete mode 100644 facteur/formulaires/configurer_facteur.html
 delete mode 100644 facteur/formulaires/configurer_facteur.php
 delete mode 100644 facteur/inc/envoyer_mail.php
 delete mode 100644 facteur/inc/facteur_autorisations.php
 delete mode 100644 facteur/inc/facteur_classes.php
 delete mode 100644 facteur/lang/facteur_en.php
 delete mode 100644 facteur/lang/facteur_fr.php
 delete mode 100644 facteur/phpmailer-php4/LICENSE
 delete mode 100644 facteur/phpmailer-php4/README
 delete mode 100644 facteur/phpmailer-php4/class.phpmailer.php
 delete mode 100644 facteur/phpmailer-php4/class.pop3.php
 delete mode 100644 facteur/phpmailer-php4/class.smtp.php
 delete mode 100644 facteur/phpmailer-php4/language/phpmailer.lang-ar.php
 delete mode 100644 facteur/phpmailer-php4/language/phpmailer.lang-br.php
 delete mode 100644 facteur/phpmailer-php4/language/phpmailer.lang-ca.php
 delete mode 100644 facteur/phpmailer-php4/language/phpmailer.lang-ch.php
 delete mode 100644 facteur/phpmailer-php4/language/phpmailer.lang-cz.php
 delete mode 100644 facteur/phpmailer-php4/language/phpmailer.lang-de.php
 delete mode 100644 facteur/phpmailer-php4/language/phpmailer.lang-dk.php
 delete mode 100644 facteur/phpmailer-php4/language/phpmailer.lang-en.php
 delete mode 100644 facteur/phpmailer-php4/language/phpmailer.lang-es.php
 delete mode 100644 facteur/phpmailer-php4/language/phpmailer.lang-et.php
 delete mode 100644 facteur/phpmailer-php4/language/phpmailer.lang-fi.php
 delete mode 100644 facteur/phpmailer-php4/language/phpmailer.lang-fo.php
 delete mode 100644 facteur/phpmailer-php4/language/phpmailer.lang-fr.php
 delete mode 100644 facteur/phpmailer-php4/language/phpmailer.lang-hu.php
 delete mode 100644 facteur/phpmailer-php4/language/phpmailer.lang-it.php
 delete mode 100644 facteur/phpmailer-php4/language/phpmailer.lang-ja.php
 delete mode 100644 facteur/phpmailer-php4/language/phpmailer.lang-nl.php
 delete mode 100644 facteur/phpmailer-php4/language/phpmailer.lang-no.php
 delete mode 100644 facteur/phpmailer-php4/language/phpmailer.lang-pl.php
 delete mode 100644 facteur/phpmailer-php4/language/phpmailer.lang-ro.php
 delete mode 100644 facteur/phpmailer-php4/language/phpmailer.lang-ru.php
 delete mode 100644 facteur/phpmailer-php4/language/phpmailer.lang-se.php
 delete mode 100644 facteur/phpmailer-php4/language/phpmailer.lang-tr.php
 delete mode 100644 facteur/phpmailer-php4/language/phpmailer.lang-zh.php
 delete mode 100644 facteur/phpmailer-php4/language/phpmailer.lang-zh_cn.php
 delete mode 100644 facteur/phpmailer-php5/LICENSE
 delete mode 100644 facteur/phpmailer-php5/README
 delete mode 100644 facteur/phpmailer-php5/class.phpmailer.php
 delete mode 100644 facteur/phpmailer-php5/class.pop3.php
 delete mode 100644 facteur/phpmailer-php5/class.smtp.php
 delete mode 100644 facteur/phpmailer-php5/language/phpmailer.lang-ar.php
 delete mode 100644 facteur/phpmailer-php5/language/phpmailer.lang-br.php
 delete mode 100644 facteur/phpmailer-php5/language/phpmailer.lang-ca.php
 delete mode 100644 facteur/phpmailer-php5/language/phpmailer.lang-ch.php
 delete mode 100644 facteur/phpmailer-php5/language/phpmailer.lang-cz.php
 delete mode 100644 facteur/phpmailer-php5/language/phpmailer.lang-de.php
 delete mode 100644 facteur/phpmailer-php5/language/phpmailer.lang-dk.php
 delete mode 100644 facteur/phpmailer-php5/language/phpmailer.lang-en.php
 delete mode 100644 facteur/phpmailer-php5/language/phpmailer.lang-es.php
 delete mode 100644 facteur/phpmailer-php5/language/phpmailer.lang-et.php
 delete mode 100644 facteur/phpmailer-php5/language/phpmailer.lang-fi.php
 delete mode 100644 facteur/phpmailer-php5/language/phpmailer.lang-fo.php
 delete mode 100644 facteur/phpmailer-php5/language/phpmailer.lang-fr.php
 delete mode 100644 facteur/phpmailer-php5/language/phpmailer.lang-hu.php
 delete mode 100644 facteur/phpmailer-php5/language/phpmailer.lang-it.php
 delete mode 100644 facteur/phpmailer-php5/language/phpmailer.lang-ja.php
 delete mode 100644 facteur/phpmailer-php5/language/phpmailer.lang-nl.php
 delete mode 100644 facteur/phpmailer-php5/language/phpmailer.lang-no.php
 delete mode 100644 facteur/phpmailer-php5/language/phpmailer.lang-pl.php
 delete mode 100644 facteur/phpmailer-php5/language/phpmailer.lang-ro.php
 delete mode 100644 facteur/phpmailer-php5/language/phpmailer.lang-ru.php
 delete mode 100644 facteur/phpmailer-php5/language/phpmailer.lang-se.php
 delete mode 100644 facteur/phpmailer-php5/language/phpmailer.lang-tr.php
 delete mode 100644 facteur/phpmailer-php5/language/phpmailer.lang-zh.php
 delete mode 100644 facteur/phpmailer-php5/language/phpmailer.lang-zh_cn.php
 delete mode 100644 facteur/plugin.xml
 delete mode 100644 facteur/prive/configurer_facteur.html
 delete mode 100644 facteur/prive/images/facteur-24.png
 delete mode 100644 facteur/prive/images/facteur-48.png
 delete mode 100644 facteur/prive/themes/spip/images/facteur-16.png
 delete mode 100644 microblog/fonds/cfg_microblog.html
 delete mode 100644 microblog/formulaires/configurer_microblog.html
 delete mode 100644 microblog/formulaires/microbloguer.html
 delete mode 100644 microblog/formulaires/microbloguer.php
 delete mode 100644 microblog/genie/microblog.php
 delete mode 100644 microblog/images/microblog-24.png
 delete mode 100644 microblog/images/microblog-64.png
 delete mode 100644 microblog/images/microblog.png
 delete mode 100644 microblog/inc/micro_notifications.php
 delete mode 100644 microblog/inc/microblog.php
 delete mode 100644 microblog/lang/microblog_fr.php
 delete mode 100644 microblog/microblog_fonctions.php
 delete mode 100644 microblog/modeles/microblog_forumposte.html
 delete mode 100644 microblog/modeles/microblog_instituerarticle.html
 delete mode 100644 microblog/modeles/microblog_update.html
 delete mode 100644 microblog/plugin.xml
 delete mode 100644 microblog/prive/exec/configurer_microblog.html
 delete mode 100644 microblog/prive/style_prive_plugin_microblog.html

diff --git a/.gitattributes b/.gitattributes
index 166ef2f..fc4d388 100644
--- a/.gitattributes
+++ b/.gitattributes
@@ -1,108 +1,9 @@
 * text=auto !eol
-facteur/base/facteur.php -text
-facteur/classes/facteur.php -text
-facteur/emails/css.html -text
-facteur/emails/inc-bas.html -text
-facteur/emails/inc-haut.html -text
-facteur/emails/test_email_html.html -text
-facteur/emails/test_email_texte.html -text
-facteur/exec/facteur.php -text
-facteur/facteur_fonctions.php -text
-facteur/formulaires/configurer_facteur.html -text
-facteur/formulaires/configurer_facteur.php -text
-facteur/inc/envoyer_mail.php -text
-facteur/inc/facteur_autorisations.php -text
-facteur/inc/facteur_classes.php -text
-facteur/lang/facteur_en.php -text
-facteur/lang/facteur_fr.php -text
-facteur/phpmailer-php4/LICENSE -text
-facteur/phpmailer-php4/README -text
-facteur/phpmailer-php4/class.phpmailer.php -text
-facteur/phpmailer-php4/class.pop3.php -text
-facteur/phpmailer-php4/class.smtp.php -text
-facteur/phpmailer-php4/language/phpmailer.lang-ar.php -text
-facteur/phpmailer-php4/language/phpmailer.lang-br.php -text
-facteur/phpmailer-php4/language/phpmailer.lang-ca.php -text
-facteur/phpmailer-php4/language/phpmailer.lang-ch.php -text
-facteur/phpmailer-php4/language/phpmailer.lang-cz.php -text
-facteur/phpmailer-php4/language/phpmailer.lang-de.php -text
-facteur/phpmailer-php4/language/phpmailer.lang-dk.php -text
-facteur/phpmailer-php4/language/phpmailer.lang-en.php -text
-facteur/phpmailer-php4/language/phpmailer.lang-es.php -text
-facteur/phpmailer-php4/language/phpmailer.lang-et.php -text
-facteur/phpmailer-php4/language/phpmailer.lang-fi.php -text
-facteur/phpmailer-php4/language/phpmailer.lang-fo.php -text
-facteur/phpmailer-php4/language/phpmailer.lang-fr.php -text
-facteur/phpmailer-php4/language/phpmailer.lang-hu.php -text
-facteur/phpmailer-php4/language/phpmailer.lang-it.php -text
-facteur/phpmailer-php4/language/phpmailer.lang-ja.php -text
-facteur/phpmailer-php4/language/phpmailer.lang-nl.php -text
-facteur/phpmailer-php4/language/phpmailer.lang-no.php -text
-facteur/phpmailer-php4/language/phpmailer.lang-pl.php -text
-facteur/phpmailer-php4/language/phpmailer.lang-ro.php -text
-facteur/phpmailer-php4/language/phpmailer.lang-ru.php -text
-facteur/phpmailer-php4/language/phpmailer.lang-se.php -text
-facteur/phpmailer-php4/language/phpmailer.lang-tr.php -text
-facteur/phpmailer-php4/language/phpmailer.lang-zh.php -text
-facteur/phpmailer-php4/language/phpmailer.lang-zh_cn.php -text
-facteur/phpmailer-php5/LICENSE -text
-facteur/phpmailer-php5/README -text
-facteur/phpmailer-php5/class.phpmailer.php -text
-facteur/phpmailer-php5/class.pop3.php -text
-facteur/phpmailer-php5/class.smtp.php -text
-facteur/phpmailer-php5/language/phpmailer.lang-ar.php -text
-facteur/phpmailer-php5/language/phpmailer.lang-br.php -text
-facteur/phpmailer-php5/language/phpmailer.lang-ca.php -text
-facteur/phpmailer-php5/language/phpmailer.lang-ch.php -text
-facteur/phpmailer-php5/language/phpmailer.lang-cz.php -text
-facteur/phpmailer-php5/language/phpmailer.lang-de.php -text
-facteur/phpmailer-php5/language/phpmailer.lang-dk.php -text
-facteur/phpmailer-php5/language/phpmailer.lang-en.php -text
-facteur/phpmailer-php5/language/phpmailer.lang-es.php -text
-facteur/phpmailer-php5/language/phpmailer.lang-et.php -text
-facteur/phpmailer-php5/language/phpmailer.lang-fi.php -text
-facteur/phpmailer-php5/language/phpmailer.lang-fo.php -text
-facteur/phpmailer-php5/language/phpmailer.lang-fr.php -text
-facteur/phpmailer-php5/language/phpmailer.lang-hu.php -text
-facteur/phpmailer-php5/language/phpmailer.lang-it.php -text
-facteur/phpmailer-php5/language/phpmailer.lang-ja.php -text
-facteur/phpmailer-php5/language/phpmailer.lang-nl.php -text
-facteur/phpmailer-php5/language/phpmailer.lang-no.php -text
-facteur/phpmailer-php5/language/phpmailer.lang-pl.php -text
-facteur/phpmailer-php5/language/phpmailer.lang-ro.php -text
-facteur/phpmailer-php5/language/phpmailer.lang-ru.php -text
-facteur/phpmailer-php5/language/phpmailer.lang-se.php -text
-facteur/phpmailer-php5/language/phpmailer.lang-tr.php -text
-facteur/phpmailer-php5/language/phpmailer.lang-zh.php -text
-facteur/phpmailer-php5/language/phpmailer.lang-zh_cn.php -text
-facteur/plugin.xml -text
-facteur/prive/configurer_facteur.html -text
-facteur/prive/images/facteur-24.png -text
-facteur/prive/images/facteur-48.png -text
-facteur/prive/themes/spip/images/facteur-16.png -text
 inc/is_email.php -text
 inc/verifier.php -text
 lang/verifier_ca.php -text
 lang/verifier_de.php -text
 lang/verifier_fr.php -text
-microblog/fonds/cfg_microblog.html -text
-microblog/formulaires/configurer_microblog.html -text
-microblog/formulaires/microbloguer.html -text
-microblog/formulaires/microbloguer.php -text
-microblog/genie/microblog.php -text
-microblog/images/microblog-24.png -text
-microblog/images/microblog-64.png -text
-microblog/images/microblog.png -text
-microblog/inc/micro_notifications.php -text
-microblog/inc/microblog.php -text
-microblog/lang/microblog_fr.php -text
-microblog/microblog_fonctions.php -text
-microblog/modeles/microblog_forumposte.html -text
-microblog/modeles/microblog_instituerarticle.html -text
-microblog/modeles/microblog_update.html -text
-microblog/plugin.xml -text
-microblog/prive/exec/configurer_microblog.html -text
-microblog/prive/style_prive_plugin_microblog.html -text
 /plugin.xml -text
 test/verifier.html -text
 verifier/date.php -text
diff --git a/facteur/base/facteur.php b/facteur/base/facteur.php
deleted file mode 100644
index 8ae4ccc..0000000
--- a/facteur/base/facteur.php
+++ /dev/null
@@ -1,82 +0,0 @@
-<?php
-/*
- * Plugin Facteur
- * (c) 2009-2010 Collectif SPIP
- * Distribue sous licence GPL
- *
- */
-
-function facteur_upgrade($nom_meta_base_version, $version_cible){
-	$current_version = "0.0";
-
-	if (isset($GLOBALS['meta'][$nom_meta_base_version])) {
-		$current_version = $GLOBALS['meta'][$nom_meta_base_version];
-	}
-
-	if ($current_version=="0.0" OR isset($GLOBALS['meta']['spip_notifications_version']) ) {
-		// reprendre la config de l'ancien nommage
-		if (isset($GLOBALS['meta']['spip_notifications_version'])) {
-			ecrire_meta('facteur_smtp', $GLOBALS['meta']['spip_notifications_smtp']);
-			ecrire_meta('facteur_smtp_auth', $GLOBALS['meta']['spip_notifications_smtp_auth']);
-			ecrire_meta('facteur_smtp_secure', $GLOBALS['meta']['spip_notifications_smtp_secure']);
-			ecrire_meta('facteur_smtp_sender', $GLOBALS['meta']['spip_notifications_smtp_sender']);
-			ecrire_meta('facteur_filtre_images', $GLOBALS['meta']['spip_notifications_filtre_images']);
-			ecrire_meta('facteur_filtre_css', $GLOBALS['meta']['spip_notifications_filtre_css']);
-			ecrire_meta('facteur_filtre_iso_8859', $GLOBALS['meta']['spip_notifications_filtre_iso_8859']);
-			ecrire_meta('facteur_adresse_envoi', $GLOBALS['meta']['spip_notifications_adresse_envoi']);
-			ecrire_meta('facteur_adresse_envoi_nom', $GLOBALS['meta']['spip_notifications_adresse_envoi_nom']);
-			ecrire_meta('facteur_adresse_envoi_email', $GLOBALS['meta']['spip_notifications_adresse_envoi_email']);
-			// supprimer l'ancien nommage
-			effacer_meta('spip_notifications_smtp');
-			effacer_meta('spip_notifications_smtp_auth');
-			effacer_meta('spip_notifications_smtp_secure');
-			effacer_meta('spip_notifications_smtp_sender');
-			effacer_meta('spip_notifications_filtre_images');
-			effacer_meta('spip_notifications_filtre_css');
-			effacer_meta('spip_notifications_filtre_iso_8859');
-			effacer_meta('spip_notifications_adresse_envoi');
-			effacer_meta('spip_notifications_adresse_envoi_nom');
-			effacer_meta('spip_notifications_adresse_envoi_email');
-			effacer_meta('spip_notifications_version');
-			// KEZAKO ?
-			include_spip('base/abstract_sql');
-			sql_drop_table('spip_notifications', true);
-		} else {
-			ecrire_meta('facteur_smtp', 'non');
-			ecrire_meta('facteur_smtp_auth', 'non');
-			ecrire_meta('facteur_smtp_secure', 'non');
-			ecrire_meta('facteur_smtp_sender', '');
-			ecrire_meta('facteur_filtre_images', 1);
-			ecrire_meta('facteur_filtre_css', 1);
-			ecrire_meta('facteur_filtre_iso_8859', 1);
-			ecrire_meta('facteur_adresse_envoi', 'non');
-		}
-		ecrire_meta($nom_meta_base_version, $current_version=$version_cible);
-	}
-
-	if (version_compare($current_version,"1.1","<")){
-		// version compatible php4
-		ecrire_meta($nom_meta_base_version,$current_version="1.1");
-	}
-}
-
-
-function facteur_vider_tables($nom_meta_base_version) {
-	// cfg la dessus, ca serait mieux !
-	effacer_meta('facteur_version');
-	effacer_meta('facteur_smtp');
-	effacer_meta('facteur_smtp_auth');
-	effacer_meta('facteur_smtp_secure');
-	effacer_meta('facteur_smtp_sender');
-	effacer_meta('facteur_filtre_images');
-	effacer_meta('facteur_filtre_css');
-	effacer_meta('facteur_filtre_iso_8859');
-	effacer_meta('facteur_adresse_envoi');
-	effacer_meta('facteur_adresse_envoi_nom');
-	effacer_meta('facteur_adresse_envoi_email');
-	effacer_meta($nom_meta_base_version);
-}
-
-
-
-?>
diff --git a/facteur/classes/facteur.php b/facteur/classes/facteur.php
deleted file mode 100644
index 694269b..0000000
--- a/facteur/classes/facteur.php
+++ /dev/null
@@ -1,476 +0,0 @@
-<?php
-/*
- * Plugin Facteur
- * (c) 2009-2010 Collectif SPIP
- * Distribue sous licence GPL
- *
- */
-
-include_spip('inc/charsets');
-include_spip('inc/filtres');
-
-if (intval(phpversion()) == 5) {
-	include_spip('phpmailer-php5/class.phpmailer');
-	include_spip('phpmailer-php5/class.smtp');
-} else {
-	include_spip('phpmailer-php4/class.phpmailer');
-	include_spip('phpmailer-php4/class.smtp');
-}
-include_spip('facteur_fonctions');
-
-class Facteur extends PHPMailer {
-
-	function Facteur($email, $objet, $message_html, $message_texte) {
-
-		if ($GLOBALS['meta']['facteur_adresse_envoi'] == 'oui'
-		  AND $GLOBALS['meta']['facteur_adresse_envoi_email'])
-			$this->From = $GLOBALS['meta']['facteur_adresse_envoi_email'];
-		else
-			$this->From = $GLOBALS['meta']['email_webmaster'];
-
-		if ($GLOBALS['meta']['facteur_adresse_envoi'] == 'oui'
-		  AND $GLOBALS['meta']['facteur_adresse_envoi_nom'])
-			$this->FromName = $GLOBALS['meta']['facteur_adresse_envoi_nom'];
-		else
-			$this->FromName = strip_tags(extraire_multi($GLOBALS['meta']['nom_site']));
-
-		$this->CharSet = "utf-8";
-		$this->Mailer = 'mail';
-		$this->Subject = unicode_to_utf_8(charset2unicode($objet,$GLOBALS['meta']['charset']));
-
-		//Pour un envoi multiple de mail, $email doit être un tableau avec les adresses.
-		if (is_array($email)) {
-			foreach ($email as $cle => $adresseMail) {
-				$this->AddAddress($adresseMail);
-			}
-		}
-		else
-			$this->AddAddress($email);
-
-		if (isset($GLOBALS['meta']['facteur_smtp_sender'])) {
-			$this->Sender = $GLOBALS['meta']['facteur_smtp_sender'];
-			$this->AddCustomHeader("Errors-To: ".$this->Sender);
-		}
-
-		if (isset($GLOBALS['meta']['facteur_smtp']) AND $GLOBALS['meta']['facteur_smtp'] == 'oui') {
-			$this->Mailer	= 'smtp';
-			$this->Host 	= $GLOBALS['meta']['facteur_smtp_host'];
-			$this->Port 	= $GLOBALS['meta']['facteur_smtp_port'];
-			if ($GLOBALS['meta']['facteur_smtp_auth'] == 'oui') {
-				$this->SMTPAuth = true;
-				$this->Username = $GLOBALS['meta']['facteur_smtp_username'];
-				$this->Password = $GLOBALS['meta']['facteur_smtp_password'];
-			}
-			else {
-				$this->SMTPAuth = false;
-			}
-			if (intval(phpversion()) == 5) {
-			if ($GLOBALS['meta']['facteur_smtp_secure'] == 'ssl')
-				$this->SMTPSecure = 'ssl';
-			if ($GLOBALS['meta']['facteur_smtp_secure'] == 'tls')
-				$this->SMTPSecure = 'tls';
-			}
-		}
-
-		if (!empty($message_html)) {
-			$message_html = unicode_to_utf_8(charset2unicode($message_html,$GLOBALS['meta']['charset']));
-			$this->Body = $message_html;
-			$this->IsHTML(true);
-			if ($GLOBALS['meta']['facteur_filtre_css'])
-				$this->ConvertirStylesEnligne();
-			if ($GLOBALS['meta']['facteur_filtre_images'])
-				$this->JoindreImagesHTML();
-			$this->UrlsAbsolues();
-		}
-		if (!empty($message_texte)) {
-			$message_texte = unicode_to_utf_8(charset2unicode($message_texte,$GLOBALS['meta']['charset']));
-			if (!$this->Body) {
-				$this->IsHTML(false);
-				$this->Body = $message_texte;
-			}
-			else {
-				$this->AltBody = $message_texte;
-			}
-		}
-
-		if ($GLOBALS['meta']['facteur_filtre_iso_8859'])
-			$this->ConvertirUtf8VersIso8859();
-
-	}
-	
-	/*
-	 * Transforme du HTML en texte brut, mais proprement, c'est-à-dire en essayant
-	 * de garder les titrages, les listes, etc
-	 *
-	 * @param string $html Le HTML à transformer
-	 * @return string Retourne un texte brut formaté correctement
-	 */
-	function html2text($html){
-		// On remplace tous les sauts de lignes par un espace
-		$html = str_replace("\n", ' ', $html);
-		
-		// Supprimer tous les liens internes
-		$texte = preg_replace("/\<a href=['\"]#(.*?)['\"][^>]*>(.*?)<\/a>/ims", "\\2", $html);
-	
-		// Supprime feuille style
-		$texte = preg_replace(";<style[^>]*>[^<]*</style>;i", "", $texte);
-	
-		// Remplace tous les liens	
-		$texte = preg_replace("/\<a[^>]*href=['\"](.*?)['\"][^>]*>(.*?)<\/a>/ims", "\\2 (\\1)", $texte);
-	
-		// Les titres
-		$texte = preg_replace(";<h1[^>]*>;i", "\n= ", $texte);
-		$texte = str_replace("</h1>", " =\n\n", $texte);
-		$texte = preg_replace(";<h2[^>]*>;i", "\n== ", $texte);
-		$texte = str_replace("</h2>", " ==\n\n", $texte);
-		$texte = preg_replace(";<h3[^>]*>;i", "\n=== ", $texte);
-		$texte = str_replace("</h3>", " ===\n\n", $texte);
-		
-		// Une fin de liste
-		$texte = preg_replace(";</(u|o)l>;i", "\n\n", $texte);
-		
-		// Une saut de ligne *après* le paragraphe
-		$texte = preg_replace(";<p[^>]*>;i", "\n", $texte);
-		$texte = preg_replace(";</p>;i", "\n\n", $texte);
-		// Les sauts de ligne interne
-		$texte = preg_replace(";<br[^>]*>;i", "\n", $texte);
-	
-		//$texte = str_replace('<br /><img class=\'spip_puce\' src=\'puce.gif\' alt=\'-\' border=\'0\'>', "\n".'-', $texte);
-		$texte = preg_replace (';<li[^>]*>;i', "\n".'- ', $texte);
-	
-	
-		// accentuation du gras
-		// <b>texte</b> -> **texte**
-		$texte = preg_replace (';<b[^>]*>;i','**' ,$texte);
-		$texte = str_replace ('</b>','**' ,$texte);
-	
-		// accentuation du gras
-		// <strong>texte</strong> -> **texte**
-		$texte = preg_replace (';<strong[^>]*>;i','**' ,$texte);
-		$texte = str_replace ('</strong>','**' ,$texte);
-	
-	
-		// accentuation de l'italique
-		// <em>texte</em> -> *texte*
-		$texte = preg_replace (';<em[^>]*>;i','/' ,$texte);
-		$texte = str_replace ('</em>','*' ,$texte);
-		
-		// accentuation de l'italique
-		// <i>texte</i> -> *texte*
-		$texte = preg_replace (';<i[^>]*>;i','/' ,$texte);
-		$texte = str_replace ('</i>','*' ,$texte);
-	
-		$texte = str_replace('&oelig;', 'oe', $texte);
-		$texte = str_replace("&nbsp;", " ", $texte);
-		$texte = filtrer_entites($texte);
-	
-		// On supprime toutes les balises restantes
-		$texte = supprimer_tags($texte);
-	
-		$texte = str_replace("\x0B", "", $texte); 
-		$texte = str_replace("\t", "", $texte) ;
-		$texte = preg_replace(";[ ]{3,};", "", $texte);
-	
-		// espace en debut de ligne
-		$texte = preg_replace("/(\r\n|\n|\r)[ ]+/", "\n", $texte);
-	
-		//marche po
-		// Bring down number of empty lines to 4 max
-		$texte = preg_replace("/(\r\n|\n|\r){3,}/m", "\n\n", $texte);
-	
-		//saut de lignes en debut de texte
-		$texte = preg_replace("/^(\r\n|\n|\r)*/", "\n\n", $texte);
-		//saut de lignes en debut ou fin de texte
-		$texte = preg_replace("/(\r\n|\n|\r)*$/", "\n\n", $texte);
-	
-		// Faire des lignes de 75 caracteres maximum
-		//$texte = wordwrap($texte);
-	
-		return $texte;
-	}
-	
-	/**
-	 * Transformer les urls des liens et des images en url absolues
-	 * sans toucher aux images embarquees de la forme "cid:..."
-	 */
-	function UrlsAbsolues(){
-		include_spip('inc/filtres_mini');
-		if (preg_match_all(',(<(a|link)[[:space:]]+[^<>]*href=["\']?)([^"\' ><[:space:]]+)([^<>]*>),imsS',
-		$this->Body, $liens, PREG_SET_ORDER)) {
-			foreach ($liens as $lien) {
-				if (strncmp($lien[3],"cid:",4)!==0){
-					$abs = url_absolue($lien[3], $base);
-					if ($abs <> $lien[3] and !preg_match('/^#/',$lien[3]))
-						$this->Body = str_replace($lien[0], $lien[1].$abs.$lien[4], $this->Body);
-				}
-			}
-		}
-		if (preg_match_all(',(<(img|script)[[:space:]]+[^<>]*src=["\']?)([^"\' ><[:space:]]+)([^<>]*>),imsS',
-		$this->Body, $liens, PREG_SET_ORDER)) {
-			foreach ($liens as $lien) {
-				if (strncmp($lien[3],"cid:",4)!==0){
-					$abs = url_absolue($lien[3], $base);
-					if ($abs <> $lien[3])
-						$this->Body = str_replace($lien[0], $lien[1].$abs.$lien[4], $this->Body);
-				}
-			}
-		}
-	}
-
-	function JoindreImagesHTML() {
-		$image_types = array(
-							'gif'	=> 'image/gif',
-							'jpg'	=> 'image/jpeg',
-							'jpeg'	=> 'image/jpeg',
-							'jpe'	=> 'image/jpeg',
-							'bmp'	=> 'image/bmp',
-							'png'	=> 'image/png',
-							'tif'	=> 'image/tiff',
-							'tiff'	=> 'image/tiff',
-							'swf'	=> 'application/x-shockwave-flash'
-						);
-		while (list($key,) = each($image_types))
-			$extensions[] = $key;
-
-		preg_match_all('/["\'](([^"\']+)\.('.implode('|', $extensions).'))([?][^"\']+)?["\']/Ui', $this->Body, $images, PREG_SET_ORDER);
-
-		$html_images = array();
-		foreach($images as $im){
-			if (!preg_match(",^[a-z0-9]+://,i",$im[1])
-			 AND ($src = $im[1].$im[4])
-			 AND (
-			      file_exists($f=$im[1]) // l'image a ete generee depuis le meme cote que l'envoi
-			      OR (_DIR_RACINE AND file_exists($f=_DIR_RACINE.$im[1])) // l'image a ete generee dans le public et on est dans le prive
-			      OR (!_DIR_RACINE AND strncmp($im[1],"../",3)==0 AND file_exists($f=substr($im[1],3))) // l'image a ete generee dans le prive et on est dans le public
-			     )
-			 AND !isset($html_images[$src])){
-
-				$extension = strtolower($im[3]);
-				$header_extension = $image_types[$extension];
-				$cid = md5($f); // un id unique pour un meme fichier
-				// l'ajouter si pas deja present (avec un autre ?...)
-				if (!in_array($cid,$html_images))
-					$this->AddEmbeddedImage($f, $cid, basename($f),'base64',$header_extension);
-				$this->Body = str_replace($src, "cid:$cid", $this->Body);
-				$html_images[$src] = $cid; // marquer l'image comme traitee, inutile d'y revenir
-			}
-		}
-	}
-
-
-	function ConvertirStylesEnligne() {
-		/*
-
-		Written by Eric Dols - edols@auditavenue.com
-
-		You may freely use or modify this, provided
-		you leave credits to the original coder.
-		Feedback about (un)successfull uses, bugs and improvements done
-		are much appreciated, but don't expect actual support.
-
-		PURPOSE OF THIS FUNCTION
-			It is designed to process html emails relying
-			on a css stylesheet placed in the <head> for layout in
-			order to enhance compatibility with email clients,
-			including webmail services.
-			Provided you use minimal css, you can keep styling separate
-			from the content in your email template, and let this function
-			"inject" those styles inline in your email html tags on-the-fly,
-			just before sending.
-			Technically, it grabs the style declarations found in the
-			<head> section and inserts each declaration inline,
-			inside the corresponding html tags in the email message.
-
-			Supports both HTML and XHTML markup seamlessly. Thus
-			tolerant to email message writers using non-xhtml tag,
-			even when template is xhtml compliant (e.g. they would
-			add <img ...> instead of a xhtml compliant <img ... />).
-
-		NEW 10 dec. 2003:
-			- code revised, including a few regexp bugs fixed.
-			- multiple class for a tag are now allowed <p class="firstclass secondclass">
-			- all unsupported css styles are now moved to the body section (not just a:hover etc...)
-
-		USE
-			Add this function to a function library include, like "inline.inc"
-			and include it near the beginning of your php page:
-			require ("inline.inc");
-
-			load the html source of message into a variable
-			like $html_source and process it using:
-			$html_source = sheet2inline($html_source)
-
-
-		STYLE DEFINITIONS SUPPORTED
-			TAG { ... }
-			TAG1, TAG2, ... { ... }
-			TAG.class { ... }
-			.class { ...)
-			TAG:pseudo { ... }
-
-
-			CSS definitions may be freely formatted (spaces, tabs, linefeeds...),
-			they are converted to oneliners before inserting them inline in the html tags.
-
-			.class definitions are processed AFTER tag definitions,
-			thus appended inline after any existing tag styling to
-			preserve the normal css priority behavior.
-
-			Existing style="..." attributes in tags are NOT stripped. However they MUST
-			be with double quotes. If not, an addtional style="..." attribute will be added
-
-
-		KNOWN LIMITATIONS
-			- style info should be placed in <head> section. I believe
-				it shouldnt be too hard to modify to point to an external
-				stylesheet instead.
-			- no support (yet?):
-				* chains like P UL LI { .... } or P UL LI.class { .... }
-				* #divname p { ... } and <tag id="...">
-				* a:hover, a:visited {...} multiple class:pseudo
-				They require a significantly more complicated processing likely
-				based on stylesheet and document trees parsing.
-				Many email clients don't handle more than what is supported
-				by this script anyway.
-			- pseudo-classes like a:hover {...} can't be inserted inline
-				in the html tags: they are moved to a <style> declaration in
-				the <body> instead. This is a limitation from html, not this script.
-			- It is still up to you to check if target email clients render
-				your css styled templates correctly, especially webmail services
-				like Hotmail, in which the email becomes a sub-part of an html page,
-				with styles already in place.
-		*/
-
-		// variables to be accessed in the callback sub-function too
-		global $styledefinition, $styletag, $styleclass;
-
-		// Let's first load the stylesheet information in a $styles array using a regexp
-		preg_match_all ( "/^[ \t]*([.]?)([\w, #]+)([.:])?(\S*)\s+{([^}]+)}/mi", $this->Body , $styles);
-		/*
-			$styles[1] = . or ''  => .class or tag (empty)
-			$styles[2] = name of class or tag(s)
-			$styles[3] = : . or '' => followed by pseudo-element, class separator or nothing (empty)
-			$styles[4] = name of pseudo-element after a tag, if any
-			$styles[5] = the style definition itself, i.e. what's between the { }
-		*/
-
-		// Now loop through the styles found and act accordingly;
-
-		// process TAG {...} & TAG1, TAG2,... {...} definitions only first by order of appearance
-		foreach ($styles[1] as $i => $type) {
-			if ($type=="" && $styles[3][$i]=="") {
-				$styledefinition = trim($styles[5][$i]);
-				$styletag = preg_replace("/ *, */", "|", trim($styles[2][$i])); //echo $styletag."<br />";
-				$styleclass = "";
-				// process TAG {...} and TAG1, TAG2 {...} but not TAG1 TAG2 {...} or #divname styles
-				if (!preg_match("/ /", $styletag) && !preg_match("/#/", $styletag)) {
-					$pattern = "!<(".$styletag.")([^>]*(?= /)|[^>]*)( /)?>!mi";
-					$this->Body = preg_replace_callback ($pattern, 'facteur_addstyle' , $this->Body);
-					$styles[6][$i]=1; // mark as injected inline
-				}
-			}
-		}
-
-		// append additional .CLASS {...} and TAG.CLASS {...} styling by order of appearance
-		// important to do so after TAG {...} definitions, so that class attributes override TAG styles when needed
-		foreach ($styles[1] as $i => $type) {
-			if ($type!="." && $styles[3][$i]=="." ) {	// class definition for a specific tag
-				$styledefinition = trim($styles[5][$i]);
-				$styletag = trim($styles[2][$i]);
-				$styleclass = trim($styles[4][$i]);
-				$pattern = "!<(".$styletag.")([^>]* class\=['\"][^'\"]*".$styleclass."[^'\"]*['\"][^>]*(?= /)|[^>]* class\=['\"][^'\"]*".$styleclass."[^'\"]*['\"][^>]*)( />)?>!mi";
-				$this->Body = preg_replace_callback ($pattern, 'facteur_addstyle' , $this->Body);
-				$styles[6][$i]=1; // mark as injected inline
-
-			}
-			elseif ($type=="." && $styles[3][$i]=="" ) {	// general class definition for any tag
-				$styledefinition = trim($styles[5][$i]);
-				$styletag = "";
-				$styleclass = trim($styles[2][$i]);
-				$pattern = "!<(\w+)([^>]* class\=['\"]".$styleclass."['\"][^>]*(?= /)|[^>]* class\=['\"]".$styleclass."['\"][^>]*)( />)?>!mi";
-				$this->Body = preg_replace_callback ($pattern, 'facteur_addstyle' , $this->Body);
-				$styles[6][$i]=1; // mark as injected inline
-			}
-		}
-
-
-		/* move all style declarations that weren't injected from <head> to a <body> <style> section,
-			 including but not limited to:
-			 - pseudo-classes like a:hover {...} as they can't be set inline
-			 - declaration chains like UL LI {...}
-			 - #divname {...}. These are not supported by email clients like Mac/Entourage anyway, it seems. */
-		foreach ($styles[1] as $i => $type) {
-			if ($styles[6][$i]=="") {
-				// add a <style type="text/css"> section after <body> if there's isn't one yet
-				if (preg_match ("!<body[^>]*>\s*<style!mi", $this->Body)==0) {
-					$this->Body = preg_replace ("/(<body[^>]*>)/i", "\n\$1\n".'<style type="text/css">'."\n<!--\n-->\n</style>\n", $this->Body);
-				}
-				// append a copy of the pseudo-element declaration to that body style section
-				$styledefinition = trim($styles[5][$i]);
-				$styledefinition = preg_replace ("!\s+!mi", " ", $styledefinition ); // convert style definition to a one-liner (optional)
-				$declaration = $styles[1][$i].trim($styles[2][$i]).$styles[3][$i].trim($styles[4][$i])." { ".$styledefinition." }";
-				$this->Body = preg_replace ("!(<body[^>]*>\s*<style[^>]*>\s*<\!\-\-[^>]*)"."(\s*\-\->\s*</style>)!si", "\$1".$declaration."\n\$2", $this->Body);
-				$styles[6][$i]= 2; // mark as moved to <style> section in <body>
-			}
-		}
-
-		// remove stylesheet declaration(s) from <head> section (comment following line out if not wanted)
-		//$this->Body = preg_replace ("!(<head>.*)<style type.*</style>(.*</head>)!si", "\$1\$2" , $this->Body);
-
-		// check what styles have been injected
-#			print_r($styles);
-
-	}
-
-
-	function safe_utf8_decode($text,$mode='texte_brut') {
-		if (!is_utf8($text))
-			return ($text);
-
-		if (function_exists('iconv') && $mode == 'texte_brut') {
-			return iconv("UTF-8", "ISO-8859-1//TRANSLIT", $text);
-		}
-		else {
-			if ($mode == 'texte_brut')
-				$text = str_replace('’',"'",$text);
-			return unicode2charset(utf_8_to_unicode($text),'iso-8859-1');
-		}
-	}
-
-	function ConvertirUtf8VersIso8859() {
-		$this->CharSet	= 'iso-8859-1';
-		$this->Body		= str_replace('charset=utf-8', 'charset=iso-8859-1', $this->Body);
-		$this->Body		= $this->safe_utf8_decode($this->Body,'html');
-		$this->AltBody	= $this->safe_utf8_decode($this->AltBody);
-		$this->Subject	= $this->safe_utf8_decode($this->Subject);
-		$this->FromName	= $this->safe_utf8_decode($this->FromName);
-	}
-
-	function ConvertirAccents() {
-		// tableau à compléter au fur et à mesure
-		$cor = array(
-						'à' => '&agrave;',
-						'â' => '&acirc;',
-						'ä' => '&auml;',
-						'ç' => '&ccedil;',
-						'é' => '&eacute;',
-						'è' => '&egrave;',
-						'ê' => '&ecirc;',
-						'ë' => '&euml;',
-						'î' => '&icirc;',
-						'ï' => '&iuml;',
-						'ò' => '&ograve;',
-						'ô' => '&ocirc;',
-						'ö' => '&ouml;',
-						'ù' => '&ugrave;',
-						'û' => '&ucirc;',
-						'Å“' => '&oelig;',
-						'€' => '&euro;'
-					);
-
-		$this->Body = strtr($this->Body, $cor);
-	}
-
-}
-
-?>
diff --git a/facteur/emails/css.html b/facteur/emails/css.html
deleted file mode 100644
index ace3aa9..0000000
--- a/facteur/emails/css.html
+++ /dev/null
@@ -1,63 +0,0 @@
-<style type="text/css" media="screen">
-.faux_body {
-	background-color: #fff;
-	font-size: 12px;
-	font-family: verdana, sans-serif;
-}
-
-.titre {
-	text-align: center;
-	color: #000;
-	font-size: 24px;
-}
-
-h2 {
-	font-size: 18px;
-}
-
-h3 {
-	font-size: 16px;
-	clear: both;
-}
-
-a {
-	text-decoration: none;
-}
-
-a:hover {
-	text-decoration: underline;
-}
-
-a:visited {
-}
-
-.spip_documents_left {
-	float: left;
-	margin-right: 10px;
-}
-
-.spip_documents_center {
-	display: block;
-	text-align: center;
-	margin: 10px 0;
-}
-
-.spip_documents_right {
-	float: right;
-	margin-left: 10px;
-}
-
-.petit {
-	padding-top: 20px;
-	text-align: center;
-	font-size: 10px;
-}
-
-ul {
-	clear: both;
-}
-
-.invisible {
-	color: #eee;
-}
-</style>
\ No newline at end of file
diff --git a/facteur/emails/inc-bas.html b/facteur/emails/inc-bas.html
deleted file mode 100644
index b8a8c19..0000000
--- a/facteur/emails/inc-bas.html
+++ /dev/null
@@ -1,22 +0,0 @@
-</td>
-<td width="20" style="background-color: #fff;">&nbsp;</td>
-</tr>
-[<tr>
-<td colspan="3" width="580" style="background-color: #fff;"><a href="#URL_SITE_SPIP" title="[(#DESCRIPTIF_SITE_SPIP|textebrut)]"><img src="(#LOGO_NOTIFICATION_SURVOL||extraire_attribut{src})" alt="[(#NOM_SITE_SPIP|textebrut)]" border="0" width="[(#LOGO_NOTIFICATION_SURVOL||extraire_attribut{width})]" height="[(#LOGO_NOTIFICATION_SURVOL||extraire_attribut{height})]" /></a></td>
-</tr>
-]<tr>
-<td colspan="3" width="580" height="20">&nbsp;</td>
-</tr>
-</table>
-
-
-</center>
-
-
-</div><!-- fin faux_body -->
-
-
-</body>
-
-
-</html>
\ No newline at end of file
diff --git a/facteur/emails/inc-haut.html b/facteur/emails/inc-haut.html
deleted file mode 100644
index 21f4ee1..0000000
--- a/facteur/emails/inc-haut.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" dir="#LANG_DIR" xml:lang="#LANG" lang="#LANG">
-
-
-<head>
-<meta http-equiv="content-type" content="text/html; charset=#CHARSET" />
-<meta name="language" content="#LANG" />
-<INCLURE {fond=emails/css}>
-</head>
-
-
-<body>
-
-
-<div class="faux_body">
-	
-
-<center>
-
-
-<table border="0" cellspacing="0" cellpadding="0">
-<tr>
-<td colspan="3" width="580" height="10">&nbsp;</td>
-</tr>
-[<tr>
-<td colspan="3" width="580" style="background-color: #fff; text-align: center;"><a class="titre" href="#URL_SITE_SPIP" title="[(#DESCRIPTIF_SITE_SPIP|textebrut)]"><img class="titre" src="(#LOGO_NOTIFICATION_NORMAL||extraire_attribut{src})" alt="[(#NOM_SITE_SPIP|textebrut)]" border="0" width="[(#LOGO_NOTIFICATION_NORMAL||extraire_attribut{width})]" height="[(#LOGO_NOTIFICATION_NORMAL||extraire_attribut{height})]" /></a></td>
-</tr>
-]<tr>
-<td width="20" style="background-color: #fff;">&nbsp;</td>
-<td width="540" style="background-color: #fff;">
diff --git a/facteur/emails/test_email_html.html b/facteur/emails/test_email_html.html
deleted file mode 100644
index 3b5bbf1..0000000
--- a/facteur/emails/test_email_html.html
+++ /dev/null
@@ -1,28 +0,0 @@
-#HTTP_HEADER{Content-Type:text/html}
-#INCLURE{fond=emails/inc-haut}
-
-<h2><:facteur:corps_email_de_test:></h2>
-
-<p><:facteur:version_html:></p>
-
-<BOUCLE_art(ARTICLES){texte==<img}{0,1}>
-		#TEXTE
-		<hr />
-		#NOTES
-</BOUCLE_art>
-	<BOUCLE_art2(ARTICLES){0,1}>
-		#TEXTE
-		<hr />
-		#NOTES
-	</BOUCLE_art2>
-<//B_art>
-
-<BOUCLE_image(DOCUMENTS){extension IN jpg,png,gif}{0,1}>
-	#MODELE{img}
-</BOUCLE_image>
-
-<BOUCLE_pdf(DOCUMENTS){extension=pdf}{0,1}>
-	#MODELE{doc}
-</BOUCLE_pdf>
-
-#INCLURE{fond=emails/inc-bas}
\ No newline at end of file
diff --git a/facteur/emails/test_email_texte.html b/facteur/emails/test_email_texte.html
deleted file mode 100644
index e8953af..0000000
--- a/facteur/emails/test_email_texte.html
+++ /dev/null
@@ -1,12 +0,0 @@
-<:facteur:corps_email_de_test:>
---------------------------------
-
-<:facteur:version_texte:>
-
-<BOUCLE_art(ARTICLES){texte==<img}{0,1}>
-		[(#TEXTE|textebrut)]
-</BOUCLE_art>
-	<BOUCLE_art2(ARTICLES){0,1}>
-			[(#TEXTE|textebrut)]
-	</BOUCLE_art2>
-<//B_art>
diff --git a/facteur/exec/facteur.php b/facteur/exec/facteur.php
deleted file mode 100644
index ce1bbf9..0000000
--- a/facteur/exec/facteur.php
+++ /dev/null
@@ -1,49 +0,0 @@
-<?php
-/*
- * Plugin Facteur
- * (c) 2009-2010 Collectif SPIP
- * Distribue sous licence GPL
- *
- */
-
-if (!defined("_ECRIRE_INC_VERSION")) return;
-include_spip('inc/presentation');
-include_spip('inc/config');
-include_spip('inc/meta');
-include_spip('classes/facteur');
-
-
-function exec_facteur() {
-
-	if (!autoriser('configurer', 'facteur')) {
-		include_spip('inc/minipres');
-		echo minipres();
-		exit;
-	}
-
-	pipeline('exec_init',array('args'=>array('exec'=>'facteur'),'data'=>''));
-
-	$commencer_page = charger_fonction('commencer_page', 'inc');
-	echo $commencer_page(_T('titre_configuration'), "configuration", "configuration");
-
-	echo "<br /><br /><br />\n";
-	echo gros_titre(_T('titre_configuration'),'',false);
-	echo barre_onglets("configuration", "facteur");
-
-	echo debut_gauche('', true);
-
-	echo pipeline('affiche_gauche',array('args'=>array('exec'=>'facteur'),'data'=>''));
-
-	echo debut_droite('', true);
-
-	echo pipeline('affiche_milieu', array('args'=>array('exec'=>'facteur'),
-		'data'=>recuperer_fond("prive/configurer_facteur", $_GET)));
-
-	echo fin_gauche();
-
-	echo fin_page();
-
-}
-
-
-?>
\ No newline at end of file
diff --git a/facteur/facteur_fonctions.php b/facteur/facteur_fonctions.php
deleted file mode 100644
index b6b731e..0000000
--- a/facteur/facteur_fonctions.php
+++ /dev/null
@@ -1,62 +0,0 @@
-<?php
-/*
- * Plugin Facteur
- * (c) 2009-2010 Collectif SPIP
- * Distribue sous licence GPL
- *
- */
-
-
-include_spip('inc/texte');
-include_spip('classes/facteur');
-
-
-/**
- * facteur_addstyle
- *
- * @author Eric Dols
- **/
-function facteur_addstyle($matches) {
-
-	// $matches[1]=tag, $matches[2]=tag attributes (if any), $matches[3]=xhtml closing (if any)
-
-	// variables values set in calling function
-	global $styledefinition, $styletag, $styleclass;
-
-	// convert the style definition to a one-liner
-	$styledefinition = preg_replace ("!\s+!mi", " ", $styledefinition );
-	// convert all double-quotes to single-quotes
-	$styledefinition = preg_replace ('/"/','\'', $styledefinition );
-
-	if (preg_match ("/style\=/i", $matches[2])) {
-			// add styles to existing style attribute if any already in the tag
-			$pattern = "!(.* style\=)[\"]([^\"]*)[\"](.*)!mi";
-			$replacement = "\$1".'"'."\$2 ".$styledefinition.'"'."\$3";
-			$attributes = preg_replace ($pattern, $replacement , $matches[2]);
-	} else {
-			// otherwise add new style attribute to tag (none was present)
-			$attributes = $matches[2].' style="'.$styledefinition.'"';
-	}
-
-	if ($styleclass!="") {
-		// if we were injecting a class style, remove the now useless class attribute from the html tag
-
-		// Single class in tag case (class="classname"): remove class attribute altogether
-		$pattern = "!(.*) class\=['\"]".$styleclass."['\"](.*)!mi";
-		$replacement = "\$1\$2";
-		$attributes = preg_replace ( $pattern, $replacement, $attributes);
-
-		// Multiple classes in tag case (class="classname anotherclass..."): remove class name from class attribute.
-		// classes are injected inline and removed by order of appearance in <head> stylesheet
-		// exact same behavior as where last declared class attributes in <style> take over (IE6 tested only)
-		$pattern = "!(.* class\=['\"][^\"]*)(".$styleclass." | ".$styleclass.")([^\"]*['\"].*)!mi";
-		$replacement = "\$1\$3";
-		$attributes = preg_replace ( $pattern, $replacement, $attributes);
-
-	}
-
-	return "<".$matches[1].$attributes.$matches[3].">";
-}
-
-
-?>
diff --git a/facteur/formulaires/configurer_facteur.html b/facteur/formulaires/configurer_facteur.html
deleted file mode 100644
index d914d8f..0000000
--- a/facteur/formulaires/configurer_facteur.html
+++ /dev/null
@@ -1,177 +0,0 @@
-<div class="formulaire_spip formulaire_configurer formulaire_#FORM">
-	<h3 class="titrem"><:facteur:configuration_facteur:></h3>
-	[<p class="reponse_formulaire reponse_formulaire_ok">(#ENV*{message_ok})</p>]
-	[<p class="reponse_formulaire reponse_formulaire_erreur">(#ENV*{message_erreur})</p>]
-
-	[(#ENV{tester,''}|oui)
-	<iframe style='width:95%;height:500px;margin:10px;' src='#URL_PAGE{emails/test_email_html,var_mode=calcul}'></iframe>
-	]
-	<form method="post" action="#ENV{action}"><div>
-		#ACTION_FORMULAIRE{#ENV{action}}
-		<ul>
-			<li class="fieldset">
-				<fieldset>
-					<legend><:facteur:configuration_adresse_envoi:></legend>
-					<ul>
-						<li class="editer_facteur_adresse_envoi [ (#ENV**{erreurs}|table_valeur{facteur_adresse_envoi}|oui)erreur]">
-							[<span class='erreur_message'>(#ENV**{erreurs}|table_valeur{facteur_adresse_envoi})</span>]
-							<div class="choix">
-								<input type="radio" name="facteur_adresse_envoi" class="radio" value="non" id="facteur_adresse_envoi_non"[(#ENV{facteur_adresse_envoi,'non'}|=={non}|oui)checked="checked"]/>
-								<label for="facteur_adresse_envoi_non"><:facteur:utiliser_reglages_site:></label>
-							</div>
-							<div class="choix">
-								<input type="radio" name="facteur_adresse_envoi" class="radio" value="oui" id="facteur_adresse_envoi_oui"[(#ENV{facteur_adresse_envoi,'non'}|=={oui}|oui)checked="checked"]/>
-								<label for="facteur_adresse_envoi_oui"><:facteur:personnaliser:></label>
-							</div>
-						</li>
-						<li class="editer_facteur_adresse_envoi_perso editer_facteur_adresse_envoi_nom [ (#ENV**{erreurs}|table_valeur{facteur_adresse_envoi_nom}|oui)erreur]"[(#ENV{facteur_adresse_envoi,'non'}|=={non}|oui)style='display:none;']>
-							<label for="facteur_adresse_envoi_nom"><:facteur:facteur_adresse_envoi_nom:></label>[
-							<span class='erreur_message'>(#ENV**{erreurs}|table_valeur{facteur_adresse_envoi_nom})</span>]
-							<input type="text" name="facteur_adresse_envoi_nom" class="text" value="#ENV**{facteur_adresse_envoi_nom}" id="facteur_adresse_envoi_nom" />
-						</li>
-						<li class="editer_facteur_adresse_envoi_perso editer_facteur_adresse_envoi_email [ (#ENV**{erreurs}|table_valeur{facteur_adresse_envoi_email}|oui)erreur]"[(#ENV{facteur_adresse_envoi,'non'}|=={non}|oui)style='display:none;']>
-							<label for="facteur_adresse_envoi_email"><:facteur:facteur_adresse_envoi_email:></label>[
-							<span class='erreur_message'>(#ENV**{erreurs}|table_valeur{facteur_adresse_envoi_email})</span>]
-							<input type="text" name="facteur_adresse_envoi_email" class="text" value="#ENV**{facteur_adresse_envoi_email}" id="facteur_adresse_envoi_email" />
-						</li>
-					</ul>
-				</fieldset>
-			</li>
-			<li class="fieldset">
-				<fieldset>
-					<legend><:facteur:configuration_mailer:></legend>
-					<ul>
-						<li class="editer_facteur_smtp [ (#ENV**{erreurs}|table_valeur{facteur_smtp}|oui)erreur]">
-							<label><:facteur:configuration_smtp:></label>
-							<p class="explication"><:facteur:configuration_smtp_descriptif:></p>
-							[<span class='erreur_message'>(#ENV**{erreurs}|table_valeur{facteur_smtp})</span>]
-							<div class="choix">
-								<input type="radio" name="facteur_smtp" class="radio" value="non" id="facteur_smtp_non"[(#ENV{facteur_smtp,'non'}|=={non}|oui)checked="checked"]/>
-								<label for="facteur_smtp_non"><:facteur:utiliser_mail:></label>
-							</div>
-							<div class="choix">
-								<input type="radio" name="facteur_smtp" class="radio" value="oui" id="facteur_smtp_oui"[(#ENV{facteur_smtp,'non'}|=={oui}|oui)checked="checked"]/>
-								<label for="facteur_smtp_oui"><:facteur:utiliser_smtp:></label>
-							</div>
-						</li>
-						<li class="editer_facteur_smtp_param editer_facteur_smtp_host [ (#ENV**{erreurs}|table_valeur{facteur_smtp_host}|oui)erreur]"[(#ENV{facteur_smtp,'non'}|=={non}|oui)style='display:none;']>
-							<label for="facteur_smtp_host"><:facteur:facteur_smtp_host:></label>[
-							<span class='erreur_message'>(#ENV**{erreurs}|table_valeur{facteur_smtp_host})</span>]
-							<input type="text" name="facteur_smtp_host" class="text" value="#ENV**{facteur_smtp_host}" id="facteur_smtp_host" />
-						</li>
-						<li class="editer_facteur_smtp_param editer_facteur_smtp_port [ (#ENV**{erreurs}|table_valeur{facteur_smtp_port}|oui)erreur]"[(#ENV{facteur_smtp,'non'}|=={non}|oui)style='display:none;']>
-							<label for="facteur_smtp_port"><:facteur:facteur_smtp_port:></label>[
-							<span class='erreur_message'>(#ENV**{erreurs}|table_valeur{facteur_smtp_port})</span>]
-							<input type="text" name="facteur_smtp_port" class="text" value="#ENV**{facteur_smtp_port}" id="facteur_smtp_port" />
-						</li>
-						<li class="editer_facteur_smtp_param editer_facteur_smtp_auth [ (#ENV**{erreurs}|table_valeur{facteur_smtp_auth}|oui)erreur]"[(#ENV{facteur_smtp,'non'}|=={non}|oui)style='display:none;']>
-							<label><:facteur:facteur_smtp_auth:></label>
-							[<span class='erreur_message'>(#ENV**{erreurs}|table_valeur{facteur_smtp_auth})</span>]
-							<div class="choix">
-								<input type="radio" name="facteur_smtp_auth" class="radio" value="non" id="facteur_smtp_auth_non"[(#ENV{facteur_smtp_auth,'non'}|=={non}|oui)checked="checked"]/>
-								<label for="facteur_smtp_auth_non"><:facteur:facteur_smtp_auth_non:></label>
-							</div>
-							<div class="choix">
-								<input type="radio" name="facteur_smtp_auth" class="radio" value="oui" id="facteur_smtp_auth_oui"[(#ENV{facteur_smtp_auth,'non'}|=={oui}|oui)checked="checked"]/>
-								<label for="facteur_smtp_auth_oui"><:facteur:facteur_smtp_auth_oui:></label>
-							</div>
-							<ul id="smtp-auth"[(#ENV{facteur_smtp_auth,'non'}|=={non}|oui)style='display:none;']>
-								<li class="editer_facteur_smtp_username [ (#ENV**{erreurs}|table_valeur{facteur_smtp_username}|oui)erreur]">
-									<label for="facteur_smtp_username"><:facteur:facteur_smtp_username:></label>[
-									<span class='erreur_message'>(#ENV**{erreurs}|table_valeur{facteur_smtp_username})</span>]
-									<input type="text" name="facteur_smtp_username" class="text" value="#ENV**{facteur_smtp_username}" id="facteur_smtp_username" />
-								</li>
-								<li class="editer_facteur_smtp_password [ (#ENV**{erreurs}|table_valeur{facteur_smtp_password}|oui)erreur]">
-									<label for="facteur_smtp_password"><:facteur:facteur_smtp_password:></label>[
-									<span class='erreur_message'>(#ENV**{erreurs}|table_valeur{facteur_smtp_password})</span>]
-									<input type="password" name="facteur_smtp_password" class="text" value="#ENV**{facteur_smtp_password}" id="facteur_smtp_password" />
-								</li>
-							</ul>
-						</li>
-						[(#ENV{_enable_smtp_secure}|oui)
-						<li class="editer_facteur_smtp_param editer_facteur_smtp_secure [ (#ENV**{erreurs}|table_valeur{facteur_smtp_secure}|oui)erreur]"[(#ENV{facteur_smtp,'non'}|=={non}|oui)style='display:none;']>
-							<label><:facteur:facteur_smtp_secure:></label>
-							[<span class='erreur_message'>(#ENV**{erreurs}|table_valeur{facteur_smtp_secure})</span>]
-							<div class="choix">
-								<input type="radio" name="facteur_smtp_secure" class="radio" value="non" id="facteur_smtp_secure_non"[(#ENV{facteur_smtp_secure,'non'}|=={non}|oui)checked="checked"]/>
-								<label for="facteur_smtp_secure_non"><:facteur:facteur_smtp_secure_non:></label>
-							</div>
-							<div class="choix">
-								<input type="radio" name="facteur_smtp_secure" class="radio" value="ssl" id="facteur_smtp_secure_ssl"[(#ENV{facteur_smtp_secure,'non'}|=={ssl}|oui)checked="checked"]/>
-								<label for="facteur_smtp_secure_ssl"><:facteur:facteur_smtp_secure_ssl:></label>
-							</div>
-							<div class="choix">
-								<input type="radio" name="facteur_smtp_secure" class="radio" value="tls" id="facteur_smtp_secure_tls"[(#ENV{facteur_smtp_secure,'non'}|=={tls}|oui)checked="checked"]/>
-								<label for="facteur_smtp_secure_tls"><:facteur:facteur_smtp_secure_tls:></label>
-							</div>
-						</li>]
-						<li class="editer_facteur_smtp_sender [ (#ENV**{erreurs}|table_valeur{facteur_smtp_sender}|oui)erreur]">
-							<label for="facteur_smtp_sender"><:facteur:facteur_smtp_sender:></label>[
-							<span class='erreur_message'>(#ENV**{erreurs}|table_valeur{facteur_smtp_sender})</span>]
-							<p class="explication"><:facteur:facteur_smtp_sender_descriptif:></p>
-							<input type="text" name="facteur_smtp_sender" class="text" value="#ENV**{facteur_smtp_sender}" id="facteur_smtp_sender" />
-						</li>
-					</ul>
-				</fieldset>
-			</li>
-			<li class="fieldset">
-				<fieldset>
-					<legend><:facteur:facteur_filtres:></legend>
-					<ul>
-						<li class="editer_facteur_filtres[ (#ENV**{erreurs}|table_valeur{facteur_filtres}|oui)erreur]">
-							<label><:facteur:facteur_smtp_secure:></label>
-							[<span class='erreur_message'>(#ENV**{erreurs}|table_valeur{facteur_smtp_secure})</span>]
-							<p class="explication"><:facteur:facteur_filtres_descriptif:></p>
-							<div class="choix">
-								<input type="checkbox" name="facteur_filtre_images" class="checkbox" value="1" id="facteur_filtre_images"[(#ENV{facteur_filtre_images,''}|=={1}|oui)checked="checked"]/>
-								<label for="facteur_filtre_images"><:facteur:facteur_filtre_images:></label>
-							</div>
-							<div class="choix">
-								<input type="checkbox" name="facteur_filtre_css" class="checkbox" value="1" id="facteur_filtre_css"[(#ENV{facteur_filtre_css,''}|=={1}|oui)checked="checked"]/>
-								<label for="facteur_filtre_css"><:facteur:facteur_filtre_css:></label>
-							</div>
-							<div class="choix">
-								<input type="checkbox" name="facteur_filtre_iso_8859" class="checkbox" value="1" id="facteur_filtre_iso_8859"[(#ENV{facteur_filtre_iso_8859,''}|=={1}|oui)checked="checked"]/>
-								<label for="facteur_filtre_iso_8859"><:facteur:facteur_filtre_iso_8859:></label>
-							</div>
-						</li>
-					</ul>
-				</fieldset>
-			</li>
-		</ul>
-		<p class="boutons">
-			<input type="submit" name="valider" class="submit" value="<:valider:>" />
-		</p>
-		<h3 class="titrem"><:facteur:tester_la_configuration:></h3>
-		<p class="explication"><:facteur:note_test_configuration:></p>
-		<p class="boutons">
-			<input type="submit" name="tester" class="submit" value="<:facteur:tester:>" />
-		</p>
-
-	</div></form>
-</div>
-<script type="text/javascript">
-jQuery(function(){
-	jQuery('input[name=facteur_adresse_envoi]').change(function(){
-			if (jQuery(this).attr('value')=='oui')
-				jQuery('.editer_facteur_adresse_envoi_perso').show('fast');
-			else
-				jQuery('.editer_facteur_adresse_envoi_perso').hide('fast');
-	});
-	jQuery('input[name=facteur_smtp]').change(function(){
-			if (jQuery(this).attr('value')=='oui')
-				jQuery('.editer_facteur_smtp_param').show('fast');
-			else
-				jQuery('.editer_facteur_smtp_param').hide('fast');
-	});
-	jQuery('input[name=facteur_smtp_auth]').change(function(){
-			if (jQuery(this).attr('value')=='oui')
-				jQuery('#smtp-auth').show('fast');
-			else
-				jQuery('#smtp-auth').hide('fast');
-	});
-
-
-
-})
-</script>
diff --git a/facteur/formulaires/configurer_facteur.php b/facteur/formulaires/configurer_facteur.php
deleted file mode 100644
index d092120..0000000
--- a/facteur/formulaires/configurer_facteur.php
+++ /dev/null
@@ -1,150 +0,0 @@
-<?php
-/*
- * Plugin Facteur
- * (c) 2009-2010 Collectif SPIP
- * Distribue sous licence GPL
- *
- */
-
-
-function formulaires_configurer_facteur_charger_dist(){
-	$valeurs = array(
-		'facteur_adresse_envoi' => $GLOBALS['meta']['facteur_adresse_envoi'],
-		'facteur_adresse_envoi_nom' => $GLOBALS['meta']['facteur_adresse_envoi_nom'],
-		'facteur_adresse_envoi_email' => $GLOBALS['meta']['facteur_adresse_envoi_email'],
-		'facteur_smtp' => $GLOBALS['meta']['facteur_smtp'],
-		'facteur_smtp_host' => $GLOBALS['meta']['facteur_smtp_host'],
-		'facteur_smtp_port' => $GLOBALS['meta']['facteur_smtp_port']?$GLOBALS['meta']['facteur_smtp_port']:'25',
-		'facteur_smtp_auth' => $GLOBALS['meta']['facteur_smtp_auth'],
-		'facteur_smtp_username' => $GLOBALS['meta']['facteur_smtp_username'],
-		'facteur_smtp_password' => $GLOBALS['meta']['facteur_smtp_password'],
-		'facteur_smtp_secure' => $GLOBALS['meta']['facteur_smtp_secure'],
-		'facteur_smtp_sender' => $GLOBALS['meta']['facteur_smtp_sender'],
-		'facteur_filtre_images' => $GLOBALS['meta']['facteur_filtre_images'],
-		'facteur_filtre_css' => $GLOBALS['meta']['facteur_filtre_css'],
-		'facteur_filtre_iso_8859' => $GLOBALS['meta']['facteur_filtre_iso_8859'],
-		'_enable_smtp_secure' => (intval(phpversion()) == 5)?' ':'',
-		'tester' => '',
-	);
-
-	return $valeurs;
-}
-
-function formulaires_configurer_facteur_verifier_dist(){
-	$erreurs = array();
-	if ($email = _request('facteur_adresse_envoi_email')
-	  AND !email_valide($email)) {
-		$erreurs['facteur_adresse_envoi_email'] = _T('form_email_non_valide');
-		set_request('facteur_adresse_envoi','oui');
-	}
-	if (_request('facteur_smtp')=='oui'){
-		if (!($h=_request('facteur_smtp_host')))
-			$erreurs['facteur_smtp_host'] = _T('info_obligatoire');
-		else {
-			$long = ip2long($h); // cas ou on a rentre une ip directe
-			if ($long == false OR $long == -1){ // ce n'est pas une IP
-				if(!preg_match(';^([^.\s/?:]+[.]){0,2}[^.\s/?:]+$;',$h)
-				  OR gethostbyname($h)==$h)
-					$erreurs['facteur_smtp_host'] = _T('facteur:erreur_invalid_host');
-			}
-			else {
-				if (gethostbyaddr($h)==$h)
-					$erreurs['facteur_smtp_host'] = _T('facteur:erreur_invalid_host');				
-			}
-		}
-		if (!($p=_request('facteur_smtp_port')))
-			$erreurs['facteur_smtp_port'] = _T('info_obligatoire');
-		elseif(!preg_match(';^[0-9]+$;',$p) OR !intval($p))
-			$erreurs['facteur_smtp_port'] = _T('facteur:erreur_invalid_port');
-
-		if (!_request('facteur_smtp_auth'))
-			$erreurs['facteur_smtp_auth'] = _T('info_obligatoire');
-
-		if (_request('facteur_smtp_auth')=='oui'){
-			if (!_request('facteur_smtp_username'))
-				$erreurs['facteur_smtp_username'] = _T('info_obligatoire');
-			if (!_request('facteur_smtp_password'))
-				$erreurs['facteur_smtp_password'] = _T('info_obligatoire');
-		}
-	}
-	return $erreurs;
-}
-
-function formulaires_configurer_facteur_traiter_dist(){
-	include_spip('inc/meta');
-
-	$facteur_adresse_envoi = _request('facteur_adresse_envoi');
-	ecrire_meta('facteur_adresse_envoi', ($facteur_adresse_envoi=='oui')?'oui':'non');
-
-	$facteur_adresse_envoi_nom = _request('facteur_adresse_envoi_nom');
-	ecrire_meta('facteur_adresse_envoi_nom', $facteur_adresse_envoi_nom?$facteur_adresse_envoi_nom:'');
-
-	$facteur_adresse_envoi_email = _request('facteur_adresse_envoi_email');
-	ecrire_meta('facteur_adresse_envoi_email', $facteur_adresse_envoi_email?$facteur_adresse_envoi_email:'');
-
-	$facteur_smtp = _request('facteur_smtp');
-	ecrire_meta('facteur_smtp', ($facteur_smtp=='oui')?'oui':'non');
-
-	$facteur_smtp_host = _request('facteur_smtp_host');
-	ecrire_meta('facteur_smtp_host', $facteur_smtp_host?$facteur_smtp_host:'');
-
-	$facteur_smtp_port = _request('facteur_smtp_port');
-	ecrire_meta('facteur_smtp_port', strlen($facteur_smtp_port)?intval($facteur_smtp_port):'');
-
-	$facteur_smtp_auth = _request('facteur_smtp_auth');
-	ecrire_meta('facteur_smtp_auth', ($facteur_smtp_auth=='oui')?'oui':'non');
-
-	$facteur_smtp_username = _request('facteur_smtp_username');
-	ecrire_meta('facteur_smtp_username', $facteur_smtp_username);
-
-	$facteur_smtp_password = _request('facteur_smtp_password');
-	ecrire_meta('facteur_smtp_password', $facteur_smtp_password);
-
-	if (intval(phpversion()) == 5) {
-		$facteur_smtp_secure = _request('facteur_smtp_secure');
-		ecrire_meta('facteur_smtp_secure', in_array($facteur_smtp_secure,array('non','ssl','tls'))?$facteur_smtp_secure:'non');
-	}
-
-	$facteur_smtp_sender = _request('facteur_smtp_sender');
-	ecrire_meta('facteur_smtp_sender', $facteur_smtp_sender);
-
-	ecrire_meta('facteur_filtre_images', intval(_request('facteur_filtre_images')));
-	ecrire_meta('facteur_filtre_css', intval(_request('facteur_filtre_css')));
-	ecrire_meta('facteur_filtre_iso_8859', intval(_request('facteur_filtre_iso_8859')));
-
-	$res = array('message_ok'=>_T('facteur:config_info_enregistree'));
-
-	// faut-il envoyer un message de test ?
-	if (_request('tester')){
-
-		if ($GLOBALS['meta']['facteur_adresse_envoi'] == 'oui'
-		  AND $GLOBALS['meta']['facteur_adresse_envoi_email'])
-			$destinataire = $GLOBALS['meta']['facteur_adresse_envoi_email'];
-		else
-			$destinataire = $GLOBALS['meta']['email_webmaster'];
-
-		if (($e=facteur_envoyer_mail_test($destinataire,_T('facteur:corps_email_de_test')))===true){
-			// OK
-			$res = array('message_ok'=>_T('facteur:email_test_envoye'));
-		}
-		else {
-			// erreur
-			$res = array('message_erreur'=>_T('facteur:erreur')." $e");
-		}
-	}
-	
-	return $res;
-}
-
-function facteur_envoyer_mail_test($destinataire,$titre){
-	include_spip('classes/facteur');
-	$message_html	= recuperer_fond('emails/test_email_html', array());
-	$message_texte	= recuperer_fond('emails/test_email_texte', array());
-
-	$facteur = new Facteur($destinataire, $titre, $message_html, $message_texte);
-	if (!$facteur->Send())
-		return $test->ErrorInfo;
-	else
-		return true;
-}
-?>
\ No newline at end of file
diff --git a/facteur/inc/envoyer_mail.php b/facteur/inc/envoyer_mail.php
deleted file mode 100644
index af4ab1a..0000000
--- a/facteur/inc/envoyer_mail.php
+++ /dev/null
@@ -1,62 +0,0 @@
-<?php
-/*
- * Plugin Facteur
- * (c) 2009-2010 Collectif SPIP
- * Distribue sous licence GPL
- *
- */
-
-
-include_spip('classes/facteur');
-// inclure le fichier natif de SPIP, pour les fonctions annexes
-include_once _DIR_RESTREINT."inc/envoyer_mail.php";
-
-function inc_envoyer_mail($destinataire, $sujet, $corps, $from = "", $headers = "") {
-	$message_html	= '';
-	$message_texte	= '';
-
-	// si $corps est un tableau -> fonctionnalites etendues
-	// avec entrees possible : html, texte, pieces_jointes, nom_envoyeur
-	if (is_array($corps)) {
-		$message_html	= $corps['html'];
-		$message_texte	= nettoyer_caracteres_mail($corps['texte']);
-		$pieces_jointes	= $corps['pieces_jointes'];
-		$nom_envoyeur = $corps['nom_envoyeur'];
-	} 
-	// si $corps est une chaine -> compat avec la fonction native SPIP
-	// gerer le cas ou le corps est du html avec un Content-Type: text/html dans les headers
-	else {
-		if (preg_match(',Content-Type:\s*text/html,ims',$headers)){
-			$message_html	= $corps;
-		}
-		else {
-			$message_texte	= nettoyer_caracteres_mail($corps);
-		}
-	}
-	$sujet = nettoyer_titre_email($sujet);
-	// mode TEST : forcer l'email
-	if (defined('_TEST_EMAIL_DEST')) {
-		if (!_TEST_EMAIL_DEST)
-			return false;
-		else
-			$destinataire = _TEST_EMAIL_DEST;
-	}
-
-	$facteur = new Facteur($destinataire, $sujet, $message_html, $message_texte);
-	if (!empty($from))
-		$facteur->From = $from;
-	if ($nom_envoyeur)
-		$facteur->FromName = $nom_envoyeur;
-	if (count($pieces_jointes)) {
-		foreach ($pieces_jointes as $piece) {
-			$facteur->AddAttachment($piece['chemin'], $piece['nom'], $piece['encodage'], $piece['mime']);
-		}
-	}
-	$head = $facteur->CreateHeader();
-	spip_log("mail via facteur\n$head\n",'mail');
-	spip_log("mail\n$head\n",'facteur');
-	return $facteur->Send();
-}
-
-
-?>
diff --git a/facteur/inc/facteur_autorisations.php b/facteur/inc/facteur_autorisations.php
deleted file mode 100644
index 19ef082..0000000
--- a/facteur/inc/facteur_autorisations.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<?php
-/*
- * Plugin Facteur
- * (c) 2009-2010 Collectif SPIP
- * Distribue sous licence GPL
- *
- */
-
-
-function facteur_autoriser() {}
-
-
-function autoriser_facteur_dist($faire, $type, $id, $qui, $opt) {
-	switch ($faire) {
-		case 'onglet':
-		case 'configurer':
-		case 'editer':
-			return ($qui['statut'] == '0minirezo');
-			break;
-		default:
-			return false;
-			break;
-	}
-}
-
-?>
\ No newline at end of file
diff --git a/facteur/inc/facteur_classes.php b/facteur/inc/facteur_classes.php
deleted file mode 100644
index 5ebee4d..0000000
--- a/facteur/inc/facteur_classes.php
+++ /dev/null
@@ -1,15 +0,0 @@
-<?php
-/*
- * Plugin Facteur
- * (c) 2009-2010 Collectif SPIP
- * Distribue sous licence GPL
- *
- */
-
-/*
- * Compatibilite avec plugins faisant un appel direct a ce fichier
- */
-include_spip('classes/facteur');
-
-
-?>
\ No newline at end of file
diff --git a/facteur/lang/facteur_en.php b/facteur/lang/facteur_en.php
deleted file mode 100644
index cc50302..0000000
--- a/facteur/lang/facteur_en.php
+++ /dev/null
@@ -1,52 +0,0 @@
-<?php
-
-$GLOBALS[$GLOBALS['idx_lang']] = array(
-
-'configuration_facteur' => 'Postman',
-'configuration_adresse_envoi' => "Sender's address",
-'utiliser_reglages_site' => "Use the site's settings : the email address is the webmaster's one and the name of the website is the name of the sender",
-'personnaliser' => "Customize",
-'facteur_adresse_envoi_nom' => "Name :",
-'facteur_adresse_envoi_email' => "Email :",
-'configuration_mailer' => 'Mailer\'s configuration',
-'configuration_smtp' => 'Choose your mailer',
-'configuration_smtp_descriptif' => 'If you\'re not sure about the settings, leave them set to "PHP mail".',
-'config_info_enregistree' => 'Postman\'s configuration is now saved',
-'utiliser_mail' => 'Use mail function from PHP',
-'utiliser_smtp' => 'Use SMTP',
-'erreur_invalid_host' => 'This host name is not valid',
-'erreur_invalid_port' => 'This port number is not valid',
-'facteur_smtp_host' => 'Host :',
-'facteur_smtp_port' => 'Port :',
-'facteur_smtp_auth' => 'Requires authentication :',
-'facteur_smtp_auth_oui' => 'yes',
-'facteur_smtp_auth_non' => 'no',
-'facteur_smtp_username' => 'Username :',
-'facteur_smtp_password' => 'Paswword :',
-'facteur_smtp_secure' => 'Secure :',
-'facteur_smtp_secure_non' => 'no',
-'facteur_smtp_secure_ssl' => 'SSL',
-'facteur_smtp_secure_tls' => 'TLS',
-'facteur_smtp_sender' => 'Return-Path (optional)',
-'facteur_smtp_sender_descriptif' => 'Define the Return-Path in the mail header, useful for error feedback, also in SMTP mode it defines the sender\'s email.',
-'facteur_filtres' => "Filters",
-'facteur_filtres_descriptif' => "Some filters can be applied before sending an email.",
-'facteur_filtre_images' => "Embed images referenced in emails",
-'facteur_filtre_css' => "Transform styles present between &lt;head&gt; and &lt;/head&gt; into inline styles, useful for webmails because inline styles overwrite external styles.",
-'facteur_filtre_accents' => "Transform accents into their html entities (useful for Hotmail).",
-'facteur_filtre_iso_8859' => "Convert to ISO-8859-1",
-'valider' => "Submit",
-'tester_la_configuration' => "Test the config",
-'note_test_configuration' => "A test email will be sent to the \"sender\".",
-'corps_email_de_test' => "This is a test email",
-'version_html' => "HTML version.",
-'version_texte' => "Text version.",
-'tester' => "Test",
-'erreur' => "Error",
-'email_test_envoye' => "The test email has been sent without error!",
-
-'Z' => 'ZZzZZzzz'
-
-);
-
-?>
\ No newline at end of file
diff --git a/facteur/lang/facteur_fr.php b/facteur/lang/facteur_fr.php
deleted file mode 100644
index 6922e16..0000000
--- a/facteur/lang/facteur_fr.php
+++ /dev/null
@@ -1,52 +0,0 @@
-<?php
-
-$GLOBALS[$GLOBALS['idx_lang']] = array(
-
-'configuration_facteur' => 'Facteur',
-'configuration_adresse_envoi' => "Configuration de l'adresse d'envoi",
-'utiliser_reglages_site' => "Utiliser les r&eacute;glages du site SPIP : le nom affich&eacute; sera le nom du site SPIP et l'adresse email sera celle du webmaster",
-'personnaliser' => "Personnaliser ces r&eacute;glages",
-'facteur_adresse_envoi_nom' => "Nom :",
-'facteur_adresse_envoi_email' => "Email :",
-'configuration_mailer' => 'Configuration du mailer',
-'configuration_smtp' => 'Choix du mailer',
-'configuration_smtp_descriptif' => 'Si vous n\'&ecirc;tes pas s&ucirc;rs, choisissez la fonction mail de PHP.',
-'config_info_enregistree' => 'La configuration du facteur a bien été enregistrée',
-'utiliser_mail' => 'Utiliser la fonction mail de PHP',
-'utiliser_smtp' => 'Utiliser SMTP',
-'erreur_invalid_host' => 'Ce nom d\'h&ocirc;te n\'est pas correct',
-'erreur_invalid_port' => 'Ce num&eacute;ro de port n\'est pas correct',
-'facteur_smtp_host' => 'Hôte :',
-'facteur_smtp_port' => 'Port :',
-'facteur_smtp_auth' => 'Requiert une authentification :',
-'facteur_smtp_auth_oui' => 'oui',
-'facteur_smtp_auth_non' => 'non',
-'facteur_smtp_username' => 'Nom d\'utilisateur :',
-'facteur_smtp_password' => 'Mot de passe :',
-'facteur_smtp_secure' => 'Connexion s&eacute;curis&eacute;e :',
-'facteur_smtp_secure_non' => 'non',
-'facteur_smtp_secure_ssl' => 'SSL',
-'facteur_smtp_secure_tls' => 'TLS',
-'facteur_smtp_sender' => 'Retour des erreurs (optionnel)',
-'facteur_smtp_sender_descriptif' => 'D&eacute;finit dans l\'ent&ecirc;te du mail l\'adresse email de retour des erreurs (ou Return-Path), et lors d\'un envoi via la m&eacute;thode SMTP cela d&eacute;finit aussi l\'adresse de l\'envoyeur.',
-'facteur_filtres' => "Filtres",
-'facteur_filtres_descriptif' => "Des filtres peuvent &ecirc;tre appliqu&eacute;s aux emails au moment de l'envoi.",
-'facteur_filtre_images' => "Embarquer les images r&eacute;f&eacute;renc&eacute;es dans les emails",
-'facteur_filtre_css' => "Transformer les styles contenus entre &lt;head&gt; et &lt;/head&gt; en des styles \"en ligne\", utile pour les webmails car les styles en ligne ont la priorit&eacute; sur les styles externes.",
-'facteur_filtre_accents' => "Transformer les accents en leur entit&eacute;s html (utile pour Hotmail notamment).",
-'facteur_filtre_iso_8859' => "Convertir en ISO-8859-1",
-'valider' => "Valider",
-'tester_la_configuration' => "Tester la configuration",
-'note_test_configuration' => "Un email sera envoy&eacute;e &agrave; l'adresse d'envoi d&eacute;finie (ou celle du webmaster).",
-'corps_email_de_test' => "Ceci est un email de test accentué",  // Laisser tel quel, car
-'version_html' => "Version HTML.",
-'version_texte' => "Version texte.",
-'tester' => "Tester",
-'erreur' => "Erreur",
-'email_test_envoye' => "L'email de test a bien &eacute;t&eacute; envoy&eacute; !",
-
-'Z' => 'ZZzZZzzz'
-
-);
-
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php4/LICENSE b/facteur/phpmailer-php4/LICENSE
deleted file mode 100644
index 03851a3..0000000
--- a/facteur/phpmailer-php4/LICENSE
+++ /dev/null
@@ -1,504 +0,0 @@
-		  GNU LESSER GENERAL PUBLIC LICENSE
-		       Version 2.1, February 1999
-
- Copyright (C) 1991, 1999 Free Software Foundation, Inc.
-     59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-[This is the first released version of the Lesser GPL.  It also counts
- as the successor of the GNU Library Public License, version 2, hence
- the version number 2.1.]
-
-			    Preamble
-
-  The licenses for most software are designed to take away your
-freedom to share and change it.  By contrast, the GNU General Public
-Licenses are intended to guarantee your freedom to share and change
-free software--to make sure the software is free for all its users.
-
-  This license, the Lesser General Public License, applies to some
-specially designated software packages--typically libraries--of the
-Free Software Foundation and other authors who decide to use it.  You
-can use it too, but we suggest you first think carefully about whether
-this license or the ordinary General Public License is the better
-strategy to use in any particular case, based on the explanations below.
-
-  When we speak of free software, we are referring to freedom of use,
-not price.  Our General Public Licenses are designed to make sure that
-you have the freedom to distribute copies of free software (and charge
-for this service if you wish); that you receive source code or can get
-it if you want it; that you can change the software and use pieces of
-it in new free programs; and that you are informed that you can do
-these things.
-
-  To protect your rights, we need to make restrictions that forbid
-distributors to deny you these rights or to ask you to surrender these
-rights.  These restrictions translate to certain responsibilities for
-you if you distribute copies of the library or if you modify it.
-
-  For example, if you distribute copies of the library, whether gratis
-or for a fee, you must give the recipients all the rights that we gave
-you.  You must make sure that they, too, receive or can get the source
-code.  If you link other code with the library, you must provide
-complete object files to the recipients, so that they can relink them
-with the library after making changes to the library and recompiling
-it.  And you must show them these terms so they know their rights.
-
-  We protect your rights with a two-step method: (1) we copyright the
-library, and (2) we offer you this license, which gives you legal
-permission to copy, distribute and/or modify the library.
-
-  To protect each distributor, we want to make it very clear that
-there is no warranty for the free library.  Also, if the library is
-modified by someone else and passed on, the recipients should know
-that what they have is not the original version, so that the original
-author's reputation will not be affected by problems that might be
-introduced by others.
-
-  Finally, software patents pose a constant threat to the existence of
-any free program.  We wish to make sure that a company cannot
-effectively restrict the users of a free program by obtaining a
-restrictive license from a patent holder.  Therefore, we insist that
-any patent license obtained for a version of the library must be
-consistent with the full freedom of use specified in this license.
-
-  Most GNU software, including some libraries, is covered by the
-ordinary GNU General Public License.  This license, the GNU Lesser
-General Public License, applies to certain designated libraries, and
-is quite different from the ordinary General Public License.  We use
-this license for certain libraries in order to permit linking those
-libraries into non-free programs.
-
-  When a program is linked with a library, whether statically or using
-a shared library, the combination of the two is legally speaking a
-combined work, a derivative of the original library.  The ordinary
-General Public License therefore permits such linking only if the
-entire combination fits its criteria of freedom.  The Lesser General
-Public License permits more lax criteria for linking other code with
-the library.
-
-  We call this license the "Lesser" General Public License because it
-does Less to protect the user's freedom than the ordinary General
-Public License.  It also provides other free software developers Less
-of an advantage over competing non-free programs.  These disadvantages
-are the reason we use the ordinary General Public License for many
-libraries.  However, the Lesser license provides advantages in certain
-special circumstances.
-
-  For example, on rare occasions, there may be a special need to
-encourage the widest possible use of a certain library, so that it becomes
-a de-facto standard.  To achieve this, non-free programs must be
-allowed to use the library.  A more frequent case is that a free
-library does the same job as widely used non-free libraries.  In this
-case, there is little to gain by limiting the free library to free
-software only, so we use the Lesser General Public License.
-
-  In other cases, permission to use a particular library in non-free
-programs enables a greater number of people to use a large body of
-free software.  For example, permission to use the GNU C Library in
-non-free programs enables many more people to use the whole GNU
-operating system, as well as its variant, the GNU/Linux operating
-system.
-
-  Although the Lesser General Public License is Less protective of the
-users' freedom, it does ensure that the user of a program that is
-linked with the Library has the freedom and the wherewithal to run
-that program using a modified version of the Library.
-
-  The precise terms and conditions for copying, distribution and
-modification follow.  Pay close attention to the difference between a
-"work based on the library" and a "work that uses the library".  The
-former contains code derived from the library, whereas the latter must
-be combined with the library in order to run.
-
-		  GNU LESSER GENERAL PUBLIC LICENSE
-   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
-  0. This License Agreement applies to any software library or other
-program which contains a notice placed by the copyright holder or
-other authorized party saying it may be distributed under the terms of
-this Lesser General Public License (also called "this License").
-Each licensee is addressed as "you".
-
-  A "library" means a collection of software functions and/or data
-prepared so as to be conveniently linked with application programs
-(which use some of those functions and data) to form executables.
-
-  The "Library", below, refers to any such software library or work
-which has been distributed under these terms.  A "work based on the
-Library" means either the Library or any derivative work under
-copyright law: that is to say, a work containing the Library or a
-portion of it, either verbatim or with modifications and/or translated
-straightforwardly into another language.  (Hereinafter, translation is
-included without limitation in the term "modification".)
-
-  "Source code" for a work means the preferred form of the work for
-making modifications to it.  For a library, complete source code means
-all the source code for all modules it contains, plus any associated
-interface definition files, plus the scripts used to control compilation
-and installation of the library.
-
-  Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope.  The act of
-running a program using the Library is not restricted, and output from
-such a program is covered only if its contents constitute a work based
-on the Library (independent of the use of the Library in a tool for
-writing it).  Whether that is true depends on what the Library does
-and what the program that uses the Library does.
-  
-  1. You may copy and distribute verbatim copies of the Library's
-complete source code as you receive it, in any medium, provided that
-you conspicuously and appropriately publish on each copy an
-appropriate copyright notice and disclaimer of warranty; keep intact
-all the notices that refer to this License and to the absence of any
-warranty; and distribute a copy of this License along with the
-Library.
-
-  You may charge a fee for the physical act of transferring a copy,
-and you may at your option offer warranty protection in exchange for a
-fee.
-
-  2. You may modify your copy or copies of the Library or any portion
-of it, thus forming a work based on the Library, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
-    a) The modified work must itself be a software library.
-
-    b) You must cause the files modified to carry prominent notices
-    stating that you changed the files and the date of any change.
-
-    c) You must cause the whole of the work to be licensed at no
-    charge to all third parties under the terms of this License.
-
-    d) If a facility in the modified Library refers to a function or a
-    table of data to be supplied by an application program that uses
-    the facility, other than as an argument passed when the facility
-    is invoked, then you must make a good faith effort to ensure that,
-    in the event an application does not supply such function or
-    table, the facility still operates, and performs whatever part of
-    its purpose remains meaningful.
-
-    (For example, a function in a library to compute square roots has
-    a purpose that is entirely well-defined independent of the
-    application.  Therefore, Subsection 2d requires that any
-    application-supplied function or table used by this function must
-    be optional: if the application does not supply it, the square
-    root function must still compute square roots.)
-
-These requirements apply to the modified work as a whole.  If
-identifiable sections of that work are not derived from the Library,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works.  But when you
-distribute the same sections as part of a whole which is a work based
-on the Library, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote
-it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Library.
-
-In addition, mere aggregation of another work not based on the Library
-with the Library (or with a work based on the Library) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
-  3. You may opt to apply the terms of the ordinary GNU General Public
-License instead of this License to a given copy of the Library.  To do
-this, you must alter all the notices that refer to this License, so
-that they refer to the ordinary GNU General Public License, version 2,
-instead of to this License.  (If a newer version than version 2 of the
-ordinary GNU General Public License has appeared, then you can specify
-that version instead if you wish.)  Do not make any other change in
-these notices.
-
-  Once this change is made in a given copy, it is irreversible for
-that copy, so the ordinary GNU General Public License applies to all
-subsequent copies and derivative works made from that copy.
-
-  This option is useful when you wish to copy part of the code of
-the Library into a program that is not a library.
-
-  4. You may copy and distribute the Library (or a portion or
-derivative of it, under Section 2) in object code or executable form
-under the terms of Sections 1 and 2 above provided that you accompany
-it with the complete corresponding machine-readable source code, which
-must be distributed under the terms of Sections 1 and 2 above on a
-medium customarily used for software interchange.
-
-  If distribution of object code is made by offering access to copy
-from a designated place, then offering equivalent access to copy the
-source code from the same place satisfies the requirement to
-distribute the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
-  5. A program that contains no derivative of any portion of the
-Library, but is designed to work with the Library by being compiled or
-linked with it, is called a "work that uses the Library".  Such a
-work, in isolation, is not a derivative work of the Library, and
-therefore falls outside the scope of this License.
-
-  However, linking a "work that uses the Library" with the Library
-creates an executable that is a derivative of the Library (because it
-contains portions of the Library), rather than a "work that uses the
-library".  The executable is therefore covered by this License.
-Section 6 states terms for distribution of such executables.
-
-  When a "work that uses the Library" uses material from a header file
-that is part of the Library, the object code for the work may be a
-derivative work of the Library even though the source code is not.
-Whether this is true is especially significant if the work can be
-linked without the Library, or if the work is itself a library.  The
-threshold for this to be true is not precisely defined by law.
-
-  If such an object file uses only numerical parameters, data
-structure layouts and accessors, and small macros and small inline
-functions (ten lines or less in length), then the use of the object
-file is unrestricted, regardless of whether it is legally a derivative
-work.  (Executables containing this object code plus portions of the
-Library will still fall under Section 6.)
-
-  Otherwise, if the work is a derivative of the Library, you may
-distribute the object code for the work under the terms of Section 6.
-Any executables containing that work also fall under Section 6,
-whether or not they are linked directly with the Library itself.
-
-  6. As an exception to the Sections above, you may also combine or
-link a "work that uses the Library" with the Library to produce a
-work containing portions of the Library, and distribute that work
-under terms of your choice, provided that the terms permit
-modification of the work for the customer's own use and reverse
-engineering for debugging such modifications.
-
-  You must give prominent notice with each copy of the work that the
-Library is used in it and that the Library and its use are covered by
-this License.  You must supply a copy of this License.  If the work
-during execution displays copyright notices, you must include the
-copyright notice for the Library among them, as well as a reference
-directing the user to the copy of this License.  Also, you must do one
-of these things:
-
-    a) Accompany the work with the complete corresponding
-    machine-readable source code for the Library including whatever
-    changes were used in the work (which must be distributed under
-    Sections 1 and 2 above); and, if the work is an executable linked
-    with the Library, with the complete machine-readable "work that
-    uses the Library", as object code and/or source code, so that the
-    user can modify the Library and then relink to produce a modified
-    executable containing the modified Library.  (It is understood
-    that the user who changes the contents of definitions files in the
-    Library will not necessarily be able to recompile the application
-    to use the modified definitions.)
-
-    b) Use a suitable shared library mechanism for linking with the
-    Library.  A suitable mechanism is one that (1) uses at run time a
-    copy of the library already present on the user's computer system,
-    rather than copying library functions into the executable, and (2)
-    will operate properly with a modified version of the library, if
-    the user installs one, as long as the modified version is
-    interface-compatible with the version that the work was made with.
-
-    c) Accompany the work with a written offer, valid for at
-    least three years, to give the same user the materials
-    specified in Subsection 6a, above, for a charge no more
-    than the cost of performing this distribution.
-
-    d) If distribution of the work is made by offering access to copy
-    from a designated place, offer equivalent access to copy the above
-    specified materials from the same place.
-
-    e) Verify that the user has already received a copy of these
-    materials or that you have already sent this user a copy.
-
-  For an executable, the required form of the "work that uses the
-Library" must include any data and utility programs needed for
-reproducing the executable from it.  However, as a special exception,
-the materials to be distributed need not include anything that is
-normally distributed (in either source or binary form) with the major
-components (compiler, kernel, and so on) of the operating system on
-which the executable runs, unless that component itself accompanies
-the executable.
-
-  It may happen that this requirement contradicts the license
-restrictions of other proprietary libraries that do not normally
-accompany the operating system.  Such a contradiction means you cannot
-use both them and the Library together in an executable that you
-distribute.
-
-  7. You may place library facilities that are a work based on the
-Library side-by-side in a single library together with other library
-facilities not covered by this License, and distribute such a combined
-library, provided that the separate distribution of the work based on
-the Library and of the other library facilities is otherwise
-permitted, and provided that you do these two things:
-
-    a) Accompany the combined library with a copy of the same work
-    based on the Library, uncombined with any other library
-    facilities.  This must be distributed under the terms of the
-    Sections above.
-
-    b) Give prominent notice with the combined library of the fact
-    that part of it is a work based on the Library, and explaining
-    where to find the accompanying uncombined form of the same work.
-
-  8. You may not copy, modify, sublicense, link with, or distribute
-the Library except as expressly provided under this License.  Any
-attempt otherwise to copy, modify, sublicense, link with, or
-distribute the Library is void, and will automatically terminate your
-rights under this License.  However, parties who have received copies,
-or rights, from you under this License will not have their licenses
-terminated so long as such parties remain in full compliance.
-
-  9. You are not required to accept this License, since you have not
-signed it.  However, nothing else grants you permission to modify or
-distribute the Library or its derivative works.  These actions are
-prohibited by law if you do not accept this License.  Therefore, by
-modifying or distributing the Library (or any work based on the
-Library), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Library or works based on it.
-
-  10. Each time you redistribute the Library (or any work based on the
-Library), the recipient automatically receives a license from the
-original licensor to copy, distribute, link with or modify the Library
-subject to these terms and conditions.  You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties with
-this License.
-
-  11. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License.  If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Library at all.  For example, if a patent
-license would not permit royalty-free redistribution of the Library by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Library.
-
-If any portion of this section is held invalid or unenforceable under any
-particular circumstance, the balance of the section is intended to apply,
-and the section as a whole is intended to apply in other circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system which is
-implemented by public license practices.  Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
-  12. If the distribution and/or use of the Library is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Library under this License may add
-an explicit geographical distribution limitation excluding those countries,
-so that distribution is permitted only in or among countries not thus
-excluded.  In such case, this License incorporates the limitation as if
-written in the body of this License.
-
-  13. The Free Software Foundation may publish revised and/or new
-versions of the Lesser General Public License from time to time.
-Such new versions will be similar in spirit to the present version,
-but may differ in detail to address new problems or concerns.
-
-Each version is given a distinguishing version number.  If the Library
-specifies a version number of this License which applies to it and
-"any later version", you have the option of following the terms and
-conditions either of that version or of any later version published by
-the Free Software Foundation.  If the Library does not specify a
-license version number, you may choose any version ever published by
-the Free Software Foundation.
-
-  14. If you wish to incorporate parts of the Library into other free
-programs whose distribution conditions are incompatible with these,
-write to the author to ask for permission.  For software which is
-copyrighted by the Free Software Foundation, write to the Free
-Software Foundation; we sometimes make exceptions for this.  Our
-decision will be guided by the two goals of preserving the free status
-of all derivatives of our free software and of promoting the sharing
-and reuse of software generally.
-
-			    NO WARRANTY
-
-  15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
-WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
-EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
-OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
-KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
-LIBRARY IS WITH YOU.  SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
-THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
-
-  16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
-WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
-AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
-FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
-CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
-LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
-RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
-FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
-SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
-DAMAGES.
-
-		     END OF TERMS AND CONDITIONS
-
-           How to Apply These Terms to Your New Libraries
-
-  If you develop a new library, and you want it to be of the greatest
-possible use to the public, we recommend making it free software that
-everyone can redistribute and change.  You can do so by permitting
-redistribution under these terms (or, alternatively, under the terms of the
-ordinary General Public License).
-
-  To apply these terms, attach the following notices to the library.  It is
-safest to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least the
-"copyright" line and a pointer to where the full notice is found.
-
-    <one line to give the library's name and a brief idea of what it does.>
-    Copyright (C) <year>  <name of author>
-
-    This library is free software; you can redistribute it and/or
-    modify it under the terms of the GNU Lesser General Public
-    License as published by the Free Software Foundation; either
-    version 2.1 of the License, or (at your option) any later version.
-
-    This library is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-    Lesser General Public License for more details.
-
-    You should have received a copy of the GNU Lesser General Public
-    License along with this library; if not, write to the Free Software
-    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-
-Also add information on how to contact you by electronic and paper mail.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the library, if
-necessary.  Here is a sample; alter the names:
-
-  Yoyodyne, Inc., hereby disclaims all copyright interest in the
-  library `Frob' (a library for tweaking knobs) written by James Random Hacker.
-
-  <signature of Ty Coon>, 1 April 1990
-  Ty Coon, President of Vice
-
-That's all there is to it!
-
-
diff --git a/facteur/phpmailer-php4/README b/facteur/phpmailer-php4/README
deleted file mode 100644
index 5c8d658..0000000
--- a/facteur/phpmailer-php4/README
+++ /dev/null
@@ -1,102 +0,0 @@
-PHPMailer
-Full Featured Email Transfer Class for PHP
-==========================================
-
-http://phpmailer.sourceforge.net/
-
-This software is licenced under the LGPL.  Please read LICENSE for information on the
-software availability and distribution.
-
-Class Features:
-- Send emails with multiple TOs, CCs, BCCs and REPLY-TOs
-- Redundant SMTP servers
-- Multipart/alternative emails for mail clients that do not read HTML email
-- Support for 8bit, base64, binary, and quoted-printable encoding
-- Uses the same methods as the very popular AspEmail active server (COM) component
-- SMTP authentication
-- Native language support
-- Word wrap, and more!
-
-Why you might need it:
-
-Many PHP developers utilize email in their code.  The only PHP function
-that supports this is the mail() function.  However, it does not expose
-any of the popular features that many email clients use nowadays like
-HTML-based emails and attachments. There are two proprietary
-development tools out there that have all the functionality built into
-easy to use classes: AspEmail(tm) and AspMail.  Both of these
-programs are COM components only available on Windows.  They are also a
-little pricey for smaller projects.
-
-Since I do Linux development I’ve missed these tools for my PHP coding.
-So I built a version myself that implements the same methods (object
-calls) that the Windows-based components do. It is open source and the
-LGPL license allows you to place the class in your proprietary PHP
-projects.
-
-
-Installation:
-
-Copy class.phpmailer.php into your php.ini include_path. If you are
-using the SMTP mailer then place class.smtp.php in your path as well.
-In the language directory you will find several files like 
-phpmailer.lang-en.php.  If you look right before the .php extension 
-that there are two letters.  These represent the language type of the 
-translation file.  For instance "en" is the English file and "br" is 
-the Portuguese file.  Chose the file that best fits with your language 
-and place it in the PHP include path.  If your language is English 
-then you have nothing more to do.  If it is a different language then 
-you must point PHPMailer to the correct translation.  To do this, call 
-the PHPMailer SetLanguage method like so:
-
-// To load the Portuguese version
-$mail->SetLanguage("br", "/optional/path/to/language/directory/");
-
-That's it.  You should now be ready to use PHPMailer!
-
-
-A Simple Example:
-
-<?php
-require("class.phpmailer.php");
-
-$mail = new PHPMailer();
-
-$mail->IsSMTP();                                      // set mailer to use SMTP
-$mail->Host = "smtp1.example.com;smtp2.example.com";  // specify main and backup server
-$mail->SMTPAuth = true;     // turn on SMTP authentication
-$mail->Username = "jswan";  // SMTP username
-$mail->Password = "secret"; // SMTP password
-
-$mail->From = "from@example.com";
-$mail->FromName = "Mailer";
-$mail->AddAddress("josh@example.net", "Josh Adams");
-$mail->AddAddress("ellen@example.com");                  // name is optional
-$mail->AddReplyTo("info@example.com", "Information");
-
-$mail->WordWrap = 50;                                 // set word wrap to 50 characters
-$mail->AddAttachment("/var/tmp/file.tar.gz");         // add attachments
-$mail->AddAttachment("/tmp/image.jpg", "new.jpg");    // optional name
-$mail->IsHTML(true);                                  // set email format to HTML
-
-$mail->Subject = "Here is the subject";
-$mail->Body    = "This is the HTML message body <b>in bold!</b>";
-$mail->AltBody = "This is the body in plain text for non-HTML mail clients";
-
-if(!$mail->Send())
-{
-   echo "Message could not be sent. <p>";
-   echo "Mailer Error: " . $mail->ErrorInfo;
-   exit;
-}
-
-echo "Message has been sent";
-?>
-
-CHANGELOG
-
-See ChangeLog.txt
-
-Download: http://sourceforge.net/project/showfiles.php?group_id=26031
-
-Brent R. Matzelle
diff --git a/facteur/phpmailer-php4/class.phpmailer.php b/facteur/phpmailer-php4/class.phpmailer.php
deleted file mode 100644
index afb71b2..0000000
--- a/facteur/phpmailer-php4/class.phpmailer.php
+++ /dev/null
@@ -1,1909 +0,0 @@
-<?php
-/*~ class.phpmailer.php
-.---------------------------------------------------------------------------.
-|  Software: PHPMailer - PHP email class                                    |
-|   Version: 2.0.4                                                          |
-|   Contact: via sourceforge.net support pages (also www.codeworxtech.com)  |
-|      Info: http://phpmailer.sourceforge.net                               |
-|   Support: http://sourceforge.net/projects/phpmailer/                     |
-| ------------------------------------------------------------------------- |
-|    Author: Andy Prevost (project admininistrator)                         |
-|    Author: Brent R. Matzelle (original founder)                           |
-| Copyright (c) 2004-2007, Andy Prevost. All Rights Reserved.               |
-| Copyright (c) 2001-2003, Brent R. Matzelle                                |
-| ------------------------------------------------------------------------- |
-|   License: Distributed under the Lesser General Public License (LGPL)     |
-|            http://www.gnu.org/copyleft/lesser.html                        |
-| This program is distributed in the hope that it will be useful - WITHOUT  |
-| ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or     |
-| FITNESS FOR A PARTICULAR PURPOSE.                                         |
-| ------------------------------------------------------------------------- |
-| We offer a number of paid services (www.codeworxtech.com):                |
-| - Web Hosting on highly optimized fast and secure servers                 |
-| - Technology Consulting                                                   |
-| - Oursourcing (highly qualified programmers and graphic designers)        |
-'---------------------------------------------------------------------------'
-
-/**
- * PHPMailer - PHP email transport class
- * @package PHPMailer
- * @author Andy Prevost
- * @copyright 2004 - 2009 Andy Prevost
- */
-
-class PHPMailer {
-
-  /////////////////////////////////////////////////
-  // PROPERTIES, PUBLIC
-  /////////////////////////////////////////////////
-
-  /**
-   * Email priority (1 = High, 3 = Normal, 5 = low).
-   * @var int
-   */
-  var $Priority          = 3;
-
-  /**
-   * Sets the CharSet of the message.
-   * @var string
-   */
-  var $CharSet           = 'iso-8859-1';
-
-  /**
-   * Sets the Content-type of the message.
-   * @var string
-   */
-  var $ContentType        = 'text/plain';
-
-  /**
-   * Sets the Encoding of the message. Options for this are "8bit",
-   * "7bit", "binary", "base64", and "quoted-printable".
-   * @var string
-   */
-  var $Encoding          = '8bit';
-
-  /**
-   * Holds the most recent mailer error message.
-   * @var string
-   */
-  var $ErrorInfo         = '';
-
-  /**
-   * Sets the From email address for the message.
-   * @var string
-   */
-  var $From              = 'root@localhost';
-
-  /**
-   * Sets the From name of the message.
-   * @var string
-   */
-  var $FromName          = 'Root User';
-
-  /**
-   * Sets the Sender email (Return-Path) of the message.  If not empty,
-   * will be sent via -f to sendmail or as 'MAIL FROM' in smtp mode.
-   * @var string
-   */
-  var $Sender            = '';
-
-  /**
-   * Sets the Subject of the message.
-   * @var string
-   */
-  var $Subject           = '';
-
-  /**
-   * Sets the Body of the message.  This can be either an HTML or text body.
-   * If HTML then run IsHTML(true).
-   * @var string
-   */
-  var $Body              = '';
-
-  /**
-   * Sets the text-only body of the message.  This automatically sets the
-   * email to multipart/alternative.  This body can be read by mail
-   * clients that do not have HTML email capability such as mutt. Clients
-   * that can read HTML will view the normal Body.
-   * @var string
-   */
-  var $AltBody           = '';
-
-  /**
-   * Sets word wrapping on the body of the message to a given number of
-   * characters.
-   * @var int
-   */
-  var $WordWrap          = 0;
-
-  /**
-   * Method to send mail: ("mail", "sendmail", or "smtp").
-   * @var string
-   */
-  var $Mailer            = 'mail';
-
-  /**
-   * Sets the path of the sendmail program.
-   * @var string
-   */
-  var $Sendmail          = '/usr/sbin/sendmail';
-
-  /**
-   * Path to PHPMailer plugins.  This is now only useful if the SMTP class
-   * is in a different directory than the PHP include path.
-   * @var string
-   */
-  var $PluginDir         = '';
-
-  /**
-   * Holds PHPMailer version.
-   * @var string
-   */
-  var $Version           = "2.0.4";
-
-  /**
-   * Sets the email address that a reading confirmation will be sent.
-   * @var string
-   */
-  var $ConfirmReadingTo  = '';
-
-  /**
-   * Sets the hostname to use in Message-Id and Received headers
-   * and as default HELO string. If empty, the value returned
-   * by SERVER_NAME is used or 'localhost.localdomain'.
-   * @var string
-   */
-  var $Hostname          = '';
-
-  /**
-   * Sets the message ID to be used in the Message-Id header.
-   * If empty, a unique id will be generated.
-   * @var string
-   */
-  var $MessageID         = '';
-
-  /////////////////////////////////////////////////
-  // PROPERTIES FOR SMTP
-  /////////////////////////////////////////////////
-
-  /**
-   * Sets the SMTP hosts.  All hosts must be separated by a
-   * semicolon.  You can also specify a different port
-   * for each host by using this format: [hostname:port]
-   * (e.g. "smtp1.example.com:25;smtp2.example.com").
-   * Hosts will be tried in order.
-   * @var string
-   */
-  var $Host        = 'localhost';
-
-  /**
-   * Sets the default SMTP server port.
-   * @var int
-   */
-  var $Port        = 25;
-
-  /**
-   * Sets the SMTP HELO of the message (Default is $Hostname).
-   * @var string
-   */
-  var $Helo        = '';
-
-  /**
-   * Sets connection prefix.
-   * Options are "", "ssl" or "tls"
-   * @var string
-   */
-  var $SMTPSecure = "";
-
-  /**
-   * Sets SMTP authentication. Utilizes the Username and Password variables.
-   * @var bool
-   */
-  var $SMTPAuth     = false;
-
-  /**
-   * Sets SMTP username.
-   * @var string
-   */
-  var $Username     = '';
-
-  /**
-   * Sets SMTP password.
-   * @var string
-   */
-  var $Password     = '';
-
-  /**
-   * Sets the SMTP server timeout in seconds. This function will not
-   * work with the win32 version.
-   * @var int
-   */
-  var $Timeout      = 10;
-
-  /**
-   * Sets SMTP class debugging on or off.
-   * @var bool
-   */
-  var $SMTPDebug    = false;
-
-  /**
-   * Prevents the SMTP connection from being closed after each mail
-   * sending.  If this is set to true then to close the connection
-   * requires an explicit call to SmtpClose().
-   * @var bool
-   */
-  var $SMTPKeepAlive = false;
-
-  /**
-   * Provides the ability to have the TO field process individual
-   * emails, instead of sending to entire TO addresses
-   * @var bool
-   */
-  var $SingleTo = false;
-
-  /////////////////////////////////////////////////
-  // PROPERTIES, PRIVATE
-  /////////////////////////////////////////////////
-
-  var $smtp            = NULL;
-  var $to              = array();
-  var $cc              = array();
-  var $bcc             = array();
-  var $ReplyTo         = array();
-  var $attachment      = array();
-  var $CustomHeader    = array();
-  var $message_type    = '';
-  var $boundary        = array();
-  var $language        = array();
-  var $error_count     = 0;
-  var $LE              = "\n";
-  var $sign_cert_file  = "";
-  var $sign_key_file   = "";
-  var $sign_key_pass   = "";
-
-  /////////////////////////////////////////////////
-  // METHODS, VARIABLES
-  /////////////////////////////////////////////////
-
-  /**
-   * Sets message type to HTML.
-   * @param bool $bool
-   * @return void
-   */
-  function IsHTML($bool) {
-    if($bool == true) {
-      $this->ContentType = 'text/html';
-    } else {
-      $this->ContentType = 'text/plain';
-    }
-  }
-
-  /**
-   * Sets Mailer to send message using SMTP.
-   * @return void
-   */
-  function IsSMTP() {
-    $this->Mailer = 'smtp';
-  }
-
-  /**
-   * Sets Mailer to send message using PHP mail() function.
-   * @return void
-   */
-  function IsMail() {
-    $this->Mailer = 'mail';
-  }
-
-  /**
-   * Sets Mailer to send message using the $Sendmail program.
-   * @return void
-   */
-  function IsSendmail() {
-    $this->Mailer = 'sendmail';
-  }
-
-  /**
-   * Sets Mailer to send message using the qmail MTA.
-   * @return void
-   */
-  function IsQmail() {
-    $this->Sendmail = '/var/qmail/bin/sendmail';
-    $this->Mailer = 'sendmail';
-  }
-
-  /////////////////////////////////////////////////
-  // METHODS, RECIPIENTS
-  /////////////////////////////////////////////////
-
-  /**
-   * Adds a "To" address.
-   * @param string $address
-   * @param string $name
-   * @return void
-   */
-  function AddAddress($address, $name = '') {
-    $cur = count($this->to);
-    $this->to[$cur][0] = trim($address);
-    $this->to[$cur][1] = $name;
-  }
-
-  /**
-   * Adds a "Cc" address. Note: this function works
-   * with the SMTP mailer on win32, not with the "mail"
-   * mailer.
-   * @param string $address
-   * @param string $name
-   * @return void
-   */
-  function AddCC($address, $name = '') {
-    $cur = count($this->cc);
-    $this->cc[$cur][0] = trim($address);
-    $this->cc[$cur][1] = $name;
-  }
-
-  /**
-   * Adds a "Bcc" address. Note: this function works
-   * with the SMTP mailer on win32, not with the "mail"
-   * mailer.
-   * @param string $address
-   * @param string $name
-   * @return void
-   */
-  function AddBCC($address, $name = '') {
-    $cur = count($this->bcc);
-    $this->bcc[$cur][0] = trim($address);
-    $this->bcc[$cur][1] = $name;
-  }
-
-  /**
-   * Adds a "Reply-To" address.
-   * @param string $address
-   * @param string $name
-   * @return void
-   */
-  function AddReplyTo($address, $name = '') {
-    $cur = count($this->ReplyTo);
-    $this->ReplyTo[$cur][0] = trim($address);
-    $this->ReplyTo[$cur][1] = $name;
-  }
-
-  /////////////////////////////////////////////////
-  // METHODS, MAIL SENDING
-  /////////////////////////////////////////////////
-
-  /**
-   * Creates message and assigns Mailer. If the message is
-   * not sent successfully then it returns false.  Use the ErrorInfo
-   * variable to view description of the error.
-   * @return bool
-   */
-  function Send() {
-    $header = '';
-    $body = '';
-    $result = true;
-
-    if((count($this->to) + count($this->cc) + count($this->bcc)) < 1) {
-      $this->SetError($this->Lang('provide_address'));
-      return false;
-    }
-
-    /* Set whether the message is multipart/alternative */
-    if(!empty($this->AltBody)) {
-      $this->ContentType = 'multipart/alternative';
-    }
-
-    $this->error_count = 0; // reset errors
-    $this->SetMessageType();
-    $header .= $this->CreateHeader();
-    $body = $this->CreateBody();
-
-    if($body == '') {
-      return false;
-    }
-
-    /* Choose the mailer */
-    switch($this->Mailer) {
-      case 'sendmail':
-        $result = $this->SendmailSend($header, $body);
-        break;
-      case 'smtp':
-        $result = $this->SmtpSend($header, $body);
-        break;
-      case 'mail':
-        $result = $this->MailSend($header, $body);
-        break;
-      default:
-        $result = $this->MailSend($header, $body);
-        break;
-        //$this->SetError($this->Mailer . $this->Lang('mailer_not_supported'));
-        //$result = false;
-        //break;
-    }
-
-    return $result;
-  }
-
-  /**
-   * Sends mail using the $Sendmail program.
-   * @access private
-   * @return bool
-   */
-  function SendmailSend($header, $body) {
-    if ($this->Sender != '') {
-      $sendmail = sprintf("%s -oi -f %s -t", escapeshellcmd($this->Sendmail), escapeshellarg($this->Sender));
-    } else {
-      $sendmail = sprintf("%s -oi -t", escapeshellcmd($this->Sendmail));
-    }
-
-    if(!@$mail = popen($sendmail, 'w')) {
-      $this->SetError($this->Lang('execute') . $this->Sendmail);
-      return false;
-    }
-
-    fputs($mail, $header);
-    fputs($mail, $body);
-
-    $result = pclose($mail);
-    if (version_compare(phpversion(), '4.2.3') == -1) {
-      $result = $result >> 8 & 0xFF;
-    }
-    if($result != 0) {
-      $this->SetError($this->Lang('execute') . $this->Sendmail);
-      return false;
-    }
-    return true;
-  }
-
-  /**
-   * Sends mail using the PHP mail() function.
-   * @access private
-   * @return bool
-   */
-  function MailSend($header, $body) {
-
-    $to = '';
-    for($i = 0; $i < count($this->to); $i++) {
-      if($i != 0) { $to .= ', '; }
-      $to .= $this->AddrFormat($this->to[$i]);
-    }
-
-    $toArr = split(',', $to);
-
-    $params = sprintf("-oi -f %s", $this->Sender);
-    if ($this->Sender != '' && strlen(ini_get('safe_mode')) < 1) {
-      $old_from = ini_get('sendmail_from');
-      ini_set('sendmail_from', $this->Sender);
-      if ($this->SingleTo === true && count($toArr) > 1) {
-        foreach ($toArr as $key => $val) {
-          $rt = @mail($val, $this->EncodeHeader($this->SecureHeader($this->Subject)), $body, $header, $params);
-        }
-      } else {
-        $rt = @mail($to, $this->EncodeHeader($this->SecureHeader($this->Subject)), $body, $header, $params);
-      }
-    } else {
-      if ($this->SingleTo === true && count($toArr) > 1) {
-        foreach ($toArr as $key => $val) {
-          $rt = @mail($val, $this->EncodeHeader($this->SecureHeader($this->Subject)), $body, $header, $params);
-        }
-      } else {
-        $rt = @mail($to, $this->EncodeHeader($this->SecureHeader($this->Subject)), $body, $header);
-      }
-    }
-
-    if (isset($old_from)) {
-      ini_set('sendmail_from', $old_from);
-    }
-
-    if(!$rt) {
-      $this->SetError($this->Lang('instantiate'));
-      return false;
-    }
-
-    return true;
-  }
-
-  /**
-   * Sends mail via SMTP using PhpSMTP (Author:
-   * Chris Ryan).  Returns bool.  Returns false if there is a
-   * bad MAIL FROM, RCPT, or DATA input.
-   * @access private
-   * @return bool
-   */
-  function SmtpSend($header, $body) {
-    include_once($this->PluginDir . 'class.smtp.php');
-    $error = '';
-    $bad_rcpt = array();
-
-    if(!$this->SmtpConnect()) {
-      return false;
-    }
-
-    $smtp_from = ($this->Sender == '') ? $this->From : $this->Sender;
-    if(!$this->smtp->Mail($smtp_from)) {
-      $error = $this->Lang('from_failed') . $smtp_from;
-      $this->SetError($error);
-      $this->smtp->Reset();
-      return false;
-    }
-
-    /* Attempt to send attach all recipients */
-    for($i = 0; $i < count($this->to); $i++) {
-      if(!$this->smtp->Recipient($this->to[$i][0])) {
-        $bad_rcpt[] = $this->to[$i][0];
-      }
-    }
-    for($i = 0; $i < count($this->cc); $i++) {
-      if(!$this->smtp->Recipient($this->cc[$i][0])) {
-        $bad_rcpt[] = $this->cc[$i][0];
-      }
-    }
-    for($i = 0; $i < count($this->bcc); $i++) {
-      if(!$this->smtp->Recipient($this->bcc[$i][0])) {
-        $bad_rcpt[] = $this->bcc[$i][0];
-      }
-    }
-
-    if(count($bad_rcpt) > 0) { // Create error message
-      for($i = 0; $i < count($bad_rcpt); $i++) {
-        if($i != 0) {
-          $error .= ', ';
-        }
-        $error .= $bad_rcpt[$i];
-      }
-      $error = $this->Lang('recipients_failed') . $error;
-      $this->SetError($error);
-      $this->smtp->Reset();
-      return false;
-    }
-
-    if(!$this->smtp->Data($header . $body)) {
-      $this->SetError($this->Lang('data_not_accepted'));
-      $this->smtp->Reset();
-      return false;
-    }
-    if($this->SMTPKeepAlive == true) {
-      $this->smtp->Reset();
-    } else {
-      $this->SmtpClose();
-    }
-
-    return true;
-  }
-
-  /**
-   * Initiates a connection to an SMTP server.  Returns false if the
-   * operation failed.
-   * @access private
-   * @return bool
-   */
-  function SmtpConnect() {
-    if($this->smtp == NULL) {
-      $this->smtp = new SMTP();
-    }
-
-    $this->smtp->do_debug = $this->SMTPDebug;
-    $hosts = explode(';', $this->Host);
-    $index = 0;
-    $connection = ($this->smtp->Connected());
-
-    /* Retry while there is no connection */
-    while($index < count($hosts) && $connection == false) {
-      $hostinfo = array();
-      if(eregi('^(.+):([0-9]+)$', $hosts[$index], $hostinfo)) {
-        $host = $hostinfo[1];
-        $port = $hostinfo[2];
-      } else {
-        $host = $hosts[$index];
-        $port = $this->Port;
-      }
-
-      if($this->smtp->Connect(((!empty($this->SMTPSecure))?$this->SMTPSecure.'://':'').$host, $port, $this->Timeout)) {
-        if ($this->Helo != '') {
-          $this->smtp->Hello($this->Helo);
-        } else {
-          $this->smtp->Hello($this->ServerHostname());
-        }
-
-        $connection = true;
-        if($this->SMTPAuth) {
-          if(!$this->smtp->Authenticate($this->Username, $this->Password)) {
-            $this->SetError($this->Lang('authenticate'));
-            $this->smtp->Reset();
-            $connection = false;
-          }
-        }
-      }
-      $index++;
-    }
-    if(!$connection) {
-      $this->SetError($this->Lang('connect_host'));
-    }
-
-    return $connection;
-  }
-
-  /**
-   * Closes the active SMTP session if one exists.
-   * @return void
-   */
-  function SmtpClose() {
-    if($this->smtp != NULL) {
-      if($this->smtp->Connected()) {
-        $this->smtp->Quit();
-        $this->smtp->Close();
-      }
-    }
-  }
-
-  /**
-   * Sets the language for all class error messages.  Returns false
-   * if it cannot load the language file.  The default language type
-   * is English.
-   * @param string $lang_type Type of language (e.g. Portuguese: "br")
-   * @param string $lang_path Path to the language file directory
-   * @access public
-   * @return bool
-   */
-  function SetLanguage($lang_type, $lang_path = 'language/') {
-    if(file_exists($lang_path.'phpmailer.lang-'.$lang_type.'.php')) {
-      include($lang_path.'phpmailer.lang-'.$lang_type.'.php');
-    } elseif (file_exists($lang_path.'phpmailer.lang-en.php')) {
-      include($lang_path.'phpmailer.lang-en.php');
-    } else {
-      $PHPMAILER_LANG = array();
-      $PHPMAILER_LANG["provide_address"]      = 'You must provide at least one ' .
-      $PHPMAILER_LANG["mailer_not_supported"] = ' mailer is not supported.';
-      $PHPMAILER_LANG["execute"]              = 'Could not execute: ';
-      $PHPMAILER_LANG["instantiate"]          = 'Could not instantiate mail function.';
-      $PHPMAILER_LANG["authenticate"]         = 'SMTP Error: Could not authenticate.';
-      $PHPMAILER_LANG["from_failed"]          = 'The following From address failed: ';
-      $PHPMAILER_LANG["recipients_failed"]    = 'SMTP Error: The following ' .
-      $PHPMAILER_LANG["data_not_accepted"]    = 'SMTP Error: Data not accepted.';
-      $PHPMAILER_LANG["connect_host"]         = 'SMTP Error: Could not connect to SMTP host.';
-      $PHPMAILER_LANG["file_access"]          = 'Could not access file: ';
-      $PHPMAILER_LANG["file_open"]            = 'File Error: Could not open file: ';
-      $PHPMAILER_LANG["encoding"]             = 'Unknown encoding: ';
-      $PHPMAILER_LANG["signing"]              = 'Signing Error: ';
-    }
-    $this->language = $PHPMAILER_LANG;
-
-    return true;
-  }
-
-  /////////////////////////////////////////////////
-  // METHODS, MESSAGE CREATION
-  /////////////////////////////////////////////////
-
-  /**
-   * Creates recipient headers.
-   * @access private
-   * @return string
-   */
-  function AddrAppend($type, $addr) {
-    $addr_str = $type . ': ';
-    $addr_str .= $this->AddrFormat($addr[0]);
-    if(count($addr) > 1) {
-      for($i = 1; $i < count($addr); $i++) {
-        $addr_str .= ', ' . $this->AddrFormat($addr[$i]);
-      }
-    }
-    $addr_str .= $this->LE;
-
-    return $addr_str;
-  }
-
-  /**
-   * Formats an address correctly.
-   * @access private
-   * @return string
-   */
-  function AddrFormat($addr) {
-    if(empty($addr[1])) {
-      $formatted = $this->SecureHeader($addr[0]);
-    } else {
-      $formatted = $this->EncodeHeader($this->SecureHeader($addr[1]), 'phrase') . " <" . $this->SecureHeader($addr[0]) . ">";
-    }
-
-    return $formatted;
-  }
-
-  /**
-   * Wraps message for use with mailers that do not
-   * automatically perform wrapping and for quoted-printable.
-   * Original written by philippe.
-   * @access private
-   * @return string
-   */
-  function WrapText($message, $length, $qp_mode = false) {
-    $soft_break = ($qp_mode) ? sprintf(" =%s", $this->LE) : $this->LE;
-    // If utf-8 encoding is used, we will need to make sure we don't
-    // split multibyte characters when we wrap
-    $is_utf8 = (strtolower($this->CharSet) == "utf-8");
-
-    $message = $this->FixEOL($message);
-    if (substr($message, -1) == $this->LE) {
-      $message = substr($message, 0, -1);
-    }
-
-    $line = explode($this->LE, $message);
-    $message = '';
-    for ($i=0 ;$i < count($line); $i++) {
-      $line_part = explode(' ', $line[$i]);
-      $buf = '';
-      for ($e = 0; $e<count($line_part); $e++) {
-        $word = $line_part[$e];
-        if ($qp_mode and (strlen($word) > $length)) {
-          $space_left = $length - strlen($buf) - 1;
-          if ($e != 0) {
-            if ($space_left > 20) {
-              $len = $space_left;
-              if ($is_utf8) {
-                $len = $this->UTF8CharBoundary($word, $len);
-              } elseif (substr($word, $len - 1, 1) == "=") {
-                $len--;
-              } elseif (substr($word, $len - 2, 1) == "=") {
-                $len -= 2;
-              }
-              $part = substr($word, 0, $len);
-              $word = substr($word, $len);
-              $buf .= ' ' . $part;
-              $message .= $buf . sprintf("=%s", $this->LE);
-            } else {
-              $message .= $buf . $soft_break;
-            }
-            $buf = '';
-          }
-          while (strlen($word) > 0) {
-            $len = $length;
-            if ($is_utf8) {
-              $len = $this->UTF8CharBoundary($word, $len);
-            } elseif (substr($word, $len - 1, 1) == "=") {
-              $len--;
-            } elseif (substr($word, $len - 2, 1) == "=") {
-              $len -= 2;
-            }
-            $part = substr($word, 0, $len);
-            $word = substr($word, $len);
-
-            if (strlen($word) > 0) {
-              $message .= $part . sprintf("=%s", $this->LE);
-            } else {
-              $buf = $part;
-            }
-          }
-        } else {
-          $buf_o = $buf;
-          $buf .= ($e == 0) ? $word : (' ' . $word);
-
-          if (strlen($buf) > $length and $buf_o != '') {
-            $message .= $buf_o . $soft_break;
-            $buf = $word;
-          }
-        }
-      }
-      $message .= $buf . $this->LE;
-    }
-
-    return $message;
-  }
-
-  /**
-   * Finds last character boundary prior to maxLength in a utf-8
-   * quoted (printable) encoded string.
-   * Original written by Colin Brown.
-   * @access private
-   * @param string $encodedText utf-8 QP text
-   * @param int    $maxLength   find last character boundary prior to this length
-   * @return int
-   */
-  function UTF8CharBoundary($encodedText, $maxLength) {
-    $foundSplitPos = false;
-    $lookBack = 3;
-    while (!$foundSplitPos) {
-      $lastChunk = substr($encodedText, $maxLength - $lookBack, $lookBack);
-      $encodedCharPos = strpos($lastChunk, "=");
-      if ($encodedCharPos !== false) {
-        // Found start of encoded character byte within $lookBack block.
-        // Check the encoded byte value (the 2 chars after the '=')
-        $hex = substr($encodedText, $maxLength - $lookBack + $encodedCharPos + 1, 2);
-        $dec = hexdec($hex);
-        if ($dec < 128) { // Single byte character.
-          // If the encoded char was found at pos 0, it will fit
-          // otherwise reduce maxLength to start of the encoded char
-          $maxLength = ($encodedCharPos == 0) ? $maxLength :
-          $maxLength - ($lookBack - $encodedCharPos);
-          $foundSplitPos = true;
-        } elseif ($dec >= 192) { // First byte of a multi byte character
-          // Reduce maxLength to split at start of character
-          $maxLength = $maxLength - ($lookBack - $encodedCharPos);
-          $foundSplitPos = true;
-        } elseif ($dec < 192) { // Middle byte of a multi byte character, look further back
-          $lookBack += 3;
-        }
-      } else {
-        // No encoded character found
-        $foundSplitPos = true;
-      }
-    }
-    return $maxLength;
-  }
-
-  /**
-   * Set the body wrapping.
-   * @access private
-   * @return void
-   */
-  function SetWordWrap() {
-    if($this->WordWrap < 1) {
-      return;
-    }
-
-    switch($this->message_type) {
-      case 'alt':
-        /* fall through */
-      case 'alt_attachments':
-        $this->AltBody = $this->WrapText($this->AltBody, $this->WordWrap);
-        break;
-      default:
-        $this->Body = $this->WrapText($this->Body, $this->WordWrap);
-        break;
-    }
-  }
-
-  /**
-   * Assembles message header.
-   * @access private
-   * @return string
-   */
-  function CreateHeader() {
-    $result = '';
-
-    /* Set the boundaries */
-    $uniq_id = md5(uniqid(time()));
-    $this->boundary[1] = 'b1_' . $uniq_id;
-    $this->boundary[2] = 'b2_' . $uniq_id;
-
-    $result .= $this->HeaderLine('Date', $this->RFCDate());
-    if($this->Sender == '') {
-      $result .= $this->HeaderLine('Return-Path', trim($this->From));
-    } else {
-      $result .= $this->HeaderLine('Return-Path', trim($this->Sender));
-    }
-
-    /* To be created automatically by mail() */
-    if($this->Mailer != 'mail') {
-      if(count($this->to) > 0) {
-        $result .= $this->AddrAppend('To', $this->to);
-      } elseif (count($this->cc) == 0) {
-        $result .= $this->HeaderLine('To', 'undisclosed-recipients:;');
-      }
-    }
-
-    $from = array();
-    $from[0][0] = trim($this->From);
-    $from[0][1] = $this->FromName;
-    $result .= $this->AddrAppend('From', $from);
-
-    /* sendmail and mail() extract Cc from the header before sending */
-    if((($this->Mailer == 'sendmail') || ($this->Mailer == 'mail')) && (count($this->cc) > 0)) {
-      $result .= $this->AddrAppend('Cc', $this->cc);
-    }
-
-    /* sendmail and mail() extract Bcc from the header before sending */
-    if((($this->Mailer == 'sendmail') || ($this->Mailer == 'mail')) && (count($this->bcc) > 0)) {
-      $result .= $this->AddrAppend('Bcc', $this->bcc);
-    }
-
-    if(count($this->ReplyTo) > 0) {
-      $result .= $this->AddrAppend('Reply-To', $this->ReplyTo);
-    }
-
-    /* mail() sets the subject itself */
-    if($this->Mailer != 'mail') {
-      $result .= $this->HeaderLine('Subject', $this->EncodeHeader($this->SecureHeader($this->Subject)));
-    }
-
-    if($this->MessageID != '') {
-      $result .= $this->HeaderLine('Message-ID',$this->MessageID);
-    } else {
-      $result .= sprintf("Message-ID: <%s@%s>%s", $uniq_id, $this->ServerHostname(), $this->LE);
-    }
-    $result .= $this->HeaderLine('X-Priority', $this->Priority);
-    $result .= $this->HeaderLine('X-Mailer', 'PHPMailer (phpmailer.sourceforge.net) [version ' . $this->Version . ']');
-
-    if($this->ConfirmReadingTo != '') {
-      $result .= $this->HeaderLine('Disposition-Notification-To', '<' . trim($this->ConfirmReadingTo) . '>');
-    }
-
-    // Add custom headers
-    for($index = 0; $index < count($this->CustomHeader); $index++) {
-      $result .= $this->HeaderLine(trim($this->CustomHeader[$index][0]), $this->EncodeHeader(trim($this->CustomHeader[$index][1])));
-    }
-    if (!$this->sign_key_file) {
-      $result .= $this->HeaderLine('MIME-Version', '1.0');
-      $result .= $this->GetMailMIME();
-    }
-
-    return $result;
-  }
-
-  /**
-   * Returns the message MIME.
-   * @access private
-   * @return string
-   */
-  function GetMailMIME() {
-    $result = '';
-    switch($this->message_type) {
-      case 'plain':
-        $result .= $this->HeaderLine('Content-Transfer-Encoding', $this->Encoding);
-        $result .= sprintf("Content-Type: %s; charset=\"%s\"", $this->ContentType, $this->CharSet);
-        break;
-      case 'attachments':
-        /* fall through */
-      case 'alt_attachments':
-        if($this->InlineImageExists()){
-          $result .= sprintf("Content-Type: %s;%s\ttype=\"text/html\";%s\tboundary=\"%s\"%s", 'multipart/related', $this->LE, $this->LE, $this->boundary[1], $this->LE);
-        } else {
-          $result .= $this->HeaderLine('Content-Type', 'multipart/mixed;');
-          $result .= $this->TextLine("\tboundary=\"" . $this->boundary[1] . '"');
-        }
-        break;
-      case 'alt':
-        $result .= $this->HeaderLine('Content-Type', 'multipart/alternative;');
-        $result .= $this->TextLine("\tboundary=\"" . $this->boundary[1] . '"');
-        break;
-    }
-
-    if($this->Mailer != 'mail') {
-      $result .= $this->LE.$this->LE;
-    }
-
-    return $result;
-  }
-
-  /**
-   * Assembles the message body.  Returns an empty string on failure.
-   * @access private
-   * @return string
-   */
-  function CreateBody() {
-    $result = '';
-    if ($this->sign_key_file) {
-      $result .= $this->GetMailMIME();
-    }
-
-    $this->SetWordWrap();
-
-    switch($this->message_type) {
-      case 'alt':
-        $result .= $this->GetBoundary($this->boundary[1], '', 'text/plain', '');
-        $result .= $this->EncodeString($this->AltBody, $this->Encoding);
-        $result .= $this->LE.$this->LE;
-        $result .= $this->GetBoundary($this->boundary[1], '', 'text/html', '');
-        $result .= $this->EncodeString($this->Body, $this->Encoding);
-        $result .= $this->LE.$this->LE;
-        $result .= $this->EndBoundary($this->boundary[1]);
-        break;
-      case 'plain':
-        $result .= $this->EncodeString($this->Body, $this->Encoding);
-        break;
-      case 'attachments':
-        $result .= $this->GetBoundary($this->boundary[1], '', '', '');
-        $result .= $this->EncodeString($this->Body, $this->Encoding);
-        $result .= $this->LE;
-        $result .= $this->AttachAll();
-        break;
-      case 'alt_attachments':
-        $result .= sprintf("--%s%s", $this->boundary[1], $this->LE);
-        $result .= sprintf("Content-Type: %s;%s" . "\tboundary=\"%s\"%s", 'multipart/alternative', $this->LE, $this->boundary[2], $this->LE.$this->LE);
-        $result .= $this->GetBoundary($this->boundary[2], '', 'text/plain', '') . $this->LE; // Create text body
-        $result .= $this->EncodeString($this->AltBody, $this->Encoding);
-        $result .= $this->LE.$this->LE;
-        $result .= $this->GetBoundary($this->boundary[2], '', 'text/html', '') . $this->LE; // Create the HTML body
-        $result .= $this->EncodeString($this->Body, $this->Encoding);
-        $result .= $this->LE.$this->LE;
-        $result .= $this->EndBoundary($this->boundary[2]);
-        $result .= $this->AttachAll();
-        break;
-    }
-
-    if($this->IsError()) {
-      $result = '';
-    } else if ($this->sign_key_file) {
-      $file = tempnam("", "mail");
-      $fp = fopen($file, "w");
-      fwrite($fp, $result);
-      fclose($fp);
-      $signed = tempnam("", "signed");
-
-      if (@openssl_pkcs7_sign($file, $signed, "file://".$this->sign_cert_file, array("file://".$this->sign_key_file, $this->sign_key_pass), null)) {
-        $fp = fopen($signed, "r");
-        $result = fread($fp, filesize($this->sign_key_file));
-        $result = '';
-        while(!feof($fp)){
-          $result = $result . fread($fp, 1024);
-        }
-        fclose($fp);
-      } else {
-        $this->SetError($this->Lang("signing").openssl_error_string());
-        $result = '';
-      }
-
-      unlink($file);
-      unlink($signed);
-    }
-
-    return $result;
-  }
-
-  /**
-   * Returns the start of a message boundary.
-   * @access private
-   */
-  function GetBoundary($boundary, $charSet, $contentType, $encoding) {
-    $result = '';
-    if($charSet == '') {
-      $charSet = $this->CharSet;
-    }
-    if($contentType == '') {
-      $contentType = $this->ContentType;
-    }
-    if($encoding == '') {
-      $encoding = $this->Encoding;
-    }
-    $result .= $this->TextLine('--' . $boundary);
-    $result .= sprintf("Content-Type: %s; charset = \"%s\"", $contentType, $charSet);
-    $result .= $this->LE;
-    $result .= $this->HeaderLine('Content-Transfer-Encoding', $encoding);
-    $result .= $this->LE;
-
-    return $result;
-  }
-
-  /**
-   * Returns the end of a message boundary.
-   * @access private
-   */
-  function EndBoundary($boundary) {
-    return $this->LE . '--' . $boundary . '--' . $this->LE;
-  }
-
-  /**
-   * Sets the message type.
-   * @access private
-   * @return void
-   */
-  function SetMessageType() {
-    if(count($this->attachment) < 1 && strlen($this->AltBody) < 1) {
-      $this->message_type = 'plain';
-    } else {
-      if(count($this->attachment) > 0) {
-        $this->message_type = 'attachments';
-      }
-      if(strlen($this->AltBody) > 0 && count($this->attachment) < 1) {
-        $this->message_type = 'alt';
-      }
-      if(strlen($this->AltBody) > 0 && count($this->attachment) > 0) {
-        $this->message_type = 'alt_attachments';
-      }
-    }
-  }
-
-  /* Returns a formatted header line.
-   * @access private
-   * @return string
-   */
-  function HeaderLine($name, $value) {
-    return $name . ': ' . $value . $this->LE;
-  }
-
-  /**
-   * Returns a formatted mail line.
-   * @access private
-   * @return string
-   */
-  function TextLine($value) {
-    return $value . $this->LE;
-  }
-
-  /////////////////////////////////////////////////
-  // CLASS METHODS, ATTACHMENTS
-  /////////////////////////////////////////////////
-
-  /**
-   * Adds an attachment from a path on the filesystem.
-   * Returns false if the file could not be found
-   * or accessed.
-   * @param string $path Path to the attachment.
-   * @param string $name Overrides the attachment name.
-   * @param string $encoding File encoding (see $Encoding).
-   * @param string $type File extension (MIME) type.
-   * @return bool
-   */
-  function AddAttachment($path, $name = '', $encoding = 'base64', $type = 'application/octet-stream') {
-    if(!@is_file($path)) {
-      $this->SetError($this->Lang('file_access') . $path);
-      return false;
-    }
-
-    $filename = basename($path);
-    if($name == '') {
-      $name = $filename;
-    }
-
-    $cur = count($this->attachment);
-    $this->attachment[$cur][0] = $path;
-    $this->attachment[$cur][1] = $filename;
-    $this->attachment[$cur][2] = $name;
-    $this->attachment[$cur][3] = $encoding;
-    $this->attachment[$cur][4] = $type;
-    $this->attachment[$cur][5] = false; // isStringAttachment
-    $this->attachment[$cur][6] = 'attachment';
-    $this->attachment[$cur][7] = 0;
-
-    return true;
-  }
-
-  /**
-   * Attaches all fs, string, and binary attachments to the message.
-   * Returns an empty string on failure.
-   * @access private
-   * @return string
-   */
-  function AttachAll() {
-    /* Return text of body */
-    $mime = array();
-
-    /* Add all attachments */
-    for($i = 0; $i < count($this->attachment); $i++) {
-      /* Check for string attachment */
-      $bString = $this->attachment[$i][5];
-      if ($bString) {
-        $string = $this->attachment[$i][0];
-      } else {
-        $path = $this->attachment[$i][0];
-      }
-
-      $filename    = $this->attachment[$i][1];
-      $name        = $this->attachment[$i][2];
-      $encoding    = $this->attachment[$i][3];
-      $type        = $this->attachment[$i][4];
-      $disposition = $this->attachment[$i][6];
-      $cid         = $this->attachment[$i][7];
-
-      $mime[] = sprintf("--%s%s", $this->boundary[1], $this->LE);
-      $mime[] = sprintf("Content-Type: %s; name=\"%s\"%s", $type, $this->EncodeHeader($this->SecureHeader($name)), $this->LE);
-      $mime[] = sprintf("Content-Transfer-Encoding: %s%s", $encoding, $this->LE);
-
-      if($disposition == 'inline') {
-        $mime[] = sprintf("Content-ID: <%s>%s", $cid, $this->LE);
-      }
-
-      $mime[] = sprintf("Content-Disposition: %s; filename=\"%s\"%s", $disposition, $this->EncodeHeader($this->SecureHeader($name)), $this->LE.$this->LE);
-
-      /* Encode as string attachment */
-      if($bString) {
-        $mime[] = $this->EncodeString($string, $encoding);
-        if($this->IsError()) {
-          return '';
-        }
-        $mime[] = $this->LE.$this->LE;
-      } else {
-        $mime[] = $this->EncodeFile($path, $encoding);
-        if($this->IsError()) {
-          return '';
-        }
-        $mime[] = $this->LE.$this->LE;
-      }
-    }
-
-    $mime[] = sprintf("--%s--%s", $this->boundary[1], $this->LE);
-
-    return join('', $mime);
-  }
-
-  /**
-   * Encodes attachment in requested format.  Returns an
-   * empty string on failure.
-   * @access private
-   * @return string
-   */
-  function EncodeFile ($path, $encoding = 'base64') {
-    if(!@$fd = fopen($path, 'rb')) {
-      $this->SetError($this->Lang('file_open') . $path);
-      return '';
-    }
-    $magic_quotes = get_magic_quotes_runtime();
-    set_magic_quotes_runtime(0);
-    $file_buffer = fread($fd, filesize($path));
-    $file_buffer = $this->EncodeString($file_buffer, $encoding);
-    fclose($fd);
-    set_magic_quotes_runtime($magic_quotes);
-
-    return $file_buffer;
-  }
-
-  /**
-   * Encodes string to requested format. Returns an
-   * empty string on failure.
-   * @access private
-   * @return string
-   */
-  function EncodeString ($str, $encoding = 'base64') {
-    $encoded = '';
-    switch(strtolower($encoding)) {
-      case 'base64':
-        /* chunk_split is found in PHP >= 3.0.6 */
-        $encoded = chunk_split(base64_encode($str), 76, $this->LE);
-        break;
-      case '7bit':
-      case '8bit':
-        $encoded = $this->FixEOL($str);
-        if (substr($encoded, -(strlen($this->LE))) != $this->LE)
-          $encoded .= $this->LE;
-        break;
-      case 'binary':
-        $encoded = $str;
-        break;
-      case 'quoted-printable':
-        $encoded = $this->EncodeQP($str);
-        break;
-      default:
-        $this->SetError($this->Lang('encoding') . $encoding);
-        break;
-    }
-    return $encoded;
-  }
-
-  /**
-   * Encode a header string to best of Q, B, quoted or none.
-   * @access private
-   * @return string
-   */
-  function EncodeHeader ($str, $position = 'text') {
-    $x = 0;
-
-    switch (strtolower($position)) {
-      case 'phrase':
-        if (!preg_match('/[\200-\377]/', $str)) {
-          /* Can't use addslashes as we don't know what value has magic_quotes_sybase. */
-          $encoded = addcslashes($str, "\0..\37\177\\\"");
-          if (($str == $encoded) && !preg_match('/[^A-Za-z0-9!#$%&\'*+\/=?^_`{|}~ -]/', $str)) {
-            return ($encoded);
-          } else {
-            return ("\"$encoded\"");
-          }
-        }
-        $x = preg_match_all('/[^\040\041\043-\133\135-\176]/', $str, $matches);
-        break;
-      case 'comment':
-        $x = preg_match_all('/[()"]/', $str, $matches);
-        /* Fall-through */
-      case 'text':
-      default:
-        $x += preg_match_all('/[\000-\010\013\014\016-\037\177-\377]/', $str, $matches);
-        break;
-    }
-
-    if ($x == 0) {
-      return ($str);
-    }
-
-    $maxlen = 75 - 7 - strlen($this->CharSet);
-    /* Try to select the encoding which should produce the shortest output */
-    if (strlen($str)/3 < $x) {
-      $encoding = 'B';
-      if (function_exists('mb_strlen') && $this->HasMultiBytes($str)) {
-     // Use a custom function which correctly encodes and wraps long
-     // multibyte strings without breaking lines within a character
-        $encoded = $this->Base64EncodeWrapMB($str);
-      } else {
-        $encoded = base64_encode($str);
-        $maxlen -= $maxlen % 4;
-        $encoded = trim(chunk_split($encoded, $maxlen, "\n"));
-      }
-    } else {
-      $encoding = 'Q';
-      $encoded = $this->EncodeQ($str, $position);
-      $encoded = $this->WrapText($encoded, $maxlen, true);
-      $encoded = str_replace('='.$this->LE, "\n", trim($encoded));
-    }
-
-    $encoded = preg_replace('/^(.*)$/m', " =?".$this->CharSet."?$encoding?\\1?=", $encoded);
-    $encoded = trim(str_replace("\n", $this->LE, $encoded));
-
-    return $encoded;
-  }
-
-  /**
-   * Checks if a string contains multibyte characters.
-   * @access private
-   * @param string $str multi-byte text to wrap encode
-   * @return bool
-   */
-  function HasMultiBytes($str) {
-    if (function_exists('mb_strlen')) {
-      return (strlen($str) > mb_strlen($str, $this->CharSet));
-    } else { // Assume no multibytes (we can't handle without mbstring functions anyway)
-      return False;
-    }
-  }
-
-  /**
-   * Correctly encodes and wraps long multibyte strings for mail headers
-   * without breaking lines within a character.
-   * Adapted from a function by paravoid at http://uk.php.net/manual/en/function.mb-encode-mimeheader.php
-   * @access private
-   * @param string $str multi-byte text to wrap encode
-   * @return string
-   */
-  function Base64EncodeWrapMB($str) {
-    $start = "=?".$this->CharSet."?B?";
-    $end = "?=";
-    $encoded = "";
-
-    $mb_length = mb_strlen($str, $this->CharSet);
-    // Each line must have length <= 75, including $start and $end
-    $length = 75 - strlen($start) - strlen($end);
-    // Average multi-byte ratio
-    $ratio = $mb_length / strlen($str);
-    // Base64 has a 4:3 ratio
-    $offset = $avgLength = floor($length * $ratio * .75);
-
-    for ($i = 0; $i < $mb_length; $i += $offset) {
-      $lookBack = 0;
-
-      do {
-        $offset = $avgLength - $lookBack;
-        $chunk = mb_substr($str, $i, $offset, $this->CharSet);
-        $chunk = base64_encode($chunk);
-        $lookBack++;
-      }
-      while (strlen($chunk) > $length);
-
-      $encoded .= $chunk . $this->LE;
-    }
-
-    // Chomp the last linefeed
-    $encoded = substr($encoded, 0, -strlen($this->LE));
-    return $encoded;
-  }
-
-  /**
-   * Encode string to quoted-printable.
-   * @access private
-   * @return string
-   */
-  function EncodeQP( $input = '', $line_max = 76, $space_conv = false ) {
-    $hex = array('0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F');
-    $lines = preg_split('/(?:\r\n|\r|\n)/', $input);
-    $eol = "\r\n";
-    $escape = '=';
-    $output = '';
-    while( list(, $line) = each($lines) ) {
-      $linlen = strlen($line);
-      $newline = '';
-      for($i = 0; $i < $linlen; $i++) {
-        $c = substr( $line, $i, 1 );
-        $dec = ord( $c );
-        if ( ( $i == 0 ) && ( $dec == 46 ) ) { // convert first point in the line into =2E
-          $c = '=2E';
-        }
-        if ( $dec == 32 ) {
-          if ( $i == ( $linlen - 1 ) ) { // convert space at eol only
-            $c = '=20';
-          } else if ( $space_conv ) {
-            $c = '=20';
-          }
-        } elseif ( ($dec == 61) || ($dec < 32 ) || ($dec > 126) ) { // always encode "\t", which is *not* required
-          $h2 = floor($dec/16);
-          $h1 = floor($dec%16);
-          $c = $escape.$hex[$h2].$hex[$h1];
-        }
-        if ( (strlen($newline) + strlen($c)) >= $line_max ) { // CRLF is not counted
-          $output .= $newline.$escape.$eol; //  soft line break; " =\r\n" is okay
-          $newline = '';
-          // check if newline first character will be point or not
-          if ( $dec == 46 ) {
-            $c = '=2E';
-          }
-        }
-        $newline .= $c;
-      } // end of for
-      $output .= $newline.$eol;
-    } // end of while
-    return $output;
-  }
-
-  /**
-   * Encode string to q encoding.
-   * @access private
-   * @return string
-   */
-  function EncodeQ ($str, $position = 'text') {
-    /* There should not be any EOL in the string */
-    $encoded = preg_replace("[\r\n]", '', $str);
-
-    switch (strtolower($position)) {
-      case 'phrase':
-        $encoded = preg_replace("/([^A-Za-z0-9!*+\/ -])/e", "'='.sprintf('%02X', ord('\\1'))", $encoded);
-        break;
-      case 'comment':
-        $encoded = preg_replace("/([\(\)\"])/e", "'='.sprintf('%02X', ord('\\1'))", $encoded);
-      case 'text':
-      default:
-        /* Replace every high ascii, control =, ? and _ characters */
-        $encoded = preg_replace('/([\000-\011\013\014\016-\037\075\077\137\177-\377])/e',
-              "'='.sprintf('%02X', ord('\\1'))", $encoded);
-        break;
-    }
-
-    /* Replace every spaces to _ (more readable than =20) */
-    $encoded = str_replace(' ', '_', $encoded);
-
-    return $encoded;
-  }
-
-  /**
-   * Adds a string or binary attachment (non-filesystem) to the list.
-   * This method can be used to attach ascii or binary data,
-   * such as a BLOB record from a database.
-   * @param string $string String attachment data.
-   * @param string $filename Name of the attachment.
-   * @param string $encoding File encoding (see $Encoding).
-   * @param string $type File extension (MIME) type.
-   * @return void
-   */
-  function AddStringAttachment($string, $filename, $encoding = 'base64', $type = 'application/octet-stream') {
-    /* Append to $attachment array */
-    $cur = count($this->attachment);
-    $this->attachment[$cur][0] = $string;
-    $this->attachment[$cur][1] = $filename;
-    $this->attachment[$cur][2] = $filename;
-    $this->attachment[$cur][3] = $encoding;
-    $this->attachment[$cur][4] = $type;
-    $this->attachment[$cur][5] = true; // isString
-    $this->attachment[$cur][6] = 'attachment';
-    $this->attachment[$cur][7] = 0;
-  }
-
-  /**
-   * Adds an embedded attachment.  This can include images, sounds, and
-   * just about any other document.  Make sure to set the $type to an
-   * image type.  For JPEG images use "image/jpeg" and for GIF images
-   * use "image/gif".
-   * @param string $path Path to the attachment.
-   * @param string $cid Content ID of the attachment.  Use this to identify
-   *        the Id for accessing the image in an HTML form.
-   * @param string $name Overrides the attachment name.
-   * @param string $encoding File encoding (see $Encoding).
-   * @param string $type File extension (MIME) type.
-   * @return bool
-   */
-  function AddEmbeddedImage($path, $cid, $name = '', $encoding = 'base64', $type = 'application/octet-stream') {
-
-    if(!@is_file($path)) {
-      $this->SetError($this->Lang('file_access') . $path);
-      return false;
-    }
-
-    $filename = basename($path);
-    if($name == '') {
-      $name = $filename;
-    }
-
-    /* Append to $attachment array */
-    $cur = count($this->attachment);
-    $this->attachment[$cur][0] = $path;
-    $this->attachment[$cur][1] = $filename;
-    $this->attachment[$cur][2] = $name;
-    $this->attachment[$cur][3] = $encoding;
-    $this->attachment[$cur][4] = $type;
-    $this->attachment[$cur][5] = false;
-    $this->attachment[$cur][6] = 'inline';
-    $this->attachment[$cur][7] = $cid;
-
-    return true;
-  }
-
-  /**
-   * Returns true if an inline attachment is present.
-   * @access private
-   * @return bool
-   */
-  function InlineImageExists() {
-    $result = false;
-    for($i = 0; $i < count($this->attachment); $i++) {
-      if($this->attachment[$i][6] == 'inline') {
-        $result = true;
-        break;
-      }
-    }
-
-    return $result;
-  }
-
-  /////////////////////////////////////////////////
-  // CLASS METHODS, MESSAGE RESET
-  /////////////////////////////////////////////////
-
-  /**
-   * Clears all recipients assigned in the TO array.  Returns void.
-   * @return void
-   */
-  function ClearAddresses() {
-    $this->to = array();
-  }
-
-  /**
-   * Clears all recipients assigned in the CC array.  Returns void.
-   * @return void
-   */
-  function ClearCCs() {
-    $this->cc = array();
-  }
-
-  /**
-   * Clears all recipients assigned in the BCC array.  Returns void.
-   * @return void
-   */
-  function ClearBCCs() {
-    $this->bcc = array();
-  }
-
-  /**
-   * Clears all recipients assigned in the ReplyTo array.  Returns void.
-   * @return void
-   */
-  function ClearReplyTos() {
-    $this->ReplyTo = array();
-  }
-
-  /**
-   * Clears all recipients assigned in the TO, CC and BCC
-   * array.  Returns void.
-   * @return void
-   */
-  function ClearAllRecipients() {
-    $this->to = array();
-    $this->cc = array();
-    $this->bcc = array();
-  }
-
-  /**
-   * Clears all previously set filesystem, string, and binary
-   * attachments.  Returns void.
-   * @return void
-   */
-  function ClearAttachments() {
-    $this->attachment = array();
-  }
-
-  /**
-   * Clears all custom headers.  Returns void.
-   * @return void
-   */
-  function ClearCustomHeaders() {
-    $this->CustomHeader = array();
-  }
-
-  /////////////////////////////////////////////////
-  // CLASS METHODS, MISCELLANEOUS
-  /////////////////////////////////////////////////
-
-  /**
-   * Adds the error message to the error container.
-   * Returns void.
-   * @access private
-   * @return void
-   */
-  function SetError($msg) {
-    $this->error_count++;
-    $this->ErrorInfo = $msg;
-  }
-
-  /**
-   * Returns the proper RFC 822 formatted date.
-   * @access private
-   * @return string
-   */
-  function RFCDate() {
-    $tz = date('Z');
-    $tzs = ($tz < 0) ? '-' : '+';
-    $tz = abs($tz);
-    $tz = (int)($tz/3600)*100 + ($tz%3600)/60;
-    $result = sprintf("%s %s%04d", date('D, j M Y H:i:s'), $tzs, $tz);
-
-    return $result;
-  }
-
-  /**
-   * Returns the appropriate server variable.  Should work with both
-   * PHP 4.1.0+ as well as older versions.  Returns an empty string
-   * if nothing is found.
-   * @access private
-   * @return mixed
-   */
-  function ServerVar($varName) {
-    global $HTTP_SERVER_VARS;
-    global $HTTP_ENV_VARS;
-
-    if(!isset($_SERVER)) {
-      $_SERVER = $HTTP_SERVER_VARS;
-      if(!isset($_SERVER['REMOTE_ADDR'])) {
-        $_SERVER = $HTTP_ENV_VARS; // must be Apache
-      }
-    }
-
-    if(isset($_SERVER[$varName])) {
-      return $_SERVER[$varName];
-    } else {
-      return '';
-    }
-  }
-
-  /**
-   * Returns the server hostname or 'localhost.localdomain' if unknown.
-   * @access private
-   * @return string
-   */
-  function ServerHostname() {
-    if ($this->Hostname != '') {
-      $result = $this->Hostname;
-    } elseif ($this->ServerVar('SERVER_NAME') != '') {
-      $result = $this->ServerVar('SERVER_NAME');
-    } else {
-      $result = 'localhost.localdomain';
-    }
-
-    return $result;
-  }
-
-  /**
-   * Returns a message in the appropriate language.
-   * @access private
-   * @return string
-   */
-  function Lang($key) {
-    if(count($this->language) < 1) {
-      $this->SetLanguage('en'); // set the default language
-    }
-
-    if(isset($this->language[$key])) {
-      return $this->language[$key];
-    } else {
-      return 'Language string failed to load: ' . $key;
-    }
-  }
-
-  /**
-   * Returns true if an error occurred.
-   * @return bool
-   */
-  function IsError() {
-    return ($this->error_count > 0);
-  }
-
-  /**
-   * Changes every end of line from CR or LF to CRLF.
-   * @access private
-   * @return string
-   */
-  function FixEOL($str) {
-    $str = str_replace("\r\n", "\n", $str);
-    $str = str_replace("\r", "\n", $str);
-    $str = str_replace("\n", $this->LE, $str);
-    return $str;
-  }
-
-  /**
-   * Adds a custom header.
-   * @return void
-   */
-  function AddCustomHeader($custom_header) {
-    $this->CustomHeader[] = explode(':', $custom_header, 2);
-  }
-
-  /**
-   * Evaluates the message and returns modifications for inline images and backgrounds
-   * @access public
-   * @return $message
-   */
-  function MsgHTML($message,$basedir='') {
-    preg_match_all("/(src|background)=\"(.*)\"/Ui", $message, $images);
-    if(isset($images[2])) {
-      foreach($images[2] as $i => $url) {
-        // do not change urls for absolute images (thanks to corvuscorax)
-        if (!preg_match('/^[A-z][A-z]*:\/\//',$url)) {
-          $filename = basename($url);
-          $directory = dirname($url);
-          ($directory == '.')?$directory='':'';
-          $cid = 'cid:' . md5($filename);
-          $fileParts = split("\.", $filename);
-          $ext = $fileParts[1];
-          $mimeType = $this->_mime_types($ext);
-          if ( strlen($basedir) > 1 && substr($basedir,-1) != '/') { $basedir .= '/'; }
-          if ( strlen($directory) > 1 && substr($directory,-1) != '/') { $directory .= '/'; }
-          if ( $this->AddEmbeddedImage($basedir.$directory.$filename, md5($filename), $filename, 'base64',$mimeType) ) {
-            $message = preg_replace("/".$images[1][$i]."=\"".preg_quote($url, '/')."\"/Ui", $images[1][$i]."=\"".$cid."\"", $message);
-          }
-        }
-      }
-    }
-    $this->IsHTML(true);
-    $this->Body = $message;
-    $textMsg = trim(strip_tags(preg_replace('/<(head|title|style|script)[^>]*>.*?<\/\\1>/s','',$message)));
-    if ( !empty($textMsg) && empty($this->AltBody) ) {
-      $this->AltBody = html_entity_decode($textMsg);
-    }
-    if ( empty($this->AltBody) ) {
-      $this->AltBody = 'To view this email message, open the email in with HTML compatibility!' . "\n\n";
-    }
-  }
-
-  /**
-   * Gets the mime type of the embedded or inline image
-   * @access private
-   * @return mime type of ext
-   */
-  function _mime_types($ext = '') {
-    $mimes = array(
-      'ai'    =>  'application/postscript',
-      'aif'   =>  'audio/x-aiff',
-      'aifc'  =>  'audio/x-aiff',
-      'aiff'  =>  'audio/x-aiff',
-      'avi'   =>  'video/x-msvideo',
-      'bin'   =>  'application/macbinary',
-      'bmp'   =>  'image/bmp',
-      'class' =>  'application/octet-stream',
-      'cpt'   =>  'application/mac-compactpro',
-      'css'   =>  'text/css',
-      'dcr'   =>  'application/x-director',
-      'dir'   =>  'application/x-director',
-      'dll'   =>  'application/octet-stream',
-      'dms'   =>  'application/octet-stream',
-      'doc'   =>  'application/msword',
-      'dvi'   =>  'application/x-dvi',
-      'dxr'   =>  'application/x-director',
-      'eml'   =>  'message/rfc822',
-      'eps'   =>  'application/postscript',
-      'exe'   =>  'application/octet-stream',
-      'gif'   =>  'image/gif',
-      'gtar'  =>  'application/x-gtar',
-      'htm'   =>  'text/html',
-      'html'  =>  'text/html',
-      'jpe'   =>  'image/jpeg',
-      'jpeg'  =>  'image/jpeg',
-      'jpg'   =>  'image/jpeg',
-      'hqx'   =>  'application/mac-binhex40',
-      'js'    =>  'application/x-javascript',
-      'lha'   =>  'application/octet-stream',
-      'log'   =>  'text/plain',
-      'lzh'   =>  'application/octet-stream',
-      'mid'   =>  'audio/midi',
-      'midi'  =>  'audio/midi',
-      'mif'   =>  'application/vnd.mif',
-      'mov'   =>  'video/quicktime',
-      'movie' =>  'video/x-sgi-movie',
-      'mp2'   =>  'audio/mpeg',
-      'mp3'   =>  'audio/mpeg',
-      'mpe'   =>  'video/mpeg',
-      'mpeg'  =>  'video/mpeg',
-      'mpg'   =>  'video/mpeg',
-      'mpga'  =>  'audio/mpeg',
-      'oda'   =>  'application/oda',
-      'pdf'   =>  'application/pdf',
-      'php'   =>  'application/x-httpd-php',
-      'php3'  =>  'application/x-httpd-php',
-      'php4'  =>  'application/x-httpd-php',
-      'phps'  =>  'application/x-httpd-php-source',
-      'phtml' =>  'application/x-httpd-php',
-      'png'   =>  'image/png',
-      'ppt'   =>  'application/vnd.ms-powerpoint',
-      'ps'    =>  'application/postscript',
-      'psd'   =>  'application/octet-stream',
-      'qt'    =>  'video/quicktime',
-      'ra'    =>  'audio/x-realaudio',
-      'ram'   =>  'audio/x-pn-realaudio',
-      'rm'    =>  'audio/x-pn-realaudio',
-      'rpm'   =>  'audio/x-pn-realaudio-plugin',
-      'rtf'   =>  'text/rtf',
-      'rtx'   =>  'text/richtext',
-      'rv'    =>  'video/vnd.rn-realvideo',
-      'sea'   =>  'application/octet-stream',
-      'shtml' =>  'text/html',
-      'sit'   =>  'application/x-stuffit',
-      'so'    =>  'application/octet-stream',
-      'smi'   =>  'application/smil',
-      'smil'  =>  'application/smil',
-      'swf'   =>  'application/x-shockwave-flash',
-      'tar'   =>  'application/x-tar',
-      'text'  =>  'text/plain',
-      'txt'   =>  'text/plain',
-      'tgz'   =>  'application/x-tar',
-      'tif'   =>  'image/tiff',
-      'tiff'  =>  'image/tiff',
-      'wav'   =>  'audio/x-wav',
-      'wbxml' =>  'application/vnd.wap.wbxml',
-      'wmlc'  =>  'application/vnd.wap.wmlc',
-      'word'  =>  'application/msword',
-      'xht'   =>  'application/xhtml+xml',
-      'xhtml' =>  'application/xhtml+xml',
-      'xl'    =>  'application/excel',
-      'xls'   =>  'application/vnd.ms-excel',
-      'xml'   =>  'text/xml',
-      'xsl'   =>  'text/xml',
-      'zip'   =>  'application/zip'
-    );
-    return ( ! isset($mimes[strtolower($ext)])) ? 'application/octet-stream' : $mimes[strtolower($ext)];
-  }
-
-  /**
-   * Set (or reset) Class Objects (variables)
-   *
-   * Usage Example:
-   * $page->set('X-Priority', '3');
-   *
-   * @access public
-   * @param string $name Parameter Name
-   * @param mixed $value Parameter Value
-   * NOTE: will not work with arrays, there are no arrays to set/reset
-   */
-  function set ( $name, $value = '' ) {
-    if ( isset($this->$name) ) {
-      $this->$name = $value;
-    } else {
-      $this->SetError('Cannot set or reset variable ' . $name);
-      return false;
-    }
-  }
-
-  /**
-   * Read a file from a supplied filename and return it.
-   *
-   * @access public
-   * @param string $filename Parameter File Name
-   */
-  function getFile($filename) {
-    $return = '';
-    if ($fp = fopen($filename, 'rb')) {
-      while (!feof($fp)) {
-        $return .= fread($fp, 1024);
-      }
-      fclose($fp);
-      return $return;
-    } else {
-      return false;
-    }
-  }
-
-  /**
-   * Strips newlines to prevent header injection.
-   * @access private
-   * @param string $str String
-   * @return string
-   */
-  function SecureHeader($str) {
-    $str = trim($str);
-    $str = str_replace("\r", "", $str);
-    $str = str_replace("\n", "", $str);
-    return $str;
-  }
-
-  /**
-   * Set the private key file and password to sign the message.
-   *
-   * @access public
-   * @param string $key_filename Parameter File Name
-   * @param string $key_pass Password for private key
-   */
-  function Sign($cert_filename, $key_filename, $key_pass) {
-    $this->sign_cert_file = $cert_filename;
-    $this->sign_key_file = $key_filename;
-    $this->sign_key_pass = $key_pass;
-  }
-
-}
-
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php4/class.pop3.php b/facteur/phpmailer-php4/class.pop3.php
deleted file mode 100644
index 0a6d8d4..0000000
--- a/facteur/phpmailer-php4/class.pop3.php
+++ /dev/null
@@ -1,436 +0,0 @@
-<?php
-/*~ class.pop3.php
-.---------------------------------------------------------------------------.
-|  Software: PHPMailer - PHP email class                                    |
-|   Version: 2.0.4                                                          |
-|   Contact: via sourceforge.net support pages (also www.codeworxtech.com)  |
-|      Info: http://phpmailer.sourceforge.net                               |
-|   Support: http://sourceforge.net/projects/phpmailer/                     |
-| ------------------------------------------------------------------------- |
-|    Author: Andy Prevost (project admininistrator)                         |
-|    Author: Brent R. Matzelle (original founder)                           |
-| Copyright (c) 2004-2007, Andy Prevost. All Rights Reserved.               |
-| Copyright (c) 2001-2003, Brent R. Matzelle                                |
-| ------------------------------------------------------------------------- |
-|   License: Distributed under the Lesser General Public License (LGPL)     |
-|            http://www.gnu.org/copyleft/lesser.html                        |
-| This program is distributed in the hope that it will be useful - WITHOUT  |
-| ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or     |
-| FITNESS FOR A PARTICULAR PURPOSE.                                         |
-| ------------------------------------------------------------------------- |
-| We offer a number of paid services (www.codeworxtech.com):                |
-| - Web Hosting on highly optimized fast and secure servers                 |
-| - Technology Consulting                                                   |
-| - Oursourcing (highly qualified programmers and graphic designers)        |
-'---------------------------------------------------------------------------'
-
-/**
- * POP Before SMTP Authentication Class
- *
- * Author: Richard Davey (rich@corephp.co.uk)
- * License: LGPL, see PHPMailer License
- *
- * Specifically for PHPMailer to allow POP before SMTP authentication.
- * Does not yet work with APOP - if you have an APOP account, contact me
- * and we can test changes to this script.
- *
- * This class is based on the structure of the SMTP class by Chris Ryan
- *
- * This class is rfc 1939 compliant and implements all the commands
- * required for POP3 connection, authentication and disconnection.
- *
- * @package PHPMailer
- * @author Richard Davey
- */
-
-class POP3
-{
-  /**
-   * Default POP3 port
-   * @var int
-   */
-  var $POP3_PORT = 110;
-
-  /**
-   * Default Timeout
-   * @var int
-   */
-  var $POP3_TIMEOUT = 30;
-
-  /**
-   * POP3 Carriage Return + Line Feed
-   * @var string
-   */
-  var $CRLF = "\r\n";
-
-  /**
-   * Displaying Debug warnings? (0 = now, 1+ = yes)
-   * @var int
-   */
-  var $do_debug = 2;
-
-  /**
-   * POP3 Mail Server
-   * @var string
-   */
-  var $host;
-
-  /**
-   * POP3 Port
-   * @var int
-   */
-  var $port;
-
-  /**
-   * POP3 Timeout Value
-   * @var int
-   */
-  var $tval;
-
-  /**
-   * POP3 Username
-   * @var string
-   */
-  var $username;
-
-  /**
-   * POP3 Password
-   * @var string
-   */
-  var $password;
-
-  /**#@+
-   * @access private
-   */
-  var $pop_conn;
-  var $connected;
-  var $error;     //  Error log array
-  /**#@-*/
-
-  /**
-   * Constructor, sets the initial values
-   *
-   * @return POP3
-   */
-  function POP3 ()
-    {
-      $this->pop_conn = 0;
-      $this->connected = false;
-      $this->error = null;
-    }
-
-  /**
-   * Combination of public events - connect, login, disconnect
-   *
-   * @param string $host
-   * @param integer $port
-   * @param integer $tval
-   * @param string $username
-   * @param string $password
-   */
-  function Authorise ($host, $port = false, $tval = false, $username, $password, $debug_level = 0)
-  {
-    $this->host = $host;
-
-    //  If no port value is passed, retrieve it
-    if ($port == false)
-    {
-      $this->port = $this->POP3_PORT;
-    }
-    else
-    {
-      $this->port = $port;
-    }
-
-    //  If no port value is passed, retrieve it
-    if ($tval == false)
-    {
-      $this->tval = $this->POP3_TIMEOUT;
-    }
-    else
-    {
-      $this->tval = $tval;
-    }
-
-    $this->do_debug = $debug_level;
-    $this->username = $username;
-    $this->password = $password;
-
-    //  Refresh the error log
-      $this->error = null;
-
-      //  Connect
-    $result = $this->Connect($this->host, $this->port, $this->tval);
-
-    if ($result)
-    {
-      $login_result = $this->Login($this->username, $this->password);
-
-      if ($login_result)
-      {
-        $this->Disconnect();
-
-        return true;
-      }
-
-    }
-
-    //  We need to disconnect regardless if the login succeeded
-    $this->Disconnect();
-
-    return false;
-  }
-
-  /**
-   * Connect to the POP3 server
-   *
-   * @param string $host
-   * @param integer $port
-   * @param integer $tval
-   * @return boolean
-   */
-  function Connect ($host, $port = false, $tval = 30)
-    {
-    //  Are we already connected?
-    if ($this->connected)
-    {
-      return true;
-    }
-
-    /*
-      On Windows this will raise a PHP Warning error if the hostname doesn't exist.
-      Rather than supress it with @fsockopen, let's capture it cleanly instead
-    */
-
-    set_error_handler(array(&$this, 'catchWarning'));
-
-    //  Connect to the POP3 server
-    $this->pop_conn = fsockopen($host,    //  POP3 Host
-                  $port,    //  Port #
-                  $errno,   //  Error Number
-                  $errstr,  //  Error Message
-                  $tval);   //  Timeout (seconds)
-
-    //  Restore the error handler
-    restore_error_handler();
-
-    //  Does the Error Log now contain anything?
-    if ($this->error && $this->do_debug >= 1)
-    {
-        $this->displayErrors();
-    }
-
-    //  Did we connect?
-      if ($this->pop_conn == false)
-      {
-        //  It would appear not...
-        $this->error = array(
-          'error' => "Failed to connect to server $host on port $port",
-          'errno' => $errno,
-          'errstr' => $errstr
-        );
-
-        if ($this->do_debug >= 1)
-        {
-          $this->displayErrors();
-        }
-
-        return false;
-      }
-
-      //  Increase the stream time-out
-
-      //  Check for PHP 4.3.0 or later
-      if (version_compare(phpversion(), '4.3.0', 'ge'))
-      {
-        stream_set_timeout($this->pop_conn, $tval, 0);
-      }
-      else
-      {
-        //  Does not work on Windows
-        if (substr(PHP_OS, 0, 3) !== 'WIN')
-        {
-          socket_set_timeout($this->pop_conn, $tval, 0);
-        }
-      }
-
-    //  Get the POP3 server response
-      $pop3_response = $this->getResponse();
-
-      //  Check for the +OK
-      if ($this->checkResponse($pop3_response))
-      {
-      //  The connection is established and the POP3 server is talking
-      $this->connected = true;
-        return true;
-      }
-
-    }
-
-    /**
-     * Login to the POP3 server (does not support APOP yet)
-     *
-     * @param string $username
-     * @param string $password
-     * @return boolean
-     */
-    function Login ($username = '', $password = '')
-    {
-      if ($this->connected == false)
-      {
-        $this->error = 'Not connected to POP3 server';
-
-        if ($this->do_debug >= 1)
-        {
-          $this->displayErrors();
-        }
-      }
-
-      if (empty($username))
-      {
-        $username = $this->username;
-      }
-
-      if (empty($password))
-      {
-        $password = $this->password;
-      }
-
-    $pop_username = "USER $username" . $this->CRLF;
-    $pop_password = "PASS $password" . $this->CRLF;
-
-      //  Send the Username
-      $this->sendString($pop_username);
-      $pop3_response = $this->getResponse();
-
-      if ($this->checkResponse($pop3_response))
-      {
-        //  Send the Password
-        $this->sendString($pop_password);
-        $pop3_response = $this->getResponse();
-
-        if ($this->checkResponse($pop3_response))
-        {
-          return true;
-        }
-        else
-        {
-          return false;
-        }
-      }
-      else
-      {
-        return false;
-      }
-    }
-
-    /**
-     * Disconnect from the POP3 server
-     */
-    function Disconnect ()
-    {
-      $this->sendString('QUIT');
-
-      fclose($this->pop_conn);
-    }
-
-    /*
-      ---------------
-      Private Methods
-      ---------------
-    */
-
-    /**
-     * Get the socket response back.
-     * $size is the maximum number of bytes to retrieve
-     *
-     * @param integer $size
-     * @return string
-     */
-    function getResponse ($size = 128)
-    {
-      $pop3_response = fgets($this->pop_conn, $size);
-
-      return $pop3_response;
-    }
-
-    /**
-     * Send a string down the open socket connection to the POP3 server
-     *
-     * @param string $string
-     * @return integer
-     */
-    function sendString ($string)
-    {
-      $bytes_sent = fwrite($this->pop_conn, $string, strlen($string));
-
-      return $bytes_sent;
-
-    }
-
-    /**
-     * Checks the POP3 server response for +OK or -ERR
-     *
-     * @param string $string
-     * @return boolean
-     */
-    function checkResponse ($string)
-    {
-      if (substr($string, 0, 3) !== '+OK')
-      {
-        $this->error = array(
-          'error' => "Server reported an error: $string",
-          'errno' => 0,
-          'errstr' => ''
-        );
-
-        if ($this->do_debug >= 1)
-        {
-          $this->displayErrors();
-        }
-
-        return false;
-      }
-      else
-      {
-        return true;
-      }
-
-    }
-
-    /**
-     * If debug is enabled, display the error message array
-     *
-     */
-    function displayErrors ()
-    {
-      echo '<pre>';
-
-      foreach ($this->error as $single_error)
-    {
-        print_r($single_error);
-    }
-
-      echo '</pre>';
-    }
-
-  /**
-   * Takes over from PHP for the socket warning handler
-   *
-   * @param integer $errno
-   * @param string $errstr
-   * @param string $errfile
-   * @param integer $errline
-   */
-  function catchWarning ($errno, $errstr, $errfile, $errline)
-  {
-    $this->error[] = array(
-      'error' => "Connecting to the POP3 server raised a PHP warning: ",
-      'errno' => $errno,
-      'errstr' => $errstr
-    );
-  }
-
-  //  End of class
-}
-?>
diff --git a/facteur/phpmailer-php4/class.smtp.php b/facteur/phpmailer-php4/class.smtp.php
deleted file mode 100644
index be084a1..0000000
--- a/facteur/phpmailer-php4/class.smtp.php
+++ /dev/null
@@ -1,1062 +0,0 @@
-<?php
-/*~ class.smtp.php
-.---------------------------------------------------------------------------.
-|  Software: PHPMailer - PHP email class                                    |
-|   Version: 2.0.4                                                          |
-|   Contact: via sourceforge.net support pages (also www.codeworxtech.com)  |
-|      Info: http://phpmailer.sourceforge.net                               |
-|   Support: http://sourceforge.net/projects/phpmailer/                     |
-| ------------------------------------------------------------------------- |
-|    Author: Andy Prevost (project admininistrator)                         |
-|    Author: Brent R. Matzelle (original founder)                           |
-| Copyright (c) 2004-2007, Andy Prevost. All Rights Reserved.               |
-| Copyright (c) 2001-2003, Brent R. Matzelle                                |
-| ------------------------------------------------------------------------- |
-|   License: Distributed under the Lesser General Public License (LGPL)     |
-|            http://www.gnu.org/copyleft/lesser.html                        |
-| This program is distributed in the hope that it will be useful - WITHOUT  |
-| ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or     |
-| FITNESS FOR A PARTICULAR PURPOSE.                                         |
-| ------------------------------------------------------------------------- |
-| We offer a number of paid services (www.codeworxtech.com):                |
-| - Web Hosting on highly optimized fast and secure servers                 |
-| - Technology Consulting                                                   |
-| - Oursourcing (highly qualified programmers and graphic designers)        |
-'---------------------------------------------------------------------------'
-
-/**
- * SMTP is rfc 821 compliant and implements all the rfc 821 SMTP
- * commands except TURN which will always return a not implemented
- * error. SMTP also provides some utility methods for sending mail
- * to an SMTP server.
- * @package PHPMailer
- * @author Chris Ryan
- */
-
-class SMTP
-{
-  /**
-   *  SMTP server port
-   *  @var int
-   */
-  var $SMTP_PORT = 25;
-
-  /**
-   *  SMTP reply line ending
-   *  @var string
-   */
-  var $CRLF = "\r\n";
-
-  /**
-   *  Sets whether debugging is turned on
-   *  @var bool
-   */
-  var $do_debug;       # the level of debug to perform
-
-  /**
-   *  Sets VERP use on/off (default is off)
-   *  @var bool
-   */
-  var $do_verp = false;
-
-  /**#@+
-   * @access private
-   */
-  var $smtp_conn;      # the socket to the server
-  var $error;          # error if any on the last call
-  var $helo_rply;      # the reply the server sent to us for HELO
-  /**#@-*/
-
-  /**
-   * Initialize the class so that the data is in a known state.
-   * @access public
-   * @return void
-   */
-  function SMTP() {
-    $this->smtp_conn = 0;
-    $this->error = null;
-    $this->helo_rply = null;
-
-    $this->do_debug = 0;
-  }
-
-  /*************************************************************
-   *                    CONNECTION FUNCTIONS                  *
-   ***********************************************************/
-
-  /**
-   * Connect to the server specified on the port specified.
-   * If the port is not specified use the default SMTP_PORT.
-   * If tval is specified then a connection will try and be
-   * established with the server for that number of seconds.
-   * If tval is not specified the default is 30 seconds to
-   * try on the connection.
-   *
-   * SMTP CODE SUCCESS: 220
-   * SMTP CODE FAILURE: 421
-   * @access public
-   * @return bool
-   */
-  function Connect($host,$port=0,$tval=30) {
-    # set the error val to null so there is no confusion
-    $this->error = null;
-
-    # make sure we are __not__ connected
-    if($this->connected()) {
-      # ok we are connected! what should we do?
-      # for now we will just give an error saying we
-      # are already connected
-      $this->error = array("error" => "Already connected to a server");
-      return false;
-    }
-
-    if(empty($port)) {
-      $port = $this->SMTP_PORT;
-    }
-
-    #connect to the smtp server
-    $this->smtp_conn = fsockopen($host,    # the host of the server
-                                 $port,    # the port to use
-                                 $errno,   # error number if any
-                                 $errstr,  # error message if any
-                                 $tval);   # give up after ? secs
-    # verify we connected properly
-    if(empty($this->smtp_conn)) {
-      $this->error = array("error" => "Failed to connect to server",
-                           "errno" => $errno,
-                           "errstr" => $errstr);
-      if($this->do_debug >= 1) {
-        echo "SMTP -> ERROR: " . $this->error["error"] .
-                 ": $errstr ($errno)" . $this->CRLF;
-      }
-      return false;
-    }
-
-    # sometimes the SMTP server takes a little longer to respond
-    # so we will give it a longer timeout for the first read
-    // Windows still does not have support for this timeout function
-    if(substr(PHP_OS, 0, 3) != "WIN")
-     socket_set_timeout($this->smtp_conn, $tval, 0);
-
-    # get any announcement stuff
-    $announce = $this->get_lines();
-
-    # set the timeout  of any socket functions at 1/10 of a second
-    //if(function_exists("socket_set_timeout"))
-    //   socket_set_timeout($this->smtp_conn, 0, 100000);
-
-    if($this->do_debug >= 2) {
-      echo "SMTP -> FROM SERVER:" . $this->CRLF . $announce;
-    }
-
-    return true;
-  }
-
-  /**
-   * Performs SMTP authentication.  Must be run after running the
-   * Hello() method.  Returns true if successfully authenticated.
-   * @access public
-   * @return bool
-   */
-  function Authenticate($username, $password) {
-    // Start authentication
-    fputs($this->smtp_conn,"AUTH LOGIN" . $this->CRLF);
-
-    $rply = $this->get_lines();
-    $code = substr($rply,0,3);
-
-    if($code != 334) {
-      $this->error =
-        array("error" => "AUTH not accepted from server",
-              "smtp_code" => $code,
-              "smtp_msg" => substr($rply,4));
-      if($this->do_debug >= 1) {
-        echo "SMTP -> ERROR: " . $this->error["error"] .
-                 ": " . $rply . $this->CRLF;
-      }
-      return false;
-    }
-
-    // Send encoded username
-    fputs($this->smtp_conn, base64_encode($username) . $this->CRLF);
-
-    $rply = $this->get_lines();
-    $code = substr($rply,0,3);
-
-    if($code != 334) {
-      $this->error =
-        array("error" => "Username not accepted from server",
-              "smtp_code" => $code,
-              "smtp_msg" => substr($rply,4));
-      if($this->do_debug >= 1) {
-        echo "SMTP -> ERROR: " . $this->error["error"] .
-                 ": " . $rply . $this->CRLF;
-      }
-      return false;
-    }
-
-    // Send encoded password
-    fputs($this->smtp_conn, base64_encode($password) . $this->CRLF);
-
-    $rply = $this->get_lines();
-    $code = substr($rply,0,3);
-
-    if($code != 235) {
-      $this->error =
-        array("error" => "Password not accepted from server",
-              "smtp_code" => $code,
-              "smtp_msg" => substr($rply,4));
-      if($this->do_debug >= 1) {
-        echo "SMTP -> ERROR: " . $this->error["error"] .
-                 ": " . $rply . $this->CRLF;
-      }
-      return false;
-    }
-
-    return true;
-  }
-
-  /**
-   * Returns true if connected to a server otherwise false
-   * @access private
-   * @return bool
-   */
-  function Connected() {
-    if(!empty($this->smtp_conn)) {
-      $sock_status = socket_get_status($this->smtp_conn);
-      if($sock_status["eof"]) {
-        # hmm this is an odd situation... the socket is
-        # valid but we are not connected anymore
-        if($this->do_debug >= 1) {
-            echo "SMTP -> NOTICE:" . $this->CRLF .
-                 "EOF caught while checking if connected";
-        }
-        $this->Close();
-        return false;
-      }
-      return true; # everything looks good
-    }
-    return false;
-  }
-
-  /**
-   * Closes the socket and cleans up the state of the class.
-   * It is not considered good to use this function without
-   * first trying to use QUIT.
-   * @access public
-   * @return void
-   */
-  function Close() {
-    $this->error = null; # so there is no confusion
-    $this->helo_rply = null;
-    if(!empty($this->smtp_conn)) {
-      # close the connection and cleanup
-      fclose($this->smtp_conn);
-      $this->smtp_conn = 0;
-    }
-  }
-
-  /***************************************************************
-   *                        SMTP COMMANDS                       *
-   *************************************************************/
-
-  /**
-   * Issues a data command and sends the msg_data to the server
-   * finializing the mail transaction. $msg_data is the message
-   * that is to be send with the headers. Each header needs to be
-   * on a single line followed by a <CRLF> with the message headers
-   * and the message body being seperated by and additional <CRLF>.
-   *
-   * Implements rfc 821: DATA <CRLF>
-   *
-   * SMTP CODE INTERMEDIATE: 354
-   *     [data]
-   *     <CRLF>.<CRLF>
-   *     SMTP CODE SUCCESS: 250
-   *     SMTP CODE FAILURE: 552,554,451,452
-   * SMTP CODE FAILURE: 451,554
-   * SMTP CODE ERROR  : 500,501,503,421
-   * @access public
-   * @return bool
-   */
-  function Data($msg_data) {
-    $this->error = null; # so no confusion is caused
-
-    if(!$this->connected()) {
-      $this->error = array(
-              "error" => "Called Data() without being connected");
-      return false;
-    }
-
-    fputs($this->smtp_conn,"DATA" . $this->CRLF);
-
-    $rply = $this->get_lines();
-    $code = substr($rply,0,3);
-
-    if($this->do_debug >= 2) {
-      echo "SMTP -> FROM SERVER:" . $this->CRLF . $rply;
-    }
-
-    if($code != 354) {
-      $this->error =
-        array("error" => "DATA command not accepted from server",
-              "smtp_code" => $code,
-              "smtp_msg" => substr($rply,4));
-      if($this->do_debug >= 1) {
-        echo "SMTP -> ERROR: " . $this->error["error"] .
-                 ": " . $rply . $this->CRLF;
-      }
-      return false;
-    }
-
-    # the server is ready to accept data!
-    # according to rfc 821 we should not send more than 1000
-    # including the CRLF
-    # characters on a single line so we will break the data up
-    # into lines by \r and/or \n then if needed we will break
-    # each of those into smaller lines to fit within the limit.
-    # in addition we will be looking for lines that start with
-    # a period '.' and append and additional period '.' to that
-    # line. NOTE: this does not count towards are limit.
-
-    # normalize the line breaks so we know the explode works
-    $msg_data = str_replace("\r\n","\n",$msg_data);
-    $msg_data = str_replace("\r","\n",$msg_data);
-    $lines = explode("\n",$msg_data);
-
-    # we need to find a good way to determine is headers are
-    # in the msg_data or if it is a straight msg body
-    # currently I am assuming rfc 822 definitions of msg headers
-    # and if the first field of the first line (':' sperated)
-    # does not contain a space then it _should_ be a header
-    # and we can process all lines before a blank "" line as
-    # headers.
-    $field = substr($lines[0],0,strpos($lines[0],":"));
-    $in_headers = false;
-    if(!empty($field) && !strstr($field," ")) {
-      $in_headers = true;
-    }
-
-    $max_line_length = 998; # used below; set here for ease in change
-
-    while(list(,$line) = @each($lines)) {
-      $lines_out = null;
-      if($line == "" && $in_headers) {
-        $in_headers = false;
-      }
-      # ok we need to break this line up into several
-      # smaller lines
-      while(strlen($line) > $max_line_length) {
-        $pos = strrpos(substr($line,0,$max_line_length)," ");
-
-        # Patch to fix DOS attack
-        if(!$pos) {
-          $pos = $max_line_length - 1;
-        }
-
-        $lines_out[] = substr($line,0,$pos);
-        $line = substr($line,$pos + 1);
-        # if we are processing headers we need to
-        # add a LWSP-char to the front of the new line
-        # rfc 822 on long msg headers
-        if($in_headers) {
-          $line = "\t" . $line;
-        }
-      }
-      $lines_out[] = $line;
-
-      # now send the lines to the server
-      while(list(,$line_out) = @each($lines_out)) {
-        if(strlen($line_out) > 0)
-        {
-          if(substr($line_out, 0, 1) == ".") {
-            $line_out = "." . $line_out;
-          }
-        }
-        fputs($this->smtp_conn,$line_out . $this->CRLF);
-      }
-    }
-
-    # ok all the message data has been sent so lets get this
-    # over with aleady
-    fputs($this->smtp_conn, $this->CRLF . "." . $this->CRLF);
-
-    $rply = $this->get_lines();
-    $code = substr($rply,0,3);
-
-    if($this->do_debug >= 2) {
-      echo "SMTP -> FROM SERVER:" . $this->CRLF . $rply;
-    }
-
-    if($code != 250) {
-      $this->error =
-        array("error" => "DATA not accepted from server",
-              "smtp_code" => $code,
-              "smtp_msg" => substr($rply,4));
-      if($this->do_debug >= 1) {
-        echo "SMTP -> ERROR: " . $this->error["error"] .
-                 ": " . $rply . $this->CRLF;
-      }
-      return false;
-    }
-    return true;
-  }
-
-  /**
-   * Expand takes the name and asks the server to list all the
-   * people who are members of the _list_. Expand will return
-   * back and array of the result or false if an error occurs.
-   * Each value in the array returned has the format of:
-   *     [ <full-name> <sp> ] <path>
-   * The definition of <path> is defined in rfc 821
-   *
-   * Implements rfc 821: EXPN <SP> <string> <CRLF>
-   *
-   * SMTP CODE SUCCESS: 250
-   * SMTP CODE FAILURE: 550
-   * SMTP CODE ERROR  : 500,501,502,504,421
-   * @access public
-   * @return string array
-   */
-  function Expand($name) {
-    $this->error = null; # so no confusion is caused
-
-    if(!$this->connected()) {
-      $this->error = array(
-            "error" => "Called Expand() without being connected");
-      return false;
-    }
-
-    fputs($this->smtp_conn,"EXPN " . $name . $this->CRLF);
-
-    $rply = $this->get_lines();
-    $code = substr($rply,0,3);
-
-    if($this->do_debug >= 2) {
-      echo "SMTP -> FROM SERVER:" . $this->CRLF . $rply;
-    }
-
-    if($code != 250) {
-      $this->error =
-        array("error" => "EXPN not accepted from server",
-              "smtp_code" => $code,
-              "smtp_msg" => substr($rply,4));
-      if($this->do_debug >= 1) {
-        echo "SMTP -> ERROR: " . $this->error["error"] .
-                 ": " . $rply . $this->CRLF;
-      }
-      return false;
-    }
-
-    # parse the reply and place in our array to return to user
-    $entries = explode($this->CRLF,$rply);
-    while(list(,$l) = @each($entries)) {
-      $list[] = substr($l,4);
-    }
-
-    return $list;
-  }
-
-  /**
-   * Sends the HELO command to the smtp server.
-   * This makes sure that we and the server are in
-   * the same known state.
-   *
-   * Implements from rfc 821: HELO <SP> <domain> <CRLF>
-   *
-   * SMTP CODE SUCCESS: 250
-   * SMTP CODE ERROR  : 500, 501, 504, 421
-   * @access public
-   * @return bool
-   */
-  function Hello($host="") {
-    $this->error = null; # so no confusion is caused
-
-    if(!$this->connected()) {
-      $this->error = array(
-            "error" => "Called Hello() without being connected");
-      return false;
-    }
-
-    # if a hostname for the HELO was not specified determine
-    # a suitable one to send
-    if(empty($host)) {
-      # we need to determine some sort of appopiate default
-      # to send to the server
-      $host = "localhost";
-    }
-
-    // Send extended hello first (RFC 2821)
-    if(!$this->SendHello("EHLO", $host))
-    {
-      if(!$this->SendHello("HELO", $host))
-          return false;
-    }
-
-    return true;
-  }
-
-  /**
-   * Sends a HELO/EHLO command.
-   * @access private
-   * @return bool
-   */
-  function SendHello($hello, $host) {
-    fputs($this->smtp_conn, $hello . " " . $host . $this->CRLF);
-
-    $rply = $this->get_lines();
-    $code = substr($rply,0,3);
-
-    if($this->do_debug >= 2) {
-      echo "SMTP -> FROM SERVER: " . $this->CRLF . $rply;
-    }
-
-    if($code != 250) {
-      $this->error =
-        array("error" => $hello . " not accepted from server",
-              "smtp_code" => $code,
-              "smtp_msg" => substr($rply,4));
-      if($this->do_debug >= 1) {
-        echo "SMTP -> ERROR: " . $this->error["error"] .
-                 ": " . $rply . $this->CRLF;
-      }
-      return false;
-    }
-
-    $this->helo_rply = $rply;
-
-    return true;
-  }
-
-  /**
-   * Gets help information on the keyword specified. If the keyword
-   * is not specified then returns generic help, ussually contianing
-   * A list of keywords that help is available on. This function
-   * returns the results back to the user. It is up to the user to
-   * handle the returned data. If an error occurs then false is
-   * returned with $this->error set appropiately.
-   *
-   * Implements rfc 821: HELP [ <SP> <string> ] <CRLF>
-   *
-   * SMTP CODE SUCCESS: 211,214
-   * SMTP CODE ERROR  : 500,501,502,504,421
-   * @access public
-   * @return string
-   */
-  function Help($keyword="") {
-    $this->error = null; # to avoid confusion
-
-    if(!$this->connected()) {
-      $this->error = array(
-              "error" => "Called Help() without being connected");
-      return false;
-    }
-
-    $extra = "";
-    if(!empty($keyword)) {
-      $extra = " " . $keyword;
-    }
-
-    fputs($this->smtp_conn,"HELP" . $extra . $this->CRLF);
-
-    $rply = $this->get_lines();
-    $code = substr($rply,0,3);
-
-    if($this->do_debug >= 2) {
-      echo "SMTP -> FROM SERVER:" . $this->CRLF . $rply;
-    }
-
-    if($code != 211 && $code != 214) {
-      $this->error =
-        array("error" => "HELP not accepted from server",
-              "smtp_code" => $code,
-              "smtp_msg" => substr($rply,4));
-      if($this->do_debug >= 1) {
-        echo "SMTP -> ERROR: " . $this->error["error"] .
-                 ": " . $rply . $this->CRLF;
-      }
-      return false;
-    }
-
-    return $rply;
-  }
-
-  /**
-   * Starts a mail transaction from the email address specified in
-   * $from. Returns true if successful or false otherwise. If True
-   * the mail transaction is started and then one or more Recipient
-   * commands may be called followed by a Data command.
-   *
-   * Implements rfc 821: MAIL <SP> FROM:<reverse-path> <CRLF>
-   *
-   * SMTP CODE SUCCESS: 250
-   * SMTP CODE SUCCESS: 552,451,452
-   * SMTP CODE SUCCESS: 500,501,421
-   * @access public
-   * @return bool
-   */
-  function Mail($from) {
-    $this->error = null; # so no confusion is caused
-
-    if(!$this->connected()) {
-      $this->error = array(
-              "error" => "Called Mail() without being connected");
-      return false;
-    }
-
-    $useVerp = ($this->do_verp ? "XVERP" : "");
-    fputs($this->smtp_conn,"MAIL FROM:<" . $from . ">" . $useVerp . $this->CRLF);
-
-    $rply = $this->get_lines();
-    $code = substr($rply,0,3);
-
-    if($this->do_debug >= 2) {
-      echo "SMTP -> FROM SERVER:" . $this->CRLF . $rply;
-    }
-
-    if($code != 250) {
-      $this->error =
-        array("error" => "MAIL not accepted from server",
-              "smtp_code" => $code,
-              "smtp_msg" => substr($rply,4));
-      if($this->do_debug >= 1) {
-        echo "SMTP -> ERROR: " . $this->error["error"] .
-                 ": " . $rply . $this->CRLF;
-      }
-      return false;
-    }
-    return true;
-  }
-
-  /**
-   * Sends the command NOOP to the SMTP server.
-   *
-   * Implements from rfc 821: NOOP <CRLF>
-   *
-   * SMTP CODE SUCCESS: 250
-   * SMTP CODE ERROR  : 500, 421
-   * @access public
-   * @return bool
-   */
-  function Noop() {
-    $this->error = null; # so no confusion is caused
-
-    if(!$this->connected()) {
-      $this->error = array(
-              "error" => "Called Noop() without being connected");
-      return false;
-    }
-
-    fputs($this->smtp_conn,"NOOP" . $this->CRLF);
-
-    $rply = $this->get_lines();
-    $code = substr($rply,0,3);
-
-    if($this->do_debug >= 2) {
-      echo "SMTP -> FROM SERVER:" . $this->CRLF . $rply;
-    }
-
-    if($code != 250) {
-      $this->error =
-        array("error" => "NOOP not accepted from server",
-              "smtp_code" => $code,
-              "smtp_msg" => substr($rply,4));
-      if($this->do_debug >= 1) {
-        echo "SMTP -> ERROR: " . $this->error["error"] .
-                 ": " . $rply . $this->CRLF;
-      }
-      return false;
-    }
-    return true;
-  }
-
-  /**
-   * Sends the quit command to the server and then closes the socket
-   * if there is no error or the $close_on_error argument is true.
-   *
-   * Implements from rfc 821: QUIT <CRLF>
-   *
-   * SMTP CODE SUCCESS: 221
-   * SMTP CODE ERROR  : 500
-   * @access public
-   * @return bool
-   */
-  function Quit($close_on_error=true) {
-    $this->error = null; # so there is no confusion
-
-    if(!$this->connected()) {
-      $this->error = array(
-              "error" => "Called Quit() without being connected");
-      return false;
-    }
-
-    # send the quit command to the server
-    fputs($this->smtp_conn,"quit" . $this->CRLF);
-
-    # get any good-bye messages
-    $byemsg = $this->get_lines();
-
-    if($this->do_debug >= 2) {
-      echo "SMTP -> FROM SERVER:" . $this->CRLF . $byemsg;
-    }
-
-    $rval = true;
-    $e = null;
-
-    $code = substr($byemsg,0,3);
-    if($code != 221) {
-      # use e as a tmp var cause Close will overwrite $this->error
-      $e = array("error" => "SMTP server rejected quit command",
-                 "smtp_code" => $code,
-                 "smtp_rply" => substr($byemsg,4));
-      $rval = false;
-      if($this->do_debug >= 1) {
-        echo "SMTP -> ERROR: " . $e["error"] . ": " .
-                 $byemsg . $this->CRLF;
-      }
-    }
-
-    if(empty($e) || $close_on_error) {
-      $this->Close();
-    }
-
-    return $rval;
-  }
-
-  /**
-   * Sends the command RCPT to the SMTP server with the TO: argument of $to.
-   * Returns true if the recipient was accepted false if it was rejected.
-   *
-   * Implements from rfc 821: RCPT <SP> TO:<forward-path> <CRLF>
-   *
-   * SMTP CODE SUCCESS: 250,251
-   * SMTP CODE FAILURE: 550,551,552,553,450,451,452
-   * SMTP CODE ERROR  : 500,501,503,421
-   * @access public
-   * @return bool
-   */
-  function Recipient($to) {
-    $this->error = null; # so no confusion is caused
-
-    if(!$this->connected()) {
-      $this->error = array(
-              "error" => "Called Recipient() without being connected");
-      return false;
-    }
-
-    fputs($this->smtp_conn,"RCPT TO:<" . $to . ">" . $this->CRLF);
-
-    $rply = $this->get_lines();
-    $code = substr($rply,0,3);
-
-    if($this->do_debug >= 2) {
-      echo "SMTP -> FROM SERVER:" . $this->CRLF . $rply;
-    }
-
-    if($code != 250 && $code != 251) {
-      $this->error =
-        array("error" => "RCPT not accepted from server",
-              "smtp_code" => $code,
-              "smtp_msg" => substr($rply,4));
-      if($this->do_debug >= 1) {
-        echo "SMTP -> ERROR: " . $this->error["error"] .
-                 ": " . $rply . $this->CRLF;
-      }
-      return false;
-    }
-    return true;
-  }
-
-  /**
-   * Sends the RSET command to abort and transaction that is
-   * currently in progress. Returns true if successful false
-   * otherwise.
-   *
-   * Implements rfc 821: RSET <CRLF>
-   *
-   * SMTP CODE SUCCESS: 250
-   * SMTP CODE ERROR  : 500,501,504,421
-   * @access public
-   * @return bool
-   */
-  function Reset() {
-    $this->error = null; # so no confusion is caused
-
-    if(!$this->connected()) {
-      $this->error = array(
-              "error" => "Called Reset() without being connected");
-      return false;
-    }
-
-    fputs($this->smtp_conn,"RSET" . $this->CRLF);
-
-    $rply = $this->get_lines();
-    $code = substr($rply,0,3);
-
-    if($this->do_debug >= 2) {
-      echo "SMTP -> FROM SERVER:" . $this->CRLF . $rply;
-    }
-
-    if($code != 250) {
-      $this->error =
-        array("error" => "RSET failed",
-              "smtp_code" => $code,
-              "smtp_msg" => substr($rply,4));
-      if($this->do_debug >= 1) {
-        echo "SMTP -> ERROR: " . $this->error["error"] .
-                 ": " . $rply . $this->CRLF;
-      }
-      return false;
-    }
-
-    return true;
-  }
-
-  /**
-   * Starts a mail transaction from the email address specified in
-   * $from. Returns true if successful or false otherwise. If True
-   * the mail transaction is started and then one or more Recipient
-   * commands may be called followed by a Data command. This command
-   * will send the message to the users terminal if they are logged
-   * in.
-   *
-   * Implements rfc 821: SEND <SP> FROM:<reverse-path> <CRLF>
-   *
-   * SMTP CODE SUCCESS: 250
-   * SMTP CODE SUCCESS: 552,451,452
-   * SMTP CODE SUCCESS: 500,501,502,421
-   * @access public
-   * @return bool
-   */
-  function Send($from) {
-    $this->error = null; # so no confusion is caused
-
-    if(!$this->connected()) {
-      $this->error = array(
-              "error" => "Called Send() without being connected");
-      return false;
-    }
-
-    fputs($this->smtp_conn,"SEND FROM:" . $from . $this->CRLF);
-
-    $rply = $this->get_lines();
-    $code = substr($rply,0,3);
-
-    if($this->do_debug >= 2) {
-      echo "SMTP -> FROM SERVER:" . $this->CRLF . $rply;
-    }
-
-    if($code != 250) {
-      $this->error =
-        array("error" => "SEND not accepted from server",
-              "smtp_code" => $code,
-              "smtp_msg" => substr($rply,4));
-      if($this->do_debug >= 1) {
-        echo "SMTP -> ERROR: " . $this->error["error"] .
-                 ": " . $rply . $this->CRLF;
-      }
-      return false;
-    }
-    return true;
-  }
-
-  /**
-   * Starts a mail transaction from the email address specified in
-   * $from. Returns true if successful or false otherwise. If True
-   * the mail transaction is started and then one or more Recipient
-   * commands may be called followed by a Data command. This command
-   * will send the message to the users terminal if they are logged
-   * in and send them an email.
-   *
-   * Implements rfc 821: SAML <SP> FROM:<reverse-path> <CRLF>
-   *
-   * SMTP CODE SUCCESS: 250
-   * SMTP CODE SUCCESS: 552,451,452
-   * SMTP CODE SUCCESS: 500,501,502,421
-   * @access public
-   * @return bool
-   */
-  function SendAndMail($from) {
-    $this->error = null; # so no confusion is caused
-
-    if(!$this->connected()) {
-      $this->error = array(
-          "error" => "Called SendAndMail() without being connected");
-      return false;
-    }
-
-    fputs($this->smtp_conn,"SAML FROM:" . $from . $this->CRLF);
-
-    $rply = $this->get_lines();
-    $code = substr($rply,0,3);
-
-    if($this->do_debug >= 2) {
-      echo "SMTP -> FROM SERVER:" . $this->CRLF . $rply;
-    }
-
-    if($code != 250) {
-      $this->error =
-        array("error" => "SAML not accepted from server",
-              "smtp_code" => $code,
-              "smtp_msg" => substr($rply,4));
-      if($this->do_debug >= 1) {
-        echo "SMTP -> ERROR: " . $this->error["error"] .
-                 ": " . $rply . $this->CRLF;
-      }
-      return false;
-    }
-    return true;
-  }
-
-  /**
-   * Starts a mail transaction from the email address specified in
-   * $from. Returns true if successful or false otherwise. If True
-   * the mail transaction is started and then one or more Recipient
-   * commands may be called followed by a Data command. This command
-   * will send the message to the users terminal if they are logged
-   * in or mail it to them if they are not.
-   *
-   * Implements rfc 821: SOML <SP> FROM:<reverse-path> <CRLF>
-   *
-   * SMTP CODE SUCCESS: 250
-   * SMTP CODE SUCCESS: 552,451,452
-   * SMTP CODE SUCCESS: 500,501,502,421
-   * @access public
-   * @return bool
-   */
-  function SendOrMail($from) {
-    $this->error = null; # so no confusion is caused
-
-    if(!$this->connected()) {
-      $this->error = array(
-          "error" => "Called SendOrMail() without being connected");
-      return false;
-    }
-
-    fputs($this->smtp_conn,"SOML FROM:" . $from . $this->CRLF);
-
-    $rply = $this->get_lines();
-    $code = substr($rply,0,3);
-
-    if($this->do_debug >= 2) {
-      echo "SMTP -> FROM SERVER:" . $this->CRLF . $rply;
-    }
-
-    if($code != 250) {
-      $this->error =
-        array("error" => "SOML not accepted from server",
-              "smtp_code" => $code,
-              "smtp_msg" => substr($rply,4));
-      if($this->do_debug >= 1) {
-        echo "SMTP -> ERROR: " . $this->error["error"] .
-                 ": " . $rply . $this->CRLF;
-      }
-      return false;
-    }
-    return true;
-  }
-
-  /**
-   * This is an optional command for SMTP that this class does not
-   * support. This method is here to make the RFC821 Definition
-   * complete for this class and __may__ be implimented in the future
-   *
-   * Implements from rfc 821: TURN <CRLF>
-   *
-   * SMTP CODE SUCCESS: 250
-   * SMTP CODE FAILURE: 502
-   * SMTP CODE ERROR  : 500, 503
-   * @access public
-   * @return bool
-   */
-  function Turn() {
-    $this->error = array("error" => "This method, TURN, of the SMTP ".
-                                    "is not implemented");
-    if($this->do_debug >= 1) {
-      echo "SMTP -> NOTICE: " . $this->error["error"] . $this->CRLF;
-    }
-    return false;
-  }
-
-  /**
-   * Verifies that the name is recognized by the server.
-   * Returns false if the name could not be verified otherwise
-   * the response from the server is returned.
-   *
-   * Implements rfc 821: VRFY <SP> <string> <CRLF>
-   *
-   * SMTP CODE SUCCESS: 250,251
-   * SMTP CODE FAILURE: 550,551,553
-   * SMTP CODE ERROR  : 500,501,502,421
-   * @access public
-   * @return int
-   */
-  function Verify($name) {
-    $this->error = null; # so no confusion is caused
-
-    if(!$this->connected()) {
-      $this->error = array(
-              "error" => "Called Verify() without being connected");
-      return false;
-    }
-
-    fputs($this->smtp_conn,"VRFY " . $name . $this->CRLF);
-
-    $rply = $this->get_lines();
-    $code = substr($rply,0,3);
-
-    if($this->do_debug >= 2) {
-      echo "SMTP -> FROM SERVER:" . $this->CRLF . $rply;
-    }
-
-    if($code != 250 && $code != 251) {
-      $this->error =
-        array("error" => "VRFY failed on name '$name'",
-              "smtp_code" => $code,
-              "smtp_msg" => substr($rply,4));
-      if($this->do_debug >= 1) {
-        echo "SMTP -> ERROR: " . $this->error["error"] .
-                 ": " . $rply . $this->CRLF;
-      }
-      return false;
-    }
-    return $rply;
-  }
-
-  /*******************************************************************
-   *                       INTERNAL FUNCTIONS                       *
-   ******************************************************************/
-
-  /**
-   * Read in as many lines as possible
-   * either before eof or socket timeout occurs on the operation.
-   * With SMTP we can tell if we have more lines to read if the
-   * 4th character is '-' symbol. If it is a space then we don't
-   * need to read anything else.
-   * @access private
-   * @return string
-   */
-  function get_lines() {
-    $data = "";
-    while($str = @fgets($this->smtp_conn,515)) {
-      if($this->do_debug >= 4) {
-        echo "SMTP -> get_lines(): \$data was \"$data\"" .
-                 $this->CRLF;
-        echo "SMTP -> get_lines(): \$str is \"$str\"" .
-                 $this->CRLF;
-      }
-      $data .= $str;
-      if($this->do_debug >= 4) {
-        echo "SMTP -> get_lines(): \$data is \"$data\"" . $this->CRLF;
-      }
-      # if the 4th character is a space then we are done reading
-      # so just break the loop
-      if(substr($str,3,1) == " ") { break; }
-    }
-    return $data;
-  }
-
-}
-
-
- ?>
diff --git a/facteur/phpmailer-php4/language/phpmailer.lang-ar.php b/facteur/phpmailer-php4/language/phpmailer.lang-ar.php
deleted file mode 100644
index c7f343a..0000000
--- a/facteur/phpmailer-php4/language/phpmailer.lang-ar.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<?php
-/**
- * PHPMailer language file.
- * Arabic Version, UTF-8
- * by : bahjat al mostafa <bahjat983@hotmail.com>
- */
-
-$PHPMAILER_LANG = array();
-
-$PHPMAILER_LANG['provide_address'] = 'You must provide at least one ' .
-                                     'recipient email address.';
-$PHPMAILER_LANG['mailer_not_supported'] = ' mailer غير مدعوم.';
-$PHPMAILER_LANG['execute'] = 'لم أستطع تنفيذ : ';
-$PHPMAILER_LANG['instantiate'] = 'لم نستطع توفير خدمة البريد.';
-$PHPMAILER_LANG['authenticate'] = 'SMTP Error: لم نستطع تأكيد الهوية.';
-$PHPMAILER_LANG['from_failed'] = 'البريد التالي لم نستطع ارسال البريد له : ';
-$PHPMAILER_LANG['recipients_failed'] = 'SMTP Error: الأخطاء التالية ' .
-                                       'فشل في الارسال لكل من : ';
-$PHPMAILER_LANG['data_not_accepted'] = 'SMTP Error: لم يتم قبول المعلومات .';
-$PHPMAILER_LANG['connect_host'] = 'SMTP Error: لم نستطع الاتصال بمخدم SMTP.';
-$PHPMAILER_LANG['file_access'] = 'لم نستطع الوصول للملف: ';
-$PHPMAILER_LANG['file_open'] = 'File Error: لم نستطع فتح الملف: ';
-$PHPMAILER_LANG['encoding'] = 'ترميز غير معروف: ';
-$PHPMAILER_LANG['signing'] = 'خطأ في التوقيع: ';
-$PHPMAILER_LANG['smtp_error'] = 'SMTP server error: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php4/language/phpmailer.lang-br.php b/facteur/phpmailer-php4/language/phpmailer.lang-br.php
deleted file mode 100644
index dece225..0000000
--- a/facteur/phpmailer-php4/language/phpmailer.lang-br.php
+++ /dev/null
@@ -1,23 +0,0 @@
-<?php
-/**
- * PHPMailer language file.
- * Portuguese Version
- * By Paulo Henrique Garcia - paulo@controllerweb.com.br
- */
-
-$PHPMAILER_LANG = array();
-$PHPMAILER_LANG['provide_address']      = 'Você deve fornecer pelo menos um endereço de destinatário de email.';
-$PHPMAILER_LANG['mailer_not_supported'] = ' mailer não suportado.';
-$PHPMAILER_LANG['execute']              = 'Não foi possível executar: ';
-$PHPMAILER_LANG['instantiate']          = 'Não foi possível instanciar a função mail.';
-$PHPMAILER_LANG['authenticate']         = 'Erro de SMTP: Não foi possível autenticar.';
-$PHPMAILER_LANG['from_failed']          = 'Os endereços de rementente a seguir falharam: ';
-$PHPMAILER_LANG['recipients_failed']    = 'Erro de SMTP: Os endereços de destinatário a seguir falharam: ';
-$PHPMAILER_LANG['data_not_accepted']    = 'Erro de SMTP: Dados não aceitos.';
-$PHPMAILER_LANG['connect_host']         = 'Erro de SMTP: Não foi possível conectar com o servidor SMTP.';
-$PHPMAILER_LANG['file_access']          = 'Não foi possível acessar o arquivo: ';
-$PHPMAILER_LANG['file_open']            = 'Erro de Arquivo: Não foi possível abrir o arquivo: ';
-$PHPMAILER_LANG['encoding']             = 'Codificação desconhecida: ';
-$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php4/language/phpmailer.lang-ca.php b/facteur/phpmailer-php4/language/phpmailer.lang-ca.php
deleted file mode 100644
index dfc8370..0000000
--- a/facteur/phpmailer-php4/language/phpmailer.lang-ca.php
+++ /dev/null
@@ -1,24 +0,0 @@
-<?php
-/**
- * PHPMailer language file.
- * Catalan Version
- * By Ivan: web AT microstudi DOT com
- */
-
-$PHPMAILER_LANG = array();
-
-$PHPMAILER_LANG['provide_address']      = 'S\'ha de proveir almenys una adreça d\'email com a destinatari.';
-$PHPMAILER_LANG['mailer_not_supported'] = ' mailer no està suportat';
-$PHPMAILER_LANG['execute']              = 'No es pot executar: ';
-$PHPMAILER_LANG['instantiate']          = 'No s\'ha pogut crear una instància de la funció Mail.';
-$PHPMAILER_LANG['authenticate']         = 'Error SMTP: No s\'hapogut autenticar.';
-$PHPMAILER_LANG['from_failed']          = 'La(s) següent(s) adreces de remitent han fallat: ';
-$PHPMAILER_LANG['recipients_failed']    = 'Error SMTP: Els següents destinataris han fallat: ';
-$PHPMAILER_LANG['data_not_accepted']    = 'Error SMTP: Dades no acceptades.';
-$PHPMAILER_LANG['connect_host']         = 'Error SMTP: No es pot connectar al servidor SMTP.';
-$PHPMAILER_LANG['file_access']          = 'No es pot accedir a l\'arxiu: ';
-$PHPMAILER_LANG['file_open']            = 'Error d\'Arxiu: No es pot obrir l\'arxiu: ';
-$PHPMAILER_LANG['encoding']             = 'Codificació desconeguda: ';
-$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php4/language/phpmailer.lang-ch.php b/facteur/phpmailer-php4/language/phpmailer.lang-ch.php
deleted file mode 100644
index 5251402..0000000
--- a/facteur/phpmailer-php4/language/phpmailer.lang-ch.php
+++ /dev/null
@@ -1,24 +0,0 @@
-<?php
-/**
- * PHPMailer language file.  
- * Chinese Version
- * By LiuXin: www.80x86.cn/blog/
- */
-
-$PHPMAILER_LANG = array();
-
-$PHPMAILER_LANG['provide_address'] = '您必须提供至少一个 收信人的email地址。';
-$PHPMAILER_LANG['mailer_not_supported'] = ' 您所选择的发送邮件的方法并不支持。';
-$PHPMAILER_LANG['execute'] = '不能执行: ';
-$PHPMAILER_LANG['instantiate'] = '不能实现mail方法。';
-$PHPMAILER_LANG['authenticate'] = 'SMTP 错误:身份验证失败。';
-$PHPMAILER_LANG['from_failed'] = '下面的发送地址邮件发送失败了: ';
-$PHPMAILER_LANG['recipients_failed'] = 'SMTP 错误: 下面的 收件人失败了: ';
-$PHPMAILER_LANG['data_not_accepted'] = 'SMTP 错误: 数据不可接受。';
-$PHPMAILER_LANG['connect_host'] = 'SMTP 错误: 不能连接SMTP主机。';
-$PHPMAILER_LANG['file_access'] = '不能访问文件:';
-$PHPMAILER_LANG['file_open'] = '文件错误:不能打开文件:';
-$PHPMAILER_LANG['encoding'] = '未知编码:';
-$PHPMAILER_LANG['signing'] = 'Signing Error: ';
-$PHPMAILER_LANG['smtp_error'] = 'SMTP server error: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php4/language/phpmailer.lang-cz.php b/facteur/phpmailer-php4/language/phpmailer.lang-cz.php
deleted file mode 100644
index 80b4eea..0000000
--- a/facteur/phpmailer-php4/language/phpmailer.lang-cz.php
+++ /dev/null
@@ -1,23 +0,0 @@
-<?php
-/**
- * PHPMailer language file.
- * Czech Version
- */
-
-$PHPMAILER_LANG = array();
-
-$PHPMAILER_LANG["provide_address"]      = 'Musíte zadat alespoò jednu emailovou adresu pøíjemce.';
-$PHPMAILER_LANG["mailer_not_supported"] = ' mailový klient není podporován.';
-$PHPMAILER_LANG["execute"]              = 'Nelze provést: ';
-$PHPMAILER_LANG["instantiate"]          = 'Nelze vytvoøit instanci emailové funkce.';
-$PHPMAILER_LANG["authenticate"]         = 'SMTP Error: Chyba autentikace.';
-$PHPMAILER_LANG["from_failed"]          = 'Následující adresa From je nesprávná: ';
-$PHPMAILER_LANG["recipients_failed"]    = 'SMTP Error: Adresy pøíjemcù nejsou správné ' .
-$PHPMAILER_LANG["data_not_accepted"]    = 'SMTP Error: Data nebyla pøijata';
-$PHPMAILER_LANG["connect_host"]         = 'SMTP Error: Nelze navázat spojení se SMTP serverem.';
-$PHPMAILER_LANG["file_access"]          = 'Soubor nenalezen: ';
-$PHPMAILER_LANG["file_open"]            = 'File Error: Nelze otevøít soubor pro ètení: ';
-$PHPMAILER_LANG["encoding"]             = 'Neznámé kódování: ';
-$PHPMAILER_LANG["signing"]              = 'Signing Error: ';
-$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php4/language/phpmailer.lang-de.php b/facteur/phpmailer-php4/language/phpmailer.lang-de.php
deleted file mode 100644
index 7e23f4b..0000000
--- a/facteur/phpmailer-php4/language/phpmailer.lang-de.php
+++ /dev/null
@@ -1,24 +0,0 @@
-<?php
-/**
- * PHPMailer language file.
- * German Version
- * Thanks to Yann-Patrick Schlame for the latest update!
- */
-
-$PHPMAILER_LANG = array();
-
-$PHPMAILER_LANG['provide_address']      = 'Bitte geben Sie mindestens eine Empfänger Emailadresse an.';
-$PHPMAILER_LANG['mailer_not_supported'] = ' mailer wird nicht unterstützt.';
-$PHPMAILER_LANG['execute']              = 'Konnte folgenden Befehl nicht ausführen: ';
-$PHPMAILER_LANG['instantiate']          = 'Mail Funktion konnte nicht initialisiert werden.';
-$PHPMAILER_LANG['authenticate']         = 'SMTP Fehler: Authentifizierung fehlgeschlagen.';
-$PHPMAILER_LANG['from_failed']          = 'Die folgende Absenderadresse ist nicht korrekt: ';
-$PHPMAILER_LANG['recipients_failed']    = 'SMTP Fehler: Die folgenden Empfänger sind nicht korrekt: ';
-$PHPMAILER_LANG['data_not_accepted']    = 'SMTP Fehler: Daten werden nicht akzeptiert.';
-$PHPMAILER_LANG['connect_host']         = 'SMTP Fehler: Konnte keine Verbindung zum SMTP-Host herstellen.';
-$PHPMAILER_LANG['file_access']          = 'Zugriff auf folgende Datei fehlgeschlagen: ';
-$PHPMAILER_LANG['file_open']            = 'Datei Fehler: konnte folgende Datei nicht öffnen: ';
-$PHPMAILER_LANG['encoding']             = 'Unbekanntes Encoding-Format: ';
-$PHPMAILER_LANG['signing']              = 'Fehler beim Signieren: ';
-$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php4/language/phpmailer.lang-dk.php b/facteur/phpmailer-php4/language/phpmailer.lang-dk.php
deleted file mode 100644
index 120fd3b..0000000
--- a/facteur/phpmailer-php4/language/phpmailer.lang-dk.php
+++ /dev/null
@@ -1,23 +0,0 @@
-<?php
-/**
- * PHPMailer language file.
- * Danish Version
- * Author: Mikael Stokkebro <info@stokkebro.dk> */
-
-$PHPMAILER_LANG = array();
-
-$PHPMAILER_LANG['provide_address']      = 'Du skal indtaste mindst en modtagers emailadresse.';
-$PHPMAILER_LANG['mailer_not_supported'] = ' mailer understøttes ikke.';
-$PHPMAILER_LANG['execute']              = 'Kunne ikke køre: ';
-$PHPMAILER_LANG['instantiate']          = 'Kunne ikke initialisere email funktionen.';
-$PHPMAILER_LANG['authenticate']         = 'SMTP fejl: Kunne ikke logge på.';
-$PHPMAILER_LANG['from_failed']          = 'Følgende afsenderadresse er forkert: ';
-$PHPMAILER_LANG['recipients_failed']    = 'SMTP fejl: Følgende modtagere er forkerte: ';
-$PHPMAILER_LANG['data_not_accepted']    = 'SMTP fejl: Data kunne ikke accepteres.';
-$PHPMAILER_LANG['connect_host']         = 'SMTP fejl: Kunne ikke tilslutte SMTP serveren.';
-$PHPMAILER_LANG['file_access']          = 'Ingen adgang til fil: ';
-$PHPMAILER_LANG['file_open']            = 'Fil fejl: Kunne ikke åbne filen: ';
-$PHPMAILER_LANG['encoding']             = 'Ukendt encode-format: ';
-$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php4/language/phpmailer.lang-en.php b/facteur/phpmailer-php4/language/phpmailer.lang-en.php
deleted file mode 100644
index 41906b1..0000000
--- a/facteur/phpmailer-php4/language/phpmailer.lang-en.php
+++ /dev/null
@@ -1,23 +0,0 @@
-<?php
-/**
- * PHPMailer language file.
- * English Version
- */
-
-$PHPMAILER_LANG = array();
-
-$PHPMAILER_LANG['provide_address']      = 'You must provide at least one recipient email address.';
-$PHPMAILER_LANG['mailer_not_supported'] = ' mailer is not supported.';
-$PHPMAILER_LANG['execute']              = 'Could not execute: ';
-$PHPMAILER_LANG['instantiate']          = 'Could not instantiate mail function.';
-$PHPMAILER_LANG['authenticate']         = 'SMTP Error: Could not authenticate.';
-$PHPMAILER_LANG['from_failed']          = 'The following From address failed: ';
-$PHPMAILER_LANG['recipients_failed']    = 'SMTP Error: The following recipients failed: ';
-$PHPMAILER_LANG['data_not_accepted']    = 'SMTP Error: Data not accepted.';
-$PHPMAILER_LANG['connect_host']         = 'SMTP Error: Could not connect to SMTP host.';
-$PHPMAILER_LANG['file_access']          = 'Could not access file: ';
-$PHPMAILER_LANG['file_open']            = 'File Error: Could not open file: ';
-$PHPMAILER_LANG['encoding']             = 'Unknown encoding: ';
-$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php4/language/phpmailer.lang-es.php b/facteur/phpmailer-php4/language/phpmailer.lang-es.php
deleted file mode 100644
index b0d7d22..0000000
--- a/facteur/phpmailer-php4/language/phpmailer.lang-es.php
+++ /dev/null
@@ -1,23 +0,0 @@
-<?php
-/**
- * PHPMailer language file.
- * Versión en español
- */
-
-$PHPMAILER_LANG = array();
-
-$PHPMAILER_LANG['provide_address']      = 'Debe proveer al menos una dirección de email como destinatario.';
-$PHPMAILER_LANG['mailer_not_supported'] = ' mailer no está soportado.';
-$PHPMAILER_LANG['execute']              = 'No puedo ejecutar: ';
-$PHPMAILER_LANG['instantiate']          = 'No pude crear una instancia de la función Mail.';
-$PHPMAILER_LANG['authenticate']         = 'Error SMTP: No se pudo autentificar.';
-$PHPMAILER_LANG['from_failed']          = 'La(s) siguiente(s) direcciones de remitente fallaron: ';
-$PHPMAILER_LANG['recipients_failed']    = 'Error SMTP: Los siguientes destinatarios fallaron: ';
-$PHPMAILER_LANG['data_not_accepted']    = 'Error SMTP: Datos no aceptados.';
-$PHPMAILER_LANG['connect_host']         = 'Error SMTP: No puedo conectar al servidor SMTP.';
-$PHPMAILER_LANG['file_access']          = 'No puedo acceder al archivo: ';
-$PHPMAILER_LANG['file_open']            = 'Error de Archivo: No puede abrir el archivo: ';
-$PHPMAILER_LANG['encoding']             = 'Codificación desconocida: ';
-$PHPMAILER_LANG['signing']              = 'Error al firmar: ';
-$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php4/language/phpmailer.lang-et.php b/facteur/phpmailer-php4/language/phpmailer.lang-et.php
deleted file mode 100644
index 943680c..0000000
--- a/facteur/phpmailer-php4/language/phpmailer.lang-et.php
+++ /dev/null
@@ -1,24 +0,0 @@
-<?php
-/**
- * PHPMailer language file.
- * Estonian Version
- * By Indrek Päri
- */
-
-$PHPMAILER_LANG = array();
-
-$PHPMAILER_LANG['provide_address']      = 'Te peate määrama vähemalt ühe saaja e-posti aadressi.';
-$PHPMAILER_LANG['mailer_not_supported'] = ' maileri tugi puudub.';
-$PHPMAILER_LANG['execute']              = 'Tegevus ebaõnnestus: ';
-$PHPMAILER_LANG['instantiate']          = 'mail funktiooni käivitamine ebaõnnestus.';
-$PHPMAILER_LANG['authenticate']         = 'SMTP Viga: Autoriseerimise viga.';
-$PHPMAILER_LANG['from_failed']          = 'Järgnev saatja e-posti aadress on vigane: ';
-$PHPMAILER_LANG['recipients_failed']    = 'SMTP Viga: Järgnevate saajate e-posti aadressid on vigased: ';
-$PHPMAILER_LANG['data_not_accepted']    = 'SMTP Viga: Vigased andmed.';
-$PHPMAILER_LANG['connect_host']         = 'SMTP Viga: Ei õnnestunud luua ühendust SMTP serveriga.';
-$PHPMAILER_LANG['file_access']          = 'Pole piisavalt õiguseid järgneva faili avamiseks: ';
-$PHPMAILER_LANG['file_open']            = 'Faili Viga: Faili avamine ebaõnnestus: ';
-$PHPMAILER_LANG['encoding']             = 'Tundmatu Unknown kodeering: ';
-$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php4/language/phpmailer.lang-fi.php b/facteur/phpmailer-php4/language/phpmailer.lang-fi.php
deleted file mode 100644
index 970ebc0..0000000
--- a/facteur/phpmailer-php4/language/phpmailer.lang-fi.php
+++ /dev/null
@@ -1,24 +0,0 @@
-<?php
-/**
- * PHPMailer language file.
- * Finnish Version
- * By Jyry Kuukanen
- */
-
-$PHPMAILER_LANG = array();
-
-$PHPMAILER_LANG['provide_address']      = 'Aseta vähintään yksi vastaanottajan sähk&ouml;postiosoite.';
-$PHPMAILER_LANG['mailer_not_supported'] = 'postivälitintyyppiä ei tueta.';
-$PHPMAILER_LANG['execute']              = 'Suoritus epäonnistui: ';
-$PHPMAILER_LANG['instantiate']          = 'mail-funktion luonti epäonnistui.';
-$PHPMAILER_LANG['authenticate']         = 'SMTP-virhe: käyttäjätunnistus epäonnistui.';
-$PHPMAILER_LANG['from_failed']          = 'Seuraava lähettäjän osoite on virheellinen: ';
-$PHPMAILER_LANG['recipients_failed']    = 'SMTP-virhe: seuraava vastaanottaja osoite on virheellinen.';
-$PHPMAILER_LANG['data_not_accepted']    = 'SMTP-virhe: data on virheellinen.';
-$PHPMAILER_LANG['connect_host']         = 'SMTP-virhe: yhteys palvelimeen ei onnistu.';
-$PHPMAILER_LANG['file_access']          = 'Seuraavaan tiedostoon ei ole oikeuksia: ';
-$PHPMAILER_LANG['file_open']            = 'Tiedostovirhe: Ei voida avata tiedostoa: ';
-$PHPMAILER_LANG['encoding']             = 'Tuntematon koodaustyyppi: ';
-$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php4/language/phpmailer.lang-fo.php b/facteur/phpmailer-php4/language/phpmailer.lang-fo.php
deleted file mode 100644
index b09414b..0000000
--- a/facteur/phpmailer-php4/language/phpmailer.lang-fo.php
+++ /dev/null
@@ -1,25 +0,0 @@
-<?php
-/**
- * PHPMailer language file.
- * Faroese Version [language of the Faroe Islands, a Danish dominion]
- * This file created: 11-06-2004
- * Supplied by Dávur Sørensen [www.profo-webdesign.dk]
- */
-
-$PHPMAILER_LANG = array();
-
-$PHPMAILER_LANG['provide_address']      = 'Tú skal uppgeva minst móttakara-emailadressu(r).';
-$PHPMAILER_LANG['mailer_not_supported'] = ' er ikki supporterað.';
-$PHPMAILER_LANG['execute']              = 'Kundi ikki útføra: ';
-$PHPMAILER_LANG['instantiate']          = 'Kuni ikki instantiera mail funktión.';
-$PHPMAILER_LANG['authenticate']         = 'SMTP feilur: Kundi ikki góðkenna.';
-$PHPMAILER_LANG['from_failed']          = 'fylgjandi Frá/From adressa miseydnaðist: ';
-$PHPMAILER_LANG['recipients_failed']    = 'SMTP Feilur: Fylgjandi móttakarar miseydnaðust: ';
-$PHPMAILER_LANG['data_not_accepted']    = 'SMTP feilur: Data ikki góðkent.';
-$PHPMAILER_LANG['connect_host']         = 'SMTP feilur: Kundi ikki knýta samband við SMTP vert.';
-$PHPMAILER_LANG['file_access']          = 'Kundi ikki tilganga fílu: ';
-$PHPMAILER_LANG['file_open']            = 'Fílu feilur: Kundi ikki opna fílu: ';
-$PHPMAILER_LANG['encoding']             = 'Ókend encoding: ';
-$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php4/language/phpmailer.lang-fr.php b/facteur/phpmailer-php4/language/phpmailer.lang-fr.php
deleted file mode 100644
index b40ec21..0000000
--- a/facteur/phpmailer-php4/language/phpmailer.lang-fr.php
+++ /dev/null
@@ -1,23 +0,0 @@
-<?php
-/**
- * PHPMailer language file.
- * French Version
- */
-
-$PHPMAILER_LANG = array();
-
-$PHPMAILER_LANG['provide_address']      = 'Vous devez fournir au moins une adresse de destinataire.';
-$PHPMAILER_LANG['mailer_not_supported'] = ' client de messagerie non supporté.';
-$PHPMAILER_LANG['execute']              = 'Impossible de lancer l\'exécution : ';
-$PHPMAILER_LANG['instantiate']          = 'Impossible d\'instancier la fonction mail.';
-$PHPMAILER_LANG['authenticate']         = 'Erreur SMTP : Echec de l\'authentification.';
-$PHPMAILER_LANG['from_failed']          = 'L\'adresse d\'expéditeur suivante a échouée : ';
-$PHPMAILER_LANG['recipients_failed']    = 'Erreur SMTP : Les destinataires suivants sont en erreur : ';
-$PHPMAILER_LANG['data_not_accepted']    = 'Erreur SMTP : Données incorrects.';
-$PHPMAILER_LANG['connect_host']         = 'Erreur SMTP : Impossible de se connecter au serveur SMTP.';
-$PHPMAILER_LANG['file_access']          = 'Impossible d\'accéder au fichier : ';
-$PHPMAILER_LANG['file_open']            = 'Erreur Fichier : ouverture impossible : ';
-$PHPMAILER_LANG['encoding']             = 'Encodage inconnu : ';
-$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php4/language/phpmailer.lang-hu.php b/facteur/phpmailer-php4/language/phpmailer.lang-hu.php
deleted file mode 100644
index 5fac38a..0000000
--- a/facteur/phpmailer-php4/language/phpmailer.lang-hu.php
+++ /dev/null
@@ -1,23 +0,0 @@
-<?php
-/**
- * PHPMailer language file.
- * Hungarian Version
- */
-
-$PHPMAILER_LANG = array();
-
-$PHPMAILER_LANG['provide_address']      = 'Meg kell adnod legalább egy címzett email címet.';
-$PHPMAILER_LANG['mailer_not_supported'] = ' levelezõ nem támogatott.';
-$PHPMAILER_LANG['execute']              = 'Nem tudtam végrehajtani: ';
-$PHPMAILER_LANG['instantiate']          = 'Nem sikerült példányosítani a mail funkciót.';
-$PHPMAILER_LANG['authenticate']         = 'SMTP Hiba: Sikertelen autentikáció.';
-$PHPMAILER_LANG['from_failed']          = 'Az alábbi Feladó cím hibás: ';
-$PHPMAILER_LANG['recipients_failed']    = 'SMTP Hiba: Az alábbi címzettek hibásak: ';
-$PHPMAILER_LANG['data_not_accepted']    = 'SMTP Hiba: Nem elfogadható adat.';
-$PHPMAILER_LANG['connect_host']         = 'SMTP Hiba: Nem tudtam csatlakozni az SMTP host-hoz.';
-$PHPMAILER_LANG['file_access']          = 'Nem sikerült elérni a következõ fájlt: ';
-$PHPMAILER_LANG['file_open']            = 'Fájl Hiba: Nem sikerült megnyitni a következõ fájlt: ';
-$PHPMAILER_LANG['encoding']             = 'Ismeretlen kódolás: ';
-$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php4/language/phpmailer.lang-it.php b/facteur/phpmailer-php4/language/phpmailer.lang-it.php
deleted file mode 100644
index 76a9f3a..0000000
--- a/facteur/phpmailer-php4/language/phpmailer.lang-it.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<?php
-/**
-* PHPMailer language file.
-* Italian version
-* @package PHPMailer
-* @author Ilias Bartolini <brain79@inwind.it>*/
-
-$PHPMAILER_LANG = array();
-
-$PHPMAILER_LANG['provide_address']      = 'Deve essere fornito almeno un indirizzo ricevente';
-$PHPMAILER_LANG['mailer_not_supported'] = 'Mailer non supportato';
-$PHPMAILER_LANG['execute']              = 'Impossibile eseguire l\'operazione: ';
-$PHPMAILER_LANG['instantiate']          = 'Impossibile istanziare la funzione mail';
-$PHPMAILER_LANG['authenticate']         = 'SMTP Error: Impossibile autenticarsi.';
-$PHPMAILER_LANG['from_failed']          = 'I seguenti indirizzi mittenti hanno generato errore: ';
-$PHPMAILER_LANG['recipients_failed']    = 'SMTP Error: I seguenti indirizzi'.
-                                          'destinatari hanno generato errore: ';
-$PHPMAILER_LANG['data_not_accepted']    = 'SMTP Error: Data non accettati dal'.
-                                          'server.';
-$PHPMAILER_LANG['connect_host']         = 'SMTP Error: Impossibile connettersi all\'host SMTP.';
-$PHPMAILER_LANG['file_access']          = 'Impossibile accedere al file: ';
-$PHPMAILER_LANG['file_open']            = 'File Error: Impossibile aprire il file: ';
-$PHPMAILER_LANG['encoding']             = 'Encoding set dei caratteri sconosciuto: ';
-$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php4/language/phpmailer.lang-ja.php b/facteur/phpmailer-php4/language/phpmailer.lang-ja.php
deleted file mode 100644
index 6848ca3..0000000
--- a/facteur/phpmailer-php4/language/phpmailer.lang-ja.php
+++ /dev/null
@@ -1,24 +0,0 @@
-<?php
-/**
- * PHPMailer language file.  
- * Japanese Version
- * By Mitsuhiro Yoshida - http://mitstek.com/
- */
-
-$PHPMAILER_LANG = array();
-
-$PHPMAILER_LANG['provide_address'] = '少なくとも1つメールアドレスを 指定する必要があります。';
-$PHPMAILER_LANG['mailer_not_supported'] = ' メーラーがサポートされていません。';
-$PHPMAILER_LANG['execute'] = '実行できませんでした: ';
-$PHPMAILER_LANG['instantiate'] = 'メール関数が正常に動作しませんでした。';
-$PHPMAILER_LANG['authenticate'] = 'SMTPエラー: 認証できませんでした。';
-$PHPMAILER_LANG['from_failed'] = '次のFromアドレスに間違いがあります: ';
-$PHPMAILER_LANG['recipients_failed'] = 'SMTPエラー: 次の受信者アドレスに 間違いがあります: ';
-$PHPMAILER_LANG['data_not_accepted'] = 'SMTPエラー: データが受け付けられませんでした。';
-$PHPMAILER_LANG['connect_host'] = 'SMTPエラー: SMTPホストに接続できませんでした。';
-$PHPMAILER_LANG['file_access'] = 'ファイルにアクセスできません: ';
-$PHPMAILER_LANG['file_open'] = 'ファイルエラー: ファイルを開けません: ';
-$PHPMAILER_LANG['encoding'] = '不明なエンコーディング: ';
-$PHPMAILER_LANG['signing'] = 'Signing Error: ';
-$PHPMAILER_LANG['smtp_error'] = 'SMTP server error: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php4/language/phpmailer.lang-nl.php b/facteur/phpmailer-php4/language/phpmailer.lang-nl.php
deleted file mode 100644
index 269b152..0000000
--- a/facteur/phpmailer-php4/language/phpmailer.lang-nl.php
+++ /dev/null
@@ -1,23 +0,0 @@
-<?php
-/**
- * PHPMailer language file.
- * Dutch Version
- */
-
-$PHPMAILER_LANG = array();
-
-$PHPMAILER_LANG['provide_address']      = 'Er moet tenmiste één ontvanger emailadres opgegeven worden.';
-$PHPMAILER_LANG['mailer_not_supported'] = ' mailer wordt niet ondersteund.';
-$PHPMAILER_LANG['execute']              = 'Kon niet uitvoeren: ';
-$PHPMAILER_LANG['instantiate']          = 'Kon mail functie niet initialiseren.';
-$PHPMAILER_LANG['authenticate']         = 'SMTP Fout: authenticatie mislukt.';
-$PHPMAILER_LANG['from_failed']          = 'De volgende afzender adressen zijn mislukt: ';
-$PHPMAILER_LANG['recipients_failed']    = 'SMTP Fout: De volgende ontvangers zijn mislukt: ';
-$PHPMAILER_LANG['data_not_accepted']    = 'SMTP Fout: Data niet geaccepteerd.';
-$PHPMAILER_LANG['connect_host']         = 'SMTP Fout: Kon niet verbinden met SMTP host.';
-$PHPMAILER_LANG['file_access']          = 'Kreeg geen toegang tot bestand: ';
-$PHPMAILER_LANG['file_open']            = 'Bestandsfout: Kon bestand niet openen: ';
-$PHPMAILER_LANG['encoding']             = 'Onbekende codering: ';
-$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php4/language/phpmailer.lang-no.php b/facteur/phpmailer-php4/language/phpmailer.lang-no.php
deleted file mode 100644
index 184d885..0000000
--- a/facteur/phpmailer-php4/language/phpmailer.lang-no.php
+++ /dev/null
@@ -1,23 +0,0 @@
-<?php
-/**
- * PHPMailer language file.
- * Norwegian Version
- */
-
-$PHPMAILER_LANG = array();
-
-$PHPMAILER_LANG['provide_address']      = 'Du må ha med minst en mottager adresse.';
-$PHPMAILER_LANG['mailer_not_supported'] = ' mailer er ikke supportert.';
-$PHPMAILER_LANG['execute']              = 'Kunne ikke utføre: ';
-$PHPMAILER_LANG['instantiate']          = 'Kunne ikke instantiate mail funksjonen.';
-$PHPMAILER_LANG['authenticate']         = 'SMTP Feil: Kunne ikke authentisere.';
-$PHPMAILER_LANG['from_failed']          = 'Følgende Fra feilet: ';
-$PHPMAILER_LANG['recipients_failed']    = 'SMTP Feil: Følgende mottagere feilet: ';
-$PHPMAILER_LANG['data_not_accepted']    = 'SMTP Feil: Data ble ikke akseptert.';
-$PHPMAILER_LANG['connect_host']         = 'SMTP Feil: Kunne ikke koble til SMTP host.';
-$PHPMAILER_LANG['file_access']          = 'Kunne ikke få tilgang til filen: ';
-$PHPMAILER_LANG['file_open']            = 'Fil feil: Kunne ikke åpne filen: ';
-$PHPMAILER_LANG['encoding']             = 'Ukjent encoding: ';
-$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php4/language/phpmailer.lang-pl.php b/facteur/phpmailer-php4/language/phpmailer.lang-pl.php
deleted file mode 100644
index bbc9cc9..0000000
--- a/facteur/phpmailer-php4/language/phpmailer.lang-pl.php
+++ /dev/null
@@ -1,23 +0,0 @@
-<?php
-/**
- * PHPMailer language file.  
- * Polish Version
- */
-
-$PHPMAILER_LANG = array();
-
-$PHPMAILER_LANG["provide_address"] = 'Należy podać prawidłowy adres email Odbiorcy.';
-$PHPMAILER_LANG["mailer_not_supported"] = 'Wybrana metoda wysyłki wiadomości nie jest obsługiwana.';
-$PHPMAILER_LANG["execute"] = 'Nie można uruchomić: ';
-$PHPMAILER_LANG["instantiate"] = 'Nie można wywołać funkcji mail(). Sprawdź konfigurację serwera.';
-$PHPMAILER_LANG["authenticate"] = 'Błąd SMTP: Nie można przeprowadzić autentykacji.';
-$PHPMAILER_LANG["from_failed"] = 'Następujący adres Nadawcy jest jest nieprawidłowy: ';
-$PHPMAILER_LANG["recipients_failed"] = 'Błąd SMTP: Następujący odbiorcy są nieprawidłowi: ';
-$PHPMAILER_LANG["data_not_accepted"] = 'Błąd SMTP: Dane nie zostały przyjęte.';
-$PHPMAILER_LANG["connect_host"] = 'Błąd SMTP: Nie można połączyć się z wybranym hostem.';
-$PHPMAILER_LANG["file_access"] = 'Brak dostępu do pliku: ';
-$PHPMAILER_LANG["file_open"] = 'Nie można otworzyć pliku: ';
-$PHPMAILER_LANG["encoding"] = 'Nieznany sposób kodowania znaków: ';
-$PHPMAILER_LANG['signing'] = 'Signing Error: ';
-$PHPMAILER_LANG['smtp_error'] = 'SMTP server error: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php4/language/phpmailer.lang-ro.php b/facteur/phpmailer-php4/language/phpmailer.lang-ro.php
deleted file mode 100644
index 4c6a468..0000000
--- a/facteur/phpmailer-php4/language/phpmailer.lang-ro.php
+++ /dev/null
@@ -1,24 +0,0 @@
-<?php
-/**
- * PHPMailer language file.
- * Romanian Version
- * @package PHPMailer
- * @author Catalin Constantin <catalin@dazoot.ro> */
-
-$PHPMAILER_LANG = array();
-
-$PHPMAILER_LANG['provide_address']      = 'Trebuie sa adaugati cel putin un recipient (adresa de mail).';
-$PHPMAILER_LANG['mailer_not_supported'] = ' mailer nu este suportat.';
-$PHPMAILER_LANG['execute']              = 'Nu pot executa:  ';
-$PHPMAILER_LANG['instantiate']          = 'Nu am putut instantia functia mail.';
-$PHPMAILER_LANG['authenticate']         = 'Eroare SMTP: Nu a functionat autentificarea.';
-$PHPMAILER_LANG['from_failed']          = 'Urmatoarele adrese From au dat eroare: ';
-$PHPMAILER_LANG['recipients_failed']    = 'Eroare SMTP: Urmatoarele adrese de mail au dat eroare: ';
-$PHPMAILER_LANG['data_not_accepted']    = 'Eroare SMTP: Continutul mailului nu a fost acceptat.';
-$PHPMAILER_LANG['connect_host']         = 'Eroare SMTP: Nu m-am putut conecta la adresa SMTP.';
-$PHPMAILER_LANG['file_access']          = 'Nu pot accesa fisierul: ';
-$PHPMAILER_LANG['file_open']            = 'Eroare de fisier: Nu pot deschide fisierul: ';
-$PHPMAILER_LANG['encoding']             = 'Encodare necunoscuta: ';
-$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php4/language/phpmailer.lang-ru.php b/facteur/phpmailer-php4/language/phpmailer.lang-ru.php
deleted file mode 100644
index bc2dc2d..0000000
--- a/facteur/phpmailer-php4/language/phpmailer.lang-ru.php
+++ /dev/null
@@ -1,23 +0,0 @@
-<?php
-/**
- * PHPMailer language file.
- * Russian Version by Alexey Chumakov <alex@chumakov.ru> */
-
-$PHPMAILER_LANG = array();
-
-$PHPMAILER_LANG['provide_address']      = 'Пожалуйста, введите хотя бы один адрес e-mail получателя.';
-$PHPMAILER_LANG['mailer_not_supported'] = ' - почтовый сервер не поддерживается.';
-$PHPMAILER_LANG['execute']              = 'Невозможно выполнить команду: ';
-$PHPMAILER_LANG['instantiate']          = 'Невозможно запустить функцию mail.';
-$PHPMAILER_LANG['authenticate']         = 'Ошибка SMTP: ошибка авторизации.';
-$PHPMAILER_LANG['from_failed']          = 'Неверный адрес отправителя: ';
-$PHPMAILER_LANG['recipients_failed']    = 'Ошибка SMTP: отправка по следующим ' .
-                                          'адресам получателей не удалась: ';
-$PHPMAILER_LANG['data_not_accepted']    = 'Ошибка SMTP: данные не приняты.';
-$PHPMAILER_LANG['connect_host']         = 'Ошибка SMTP: не удается подключиться к серверу SMTP.';
-$PHPMAILER_LANG['file_access']          = 'Нет доступа к файлу: ';
-$PHPMAILER_LANG['file_open']            = 'Файловая ошибка: не удается открыть файл: ';
-$PHPMAILER_LANG['encoding']             = 'Неизвестный вид кодировки: ';
-$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php4/language/phpmailer.lang-se.php b/facteur/phpmailer-php4/language/phpmailer.lang-se.php
deleted file mode 100644
index f9100a6..0000000
--- a/facteur/phpmailer-php4/language/phpmailer.lang-se.php
+++ /dev/null
@@ -1,23 +0,0 @@
-<?php
-/**
- * PHPMailer language file.
- * Swedish Version
- * Author: Johan Linnér <johan@linner.biz> */
-
-$PHPMAILER_LANG = array();
-
-$PHPMAILER_LANG['provide_address']      = 'Du måste ange minst en mottagares e-postadress.';
-$PHPMAILER_LANG['mailer_not_supported'] = ' mailer stöds inte.';
-$PHPMAILER_LANG['execute']              = 'Kunde inte köra: ';
-$PHPMAILER_LANG['instantiate']          = 'Kunde inte initiera e-postfunktion.';
-$PHPMAILER_LANG['authenticate']         = 'SMTP fel: Kunde inte autentisera.';
-$PHPMAILER_LANG['from_failed']          = 'Följande avsändaradress är felaktig: ';
-$PHPMAILER_LANG['recipients_failed']    = 'SMTP fel: Följande mottagare är felaktig: ';
-$PHPMAILER_LANG['data_not_accepted']    = 'SMTP fel: Data accepterades inte.';
-$PHPMAILER_LANG['connect_host']         = 'SMTP fel: Kunde inte ansluta till SMTP-server.';
-$PHPMAILER_LANG['file_access']          = 'Ingen åtkomst till fil: ';
-$PHPMAILER_LANG['file_open']            = 'Fil fel: Kunde inte öppna fil: ';
-$PHPMAILER_LANG['encoding']             = 'Okänt encode-format: ';
-$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php4/language/phpmailer.lang-tr.php b/facteur/phpmailer-php4/language/phpmailer.lang-tr.php
deleted file mode 100644
index 99c5ac4..0000000
--- a/facteur/phpmailer-php4/language/phpmailer.lang-tr.php
+++ /dev/null
@@ -1,24 +0,0 @@
-<?php
-/**
- * PHPMailer dil dosyasý.
- * Türkçe Versiyonu
- * ÝZYAZILIM - Elçin Özel - Can Yýlmaz - Mehmet Benlioðlu
- */
-
-$PHPMAILER_LANG = array();
-
-$PHPMAILER_LANG['provide_address']      = 'En az bir tane mail adresi belirtmek zorundasýnýz alýcýnýn email adresi.';
-$PHPMAILER_LANG['mailer_not_supported'] = ' mailler desteklenmemektedir.';
-$PHPMAILER_LANG['execute']              = 'Çalýþtýrýlamýyor: ';
-$PHPMAILER_LANG['instantiate']          = 'Örnek mail fonksiyonu yaratýlamadý.';
-$PHPMAILER_LANG['authenticate']         = 'SMTP Hatasý: Doðrulanamýyor.';
-$PHPMAILER_LANG['from_failed']          = 'Baþarýsýz olan gönderici adresi: ';
-$PHPMAILER_LANG['recipients_failed']    = 'SMTP Hatasý: alýcýlara ulaþmadý: ';
-$PHPMAILER_LANG['data_not_accepted']    = 'SMTP Hatasý: Veri kabul edilmedi.';
-$PHPMAILER_LANG['connect_host']         = 'SMTP Hatasý: SMTP hosta baðlanýlamýyor.';
-$PHPMAILER_LANG['file_access']          = 'Dosyaya eriþilemiyor: ';
-$PHPMAILER_LANG['file_open']            = 'Dosya Hatasý: Dosya açýlamýyor: ';
-$PHPMAILER_LANG['encoding']             = 'Bilinmeyen þifreleme: ';
-$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php4/language/phpmailer.lang-zh.php b/facteur/phpmailer-php4/language/phpmailer.lang-zh.php
deleted file mode 100644
index 31c10fa..0000000
--- a/facteur/phpmailer-php4/language/phpmailer.lang-zh.php
+++ /dev/null
@@ -1,23 +0,0 @@
-<?php
-/**
- * PHPMailer language file.  
- * Traditional Chinese Version
- * @author liqwei <liqwei@liqwei.com>
- */
-
-$PHPMAILER_LANG = array();
-$PHPMAILER_LANG['provide_address'] = '必須提供至少一個收件人地址。';
-$PHPMAILER_LANG['mailer_not_supported'] = '發信客戶端不被支持。';
-$PHPMAILER_LANG['execute'] = '無法執行:';
-$PHPMAILER_LANG['instantiate'] = '未知函數調用。';
-$PHPMAILER_LANG['authenticate'] = 'SMTP 錯誤:登錄失敗。';
-$PHPMAILER_LANG['from_failed'] = '發送地址錯誤:';
-$PHPMAILER_LANG['recipients_failed'] = 'SMTP 錯誤:收件人地址錯誤:';
-$PHPMAILER_LANG['data_not_accepted'] = 'SMTP 錯誤:數據不被接受。';
-$PHPMAILER_LANG['connect_host'] = 'SMTP 錯誤:無法連接到 SMTP 主機。';
-$PHPMAILER_LANG['file_access'] = '無法訪問文件:';
-$PHPMAILER_LANG['file_open'] = '文件錯誤:無法打開文件:';
-$PHPMAILER_LANG['encoding'] = '未知編碼: ';
-$PHPMAILER_LANG['signing'] = 'Signing Error: ';
-$PHPMAILER_LANG['smtp_error'] = 'SMTP server error: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php4/language/phpmailer.lang-zh_cn.php b/facteur/phpmailer-php4/language/phpmailer.lang-zh_cn.php
deleted file mode 100644
index b01d806..0000000
--- a/facteur/phpmailer-php4/language/phpmailer.lang-zh_cn.php
+++ /dev/null
@@ -1,24 +0,0 @@
-<?php
-/**
- * PHPMailer language file.  
- * Simplified Chinese Version
- * @author liqwei <liqwei@liqwei.com>
- */
-
-$PHPMAILER_LANG = array();
-
-$PHPMAILER_LANG["provide_address"] = '必须提供至少一个收件人地址。';
-$PHPMAILER_LANG["mailer_not_supported"] = '发信客户端不被支持。';
-$PHPMAILER_LANG["execute"] = '无法执行:';
-$PHPMAILER_LANG["instantiate"] = '未知函数调用。';
-$PHPMAILER_LANG["authenticate"] = 'SMTP 错误:登录失败。';
-$PHPMAILER_LANG["from_failed"] = '发送地址错误:';
-$PHPMAILER_LANG["recipients_failed"] = 'SMTP 错误:收件人地址错误:';
-$PHPMAILER_LANG["data_not_accepted"] = 'SMTP 错误:数据不被接受。';
-$PHPMAILER_LANG["connect_host"] = 'SMTP 错误:无法连接到 SMTP 主机。';
-$PHPMAILER_LANG["file_access"] = '无法访问文件:';
-$PHPMAILER_LANG["file_open"] = '文件错误:无法打开文件:';
-$PHPMAILER_LANG["encoding"] = '未知编码: ';
-$PHPMAILER_LANG["signing"] = 'Signing Error: ';
-$PHPMAILER_LANG['smtp_error'] = 'SMTP server error: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php5/LICENSE b/facteur/phpmailer-php5/LICENSE
deleted file mode 100644
index 03851a3..0000000
--- a/facteur/phpmailer-php5/LICENSE
+++ /dev/null
@@ -1,504 +0,0 @@
-		  GNU LESSER GENERAL PUBLIC LICENSE
-		       Version 2.1, February 1999
-
- Copyright (C) 1991, 1999 Free Software Foundation, Inc.
-     59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-[This is the first released version of the Lesser GPL.  It also counts
- as the successor of the GNU Library Public License, version 2, hence
- the version number 2.1.]
-
-			    Preamble
-
-  The licenses for most software are designed to take away your
-freedom to share and change it.  By contrast, the GNU General Public
-Licenses are intended to guarantee your freedom to share and change
-free software--to make sure the software is free for all its users.
-
-  This license, the Lesser General Public License, applies to some
-specially designated software packages--typically libraries--of the
-Free Software Foundation and other authors who decide to use it.  You
-can use it too, but we suggest you first think carefully about whether
-this license or the ordinary General Public License is the better
-strategy to use in any particular case, based on the explanations below.
-
-  When we speak of free software, we are referring to freedom of use,
-not price.  Our General Public Licenses are designed to make sure that
-you have the freedom to distribute copies of free software (and charge
-for this service if you wish); that you receive source code or can get
-it if you want it; that you can change the software and use pieces of
-it in new free programs; and that you are informed that you can do
-these things.
-
-  To protect your rights, we need to make restrictions that forbid
-distributors to deny you these rights or to ask you to surrender these
-rights.  These restrictions translate to certain responsibilities for
-you if you distribute copies of the library or if you modify it.
-
-  For example, if you distribute copies of the library, whether gratis
-or for a fee, you must give the recipients all the rights that we gave
-you.  You must make sure that they, too, receive or can get the source
-code.  If you link other code with the library, you must provide
-complete object files to the recipients, so that they can relink them
-with the library after making changes to the library and recompiling
-it.  And you must show them these terms so they know their rights.
-
-  We protect your rights with a two-step method: (1) we copyright the
-library, and (2) we offer you this license, which gives you legal
-permission to copy, distribute and/or modify the library.
-
-  To protect each distributor, we want to make it very clear that
-there is no warranty for the free library.  Also, if the library is
-modified by someone else and passed on, the recipients should know
-that what they have is not the original version, so that the original
-author's reputation will not be affected by problems that might be
-introduced by others.
-
-  Finally, software patents pose a constant threat to the existence of
-any free program.  We wish to make sure that a company cannot
-effectively restrict the users of a free program by obtaining a
-restrictive license from a patent holder.  Therefore, we insist that
-any patent license obtained for a version of the library must be
-consistent with the full freedom of use specified in this license.
-
-  Most GNU software, including some libraries, is covered by the
-ordinary GNU General Public License.  This license, the GNU Lesser
-General Public License, applies to certain designated libraries, and
-is quite different from the ordinary General Public License.  We use
-this license for certain libraries in order to permit linking those
-libraries into non-free programs.
-
-  When a program is linked with a library, whether statically or using
-a shared library, the combination of the two is legally speaking a
-combined work, a derivative of the original library.  The ordinary
-General Public License therefore permits such linking only if the
-entire combination fits its criteria of freedom.  The Lesser General
-Public License permits more lax criteria for linking other code with
-the library.
-
-  We call this license the "Lesser" General Public License because it
-does Less to protect the user's freedom than the ordinary General
-Public License.  It also provides other free software developers Less
-of an advantage over competing non-free programs.  These disadvantages
-are the reason we use the ordinary General Public License for many
-libraries.  However, the Lesser license provides advantages in certain
-special circumstances.
-
-  For example, on rare occasions, there may be a special need to
-encourage the widest possible use of a certain library, so that it becomes
-a de-facto standard.  To achieve this, non-free programs must be
-allowed to use the library.  A more frequent case is that a free
-library does the same job as widely used non-free libraries.  In this
-case, there is little to gain by limiting the free library to free
-software only, so we use the Lesser General Public License.
-
-  In other cases, permission to use a particular library in non-free
-programs enables a greater number of people to use a large body of
-free software.  For example, permission to use the GNU C Library in
-non-free programs enables many more people to use the whole GNU
-operating system, as well as its variant, the GNU/Linux operating
-system.
-
-  Although the Lesser General Public License is Less protective of the
-users' freedom, it does ensure that the user of a program that is
-linked with the Library has the freedom and the wherewithal to run
-that program using a modified version of the Library.
-
-  The precise terms and conditions for copying, distribution and
-modification follow.  Pay close attention to the difference between a
-"work based on the library" and a "work that uses the library".  The
-former contains code derived from the library, whereas the latter must
-be combined with the library in order to run.
-
-		  GNU LESSER GENERAL PUBLIC LICENSE
-   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
-  0. This License Agreement applies to any software library or other
-program which contains a notice placed by the copyright holder or
-other authorized party saying it may be distributed under the terms of
-this Lesser General Public License (also called "this License").
-Each licensee is addressed as "you".
-
-  A "library" means a collection of software functions and/or data
-prepared so as to be conveniently linked with application programs
-(which use some of those functions and data) to form executables.
-
-  The "Library", below, refers to any such software library or work
-which has been distributed under these terms.  A "work based on the
-Library" means either the Library or any derivative work under
-copyright law: that is to say, a work containing the Library or a
-portion of it, either verbatim or with modifications and/or translated
-straightforwardly into another language.  (Hereinafter, translation is
-included without limitation in the term "modification".)
-
-  "Source code" for a work means the preferred form of the work for
-making modifications to it.  For a library, complete source code means
-all the source code for all modules it contains, plus any associated
-interface definition files, plus the scripts used to control compilation
-and installation of the library.
-
-  Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope.  The act of
-running a program using the Library is not restricted, and output from
-such a program is covered only if its contents constitute a work based
-on the Library (independent of the use of the Library in a tool for
-writing it).  Whether that is true depends on what the Library does
-and what the program that uses the Library does.
-  
-  1. You may copy and distribute verbatim copies of the Library's
-complete source code as you receive it, in any medium, provided that
-you conspicuously and appropriately publish on each copy an
-appropriate copyright notice and disclaimer of warranty; keep intact
-all the notices that refer to this License and to the absence of any
-warranty; and distribute a copy of this License along with the
-Library.
-
-  You may charge a fee for the physical act of transferring a copy,
-and you may at your option offer warranty protection in exchange for a
-fee.
-
-  2. You may modify your copy or copies of the Library or any portion
-of it, thus forming a work based on the Library, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
-    a) The modified work must itself be a software library.
-
-    b) You must cause the files modified to carry prominent notices
-    stating that you changed the files and the date of any change.
-
-    c) You must cause the whole of the work to be licensed at no
-    charge to all third parties under the terms of this License.
-
-    d) If a facility in the modified Library refers to a function or a
-    table of data to be supplied by an application program that uses
-    the facility, other than as an argument passed when the facility
-    is invoked, then you must make a good faith effort to ensure that,
-    in the event an application does not supply such function or
-    table, the facility still operates, and performs whatever part of
-    its purpose remains meaningful.
-
-    (For example, a function in a library to compute square roots has
-    a purpose that is entirely well-defined independent of the
-    application.  Therefore, Subsection 2d requires that any
-    application-supplied function or table used by this function must
-    be optional: if the application does not supply it, the square
-    root function must still compute square roots.)
-
-These requirements apply to the modified work as a whole.  If
-identifiable sections of that work are not derived from the Library,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works.  But when you
-distribute the same sections as part of a whole which is a work based
-on the Library, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote
-it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Library.
-
-In addition, mere aggregation of another work not based on the Library
-with the Library (or with a work based on the Library) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
-  3. You may opt to apply the terms of the ordinary GNU General Public
-License instead of this License to a given copy of the Library.  To do
-this, you must alter all the notices that refer to this License, so
-that they refer to the ordinary GNU General Public License, version 2,
-instead of to this License.  (If a newer version than version 2 of the
-ordinary GNU General Public License has appeared, then you can specify
-that version instead if you wish.)  Do not make any other change in
-these notices.
-
-  Once this change is made in a given copy, it is irreversible for
-that copy, so the ordinary GNU General Public License applies to all
-subsequent copies and derivative works made from that copy.
-
-  This option is useful when you wish to copy part of the code of
-the Library into a program that is not a library.
-
-  4. You may copy and distribute the Library (or a portion or
-derivative of it, under Section 2) in object code or executable form
-under the terms of Sections 1 and 2 above provided that you accompany
-it with the complete corresponding machine-readable source code, which
-must be distributed under the terms of Sections 1 and 2 above on a
-medium customarily used for software interchange.
-
-  If distribution of object code is made by offering access to copy
-from a designated place, then offering equivalent access to copy the
-source code from the same place satisfies the requirement to
-distribute the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
-  5. A program that contains no derivative of any portion of the
-Library, but is designed to work with the Library by being compiled or
-linked with it, is called a "work that uses the Library".  Such a
-work, in isolation, is not a derivative work of the Library, and
-therefore falls outside the scope of this License.
-
-  However, linking a "work that uses the Library" with the Library
-creates an executable that is a derivative of the Library (because it
-contains portions of the Library), rather than a "work that uses the
-library".  The executable is therefore covered by this License.
-Section 6 states terms for distribution of such executables.
-
-  When a "work that uses the Library" uses material from a header file
-that is part of the Library, the object code for the work may be a
-derivative work of the Library even though the source code is not.
-Whether this is true is especially significant if the work can be
-linked without the Library, or if the work is itself a library.  The
-threshold for this to be true is not precisely defined by law.
-
-  If such an object file uses only numerical parameters, data
-structure layouts and accessors, and small macros and small inline
-functions (ten lines or less in length), then the use of the object
-file is unrestricted, regardless of whether it is legally a derivative
-work.  (Executables containing this object code plus portions of the
-Library will still fall under Section 6.)
-
-  Otherwise, if the work is a derivative of the Library, you may
-distribute the object code for the work under the terms of Section 6.
-Any executables containing that work also fall under Section 6,
-whether or not they are linked directly with the Library itself.
-
-  6. As an exception to the Sections above, you may also combine or
-link a "work that uses the Library" with the Library to produce a
-work containing portions of the Library, and distribute that work
-under terms of your choice, provided that the terms permit
-modification of the work for the customer's own use and reverse
-engineering for debugging such modifications.
-
-  You must give prominent notice with each copy of the work that the
-Library is used in it and that the Library and its use are covered by
-this License.  You must supply a copy of this License.  If the work
-during execution displays copyright notices, you must include the
-copyright notice for the Library among them, as well as a reference
-directing the user to the copy of this License.  Also, you must do one
-of these things:
-
-    a) Accompany the work with the complete corresponding
-    machine-readable source code for the Library including whatever
-    changes were used in the work (which must be distributed under
-    Sections 1 and 2 above); and, if the work is an executable linked
-    with the Library, with the complete machine-readable "work that
-    uses the Library", as object code and/or source code, so that the
-    user can modify the Library and then relink to produce a modified
-    executable containing the modified Library.  (It is understood
-    that the user who changes the contents of definitions files in the
-    Library will not necessarily be able to recompile the application
-    to use the modified definitions.)
-
-    b) Use a suitable shared library mechanism for linking with the
-    Library.  A suitable mechanism is one that (1) uses at run time a
-    copy of the library already present on the user's computer system,
-    rather than copying library functions into the executable, and (2)
-    will operate properly with a modified version of the library, if
-    the user installs one, as long as the modified version is
-    interface-compatible with the version that the work was made with.
-
-    c) Accompany the work with a written offer, valid for at
-    least three years, to give the same user the materials
-    specified in Subsection 6a, above, for a charge no more
-    than the cost of performing this distribution.
-
-    d) If distribution of the work is made by offering access to copy
-    from a designated place, offer equivalent access to copy the above
-    specified materials from the same place.
-
-    e) Verify that the user has already received a copy of these
-    materials or that you have already sent this user a copy.
-
-  For an executable, the required form of the "work that uses the
-Library" must include any data and utility programs needed for
-reproducing the executable from it.  However, as a special exception,
-the materials to be distributed need not include anything that is
-normally distributed (in either source or binary form) with the major
-components (compiler, kernel, and so on) of the operating system on
-which the executable runs, unless that component itself accompanies
-the executable.
-
-  It may happen that this requirement contradicts the license
-restrictions of other proprietary libraries that do not normally
-accompany the operating system.  Such a contradiction means you cannot
-use both them and the Library together in an executable that you
-distribute.
-
-  7. You may place library facilities that are a work based on the
-Library side-by-side in a single library together with other library
-facilities not covered by this License, and distribute such a combined
-library, provided that the separate distribution of the work based on
-the Library and of the other library facilities is otherwise
-permitted, and provided that you do these two things:
-
-    a) Accompany the combined library with a copy of the same work
-    based on the Library, uncombined with any other library
-    facilities.  This must be distributed under the terms of the
-    Sections above.
-
-    b) Give prominent notice with the combined library of the fact
-    that part of it is a work based on the Library, and explaining
-    where to find the accompanying uncombined form of the same work.
-
-  8. You may not copy, modify, sublicense, link with, or distribute
-the Library except as expressly provided under this License.  Any
-attempt otherwise to copy, modify, sublicense, link with, or
-distribute the Library is void, and will automatically terminate your
-rights under this License.  However, parties who have received copies,
-or rights, from you under this License will not have their licenses
-terminated so long as such parties remain in full compliance.
-
-  9. You are not required to accept this License, since you have not
-signed it.  However, nothing else grants you permission to modify or
-distribute the Library or its derivative works.  These actions are
-prohibited by law if you do not accept this License.  Therefore, by
-modifying or distributing the Library (or any work based on the
-Library), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Library or works based on it.
-
-  10. Each time you redistribute the Library (or any work based on the
-Library), the recipient automatically receives a license from the
-original licensor to copy, distribute, link with or modify the Library
-subject to these terms and conditions.  You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties with
-this License.
-
-  11. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License.  If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Library at all.  For example, if a patent
-license would not permit royalty-free redistribution of the Library by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Library.
-
-If any portion of this section is held invalid or unenforceable under any
-particular circumstance, the balance of the section is intended to apply,
-and the section as a whole is intended to apply in other circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system which is
-implemented by public license practices.  Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
-  12. If the distribution and/or use of the Library is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Library under this License may add
-an explicit geographical distribution limitation excluding those countries,
-so that distribution is permitted only in or among countries not thus
-excluded.  In such case, this License incorporates the limitation as if
-written in the body of this License.
-
-  13. The Free Software Foundation may publish revised and/or new
-versions of the Lesser General Public License from time to time.
-Such new versions will be similar in spirit to the present version,
-but may differ in detail to address new problems or concerns.
-
-Each version is given a distinguishing version number.  If the Library
-specifies a version number of this License which applies to it and
-"any later version", you have the option of following the terms and
-conditions either of that version or of any later version published by
-the Free Software Foundation.  If the Library does not specify a
-license version number, you may choose any version ever published by
-the Free Software Foundation.
-
-  14. If you wish to incorporate parts of the Library into other free
-programs whose distribution conditions are incompatible with these,
-write to the author to ask for permission.  For software which is
-copyrighted by the Free Software Foundation, write to the Free
-Software Foundation; we sometimes make exceptions for this.  Our
-decision will be guided by the two goals of preserving the free status
-of all derivatives of our free software and of promoting the sharing
-and reuse of software generally.
-
-			    NO WARRANTY
-
-  15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
-WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
-EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
-OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
-KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
-LIBRARY IS WITH YOU.  SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
-THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
-
-  16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
-WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
-AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
-FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
-CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
-LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
-RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
-FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
-SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
-DAMAGES.
-
-		     END OF TERMS AND CONDITIONS
-
-           How to Apply These Terms to Your New Libraries
-
-  If you develop a new library, and you want it to be of the greatest
-possible use to the public, we recommend making it free software that
-everyone can redistribute and change.  You can do so by permitting
-redistribution under these terms (or, alternatively, under the terms of the
-ordinary General Public License).
-
-  To apply these terms, attach the following notices to the library.  It is
-safest to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least the
-"copyright" line and a pointer to where the full notice is found.
-
-    <one line to give the library's name and a brief idea of what it does.>
-    Copyright (C) <year>  <name of author>
-
-    This library is free software; you can redistribute it and/or
-    modify it under the terms of the GNU Lesser General Public
-    License as published by the Free Software Foundation; either
-    version 2.1 of the License, or (at your option) any later version.
-
-    This library is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-    Lesser General Public License for more details.
-
-    You should have received a copy of the GNU Lesser General Public
-    License along with this library; if not, write to the Free Software
-    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-
-Also add information on how to contact you by electronic and paper mail.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the library, if
-necessary.  Here is a sample; alter the names:
-
-  Yoyodyne, Inc., hereby disclaims all copyright interest in the
-  library `Frob' (a library for tweaking knobs) written by James Random Hacker.
-
-  <signature of Ty Coon>, 1 April 1990
-  Ty Coon, President of Vice
-
-That's all there is to it!
-
-
diff --git a/facteur/phpmailer-php5/README b/facteur/phpmailer-php5/README
deleted file mode 100644
index 3670fb6..0000000
--- a/facteur/phpmailer-php5/README
+++ /dev/null
@@ -1,178 +0,0 @@
-/*******************************************************************
-* The http://phpmailer.codeworxtech.com/ website now carries a few *
-* advertisements through the Google Adsense network. Please visit  *
-* the advertiser sites and help us offset some of our costs.       *
-* Thanks ....                                                      *
-********************************************************************/
-
-PHPMailer
-Full Featured Email Transfer Class for PHP
-==========================================
-
-Version 2.1 (June 04 2008)
-
-With this release, we are announcing that the development of PHPMailer for PHP5
-will be our focus from this date on. We have implemented all the enhancements
-and fixes from the latest release of PHPMailer for PHP4.
-
-Far more important, though, is that this release of PHPMailer (v2.1) is
-fully tested with E_STRICT error checking enabled.
-
-** NOTE: WE HAVE A NEW LANGUAGE VARIABLE FOR DIGITALLY SIGNED S/MIME EMAILS.
-   IF YOU CAN HELP WITH LANGUAGES OTHER THAN ENGLISH AND SPANISH, IT WOULD BE
-   APPRECIATED.
-
-We have now added S/MIME functionality (ability to digitally sign emails).
-BIG THANKS TO "sergiocambra" for posting this patch back in November 2007.
-The "Signed Emails" functionality adds the Sign method to pass the private key
-filename and the password to read it, and then email will be sent with
-content-type multipart/signed and with the digital signature attached.
-
-A quick note on E_STRICT:
-
-- In about half the test environments the development version was subjected
-	to, an error was thrown for the date() functions (used at line 1565 and 1569).
-	This is NOT a PHPMailer error, it is the result of an incorrectly configured
-	PHP5 installation. The fix is to modify your 'php.ini' file and include the
-	date.timezone = America/New York
-	directive, (for your own server timezone)
-- If you do get this error, and are unable to access your php.ini file, there is
-	a workaround. In your PHP script, add
-	date_default_timezone_set('America/Toronto');
-
-	* do NOT try to use
-	$myVar = date_default_timezone_get();
-	as a test, it will throw an error.
-
-We have also included more example files to show the use of "sendmail", "mail()",
-"smtp", and "gmail".
-
-We are also looking for more programmers to join the volunteer development team.
-If you have an interest in this, please let us know.
-
-Enjoy!
-
-
-Version 2.1.0beta1 & beta2
-
-please note, this is BETA software
-** DO NOT USE THIS IN PRODUCTION OR LIVE PROJECTS
-INTENDED STRICTLY FOR TESTING
-
-** NOTE:
-
-As of November 2007, PHPMailer has a new project team headed by industry
-veteran Andy Prevost (codeworxtech). The first release in more than two
-years will focus on fixes, adding ease-of-use enhancements, provide
-basic compatibility with PHP4 and PHP5 using PHP5 backwards compatibility
-features. A new release is planned before year-end 2007 that will provide
-full compatiblity with PHP4 and PHP5, as well as more bug fixes.
-
-We are looking for project developers to assist in restoring PHPMailer to
-its leadership position. Our goals are to simplify use of PHPMailer, provide
-good documentation and examples, and retain backward compatibility to level
-1.7.3 standards.
-
-If you are interested in helping out, visit http://sourceforge.net/phpmailer
-and indicate your interest.
-
-**
-
-http://phpmailer.sourceforge.net/
-
-This software is licenced under the LGPL.  Please read LICENSE for information on the
-software availability and distribution.
-
-Class Features:
-- Send emails with multiple TOs, CCs, BCCs and REPLY-TOs
-- Redundant SMTP servers
-- Multipart/alternative emails for mail clients that do not read HTML email
-- Support for 8bit, base64, binary, and quoted-printable encoding
-- Uses the same methods as the very popular AspEmail active server (COM) component
-- SMTP authentication
-- Native language support
-- Word wrap, and more!
-
-Why you might need it:
-
-Many PHP developers utilize email in their code.  The only PHP function
-that supports this is the mail() function.  However, it does not expose
-any of the popular features that many email clients use nowadays like
-HTML-based emails and attachments. There are two proprietary
-development tools out there that have all the functionality built into
-easy to use classes: AspEmail(tm) and AspMail.  Both of these
-programs are COM components only available on Windows.  They are also a
-little pricey for smaller projects.
-
-Since I do Linux development I’ve missed these tools for my PHP coding.
-So I built a version myself that implements the same methods (object
-calls) that the Windows-based components do. It is open source and the
-LGPL license allows you to place the class in your proprietary PHP
-projects.
-
-
-Installation:
-
-Copy class.phpmailer.php into your php.ini include_path. If you are
-using the SMTP mailer then place class.smtp.php in your path as well.
-In the language directory you will find several files like
-phpmailer.lang-en.php.  If you look right before the .php extension
-that there are two letters.  These represent the language type of the
-translation file.  For instance "en" is the English file and "br" is
-the Portuguese file.  Chose the file that best fits with your language
-and place it in the PHP include path.  If your language is English
-then you have nothing more to do.  If it is a different language then
-you must point PHPMailer to the correct translation.  To do this, call
-the PHPMailer SetLanguage method like so:
-
-// To load the Portuguese version
-$mail->SetLanguage("br", "/optional/path/to/language/directory/");
-
-That's it.  You should now be ready to use PHPMailer!
-
-
-A Simple Example:
-
-<?php
-require("class.phpmailer.php");
-
-$mail = new PHPMailer();
-
-$mail->IsSMTP();                                      // set mailer to use SMTP
-$mail->Host = "smtp1.example.com;smtp2.example.com";  // specify main and backup server
-$mail->SMTPAuth = true;     // turn on SMTP authentication
-$mail->Username = "jswan";  // SMTP username
-$mail->Password = "secret"; // SMTP password
-
-$mail->From = "from@example.com";
-$mail->FromName = "Mailer";
-$mail->AddAddress("josh@example.net", "Josh Adams");
-$mail->AddAddress("ellen@example.com");                  // name is optional
-$mail->AddReplyTo("info@example.com", "Information");
-
-$mail->WordWrap = 50;                                 // set word wrap to 50 characters
-$mail->AddAttachment("/var/tmp/file.tar.gz");         // add attachments
-$mail->AddAttachment("/tmp/image.jpg", "new.jpg");    // optional name
-$mail->IsHTML(true);                                  // set email format to HTML
-
-$mail->Subject = "Here is the subject";
-$mail->Body    = "This is the HTML message body <b>in bold!</b>";
-$mail->AltBody = "This is the body in plain text for non-HTML mail clients";
-
-if(!$mail->Send())
-{
-   echo "Message could not be sent. <p>";
-   echo "Mailer Error: " . $mail->ErrorInfo;
-   exit;
-}
-
-echo "Message has been sent";
-?>
-
-CHANGELOG
-
-See ChangeLog.txt
-
-Download: http://sourceforge.net/project/showfiles.php?group_id=26031
-
-Andy Prevost
diff --git a/facteur/phpmailer-php5/class.phpmailer.php b/facteur/phpmailer-php5/class.phpmailer.php
deleted file mode 100644
index 9cdd0f3..0000000
--- a/facteur/phpmailer-php5/class.phpmailer.php
+++ /dev/null
@@ -1,2320 +0,0 @@
-<?php
-/*~ class.phpmailer.php
-.---------------------------------------------------------------------------.
-|  Software: PHPMailer - PHP email class                                    |
-|   Version: 5.1                                                            |
-|   Contact: via sourceforge.net support pages (also www.worxware.com)      |
-|      Info: http://phpmailer.sourceforge.net                               |
-|   Support: http://sourceforge.net/projects/phpmailer/                     |
-| ------------------------------------------------------------------------- |
-|     Admin: Andy Prevost (project admininistrator)                         |
-|   Authors: Andy Prevost (codeworxtech) codeworxtech@users.sourceforge.net |
-|          : Marcus Bointon (coolbru) coolbru@users.sourceforge.net         |
-|   Founder: Brent R. Matzelle (original founder)                           |
-| Copyright (c) 2004-2009, Andy Prevost. All Rights Reserved.               |
-| Copyright (c) 2001-2003, Brent R. Matzelle                                |
-| ------------------------------------------------------------------------- |
-|   License: Distributed under the Lesser General Public License (LGPL)     |
-|            http://www.gnu.org/copyleft/lesser.html                        |
-| This program is distributed in the hope that it will be useful - WITHOUT  |
-| ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or     |
-| FITNESS FOR A PARTICULAR PURPOSE.                                         |
-| ------------------------------------------------------------------------- |
-| We offer a number of paid services (www.worxware.com):                    |
-| - Web Hosting on highly optimized fast and secure servers                 |
-| - Technology Consulting                                                   |
-| - Oursourcing (highly qualified programmers and graphic designers)        |
-'---------------------------------------------------------------------------'
-*/
-
-/**
- * PHPMailer - PHP email transport class
- * NOTE: Requires PHP version 5 or later
- * @package PHPMailer
- * @author Andy Prevost
- * @author Marcus Bointon
- * @copyright 2004 - 2009 Andy Prevost
- * @version $Id: class.phpmailer.php 447 2009-05-25 01:36:38Z codeworxtech $
- * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License
- */
-
-if (version_compare(PHP_VERSION, '5.0.0', '<') ) exit("Sorry, this version of PHPMailer will only run on PHP version 5 or greater!\n");
-
-class PHPMailer {
-
-  /////////////////////////////////////////////////
-  // PROPERTIES, PUBLIC
-  /////////////////////////////////////////////////
-
-  /**
-   * Email priority (1 = High, 3 = Normal, 5 = low).
-   * @var int
-   */
-  public $Priority          = 3;
-
-  /**
-   * Sets the CharSet of the message.
-   * @var string
-   */
-  public $CharSet           = 'iso-8859-1';
-
-  /**
-   * Sets the Content-type of the message.
-   * @var string
-   */
-  public $ContentType       = 'text/plain';
-
-  /**
-   * Sets the Encoding of the message. Options for this are
-   *  "8bit", "7bit", "binary", "base64", and "quoted-printable".
-   * @var string
-   */
-  public $Encoding          = '8bit';
-
-  /**
-   * Holds the most recent mailer error message.
-   * @var string
-   */
-  public $ErrorInfo         = '';
-
-  /**
-   * Sets the From email address for the message.
-   * @var string
-   */
-  public $From              = 'root@localhost';
-
-  /**
-   * Sets the From name of the message.
-   * @var string
-   */
-  public $FromName          = 'Root User';
-
-  /**
-   * Sets the Sender email (Return-Path) of the message.  If not empty,
-   * will be sent via -f to sendmail or as 'MAIL FROM' in smtp mode.
-   * @var string
-   */
-  public $Sender            = '';
-
-  /**
-   * Sets the Subject of the message.
-   * @var string
-   */
-  public $Subject           = '';
-
-  /**
-   * Sets the Body of the message.  This can be either an HTML or text body.
-   * If HTML then run IsHTML(true).
-   * @var string
-   */
-  public $Body              = '';
-
-  /**
-   * Sets the text-only body of the message.  This automatically sets the
-   * email to multipart/alternative.  This body can be read by mail
-   * clients that do not have HTML email capability such as mutt. Clients
-   * that can read HTML will view the normal Body.
-   * @var string
-   */
-  public $AltBody           = '';
-
-  /**
-   * Sets word wrapping on the body of the message to a given number of
-   * characters.
-   * @var int
-   */
-  public $WordWrap          = 0;
-
-  /**
-   * Method to send mail: ("mail", "sendmail", or "smtp").
-   * @var string
-   */
-  public $Mailer            = 'mail';
-
-  /**
-   * Sets the path of the sendmail program.
-   * @var string
-   */
-  public $Sendmail          = '/usr/sbin/sendmail';
-
-  /**
-   * Path to PHPMailer plugins.  Useful if the SMTP class
-   * is in a different directory than the PHP include path.
-   * @var string
-   */
-  public $PluginDir         = '';
-
-  /**
-   * Sets the email address that a reading confirmation will be sent.
-   * @var string
-   */
-  public $ConfirmReadingTo  = '';
-
-  /**
-   * Sets the hostname to use in Message-Id and Received headers
-   * and as default HELO string. If empty, the value returned
-   * by SERVER_NAME is used or 'localhost.localdomain'.
-   * @var string
-   */
-  public $Hostname          = '';
-
-  /**
-   * Sets the message ID to be used in the Message-Id header.
-   * If empty, a unique id will be generated.
-   * @var string
-   */
-  public $MessageID         = '';
-
-  /////////////////////////////////////////////////
-  // PROPERTIES FOR SMTP
-  /////////////////////////////////////////////////
-
-  /**
-   * Sets the SMTP hosts.  All hosts must be separated by a
-   * semicolon.  You can also specify a different port
-   * for each host by using this format: [hostname:port]
-   * (e.g. "smtp1.example.com:25;smtp2.example.com").
-   * Hosts will be tried in order.
-   * @var string
-   */
-  public $Host          = 'localhost';
-
-  /**
-   * Sets the default SMTP server port.
-   * @var int
-   */
-  public $Port          = 25;
-
-  /**
-   * Sets the SMTP HELO of the message (Default is $Hostname).
-   * @var string
-   */
-  public $Helo          = '';
-
-  /**
-   * Sets connection prefix.
-   * Options are "", "ssl" or "tls"
-   * @var string
-   */
-  public $SMTPSecure    = '';
-
-  /**
-   * Sets SMTP authentication. Utilizes the Username and Password variables.
-   * @var bool
-   */
-  public $SMTPAuth      = false;
-
-  /**
-   * Sets SMTP username.
-   * @var string
-   */
-  public $Username      = '';
-
-  /**
-   * Sets SMTP password.
-   * @var string
-   */
-  public $Password      = '';
-
-  /**
-   * Sets the SMTP server timeout in seconds.
-   * This function will not work with the win32 version.
-   * @var int
-   */
-  public $Timeout       = 10;
-
-  /**
-   * Sets SMTP class debugging on or off.
-   * @var bool
-   */
-  public $SMTPDebug     = false;
-
-  /**
-   * Prevents the SMTP connection from being closed after each mail
-   * sending.  If this is set to true then to close the connection
-   * requires an explicit call to SmtpClose().
-   * @var bool
-   */
-  public $SMTPKeepAlive = false;
-
-  /**
-   * Provides the ability to have the TO field process individual
-   * emails, instead of sending to entire TO addresses
-   * @var bool
-   */
-  public $SingleTo      = false;
-
-   /**
-   * If SingleTo is true, this provides the array to hold the email addresses
-   * @var bool
-   */
-  public $SingleToArray = array();
-
- /**
-   * Provides the ability to change the line ending
-   * @var string
-   */
-  public $LE              = "\n";
-
-  /**
-   * Used with DKIM DNS Resource Record
-   * @var string
-   */
-  public $DKIM_selector   = 'phpmailer';
-
-  /**
-   * Used with DKIM DNS Resource Record
-   * optional, in format of email address 'you@yourdomain.com'
-   * @var string
-   */
-  public $DKIM_identity   = '';
-
-  /**
-   * Used with DKIM DNS Resource Record
-   * optional, in format of email address 'you@yourdomain.com'
-   * @var string
-   */
-  public $DKIM_domain     = '';
-
-  /**
-   * Used with DKIM DNS Resource Record
-   * optional, in format of email address 'you@yourdomain.com'
-   * @var string
-   */
-  public $DKIM_private    = '';
-
-  /**
-   * Callback Action function name
-   * the function that handles the result of the send email action. Parameters:
-   *   bool    $result        result of the send action
-   *   string  $to            email address of the recipient
-   *   string  $cc            cc email addresses
-   *   string  $bcc           bcc email addresses
-   *   string  $subject       the subject
-   *   string  $body          the email body
-   * @var string
-   */
-  public $action_function = ''; //'callbackAction';
-
-  /**
-   * Sets the PHPMailer Version number
-   * @var string
-   */
-  public $Version         = '5.1';
-
-  /////////////////////////////////////////////////
-  // PROPERTIES, PRIVATE AND PROTECTED
-  /////////////////////////////////////////////////
-
-  private   $smtp           = NULL;
-  private   $to             = array();
-  private   $cc             = array();
-  private   $bcc            = array();
-  private   $ReplyTo        = array();
-  private   $all_recipients = array();
-  private   $attachment     = array();
-  private   $CustomHeader   = array();
-  private   $message_type   = '';
-  private   $boundary       = array();
-  protected $language       = array();
-  private   $error_count    = 0;
-  private   $sign_cert_file = "";
-  private   $sign_key_file  = "";
-  private   $sign_key_pass  = "";
-  private   $exceptions     = false;
-
-  /////////////////////////////////////////////////
-  // CONSTANTS
-  /////////////////////////////////////////////////
-
-  const STOP_MESSAGE  = 0; // message only, continue processing
-  const STOP_CONTINUE = 1; // message?, likely ok to continue processing
-  const STOP_CRITICAL = 2; // message, plus full stop, critical error reached
-
-  /////////////////////////////////////////////////
-  // METHODS, VARIABLES
-  /////////////////////////////////////////////////
-
-  /**
-   * Constructor
-   * @param boolean $exceptions Should we throw external exceptions?
-   */
-  public function __construct($exceptions = false) {
-    $this->exceptions = ($exceptions == true);
-  }
-
-  /**
-   * Sets message type to HTML.
-   * @param bool $ishtml
-   * @return void
-   */
-  public function IsHTML($ishtml = true) {
-    if ($ishtml) {
-      $this->ContentType = 'text/html';
-    } else {
-      $this->ContentType = 'text/plain';
-    }
-  }
-
-  /**
-   * Sets Mailer to send message using SMTP.
-   * @return void
-   */
-  public function IsSMTP() {
-    $this->Mailer = 'smtp';
-  }
-
-  /**
-   * Sets Mailer to send message using PHP mail() function.
-   * @return void
-   */
-  public function IsMail() {
-    $this->Mailer = 'mail';
-  }
-
-  /**
-   * Sets Mailer to send message using the $Sendmail program.
-   * @return void
-   */
-  public function IsSendmail() {
-    if (!stristr(ini_get('sendmail_path'), 'sendmail')) {
-      $this->Sendmail = '/var/qmail/bin/sendmail';
-    }
-    $this->Mailer = 'sendmail';
-  }
-
-  /**
-   * Sets Mailer to send message using the qmail MTA.
-   * @return void
-   */
-  public function IsQmail() {
-    if (stristr(ini_get('sendmail_path'), 'qmail')) {
-      $this->Sendmail = '/var/qmail/bin/sendmail';
-    }
-    $this->Mailer = 'sendmail';
-  }
-
-  /////////////////////////////////////////////////
-  // METHODS, RECIPIENTS
-  /////////////////////////////////////////////////
-
-  /**
-   * Adds a "To" address.
-   * @param string $address
-   * @param string $name
-   * @return boolean true on success, false if address already used
-   */
-  public function AddAddress($address, $name = '') {
-    return $this->AddAnAddress('to', $address, $name);
-  }
-
-  /**
-   * Adds a "Cc" address.
-   * Note: this function works with the SMTP mailer on win32, not with the "mail" mailer.
-   * @param string $address
-   * @param string $name
-   * @return boolean true on success, false if address already used
-   */
-  public function AddCC($address, $name = '') {
-    return $this->AddAnAddress('cc', $address, $name);
-  }
-
-  /**
-   * Adds a "Bcc" address.
-   * Note: this function works with the SMTP mailer on win32, not with the "mail" mailer.
-   * @param string $address
-   * @param string $name
-   * @return boolean true on success, false if address already used
-   */
-  public function AddBCC($address, $name = '') {
-    return $this->AddAnAddress('bcc', $address, $name);
-  }
-
-  /**
-   * Adds a "Reply-to" address.
-   * @param string $address
-   * @param string $name
-   * @return boolean
-   */
-  public function AddReplyTo($address, $name = '') {
-    return $this->AddAnAddress('ReplyTo', $address, $name);
-  }
-
-  /**
-   * Adds an address to one of the recipient arrays
-   * Addresses that have been added already return false, but do not throw exceptions
-   * @param string $kind One of 'to', 'cc', 'bcc', 'ReplyTo'
-   * @param string $address The email address to send to
-   * @param string $name
-   * @return boolean true on success, false if address already used or invalid in some way
-   * @access private
-   */
-  private function AddAnAddress($kind, $address, $name = '') {
-    if (!preg_match('/^(to|cc|bcc|ReplyTo)$/', $kind)) {
-      echo 'Invalid recipient array: ' . kind;
-      return false;
-    }
-    $address = trim($address);
-    $name = trim(preg_replace('/[\r\n]+/', '', $name)); //Strip breaks and trim
-    if (!self::ValidateAddress($address)) {
-      $this->SetError($this->Lang('invalid_address').': '. $address);
-      if ($this->exceptions) {
-        throw new phpmailerException($this->Lang('invalid_address').': '.$address);
-      }
-      echo $this->Lang('invalid_address').': '.$address;
-      return false;
-    }
-    if ($kind != 'ReplyTo') {
-      if (!isset($this->all_recipients[strtolower($address)])) {
-        array_push($this->$kind, array($address, $name));
-        $this->all_recipients[strtolower($address)] = true;
-        return true;
-      }
-    } else {
-      if (!array_key_exists(strtolower($address), $this->ReplyTo)) {
-        $this->ReplyTo[strtolower($address)] = array($address, $name);
-      return true;
-    }
-  }
-  return false;
-}
-
-/**
- * Set the From and FromName properties
- * @param string $address
- * @param string $name
- * @return boolean
- */
-  public function SetFrom($address, $name = '',$auto=1) {
-    $address = trim($address);
-    $name = trim(preg_replace('/[\r\n]+/', '', $name)); //Strip breaks and trim
-    if (!self::ValidateAddress($address)) {
-      $this->SetError($this->Lang('invalid_address').': '. $address);
-      if ($this->exceptions) {
-        throw new phpmailerException($this->Lang('invalid_address').': '.$address);
-      }
-      echo $this->Lang('invalid_address').': '.$address;
-      return false;
-    }
-    $this->From = $address;
-    $this->FromName = $name;
-    if ($auto) {
-      if (empty($this->ReplyTo)) {
-        $this->AddAnAddress('ReplyTo', $address, $name);
-      }
-      if (empty($this->Sender)) {
-        $this->Sender = $address;
-      }
-    }
-    return true;
-  }
-
-  /**
-   * Check that a string looks roughly like an email address should
-   * Static so it can be used without instantiation
-   * Tries to use PHP built-in validator in the filter extension (from PHP 5.2), falls back to a reasonably competent regex validator
-   * Conforms approximately to RFC2822
-   * @link http://www.hexillion.com/samples/#Regex Original pattern found here
-   * @param string $address The email address to check
-   * @return boolean
-   * @static
-   * @access public
-   */
-  public static function ValidateAddress($address) {
-    if (function_exists('filter_var')) { //Introduced in PHP 5.2
-      if(filter_var($address, FILTER_VALIDATE_EMAIL) === FALSE) {
-        return false;
-      } else {
-        return true;
-      }
-    } else {
-      return preg_match('/^(?:[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+\.)*[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+@(?:(?:(?:[a-zA-Z0-9_](?:[a-zA-Z0-9_\-](?!\.)){0,61}[a-zA-Z0-9_-]?\.)+[a-zA-Z0-9_](?:[a-zA-Z0-9_\-](?!$)){0,61}[a-zA-Z0-9_]?)|(?:\[(?:(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\.){3}(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\]))$/', $address);
-    }
-  }
-
-  /////////////////////////////////////////////////
-  // METHODS, MAIL SENDING
-  /////////////////////////////////////////////////
-
-  /**
-   * Creates message and assigns Mailer. If the message is
-   * not sent successfully then it returns false.  Use the ErrorInfo
-   * variable to view description of the error.
-   * @return bool
-   */
-  public function Send() {
-    try {
-      if ((count($this->to) + count($this->cc) + count($this->bcc)) < 1) {
-        throw new phpmailerException($this->Lang('provide_address'), self::STOP_CRITICAL);
-      }
-
-      // Set whether the message is multipart/alternative
-      if(!empty($this->AltBody)) {
-        $this->ContentType = 'multipart/alternative';
-      }
-
-      $this->error_count = 0; // reset errors
-      $this->SetMessageType();
-      $header = $this->CreateHeader();
-      $body = $this->CreateBody();
-
-      if (empty($this->Body)) {
-        throw new phpmailerException($this->Lang('empty_message'), self::STOP_CRITICAL);
-      }
-
-      // digitally sign with DKIM if enabled
-      if ($this->DKIM_domain && $this->DKIM_private) {
-        $header_dkim = $this->DKIM_Add($header,$this->Subject,$body);
-        $header = str_replace("\r\n","\n",$header_dkim) . $header;
-      }
-
-      // Choose the mailer and send through it
-      switch($this->Mailer) {
-        case 'sendmail':
-          return $this->SendmailSend($header, $body);
-        case 'smtp':
-          return $this->SmtpSend($header, $body);
-        default:
-          return $this->MailSend($header, $body);
-      }
-
-    } catch (phpmailerException $e) {
-      $this->SetError($e->getMessage());
-      if ($this->exceptions) {
-        throw $e;
-      }
-      echo $e->getMessage()."\n";
-      return false;
-    }
-  }
-
-  /**
-   * Sends mail using the $Sendmail program.
-   * @param string $header The message headers
-   * @param string $body The message body
-   * @access protected
-   * @return bool
-   */
-  protected function SendmailSend($header, $body) {
-    if ($this->Sender != '') {
-      $sendmail = sprintf("%s -oi -f %s -t", escapeshellcmd($this->Sendmail), escapeshellarg($this->Sender));
-    } else {
-      $sendmail = sprintf("%s -oi -t", escapeshellcmd($this->Sendmail));
-    }
-    if ($this->SingleTo === true) {
-      foreach ($this->SingleToArray as $key => $val) {
-        if(!@$mail = popen($sendmail, 'w')) {
-          throw new phpmailerException($this->Lang('execute') . $this->Sendmail, self::STOP_CRITICAL);
-        }
-        fputs($mail, "To: " . $val . "\n");
-        fputs($mail, $header);
-        fputs($mail, $body);
-        $result = pclose($mail);
-        // implement call back function if it exists
-        $isSent = ($result == 0) ? 1 : 0;
-        $this->doCallback($isSent,$val,$this->cc,$this->bcc,$this->Subject,$body);
-        if($result != 0) {
-          throw new phpmailerException($this->Lang('execute') . $this->Sendmail, self::STOP_CRITICAL);
-        }
-      }
-    } else {
-      if(!@$mail = popen($sendmail, 'w')) {
-        throw new phpmailerException($this->Lang('execute') . $this->Sendmail, self::STOP_CRITICAL);
-      }
-      fputs($mail, $header);
-      fputs($mail, $body);
-      $result = pclose($mail);
-      // implement call back function if it exists
-      $isSent = ($result == 0) ? 1 : 0;
-      $this->doCallback($isSent,$this->to,$this->cc,$this->bcc,$this->Subject,$body);
-      if($result != 0) {
-        throw new phpmailerException($this->Lang('execute') . $this->Sendmail, self::STOP_CRITICAL);
-      }
-    }
-    return true;
-  }
-
-  /**
-   * Sends mail using the PHP mail() function.
-   * @param string $header The message headers
-   * @param string $body The message body
-   * @access protected
-   * @return bool
-   */
-  protected function MailSend($header, $body) {
-    $toArr = array();
-    foreach($this->to as $t) {
-      $toArr[] = $this->AddrFormat($t);
-    }
-    $to = implode(', ', $toArr);
-
-    $params = sprintf("-oi -f %s", $this->Sender);
-    if ($this->Sender != '' && strlen(ini_get('safe_mode'))< 1) {
-      $old_from = ini_get('sendmail_from');
-      ini_set('sendmail_from', $this->Sender);
-      if ($this->SingleTo === true && count($toArr) > 1) {
-        foreach ($toArr as $key => $val) {
-          $rt = @mail($val, $this->EncodeHeader($this->SecureHeader($this->Subject)), $body, $header, $params);
-          // implement call back function if it exists
-          $isSent = ($rt == 1) ? 1 : 0;
-          $this->doCallback($isSent,$val,$this->cc,$this->bcc,$this->Subject,$body);
-        }
-      } else {
-        $rt = @mail($to, $this->EncodeHeader($this->SecureHeader($this->Subject)), $body, $header, $params);
-        // implement call back function if it exists
-        $isSent = ($rt == 1) ? 1 : 0;
-        $this->doCallback($isSent,$to,$this->cc,$this->bcc,$this->Subject,$body);
-      }
-    } else {
-      if ($this->SingleTo === true && count($toArr) > 1) {
-        foreach ($toArr as $key => $val) {
-          $rt = @mail($val, $this->EncodeHeader($this->SecureHeader($this->Subject)), $body, $header, $params);
-          // implement call back function if it exists
-          $isSent = ($rt == 1) ? 1 : 0;
-          $this->doCallback($isSent,$val,$this->cc,$this->bcc,$this->Subject,$body);
-        }
-      } else {
-        $rt = @mail($to, $this->EncodeHeader($this->SecureHeader($this->Subject)), $body, $header);
-        // implement call back function if it exists
-        $isSent = ($rt == 1) ? 1 : 0;
-        $this->doCallback($isSent,$to,$this->cc,$this->bcc,$this->Subject,$body);
-      }
-    }
-    if (isset($old_from)) {
-      ini_set('sendmail_from', $old_from);
-    }
-    if(!$rt) {
-      throw new phpmailerException($this->Lang('instantiate'), self::STOP_CRITICAL);
-    }
-    return true;
-  }
-
-  /**
-   * Sends mail via SMTP using PhpSMTP
-   * Returns false if there is a bad MAIL FROM, RCPT, or DATA input.
-   * @param string $header The message headers
-   * @param string $body The message body
-   * @uses SMTP
-   * @access protected
-   * @return bool
-   */
-  protected function SmtpSend($header, $body) {
-    require_once $this->PluginDir . 'class.smtp.php';
-    $bad_rcpt = array();
-
-    if(!$this->SmtpConnect()) {
-      throw new phpmailerException($this->Lang('smtp_connect_failed'), self::STOP_CRITICAL);
-    }
-    $smtp_from = ($this->Sender == '') ? $this->From : $this->Sender;
-    if(!$this->smtp->Mail($smtp_from)) {
-      throw new phpmailerException($this->Lang('from_failed') . $smtp_from, self::STOP_CRITICAL);
-    }
-
-    // Attempt to send attach all recipients
-    foreach($this->to as $to) {
-      if (!$this->smtp->Recipient($to[0])) {
-        $bad_rcpt[] = $to[0];
-        // implement call back function if it exists
-        $isSent = 0;
-        $this->doCallback($isSent,$to[0],'','',$this->Subject,$body);
-      } else {
-        // implement call back function if it exists
-        $isSent = 1;
-        $this->doCallback($isSent,$to[0],'','',$this->Subject,$body);
-      }
-    }
-    foreach($this->cc as $cc) {
-      if (!$this->smtp->Recipient($cc[0])) {
-        $bad_rcpt[] = $cc[0];
-        // implement call back function if it exists
-        $isSent = 0;
-        $this->doCallback($isSent,'',$cc[0],'',$this->Subject,$body);
-      } else {
-        // implement call back function if it exists
-        $isSent = 1;
-        $this->doCallback($isSent,'',$cc[0],'',$this->Subject,$body);
-      }
-    }
-    foreach($this->bcc as $bcc) {
-      if (!$this->smtp->Recipient($bcc[0])) {
-        $bad_rcpt[] = $bcc[0];
-        // implement call back function if it exists
-        $isSent = 0;
-        $this->doCallback($isSent,'','',$bcc[0],$this->Subject,$body);
-      } else {
-        // implement call back function if it exists
-        $isSent = 1;
-        $this->doCallback($isSent,'','',$bcc[0],$this->Subject,$body);
-      }
-    }
-
-
-    if (count($bad_rcpt) > 0 ) { //Create error message for any bad addresses
-      $badaddresses = implode(', ', $bad_rcpt);
-      throw new phpmailerException($this->Lang('recipients_failed') . $badaddresses);
-    }
-    if(!$this->smtp->Data($header . $body)) {
-      throw new phpmailerException($this->Lang('data_not_accepted'), self::STOP_CRITICAL);
-    }
-    if($this->SMTPKeepAlive == true) {
-      $this->smtp->Reset();
-    }
-    return true;
-  }
-
-  /**
-   * Initiates a connection to an SMTP server.
-   * Returns false if the operation failed.
-   * @uses SMTP
-   * @access public
-   * @return bool
-   */
-  public function SmtpConnect() {
-    if(is_null($this->smtp)) {
-      $this->smtp = new SMTP();
-    }
-
-    $this->smtp->do_debug = $this->SMTPDebug;
-    $hosts = explode(';', $this->Host);
-    $index = 0;
-    $connection = $this->smtp->Connected();
-
-    // Retry while there is no connection
-    try {
-      while($index < count($hosts) && !$connection) {
-        $hostinfo = array();
-        if (preg_match('/^(.+):([0-9]+)$/', $hosts[$index], $hostinfo)) {
-          $host = $hostinfo[1];
-          $port = $hostinfo[2];
-        } else {
-          $host = $hosts[$index];
-          $port = $this->Port;
-        }
-
-        $tls = ($this->SMTPSecure == 'tls');
-        $ssl = ($this->SMTPSecure == 'ssl');
-
-        if ($this->smtp->Connect(($ssl ? 'ssl://':'').$host, $port, $this->Timeout)) {
-
-          $hello = ($this->Helo != '' ? $this->Helo : $this->ServerHostname());
-          $this->smtp->Hello($hello);
-
-          if ($tls) {
-            if (!$this->smtp->StartTLS()) {
-              throw new phpmailerException($this->Lang('tls'));
-            }
-
-            //We must resend HELO after tls negotiation
-            $this->smtp->Hello($hello);
-          }
-
-          $connection = true;
-          if ($this->SMTPAuth) {
-            if (!$this->smtp->Authenticate($this->Username, $this->Password)) {
-              throw new phpmailerException($this->Lang('authenticate'));
-            }
-          }
-        }
-        $index++;
-        if (!$connection) {
-          throw new phpmailerException($this->Lang('connect_host'));
-        }
-      }
-    } catch (phpmailerException $e) {
-      $this->smtp->Reset();
-      throw $e;
-    }
-    return true;
-  }
-
-  /**
-   * Closes the active SMTP session if one exists.
-   * @return void
-   */
-  public function SmtpClose() {
-    if(!is_null($this->smtp)) {
-      if($this->smtp->Connected()) {
-        $this->smtp->Quit();
-        $this->smtp->Close();
-      }
-    }
-  }
-
-  /**
-  * Sets the language for all class error messages.
-  * Returns false if it cannot load the language file.  The default language is English.
-  * @param string $langcode ISO 639-1 2-character language code (e.g. Portuguese: "br")
-  * @param string $lang_path Path to the language file directory
-  * @access public
-  */
-  function SetLanguage($langcode = 'en', $lang_path = 'language/') {
-    //Define full set of translatable strings
-    $PHPMAILER_LANG = array(
-      'provide_address' => 'You must provide at least one recipient email address.',
-      'mailer_not_supported' => ' mailer is not supported.',
-      'execute' => 'Could not execute: ',
-      'instantiate' => 'Could not instantiate mail function.',
-      'authenticate' => 'SMTP Error: Could not authenticate.',
-      'from_failed' => 'The following From address failed: ',
-      'recipients_failed' => 'SMTP Error: The following recipients failed: ',
-      'data_not_accepted' => 'SMTP Error: Data not accepted.',
-      'connect_host' => 'SMTP Error: Could not connect to SMTP host.',
-      'file_access' => 'Could not access file: ',
-      'file_open' => 'File Error: Could not open file: ',
-      'encoding' => 'Unknown encoding: ',
-      'signing' => 'Signing Error: ',
-      'smtp_error' => 'SMTP server error: ',
-      'empty_message' => 'Message body empty',
-      'invalid_address' => 'Invalid address',
-      'variable_set' => 'Cannot set or reset variable: '
-    );
-    //Overwrite language-specific strings. This way we'll never have missing translations - no more "language string failed to load"!
-    $l = true;
-    if ($langcode != 'en') { //There is no English translation file
-      $l = @include $lang_path.'phpmailer.lang-'.$langcode.'.php';
-    }
-    $this->language = $PHPMAILER_LANG;
-    return ($l == true); //Returns false if language not found
-  }
-
-  /**
-  * Return the current array of language strings
-  * @return array
-  */
-  public function GetTranslations() {
-    return $this->language;
-  }
-
-  /////////////////////////////////////////////////
-  // METHODS, MESSAGE CREATION
-  /////////////////////////////////////////////////
-
-  /**
-   * Creates recipient headers.
-   * @access public
-   * @return string
-   */
-  public function AddrAppend($type, $addr) {
-    $addr_str = $type . ': ';
-    $addresses = array();
-    foreach ($addr as $a) {
-      $addresses[] = $this->AddrFormat($a);
-    }
-    $addr_str .= implode(', ', $addresses);
-    $addr_str .= $this->LE;
-
-    return $addr_str;
-  }
-
-  /**
-   * Formats an address correctly.
-   * @access public
-   * @return string
-   */
-  public function AddrFormat($addr) {
-    if (empty($addr[1])) {
-      return $this->SecureHeader($addr[0]);
-    } else {
-      return $this->EncodeHeader($this->SecureHeader($addr[1]), 'phrase') . " <" . $this->SecureHeader($addr[0]) . ">";
-    }
-  }
-
-  /**
-   * Wraps message for use with mailers that do not
-   * automatically perform wrapping and for quoted-printable.
-   * Original written by philippe.
-   * @param string $message The message to wrap
-   * @param integer $length The line length to wrap to
-   * @param boolean $qp_mode Whether to run in Quoted-Printable mode
-   * @access public
-   * @return string
-   */
-  public function WrapText($message, $length, $qp_mode = false) {
-    $soft_break = ($qp_mode) ? sprintf(" =%s", $this->LE) : $this->LE;
-    // If utf-8 encoding is used, we will need to make sure we don't
-    // split multibyte characters when we wrap
-    $is_utf8 = (strtolower($this->CharSet) == "utf-8");
-
-    $message = $this->FixEOL($message);
-    if (substr($message, -1) == $this->LE) {
-      $message = substr($message, 0, -1);
-    }
-
-    $line = explode($this->LE, $message);
-    $message = '';
-    for ($i=0 ;$i < count($line); $i++) {
-      $line_part = explode(' ', $line[$i]);
-      $buf = '';
-      for ($e = 0; $e<count($line_part); $e++) {
-        $word = $line_part[$e];
-        if ($qp_mode and (strlen($word) > $length)) {
-          $space_left = $length - strlen($buf) - 1;
-          if ($e != 0) {
-            if ($space_left > 20) {
-              $len = $space_left;
-              if ($is_utf8) {
-                $len = $this->UTF8CharBoundary($word, $len);
-              } elseif (substr($word, $len - 1, 1) == "=") {
-                $len--;
-              } elseif (substr($word, $len - 2, 1) == "=") {
-                $len -= 2;
-              }
-              $part = substr($word, 0, $len);
-              $word = substr($word, $len);
-              $buf .= ' ' . $part;
-              $message .= $buf . sprintf("=%s", $this->LE);
-            } else {
-              $message .= $buf . $soft_break;
-            }
-            $buf = '';
-          }
-          while (strlen($word) > 0) {
-            $len = $length;
-            if ($is_utf8) {
-              $len = $this->UTF8CharBoundary($word, $len);
-            } elseif (substr($word, $len - 1, 1) == "=") {
-              $len--;
-            } elseif (substr($word, $len - 2, 1) == "=") {
-              $len -= 2;
-            }
-            $part = substr($word, 0, $len);
-            $word = substr($word, $len);
-
-            if (strlen($word) > 0) {
-              $message .= $part . sprintf("=%s", $this->LE);
-            } else {
-              $buf = $part;
-            }
-          }
-        } else {
-          $buf_o = $buf;
-          $buf .= ($e == 0) ? $word : (' ' . $word);
-
-          if (strlen($buf) > $length and $buf_o != '') {
-            $message .= $buf_o . $soft_break;
-            $buf = $word;
-          }
-        }
-      }
-      $message .= $buf . $this->LE;
-    }
-
-    return $message;
-  }
-
-  /**
-   * Finds last character boundary prior to maxLength in a utf-8
-   * quoted (printable) encoded string.
-   * Original written by Colin Brown.
-   * @access public
-   * @param string $encodedText utf-8 QP text
-   * @param int    $maxLength   find last character boundary prior to this length
-   * @return int
-   */
-  public function UTF8CharBoundary($encodedText, $maxLength) {
-    $foundSplitPos = false;
-    $lookBack = 3;
-    while (!$foundSplitPos) {
-      $lastChunk = substr($encodedText, $maxLength - $lookBack, $lookBack);
-      $encodedCharPos = strpos($lastChunk, "=");
-      if ($encodedCharPos !== false) {
-        // Found start of encoded character byte within $lookBack block.
-        // Check the encoded byte value (the 2 chars after the '=')
-        $hex = substr($encodedText, $maxLength - $lookBack + $encodedCharPos + 1, 2);
-        $dec = hexdec($hex);
-        if ($dec < 128) { // Single byte character.
-          // If the encoded char was found at pos 0, it will fit
-          // otherwise reduce maxLength to start of the encoded char
-          $maxLength = ($encodedCharPos == 0) ? $maxLength :
-          $maxLength - ($lookBack - $encodedCharPos);
-          $foundSplitPos = true;
-        } elseif ($dec >= 192) { // First byte of a multi byte character
-          // Reduce maxLength to split at start of character
-          $maxLength = $maxLength - ($lookBack - $encodedCharPos);
-          $foundSplitPos = true;
-        } elseif ($dec < 192) { // Middle byte of a multi byte character, look further back
-          $lookBack += 3;
-        }
-      } else {
-        // No encoded character found
-        $foundSplitPos = true;
-      }
-    }
-    return $maxLength;
-  }
-
-
-  /**
-   * Set the body wrapping.
-   * @access public
-   * @return void
-   */
-  public function SetWordWrap() {
-    if($this->WordWrap < 1) {
-      return;
-    }
-
-    switch($this->message_type) {
-      case 'alt':
-      case 'alt_attachments':
-        $this->AltBody = $this->WrapText($this->AltBody, $this->WordWrap);
-        break;
-      default:
-        $this->Body = $this->WrapText($this->Body, $this->WordWrap);
-        break;
-    }
-  }
-
-  /**
-   * Assembles message header.
-   * @access public
-   * @return string The assembled header
-   */
-  public function CreateHeader() {
-    $result = '';
-
-    // Set the boundaries
-    $uniq_id = md5(uniqid(time()));
-    $this->boundary[1] = 'b1_' . $uniq_id;
-    $this->boundary[2] = 'b2_' . $uniq_id;
-
-    $result .= $this->HeaderLine('Date', self::RFCDate());
-    if($this->Sender == '') {
-      $result .= $this->HeaderLine('Return-Path', trim($this->From));
-    } else {
-      $result .= $this->HeaderLine('Return-Path', trim($this->Sender));
-    }
-
-    // To be created automatically by mail()
-    if($this->Mailer != 'mail') {
-      if ($this->SingleTo === true) {
-        foreach($this->to as $t) {
-          $this->SingleToArray[] = $this->AddrFormat($t);
-        }
-      } else {
-        if(count($this->to) > 0) {
-          $result .= $this->AddrAppend('To', $this->to);
-        } elseif (count($this->cc) == 0) {
-          $result .= $this->HeaderLine('To', 'undisclosed-recipients:;');
-        }
-      }
-    }
-
-    $from = array();
-    $from[0][0] = trim($this->From);
-    $from[0][1] = $this->FromName;
-    $result .= $this->AddrAppend('From', $from);
-
-    // sendmail and mail() extract Cc from the header before sending
-    if(count($this->cc) > 0) {
-      $result .= $this->AddrAppend('Cc', $this->cc);
-    }
-
-    // sendmail and mail() extract Bcc from the header before sending
-    if((($this->Mailer == 'sendmail') || ($this->Mailer == 'mail')) && (count($this->bcc) > 0)) {
-      $result .= $this->AddrAppend('Bcc', $this->bcc);
-    }
-
-    if(count($this->ReplyTo) > 0) {
-      $result .= $this->AddrAppend('Reply-to', $this->ReplyTo);
-    }
-
-    // mail() sets the subject itself
-    if($this->Mailer != 'mail') {
-      $result .= $this->HeaderLine('Subject', $this->EncodeHeader($this->SecureHeader($this->Subject)));
-    }
-
-    if($this->MessageID != '') {
-      $result .= $this->HeaderLine('Message-ID',$this->MessageID);
-    } else {
-      $result .= sprintf("Message-ID: <%s@%s>%s", $uniq_id, $this->ServerHostname(), $this->LE);
-    }
-    $result .= $this->HeaderLine('X-Priority', $this->Priority);
-    $result .= $this->HeaderLine('X-Mailer', 'PHPMailer '.$this->Version.' (phpmailer.sourceforge.net)');
-
-    if($this->ConfirmReadingTo != '') {
-      $result .= $this->HeaderLine('Disposition-Notification-To', '<' . trim($this->ConfirmReadingTo) . '>');
-    }
-
-    // Add custom headers
-    for($index = 0; $index < count($this->CustomHeader); $index++) {
-      $result .= $this->HeaderLine(trim($this->CustomHeader[$index][0]), $this->EncodeHeader(trim($this->CustomHeader[$index][1])));
-    }
-    if (!$this->sign_key_file) {
-      $result .= $this->HeaderLine('MIME-Version', '1.0');
-      $result .= $this->GetMailMIME();
-    }
-
-    return $result;
-  }
-
-  /**
-   * Returns the message MIME.
-   * @access public
-   * @return string
-   */
-  public function GetMailMIME() {
-    $result = '';
-    switch($this->message_type) {
-      case 'plain':
-        $result .= $this->HeaderLine('Content-Transfer-Encoding', $this->Encoding);
-        $result .= sprintf("Content-Type: %s; charset=\"%s\"", $this->ContentType, $this->CharSet);
-        break;
-      case 'attachments':
-      case 'alt_attachments':
-        if($this->InlineImageExists()){
-          $result .= sprintf("Content-Type: %s;%s\ttype=\"text/html\";%s\tboundary=\"%s\"%s", 'multipart/related', $this->LE, $this->LE, $this->boundary[1], $this->LE);
-        } else {
-          $result .= $this->HeaderLine('Content-Type', 'multipart/mixed;');
-          $result .= $this->TextLine("\tboundary=\"" . $this->boundary[1] . '"');
-        }
-        break;
-      case 'alt':
-        $result .= $this->HeaderLine('Content-Type', 'multipart/alternative;');
-        $result .= $this->TextLine("\tboundary=\"" . $this->boundary[1] . '"');
-        break;
-    }
-
-    if($this->Mailer != 'mail') {
-      $result .= $this->LE.$this->LE;
-    }
-
-    return $result;
-  }
-
-  /**
-   * Assembles the message body.  Returns an empty string on failure.
-   * @access public
-   * @return string The assembled message body
-   */
-  public function CreateBody() {
-    $body = '';
-
-    if ($this->sign_key_file) {
-      $body .= $this->GetMailMIME();
-    }
-
-    $this->SetWordWrap();
-
-    switch($this->message_type) {
-      case 'alt':
-        $body .= $this->GetBoundary($this->boundary[1], '', 'text/plain', '');
-        $body .= $this->EncodeString($this->AltBody, $this->Encoding);
-        $body .= $this->LE.$this->LE;
-        $body .= $this->GetBoundary($this->boundary[1], '', 'text/html', '');
-        $body .= $this->EncodeString($this->Body, $this->Encoding);
-        $body .= $this->LE.$this->LE;
-        $body .= $this->EndBoundary($this->boundary[1]);
-        break;
-      case 'plain':
-        $body .= $this->EncodeString($this->Body, $this->Encoding);
-        break;
-      case 'attachments':
-        $body .= $this->GetBoundary($this->boundary[1], '', '', '');
-        $body .= $this->EncodeString($this->Body, $this->Encoding);
-        $body .= $this->LE;
-        $body .= $this->AttachAll();
-        break;
-      case 'alt_attachments':
-        $body .= sprintf("--%s%s", $this->boundary[1], $this->LE);
-        $body .= sprintf("Content-Type: %s;%s" . "\tboundary=\"%s\"%s", 'multipart/alternative', $this->LE, $this->boundary[2], $this->LE.$this->LE);
-        $body .= $this->GetBoundary($this->boundary[2], '', 'text/plain', '') . $this->LE; // Create text body
-        $body .= $this->EncodeString($this->AltBody, $this->Encoding);
-        $body .= $this->LE.$this->LE;
-        $body .= $this->GetBoundary($this->boundary[2], '', 'text/html', '') . $this->LE; // Create the HTML body
-        $body .= $this->EncodeString($this->Body, $this->Encoding);
-        $body .= $this->LE.$this->LE;
-        $body .= $this->EndBoundary($this->boundary[2]);
-        $body .= $this->AttachAll();
-        break;
-    }
-
-    if ($this->IsError()) {
-      $body = '';
-    } elseif ($this->sign_key_file) {
-      try {
-        $file = tempnam('', 'mail');
-        file_put_contents($file, $body); //TODO check this worked
-        $signed = tempnam("", "signed");
-        if (@openssl_pkcs7_sign($file, $signed, "file://".$this->sign_cert_file, array("file://".$this->sign_key_file, $this->sign_key_pass), NULL)) {
-          @unlink($file);
-          @unlink($signed);
-          $body = file_get_contents($signed);
-        } else {
-          @unlink($file);
-          @unlink($signed);
-          throw new phpmailerException($this->Lang("signing").openssl_error_string());
-        }
-      } catch (phpmailerException $e) {
-        $body = '';
-        if ($this->exceptions) {
-          throw $e;
-        }
-      }
-    }
-
-    return $body;
-  }
-
-  /**
-   * Returns the start of a message boundary.
-   * @access private
-   */
-  private function GetBoundary($boundary, $charSet, $contentType, $encoding) {
-    $result = '';
-    if($charSet == '') {
-      $charSet = $this->CharSet;
-    }
-    if($contentType == '') {
-      $contentType = $this->ContentType;
-    }
-    if($encoding == '') {
-      $encoding = $this->Encoding;
-    }
-    $result .= $this->TextLine('--' . $boundary);
-    $result .= sprintf("Content-Type: %s; charset = \"%s\"", $contentType, $charSet);
-    $result .= $this->LE;
-    $result .= $this->HeaderLine('Content-Transfer-Encoding', $encoding);
-    $result .= $this->LE;
-
-    return $result;
-  }
-
-  /**
-   * Returns the end of a message boundary.
-   * @access private
-   */
-  private function EndBoundary($boundary) {
-    return $this->LE . '--' . $boundary . '--' . $this->LE;
-  }
-
-  /**
-   * Sets the message type.
-   * @access private
-   * @return void
-   */
-  private function SetMessageType() {
-    if(count($this->attachment) < 1 && strlen($this->AltBody) < 1) {
-      $this->message_type = 'plain';
-    } else {
-      if(count($this->attachment) > 0) {
-        $this->message_type = 'attachments';
-      }
-      if(strlen($this->AltBody) > 0 && count($this->attachment) < 1) {
-        $this->message_type = 'alt';
-      }
-      if(strlen($this->AltBody) > 0 && count($this->attachment) > 0) {
-        $this->message_type = 'alt_attachments';
-      }
-    }
-  }
-
-  /**
-   *  Returns a formatted header line.
-   * @access public
-   * @return string
-   */
-  public function HeaderLine($name, $value) {
-    return $name . ': ' . $value . $this->LE;
-  }
-
-  /**
-   * Returns a formatted mail line.
-   * @access public
-   * @return string
-   */
-  public function TextLine($value) {
-    return $value . $this->LE;
-  }
-
-  /////////////////////////////////////////////////
-  // CLASS METHODS, ATTACHMENTS
-  /////////////////////////////////////////////////
-
-  /**
-   * Adds an attachment from a path on the filesystem.
-   * Returns false if the file could not be found
-   * or accessed.
-   * @param string $path Path to the attachment.
-   * @param string $name Overrides the attachment name.
-   * @param string $encoding File encoding (see $Encoding).
-   * @param string $type File extension (MIME) type.
-   * @return bool
-   */
-  public function AddAttachment($path, $name = '', $encoding = 'base64', $type = 'application/octet-stream') {
-    try {
-      if ( !@is_file($path) ) {
-        throw new phpmailerException($this->Lang('file_access') . $path, self::STOP_CONTINUE);
-      }
-      $filename = basename($path);
-      if ( $name == '' ) {
-        $name = $filename;
-      }
-
-      $this->attachment[] = array(
-        0 => $path,
-        1 => $filename,
-        2 => $name,
-        3 => $encoding,
-        4 => $type,
-        5 => false,  // isStringAttachment
-        6 => 'attachment',
-        7 => 0
-      );
-
-    } catch (phpmailerException $e) {
-      $this->SetError($e->getMessage());
-      if ($this->exceptions) {
-        throw $e;
-      }
-      echo $e->getMessage()."\n";
-      if ( $e->getCode() == self::STOP_CRITICAL ) {
-        return false;
-      }
-    }
-    return true;
-  }
-
-  /**
-  * Return the current array of attachments
-  * @return array
-  */
-  public function GetAttachments() {
-    return $this->attachment;
-  }
-
-  /**
-   * Attaches all fs, string, and binary attachments to the message.
-   * Returns an empty string on failure.
-   * @access private
-   * @return string
-   */
-  private function AttachAll() {
-    // Return text of body
-    $mime = array();
-    $cidUniq = array();
-    $incl = array();
-
-    // Add all attachments
-    foreach ($this->attachment as $attachment) {
-      // Check for string attachment
-      $bString = $attachment[5];
-      if ($bString) {
-        $string = $attachment[0];
-      } else {
-        $path = $attachment[0];
-      }
-
-      if (in_array($attachment[0], $incl)) { continue; }
-      $filename    = $attachment[1];
-      $name        = $attachment[2];
-      $encoding    = $attachment[3];
-      $type        = $attachment[4];
-      $disposition = $attachment[6];
-      $cid         = $attachment[7];
-      $incl[]      = $attachment[0];
-      if ( $disposition == 'inline' && isset($cidUniq[$cid]) ) { continue; }
-      $cidUniq[$cid] = true;
-
-      $mime[] = sprintf("--%s%s", $this->boundary[1], $this->LE);
-      $mime[] = sprintf("Content-Type: %s; name=\"%s\"%s", $type, $this->EncodeHeader($this->SecureHeader($name)), $this->LE);
-      $mime[] = sprintf("Content-Transfer-Encoding: %s%s", $encoding, $this->LE);
-
-      if($disposition == 'inline') {
-        $mime[] = sprintf("Content-ID: <%s>%s", $cid, $this->LE);
-      }
-
-      $mime[] = sprintf("Content-Disposition: %s; filename=\"%s\"%s", $disposition, $this->EncodeHeader($this->SecureHeader($name)), $this->LE.$this->LE);
-
-      // Encode as string attachment
-      if($bString) {
-        $mime[] = $this->EncodeString($string, $encoding);
-        if($this->IsError()) {
-          return '';
-        }
-        $mime[] = $this->LE.$this->LE;
-      } else {
-        $mime[] = $this->EncodeFile($path, $encoding);
-        if($this->IsError()) {
-          return '';
-        }
-        $mime[] = $this->LE.$this->LE;
-      }
-    }
-
-    $mime[] = sprintf("--%s--%s", $this->boundary[1], $this->LE);
-
-    return join('', $mime);
-  }
-
-  /**
-   * Encodes attachment in requested format.
-   * Returns an empty string on failure.
-   * @param string $path The full path to the file
-   * @param string $encoding The encoding to use; one of 'base64', '7bit', '8bit', 'binary', 'quoted-printable'
-   * @see EncodeFile()
-   * @access private
-   * @return string
-   */
-  private function EncodeFile($path, $encoding = 'base64') {
-    try {
-      if (!is_readable($path)) {
-        throw new phpmailerException($this->Lang('file_open') . $path, self::STOP_CONTINUE);
-      }
-      if (!function_exists('get_magic_quotes')) {
-        function get_magic_quotes() {
-          return false;
-        }
-      }
-      if (PHP_VERSION < 6
-			  AND $magic_quotes = get_magic_quotes_runtime()) {
-        set_magic_quotes_runtime(0);
-      }
-      $file_buffer  = file_get_contents($path);
-      $file_buffer  = $this->EncodeString($file_buffer, $encoding);
-      if (PHP_VERSION < 6 AND $magic_quotes) { set_magic_quotes_runtime($magic_quotes); }
-      return $file_buffer;
-    } catch (Exception $e) {
-      $this->SetError($e->getMessage());
-      return '';
-    }
-  }
-
-  /**
-   * Encodes string to requested format.
-   * Returns an empty string on failure.
-   * @param string $str The text to encode
-   * @param string $encoding The encoding to use; one of 'base64', '7bit', '8bit', 'binary', 'quoted-printable'
-   * @access public
-   * @return string
-   */
-  public function EncodeString ($str, $encoding = 'base64') {
-    $encoded = '';
-    switch(strtolower($encoding)) {
-      case 'base64':
-        $encoded = chunk_split(base64_encode($str), 76, $this->LE);
-        break;
-      case '7bit':
-      case '8bit':
-        $encoded = $this->FixEOL($str);
-        //Make sure it ends with a line break
-        if (substr($encoded, -(strlen($this->LE))) != $this->LE)
-          $encoded .= $this->LE;
-        break;
-      case 'binary':
-        $encoded = $str;
-        break;
-      case 'quoted-printable':
-        $encoded = $this->EncodeQP($str);
-        break;
-      default:
-        $this->SetError($this->Lang('encoding') . $encoding);
-        break;
-    }
-    return $encoded;
-  }
-
-  /**
-   * Encode a header string to best (shortest) of Q, B, quoted or none.
-   * @access public
-   * @return string
-   */
-  public function EncodeHeader($str, $position = 'text') {
-    $x = 0;
-
-    switch (strtolower($position)) {
-      case 'phrase':
-        if (!preg_match('/[\200-\377]/', $str)) {
-          // Can't use addslashes as we don't know what value has magic_quotes_sybase
-          $encoded = addcslashes($str, "\0..\37\177\\\"");
-          if (($str == $encoded) && !preg_match('/[^A-Za-z0-9!#$%&\'*+\/=?^_`{|}~ -]/', $str)) {
-            return ($encoded);
-          } else {
-            return ("\"$encoded\"");
-          }
-        }
-        $x = preg_match_all('/[^\040\041\043-\133\135-\176]/', $str, $matches);
-        break;
-      case 'comment':
-        $x = preg_match_all('/[()"]/', $str, $matches);
-        // Fall-through
-      case 'text':
-      default:
-        $x += preg_match_all('/[\000-\010\013\014\016-\037\177-\377]/', $str, $matches);
-        break;
-    }
-
-    if ($x == 0) {
-      return ($str);
-    }
-
-    $maxlen = 75 - 7 - strlen($this->CharSet);
-    // Try to select the encoding which should produce the shortest output
-    if (strlen($str)/3 < $x) {
-      $encoding = 'B';
-      if (function_exists('mb_strlen') && $this->HasMultiBytes($str)) {
-        // Use a custom function which correctly encodes and wraps long
-        // multibyte strings without breaking lines within a character
-        $encoded = $this->Base64EncodeWrapMB($str);
-      } else {
-        $encoded = base64_encode($str);
-        $maxlen -= $maxlen % 4;
-        $encoded = trim(chunk_split($encoded, $maxlen, "\n"));
-      }
-    } else {
-      $encoding = 'Q';
-      $encoded = $this->EncodeQ($str, $position);
-      $encoded = $this->WrapText($encoded, $maxlen, true);
-      $encoded = str_replace('='.$this->LE, "\n", trim($encoded));
-    }
-
-    $encoded = preg_replace('/^(.*)$/m', " =?".$this->CharSet."?$encoding?\\1?=", $encoded);
-    $encoded = trim(str_replace("\n", $this->LE, $encoded));
-
-    return $encoded;
-  }
-
-  /**
-   * Checks if a string contains multibyte characters.
-   * @access public
-   * @param string $str multi-byte text to wrap encode
-   * @return bool
-   */
-  public function HasMultiBytes($str) {
-    if (function_exists('mb_strlen')) {
-      return (strlen($str) > mb_strlen($str, $this->CharSet));
-    } else { // Assume no multibytes (we can't handle without mbstring functions anyway)
-      return false;
-    }
-  }
-
-  /**
-   * Correctly encodes and wraps long multibyte strings for mail headers
-   * without breaking lines within a character.
-   * Adapted from a function by paravoid at http://uk.php.net/manual/en/function.mb-encode-mimeheader.php
-   * @access public
-   * @param string $str multi-byte text to wrap encode
-   * @return string
-   */
-  public function Base64EncodeWrapMB($str) {
-    $start = "=?".$this->CharSet."?B?";
-    $end = "?=";
-    $encoded = "";
-
-    $mb_length = mb_strlen($str, $this->CharSet);
-    // Each line must have length <= 75, including $start and $end
-    $length = 75 - strlen($start) - strlen($end);
-    // Average multi-byte ratio
-    $ratio = $mb_length / strlen($str);
-    // Base64 has a 4:3 ratio
-    $offset = $avgLength = floor($length * $ratio * .75);
-
-    for ($i = 0; $i < $mb_length; $i += $offset) {
-      $lookBack = 0;
-
-      do {
-        $offset = $avgLength - $lookBack;
-        $chunk = mb_substr($str, $i, $offset, $this->CharSet);
-        $chunk = base64_encode($chunk);
-        $lookBack++;
-      }
-      while (strlen($chunk) > $length);
-
-      $encoded .= $chunk . $this->LE;
-    }
-
-    // Chomp the last linefeed
-    $encoded = substr($encoded, 0, -strlen($this->LE));
-    return $encoded;
-  }
-
-  /**
-  * Encode string to quoted-printable.
-  * Only uses standard PHP, slow, but will always work
-  * @access public
-  * @param string $string the text to encode
-  * @param integer $line_max Number of chars allowed on a line before wrapping
-  * @return string
-  */
-  public function EncodeQPphp( $input = '', $line_max = 76, $space_conv = false) {
-    $hex = array('0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F');
-    $lines = preg_split('/(?:\r\n|\r|\n)/', $input);
-    $eol = "\r\n";
-    $escape = '=';
-    $output = '';
-    while( list(, $line) = each($lines) ) {
-      $linlen = strlen($line);
-      $newline = '';
-      for($i = 0; $i < $linlen; $i++) {
-        $c = substr( $line, $i, 1 );
-        $dec = ord( $c );
-        if ( ( $i == 0 ) && ( $dec == 46 ) ) { // convert first point in the line into =2E
-          $c = '=2E';
-        }
-        if ( $dec == 32 ) {
-          if ( $i == ( $linlen - 1 ) ) { // convert space at eol only
-            $c = '=20';
-          } else if ( $space_conv ) {
-            $c = '=20';
-          }
-        } elseif ( ($dec == 61) || ($dec < 32 ) || ($dec > 126) ) { // always encode "\t", which is *not* required
-          $h2 = floor($dec/16);
-          $h1 = floor($dec%16);
-          $c = $escape.$hex[$h2].$hex[$h1];
-        }
-        if ( (strlen($newline) + strlen($c)) >= $line_max ) { // CRLF is not counted
-          $output .= $newline.$escape.$eol; //  soft line break; " =\r\n" is okay
-          $newline = '';
-          // check if newline first character will be point or not
-          if ( $dec == 46 ) {
-            $c = '=2E';
-          }
-        }
-        $newline .= $c;
-      } // end of for
-      $output .= $newline.$eol;
-    } // end of while
-    return $output;
-  }
-
-  /**
-  * Encode string to RFC2045 (6.7) quoted-printable format
-  * Uses a PHP5 stream filter to do the encoding about 64x faster than the old version
-  * Also results in same content as you started with after decoding
-  * @see EncodeQPphp()
-  * @access public
-  * @param string $string the text to encode
-  * @param integer $line_max Number of chars allowed on a line before wrapping
-  * @param boolean $space_conv Dummy param for compatibility with existing EncodeQP function
-  * @return string
-  * @author Marcus Bointon
-  */
-  public function EncodeQP($string, $line_max = 76, $space_conv = false) {
-    if (function_exists('quoted_printable_encode')) { //Use native function if it's available (>= PHP5.3)
-      return quoted_printable_encode($string);
-    }
-    $filters = stream_get_filters();
-    if (!in_array('convert.*', $filters)) { //Got convert stream filter?
-      return $this->EncodeQPphp($string, $line_max, $space_conv); //Fall back to old implementation
-    }
-    $fp = fopen('php://temp/', 'r+');
-    $string = preg_replace('/\r\n?/', $this->LE, $string); //Normalise line breaks
-    $params = array('line-length' => $line_max, 'line-break-chars' => $this->LE);
-    $s = stream_filter_append($fp, 'convert.quoted-printable-encode', STREAM_FILTER_READ, $params);
-    fputs($fp, $string);
-    rewind($fp);
-    $out = stream_get_contents($fp);
-    stream_filter_remove($s);
-    $out = preg_replace('/^\./m', '=2E', $out); //Encode . if it is first char on a line, workaround for bug in Exchange
-    fclose($fp);
-    return $out;
-  }
-
-  /**
-   * Encode string to q encoding.
-   * @link http://tools.ietf.org/html/rfc2047
-   * @param string $str the text to encode
-   * @param string $position Where the text is going to be used, see the RFC for what that means
-   * @access public
-   * @return string
-   */
-  public function EncodeQ ($str, $position = 'text') {
-    // There should not be any EOL in the string
-    $encoded = preg_replace('/[\r\n]*/', '', $str);
-
-    switch (strtolower($position)) {
-      case 'phrase':
-        $encoded = preg_replace("/([^A-Za-z0-9!*+\/ -])/e", "'='.sprintf('%02X', ord('\\1'))", $encoded);
-        break;
-      case 'comment':
-        $encoded = preg_replace("/([\(\)\"])/e", "'='.sprintf('%02X', ord('\\1'))", $encoded);
-      case 'text':
-      default:
-        // Replace every high ascii, control =, ? and _ characters
-        //TODO using /e (equivalent to eval()) is probably not a good idea
-        $encoded = preg_replace('/([\000-\011\013\014\016-\037\075\077\137\177-\377])/e',
-              "'='.sprintf('%02X', ord('\\1'))", $encoded);
-        break;
-    }
-
-    // Replace every spaces to _ (more readable than =20)
-    $encoded = str_replace(' ', '_', $encoded);
-
-    return $encoded;
-  }
-
-  /**
-   * Adds a string or binary attachment (non-filesystem) to the list.
-   * This method can be used to attach ascii or binary data,
-   * such as a BLOB record from a database.
-   * @param string $string String attachment data.
-   * @param string $filename Name of the attachment.
-   * @param string $encoding File encoding (see $Encoding).
-   * @param string $type File extension (MIME) type.
-   * @return void
-   */
-  public function AddStringAttachment($string, $filename, $encoding = 'base64', $type = 'application/octet-stream') {
-    // Append to $attachment array
-    $this->attachment[] = array(
-      0 => $string,
-      1 => $filename,
-      2 => basename($filename),
-      3 => $encoding,
-      4 => $type,
-      5 => true,  // isStringAttachment
-      6 => 'attachment',
-      7 => 0
-    );
-  }
-
-  /**
-   * Adds an embedded attachment.  This can include images, sounds, and
-   * just about any other document.  Make sure to set the $type to an
-   * image type.  For JPEG images use "image/jpeg" and for GIF images
-   * use "image/gif".
-   * @param string $path Path to the attachment.
-   * @param string $cid Content ID of the attachment.  Use this to identify
-   *        the Id for accessing the image in an HTML form.
-   * @param string $name Overrides the attachment name.
-   * @param string $encoding File encoding (see $Encoding).
-   * @param string $type File extension (MIME) type.
-   * @return bool
-   */
-  public function AddEmbeddedImage($path, $cid, $name = '', $encoding = 'base64', $type = 'application/octet-stream') {
-
-    if ( !@is_file($path) ) {
-      $this->SetError($this->Lang('file_access') . $path);
-      return false;
-    }
-
-    $filename = basename($path);
-    if ( $name == '' ) {
-      $name = $filename;
-    }
-
-    // Append to $attachment array
-    $this->attachment[] = array(
-      0 => $path,
-      1 => $filename,
-      2 => $name,
-      3 => $encoding,
-      4 => $type,
-      5 => false,  // isStringAttachment
-      6 => 'inline',
-      7 => $cid
-    );
-
-    return true;
-  }
-
-  /**
-   * Returns true if an inline attachment is present.
-   * @access public
-   * @return bool
-   */
-  public function InlineImageExists() {
-    foreach($this->attachment as $attachment) {
-      if ($attachment[6] == 'inline') {
-        return true;
-      }
-    }
-    return false;
-  }
-
-  /////////////////////////////////////////////////
-  // CLASS METHODS, MESSAGE RESET
-  /////////////////////////////////////////////////
-
-  /**
-   * Clears all recipients assigned in the TO array.  Returns void.
-   * @return void
-   */
-  public function ClearAddresses() {
-    foreach($this->to as $to) {
-      unset($this->all_recipients[strtolower($to[0])]);
-    }
-    $this->to = array();
-  }
-
-  /**
-   * Clears all recipients assigned in the CC array.  Returns void.
-   * @return void
-   */
-  public function ClearCCs() {
-    foreach($this->cc as $cc) {
-      unset($this->all_recipients[strtolower($cc[0])]);
-    }
-    $this->cc = array();
-  }
-
-  /**
-   * Clears all recipients assigned in the BCC array.  Returns void.
-   * @return void
-   */
-  public function ClearBCCs() {
-    foreach($this->bcc as $bcc) {
-      unset($this->all_recipients[strtolower($bcc[0])]);
-    }
-    $this->bcc = array();
-  }
-
-  /**
-   * Clears all recipients assigned in the ReplyTo array.  Returns void.
-   * @return void
-   */
-  public function ClearReplyTos() {
-    $this->ReplyTo = array();
-  }
-
-  /**
-   * Clears all recipients assigned in the TO, CC and BCC
-   * array.  Returns void.
-   * @return void
-   */
-  public function ClearAllRecipients() {
-    $this->to = array();
-    $this->cc = array();
-    $this->bcc = array();
-    $this->all_recipients = array();
-  }
-
-  /**
-   * Clears all previously set filesystem, string, and binary
-   * attachments.  Returns void.
-   * @return void
-   */
-  public function ClearAttachments() {
-    $this->attachment = array();
-  }
-
-  /**
-   * Clears all custom headers.  Returns void.
-   * @return void
-   */
-  public function ClearCustomHeaders() {
-    $this->CustomHeader = array();
-  }
-
-  /////////////////////////////////////////////////
-  // CLASS METHODS, MISCELLANEOUS
-  /////////////////////////////////////////////////
-
-  /**
-   * Adds the error message to the error container.
-   * @access protected
-   * @return void
-   */
-  protected function SetError($msg) {
-    $this->error_count++;
-    if ($this->Mailer == 'smtp' and !is_null($this->smtp)) {
-      $lasterror = $this->smtp->getError();
-      if (!empty($lasterror) and array_key_exists('smtp_msg', $lasterror)) {
-        $msg .= '<p>' . $this->Lang('smtp_error') . $lasterror['smtp_msg'] . "</p>\n";
-      }
-    }
-    $this->ErrorInfo = $msg;
-  }
-
-  /**
-   * Returns the proper RFC 822 formatted date.
-   * @access public
-   * @return string
-   * @static
-   */
-  public static function RFCDate() {
-    $tz = date('Z');
-    $tzs = ($tz < 0) ? '-' : '+';
-    $tz = abs($tz);
-    $tz = (int)($tz/3600)*100 + ($tz%3600)/60;
-    $result = sprintf("%s %s%04d", date('D, j M Y H:i:s'), $tzs, $tz);
-
-    return $result;
-  }
-
-  /**
-   * Returns the server hostname or 'localhost.localdomain' if unknown.
-   * @access private
-   * @return string
-   */
-  private function ServerHostname() {
-    if (!empty($this->Hostname)) {
-      $result = $this->Hostname;
-    } elseif (isset($_SERVER['SERVER_NAME'])) {
-      $result = $_SERVER['SERVER_NAME'];
-    } else {
-      $result = 'localhost.localdomain';
-    }
-
-    return $result;
-  }
-
-  /**
-   * Returns a message in the appropriate language.
-   * @access private
-   * @return string
-   */
-  private function Lang($key) {
-    if(count($this->language) < 1) {
-      $this->SetLanguage('en'); // set the default language
-    }
-
-    if(isset($this->language[$key])) {
-      return $this->language[$key];
-    } else {
-      return 'Language string failed to load: ' . $key;
-    }
-  }
-
-  /**
-   * Returns true if an error occurred.
-   * @access public
-   * @return bool
-   */
-  public function IsError() {
-    return ($this->error_count > 0);
-  }
-
-  /**
-   * Changes every end of line from CR or LF to CRLF.
-   * @access private
-   * @return string
-   */
-  private function FixEOL($str) {
-    $str = str_replace("\r\n", "\n", $str);
-    $str = str_replace("\r", "\n", $str);
-    $str = str_replace("\n", $this->LE, $str);
-    return $str;
-  }
-
-  /**
-   * Adds a custom header.
-   * @access public
-   * @return void
-   */
-  public function AddCustomHeader($custom_header) {
-    $this->CustomHeader[] = explode(':', $custom_header, 2);
-  }
-
-  /**
-   * Evaluates the message and returns modifications for inline images and backgrounds
-   * @access public
-   * @return $message
-   */
-  public function MsgHTML($message, $basedir = '') {
-    preg_match_all("/(src|background)=\"(.*)\"/Ui", $message, $images);
-    if(isset($images[2])) {
-      foreach($images[2] as $i => $url) {
-        // do not change urls for absolute images (thanks to corvuscorax)
-        if (!preg_match('#^[A-z]+://#',$url)) {
-          $filename = basename($url);
-          $directory = dirname($url);
-          ($directory == '.')?$directory='':'';
-          $cid = 'cid:' . md5($filename);
-          $ext = pathinfo($filename, PATHINFO_EXTENSION);
-          $mimeType  = self::_mime_types($ext);
-          if ( strlen($basedir) > 1 && substr($basedir,-1) != '/') { $basedir .= '/'; }
-          if ( strlen($directory) > 1 && substr($directory,-1) != '/') { $directory .= '/'; }
-          if ( $this->AddEmbeddedImage($basedir.$directory.$filename, md5($filename), $filename, 'base64',$mimeType) ) {
-            $message = preg_replace("/".$images[1][$i]."=\"".preg_quote($url, '/')."\"/Ui", $images[1][$i]."=\"".$cid."\"", $message);
-          }
-        }
-      }
-    }
-    $this->IsHTML(true);
-    $this->Body = $message;
-    $textMsg = trim(strip_tags(preg_replace('/<(head|title|style|script)[^>]*>.*?<\/\\1>/s','',$message)));
-    if (!empty($textMsg) && empty($this->AltBody)) {
-      $this->AltBody = html_entity_decode($textMsg);
-    }
-    if (empty($this->AltBody)) {
-      $this->AltBody = 'To view this email message, open it in a program that understands HTML!' . "\n\n";
-    }
-  }
-
-  /**
-   * Gets the MIME type of the embedded or inline image
-   * @param string File extension
-   * @access public
-   * @return string MIME type of ext
-   * @static
-   */
-  public static function _mime_types($ext = '') {
-    $mimes = array(
-      'hqx'   =>  'application/mac-binhex40',
-      'cpt'   =>  'application/mac-compactpro',
-      'doc'   =>  'application/msword',
-      'bin'   =>  'application/macbinary',
-      'dms'   =>  'application/octet-stream',
-      'lha'   =>  'application/octet-stream',
-      'lzh'   =>  'application/octet-stream',
-      'exe'   =>  'application/octet-stream',
-      'class' =>  'application/octet-stream',
-      'psd'   =>  'application/octet-stream',
-      'so'    =>  'application/octet-stream',
-      'sea'   =>  'application/octet-stream',
-      'dll'   =>  'application/octet-stream',
-      'oda'   =>  'application/oda',
-      'pdf'   =>  'application/pdf',
-      'ai'    =>  'application/postscript',
-      'eps'   =>  'application/postscript',
-      'ps'    =>  'application/postscript',
-      'smi'   =>  'application/smil',
-      'smil'  =>  'application/smil',
-      'mif'   =>  'application/vnd.mif',
-      'xls'   =>  'application/vnd.ms-excel',
-      'ppt'   =>  'application/vnd.ms-powerpoint',
-      'wbxml' =>  'application/vnd.wap.wbxml',
-      'wmlc'  =>  'application/vnd.wap.wmlc',
-      'dcr'   =>  'application/x-director',
-      'dir'   =>  'application/x-director',
-      'dxr'   =>  'application/x-director',
-      'dvi'   =>  'application/x-dvi',
-      'gtar'  =>  'application/x-gtar',
-      'php'   =>  'application/x-httpd-php',
-      'php4'  =>  'application/x-httpd-php',
-      'php3'  =>  'application/x-httpd-php',
-      'phtml' =>  'application/x-httpd-php',
-      'phps'  =>  'application/x-httpd-php-source',
-      'js'    =>  'application/x-javascript',
-      'swf'   =>  'application/x-shockwave-flash',
-      'sit'   =>  'application/x-stuffit',
-      'tar'   =>  'application/x-tar',
-      'tgz'   =>  'application/x-tar',
-      'xhtml' =>  'application/xhtml+xml',
-      'xht'   =>  'application/xhtml+xml',
-      'zip'   =>  'application/zip',
-      'mid'   =>  'audio/midi',
-      'midi'  =>  'audio/midi',
-      'mpga'  =>  'audio/mpeg',
-      'mp2'   =>  'audio/mpeg',
-      'mp3'   =>  'audio/mpeg',
-      'aif'   =>  'audio/x-aiff',
-      'aiff'  =>  'audio/x-aiff',
-      'aifc'  =>  'audio/x-aiff',
-      'ram'   =>  'audio/x-pn-realaudio',
-      'rm'    =>  'audio/x-pn-realaudio',
-      'rpm'   =>  'audio/x-pn-realaudio-plugin',
-      'ra'    =>  'audio/x-realaudio',
-      'rv'    =>  'video/vnd.rn-realvideo',
-      'wav'   =>  'audio/x-wav',
-      'bmp'   =>  'image/bmp',
-      'gif'   =>  'image/gif',
-      'jpeg'  =>  'image/jpeg',
-      'jpg'   =>  'image/jpeg',
-      'jpe'   =>  'image/jpeg',
-      'png'   =>  'image/png',
-      'tiff'  =>  'image/tiff',
-      'tif'   =>  'image/tiff',
-      'css'   =>  'text/css',
-      'html'  =>  'text/html',
-      'htm'   =>  'text/html',
-      'shtml' =>  'text/html',
-      'txt'   =>  'text/plain',
-      'text'  =>  'text/plain',
-      'log'   =>  'text/plain',
-      'rtx'   =>  'text/richtext',
-      'rtf'   =>  'text/rtf',
-      'xml'   =>  'text/xml',
-      'xsl'   =>  'text/xml',
-      'mpeg'  =>  'video/mpeg',
-      'mpg'   =>  'video/mpeg',
-      'mpe'   =>  'video/mpeg',
-      'qt'    =>  'video/quicktime',
-      'mov'   =>  'video/quicktime',
-      'avi'   =>  'video/x-msvideo',
-      'movie' =>  'video/x-sgi-movie',
-      'doc'   =>  'application/msword',
-      'word'  =>  'application/msword',
-      'xl'    =>  'application/excel',
-      'eml'   =>  'message/rfc822'
-    );
-    return (!isset($mimes[strtolower($ext)])) ? 'application/octet-stream' : $mimes[strtolower($ext)];
-  }
-
-  /**
-  * Set (or reset) Class Objects (variables)
-  *
-  * Usage Example:
-  * $page->set('X-Priority', '3');
-  *
-  * @access public
-  * @param string $name Parameter Name
-  * @param mixed $value Parameter Value
-  * NOTE: will not work with arrays, there are no arrays to set/reset
-  * @todo Should this not be using __set() magic function?
-  */
-  public function set($name, $value = '') {
-    try {
-      if (isset($this->$name) ) {
-        $this->$name = $value;
-      } else {
-        throw new phpmailerException($this->Lang('variable_set') . $name, self::STOP_CRITICAL);
-      }
-    } catch (Exception $e) {
-      $this->SetError($e->getMessage());
-      if ($e->getCode() == self::STOP_CRITICAL) {
-        return false;
-      }
-    }
-    return true;
-  }
-
-  /**
-   * Strips newlines to prevent header injection.
-   * @access public
-   * @param string $str String
-   * @return string
-   */
-  public function SecureHeader($str) {
-    $str = str_replace("\r", '', $str);
-    $str = str_replace("\n", '', $str);
-    return trim($str);
-  }
-
-  /**
-   * Set the private key file and password to sign the message.
-   *
-   * @access public
-   * @param string $key_filename Parameter File Name
-   * @param string $key_pass Password for private key
-   */
-  public function Sign($cert_filename, $key_filename, $key_pass) {
-    $this->sign_cert_file = $cert_filename;
-    $this->sign_key_file = $key_filename;
-    $this->sign_key_pass = $key_pass;
-  }
-
-  /**
-   * Set the private key file and password to sign the message.
-   *
-   * @access public
-   * @param string $key_filename Parameter File Name
-   * @param string $key_pass Password for private key
-   */
-  public function DKIM_QP($txt) {
-    $tmp="";
-    $line="";
-    for ($i=0;$i<strlen($txt);$i++) {
-      $ord=ord($txt[$i]);
-      if ( ((0x21 <= $ord) && ($ord <= 0x3A)) || $ord == 0x3C || ((0x3E <= $ord) && ($ord <= 0x7E)) ) {
-        $line.=$txt[$i];
-      } else {
-        $line.="=".sprintf("%02X",$ord);
-      }
-    }
-    return $line;
-  }
-
-  /**
-   * Generate DKIM signature
-   *
-   * @access public
-   * @param string $s Header
-   */
-  public function DKIM_Sign($s) {
-    $privKeyStr = file_get_contents($this->DKIM_private);
-    if ($this->DKIM_passphrase!='') {
-      $privKey = openssl_pkey_get_private($privKeyStr,$this->DKIM_passphrase);
-    } else {
-      $privKey = $privKeyStr;
-    }
-    if (openssl_sign($s, $signature, $privKey)) {
-      return base64_encode($signature);
-    }
-  }
-
-  /**
-   * Generate DKIM Canonicalization Header
-   *
-   * @access public
-   * @param string $s Header
-   */
-  public function DKIM_HeaderC($s) {
-    $s=preg_replace("/\r\n\s+/"," ",$s);
-    $lines=explode("\r\n",$s);
-    foreach ($lines as $key=>$line) {
-      list($heading,$value)=explode(":",$line,2);
-      $heading=strtolower($heading);
-      $value=preg_replace("/\s+/"," ",$value) ; // Compress useless spaces
-      $lines[$key]=$heading.":".trim($value) ; // Don't forget to remove WSP around the value
-    }
-    $s=implode("\r\n",$lines);
-    return $s;
-  }
-
-  /**
-   * Generate DKIM Canonicalization Body
-   *
-   * @access public
-   * @param string $body Message Body
-   */
-  public function DKIM_BodyC($body) {
-    if ($body == '') return "\r\n";
-    // stabilize line endings
-    $body=str_replace("\r\n","\n",$body);
-    $body=str_replace("\n","\r\n",$body);
-    // END stabilize line endings
-    while (substr($body,strlen($body)-4,4) == "\r\n\r\n") {
-      $body=substr($body,0,strlen($body)-2);
-    }
-    return $body;
-  }
-
-  /**
-   * Create the DKIM header, body, as new header
-   *
-   * @access public
-   * @param string $headers_line Header lines
-   * @param string $subject Subject
-   * @param string $body Body
-   */
-  public function DKIM_Add($headers_line,$subject,$body) {
-    $DKIMsignatureType    = 'rsa-sha1'; // Signature & hash algorithms
-    $DKIMcanonicalization = 'relaxed/simple'; // Canonicalization of header/body
-    $DKIMquery            = 'dns/txt'; // Query method
-    $DKIMtime             = time() ; // Signature Timestamp = seconds since 00:00:00 - Jan 1, 1970 (UTC time zone)
-    $subject_header       = "Subject: $subject";
-    $headers              = explode("\r\n",$headers_line);
-    foreach($headers as $header) {
-      if (strpos($header,'From:') === 0) {
-        $from_header=$header;
-      } elseif (strpos($header,'To:') === 0) {
-        $to_header=$header;
-      }
-    }
-    $from     = str_replace('|','=7C',$this->DKIM_QP($from_header));
-    $to       = str_replace('|','=7C',$this->DKIM_QP($to_header));
-    $subject  = str_replace('|','=7C',$this->DKIM_QP($subject_header)) ; // Copied header fields (dkim-quoted-printable
-    $body     = $this->DKIM_BodyC($body);
-    $DKIMlen  = strlen($body) ; // Length of body
-    $DKIMb64  = base64_encode(pack("H*", sha1($body))) ; // Base64 of packed binary SHA-1 hash of body
-    $ident    = ($this->DKIM_identity == '')? '' : " i=" . $this->DKIM_identity . ";";
-    $dkimhdrs = "DKIM-Signature: v=1; a=" . $DKIMsignatureType . "; q=" . $DKIMquery . "; l=" . $DKIMlen . "; s=" . $this->DKIM_selector . ";\r\n".
-                "\tt=" . $DKIMtime . "; c=" . $DKIMcanonicalization . ";\r\n".
-                "\th=From:To:Subject;\r\n".
-                "\td=" . $this->DKIM_domain . ";" . $ident . "\r\n".
-                "\tz=$from\r\n".
-                "\t|$to\r\n".
-                "\t|$subject;\r\n".
-                "\tbh=" . $DKIMb64 . ";\r\n".
-                "\tb=";
-    $toSign   = $this->DKIM_HeaderC($from_header . "\r\n" . $to_header . "\r\n" . $subject_header . "\r\n" . $dkimhdrs);
-    $signed   = $this->DKIM_Sign($toSign);
-    return "X-PHPMAILER-DKIM: phpmailer.worxware.com\r\n".$dkimhdrs.$signed."\r\n";
-  }
-
-  protected function doCallback($isSent,$to,$cc,$bcc,$subject,$body) {
-    if (!empty($this->action_function) && function_exists($this->action_function)) {
-      $params = array($isSent,$to,$cc,$bcc,$subject,$body);
-      call_user_func_array($this->action_function,$params);
-    }
-  }
-}
-
-class phpmailerException extends Exception {
-  public function errorMessage() {
-    $errorMsg = '<strong>' . $this->getMessage() . "</strong><br />\n";
-    return $errorMsg;
-  }
-}
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php5/class.pop3.php b/facteur/phpmailer-php5/class.pop3.php
deleted file mode 100644
index f9fd3b2..0000000
--- a/facteur/phpmailer-php5/class.pop3.php
+++ /dev/null
@@ -1,407 +0,0 @@
-<?php
-/*~ class.pop3.php
-.---------------------------------------------------------------------------.
-|  Software: PHPMailer - PHP email class                                    |
-|   Version: 5.1                                                            |
-|   Contact: via sourceforge.net support pages (also www.codeworxtech.com)  |
-|      Info: http://phpmailer.sourceforge.net                               |
-|   Support: http://sourceforge.net/projects/phpmailer/                     |
-| ------------------------------------------------------------------------- |
-|     Admin: Andy Prevost (project admininistrator)                         |
-|   Authors: Andy Prevost (codeworxtech) codeworxtech@users.sourceforge.net |
-|          : Marcus Bointon (coolbru) coolbru@users.sourceforge.net         |
-|   Founder: Brent R. Matzelle (original founder)                           |
-| Copyright (c) 2004-2009, Andy Prevost. All Rights Reserved.               |
-| Copyright (c) 2001-2003, Brent R. Matzelle                                |
-| ------------------------------------------------------------------------- |
-|   License: Distributed under the Lesser General Public License (LGPL)     |
-|            http://www.gnu.org/copyleft/lesser.html                        |
-| This program is distributed in the hope that it will be useful - WITHOUT  |
-| ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or     |
-| FITNESS FOR A PARTICULAR PURPOSE.                                         |
-| ------------------------------------------------------------------------- |
-| We offer a number of paid services (www.codeworxtech.com):                |
-| - Web Hosting on highly optimized fast and secure servers                 |
-| - Technology Consulting                                                   |
-| - Oursourcing (highly qualified programmers and graphic designers)        |
-'---------------------------------------------------------------------------'
-*/
-
-/**
- * PHPMailer - PHP POP Before SMTP Authentication Class
- * NOTE: Designed for use with PHP version 5 and up
- * @package PHPMailer
- * @author Andy Prevost
- * @author Marcus Bointon
- * @copyright 2004 - 2009 Andy Prevost
- * @license http://www.gnu.org/copyleft/lesser.html Distributed under the Lesser General Public License (LGPL)
- * @version $Id: class.pop3.php 444 2009-05-05 11:22:26Z coolbru $
- */
-
-/**
- * POP Before SMTP Authentication Class
- * Version 5.0.0
- *
- * Author: Richard Davey (rich@corephp.co.uk)
- * Modifications: Andy Prevost
- * License: LGPL, see PHPMailer License
- *
- * Specifically for PHPMailer to allow POP before SMTP authentication.
- * Does not yet work with APOP - if you have an APOP account, contact Richard Davey
- * and we can test changes to this script.
- *
- * This class is based on the structure of the SMTP class originally authored by Chris Ryan
- *
- * This class is rfc 1939 compliant and implements all the commands
- * required for POP3 connection, authentication and disconnection.
- *
- * @package PHPMailer
- * @author Richard Davey
- */
-
-class POP3 {
-  /**
-   * Default POP3 port
-   * @var int
-   */
-  public $POP3_PORT = 110;
-
-  /**
-   * Default Timeout
-   * @var int
-   */
-  public $POP3_TIMEOUT = 30;
-
-  /**
-   * POP3 Carriage Return + Line Feed
-   * @var string
-   */
-  public $CRLF = "\r\n";
-
-  /**
-   * Displaying Debug warnings? (0 = now, 1+ = yes)
-   * @var int
-   */
-  public $do_debug = 2;
-
-  /**
-   * POP3 Mail Server
-   * @var string
-   */
-  public $host;
-
-  /**
-   * POP3 Port
-   * @var int
-   */
-  public $port;
-
-  /**
-   * POP3 Timeout Value
-   * @var int
-   */
-  public $tval;
-
-  /**
-   * POP3 Username
-   * @var string
-   */
-  public $username;
-
-  /**
-   * POP3 Password
-   * @var string
-   */
-  public $password;
-
-  /////////////////////////////////////////////////
-  // PROPERTIES, PRIVATE AND PROTECTED
-  /////////////////////////////////////////////////
-
-  private $pop_conn;
-  private $connected;
-  private $error;     //  Error log array
-
-  /**
-   * Constructor, sets the initial values
-   * @access public
-   * @return POP3
-   */
-  public function __construct() {
-    $this->pop_conn  = 0;
-    $this->connected = false;
-    $this->error     = null;
-  }
-
-  /**
-   * Combination of public events - connect, login, disconnect
-   * @access public
-   * @param string $host
-   * @param integer $port
-   * @param integer $tval
-   * @param string $username
-   * @param string $password
-   */
-  public function Authorise ($host, $port = false, $tval = false, $username, $password, $debug_level = 0) {
-    $this->host = $host;
-
-    //  If no port value is passed, retrieve it
-    if ($port == false) {
-      $this->port = $this->POP3_PORT;
-    } else {
-      $this->port = $port;
-    }
-
-    //  If no port value is passed, retrieve it
-    if ($tval == false) {
-      $this->tval = $this->POP3_TIMEOUT;
-    } else {
-      $this->tval = $tval;
-    }
-
-    $this->do_debug = $debug_level;
-    $this->username = $username;
-    $this->password = $password;
-
-    //  Refresh the error log
-    $this->error = null;
-
-    //  Connect
-    $result = $this->Connect($this->host, $this->port, $this->tval);
-
-    if ($result) {
-      $login_result = $this->Login($this->username, $this->password);
-
-      if ($login_result) {
-        $this->Disconnect();
-
-        return true;
-      }
-
-    }
-
-    //  We need to disconnect regardless if the login succeeded
-    $this->Disconnect();
-
-    return false;
-  }
-
-  /**
-   * Connect to the POP3 server
-   * @access public
-   * @param string $host
-   * @param integer $port
-   * @param integer $tval
-   * @return boolean
-   */
-  public function Connect ($host, $port = false, $tval = 30) {
-    //  Are we already connected?
-    if ($this->connected) {
-      return true;
-    }
-
-    /*
-    On Windows this will raise a PHP Warning error if the hostname doesn't exist.
-    Rather than supress it with @fsockopen, let's capture it cleanly instead
-    */
-
-    set_error_handler(array(&$this, 'catchWarning'));
-
-    //  Connect to the POP3 server
-    $this->pop_conn = fsockopen($host,    //  POP3 Host
-                  $port,    //  Port #
-                  $errno,   //  Error Number
-                  $errstr,  //  Error Message
-                  $tval);   //  Timeout (seconds)
-
-    //  Restore the error handler
-    restore_error_handler();
-
-    //  Does the Error Log now contain anything?
-    if ($this->error && $this->do_debug >= 1) {
-      $this->displayErrors();
-    }
-
-    //  Did we connect?
-    if ($this->pop_conn == false) {
-      //  It would appear not...
-      $this->error = array(
-        'error' => "Failed to connect to server $host on port $port",
-        'errno' => $errno,
-        'errstr' => $errstr
-      );
-
-      if ($this->do_debug >= 1) {
-        $this->displayErrors();
-      }
-
-      return false;
-    }
-
-    //  Increase the stream time-out
-
-    //  Check for PHP 4.3.0 or later
-    if (version_compare(phpversion(), '5.0.0', 'ge')) {
-      stream_set_timeout($this->pop_conn, $tval, 0);
-    } else {
-      //  Does not work on Windows
-      if (substr(PHP_OS, 0, 3) !== 'WIN') {
-        socket_set_timeout($this->pop_conn, $tval, 0);
-      }
-    }
-
-    //  Get the POP3 server response
-    $pop3_response = $this->getResponse();
-
-    //  Check for the +OK
-    if ($this->checkResponse($pop3_response)) {
-    //  The connection is established and the POP3 server is talking
-    $this->connected = true;
-      return true;
-    }
-
-  }
-
-  /**
-   * Login to the POP3 server (does not support APOP yet)
-   * @access public
-   * @param string $username
-   * @param string $password
-   * @return boolean
-   */
-  public function Login ($username = '', $password = '') {
-    if ($this->connected == false) {
-      $this->error = 'Not connected to POP3 server';
-
-      if ($this->do_debug >= 1) {
-        $this->displayErrors();
-      }
-    }
-
-    if (empty($username)) {
-      $username = $this->username;
-    }
-
-    if (empty($password)) {
-      $password = $this->password;
-    }
-
-    $pop_username = "USER $username" . $this->CRLF;
-    $pop_password = "PASS $password" . $this->CRLF;
-
-    //  Send the Username
-    $this->sendString($pop_username);
-    $pop3_response = $this->getResponse();
-
-    if ($this->checkResponse($pop3_response)) {
-      //  Send the Password
-      $this->sendString($pop_password);
-      $pop3_response = $this->getResponse();
-
-      if ($this->checkResponse($pop3_response)) {
-        return true;
-      } else {
-        return false;
-      }
-    } else {
-      return false;
-    }
-  }
-
-  /**
-   * Disconnect from the POP3 server
-   * @access public
-   */
-  public function Disconnect () {
-    $this->sendString('QUIT');
-
-    fclose($this->pop_conn);
-  }
-
-  /////////////////////////////////////////////////
-  //  Private Methods
-  /////////////////////////////////////////////////
-
-  /**
-   * Get the socket response back.
-   * $size is the maximum number of bytes to retrieve
-   * @access private
-   * @param integer $size
-   * @return string
-   */
-  private function getResponse ($size = 128) {
-    $pop3_response = fgets($this->pop_conn, $size);
-
-    return $pop3_response;
-  }
-
-  /**
-   * Send a string down the open socket connection to the POP3 server
-   * @access private
-   * @param string $string
-   * @return integer
-   */
-  private function sendString ($string) {
-    $bytes_sent = fwrite($this->pop_conn, $string, strlen($string));
-
-    return $bytes_sent;
-  }
-
-  /**
-   * Checks the POP3 server response for +OK or -ERR
-   * @access private
-   * @param string $string
-   * @return boolean
-   */
-  private function checkResponse ($string) {
-    if (substr($string, 0, 3) !== '+OK') {
-      $this->error = array(
-        'error' => "Server reported an error: $string",
-        'errno' => 0,
-        'errstr' => ''
-      );
-
-      if ($this->do_debug >= 1) {
-        $this->displayErrors();
-      }
-
-      return false;
-    } else {
-      return true;
-    }
-
-  }
-
-  /**
-   * If debug is enabled, display the error message array
-   * @access private
-   */
-  private function displayErrors () {
-    echo '<pre>';
-
-    foreach ($this->error as $single_error) {
-      print_r($single_error);
-    }
-
-    echo '</pre>';
-  }
-
-  /**
-   * Takes over from PHP for the socket warning handler
-   * @access private
-   * @param integer $errno
-   * @param string $errstr
-   * @param string $errfile
-   * @param integer $errline
-   */
-  private function catchWarning ($errno, $errstr, $errfile, $errline) {
-    $this->error[] = array(
-      'error' => "Connecting to the POP3 server raised a PHP warning: ",
-      'errno' => $errno,
-      'errstr' => $errstr
-    );
-  }
-
-  //  End of class
-}
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php5/class.smtp.php b/facteur/phpmailer-php5/class.smtp.php
deleted file mode 100644
index c2ca1cb..0000000
--- a/facteur/phpmailer-php5/class.smtp.php
+++ /dev/null
@@ -1,814 +0,0 @@
-<?php
-/*~ class.smtp.php
-.---------------------------------------------------------------------------.
-|  Software: PHPMailer - PHP email class                                    |
-|   Version: 5.1                                                            |
-|   Contact: via sourceforge.net support pages (also www.codeworxtech.com)  |
-|      Info: http://phpmailer.sourceforge.net                               |
-|   Support: http://sourceforge.net/projects/phpmailer/                     |
-| ------------------------------------------------------------------------- |
-|     Admin: Andy Prevost (project admininistrator)                         |
-|   Authors: Andy Prevost (codeworxtech) codeworxtech@users.sourceforge.net |
-|          : Marcus Bointon (coolbru) coolbru@users.sourceforge.net         |
-|   Founder: Brent R. Matzelle (original founder)                           |
-| Copyright (c) 2004-2009, Andy Prevost. All Rights Reserved.               |
-| Copyright (c) 2001-2003, Brent R. Matzelle                                |
-| ------------------------------------------------------------------------- |
-|   License: Distributed under the Lesser General Public License (LGPL)     |
-|            http://www.gnu.org/copyleft/lesser.html                        |
-| This program is distributed in the hope that it will be useful - WITHOUT  |
-| ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or     |
-| FITNESS FOR A PARTICULAR PURPOSE.                                         |
-| ------------------------------------------------------------------------- |
-| We offer a number of paid services (www.codeworxtech.com):                |
-| - Web Hosting on highly optimized fast and secure servers                 |
-| - Technology Consulting                                                   |
-| - Oursourcing (highly qualified programmers and graphic designers)        |
-'---------------------------------------------------------------------------'
-*/
-
-/**
- * PHPMailer - PHP SMTP email transport class
- * NOTE: Designed for use with PHP version 5 and up
- * @package PHPMailer
- * @author Andy Prevost
- * @author Marcus Bointon
- * @copyright 2004 - 2008 Andy Prevost
- * @license http://www.gnu.org/copyleft/lesser.html Distributed under the Lesser General Public License (LGPL)
- * @version $Id: class.smtp.php 444 2009-05-05 11:22:26Z coolbru $
- */
-
-/**
- * SMTP is rfc 821 compliant and implements all the rfc 821 SMTP
- * commands except TURN which will always return a not implemented
- * error. SMTP also provides some utility methods for sending mail
- * to an SMTP server.
- * original author: Chris Ryan
- */
-
-class SMTP {
-  /**
-   *  SMTP server port
-   *  @var int
-   */
-  public $SMTP_PORT = 25;
-
-  /**
-   *  SMTP reply line ending
-   *  @var string
-   */
-  public $CRLF = "\r\n";
-
-  /**
-   *  Sets whether debugging is turned on
-   *  @var bool
-   */
-  public $do_debug;       // the level of debug to perform
-
-  /**
-   *  Sets VERP use on/off (default is off)
-   *  @var bool
-   */
-  public $do_verp = false;
-
-  /////////////////////////////////////////////////
-  // PROPERTIES, PRIVATE AND PROTECTED
-  /////////////////////////////////////////////////
-
-  private $smtp_conn; // the socket to the server
-  private $error;     // error if any on the last call
-  private $helo_rply; // the reply the server sent to us for HELO
-
-  /**
-   * Initialize the class so that the data is in a known state.
-   * @access public
-   * @return void
-   */
-  public function __construct() {
-    $this->smtp_conn = 0;
-    $this->error = null;
-    $this->helo_rply = null;
-
-    $this->do_debug = 0;
-  }
-
-  /////////////////////////////////////////////////
-  // CONNECTION FUNCTIONS
-  /////////////////////////////////////////////////
-
-  /**
-   * Connect to the server specified on the port specified.
-   * If the port is not specified use the default SMTP_PORT.
-   * If tval is specified then a connection will try and be
-   * established with the server for that number of seconds.
-   * If tval is not specified the default is 30 seconds to
-   * try on the connection.
-   *
-   * SMTP CODE SUCCESS: 220
-   * SMTP CODE FAILURE: 421
-   * @access public
-   * @return bool
-   */
-  public function Connect($host, $port = 0, $tval = 30) {
-    // set the error val to null so there is no confusion
-    $this->error = null;
-
-    // make sure we are __not__ connected
-    if($this->connected()) {
-      // already connected, generate error
-      $this->error = array("error" => "Already connected to a server");
-      return false;
-    }
-
-    if(empty($port)) {
-      $port = $this->SMTP_PORT;
-    }
-
-    // connect to the smtp server
-    $this->smtp_conn = @fsockopen($host,    // the host of the server
-                                 $port,    // the port to use
-                                 $errno,   // error number if any
-                                 $errstr,  // error message if any
-                                 $tval);   // give up after ? secs
-    // verify we connected properly
-    if(empty($this->smtp_conn)) {
-      $this->error = array("error" => "Failed to connect to server",
-                           "errno" => $errno,
-                           "errstr" => $errstr);
-      if($this->do_debug >= 1) {
-        echo "SMTP -> ERROR: " . $this->error["error"] . ": $errstr ($errno)" . $this->CRLF . '<br />';
-      }
-      return false;
-    }
-
-    // SMTP server can take longer to respond, give longer timeout for first read
-    // Windows does not have support for this timeout function
-    if(substr(PHP_OS, 0, 3) != "WIN")
-     socket_set_timeout($this->smtp_conn, $tval, 0);
-
-    // get any announcement
-    $announce = $this->get_lines();
-
-    if($this->do_debug >= 2) {
-      echo "SMTP -> FROM SERVER:" . $announce . $this->CRLF . '<br />';
-    }
-
-    return true;
-  }
-
-  /**
-   * Initiate a TLS communication with the server.
-   *
-   * SMTP CODE 220 Ready to start TLS
-   * SMTP CODE 501 Syntax error (no parameters allowed)
-   * SMTP CODE 454 TLS not available due to temporary reason
-   * @access public
-   * @return bool success
-   */
-  public function StartTLS() {
-    $this->error = null; # to avoid confusion
-
-    if(!$this->connected()) {
-      $this->error = array("error" => "Called StartTLS() without being connected");
-      return false;
-    }
-
-    fputs($this->smtp_conn,"STARTTLS" . $this->CRLF);
-
-    $rply = $this->get_lines();
-    $code = substr($rply,0,3);
-
-    if($this->do_debug >= 2) {
-      echo "SMTP -> FROM SERVER:" . $rply . $this->CRLF . '<br />';
-    }
-
-    if($code != 220) {
-      $this->error =
-         array("error"     => "STARTTLS not accepted from server",
-               "smtp_code" => $code,
-               "smtp_msg"  => substr($rply,4));
-      if($this->do_debug >= 1) {
-        echo "SMTP -> ERROR: " . $this->error["error"] . ": " . $rply . $this->CRLF . '<br />';
-      }
-      return false;
-    }
-
-    // Begin encrypted connection
-    if(!stream_socket_enable_crypto($this->smtp_conn, true, STREAM_CRYPTO_METHOD_TLS_CLIENT)) {
-      return false;
-    }
-
-    return true;
-  }
-
-  /**
-   * Performs SMTP authentication.  Must be run after running the
-   * Hello() method.  Returns true if successfully authenticated.
-   * @access public
-   * @return bool
-   */
-  public function Authenticate($username, $password) {
-    // Start authentication
-    fputs($this->smtp_conn,"AUTH LOGIN" . $this->CRLF);
-
-    $rply = $this->get_lines();
-    $code = substr($rply,0,3);
-
-    if($code != 334) {
-      $this->error =
-        array("error" => "AUTH not accepted from server",
-              "smtp_code" => $code,
-              "smtp_msg" => substr($rply,4));
-      if($this->do_debug >= 1) {
-        echo "SMTP -> ERROR: " . $this->error["error"] . ": " . $rply . $this->CRLF . '<br />';
-      }
-      return false;
-    }
-
-    // Send encoded username
-    fputs($this->smtp_conn, base64_encode($username) . $this->CRLF);
-
-    $rply = $this->get_lines();
-    $code = substr($rply,0,3);
-
-    if($code != 334) {
-      $this->error =
-        array("error" => "Username not accepted from server",
-              "smtp_code" => $code,
-              "smtp_msg" => substr($rply,4));
-      if($this->do_debug >= 1) {
-        echo "SMTP -> ERROR: " . $this->error["error"] . ": " . $rply . $this->CRLF . '<br />';
-      }
-      return false;
-    }
-
-    // Send encoded password
-    fputs($this->smtp_conn, base64_encode($password) . $this->CRLF);
-
-    $rply = $this->get_lines();
-    $code = substr($rply,0,3);
-
-    if($code != 235) {
-      $this->error =
-        array("error" => "Password not accepted from server",
-              "smtp_code" => $code,
-              "smtp_msg" => substr($rply,4));
-      if($this->do_debug >= 1) {
-        echo "SMTP -> ERROR: " . $this->error["error"] . ": " . $rply . $this->CRLF . '<br />';
-      }
-      return false;
-    }
-
-    return true;
-  }
-
-  /**
-   * Returns true if connected to a server otherwise false
-   * @access public
-   * @return bool
-   */
-  public function Connected() {
-    if(!empty($this->smtp_conn)) {
-      $sock_status = socket_get_status($this->smtp_conn);
-      if($sock_status["eof"]) {
-        // the socket is valid but we are not connected
-        if($this->do_debug >= 1) {
-            echo "SMTP -> NOTICE:" . $this->CRLF . "EOF caught while checking if connected";
-        }
-        $this->Close();
-        return false;
-      }
-      return true; // everything looks good
-    }
-    return false;
-  }
-
-  /**
-   * Closes the socket and cleans up the state of the class.
-   * It is not considered good to use this function without
-   * first trying to use QUIT.
-   * @access public
-   * @return void
-   */
-  public function Close() {
-    $this->error = null; // so there is no confusion
-    $this->helo_rply = null;
-    if(!empty($this->smtp_conn)) {
-      // close the connection and cleanup
-      fclose($this->smtp_conn);
-      $this->smtp_conn = 0;
-    }
-  }
-
-  /////////////////////////////////////////////////
-  // SMTP COMMANDS
-  /////////////////////////////////////////////////
-
-  /**
-   * Issues a data command and sends the msg_data to the server
-   * finializing the mail transaction. $msg_data is the message
-   * that is to be send with the headers. Each header needs to be
-   * on a single line followed by a <CRLF> with the message headers
-   * and the message body being seperated by and additional <CRLF>.
-   *
-   * Implements rfc 821: DATA <CRLF>
-   *
-   * SMTP CODE INTERMEDIATE: 354
-   *     [data]
-   *     <CRLF>.<CRLF>
-   *     SMTP CODE SUCCESS: 250
-   *     SMTP CODE FAILURE: 552,554,451,452
-   * SMTP CODE FAILURE: 451,554
-   * SMTP CODE ERROR  : 500,501,503,421
-   * @access public
-   * @return bool
-   */
-  public function Data($msg_data) {
-    $this->error = null; // so no confusion is caused
-
-    if(!$this->connected()) {
-      $this->error = array(
-              "error" => "Called Data() without being connected");
-      return false;
-    }
-
-    fputs($this->smtp_conn,"DATA" . $this->CRLF);
-
-    $rply = $this->get_lines();
-    $code = substr($rply,0,3);
-
-    if($this->do_debug >= 2) {
-      echo "SMTP -> FROM SERVER:" . $rply . $this->CRLF . '<br />';
-    }
-
-    if($code != 354) {
-      $this->error =
-        array("error" => "DATA command not accepted from server",
-              "smtp_code" => $code,
-              "smtp_msg" => substr($rply,4));
-      if($this->do_debug >= 1) {
-        echo "SMTP -> ERROR: " . $this->error["error"] . ": " . $rply . $this->CRLF . '<br />';
-      }
-      return false;
-    }
-
-    /* the server is ready to accept data!
-     * according to rfc 821 we should not send more than 1000
-     * including the CRLF
-     * characters on a single line so we will break the data up
-     * into lines by \r and/or \n then if needed we will break
-     * each of those into smaller lines to fit within the limit.
-     * in addition we will be looking for lines that start with
-     * a period '.' and append and additional period '.' to that
-     * line. NOTE: this does not count towards limit.
-     */
-
-    // normalize the line breaks so we know the explode works
-    $msg_data = str_replace("\r\n","\n",$msg_data);
-    $msg_data = str_replace("\r","\n",$msg_data);
-    $lines = explode("\n",$msg_data);
-
-    /* we need to find a good way to determine is headers are
-     * in the msg_data or if it is a straight msg body
-     * currently I am assuming rfc 822 definitions of msg headers
-     * and if the first field of the first line (':' sperated)
-     * does not contain a space then it _should_ be a header
-     * and we can process all lines before a blank "" line as
-     * headers.
-     */
-
-    $field = substr($lines[0],0,strpos($lines[0],":"));
-    $in_headers = false;
-    if(!empty($field) && !strstr($field," ")) {
-      $in_headers = true;
-    }
-
-    $max_line_length = 998; // used below; set here for ease in change
-
-    while(list(,$line) = @each($lines)) {
-      $lines_out = null;
-      if($line == "" && $in_headers) {
-        $in_headers = false;
-      }
-      // ok we need to break this line up into several smaller lines
-      while(strlen($line) > $max_line_length) {
-        $pos = strrpos(substr($line,0,$max_line_length)," ");
-
-        // Patch to fix DOS attack
-        if(!$pos) {
-          $pos = $max_line_length - 1;
-          $lines_out[] = substr($line,0,$pos);
-          $line = substr($line,$pos);
-        } else {
-          $lines_out[] = substr($line,0,$pos);
-          $line = substr($line,$pos + 1);
-        }
-
-        /* if processing headers add a LWSP-char to the front of new line
-         * rfc 822 on long msg headers
-         */
-        if($in_headers) {
-          $line = "\t" . $line;
-        }
-      }
-      $lines_out[] = $line;
-
-      // send the lines to the server
-      while(list(,$line_out) = @each($lines_out)) {
-        if(strlen($line_out) > 0)
-        {
-          if(substr($line_out, 0, 1) == ".") {
-            $line_out = "." . $line_out;
-          }
-        }
-        fputs($this->smtp_conn,$line_out . $this->CRLF);
-      }
-    }
-
-    // message data has been sent
-    fputs($this->smtp_conn, $this->CRLF . "." . $this->CRLF);
-
-    $rply = $this->get_lines();
-    $code = substr($rply,0,3);
-
-    if($this->do_debug >= 2) {
-      echo "SMTP -> FROM SERVER:" . $rply . $this->CRLF . '<br />';
-    }
-
-    if($code != 250) {
-      $this->error =
-        array("error" => "DATA not accepted from server",
-              "smtp_code" => $code,
-              "smtp_msg" => substr($rply,4));
-      if($this->do_debug >= 1) {
-        echo "SMTP -> ERROR: " . $this->error["error"] . ": " . $rply . $this->CRLF . '<br />';
-      }
-      return false;
-    }
-    return true;
-  }
-
-  /**
-   * Sends the HELO command to the smtp server.
-   * This makes sure that we and the server are in
-   * the same known state.
-   *
-   * Implements from rfc 821: HELO <SP> <domain> <CRLF>
-   *
-   * SMTP CODE SUCCESS: 250
-   * SMTP CODE ERROR  : 500, 501, 504, 421
-   * @access public
-   * @return bool
-   */
-  public function Hello($host = '') {
-    $this->error = null; // so no confusion is caused
-
-    if(!$this->connected()) {
-      $this->error = array(
-            "error" => "Called Hello() without being connected");
-      return false;
-    }
-
-    // if hostname for HELO was not specified send default
-    if(empty($host)) {
-      // determine appropriate default to send to server
-      $host = "localhost";
-    }
-
-    // Send extended hello first (RFC 2821)
-    if(!$this->SendHello("EHLO", $host)) {
-      if(!$this->SendHello("HELO", $host)) {
-        return false;
-      }
-    }
-
-    return true;
-  }
-
-  /**
-   * Sends a HELO/EHLO command.
-   * @access private
-   * @return bool
-   */
-  private function SendHello($hello, $host) {
-    fputs($this->smtp_conn, $hello . " " . $host . $this->CRLF);
-
-    $rply = $this->get_lines();
-    $code = substr($rply,0,3);
-
-    if($this->do_debug >= 2) {
-      echo "SMTP -> FROM SERVER: " . $rply . $this->CRLF . '<br />';
-    }
-
-    if($code != 250) {
-      $this->error =
-        array("error" => $hello . " not accepted from server",
-              "smtp_code" => $code,
-              "smtp_msg" => substr($rply,4));
-      if($this->do_debug >= 1) {
-        echo "SMTP -> ERROR: " . $this->error["error"] . ": " . $rply . $this->CRLF . '<br />';
-      }
-      return false;
-    }
-
-    $this->helo_rply = $rply;
-
-    return true;
-  }
-
-  /**
-   * Starts a mail transaction from the email address specified in
-   * $from. Returns true if successful or false otherwise. If True
-   * the mail transaction is started and then one or more Recipient
-   * commands may be called followed by a Data command.
-   *
-   * Implements rfc 821: MAIL <SP> FROM:<reverse-path> <CRLF>
-   *
-   * SMTP CODE SUCCESS: 250
-   * SMTP CODE SUCCESS: 552,451,452
-   * SMTP CODE SUCCESS: 500,501,421
-   * @access public
-   * @return bool
-   */
-  public function Mail($from) {
-    $this->error = null; // so no confusion is caused
-
-    if(!$this->connected()) {
-      $this->error = array(
-              "error" => "Called Mail() without being connected");
-      return false;
-    }
-
-    $useVerp = ($this->do_verp ? "XVERP" : "");
-    fputs($this->smtp_conn,"MAIL FROM:<" . $from . ">" . $useVerp . $this->CRLF);
-
-    $rply = $this->get_lines();
-    $code = substr($rply,0,3);
-
-    if($this->do_debug >= 2) {
-      echo "SMTP -> FROM SERVER:" . $rply . $this->CRLF . '<br />';
-    }
-
-    if($code != 250) {
-      $this->error =
-        array("error" => "MAIL not accepted from server",
-              "smtp_code" => $code,
-              "smtp_msg" => substr($rply,4));
-      if($this->do_debug >= 1) {
-        echo "SMTP -> ERROR: " . $this->error["error"] . ": " . $rply . $this->CRLF . '<br />';
-      }
-      return false;
-    }
-    return true;
-  }
-
-  /**
-   * Sends the quit command to the server and then closes the socket
-   * if there is no error or the $close_on_error argument is true.
-   *
-   * Implements from rfc 821: QUIT <CRLF>
-   *
-   * SMTP CODE SUCCESS: 221
-   * SMTP CODE ERROR  : 500
-   * @access public
-   * @return bool
-   */
-  public function Quit($close_on_error = true) {
-    $this->error = null; // so there is no confusion
-
-    if(!$this->connected()) {
-      $this->error = array(
-              "error" => "Called Quit() without being connected");
-      return false;
-    }
-
-    // send the quit command to the server
-    fputs($this->smtp_conn,"quit" . $this->CRLF);
-
-    // get any good-bye messages
-    $byemsg = $this->get_lines();
-
-    if($this->do_debug >= 2) {
-      echo "SMTP -> FROM SERVER:" . $byemsg . $this->CRLF . '<br />';
-    }
-
-    $rval = true;
-    $e = null;
-
-    $code = substr($byemsg,0,3);
-    if($code != 221) {
-      // use e as a tmp var cause Close will overwrite $this->error
-      $e = array("error" => "SMTP server rejected quit command",
-                 "smtp_code" => $code,
-                 "smtp_rply" => substr($byemsg,4));
-      $rval = false;
-      if($this->do_debug >= 1) {
-        echo "SMTP -> ERROR: " . $e["error"] . ": " . $byemsg . $this->CRLF . '<br />';
-      }
-    }
-
-    if(empty($e) || $close_on_error) {
-      $this->Close();
-    }
-
-    return $rval;
-  }
-
-  /**
-   * Sends the command RCPT to the SMTP server with the TO: argument of $to.
-   * Returns true if the recipient was accepted false if it was rejected.
-   *
-   * Implements from rfc 821: RCPT <SP> TO:<forward-path> <CRLF>
-   *
-   * SMTP CODE SUCCESS: 250,251
-   * SMTP CODE FAILURE: 550,551,552,553,450,451,452
-   * SMTP CODE ERROR  : 500,501,503,421
-   * @access public
-   * @return bool
-   */
-  public function Recipient($to) {
-    $this->error = null; // so no confusion is caused
-
-    if(!$this->connected()) {
-      $this->error = array(
-              "error" => "Called Recipient() without being connected");
-      return false;
-    }
-
-    fputs($this->smtp_conn,"RCPT TO:<" . $to . ">" . $this->CRLF);
-
-    $rply = $this->get_lines();
-    $code = substr($rply,0,3);
-
-    if($this->do_debug >= 2) {
-      echo "SMTP -> FROM SERVER:" . $rply . $this->CRLF . '<br />';
-    }
-
-    if($code != 250 && $code != 251) {
-      $this->error =
-        array("error" => "RCPT not accepted from server",
-              "smtp_code" => $code,
-              "smtp_msg" => substr($rply,4));
-      if($this->do_debug >= 1) {
-        echo "SMTP -> ERROR: " . $this->error["error"] . ": " . $rply . $this->CRLF . '<br />';
-      }
-      return false;
-    }
-    return true;
-  }
-
-  /**
-   * Sends the RSET command to abort and transaction that is
-   * currently in progress. Returns true if successful false
-   * otherwise.
-   *
-   * Implements rfc 821: RSET <CRLF>
-   *
-   * SMTP CODE SUCCESS: 250
-   * SMTP CODE ERROR  : 500,501,504,421
-   * @access public
-   * @return bool
-   */
-  public function Reset() {
-    $this->error = null; // so no confusion is caused
-
-    if(!$this->connected()) {
-      $this->error = array(
-              "error" => "Called Reset() without being connected");
-      return false;
-    }
-
-    fputs($this->smtp_conn,"RSET" . $this->CRLF);
-
-    $rply = $this->get_lines();
-    $code = substr($rply,0,3);
-
-    if($this->do_debug >= 2) {
-      echo "SMTP -> FROM SERVER:" . $rply . $this->CRLF . '<br />';
-    }
-
-    if($code != 250) {
-      $this->error =
-        array("error" => "RSET failed",
-              "smtp_code" => $code,
-              "smtp_msg" => substr($rply,4));
-      if($this->do_debug >= 1) {
-        echo "SMTP -> ERROR: " . $this->error["error"] . ": " . $rply . $this->CRLF . '<br />';
-      }
-      return false;
-    }
-
-    return true;
-  }
-
-  /**
-   * Starts a mail transaction from the email address specified in
-   * $from. Returns true if successful or false otherwise. If True
-   * the mail transaction is started and then one or more Recipient
-   * commands may be called followed by a Data command. This command
-   * will send the message to the users terminal if they are logged
-   * in and send them an email.
-   *
-   * Implements rfc 821: SAML <SP> FROM:<reverse-path> <CRLF>
-   *
-   * SMTP CODE SUCCESS: 250
-   * SMTP CODE SUCCESS: 552,451,452
-   * SMTP CODE SUCCESS: 500,501,502,421
-   * @access public
-   * @return bool
-   */
-  public function SendAndMail($from) {
-    $this->error = null; // so no confusion is caused
-
-    if(!$this->connected()) {
-      $this->error = array(
-          "error" => "Called SendAndMail() without being connected");
-      return false;
-    }
-
-    fputs($this->smtp_conn,"SAML FROM:" . $from . $this->CRLF);
-
-    $rply = $this->get_lines();
-    $code = substr($rply,0,3);
-
-    if($this->do_debug >= 2) {
-      echo "SMTP -> FROM SERVER:" . $rply . $this->CRLF . '<br />';
-    }
-
-    if($code != 250) {
-      $this->error =
-        array("error" => "SAML not accepted from server",
-              "smtp_code" => $code,
-              "smtp_msg" => substr($rply,4));
-      if($this->do_debug >= 1) {
-        echo "SMTP -> ERROR: " . $this->error["error"] . ": " . $rply . $this->CRLF . '<br />';
-      }
-      return false;
-    }
-    return true;
-  }
-
-  /**
-   * This is an optional command for SMTP that this class does not
-   * support. This method is here to make the RFC821 Definition
-   * complete for this class and __may__ be implimented in the future
-   *
-   * Implements from rfc 821: TURN <CRLF>
-   *
-   * SMTP CODE SUCCESS: 250
-   * SMTP CODE FAILURE: 502
-   * SMTP CODE ERROR  : 500, 503
-   * @access public
-   * @return bool
-   */
-  public function Turn() {
-    $this->error = array("error" => "This method, TURN, of the SMTP ".
-                                    "is not implemented");
-    if($this->do_debug >= 1) {
-      echo "SMTP -> NOTICE: " . $this->error["error"] . $this->CRLF . '<br />';
-    }
-    return false;
-  }
-
-  /**
-  * Get the current error
-  * @access public
-  * @return array
-  */
-  public function getError() {
-    return $this->error;
-  }
-
-  /////////////////////////////////////////////////
-  // INTERNAL FUNCTIONS
-  /////////////////////////////////////////////////
-
-  /**
-   * Read in as many lines as possible
-   * either before eof or socket timeout occurs on the operation.
-   * With SMTP we can tell if we have more lines to read if the
-   * 4th character is '-' symbol. If it is a space then we don't
-   * need to read anything else.
-   * @access private
-   * @return string
-   */
-  private function get_lines() {
-    $data = "";
-    while($str = @fgets($this->smtp_conn,515)) {
-      if($this->do_debug >= 4) {
-        echo "SMTP -> get_lines(): \$data was \"$data\"" . $this->CRLF . '<br />';
-        echo "SMTP -> get_lines(): \$str is \"$str\"" . $this->CRLF . '<br />';
-      }
-      $data .= $str;
-      if($this->do_debug >= 4) {
-        echo "SMTP -> get_lines(): \$data is \"$data\"" . $this->CRLF . '<br />';
-      }
-      // if 4th character is a space, we are done reading, break the loop
-      if(substr($str,3,1) == " ") { break; }
-    }
-    return $data;
-  }
-
-}
-
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php5/language/phpmailer.lang-ar.php b/facteur/phpmailer-php5/language/phpmailer.lang-ar.php
deleted file mode 100644
index b7c5057..0000000
--- a/facteur/phpmailer-php5/language/phpmailer.lang-ar.php
+++ /dev/null
@@ -1,27 +0,0 @@
-<?php
-/**
-* PHPMailer language file: refer to English translation for definitive list
-* Arabic Version, UTF-8
-* by : bahjat al mostafa <bahjat983@hotmail.com>
-*/
-
-$PHPMAILER_LANG['authenticate']         = 'SMTP Error: لم نستطع تأكيد الهوية.';
-$PHPMAILER_LANG['connect_host']         = 'SMTP Error: لم نستطع الاتصال بمخدم SMTP.';
-$PHPMAILER_LANG['data_not_accepted']    = 'SMTP Error: لم يتم قبول المعلومات .';
-//$PHPMAILER_LANG['empty_message']        = 'Message body empty';
-$PHPMAILER_LANG['encoding']             = 'ترميز غير معروف: ';
-$PHPMAILER_LANG['execute']              = 'لم أستطع تنفيذ : ';
-$PHPMAILER_LANG['file_access']          = 'لم نستطع الوصول للملف: ';
-$PHPMAILER_LANG['file_open']            = 'File Error: لم نستطع فتح الملف: ';
-$PHPMAILER_LANG['from_failed']          = 'البريد التالي لم نستطع ارسال البريد له : ';
-$PHPMAILER_LANG['instantiate']          = 'لم نستطع توفير خدمة البريد.';
-//$PHPMAILER_LANG['invalid_email']        = 'Not sending, email address is invalid: ';
-$PHPMAILER_LANG['mailer_not_supported'] = ' mailer غير مدعوم.';
-//$PHPMAILER_LANG['provide_address']      = 'You must provide at least one recipient email address.';
-$PHPMAILER_LANG['recipients_failed']    = 'SMTP Error: الأخطاء التالية ' .
-                                          'فشل في الارسال لكل من : ';
-$PHPMAILER_LANG['signing']              = 'خطأ في التوقيع: ';
-//$PHPMAILER_LANG['smtp_connect_failed']  = 'SMTP Connect() failed.';
-//$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-//$PHPMAILER_LANG['variable_set']         = 'Cannot set or reset variable: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php5/language/phpmailer.lang-br.php b/facteur/phpmailer-php5/language/phpmailer.lang-br.php
deleted file mode 100644
index 7d64ce4..0000000
--- a/facteur/phpmailer-php5/language/phpmailer.lang-br.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<?php
-/**
-* PHPMailer language file: refer to English translation for definitive list
-* Portuguese Version
-* By Paulo Henrique Garcia - paulo@controllerweb.com.br
-*/
-
-$PHPMAILER_LANG['authenticate']         = 'Erro de SMTP: Não foi possível autenticar.';
-$PHPMAILER_LANG['connect_host']         = 'Erro de SMTP: Não foi possível conectar com o servidor SMTP.';
-$PHPMAILER_LANG['data_not_accepted']    = 'Erro de SMTP: Dados não aceitos.';
-//$PHPMAILER_LANG['empty_message']        = 'Message body empty';
-$PHPMAILER_LANG['encoding']             = 'Codificação desconhecida: ';
-$PHPMAILER_LANG['execute']              = 'Não foi possível executar: ';
-$PHPMAILER_LANG['file_access']          = 'Não foi possível acessar o arquivo: ';
-$PHPMAILER_LANG['file_open']            = 'Erro de Arquivo: Não foi possível abrir o arquivo: ';
-$PHPMAILER_LANG['from_failed']          = 'Os endereços de rementente a seguir falharam: ';
-$PHPMAILER_LANG['instantiate']          = 'Não foi possível instanciar a função mail.';
-//$PHPMAILER_LANG['invalid_email']        = 'Not sending, email address is invalid: ';
-$PHPMAILER_LANG['mailer_not_supported'] = ' mailer não suportado.';
-$PHPMAILER_LANG['provide_address']      = 'Você deve fornecer pelo menos um endereço de destinatário de email.';
-$PHPMAILER_LANG['recipients_failed']    = 'Erro de SMTP: Os endereços de destinatário a seguir falharam: ';
-//$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-//$PHPMAILER_LANG['smtp_connect_failed']  = 'SMTP Connect() failed.';
-//$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-//$PHPMAILER_LANG['variable_set']         = 'Cannot set or reset variable: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php5/language/phpmailer.lang-ca.php b/facteur/phpmailer-php5/language/phpmailer.lang-ca.php
deleted file mode 100644
index 1127567..0000000
--- a/facteur/phpmailer-php5/language/phpmailer.lang-ca.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<?php
-/**
-* PHPMailer language file: refer to English translation for definitive list
-* Catalan Version
-* By Ivan: web AT microstudi DOT com
-*/
-
-$PHPMAILER_LANG['authenticate']         = 'Error SMTP: No s\'hapogut autenticar.';
-$PHPMAILER_LANG['connect_host']         = 'Error SMTP: No es pot connectar al servidor SMTP.';
-$PHPMAILER_LANG['data_not_accepted']    = 'Error SMTP: Dades no acceptades.';
-//$PHPMAILER_LANG['empty_message']        = 'Message body empty';
-$PHPMAILER_LANG['encoding']             = 'Codificació desconeguda: ';
-$PHPMAILER_LANG['execute']              = 'No es pot executar: ';
-$PHPMAILER_LANG['file_access']          = 'No es pot accedir a l\'arxiu: ';
-$PHPMAILER_LANG['file_open']            = 'Error d\'Arxiu: No es pot obrir l\'arxiu: ';
-$PHPMAILER_LANG['from_failed']          = 'La(s) següent(s) adreces de remitent han fallat: ';
-$PHPMAILER_LANG['instantiate']          = 'No s\'ha pogut crear una instància de la funció Mail.';
-//$PHPMAILER_LANG['invalid_email']        = 'Not sending, email address is invalid: ';
-$PHPMAILER_LANG['mailer_not_supported'] = ' mailer no està suportat';
-$PHPMAILER_LANG['provide_address']      = 'S\'ha de proveir almenys una adreça d\'email com a destinatari.';
-$PHPMAILER_LANG['recipients_failed']    = 'Error SMTP: Els següents destinataris han fallat: ';
-//$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-//$PHPMAILER_LANG['smtp_connect_failed']  = 'SMTP Connect() failed.';
-//$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-//$PHPMAILER_LANG['variable_set']         = 'Cannot set or reset variable: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php5/language/phpmailer.lang-ch.php b/facteur/phpmailer-php5/language/phpmailer.lang-ch.php
deleted file mode 100644
index 31ebd86..0000000
--- a/facteur/phpmailer-php5/language/phpmailer.lang-ch.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<?php
-/**
-* PHPMailer language file: refer to English translation for definitive list
-* Chinese Version
-* By LiuXin: www.80x86.cn/blog/
-*/
-
-$PHPMAILER_LANG['authenticate'] = 'SMTP 错误:身份验证失败。';
-$PHPMAILER_LANG['connect_host'] = 'SMTP 错误: 不能连接SMTP主机。';
-$PHPMAILER_LANG['data_not_accepted'] = 'SMTP 错误: 数据不可接受。';
-//$PHPMAILER_LANG['empty_message']        = 'Message body empty';
-$PHPMAILER_LANG['encoding'] = '未知编码:';
-$PHPMAILER_LANG['execute'] = '不能执行: ';
-$PHPMAILER_LANG['file_access'] = '不能访问文件:';
-$PHPMAILER_LANG['file_open'] = '文件错误:不能打开文件:';
-$PHPMAILER_LANG['from_failed'] = '下面的发送地址邮件发送失败了: ';
-$PHPMAILER_LANG['instantiate'] = '不能实现mail方法。';
-//$PHPMAILER_LANG['invalid_email']        = 'Not sending, email address is invalid: ';
-$PHPMAILER_LANG['mailer_not_supported'] = ' 您所选择的发送邮件的方法并不支持。';
-$PHPMAILER_LANG['provide_address'] = '您必须提供至少一个 收信人的email地址。';
-$PHPMAILER_LANG['recipients_failed'] = 'SMTP 错误: 下面的 收件人失败了: ';
-//$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-//$PHPMAILER_LANG['smtp_connect_failed']  = 'SMTP Connect() failed.';
-//$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-//$PHPMAILER_LANG['variable_set']         = 'Cannot set or reset variable: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php5/language/phpmailer.lang-cz.php b/facteur/phpmailer-php5/language/phpmailer.lang-cz.php
deleted file mode 100644
index f9589ca..0000000
--- a/facteur/phpmailer-php5/language/phpmailer.lang-cz.php
+++ /dev/null
@@ -1,25 +0,0 @@
-<?php
-/**
-* PHPMailer language file: refer to English translation for definitive list
-* Czech Version
-*/
-
-$PHPMAILER_LANG['authenticate']         = 'SMTP Error: Chyba autentikace.';
-$PHPMAILER_LANG['connect_host']         = 'SMTP Error: Nelze navázat spojení se SMTP serverem.';
-$PHPMAILER_LANG['data_not_accepted']    = 'SMTP Error: Data nebyla pøijata';
-//$PHPMAILER_LANG['empty_message']        = 'Message body empty';
-$PHPMAILER_LANG['encoding']             = 'Neznámé kódování: ';
-$PHPMAILER_LANG['execute']              = 'Nelze provést: ';
-$PHPMAILER_LANG['file_access']          = 'Soubor nenalezen: ';
-$PHPMAILER_LANG['file_open']            = 'File Error: Nelze otevøít soubor pro ètení: ';
-$PHPMAILER_LANG['from_failed']          = 'Následující adresa From je nesprávná: ';
-$PHPMAILER_LANG['instantiate']          = 'Nelze vytvoøit instanci emailové funkce.';
-//$PHPMAILER_LANG['invalid_email']        = 'Not sending, email address is invalid: ';
-$PHPMAILER_LANG['mailer_not_supported'] = ' mailový klient není podporován.';
-$PHPMAILER_LANG['provide_address']      = 'Musíte zadat alespoò jednu emailovou adresu pøíjemce.';
-$PHPMAILER_LANG['recipients_failed']    = 'SMTP Error: Adresy pøíjemcù nejsou správné ';
-//$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-//$PHPMAILER_LANG['smtp_connect_failed']  = 'SMTP Connect() failed.';
-//$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-//$PHPMAILER_LANG['variable_set']         = 'Cannot set or reset variable: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php5/language/phpmailer.lang-de.php b/facteur/phpmailer-php5/language/phpmailer.lang-de.php
deleted file mode 100644
index 165a86f..0000000
--- a/facteur/phpmailer-php5/language/phpmailer.lang-de.php
+++ /dev/null
@@ -1,25 +0,0 @@
-<?php
-/**
-* PHPMailer language file: refer to English translation for definitive list
-* German Version
-*/
-
-$PHPMAILER_LANG['authenticate']         = 'SMTP Fehler: Authentifizierung fehlgeschlagen.';
-$PHPMAILER_LANG['connect_host']         = 'SMTP Fehler: Konnte keine Verbindung zum SMTP-Host herstellen.';
-$PHPMAILER_LANG['data_not_accepted']    = 'SMTP Fehler: Daten werden nicht akzeptiert.';
-$PHPMAILER_LANG['empty_message']        = 'E-Mail Inhalt ist leer.';
-$PHPMAILER_LANG['encoding']             = 'Unbekanntes Encoding-Format: ';
-$PHPMAILER_LANG['execute']              = 'Konnte folgenden Befehl nicht ausführen: ';
-$PHPMAILER_LANG['file_access']          = 'Zugriff auf folgende Datei fehlgeschlagen: ';
-$PHPMAILER_LANG['file_open']            = 'Datei Fehler: konnte folgende Datei nicht öffnen: ';
-$PHPMAILER_LANG['from_failed']          = 'Die folgende Absenderadresse ist nicht korrekt: ';
-$PHPMAILER_LANG['instantiate']          = 'Mail Funktion konnte nicht initialisiert werden.';
-$PHPMAILER_LANG['invalid_email']        = 'E-Mail wird nicht gesendet, die Adresse ist ungültig.';
-$PHPMAILER_LANG['mailer_not_supported'] = ' mailer wird nicht unterstützt.';
-$PHPMAILER_LANG['provide_address']      = 'Bitte geben Sie mindestens eine Empfänger E-Mailadresse an.';
-$PHPMAILER_LANG['recipients_failed']    = 'SMTP Fehler: Die folgenden Empfänger sind nicht korrekt: ';
-$PHPMAILER_LANG['signing']              = 'Fehler beim Signieren: ';
-$PHPMAILER_LANG['smtp_connect_failed']  = 'Verbindung zu SMTP Server fehlgeschlagen.';
-$PHPMAILER_LANG['smtp_error']           = 'Fehler vom SMTP Server: ';
-$PHPMAILER_LANG['variable_set']         = 'Kann Variable nicht setzen oder zurücksetzen: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php5/language/phpmailer.lang-dk.php b/facteur/phpmailer-php5/language/phpmailer.lang-dk.php
deleted file mode 100644
index 59b58c0..0000000
--- a/facteur/phpmailer-php5/language/phpmailer.lang-dk.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<?php
-/**
-* PHPMailer language file: refer to English translation for definitive list
-* Danish Version
-* Author: Mikael Stokkebro <info@stokkebro.dk>
-*/
-
-$PHPMAILER_LANG['authenticate']         = 'SMTP fejl: Kunne ikke logge på.';
-$PHPMAILER_LANG['connect_host']         = 'SMTP fejl: Kunne ikke tilslutte SMTP serveren.';
-$PHPMAILER_LANG['data_not_accepted']    = 'SMTP fejl: Data kunne ikke accepteres.';
-//$PHPMAILER_LANG['empty_message']        = 'Message body empty';
-$PHPMAILER_LANG['encoding']             = 'Ukendt encode-format: ';
-$PHPMAILER_LANG['execute']              = 'Kunne ikke køre: ';
-$PHPMAILER_LANG['file_access']          = 'Ingen adgang til fil: ';
-$PHPMAILER_LANG['file_open']            = 'Fil fejl: Kunne ikke åbne filen: ';
-$PHPMAILER_LANG['from_failed']          = 'Følgende afsenderadresse er forkert: ';
-$PHPMAILER_LANG['instantiate']          = 'Kunne ikke initialisere email funktionen.';
-//$PHPMAILER_LANG['invalid_email']        = 'Not sending, email address is invalid: ';
-$PHPMAILER_LANG['mailer_not_supported'] = ' mailer understøttes ikke.';
-$PHPMAILER_LANG['provide_address']      = 'Du skal indtaste mindst en modtagers emailadresse.';
-$PHPMAILER_LANG['recipients_failed']    = 'SMTP fejl: Følgende modtagere er forkerte: ';
-//$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-//$PHPMAILER_LANG['smtp_connect_failed']  = 'SMTP Connect() failed.';
-//$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-//$PHPMAILER_LANG['variable_set']         = 'Cannot set or reset variable: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php5/language/phpmailer.lang-en.php b/facteur/phpmailer-php5/language/phpmailer.lang-en.php
deleted file mode 100644
index f7d4286..0000000
--- a/facteur/phpmailer-php5/language/phpmailer.lang-en.php
+++ /dev/null
@@ -1,25 +0,0 @@
-<?php
-/**
- * PHPMailer language file.
- * English Version
- */
-
-$PHPMAILER_LANG = array();
-
-$PHPMAILER_LANG["provide_address"]      = 'You must provide at least one ' .
-                                          'recipient email address.';
-$PHPMAILER_LANG["mailer_not_supported"] = ' mailer is not supported.';
-$PHPMAILER_LANG["execute"]              = 'Could not execute: ';
-$PHPMAILER_LANG["instantiate"]          = 'Could not instantiate mail function.';
-$PHPMAILER_LANG["authenticate"]         = 'SMTP Error: Could not authenticate.';
-$PHPMAILER_LANG["from_failed"]          = 'The following From address failed: ';
-$PHPMAILER_LANG["recipients_failed"]    = 'SMTP Error: The following ' .
-                                          'recipients failed: ';
-$PHPMAILER_LANG["data_not_accepted"]    = 'SMTP Error: Data not accepted.';
-$PHPMAILER_LANG["connect_host"]         = 'SMTP Error: Could not connect to SMTP host.';
-$PHPMAILER_LANG["file_access"]          = 'Could not access file: ';
-$PHPMAILER_LANG["file_open"]            = 'File Error: Could not open file: ';
-$PHPMAILER_LANG["encoding"]             = 'Unknown encoding: ';
-$PHPMAILER_LANG["signing"]              = 'Signing Error: ';
-
-?>
diff --git a/facteur/phpmailer-php5/language/phpmailer.lang-es.php b/facteur/phpmailer-php5/language/phpmailer.lang-es.php
deleted file mode 100644
index 0b69825..0000000
--- a/facteur/phpmailer-php5/language/phpmailer.lang-es.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<?php
-/**
-* PHPMailer language file: refer to English translation for definitive list
-* Spanish version
-* Versión en español
-*/
-
-$PHPMAILER_LANG['authenticate']         = 'Error SMTP: No se pudo autentificar.';
-$PHPMAILER_LANG['connect_host']         = 'Error SMTP: No puedo conectar al servidor SMTP.';
-$PHPMAILER_LANG['data_not_accepted']    = 'Error SMTP: Datos no aceptados.';
-//$PHPMAILER_LANG['empty_message']        = 'Message body empty';
-$PHPMAILER_LANG['encoding']             = 'Codificación desconocida: ';
-$PHPMAILER_LANG['execute']              = 'No puedo ejecutar: ';
-$PHPMAILER_LANG['file_access']          = 'No puedo acceder al archivo: ';
-$PHPMAILER_LANG['file_open']            = 'Error de Archivo: No puede abrir el archivo: ';
-$PHPMAILER_LANG['from_failed']          = 'La(s) siguiente(s) direcciones de remitente fallaron: ';
-$PHPMAILER_LANG['instantiate']          = 'No pude crear una instancia de la función Mail.';
-//$PHPMAILER_LANG['invalid_email']        = 'Not sending, email address is invalid: ';
-$PHPMAILER_LANG['mailer_not_supported'] = ' mailer no está soportado.';
-$PHPMAILER_LANG['provide_address']      = 'Debe proveer al menos una dirección de email como destinatario.';
-$PHPMAILER_LANG['recipients_failed']    = 'Error SMTP: Los siguientes destinatarios fallaron: ';
-$PHPMAILER_LANG['signing']              = 'Error al firmar: ';
-//$PHPMAILER_LANG['smtp_connect_failed']  = 'SMTP Connect() failed.';
-//$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-//$PHPMAILER_LANG['variable_set']         = 'Cannot set or reset variable: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php5/language/phpmailer.lang-et.php b/facteur/phpmailer-php5/language/phpmailer.lang-et.php
deleted file mode 100644
index cf61779..0000000
--- a/facteur/phpmailer-php5/language/phpmailer.lang-et.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<?php
-/**
-* PHPMailer language file: refer to English translation for definitive list
-* Estonian Version
-* By Indrek Päri
-*/
-
-$PHPMAILER_LANG['authenticate']         = 'SMTP Viga: Autoriseerimise viga.';
-$PHPMAILER_LANG['connect_host']         = 'SMTP Viga: Ei õnnestunud luua ühendust SMTP serveriga.';
-$PHPMAILER_LANG['data_not_accepted']    = 'SMTP Viga: Vigased andmed.';
-//$PHPMAILER_LANG['empty_message']        = 'Message body empty';
-$PHPMAILER_LANG['encoding']             = 'Tundmatu Unknown kodeering: ';
-$PHPMAILER_LANG['execute']              = 'Tegevus ebaõnnestus: ';
-$PHPMAILER_LANG['file_access']          = 'Pole piisavalt õiguseid järgneva faili avamiseks: ';
-$PHPMAILER_LANG['file_open']            = 'Faili Viga: Faili avamine ebaõnnestus: ';
-$PHPMAILER_LANG['from_failed']          = 'Järgnev saatja e-posti aadress on vigane: ';
-$PHPMAILER_LANG['instantiate']          = 'mail funktiooni käivitamine ebaõnnestus.';
-//$PHPMAILER_LANG['invalid_email']        = 'Not sending, email address is invalid: ';
-$PHPMAILER_LANG['provide_address']      = 'Te peate määrama vähemalt ühe saaja e-posti aadressi.';
-$PHPMAILER_LANG['mailer_not_supported'] = ' maileri tugi puudub.';
-$PHPMAILER_LANG['recipients_failed']    = 'SMTP Viga: Järgnevate saajate e-posti aadressid on vigased: ';
-//$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-//$PHPMAILER_LANG['smtp_connect_failed']  = 'SMTP Connect() failed.';
-//$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-//$PHPMAILER_LANG['variable_set']         = 'Cannot set or reset variable: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php5/language/phpmailer.lang-fi.php b/facteur/phpmailer-php5/language/phpmailer.lang-fi.php
deleted file mode 100644
index 6d7dcce..0000000
--- a/facteur/phpmailer-php5/language/phpmailer.lang-fi.php
+++ /dev/null
@@ -1,27 +0,0 @@
-<?php
-/**
-* PHPMailer language file: refer to English translation for definitive list
-* Finnish Version
-* By Jyry Kuukanen
-*/
-
-$PHPMAILER_LANG['authenticate']         = 'SMTP-virhe: käyttäjätunnistus epäonnistui.';
-$PHPMAILER_LANG['connect_host']         = 'SMTP-virhe: yhteys palvelimeen ei onnistu.';
-$PHPMAILER_LANG['data_not_accepted']    = 'SMTP-virhe: data on virheellinen.';
-//$PHPMAILER_LANG['empty_message']        = 'Message body empty';
-$PHPMAILER_LANG['encoding']             = 'Tuntematon koodaustyyppi: ';
-$PHPMAILER_LANG['execute']              = 'Suoritus epäonnistui: ';
-$PHPMAILER_LANG['file_access']          = 'Seuraavaan tiedostoon ei ole oikeuksia: ';
-$PHPMAILER_LANG['file_open']            = 'Tiedostovirhe: Ei voida avata tiedostoa: ';
-$PHPMAILER_LANG['from_failed']          = 'Seuraava lähettäjän osoite on virheellinen: ';
-$PHPMAILER_LANG['instantiate']          = 'mail-funktion luonti epäonnistui.';
-//$PHPMAILER_LANG['invalid_email']        = 'Not sending, email address is invalid: ';
-$PHPMAILER_LANG['mailer_not_supported'] = 'postivälitintyyppiä ei tueta.';
-$PHPMAILER_LANG['provide_address']      = 'Aseta vähintään yksi vastaanottajan sähk&ouml;postiosoite.';
-$PHPMAILER_LANG['recipients_failed']    = 'SMTP-virhe: seuraava vastaanottaja osoite on virheellinen.';
-$PHPMAILER_LANG['encoding']             = 'Tuntematon koodaustyyppi: ';
-//$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-//$PHPMAILER_LANG['smtp_connect_failed']  = 'SMTP Connect() failed.';
-//$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-//$PHPMAILER_LANG['variable_set']         = 'Cannot set or reset variable: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php5/language/phpmailer.lang-fo.php b/facteur/phpmailer-php5/language/phpmailer.lang-fo.php
deleted file mode 100644
index 704c477..0000000
--- a/facteur/phpmailer-php5/language/phpmailer.lang-fo.php
+++ /dev/null
@@ -1,27 +0,0 @@
-<?php
-/**
-* PHPMailer language file: refer to English translation for definitive list
-* Faroese Version [language of the Faroe Islands, a Danish dominion]
-* This file created: 11-06-2004
-* Supplied by Dávur Sørensen [www.profo-webdesign.dk]
-*/
-
-$PHPMAILER_LANG['authenticate']         = 'SMTP feilur: Kundi ikki góðkenna.';
-$PHPMAILER_LANG['connect_host']         = 'SMTP feilur: Kundi ikki knýta samband við SMTP vert.';
-$PHPMAILER_LANG['data_not_accepted']    = 'SMTP feilur: Data ikki góðkent.';
-//$PHPMAILER_LANG['empty_message']        = 'Message body empty';
-$PHPMAILER_LANG['encoding']             = 'Ókend encoding: ';
-$PHPMAILER_LANG['execute']              = 'Kundi ikki útføra: ';
-$PHPMAILER_LANG['file_access']          = 'Kundi ikki tilganga fílu: ';
-$PHPMAILER_LANG['file_open']            = 'Fílu feilur: Kundi ikki opna fílu: ';
-$PHPMAILER_LANG['from_failed']          = 'fylgjandi Frá/From adressa miseydnaðist: ';
-$PHPMAILER_LANG['instantiate']          = 'Kuni ikki instantiera mail funktión.';
-//$PHPMAILER_LANG['invalid_email']        = 'Not sending, email address is invalid: ';
-$PHPMAILER_LANG['mailer_not_supported'] = ' er ikki supporterað.';
-$PHPMAILER_LANG['provide_address']      = 'Tú skal uppgeva minst móttakara-emailadressu(r).';
-$PHPMAILER_LANG['recipients_failed']    = 'SMTP Feilur: Fylgjandi móttakarar miseydnaðust: ';
-//$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-//$PHPMAILER_LANG['smtp_connect_failed']  = 'SMTP Connect() failed.';
-//$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-//$PHPMAILER_LANG['variable_set']         = 'Cannot set or reset variable: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php5/language/phpmailer.lang-fr.php b/facteur/phpmailer-php5/language/phpmailer.lang-fr.php
deleted file mode 100644
index 52e9ae2..0000000
--- a/facteur/phpmailer-php5/language/phpmailer.lang-fr.php
+++ /dev/null
@@ -1,25 +0,0 @@
-<?php
-/**
-* PHPMailer language file: refer to English translation for definitive list
-* French Version
-*/
-
-$PHPMAILER_LANG['authenticate']         = 'Erreur SMTP : Echec de l\'authentification.';
-$PHPMAILER_LANG['connect_host']         = 'Erreur SMTP : Impossible de se connecter au serveur SMTP.';
-$PHPMAILER_LANG['data_not_accepted']    = 'Erreur SMTP : Données incorrects.';
-$PHPMAILER_LANG['empty_message']        = 'Corps de message vide';
-$PHPMAILER_LANG['encoding']             = 'Encodage inconnu : ';
-$PHPMAILER_LANG['execute']              = 'Impossible de lancer l\'exécution : ';
-$PHPMAILER_LANG['file_access']          = 'Impossible d\'accéder au fichier : ';
-$PHPMAILER_LANG['file_open']            = 'Erreur Fichier : ouverture impossible : ';
-$PHPMAILER_LANG['from_failed']          = 'L\'adresse d\'expéditeur suivante a échouée : ';
-$PHPMAILER_LANG['instantiate']          = 'Impossible d\'instancier la fonction mail.';
-//$PHPMAILER_LANG['invalid_email']        = 'Not sending, email address is invalid: ';
-$PHPMAILER_LANG['mailer_not_supported'] = ' client de messagerie non supporté.';
-$PHPMAILER_LANG['provide_address']      = 'Vous devez fournir au moins une adresse de destinataire.';
-$PHPMAILER_LANG['recipients_failed']    = 'Erreur SMTP : Les destinataires suivants sont en erreur : ';
-//$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-//$PHPMAILER_LANG['smtp_connect_failed']  = 'SMTP Connect() failed.';
-//$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-//$PHPMAILER_LANG['variable_set']         = 'Cannot set or reset variable: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php5/language/phpmailer.lang-hu.php b/facteur/phpmailer-php5/language/phpmailer.lang-hu.php
deleted file mode 100644
index a266484..0000000
--- a/facteur/phpmailer-php5/language/phpmailer.lang-hu.php
+++ /dev/null
@@ -1,25 +0,0 @@
-<?php
-/**
-* PHPMailer language file: refer to English translation for definitive list
-* Hungarian Version
-*/
-
-$PHPMAILER_LANG['authenticate']         = 'SMTP Hiba: Sikertelen autentikáció.';
-$PHPMAILER_LANG['connect_host']         = 'SMTP Hiba: Nem tudtam csatlakozni az SMTP host-hoz.';
-$PHPMAILER_LANG['data_not_accepted']    = 'SMTP Hiba: Nem elfogadható adat.';
-//$PHPMAILER_LANG['empty_message']        = 'Message body empty';
-$PHPMAILER_LANG['encoding']             = 'Ismeretlen kódolás: ';
-$PHPMAILER_LANG['execute']              = 'Nem tudtam végrehajtani: ';
-$PHPMAILER_LANG['file_access']          = 'Nem sikerült elérni a következõ fájlt: ';
-$PHPMAILER_LANG['file_open']            = 'Fájl Hiba: Nem sikerült megnyitni a következõ fájlt: ';
-$PHPMAILER_LANG['from_failed']          = 'Az alábbi Feladó cím hibás: ';
-$PHPMAILER_LANG['instantiate']          = 'Nem sikerült példányosítani a mail funkciót.';
-//$PHPMAILER_LANG['invalid_email']        = 'Not sending, email address is invalid: ';
-$PHPMAILER_LANG['provide_address']      = 'Meg kell adnod legalább egy címzett email címet.';
-$PHPMAILER_LANG['mailer_not_supported'] = ' levelezõ nem támogatott.';
-$PHPMAILER_LANG['recipients_failed']    = 'SMTP Hiba: Az alábbi címzettek hibásak: ';
-//$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-//$PHPMAILER_LANG['smtp_connect_failed']  = 'SMTP Connect() failed.';
-//$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-//$PHPMAILER_LANG['variable_set']         = 'Cannot set or reset variable: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php5/language/phpmailer.lang-it.php b/facteur/phpmailer-php5/language/phpmailer.lang-it.php
deleted file mode 100644
index 59bf4fb..0000000
--- a/facteur/phpmailer-php5/language/phpmailer.lang-it.php
+++ /dev/null
@@ -1,27 +0,0 @@
-<?php
-/**
-* PHPMailer language file: refer to English translation for definitive list
-* Italian version
-* @package PHPMailer
-* @author Ilias Bartolini <brain79@inwind.it>
-*/
-
-$PHPMAILER_LANG['authenticate']         = 'SMTP Error: Impossibile autenticarsi.';
-$PHPMAILER_LANG['connect_host']         = 'SMTP Error: Impossibile connettersi all\'host SMTP.';
-$PHPMAILER_LANG['data_not_accepted']    = 'SMTP Error: Data non accettati dal server.';
-//$PHPMAILER_LANG['empty_message']        = 'Message body empty';
-$PHPMAILER_LANG['encoding']             = 'Encoding set dei caratteri sconosciuto: ';
-$PHPMAILER_LANG['execute']              = 'Impossibile eseguire l\'operazione: ';
-$PHPMAILER_LANG['file_access']          = 'Impossibile accedere al file: ';
-$PHPMAILER_LANG['file_open']            = 'File Error: Impossibile aprire il file: ';
-$PHPMAILER_LANG['from_failed']          = 'I seguenti indirizzi mittenti hanno generato errore: ';
-$PHPMAILER_LANG['instantiate']          = 'Impossibile istanziare la funzione mail';
-//$PHPMAILER_LANG['invalid_email']        = 'Not sending, email address is invalid: ';
-$PHPMAILER_LANG['provide_address']      = 'Deve essere fornito almeno un indirizzo ricevente';
-$PHPMAILER_LANG['mailer_not_supported'] = 'Mailer non supportato';
-$PHPMAILER_LANG['recipients_failed']    = 'SMTP Error: I seguenti indirizzi destinatari hanno generato errore: ';
-//$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-//$PHPMAILER_LANG['smtp_connect_failed']  = 'SMTP Connect() failed.';
-//$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-//$PHPMAILER_LANG['variable_set']         = 'Cannot set or reset variable: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php5/language/phpmailer.lang-ja.php b/facteur/phpmailer-php5/language/phpmailer.lang-ja.php
deleted file mode 100644
index 66da1b6..0000000
--- a/facteur/phpmailer-php5/language/phpmailer.lang-ja.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<?php
-/**
-* PHPMailer language file: refer to English translation for definitive list
-* Japanese Version
-* By Mitsuhiro Yoshida - http://mitstek.com/
-*/
-
-$PHPMAILER_LANG['authenticate'] = 'SMTPエラー: 認証できませんでした。';
-$PHPMAILER_LANG['connect_host'] = 'SMTPエラー: SMTPホストに接続できませんでした。';
-$PHPMAILER_LANG['data_not_accepted'] = 'SMTPエラー: データが受け付けられませんでした。';
-//$PHPMAILER_LANG['empty_message']        = 'Message body empty';
-$PHPMAILER_LANG['encoding'] = '不明なエンコーディング: ';
-$PHPMAILER_LANG['execute'] = '実行できませんでした: ';
-$PHPMAILER_LANG['file_access'] = 'ファイルにアクセスできません: ';
-$PHPMAILER_LANG['file_open'] = 'ファイルエラー: ファイルを開けません: ';
-$PHPMAILER_LANG['from_failed'] = '次のFromアドレスに間違いがあります: ';
-$PHPMAILER_LANG['instantiate'] = 'メール関数が正常に動作しませんでした。';
-//$PHPMAILER_LANG['invalid_email']        = 'Not sending, email address is invalid: ';
-$PHPMAILER_LANG['provide_address'] = '少なくとも1つメールアドレスを 指定する必要があります。';
-$PHPMAILER_LANG['mailer_not_supported'] = ' メーラーがサポートされていません。';
-$PHPMAILER_LANG['recipients_failed'] = 'SMTPエラー: 次の受信者アドレスに 間違いがあります: ';
-//$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-//$PHPMAILER_LANG['smtp_connect_failed']  = 'SMTP Connect() failed.';
-//$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-//$PHPMAILER_LANG['variable_set']         = 'Cannot set or reset variable: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php5/language/phpmailer.lang-nl.php b/facteur/phpmailer-php5/language/phpmailer.lang-nl.php
deleted file mode 100644
index 355dcdc..0000000
--- a/facteur/phpmailer-php5/language/phpmailer.lang-nl.php
+++ /dev/null
@@ -1,25 +0,0 @@
-<?php
-/**
-* PHPMailer language file: refer to English translation for definitive list
-* Dutch Version
-*/
-
-$PHPMAILER_LANG['authenticate']         = 'SMTP Fout: authenticatie mislukt.';
-$PHPMAILER_LANG['connect_host']         = 'SMTP Fout: Kon niet verbinden met SMTP host.';
-$PHPMAILER_LANG['data_not_accepted']    = 'SMTP Fout: Data niet geaccepteerd.';
-//$PHPMAILER_LANG['empty_message']        = 'Message body empty';
-$PHPMAILER_LANG['encoding']             = 'Onbekende codering: ';
-$PHPMAILER_LANG['execute']              = 'Kon niet uitvoeren: ';
-$PHPMAILER_LANG['file_access']          = 'Kreeg geen toegang tot bestand: ';
-$PHPMAILER_LANG['file_open']            = 'Bestandsfout: Kon bestand niet openen: ';
-$PHPMAILER_LANG['from_failed']          = 'De volgende afzender adressen zijn mislukt: ';
-$PHPMAILER_LANG['instantiate']          = 'Kon mail functie niet initialiseren.';
-//$PHPMAILER_LANG['invalid_email']        = 'Not sending, email address is invalid: ';
-$PHPMAILER_LANG['provide_address']      = 'Er moet tenmiste één ontvanger emailadres opgegeven worden.';
-$PHPMAILER_LANG['mailer_not_supported'] = ' mailer wordt niet ondersteund.';
-$PHPMAILER_LANG['recipients_failed']    = 'SMTP Fout: De volgende ontvangers zijn mislukt: ';
-//$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-//$PHPMAILER_LANG['smtp_connect_failed']  = 'SMTP Connect() failed.';
-//$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-//$PHPMAILER_LANG['variable_set']         = 'Cannot set or reset variable: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php5/language/phpmailer.lang-no.php b/facteur/phpmailer-php5/language/phpmailer.lang-no.php
deleted file mode 100644
index bf2f84e..0000000
--- a/facteur/phpmailer-php5/language/phpmailer.lang-no.php
+++ /dev/null
@@ -1,25 +0,0 @@
-<?php
-/**
-* PHPMailer language file: refer to English translation for definitive list
-* Norwegian Version
-*/
-
-$PHPMAILER_LANG['authenticate']         = 'SMTP Feil: Kunne ikke authentisere.';
-$PHPMAILER_LANG['connect_host']         = 'SMTP Feil: Kunne ikke koble til SMTP host.';
-$PHPMAILER_LANG['data_not_accepted']    = 'SMTP Feil: Data ble ikke akseptert.';
-//$PHPMAILER_LANG['empty_message']        = 'Message body empty';
-$PHPMAILER_LANG['encoding']             = 'Ukjent encoding: ';
-$PHPMAILER_LANG['execute']              = 'Kunne ikke utføre: ';
-$PHPMAILER_LANG['file_access']          = 'Kunne ikke få tilgang til filen: ';
-$PHPMAILER_LANG['file_open']            = 'Fil feil: Kunne ikke åpne filen: ';
-$PHPMAILER_LANG['from_failed']          = 'Følgende Fra feilet: ';
-$PHPMAILER_LANG['instantiate']          = 'Kunne ikke instantiate mail funksjonen.';
-//$PHPMAILER_LANG['invalid_email']        = 'Not sending, email address is invalid: ';
-$PHPMAILER_LANG['provide_address']      = 'Du må ha med minst en mottager adresse.';
-$PHPMAILER_LANG['mailer_not_supported'] = ' mailer er ikke supportert.';
-$PHPMAILER_LANG['recipients_failed']    = 'SMTP Feil: Følgende mottagere feilet: ';
-//$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-//$PHPMAILER_LANG['smtp_connect_failed']  = 'SMTP Connect() failed.';
-//$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-//$PHPMAILER_LANG['variable_set']         = 'Cannot set or reset variable: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php5/language/phpmailer.lang-pl.php b/facteur/phpmailer-php5/language/phpmailer.lang-pl.php
deleted file mode 100644
index e8bd512..0000000
--- a/facteur/phpmailer-php5/language/phpmailer.lang-pl.php
+++ /dev/null
@@ -1,25 +0,0 @@
-<?php
-/**
-* PHPMailer language file: refer to English translation for definitive list
-* Polish Version
-*/
-
-$PHPMAILER_LANG['authenticate'] = 'Błąd SMTP: Nie można przeprowadzić autentykacji.';
-$PHPMAILER_LANG['connect_host'] = 'Błąd SMTP: Nie można połączyć się z wybranym hostem.';
-$PHPMAILER_LANG['data_not_accepted'] = 'Błąd SMTP: Dane nie zostały przyjęte.';
-//$PHPMAILER_LANG['empty_message']        = 'Message body empty';
-$PHPMAILER_LANG['encoding'] = 'Nieznany sposób kodowania znaków: ';
-$PHPMAILER_LANG['execute'] = 'Nie można uruchomić: ';
-$PHPMAILER_LANG['file_access'] = 'Brak dostępu do pliku: ';
-$PHPMAILER_LANG['file_open'] = 'Nie można otworzyć pliku: ';
-$PHPMAILER_LANG['from_failed'] = 'Następujący adres Nadawcy jest jest nieprawidłowy: ';
-$PHPMAILER_LANG['instantiate'] = 'Nie można wywołać funkcji mail(). Sprawdź konfigurację serwera.';
-//$PHPMAILER_LANG['invalid_email']        = 'Not sending, email address is invalid: ';
-$PHPMAILER_LANG['provide_address'] = 'Należy podać prawidłowy adres email Odbiorcy.';
-$PHPMAILER_LANG['mailer_not_supported'] = 'Wybrana metoda wysyłki wiadomości nie jest obsługiwana.';
-$PHPMAILER_LANG['recipients_failed'] = 'Błąd SMTP: Następujący odbiorcy są nieprawidłowi: ';
-//$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-//$PHPMAILER_LANG['smtp_connect_failed']  = 'SMTP Connect() failed.';
-//$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-//$PHPMAILER_LANG['variable_set']         = 'Cannot set or reset variable: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php5/language/phpmailer.lang-ro.php b/facteur/phpmailer-php5/language/phpmailer.lang-ro.php
deleted file mode 100644
index 17cddb7..0000000
--- a/facteur/phpmailer-php5/language/phpmailer.lang-ro.php
+++ /dev/null
@@ -1,27 +0,0 @@
-<?php
-/**
-* PHPMailer language file: refer to English translation for definitive list
-* Romanian Version
-* @package PHPMailer
-* @author Catalin Constantin <catalin@dazoot.ro>
-*/
-
-$PHPMAILER_LANG['authenticate']         = 'Eroare SMTP: Nu a functionat autentificarea.';
-$PHPMAILER_LANG['connect_host']         = 'Eroare SMTP: Nu m-am putut conecta la adresa SMTP.';
-$PHPMAILER_LANG['data_not_accepted']    = 'Eroare SMTP: Continutul mailului nu a fost acceptat.';
-//$PHPMAILER_LANG['empty_message']        = 'Message body empty';
-$PHPMAILER_LANG['encoding']             = 'Encodare necunoscuta: ';
-$PHPMAILER_LANG['execute']              = 'Nu pot executa:  ';
-$PHPMAILER_LANG['file_access']          = 'Nu pot accesa fisierul: ';
-$PHPMAILER_LANG['file_open']            = 'Eroare de fisier: Nu pot deschide fisierul: ';
-$PHPMAILER_LANG['from_failed']          = 'Urmatoarele adrese From au dat eroare: ';
-$PHPMAILER_LANG['instantiate']          = 'Nu am putut instantia functia mail.';
-//$PHPMAILER_LANG['invalid_email']        = 'Not sending, email address is invalid: ';
-$PHPMAILER_LANG['mailer_not_supported'] = ' mailer nu este suportat.';
-$PHPMAILER_LANG['provide_address']      = 'Trebuie sa adaugati cel putin un recipient (adresa de mail).';
-$PHPMAILER_LANG['recipients_failed']    = 'Eroare SMTP: Urmatoarele adrese de mail au dat eroare: ';
-//$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-//$PHPMAILER_LANG['smtp_connect_failed']  = 'SMTP Connect() failed.';
-//$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-//$PHPMAILER_LANG['variable_set']         = 'Cannot set or reset variable: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php5/language/phpmailer.lang-ru.php b/facteur/phpmailer-php5/language/phpmailer.lang-ru.php
deleted file mode 100644
index 295a56e..0000000
--- a/facteur/phpmailer-php5/language/phpmailer.lang-ru.php
+++ /dev/null
@@ -1,25 +0,0 @@
-<?php
-/**
-* PHPMailer language file: refer to English translation for definitive list
-* Russian Version by Alexey Chumakov <alex@chumakov.ru>
-*/
-
-$PHPMAILER_LANG['authenticate']         = 'Ошибка SMTP: ошибка авторизации.';
-$PHPMAILER_LANG['connect_host']         = 'Ошибка SMTP: не удается подключиться к серверу SMTP.';
-$PHPMAILER_LANG['data_not_accepted']    = 'Ошибка SMTP: данные не приняты.';
-//$PHPMAILER_LANG['empty_message']        = 'Message body empty';
-$PHPMAILER_LANG['encoding']             = 'Неизвестный вид кодировки: ';
-$PHPMAILER_LANG['execute']              = 'Невозможно выполнить команду: ';
-$PHPMAILER_LANG['file_access']          = 'Нет доступа к файлу: ';
-$PHPMAILER_LANG['file_open']            = 'Файловая ошибка: не удается открыть файл: ';
-$PHPMAILER_LANG['from_failed']          = 'Неверный адрес отправителя: ';
-$PHPMAILER_LANG['instantiate']          = 'Невозможно запустить функцию mail.';
-//$PHPMAILER_LANG['invalid_email']        = 'Not sending, email address is invalid: ';
-$PHPMAILER_LANG['provide_address']      = 'Пожалуйста, введите хотя бы один адрес e-mail получателя.';
-$PHPMAILER_LANG['mailer_not_supported'] = ' - почтовый сервер не поддерживается.';
-$PHPMAILER_LANG['recipients_failed']    = 'Ошибка SMTP: отправка по следующим адресам получателей не удалась: ';
-//$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-//$PHPMAILER_LANG['smtp_connect_failed']  = 'SMTP Connect() failed.';
-//$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-//$PHPMAILER_LANG['variable_set']         = 'Cannot set or reset variable: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php5/language/phpmailer.lang-se.php b/facteur/phpmailer-php5/language/phpmailer.lang-se.php
deleted file mode 100644
index d459667..0000000
--- a/facteur/phpmailer-php5/language/phpmailer.lang-se.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<?php
-/**
-* PHPMailer language file: refer to English translation for definitive list
-* Swedish Version
-* Author: Johan Linnér <johan@linner.biz>
-*/
-
-$PHPMAILER_LANG['authenticate']         = 'SMTP fel: Kunde inte autentisera.';
-$PHPMAILER_LANG['connect_host']         = 'SMTP fel: Kunde inte ansluta till SMTP-server.';
-$PHPMAILER_LANG['data_not_accepted']    = 'SMTP fel: Data accepterades inte.';
-//$PHPMAILER_LANG['empty_message']        = 'Message body empty';
-$PHPMAILER_LANG['encoding']             = 'Okänt encode-format: ';
-$PHPMAILER_LANG['execute']              = 'Kunde inte köra: ';
-$PHPMAILER_LANG['file_access']          = 'Ingen åtkomst till fil: ';
-$PHPMAILER_LANG['file_open']            = 'Fil fel: Kunde inte öppna fil: ';
-$PHPMAILER_LANG['from_failed']          = 'Följande avsändaradress är felaktig: ';
-$PHPMAILER_LANG['instantiate']          = 'Kunde inte initiera e-postfunktion.';
-//$PHPMAILER_LANG['invalid_email']        = 'Not sending, email address is invalid: ';
-$PHPMAILER_LANG['provide_address']      = 'Du måste ange minst en mottagares e-postadress.';
-$PHPMAILER_LANG['mailer_not_supported'] = ' mailer stöds inte.';
-$PHPMAILER_LANG['recipients_failed']    = 'SMTP fel: Följande mottagare är felaktig: ';
-//$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-//$PHPMAILER_LANG['smtp_connect_failed']  = 'SMTP Connect() failed.';
-//$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-//$PHPMAILER_LANG['variable_set']         = 'Cannot set or reset variable: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php5/language/phpmailer.lang-tr.php b/facteur/phpmailer-php5/language/phpmailer.lang-tr.php
deleted file mode 100644
index 8a069d1..0000000
--- a/facteur/phpmailer-php5/language/phpmailer.lang-tr.php
+++ /dev/null
@@ -1,27 +0,0 @@
-<?php
-/**
-* PHPMailer language file: refer to English translation for definitive list
-* Turkish version
-* Türkçe Versiyonu
-* ÝZYAZILIM - Elçin Özel - Can Yýlmaz - Mehmet Benlioðlu
-*/
-
-$PHPMAILER_LANG['authenticate']         = 'SMTP Hatasý: Doðrulanamýyor.';
-$PHPMAILER_LANG['connect_host']         = 'SMTP Hatasý: SMTP hosta baðlanýlamýyor.';
-$PHPMAILER_LANG['data_not_accepted']    = 'SMTP Hatasý: Veri kabul edilmedi.';
-//$PHPMAILER_LANG['empty_message']        = 'Message body empty';
-$PHPMAILER_LANG['encoding']             = 'Bilinmeyen þifreleme: ';
-$PHPMAILER_LANG['execute']              = 'Çalýþtýrýlamýyor: ';
-$PHPMAILER_LANG['file_access']          = 'Dosyaya eriþilemiyor: ';
-$PHPMAILER_LANG['file_open']            = 'Dosya Hatasý: Dosya açýlamýyor: ';
-$PHPMAILER_LANG['from_failed']          = 'Baþarýsýz olan gönderici adresi: ';
-$PHPMAILER_LANG['instantiate']          = 'Örnek mail fonksiyonu yaratýlamadý.';
-//$PHPMAILER_LANG['invalid_email']        = 'Not sending, email address is invalid: ';
-$PHPMAILER_LANG['provide_address']      = 'En az bir tane mail adresi belirtmek zorundasýnýz alýcýnýn email adresi.';
-$PHPMAILER_LANG['mailer_not_supported'] = ' mailler desteklenmemektedir.';
-$PHPMAILER_LANG['recipients_failed']    = 'SMTP Hatasý: alýcýlara ulaþmadý: ';
-//$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-//$PHPMAILER_LANG['smtp_connect_failed']  = 'SMTP Connect() failed.';
-//$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-//$PHPMAILER_LANG['variable_set']         = 'Cannot set or reset variable: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php5/language/phpmailer.lang-zh.php b/facteur/phpmailer-php5/language/phpmailer.lang-zh.php
deleted file mode 100644
index fef66f8..0000000
--- a/facteur/phpmailer-php5/language/phpmailer.lang-zh.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<?php
-/**
-* PHPMailer language file: refer to English translation for definitive list
-* Traditional Chinese Version
-* @author liqwei <liqwei@liqwei.com>
-*/
-
-$PHPMAILER_LANG['authenticate'] = 'SMTP 錯誤:登錄失敗。';
-$PHPMAILER_LANG['connect_host'] = 'SMTP 錯誤:無法連接到 SMTP 主機。';
-$PHPMAILER_LANG['data_not_accepted'] = 'SMTP 錯誤:數據不被接受。';
-//$PHPMAILER_LANG['empty_message']        = 'Message body empty';
-$PHPMAILER_LANG['encoding'] = '未知編碼: ';
-$PHPMAILER_LANG['file_access'] = '無法訪問文件:';
-$PHPMAILER_LANG['file_open'] = '文件錯誤:無法打開文件:';
-$PHPMAILER_LANG['from_failed'] = '發送地址錯誤:';
-$PHPMAILER_LANG['execute'] = '無法執行:';
-$PHPMAILER_LANG['instantiate'] = '未知函數調用。';
-//$PHPMAILER_LANG['invalid_email']        = 'Not sending, email address is invalid: ';
-$PHPMAILER_LANG['provide_address'] = '必須提供至少一個收件人地址。';
-$PHPMAILER_LANG['mailer_not_supported'] = '發信客戶端不被支持。';
-$PHPMAILER_LANG['recipients_failed'] = 'SMTP 錯誤:收件人地址錯誤:';
-//$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-//$PHPMAILER_LANG['smtp_connect_failed']  = 'SMTP Connect() failed.';
-//$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-//$PHPMAILER_LANG['variable_set']         = 'Cannot set or reset variable: ';
-?>
\ No newline at end of file
diff --git a/facteur/phpmailer-php5/language/phpmailer.lang-zh_cn.php b/facteur/phpmailer-php5/language/phpmailer.lang-zh_cn.php
deleted file mode 100644
index b188404..0000000
--- a/facteur/phpmailer-php5/language/phpmailer.lang-zh_cn.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<?php
-/**
-* PHPMailer language file: refer to English translation for definitive list
-* Simplified Chinese Version
-* @author liqwei <liqwei@liqwei.com>
-*/
-
-$PHPMAILER_LANG['authenticate'] = 'SMTP 错误:登录失败。';
-$PHPMAILER_LANG['connect_host'] = 'SMTP 错误:无法连接到 SMTP 主机。';
-$PHPMAILER_LANG['data_not_accepted'] = 'SMTP 错误:数据不被接受。';
-//$P$PHPMAILER_LANG['empty_message']        = 'Message body empty';
-$PHPMAILER_LANG['encoding'] = '未知编码: ';
-$PHPMAILER_LANG['execute'] = '无法执行:';
-$PHPMAILER_LANG['file_access'] = '无法访问文件:';
-$PHPMAILER_LANG['file_open'] = '文件错误:无法打开文件:';
-$PHPMAILER_LANG['from_failed'] = '发送地址错误:';
-$PHPMAILER_LANG['instantiate'] = '未知函数调用。';
-//$PHPMAILER_LANG['invalid_email']        = 'Not sending, email address is invalid: ';
-$PHPMAILER_LANG['mailer_not_supported'] = '发信客户端不被支持。';
-$PHPMAILER_LANG['provide_address'] = '必须提供至少一个收件人地址。';
-$PHPMAILER_LANG['recipients_failed'] = 'SMTP 错误:收件人地址错误:';
-//$PHPMAILER_LANG['signing']              = 'Signing Error: ';
-//$PHPMAILER_LANG['smtp_connect_failed']  = 'SMTP Connect() failed.';
-//$PHPMAILER_LANG['smtp_error']           = 'SMTP server error: ';
-//$PHPMAILER_LANG['variable_set']         = 'Cannot set or reset variable: ';
-?>
\ No newline at end of file
diff --git a/facteur/plugin.xml b/facteur/plugin.xml
deleted file mode 100644
index eba6108..0000000
--- a/facteur/plugin.xml
+++ /dev/null
@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<plugin>
-	<nom>Facteur</nom>
-	<auteur>Collectif SPIP</auteur>
-	<version>1.5.8</version>
-	<version_base>1.1</version_base>
-	<etat>stable</etat>
-	<licence>[GPLv3->http://www.gnu.org/licenses/gpl-3.0.html]</licence>
-	<description>Facteur s'occupe de la distribution des courriels au format HTML, texte ou mixte ; via SMTP ou non</description>
-	<lien>http://www.spip-contrib.net/Facteur</lien>
- 	<necessite id="SPIP" version="[2.0.3;]" />
-	<utilise id="bando" version="[;]" />
-	<install>base/facteur.php</install>
-	<icon>prive/images/facteur-48.png</icon>
-	<prefix>facteur</prefix>
-	<pipeline>
-		<nom>autoriser</nom>
-		<inclure>inc/facteur_autorisations.php</inclure>
-	</pipeline>
-	<onglet id="facteur" parent="configuration">
-		<icone>prive/images/facteur-24.png</icone>
-		<titre>facteur:configuration_facteur</titre>
-	</onglet>
-	<bouton id='config_facteur' parent="bando_configuration">
-		<icone>images/facteur-16.png</icone>
-		<titre>facteur:configuration_facteur</titre>		
-		<url>facteur</url>
-	</bouton>
-	<categorie>communication</categorie>
-</plugin>
diff --git a/facteur/prive/configurer_facteur.html b/facteur/prive/configurer_facteur.html
deleted file mode 100644
index 85b6d1c..0000000
--- a/facteur/prive/configurer_facteur.html
+++ /dev/null
@@ -1,10 +0,0 @@
-[(#REM)
-
-  Squelette
-  (c) 2009 xxx
-  Distribue sous licence GPL
-
-]
-<div class="ajax">
-	#FORMULAIRE_CONFIGURER_FACTEUR
-</div>
\ No newline at end of file
diff --git a/facteur/prive/images/facteur-24.png b/facteur/prive/images/facteur-24.png
deleted file mode 100644
index 4f1a88fa1ef25036bae7de42c75710ef2ba43a5e..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 2445
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
LNkvXXu0mjfk8FPd

diff --git a/facteur/prive/images/facteur-48.png b/facteur/prive/images/facteur-48.png
deleted file mode 100644
index 565b1b300af5788156dedc6570778115b456ce4e..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 2328
zcmV+z3Fr2SP)<h;3K|Lk000e1NJLTq001xm001xu1^@s6R|5Hm00006VoOIv0RI60
z0RN!9r;`8x2+c`EK~#9!?V4$9T-6nTzqifeXD4>X&Vrrbg{`4N1cfA&7L-aPU4R6s
zmAa{Fp%A3f{-7Yys%rmK{6HX81*z%}+El3FS0zG2E77zHBm}4v*$|R8cAc4c8{1=#
z$Fq30ckk_w@jTDi9?y75p;C`^HKTXlJ@=e*&+aj}Ht+=C0S39opaHbDwyO0aI6FJb
zE3dr5$&)8Jdh{rMzaL%K*Nx$kkr8c40bYIbF+@JU<^vA?>^Y**C_Ozr1cN~?UA)Mj
zUi||<JamwoTDPs5Zun}Dr(Zv{NC>m|Mdb6O#zxk}{2$L<;OyD6OixeK(9nS6IDGHX
zN4fuj2l(@e6C8Qw7rgYXL$o(<S`l5{<3S{6c=q01{N$~ka@=~_<E6YoXJ;pl<FIk#
zMl?+$l}gds*~ybnJ;m|k$MN3tCGP*_?--v+tjn3^s&@+MepQ;rsmoV5cI+5J2y(d`
zb#-<4{eH&A#!yP(@p#z1dpCw*aN@dFPQU#&k39DrFMi_??afUEdsYgi6q=@?v=UR7
zAVr1SahZ^6WlPO3q~!PKFA)d?NT<^XA<#69mX;Qh$t3A?noK4`BobkCbd;Stck<nb
zAEvjrm#Ld}@xZT+G8l;#Xn{+!xRjJGuCf41p@cvQ0gh9Bl^k&DUjw}J&O2zDMmC#8
z%EIk5H#fV_9LFJ%NRY{7xNzYDAAa~Dkw}C+d-ibZ)G5MUw{h&fo-(?{r74A0K>)K<
z0IgI5D}Wc@?&jI{b|xk!$j?Qx;%7V_$F^;BT_=~zq3b$rZEe`Ljcwbm$@E{o%&=)L
zdA33!D>!VK0PbcbYi9l*S4ZeMf1Y$YO*Wf#X=JlmJRT2zzaPUe2m}K7d_FA8!f_n3
z*(}j$6e%VBeSJK7<Or`n{`IBLRthQQlKI3e@e_Bm5(SSLkIi5i#<Bvu+}qF3Z@Gn`
zp&{3Flu|g3gJoHCc6Jg9g)mK%EnBvbOeV?a^C+dTZ5t^iiP$vXzk3%`u^D`(iQUkE
za^`cAlA@wjm<xRX0H?r+Wf=VQ^asmjMWWFtGcz+dj^hddAf?1{90Gv=r%#_o(=@zZ
zFXo(?)YsRe>pDY2Lp*Ziaavnjc`Y;nz;7S>CYjKcl8C2JLV>lM07AKp7o$Ltp|-X*
z>gwti*CCpQ&*x)wbhL1e5XiZRVHgG;j|YIdx;jkLB%94*Sr(RMp=lbKOoqO`KDxTP
z*uH%`mSu72(j}Cp&1+mrl#naDfs$tcrfJgB(t>T<E^c^unCG8=o-=38kjv%B=ku<O
z`h32^MLG_#Sd45oOC%B@9*<*LmMd5+7UP8%USR+J{QyLx(RpRca$k_u5}86RVqA&B
zXJca{fk2>aqix$nqfsU&ClNxpTGup<TrP*>ILyq<AcVj$3=G4-@AqSxCWc`kgkWM~
zf_?k;;q&?McsylJTCQ<bJrhgCqA0Y%ThLT*Z!f*Qy^A(?cXwZt5?Lx)9*vYl$r?<k
zxJfvLmpvYnUw`{67?!mTOx6CblXqMm05kzo$SODB$g)iUA}0{RE6W~Mdexeyty$0|
zomJIfLS?qE)cPI14xr`|Syd-qs{q#uR4q=dn2)`31*Jq0>H^K!TdpJW&ySYiK(6@)
ziV?B008*`rae!^N?`BiijWk@>hTXE6&|4?D;lP(^zWG+1^enn*Vt9Szk_iUh{0q@g
zWxvw2C5kzz5Y?iP6bnMt3S=2Q*Ujj;Zub7*N3?%#KfVo(csFb$K0Jh{z8;mykPC-N
zj*T)M96(#%UTS-`WFnJmb4<<9$)!?s-S-8i`uj*nr-%;plN=u-K3sjmA}fYqRYNHu
z6=Ds}tE6K5;zx9S{s7rT0?V#va^T;LU-)1hqEKZ&GHc0pwL&ZuWZ>^_(st)Q^66PR
z?%j{38-#n#FBs&k+=)d^Eu|_ra@i8Kukni?Vfy@>d-*pEcfXI}@zHV5em?v3k7?br
z7o{oOzbZX<DP1L1Mf);KrwohIwO&DE%Q$!<940n+mDu1_2LAR}02;P#!`{3FB^0Z<
zWT`5bB4v4C(MzH>XKuY?H~L(?l+R{p-Fp{<@1C7Et<h0pb3MaqouH}{qvWbHuyh=x
z<KS;<A~6=mTVIccTCtXw%f!`72_aT3fNq)ShDko1#<#H%-85@6m0A;LO<}a8oUUDM
zbKTkd?=RA1aa^)4{ee(u)iN=XMdkE0DUH{eR+$N1>(Y4DJ|<;tPF%@R!l~K$!p$z9
zPQ<cV(vBdK&S2^qJ2y2gVmR$Mgj2Jm9Ea`oHjQ3y`FJLoBAU%&n<kwbH!N8S$!d8(
zilsF)l1woWPw>XoLM?N+qn*85H@o<FHqTHp#qnSWfI}Va?AtPrzY>pgE;7ma$Rzp_
z_>okKU?R?m&=8sihdZuk-`34#AsnHq4|g>RHTS|5&*pd|G)OY<kjy*0b|u8tn?Hpn
z6q-;>XEGcQhDbUNNyp)MFhon&4emg8HlL>_GRbTSzU}s1E`BPV;f>G`DW^#PD%)<m
z134EXimR##EzH)%L2qt}X4==-<P!8Om{%&m+tlRNE{-hkrxc)jy=Aq{LcHbomoZ%0
zEmpjNVj^>EqB+T%eLfy+-+^tK*rv(XK7A`QV__G6!-fVPynefjf8xM>%nT0}Lb8(F
zwyBXrbNCyt-@#K49U{_q*~ND?*e>2SO}?{dH}UYOi!ZENIx;bz2TDV3i_c5Pj_o{j
z;2>6=pPAtiBK`ekMDE_v&Q~8ijB*^Nf<dMS%m3GQXP|{I-t`&kHf<s`HOb`Qd~e{<
z4R$v-bNIkPJavAif<Y#V^yPdWsA@t&sfu|Z5gsQI9<LbYvdJXDGiR0!g^|mB%ZAgT
z?sLoc#5K)EYlzby&%|O40{pibUg|t4YY@Qnd9a(C_#}d1nbn*6m)?DkRw3!|da-r=
y6DNdOfv4h64Q>RU0UqXm02cmU;{Wh*!hZnh+1F{}?p-?o0000<MNUMnLSTX~@Nwe+

diff --git a/facteur/prive/themes/spip/images/facteur-16.png b/facteur/prive/themes/spip/images/facteur-16.png
deleted file mode 100644
index 51211f737c67ded3dcefdce01aa5d4fd78d0a942..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 848
zcmV-W1F!svP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00001b5ch_0Itp)
z=>Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iXe|
z2sto7-U<Q$00PiSL_t(I%YBhcYh7g&hM#ZmZ=Z7#Q<F3)p2T{nRt+Y^QgNz-8pJAs
z;#{!9BKQMJ|A<qa2@V7m>7<F(B3_Dwrg)=CW80H+%jG2d@?F+)kZ3ycg*99c>shaP
z^`&zkF3dJBgcwSWqA{wDJXSyP-2BLoE6Y2ljWe?|vka>W17K+UzWLzx^6H(dcHzn9
zh4)`xcsDN!Fa}i7s$}QPJkKt@#XA?@;P16x+57o>=9?`<4K}k}BfP%6dgtTBdtdJF
z4Jn61B+oT*j`dDoTdyoJYEvamIk$9CpTG1GE4xAS?LPavd(@5D1%g#o5{caJ5BO~`
zB<2S!y!{@}Jbi{iw~MNhB?(W>G`ZjH(X^h{$&4ThfR!j%=lP?v&1XA-Q)7?wMB@Zs
zeDyWnd)n<bQ&UrHY;162bBl@QIA?u8^$4J%6qRFP`XrZUMrc@z`{6pB7*SC&RSv9W
z+892VYcWlvsQfWNL?~Tg4CRGbqCqj%l8)91MNVU45})VzvLF$M7s1ss<Ua*fBnr-X
zoJkIQbb-0o-lQ=x$?m;%9^U$iqI8%v1yyQEf*t`9je_@);Drzlrx+fvwRW4d(V)G$
z%6@M^h)Qq~?;_sIBR^0jhKLUWMo<yz<C7?cTc3V{F@`9L#t6oss-z)40*FFzfe-?9
zYjIJCWkuEPG3@m)RYj6zco7<DN);n9#A5}Cf`o{x0@v3!*{?hsogSax_zs-sm;N?u
z-98e8Yj^Llo0mj?d_jUL1YxHr`EsjE-`2Q0*x}p4;Z4fT2W|eeHHKxyH{Bkctd4|u
z+ybg;@R7+h(<_TFVqIWn`V{Bubtp<M&CQY2YETqhSzIKG5iyV)?qj!|bAOcu8iFw~
zAgW-DNxUN(Oo~CP%BV3UMPWpgtY+y)-vm;VO^mlr*Xrk|Z6@-s*#E@<N?IEm&2K*J
ato#GA=gl%iniHb{0000<MNUMnLSTZ<d3)gi

diff --git a/microblog/fonds/cfg_microblog.html b/microblog/fonds/cfg_microblog.html
deleted file mode 100644
index a3ab36c..0000000
--- a/microblog/fonds/cfg_microblog.html
+++ /dev/null
@@ -1,16 +0,0 @@
-[(#REM) titre=Microblog]
-[(#REM) autoriser=configurer]
-[(#REM) presentation= ]
-[(#REM) icone=images/microblog-24.png]
-<!-- descriptif=
-<img src='#CHEMIN{images/microblog-64.png}' alt='' style="float: #LANG_RIGHT;" />
-<h3>Microblog</h3>
-<p><a href="http://www.spip-contrib.net/Microblog" class="spip_out">Cf. documentation</a></p>
--->
-#CACHE{0}
-
-<div class="ajax">
-#FORMULAIRE_CONFIGURER_MICROBLOG
-</div>
-
-
diff --git a/microblog/formulaires/configurer_microblog.html b/microblog/formulaires/configurer_microblog.html
deleted file mode 100644
index 59ff968..0000000
--- a/microblog/formulaires/configurer_microblog.html
+++ /dev/null
@@ -1,134 +0,0 @@
-<!-- nom=microblog -->
-
-<div class="formulaire_spip formulaire_editer formulaire_cfg">
-	<h2 class="titrem">Microblog</h2>
-	[<p class='reponse_formulaire reponse_formulaire_erreur'>(#ENV*{message_erreur})</p>]
-	[<p class="reponse_formulaire reponse_formulaire_ok">(#ENV*{message_ok})</p>]
-	<form method="post" action="#ENV{action}"><div>
-		#ACTION_FORMULAIRE{SELF}
-		<ul>
-			<li class="fieldset">
-				<fieldset>
-					<legend><:microblog:compte_defaut:> <code><tt>microblog()</tt></code></legend>
-					<p class="explication"><:microblog:creer_compte_services:>&nbsp;:</p>
-
-					<ul>
-						<li>
-							<label>laconi.ca</label>
-							<a href="http://spip.org/main/register">http://spip.org/main/register</a>, <:microblog:presentation_spipo:><br />
-							<a href="http://identi.ca/main/register">http://identi.ca/main/register</a>, <:microblog:presentation_laconica:>
-						</li>
-						<li>
-							<label>Twitter</label>
-							<a href="https://twitter.com/signup">https://twitter.com/signup</a>, twitter.com
-						</li>
-					</ul>
-
-					<ul>
-						<li>
-							<label for="service"><:microblog:service:></label>
-							<p class="explication"><:microblog:compte_tests:> : twitter | spipotest spipotest1</p>
-							<select name="service" id="service">
-								<option value="">(<:microblog:choisir:>)</option>
-								<option value="" disabled="disabled">- laconica -</option>
-								<option value="spipo"[
-									(#ENV{service}|=={spipo}|?{selected="selected"})]>SPIP.org (spipo)</option>
-								<option value="identica"[
-									(#ENV{service}|=={identica}|?{selected="selected"})]>Identi.ca (identica)</option>
-								<option value="" disabled="disabled"></option>
-								<option value="" disabled="disabled">- twitter -</option>
-								<option value="twitter"[
-									(#ENV{service}|=={twitter}|?{selected="selected"})]>Twitter.com</option>
-							</select>
-						</li>
-						<li>
-							<label for="user">Username</label>
-							<input type="text" name="user" value="[(#ENV{user})]" id="user" class="text" />
-						</li>
-						<li>
-							<label for="password"><:entree_mot_passe:></label>
-							<input type="password" name="pass" value="[(#ENV{pass})]" id="pass" class="text" />
-						</li>
-					</ul>
-				</fieldset>
-			</li>
-			<li class="fieldset">
-				<fieldset>
-					<legend><:microblog:invite:></legend>
-					<ul>
-						<li>
-							<label><:microblog:invite_statut:></label>
-							<p class="explication"><:microblog:invite_statut_explications:></p>
-							<div class="choix">
-								<input type="checkbox" name="invite"[
-									(#ENV{invite}|?{checked="checked"})] id="invite" />
-								<label for="invite"><:microblog:invite_afficher:></label>
-							</div>
-						</li>
-					</ul>
-				</fieldset>
-			</li>
-			<li class="fieldset">
-				<fieldset>
-					<legend><:microblog:notifications:></legend>
-					<ul>
-						<li>
-							<label><:microblog:notifications_publiques:></label>
-							<p class="explication"><:microblog:elements_signaler:> :</p>
-							<div class="choix">
-								<input type="checkbox" name="evt_forumposte"[
-									(#ENV{evt_forumposte}|?{checked="checked"})] id="evt_forumposte" />
-								<label for="evt_forumposte"><:microblog:poster_forums:></label>
-							</div>
-							<div class="choix">
-								<input type="checkbox" name="evt_proposerarticles"[
-									(#ENV{evt_proposerarticles}|?{checked="checked"})] id="evt_proposerarticles" />
-								<label for="evt_proposerarticles"><:microblog:proposer_articles:></label>
-							</div>
-							<div class="choix">
-								<input type="checkbox" name="evt_publierarticles"[
-									(#ENV{evt_publierarticles}|?{checked="checked"})] id="evt_publierarticles" />
-								<label for="evt_publierarticles"><:microblog:publier_articles:></label>
-								<div id="evt_publierarticles_options"[(#ENV{evt_publierarticles}|non)style="display:none;"]>
-								[(#CONFIG{post_dates}|=={non}|oui)
-									<div class="choix">
-										<input type="radio" name="evt_publierarticlesfutur" id="evt_publierarticlesfutur_validation" value="validation"[
-											(#ENV{evt_publierarticlesfutur}|=={publication}|?{'',checked="checked"})] />
-										<label for="evt_publierarticlesfutur_validation"><:microblog:publier_articles_futurs_immediatement:></label>
-									</div>
-									<div class="choix">
-										<input type="radio" name="evt_publierarticlesfutur" id="evt_publierarticlesfutur_publication" value="publication"[
-											(#ENV{evt_publierarticlesfutur}|=={publication}|?{checked="checked"})] />
-										<label for="evt_publierarticlesfutur_publication"><:microblog:publier_articles_futurs_visibles:></label>
-									</div>
-								]
-									<div class="choix">
-										<input type="checkbox" name="short_url" id="short_url" value="1"[
-											(#ENV{short_url,''}|oui)checked="checked"] />
-										<label for="short_url"><:microblog:publier_articles_shorturl:></label>
-									</div>
-								</div>
-								<script type="text/javascript">
-									function affiche_bloc_synchro(){
-										if (jQuery("#evt_publierarticles").attr("checked"))
-											jQuery("#evt_publierarticles_options").show('fast');
-										else
-											jQuery("#evt_publierarticles_options").hide('fast');
-									}
-									jQuery(document).ready(function(){
-										jQuery("#evt_publierarticles").click(affiche_bloc_synchro);
-									});
-								</script>
-							</div>
-						</li>
-					</ul>
-				</fieldset>
-			</li>
-		</ul>
-		<p class="boutons">
-			<input type="submit" name="_cfg_ok" value="<:ok:>" class="submit" />
-			<input type="reset" value="<:reset:>" class="submit" />
-			<input type="submit" name="_cfg_delete" value="<:supprimer:>" class="submit" />
-		</p>
-	</div></form>
-</div>
\ No newline at end of file
diff --git a/microblog/formulaires/microbloguer.html b/microblog/formulaires/microbloguer.html
deleted file mode 100644
index e5e3ad7..0000000
--- a/microblog/formulaires/microbloguer.html
+++ /dev/null
@@ -1,45 +0,0 @@
-[(#REM)
-
-  formulaire microbloguer
-  (c) 2009 Cerdic
-  Distribue sous licence GPL
-
-]
-[<div class='ajax'>
-<div class="formulaire_spip formulaire_#FORM">
-	[<p class="reponse_formulaire reponse_formulaire_erreur">(#ENV*{message_erreur})</p>]
-	(#ENV{editable})
-	<form method='post' action='#ENV{action}' enctype='multipart/form-data'><div>
-		[(#REM) declarer les hidden qui declencheront le service du formulaire
-		parametre : url d'action ]
-		#ACTION_FORMULAIRE{#ENV{action}}
-	  <ul>
-			#SET{fl,microblog}
-	  	#SET{name,status}#SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}}#SET{obli,'obligatoire'}
-	    <li class="editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]">[
-				<span class='erreur_message'>(#GET{erreurs})</span>
-				]<label for="#GET{name}"><em>[(#VAL{140}|moins{#ENV{status}|strlen})]</em>[(#GET{fl}|concat{':label_',#GET{name}}|_T)]</label>
-				<textarea name="#GET{name}" id="#GET{name}">#ENV{status}</textarea>
-	    </li>
-	  </ul>
-	  [(#REM) ajouter les saisies supplementaires : extra et autre, a cet endroit ]
-	  <!--extra-->
-	  <p class='boutons'><span class='image_loading'></span><input type='submit' class='submit' value='<:microblog:bouton_envoyer:>' /></p>
-	</div></form>
-	[<p class="reponse_formulaire reponse_formulaire_ok">(#ENV*{message_ok})</p>]
-</div></div>]
-<script type="text/javascript">
-function status_length_count(){
-	jQuery('#status').keyup(function(){
-		var maxlen = 140;
-		var l = maxlen-jQuery(this).val().length;
-		jQuery(this).parent().find('label>em').html(l).removeClass(l>=0?'nok':'ok').addClass(l>=0?'ok':'nok');
-	});
-}
-jQuery('document').ready(status_length_count);
-onAjaxLoad(status_length_count);
-</script>
-<style type="text/css">
-	.formulaire_microbloguer .editer_status label em {font-style:normal;display:block;float:right;color:#aaa;}
-	.formulaire_microbloguer .editer_status label em.nok {color:red;}
-</style>
\ No newline at end of file
diff --git a/microblog/formulaires/microbloguer.php b/microblog/formulaires/microbloguer.php
deleted file mode 100644
index 9a373dc..0000000
--- a/microblog/formulaires/microbloguer.php
+++ /dev/null
@@ -1,52 +0,0 @@
-<?php
-/*
- * Plugin spip|microblog
- * (c) Fil 2009-2010
- *
- * envoyer des micromessages depuis SPIP vers twitter ou laconica
- * distribue sous licence GNU/LGPL
- *
- */
-
-
-if (!defined("_ECRIRE_INC_VERSION")) return;
-
-// chargement des valeurs par defaut des champs du formulaire
-function formulaires_microbloguer_charger_dist(){
-	return 
-		array(
-			'status' => '',
-		);
-}
-
-// chargement des valeurs par defaut des champs du formulaire
-function formulaires_microbloguer_verifier_dist(){
-	$erreurs = array();
-	if (!$status = _request('status')){
-		$erreurs['status'] = _T('info_obligatoire');
-	}
-	elseif (strlen($status)>140){
-		$erreurs['status'] = _T('microblog:longueur_maxi_status');
-	}
-
-	return
-		$erreurs;
-}
-
-
-function formulaires_microbloguer_traiter_dist(){
-	$res = array();
-	if ($status = _request('status')){
-		include_spip('inc/microblog');
-		microblog($status);
-		set_request('status','');
-		$res = array('message_ok'=>$status,'editable'=>true);
-	}
-	else
-		$res = array('message_erreur'=>'???','editable'=>true);
-
-	return
-		$res;
-}
-
-?>
diff --git a/microblog/genie/microblog.php b/microblog/genie/microblog.php
deleted file mode 100644
index aa77bdf..0000000
--- a/microblog/genie/microblog.php
+++ /dev/null
@@ -1,59 +0,0 @@
-<?php
-/*
- * Plugin spip|microblog
- * (c) Fil 2009-2010
- *
- * envoyer des micromessages depuis SPIP vers twitter ou laconica
- * distribue sous licence GNU/LGPL
- *
- */
-
-//
-// Alerte sur les articles publies post-dates
-//
-// http://doc.spip.org/@genie_visites_dist
-function genie_microblog_dist($last) {
-	$cfg = @unserialize($GLOBALS['meta']['microblog']);
-	// si le site utilise les articles postdates
-	// et que l'on a configurer pour alerter a la publication uniquement
-	// il faut surveiller les articles publies
-	// $last est la date de la dernier occurence du cron, si vaut zero on ne fait rien
-	if ($GLOBALS['meta']["post_dates"]=='non'
-	AND $cfg['evt_publierarticlesfutur']=='publication'
-	AND $last){
-		include_spip('inc/abstract_sql');
-		$deja_annonces = explode(',',$GLOBALS['meta']['microblog_annonces']);
-		$deja_annonces = array_map('intval',$deja_annonces);
-
-		$res = sql_select("id_article,statut","spip_articles",
-			array(
-				"statut='publie'",
-				"date>".sql_quote(date("Y-m-d H:i:s",$last)),
-				"date<=".sql_quote(date("Y-m-d H:i:s")),
-				sql_in('id_article',$deja_annonces,"NOT")
-			));
-		include_spip('inc/micro_notifications');
-		include_spip('inc/microblog');
-		while($row = sql_fetch($res)){
-			$status = Microblog_annonce('instituerarticle',array('id_article'=>$row['id_article']));
-			envoyer_microblog($status,array('objet'=>'article','id_objet'=>$row['id_article']));
-		}
-		// raz des annonces deja faites
-		include_spip('inc/meta');
-		ecrire_meta('microblog_annonces','0');
-	}
-
-	return 1;
-}
-
-function microblog_taches_generales_cron($taches_generales){
-	if ($GLOBALS['meta']["post_dates"]=='non'
-		AND	$cfg = @unserialize($GLOBALS['meta']['microblog'])
-		AND $cfg['evt_publierarticlesfutur']=='publication'){
-		// surveiller toutes les heures les publications post-dates
-		$taches_generales['microblog'] = 3600;
-	}
-	return $taches_generales;
-}
-
-?>
\ No newline at end of file
diff --git a/microblog/images/microblog-24.png b/microblog/images/microblog-24.png
deleted file mode 100644
index 620f5dd5304b44d844640a01c5733327edf28a07..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 1095
zcmV-N1i1T&P)<h;3K|Lk000e1NJLTq000;O000pP1^@s6$9QZo0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU#=}AOERCwB)R9k2qRT%!ynKNf*c6V~m
zCc8;PQfV4(5^2dprHEQD1r1mPMX359jklr_6qTayVjmjNQbe#41EPpF6!pcnk<wZy
zG_i%WjY*SDHfhpi)9httXZD;k$FpfGwAqJ{GY`X@;s3t>^8Fu@Qo?%9mBjI`;qm^@
zT`y&}ZR-BHtF5Qcq!p|G63c0rTFgRq*o5}RntS5NdcfyW!|mrskDO)Pp$HSWJo(eE
zNT^<apyBC5oM*uE!+_LN>frSdj86U1>lM-zV|^8fXeNwI4SaZM@&}w+o&X-G+tT>!
zBk)-!f|2(BH!=wL*Ox5+kD2z(_0IsM5x|N-!)Rj!vFaV?g=8S505CBWeoTP-=0*GR
z!LLXD`R3^B$*lL$#l*seL@M*@h6ob#XI=`MwW+WfO%Y^x;#6w&o)=s+a_qZzhG!N(
zU3R=KMe_Xpu_Oq1@ogcD`;ZK%6agSYi{Wr`fkRsa!xP&-IXgZ(w8sv|RlhxJqSN|z
zbn^JKdNJ_f9kVs{Rllb+8SQAS9auwvZchiP`d@Z~AT+;_RXrtO*d`qP*MpwT8tjQT
z^(#4Nipkg{p4oZuv$x#T(idJb`Dn+x@9p!$dd_5Fs4EYxss4^k@q-9Sdg_Kp-aeg$
zg=<MD?`#Dlq(ga<!J;ql);j@$7l4*k&pdwk@c!h`&{Huh?mA=nV^LzdRW;gy<X93G
z=5K;K?}E4F0g)0viB%U=5wyE81ewPW><d@GlImQODvS#Wue4YSy667n9FAgxxjFZQ
zJD2a)%k&kN=N~i4ay-vp<hOzY4J{2{5~twzPP_cMkqm-M839Me6|z9EH?BeN785#(
z%PJ8qwMSQmufE^h&|FR|!daG8a7Vo0q}~3NvGiB*ipFT&rn)z9$iOFB%dGDeO5wL8
z2S<Su2w;CRg{?NaS!w8p0w8~uQkO<Gsh5$fSVMksmf6W{AI_miR0R|lXNzGsVnGg2
z5CTn;(;&sB>2v{Bd=5=E1)Jh?N>aNJ)}X`=!MVY|p>2B`uz7Z2Wg^qHY8Mr9VEo#|
z?pS#|UKOwWiv)^EY5~F=ZBqhmt;C|qkoh!sSyT`^s-~b4SzXgL1f4rOK{tqT>qa_y
zw}n#3ZAe3?z<p3{tGsJ=GQf~UfSrhK59*W#hG7)Fp{|tMdLW=Ul<f7KQn$47i(c(*
zts_uFo)JuJp%EQ4L#4J}yS~Spq<BcN?`2GcQNZfwPA<KsvL#r<+~=MqSb$7wf!z}R
zfWQWh!EmYod^VqRVuEwWh|x1NLS(??ua;&;{FOooVF+|v@BdGL0RS5JxjX>g<U9ZX
N002ovPDHLkV1m1t5d{DM

diff --git a/microblog/images/microblog-64.png b/microblog/images/microblog-64.png
deleted file mode 100644
index 4429c94ac3d20bf6f45eeadc26624b23a3678c07..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 4309
zcmV;`5GwD9P)<h;3K|Lk000e1NJLTq002M$001lq1^@s6)nC5<0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU?cS%G+RCwCdS_zOG<#m34_ut1%_Z)k#
z_R#K1yJ*3>kOYDt%Mv9i1-K}yk|MzvY%meA;|i$|mysPK0x59e0$1V^mGVi1Re?&t
zIK;7yMZ_VnR+0k(9jtb>+ST6o+|$?Jf8O6SyDJtUON*3R^{O>JGd(^3d+&SS``+sz
zoO8I8o6i{#{A0cgodbJ-`(7lIAHKI|_^oRvQk@<l5>OhV3oF)kH&$<W0iPf8eGh6Y
z)_|r(fph;O*OUo?{>dC1>KTFhk_cYg2aj>6iJQ<+9=)LTQMkmLFi<#v${GM?3kN3-
zKh`(0|8~dAN|IFgdd4j18GakG_Qcjj3pQ*w^va*Z|I;R2>MzJzqmXwdVR-WBs^dMs
zc%}XH%Xe5#a@O|>ggDSYdSJ=H_8-1Dk?#6Bq5@w<=MniM`^8-LB}YKc9tTAZRUJ6K
z^Ir$Y-(8|A=EovMp<%F{6uftG_Y>8nO9xA%Ek9$v9XM!a<3J@DQ%eqzHSZlzVl=|h
zo)^E?H+FETsu+KGL6|DGn}W7uPk(D=^IgC2xtBikeZdJDjRB{hx;#=KV-1&f559hP
zA&Tc0F&UjOmg;Ox=Lc_A&}rg1!KfEL&hc2ed{Urq<iLt#wzo=_)bl4!j0@*3^p704
zE|nX2-tjYF(kjr^IQZa#VO)vTM7lg2FrI9$#Ii;&G+!l*a_?9h=ZQ9G$gY9vg`a^1
zb*q8v8sxAtCbQP%;Q%V@7ycm`ouv`bl(=QSu0u=1M$jP|q<|nxR2P>|87z&poT9So
z@bg`CNCuwsz<F~JN`6~%YiPf6e>OdGwH(%j^|LAm`bxrtA#<+=<Weg^%So889e(W1
zQv-WfiZXZ3#e`*WUmF4YM_s@N^1zC;saI9GE4OWX?%M6!zXF<`&Daj=3rBD38v0B;
ztggdzIt)#Hp*m({7naR4CFuJsqfxUP4_BVkc#OQaZw#z|JSOyWArp%4<%frreUCnR
zC-<4#^5?gIS#4Qj96mkz(utvoO+p3>erYU^ZmWtJcj4(>^C|^~Cf=(WO}1Y*C40}l
z3IaUqf&G)NY2!ac3B~<?pZeaN0|yQ^wT~pfcBp%3lR&R5NkJ-{98KQPc5>k1c}Iel
zn_QF1_Ek!Rf><yL8=+=EID|~)t}21|K@$A#?8oz>=o#{PrTh4an@%;4G%K<^O$p*U
z3KD0>@MP`0BSGx=wxGO~gy9rRTUlgrXI1IaZlU-D{qUgV$)GvrAG{X24z&KBvc?jF
zc(b}h;aru<(!4{!NaEOr%95q0N+M0a)z#=rR1UpeQ?`nZB#sJBSmt;+>d@>F<0`ZD
zcjVCb7<bO87|K?!sXl6Zw|cCQ`=VkpG+rEE-(0hA-Z`MTX7hb0XFFUsH!d0@(e?Ql
zJynUks?gA@GB!VwBSTfyr}mewSoV#9cYj}fHq9t1f>{!u7+kXAl*Ik^r8VVmP3G)t
z(w0*}C6ZXNuwvKBg_Yl#cMibrZ@(CZ2*YQF8yt@rh{1=;a!?mp17#I0iM4;f{hPnO
z_uijai3FUf_JdDR3fJ%0vAe6T@yVvJ_GDEg%=3<0etdAktcr&73*zQ5%%P%Fv4~mQ
z0wk5UkXcmBD=ad&SSAF61itKoihqK&0dv|9pohW*95j%^?~^X1JPOMU4hu{f9F#vT
zb(^Bt$o%GT$8&#n_9bv^gAHJg15Ka(>`ym*_q*Y?C!Y95s-vTRDitJMcb0wei%%@O
zZ`-3MkDTV7ucG4uw~XOAV*x^fmCnHd<fAG|#@Fi5c*P5xgY}ttAcR==kPZ8~dtiB8
zIV`OS2YOwcK|BKgaAXvo>@>iFBs5_79$GHLJxwO~3?1b1igPU@Kn6OKSr(LBamCJt
z_3L*_n>PLR(Py4{*vjWg)AiTytz5nO+ip4o9392MD7p?l^my@lfucGTg9nQ-c&;~r
z4v52&oDI*u(F<+E?Xaq*96ond8Qi$E9CnTX{L3+9@sJNKiVFXHjSfHSNrC5O;qFBx
z;1cJ&7vyF#P_}GYqG8LHN3?jncHiTVZ(DTBEk8%c!07w$Lo0TH*~+rB$%Rkk08wT!
zZn8xPpUzbY8xPyfL)(B0yN0t6mTge<D#%Equ(vY-dru|6>;cGDl%tFlS>ZxBN?>z^
z55F3Tz<q~u@ajN6+_5+Y_2;=DX4_D^em#`7w!-QM9{9GC%{G^`w!UW6tN?;NCG=*X
zxw5==?45}(xt3RdtrxyGVwg9;IJ8;gX|MwMOt53jL5d{sf_OZd18c$pHKszgFN>%|
zOKAc51UWz)HR66XzAUCMU*d#|e3eCQC7A1PjO5|#?|5)1iGETw(5xJg{(kUd2DlZ7
zZV!b`P`=QIh?<sA9=h`qEI_3G``R#E6{CA~S-o*C5t{5s%!n3+K&CI-Obz-_t}l0|
zgX&Sls%&}bBV{eo9lqxm=LrP5y1T*lY-G?G2WW8>GQ9-{Nb)oSWFbeo(b!XX_ImvI
z!hqSPvw^~fswn*C#vFXV-Gv`?SumtCkeh48bPhepg&UC|QR#_d<uN#(rDD_zcP&(4
zRVe}AV{>m;QR?#IpJ%ZLtugyC)|Vsv3=+ktKBUL!e{r85oasUQGrC41RAZ&@@%wzA
z$M8Izs_GuJ^Cgi2e}kup7U~&<{|C6g%Q&o?8enjVgN+v}!LQu0T!9+XhrfKs$GnyT
zBNg<pN0I0d1z~hVT@(@G0-Uzea7%>|XnRiPKEldQW<kR1Yr48T)s=qS#i&a{@QK+#
zFdoA+#ptGb=}odK9~6ve6AL`mMdt-JgnifFZcR9U<qqUZR7r)>cnOr$$6q1%KD8Zo
zE5>NGs_-3z$P7cS0GGi>!-elfk)!x>+Ew7`BN=$A1M4@QBA`X^98WYd*q&Y;2e`c@
z466+Z(wGjX5<0Y&Fz|dGok(XOb%EQ7W9<+w4@3Q;hE7?L-^As7T0~cp$#ew}yO(1d
z!qwqN2(F7cs4p^zQtTI;l=H*M6Uomr*Mo==h4M%_lq`-9N1G#Wh?JoY)^MBoWFX0;
zxK5?Ih=LuKU~M%}U;TC-e%0r}4^DV+FrkQ-LGXu<?-Fzb!zA2XP2q2sgpnRNAZJ1p
z4Zf$@08{bN0R;Jh%~^Ayo7X$Gdqexd_V*i`8a788%%3vP-<lh-^g^}b!DNJ4Y@-@c
zHc^G{$qu9;JCFf%n3?I#ecE>!sK{OA@p4eGbUS(X*-U>nfvEsAjEgjoTr8%-i$huX
z;JtC6S{QV!@SR9xZ7B+aS;RDUbCM>5f}H81+kl{h@WR){Ja}Mf9Asn`W(gy0sE=r1
zs3JwY0#v2BPi&mL_pqOKH%e3z*Lg+O<l|IU#&bjY+F&}y3sVy}?ZCv5iEo+<%smuU
zqvs$}J-(GWtX{ky(n6?8am|>vzRkEbo)11ti5CtoP#>}2{;&bBM|AjphYK(FGjK4%
z1TRKq6-#0sBc4adV}@{yDn?dCG~7`a0+c(Dbt$;`xY(f35TTQ@@5zW$3)firN$Ru+
zGUjkF_OcVs77O=)o}_7r6hS~BJ7jH?b^1@$t1Iq5{eCZu_KXFkoRh-)LHCJVrIqQM
zV^>5qysj;O>(K|-Ax1gz^`tM6fhGfzw>7G{n`)>b^Sm^S;wRw<sVM^!J$!Jx3R&MJ
zP!{&#p2iS3hzbcc!c~S0^(9J9@%jG{A`LQ-+JVTX1kxe={+H+Cfd0+_PD8R6U1*Lk
zXsQ0H7S?1t>9nA)X~C#~;n7GUiV?7!w>DC1qDYlq8#p$&LQ>?dqMTE#QfA033|}0t
zRFA38WB!gIu-v~Ogcd$5?z{P<5$W?k*TkV_&DwG}m9gOMVGCXzV(?B%hOsPz45o(w
zdkA4RWI3>|G6WTx3UP!z_6NVli2O-F&w=lOeG&v9^mj?Bv`dL9K@=nP#((4UUnV<K
zH~WqsAYf{&Nst&lo5AqAW80t%zN6^W;YD<~t`n3-QC6Ldry?yqVAh&np=aK$kqd=a
zbUCd|B2>b>ZVGA8v{*^pu^6m0Bh_PB9}!_g2rueuI@BVE#57?m6EH!$X`xxVNV98E
z|AT*6n<Z5SggAt&!vE%^+?#VK&^V?CDLNrA7M+kE%~w}8R(#d0h;*h#Qo$(Q#oTw9
z3%aBQs7dvtZ$o9ddxn}30;C|YMY`n}m&RQQq6nXI!epNkpBd=ANQ49xVyaQ~M3*Rf
z8LajE46-9|5jqv|4MN=s*@JxQj(IRSkPu|pNp&P-Ljilzni-cD`9Sn=xxw5YAyNjR
zcnejG<sBCTr|KZEX;0V@x6=Ir^@~gOWPfV4Hs<UeWcvXmkQkD~m5kZfjA1I+mJ0+g
z;-afLRX|}5c%*O(8@06`R;d&Thu}=xWi>RTJLj;)E90OUD%31m07ArwisI(IrgTpR
z5g|<*Pe`#Gi063BY=1Ki(+{R9g+P*ny-ML6KL}c;Ki5R3gEZ3?599u)0h|glGQ?$d
zg`xRG6+ELWGGm@6h=l`|mSDgsu}CDc1<Ox0O3hs}_Zmbv{7>Y7)>TWUXMVi6C}y)S
zz=x8I%<w?*9;}-a0~cN(J+JVF<GR5#N*o8|gnU8InSCVK^LYAxP17J03e}>qH(HkU
zY$A~;Ok))V48s6?|MN&PhY((e&(`l3ZfVWw*3GnGV%dm*C0@qeDD3d^UXcMwAd6?R
z02QoKs0vd}13%+`QWQ_*T=I;|Wa`smnDHPQ{$qSRhEaG{FsX_nARG>hM=?MV42wMl
z+>QI^aDV<{jnvYoGqa^(1Z8hX2p`cG6g)$wjVsU?5v}ttA<N$r<OxB!<S2xcAP{04
z7dVc7>_7x&7YA{-<=7Myg~pD>VuenP^Tj;4BAgTr)h995#)>JTCw^6=`clw{rA}vO
zI{^GV3sh(!Ysnc4E<B1pK`xh0I+N~Q0pg1ps8DT+5Q1tEZ;Ap{!8n@$Khpt2xbOT}
zgc5RMmg_F+7H>9Z=>h`D4pbr&USPyWq9*ixlsaRHvFcQB`i}*Qg?Ni$BV_7EflI_W
zrjn;7efpA5g)j8R_>>&MQf&%z%q69o>v3#Za$$uq?kQo5Is9;b(q17*P@rTQ2St)}
zZCA~Y*k6um(V%LC(C|peET)JUo)XY2^dDoN@gJA`?(l_d9%D5qD}IEDunui?g3RSa
z#%@yan5Pg)<}Bwc!*7ksEYE^^AB==Z;r^nKZU}#uJ3e9qu_6@|l9*omj7{@}UZ%B~
z4dzXFJUOorKppX`N$G$h@i7<d+Y>2E%I9p(T}$+p5>h*sUB=0k#5HoJobSp>a!3WL
zlYZZU7ots(6O$(ryVP=hO{C7aE!mT{tVv{+yzl5SZ3R}1(MY2?h>m)SGk=m$8Rl0C
z5a`4I9}b9&D1T?_K7<rm<s@9@x$dCn3f5Nws8diM@*?i7T0|wD#db=v|2u4zCs1~z
zu>u^Gb@@f)2rnphKG-OVhOzq_K;wJyrHLuFnpY_RmM?zt5wyA<suvf93zk_EtIk%T
zJyNOEv?xO1CCczqcq~fuZt*jMS>z1lJbpRye*z2u)s(LJnHUi}00000NkvXXu0mjf
DUUL=t

diff --git a/microblog/images/microblog.png b/microblog/images/microblog.png
deleted file mode 100644
index 3971011cedc71680698d5e50bb0a7355a36d827a..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 10000
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
a0t^5!U6URP^Rk2h0000<MNUMnLSTa2R05Fz

diff --git a/microblog/inc/micro_notifications.php b/microblog/inc/micro_notifications.php
deleted file mode 100644
index 4332756..0000000
--- a/microblog/inc/micro_notifications.php
+++ /dev/null
@@ -1,88 +0,0 @@
-<?php
-/*
- * Plugin spip|microblog
- * (c) Fil 2009-2010
- *
- * envoyer des micromessages depuis SPIP vers twitter ou laconica
- * distribue sous licence GNU/LGPL
- *
- */
-
-if (!defined("_ECRIRE_INC_VERSION")) return;
-
-/*
- * Buzzer les notifications
- */
-
-function Microblog_notifications($x) {
-  include_spip('inc/filtres_mini');
-  include_spip('inc/texte');
-
-	$status = null;
-	$cfg = @unserialize($GLOBALS['meta']['microblog']);
-	switch($x['args']['quoi']) {
-		case 'forumposte':      // post forums
-			if ($cfg['evt_forumposte']
-			AND $id = intval($x['args']['id'])) {
-				$status = Microblog_annonce('forumposte',array('id_forum'=>$id));
-				envoyer_microblog($status,array('objet'=>'forum','id_objet'=>$id));
-			}
-			break;
-		
-		case 'instituerarticle':    // publier | proposer articles
-		if ($id = intval($x['args']['id'])
-			AND (
-				// publier
-				($cfg['evt_publierarticles']
-					AND $x['args']['options']['statut'] == 'publie'
-					AND $x['args']['options']['statut_ancien'] != 'publie'
-					AND ($GLOBALS['meta']["post_dates"]=='oui'
-						OR strtotime($x['args']['options']['date'])<=time()
-						OR $cfg['evt_publierarticlesfutur']!='publication'
-					)
-				)
-			OR 
-				// proposer
-				($cfg['evt_proposerarticles']
-				AND $x['args']['options']['statut'] == 'prop' 
-				AND $x['args']['options']['statut_ancien'] != 'publie'
-				)
-			)
-		) {
-			// si on utilise aussi le cron pour annoncer les articles post-dates
-			// noter ceux qui sont deja annonces ici (pour eviter double annonce)
-			if ($x['args']['options']['statut'] == 'publie'
-			  AND $GLOBALS['meta']["post_dates"]=='non'
-				AND $cfg['evt_publierarticlesfutur']=='publication'
-			){
-				include_spip('inc/meta');
-				ecrire_meta('microblog_annonces',$GLOBALS['meta']['microblog_annonces'].','.$id);
-			}
-			$status = Microblog_annonce('instituerarticle',array('id_article'=>$id));
-			envoyer_microblog($status,array('objet'=>'article','id_objet'=>$id));
-		}
-		break;
-	}
-
-	return $x;
-}
-
-function Microblog_annonce($quoi,$contexte){
-	return trim(recuperer_fond("modeles/microblog_$quoi",$contexte));
-}
-
-function envoyer_microblog($status,$liens=array()){
-	if (!is_null($status)) {
-		if (!function_exists('job_queue_add')){
-			include_spip('inc/microblog');
-			microblog($status);
-		}
-		else{
-			$id_job = job_queue_add('microblog',"microblog : $status",array($status),'inc/microblog',true,time()+60);
-			if ($liens)
-				job_queue_link($id_job,$liens);
-		}
-	}
-}
-
-?>
\ No newline at end of file
diff --git a/microblog/inc/microblog.php b/microblog/inc/microblog.php
deleted file mode 100644
index fe0d6b6..0000000
--- a/microblog/inc/microblog.php
+++ /dev/null
@@ -1,96 +0,0 @@
-<?php
-/*
- * Plugin spip|microblog
- * (c) Fil 2009-2010
- *
- * envoyer des micromessages depuis SPIP vers twitter ou laconica
- * distribue sous licence GNU/LGPL
- *
- */
-
-if (!defined("_ECRIRE_INC_VERSION")) return;
-
-
-/*
- * Envoyer un microblog sur une des plateformes disponibles
- * $status : ce qu'on veut ecrire
- * $user, $pass : identifiants
- * $service : quel service
- * $api : si on est vraiment desespere :-)
- */
-function microblog($status, $user=null, $pass=null, $service=null, $api=null){
-	$cfg = @unserialize($GLOBALS['meta']['microblog']);
-
-	// Certains define prennent le pas sur le reste (mode TEST)
-	if (defined('_TEST_MICROBLOG_SERVICE')) {
-		if (_TEST_MICROBLOG_SERVICE == '') {
-			spip_log('microblog desactive par _TEST_MICROBLOG_SERVICE');
-			return false;
-		}
-		else
-			$service = _TEST_MICROBLOG_SERVICE;
-	}
-	if (defined('_TEST_MICROBLOG_USER')) $user = _TEST_MICROBLOG_USER;
-	if (defined('_TEST_MICROBLOG_PASS')) $pass = _TEST_MICROBLOG_PASS;
-
-
-	// services connus
-	$apis = array(
-		'spipo' => 'http://%user%:%pass%@spip.org/api/statuses/update.xml',
-		'identica' => 'http://%user%:%pass%@identi.ca/api/statuses/update.xml',
-		'twitter' => 'http://%user%:%pass%@twitter.com/statuses/update.xml'
-	);
-
-	// Choix de l'API
-	if (!isset($api)) {
-		if (!isset($service))
-			$service = $cfg['service'];
-		if (!isset($apis[$service]))
-			return false;
-		$api = $apis[$service];
-	}
-
-	if (!isset($user))
-		$user = $cfg['user'];
-	if (!isset($pass))
-		$pass = $cfg['pass'];
-
-	// Inserer les credits d'authentification
-	$api = str_replace(array('%user%','%pass%'), array(urlencode($user),urlencode($pass)), $api);
-
-	// Preparer le message (utf8 < 140 caracteres)
-	include_spip('inc/charsets');
-	$status = trim(preg_replace(',\s+,', ' ', $status));
-	$status = unicode2charset(charset2unicode($status), 'utf-8');
-	$status = substr($status, 0, 140);
-
-	if (!strlen($status))
-		return false;
-
-	$datas = array('status' => $status);
-
-	// anti-begaiment
-	$begaie = md5("$service $user $status");
-	if ($begaie == $GLOBALS['meta']['microblog_begaie']) {
-		spip_log("begaie $service $user $status", 'microblog');
-		return false;
-	} else
-		ecrire_meta('microblog_begaie', $begaie);
-
-	// ping et renvoyer la reponse xml
-	include_spip('inc/distant');
-	$ret = recuperer_page($api, false, false, null, $datas);
-	spip_log("$service $user $status ".strlen($ret), 'microblog');
-	return $ret;
-}
-
-
-function microblog_affiche_droite($flux){
-	if (autoriser('microbloguer','status')
-	AND isset($GLOBALS['meta']['microblog'])
-	AND is_array($cfg = @unserialize($GLOBALS['meta']['microblog']))
-	AND $cfg['invite']) {
-		$flux['data'] .= recuperer_fond('modeles/microblog_update',array());
-	}
-	return $flux;
-}
\ No newline at end of file
diff --git a/microblog/lang/microblog_fr.php b/microblog/lang/microblog_fr.php
deleted file mode 100644
index f5107d4..0000000
--- a/microblog/lang/microblog_fr.php
+++ /dev/null
@@ -1,55 +0,0 @@
-<?php
-// This is a SPIP language file  --  Ceci est un fichier langue de SPIP
-if (!defined("_ECRIRE_INC_VERSION")) return;
-
-$GLOBALS[$GLOBALS['idx_lang']] = array(
-
-  // A
-  'article' => 'article',
-
-	// B
-	'bouton_envoyer' => 'Envoyer',
-
-  // C
-  'choisir' => 'choisir',
-  'compte_tests' => 'Compte de tests',
-  'compte_defaut' => 'Compte par d&#233;faut pour la fonction',
-  'creer_compte_services' => 'Vous pouvez cr&#233;er un compte pour votre site SPIP sur l\'un des services suivants',
-
-  // E
-  'elements_signaler' => 'Elements &#224; signaler sur le flux public ci-dessus',
-
-	// I
-	'invite' => 'Invite',
-	'invite_statut' => 'Invite de statut',
-	'invite_statut_explications' => 'Le plugin peut afficher dans l\'espace priv&#233; une invite de statut. Voulez-vous afficher une invite de statut pour les r&#233;dacteurs autoris&#233;s (par d&#233;faut&nbsp;: les administrateurs du site) ?',
-	'invite_afficher' => 'Afficher l\'invite de statut',
-	
-
-  // L
-	'label_status' => 'Quoi de neuf ?',
-
-	// P
-  'presentation_spipo' => 'le site de la communaut&#233; SPIP',
-  'presentation_laconica' => 'le site public du logiciel laconi.ca',
-
-  // N
-  'notifications' => 'Notifications',
-  'notifications_publiques' => 'Notifications publiques',
-
-	// P
-  'poster_forums' => 'Forums post&#233;s',
-  'proposer_articles' => 'Articles propos&#233;s',
-  'propose' => 'propos&#233;',
-	'publier_articles' => 'Articles publi&#233;s',
-  'publie' => 'publi&#233;',
-	'publier_articles_futurs_immediatement'=>'Annoncer les articles quelle que soit leur date de publication',
-	'publier_articles_futurs_visibles'=>'Ne pas annoncer les articles avant la date de publication fix&eacute;e',
-	'publier_articles_shorturl'=>'Utiliser des urls courtes (necessite un .htaccess)',
-
-	// S
-  'service' => 'Service'
-
-);
-
-?>
diff --git a/microblog/microblog_fonctions.php b/microblog/microblog_fonctions.php
deleted file mode 100644
index 0f4e573..0000000
--- a/microblog/microblog_fonctions.php
+++ /dev/null
@@ -1,24 +0,0 @@
-<?php
-/*
- * Plugin spip|microblog
- * (c) Fil 2009-2010
- *
- * envoyer des micromessages depuis SPIP vers twitter ou laconica
- * distribue sous licence GNU/LGPL
- *
- */
-
-function generer_url_microblog($id, $entite, $args, $ancre, $public, $type){
-	include_spip('inc/filtres_mini');
-	$config = unserialize($GLOBALS['meta']['microblog']);
-
-	if (!$public
-	 OR $entite!=='article'
-	 OR !$config['short_url'])
-		return url_absolue(generer_url_entite($id, $entite, $args, $ancre, $public, $type));
-	else
-		return $GLOBALS['meta']['adresse_site'].'/'.$id;
-}
-
-
-?>
\ No newline at end of file
diff --git a/microblog/modeles/microblog_forumposte.html b/microblog/modeles/microblog_forumposte.html
deleted file mode 100644
index af4d13d..0000000
--- a/microblog/modeles/microblog_forumposte.html
+++ /dev/null
@@ -1,12 +0,0 @@
-[(#REM)
-
-  Squelette
-  (c) 2009 xxx
-  Distribue sous licence GPL
-
-]
-<BOUCLE_forum(FORUMS){id_forum}{statut?}{tout}>
-	#SET{url,(#VAL{'#forum '}|concat{#URL_FORUM|url_absolue})}
-	[(#SET{len,#VAL{120}|moins{#GET{url}|strlen}})]
-	[(#TITRE|concat{' | ',#TEXTE}|couper{#GET{len}}|concat{' ',#GET{url}})]
-</BOUCLE_forum>
\ No newline at end of file
diff --git a/microblog/modeles/microblog_instituerarticle.html b/microblog/modeles/microblog_instituerarticle.html
deleted file mode 100644
index 4384c9b..0000000
--- a/microblog/modeles/microblog_instituerarticle.html
+++ /dev/null
@@ -1,12 +0,0 @@
-[(#REM)
-
-  Squelette
-  (c) 2009 xxx
-  Distribue sous licence GPL
-
-]
-<BOUCLE_art(ARTICLES){id_article}{statut?}{tout}>
-	#SET{url,(#ID_ARTICLE|generer_url_microblog{article,'','',#STATUT|=={publie}|?{#EVAL{true}}})}
-	[(#SET{len,#VAL{120}|moins{#GET{url}|strlen}})]
-	[(#TITRE|concat{[, par (#LESAUTEURS)]}|couper{#GET{len}}|concat{' ',#GET{url}})]
-</BOUCLE_art>
\ No newline at end of file
diff --git a/microblog/modeles/microblog_update.html b/microblog/modeles/microblog_update.html
deleted file mode 100644
index 7b14bce..0000000
--- a/microblog/modeles/microblog_update.html
+++ /dev/null
@@ -1,8 +0,0 @@
-[(#REM)
-
-  Squelette
-  (c) 2009 xxx
-  Distribue sous licence GPL
-
-]
-#FORMULAIRE_MICROBLOGUER
\ No newline at end of file
diff --git a/microblog/plugin.xml b/microblog/plugin.xml
deleted file mode 100644
index d3c8865..0000000
--- a/microblog/plugin.xml
+++ /dev/null
@@ -1,30 +0,0 @@
-<plugin>
-	<nom>Microblog</nom>
-	<auteur>Fil &#169; 2009-2010</auteur>
-	<licence>GNU/LGPL</licence>
-	<version>0.3.1</version>
-	<etat>stable</etat>
-	<description>
-	Envoyer des micromessages vers les plateformes laconica, twitter, spip.org etc. Fournit une fonction <code>microblog($statut, $user, $pass, $service);</code>.
-	</description>
-	<lien>http://www.spip-contrib.net/Microblog</lien>
-	<prefix>microblog</prefix>
-	<icon>images/microblog.png</icon>
-
-	<fonctions>microblog_fonctions.php</fonctions>
-	<pipeline>
-		<nom>notifications</nom>
-		<inclure>inc/micro_notifications.php</inclure>
-	</pipeline>
-	<pipeline>
-		<nom>taches_generales_cron</nom>
-		<inclure>genie/microblog.php</inclure>
-	</pipeline>
-	<pipeline>
-		<nom>affiche_droite</nom>
-		<inclure>inc/microblog.php</inclure>
-	</pipeline>
-
-	<necessite id="SPIP" version="[2.0;]" />
-	<!-- en vrai http://trac.rezo.net/trac/spip/changeset/14036 -->
-</plugin>
diff --git a/microblog/prive/exec/configurer_microblog.html b/microblog/prive/exec/configurer_microblog.html
deleted file mode 100644
index dec594e..0000000
--- a/microblog/prive/exec/configurer_microblog.html
+++ /dev/null
@@ -1,6 +0,0 @@
-<h1 class="grostitre">Microblog</h1>
-<div class="ajax">
-#FORMULAIRE_CONFIGURER_MICROBLOG
-</div>
-
-
diff --git a/microblog/prive/style_prive_plugin_microblog.html b/microblog/prive/style_prive_plugin_microblog.html
deleted file mode 100644
index 09436ca..0000000
--- a/microblog/prive/style_prive_plugin_microblog.html
+++ /dev/null
@@ -1,24 +0,0 @@
-[(#REM)
-
-	Ce squelette definit les styles de l'espace prive
-
-	Note: l'entete "Vary:" sert a repousser l'entete par
-	defaut "Vary: Cookie,Accept-Encoding", qui est (un peu)
-	genant en cas de "rotation du cookie de session" apres
-	un changement d'IP (effet de clignotement).
-
-	ATTENTION: il faut absolument le charset sinon Firefox croit que
-	c'est du text/html !
-]
-#CACHE{3600*100,cache-client}
-#HTTP_HEADER{Content-Type: text/css; charset=iso-8859-15}
-#HTTP_HEADER{Vary: Accept-Encoding}
-
-#SET{claire,##ENV{couleur_claire,edf3fe}}
-#SET{foncee,##ENV{couleur_foncee,3874b0}}
-#SET{left,#ENV{ltr}|choixsiegal{left,left,right}}
-#SET{right,#ENV{ltr}|choixsiegal{left,right,left}}
-
-.formulaire_spip.formulaire_microbloguer { border-color: #33CCFF; }
-.formulaire_spip.formulaire_microbloguer li.obligatoire,
-.formulaire_spip.formulaire_microbloguer .boutons { background-color: #DBEFFA; }
\ No newline at end of file
-- 
GitLab