mirror of
https://github.com/jwinterm/modoboa.git
synced 2026-10-17 05:41:25 +02:00
@@ -238,7 +238,8 @@ class DomainFormOptions(forms.Form):
|
||||
core_signals.can_create_object.send(
|
||||
self.__class__, context=user, object_type="mailboxes")
|
||||
da = User(username=username, email=username, is_active=True)
|
||||
da.set_password("password")
|
||||
da.set_password(
|
||||
param_tools.get_global_parameter("default_password", app="core"))
|
||||
da.save()
|
||||
da.role = "DomainAdmins"
|
||||
da.post_create(user)
|
||||
|
||||
@@ -99,6 +99,30 @@ class DomainTestCase(ModoTestCase):
|
||||
)
|
||||
self.assertTrue(da.can_access(al))
|
||||
|
||||
def test_create_with_template_and_custom_password(self):
|
||||
"""Test creation of a domain with a template and custom password."""
|
||||
self.set_global_parameter("default_password", "Toto1234", app="core")
|
||||
values = {
|
||||
"name": "pouet.com", "quota": 0, "create_dom_admin": True,
|
||||
"dom_admin_username": "toto", "create_aliases": True,
|
||||
"type": "domain", "stepid": 'step3'
|
||||
}
|
||||
self.ajax_post(
|
||||
reverse("admin:domain_add"),
|
||||
values
|
||||
)
|
||||
dom = Domain.objects.get(name="pouet.com")
|
||||
da = User.objects.get(username="toto@pouet.com")
|
||||
self.assertIn(da, dom.admins)
|
||||
al = Alias.objects.get(address="postmaster@pouet.com")
|
||||
self.assertTrue(
|
||||
al.aliasrecipient_set.filter(r_mailbox=da.mailbox)
|
||||
.exists()
|
||||
)
|
||||
self.assertTrue(da.can_access(al))
|
||||
self.assertTrue(
|
||||
self.client.login(username="toto@pouet.com", password="Toto1234"))
|
||||
|
||||
def test_create_using_default_quota(self):
|
||||
self.set_global_parameter("default_domain_quota", 50)
|
||||
values = {
|
||||
|
||||
@@ -3,6 +3,8 @@ from django import forms
|
||||
from django.conf import settings
|
||||
from django.utils.translation import ugettext as _, ugettext_lazy
|
||||
|
||||
from passwords import validators
|
||||
|
||||
from modoboa.lib import fields as lib_fields
|
||||
from modoboa.lib.cryptutils import random_key
|
||||
from modoboa.lib.form_utils import (
|
||||
@@ -72,6 +74,14 @@ class GeneralParametersForm(param_forms.AdminParametersForm):
|
||||
widget=forms.TextInput(attrs={"class": "form-control"})
|
||||
)
|
||||
|
||||
default_password = forms.CharField(
|
||||
label=ugettext_lazy("Default password"),
|
||||
initial="password",
|
||||
help_text=ugettext_lazy(
|
||||
"Default password for automatically created accounts."),
|
||||
validators=[validators.validate_length, validators.complexity]
|
||||
)
|
||||
|
||||
# LDAP specific settings
|
||||
ldap_sep = SeparatorField(label=ugettext_lazy("LDAP settings"))
|
||||
|
||||
|
||||
@@ -19,8 +19,7 @@ from ... import signals
|
||||
|
||||
|
||||
class Command(BaseCommand):
|
||||
|
||||
"""Command defintion."""
|
||||
"""Command definition."""
|
||||
|
||||
help = "Load Modoboa initial data"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user