Guest User

views

a guest
Jul 30th, 2018
206
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 6.15 KB | None | 0 0
  1. # Token
  2. from django.template.context_processors import csrf
  3. from django.template import RequestContext
  4.  
  5. # Render and requests
  6. from django.shortcuts import render
  7. from django.shortcuts import redirect
  8. from django.shortcuts import render_to_response
  9.  
  10. # Auth
  11. from django.contrib import auth
  12. from django.contrib.auth import login as django_login
  13. from django.contrib.auth import logout as django_logout
  14. from django.contrib.auth import authenticate
  15. # from django.contrib.auth.models import Group
  16. from django.contrib.auth.models import User
  17.  
  18. ## Forms ##
  19. # from django.contrib.auth.forms import UserCreationForm
  20. # from django.contrib.auth.forms import AuthenticationForm
  21. # from django.contrib.auth.forms import PasswordChangeForm
  22. # from django.contrib.auth.forms import PasswordResetForm
  23. # from django.contrib.auth.forms import SetPasswordForm
  24.  
  25. ## My Forms ##
  26. from .forms import LoginForm
  27. from .forms import SignUpForm
  28. from .forms import OrgRequestForm
  29.  
  30. # from djang.views.generic import View
  31. from .models import AuthUser
  32. from .models import OrgRequest
  33.  
  34. # Decorators
  35. from django.contrib.auth.decorators import login_required
  36. from django.views.decorators.cache import never_cache
  37. from django.views.decorators.csrf import csrf_protect
  38. from django.views.decorators.debug import sensitive_post_parameters
  39. # from django.contrib.auth.decorators import user_passes_test
  40.  
  41.  
  42. # Responses
  43. import warnings
  44.  
  45. from django.conf import settings
  46. from django.contrib.auth import REDIRECT_FIELD_NAME
  47. from django.contrib.auth import get_user_model
  48. # from django.contrib.auth import update_session_auth_hash
  49.  
  50. # from django.contrib.auth.tokens import default_token_generator
  51. from django.contrib.sites.shortcuts import get_current_site
  52. # from django.core.urlresolvers import reverse
  53. from django.http import HttpResponseRedirect
  54. # from django.http import QueryDict
  55. from django.shortcuts import resolve_url
  56. from django.template.response import TemplateResponse
  57. # from django.utils.deprecation import RemovedInDjango110Warning
  58. # from django.utils.encoding import force_text
  59.  
  60. from django.utils.http import is_safe_url
  61. # from django.utils.http import urlsafe_base64_decode
  62.  
  63. # from django.utils.six.moves.urllib.parse import urlparse, urlunparse
  64. # from django.utils.six.moves.urllib.parse import urlunparse
  65. # from django.utils.translation import ugettext_lazy as _
  66.  
  67. # Database
  68. from django.db import IntegrityError
  69.  
  70. @never_cache
  71. @csrf_protect
  72. def login(request, template_name='accounts/login.html',
  73.           redirect_field_name=REDIRECT_FIELD_NAME,
  74.           current_app=None, extra_context=None):
  75.     redirect_to = request.POST.get(redirect_field_name,
  76.                                    request.GET.get(redirect_field_name, ''))
  77.  
  78.     if request.method == 'GET':
  79.         if auth.get_user(request).is_authenticated:
  80.             return redirect('/')
  81.  
  82.     if request.method == 'POST':
  83.         form = LoginForm(request, data=request.POST)
  84.         # if user is valid (name, password)
  85.         if form.is_valid():
  86.             # Ensure the user-originating redirection url is safe.
  87.             if not is_safe_url(url=redirect_to, host=request.get_host()):
  88.                 redirect_to = resolve_url(settings.LOGIN_REDIRECT_URL)
  89.  
  90.             # Okay, security check complete. Log the user in.
  91.             django_login(request, form.get_user())
  92.  
  93.             return HttpResponseRedirect(redirect_to)
  94.     else:
  95.         form = LoginForm(request)
  96.  
  97.     current_site = get_current_site(request)
  98.  
  99.     context = {
  100.         redirect_field_name: redirect_to,
  101.         'site': current_site,
  102.         'site_name': current_site.name,
  103.         'form': form,
  104.     }
  105.  
  106.     if extra_context is not None:
  107.         context.update(extra_context)
  108.  
  109.     if current_app is not None:
  110.         request.current_app = current_app
  111.  
  112.     return TemplateResponse(request, template_name, context)
  113.  
  114.  
  115. @csrf_protect
  116. def signup(request, template_name='accounts/signup.html'):
  117.     if request.method == 'POST':
  118.         form = SignUpForm(request.POST)
  119.         if form.is_valid():
  120.             form.save()
  121.             username = form.cleaned_data.get('username')
  122.             password = form.cleaned_data.get('password1')
  123.             # user = authenticate(username=username, password=password)
  124.             # django_login(request, user)
  125.  
  126.             return redirect('/')
  127.  
  128.     else:
  129.         form = SignUpForm()
  130.  
  131.     return render(request, template_name, {'form': form})
  132.  
  133. @never_cache
  134. @login_required
  135. def logout(request):
  136.     django_logout(request)
  137.  
  138.     return redirect('/')
  139.  
  140.  
  141. @csrf_protect
  142. def org_request(request, template_name='accounts/orgrequest.html'):
  143.     if request.method == 'POST':
  144.         form = OrgRequestForm(request.POST)
  145.         if form.is_valid():
  146.             obj = OrgRequest()
  147.             obj.way_to_treat = form.cleaned_data['way_to_treat']
  148.             obj.org_name = form.cleaned_data['org_name']
  149.             obj.org_address = form.cleaned_data['org_address']
  150.             obj.email = form.cleaned_data['email']
  151.             obj.phone_number = form.cleaned_data['phone_number']
  152.             obj.inn_id = form.cleaned_data['inn_id']
  153.             obj.employees = form.cleaned_data['employees']
  154.             obj.description = form.cleaned_data['description']
  155.             obj.date = form.cleaned_data['date']
  156.             obj.save()
  157.  
  158.             return redirect('/')
  159.     else:
  160.         form = OrgRequestForm()
  161.  
  162.     return render(request, template_name, {'form': form})
  163.  
  164.  
  165. @login_required
  166. def profile(request, username):
  167.     User = get_user_model()
  168.     user = User.objects.get(username=username)
  169.  
  170.     context = {
  171.         'userid': request.user.id,
  172.         'username': request.user.username,
  173.         'phone_number': request.user.phone_number,
  174.         'firstname': request.user.firstname,
  175.         'lastname': request.user.lastname,
  176.         'patronymic': request.user.patronymic,
  177.         'org_name': request.user.org_name,
  178.         'org_address': request.user.org_address,
  179.         'birth_day': request.user.birth_day,
  180.         'inn_id': request.user.inn_id,
  181.         'passport_s': request.user.passport_s,
  182.         'passport_n': request.user.passport_n,
  183.     }
  184.  
  185.     return render(request, 'accounts/profile.html', context)
Add Comment
Please, Sign In to add comment