Browse Source

Fix auth to disabled user

devel
Dmitry Novikov 8 years ago
parent
commit
daa3f49d0d
  1. 2
      accounts_app/templatetags/acc_tags.py
  2. 4
      accounts_app/views.py
  3. 2
      djing/lib/auth_backends.py

2
accounts_app/templatetags/acc_tags.py

@ -26,7 +26,7 @@ def can_login_by_location(request):
try:
remote_ip = ip_address(request.META.get('REMOTE_ADDR'))
if remote_ip.version == 4:
has_leases = IpLeaseModel.objects.filter(ip=str(remote_ip)).exists()
has_leases = IpLeaseModel.objects.filter(ip=str(remote_ip), abon__is_active=True).exists()
return has_leases
except AddressValueError:
pass

4
accounts_app/views.py

@ -1,5 +1,6 @@
from django.contrib.auth.decorators import login_required
from django.contrib.auth import logout, login, authenticate
from django.contrib.auth.forms import AuthenticationForm
from django.contrib.auth.views import LoginView
from django.core.exceptions import PermissionDenied
from django.http import HttpResponseRedirect
@ -50,7 +51,8 @@ def location_login(request):
return redirect('client_side:home')
return redirect(nextl)
return render(request, 'accounts/login.html', {
'next': nextl
'next': nextl,
'form': AuthenticationForm()
})
except NoReverseMatch:
return redirect('client_side:home')

2
djing/lib/auth_backends.py

@ -40,7 +40,7 @@ class LocationAuthBackend(ModelBackend):
def authenticate(self, request, byip, **kwargs):
try:
remote_ip = ip_address(request.META.get('REMOTE_ADDR'))
lease = IpLeaseModel.objects.filter(ip=str(remote_ip)).first()
lease = IpLeaseModel.objects.filter(ip=str(remote_ip), abon__is_active=True).first()
if lease is None:
return
user = Abon.objects.get(ip_addresses=lease)

Loading…
Cancel
Save