diff --git a/accounts/templates/accounts/login.html b/accounts/templates/accounts/login.html new file mode 100644 index 0000000..8e81099 --- /dev/null +++ b/accounts/templates/accounts/login.html @@ -0,0 +1,4 @@ +{% extends 'base.html' %} +{% block content %} + HI +{% endblock %} diff --git a/accounts/templates/accounts/signout.html b/accounts/templates/accounts/signout.html new file mode 100644 index 0000000..8e81099 --- /dev/null +++ b/accounts/templates/accounts/signout.html @@ -0,0 +1,4 @@ +{% extends 'base.html' %} +{% block content %} + HI +{% endblock %} diff --git a/accounts/templates/accounts/signup.html b/accounts/templates/accounts/signup.html new file mode 100644 index 0000000..1e0cf3b --- /dev/null +++ b/accounts/templates/accounts/signup.html @@ -0,0 +1,25 @@ +{% extends 'base.html' %} +{% block content %} + {% if error %} + {{ error }} +
+
+ {% endif %} +

Sign Up!

+
+ {% csrf_token %} + Username: +
+ +
+ Password: +
+ +
+ Confirm Password: +
+ +

+ +
+{% endblock %} diff --git a/accounts/urls.py b/accounts/urls.py new file mode 100644 index 0000000..cac6d99 --- /dev/null +++ b/accounts/urls.py @@ -0,0 +1,8 @@ +from django.urls import path +from . import views + +urlpatterns = [ + path('signup', views.signup, name='signup'), + path('login', views.login, name='login'), + path('logout', views.logout, name='logout'), + ] diff --git a/accounts/views.py b/accounts/views.py index 91ea44a..03da391 100644 --- a/accounts/views.py +++ b/accounts/views.py @@ -1,3 +1,27 @@ -from django.shortcuts import render +from django.shortcuts import render, redirect +from django.contrib.auth.models import User +from django.contrib import auth -# Create your views here. + +def signup(request): + if request.method == 'POST': + if request.POST['password1'] == request.POST['password2']: + try: + User.objects.get(username=request.POST['username']) + return render(request, 'accounts/signup.html', {'error': 'username already signed up'}) + except User.DoesNotExist: + user = User.objects.create_user(request.POST['username'], password=request.POST['password1']) + auth.login(request, user) + return redirect('home') + else: + return render(request, 'accounts/signup.html', {'error': 'passwords must match'}) + else: + return render(request, 'accounts/signup.html') + + +def login(request): + return render(request, 'accounts/login.html') + + +def logout(request): + return render(request, '/accounts/login.html') diff --git a/producthunt/templates/base.html b/producthunt/templates/base.html index 664d663..7531969 100644 --- a/producthunt/templates/base.html +++ b/producthunt/templates/base.html @@ -17,13 +17,6 @@ integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh" crossorigin="anonymous"> - - - - - - - @@ -56,7 +49,7 @@