diff --git a/templates/welcome.html b/templates/welcome.html
index 9e748a2..75618f8 100644
--- a/templates/welcome.html
+++ b/templates/welcome.html
@@ -19,7 +19,7 @@
или войти с помощью
-
+
diff --git a/web/views/vk_auth.py b/web/views/vk_auth.py
index 4827518..ce6a12f 100644
--- a/web/views/vk_auth.py
+++ b/web/views/vk_auth.py
@@ -1,11 +1,12 @@
+from django.contrib.auth import login
from requests import get
from BaseLib.BaseView import BaseView
from Platform import settings
+from web.models import CustomUser
class VKAuthView(BaseView):
- required_login = True
endpoint = "vk_auth"
view_file = "vk_auth.html"
fields_except = ('user_id',)
@@ -26,6 +27,12 @@ class VKAuthView(BaseView):
if resp.status_code != 200:
return "/profile"
data = resp.json()['response'][0]
- self.request.user.vk_id = data['id']
- self.request.user.save()
+ if self.request.user.is_authenticated:
+ self.request.user.vk_id = data['id']
+ self.request.user.save()
+ else:
+ user = CustomUser.objects.filter(vk_id=data['id']).first()
+ if user is None:
+ return '/welcome'
+ login(self.request, user)
return "/profile"