From 250300f7ef663cb1c8a4c563b753c518fa6ba63b Mon Sep 17 00:00:00 2001 From: Antoine Nguyen Date: Wed, 17 Oct 2018 13:42:51 +0200 Subject: [PATCH 1/2] Added support for unit when defining a quota. see #1514 --- modoboa/admin/forms/account.py | 19 +- modoboa/admin/forms/domain.py | 27 ++- .../admin/locale/cs_CZ/LC_MESSAGES/django.po | 155 ++++++++------- modoboa/admin/locale/de/LC_MESSAGES/django.po | 173 +++++++++-------- .../admin/locale/el_GR/LC_MESSAGES/django.po | 163 +++++++++------- modoboa/admin/locale/en/LC_MESSAGES/django.po | 141 +++++++------- modoboa/admin/locale/es/LC_MESSAGES/django.po | 161 +++++++++------- modoboa/admin/locale/fr/LC_MESSAGES/django.po | 159 ++++++++-------- modoboa/admin/locale/it/LC_MESSAGES/django.po | 173 +++++++++-------- .../admin/locale/ja_JP/LC_MESSAGES/django.po | 177 ++++++++++-------- .../admin/locale/nl_NL/LC_MESSAGES/django.po | 173 +++++++++-------- .../admin/locale/pl_PL/LC_MESSAGES/django.po | 161 +++++++++------- .../admin/locale/pt_BR/LC_MESSAGES/django.po | 163 +++++++++------- .../admin/locale/pt_PT/LC_MESSAGES/django.po | 173 +++++++++-------- .../admin/locale/ro_RO/LC_MESSAGES/django.po | 162 +++++++++------- modoboa/admin/locale/ru/LC_MESSAGES/django.po | 146 ++++++++------- modoboa/admin/locale/sv/LC_MESSAGES/django.po | 155 ++++++++------- .../admin/locale/zh_TW/LC_MESSAGES/django.po | 155 ++++++++------- modoboa/admin/models/domain.py | 4 +- modoboa/admin/serializers.py | 18 +- .../templates/admin/domain_general_form.html | 4 +- modoboa/admin/templates/admin/mailform.html | 2 +- modoboa/lib/tests/test_web_utils.py | 23 +++ modoboa/lib/web_utils.py | 29 ++- 24 files changed, 1562 insertions(+), 1154 deletions(-) create mode 100644 modoboa/lib/tests/test_web_utils.py diff --git a/modoboa/admin/forms/account.py b/modoboa/admin/forms/account.py index 60a61d110..b3b871984 100644 --- a/modoboa/admin/forms/account.py +++ b/modoboa/admin/forms/account.py @@ -23,7 +23,7 @@ from modoboa.lib.form_utils import ( ) from modoboa.lib.permissions import get_account_roles from modoboa.lib.validators import validate_utf8_email -from modoboa.lib.web_utils import render_to_json_response +from modoboa.lib.web_utils import render_to_json_response, size2integer from modoboa.parameters import tools as param_tools from .. import lib, models, signals @@ -229,13 +229,16 @@ class AccountFormMail(forms.Form, DynamicForm): required=False, initial=False ) - quota = forms.IntegerField( + quota = forms.CharField( label=ugettext_lazy("Quota"), required=False, - help_text=_("Quota in MB for this mailbox. Define a custom value or " - "use domain's default one. Leave empty to define an " - "unlimited value (not allowed for domain " - "administrators)."), + help_text=_( + "Quota for this mailbox, can be expressed in KB, MB (default) or " + "GB. Define a custom value or " + "use domain's default one. Leave empty to define an " + "unlimited value (not allowed for domain " + "administrators)." + ), widget=forms.widgets.TextInput(attrs={"class": "form-control"}) ) quota_act = forms.BooleanField(required=False) @@ -317,6 +320,10 @@ class AccountFormMail(forms.Form, DynamicForm): raise forms.ValidationError(inst) return email + def clean_quota(self): + """Convert quota to Bytes.""" + return size2integer(self.cleaned_data["quota"], output_unit="MB") + def clean(self): """Custom fields validation. diff --git a/modoboa/admin/forms/domain.py b/modoboa/admin/forms/domain.py index 737e33b79..cbb238105 100644 --- a/modoboa/admin/forms/domain.py +++ b/modoboa/admin/forms/domain.py @@ -19,7 +19,7 @@ from modoboa.lib.fields import DomainNameField from modoboa.lib.form_utils import ( DynamicForm, TabForms, WizardForm, WizardStep, YesNoField ) -from modoboa.lib.web_utils import render_to_json_response +from modoboa.lib.web_utils import render_to_json_response, size2integer from modoboa.parameters import tools as param_tools from .. import constants, lib, signals from ..models import Alias, Domain, DomainAlias, Mailbox @@ -41,6 +41,22 @@ class DomainFormGeneral(forms.ModelForm, DynamicForm): ) dkim_key_selector = forms.CharField( label=ugettext_lazy("Key selector"), required=False) + quota = forms.CharField( + label=ugettext_lazy("Quota"), + initial=0, + help_text=ugettext_lazy( + "Quota shared between mailboxes. Can be expressed in KB, " + "MB (default) or GB. A value of 0 means no quota." + ) + ) + default_mailbox_quota = forms.CharField( + label=ugettext_lazy("Default mailbox quota"), + initial=0, + help_text=ugettext_lazy( + "Default quota applied to mailboxes. Can be expressed in KB, MB " + "(default) or GB. A value of 0 means no quota." + ) + ) class Meta: model = Domain @@ -105,6 +121,15 @@ class DomainFormGeneral(forms.ModelForm, DynamicForm): _("DKIM keys storage directory not configured")) return enabled + def clean_quota(self): + """Return proper quota value.""" + return size2integer(self.cleaned_data["quota"], output_unit="MB") + + def clean_default_mailbox_quota(self): + """Return proper quota value.""" + return size2integer( + self.cleaned_data["default_mailbox_quota"], output_unit="MB") + def clean(self): """Custom fields validation. diff --git a/modoboa/admin/locale/cs_CZ/LC_MESSAGES/django.po b/modoboa/admin/locale/cs_CZ/LC_MESSAGES/django.po index 6141f6420..f5621cc5e 100644 --- a/modoboa/admin/locale/cs_CZ/LC_MESSAGES/django.po +++ b/modoboa/admin/locale/cs_CZ/LC_MESSAGES/django.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: Modoboa\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-10-17 09:25+0200\n" +"POT-Creation-Date: 2018-10-17 13:41+0200\n" "PO-Revision-Date: 2018-08-10 11:53+0000\n" "Last-Translator: Jarda Tesar \n" "Language-Team: Czech (Czech Republic) (http://www.transifex.com/tonio/" @@ -134,7 +134,7 @@ msgstr "" "Výchozí kvóta (v MB), které se použije u nově vytvořených domén bez uvedené " "hodnoty kvóty. Hodnota 0 znamená, že se kvóta nepoužívá." -#: app_settings.py:119 models/domain.py:41 +#: app_settings.py:119 forms/domain.py:53 models/domain.py:41 #: templates/admin/domain_detail.html:64 msgid "Default mailbox quota" msgstr "Výchozí kvóta schránky" @@ -174,7 +174,7 @@ msgstr "" "Vytvořit alias použitím původní adresy, pokud je mailová schránka " "přejmenována." -#: app_settings.py:196 app_settings.py:204 forms/account.py:332 +#: app_settings.py:196 app_settings.py:204 forms/account.py:339 msgid "Must be a positive integer" msgstr "Musí se jednat o kladné číslo" @@ -228,7 +228,7 @@ msgstr "Vybrat" msgid "What level of permission this user will have" msgstr "Jaká úroveň oprávnění bude tomuto uživateli nastavena" -#: forms/account.py:48 forms/domain.py:224 +#: forms/account.py:48 forms/domain.py:249 msgid "Random password" msgstr "Náhodné heslo" @@ -260,8 +260,8 @@ msgstr "Povoleno" msgid "Only super administrators are allowed for this mode" msgstr "Pouze super správci jsou oprávnění pro tento režim" -#: forms/account.py:182 forms/account.py:184 forms/domain.py:141 -#: forms/domain.py:270 forms/domain.py:273 serializers.py:263 +#: forms/account.py:182 forms/account.py:184 forms/domain.py:166 +#: forms/domain.py:295 forms/domain.py:298 serializers.py:279 msgid "This field is required." msgstr "Toto pole je vyžadováno." @@ -281,27 +281,32 @@ msgstr "E-mail" msgid "Create an alias using the old address" msgstr "Vytvořit alias použitím původní adresy" -#: forms/account.py:233 templates/admin/account_detail.html:45 -#: templates/admin/domain_detail.html:49 +#: forms/account.py:233 forms/domain.py:45 +#: templates/admin/account_detail.html:45 templates/admin/domain_detail.html:49 msgid "Quota" msgstr "Kvóta" -#: forms/account.py:235 +#: forms/account.py:236 +#, fuzzy +#| msgid "" +#| "Quota in MB for this mailbox. Define a custom value or use domain's " +#| "default one. Leave empty to define an unlimited value (not allowed for " +#| "domain administrators)." msgid "" -"Quota in MB for this mailbox. Define a custom value or use domain's default " -"one. Leave empty to define an unlimited value (not allowed for domain " -"administrators)." +"Quota for this mailbox, can be expressed in KB, MB (default) or GB. Define a " +"custom value or use domain's default one. Leave empty to define an unlimited " +"value (not allowed for domain administrators)." msgstr "" "Kvóta pro tuto chránku v MB. Definujte vlastní hodnotu nebo použijte výchozí " "hodnotu domény. Ponechejte prázdné pro neomezenou kvótu (není povoleno " "správcům domény)." -#: forms/account.py:243 forms/domain.py:35 +#: forms/account.py:246 forms/domain.py:35 #: templates/admin/domain_headers.html:4 msgid "Alias(es)" msgstr "Alias(y)" -#: forms/account.py:246 +#: forms/account.py:249 msgid "" "Alias(es) of this mailbox. Indicate only one address per input, press ENTER " "to add a new input. To create a catchall alias, just enter the domain name " @@ -311,11 +316,11 @@ msgstr "" "ENTER pro vložení dalšího aliasu. Pro vytvoření doménového koše vložte " "'*' (např. *@domena.cz)." -#: forms/account.py:252 +#: forms/account.py:255 msgid "Sender addresses" msgstr "Adresa odesílatele" -#: forms/account.py:255 +#: forms/account.py:258 msgid "" "Additional sender address(es) for this account. The user will be allowed to " "send emails using this address, even if it does not exist locally. Indicate " @@ -325,52 +330,52 @@ msgstr "" "maily pomocí této adresy, a to i v případě, že neexistuje lokálně. V rámci " "vstupu vložte pouze jednu adresu. Stiskněte ENTER pro vložení další adresy." -#: forms/account.py:310 forms/alias.py:92 models/mailbox.py:317 +#: forms/account.py:313 forms/alias.py:92 models/mailbox.py:317 msgid "Domain does not exist" msgstr "Doména neexistuje" -#: forms/account.py:342 +#: forms/account.py:349 msgid "Local domain does not exist" msgstr "Lokální doména neexistuje" -#: forms/account.py:346 forms/account.py:354 forms/alias.py:95 +#: forms/account.py:353 forms/account.py:361 forms/alias.py:95 msgid "You don't have access to this domain" msgstr "Nemáte oprávnění k přístupu k této doméně" -#: forms/account.py:453 +#: forms/account.py:460 msgid "Domain(s)" msgstr "Doména(y)" -#: forms/account.py:455 +#: forms/account.py:462 msgid "Domain(s) that user administrates" msgstr "Doména(y) pod správou uživatele" -#: forms/account.py:501 forms/account.py:591 forms/domain.py:341 -#: forms/domain.py:412 +#: forms/account.py:508 forms/account.py:598 forms/domain.py:366 +#: forms/domain.py:437 msgid "General" msgstr "Obecné" -#: forms/account.py:505 +#: forms/account.py:512 msgid "Profile" msgstr "Profil" -#: forms/account.py:509 forms/account.py:597 +#: forms/account.py:516 forms/account.py:604 msgid "Mail" msgstr "Mail" -#: forms/account.py:512 +#: forms/account.py:519 msgid "Permissions" msgstr "Oprávnění" -#: forms/account.py:580 +#: forms/account.py:587 msgid "Account updated" msgstr "Účet aktualizován" -#: forms/account.py:605 +#: forms/account.py:612 msgid "New account" msgstr "Nový účet" -#: forms/account.py:615 +#: forms/account.py:622 msgid "Account created" msgstr "Účet vytvořen" @@ -425,99 +430,117 @@ msgstr "" msgid "Key selector" msgstr "Identifikátor klíče" -#: forms/domain.py:82 handlers.py:165 +#: forms/domain.py:48 models/domain.py:36 +#, fuzzy +#| msgid "" +#| "Default quota in MB applied to mailboxes. A value of 0 means no quota." +msgid "" +"Quota shared between mailboxes. Can be expressed in KB, MB (default) or GB. " +"A value of 0 means no quota." +msgstr "Výchozí kvóta v MB pro schránky. Hodnota 0 = žádná kvóta." + +#: forms/domain.py:56 +#, fuzzy +#| msgid "" +#| "Default quota in MB applied to mailboxes. A value of 0 means no quota." +msgid "" +"Default quota applied to mailboxes. Can be expressed in KB, MB (default) or " +"GB. A value of 0 means no quota." +msgstr "Výchozí kvóta v MB pro schránky. Hodnota 0 = žádná kvóta." + +#: forms/domain.py:98 handlers.py:165 msgid "domain alias" msgstr "doménový alias" -#: forms/domain.py:85 forms/domain.py:152 forms/domain.py:160 +#: forms/domain.py:101 forms/domain.py:177 forms/domain.py:185 #, python-format msgid "A %s with this name already exists" msgstr "%s s tímto názvem již existuje" -#: forms/domain.py:93 serializers.py:53 +#: forms/domain.py:109 serializers.py:56 msgid "No authorized MX record found for this domain" msgstr "Nebyly nalezeny žádné autorizované MX záznamy pro tuto doménu" -#: forms/domain.py:105 +#: forms/domain.py:121 msgid "DKIM keys storage directory not configured" msgstr "Není nastavena složka pro ukládání DKIM klíčů" -#: forms/domain.py:126 serializers.py:63 +#: forms/domain.py:151 serializers.py:74 msgid "Cannot be greater than domain quota" msgstr "Nemůže být vyšší než kvóta domény" -#: forms/domain.py:131 +#: forms/domain.py:156 msgid "You can't define an unlimited quota." msgstr "Neomezená kvóta nelze definovat." -#: forms/domain.py:152 forms/domain.py:157 +#: forms/domain.py:177 forms/domain.py:182 msgid "domain" msgstr "doména" -#: forms/domain.py:206 +#: forms/domain.py:231 msgid "Create a domain administrator" msgstr "Vytvořit správce domény" -#: forms/domain.py:209 +#: forms/domain.py:234 msgid "Automatically create an administrator for this domain" msgstr "Automaticky vytvořit správce této domény" -#: forms/domain.py:214 templates/admin/domain_detail.html:121 +#: forms/domain.py:239 templates/admin/domain_detail.html:121 #: templates/admin/domain_headers.html:3 #: templates/admin/identity_headers.html:2 #: templates/admin/mx_domain_detail.html:9 msgid "Name" msgstr "Jméno" -#: forms/domain.py:217 +#: forms/domain.py:242 msgid "" "The administrator's name. Don't include the domain's name here, it will be " "automatically appended." msgstr "" "Jméno správce. Nevkládejte sem název domény, název bude automaticky doplněn." -#: forms/domain.py:227 +#: forms/domain.py:252 msgid "Generate a random password for the administrator." msgstr "Generovat náhodné heslo pro administrátora." -#: forms/domain.py:233 +#: forms/domain.py:258 msgid "With a mailbox" msgstr "S mailovou schránkou" -#: forms/domain.py:236 +#: forms/domain.py:261 msgid "Create a mailbox for the administrator." msgstr "Vytvořit mailovou schránku pro administrátora." -#: forms/domain.py:242 +#: forms/domain.py:267 msgid "Create aliases" msgstr "Vytvořit aliasy" -#: forms/domain.py:245 +#: forms/domain.py:270 msgid "Automatically create standard aliases for this domain" msgstr "Automaticky vytvořit běžné aliasy pro tuto doménu" -#: forms/domain.py:261 +#: forms/domain.py:286 msgid "Invalid format" msgstr "Neplatný formát" -#: forms/domain.py:290 +#: forms/domain.py:315 #, python-format msgid "User '%s' already exists" msgstr "Uživatel '%s' již existuje" -#: forms/domain.py:402 +#: forms/domain.py:427 msgid "Domain modified" msgstr "Doména upravena" -#: forms/domain.py:423 +#: forms/domain.py:448 msgid "Options" msgstr "Možnosti" -#: forms/domain.py:431 +#: forms/domain.py:456 msgid "New domain" msgstr "Nová doména" -#: forms/domain.py:444 +#: forms/domain.py:469 msgid "Domain created" msgstr "Doména vytvořena" @@ -717,10 +740,6 @@ msgstr "název" msgid "The domain name" msgstr "Doménové jméno" -#: models/domain.py:36 -msgid "Quota in MB shared between mailboxes. A value of 0 means no quota." -msgstr "Kvóta v MB sdílená mezi schránky. Hodnota 0 = žádná kvóta." - #: models/domain.py:44 msgid "Default quota in MB applied to mailboxes. A value of 0 means no quota." msgstr "Výchozí kvóta v MB pro schránky. Hodnota 0 = žádná kvóta." @@ -805,40 +824,40 @@ msgstr "Kvóta je vyžadována" msgid "Domain quota exceeded" msgstr "Kvóta domény byla překročena" -#: serializers.py:88 serializers.py:288 serializers.py:386 +#: serializers.py:99 serializers.py:304 serializers.py:402 msgid "Permission denied." msgstr "Přístup zamítnut." -#: serializers.py:134 +#: serializers.py:150 msgid "" "List of administered domains (resellers and domain administrators only)." msgstr "Zobrazit spravované domény (jenom distributori a správci domén)" -#: serializers.py:238 +#: serializers.py:254 msgid "Not allowed for this role." msgstr "Není povoleno pro tuto roli." -#: serializers.py:250 +#: serializers.py:266 msgid "Must be equal to mailbox full_address" msgstr "Musí být rovno hodnote schránky celá_adresa" -#: serializers.py:275 +#: serializers.py:291 msgid "Local domain {} does not exist" msgstr "Lokální doména {} neexistuje" -#: serializers.py:373 +#: serializers.py:389 msgid "A list of recipient" msgstr "Seznam příjemců" -#: serializers.py:384 +#: serializers.py:400 msgid "Domain not found." msgstr "Doména nebyla nalezena." -#: serializers.py:433 +#: serializers.py:449 msgid "You don't have access to this domain." msgstr "K této doméně nemáte přístup." -#: serializers.py:441 +#: serializers.py:457 msgid "You don't have access to this mailbox." msgstr "K této schránce nemáte přístup." @@ -1000,11 +1019,8 @@ msgstr "Aliasy schránek" #: templates/admin/domain_detail.html:50 templates/admin/domain_detail.html:57 #: templates/admin/domain_detail.html:58 templates/admin/domain_detail.html:65 -#: templates/admin/domain_general_form.html:4 -#: templates/admin/domain_general_form.html:5 #: templates/admin/domains_quotas.html:11 -#: templates/admin/domains_quotas.html:12 templates/admin/mailform.html:7 -#: templates/admin/newdomainform.html:3 +#: templates/admin/domains_quotas.html:12 templates/admin/newdomainform.html:3 msgid "MB" msgstr "MB" @@ -1366,6 +1382,9 @@ msgstr "Importovat identity" msgid "Forward updated" msgstr "Přeposílání aktualizováno" +#~ msgid "Quota in MB shared between mailboxes. A value of 0 means no quota." +#~ msgstr "Kvóta v MB sdílená mezi schránky. Hodnota 0 = žádná kvóta." + #, fuzzy #~| msgid "No DNS records found for %s" #~ msgid "No DNS records found without MX for %s" diff --git a/modoboa/admin/locale/de/LC_MESSAGES/django.po b/modoboa/admin/locale/de/LC_MESSAGES/django.po index 9b380046f..21c17614b 100644 --- a/modoboa/admin/locale/de/LC_MESSAGES/django.po +++ b/modoboa/admin/locale/de/LC_MESSAGES/django.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: Modoboa\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-10-17 09:25+0200\n" +"POT-Creation-Date: 2018-10-17 13:41+0200\n" "PO-Revision-Date: 2015-09-09 09:33+0000\n" "Last-Translator: controlc.de\n" "Language-Team: German (http://www.transifex.com/tonio/modoboa/language/de/)\n" @@ -127,7 +127,7 @@ msgstr "" "Standardquota (in MB) für neu erstelle Domains ohne explizite Wertangabe. " "Der Wert 0 bedeutet „Kein Quota“" -#: app_settings.py:119 models/domain.py:41 +#: app_settings.py:119 forms/domain.py:53 models/domain.py:41 #: templates/admin/domain_detail.html:64 #, fuzzy #| msgid "Default domain quota" @@ -172,7 +172,7 @@ msgstr "" msgid "Create an alias using the old address when a mailbox is renamed." msgstr "" -#: app_settings.py:196 app_settings.py:204 forms/account.py:332 +#: app_settings.py:196 app_settings.py:204 forms/account.py:339 msgid "Must be a positive integer" msgstr "Muss eine positive Ganzzahl sein" @@ -230,7 +230,7 @@ msgstr "Auswählen" msgid "What level of permission this user will have" msgstr "Rechte, die der Benutzer haben wird" -#: forms/account.py:48 forms/domain.py:224 +#: forms/account.py:48 forms/domain.py:249 #, fuzzy #| msgid "Invalid address" msgid "Random password" @@ -262,8 +262,8 @@ msgstr "Aktiviert" msgid "Only super administrators are allowed for this mode" msgstr "Nur Super-Administratoren dürfen diesen Modus benutzen." -#: forms/account.py:182 forms/account.py:184 forms/domain.py:141 -#: forms/domain.py:270 forms/domain.py:273 serializers.py:263 +#: forms/account.py:182 forms/account.py:184 forms/domain.py:166 +#: forms/domain.py:295 forms/domain.py:298 serializers.py:279 #, fuzzy #| msgid "A mailbox is required" msgid "This field is required." @@ -285,27 +285,32 @@ msgstr "E-Mail" msgid "Create an alias using the old address" msgstr "" -#: forms/account.py:233 templates/admin/account_detail.html:45 -#: templates/admin/domain_detail.html:49 +#: forms/account.py:233 forms/domain.py:45 +#: templates/admin/account_detail.html:45 templates/admin/domain_detail.html:49 msgid "Quota" msgstr "Quota" -#: forms/account.py:235 +#: forms/account.py:236 +#, fuzzy +#| msgid "" +#| "Quota in MB for this mailbox. Define a custom value or use domain's " +#| "default one. Leave empty to define an unlimited value (not allowed for " +#| "domain administrators)." msgid "" -"Quota in MB for this mailbox. Define a custom value or use domain's default " -"one. Leave empty to define an unlimited value (not allowed for domain " -"administrators)." +"Quota for this mailbox, can be expressed in KB, MB (default) or GB. Define a " +"custom value or use domain's default one. Leave empty to define an unlimited " +"value (not allowed for domain administrators)." msgstr "" "Quota in MB für dieses Postfach. Geben Sie einen individuellen Wert an oder " "nutzen Sie den Standardwert der Domain. Lassen Sie das Feld leer für " "unbegrenztes Quota (Domain-Administratoren ist dies nicht gestattet)." -#: forms/account.py:243 forms/domain.py:35 +#: forms/account.py:246 forms/domain.py:35 #: templates/admin/domain_headers.html:4 msgid "Alias(es)" msgstr "Alias(e)" -#: forms/account.py:246 +#: forms/account.py:249 #, fuzzy #| msgid "" #| "Alias(es) of this mailbox. Indicate only one address per input, press " @@ -320,13 +325,13 @@ msgstr "" "an. Bestätigen Sie die Eingabe mit ENTER. Geben Sie '*' an, um einen " "'catchall'-Alias (Bsp: *@example.com) zu erstellen." -#: forms/account.py:252 +#: forms/account.py:255 #, fuzzy #| msgid "Invalid address" msgid "Sender addresses" msgstr "Ungültige Adresse" -#: forms/account.py:255 +#: forms/account.py:258 #, fuzzy #| msgid "" #| "Addresses this alias will point to. Indicate only one address per input, " @@ -339,54 +344,54 @@ msgstr "" "Adressen, auf die der Alias verweist. Geben Sie jeweils nur eine Adresse ein " "und bestätigen Sie mit ENTER." -#: forms/account.py:310 forms/alias.py:92 models/mailbox.py:317 +#: forms/account.py:313 forms/alias.py:92 models/mailbox.py:317 msgid "Domain does not exist" msgstr "Domain existiert nicht" -#: forms/account.py:342 +#: forms/account.py:349 #, fuzzy #| msgid "Domain does not exist" msgid "Local domain does not exist" msgstr "Domain existiert nicht" -#: forms/account.py:346 forms/account.py:354 forms/alias.py:95 +#: forms/account.py:353 forms/account.py:361 forms/alias.py:95 msgid "You don't have access to this domain" msgstr "Der Zugriff auf diese Domain ist Ihnen nicht gestattet" -#: forms/account.py:453 +#: forms/account.py:460 msgid "Domain(s)" msgstr "Domain(s)" -#: forms/account.py:455 +#: forms/account.py:462 msgid "Domain(s) that user administrates" msgstr "Domain(s), die dieser Benutzer administriert" -#: forms/account.py:501 forms/account.py:591 forms/domain.py:341 -#: forms/domain.py:412 +#: forms/account.py:508 forms/account.py:598 forms/domain.py:366 +#: forms/domain.py:437 msgid "General" msgstr "Allgemein" -#: forms/account.py:505 +#: forms/account.py:512 msgid "Profile" msgstr "" -#: forms/account.py:509 forms/account.py:597 +#: forms/account.py:516 forms/account.py:604 msgid "Mail" msgstr "E-Mail" -#: forms/account.py:512 +#: forms/account.py:519 msgid "Permissions" msgstr "Berechtigungen" -#: forms/account.py:580 +#: forms/account.py:587 msgid "Account updated" msgstr "Konto aktualisiert" -#: forms/account.py:605 +#: forms/account.py:612 msgid "New account" msgstr "Neues Konto" -#: forms/account.py:615 +#: forms/account.py:622 msgid "Account created" msgstr "Konto erstellt" @@ -447,51 +452,75 @@ msgstr "" msgid "Key selector" msgstr "" -#: forms/domain.py:82 handlers.py:165 +#: forms/domain.py:48 models/domain.py:36 +#, fuzzy +#| msgid "" +#| "Default quota (in MB) applied to freshly created domains with no value " +#| "specified. A value of 0 means no quota." +msgid "" +"Quota shared between mailboxes. Can be expressed in KB, MB (default) or GB. " +"A value of 0 means no quota." +msgstr "" +"Standardquota (in MB) für neu erstelle Domains ohne explizite Wertangabe. " +"Der Wert 0 bedeutet „Kein Quota“" + +#: forms/domain.py:56 +#, fuzzy +#| msgid "" +#| "Default quota (in MB) applied to freshly created domains with no value " +#| "specified. A value of 0 means no quota." +msgid "" +"Default quota applied to mailboxes. Can be expressed in KB, MB (default) or " +"GB. A value of 0 means no quota." +msgstr "" +"Standardquota (in MB) für neu erstelle Domains ohne explizite Wertangabe. " +"Der Wert 0 bedeutet „Kein Quota“" + +#: forms/domain.py:98 handlers.py:165 msgid "domain alias" msgstr "Domain-Alias" -#: forms/domain.py:85 forms/domain.py:152 forms/domain.py:160 +#: forms/domain.py:101 forms/domain.py:177 forms/domain.py:185 #, python-format msgid "A %s with this name already exists" msgstr "Ein %s mit diesem Namen existiert bereits" -#: forms/domain.py:93 serializers.py:53 +#: forms/domain.py:109 serializers.py:56 msgid "No authorized MX record found for this domain" msgstr "" -#: forms/domain.py:105 +#: forms/domain.py:121 msgid "DKIM keys storage directory not configured" msgstr "" -#: forms/domain.py:126 serializers.py:63 +#: forms/domain.py:151 serializers.py:74 msgid "Cannot be greater than domain quota" msgstr "" -#: forms/domain.py:131 +#: forms/domain.py:156 msgid "You can't define an unlimited quota." msgstr "" -#: forms/domain.py:152 forms/domain.py:157 +#: forms/domain.py:177 forms/domain.py:182 msgid "domain" msgstr "Domain" -#: forms/domain.py:206 +#: forms/domain.py:231 msgid "Create a domain administrator" msgstr "Domain-Administrator erstellen" -#: forms/domain.py:209 +#: forms/domain.py:234 msgid "Automatically create an administrator for this domain" msgstr "Automatisch Administrator für diese Domain anlegen" -#: forms/domain.py:214 templates/admin/domain_detail.html:121 +#: forms/domain.py:239 templates/admin/domain_detail.html:121 #: templates/admin/domain_headers.html:3 #: templates/admin/identity_headers.html:2 #: templates/admin/mx_domain_detail.html:9 msgid "Name" msgstr "Name" -#: forms/domain.py:217 +#: forms/domain.py:242 msgid "" "The administrator's name. Don't include the domain's name here, it will be " "automatically appended." @@ -499,52 +528,52 @@ msgstr "" "Name des Administrators. Geben Sie nicht den Domainnamen mit an. Er wird " "automatisch angehängt." -#: forms/domain.py:227 +#: forms/domain.py:252 #, fuzzy #| msgid "Create a domain administrator" msgid "Generate a random password for the administrator." msgstr "Domain-Administrator erstellen" -#: forms/domain.py:233 +#: forms/domain.py:258 msgid "With a mailbox" msgstr "" -#: forms/domain.py:236 +#: forms/domain.py:261 #, fuzzy #| msgid "Create a domain administrator" msgid "Create a mailbox for the administrator." msgstr "Domain-Administrator erstellen" -#: forms/domain.py:242 +#: forms/domain.py:267 msgid "Create aliases" msgstr "Aliase erstellen" -#: forms/domain.py:245 +#: forms/domain.py:270 msgid "Automatically create standard aliases for this domain" msgstr "Automatisch Standard-Aliase für Domain anlegen" -#: forms/domain.py:261 +#: forms/domain.py:286 msgid "Invalid format" msgstr "Ungültiges Format" -#: forms/domain.py:290 +#: forms/domain.py:315 #, python-format msgid "User '%s' already exists" msgstr "Benutzer %s existiert bereits" -#: forms/domain.py:402 +#: forms/domain.py:427 msgid "Domain modified" msgstr "Domain verändert" -#: forms/domain.py:423 +#: forms/domain.py:448 msgid "Options" msgstr "Optionen" -#: forms/domain.py:431 +#: forms/domain.py:456 msgid "New domain" msgstr "Neue Domain" -#: forms/domain.py:444 +#: forms/domain.py:469 msgid "Domain created" msgstr "Domain erstellt." @@ -746,16 +775,6 @@ msgstr "Name" msgid "The domain name" msgstr "Name der Domain" -#: models/domain.py:36 -#, fuzzy -#| msgid "" -#| "Default quota (in MB) applied to freshly created domains with no value " -#| "specified. A value of 0 means no quota." -msgid "Quota in MB shared between mailboxes. A value of 0 means no quota." -msgstr "" -"Standardquota (in MB) für neu erstelle Domains ohne explizite Wertangabe. " -"Der Wert 0 bedeutet „Kein Quota“" - #: models/domain.py:44 #, fuzzy #| msgid "" @@ -853,48 +872,48 @@ msgstr "Ein Quota ist erforderlich" msgid "Domain quota exceeded" msgstr "Domain erstellt." -#: serializers.py:88 serializers.py:288 serializers.py:386 +#: serializers.py:99 serializers.py:304 serializers.py:402 #, fuzzy #| msgid "Permissions" msgid "Permission denied." msgstr "Berechtigungen" -#: serializers.py:134 +#: serializers.py:150 msgid "" "List of administered domains (resellers and domain administrators only)." msgstr "" -#: serializers.py:238 +#: serializers.py:254 msgid "Not allowed for this role." msgstr "" -#: serializers.py:250 +#: serializers.py:266 msgid "Must be equal to mailbox full_address" msgstr "" -#: serializers.py:275 +#: serializers.py:291 #, fuzzy #| msgid "Domain does not exist" msgid "Local domain {} does not exist" msgstr "Domain existiert nicht" -#: serializers.py:373 +#: serializers.py:389 msgid "A list of recipient" msgstr "" -#: serializers.py:384 +#: serializers.py:400 #, fuzzy #| msgid "Domain modified" msgid "Domain not found." msgstr "Domain verändert" -#: serializers.py:433 +#: serializers.py:449 #, fuzzy #| msgid "You don't have access to this domain" msgid "You don't have access to this domain." msgstr "Der Zugriff auf diese Domain ist Ihnen nicht gestattet" -#: serializers.py:441 +#: serializers.py:457 #, fuzzy #| msgid "You don't have access to this domain" msgid "You don't have access to this mailbox." @@ -1090,11 +1109,8 @@ msgstr "Postfach-Aliase" #: templates/admin/domain_detail.html:50 templates/admin/domain_detail.html:57 #: templates/admin/domain_detail.html:58 templates/admin/domain_detail.html:65 -#: templates/admin/domain_general_form.html:4 -#: templates/admin/domain_general_form.html:5 #: templates/admin/domains_quotas.html:11 -#: templates/admin/domains_quotas.html:12 templates/admin/mailform.html:7 -#: templates/admin/newdomainform.html:3 +#: templates/admin/domains_quotas.html:12 templates/admin/newdomainform.html:3 msgid "MB" msgstr "MB" @@ -1492,6 +1508,15 @@ msgstr "Identitäten importieren" msgid "Forward updated" msgstr "Weiterleitung aktualisiert" +#, fuzzy +#~| msgid "" +#~| "Default quota (in MB) applied to freshly created domains with no value " +#~| "specified. A value of 0 means no quota." +#~ msgid "Quota in MB shared between mailboxes. A value of 0 means no quota." +#~ msgstr "" +#~ "Standardquota (in MB) für neu erstelle Domains ohne explizite Wertangabe. " +#~ "Der Wert 0 bedeutet „Kein Quota“" + #~ msgid "" #~ "Default quota in MB applied to mailboxes. Leave empty to use the default " #~ "value." diff --git a/modoboa/admin/locale/el_GR/LC_MESSAGES/django.po b/modoboa/admin/locale/el_GR/LC_MESSAGES/django.po index 31bfb1b59..5a20a4cf6 100644 --- a/modoboa/admin/locale/el_GR/LC_MESSAGES/django.po +++ b/modoboa/admin/locale/el_GR/LC_MESSAGES/django.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: Modoboa\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-10-17 09:25+0200\n" +"POT-Creation-Date: 2018-10-17 13:41+0200\n" "PO-Revision-Date: 2017-10-12 08:13+0000\n" "Last-Translator: Kostas Moumouris \n" "Language-Team: Greek (Greece) (http://www.transifex.com/tonio/modoboa/" @@ -131,7 +131,7 @@ msgstr "" "Προκαθορισμένο quota (σε MB) που εφαρμόζεται στα νέα domains χωρίς " "προκαθορισμένες τιμές. Μια τιμή 0 σημαίνει ότι δεν έχει quota. " -#: app_settings.py:119 models/domain.py:41 +#: app_settings.py:119 forms/domain.py:53 models/domain.py:41 #: templates/admin/domain_detail.html:64 msgid "Default mailbox quota" msgstr "Προκαθορισμένο quota γραμματοκιβωτίου " @@ -173,7 +173,7 @@ msgstr "" "Δημιουργήστε ένα ψευδώνυμο χρησιμοποιώντας την παλιά διεύθυνση όταν " "μετονομάζεται ένα γραμματοκιβώτιο." -#: app_settings.py:196 app_settings.py:204 forms/account.py:332 +#: app_settings.py:196 app_settings.py:204 forms/account.py:339 msgid "Must be a positive integer" msgstr "Πρέπει να είναι θετικός ακέραιος" @@ -231,7 +231,7 @@ msgstr "Επιλογή" msgid "What level of permission this user will have" msgstr "Το επίπεδο δικαιωμάτων αυτού του χρήστη" -#: forms/account.py:48 forms/domain.py:224 +#: forms/account.py:48 forms/domain.py:249 msgid "Random password" msgstr "Τυχαίως κωδικός" @@ -263,8 +263,8 @@ msgstr "Ενεργοποιημένο" msgid "Only super administrators are allowed for this mode" msgstr "Μόνο σε super διαχειριστές επιτρέπεται αυτή η λειτουργία. " -#: forms/account.py:182 forms/account.py:184 forms/domain.py:141 -#: forms/domain.py:270 forms/domain.py:273 serializers.py:263 +#: forms/account.py:182 forms/account.py:184 forms/domain.py:166 +#: forms/domain.py:295 forms/domain.py:298 serializers.py:279 msgid "This field is required." msgstr "Αυτό το πεδίο απαιτείτε." @@ -284,27 +284,32 @@ msgstr "E-mail" msgid "Create an alias using the old address" msgstr "Δημιουργήστε ένα ψευδώνυμο χρησιμοποιώντας την παλιά διεύθυνση" -#: forms/account.py:233 templates/admin/account_detail.html:45 -#: templates/admin/domain_detail.html:49 +#: forms/account.py:233 forms/domain.py:45 +#: templates/admin/account_detail.html:45 templates/admin/domain_detail.html:49 msgid "Quota" msgstr "Quota" -#: forms/account.py:235 +#: forms/account.py:236 +#, fuzzy +#| msgid "" +#| "Quota in MB for this mailbox. Define a custom value or use domain's " +#| "default one. Leave empty to define an unlimited value (not allowed for " +#| "domain administrators)." msgid "" -"Quota in MB for this mailbox. Define a custom value or use domain's default " -"one. Leave empty to define an unlimited value (not allowed for domain " -"administrators)." +"Quota for this mailbox, can be expressed in KB, MB (default) or GB. Define a " +"custom value or use domain's default one. Leave empty to define an unlimited " +"value (not allowed for domain administrators)." msgstr "" "Quota σε ΜΒ για γραμματοκιβώτια. Ορίστε μια προσαρμοσμένη τιμή ή " "χρησιμοποιήστε την προεπιλεγμένη του τομέα. Αφήστε το κενό για να μη βάλετε " "όριο (δεν επιτρέπεται για διαχειριστές domain)." -#: forms/account.py:243 forms/domain.py:35 +#: forms/account.py:246 forms/domain.py:35 #: templates/admin/domain_headers.html:4 msgid "Alias(es)" msgstr "Ψευδώνυμο(μα) " -#: forms/account.py:246 +#: forms/account.py:249 msgid "" "Alias(es) of this mailbox. Indicate only one address per input, press ENTER " "to add a new input. To create a catchall alias, just enter the domain name " @@ -314,11 +319,11 @@ msgstr "" "πατήστε ENTER για να προσθέσετε επιπλέον. Για να δημιουργήσετε ένα catchall " "ψευδώνυμο, εισάγετε το όνομα τομέα (@domain.tld)." -#: forms/account.py:252 +#: forms/account.py:255 msgid "Sender addresses" msgstr "Διεύθυνση αποστολέα" -#: forms/account.py:255 +#: forms/account.py:258 msgid "" "Additional sender address(es) for this account. The user will be allowed to " "send emails using this address, even if it does not exist locally. Indicate " @@ -329,52 +334,52 @@ msgstr "" "ακόμη και εάν αυτή δεν υπάρχει τοπικά στον server. Εισάγετε μόνο μια " "διεύθυνση ανά γραμμή. Πιέστε ENTER για να εισάγεται επιπλέον διευθύνσεις. " -#: forms/account.py:310 forms/alias.py:92 models/mailbox.py:317 +#: forms/account.py:313 forms/alias.py:92 models/mailbox.py:317 msgid "Domain does not exist" msgstr "Το domain δεν υπάρχει" -#: forms/account.py:342 +#: forms/account.py:349 msgid "Local domain does not exist" msgstr "To τοπικό domain δεν υπάρχει" -#: forms/account.py:346 forms/account.py:354 forms/alias.py:95 +#: forms/account.py:353 forms/account.py:361 forms/alias.py:95 msgid "You don't have access to this domain" msgstr "Δεν έχετε πρόσβαση σε αυτό το domain" -#: forms/account.py:453 +#: forms/account.py:460 msgid "Domain(s)" msgstr "Domain(s)" -#: forms/account.py:455 +#: forms/account.py:462 msgid "Domain(s) that user administrates" msgstr "Τα domains που ο χρήστης διαχειρίζεται" -#: forms/account.py:501 forms/account.py:591 forms/domain.py:341 -#: forms/domain.py:412 +#: forms/account.py:508 forms/account.py:598 forms/domain.py:366 +#: forms/domain.py:437 msgid "General" msgstr "Γενικά" -#: forms/account.py:505 +#: forms/account.py:512 msgid "Profile" msgstr "Προφιλ" -#: forms/account.py:509 forms/account.py:597 +#: forms/account.py:516 forms/account.py:604 msgid "Mail" msgstr "Μήνυμα" -#: forms/account.py:512 +#: forms/account.py:519 msgid "Permissions" msgstr "Δικαιώματα" -#: forms/account.py:580 +#: forms/account.py:587 msgid "Account updated" msgstr "Ο λογαριασμός ενημερώθηκε" -#: forms/account.py:605 +#: forms/account.py:612 msgid "New account" msgstr "Νέος λογαριασμός" -#: forms/account.py:615 +#: forms/account.py:622 msgid "Account created" msgstr "Ο λογαριασμός δημιουργήθηκε" @@ -430,51 +435,73 @@ msgstr "" msgid "Key selector" msgstr "" -#: forms/domain.py:82 handlers.py:165 +#: forms/domain.py:48 models/domain.py:36 +#, fuzzy +#| msgid "" +#| "Default quota in MB applied to mailboxes. A value of 0 means no quota." +msgid "" +"Quota shared between mailboxes. Can be expressed in KB, MB (default) or GB. " +"A value of 0 means no quota." +msgstr "" +"Προκαθορισμένο quota σε MB που εφαρμόζεται στα γραμματοκιβώτια. Μια τιμή 0 " +"σημαίνει ότι δεν υπάρχει quota. " + +#: forms/domain.py:56 +#, fuzzy +#| msgid "" +#| "Default quota in MB applied to mailboxes. A value of 0 means no quota." +msgid "" +"Default quota applied to mailboxes. Can be expressed in KB, MB (default) or " +"GB. A value of 0 means no quota." +msgstr "" +"Προκαθορισμένο quota σε MB που εφαρμόζεται στα γραμματοκιβώτια. Μια τιμή 0 " +"σημαίνει ότι δεν υπάρχει quota. " + +#: forms/domain.py:98 handlers.py:165 msgid "domain alias" msgstr "Ψευδώνυμα (alias) domain " -#: forms/domain.py:85 forms/domain.py:152 forms/domain.py:160 +#: forms/domain.py:101 forms/domain.py:177 forms/domain.py:185 #, python-format msgid "A %s with this name already exists" msgstr "Το '%s' με αυτό το όνομα υπάρχει ήδη" -#: forms/domain.py:93 serializers.py:53 +#: forms/domain.py:109 serializers.py:56 msgid "No authorized MX record found for this domain" msgstr "Δεν υπάρχουν ΜΧ έγραφες για αυτό το domain " -#: forms/domain.py:105 +#: forms/domain.py:121 msgid "DKIM keys storage directory not configured" msgstr "" -#: forms/domain.py:126 serializers.py:63 +#: forms/domain.py:151 serializers.py:74 msgid "Cannot be greater than domain quota" msgstr "Δεν μπορεί να είναι μεγαλύτερο από το domain quota." -#: forms/domain.py:131 +#: forms/domain.py:156 msgid "You can't define an unlimited quota." msgstr "Δεν μπορείτε να ορίσετε ένα απεριόριστο quota." -#: forms/domain.py:152 forms/domain.py:157 +#: forms/domain.py:177 forms/domain.py:182 msgid "domain" msgstr "domain" -#: forms/domain.py:206 +#: forms/domain.py:231 msgid "Create a domain administrator" msgstr "Δημιουργία διαχειριστή domain" -#: forms/domain.py:209 +#: forms/domain.py:234 msgid "Automatically create an administrator for this domain" msgstr "Αυτόματη δημιουργία διαχειριστή για αυτό το domain" -#: forms/domain.py:214 templates/admin/domain_detail.html:121 +#: forms/domain.py:239 templates/admin/domain_detail.html:121 #: templates/admin/domain_headers.html:3 #: templates/admin/identity_headers.html:2 #: templates/admin/mx_domain_detail.html:9 msgid "Name" msgstr "Όνομα" -#: forms/domain.py:217 +#: forms/domain.py:242 msgid "" "The administrator's name. Don't include the domain's name here, it will be " "automatically appended." @@ -482,48 +509,48 @@ msgstr "" "Το όνομα του διαχειριστή. Μην συμπεριλάβετε το όνομα του domain, γιατί θα " "προσαρτηθεί αυτόματα στο τέλος." -#: forms/domain.py:227 +#: forms/domain.py:252 msgid "Generate a random password for the administrator." msgstr "Δημιουργήστε έναν τυχαίο κωδικό πρόσβασης για το διαχειριστή." -#: forms/domain.py:233 +#: forms/domain.py:258 msgid "With a mailbox" msgstr "Με ένα γραμματοκιβώτιο" -#: forms/domain.py:236 +#: forms/domain.py:261 msgid "Create a mailbox for the administrator." msgstr "Δημιουργήστε ένα γραμματοκιβώτιο για το διαχειριστή." -#: forms/domain.py:242 +#: forms/domain.py:267 msgid "Create aliases" msgstr "Δημιουργία Ψευδώνυμου" -#: forms/domain.py:245 +#: forms/domain.py:270 msgid "Automatically create standard aliases for this domain" msgstr "Δημιουργήστε αυτόματα standard ψευδώνυμα για αυτόν το domain" -#: forms/domain.py:261 +#: forms/domain.py:286 msgid "Invalid format" msgstr "Λάθος μορφοποίηση" -#: forms/domain.py:290 +#: forms/domain.py:315 #, python-format msgid "User '%s' already exists" msgstr "Ο χρήστης '%s' υπάρχει ήδη" -#: forms/domain.py:402 +#: forms/domain.py:427 msgid "Domain modified" msgstr "Το domain άλλαξε" -#: forms/domain.py:423 +#: forms/domain.py:448 msgid "Options" msgstr "Επιλογές" -#: forms/domain.py:431 +#: forms/domain.py:456 msgid "New domain" msgstr "Νέο domain" -#: forms/domain.py:444 +#: forms/domain.py:469 msgid "Domain created" msgstr "Το domain δημιουργήθηκε" @@ -727,12 +754,6 @@ msgstr "όνομα" msgid "The domain name" msgstr "Το όνομα του domain" -#: models/domain.py:36 -msgid "Quota in MB shared between mailboxes. A value of 0 means no quota." -msgstr "" -"Κοινόχρηστο quota σε MB μεταξύ γραμματοκιβωτίων. Μια τιμή 0 σημαίνει ότι δεν " -"υπάρχει quota. " - #: models/domain.py:44 msgid "Default quota in MB applied to mailboxes. A value of 0 means no quota." msgstr "" @@ -821,44 +842,44 @@ msgstr "Ένα quota απαιτείται " msgid "Domain quota exceeded" msgstr "Υπέρβαση του domain quota" -#: serializers.py:88 serializers.py:288 serializers.py:386 +#: serializers.py:99 serializers.py:304 serializers.py:402 msgid "Permission denied." msgstr "Η άδεια απορρίφθηκε." -#: serializers.py:134 +#: serializers.py:150 msgid "" "List of administered domains (resellers and domain administrators only)." msgstr "" "Λίστα διαχειριζόμενων domains (αφορά μόνο μεταπωλητές και διαχειριστές " "domain)" -#: serializers.py:238 +#: serializers.py:254 msgid "Not allowed for this role." msgstr "Δεν επιτρέπεται για αυτόν τον ρόλο." -#: serializers.py:250 +#: serializers.py:266 msgid "Must be equal to mailbox full_address" msgstr "Πρέπει να είναι ίσο με την full_address του γραμματοκιβωτίου" -#: serializers.py:275 +#: serializers.py:291 msgid "Local domain {} does not exist" msgstr "Το τοπικός domain {} δεν υπάρχει" -#: serializers.py:373 +#: serializers.py:389 msgid "A list of recipient" msgstr "Λίστα παραληπτών" -#: serializers.py:384 +#: serializers.py:400 msgid "Domain not found." msgstr "To domain δεν βρέθηκε." -#: serializers.py:433 +#: serializers.py:449 #, fuzzy #| msgid "You don't have access to this domain" msgid "You don't have access to this domain." msgstr "Δεν έχετε πρόσβαση σε αυτό το domain" -#: serializers.py:441 +#: serializers.py:457 #, fuzzy #| msgid "You don't have access to this domain" msgid "You don't have access to this mailbox." @@ -1026,11 +1047,8 @@ msgstr "Ψευδώνυμο γραμματοκιβωτίου " #: templates/admin/domain_detail.html:50 templates/admin/domain_detail.html:57 #: templates/admin/domain_detail.html:58 templates/admin/domain_detail.html:65 -#: templates/admin/domain_general_form.html:4 -#: templates/admin/domain_general_form.html:5 #: templates/admin/domains_quotas.html:11 -#: templates/admin/domains_quotas.html:12 templates/admin/mailform.html:7 -#: templates/admin/newdomainform.html:3 +#: templates/admin/domains_quotas.html:12 templates/admin/newdomainform.html:3 msgid "MB" msgstr "MB" @@ -1393,6 +1411,11 @@ msgstr "Εισαγωγή ταυτοτήτων" msgid "Forward updated" msgstr "Η προώθηση ενημερώθηκε" +#~ msgid "Quota in MB shared between mailboxes. A value of 0 means no quota." +#~ msgstr "" +#~ "Κοινόχρηστο quota σε MB μεταξύ γραμματοκιβωτίων. Μια τιμή 0 σημαίνει ότι " +#~ "δεν υπάρχει quota. " + #, fuzzy #~| msgid "No MX record found for this domain." #~ msgid "No DNS records found without MX for %s" diff --git a/modoboa/admin/locale/en/LC_MESSAGES/django.po b/modoboa/admin/locale/en/LC_MESSAGES/django.po index dd80b8b2e..20b9aa140 100644 --- a/modoboa/admin/locale/en/LC_MESSAGES/django.po +++ b/modoboa/admin/locale/en/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-10-17 09:25+0200\n" +"POT-Creation-Date: 2018-10-17 13:41+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -118,7 +118,7 @@ msgid "" "specified. A value of 0 means no quota." msgstr "" -#: app_settings.py:119 models/domain.py:41 +#: app_settings.py:119 forms/domain.py:53 models/domain.py:41 #: templates/admin/domain_detail.html:64 msgid "Default mailbox quota" msgstr "" @@ -153,7 +153,7 @@ msgstr "" msgid "Create an alias using the old address when a mailbox is renamed." msgstr "" -#: app_settings.py:196 app_settings.py:204 forms/account.py:332 +#: app_settings.py:196 app_settings.py:204 forms/account.py:339 msgid "Must be a positive integer" msgstr "" @@ -205,7 +205,7 @@ msgstr "" msgid "What level of permission this user will have" msgstr "" -#: forms/account.py:48 forms/domain.py:224 +#: forms/account.py:48 forms/domain.py:249 msgid "Random password" msgstr "" @@ -235,8 +235,8 @@ msgstr "" msgid "Only super administrators are allowed for this mode" msgstr "" -#: forms/account.py:182 forms/account.py:184 forms/domain.py:141 -#: forms/domain.py:270 forms/domain.py:273 serializers.py:263 +#: forms/account.py:182 forms/account.py:184 forms/domain.py:166 +#: forms/domain.py:295 forms/domain.py:298 serializers.py:279 msgid "This field is required." msgstr "" @@ -256,87 +256,87 @@ msgstr "" msgid "Create an alias using the old address" msgstr "" -#: forms/account.py:233 templates/admin/account_detail.html:45 -#: templates/admin/domain_detail.html:49 +#: forms/account.py:233 forms/domain.py:45 +#: templates/admin/account_detail.html:45 templates/admin/domain_detail.html:49 msgid "Quota" msgstr "" -#: forms/account.py:235 +#: forms/account.py:236 msgid "" -"Quota in MB for this mailbox. Define a custom value or use domain's default " -"one. Leave empty to define an unlimited value (not allowed for domain " -"administrators)." +"Quota for this mailbox, can be expressed in KB, MB (default) or GB. Define a " +"custom value or use domain's default one. Leave empty to define an unlimited " +"value (not allowed for domain administrators)." msgstr "" -#: forms/account.py:243 forms/domain.py:35 +#: forms/account.py:246 forms/domain.py:35 #: templates/admin/domain_headers.html:4 msgid "Alias(es)" msgstr "" -#: forms/account.py:246 +#: forms/account.py:249 msgid "" "Alias(es) of this mailbox. Indicate only one address per input, press ENTER " "to add a new input. To create a catchall alias, just enter the domain name " "(@domain.tld)." msgstr "" -#: forms/account.py:252 +#: forms/account.py:255 msgid "Sender addresses" msgstr "" -#: forms/account.py:255 +#: forms/account.py:258 msgid "" "Additional sender address(es) for this account. The user will be allowed to " "send emails using this address, even if it does not exist locally. Indicate " "one address per input. Press ENTER to add a new input." msgstr "" -#: forms/account.py:310 forms/alias.py:92 models/mailbox.py:317 +#: forms/account.py:313 forms/alias.py:92 models/mailbox.py:317 msgid "Domain does not exist" msgstr "" -#: forms/account.py:342 +#: forms/account.py:349 msgid "Local domain does not exist" msgstr "" -#: forms/account.py:346 forms/account.py:354 forms/alias.py:95 +#: forms/account.py:353 forms/account.py:361 forms/alias.py:95 msgid "You don't have access to this domain" msgstr "" -#: forms/account.py:453 +#: forms/account.py:460 msgid "Domain(s)" msgstr "" -#: forms/account.py:455 +#: forms/account.py:462 msgid "Domain(s) that user administrates" msgstr "" -#: forms/account.py:501 forms/account.py:591 forms/domain.py:341 -#: forms/domain.py:412 +#: forms/account.py:508 forms/account.py:598 forms/domain.py:366 +#: forms/domain.py:437 msgid "General" msgstr "" -#: forms/account.py:505 +#: forms/account.py:512 msgid "Profile" msgstr "" -#: forms/account.py:509 forms/account.py:597 +#: forms/account.py:516 forms/account.py:604 msgid "Mail" msgstr "" -#: forms/account.py:512 +#: forms/account.py:519 msgid "Permissions" msgstr "" -#: forms/account.py:580 +#: forms/account.py:587 msgid "Account updated" msgstr "" -#: forms/account.py:605 +#: forms/account.py:612 msgid "New account" msgstr "" -#: forms/account.py:615 +#: forms/account.py:622 msgid "Account created" msgstr "" @@ -386,98 +386,110 @@ msgstr "" msgid "Key selector" msgstr "" -#: forms/domain.py:82 handlers.py:165 +#: forms/domain.py:48 models/domain.py:36 +msgid "" +"Quota shared between mailboxes. Can be expressed in KB, MB (default) or GB. " +"A value of 0 means no quota." +msgstr "" + +#: forms/domain.py:56 +msgid "" +"Default quota applied to mailboxes. Can be expressed in KB, MB (default) or " +"GB. A value of 0 means no quota." +msgstr "" + +#: forms/domain.py:98 handlers.py:165 msgid "domain alias" msgstr "" -#: forms/domain.py:85 forms/domain.py:152 forms/domain.py:160 +#: forms/domain.py:101 forms/domain.py:177 forms/domain.py:185 #, python-format msgid "A %s with this name already exists" msgstr "" -#: forms/domain.py:93 serializers.py:53 +#: forms/domain.py:109 serializers.py:56 msgid "No authorized MX record found for this domain" msgstr "" -#: forms/domain.py:105 +#: forms/domain.py:121 msgid "DKIM keys storage directory not configured" msgstr "" -#: forms/domain.py:126 serializers.py:63 +#: forms/domain.py:151 serializers.py:74 msgid "Cannot be greater than domain quota" msgstr "" -#: forms/domain.py:131 +#: forms/domain.py:156 msgid "You can't define an unlimited quota." msgstr "" -#: forms/domain.py:152 forms/domain.py:157 +#: forms/domain.py:177 forms/domain.py:182 msgid "domain" msgstr "" -#: forms/domain.py:206 +#: forms/domain.py:231 msgid "Create a domain administrator" msgstr "" -#: forms/domain.py:209 +#: forms/domain.py:234 msgid "Automatically create an administrator for this domain" msgstr "" -#: forms/domain.py:214 templates/admin/domain_detail.html:121 +#: forms/domain.py:239 templates/admin/domain_detail.html:121 #: templates/admin/domain_headers.html:3 #: templates/admin/identity_headers.html:2 #: templates/admin/mx_domain_detail.html:9 msgid "Name" msgstr "" -#: forms/domain.py:217 +#: forms/domain.py:242 msgid "" "The administrator's name. Don't include the domain's name here, it will be " "automatically appended." msgstr "" -#: forms/domain.py:227 +#: forms/domain.py:252 msgid "Generate a random password for the administrator." msgstr "" -#: forms/domain.py:233 +#: forms/domain.py:258 msgid "With a mailbox" msgstr "" -#: forms/domain.py:236 +#: forms/domain.py:261 msgid "Create a mailbox for the administrator." msgstr "" -#: forms/domain.py:242 +#: forms/domain.py:267 msgid "Create aliases" msgstr "" -#: forms/domain.py:245 +#: forms/domain.py:270 msgid "Automatically create standard aliases for this domain" msgstr "" -#: forms/domain.py:261 +#: forms/domain.py:286 msgid "Invalid format" msgstr "" -#: forms/domain.py:290 +#: forms/domain.py:315 #, python-format msgid "User '%s' already exists" msgstr "" -#: forms/domain.py:402 +#: forms/domain.py:427 msgid "Domain modified" msgstr "" -#: forms/domain.py:423 +#: forms/domain.py:448 msgid "Options" msgstr "" -#: forms/domain.py:431 +#: forms/domain.py:456 msgid "New domain" msgstr "" -#: forms/domain.py:444 +#: forms/domain.py:469 msgid "Domain created" msgstr "" @@ -675,10 +687,6 @@ msgstr "" msgid "The domain name" msgstr "" -#: models/domain.py:36 -msgid "Quota in MB shared between mailboxes. A value of 0 means no quota." -msgstr "" - #: models/domain.py:44 msgid "Default quota in MB applied to mailboxes. A value of 0 means no quota." msgstr "" @@ -762,40 +770,40 @@ msgstr "" msgid "Domain quota exceeded" msgstr "" -#: serializers.py:88 serializers.py:288 serializers.py:386 +#: serializers.py:99 serializers.py:304 serializers.py:402 msgid "Permission denied." msgstr "" -#: serializers.py:134 +#: serializers.py:150 msgid "" "List of administered domains (resellers and domain administrators only)." msgstr "" -#: serializers.py:238 +#: serializers.py:254 msgid "Not allowed for this role." msgstr "" -#: serializers.py:250 +#: serializers.py:266 msgid "Must be equal to mailbox full_address" msgstr "" -#: serializers.py:275 +#: serializers.py:291 msgid "Local domain {} does not exist" msgstr "" -#: serializers.py:373 +#: serializers.py:389 msgid "A list of recipient" msgstr "" -#: serializers.py:384 +#: serializers.py:400 msgid "Domain not found." msgstr "" -#: serializers.py:433 +#: serializers.py:449 msgid "You don't have access to this domain." msgstr "" -#: serializers.py:441 +#: serializers.py:457 msgid "You don't have access to this mailbox." msgstr "" @@ -957,11 +965,8 @@ msgstr "" #: templates/admin/domain_detail.html:50 templates/admin/domain_detail.html:57 #: templates/admin/domain_detail.html:58 templates/admin/domain_detail.html:65 -#: templates/admin/domain_general_form.html:4 -#: templates/admin/domain_general_form.html:5 #: templates/admin/domains_quotas.html:11 -#: templates/admin/domains_quotas.html:12 templates/admin/mailform.html:7 -#: templates/admin/newdomainform.html:3 +#: templates/admin/domains_quotas.html:12 templates/admin/newdomainform.html:3 msgid "MB" msgstr "" diff --git a/modoboa/admin/locale/es/LC_MESSAGES/django.po b/modoboa/admin/locale/es/LC_MESSAGES/django.po index 8f5630a59..20b3ea2f1 100644 --- a/modoboa/admin/locale/es/LC_MESSAGES/django.po +++ b/modoboa/admin/locale/es/LC_MESSAGES/django.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: Modoboa\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-10-17 09:25+0200\n" +"POT-Creation-Date: 2018-10-17 13:41+0200\n" "PO-Revision-Date: 2017-06-28 00:48+0000\n" "Last-Translator: Evilham \n" "Language-Team: Spanish (http://www.transifex.com/tonio/modoboa/language/" @@ -127,7 +127,7 @@ msgstr "" "Cuota por defecto (en MB) que se aplica a la creación de nuevos dominios que " "no tuvieran un valor especificado. Un valor de 0 significa que no hay cuota." -#: app_settings.py:119 models/domain.py:41 +#: app_settings.py:119 forms/domain.py:53 models/domain.py:41 #: templates/admin/domain_detail.html:64 msgid "Default mailbox quota" msgstr "Cuota de mailbox por defecto" @@ -164,7 +164,7 @@ msgstr "" msgid "Create an alias using the old address when a mailbox is renamed." msgstr "" -#: app_settings.py:196 app_settings.py:204 forms/account.py:332 +#: app_settings.py:196 app_settings.py:204 forms/account.py:339 msgid "Must be a positive integer" msgstr "Debe ser un entero positivo" @@ -222,7 +222,7 @@ msgstr "Elija" msgid "What level of permission this user will have" msgstr "Qué nivel de permiso tendrá este usuario" -#: forms/account.py:48 forms/domain.py:224 +#: forms/account.py:48 forms/domain.py:249 #, fuzzy #| msgid "Random address" msgid "Random password" @@ -254,8 +254,8 @@ msgstr "Activado" msgid "Only super administrators are allowed for this mode" msgstr "Sólo se permiten superadministradores para este modo" -#: forms/account.py:182 forms/account.py:184 forms/domain.py:141 -#: forms/domain.py:270 forms/domain.py:273 serializers.py:263 +#: forms/account.py:182 forms/account.py:184 forms/domain.py:166 +#: forms/domain.py:295 forms/domain.py:298 serializers.py:279 msgid "This field is required." msgstr "Este campo es obligatorio." @@ -275,27 +275,32 @@ msgstr "Email" msgid "Create an alias using the old address" msgstr "" -#: forms/account.py:233 templates/admin/account_detail.html:45 -#: templates/admin/domain_detail.html:49 +#: forms/account.py:233 forms/domain.py:45 +#: templates/admin/account_detail.html:45 templates/admin/domain_detail.html:49 msgid "Quota" msgstr "Cuota" -#: forms/account.py:235 +#: forms/account.py:236 +#, fuzzy +#| msgid "" +#| "Quota in MB for this mailbox. Define a custom value or use domain's " +#| "default one. Leave empty to define an unlimited value (not allowed for " +#| "domain administrators)." msgid "" -"Quota in MB for this mailbox. Define a custom value or use domain's default " -"one. Leave empty to define an unlimited value (not allowed for domain " -"administrators)." +"Quota for this mailbox, can be expressed in KB, MB (default) or GB. Define a " +"custom value or use domain's default one. Leave empty to define an unlimited " +"value (not allowed for domain administrators)." msgstr "" "Cuota en MB para este mailbox. Defina un valor por defecto o use el del " "dominio por defecto. Déjelo vacío para definir un valor ilimitado (no " "permitido para los administradores del dominio)" -#: forms/account.py:243 forms/domain.py:35 +#: forms/account.py:246 forms/domain.py:35 #: templates/admin/domain_headers.html:4 msgid "Alias(es)" msgstr "Alias" -#: forms/account.py:246 +#: forms/account.py:249 msgid "" "Alias(es) of this mailbox. Indicate only one address per input, press ENTER " "to add a new input. To create a catchall alias, just enter the domain name " @@ -305,11 +310,11 @@ msgstr "" "ENTER para agregar una nueva entrada. Para crear un alias catchall, " "simplemente ingrese el nombre de dominio (@ domain.tld)." -#: forms/account.py:252 +#: forms/account.py:255 msgid "Sender addresses" msgstr "Direcciónes de remitente" -#: forms/account.py:255 +#: forms/account.py:258 msgid "" "Additional sender address(es) for this account. The user will be allowed to " "send emails using this address, even if it does not exist locally. Indicate " @@ -320,52 +325,52 @@ msgstr "" "exista localmente. Indique una dirección por entrada. Presione ENTER para " "agregar una nueva entrada." -#: forms/account.py:310 forms/alias.py:92 models/mailbox.py:317 +#: forms/account.py:313 forms/alias.py:92 models/mailbox.py:317 msgid "Domain does not exist" msgstr "El dominio no existe" -#: forms/account.py:342 +#: forms/account.py:349 msgid "Local domain does not exist" msgstr "El dominio no existe" -#: forms/account.py:346 forms/account.py:354 forms/alias.py:95 +#: forms/account.py:353 forms/account.py:361 forms/alias.py:95 msgid "You don't have access to this domain" msgstr "No tienes acceso a este dominio" -#: forms/account.py:453 +#: forms/account.py:460 msgid "Domain(s)" msgstr "Dominio(s)" -#: forms/account.py:455 +#: forms/account.py:462 msgid "Domain(s) that user administrates" msgstr "Dominio(s) que el usuario administra" -#: forms/account.py:501 forms/account.py:591 forms/domain.py:341 -#: forms/domain.py:412 +#: forms/account.py:508 forms/account.py:598 forms/domain.py:366 +#: forms/domain.py:437 msgid "General" msgstr "General" -#: forms/account.py:505 +#: forms/account.py:512 msgid "Profile" msgstr "" -#: forms/account.py:509 forms/account.py:597 +#: forms/account.py:516 forms/account.py:604 msgid "Mail" msgstr "Correo" -#: forms/account.py:512 +#: forms/account.py:519 msgid "Permissions" msgstr "Permisos" -#: forms/account.py:580 +#: forms/account.py:587 msgid "Account updated" msgstr "Cuenta actualizada" -#: forms/account.py:605 +#: forms/account.py:612 msgid "New account" msgstr "Nueva cuenta" -#: forms/account.py:615 +#: forms/account.py:622 msgid "Account created" msgstr "Cuenta creada" @@ -421,53 +426,73 @@ msgstr "" msgid "Key selector" msgstr "" -#: forms/domain.py:82 handlers.py:165 +#: forms/domain.py:48 models/domain.py:36 +#, fuzzy +#| msgid "" +#| "Default quota in MB applied to mailboxes. A value of 0 means no quota." +msgid "" +"Quota shared between mailboxes. Can be expressed in KB, MB (default) or GB. " +"A value of 0 means no quota." +msgstr "" +"Cuota de mailbox predeterminda en MB. Un valor de 0 significa ningún limite." + +#: forms/domain.py:56 +#, fuzzy +#| msgid "" +#| "Default quota in MB applied to mailboxes. A value of 0 means no quota." +msgid "" +"Default quota applied to mailboxes. Can be expressed in KB, MB (default) or " +"GB. A value of 0 means no quota." +msgstr "" +"Cuota de mailbox predeterminda en MB. Un valor de 0 significa ningún limite." + +#: forms/domain.py:98 handlers.py:165 msgid "domain alias" msgstr "alias del dominio" -#: forms/domain.py:85 forms/domain.py:152 forms/domain.py:160 +#: forms/domain.py:101 forms/domain.py:177 forms/domain.py:185 #, python-format msgid "A %s with this name already exists" msgstr "Ya existe un %s con ese nombre" -#: forms/domain.py:93 serializers.py:53 +#: forms/domain.py:109 serializers.py:56 #, fuzzy #| msgid "No MX record found for this domain." msgid "No authorized MX record found for this domain" msgstr "No se encontró ningún registro MX para este dominio." -#: forms/domain.py:105 +#: forms/domain.py:121 msgid "DKIM keys storage directory not configured" msgstr "" -#: forms/domain.py:126 serializers.py:63 +#: forms/domain.py:151 serializers.py:74 msgid "Cannot be greater than domain quota" msgstr "No puede superar la cuota de dominio" -#: forms/domain.py:131 +#: forms/domain.py:156 msgid "You can't define an unlimited quota." msgstr "No puede definir una cuota ilimitada." -#: forms/domain.py:152 forms/domain.py:157 +#: forms/domain.py:177 forms/domain.py:182 msgid "domain" msgstr "dominio" -#: forms/domain.py:206 +#: forms/domain.py:231 msgid "Create a domain administrator" msgstr "Crear un administrador del dominio" -#: forms/domain.py:209 +#: forms/domain.py:234 msgid "Automatically create an administrator for this domain" msgstr "Automáticamente crear una administrador para este dominio" -#: forms/domain.py:214 templates/admin/domain_detail.html:121 +#: forms/domain.py:239 templates/admin/domain_detail.html:121 #: templates/admin/domain_headers.html:3 #: templates/admin/identity_headers.html:2 #: templates/admin/mx_domain_detail.html:9 msgid "Name" msgstr "Nombre" -#: forms/domain.py:217 +#: forms/domain.py:242 msgid "" "The administrator's name. Don't include the domain's name here, it will be " "automatically appended." @@ -475,50 +500,50 @@ msgstr "" "El nombre del administrador. No incluya el nombre del dominio aquí, será " "añadido automáticamente." -#: forms/domain.py:227 +#: forms/domain.py:252 #, fuzzy #| msgid "Create a mailbox for the administrator." msgid "Generate a random password for the administrator." msgstr "Crear mailbox para el administrador." -#: forms/domain.py:233 +#: forms/domain.py:258 msgid "With a mailbox" msgstr "Con una mailbox" -#: forms/domain.py:236 +#: forms/domain.py:261 msgid "Create a mailbox for the administrator." msgstr "Crear mailbox para el administrador." -#: forms/domain.py:242 +#: forms/domain.py:267 msgid "Create aliases" msgstr "Crear alias" -#: forms/domain.py:245 +#: forms/domain.py:270 msgid "Automatically create standard aliases for this domain" msgstr "Automáticamente crear alias estándar para este dominio" -#: forms/domain.py:261 +#: forms/domain.py:286 msgid "Invalid format" msgstr "Formato inválido" -#: forms/domain.py:290 +#: forms/domain.py:315 #, python-format msgid "User '%s' already exists" msgstr "El usuario '%s' ya existe" -#: forms/domain.py:402 +#: forms/domain.py:427 msgid "Domain modified" msgstr "Dominio modificado" -#: forms/domain.py:423 +#: forms/domain.py:448 msgid "Options" msgstr "Opciones" -#: forms/domain.py:431 +#: forms/domain.py:456 msgid "New domain" msgstr "Nuevo dominio" -#: forms/domain.py:444 +#: forms/domain.py:469 msgid "Domain created" msgstr "Dominio creado" @@ -722,12 +747,6 @@ msgstr "nombre" msgid "The domain name" msgstr "Nombre del dominio" -#: models/domain.py:36 -msgid "Quota in MB shared between mailboxes. A value of 0 means no quota." -msgstr "" -"La cuota compartida entre las mailboxes en MB. Un valor de 0 significa " -"ningún limite." - #: models/domain.py:44 msgid "Default quota in MB applied to mailboxes. A value of 0 means no quota." msgstr "" @@ -814,44 +833,44 @@ msgstr "Una cuota es obligatoria" msgid "Domain quota exceeded" msgstr "Cuota de dominio excedida" -#: serializers.py:88 serializers.py:288 serializers.py:386 +#: serializers.py:99 serializers.py:304 serializers.py:402 msgid "Permission denied." msgstr "Permiso denegado." -#: serializers.py:134 +#: serializers.py:150 msgid "" "List of administered domains (resellers and domain administrators only)." msgstr "" "Lista de dominios administrados (sólo distribuidores y administradores de " "dominio)." -#: serializers.py:238 +#: serializers.py:254 msgid "Not allowed for this role." msgstr "No estás autorizado para esta función." -#: serializers.py:250 +#: serializers.py:266 msgid "Must be equal to mailbox full_address" msgstr "Debe ser igual a la dirección completa del buzón" -#: serializers.py:275 +#: serializers.py:291 msgid "Local domain {} does not exist" msgstr "El dominio local {} no existe" -#: serializers.py:373 +#: serializers.py:389 msgid "A list of recipient" msgstr "Lista de destinatarios" -#: serializers.py:384 +#: serializers.py:400 msgid "Domain not found." msgstr "Dominio no encontrado." -#: serializers.py:433 +#: serializers.py:449 #, fuzzy #| msgid "You don't have access to this domain" msgid "You don't have access to this domain." msgstr "No tienes acceso a este dominio" -#: serializers.py:441 +#: serializers.py:457 #, fuzzy #| msgid "You don't have access to this domain" msgid "You don't have access to this mailbox." @@ -1019,11 +1038,8 @@ msgstr "Alias del mailbox" #: templates/admin/domain_detail.html:50 templates/admin/domain_detail.html:57 #: templates/admin/domain_detail.html:58 templates/admin/domain_detail.html:65 -#: templates/admin/domain_general_form.html:4 -#: templates/admin/domain_general_form.html:5 #: templates/admin/domains_quotas.html:11 -#: templates/admin/domains_quotas.html:12 templates/admin/mailform.html:7 -#: templates/admin/newdomainform.html:3 +#: templates/admin/domains_quotas.html:12 templates/admin/newdomainform.html:3 msgid "MB" msgstr "MB" @@ -1388,6 +1404,11 @@ msgstr "Importar identidades" msgid "Forward updated" msgstr "Reenvío actualizado" +#~ msgid "Quota in MB shared between mailboxes. A value of 0 means no quota." +#~ msgstr "" +#~ "La cuota compartida entre las mailboxes en MB. Un valor de 0 significa " +#~ "ningún limite." + #, fuzzy #~| msgid "No MX record found for this domain." #~ msgid "No DNS records found without MX for %s" diff --git a/modoboa/admin/locale/fr/LC_MESSAGES/django.po b/modoboa/admin/locale/fr/LC_MESSAGES/django.po index cd15cf544..2d87982c9 100644 --- a/modoboa/admin/locale/fr/LC_MESSAGES/django.po +++ b/modoboa/admin/locale/fr/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Modoboa\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-10-17 09:25+0200\n" +"POT-Creation-Date: 2018-10-17 13:41+0200\n" "PO-Revision-Date: 2018-01-25 09:18+0100\n" "Last-Translator: Antoine Nguyen \n" "Language-Team: French (http://www.transifex.com/tonio/modoboa/language/fr/)\n" @@ -133,7 +133,7 @@ msgstr "" "Quota par défaut (en Mo) appliqué aux domaines fraichement créés et ne " "spécifiant pas de valeur. 0 signifie qu'aucun quota ne sera appliqué." -#: app_settings.py:119 models/domain.py:41 +#: app_settings.py:119 forms/domain.py:53 models/domain.py:41 #: templates/admin/domain_detail.html:64 msgid "Default mailbox quota" msgstr "Quota par défaut pour une boîte aux lettres" @@ -176,7 +176,7 @@ msgstr "" "Créer un alias en utilisant l'ancienne adresse quand une boite aux lettres " "est renommée." -#: app_settings.py:196 app_settings.py:204 forms/account.py:332 +#: app_settings.py:196 app_settings.py:204 forms/account.py:339 msgid "Must be a positive integer" msgstr "Doit être un entier positif" @@ -231,7 +231,7 @@ msgstr "Choisir" msgid "What level of permission this user will have" msgstr "Quel niveau de permission cet utilisateur aura" -#: forms/account.py:48 forms/domain.py:224 +#: forms/account.py:48 forms/domain.py:249 msgid "Random password" msgstr "Mot de passe aléatoire" @@ -263,8 +263,8 @@ msgstr "Activé" msgid "Only super administrators are allowed for this mode" msgstr "Seuls les super administrateurs sont autorisés pour ce mode" -#: forms/account.py:182 forms/account.py:184 forms/domain.py:141 -#: forms/domain.py:270 forms/domain.py:273 serializers.py:263 +#: forms/account.py:182 forms/account.py:184 forms/domain.py:166 +#: forms/domain.py:295 forms/domain.py:298 serializers.py:279 msgid "This field is required." msgstr "Ce champ est requis." @@ -284,27 +284,28 @@ msgstr "E-mail" msgid "Create an alias using the old address" msgstr "Créer un alias en utilisant l'ancienne adresse" -#: forms/account.py:233 templates/admin/account_detail.html:45 -#: templates/admin/domain_detail.html:49 +#: forms/account.py:233 forms/domain.py:45 +#: templates/admin/account_detail.html:45 templates/admin/domain_detail.html:49 msgid "Quota" msgstr "Quota" -#: forms/account.py:235 +#: forms/account.py:236 msgid "" -"Quota in MB for this mailbox. Define a custom value or use domain's default " -"one. Leave empty to define an unlimited value (not allowed for domain " -"administrators)." +"Quota for this mailbox, can be expressed in KB, MB (default) or GB. Define a " +"custom value or use domain's default one. Leave empty to define an unlimited " +"value (not allowed for domain administrators)." msgstr "" -"Quota en Mo pour cette boite. Définir une valeur spécifique ou utiliser la " -"valeur par défaut du domaine. Laisser vide pour définir une valeur illimitée " -"(interdit pour les admins. de domaine)." +"Quota pour cette boite. Peut être exprimé en Ko, Mo (défaut) ou Go. Définir " +"une valeur spécifique ou utiliser la valeur par défaut du domaine. Laisser " +"vide pour définir une valeur illimitée (interdit pour les admins. de " +"domaine)." -#: forms/account.py:243 forms/domain.py:35 +#: forms/account.py:246 forms/domain.py:35 #: templates/admin/domain_headers.html:4 msgid "Alias(es)" msgstr "Alias" -#: forms/account.py:246 +#: forms/account.py:249 msgid "" "Alias(es) of this mailbox. Indicate only one address per input, press ENTER " "to add a new input. To create a catchall alias, just enter the domain name " @@ -314,11 +315,11 @@ msgstr "" "sur ENTREE pour ajouter un nouveau champ. Pour créer un alias 'fourre-tout', " "entrer seulement le nom du domaine (@domain.tld)." -#: forms/account.py:252 +#: forms/account.py:255 msgid "Sender addresses" msgstr "Adresses d'envoi" -#: forms/account.py:255 +#: forms/account.py:258 msgid "" "Additional sender address(es) for this account. The user will be allowed to " "send emails using this address, even if it does not exist locally. Indicate " @@ -329,52 +330,52 @@ msgstr "" "même si elle(s) n'existe(nt) pas localement. Indiquer une adresse par champ. " "Appuyer sur ENTREE pour ajouter un nouveau champ." -#: forms/account.py:310 forms/alias.py:92 models/mailbox.py:317 +#: forms/account.py:313 forms/alias.py:92 models/mailbox.py:317 msgid "Domain does not exist" msgstr "Domaine inexistant" -#: forms/account.py:342 +#: forms/account.py:349 msgid "Local domain does not exist" msgstr "Le domaine local n'existe pas" -#: forms/account.py:346 forms/account.py:354 forms/alias.py:95 +#: forms/account.py:353 forms/account.py:361 forms/alias.py:95 msgid "You don't have access to this domain" msgstr "Vous n'avez pas accès à ce domaine" -#: forms/account.py:453 +#: forms/account.py:460 msgid "Domain(s)" msgstr "Domaine(s)" -#: forms/account.py:455 +#: forms/account.py:462 msgid "Domain(s) that user administrates" msgstr "Domaine(s) que cet utilisateur administre" -#: forms/account.py:501 forms/account.py:591 forms/domain.py:341 -#: forms/domain.py:412 +#: forms/account.py:508 forms/account.py:598 forms/domain.py:366 +#: forms/domain.py:437 msgid "General" msgstr "Général" -#: forms/account.py:505 +#: forms/account.py:512 msgid "Profile" msgstr "Profil" -#: forms/account.py:509 forms/account.py:597 +#: forms/account.py:516 forms/account.py:604 msgid "Mail" msgstr "Courrier" -#: forms/account.py:512 +#: forms/account.py:519 msgid "Permissions" msgstr "Permissions" -#: forms/account.py:580 +#: forms/account.py:587 msgid "Account updated" msgstr "Compte mis à jour" -#: forms/account.py:605 +#: forms/account.py:612 msgid "New account" msgstr "Nouveau compte" -#: forms/account.py:615 +#: forms/account.py:622 msgid "Account created" msgstr "Compte créé" @@ -430,51 +431,67 @@ msgstr "" msgid "Key selector" msgstr "Sélecteur de clé" -#: forms/domain.py:82 handlers.py:165 +#: forms/domain.py:48 models/domain.py:36 +msgid "" +"Quota shared between mailboxes. Can be expressed in KB, MB (default) or GB. " +"A value of 0 means no quota." +msgstr "" +"Quota partagé entre les boîtes aux lettres. Peut être exprimé en Ko, " +"Mo (défaut) ou Go. Une valeur à 0 signifie pas de quota." + +#: forms/domain.py:56 +msgid "" +"Default quota applied to mailboxes. Can be expressed in KB, MB (default) or " +"GB. A value of 0 means no quota." +msgstr "" +"Quota par défaut appliqué aux boîtes aux lettres. Peut être exprimé en Ko, " +"Mo (défaut) ou Go. Une valeur à 0 signifie pas de quota." + +#: forms/domain.py:98 handlers.py:165 msgid "domain alias" msgstr "alias de domaine" -#: forms/domain.py:85 forms/domain.py:152 forms/domain.py:160 +#: forms/domain.py:101 forms/domain.py:177 forms/domain.py:185 #, python-format msgid "A %s with this name already exists" msgstr "Un %s de ce nom existe déjà" -#: forms/domain.py:93 serializers.py:53 +#: forms/domain.py:109 serializers.py:56 msgid "No authorized MX record found for this domain" msgstr "Aucun enregistrement MX autorisé trouvé pour ce domaine" -#: forms/domain.py:105 +#: forms/domain.py:121 msgid "DKIM keys storage directory not configured" msgstr "Répertoire de stockage des clés DKIM non configuré" -#: forms/domain.py:126 serializers.py:63 +#: forms/domain.py:151 serializers.py:74 msgid "Cannot be greater than domain quota" msgstr "Ne peut pas être supérieur au quota du domaine" -#: forms/domain.py:131 +#: forms/domain.py:156 msgid "You can't define an unlimited quota." msgstr "Vous ne pouvez pas définir de quota illimité" -#: forms/domain.py:152 forms/domain.py:157 +#: forms/domain.py:177 forms/domain.py:182 msgid "domain" msgstr "domaine" -#: forms/domain.py:206 +#: forms/domain.py:231 msgid "Create a domain administrator" msgstr "Créer un administrateur de domaine" -#: forms/domain.py:209 +#: forms/domain.py:234 msgid "Automatically create an administrator for this domain" msgstr "Créer automatiquement un administrateur pour ce domaine" -#: forms/domain.py:214 templates/admin/domain_detail.html:121 +#: forms/domain.py:239 templates/admin/domain_detail.html:121 #: templates/admin/domain_headers.html:3 #: templates/admin/identity_headers.html:2 #: templates/admin/mx_domain_detail.html:9 msgid "Name" msgstr "Nom" -#: forms/domain.py:217 +#: forms/domain.py:242 msgid "" "The administrator's name. Don't include the domain's name here, it will be " "automatically appended." @@ -482,48 +499,48 @@ msgstr "" "Le nom de l'administrateur. Ne pas include un nom de domaine ici, il sera " "ajouté automatiquement." -#: forms/domain.py:227 +#: forms/domain.py:252 msgid "Generate a random password for the administrator." msgstr "Générer un mot de passe aléatoire pour cet administrateur." -#: forms/domain.py:233 +#: forms/domain.py:258 msgid "With a mailbox" msgstr "Avec une boite aux lettres" -#: forms/domain.py:236 +#: forms/domain.py:261 msgid "Create a mailbox for the administrator." msgstr "Créer une boite aux lettres pour l'administrateur" -#: forms/domain.py:242 +#: forms/domain.py:267 msgid "Create aliases" msgstr "Créer des alias" -#: forms/domain.py:245 +#: forms/domain.py:270 msgid "Automatically create standard aliases for this domain" msgstr "Créer automatiquement des alias standard pour ce domaine" -#: forms/domain.py:261 +#: forms/domain.py:286 msgid "Invalid format" msgstr "Format invalide" -#: forms/domain.py:290 +#: forms/domain.py:315 #, python-format msgid "User '%s' already exists" msgstr "L'utilisateur '%s' existe déjà" -#: forms/domain.py:402 +#: forms/domain.py:427 msgid "Domain modified" msgstr "Domaine modifié" -#: forms/domain.py:423 +#: forms/domain.py:448 msgid "Options" msgstr "Options" -#: forms/domain.py:431 +#: forms/domain.py:456 msgid "New domain" msgstr "Nouveau domaine" -#: forms/domain.py:444 +#: forms/domain.py:469 msgid "Domain created" msgstr "Domaine créé" @@ -723,12 +740,6 @@ msgstr "Nom" msgid "The domain name" msgstr "Le nom du domaine" -#: models/domain.py:36 -msgid "Quota in MB shared between mailboxes. A value of 0 means no quota." -msgstr "" -"Quota en Mo partagé entre les boîtes aux lettres. Une valeur à 0 signifie " -"pas de quota." - #: models/domain.py:44 msgid "Default quota in MB applied to mailboxes. A value of 0 means no quota." msgstr "" @@ -819,42 +830,42 @@ msgstr "Un quota est requis" msgid "Domain quota exceeded" msgstr "Quota du domaine dépassé" -#: serializers.py:88 serializers.py:288 serializers.py:386 +#: serializers.py:99 serializers.py:304 serializers.py:402 msgid "Permission denied." msgstr "Permission refusée." -#: serializers.py:134 +#: serializers.py:150 msgid "" "List of administered domains (resellers and domain administrators only)." msgstr "" "Liste des domaines administrés (revendeurs et administrateurs de domaine " "seulement)." -#: serializers.py:238 +#: serializers.py:254 msgid "Not allowed for this role." msgstr "Non autorisé pour ce rôle." -#: serializers.py:250 +#: serializers.py:266 msgid "Must be equal to mailbox full_address" msgstr "Doit être égale au champ full_address dans mailbox" -#: serializers.py:275 +#: serializers.py:291 msgid "Local domain {} does not exist" msgstr "Le domaine local {} n'existe pas" -#: serializers.py:373 +#: serializers.py:389 msgid "A list of recipient" msgstr "Une liste de destinataire" -#: serializers.py:384 +#: serializers.py:400 msgid "Domain not found." msgstr "Domaine introuvable." -#: serializers.py:433 +#: serializers.py:449 msgid "You don't have access to this domain." msgstr "Vous n'avez pas accès à ce domaine." -#: serializers.py:441 +#: serializers.py:457 msgid "You don't have access to this mailbox." msgstr "Vous n'avez pas accès à cette boîtes aux lettres." @@ -1016,11 +1027,8 @@ msgstr "Alias de boite." #: templates/admin/domain_detail.html:50 templates/admin/domain_detail.html:57 #: templates/admin/domain_detail.html:58 templates/admin/domain_detail.html:65 -#: templates/admin/domain_general_form.html:4 -#: templates/admin/domain_general_form.html:5 #: templates/admin/domains_quotas.html:11 -#: templates/admin/domains_quotas.html:12 templates/admin/mailform.html:7 -#: templates/admin/newdomainform.html:3 +#: templates/admin/domains_quotas.html:12 templates/admin/newdomainform.html:3 msgid "MB" msgstr "Mo" @@ -1376,3 +1384,8 @@ msgstr "Importer des identités" #: views/user.py:40 msgid "Forward updated" msgstr "Transfert mis à jour" + +#~ msgid "Quota in MB shared between mailboxes. A value of 0 means no quota." +#~ msgstr "" +#~ "Quota en Mo partagé entre les boîtes aux lettres. Une valeur à 0 signifie " +#~ "pas de quota." diff --git a/modoboa/admin/locale/it/LC_MESSAGES/django.po b/modoboa/admin/locale/it/LC_MESSAGES/django.po index 4e2f6a324..956d9b219 100644 --- a/modoboa/admin/locale/it/LC_MESSAGES/django.po +++ b/modoboa/admin/locale/it/LC_MESSAGES/django.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: Modoboa\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-10-17 09:25+0200\n" +"POT-Creation-Date: 2018-10-17 13:41+0200\n" "PO-Revision-Date: 2015-10-11 11:48+0000\n" "Last-Translator: Rocco \n" "Language-Team: Italian (http://www.transifex.com/tonio/modoboa/language/" @@ -125,7 +125,7 @@ msgstr "" "Quota predefinita (in MB) applicata ai nuovi domini che non la specificano. " "Un valore 0 implica nessuna quota." -#: app_settings.py:119 models/domain.py:41 +#: app_settings.py:119 forms/domain.py:53 models/domain.py:41 #: templates/admin/domain_detail.html:64 #, fuzzy #| msgid "Default domain quota" @@ -171,7 +171,7 @@ msgstr "" msgid "Create an alias using the old address when a mailbox is renamed." msgstr "" -#: app_settings.py:196 app_settings.py:204 forms/account.py:332 +#: app_settings.py:196 app_settings.py:204 forms/account.py:339 msgid "Must be a positive integer" msgstr "Dev'essere un intero positivo" @@ -229,7 +229,7 @@ msgstr "Scegli" msgid "What level of permission this user will have" msgstr "Il livello di permessi che avrà questo utente" -#: forms/account.py:48 forms/domain.py:224 +#: forms/account.py:48 forms/domain.py:249 #, fuzzy #| msgid "Invalid address" msgid "Random password" @@ -262,8 +262,8 @@ msgstr "Abilitato" msgid "Only super administrators are allowed for this mode" msgstr "Solo i super amministratori possono operare in questa modalità" -#: forms/account.py:182 forms/account.py:184 forms/domain.py:141 -#: forms/domain.py:270 forms/domain.py:273 serializers.py:263 +#: forms/account.py:182 forms/account.py:184 forms/domain.py:166 +#: forms/domain.py:295 forms/domain.py:298 serializers.py:279 #, fuzzy #| msgid "A mailbox is required" msgid "This field is required." @@ -285,27 +285,32 @@ msgstr "E-mail" msgid "Create an alias using the old address" msgstr "" -#: forms/account.py:233 templates/admin/account_detail.html:45 -#: templates/admin/domain_detail.html:49 +#: forms/account.py:233 forms/domain.py:45 +#: templates/admin/account_detail.html:45 templates/admin/domain_detail.html:49 msgid "Quota" msgstr "Quota" -#: forms/account.py:235 +#: forms/account.py:236 +#, fuzzy +#| msgid "" +#| "Quota in MB for this mailbox. Define a custom value or use domain's " +#| "default one. Leave empty to define an unlimited value (not allowed for " +#| "domain administrators)." msgid "" -"Quota in MB for this mailbox. Define a custom value or use domain's default " -"one. Leave empty to define an unlimited value (not allowed for domain " -"administrators)." +"Quota for this mailbox, can be expressed in KB, MB (default) or GB. Define a " +"custom value or use domain's default one. Leave empty to define an unlimited " +"value (not allowed for domain administrators)." msgstr "" "Quota in MB per questo account. Stabilire un valore personalizzato o usare " "quello predefinito. Lasciare vuoto per non impostare limiti (non consentito " "per gli amministratori di dominio)." -#: forms/account.py:243 forms/domain.py:35 +#: forms/account.py:246 forms/domain.py:35 #: templates/admin/domain_headers.html:4 msgid "Alias(es)" msgstr "Alias" -#: forms/account.py:246 +#: forms/account.py:249 #, fuzzy #| msgid "" #| "Alias(es) of this mailbox. Indicate only one address per input, press " @@ -320,13 +325,13 @@ msgstr "" "premere INVIO per aggiungere un nuovo elemento. Utilizzare il carattere '*' " "per creare un alias 'prenditutto' (p.es.: *@dominio.org)." -#: forms/account.py:252 +#: forms/account.py:255 #, fuzzy #| msgid "Invalid address" msgid "Sender addresses" msgstr "Indirizzo non valido" -#: forms/account.py:255 +#: forms/account.py:258 #, fuzzy #| msgid "" #| "Addresses this alias will point to. Indicate only one address per input, " @@ -339,54 +344,54 @@ msgstr "" "Indirizzi verso il quale questo alias punterà . Indicare un solo indirizzo " "per ogni ingresso , premere INVIO per aggiungere un nuovo input ." -#: forms/account.py:310 forms/alias.py:92 models/mailbox.py:317 +#: forms/account.py:313 forms/alias.py:92 models/mailbox.py:317 msgid "Domain does not exist" msgstr "Il dominio non esiste" -#: forms/account.py:342 +#: forms/account.py:349 #, fuzzy #| msgid "Domain does not exist" msgid "Local domain does not exist" msgstr "Il dominio non esiste" -#: forms/account.py:346 forms/account.py:354 forms/alias.py:95 +#: forms/account.py:353 forms/account.py:361 forms/alias.py:95 msgid "You don't have access to this domain" msgstr "Non hai accesso a questo dominio" -#: forms/account.py:453 +#: forms/account.py:460 msgid "Domain(s)" msgstr "Dominio(i)" -#: forms/account.py:455 +#: forms/account.py:462 msgid "Domain(s) that user administrates" msgstr "Dominio(i) amministrato(i) dall'utente" -#: forms/account.py:501 forms/account.py:591 forms/domain.py:341 -#: forms/domain.py:412 +#: forms/account.py:508 forms/account.py:598 forms/domain.py:366 +#: forms/domain.py:437 msgid "General" msgstr "Generale" -#: forms/account.py:505 +#: forms/account.py:512 msgid "Profile" msgstr "" -#: forms/account.py:509 forms/account.py:597 +#: forms/account.py:516 forms/account.py:604 msgid "Mail" msgstr "Posta" -#: forms/account.py:512 +#: forms/account.py:519 msgid "Permissions" msgstr "Permessi" -#: forms/account.py:580 +#: forms/account.py:587 msgid "Account updated" msgstr "Account aggiornato" -#: forms/account.py:605 +#: forms/account.py:612 msgid "New account" msgstr "Nuovo account" -#: forms/account.py:615 +#: forms/account.py:622 msgid "Account created" msgstr "Account creato" @@ -446,51 +451,75 @@ msgstr "" msgid "Key selector" msgstr "" -#: forms/domain.py:82 handlers.py:165 +#: forms/domain.py:48 models/domain.py:36 +#, fuzzy +#| msgid "" +#| "Default quota (in MB) applied to freshly created domains with no value " +#| "specified. A value of 0 means no quota." +msgid "" +"Quota shared between mailboxes. Can be expressed in KB, MB (default) or GB. " +"A value of 0 means no quota." +msgstr "" +"Quota predefinita (in MB) applicata ai nuovi domini che non la specificano. " +"Un valore 0 implica nessuna quota." + +#: forms/domain.py:56 +#, fuzzy +#| msgid "" +#| "Default quota (in MB) applied to freshly created domains with no value " +#| "specified. A value of 0 means no quota." +msgid "" +"Default quota applied to mailboxes. Can be expressed in KB, MB (default) or " +"GB. A value of 0 means no quota." +msgstr "" +"Quota predefinita (in MB) applicata ai nuovi domini che non la specificano. " +"Un valore 0 implica nessuna quota." + +#: forms/domain.py:98 handlers.py:165 msgid "domain alias" msgstr "alias del dominio" -#: forms/domain.py:85 forms/domain.py:152 forms/domain.py:160 +#: forms/domain.py:101 forms/domain.py:177 forms/domain.py:185 #, python-format msgid "A %s with this name already exists" msgstr "Un %s con questo nome esiste già" -#: forms/domain.py:93 serializers.py:53 +#: forms/domain.py:109 serializers.py:56 msgid "No authorized MX record found for this domain" msgstr "" -#: forms/domain.py:105 +#: forms/domain.py:121 msgid "DKIM keys storage directory not configured" msgstr "" -#: forms/domain.py:126 serializers.py:63 +#: forms/domain.py:151 serializers.py:74 msgid "Cannot be greater than domain quota" msgstr "" -#: forms/domain.py:131 +#: forms/domain.py:156 msgid "You can't define an unlimited quota." msgstr "" -#: forms/domain.py:152 forms/domain.py:157 +#: forms/domain.py:177 forms/domain.py:182 msgid "domain" msgstr "dominio" -#: forms/domain.py:206 +#: forms/domain.py:231 msgid "Create a domain administrator" msgstr "Crea un amministratore di dominio" -#: forms/domain.py:209 +#: forms/domain.py:234 msgid "Automatically create an administrator for this domain" msgstr "Crea automaticamente un amministratore per questo dominio" -#: forms/domain.py:214 templates/admin/domain_detail.html:121 +#: forms/domain.py:239 templates/admin/domain_detail.html:121 #: templates/admin/domain_headers.html:3 #: templates/admin/identity_headers.html:2 #: templates/admin/mx_domain_detail.html:9 msgid "Name" msgstr "Nome" -#: forms/domain.py:217 +#: forms/domain.py:242 msgid "" "The administrator's name. Don't include the domain's name here, it will be " "automatically appended." @@ -498,52 +527,52 @@ msgstr "" "Il nome dell'amministratore. Non includere il nome del dominio, verrà " "aggiunto automaticamente." -#: forms/domain.py:227 +#: forms/domain.py:252 #, fuzzy #| msgid "Create a domain administrator" msgid "Generate a random password for the administrator." msgstr "Crea un amministratore di dominio" -#: forms/domain.py:233 +#: forms/domain.py:258 msgid "With a mailbox" msgstr "" -#: forms/domain.py:236 +#: forms/domain.py:261 #, fuzzy #| msgid "Create a domain administrator" msgid "Create a mailbox for the administrator." msgstr "Crea un amministratore di dominio" -#: forms/domain.py:242 +#: forms/domain.py:267 msgid "Create aliases" msgstr "Crea alias" -#: forms/domain.py:245 +#: forms/domain.py:270 msgid "Automatically create standard aliases for this domain" msgstr "Crea automaticamente gli alias standard per questo dominio" -#: forms/domain.py:261 +#: forms/domain.py:286 msgid "Invalid format" msgstr "Formato non valido" -#: forms/domain.py:290 +#: forms/domain.py:315 #, python-format msgid "User '%s' already exists" msgstr "L'utente '%s' esiste già" -#: forms/domain.py:402 +#: forms/domain.py:427 msgid "Domain modified" msgstr "Dominio modificato" -#: forms/domain.py:423 +#: forms/domain.py:448 msgid "Options" msgstr "Opzioni" -#: forms/domain.py:431 +#: forms/domain.py:456 msgid "New domain" msgstr "Nuovo dominio" -#: forms/domain.py:444 +#: forms/domain.py:469 msgid "Domain created" msgstr "Dominio creato" @@ -746,16 +775,6 @@ msgstr "nome" msgid "The domain name" msgstr "Il nome del dominio" -#: models/domain.py:36 -#, fuzzy -#| msgid "" -#| "Default quota (in MB) applied to freshly created domains with no value " -#| "specified. A value of 0 means no quota." -msgid "Quota in MB shared between mailboxes. A value of 0 means no quota." -msgstr "" -"Quota predefinita (in MB) applicata ai nuovi domini che non la specificano. " -"Un valore 0 implica nessuna quota." - #: models/domain.py:44 #, fuzzy #| msgid "" @@ -853,48 +872,48 @@ msgstr "È richiesta una quota" msgid "Domain quota exceeded" msgstr "Dominio creato" -#: serializers.py:88 serializers.py:288 serializers.py:386 +#: serializers.py:99 serializers.py:304 serializers.py:402 #, fuzzy #| msgid "Permissions" msgid "Permission denied." msgstr "Permessi" -#: serializers.py:134 +#: serializers.py:150 msgid "" "List of administered domains (resellers and domain administrators only)." msgstr "" -#: serializers.py:238 +#: serializers.py:254 msgid "Not allowed for this role." msgstr "" -#: serializers.py:250 +#: serializers.py:266 msgid "Must be equal to mailbox full_address" msgstr "" -#: serializers.py:275 +#: serializers.py:291 #, fuzzy #| msgid "Domain does not exist" msgid "Local domain {} does not exist" msgstr "Il dominio non esiste" -#: serializers.py:373 +#: serializers.py:389 msgid "A list of recipient" msgstr "" -#: serializers.py:384 +#: serializers.py:400 #, fuzzy #| msgid "Domain modified" msgid "Domain not found." msgstr "Dominio modificato" -#: serializers.py:433 +#: serializers.py:449 #, fuzzy #| msgid "You don't have access to this domain" msgid "You don't have access to this domain." msgstr "Non hai accesso a questo dominio" -#: serializers.py:441 +#: serializers.py:457 #, fuzzy #| msgid "You don't have access to this domain" msgid "You don't have access to this mailbox." @@ -1090,11 +1109,8 @@ msgstr "Alias delle caselle di posta" #: templates/admin/domain_detail.html:50 templates/admin/domain_detail.html:57 #: templates/admin/domain_detail.html:58 templates/admin/domain_detail.html:65 -#: templates/admin/domain_general_form.html:4 -#: templates/admin/domain_general_form.html:5 #: templates/admin/domains_quotas.html:11 -#: templates/admin/domains_quotas.html:12 templates/admin/mailform.html:7 -#: templates/admin/newdomainform.html:3 +#: templates/admin/domains_quotas.html:12 templates/admin/newdomainform.html:3 msgid "MB" msgstr "MB" @@ -1494,6 +1510,15 @@ msgstr "Identità di importazione" msgid "Forward updated" msgstr "Inoltro aggiornato" +#, fuzzy +#~| msgid "" +#~| "Default quota (in MB) applied to freshly created domains with no value " +#~| "specified. A value of 0 means no quota." +#~ msgid "Quota in MB shared between mailboxes. A value of 0 means no quota." +#~ msgstr "" +#~ "Quota predefinita (in MB) applicata ai nuovi domini che non la " +#~ "specificano. Un valore 0 implica nessuna quota." + #~ msgid "" #~ "Default quota in MB applied to mailboxes. Leave empty to use the default " #~ "value." diff --git a/modoboa/admin/locale/ja_JP/LC_MESSAGES/django.po b/modoboa/admin/locale/ja_JP/LC_MESSAGES/django.po index c0bbb1280..6b7bad750 100644 --- a/modoboa/admin/locale/ja_JP/LC_MESSAGES/django.po +++ b/modoboa/admin/locale/ja_JP/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Modoboa\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-10-17 09:25+0200\n" +"POT-Creation-Date: 2018-10-17 13:41+0200\n" "PO-Revision-Date: 2016-09-14 17:06+0000\n" "Last-Translator: Antoine Nguyen \n" "Language-Team: Japanese (Japan) (http://www.transifex.com/tonio/modoboa/" @@ -125,7 +125,7 @@ msgstr "" "用されます。\n" "値が0の場合は、クォータ制限はありません。" -#: app_settings.py:119 models/domain.py:41 +#: app_settings.py:119 forms/domain.py:53 models/domain.py:41 #: templates/admin/domain_detail.html:64 #, fuzzy #| msgid "Default domain quota" @@ -170,7 +170,7 @@ msgstr "" msgid "Create an alias using the old address when a mailbox is renamed." msgstr "" -#: app_settings.py:196 app_settings.py:204 forms/account.py:332 +#: app_settings.py:196 app_settings.py:204 forms/account.py:339 msgid "Must be a positive integer" msgstr "正の整数でなければいけません" @@ -229,7 +229,7 @@ msgstr "選ぶ" msgid "What level of permission this user will have" msgstr "このユーザーは、アクセス許可のレベルを持つことになります" -#: forms/account.py:48 forms/domain.py:224 +#: forms/account.py:48 forms/domain.py:249 #, fuzzy #| msgid "Invalid address" msgid "Random password" @@ -261,8 +261,8 @@ msgstr "有効化" msgid "Only super administrators are allowed for this mode" msgstr "スーパー管理者だけが、このモードのために許可されています。" -#: forms/account.py:182 forms/account.py:184 forms/domain.py:141 -#: forms/domain.py:270 forms/domain.py:273 serializers.py:263 +#: forms/account.py:182 forms/account.py:184 forms/domain.py:166 +#: forms/domain.py:295 forms/domain.py:298 serializers.py:279 #, fuzzy #| msgid "A mailbox is required" msgid "This field is required." @@ -284,28 +284,33 @@ msgstr "電子メール" msgid "Create an alias using the old address" msgstr "" -#: forms/account.py:233 templates/admin/account_detail.html:45 -#: templates/admin/domain_detail.html:49 +#: forms/account.py:233 forms/domain.py:45 +#: templates/admin/account_detail.html:45 templates/admin/domain_detail.html:49 msgid "Quota" msgstr "クォータ" -#: forms/account.py:235 +#: forms/account.py:236 +#, fuzzy +#| msgid "" +#| "Quota in MB for this mailbox. Define a custom value or use domain's " +#| "default one. Leave empty to define an unlimited value (not allowed for " +#| "domain administrators)." msgid "" -"Quota in MB for this mailbox. Define a custom value or use domain's default " -"one. Leave empty to define an unlimited value (not allowed for domain " -"administrators)." +"Quota for this mailbox, can be expressed in KB, MB (default) or GB. Define a " +"custom value or use domain's default one. Leave empty to define an unlimited " +"value (not allowed for domain administrators)." msgstr "" "このメールボックスのクォータ (MB)\n" "カスタム値またはドメインのデフォルト値を定義します\n" "無制限の値を定義する場合は空白のままにします\n" "(ドメイン管理者には許可されていません)" -#: forms/account.py:243 forms/domain.py:35 +#: forms/account.py:246 forms/domain.py:35 #: templates/admin/domain_headers.html:4 msgid "Alias(es)" msgstr "エイリアス" -#: forms/account.py:246 +#: forms/account.py:249 #, fuzzy #| msgid "" #| "Alias(es) of this mailbox. Indicate only one address per input, press " @@ -322,63 +327,63 @@ msgstr "" " 「キャッチオール」エイリアスを作成するには、 ' * '文字を使用してください " "(例: *@domain.tld)" -#: forms/account.py:252 +#: forms/account.py:255 msgid "Sender addresses" msgstr "" -#: forms/account.py:255 +#: forms/account.py:258 msgid "" "Additional sender address(es) for this account. The user will be allowed to " "send emails using this address, even if it does not exist locally. Indicate " "one address per input. Press ENTER to add a new input." msgstr "" -#: forms/account.py:310 forms/alias.py:92 models/mailbox.py:317 +#: forms/account.py:313 forms/alias.py:92 models/mailbox.py:317 msgid "Domain does not exist" msgstr "ドメインは存在しません" -#: forms/account.py:342 +#: forms/account.py:349 msgid "Local domain does not exist" msgstr "ローカルドメインは存在しません" -#: forms/account.py:346 forms/account.py:354 forms/alias.py:95 +#: forms/account.py:353 forms/account.py:361 forms/alias.py:95 msgid "You don't have access to this domain" msgstr "このドメインにアクセスする権限がありません" -#: forms/account.py:453 +#: forms/account.py:460 msgid "Domain(s)" msgstr "ドメイン" -#: forms/account.py:455 +#: forms/account.py:462 msgid "Domain(s) that user administrates" msgstr "ユーザーに管理されたドメイン" -#: forms/account.py:501 forms/account.py:591 forms/domain.py:341 -#: forms/domain.py:412 +#: forms/account.py:508 forms/account.py:598 forms/domain.py:366 +#: forms/domain.py:437 msgid "General" msgstr "全般" -#: forms/account.py:505 +#: forms/account.py:512 msgid "Profile" msgstr "" -#: forms/account.py:509 forms/account.py:597 +#: forms/account.py:516 forms/account.py:604 msgid "Mail" msgstr "メール" -#: forms/account.py:512 +#: forms/account.py:519 msgid "Permissions" msgstr "アクセス許可" -#: forms/account.py:580 +#: forms/account.py:587 msgid "Account updated" msgstr "アカウントを更新しました" -#: forms/account.py:605 +#: forms/account.py:612 msgid "New account" msgstr "新しいアカウト" -#: forms/account.py:615 +#: forms/account.py:622 msgid "Account created" msgstr "アカウントを作成しました" @@ -439,53 +444,79 @@ msgstr "" msgid "Key selector" msgstr "" -#: forms/domain.py:82 handlers.py:165 +#: forms/domain.py:48 models/domain.py:36 +#, fuzzy +#| msgid "" +#| "Default quota (in MB) applied to freshly created domains with no value " +#| "specified. A value of 0 means no quota." +msgid "" +"Quota shared between mailboxes. Can be expressed in KB, MB (default) or GB. " +"A value of 0 means no quota." +msgstr "" +"デフォルトのクォータ (MB) が、値を指定しないで、新しく作成されたドメインに適" +"用されます。\n" +"値が0の場合は、クォータ制限はありません。" + +#: forms/domain.py:56 +#, fuzzy +#| msgid "" +#| "Default quota (in MB) applied to freshly created domains with no value " +#| "specified. A value of 0 means no quota." +msgid "" +"Default quota applied to mailboxes. Can be expressed in KB, MB (default) or " +"GB. A value of 0 means no quota." +msgstr "" +"デフォルトのクォータ (MB) が、値を指定しないで、新しく作成されたドメインに適" +"用されます。\n" +"値が0の場合は、クォータ制限はありません。" + +#: forms/domain.py:98 handlers.py:165 msgid "domain alias" msgstr "ドメインエイリアス" -#: forms/domain.py:85 forms/domain.py:152 forms/domain.py:160 +#: forms/domain.py:101 forms/domain.py:177 forms/domain.py:185 #, python-format msgid "A %s with this name already exists" msgstr " %s という名前は、すでに存在しています" -#: forms/domain.py:93 serializers.py:53 +#: forms/domain.py:109 serializers.py:56 #, fuzzy #| msgid "No information available for this domain." msgid "No authorized MX record found for this domain" msgstr "このドメインに関する情報がありません。" -#: forms/domain.py:105 +#: forms/domain.py:121 msgid "DKIM keys storage directory not configured" msgstr "" -#: forms/domain.py:126 serializers.py:63 +#: forms/domain.py:151 serializers.py:74 msgid "Cannot be greater than domain quota" msgstr "" -#: forms/domain.py:131 +#: forms/domain.py:156 msgid "You can't define an unlimited quota." msgstr "" -#: forms/domain.py:152 forms/domain.py:157 +#: forms/domain.py:177 forms/domain.py:182 msgid "domain" msgstr "ドメイン" -#: forms/domain.py:206 +#: forms/domain.py:231 msgid "Create a domain administrator" msgstr "ドメイン管理者を作成する" -#: forms/domain.py:209 +#: forms/domain.py:234 msgid "Automatically create an administrator for this domain" msgstr "自動的にドメインの管理者を作成する" -#: forms/domain.py:214 templates/admin/domain_detail.html:121 +#: forms/domain.py:239 templates/admin/domain_detail.html:121 #: templates/admin/domain_headers.html:3 #: templates/admin/identity_headers.html:2 #: templates/admin/mx_domain_detail.html:9 msgid "Name" msgstr "名前" -#: forms/domain.py:217 +#: forms/domain.py:242 msgid "" "The administrator's name. Don't include the domain's name here, it will be " "automatically appended." @@ -493,52 +524,52 @@ msgstr "" "管理者の名前\n" "ここでは、ドメイン名を含めないでください、それが自動的に付加されます。" -#: forms/domain.py:227 +#: forms/domain.py:252 #, fuzzy #| msgid "Create a domain administrator" msgid "Generate a random password for the administrator." msgstr "ドメイン管理者を作成する" -#: forms/domain.py:233 +#: forms/domain.py:258 msgid "With a mailbox" msgstr "" -#: forms/domain.py:236 +#: forms/domain.py:261 #, fuzzy #| msgid "Create a domain administrator" msgid "Create a mailbox for the administrator." msgstr "ドメイン管理者を作成する" -#: forms/domain.py:242 +#: forms/domain.py:267 msgid "Create aliases" msgstr "エイリアスを作成" -#: forms/domain.py:245 +#: forms/domain.py:270 msgid "Automatically create standard aliases for this domain" msgstr "自動的にドメインの標準的なエイリアスを作成する" -#: forms/domain.py:261 +#: forms/domain.py:286 msgid "Invalid format" msgstr "不正なフォーマット" -#: forms/domain.py:290 +#: forms/domain.py:315 #, python-format msgid "User '%s' already exists" msgstr "ユーザー %s はすでに存在します" -#: forms/domain.py:402 +#: forms/domain.py:427 msgid "Domain modified" msgstr "ドメインが修正されました" -#: forms/domain.py:423 +#: forms/domain.py:448 msgid "Options" msgstr "オプション" -#: forms/domain.py:431 +#: forms/domain.py:456 msgid "New domain" msgstr "新しいドメイン" -#: forms/domain.py:444 +#: forms/domain.py:469 msgid "Domain created" msgstr "ドメインが作成されました" @@ -742,17 +773,6 @@ msgstr "名前" msgid "The domain name" msgstr "ドメイン名" -#: models/domain.py:36 -#, fuzzy -#| msgid "" -#| "Default quota (in MB) applied to freshly created domains with no value " -#| "specified. A value of 0 means no quota." -msgid "Quota in MB shared between mailboxes. A value of 0 means no quota." -msgstr "" -"デフォルトのクォータ (MB) が、値を指定しないで、新しく作成されたドメインに適" -"用されます。\n" -"値が0の場合は、クォータ制限はありません。" - #: models/domain.py:44 #, fuzzy #| msgid "" @@ -855,42 +875,42 @@ msgstr "クォータは必須です" msgid "Domain quota exceeded" msgstr "ドメインが作成されました" -#: serializers.py:88 serializers.py:288 serializers.py:386 +#: serializers.py:99 serializers.py:304 serializers.py:402 msgid "Permission denied." msgstr "アクセス拒否" -#: serializers.py:134 +#: serializers.py:150 msgid "" "List of administered domains (resellers and domain administrators only)." msgstr "管理しているドメインのリスト (リセーラーとドメイン管理者のみ)" -#: serializers.py:238 +#: serializers.py:254 msgid "Not allowed for this role." msgstr "このロールには許可されていません" -#: serializers.py:250 +#: serializers.py:266 msgid "Must be equal to mailbox full_address" msgstr "メールボックス full_address に等しくなければなりません" -#: serializers.py:275 +#: serializers.py:291 msgid "Local domain {} does not exist" msgstr "ローカルドメイン {} は、存在しません" -#: serializers.py:373 +#: serializers.py:389 msgid "A list of recipient" msgstr "" -#: serializers.py:384 +#: serializers.py:400 msgid "Domain not found." msgstr "ドメインが見つかりません" -#: serializers.py:433 +#: serializers.py:449 #, fuzzy #| msgid "You don't have access to this domain" msgid "You don't have access to this domain." msgstr "このドメインにアクセスする権限がありません" -#: serializers.py:441 +#: serializers.py:457 #, fuzzy #| msgid "You don't have access to this domain" msgid "You don't have access to this mailbox." @@ -1064,11 +1084,8 @@ msgstr "メールボックスエイリアス" #: templates/admin/domain_detail.html:50 templates/admin/domain_detail.html:57 #: templates/admin/domain_detail.html:58 templates/admin/domain_detail.html:65 -#: templates/admin/domain_general_form.html:4 -#: templates/admin/domain_general_form.html:5 #: templates/admin/domains_quotas.html:11 -#: templates/admin/domains_quotas.html:12 templates/admin/mailform.html:7 -#: templates/admin/newdomainform.html:3 +#: templates/admin/domains_quotas.html:12 templates/admin/newdomainform.html:3 msgid "MB" msgstr "MB" @@ -1454,6 +1471,16 @@ msgstr "ID をインポート" msgid "Forward updated" msgstr "転送先が更新されました" +#, fuzzy +#~| msgid "" +#~| "Default quota (in MB) applied to freshly created domains with no value " +#~| "specified. A value of 0 means no quota." +#~ msgid "Quota in MB shared between mailboxes. A value of 0 means no quota." +#~ msgstr "" +#~ "デフォルトのクォータ (MB) が、値を指定しないで、新しく作成されたドメインに" +#~ "適用されます。\n" +#~ "値が0の場合は、クォータ制限はありません。" + #, fuzzy #~| msgid "No information available for this domain." #~ msgid "No DNS records found without MX for %s" diff --git a/modoboa/admin/locale/nl_NL/LC_MESSAGES/django.po b/modoboa/admin/locale/nl_NL/LC_MESSAGES/django.po index 8c1ed89ab..c748dfc9d 100644 --- a/modoboa/admin/locale/nl_NL/LC_MESSAGES/django.po +++ b/modoboa/admin/locale/nl_NL/LC_MESSAGES/django.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: Modoboa\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-10-17 09:25+0200\n" +"POT-Creation-Date: 2018-10-17 13:41+0200\n" "PO-Revision-Date: 2014-12-31 11:37+0000\n" "Last-Translator: TuxBrother \n" "Language-Team: Dutch (Netherlands) (http://www.transifex.com/projects/p/" @@ -126,7 +126,7 @@ msgstr "" "Standaard quota (in MB) om op nieuw aangemaakte domeinen zonder waarde toe " "te passen. Een waarde van 0 betekend geen quota." -#: app_settings.py:119 models/domain.py:41 +#: app_settings.py:119 forms/domain.py:53 models/domain.py:41 #: templates/admin/domain_detail.html:64 #, fuzzy #| msgid "Default domain quota" @@ -172,7 +172,7 @@ msgid "Create an alias using the old address when a mailbox is renamed." msgstr "" "Maak een alias aan met het oude adres wanneer een mailbox word hernoemd" -#: app_settings.py:196 app_settings.py:204 forms/account.py:332 +#: app_settings.py:196 app_settings.py:204 forms/account.py:339 msgid "Must be a positive integer" msgstr "Dit moet een positive integer zijn." @@ -230,7 +230,7 @@ msgstr "Kiezen" msgid "What level of permission this user will have" msgstr "Welk niveau van rechten deze gebruiker zal hebben" -#: forms/account.py:48 forms/domain.py:224 +#: forms/account.py:48 forms/domain.py:249 #, fuzzy #| msgid "Invalid request" msgid "Random password" @@ -262,8 +262,8 @@ msgstr "Actief" msgid "Only super administrators are allowed for this mode" msgstr "Alleen super administrators mogen dit" -#: forms/account.py:182 forms/account.py:184 forms/domain.py:141 -#: forms/domain.py:270 forms/domain.py:273 serializers.py:263 +#: forms/account.py:182 forms/account.py:184 forms/domain.py:166 +#: forms/domain.py:295 forms/domain.py:298 serializers.py:279 #, fuzzy #| msgid "A mailbox is required" msgid "This field is required." @@ -285,27 +285,32 @@ msgstr "E-mail" msgid "Create an alias using the old address" msgstr "Maak een alias aan met het oude adres" -#: forms/account.py:233 templates/admin/account_detail.html:45 -#: templates/admin/domain_detail.html:49 +#: forms/account.py:233 forms/domain.py:45 +#: templates/admin/account_detail.html:45 templates/admin/domain_detail.html:49 msgid "Quota" msgstr "Quota" -#: forms/account.py:235 +#: forms/account.py:236 +#, fuzzy +#| msgid "" +#| "Quota in MB for this mailbox. Define a custom value or use domain's " +#| "default one. Leave empty to define an unlimited value (not allowed for " +#| "domain administrators)." msgid "" -"Quota in MB for this mailbox. Define a custom value or use domain's default " -"one. Leave empty to define an unlimited value (not allowed for domain " -"administrators)." +"Quota for this mailbox, can be expressed in KB, MB (default) or GB. Define a " +"custom value or use domain's default one. Leave empty to define an unlimited " +"value (not allowed for domain administrators)." msgstr "" "Quota in MB voor deze mailbox. Geef een aangepaste waarde of gebruik de " "stanaard waarde van het domein. Laat leeg om een ongelimiteerde waarde te " "definieren (niet toegestaan voor domein administrators)." -#: forms/account.py:243 forms/domain.py:35 +#: forms/account.py:246 forms/domain.py:35 #: templates/admin/domain_headers.html:4 msgid "Alias(es)" msgstr "Alias(sen)" -#: forms/account.py:246 +#: forms/account.py:249 #, fuzzy #| msgid "" #| "Alias(es) of this mailbox. Indicate only one address per input, press " @@ -320,13 +325,13 @@ msgstr "" "ENTER om een nieuwe regel te krijgen. Gebruik een wildcard '*' om een 'catch-" "all' adres te maken (bijvoorbeeld: *@domein.tld)." -#: forms/account.py:252 +#: forms/account.py:255 #, fuzzy #| msgid "Invalid request" msgid "Sender addresses" msgstr "Ongeldig verzoek" -#: forms/account.py:255 +#: forms/account.py:258 #, fuzzy #| msgid "" #| "Mailbox(es) this alias will point to. Indicate only one address per " @@ -339,54 +344,54 @@ msgstr "" "Mailbox(en) waarnaar deze alias zal verwijzen. Geef slechts een adres per " "regel op, en toets ENTER om een nieuwe regel te krijgen." -#: forms/account.py:310 forms/alias.py:92 models/mailbox.py:317 +#: forms/account.py:313 forms/alias.py:92 models/mailbox.py:317 msgid "Domain does not exist" msgstr "Domein bestaat niet" -#: forms/account.py:342 +#: forms/account.py:349 #, fuzzy #| msgid "Domain does not exist" msgid "Local domain does not exist" msgstr "Domein bestaat niet" -#: forms/account.py:346 forms/account.py:354 forms/alias.py:95 +#: forms/account.py:353 forms/account.py:361 forms/alias.py:95 msgid "You don't have access to this domain" msgstr "U heeft geen toegang tot dit domein" -#: forms/account.py:453 +#: forms/account.py:460 msgid "Domain(s)" msgstr "Domein(en)" -#: forms/account.py:455 +#: forms/account.py:462 msgid "Domain(s) that user administrates" msgstr "Domein(en) die gebruiker mag beheren" -#: forms/account.py:501 forms/account.py:591 forms/domain.py:341 -#: forms/domain.py:412 +#: forms/account.py:508 forms/account.py:598 forms/domain.py:366 +#: forms/domain.py:437 msgid "General" msgstr "Algemeen" -#: forms/account.py:505 +#: forms/account.py:512 msgid "Profile" msgstr "Profiel" -#: forms/account.py:509 forms/account.py:597 +#: forms/account.py:516 forms/account.py:604 msgid "Mail" msgstr "Mail" -#: forms/account.py:512 +#: forms/account.py:519 msgid "Permissions" msgstr "Rechten" -#: forms/account.py:580 +#: forms/account.py:587 msgid "Account updated" msgstr "Account aangepast" -#: forms/account.py:605 +#: forms/account.py:612 msgid "New account" msgstr "Nieuw account" -#: forms/account.py:615 +#: forms/account.py:622 msgid "Account created" msgstr "Account aangemaakt" @@ -454,103 +459,127 @@ msgstr "" msgid "Key selector" msgstr "" -#: forms/domain.py:82 handlers.py:165 +#: forms/domain.py:48 models/domain.py:36 +#, fuzzy +#| msgid "" +#| "Default quota (in MB) applied to freshly created domains with no value " +#| "specified. A value of 0 means no quota." +msgid "" +"Quota shared between mailboxes. Can be expressed in KB, MB (default) or GB. " +"A value of 0 means no quota." +msgstr "" +"Standaard quota (in MB) om op nieuw aangemaakte domeinen zonder waarde toe " +"te passen. Een waarde van 0 betekend geen quota." + +#: forms/domain.py:56 +#, fuzzy +#| msgid "" +#| "Default quota (in MB) applied to freshly created domains with no value " +#| "specified. A value of 0 means no quota." +msgid "" +"Default quota applied to mailboxes. Can be expressed in KB, MB (default) or " +"GB. A value of 0 means no quota." +msgstr "" +"Standaard quota (in MB) om op nieuw aangemaakte domeinen zonder waarde toe " +"te passen. Een waarde van 0 betekend geen quota." + +#: forms/domain.py:98 handlers.py:165 msgid "domain alias" msgstr "domein alias" -#: forms/domain.py:85 forms/domain.py:152 forms/domain.py:160 +#: forms/domain.py:101 forms/domain.py:177 forms/domain.py:185 #, python-format msgid "A %s with this name already exists" msgstr "Een %s met deze naam bestaat al" -#: forms/domain.py:93 serializers.py:53 +#: forms/domain.py:109 serializers.py:56 msgid "No authorized MX record found for this domain" msgstr "" -#: forms/domain.py:105 +#: forms/domain.py:121 msgid "DKIM keys storage directory not configured" msgstr "" -#: forms/domain.py:126 serializers.py:63 +#: forms/domain.py:151 serializers.py:74 msgid "Cannot be greater than domain quota" msgstr "" -#: forms/domain.py:131 +#: forms/domain.py:156 msgid "You can't define an unlimited quota." msgstr "" -#: forms/domain.py:152 forms/domain.py:157 +#: forms/domain.py:177 forms/domain.py:182 msgid "domain" msgstr "domein" -#: forms/domain.py:206 +#: forms/domain.py:231 msgid "Create a domain administrator" msgstr "Maak een domein administrator aan" -#: forms/domain.py:209 +#: forms/domain.py:234 msgid "Automatically create an administrator for this domain" msgstr "Automatisch een administrator aanmaken voor dit domein" -#: forms/domain.py:214 templates/admin/domain_detail.html:121 +#: forms/domain.py:239 templates/admin/domain_detail.html:121 #: templates/admin/domain_headers.html:3 #: templates/admin/identity_headers.html:2 #: templates/admin/mx_domain_detail.html:9 msgid "Name" msgstr "Naam" -#: forms/domain.py:217 +#: forms/domain.py:242 msgid "" "The administrator's name. Don't include the domain's name here, it will be " "automatically appended." msgstr "" "De naam van de administrator. De domeinnaam word automatisch toegevoegd." -#: forms/domain.py:227 +#: forms/domain.py:252 #, fuzzy #| msgid "Create a domain administrator" msgid "Generate a random password for the administrator." msgstr "Maak een domein administrator aan" -#: forms/domain.py:233 +#: forms/domain.py:258 msgid "With a mailbox" msgstr "Met een mailbox" -#: forms/domain.py:236 +#: forms/domain.py:261 #, fuzzy #| msgid "Create a domain administrator" msgid "Create a mailbox for the administrator." msgstr "Maak een domein administrator aan" -#: forms/domain.py:242 +#: forms/domain.py:267 msgid "Create aliases" msgstr "Aliassen aanmaken" -#: forms/domain.py:245 +#: forms/domain.py:270 msgid "Automatically create standard aliases for this domain" msgstr "Automatisch een standaard alias voor dit domein aanmaken" -#: forms/domain.py:261 +#: forms/domain.py:286 msgid "Invalid format" msgstr "Verkeerd formaat" -#: forms/domain.py:290 +#: forms/domain.py:315 #, python-format msgid "User '%s' already exists" msgstr "Gebruiker '%s' bestaat al" -#: forms/domain.py:402 +#: forms/domain.py:427 msgid "Domain modified" msgstr "Domein gewijzigd" -#: forms/domain.py:423 +#: forms/domain.py:448 msgid "Options" msgstr "Opties" -#: forms/domain.py:431 +#: forms/domain.py:456 msgid "New domain" msgstr "Nieuw domein" -#: forms/domain.py:444 +#: forms/domain.py:469 msgid "Domain created" msgstr "Domein aangemaakt" @@ -763,16 +792,6 @@ msgstr "naam" msgid "The domain name" msgstr "De domeinnaam" -#: models/domain.py:36 -#, fuzzy -#| msgid "" -#| "Default quota (in MB) applied to freshly created domains with no value " -#| "specified. A value of 0 means no quota." -msgid "Quota in MB shared between mailboxes. A value of 0 means no quota." -msgstr "" -"Standaard quota (in MB) om op nieuw aangemaakte domeinen zonder waarde toe " -"te passen. Een waarde van 0 betekend geen quota." - #: models/domain.py:44 #, fuzzy #| msgid "" @@ -870,48 +889,48 @@ msgstr "Een quota is vereist" msgid "Domain quota exceeded" msgstr "Domein aangemaakt" -#: serializers.py:88 serializers.py:288 serializers.py:386 +#: serializers.py:99 serializers.py:304 serializers.py:402 #, fuzzy #| msgid "Permissions" msgid "Permission denied." msgstr "Toegang geweigerd" -#: serializers.py:134 +#: serializers.py:150 msgid "" "List of administered domains (resellers and domain administrators only)." msgstr "" -#: serializers.py:238 +#: serializers.py:254 msgid "Not allowed for this role." msgstr "Niet toegestaan met deze rol" -#: serializers.py:250 +#: serializers.py:266 msgid "Must be equal to mailbox full_address" msgstr "Moet gelijk zijn aan het volledige e-mail adres" -#: serializers.py:275 +#: serializers.py:291 #, fuzzy #| msgid "Domain does not exist" msgid "Local domain {} does not exist" msgstr "Domein bestaat niet" -#: serializers.py:373 +#: serializers.py:389 msgid "A list of recipient" msgstr "Een lijst van ontvangers" -#: serializers.py:384 +#: serializers.py:400 #, fuzzy #| msgid "Domain modified" msgid "Domain not found." msgstr "Domein gewijzigd" -#: serializers.py:433 +#: serializers.py:449 #, fuzzy #| msgid "You don't have access to this domain" msgid "You don't have access to this domain." msgstr "U heeft geen toegang tot dit domein" -#: serializers.py:441 +#: serializers.py:457 #, fuzzy #| msgid "You don't have access to this domain" msgid "You don't have access to this mailbox." @@ -1107,11 +1126,8 @@ msgstr "Mailbox aliassen" #: templates/admin/domain_detail.html:50 templates/admin/domain_detail.html:57 #: templates/admin/domain_detail.html:58 templates/admin/domain_detail.html:65 -#: templates/admin/domain_general_form.html:4 -#: templates/admin/domain_general_form.html:5 #: templates/admin/domains_quotas.html:11 -#: templates/admin/domains_quotas.html:12 templates/admin/mailform.html:7 -#: templates/admin/newdomainform.html:3 +#: templates/admin/domains_quotas.html:12 templates/admin/newdomainform.html:3 msgid "MB" msgstr "MB" @@ -1517,6 +1533,15 @@ msgstr "Identiteiten importeren" msgid "Forward updated" msgstr "Doorstuuradres aangepast" +#, fuzzy +#~| msgid "" +#~| "Default quota (in MB) applied to freshly created domains with no value " +#~| "specified. A value of 0 means no quota." +#~ msgid "Quota in MB shared between mailboxes. A value of 0 means no quota." +#~ msgstr "" +#~ "Standaard quota (in MB) om op nieuw aangemaakte domeinen zonder waarde " +#~ "toe te passen. Een waarde van 0 betekend geen quota." + #, fuzzy #~| msgid "No MX record found for this domain." #~ msgid "No DNS records found without MX for %s" diff --git a/modoboa/admin/locale/pl_PL/LC_MESSAGES/django.po b/modoboa/admin/locale/pl_PL/LC_MESSAGES/django.po index d4d4ed4c7..cdb781d6f 100644 --- a/modoboa/admin/locale/pl_PL/LC_MESSAGES/django.po +++ b/modoboa/admin/locale/pl_PL/LC_MESSAGES/django.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: Modoboa\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-10-17 09:25+0200\n" +"POT-Creation-Date: 2018-10-17 13:41+0200\n" "PO-Revision-Date: 2017-12-07 08:37+0000\n" "Last-Translator: Antoine Nguyen \n" "Language-Team: Polish (Poland) (http://www.transifex.com/tonio/modoboa/" @@ -133,7 +133,7 @@ msgstr "" "Domyślne ograniczenie (w MB) dla nowych domen, gdy nie zostało podane. (0 - " "brak ograniczenia)" -#: app_settings.py:119 models/domain.py:41 +#: app_settings.py:119 forms/domain.py:53 models/domain.py:41 #: templates/admin/domain_detail.html:64 msgid "Default mailbox quota" msgstr "Domyślna przestrzeń dla konta pocztowego" @@ -170,7 +170,7 @@ msgstr "Utwórz alias podczas zmiany nazwy skrzynki" msgid "Create an alias using the old address when a mailbox is renamed." msgstr "Utwórz alias używając starego adresu podczas zmiany nazwy skrzynki." -#: app_settings.py:196 app_settings.py:204 forms/account.py:332 +#: app_settings.py:196 app_settings.py:204 forms/account.py:339 msgid "Must be a positive integer" msgstr "Musi być liczbą całkowitą dodatnią" @@ -226,7 +226,7 @@ msgstr "Wybierz" msgid "What level of permission this user will have" msgstr "Jaki zakres uprawnień będzie miał użytkownik" -#: forms/account.py:48 forms/domain.py:224 +#: forms/account.py:48 forms/domain.py:249 msgid "Random password" msgstr "Losowe hasło" @@ -258,8 +258,8 @@ msgstr "Włączone" msgid "Only super administrators are allowed for this mode" msgstr "Tylko super administratorzy mogą korzystać z tej opcji" -#: forms/account.py:182 forms/account.py:184 forms/domain.py:141 -#: forms/domain.py:270 forms/domain.py:273 serializers.py:263 +#: forms/account.py:182 forms/account.py:184 forms/domain.py:166 +#: forms/domain.py:295 forms/domain.py:298 serializers.py:279 msgid "This field is required." msgstr "To pole jest wymagane" @@ -279,27 +279,32 @@ msgstr "E-mail" msgid "Create an alias using the old address" msgstr "Utwórz alias używając starego adresu" -#: forms/account.py:233 templates/admin/account_detail.html:45 -#: templates/admin/domain_detail.html:49 +#: forms/account.py:233 forms/domain.py:45 +#: templates/admin/account_detail.html:45 templates/admin/domain_detail.html:49 msgid "Quota" msgstr "Limit" -#: forms/account.py:235 +#: forms/account.py:236 +#, fuzzy +#| msgid "" +#| "Quota in MB for this mailbox. Define a custom value or use domain's " +#| "default one. Leave empty to define an unlimited value (not allowed for " +#| "domain administrators)." msgid "" -"Quota in MB for this mailbox. Define a custom value or use domain's default " -"one. Leave empty to define an unlimited value (not allowed for domain " -"administrators)." +"Quota for this mailbox, can be expressed in KB, MB (default) or GB. Define a " +"custom value or use domain's default one. Leave empty to define an unlimited " +"value (not allowed for domain administrators)." msgstr "" "Limit w MB dla tej skrzynki. Podaj własną wartość lub skorzystaj z domyślne " "wartości dla domeny. Brak limitu jeśli pozostawisz niewypełnione (opcja " "niedozwolona dla administratorów domen)" -#: forms/account.py:243 forms/domain.py:35 +#: forms/account.py:246 forms/domain.py:35 #: templates/admin/domain_headers.html:4 msgid "Alias(es)" msgstr "Alias(y)" -#: forms/account.py:246 +#: forms/account.py:249 msgid "" "Alias(es) of this mailbox. Indicate only one address per input, press ENTER " "to add a new input. To create a catchall alias, just enter the domain name " @@ -309,11 +314,11 @@ msgstr "" "kolejne pole. Aby stworzyć alias \"catchall\" po prostu podaj nazwę domeny " "(@domena.tld)." -#: forms/account.py:252 +#: forms/account.py:255 msgid "Sender addresses" msgstr "Adres nadawcy" -#: forms/account.py:255 +#: forms/account.py:258 msgid "" "Additional sender address(es) for this account. The user will be allowed to " "send emails using this address, even if it does not exist locally. Indicate " @@ -323,52 +328,52 @@ msgstr "" "podczas wysyłania wiadomości, nawet jeśli taki nie istnieje lokalnie. Podaj " "jeden adres w polu. Naciśnij ENTER aby dodać nowe pole." -#: forms/account.py:310 forms/alias.py:92 models/mailbox.py:317 +#: forms/account.py:313 forms/alias.py:92 models/mailbox.py:317 msgid "Domain does not exist" msgstr "Domena nie istnieje" -#: forms/account.py:342 +#: forms/account.py:349 msgid "Local domain does not exist" msgstr "Domena lokalna nie istnieje" -#: forms/account.py:346 forms/account.py:354 forms/alias.py:95 +#: forms/account.py:353 forms/account.py:361 forms/alias.py:95 msgid "You don't have access to this domain" msgstr "Nie masz uprawnień dla tej domeny" -#: forms/account.py:453 +#: forms/account.py:460 msgid "Domain(s)" msgstr "Domena(y)" -#: forms/account.py:455 +#: forms/account.py:462 msgid "Domain(s) that user administrates" msgstr "Domena(y), którmi zarządza użytkownik" -#: forms/account.py:501 forms/account.py:591 forms/domain.py:341 -#: forms/domain.py:412 +#: forms/account.py:508 forms/account.py:598 forms/domain.py:366 +#: forms/domain.py:437 msgid "General" msgstr "Ogólne" -#: forms/account.py:505 +#: forms/account.py:512 msgid "Profile" msgstr "Profil" -#: forms/account.py:509 forms/account.py:597 +#: forms/account.py:516 forms/account.py:604 msgid "Mail" msgstr "Mail" -#: forms/account.py:512 +#: forms/account.py:519 msgid "Permissions" msgstr "Uprawnienia" -#: forms/account.py:580 +#: forms/account.py:587 msgid "Account updated" msgstr "Konto zaktualizowane" -#: forms/account.py:605 +#: forms/account.py:612 msgid "New account" msgstr "Nowe konto" -#: forms/account.py:615 +#: forms/account.py:622 msgid "Account created" msgstr "Konto utworzone" @@ -423,51 +428,73 @@ msgstr "" msgid "Key selector" msgstr "" -#: forms/domain.py:82 handlers.py:165 +#: forms/domain.py:48 models/domain.py:36 +#, fuzzy +#| msgid "" +#| "Default quota in MB applied to mailboxes. A value of 0 means no quota." +msgid "" +"Quota shared between mailboxes. Can be expressed in KB, MB (default) or GB. " +"A value of 0 means no quota." +msgstr "" +"Domyślne ograniczenie (w MB) dla nowych skrzynek. Wartość 0 oznacza brak " +"ograniczenia." + +#: forms/domain.py:56 +#, fuzzy +#| msgid "" +#| "Default quota in MB applied to mailboxes. A value of 0 means no quota." +msgid "" +"Default quota applied to mailboxes. Can be expressed in KB, MB (default) or " +"GB. A value of 0 means no quota." +msgstr "" +"Domyślne ograniczenie (w MB) dla nowych skrzynek. Wartość 0 oznacza brak " +"ograniczenia." + +#: forms/domain.py:98 handlers.py:165 msgid "domain alias" msgstr "alias domeny" -#: forms/domain.py:85 forms/domain.py:152 forms/domain.py:160 +#: forms/domain.py:101 forms/domain.py:177 forms/domain.py:185 #, python-format msgid "A %s with this name already exists" msgstr "Nazwa %s już istnieje" -#: forms/domain.py:93 serializers.py:53 +#: forms/domain.py:109 serializers.py:56 msgid "No authorized MX record found for this domain" msgstr "Nie znaleziono autoryzowanych dla tej domeny rekordów MX " -#: forms/domain.py:105 +#: forms/domain.py:121 msgid "DKIM keys storage directory not configured" msgstr "" -#: forms/domain.py:126 serializers.py:63 +#: forms/domain.py:151 serializers.py:74 msgid "Cannot be greater than domain quota" msgstr "Nie może być wyższa niż limit domeny" -#: forms/domain.py:131 +#: forms/domain.py:156 msgid "You can't define an unlimited quota." msgstr "Nie możesz przypisać nielimitowanej przestrzeni" -#: forms/domain.py:152 forms/domain.py:157 +#: forms/domain.py:177 forms/domain.py:182 msgid "domain" msgstr "domena" -#: forms/domain.py:206 +#: forms/domain.py:231 msgid "Create a domain administrator" msgstr "Utwórz administratora domeny" -#: forms/domain.py:209 +#: forms/domain.py:234 msgid "Automatically create an administrator for this domain" msgstr "Automatycznie utwórz administratora dla tej domeny" -#: forms/domain.py:214 templates/admin/domain_detail.html:121 +#: forms/domain.py:239 templates/admin/domain_detail.html:121 #: templates/admin/domain_headers.html:3 #: templates/admin/identity_headers.html:2 #: templates/admin/mx_domain_detail.html:9 msgid "Name" msgstr "Nazwa" -#: forms/domain.py:217 +#: forms/domain.py:242 msgid "" "The administrator's name. Don't include the domain's name here, it will be " "automatically appended." @@ -475,48 +502,48 @@ msgstr "" "Nazwa administratora. Nie dodawaj tutaj nazwy domeny, zostanie dodana " "automatycznie" -#: forms/domain.py:227 +#: forms/domain.py:252 msgid "Generate a random password for the administrator." msgstr "Wygeneruj losowe hasło dla administratora." -#: forms/domain.py:233 +#: forms/domain.py:258 msgid "With a mailbox" msgstr "Ze skrzynką" -#: forms/domain.py:236 +#: forms/domain.py:261 msgid "Create a mailbox for the administrator." msgstr "Utwórz skrzynkę dla administratora." -#: forms/domain.py:242 +#: forms/domain.py:267 msgid "Create aliases" msgstr "Utwórz aliasy" -#: forms/domain.py:245 +#: forms/domain.py:270 msgid "Automatically create standard aliases for this domain" msgstr "Automatycznie utwórz standardowe aliasy dla tej domeny" -#: forms/domain.py:261 +#: forms/domain.py:286 msgid "Invalid format" msgstr "Niepoprawny format" -#: forms/domain.py:290 +#: forms/domain.py:315 #, python-format msgid "User '%s' already exists" msgstr "Użytkownik '%s' już istnieje" -#: forms/domain.py:402 +#: forms/domain.py:427 msgid "Domain modified" msgstr "Domena zmodyfikowana" -#: forms/domain.py:423 +#: forms/domain.py:448 msgid "Options" msgstr "Opcje" -#: forms/domain.py:431 +#: forms/domain.py:456 msgid "New domain" msgstr "Nowa domena" -#: forms/domain.py:444 +#: forms/domain.py:469 msgid "Domain created" msgstr "Domena utworzona" @@ -718,11 +745,6 @@ msgstr "nazwa" msgid "The domain name" msgstr "Nazwa domeny" -#: models/domain.py:36 -msgid "Quota in MB shared between mailboxes. A value of 0 means no quota." -msgstr "" -"Przydział w MB dzielony między skrzynki. Wartość 0 oznacza brak limitu." - #: models/domain.py:44 msgid "Default quota in MB applied to mailboxes. A value of 0 means no quota." msgstr "" @@ -809,43 +831,43 @@ msgstr "Limit jest wymagany" msgid "Domain quota exceeded" msgstr "Przekroczono limit przydziału" -#: serializers.py:88 serializers.py:288 serializers.py:386 +#: serializers.py:99 serializers.py:304 serializers.py:402 msgid "Permission denied." msgstr "Odmowa dostępu" -#: serializers.py:134 +#: serializers.py:150 msgid "" "List of administered domains (resellers and domain administrators only)." msgstr "" "Lista administratorów domen (tylko resellerów i administratorów domen)." -#: serializers.py:238 +#: serializers.py:254 msgid "Not allowed for this role." msgstr "Niedozwolone dla tej roli." -#: serializers.py:250 +#: serializers.py:266 msgid "Must be equal to mailbox full_address" msgstr "Musi być równe z full_address skrzynki." -#: serializers.py:275 +#: serializers.py:291 msgid "Local domain {} does not exist" msgstr "Lokalna domena {} nie istnieje" -#: serializers.py:373 +#: serializers.py:389 msgid "A list of recipient" msgstr "Lista odbiorców" -#: serializers.py:384 +#: serializers.py:400 msgid "Domain not found." msgstr "Domena nie znaleziona." -#: serializers.py:433 +#: serializers.py:449 #, fuzzy #| msgid "You don't have access to this domain" msgid "You don't have access to this domain." msgstr "Nie masz uprawnień dla tej domeny" -#: serializers.py:441 +#: serializers.py:457 #, fuzzy #| msgid "You don't have access to this domain" msgid "You don't have access to this mailbox." @@ -1013,11 +1035,8 @@ msgstr "Aliasy skrzynki" #: templates/admin/domain_detail.html:50 templates/admin/domain_detail.html:57 #: templates/admin/domain_detail.html:58 templates/admin/domain_detail.html:65 -#: templates/admin/domain_general_form.html:4 -#: templates/admin/domain_general_form.html:5 #: templates/admin/domains_quotas.html:11 -#: templates/admin/domains_quotas.html:12 templates/admin/mailform.html:7 -#: templates/admin/newdomainform.html:3 +#: templates/admin/domains_quotas.html:12 templates/admin/newdomainform.html:3 msgid "MB" msgstr "MB" @@ -1386,6 +1405,10 @@ msgstr "Importuj tożsamości" msgid "Forward updated" msgstr "Reguła przekazywania zmodyfikowana" +#~ msgid "Quota in MB shared between mailboxes. A value of 0 means no quota." +#~ msgstr "" +#~ "Przydział w MB dzielony między skrzynki. Wartość 0 oznacza brak limitu." + #, fuzzy #~| msgid "No MX record found for this domain." #~ msgid "No DNS records found without MX for %s" diff --git a/modoboa/admin/locale/pt_BR/LC_MESSAGES/django.po b/modoboa/admin/locale/pt_BR/LC_MESSAGES/django.po index f5645b94e..a9850cd27 100644 --- a/modoboa/admin/locale/pt_BR/LC_MESSAGES/django.po +++ b/modoboa/admin/locale/pt_BR/LC_MESSAGES/django.po @@ -15,7 +15,7 @@ msgid "" msgstr "" "Project-Id-Version: Modoboa\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-10-17 09:25+0200\n" +"POT-Creation-Date: 2018-10-17 13:41+0200\n" "PO-Revision-Date: 2018-09-25 03:25+0000\n" "Last-Translator: Rafael Barretto \n" "Language-Team: Portuguese (Brazil) (http://www.transifex.com/tonio/modoboa/" @@ -138,7 +138,7 @@ msgstr "" "Cota padrão (em MB) aplicada para novos domínios sem nenhum valor " "especificado. Um valor de 0 indica que não existe cota." -#: app_settings.py:119 models/domain.py:41 +#: app_settings.py:119 forms/domain.py:53 models/domain.py:41 #: templates/admin/domain_detail.html:64 msgid "Default mailbox quota" msgstr "Cota padrão da caixa de correio" @@ -180,7 +180,7 @@ msgstr "" "Crie um alias usando o endereço antigo quando uma caixa de correio for " "renomeada." -#: app_settings.py:196 app_settings.py:204 forms/account.py:332 +#: app_settings.py:196 app_settings.py:204 forms/account.py:339 msgid "Must be a positive integer" msgstr "Deve ser um inteiro positivo" @@ -234,7 +234,7 @@ msgstr "Escolher" msgid "What level of permission this user will have" msgstr "Qual nível de permissão terá esse usuário" -#: forms/account.py:48 forms/domain.py:224 +#: forms/account.py:48 forms/domain.py:249 msgid "Random password" msgstr "Senha aleatória" @@ -266,8 +266,8 @@ msgstr "Ativado" msgid "Only super administrators are allowed for this mode" msgstr "Apenas super administradores estão liberados para este modo" -#: forms/account.py:182 forms/account.py:184 forms/domain.py:141 -#: forms/domain.py:270 forms/domain.py:273 serializers.py:263 +#: forms/account.py:182 forms/account.py:184 forms/domain.py:166 +#: forms/domain.py:295 forms/domain.py:298 serializers.py:279 msgid "This field is required." msgstr "Este campo é obrigatório." @@ -287,27 +287,32 @@ msgstr "E-mail" msgid "Create an alias using the old address" msgstr "Criar um alias usando o endereço antigo" -#: forms/account.py:233 templates/admin/account_detail.html:45 -#: templates/admin/domain_detail.html:49 +#: forms/account.py:233 forms/domain.py:45 +#: templates/admin/account_detail.html:45 templates/admin/domain_detail.html:49 msgid "Quota" msgstr "Cota" -#: forms/account.py:235 +#: forms/account.py:236 +#, fuzzy +#| msgid "" +#| "Quota in MB for this mailbox. Define a custom value or use domain's " +#| "default one. Leave empty to define an unlimited value (not allowed for " +#| "domain administrators)." msgid "" -"Quota in MB for this mailbox. Define a custom value or use domain's default " -"one. Leave empty to define an unlimited value (not allowed for domain " -"administrators)." +"Quota for this mailbox, can be expressed in KB, MB (default) or GB. Define a " +"custom value or use domain's default one. Leave empty to define an unlimited " +"value (not allowed for domain administrators)." msgstr "" "Cota em MB para esta caixa de mensagens. Defina um valor customizado ou use " "o padrão do domínio. Deixe em branco para definir um valor ilimitado (não " "permitido para administradores de domínios)." -#: forms/account.py:243 forms/domain.py:35 +#: forms/account.py:246 forms/domain.py:35 #: templates/admin/domain_headers.html:4 msgid "Alias(es)" msgstr "Alias(es)" -#: forms/account.py:246 +#: forms/account.py:249 msgid "" "Alias(es) of this mailbox. Indicate only one address per input, press ENTER " "to add a new input. To create a catchall alias, just enter the domain name " @@ -317,11 +322,11 @@ msgstr "" "pressione ENTER para adicionar uma nova entrada. Para criar um catchall " "alias, apenas insira o nome do domínio (@domain.tld)." -#: forms/account.py:252 +#: forms/account.py:255 msgid "Sender addresses" msgstr "Endereços do remetente" -#: forms/account.py:255 +#: forms/account.py:258 msgid "" "Additional sender address(es) for this account. The user will be allowed to " "send emails using this address, even if it does not exist locally. Indicate " @@ -332,52 +337,52 @@ msgstr "" "localmente. Indique um endereço por entrada. Pressione ENTER para adicionar " "uma nova entrada." -#: forms/account.py:310 forms/alias.py:92 models/mailbox.py:317 +#: forms/account.py:313 forms/alias.py:92 models/mailbox.py:317 msgid "Domain does not exist" msgstr "Domínio não existe" -#: forms/account.py:342 +#: forms/account.py:349 msgid "Local domain does not exist" msgstr "Domínio local não existe" -#: forms/account.py:346 forms/account.py:354 forms/alias.py:95 +#: forms/account.py:353 forms/account.py:361 forms/alias.py:95 msgid "You don't have access to this domain" msgstr "Você não tem acesso a esse domínio" -#: forms/account.py:453 +#: forms/account.py:460 msgid "Domain(s)" msgstr "Domínio(s)" -#: forms/account.py:455 +#: forms/account.py:462 msgid "Domain(s) that user administrates" msgstr "Domínio(s) que o usuário administra" -#: forms/account.py:501 forms/account.py:591 forms/domain.py:341 -#: forms/domain.py:412 +#: forms/account.py:508 forms/account.py:598 forms/domain.py:366 +#: forms/domain.py:437 msgid "General" msgstr "Geral" -#: forms/account.py:505 +#: forms/account.py:512 msgid "Profile" msgstr "Perfil" -#: forms/account.py:509 forms/account.py:597 +#: forms/account.py:516 forms/account.py:604 msgid "Mail" msgstr "Correio" -#: forms/account.py:512 +#: forms/account.py:519 msgid "Permissions" msgstr "Permissões" -#: forms/account.py:580 +#: forms/account.py:587 msgid "Account updated" msgstr "Conta atualizada" -#: forms/account.py:605 +#: forms/account.py:612 msgid "New account" msgstr "Nova conta" -#: forms/account.py:615 +#: forms/account.py:622 msgid "Account created" msgstr "Conta criada" @@ -433,51 +438,73 @@ msgstr "" msgid "Key selector" msgstr "" -#: forms/domain.py:82 handlers.py:165 +#: forms/domain.py:48 models/domain.py:36 +#, fuzzy +#| msgid "" +#| "Default quota in MB applied to mailboxes. A value of 0 means no quota." +msgid "" +"Quota shared between mailboxes. Can be expressed in KB, MB (default) or GB. " +"A value of 0 means no quota." +msgstr "" +"Cota padrão em MB aplicada a caixas de correio. Um valor de 0 significa sem " +"cota." + +#: forms/domain.py:56 +#, fuzzy +#| msgid "" +#| "Default quota in MB applied to mailboxes. A value of 0 means no quota." +msgid "" +"Default quota applied to mailboxes. Can be expressed in KB, MB (default) or " +"GB. A value of 0 means no quota." +msgstr "" +"Cota padrão em MB aplicada a caixas de correio. Um valor de 0 significa sem " +"cota." + +#: forms/domain.py:98 handlers.py:165 msgid "domain alias" msgstr "alias de domínio" -#: forms/domain.py:85 forms/domain.py:152 forms/domain.py:160 +#: forms/domain.py:101 forms/domain.py:177 forms/domain.py:185 #, python-format msgid "A %s with this name already exists" msgstr "Já existe um %s com este nome" -#: forms/domain.py:93 serializers.py:53 +#: forms/domain.py:109 serializers.py:56 msgid "No authorized MX record found for this domain" msgstr "" -#: forms/domain.py:105 +#: forms/domain.py:121 msgid "DKIM keys storage directory not configured" msgstr "" -#: forms/domain.py:126 serializers.py:63 +#: forms/domain.py:151 serializers.py:74 msgid "Cannot be greater than domain quota" msgstr "Não pode ser maior do que a cota de domínio" -#: forms/domain.py:131 +#: forms/domain.py:156 msgid "You can't define an unlimited quota." msgstr "Você não pode definir cota ilimitada." -#: forms/domain.py:152 forms/domain.py:157 +#: forms/domain.py:177 forms/domain.py:182 msgid "domain" msgstr "domínio" -#: forms/domain.py:206 +#: forms/domain.py:231 msgid "Create a domain administrator" msgstr "Criar um administrador de domínio" -#: forms/domain.py:209 +#: forms/domain.py:234 msgid "Automatically create an administrator for this domain" msgstr "Criar automaticamente um administrador para este domínio" -#: forms/domain.py:214 templates/admin/domain_detail.html:121 +#: forms/domain.py:239 templates/admin/domain_detail.html:121 #: templates/admin/domain_headers.html:3 #: templates/admin/identity_headers.html:2 #: templates/admin/mx_domain_detail.html:9 msgid "Name" msgstr "Nome" -#: forms/domain.py:217 +#: forms/domain.py:242 msgid "" "The administrator's name. Don't include the domain's name here, it will be " "automatically appended." @@ -485,48 +512,48 @@ msgstr "" "O nome de administrador. Não inclua aqui o nome de domínio. Ele será " "automaticamente adicionado." -#: forms/domain.py:227 +#: forms/domain.py:252 msgid "Generate a random password for the administrator." msgstr "" -#: forms/domain.py:233 +#: forms/domain.py:258 msgid "With a mailbox" msgstr "" -#: forms/domain.py:236 +#: forms/domain.py:261 msgid "Create a mailbox for the administrator." msgstr "" -#: forms/domain.py:242 +#: forms/domain.py:267 msgid "Create aliases" msgstr "Criar alias" -#: forms/domain.py:245 +#: forms/domain.py:270 msgid "Automatically create standard aliases for this domain" msgstr "Criar automaticamente aliases padrão para este domínio" -#: forms/domain.py:261 +#: forms/domain.py:286 msgid "Invalid format" msgstr "Formato inválido" -#: forms/domain.py:290 +#: forms/domain.py:315 #, python-format msgid "User '%s' already exists" msgstr "O usuário '%s' já existe" -#: forms/domain.py:402 +#: forms/domain.py:427 msgid "Domain modified" msgstr "Domínio alterado" -#: forms/domain.py:423 +#: forms/domain.py:448 msgid "Options" msgstr "Opções" -#: forms/domain.py:431 +#: forms/domain.py:456 msgid "New domain" msgstr "Novo domínio" -#: forms/domain.py:444 +#: forms/domain.py:469 msgid "Domain created" msgstr "Domínio criado" @@ -727,12 +754,6 @@ msgstr "nome" msgid "The domain name" msgstr "Nome do domínio" -#: models/domain.py:36 -msgid "Quota in MB shared between mailboxes. A value of 0 means no quota." -msgstr "" -"Cota em MB compartilhada entre caixas de correio. Um valor de 0 significa " -"sem cota." - #: models/domain.py:44 msgid "Default quota in MB applied to mailboxes. A value of 0 means no quota." msgstr "" @@ -820,42 +841,42 @@ msgstr "Uma cota é requerida" msgid "Domain quota exceeded" msgstr "Cota do domínio excedida" -#: serializers.py:88 serializers.py:288 serializers.py:386 +#: serializers.py:99 serializers.py:304 serializers.py:402 msgid "Permission denied." msgstr "Permissão negada." -#: serializers.py:134 +#: serializers.py:150 msgid "" "List of administered domains (resellers and domain administrators only)." msgstr "" "Lista dos domínios administrados (somente revendedores e administradores de " "domínio)." -#: serializers.py:238 +#: serializers.py:254 msgid "Not allowed for this role." msgstr "Não permitido para este perfil." -#: serializers.py:250 +#: serializers.py:266 msgid "Must be equal to mailbox full_address" msgstr "Deve ser igual ao endereço completo da conta" -#: serializers.py:275 +#: serializers.py:291 msgid "Local domain {} does not exist" msgstr "Domínio local {} não existe" -#: serializers.py:373 +#: serializers.py:389 msgid "A list of recipient" msgstr "" -#: serializers.py:384 +#: serializers.py:400 msgid "Domain not found." msgstr "Domínio não encontrado." -#: serializers.py:433 +#: serializers.py:449 msgid "You don't have access to this domain." msgstr "" -#: serializers.py:441 +#: serializers.py:457 msgid "You don't have access to this mailbox." msgstr "" @@ -1017,11 +1038,8 @@ msgstr "Alias de caixas de correio" #: templates/admin/domain_detail.html:50 templates/admin/domain_detail.html:57 #: templates/admin/domain_detail.html:58 templates/admin/domain_detail.html:65 -#: templates/admin/domain_general_form.html:4 -#: templates/admin/domain_general_form.html:5 #: templates/admin/domains_quotas.html:11 -#: templates/admin/domains_quotas.html:12 templates/admin/mailform.html:7 -#: templates/admin/newdomainform.html:3 +#: templates/admin/domains_quotas.html:12 templates/admin/newdomainform.html:3 msgid "MB" msgstr "MB" @@ -1377,6 +1395,11 @@ msgstr "Importar identidades" msgid "Forward updated" msgstr "Encaminhamento atualizado" +#~ msgid "Quota in MB shared between mailboxes. A value of 0 means no quota." +#~ msgstr "" +#~ "Cota em MB compartilhada entre caixas de correio. Um valor de 0 significa " +#~ "sem cota." + #, fuzzy #~| msgid "No MX record found for this domain." #~ msgid "No DNS records found without MX for %(domain)s" diff --git a/modoboa/admin/locale/pt_PT/LC_MESSAGES/django.po b/modoboa/admin/locale/pt_PT/LC_MESSAGES/django.po index a08c3858e..66af1f6c9 100644 --- a/modoboa/admin/locale/pt_PT/LC_MESSAGES/django.po +++ b/modoboa/admin/locale/pt_PT/LC_MESSAGES/django.po @@ -13,7 +13,7 @@ msgid "" msgstr "" "Project-Id-Version: Modoboa\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-10-17 09:25+0200\n" +"POT-Creation-Date: 2018-10-17 13:41+0200\n" "PO-Revision-Date: 2014-12-29 12:51+0000\n" "Last-Translator: Mike C. \n" "Language-Team: Portuguese (Portugal) (http://www.transifex.com/projects/p/" @@ -129,7 +129,7 @@ msgstr "" "Quota (em MB) a aplicar a domínios recentemente criados sem valor " "especificado. Um valor de 0 implica sem quota." -#: app_settings.py:119 models/domain.py:41 +#: app_settings.py:119 forms/domain.py:53 models/domain.py:41 #: templates/admin/domain_detail.html:64 #, fuzzy #| msgid "Default domain quota" @@ -175,7 +175,7 @@ msgstr "" msgid "Create an alias using the old address when a mailbox is renamed." msgstr "" -#: app_settings.py:196 app_settings.py:204 forms/account.py:332 +#: app_settings.py:196 app_settings.py:204 forms/account.py:339 msgid "Must be a positive integer" msgstr "Tem de ser um inteiro, positivo" @@ -231,7 +231,7 @@ msgstr "Escolher" msgid "What level of permission this user will have" msgstr "Que nível de permissões terá o utilizador" -#: forms/account.py:48 forms/domain.py:224 +#: forms/account.py:48 forms/domain.py:249 #, fuzzy #| msgid "Invalid request" msgid "Random password" @@ -263,8 +263,8 @@ msgstr "Ativo" msgid "Only super administrators are allowed for this mode" msgstr "" -#: forms/account.py:182 forms/account.py:184 forms/domain.py:141 -#: forms/domain.py:270 forms/domain.py:273 serializers.py:263 +#: forms/account.py:182 forms/account.py:184 forms/domain.py:166 +#: forms/domain.py:295 forms/domain.py:298 serializers.py:279 #, fuzzy #| msgid "A mailbox is required" msgid "This field is required." @@ -286,27 +286,32 @@ msgstr "E-mail" msgid "Create an alias using the old address" msgstr "" -#: forms/account.py:233 templates/admin/account_detail.html:45 -#: templates/admin/domain_detail.html:49 +#: forms/account.py:233 forms/domain.py:45 +#: templates/admin/account_detail.html:45 templates/admin/domain_detail.html:49 msgid "Quota" msgstr "Quota" -#: forms/account.py:235 +#: forms/account.py:236 +#, fuzzy +#| msgid "" +#| "Quota in MB for this mailbox. Define a custom value or use domain's " +#| "default one. Leave empty to define an unlimited value (not allowed for " +#| "domain administrators)." msgid "" -"Quota in MB for this mailbox. Define a custom value or use domain's default " -"one. Leave empty to define an unlimited value (not allowed for domain " -"administrators)." +"Quota for this mailbox, can be expressed in KB, MB (default) or GB. Define a " +"custom value or use domain's default one. Leave empty to define an unlimited " +"value (not allowed for domain administrators)." msgstr "" "Quota em MB para esta caixa de correio. Definir uma valor personalizado ou " "usar o valor predefinido pelo domínio. Deixar em branco para definir uma " "valor ilimitado (não permitido para administradores do domínio)." -#: forms/account.py:243 forms/domain.py:35 +#: forms/account.py:246 forms/domain.py:35 #: templates/admin/domain_headers.html:4 msgid "Alias(es)" msgstr "Alias(es)" -#: forms/account.py:246 +#: forms/account.py:249 #, fuzzy #| msgid "" #| "Alias(es) of this mailbox. Indicate only one address per input, press " @@ -321,13 +326,13 @@ msgstr "" "clique ENTER para adicionar uma nova entrada. Use o '*' para criar um alias " "'catchall' (ex: *@domain.tld)." -#: forms/account.py:252 +#: forms/account.py:255 #, fuzzy #| msgid "Invalid request" msgid "Sender addresses" msgstr "Pedido inválido" -#: forms/account.py:255 +#: forms/account.py:258 #, fuzzy #| msgid "" #| "Mailbox(es) this alias will point to. Indicate only one address per " @@ -340,54 +345,54 @@ msgstr "" "Caixa(s) de correio para o qual este 'alias' aponta. Indicar apenas um " "endereço por entrada, pressionar ENTER para acrescentar uma nova entrada." -#: forms/account.py:310 forms/alias.py:92 models/mailbox.py:317 +#: forms/account.py:313 forms/alias.py:92 models/mailbox.py:317 msgid "Domain does not exist" msgstr "O domínio não existe" -#: forms/account.py:342 +#: forms/account.py:349 #, fuzzy #| msgid "Domain does not exist" msgid "Local domain does not exist" msgstr "O domínio não existe" -#: forms/account.py:346 forms/account.py:354 forms/alias.py:95 +#: forms/account.py:353 forms/account.py:361 forms/alias.py:95 msgid "You don't have access to this domain" msgstr "Não tem acesso a este domínio" -#: forms/account.py:453 +#: forms/account.py:460 msgid "Domain(s)" msgstr "Domínio(s)" -#: forms/account.py:455 +#: forms/account.py:462 msgid "Domain(s) that user administrates" msgstr "Domínio(s) administrado pelo utilizador" -#: forms/account.py:501 forms/account.py:591 forms/domain.py:341 -#: forms/domain.py:412 +#: forms/account.py:508 forms/account.py:598 forms/domain.py:366 +#: forms/domain.py:437 msgid "General" msgstr "Geral" -#: forms/account.py:505 +#: forms/account.py:512 msgid "Profile" msgstr "" -#: forms/account.py:509 forms/account.py:597 +#: forms/account.py:516 forms/account.py:604 msgid "Mail" msgstr "Correio" -#: forms/account.py:512 +#: forms/account.py:519 msgid "Permissions" msgstr "Permissões" -#: forms/account.py:580 +#: forms/account.py:587 msgid "Account updated" msgstr "Conta actualizada" -#: forms/account.py:605 +#: forms/account.py:612 msgid "New account" msgstr "Nova conta" -#: forms/account.py:615 +#: forms/account.py:622 msgid "Account created" msgstr "Conta criada" @@ -455,51 +460,75 @@ msgstr "" msgid "Key selector" msgstr "" -#: forms/domain.py:82 handlers.py:165 +#: forms/domain.py:48 models/domain.py:36 +#, fuzzy +#| msgid "" +#| "Default quota (in MB) applied to freshly created domains with no value " +#| "specified. A value of 0 means no quota." +msgid "" +"Quota shared between mailboxes. Can be expressed in KB, MB (default) or GB. " +"A value of 0 means no quota." +msgstr "" +"Quota (em MB) a aplicar a domínios recentemente criados sem valor " +"especificado. Um valor de 0 implica sem quota." + +#: forms/domain.py:56 +#, fuzzy +#| msgid "" +#| "Default quota (in MB) applied to freshly created domains with no value " +#| "specified. A value of 0 means no quota." +msgid "" +"Default quota applied to mailboxes. Can be expressed in KB, MB (default) or " +"GB. A value of 0 means no quota." +msgstr "" +"Quota (em MB) a aplicar a domínios recentemente criados sem valor " +"especificado. Um valor de 0 implica sem quota." + +#: forms/domain.py:98 handlers.py:165 msgid "domain alias" msgstr "'Alias' de domínio" -#: forms/domain.py:85 forms/domain.py:152 forms/domain.py:160 +#: forms/domain.py:101 forms/domain.py:177 forms/domain.py:185 #, python-format msgid "A %s with this name already exists" msgstr "Já existe um(a) %s com este nome. " -#: forms/domain.py:93 serializers.py:53 +#: forms/domain.py:109 serializers.py:56 msgid "No authorized MX record found for this domain" msgstr "" -#: forms/domain.py:105 +#: forms/domain.py:121 msgid "DKIM keys storage directory not configured" msgstr "" -#: forms/domain.py:126 serializers.py:63 +#: forms/domain.py:151 serializers.py:74 msgid "Cannot be greater than domain quota" msgstr "" -#: forms/domain.py:131 +#: forms/domain.py:156 msgid "You can't define an unlimited quota." msgstr "" -#: forms/domain.py:152 forms/domain.py:157 +#: forms/domain.py:177 forms/domain.py:182 msgid "domain" msgstr "domínio" -#: forms/domain.py:206 +#: forms/domain.py:231 msgid "Create a domain administrator" msgstr "Criar um administrador de domínio" -#: forms/domain.py:209 +#: forms/domain.py:234 msgid "Automatically create an administrator for this domain" msgstr "Criar automaticamente um administrador para este domínio" -#: forms/domain.py:214 templates/admin/domain_detail.html:121 +#: forms/domain.py:239 templates/admin/domain_detail.html:121 #: templates/admin/domain_headers.html:3 #: templates/admin/identity_headers.html:2 #: templates/admin/mx_domain_detail.html:9 msgid "Name" msgstr "Nome" -#: forms/domain.py:217 +#: forms/domain.py:242 msgid "" "The administrator's name. Don't include the domain's name here, it will be " "automatically appended." @@ -507,52 +536,52 @@ msgstr "" "O nome do administrador. Não inclua o nome do domínio já que este será " "automaticamente anexado." -#: forms/domain.py:227 +#: forms/domain.py:252 #, fuzzy #| msgid "Create a domain administrator" msgid "Generate a random password for the administrator." msgstr "Criar um administrador de domínio" -#: forms/domain.py:233 +#: forms/domain.py:258 msgid "With a mailbox" msgstr "" -#: forms/domain.py:236 +#: forms/domain.py:261 #, fuzzy #| msgid "Create a domain administrator" msgid "Create a mailbox for the administrator." msgstr "Criar um administrador de domínio" -#: forms/domain.py:242 +#: forms/domain.py:267 msgid "Create aliases" msgstr " Criar aliases" -#: forms/domain.py:245 +#: forms/domain.py:270 msgid "Automatically create standard aliases for this domain" msgstr "Criar automaticamente aliases para este domínio" -#: forms/domain.py:261 +#: forms/domain.py:286 msgid "Invalid format" msgstr "Formato inválido" -#: forms/domain.py:290 +#: forms/domain.py:315 #, python-format msgid "User '%s' already exists" msgstr "O utilizador '%s' já existe" -#: forms/domain.py:402 +#: forms/domain.py:427 msgid "Domain modified" msgstr "Domínio alterado" -#: forms/domain.py:423 +#: forms/domain.py:448 msgid "Options" msgstr "Opções" -#: forms/domain.py:431 +#: forms/domain.py:456 msgid "New domain" msgstr "Novo domínio" -#: forms/domain.py:444 +#: forms/domain.py:469 msgid "Domain created" msgstr "Domínio criado" @@ -762,16 +791,6 @@ msgstr "nome" msgid "The domain name" msgstr "O nome do domínio" -#: models/domain.py:36 -#, fuzzy -#| msgid "" -#| "Default quota (in MB) applied to freshly created domains with no value " -#| "specified. A value of 0 means no quota." -msgid "Quota in MB shared between mailboxes. A value of 0 means no quota." -msgstr "" -"Quota (em MB) a aplicar a domínios recentemente criados sem valor " -"especificado. Um valor de 0 implica sem quota." - #: models/domain.py:44 #, fuzzy #| msgid "" @@ -869,48 +888,48 @@ msgstr "É necessário uma quota" msgid "Domain quota exceeded" msgstr "Domínio criado" -#: serializers.py:88 serializers.py:288 serializers.py:386 +#: serializers.py:99 serializers.py:304 serializers.py:402 #, fuzzy #| msgid "Permissions" msgid "Permission denied." msgstr "Permissões" -#: serializers.py:134 +#: serializers.py:150 msgid "" "List of administered domains (resellers and domain administrators only)." msgstr "" -#: serializers.py:238 +#: serializers.py:254 msgid "Not allowed for this role." msgstr "" -#: serializers.py:250 +#: serializers.py:266 msgid "Must be equal to mailbox full_address" msgstr "" -#: serializers.py:275 +#: serializers.py:291 #, fuzzy #| msgid "Domain does not exist" msgid "Local domain {} does not exist" msgstr "O domínio não existe" -#: serializers.py:373 +#: serializers.py:389 msgid "A list of recipient" msgstr "" -#: serializers.py:384 +#: serializers.py:400 #, fuzzy #| msgid "Domain modified" msgid "Domain not found." msgstr "Domínio alterado" -#: serializers.py:433 +#: serializers.py:449 #, fuzzy #| msgid "You don't have access to this domain" msgid "You don't have access to this domain." msgstr "Não tem acesso a este domínio" -#: serializers.py:441 +#: serializers.py:457 #, fuzzy #| msgid "You don't have access to this domain" msgid "You don't have access to this mailbox." @@ -1106,11 +1125,8 @@ msgstr "Aliases para caixas de correio" #: templates/admin/domain_detail.html:50 templates/admin/domain_detail.html:57 #: templates/admin/domain_detail.html:58 templates/admin/domain_detail.html:65 -#: templates/admin/domain_general_form.html:4 -#: templates/admin/domain_general_form.html:5 #: templates/admin/domains_quotas.html:11 -#: templates/admin/domains_quotas.html:12 templates/admin/mailform.html:7 -#: templates/admin/newdomainform.html:3 +#: templates/admin/domains_quotas.html:12 templates/admin/newdomainform.html:3 msgid "MB" msgstr "MB" @@ -1462,6 +1478,15 @@ msgstr "Importar identidades" msgid "Forward updated" msgstr "Reencaminhamento atualizado" +#, fuzzy +#~| msgid "" +#~| "Default quota (in MB) applied to freshly created domains with no value " +#~| "specified. A value of 0 means no quota." +#~ msgid "Quota in MB shared between mailboxes. A value of 0 means no quota." +#~ msgstr "" +#~ "Quota (em MB) a aplicar a domínios recentemente criados sem valor " +#~ "especificado. Um valor de 0 implica sem quota." + #~ msgid "" #~ "Default quota in MB applied to mailboxes. Leave empty to use the default " #~ "value." diff --git a/modoboa/admin/locale/ro_RO/LC_MESSAGES/django.po b/modoboa/admin/locale/ro_RO/LC_MESSAGES/django.po index 74ae2aa9d..a53a4a68c 100644 --- a/modoboa/admin/locale/ro_RO/LC_MESSAGES/django.po +++ b/modoboa/admin/locale/ro_RO/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Modoboa\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-10-17 09:25+0200\n" +"POT-Creation-Date: 2018-10-17 13:41+0200\n" "PO-Revision-Date: 2018-07-03 13:17+0000\n" "Last-Translator: Andrei-Ilie Olteanu \n" "Language-Team: Romanian (Romania) (http://www.transifex.com/tonio/modoboa/" @@ -134,7 +134,7 @@ msgstr "" "Cota implicită (în MB) aplicată domeniilor nou create, care nu au nicio " "valoare specificată. O valoare de 0 înseamnă că nu există o cotă." -#: app_settings.py:119 models/domain.py:41 +#: app_settings.py:119 forms/domain.py:53 models/domain.py:41 #: templates/admin/domain_detail.html:64 msgid "Default mailbox quota" msgstr "Cota implicită pentru cutia poștală" @@ -175,7 +175,7 @@ msgstr "" "Creați un alias utilizând vechea adresă atunci când o cutie poștală este " "redenumită." -#: app_settings.py:196 app_settings.py:204 forms/account.py:332 +#: app_settings.py:196 app_settings.py:204 forms/account.py:339 msgid "Must be a positive integer" msgstr "Trebuie să fie un număr întreg pozitiv" @@ -229,7 +229,7 @@ msgstr "Alege" msgid "What level of permission this user will have" msgstr "Ce nivel de permisiune va avea acest utilizator" -#: forms/account.py:48 forms/domain.py:224 +#: forms/account.py:48 forms/domain.py:249 msgid "Random password" msgstr "Parolă aleatorie" @@ -261,8 +261,8 @@ msgstr "Activat" msgid "Only super administrators are allowed for this mode" msgstr "Numai superadministratorii sunt permiși la acest mod" -#: forms/account.py:182 forms/account.py:184 forms/domain.py:141 -#: forms/domain.py:270 forms/domain.py:273 serializers.py:263 +#: forms/account.py:182 forms/account.py:184 forms/domain.py:166 +#: forms/domain.py:295 forms/domain.py:298 serializers.py:279 msgid "This field is required." msgstr "Acest câmp este necesar." @@ -282,27 +282,32 @@ msgstr "E-mail" msgid "Create an alias using the old address" msgstr "Crează un alias folosind vechea adresă" -#: forms/account.py:233 templates/admin/account_detail.html:45 -#: templates/admin/domain_detail.html:49 +#: forms/account.py:233 forms/domain.py:45 +#: templates/admin/account_detail.html:45 templates/admin/domain_detail.html:49 msgid "Quota" msgstr "Cotă-parte" -#: forms/account.py:235 +#: forms/account.py:236 +#, fuzzy +#| msgid "" +#| "Quota in MB for this mailbox. Define a custom value or use domain's " +#| "default one. Leave empty to define an unlimited value (not allowed for " +#| "domain administrators)." msgid "" -"Quota in MB for this mailbox. Define a custom value or use domain's default " -"one. Leave empty to define an unlimited value (not allowed for domain " -"administrators)." +"Quota for this mailbox, can be expressed in KB, MB (default) or GB. Define a " +"custom value or use domain's default one. Leave empty to define an unlimited " +"value (not allowed for domain administrators)." msgstr "" "Cota în MB pentru această căsuță poștală. Definiți o valoare particularizată " "sau utilizați valurea prestabilită a domeniului. Lăsați gol pentru a defini " "o valoare nelimitată (nu este permisă pentru administratorii de domeniu)." -#: forms/account.py:243 forms/domain.py:35 +#: forms/account.py:246 forms/domain.py:35 #: templates/admin/domain_headers.html:4 msgid "Alias(es)" msgstr "Alias(uri)" -#: forms/account.py:246 +#: forms/account.py:249 msgid "" "Alias(es) of this mailbox. Indicate only one address per input, press ENTER " "to add a new input. To create a catchall alias, just enter the domain name " @@ -313,11 +318,11 @@ msgstr "" "un alias de captură care sa prindă toate emailurile, trebuie doar să " "introduceți numele domeniului (@ domain.tld)." -#: forms/account.py:252 +#: forms/account.py:255 msgid "Sender addresses" msgstr "Adresa expeditorului" -#: forms/account.py:255 +#: forms/account.py:258 msgid "" "Additional sender address(es) for this account. The user will be allowed to " "send emails using this address, even if it does not exist locally. Indicate " @@ -328,52 +333,52 @@ msgstr "" "există pe plan local. Indicați o adresă pentru fiecare intrare. Apăsați " "ENTER pentru a adăuga o intrare nouă." -#: forms/account.py:310 forms/alias.py:92 models/mailbox.py:317 +#: forms/account.py:313 forms/alias.py:92 models/mailbox.py:317 msgid "Domain does not exist" msgstr "Domeniul nu există" -#: forms/account.py:342 +#: forms/account.py:349 msgid "Local domain does not exist" msgstr "Domeniul local nu există" -#: forms/account.py:346 forms/account.py:354 forms/alias.py:95 +#: forms/account.py:353 forms/account.py:361 forms/alias.py:95 msgid "You don't have access to this domain" msgstr "Nu aveți acces la acest domeniu" -#: forms/account.py:453 +#: forms/account.py:460 msgid "Domain(s)" msgstr "Domeniu(ii)" -#: forms/account.py:455 +#: forms/account.py:462 msgid "Domain(s) that user administrates" msgstr "Domeniu(ii) pe care utilizatorul le administrează" -#: forms/account.py:501 forms/account.py:591 forms/domain.py:341 -#: forms/domain.py:412 +#: forms/account.py:508 forms/account.py:598 forms/domain.py:366 +#: forms/domain.py:437 msgid "General" msgstr "General" -#: forms/account.py:505 +#: forms/account.py:512 msgid "Profile" msgstr "Profil" -#: forms/account.py:509 forms/account.py:597 +#: forms/account.py:516 forms/account.py:604 msgid "Mail" msgstr "Mail" -#: forms/account.py:512 +#: forms/account.py:519 msgid "Permissions" msgstr "Permisiuni" -#: forms/account.py:580 +#: forms/account.py:587 msgid "Account updated" msgstr "Cont actualizat" -#: forms/account.py:605 +#: forms/account.py:612 msgid "New account" msgstr "Cont nou" -#: forms/account.py:615 +#: forms/account.py:622 msgid "Account created" msgstr "Cont creat" @@ -429,51 +434,73 @@ msgstr "" msgid "Key selector" msgstr "Selector cheie" -#: forms/domain.py:82 handlers.py:165 +#: forms/domain.py:48 models/domain.py:36 +#, fuzzy +#| msgid "" +#| "Default quota in MB applied to mailboxes. A value of 0 means no quota." +msgid "" +"Quota shared between mailboxes. Can be expressed in KB, MB (default) or GB. " +"A value of 0 means no quota." +msgstr "" +"Cota implicită exprimată în MB aplivată la cutiile poștale. O valuare 0 " +"înseamnă fără cotă." + +#: forms/domain.py:56 +#, fuzzy +#| msgid "" +#| "Default quota in MB applied to mailboxes. A value of 0 means no quota." +msgid "" +"Default quota applied to mailboxes. Can be expressed in KB, MB (default) or " +"GB. A value of 0 means no quota." +msgstr "" +"Cota implicită exprimată în MB aplivată la cutiile poștale. O valuare 0 " +"înseamnă fără cotă." + +#: forms/domain.py:98 handlers.py:165 msgid "domain alias" msgstr "alias domeniu" -#: forms/domain.py:85 forms/domain.py:152 forms/domain.py:160 +#: forms/domain.py:101 forms/domain.py:177 forms/domain.py:185 #, python-format msgid "A %s with this name already exists" msgstr "Itemul%s cu acest nume există" -#: forms/domain.py:93 serializers.py:53 +#: forms/domain.py:109 serializers.py:56 msgid "No authorized MX record found for this domain" msgstr "Nu s-au gasit înregistrări MX autorizate pentru acest domeniu" -#: forms/domain.py:105 +#: forms/domain.py:121 msgid "DKIM keys storage directory not configured" msgstr "Folderul de stocare a cheilor DKIM nu este configurat" -#: forms/domain.py:126 serializers.py:63 +#: forms/domain.py:151 serializers.py:74 msgid "Cannot be greater than domain quota" msgstr "Nu poate fi mai mare decat cota domeniului" -#: forms/domain.py:131 +#: forms/domain.py:156 msgid "You can't define an unlimited quota." msgstr "Nu poți sa definești o cotă nelimitată" -#: forms/domain.py:152 forms/domain.py:157 +#: forms/domain.py:177 forms/domain.py:182 msgid "domain" msgstr "domeniu" -#: forms/domain.py:206 +#: forms/domain.py:231 msgid "Create a domain administrator" msgstr "Creați un administrator de domeniu" -#: forms/domain.py:209 +#: forms/domain.py:234 msgid "Automatically create an administrator for this domain" msgstr "Creează automat un administrator pentru acest domeniu" -#: forms/domain.py:214 templates/admin/domain_detail.html:121 +#: forms/domain.py:239 templates/admin/domain_detail.html:121 #: templates/admin/domain_headers.html:3 #: templates/admin/identity_headers.html:2 #: templates/admin/mx_domain_detail.html:9 msgid "Name" msgstr "Nume" -#: forms/domain.py:217 +#: forms/domain.py:242 msgid "" "The administrator's name. Don't include the domain's name here, it will be " "automatically appended." @@ -481,48 +508,48 @@ msgstr "" "Numele administratorului. Nu include aici si numele domeniului, el va fi " "automat alipit. " -#: forms/domain.py:227 +#: forms/domain.py:252 msgid "Generate a random password for the administrator." msgstr "Generează o parolă aleatorie pentru administrator." -#: forms/domain.py:233 +#: forms/domain.py:258 msgid "With a mailbox" msgstr "Cu casuță postală" -#: forms/domain.py:236 +#: forms/domain.py:261 msgid "Create a mailbox for the administrator." msgstr "Creează o căsuță postală pentru administrator. " -#: forms/domain.py:242 +#: forms/domain.py:267 msgid "Create aliases" msgstr "Crează aliasuri " -#: forms/domain.py:245 +#: forms/domain.py:270 msgid "Automatically create standard aliases for this domain" msgstr "Creează automat aliasuri standard pentru acest domeniu" -#: forms/domain.py:261 +#: forms/domain.py:286 msgid "Invalid format" msgstr "Format invalid" -#: forms/domain.py:290 +#: forms/domain.py:315 #, python-format msgid "User '%s' already exists" msgstr "Utilizatorul '%s'  exista deja" -#: forms/domain.py:402 +#: forms/domain.py:427 msgid "Domain modified" msgstr "Domeniu modficat" -#: forms/domain.py:423 +#: forms/domain.py:448 msgid "Options" msgstr "Opțiuni" -#: forms/domain.py:431 +#: forms/domain.py:456 msgid "New domain" msgstr "Domeniu nou" -#: forms/domain.py:444 +#: forms/domain.py:469 msgid "Domain created" msgstr "Domeniu creat" @@ -727,11 +754,6 @@ msgstr "nume" msgid "The domain name" msgstr "Numele domeniului" -#: models/domain.py:36 -msgid "Quota in MB shared between mailboxes. A value of 0 means no quota." -msgstr "" -"Cota în MB impărțită între cutiile poștale. O valuare 0 înseamnă fără cotă." - #: models/domain.py:44 msgid "Default quota in MB applied to mailboxes. A value of 0 means no quota." msgstr "" @@ -821,41 +843,41 @@ msgstr "O cotă este necesară" msgid "Domain quota exceeded" msgstr "Cota pentru domeniu a fost depașită" -#: serializers.py:88 serializers.py:288 serializers.py:386 +#: serializers.py:99 serializers.py:304 serializers.py:402 msgid "Permission denied." msgstr "Permisiune refuzată." -#: serializers.py:134 +#: serializers.py:150 msgid "" "List of administered domains (resellers and domain administrators only)." msgstr "" "Lista domenilor administrate (doar reselleri și administratori de domeniu)" -#: serializers.py:238 +#: serializers.py:254 msgid "Not allowed for this role." msgstr "Ne permis pentru acest rol." -#: serializers.py:250 +#: serializers.py:266 msgid "Must be equal to mailbox full_address" msgstr "Trebuie să fie egal cu mailbox full_address" -#: serializers.py:275 +#: serializers.py:291 msgid "Local domain {} does not exist" msgstr "Domeniu local {} nu există" -#: serializers.py:373 +#: serializers.py:389 msgid "A list of recipient" msgstr "O listă de destinatari" -#: serializers.py:384 +#: serializers.py:400 msgid "Domain not found." msgstr "Domeniu negăsit" -#: serializers.py:433 +#: serializers.py:449 msgid "You don't have access to this domain." msgstr "Nu ai acces la acest domeniu." -#: serializers.py:441 +#: serializers.py:457 msgid "You don't have access to this mailbox." msgstr "Nu ai acces la această cutie postală" @@ -1017,11 +1039,8 @@ msgstr "Alias-uri cutii poștale" #: templates/admin/domain_detail.html:50 templates/admin/domain_detail.html:57 #: templates/admin/domain_detail.html:58 templates/admin/domain_detail.html:65 -#: templates/admin/domain_general_form.html:4 -#: templates/admin/domain_general_form.html:5 #: templates/admin/domains_quotas.html:11 -#: templates/admin/domains_quotas.html:12 templates/admin/mailform.html:7 -#: templates/admin/newdomainform.html:3 +#: templates/admin/domains_quotas.html:12 templates/admin/newdomainform.html:3 msgid "MB" msgstr "MB" @@ -1381,6 +1400,11 @@ msgstr "Importă identități" msgid "Forward updated" msgstr "Redirecționare actualizată" +#~ msgid "Quota in MB shared between mailboxes. A value of 0 means no quota." +#~ msgstr "" +#~ "Cota în MB impărțită între cutiile poștale. O valuare 0 înseamnă fără " +#~ "cotă." + #, fuzzy #~| msgid "No DNS records found for %s" #~ msgid "No DNS records found without MX for %s" diff --git a/modoboa/admin/locale/ru/LC_MESSAGES/django.po b/modoboa/admin/locale/ru/LC_MESSAGES/django.po index 14008500c..d340da7e1 100644 --- a/modoboa/admin/locale/ru/LC_MESSAGES/django.po +++ b/modoboa/admin/locale/ru/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Modoboa\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-10-17 09:25+0200\n" +"POT-Creation-Date: 2018-10-17 13:41+0200\n" "PO-Revision-Date: 2013-12-03 09:35+0000\n" "Last-Translator: Antoine Nguyen \n" "Language-Team: Russian (http://www.transifex.com/projects/p/modoboa/language/" @@ -123,7 +123,7 @@ msgid "" "specified. A value of 0 means no quota." msgstr "" -#: app_settings.py:119 models/domain.py:41 +#: app_settings.py:119 forms/domain.py:53 models/domain.py:41 #: templates/admin/domain_detail.html:64 msgid "Default mailbox quota" msgstr "" @@ -159,7 +159,7 @@ msgstr "" msgid "Create an alias using the old address when a mailbox is renamed." msgstr "" -#: app_settings.py:196 app_settings.py:204 forms/account.py:332 +#: app_settings.py:196 app_settings.py:204 forms/account.py:339 msgid "Must be a positive integer" msgstr "" @@ -215,7 +215,7 @@ msgstr "Выбрать" msgid "What level of permission this user will have" msgstr "Разрешения для этого пользователя" -#: forms/account.py:48 forms/domain.py:224 +#: forms/account.py:48 forms/domain.py:249 #, fuzzy #| msgid "Invalid request" msgid "Random password" @@ -247,8 +247,8 @@ msgstr "Разрешено" msgid "Only super administrators are allowed for this mode" msgstr "" -#: forms/account.py:182 forms/account.py:184 forms/domain.py:141 -#: forms/domain.py:270 forms/domain.py:273 serializers.py:263 +#: forms/account.py:182 forms/account.py:184 forms/domain.py:166 +#: forms/domain.py:295 forms/domain.py:298 serializers.py:279 #, fuzzy #| msgid "A quota is required" msgid "This field is required." @@ -270,28 +270,33 @@ msgstr "Е-майл" msgid "Create an alias using the old address" msgstr "" -#: forms/account.py:233 templates/admin/account_detail.html:45 -#: templates/admin/domain_detail.html:49 +#: forms/account.py:233 forms/domain.py:45 +#: templates/admin/account_detail.html:45 templates/admin/domain_detail.html:49 msgid "Quota" msgstr "Квота" -#: forms/account.py:235 +#: forms/account.py:236 +#, fuzzy +#| msgid "" +#| "Quota in MB for this mailbox. Define a custom value or use domain's " +#| "default one. Leave empty to define an unlimited value (not allowed for " +#| "domain administrators)." msgid "" -"Quota in MB for this mailbox. Define a custom value or use domain's default " -"one. Leave empty to define an unlimited value (not allowed for domain " -"administrators)." +"Quota for this mailbox, can be expressed in KB, MB (default) or GB. Define a " +"custom value or use domain's default one. Leave empty to define an unlimited " +"value (not allowed for domain administrators)." msgstr "" "Квота в мегабайтах для этого почтового ящика. Определите собственное " "значение или используйте значение по умолчанию для родительского домена. " "Оставьте пустым для неограниченного значения. (Не разрешено администраторам " "домена)" -#: forms/account.py:243 forms/domain.py:35 +#: forms/account.py:246 forms/domain.py:35 #: templates/admin/domain_headers.html:4 msgid "Alias(es)" msgstr "Синоним(ы)" -#: forms/account.py:246 +#: forms/account.py:249 #, fuzzy #| msgid "" #| "Alias(es) of this mailbox. Indicate only one address per input, press " @@ -305,13 +310,13 @@ msgstr "" "Синонимы этого почтового ящика. Вводите один адрес за раз. Нажмите ENTER для " "добавления. Используйте '*' для создания синонима 'для всех' (*@domain.tld)" -#: forms/account.py:252 +#: forms/account.py:255 #, fuzzy #| msgid "Invalid request" msgid "Sender addresses" msgstr "Ошибочный запрос" -#: forms/account.py:255 +#: forms/account.py:258 #, fuzzy #| msgid "" #| "Mailbox(es) this alias will point to. Indicate only one address per " @@ -324,54 +329,54 @@ msgstr "" "Этот синоним почтового ящика. Вводите один адрес за раз. Нажмите ENTER для " "добавления." -#: forms/account.py:310 forms/alias.py:92 models/mailbox.py:317 +#: forms/account.py:313 forms/alias.py:92 models/mailbox.py:317 msgid "Domain does not exist" msgstr "Домен не существует" -#: forms/account.py:342 +#: forms/account.py:349 #, fuzzy #| msgid "Domain does not exist" msgid "Local domain does not exist" msgstr "Домен не существует" -#: forms/account.py:346 forms/account.py:354 forms/alias.py:95 +#: forms/account.py:353 forms/account.py:361 forms/alias.py:95 msgid "You don't have access to this domain" msgstr "Вы не имеете права доступа к этому домену" -#: forms/account.py:453 +#: forms/account.py:460 msgid "Domain(s)" msgstr "Домен(ы)" -#: forms/account.py:455 +#: forms/account.py:462 msgid "Domain(s) that user administrates" msgstr "Домен(ы) администрируемые пользователем" -#: forms/account.py:501 forms/account.py:591 forms/domain.py:341 -#: forms/domain.py:412 +#: forms/account.py:508 forms/account.py:598 forms/domain.py:366 +#: forms/domain.py:437 msgid "General" msgstr "Основные" -#: forms/account.py:505 +#: forms/account.py:512 msgid "Profile" msgstr "" -#: forms/account.py:509 forms/account.py:597 +#: forms/account.py:516 forms/account.py:604 msgid "Mail" msgstr "Почта" -#: forms/account.py:512 +#: forms/account.py:519 msgid "Permissions" msgstr "Права" -#: forms/account.py:580 +#: forms/account.py:587 msgid "Account updated" msgstr "аккаунт изменен" -#: forms/account.py:605 +#: forms/account.py:612 msgid "New account" msgstr "Новый аккаунт" -#: forms/account.py:615 +#: forms/account.py:622 msgid "Account created" msgstr "Аккаунт создан" @@ -439,51 +444,63 @@ msgstr "" msgid "Key selector" msgstr "" -#: forms/domain.py:82 handlers.py:165 +#: forms/domain.py:48 models/domain.py:36 +msgid "" +"Quota shared between mailboxes. Can be expressed in KB, MB (default) or GB. " +"A value of 0 means no quota." +msgstr "" + +#: forms/domain.py:56 +msgid "" +"Default quota applied to mailboxes. Can be expressed in KB, MB (default) or " +"GB. A value of 0 means no quota." +msgstr "" + +#: forms/domain.py:98 handlers.py:165 msgid "domain alias" msgstr "" -#: forms/domain.py:85 forms/domain.py:152 forms/domain.py:160 +#: forms/domain.py:101 forms/domain.py:177 forms/domain.py:185 #, python-format msgid "A %s with this name already exists" msgstr "" -#: forms/domain.py:93 serializers.py:53 +#: forms/domain.py:109 serializers.py:56 msgid "No authorized MX record found for this domain" msgstr "" -#: forms/domain.py:105 +#: forms/domain.py:121 msgid "DKIM keys storage directory not configured" msgstr "" -#: forms/domain.py:126 serializers.py:63 +#: forms/domain.py:151 serializers.py:74 msgid "Cannot be greater than domain quota" msgstr "" -#: forms/domain.py:131 +#: forms/domain.py:156 msgid "You can't define an unlimited quota." msgstr "" -#: forms/domain.py:152 forms/domain.py:157 +#: forms/domain.py:177 forms/domain.py:182 msgid "domain" msgstr "" -#: forms/domain.py:206 +#: forms/domain.py:231 msgid "Create a domain administrator" msgstr "Создание администратора домена" -#: forms/domain.py:209 +#: forms/domain.py:234 msgid "Automatically create an administrator for this domain" msgstr "Автоматически создаст администратора для этого домена" -#: forms/domain.py:214 templates/admin/domain_detail.html:121 +#: forms/domain.py:239 templates/admin/domain_detail.html:121 #: templates/admin/domain_headers.html:3 #: templates/admin/identity_headers.html:2 #: templates/admin/mx_domain_detail.html:9 msgid "Name" msgstr "Логин" -#: forms/domain.py:217 +#: forms/domain.py:242 msgid "" "The administrator's name. Don't include the domain's name here, it will be " "automatically appended." @@ -491,52 +508,52 @@ msgstr "" "Имя администратора. Не включайте имя домена оно будет добавлено " "автоматически." -#: forms/domain.py:227 +#: forms/domain.py:252 #, fuzzy #| msgid "Create a domain administrator" msgid "Generate a random password for the administrator." msgstr "Создание администратора домена" -#: forms/domain.py:233 +#: forms/domain.py:258 msgid "With a mailbox" msgstr "" -#: forms/domain.py:236 +#: forms/domain.py:261 #, fuzzy #| msgid "Create a domain administrator" msgid "Create a mailbox for the administrator." msgstr "Создание администратора домена" -#: forms/domain.py:242 +#: forms/domain.py:267 msgid "Create aliases" msgstr "Создание синонимов" -#: forms/domain.py:245 +#: forms/domain.py:270 msgid "Automatically create standard aliases for this domain" msgstr "Автоматически создает стандартные синонимы для этого домена" -#: forms/domain.py:261 +#: forms/domain.py:286 msgid "Invalid format" msgstr "Неверный формат" -#: forms/domain.py:290 +#: forms/domain.py:315 #, python-format msgid "User '%s' already exists" msgstr "Пользователь '%s' уже существует" -#: forms/domain.py:402 +#: forms/domain.py:427 msgid "Domain modified" msgstr "Домен изменен" -#: forms/domain.py:423 +#: forms/domain.py:448 msgid "Options" msgstr "Опции" -#: forms/domain.py:431 +#: forms/domain.py:456 msgid "New domain" msgstr "Новый домен" -#: forms/domain.py:444 +#: forms/domain.py:469 msgid "Domain created" msgstr "Домен создан" @@ -746,10 +763,6 @@ msgstr "имя" msgid "The domain name" msgstr "Имя домена" -#: models/domain.py:36 -msgid "Quota in MB shared between mailboxes. A value of 0 means no quota." -msgstr "" - #: models/domain.py:44 msgid "Default quota in MB applied to mailboxes. A value of 0 means no quota." msgstr "" @@ -837,48 +850,48 @@ msgstr "Требуется квота" msgid "Domain quota exceeded" msgstr "Домен создан" -#: serializers.py:88 serializers.py:288 serializers.py:386 +#: serializers.py:99 serializers.py:304 serializers.py:402 #, fuzzy #| msgid "Permissions" msgid "Permission denied." msgstr "Права" -#: serializers.py:134 +#: serializers.py:150 msgid "" "List of administered domains (resellers and domain administrators only)." msgstr "" -#: serializers.py:238 +#: serializers.py:254 msgid "Not allowed for this role." msgstr "" -#: serializers.py:250 +#: serializers.py:266 msgid "Must be equal to mailbox full_address" msgstr "" -#: serializers.py:275 +#: serializers.py:291 #, fuzzy #| msgid "Domain does not exist" msgid "Local domain {} does not exist" msgstr "Домен не существует" -#: serializers.py:373 +#: serializers.py:389 msgid "A list of recipient" msgstr "" -#: serializers.py:384 +#: serializers.py:400 #, fuzzy #| msgid "Domain modified" msgid "Domain not found." msgstr "Домен изменен" -#: serializers.py:433 +#: serializers.py:449 #, fuzzy #| msgid "You don't have access to this domain" msgid "You don't have access to this domain." msgstr "Вы не имеете права доступа к этому домену" -#: serializers.py:441 +#: serializers.py:457 #, fuzzy #| msgid "You don't have access to this domain" msgid "You don't have access to this mailbox." @@ -1071,11 +1084,8 @@ msgstr "Синонимы почтового ящика" #: templates/admin/domain_detail.html:50 templates/admin/domain_detail.html:57 #: templates/admin/domain_detail.html:58 templates/admin/domain_detail.html:65 -#: templates/admin/domain_general_form.html:4 -#: templates/admin/domain_general_form.html:5 #: templates/admin/domains_quotas.html:11 -#: templates/admin/domains_quotas.html:12 templates/admin/mailform.html:7 -#: templates/admin/newdomainform.html:3 +#: templates/admin/domains_quotas.html:12 templates/admin/newdomainform.html:3 msgid "MB" msgstr "Мб" diff --git a/modoboa/admin/locale/sv/LC_MESSAGES/django.po b/modoboa/admin/locale/sv/LC_MESSAGES/django.po index 33efd950c..b45d2b983 100644 --- a/modoboa/admin/locale/sv/LC_MESSAGES/django.po +++ b/modoboa/admin/locale/sv/LC_MESSAGES/django.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: Modoboa\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-10-17 09:25+0200\n" +"POT-Creation-Date: 2018-10-17 13:41+0200\n" "PO-Revision-Date: 2018-08-14 08:35+0000\n" "Last-Translator: Olle Gustafsson \n" "Language-Team: Swedish (http://www.transifex.com/tonio/modoboa/language/" @@ -133,7 +133,7 @@ msgstr "" "Standard kvota (i MB) applicerad på nyskapade domäner som inte har något " "värde specificerat. Ett värde på 0 betyder ingen kvota." -#: app_settings.py:119 models/domain.py:41 +#: app_settings.py:119 forms/domain.py:53 models/domain.py:41 #: templates/admin/domain_detail.html:64 msgid "Default mailbox quota" msgstr "Standard brevlåde kvota" @@ -170,7 +170,7 @@ msgstr "Skapa ett alias när en brevlåda döps om" msgid "Create an alias using the old address when a mailbox is renamed." msgstr "Skapa ett alias med den gamla adressen när en brevlåda bytt namn." -#: app_settings.py:196 app_settings.py:204 forms/account.py:332 +#: app_settings.py:196 app_settings.py:204 forms/account.py:339 msgid "Must be a positive integer" msgstr "Måste vara ett positivt heltal" @@ -224,7 +224,7 @@ msgstr "Välj" msgid "What level of permission this user will have" msgstr "Vilken nivå av behörighet den här användaren har" -#: forms/account.py:48 forms/domain.py:224 +#: forms/account.py:48 forms/domain.py:249 msgid "Random password" msgstr "Slumpmässigt lösenord" @@ -256,8 +256,8 @@ msgstr "Aktiverad" msgid "Only super administrators are allowed for this mode" msgstr "Endast superadmininstratörer tillåts åtkomst till det här läget" -#: forms/account.py:182 forms/account.py:184 forms/domain.py:141 -#: forms/domain.py:270 forms/domain.py:273 serializers.py:263 +#: forms/account.py:182 forms/account.py:184 forms/domain.py:166 +#: forms/domain.py:295 forms/domain.py:298 serializers.py:279 msgid "This field is required." msgstr "Detta fält krävs." @@ -277,27 +277,32 @@ msgstr "E-post" msgid "Create an alias using the old address" msgstr "Skapa ett alias med den gamla adressen" -#: forms/account.py:233 templates/admin/account_detail.html:45 -#: templates/admin/domain_detail.html:49 +#: forms/account.py:233 forms/domain.py:45 +#: templates/admin/account_detail.html:45 templates/admin/domain_detail.html:49 msgid "Quota" msgstr "Kvot" -#: forms/account.py:235 +#: forms/account.py:236 +#, fuzzy +#| msgid "" +#| "Quota in MB for this mailbox. Define a custom value or use domain's " +#| "default one. Leave empty to define an unlimited value (not allowed for " +#| "domain administrators)." msgid "" -"Quota in MB for this mailbox. Define a custom value or use domain's default " -"one. Leave empty to define an unlimited value (not allowed for domain " -"administrators)." +"Quota for this mailbox, can be expressed in KB, MB (default) or GB. Define a " +"custom value or use domain's default one. Leave empty to define an unlimited " +"value (not allowed for domain administrators)." msgstr "" "Kvot i MB för denna brevlåda. Definiera ett anpassat värde eller använda " "domänens förvalda. Lämna tomt för att definiera ett obegränsat värde (ej " "tillåtet för domänadministratörer)." -#: forms/account.py:243 forms/domain.py:35 +#: forms/account.py:246 forms/domain.py:35 #: templates/admin/domain_headers.html:4 msgid "Alias(es)" msgstr "Alias" -#: forms/account.py:246 +#: forms/account.py:249 msgid "" "Alias(es) of this mailbox. Indicate only one address per input, press ENTER " "to add a new input. To create a catchall alias, just enter the domain name " @@ -307,11 +312,11 @@ msgstr "" "för att lägga till nytt. För att skapa ett \"catch-all\" alias, ange bara " "domännamnet (@domain.tld)." -#: forms/account.py:252 +#: forms/account.py:255 msgid "Sender addresses" msgstr "Avsändaradress" -#: forms/account.py:255 +#: forms/account.py:258 msgid "" "Additional sender address(es) for this account. The user will be allowed to " "send emails using this address, even if it does not exist locally. Indicate " @@ -321,52 +326,52 @@ msgstr "" "med från denna adress, även om den inte finns lokalt. Ange en adress per " "rad. Tryck RETUR för att lägga till ny rad." -#: forms/account.py:310 forms/alias.py:92 models/mailbox.py:317 +#: forms/account.py:313 forms/alias.py:92 models/mailbox.py:317 msgid "Domain does not exist" msgstr "Domän existerar inte" -#: forms/account.py:342 +#: forms/account.py:349 msgid "Local domain does not exist" msgstr "Lokal domän existerar inte" -#: forms/account.py:346 forms/account.py:354 forms/alias.py:95 +#: forms/account.py:353 forms/account.py:361 forms/alias.py:95 msgid "You don't have access to this domain" msgstr "Du har inte åtkomst till denna domän" -#: forms/account.py:453 +#: forms/account.py:460 msgid "Domain(s)" msgstr "Domän(er)" -#: forms/account.py:455 +#: forms/account.py:462 msgid "Domain(s) that user administrates" msgstr "Domän(er) användaren administrerar" -#: forms/account.py:501 forms/account.py:591 forms/domain.py:341 -#: forms/domain.py:412 +#: forms/account.py:508 forms/account.py:598 forms/domain.py:366 +#: forms/domain.py:437 msgid "General" msgstr "Generellt" -#: forms/account.py:505 +#: forms/account.py:512 msgid "Profile" msgstr "Profil" -#: forms/account.py:509 forms/account.py:597 +#: forms/account.py:516 forms/account.py:604 msgid "Mail" msgstr "Post" -#: forms/account.py:512 +#: forms/account.py:519 msgid "Permissions" msgstr "Rättigheter" -#: forms/account.py:580 +#: forms/account.py:587 msgid "Account updated" msgstr "Konto uppdaterat" -#: forms/account.py:605 +#: forms/account.py:612 msgid "New account" msgstr "Nytt konto" -#: forms/account.py:615 +#: forms/account.py:622 msgid "Account created" msgstr "Konto skapat" @@ -421,51 +426,69 @@ msgstr "" msgid "Key selector" msgstr "Nyckelväljare" -#: forms/domain.py:82 handlers.py:165 +#: forms/domain.py:48 models/domain.py:36 +#, fuzzy +#| msgid "" +#| "Default quota in MB applied to mailboxes. A value of 0 means no quota." +msgid "" +"Quota shared between mailboxes. Can be expressed in KB, MB (default) or GB. " +"A value of 0 means no quota." +msgstr "Standardkvota i MB applicerad på nya brevlådor. 0 betyder ingen kvota." + +#: forms/domain.py:56 +#, fuzzy +#| msgid "" +#| "Default quota in MB applied to mailboxes. A value of 0 means no quota." +msgid "" +"Default quota applied to mailboxes. Can be expressed in KB, MB (default) or " +"GB. A value of 0 means no quota." +msgstr "Standardkvota i MB applicerad på nya brevlådor. 0 betyder ingen kvota." + +#: forms/domain.py:98 handlers.py:165 msgid "domain alias" msgstr "domän alias" -#: forms/domain.py:85 forms/domain.py:152 forms/domain.py:160 +#: forms/domain.py:101 forms/domain.py:177 forms/domain.py:185 #, python-format msgid "A %s with this name already exists" msgstr "En %s med detta namn finns redan" -#: forms/domain.py:93 serializers.py:53 +#: forms/domain.py:109 serializers.py:56 msgid "No authorized MX record found for this domain" msgstr "Inga auktoriserade MX inlägg finns för denna domänen" -#: forms/domain.py:105 +#: forms/domain.py:121 msgid "DKIM keys storage directory not configured" msgstr "DKIM nycklar lagringskatalog ej konfigurerad" -#: forms/domain.py:126 serializers.py:63 +#: forms/domain.py:151 serializers.py:74 msgid "Cannot be greater than domain quota" msgstr "Får inte vara större än domän kvot" -#: forms/domain.py:131 +#: forms/domain.py:156 msgid "You can't define an unlimited quota." msgstr "Du kan inte ange en obegränsad kvota." -#: forms/domain.py:152 forms/domain.py:157 +#: forms/domain.py:177 forms/domain.py:182 msgid "domain" msgstr "domän" -#: forms/domain.py:206 +#: forms/domain.py:231 msgid "Create a domain administrator" msgstr "Skapa en domän administratör" -#: forms/domain.py:209 +#: forms/domain.py:234 msgid "Automatically create an administrator for this domain" msgstr "Skapa en domän administratör automatiskt för denna domän" -#: forms/domain.py:214 templates/admin/domain_detail.html:121 +#: forms/domain.py:239 templates/admin/domain_detail.html:121 #: templates/admin/domain_headers.html:3 #: templates/admin/identity_headers.html:2 #: templates/admin/mx_domain_detail.html:9 msgid "Name" msgstr "Namn" -#: forms/domain.py:217 +#: forms/domain.py:242 msgid "" "The administrator's name. Don't include the domain's name here, it will be " "automatically appended." @@ -473,48 +496,48 @@ msgstr "" "Administratörens namn. Inkludera inte domänens namn här, den kommer att " "läggas till automatiskt." -#: forms/domain.py:227 +#: forms/domain.py:252 msgid "Generate a random password for the administrator." msgstr "Skapa ett slumpmässigt lösenord för administratören." -#: forms/domain.py:233 +#: forms/domain.py:258 msgid "With a mailbox" msgstr "Med en brevlåda" -#: forms/domain.py:236 +#: forms/domain.py:261 msgid "Create a mailbox for the administrator." msgstr "Skapa en brevlåda för administratören." -#: forms/domain.py:242 +#: forms/domain.py:267 msgid "Create aliases" msgstr "Skapa alias." -#: forms/domain.py:245 +#: forms/domain.py:270 msgid "Automatically create standard aliases for this domain" msgstr "Skapa automatiskt standard alias för den här domänen" -#: forms/domain.py:261 +#: forms/domain.py:286 msgid "Invalid format" msgstr "Ogiltigt format" -#: forms/domain.py:290 +#: forms/domain.py:315 #, python-format msgid "User '%s' already exists" msgstr "Användare '%s' finns redan" -#: forms/domain.py:402 +#: forms/domain.py:427 msgid "Domain modified" msgstr "Domän ändrad" -#: forms/domain.py:423 +#: forms/domain.py:448 msgid "Options" msgstr "Inställningar" -#: forms/domain.py:431 +#: forms/domain.py:456 msgid "New domain" msgstr "Ny domän" -#: forms/domain.py:444 +#: forms/domain.py:469 msgid "Domain created" msgstr "Domän skapad" @@ -714,10 +737,6 @@ msgstr "namn" msgid "The domain name" msgstr "Domännamnet" -#: models/domain.py:36 -msgid "Quota in MB shared between mailboxes. A value of 0 means no quota." -msgstr "Kvota i MB delade mellan brevlådor. 0 betyder ingen kvota." - #: models/domain.py:44 msgid "Default quota in MB applied to mailboxes. A value of 0 means no quota." msgstr "Standardkvota i MB applicerad på nya brevlådor. 0 betyder ingen kvota." @@ -803,42 +822,42 @@ msgstr "En kvota krävs" msgid "Domain quota exceeded" msgstr "Domänkvota överskriden" -#: serializers.py:88 serializers.py:288 serializers.py:386 +#: serializers.py:99 serializers.py:304 serializers.py:402 msgid "Permission denied." msgstr "Åtskomst nekad." -#: serializers.py:134 +#: serializers.py:150 msgid "" "List of administered domains (resellers and domain administrators only)." msgstr "" "Lista över administrerade domäner (endast återförsäljare och " "domänadministratörer)." -#: serializers.py:238 +#: serializers.py:254 msgid "Not allowed for this role." msgstr "Inte tillåtet för denna roll." -#: serializers.py:250 +#: serializers.py:266 msgid "Must be equal to mailbox full_address" msgstr "Måste vara lika med brevlådans full_address" -#: serializers.py:275 +#: serializers.py:291 msgid "Local domain {} does not exist" msgstr "Lokal domän {} finns inte" -#: serializers.py:373 +#: serializers.py:389 msgid "A list of recipient" msgstr "En lista på mottagare" -#: serializers.py:384 +#: serializers.py:400 msgid "Domain not found." msgstr "Domän kunde ej hittas." -#: serializers.py:433 +#: serializers.py:449 msgid "You don't have access to this domain." msgstr "Du har inte åtkomst till denna domän." -#: serializers.py:441 +#: serializers.py:457 msgid "You don't have access to this mailbox." msgstr "Du har inte åtkomst till denna brevlåda." @@ -1000,11 +1019,8 @@ msgstr "Brevlåde alias" #: templates/admin/domain_detail.html:50 templates/admin/domain_detail.html:57 #: templates/admin/domain_detail.html:58 templates/admin/domain_detail.html:65 -#: templates/admin/domain_general_form.html:4 -#: templates/admin/domain_general_form.html:5 #: templates/admin/domains_quotas.html:11 -#: templates/admin/domains_quotas.html:12 templates/admin/mailform.html:7 -#: templates/admin/newdomainform.html:3 +#: templates/admin/domains_quotas.html:12 templates/admin/newdomainform.html:3 msgid "MB" msgstr "MB" @@ -1358,6 +1374,9 @@ msgstr "Importera konton" msgid "Forward updated" msgstr "Vidarebefordring uppdaterad" +#~ msgid "Quota in MB shared between mailboxes. A value of 0 means no quota." +#~ msgstr "Kvota i MB delade mellan brevlådor. 0 betyder ingen kvota." + #, fuzzy #~| msgid "No DNS records found for %s" #~ msgid "No DNS records found without MX for %s" diff --git a/modoboa/admin/locale/zh_TW/LC_MESSAGES/django.po b/modoboa/admin/locale/zh_TW/LC_MESSAGES/django.po index ff094cacc..fb9dc298b 100644 --- a/modoboa/admin/locale/zh_TW/LC_MESSAGES/django.po +++ b/modoboa/admin/locale/zh_TW/LC_MESSAGES/django.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: Modoboa\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-10-17 09:25+0200\n" +"POT-Creation-Date: 2018-10-17 13:41+0200\n" "PO-Revision-Date: 2018-07-09 04:17+0000\n" "Last-Translator: akong \n" "Language-Team: Chinese (Taiwan) (http://www.transifex.com/tonio/modoboa/" @@ -125,7 +125,7 @@ msgid "" "specified. A value of 0 means no quota." msgstr "預設配額(以MB為單位)應用於未指定值的創立網域。值為0表示沒有配額。" -#: app_settings.py:119 models/domain.py:41 +#: app_settings.py:119 forms/domain.py:53 models/domain.py:41 #: templates/admin/domain_detail.html:64 msgid "Default mailbox quota" msgstr "預設信箱配額" @@ -161,7 +161,7 @@ msgstr "當信箱更名時會建立別名" msgid "Create an alias using the old address when a mailbox is renamed." msgstr "當信箱更名時建立別名並使用在舊的位址。" -#: app_settings.py:196 app_settings.py:204 forms/account.py:332 +#: app_settings.py:196 app_settings.py:204 forms/account.py:339 msgid "Must be a positive integer" msgstr "必須是正整數" @@ -213,7 +213,7 @@ msgstr "選擇" msgid "What level of permission this user will have" msgstr "這個使用者有什麼樣的權限等級" -#: forms/account.py:48 forms/domain.py:224 +#: forms/account.py:48 forms/domain.py:249 msgid "Random password" msgstr "隨機密碼" @@ -243,8 +243,8 @@ msgstr "已啟用" msgid "Only super administrators are allowed for this mode" msgstr "只有超級管理員在這個模式下是允許的" -#: forms/account.py:182 forms/account.py:184 forms/domain.py:141 -#: forms/domain.py:270 forms/domain.py:273 serializers.py:263 +#: forms/account.py:182 forms/account.py:184 forms/domain.py:166 +#: forms/domain.py:295 forms/domain.py:298 serializers.py:279 msgid "This field is required." msgstr "這個欄位是必填的" @@ -264,26 +264,31 @@ msgstr "電郵" msgid "Create an alias using the old address" msgstr "用舊的位址來建立別名" -#: forms/account.py:233 templates/admin/account_detail.html:45 -#: templates/admin/domain_detail.html:49 +#: forms/account.py:233 forms/domain.py:45 +#: templates/admin/account_detail.html:45 templates/admin/domain_detail.html:49 msgid "Quota" msgstr "配額" -#: forms/account.py:235 +#: forms/account.py:236 +#, fuzzy +#| msgid "" +#| "Quota in MB for this mailbox. Define a custom value or use domain's " +#| "default one. Leave empty to define an unlimited value (not allowed for " +#| "domain administrators)." msgid "" -"Quota in MB for this mailbox. Define a custom value or use domain's default " -"one. Leave empty to define an unlimited value (not allowed for domain " -"administrators)." +"Quota for this mailbox, can be expressed in KB, MB (default) or GB. Define a " +"custom value or use domain's default one. Leave empty to define an unlimited " +"value (not allowed for domain administrators)." msgstr "" "這個信箱有多少 MB 的配額。定義一個自訂的值或使用網域的預設值。保持空白是定義" "為無限制 (不允許網域管理者)。" -#: forms/account.py:243 forms/domain.py:35 +#: forms/account.py:246 forms/domain.py:35 #: templates/admin/domain_headers.html:4 msgid "Alias(es)" msgstr "別名(是)" -#: forms/account.py:246 +#: forms/account.py:249 msgid "" "Alias(es) of this mailbox. Indicate only one address per input, press ENTER " "to add a new input. To create a catchall alias, just enter the domain name " @@ -292,11 +297,11 @@ msgstr "" "這個信箱的別名(es)。一行只能輸入一個電子郵件,按 Enter 新增新的一行,要建立抓" "取別名,只要輸入網域名稱 (@domain.tld)。" -#: forms/account.py:252 +#: forms/account.py:255 msgid "Sender addresses" msgstr "傳送地址" -#: forms/account.py:255 +#: forms/account.py:258 msgid "" "Additional sender address(es) for this account. The user will be allowed to " "send emails using this address, even if it does not exist locally. Indicate " @@ -305,52 +310,52 @@ msgstr "" "新增這個帳號的寄件地址(es)。此使用者將會允許使用這個位址寄送郵件,即使這個不" "在本機。一行輸入一個位址。按 Enter 新增新的一行。" -#: forms/account.py:310 forms/alias.py:92 models/mailbox.py:317 +#: forms/account.py:313 forms/alias.py:92 models/mailbox.py:317 msgid "Domain does not exist" msgstr "網域不存在" -#: forms/account.py:342 +#: forms/account.py:349 msgid "Local domain does not exist" msgstr "本地網域不存在" -#: forms/account.py:346 forms/account.py:354 forms/alias.py:95 +#: forms/account.py:353 forms/account.py:361 forms/alias.py:95 msgid "You don't have access to this domain" msgstr "您無權訪問此網域" -#: forms/account.py:453 +#: forms/account.py:460 msgid "Domain(s)" msgstr "網域" -#: forms/account.py:455 +#: forms/account.py:462 msgid "Domain(s) that user administrates" msgstr "系統管理者網域(S)" -#: forms/account.py:501 forms/account.py:591 forms/domain.py:341 -#: forms/domain.py:412 +#: forms/account.py:508 forms/account.py:598 forms/domain.py:366 +#: forms/domain.py:437 msgid "General" msgstr "一般" -#: forms/account.py:505 +#: forms/account.py:512 msgid "Profile" msgstr "檔案" -#: forms/account.py:509 forms/account.py:597 +#: forms/account.py:516 forms/account.py:604 msgid "Mail" msgstr "電子郵件" -#: forms/account.py:512 +#: forms/account.py:519 msgid "Permissions" msgstr "權限" -#: forms/account.py:580 +#: forms/account.py:587 msgid "Account updated" msgstr "帳號已更新" -#: forms/account.py:605 +#: forms/account.py:612 msgid "New account" msgstr "新帳號" -#: forms/account.py:615 +#: forms/account.py:622 msgid "Account created" msgstr "帳號已建立" @@ -401,98 +406,116 @@ msgstr "這個網域的別名(es)。一行只能輸入一個電子郵件,按 E msgid "Key selector" msgstr "Key selector" -#: forms/domain.py:82 handlers.py:165 +#: forms/domain.py:48 models/domain.py:36 +#, fuzzy +#| msgid "" +#| "Default quota in MB applied to mailboxes. A value of 0 means no quota." +msgid "" +"Quota shared between mailboxes. Can be expressed in KB, MB (default) or GB. " +"A value of 0 means no quota." +msgstr "預設套用在信箱幾 MB 的配額。值為0表示沒配額。" + +#: forms/domain.py:56 +#, fuzzy +#| msgid "" +#| "Default quota in MB applied to mailboxes. A value of 0 means no quota." +msgid "" +"Default quota applied to mailboxes. Can be expressed in KB, MB (default) or " +"GB. A value of 0 means no quota." +msgstr "預設套用在信箱幾 MB 的配額。值為0表示沒配額。" + +#: forms/domain.py:98 handlers.py:165 msgid "domain alias" msgstr "網域別名" -#: forms/domain.py:85 forms/domain.py:152 forms/domain.py:160 +#: forms/domain.py:101 forms/domain.py:177 forms/domain.py:185 #, python-format msgid "A %s with this name already exists" msgstr "此 %s 及這個名稱已存在" -#: forms/domain.py:93 serializers.py:53 +#: forms/domain.py:109 serializers.py:56 msgid "No authorized MX record found for this domain" msgstr "沒有找到這個網域已驗證過的 MX 紀錄" -#: forms/domain.py:105 +#: forms/domain.py:121 msgid "DKIM keys storage directory not configured" msgstr "未設置 DKIM 金鑰儲存目錄" -#: forms/domain.py:126 serializers.py:63 +#: forms/domain.py:151 serializers.py:74 msgid "Cannot be greater than domain quota" msgstr "不可以超過網域配額" -#: forms/domain.py:131 +#: forms/domain.py:156 msgid "You can't define an unlimited quota." msgstr "您不可以定義無限制配額。" -#: forms/domain.py:152 forms/domain.py:157 +#: forms/domain.py:177 forms/domain.py:182 msgid "domain" msgstr "網域" -#: forms/domain.py:206 +#: forms/domain.py:231 msgid "Create a domain administrator" msgstr "建立網域管理者" -#: forms/domain.py:209 +#: forms/domain.py:234 msgid "Automatically create an administrator for this domain" msgstr "自動建立這個網域的管理者" -#: forms/domain.py:214 templates/admin/domain_detail.html:121 +#: forms/domain.py:239 templates/admin/domain_detail.html:121 #: templates/admin/domain_headers.html:3 #: templates/admin/identity_headers.html:2 #: templates/admin/mx_domain_detail.html:9 msgid "Name" msgstr "名稱" -#: forms/domain.py:217 +#: forms/domain.py:242 msgid "" "The administrator's name. Don't include the domain's name here, it will be " "automatically appended." msgstr "管理者的名稱。不可以包括這裡的網域名稱,這將會自動附加。" -#: forms/domain.py:227 +#: forms/domain.py:252 msgid "Generate a random password for the administrator." msgstr "產生隨機密碼給管理員。" -#: forms/domain.py:233 +#: forms/domain.py:258 msgid "With a mailbox" msgstr "有附信箱" -#: forms/domain.py:236 +#: forms/domain.py:261 msgid "Create a mailbox for the administrator." msgstr "建立信箱給管理員" -#: forms/domain.py:242 +#: forms/domain.py:267 msgid "Create aliases" msgstr "建立別名" -#: forms/domain.py:245 +#: forms/domain.py:270 msgid "Automatically create standard aliases for this domain" msgstr "自動建立這個網域的標準別名" -#: forms/domain.py:261 +#: forms/domain.py:286 msgid "Invalid format" msgstr "無效格式" -#: forms/domain.py:290 +#: forms/domain.py:315 #, python-format msgid "User '%s' already exists" msgstr "使用者 '%s' 已存在" -#: forms/domain.py:402 +#: forms/domain.py:427 msgid "Domain modified" msgstr "網域已修改" -#: forms/domain.py:423 +#: forms/domain.py:448 msgid "Options" msgstr "選項" -#: forms/domain.py:431 +#: forms/domain.py:456 msgid "New domain" msgstr "新網域" -#: forms/domain.py:444 +#: forms/domain.py:469 msgid "Domain created" msgstr "網域已建立" @@ -692,10 +715,6 @@ msgstr "名稱" msgid "The domain name" msgstr "網域名稱" -#: models/domain.py:36 -msgid "Quota in MB shared between mailboxes. A value of 0 means no quota." -msgstr "信箱之間共用幾 MB 的配額。值為0表示沒配額。" - #: models/domain.py:44 msgid "Default quota in MB applied to mailboxes. A value of 0 means no quota." msgstr "預設套用在信箱幾 MB 的配額。值為0表示沒配額。" @@ -779,40 +798,40 @@ msgstr "配額是必要的" msgid "Domain quota exceeded" msgstr "網域配額已超過" -#: serializers.py:88 serializers.py:288 serializers.py:386 +#: serializers.py:99 serializers.py:304 serializers.py:402 msgid "Permission denied." msgstr "權限不足" -#: serializers.py:134 +#: serializers.py:150 msgid "" "List of administered domains (resellers and domain administrators only)." msgstr "管理員網域列表 (只有經銷商和網域管理員)。" -#: serializers.py:238 +#: serializers.py:254 msgid "Not allowed for this role." msgstr "不允許這個身份" -#: serializers.py:250 +#: serializers.py:266 msgid "Must be equal to mailbox full_address" msgstr "必須跟信箱完整位址一樣" -#: serializers.py:275 +#: serializers.py:291 msgid "Local domain {} does not exist" msgstr "本機網域 {} 不存在" -#: serializers.py:373 +#: serializers.py:389 msgid "A list of recipient" msgstr "收件人列表" -#: serializers.py:384 +#: serializers.py:400 msgid "Domain not found." msgstr "網域不存在。" -#: serializers.py:433 +#: serializers.py:449 msgid "You don't have access to this domain." msgstr "您不能存取這個網域。" -#: serializers.py:441 +#: serializers.py:457 msgid "You don't have access to this mailbox." msgstr "您不能存取這個信箱。" @@ -974,11 +993,8 @@ msgstr "信箱別名" #: templates/admin/domain_detail.html:50 templates/admin/domain_detail.html:57 #: templates/admin/domain_detail.html:58 templates/admin/domain_detail.html:65 -#: templates/admin/domain_general_form.html:4 -#: templates/admin/domain_general_form.html:5 #: templates/admin/domains_quotas.html:11 -#: templates/admin/domains_quotas.html:12 templates/admin/mailform.html:7 -#: templates/admin/newdomainform.html:3 +#: templates/admin/domains_quotas.html:12 templates/admin/newdomainform.html:3 msgid "MB" msgstr "MB" @@ -1322,6 +1338,9 @@ msgstr "匯入使用者" msgid "Forward updated" msgstr "轉寄已更新" +#~ msgid "Quota in MB shared between mailboxes. A value of 0 means no quota." +#~ msgstr "信箱之間共用幾 MB 的配額。值為0表示沒配額。" + #, fuzzy #~| msgid "No DNS records found for %s" #~ msgid "No DNS records found without MX for %s" diff --git a/modoboa/admin/models/domain.py b/modoboa/admin/models/domain.py index 6fc9be1ca..481ca1fe9 100644 --- a/modoboa/admin/models/domain.py +++ b/modoboa/admin/models/domain.py @@ -33,8 +33,8 @@ class Domain(AdminObject): quota = models.PositiveIntegerField( default=0, help_text=ugettext_lazy( - "Quota in MB shared between mailboxes. A value of 0 means " - "no quota." + "Quota shared between mailboxes. Can be expressed in KB, " + "MB (default) or GB. A value of 0 means no quota." ) ) default_mailbox_quota = models.PositiveIntegerField( diff --git a/modoboa/admin/serializers.py b/modoboa/admin/serializers.py index cf5a7fd80..671b837e9 100644 --- a/modoboa/admin/serializers.py +++ b/modoboa/admin/serializers.py @@ -19,7 +19,7 @@ from modoboa.core import ( ) from modoboa.lib import ( email_utils, exceptions as lib_exceptions, fields as lib_fields, - permissions + permissions, web_utils ) from modoboa.parameters import tools as param_tools from . import lib, models @@ -28,6 +28,9 @@ from . import lib, models class DomainSerializer(serializers.ModelSerializer): """Base Domain serializer.""" + quota = serializers.CharField() + default_mailbox_quota = serializers.CharField() + class Meta: model = models.Domain fields = ( @@ -53,6 +56,14 @@ class DomainSerializer(serializers.ModelSerializer): _("No authorized MX record found for this domain")) return value + def validate_quota(self, value): + """Convert quota to MB.""" + return web_utils.size2integer(value, output_unit="MB") + + def validate_default_mailbox_quota(self, value): + """Convert quota to MB.""" + return web_utils.size2integer(value, output_unit="MB") + def validate(self, data): """Check quota values.""" quota = data.get("quota", 0) @@ -114,6 +125,7 @@ class MailboxSerializer(serializers.ModelSerializer): """Base mailbox serializer.""" full_address = lib_fields.DRFEmailFieldUTF8() + quota = serializers.CharField() class Meta: model = models.Mailbox @@ -123,6 +135,10 @@ class MailboxSerializer(serializers.ModelSerializer): """Lower case address.""" return value.lower() + def validate_quota(self, value): + """Convert quota to MB.""" + return web_utils.size2integer(value, output_unit="MB") + class AccountSerializer(serializers.ModelSerializer): """Base account serializer.""" diff --git a/modoboa/admin/templates/admin/domain_general_form.html b/modoboa/admin/templates/admin/domain_general_form.html index f95838700..28d2d9b76 100644 --- a/modoboa/admin/templates/admin/domain_general_form.html +++ b/modoboa/admin/templates/admin/domain_general_form.html @@ -1,8 +1,8 @@ {% load i18n form_tags %} {% render_field form.name %} {% render_field form.type %} -{% render_field form.quota appended_text=_("MB") %} -{% render_field form.default_mailbox_quota appended_text=_("MB") %} +{% render_field form.quota %} +{% render_field form.default_mailbox_quota %} {% render_fields_group form "aliases" %} {% render_field form.enabled %} {% render_field form.enable_dns_checks %} diff --git a/modoboa/admin/templates/admin/mailform.html b/modoboa/admin/templates/admin/mailform.html index f903e8afd..d514293e6 100644 --- a/modoboa/admin/templates/admin/mailform.html +++ b/modoboa/admin/templates/admin/mailform.html @@ -4,6 +4,6 @@ {% if form.create_alias_with_old_address %} {% render_field form.create_alias_with_old_address %} {% endif %} -{% include "common/generic_field.html" with field=form.quota help_display_mode="tooltip" label_width="col-sm-4" appended_text=_("MB") activator=True activator_value=form.quota_act.value deactivate_if_empty=False activator_label=_("Use domain default value") activator_size="col-sm-5" %} +{% include "common/generic_field.html" with field=form.quota help_display_mode="tooltip" label_width="col-sm-4" activator=True activator_value=form.quota_act.value deactivate_if_empty=False activator_label=_("Use domain default value") activator_size="col-sm-5" %} {% render_fields_group form "aliases" %} {% render_fields_group form "senderaddress" %} diff --git a/modoboa/lib/tests/test_web_utils.py b/modoboa/lib/tests/test_web_utils.py new file mode 100644 index 000000000..74b534c86 --- /dev/null +++ b/modoboa/lib/tests/test_web_utils.py @@ -0,0 +1,23 @@ +"""Tests for web_utils.""" + +from django.test import SimpleTestCase + +from .. import web_utils + + +class TestCase(SimpleTestCase): + """Test functions.""" + + def test_size2integer(self): + self.assertEqual(web_utils.size2integer("1024"), 1024) + # Convert to bytes + self.assertEqual(web_utils.size2integer("1K"), 1024) + self.assertEqual(web_utils.size2integer("1M"), 1048576) + self.assertEqual(web_utils.size2integer("1G"), 1073741824) + # Convert to megabytes + self.assertEqual(web_utils.size2integer("1K", output_unit="MB"), 0) + self.assertEqual(web_utils.size2integer("1M", output_unit="MB"), 1) + self.assertEqual(web_utils.size2integer("1G", output_unit="MB"), 1024) + # Unsupported unit + with self.assertRaises(ValueError): + web_utils.size2integer("1K", output_unit="GB") diff --git a/modoboa/lib/web_utils.py b/modoboa/lib/web_utils.py index 8c70f8d51..de54f63df 100644 --- a/modoboa/lib/web_utils.py +++ b/modoboa/lib/web_utils.py @@ -102,9 +102,9 @@ def static_url(path): return "%s%s" % (settings.STATIC_URL, path) -def size2integer(value): +def size2integer(value, output_unit="B"): """Try to convert a string representing a size to an integer value - in bytes. + in bytes or megabytes. Supported formats: * K|k for KB @@ -112,19 +112,30 @@ def size2integer(value): * G|g for GB :param value: the string to convert + :param output_unit: result's unit (defaults to Bytes) :return: the corresponding integer value """ - m = re.match(r"(\d+)\s*(\w+)", value) + m = re.match(r"(\d+)\s*([a-zA-Z]+)", value) if m is None: if re.match(r"\d+", value): return int(value) return 0 - if m.group(2)[0] in ["K", "k"]: - return int(m.group(1)) * 2 ** 10 - if m.group(2)[0] in ["M", "m"]: - return int(m.group(1)) * 2 ** 20 - if m.group(2)[0] in ["G", "g"]: - return int(m.group(1)) * 2 ** 30 + if output_unit == "B": + if m.group(2)[0] in ["K", "k"]: + return int(m.group(1)) * 2 ** 10 + if m.group(2)[0] in ["M", "m"]: + return int(m.group(1)) * 2 ** 20 + if m.group(2)[0] in ["G", "g"]: + return int(m.group(1)) * 2 ** 30 + elif output_unit == "MB": + if m.group(2)[0] in ["K", "k"]: + return int(int(m.group(1)) / 2 ** 10) + if m.group(2)[0] in ["M", "m"]: + return int(m.group(1)) + if m.group(2)[0] in ["G", "g"]: + return int(m.group(1)) * 2 ** 10 + else: + raise ValueError("Unsupported output unit {}".format(output_unit)) return 0 From 428546ea6f81e90f04e46051d811157988a8069f Mon Sep 17 00:00:00 2001 From: Antoine Nguyen Date: Wed, 17 Oct 2018 14:10:08 +0200 Subject: [PATCH 2/2] Fixed unit tests. --- modoboa/admin/models/domain.py | 10 +--------- modoboa/admin/serializers.py | 16 ++++++++++++++-- 2 files changed, 15 insertions(+), 11 deletions(-) diff --git a/modoboa/admin/models/domain.py b/modoboa/admin/models/domain.py index 481ca1fe9..76958ec5c 100644 --- a/modoboa/admin/models/domain.py +++ b/modoboa/admin/models/domain.py @@ -32,18 +32,10 @@ class Domain(AdminObject): help_text=ugettext_lazy("The domain name")) quota = models.PositiveIntegerField( default=0, - help_text=ugettext_lazy( - "Quota shared between mailboxes. Can be expressed in KB, " - "MB (default) or GB. A value of 0 means no quota." - ) ) default_mailbox_quota = models.PositiveIntegerField( verbose_name=ugettext_lazy("Default mailbox quota"), - default=0, - help_text=ugettext_lazy( - "Default quota in MB applied to mailboxes. A value of 0 means " - "no quota." - ) + default=0 ) enabled = models.BooleanField( ugettext_lazy("enabled"), diff --git a/modoboa/admin/serializers.py b/modoboa/admin/serializers.py index 671b837e9..dfd3ed49b 100644 --- a/modoboa/admin/serializers.py +++ b/modoboa/admin/serializers.py @@ -28,8 +28,20 @@ from . import lib, models class DomainSerializer(serializers.ModelSerializer): """Base Domain serializer.""" - quota = serializers.CharField() - default_mailbox_quota = serializers.CharField() + quota = serializers.CharField( + required=False, + help_text=ugettext_lazy( + "Quota shared between mailboxes. Can be expressed in KB, " + "MB (default) or GB. A value of 0 means no quota." + ) + ) + default_mailbox_quota = serializers.CharField( + required=False, + help_text=ugettext_lazy( + "Default quota in MB applied to mailboxes. A value of 0 means " + "no quota." + ) + ) class Meta: model = models.Domain