Files
modoboa/modoboa/limits/constants.py
T

107 lines
3.1 KiB
Python

"""Modoboa limits constants."""
import collections
from django.utils.translation import gettext_lazy as _
DEFAULT_USER_LIMITS = collections.OrderedDict(
(
(
"domains",
{
"content_type": "admin.domain",
"label": _("Domains"),
"help": _("Maximum number of domains this user can create"),
"required_role": "Resellers",
},
),
(
"domain_aliases",
{
"content_type": "admin.domainalias",
"label": _("Domain aliases"),
"help": _("Maximum number of domain aliases this user can create"),
"required_role": "Resellers",
},
),
(
"mailboxes",
{
"content_type": "admin.mailbox",
"label": _("Mailboxes"),
"help": _("Maximum number of mailboxes this user can create"),
},
),
(
"mailbox_aliases",
{
"content_type": "admin.alias",
"label": _("Mailbox aliases"),
"help": _("Maximum number of mailbox aliases this user " "can create"),
},
),
(
"domain_admins",
{
"content_type": "core.user",
"label": _("Domain admins"),
"help": _(
"Maximum number of domain administrators this user " "can create"
),
"required_role": "Resellers",
"extra_filters": {"groups__name": "DomainAdmins"},
},
),
(
"quota",
{
"content_type": "admin.domain",
"label": _("Quota"),
"help": _("Quota shared between domains of this reseller"),
"required_role": "Resellers",
"type": "sum",
"field": "quota",
},
),
)
)
DEFAULT_DOMAIN_LIMITS = collections.OrderedDict(
(
(
"domain_aliases",
{
"relation": "domainalias_set",
"label": _("Domain aliases"),
"help": _("Maximum number of domain aliases allowed for this domain."),
},
),
(
"mailboxes",
{
"relation": "mailbox_set",
"label": _("Mailboxes"),
"help": _("Maximum number of mailboxes allowed for this domain."),
},
),
(
"mailbox_aliases",
{
"relation": "alias_set",
"label": _("Mailbox aliases"),
"help": _("Maximum number of mailbox aliases allowed for this domain."),
"extra_filters": {"internal": False},
},
),
(
"domain_admins",
{
"relation": "admins",
"label": _("Domain admins"),
"help": _("Maximum number of domain admins allowed for this domain."),
},
),
)
)