o
    h
                     @   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d|||||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)usingN )
ValueErrornormalize_emailmodelset_passwordsave_db)	selfr   r   passwordr   r   r   extra_fieldsuserr   r   ^/var/www/html/ndineBlogger/venv/lib/python3.10/site-packages/wagtail/test/customuser/models.py_create_user   s   

zCustomUserManager._create_userNc                 K      | j |||ddfi |S )NFr   r   r   r   r   r   r   r   r   create_user1   s
   
zCustomUserManager.create_userc                 K   r   )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)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)r1   r3   r   r   r   get_short_nameM   s   zCustomUser.get_short_namer1   r2   N)r$   r%   r&   r
   
identifierr   	CharFieldr   
EmailFieldr   BooleanFieldr   r   r1   r2   country	FileField
attachmentUSERNAME_FIELDREQUIRED_FIELDSr   objectsr4   r5   r   panelsr   r   r   r   r'   :   s$    
r'   N)django.contrib.auth.modelsr   r   r   	django.dbr   wagtail.admin.authr   wagtail.admin.panelsr   wagtail.admin.views.genericr   chooser_viewsfieldsr
   r   r'   r   r   r   r   <module>   s    &