Skip to content

Commit 0b0b7d8

Browse files
authored
Merge pull request #480 from PROCOLLAB-github/fix/user-verify
Fix/user verify
2 parents b2f5d92 + 68b6153 commit 0b0b7d8

4 files changed

Lines changed: 40 additions & 31 deletions

File tree

chats/permissions.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,9 @@ class IsChatMember(BasePermission):
2727
Allows access only to authenticated users.
2828
"""
2929

30-
def has_permission(self, request, view):
30+
def has_permission(self, request, view) -> bool:
3131
kwargs = request.parser_context.get("kwargs")
3232

3333
chat_id: str = kwargs["id"]
3434

35-
return str(request.user.id) in chat_id
35+
return str(request.user.id) in chat_id.split("_")

procollab/settings.py

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -321,31 +321,31 @@
321321

322322
SESSION_COOKIE_SECURE = False
323323

324-
# EMAIL_BACKEND = "anymail.backends.unisender_go.EmailBackend"
325-
#
326-
# UNISENDER_GO_API_KEY = config("UNISENDER_GO_API_KEY", default="", cast=str)
327-
# ANYMAIL = {
328-
# "UNISENDER_GO_API_KEY": UNISENDER_GO_API_KEY,
329-
# "UNISENDER_GO_API_URL": "https://go1.unisender.ru/ru/transactional/api/v1/",
330-
# "UNISENDER_GO_SEND_DEFAULTS": {
331-
# "esp_extra": {
332-
# "global_language": "ru",
333-
# }
334-
# },
335-
# }
336-
337-
# EMAIL_USE_TLS = True
338-
#
339-
# EMAIL_PORT = config("EMAIL_PORT", default=587, cast=int)
340-
# EMAIL_USER = config("EMAIL_USER", cast=str, default="example@mail.ru")
324+
EMAIL_BACKEND = "anymail.backends.unisender_go.EmailBackend"
325+
326+
UNISENDER_GO_API_KEY = config("UNISENDER_GO_API_KEY", default="", cast=str)
327+
ANYMAIL = {
328+
"UNISENDER_GO_API_KEY": UNISENDER_GO_API_KEY,
329+
"UNISENDER_GO_API_URL": "https://go1.unisender.ru/ru/transactional/api/v1/",
330+
"UNISENDER_GO_SEND_DEFAULTS": {
331+
"esp_extra": {
332+
"global_language": "ru",
333+
}
334+
},
335+
}
341336

342-
EMAIL_BACKEND = "django.core.mail.backends.smtp.EmailBackend"
343337
EMAIL_USE_TLS = True
344-
EMAIL_HOST = config("EMAIL_HOST", default="smtp.gmail.com", cast=str)
338+
345339
EMAIL_PORT = config("EMAIL_PORT", default=587, cast=int)
346-
EMAIL_HOST_USER = config("EMAIL_USER", cast=str, default="example@mail.ru")
347-
EMAIL_USER = EMAIL_HOST_USER
348-
EMAIL_HOST_PASSWORD = config("EMAIL_PASSWORD", cast=str, default="password")
340+
EMAIL_USER = config("EMAIL_USER", cast=str, default="example@mail.ru")
341+
342+
# EMAIL_BACKEND = "django.core.mail.backends.smtp.EmailBackend"
343+
# EMAIL_USE_TLS = True
344+
# EMAIL_HOST = config("EMAIL_HOST", default="smtp.gmail.com", cast=str)
345+
# EMAIL_PORT = config("EMAIL_PORT", default=587, cast=int)
346+
# EMAIL_HOST_USER = config("EMAIL_USER", cast=str, default="example@mail.ru")
347+
# EMAIL_USER = EMAIL_HOST_USER
348+
# EMAIL_HOST_PASSWORD = config("EMAIL_PASSWORD", cast=str, default="password")
349349

350350
SELECTEL_ACCOUNT_ID = config("SELECTEL_ACCOUNT_ID", cast=str, default="123456")
351351
SELECTEL_CONTAINER_NAME = config(

users/admin.py

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,11 @@ class UserLanguagesInline(admin.TabularInline):
5050
verbose_name_plural = "Знание языков"
5151

5252

53+
@admin.action(description="Сделать выбранных пользователей подтверждёнными")
54+
def make_active(modeladmin, request, queryset):
55+
queryset.update(is_active=True)
56+
57+
5358
@admin.register(CustomUser)
5459
class CustomUserAdmin(admin.ModelAdmin):
5560
fieldsets = (
@@ -126,6 +131,7 @@ class CustomUserAdmin(admin.ModelAdmin):
126131
"is_active",
127132
"dataset_migration_applied",
128133
"v2_speciality",
134+
"datetime_created",
129135
)
130136
list_display_links = (
131137
"id",
@@ -153,6 +159,7 @@ class CustomUserAdmin(admin.ModelAdmin):
153159
UserWorkExperienceInline,
154160
UserLanguagesInline,
155161
]
162+
actions = [make_active]
156163

157164
readonly_fields = ("ordering_score",)
158165
change_form_template = "users/admin/users_change_form.html"
@@ -370,7 +377,11 @@ class UserLanguagesAdmin(admin.ModelAdmin):
370377
@admin.register(UserSkillConfirmation)
371378
class UserSkillConfirmationAdmin(admin.ModelAdmin):
372379
list_display = ("id", "get_user_and_skill", "confirmed_by", "confirmed_at")
373-
search_fields = ("skill_to_object__skill__name", "confirmed_by__first_name", "confirmed_by__last_name")
380+
search_fields = (
381+
"skill_to_object__skill__name",
382+
"confirmed_by__first_name",
383+
"confirmed_by__last_name",
384+
)
374385
raw_id_fields = ("skill_to_object", "confirmed_by")
375386
readonly_fields = ("confirmed_at",)
376387

@@ -382,4 +393,5 @@ def get_user_and_skill(self, obj):
382393
# Possible contingencies with attributes.
383394
except Exception:
384395
return ""
385-
get_user_and_skill.short_description = 'User and Skill'
396+
397+
get_user_and_skill.short_description = "User and Skill"

users/views.py

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -470,8 +470,6 @@ def post(self, request, *args, **kwargs):
470470
return Response(
471471
"User with given email does not exists!", status=status.HTTP_404_NOT_FOUND
472472
)
473-
except Exception:
474-
return Response(status=status.HTTP_400_BAD_REQUEST)
475473

476474

477475
class ForceVerifyView(APIView):
@@ -614,9 +612,7 @@ def get(self, request, *args, **kwargs) -> HttpResponse:
614612
data_preparer = UserCVDataPreparerV2(request.user.pk)
615613
user_cv_data: UserCVDataV2 = data_preparer.get_prepared_data()
616614

617-
html_string: str = render_to_string(
618-
data_preparer.TEMPLATE_PATH, user_cv_data
619-
)
615+
html_string: str = render_to_string(data_preparer.TEMPLATE_PATH, user_cv_data)
620616
binary_pdf_file: bytes | None = HTML(string=html_string).write_pdf()
621617

622618
encoded_filename: str = urllib.parse.quote(
@@ -635,6 +631,7 @@ class UserCVMailing(APIView):
635631
Full-fledged work `UserCVDownload`.
636632
The user can send a letter once per minute.
637633
"""
634+
638635
permission_classes = [IsAuthenticated]
639636

640637
def get(self, request, *args, **kwargs):

0 commit comments

Comments
 (0)