diff --git a/plugins/addons/mailtemplate/class_mailTemplateInvitations.inc b/plugins/addons/mailtemplate/class_mailTemplateInvitations.inc
deleted file mode 100644
index f33c3fac7f2398d5c25a08288152ce771f32b39e..0000000000000000000000000000000000000000
--- a/plugins/addons/mailtemplate/class_mailTemplateInvitations.inc
+++ /dev/null
@@ -1,72 +0,0 @@
-<?php
-/*
-  This code is part of FusionDirectory (http://www.fusiondirectory.org)
-
-  Copyright (C) 2018-2022 FusionDirectory
-
-  This program is free software; you can redistribute it and/or modify
-  it under the terms of the GNU General Public License as published by
-  the Free Software Foundation; either version 2 of the License, or
-  (at your option) any later version.
-
-  This program 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 General Public License for more details.
-
-  You should have received a copy of the GNU General Public License
-  along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
-*/
-
-class mailTemplateInvitations extends simplePlugin
-{
-  protected $displayHeader = TRUE;
-
-  static function plInfo (): array
-  {
-    return [
-      'plShortName'   => _('Mail Template Invitations'),
-      'plDescription' => _('Mail Template Invitations'),
-      'plIcon'        => 'geticon.php?context=applications&icon=supann&size=48',
-      'plSmallIcon'   => 'geticon.php?context=applications&icon=supann-status&size=16',
-      'plPriority'    => 33,
-      'plObjectClass' => ['fdMailTemplateInvitations'],
-      'plFilter'      => '(objectClass=fdMailTemplateInvitations)',
-      'plObjectType'  => ['mailTemplate'],
-      'plConflicts'   => ['mailTemplateUserReminder', 'mailTemplateUserRecovery'],
-      'plProvidedAcls'  => parent::generatePlProvidedAcls(static::getAttributesInfo())
-    ];
-  }
-
-  static function getAttributesInfo (): array
-  {
-    return  [
-      'main' => [
-        'name'  => _('Invitation'),
-        'attrs' => [
-          new StringAttribute(
-            _('Email subject'), _('Subject of the email sent for this invitation'),
-            'fdMTInvitationEmailSubject', TRUE
-          ),
-          new TextAreaAttribute(
-            _('Email content'), _('Content of the email sent for this invitation'),
-            'fdMTInvitationEmailContent', TRUE,
-            'A default Email here - was previously fetched by default configuration - %token%'
-          ),
-         new StringAttribute(
-            _('Reply to'), _('Email address set as "Reply to" in the sent emails'),
-            'fdMTInvitationReplyTo', FALSE
-          ),
-        ]
-      ],
-    ];
-  }
-
-  function __construct ($dn = NULL, $object = NULL, $parent = NULL, $mainTab = FALSE)
-  {
-    global $config;
-    parent::__construct($dn, $object, $parent, $mainTab);
-  }
-
-}
diff --git a/plugins/addons/mailtemplate/class_mailTemplateUserRecovery.inc b/plugins/addons/mailtemplate/class_mailTemplateUserRecovery.inc
deleted file mode 100644
index efa76ec0f88ea23495bbdf15afb7c288da427c59..0000000000000000000000000000000000000000
--- a/plugins/addons/mailtemplate/class_mailTemplateUserRecovery.inc
+++ /dev/null
@@ -1,111 +0,0 @@
-<?php
-/*
-  This code is part of FusionDirectory (http://www.fusiondirectory.org)
-
-  Copyright (C) 2018-2022 FusionDirectory
-
-  This program is free software; you can redistribute it and/or modify
-  it under the terms of the GNU General Public License as published by
-  the Free Software Foundation; either version 2 of the License, or
-  (at your option) any later version.
-
-  This program 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 General Public License for more details.
-
-  You should have received a copy of the GNU General Public License
-  along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
-*/
-
-class mailTemplateUserRecovery extends simplePlugin
-{
-  protected $displayHeader = TRUE;
-
-  static function plInfo (): array
-  {
-    return [
-      'plShortName'   => _('Mail Template User Recovery'),
-      'plDescription' => _('Mail Template User Recovery'),
-      'plIcon'        => 'geticon.php?context=applications&icon=supann&size=48',
-      'plSmallIcon'   => 'geticon.php?context=applications&icon=supann-status&size=16',
-      'plPriority'    => 31,
-      'plObjectClass' => ['fdMailTemplateUserRecovery'],
-      'plFilter'      => '(objectClass=fdMailTemplateUserRecovery)',
-      'plObjectType'  => ['mailTemplate'],
-      'plConflicts'   => ['mailTemplateUserReminder', 'mailTemplateInvitations'],
-      'plProvidedAcls'  => parent::generatePlProvidedAcls(static::getAttributesInfo())
-    ];
-  }
-
-  static function getAttributesInfo (): array
-  {
-    return  [
-      'first_email' => [
-        'name' => _('First email'),
-        'attrs' => [
-          new StringAttribute(
-            _('Subject'),
-            _('Subject of the first email'),
-            'fdMTPasswordRecoveryMailSubject',
-            TRUE,
-            _("[FusionDirectory] Password recovery link")
-          ),
-          new TextAreaAttribute(
-            _('Body'),
-            _('Body of the first email, sent when the user ask for a new password. Use %login% for the login and %link% for the recovery link.'),
-            'fdMTPasswordRecoveryMailBody',
-            TRUE,
-            _("Hello,\n\nHere is your information: \n - Login : %login%\n - Link : %link%\n\nThis link is only valid for 10 minutes.")
-          )
-        ]
-      ],
-      'second_email' => [
-        'name' => _('Second email'),
-        'attrs' => [
-          new StringAttribute(
-            _('Subject'),
-            _('Subject of the second email'),
-            'fdMTPasswordRecoveryMail2Subject',
-            TRUE,
-            _("[FusionDirectory] Password recovery successful")
-          ),
-          new TextAreaAttribute(
-            _('Body'),
-            _('Body of the second email, sent to confirm the password has been changed. Use %login% for the user login.'),
-            'fdMTPasswordRecoveryMail2Body',
-            TRUE,
-           _("Hello,\n\nYour password has been changed.\nYour login is still %login%.")
-          )
-        ]
-      ]
-    ];
-  }
-
-  function __construct ($dn = NULL, $object = NULL, $parent = NULL, $mainTab = FALSE)
-  {
-    global $config;
-    parent::__construct($dn, $object, $parent, $mainTab);
-  }
-
-  protected function shouldSave (): bool
-  {
-    global $config;
-
-    $ldap = $config->get_ldap_link();
-    $ldap->cd($config->current['BASE']);
-    $ldap->search('(&(objectClass=fdMailTemplateUserRecovery))', ['cn','fdMTPasswordRecoveryMailSubject']);
-    while ($attrs = $ldap->fetch()) {
-      if (isset($this->attrs['fdMTPasswordRecoveryMailSubject'])) {
-        $error = new FusionDirectoryError(htmlescape(sprintf(_('User Recovery Mail Template Is Already Existing!'))));
-        $error->display();
-
-        return FALSE;
-      }
-    }
-
-    return TRUE;
-  }
-
-}
diff --git a/plugins/addons/mailtemplate/class_mailTemplateUserReminder.inc b/plugins/addons/mailtemplate/class_mailTemplateUserReminder.inc
deleted file mode 100644
index 455d9bc7bf3b6f77a5e475f1d2ae1aae05f31874..0000000000000000000000000000000000000000
--- a/plugins/addons/mailtemplate/class_mailTemplateUserReminder.inc
+++ /dev/null
@@ -1,173 +0,0 @@
-<?php
-
-/*
-  This code is part of FusionDirectory (http://www.fusiondirectory.org)
-
-  Copyright (C) 2018-2022 FusionDirectory
-
-  This program is free software; you can redistribute it and/or modify
-  it under the terms of the GNU General Public License as published by
-  the Free Software Foundation; either version 2 of the License, or
-  (at your option) any later version.
-
-  This program 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 General Public License for more details.
-
-  You should have received a copy of the GNU General Public License
-  along with this program; if not, write to the Free Software
-  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
-*/
-
-class mailTemplateUserReminder extends simplePlugin
-{
-  protected $displayHeader = TRUE;
-
-  static function plInfo (): array
-  {
-    return [
-      'plShortName'   => _('Mail Template User Reminder'),
-      'plDescription' => _('Mail Template User Reminder'),
-      'plIcon'        => 'geticon.php?context=applications&icon=supann&size=48',
-      'plSmallIcon'   => 'geticon.php?context=applications&icon=supann-status&size=16',
-      'plPriority'    => 32,
-      'plObjectClass' => ['fdMailTemplateUserReminder'],
-      'plFilter'      => '(objectClass=fdMailTemplateUserReminder)',
-      'plObjectType'  => ['mailTemplate'],
-      'plConflicts'   => ['mailTemplateUserRecovery', 'mailTemplateInvitations'],
-      'plProvidedAcls'  => parent::generatePlProvidedAcls(static::getAttributesInfo())
-    ];
-  }
-
-  static function getAttributesInfo (): array
-  {
-    return [
-      'emailppolicy' => [
-        'name'  => _('Ppolicy email settings'),
-        'attrs' => [
-          new BooleanAttribute(
-            _('Forward alerts to the manager'), _('Forward ppolicy alerts to the manager'),
-            'fdMTUserReminderForwardPpolicyAlert', FALSE,
-            TRUE
-          ),
-          new StringAttribute(
-            _('Subject'), _('Subject of the ppolicy alert email'),
-            'fdMTUserReminderPpolicyAlertSubject', FALSE,
-            _('[FusionDirectory] Your password is about to expire')
-          ),
-          new TextAreaAttribute(
-            _('Body (%s are cn and login)'),
-            _('Body of the ppolicy alert email, sent when the user password is about to expire.'),
-            'fdMTUserReminderPpolicyAlertBody', FALSE,
-            _('Dear %sn%,'."\n".
-              'your password for account %login% is about to expire, please change your password: '."\n".
-              'https://'.$_SERVER['SERVER_NAME'].
-              (($_SERVER['SERVER_PORT'] != '80') ? ':'.$_SERVER['SERVER_PORT'] : '').
-              (empty($_SERVER['REQUEST_URI']) ? $_SERVER['PATH_INFO'] : $_SERVER['REQUEST_URI']).
-              "\n")
-          )
-        ]
-      ],
-      'alert_mail_reminder' => [
-        'name'  => _('Alert email settings'),
-        'attrs' => [
-          new BooleanAttribute(
-            _('Forward alerts to the manager'), _('Forward alerts to the manager'),
-            'fdMTUserReminderForwardAlert', TRUE,
-            TRUE
-          ),
-          new StringAttribute(
-            _('Subject'), _('Subject of the alert email'),
-            'fdMTUserReminderAlertSubject', FALSE,
-            _('[FusionDirectory] Your account is about to expire')
-          ),
-          new TextAreaAttribute(
-            _('Body'),
-            _('Body of the alert email, sent when the user is about to expire.'),
-            'fdMTUserReminderAlertBody', FALSE,
-            _('Dear %sn%,'."\n".
-              'your account %login% is about to expire, please use this link to avoid this: '."\n".
-              'https://'.$_SERVER['SERVER_NAME'].
-              (($_SERVER['SERVER_PORT'] != '80') ? ':'.$_SERVER['SERVER_PORT'] : '').
-              (empty($_SERVER['REQUEST_URI']) ? $_SERVER['PATH_INFO'] : $_SERVER['REQUEST_URI']).
-              '/expired_postpone.php?uid=%login%&token=%token%'."\n")
-          )
-        ]
-      ],
-      'alert_mail_confirmation' => [
-        'name'  => _('Confirmation email settings'),
-        'attrs' => [
-          new BooleanAttribute(
-            _('Forward confirmation to the manager'), _('Forward account extension confirmation to the manager'),
-            'fdMTUserReminderForwardConfirmation', TRUE,
-            TRUE
-          ),
-          new StringAttribute(
-            _('Subject'), _('Subject of the confirmation email'),
-            'fdMTUserReminderConfirmationSubject', FALSE,
-            _('[FusionDirectory] Your account expiration has been postponed')
-          ),
-          new TextAreaAttribute(
-            _('Body'),
-            _('Body of the confirmation email, sent when the user has postponed expiration.'),
-            'fdMTUserReminderConfirmationBody', FALSE,
-            _('Dear %sn%,'."\n".' your account %login% expiration has been successfully postponed.'."\n")
-          ),
-        ]
-      ],
-      'alert_mail_expiration' => [
-        'name'  => _('Expiration email settings'),
-        'attrs' => [
-          new BooleanAttribute(
-            _('Forward to the manager'), _('Forward account expiration to the manager'),
-            'fdMTUserReminderForwardExpiration', TRUE,
-            TRUE
-          ),
-          new StringAttribute(
-            _('Subject'), _('Subject of the expiration email'),
-            'fdMTUserReminderExpirationSubject', FALSE,
-            _('[FusionDirectory] Your account has expired')
-          ),
-          new TextAreaAttribute(
-            _('Body (%s are cn and login)'),
-            _('Body of the expiration email, sent when the user has expired.'),
-            'fdMTUserReminderExpirationBody', FALSE,
-            _('Dear %sn%,'."\n".' your account %login% has expired.'."\n")
-          ),
-        ]
-      ],
-    ];
-  }
-
-  function __construct (string $dn = NULL, $object = NULL, $parent = NULL, bool $mainTab = FALSE, array $attributesInfo = NULL)
-  {
-    parent::__construct($dn, $object, $parent, $mainTab, $attributesInfo);
-
-    if (!class_available('ppolicy')) {
-      $this->attributesAccess['fdMTUserReminderForwardPpolicyAlert']->setDisabled(TRUE);
-      $this->attributesAccess['fdMTUserReminderPpolicyAlertSubject']->setDisabled(TRUE);
-      $this->attributesAccess['fdMTUserReminderPpolicyAlertBody']->setDisabled(TRUE);
-    }
-  }
-
-  protected function shouldSave (): bool
-  {
-    global $config;
-
-    $ldap = $config->get_ldap_link();
-    $ldap->cd($config->current['BASE']);
-    $ldap->search('(&(objectClass=fdMailTemplateUserReminder))', ['cn','fdMTUserReminderAlertSubject']);
-    while ($attrs = $ldap->fetch()) {
-      if (isset($this->attrs['fdMTUserReminderAlertSubject'])) {
-        $error = new FusionDirectoryError(htmlescape(sprintf(_('User Reminder Mail Template Is Already Existing!'))));
-        $error->display();
-
-        return FALSE;
-      }
-    }
-
-    return TRUE;
-  }
-}
-