diff --git a/schoolapps/dashboard/views.py b/schoolapps/dashboard/views.py index 14d7a8597b6fb13496019b55e4474e1dbb843264..04f264c6676280e8f7a126030bc7f60eb3b06b29 100755 --- a/schoolapps/dashboard/views.py +++ b/schoolapps/dashboard/views.py @@ -4,7 +4,7 @@ from django.urls import reverse from .models import Activity, register_notification # from .apps import DashboardConfig from mailer import send_mail_with_template - +from userinformation import UserInformation # Create your views here. @@ -15,6 +15,9 @@ def index(request): # act = Activity(title="Dashboard aufgerufen", description="Sie haben das Dashboard aufgerufen.", # app=DashboardConfig.verbose_name, user=request.user) # act.save() + print(request.user) + # UserInformation.user_classes(request.user) + print(UserInformation.user_courses(request.user)) # Load activities activities = Activity.objects.filter(user=request.user).order_by('-created_at')[:5] diff --git a/schoolapps/templates/partials/header.html b/schoolapps/templates/partials/header.html index a03de02c186bd257ad8c2a33d875c2c955471ae4..1276e235ed6fd19c346812d6062bb74b3669d53a 100755 --- a/schoolapps/templates/partials/header.html +++ b/schoolapps/templates/partials/header.html @@ -128,12 +128,6 @@ <i class="material-icons">exit_to_app</i> Abmelden </a> </li> - <li> - {{ user.groups.all }} - {% for group in user.groups.all %} - {{ group }} - {% endfor %} - </li> {% endif %} </ul> </header> diff --git a/schoolapps/userinformation.py b/schoolapps/userinformation.py new file mode 100644 index 0000000000000000000000000000000000000000..b9ae821aff0ed2e4a985b393853e95a2a0057188 --- /dev/null +++ b/schoolapps/userinformation.py @@ -0,0 +1,54 @@ +import re + + +class UserInformation: + OTHER = 0 + TEACHER = 1 + STUDENT = 2 + + @staticmethod + def regexr(regex, groups): + reg = re.compile(regex) + return reg.findall("\n".join(groups)) + + @staticmethod + def user_groups(user): + raw_groups = user.groups.all() + groups = [group.name for group in raw_groups] + print(groups) + return groups + + @staticmethod + def user_type(user): + groups = UserInformation.user_groups(user) + if "teachers" in groups: + return UserInformation.TEACHER + elif "students" in groups: + return UserInformation.STUDENT + else: + return UserInformation.OTHER + + @staticmethod + def user_classes(user): + groups = UserInformation.user_groups(user) + classes = UserInformation.regexr(r"class_(\w{1,3})", groups) + return classes + + @staticmethod + def user_courses(user): + groups = UserInformation.user_groups(user) + classes = UserInformation.regexr(r"course_(.{1,10})", groups) + return classes + + @staticmethod + def user_subjects(user): + groups = UserInformation.user_groups(user) + classes = UserInformation.regexr(r"subject_(\w{1,3})", groups) + return classes + + @staticmethod + def has_wifi(user): + groups = UserInformation.user_groups(user) + if "teachers" in groups or "students-wifi" in groups: + return True + return False