Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from django.contrib.auth.models import AbstractUser
- from django.contrib.sessions.models import Session
- class CustomUser(AbstractUser):
- addr1= models.CharField(max_length=20)
- addr2= models.CharField(max_length=20)
- city= models.CharField(max_length=20)
- state= models.CharField(max_length=20)
- class UserSession(models.Model):
- user= models.ForeignKey(settings.AUTH_USER_MODEL)
- session=models.ForeignKey(Session)
- from .models import UserSession
- from django.contrib.auth.signals import user_logged_in
- def login(request):
- username = request.POST['username']
- password = request.POST['password']
- user = authenticate(username=username, password=password)
- if user is not None:
- if user.is_active:
- login(request, user)
- return HttpResponseRedirect('/Student_home.html') # Redirect to a success page.
- else:
- return HttpResponse("disabled account") # Return a 'disabled account' error message
- else:
- return HttpResponse("invalid login")# Return an 'invalid login' error message.
- def logout(request):
- logout(request)
- return HttpResponseRedirect('/Student_home.html')# Redirect to a success page.
- def user_logged_in_handler(sender,request,user, **kwargs):
- UserSession.objects.get_or_create(
- user= user,
- session_id= request.session.session_key
- )
- user_logged_in.connect(user_logged_in_handler, sender=CustomUser)
- def delete_user_sessions(CustomUser):
- user_sessions=UserSession.objects.filter(user=CustomUser)
- for user_session in user_sessions:
- user_session.session.delete()
- from django.contrib.auth.forms import AuthenticationForm
- from django import forms
- class LoginForm(AuthenticationForm):
- username = forms.CharField(label="Username", max_length=30,
- widget=forms.TextInput(attrs={'class': 'form-control', 'name': 'username'}))
- password = forms.CharField(label="Password", max_length=30,
- widget=forms.TextInput(attrs={'class': 'form-control', 'name': 'password'}))
- from django.contrib.auth import views
- from swaracharya.forms import LoginForm
- url(r'^login/$', views.login, {'template_name': 'login.html', 'authentication_form': LoginForm}, name='login'),
- url(r'^logout/$', views.logout, {'next_page': '/login'}),
- <div class="container">
- <section id="content">
- <form action="{% url 'login' %}" method="post" enctype="multipart/form-data">
- {% csrf_token %}
- <h1>Login Form</h1>
- <div class="imgcontainer">
- <img src="{% static 'student/patient.jpg' %}" alt="Avatar" class="avatar">
- </div>
- <div class="username">
- {{ form.username.label_tag }}
- {{ form.username }}
- </div>
- <div class="password">
- {{ form.password.label_tag }}
- {{ form.password }}
- </div>
- <div class="submitb">
- <input type="submit" value="Log In" name="mybtn">
- </div>
- <div class="resetb">
- <input type="submit" value="Reset">
- <a href="#forgotpwd">Forgot password?</a>
- </div>
- <input type="hidden" name="next" value="{{ next }}" />
- </form>
- </section>
- </div>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement