diff --git a/nmgfitness/base.html b/nmgfitness/base.html
new file mode 100644
index 0000000..dbbf658
--- /dev/null
+++ b/nmgfitness/base.html
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+ NMG Fitness Registration
+
+
+
+
+
+
+
+
+ {% block content %}
+ BASE TEMPLATE
+ {% endblock %}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/nmgfitness/calendar.html b/nmgfitness/calendar.html
index bfed48b..ef1a164 100644
--- a/nmgfitness/calendar.html
+++ b/nmgfitness/calendar.html
@@ -1,13 +1,7 @@
-
-
-
-
-
-
-
-
-
-
-
-
Klik op de gewenste plaats in de kalender om een nieuwe reservatie toe te voegen, vul je naam in in het dialoogvenster.
@@ -152,10 +139,6 @@
Je kan een event verschuiven of verlengen/verkorten door het vast te nemen en te verschuiven.
-
- Indien het niet lukt om op een reeds gerserveerd moment een nieuwe reservatie aan te maken,
-
-
-
+{% endblock %}
diff --git a/nmgfitness/settings.py b/nmgfitness/settings.py
index 2ab1d9f..33e78ba 100644
--- a/nmgfitness/settings.py
+++ b/nmgfitness/settings.py
@@ -27,17 +27,20 @@ DEBUG = True
ALLOWED_HOSTS = []
-
+LOGIN_URL = '/accounts/login/'
+LOGIN_REDIRECT_URL = '/'
# Application definition
INSTALLED_APPS = [
- 'django.contrib.admin',
+ 'users.apps.UsersConfig',
+ 'nmgfitness',
'django.contrib.auth',
+ 'django.contrib.admin',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
- 'nmgfitness',
+ 'bootstrap4',
]
MIDDLEWARE = [
diff --git a/nmgfitness/urls.py b/nmgfitness/urls.py
index 99f8465..b5278ce 100644
--- a/nmgfitness/urls.py
+++ b/nmgfitness/urls.py
@@ -14,14 +14,19 @@ Including another URLconf
2. Add a URL to urlpatterns: path('blog/', include('blog.urls'))
"""
from django.contrib import admin
-from django.urls import path
+from django.urls import path, include
from django.conf.urls import url
+from users.views import register
+
+
from .views import calendar, add_event, update, remove
urlpatterns = [
+ path('accounts/', include('django.contrib.auth.urls')),
path('admin/', admin.site.urls),
- url('^$', calendar, name='calendar'),
+ path('register/', register, name="register"),
+ url('^$', calendar, name='index'),
url('^add_event$', add_event, name='add_event'),
url('^update$', update, name='update'),
url('^remove', remove, name='remove'),
diff --git a/nmgfitness/views.py b/nmgfitness/views.py
index 1ee740d..f1fcde5 100644
--- a/nmgfitness/views.py
+++ b/nmgfitness/views.py
@@ -2,14 +2,20 @@ from .models import Events
from django.shortcuts import render
from django.http import JsonResponse
+from django.contrib.auth.decorators import login_required
+
+@login_required
def calendar(request):
+ print(request.user)
all_events = Events.objects.all()
context = {
- "events":all_events,
+ "events": all_events,
}
- return render(request,'calendar.html',context)
+ return render(request, 'calendar.html', context)
+
+@login_required
def add_event(request):
start = request.GET.get("start", None)
end = request.GET.get("end", None)
@@ -20,6 +26,7 @@ def add_event(request):
return JsonResponse(data)
+@login_required
def update(request):
start = request.GET.get("start", None)
end = request.GET.get("end", None)
@@ -34,6 +41,7 @@ def update(request):
return JsonResponse(data)
+@login_required
def remove(request):
id = request.GET.get("id", None)
event = Events.objects.get(id=id)
diff --git a/requirements.txt b/requirements.txt
new file mode 100644
index 0000000..5284932
--- /dev/null
+++ b/requirements.txt
@@ -0,0 +1 @@
+django-bootstrap4
diff --git a/users/__init__.py b/users/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/users/apps.py b/users/apps.py
new file mode 100644
index 0000000..4ce1fab
--- /dev/null
+++ b/users/apps.py
@@ -0,0 +1,5 @@
+from django.apps import AppConfig
+
+
+class UsersConfig(AppConfig):
+ name = 'users'
diff --git a/users/forms.py b/users/forms.py
new file mode 100644
index 0000000..5adc3c8
--- /dev/null
+++ b/users/forms.py
@@ -0,0 +1,5 @@
+from django.contrib.auth.forms import UserCreationForm
+
+class CustomUserCreationForm(UserCreationForm):
+ class Meta(UserCreationForm.Meta):
+ fields = UserCreationForm.Meta.fields + ("email",)
diff --git a/users/templates/registration/logged_out.html b/users/templates/registration/logged_out.html
new file mode 100644
index 0000000..fa69c3f
--- /dev/null
+++ b/users/templates/registration/logged_out.html
@@ -0,0 +1,8 @@
+{% extends "base.html" %}
+
+{% block content %}
+ Logged out!
+ Thanks for spending some quality time with the NMG fittness calendar site today.
+
+ Click here to login again.
+{% endblock %}
diff --git a/users/templates/registration/login.html b/users/templates/registration/login.html
new file mode 100644
index 0000000..b790574
--- /dev/null
+++ b/users/templates/registration/login.html
@@ -0,0 +1,29 @@
+{% extends 'base.html' %}
+
+{% load bootstrap4 %}
+{% block content %}
+
+{% endblock %}
diff --git a/users/templates/registration/password_change_done.html b/users/templates/registration/password_change_done.html
new file mode 100644
index 0000000..1d6f75b
--- /dev/null
+++ b/users/templates/registration/password_change_done.html
@@ -0,0 +1,7 @@
+{% extends 'base.html' %}
+
+{% block content %}
+Password changed
+
+Back to index
+{% endblock %}
diff --git a/users/templates/registration/password_change_form.html b/users/templates/registration/password_change_form.html
new file mode 100644
index 0000000..5b340e9
--- /dev/null
+++ b/users/templates/registration/password_change_form.html
@@ -0,0 +1,16 @@
+{% extends 'base.html' %}
+
+{% load bootstrap4 %}
+{% block content %}
+
+{% endblock %}
diff --git a/users/templates/registration/password_reset_complete.html b/users/templates/registration/password_reset_complete.html
new file mode 100644
index 0000000..27710da
--- /dev/null
+++ b/users/templates/registration/password_reset_complete.html
@@ -0,0 +1,8 @@
+
+{% extends 'base.html' %}
+
+{% block content %}
+Password reset complete
+
+Back to login
+{% endblock %}
diff --git a/users/templates/registration/password_reset_confirm.html b/users/templates/registration/password_reset_confirm.html
new file mode 100644
index 0000000..f647065
--- /dev/null
+++ b/users/templates/registration/password_reset_confirm.html
@@ -0,0 +1,23 @@
+{% extends 'base.html' %}
+
+{% load bootstrap4 %}
+{% block content %}
+
+
Confirm password reset
+
+
+{% if validlink %}
+
+
+
+{% else %}
+
+
The password reset link was invalid, possibly because it has already been used. Please request a new password reset.
+
+{% endif %}
+
+{% endblock %}
diff --git a/users/templates/registration/password_reset_done.html b/users/templates/registration/password_reset_done.html
new file mode 100644
index 0000000..a18db15
--- /dev/null
+++ b/users/templates/registration/password_reset_done.html
@@ -0,0 +1,7 @@
+{% extends 'base.html' %}
+
+{% block content %}
+Password reset done
+
+Back to login
+{% endblock %}
diff --git a/users/templates/registration/password_reset_form.html b/users/templates/registration/password_reset_form.html
new file mode 100644
index 0000000..ed14067
--- /dev/null
+++ b/users/templates/registration/password_reset_form.html
@@ -0,0 +1,19 @@
+{% extends 'base.html' %}
+
+{% load bootstrap4 %}
+{% block content %}
+
+{% endblock %}
diff --git a/users/templates/users/register.html b/users/templates/users/register.html
new file mode 100644
index 0000000..21623f8
--- /dev/null
+++ b/users/templates/users/register.html
@@ -0,0 +1,21 @@
+{% extends 'base.html' %}
+
+{% load bootstrap4 %}
+
+{% block content %}
+
+
+
+After registration your account will need to be activated.
+Contact someone from the Fintess Commitee with your username to get your account activated.
+{% endblock %}
diff --git a/users/views.py b/users/views.py
new file mode 100644
index 0000000..a235c97
--- /dev/null
+++ b/users/views.py
@@ -0,0 +1,24 @@
+from django.contrib.auth import login
+
+from django.shortcuts import redirect, render
+
+from django.urls import reverse
+
+from users.forms import CustomUserCreationForm
+
+
+def register(request):
+ if request.method == "POST":
+ form = CustomUserCreationForm(request.POST)
+ if form.is_valid():
+ user = form.save()
+ user.is_active = False
+ user.save()
+ return redirect(reverse("index"))
+ else:
+ form = CustomUserCreationForm()
+
+ return render(
+ request, "users/register.html",
+ {"form": form}
+ )