Commit cecc21b3 authored by Côme Chilliet's avatar Côme Chilliet Committed by bmortier
Browse files

:sparkles: feat(mailrouting) Add plugin migration-mailrouting

issue #5998
Showing with 152 additions and 0 deletions
+152 -0
##
## mailrouting.schema - Needed by FusionDirectory for storing mailroutine attributes
##
## Benoit Mortier <benoit.mortier@fusiondirectory.org>
##
## 24/09/2019
##
# Attributes
attributetype ( 2.16.840.1.113730.3.1.13 NAME 'mailLocalAddress'
DESC 'RFC 822 email address of this recipient'
EQUALITY caseIgnoreIA5Match
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )
attributetype ( 2.16.840.1.113730.3.1.18 NAME 'mailHost'
DESC 'FQDN of the MTA that is the final SMTP destination of messages to this recipient'
EQUALITY caseIgnoreIA5Match
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256}
SINGLE-VALUE )
attributetype ( 2.16.840.1.113730.3.1.47 NAME 'mailRoutingAddress'
DESC 'RFC 822 routing address of this recipient'
EQUALITY caseIgnoreIA5Match
SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256}
SINGLE-VALUE )
# Object Class
objectclass ( 2.16.840.1.113730.3.2.147 NAME 'inetLocalMailRecipient' SUP top AUXILIARY
DESC 'Internet local mail recipient'
MAY ( mailLocalAddress $ mailHost $ mailRoutingAddress ) )
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR FusionDirectory Project
# This file is distributed under the same license as the FusionDirectory package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: FusionDirectory VERSION\n"
"Report-Msgid-Bugs-To: bugs@fusiondirectory.org\n"
"POT-Creation-Date: 2019-09-24 17:00+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FusionDirectory project <contact@fusiondirectory.org>\n"
"Language-Team: English\n"
"Language: en\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: personal/migration-mailrouting/class_mailRoutingInfo.inc:28
msgid "Mail routing"
msgstr ""
#: personal/migration-mailrouting/class_mailRoutingInfo.inc:29
msgid "Mail routing information"
msgstr ""
#: personal/migration-mailrouting/class_mailRoutingInfo.inc:46
msgid "Routing"
msgstr ""
#: personal/migration-mailrouting/class_mailRoutingInfo.inc:50
msgid "Local addresses"
msgstr ""
#: personal/migration-mailrouting/class_mailRoutingInfo.inc:50
msgid "RFC 822 email addresses of this recipient"
msgstr ""
#: personal/migration-mailrouting/class_mailRoutingInfo.inc:55
msgid "Mail host"
msgstr ""
#: personal/migration-mailrouting/class_mailRoutingInfo.inc:55
msgid ""
"FQDN of the MTA that is the final SMTP destination of messages to this "
"recipient"
msgstr ""
#: personal/migration-mailrouting/class_mailRoutingInfo.inc:59
msgid "Routing address"
msgstr ""
#: personal/migration-mailrouting/class_mailRoutingInfo.inc:59
msgid "RFC 822 routing address of this recipient"
msgstr ""
<?php
/*
This code is part of FusionDirectory (http://www.fusiondirectory.org/)
Copyright (C) 2019 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 mailRoutingInfo extends simplePlugin
{
var $displayHeader = TRUE;
static function plInfo (): array
{
return [
'plShortName' => _('Mail routing'),
'plDescription' => _('Mail routing information'),
'plSelfModify' => TRUE,
'plObjectClass' => ['inetLocalMailRecipient'],
'plObjectType' => ['user'],
'plDepends' => ['mailAccount'],
'plIcon' => 'geticon.php?context=applications&icon=mail&size=48',
'plSmallIcon' => 'geticon.php?context=applications&icon=mail&size=16',
'plProvidedAcls' => parent::generatePlProvidedAcls(static::getAttributesInfo())
];
}
static function getAttributesInfo (): array
{
global $config;
return [
'main' => [
'name' => _('Routing'),
'attrs' => [
new SetAttribute(
new StringAttribute(
_('Local addresses'), _('RFC 822 email addresses of this recipient'),
'mailLocalAddress', FALSE
)
),
new StringAttribute(
_('Mail host'), _('FQDN of the MTA that is the final SMTP destination of messages to this recipient'),
'mailHost', FALSE
),
new MailAttribute(
_('Routing address'), _('RFC 822 routing address of this recipient'),
'mailRoutingAddress', FALSE
),
]
],
];
}
}
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment