a
    Dg
                     @   sv   d dl mZmZmZ d dlmZ d dlmZ d dlm	Z	 d dl
mZ ddlmZ G dd	 d	eZG d
d deeZdS )    )AbstractBaseUserBaseUserManagerPermissionsMixin)models)permission_denied)
FieldPanel)chooser   )ConvertedValueFieldc                   @   s(   e Zd Zd	ddZd
ddZdd ZdS )CustomUserManagerTc           	      K   sN   |st d| |}| jf |||||d|}|| |j| jd |S )zW
        Creates and saves a User with the given username, email and password.
        zThe given username must be set)usernameemailis_staff	is_activeis_superuser)Zusing)
ValueErrorZnormalize_emailmodelset_passwordsave_db)	selfr   r   passwordr   r   r   extra_fieldsuser r   ]/var/www/lab.imftr.de/x/nb_venv/lib/python3.9/site-packages/wagtail/test/customuser/models.py_create_user   s    

zCustomUserManager._create_userNc                 K   s   | j |||ddfi |S )NFr   r   r   r   r   r   r   r   r   create_user1   s
    
zCustomUserManager.create_userc                 K   s   | j |||ddfi |S )NTr   r   r   r   r   create_superuser6   s    z"CustomUserManager.create_superuser)T)NN)__name__
__module____qualname__r   r   r    r   r   r   r   r      s    

r   c                   @   s   e Zd ZeddZejdddZejdddZ	ej
ddZej
ddZejdddZejdddZejdddZejdd	Zd
ZdgZe Zdd Zdd ZededgZdS )
CustomUserT)Zprimary_keyd   )
max_lengthunique   )r&   blank)default2   )r)   r   r   c                 C   s   | j d | j S )N )
first_name	last_namer   r   r   r   get_full_nameJ   s    zCustomUser.get_full_namec                 C   s   | j S )N)r-   r/   r   r   r   get_short_nameM   s    zCustomUser.get_short_namer-   r.   N)r!   r"   r#   r
   
identifierr   Z	CharFieldr   Z
EmailFieldr   ZBooleanFieldr   r   r-   r.   ZcountryZ	FileField
attachmentZUSERNAME_FIELDZREQUIRED_FIELDSr   Zobjectsr0   r1   r   Zpanelsr   r   r   r   r$   :   s"   
r$   N)Zdjango.contrib.auth.modelsr   r   r   Z	django.dbr   Zwagtail.admin.authr   Zwagtail.admin.panelsr   Zwagtail.admin.views.genericr   Zchooser_viewsfieldsr
   r   r$   r   r   r   r   <module>   s   &