Skip to content

Commit

Permalink
Merge pull request #13 from jamestaggart28/jamestaggart28
Browse files Browse the repository at this point in the history
Authentication Navigation
  • Loading branch information
jamestaggart28 authored Mar 15, 2018
2 parents e545144 + 500f2b1 commit 21f2062
Show file tree
Hide file tree
Showing 7 changed files with 62 additions and 2 deletions.
3 changes: 3 additions & 0 deletions bug-track/config/settings/base.py
Original file line number Diff line number Diff line change
Expand Up @@ -122,3 +122,6 @@
# https://docs.djangoproject.com/en/2.0/howto/static-files/

STATIC_URL = '/static/'

# login redirect
LOGIN_REDIRECT_URL = 'core:home'
5 changes: 5 additions & 0 deletions bug-track/core/templates/core/profile.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{% extends 'base.html' %}
{% block title %} profile{% endblock title %}
{% block content %}
<p>{{ user.username }}</p>
{% endblock content %}
13 changes: 13 additions & 0 deletions bug-track/core/templates/partials/navbar.html
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,19 @@
<a class="dropdown-item" href="{% url 'apps:bug-list' %}">Bug List</a>
</div>
</li>
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="
false">
Account
</a>
<div class="dropdown-menu" aria-labelledby="navbarDropdown">
<a class="dropdown-item" href="{% url 'login' %}">login</a>
<a class="dropdown-item" href="{% url 'logout' %}">logout</a>
<a class="dropdown-item" href="{% url 'password_change' %}">password change</a>
<a class="dropdown-item" href="{% url 'core:register' %}">register</a>
<a class="dropdown-item" href="{% url 'core:profile' %}">profile</a>
</div>
</li>
</ul>
</div>
</nav>
11 changes: 11 additions & 0 deletions bug-track/core/templates/registration/register.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{% extends "base.html" %}

{% block title %}register{% endblock title %}

{% block content %}
<form method="post">
{% csrf_token %}
{{ form.as_p }}
<input type="submit" value="submit" />
</form>
{% endblock content %}
11 changes: 9 additions & 2 deletions bug-track/core/urls.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,15 @@
from django.urls import path
from core.views import Home
from core.views import Home, Register, Profile
from django.conf.urls import include

app_name = "core"

account_patterns = [
path('registration/', Register.as_view(), name="register"),
path('profile/', Profile.as_view(), name="profile")
]

urlpatterns = [
path('', Home.as_view(), name="home")
path('accounts/', include(account_patterns)),
path('', Home.as_view(), name="home"),
]
21 changes: 21 additions & 0 deletions bug-track/core/views.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,27 @@
from django.views.generic import TemplateView
from django.contrib.auth import login, authenticate
from django.contrib.auth.forms import UserCreationForm
from django.views.generic.edit import FormView
from django.shortcuts import redirect


# Create your views here.
class Home(TemplateView):
template_name = "core/home.html"


class Register(FormView):
form_class = UserCreationForm
template_name = 'registration/register.html'

def form_valid(self, form):
form.save()
username = form.cleaned_data.get('username')
raw_password = form.cleaned_data.get('password1')
user = authenticate(username=username, password=raw_password)
login(self.request, user)
return redirect('core:home')


class Profile(TemplateView):
template_name = "core/profile.html"

0 comments on commit 21f2062

Please sign in to comment.