Add SMTP error check
This commit is contained in:
parent
19fc23808c
commit
8c0a589173
@ -92,12 +92,12 @@ class ZendeskAdmin:
|
|||||||
|
|
||||||
def get_group(self, name: str) -> str:
|
def get_group(self, name: str) -> str:
|
||||||
"""
|
"""
|
||||||
Функция возвращает группы, к которым принадлежит пользователь.
|
Функция возвращает группу по названию
|
||||||
|
|
||||||
:param name: Имя пользователя
|
:param name: Имя пользователя
|
||||||
:return: Группы пользователя (в случае отсутствия None)
|
:return: Группы пользователя (в случае отсутствия None)
|
||||||
"""
|
"""
|
||||||
groups = self.admin.search(name)
|
groups = self.admin.search(name, type='group')
|
||||||
for group in groups:
|
for group in groups:
|
||||||
return group
|
return group
|
||||||
return None
|
return None
|
||||||
|
@ -11,5 +11,5 @@
|
|||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<br>
|
<br>
|
||||||
<h4> Нет пользователя с указаным адресом электронной почты.</h4>
|
<h4> Нет пользователя с указаным адресом электронной почты либо произошла ошибка при отправке сообщения.</h4>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
import logging
|
from smtplib import SMTPException
|
||||||
import os
|
|
||||||
from datetime import datetime
|
|
||||||
|
|
||||||
|
from django.contrib import messages
|
||||||
from django.contrib.auth.decorators import login_required
|
from django.contrib.auth.decorators import login_required
|
||||||
from django.contrib.auth.forms import PasswordResetForm
|
from django.contrib.auth.forms import PasswordResetForm
|
||||||
from django.contrib.auth.mixins import LoginRequiredMixin, PermissionRequiredMixin
|
from django.contrib.auth.mixins import LoginRequiredMixin, PermissionRequiredMixin
|
||||||
@ -13,23 +12,19 @@ from django.contrib.messages.views import SuccessMessageMixin
|
|||||||
from django.core.exceptions import PermissionDenied
|
from django.core.exceptions import PermissionDenied
|
||||||
from django.core.handlers.wsgi import WSGIRequest
|
from django.core.handlers.wsgi import WSGIRequest
|
||||||
from django.http import HttpResponseRedirect, HttpResponse
|
from django.http import HttpResponseRedirect, HttpResponse
|
||||||
from django.shortcuts import render, get_list_or_404, redirect
|
from django.shortcuts import render, redirect
|
||||||
from django.urls import reverse_lazy, reverse
|
from django.urls import reverse_lazy, reverse
|
||||||
from django.views.generic import FormView
|
from django.views.generic import FormView
|
||||||
from django_registration.views import RegistrationView
|
from django_registration.views import RegistrationView
|
||||||
from django.contrib import messages
|
|
||||||
|
|
||||||
# Django REST
|
# Django REST
|
||||||
from rest_framework import viewsets
|
from rest_framework import viewsets
|
||||||
from rest_framework.response import Response
|
from rest_framework.response import Response
|
||||||
|
|
||||||
from zenpy.lib.api_objects import User as ZenpyUser
|
from zenpy.lib.api_objects import User as ZenpyUser
|
||||||
|
|
||||||
from access_controller.settings import EMAIL_HOST_USER, ZENDESK_ROLES, ZENDESK_MAX_AGENTS
|
from access_controller.settings import EMAIL_HOST_USER, ZENDESK_ROLES, ZENDESK_MAX_AGENTS, ZENDESK_GROUPS
|
||||||
from main.extra_func import ZendeskAdmin
|
|
||||||
from main.extra_func import check_user_exist, update_profile, get_user_organization, \
|
from main.extra_func import check_user_exist, update_profile, get_user_organization, \
|
||||||
make_engineer, make_light_agent, get_users_list, update_users_in_model, count_users, \
|
make_engineer, make_light_agent, get_users_list, update_users_in_model, count_users, \
|
||||||
StatisticData
|
StatisticData,ZendeskAdmin
|
||||||
from main.forms import AdminPageUsers, CustomRegistrationForm, CustomAuthenticationForm, StatisticForm
|
from main.forms import AdminPageUsers, CustomRegistrationForm, CustomAuthenticationForm, StatisticForm
|
||||||
from main.serializers import ProfileSerializer
|
from main.serializers import ProfileSerializer
|
||||||
from .models import UserProfile
|
from .models import UserProfile
|
||||||
@ -83,10 +78,14 @@ class CustomRegistrationView(RegistrationView):
|
|||||||
email=form.data['email'],
|
email=form.data['email'],
|
||||||
password=User.objects.make_random_password(length=50)
|
password=User.objects.make_random_password(length=50)
|
||||||
)
|
)
|
||||||
|
try:
|
||||||
forms.save(**opts)
|
forms.save(**opts)
|
||||||
update_profile(user.userprofile)
|
update_profile(user.userprofile)
|
||||||
self.set_permission(user)
|
self.set_permission(user)
|
||||||
return user
|
return user
|
||||||
|
except SMTPException:
|
||||||
|
user.delete()
|
||||||
|
self.is_allowed = False
|
||||||
else:
|
else:
|
||||||
raise ValueError('Непредвиденная ошибка')
|
raise ValueError('Непредвиденная ошибка')
|
||||||
else:
|
else:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user