User login, logut & register functions now 100% operable

This commit is contained in:
Raelon Masters
2020-07-18 20:10:16 -04:00
parent ca27e5af26
commit a72f39863a
2 changed files with 17 additions and 19 deletions

View File

@@ -26,12 +26,6 @@
<input type="hidden" id="_search" name="_search" value="{{ PostedSearch }}" />
<input type="hidden" id="_order" name="_order" value="{{ Order }}" />
<div id="pop_over_0">
<!-- Login Form -->
<div class="hdr_nav" id="hdr_nav_login">
<input id="username" class="nav_login input_box noborder" type="text" size="8" value="Username">
<input id="password" class="nav_login input_box noborder" type="text" size="8" value="Password">
</div>
<!-- End Login Form -->
</div>
<div id="app">
<ul id="shelf_nav">
@@ -43,7 +37,13 @@
<li class="nav_menu_tab"><i class="fas fa-layer-group"></i>&nbsp;Collections</li>
<li class="nav_menu_tab"><i class="fas fa-star"></i>&nbsp;Favorites</li>
<li class="nav_menu_tab"><i class="fas fa-bug"></i>&nbsp;Bug report</li>
<li class="nav_menu_tab" id="btn_login"> <i class="fa fa-user-circle" aria-hidden="true"></i>&nbsp;Login</li>
<li class="nav_menu_tab" id="btn_login"> <i class="fa fa-user-circle" aria-hidden="true"></i>
{% if request.user.is_authenticated %}
<a href='logout' class='nav_link'>&nbsp;{{ request.user }}</a>
{% else %}
<a href="login" class='nav_link'>&nbsp;Login</a>
{% endif %}
</li>
</div>
</div>
<div id="horiz_nav_main">

View File

@@ -8,9 +8,10 @@ from django.http import JsonResponse
from django.shortcuts import HttpResponse, render, redirect # render_to_response
from django.utils.text import slugify
from django.contrib.auth import login, authenticate, logout
from django.contrib.auth.models import User
import json
from .forms import SignUpForm, UserLoginForm
from .models import Books, Collections, Navigation
from .models import Books, Collections, Navigation, Favorites
config = Config(Path("../"))
@@ -50,14 +51,16 @@ def userlogin(request):
username = request.POST['username']
password = request.POST['password']
user = authenticate(request, username=username, password=password)
if user is not None: return redirect('home')
else: form = UserLoginForm()
if user is not None:
login(request, user)
return redirect('home')
form = UserLoginForm()
return render(request, 'login.html', {'form': form})
def userlogout(request):
logout(request)
return render(request, 'login.html', {'form': UserLoginForm()})
return redirect('home')
def home(request, query=None, _set=1, _limit=None, _order='title'):
@@ -211,15 +214,10 @@ def download(request, pk):
def favorite(request, pk):
"""
Favorite book by primary key
Add book to favorites bu primary key
"""
_book = Books.objects.all().filter(pk=pk)[0]
_fn = hr_name(_book)
response = HttpResponse(
open(os.path.abspath(_book.file_name), "rb"), content_type="application/zip"
)
response["Content-Disposition"] = "attachment; filename=%s" % _fn
return response
print(Favorite(book=_book, uname=User))
def share(request, pk):
@@ -390,6 +388,6 @@ def payload(request, query, _set, _limit, _order, **kwargs):
"NowShowing": _now_showing,
"PostedSearch": query,
"SearchLen": _r_len,
"Order": _order
"Order": _order,
}