Advertisement
Guest User

Untitled

a guest
Jan 18th, 2016
134
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 5.47 KB | None | 0 0
  1. from django.http import HttpResponseRedirect
  2. from django.shortcuts import render
  3. from App.models import Ranks
  4. from Libs.UserLib import UserLib
  5. from django.contrib.auth import authenticate, login, logout
  6. from django.contrib.auth.models import User
  7. from django.views.generic import View
  8.  
  9. # This is description for this function. Thats very very long
  10. # use:
  11. # You can use that for create or edit user
  12.  
  13.  
  14. class UserLogin(View):
  15.     def get(self, request):
  16.         if request.user.is_authenticated():
  17.             return HttpResponseRedirect('/profile')
  18.  
  19.         context = {
  20.             'Name': "Kamil",
  21.         }
  22.  
  23.         return render(request, 'login.html', context)
  24.  
  25.     def post(self, request):
  26.         if request.user.is_authenticated():
  27.             return HttpResponseRedirect('/profile')
  28.  
  29.         username = request.POST['username']
  30.         password = request.POST['password']
  31.         user = authenticate(username=username, password=password)
  32.         if user is not None:
  33.             if user.is_active:
  34.                 login(request, user)
  35.                 return HttpResponseRedirect('/profile/')
  36.             else:
  37.                 return HttpResponseRedirect('/login')
  38.  
  39.         return render(request, 'login.html')
  40.  
  41.  
  42. # This is description for this function. Thats very very long
  43. # use:
  44. # You can use that for create or edit user
  45.  
  46.  
  47. class UserRegister(View):
  48.     def __init__(self):
  49.         self.username = None
  50.         self.password = None
  51.         self.email = None
  52.  
  53.     def get(self, request):
  54.         if request.user.is_authenticated():
  55.             return HttpResponseRedirect('/profile')
  56.  
  57.         context = {
  58.             'Name': "Kamil",
  59.         }
  60.  
  61.         return render(request, 'register.html', context)
  62.  
  63.     def post(self, request):
  64.         if request.user.is_authenticated():
  65.             return HttpResponseRedirect('/profile')
  66.  
  67.         self.username = request.POST['username']
  68.         self.password = request.POST['password']
  69.         self.email = request.POST['email']
  70.  
  71.         self.create_account()
  72.  
  73.         return render(request, 'register.html')
  74.  
  75.     def create_account(self):
  76.         error = False
  77.  
  78.         if not self.email or not self.username or not self.password:
  79.             error = True
  80.         if self.email \
  81.                 and User.objects.filter(email=self.email).count() or self.username \
  82.                 and User.objects.filter(username=self.username).count() > 0:
  83.             error = True
  84.  
  85.         if error is False:
  86.             user = User.objects.create_user(username=self.username, email=self.email, password=self.password)
  87.             user.save()
  88.  
  89.             getRank = Ranks.objects.get(LeadsRequired=0)
  90.  
  91.             UserLib.CreateUser(self, {'Username': self.username,
  92.                                          'Name': 'null',
  93.                                          'Surname': 'null',
  94.                                          'Pesel': 'null',
  95.                                          'Bank': 'null',
  96.                                          'Rank': getRank.id,
  97.                                          'Money': 0})
  98.  
  99. # This is description for this function. Thats very very long
  100. # use:
  101. # You can use that for create or edit user
  102.  
  103.  
  104. class UserLogout(View):
  105.     def get(self, request):
  106.         if not request.user.is_authenticated():
  107.             return HttpResponseRedirect('/login')
  108.  
  109.         logout(request)
  110.         return HttpResponseRedirect('/login')
  111.  
  112.  
  113. # This is description for this function. Thats very very long
  114. # use:
  115. # You can use that for create or edit user
  116.  
  117.  
  118. class UserProfile(View):
  119.     def get(self, request):
  120.         if not request.user.is_authenticated():
  121.             return HttpResponseRedirect('/login')
  122.  
  123.         context = {
  124.             'Name': request.user.username,
  125.         }
  126.  
  127.         return render(request, 'profile.html', context)
  128.  
  129.  
  130. # This is description for this function. Thats very very long
  131. # use:
  132. # You can use that for create or edit user
  133.  
  134.  
  135. class UserEdit(View):
  136.     def __init__(self):
  137.         self.name = None
  138.         self.surname = None
  139.         self.pesel = None
  140.         self.bank = None
  141.         self.password = None
  142.         self.email = None
  143.  
  144.     def get(self, request):
  145.         if not request.user.is_authenticated():
  146.             return HttpResponseRedirect('/login')
  147.  
  148.         context = {
  149.             'Name': request.user.username,
  150.         }
  151.  
  152.         return render(request, 'edit.html', context)
  153.  
  154.     def post(self, request):
  155.         if not request.user.is_authenticated():
  156.             return HttpResponseRedirect('/login')
  157.  
  158.         self.name = request.POST['name']
  159.         self.surname = request.POST['surname']
  160.         self.pesel = request.POST['pesel']
  161.         self.bank = request.POST['bank']
  162.         self.password = request.POST['password']
  163.         self.email = request.POST['email']
  164.  
  165.         self.change_data(request.user.username)
  166.  
  167.         return render(request, 'edit.html')
  168.  
  169.     def change_data(self, username):
  170.         # change password
  171.         if self.password is not "":
  172.             u = User.objects.get(username=username)
  173.             u.set_password(self.password)
  174.             u.save()
  175.  
  176.         # change password
  177.         u = User.objects.get(username=username)
  178.         u.email = self.email
  179.         u.save()
  180.  
  181.         # change to new data
  182.         ul = UserLib()
  183.         ul.SetUserData(username, {
  184.             'Name': self.name,
  185.             'Surname': self.surname,
  186.             'Pesel': self.pesel,
  187.             'Bank': self.bank,
  188.         })
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement