Initial commit

This commit is contained in:
2024-08-27 20:33:44 +02:00
commit 1f1832267d
14794 changed files with 1599592 additions and 0 deletions

View File

@@ -0,0 +1,107 @@
[
{
"pk": "00000000-0000-0000-0000-000000000001",
"model": "emailuser.emailuser",
"fields": {
"first_name": "",
"last_name": "",
"is_active": true,
"is_superuser": true,
"is_staff": true,
"groups": [],
"user_permissions": [],
"password": "md5$seasalt$1e9bf2bf5606aa5c39852cc30f0f6f22",
"email": "superuser@example.com"
}
},
{
"pk": "00000000-0000-0000-0000-000000000002",
"model": "emailuser.emailuser",
"fields": {
"first_name": "",
"last_name": "",
"is_active": true,
"is_superuser": false,
"is_staff": false,
"groups": [["Event editors"]],
"user_permissions": [],
"password": "md5$seasalt$1e9bf2bf5606aa5c39852cc30f0f6f22",
"email": "eventeditor@example.com"
}
},
{
"pk": "00000000-0000-0000-0000-000000000003",
"model": "emailuser.emailuser",
"fields": {
"first_name": "",
"last_name": "",
"is_active": true,
"is_superuser": false,
"is_staff": false,
"groups": [["Event moderators"]],
"user_permissions": [],
"password": "md5$seasalt$1e9bf2bf5606aa5c39852cc30f0f6f22",
"email": "eventmoderator@example.com"
}
},
{
"pk": "00000000-0000-0000-0000-000000000004",
"model": "emailuser.emailuser",
"fields": {
"first_name": "",
"last_name": "",
"is_active": false,
"is_superuser": false,
"is_staff": false,
"groups": [["Event moderators"]],
"user_permissions": [],
"password": "md5$seasalt$1e9bf2bf5606aa5c39852cc30f0f6f22",
"email": "inactiveuser@example.com"
}
},
{
"pk": "00000000-0000-0000-0000-000000000005",
"model": "emailuser.emailuser",
"fields": {
"first_name": "",
"last_name": "",
"is_active": true,
"is_superuser": false,
"is_staff": false,
"groups": [["Site-wide editors"]],
"user_permissions": [],
"password": "md5$seasalt$1e9bf2bf5606aa5c39852cc30f0f6f22",
"email": "siteeditor@example.com"
}
},
{
"pk": "00000000-0000-0000-0000-000000000006",
"model": "emailuser.emailuser",
"fields": {
"first_name": "",
"last_name": "",
"is_active": true,
"is_superuser": false,
"is_staff": false,
"groups": [["Admin non-editors"]],
"user_permissions": [],
"password": "md5$seasalt$1e9bf2bf5606aa5c39852cc30f0f6f22",
"email": "admin_only_user@example.com"
}
},
{
"pk": "00000000-0000-0000-0000-000000000007",
"model": "emailuser.emailuser",
"fields": {
"first_name": "",
"last_name": "",
"is_active": true,
"is_superuser": false,
"is_staff": false,
"groups": [["Corporate Editor"]],
"user_permissions": [],
"password": "md5$seasalt$1e9bf2bf5606aa5c39852cc30f0f6f22",
"email": "corporateeditor@example.com"
}
}
]

View File

@@ -0,0 +1,92 @@
[
{
"pk": "00000000-0000-0000-0000-000000000001",
"model": "emailuser.emailuser",
"fields": {
"first_name": "Clark",
"last_name": "Kent",
"is_active": true,
"is_superuser": true,
"is_staff": true,
"groups": [],
"user_permissions": [],
"password": "md5$seasalt$1e9bf2bf5606aa5c39852cc30f0f6f22",
"email": "superman@example.com"
}
},
{
"pk": "00000000-0000-0000-0000-000000000002",
"model": "emailuser.emailuser",
"fields": {
"first_name": "Jane",
"last_name": "Smith",
"is_active": true,
"is_superuser": false,
"is_staff": true,
"groups": [["Group 1"]],
"user_permissions": [],
"password": "md5$seasalt$1e9bf2bf5606aa5c39852cc30f0f6f22",
"email": "jane@example.com"
}
},
{
"pk": "00000000-0000-0000-0000-000000000003",
"model": "emailuser.emailuser",
"fields": {
"first_name": "Bob",
"last_name": "Smith",
"is_active": true,
"is_superuser": false,
"is_staff": true,
"groups": [["Group 2"]],
"user_permissions": [],
"password": "md5$seasalt$1e9bf2bf5606aa5c39852cc30f0f6f22",
"email": "bob@example.com"
}
},
{
"pk": "00000000-0000-0000-0000-000000000004",
"model": "emailuser.emailuser",
"fields": {
"first_name": "Sam",
"last_name": "Smith",
"is_active": true,
"is_superuser": false,
"is_staff": true,
"groups": [["Group 1"], ["Group 2"]],
"user_permissions": [],
"password": "md5$seasalt$1e9bf2bf5606aa5c39852cc30f0f6f22",
"email": "sam@example.com"
}
},
{
"pk": "00000000-0000-0000-0000-000000000005",
"model": "emailuser.emailuser",
"fields": {
"first_name": "Mary",
"last_name": "Smith",
"is_active": true,
"is_superuser": false,
"is_staff": true,
"groups": [],
"user_permissions": [["access_admin", "wagtailadmin", "admin"]],
"password": "md5$seasalt$1e9bf2bf5606aa5c39852cc30f0f6f22",
"email": "mary@example.com"
}
},
{
"pk": "00000000-0000-0000-0000-000000000006",
"model": "emailuser.emailuser",
"fields": {
"first_name": "Josh",
"last_name": "Smith",
"is_active": true,
"is_superuser": false,
"is_staff": true,
"groups": [["Group 2"], ["Group 3"]],
"user_permissions": [],
"password": "md5$seasalt$1e9bf2bf5606aa5c39852cc30f0f6f22",
"email": "josh@example.com"
}
}
]

View File

@@ -0,0 +1,17 @@
[
{
"pk": "00000000-0000-0000-0000-000000000001",
"model": "emailuser.emailuser",
"fields": {
"first_name": "",
"last_name": "",
"is_active": true,
"is_superuser": true,
"is_staff": true,
"groups": [],
"user_permissions": [],
"password": "md5$seasalt$1e9bf2bf5606aa5c39852cc30f0f6f22",
"email": "superuser@example.com"
}
}
]

View File

@@ -0,0 +1,65 @@
# Generated by Django 3.2.3 on 2021-05-25 13:26
from django.db import migrations, models
import uuid
class Migration(migrations.Migration):
initial = True
dependencies = [
("auth", "0012_alter_user_first_name_max_length"),
]
operations = [
migrations.CreateModel(
name="EmailUser",
fields=[
("password", models.CharField(max_length=128, verbose_name="password")),
(
"last_login",
models.DateTimeField(
blank=True, null=True, verbose_name="last login"
),
),
(
"uuid",
models.UUIDField(
default=uuid.uuid4, primary_key=True, serialize=False
),
),
("email", models.EmailField(max_length=255, unique=True)),
("is_staff", models.BooleanField(default=True)),
("is_active", models.BooleanField(default=True)),
("first_name", models.CharField(blank=True, max_length=50)),
("last_name", models.CharField(blank=True, max_length=50)),
("is_superuser", models.BooleanField(default=False)),
(
"groups",
models.ManyToManyField(
blank=True,
help_text="The groups this user belongs to. A user will get all permissions granted to each of their groups.",
related_name="user_set",
related_query_name="user",
to="auth.Group",
verbose_name="groups",
),
),
(
"user_permissions",
models.ManyToManyField(
blank=True,
help_text="Specific permissions for this user.",
related_name="user_set",
related_query_name="user",
to="auth.Permission",
verbose_name="user permissions",
),
),
],
options={
"abstract": False,
},
),
]

View File

@@ -0,0 +1,53 @@
import uuid
from django.contrib.auth.models import (
AbstractBaseUser,
BaseUserManager,
PermissionsMixin,
)
from django.db import models
class EmailUserManager(BaseUserManager):
def _create_user(self, email, password, is_staff, is_superuser, **extra_fields):
"""
Creates and saves a User with the given email and password.
"""
email = self.normalize_email(email)
user = self.model(
email=email,
is_staff=is_staff,
is_active=True,
is_superuser=is_superuser,
**extra_fields,
)
user.set_password(password)
user.save(using=self._db)
return user
def create_user(self, email=None, password=None, **extra_fields):
return self._create_user(email, password, False, False, **extra_fields)
def create_superuser(self, email, password, **extra_fields):
return self._create_user(email, password, True, True, **extra_fields)
class EmailUser(AbstractBaseUser, PermissionsMixin):
uuid = models.UUIDField(default=uuid.uuid4, primary_key=True)
email = models.EmailField(max_length=255, unique=True)
is_staff = models.BooleanField(default=True)
is_active = models.BooleanField(default=True)
first_name = models.CharField(max_length=50, blank=True)
last_name = models.CharField(max_length=50, blank=True)
is_superuser = models.BooleanField(default=False)
USERNAME_FIELD = "email"
objects = EmailUserManager()
def get_full_name(self):
return self.first_name + " " + self.last_name
def get_short_name(self):
return self.first_name