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; - } -} -