no functional changes
Formatting updated to flake8
This commit is contained in:
@@ -1,15 +1,20 @@
|
|||||||
from django.contrib.auth.models import User
|
# from django.contrib.auth.models import User
|
||||||
from django.contrib.auth.middleware import RemoteUserMiddleware
|
from django.contrib.auth.middleware import RemoteUserMiddleware
|
||||||
import django
|
# import django
|
||||||
#import logging
|
# import logging
|
||||||
#logger=logging.getLogger("django.request")
|
# logger=logging.getLogger("django.request")
|
||||||
|
|
||||||
|
|
||||||
class FETHeaderMiddleware(RemoteUserMiddleware):
|
class FETHeaderMiddleware(RemoteUserMiddleware):
|
||||||
header="Remote-User"
|
header = "Remote-User"
|
||||||
|
|
||||||
def process_request(self, request):
|
def process_request(self, request):
|
||||||
request.META[self.header]=request.META.get(self.header, request.headers.get(self.header,None))
|
request.META[self.header] = request.META.get(
|
||||||
|
self.header,
|
||||||
|
request.headers.get(self.header, None)
|
||||||
|
)
|
||||||
super().process_request(request)
|
super().process_request(request)
|
||||||
if request.user.is_authenticated:
|
if request.user.is_authenticated:
|
||||||
request.user.is_admin=True
|
request.user.is_admin = True
|
||||||
request.user.is_superuser=True
|
request.user.is_superuser = True
|
||||||
request.user.is_staff=True
|
request.user.is_staff = True
|
||||||
|
|||||||
@@ -65,7 +65,10 @@ ROOT_URLCONF = 'fet2020.urls'
|
|||||||
TEMPLATES = [
|
TEMPLATES = [
|
||||||
{
|
{
|
||||||
'BACKEND': 'django.template.backends.django.DjangoTemplates',
|
'BACKEND': 'django.template.backends.django.DjangoTemplates',
|
||||||
'DIRS': [os.path.join(BASE_DIR, 'templates'),os.path.join(BASE_DIR, 'templates_design1')],
|
'DIRS': [
|
||||||
|
os.path.join(BASE_DIR, 'templates'),
|
||||||
|
os.path.join(BASE_DIR, 'templates_design1')
|
||||||
|
],
|
||||||
'APP_DIRS': True,
|
'APP_DIRS': True,
|
||||||
'OPTIONS': {
|
'OPTIONS': {
|
||||||
'context_processors': [
|
'context_processors': [
|
||||||
@@ -138,10 +141,8 @@ STATICFILES_DIRS = [
|
|||||||
os.path.join(BASE_DIR, "static_design1"),
|
os.path.join(BASE_DIR, "static_design1"),
|
||||||
]
|
]
|
||||||
|
|
||||||
MEDIA_ROOT=os.path.join(BASE_DIR, 'files/')
|
MEDIA_ROOT = os.path.join(BASE_DIR, 'files/')
|
||||||
MEDIA_URL='/files/'
|
MEDIA_URL = '/files/'
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
TAGGIT_FORCE_LOWERCASE = True
|
TAGGIT_FORCE_LOWERCASE = True
|
||||||
|
|
||||||
@@ -160,5 +161,4 @@ CKEDITOR_CONFIGS = {
|
|||||||
},
|
},
|
||||||
],
|
],
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,22 +1,27 @@
|
|||||||
from django.shortcuts import render
|
from django.shortcuts import render
|
||||||
from django.http import HttpResponse
|
# from django.http import HttpResponse
|
||||||
from collections import deque
|
from collections import deque
|
||||||
from posts.models import Post
|
from posts.models import Post
|
||||||
|
|
||||||
|
|
||||||
def index(request):
|
def index(request):
|
||||||
posts=deque(Post.article_objects.all())
|
posts = deque(Post.article_objects.all())
|
||||||
l=len(posts)
|
|
||||||
def get_tags(lst):
|
def get_tags(lst):
|
||||||
for p in lst:
|
for p in lst:
|
||||||
for t in list(p.tags.names()):
|
for t in list(p.tags.names()):
|
||||||
yield "#"+ t
|
yield "#" + t
|
||||||
|
|
||||||
|
t = set(t for t in get_tags(posts))
|
||||||
t=set( t for t in get_tags(posts))
|
if len(posts) >= 1:
|
||||||
if l>=1:
|
featured_post = posts.popleft()
|
||||||
featured_post=posts.popleft()
|
|
||||||
else:
|
else:
|
||||||
featured_post=0
|
featured_post = 0
|
||||||
|
|
||||||
return render(request, 'home.html',{'posts':posts, 'featured_post':featured_post, "tags_list": ", ".join(t)})
|
context = {
|
||||||
|
'posts': posts,
|
||||||
|
'featured_post': featured_post,
|
||||||
|
'tags_list': ", ".join(t)
|
||||||
|
}
|
||||||
|
|
||||||
|
return render(request, 'home.html', context)
|
||||||
|
|||||||
@@ -21,14 +21,17 @@ class MemberRoleFilter(admin.SimpleListFilter):
|
|||||||
elif self.value() == 'P':
|
elif self.value() == 'P':
|
||||||
return queryset.filter(role='P')
|
return queryset.filter(role='P')
|
||||||
|
|
||||||
|
|
||||||
class JobMemberInline(admin.TabularInline):
|
class JobMemberInline(admin.TabularInline):
|
||||||
model = JobMember
|
model = JobMember
|
||||||
extra = 0
|
extra = 0
|
||||||
|
|
||||||
|
|
||||||
class JobOverviewInline(JobMemberInline):
|
class JobOverviewInline(JobMemberInline):
|
||||||
verbose_name = "Tätigkeit"
|
verbose_name = "Tätigkeit"
|
||||||
verbose_name_plural = "Tätigkeitsübersicht"
|
verbose_name_plural = "Tätigkeitsübersicht"
|
||||||
|
|
||||||
|
|
||||||
class ActiveMemberInline(JobMemberInline):
|
class ActiveMemberInline(JobMemberInline):
|
||||||
verbose_name = "Mitglied"
|
verbose_name = "Mitglied"
|
||||||
verbose_name_plural = "Aktive Mitglieder Liste"
|
verbose_name_plural = "Aktive Mitglieder Liste"
|
||||||
@@ -36,6 +39,7 @@ class ActiveMemberInline(JobMemberInline):
|
|||||||
def get_queryset(self, request):
|
def get_queryset(self, request):
|
||||||
return JobMember.active_member.all()
|
return JobMember.active_member.all()
|
||||||
|
|
||||||
|
|
||||||
class InactiveMemberInline(JobMemberInline):
|
class InactiveMemberInline(JobMemberInline):
|
||||||
verbose_name = "Mitglied"
|
verbose_name = "Mitglied"
|
||||||
verbose_name_plural = "Inaktive Mitglieder Liste"
|
verbose_name_plural = "Inaktive Mitglieder Liste"
|
||||||
@@ -43,25 +47,29 @@ class InactiveMemberInline(JobMemberInline):
|
|||||||
def get_queryset(self, request):
|
def get_queryset(self, request):
|
||||||
return JobMember.inactive_member.all()
|
return JobMember.inactive_member.all()
|
||||||
|
|
||||||
|
|
||||||
class JobInline(admin.TabularInline):
|
class JobInline(admin.TabularInline):
|
||||||
model = Job
|
model = Job
|
||||||
extra = 0
|
extra = 0
|
||||||
|
|
||||||
|
|
||||||
class MyMemberAdmin(admin.ModelAdmin):
|
class MyMemberAdmin(admin.ModelAdmin):
|
||||||
form = MyMemberForm
|
form = MyMemberForm
|
||||||
model = Member
|
model = Member
|
||||||
list_display = ['nickname', 'firstname', 'surname', 'mailaccount', 'role']
|
list_display = ['nickname', 'firstname', 'surname', 'mailaccount', 'role']
|
||||||
inlines = (JobOverviewInline,)
|
inlines = (JobOverviewInline,)
|
||||||
|
|
||||||
search_fields = ['firstname', 'surname','nickname','mailaccount']
|
search_fields = ['firstname', 'surname', 'nickname', 'mailaccount']
|
||||||
list_filter = [MemberRoleFilter]
|
list_filter = [MemberRoleFilter]
|
||||||
|
|
||||||
def save_model(self, request, obj, form, change):
|
def save_model(self, request, obj, form, change):
|
||||||
obj.author = request.user
|
obj.author = request.user
|
||||||
super().save_model(request, obj, form, change)
|
super().save_model(request, obj, form, change)
|
||||||
|
|
||||||
|
|
||||||
admin.site.register(Member, MyMemberAdmin)
|
admin.site.register(Member, MyMemberAdmin)
|
||||||
|
|
||||||
|
|
||||||
class MyJobAdmin(admin.ModelAdmin):
|
class MyJobAdmin(admin.ModelAdmin):
|
||||||
form = MyJobForm
|
form = MyJobForm
|
||||||
model = Job
|
model = Job
|
||||||
@@ -74,8 +82,10 @@ class MyJobAdmin(admin.ModelAdmin):
|
|||||||
obj.author = request.user
|
obj.author = request.user
|
||||||
super().save_model(request, obj, form, change)
|
super().save_model(request, obj, form, change)
|
||||||
|
|
||||||
|
|
||||||
admin.site.register(Job, MyJobAdmin)
|
admin.site.register(Job, MyJobAdmin)
|
||||||
|
|
||||||
|
|
||||||
class MyJobGroupAdmin(admin.ModelAdmin):
|
class MyJobGroupAdmin(admin.ModelAdmin):
|
||||||
form = MyJobGroupForm
|
form = MyJobGroupForm
|
||||||
model = JobGroup
|
model = JobGroup
|
||||||
@@ -88,4 +98,5 @@ class MyJobGroupAdmin(admin.ModelAdmin):
|
|||||||
obj.author = request.user
|
obj.author = request.user
|
||||||
super().save_model(request, obj, form, change)
|
super().save_model(request, obj, form, change)
|
||||||
|
|
||||||
|
|
||||||
admin.site.register(JobGroup, MyJobGroupAdmin)
|
admin.site.register(JobGroup, MyJobGroupAdmin)
|
||||||
@@ -20,14 +20,27 @@ class MyMemberForm(forms.ModelForm):
|
|||||||
'address'
|
'address'
|
||||||
]
|
]
|
||||||
|
|
||||||
widgets = {'description': CKEditorUploadingWidget(config_name='default')}
|
widgets = {
|
||||||
|
'description': CKEditorUploadingWidget(config_name='default')
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
class MyJobForm(forms.ModelForm):
|
class MyJobForm(forms.ModelForm):
|
||||||
class Meta:
|
class Meta:
|
||||||
model = Job
|
model = Job
|
||||||
fields = ['name', 'shortterm', 'slug', 'job_group', 'description', 'image']
|
fields = [
|
||||||
|
'name',
|
||||||
|
'shortterm',
|
||||||
|
'slug',
|
||||||
|
'job_group',
|
||||||
|
'description',
|
||||||
|
'image'
|
||||||
|
]
|
||||||
|
|
||||||
|
widgets = {
|
||||||
|
'description': CKEditorUploadingWidget(config_name='default')
|
||||||
|
}
|
||||||
|
|
||||||
widgets = {'description': CKEditorUploadingWidget(config_name='default')}
|
|
||||||
|
|
||||||
class MyJobGroupForm(forms.ModelForm):
|
class MyJobGroupForm(forms.ModelForm):
|
||||||
class Meta:
|
class Meta:
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ from django.utils.text import slugify
|
|||||||
from django.utils.translation import gettext_lazy as _
|
from django.utils.translation import gettext_lazy as _
|
||||||
from rest_framework import serializers
|
from rest_framework import serializers
|
||||||
|
|
||||||
import uuid
|
# import uuid
|
||||||
|
|
||||||
from datetime import timedelta
|
from datetime import timedelta
|
||||||
|
|
||||||
@@ -15,10 +15,12 @@ class MemberManager(models.Manager):
|
|||||||
def get_queryset(self):
|
def get_queryset(self):
|
||||||
return super().get_queryset().filter(role='A')
|
return super().get_queryset().filter(role='A')
|
||||||
|
|
||||||
|
|
||||||
class PensionManager(models.Manager):
|
class PensionManager(models.Manager):
|
||||||
def get_queryset(self):
|
def get_queryset(self):
|
||||||
return super().get_queryset().filter(role='P')
|
return super().get_queryset().filter(role='P')
|
||||||
|
|
||||||
|
|
||||||
class ActiveMemberManager(models.Manager):
|
class ActiveMemberManager(models.Manager):
|
||||||
'''
|
'''
|
||||||
return a list of active member, and members who are still working
|
return a list of active member, and members who are still working
|
||||||
@@ -34,6 +36,7 @@ class ActiveMemberManager(models.Manager):
|
|||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
class InactiveMemberManager(models.Manager):
|
class InactiveMemberManager(models.Manager):
|
||||||
'''
|
'''
|
||||||
return a list of inactive member
|
return a list of inactive member
|
||||||
@@ -49,6 +52,7 @@ class InactiveMemberManager(models.Manager):
|
|||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
class Member(models.Model):
|
class Member(models.Model):
|
||||||
firstname = models.CharField(max_length=128)
|
firstname = models.CharField(max_length=128)
|
||||||
surname = models.CharField(max_length=128)
|
surname = models.CharField(max_length=128)
|
||||||
@@ -59,19 +63,26 @@ class Member(models.Model):
|
|||||||
('A', _('Active')),
|
('A', _('Active')),
|
||||||
('P', _('Pension'))
|
('P', _('Pension'))
|
||||||
]
|
]
|
||||||
role = models.CharField(max_length=1, choices= __choices, default='A')
|
role = models.CharField(max_length=1, choices=__choices, default='A')
|
||||||
|
|
||||||
description = models.TextField(null=True, blank=True)
|
description = models.TextField(null=True, blank=True)
|
||||||
image = models.ImageField(null=True, blank=True)
|
image = models.ImageField(null=True, blank=True)
|
||||||
|
|
||||||
birthday = models.DateField(null=True, blank=True)
|
birthday = models.DateField(null=True, blank=True)
|
||||||
|
|
||||||
phone_error_msg =_((
|
phone_error_msg = _((
|
||||||
"Phone number must be entered in the format: "
|
"Phone number must be entered in the format: "
|
||||||
"+999999999'. Up to 15 digits allowed."
|
"+999999999'. Up to 15 digits allowed."
|
||||||
))
|
))
|
||||||
phone_regex = RegexValidator(regex=r'^\+?1?\d{9,15}$', message=phone_error_msg)
|
phone_regex = RegexValidator(
|
||||||
phone = models.CharField(validators=[phone_regex], max_length=17, blank=True)
|
regex=r'^\+?1?\d{9,15}$',
|
||||||
|
message=phone_error_msg
|
||||||
|
)
|
||||||
|
phone = models.CharField(
|
||||||
|
validators=[phone_regex],
|
||||||
|
max_length=17,
|
||||||
|
blank=True
|
||||||
|
)
|
||||||
|
|
||||||
address = models.TextField(null=True, blank=True)
|
address = models.TextField(null=True, blank=True)
|
||||||
|
|
||||||
@@ -90,6 +101,7 @@ class Member(models.Model):
|
|||||||
def __str__(self):
|
def __str__(self):
|
||||||
return self.firstname + " " + self.surname
|
return self.firstname + " " + self.surname
|
||||||
|
|
||||||
|
|
||||||
class MemberSerializer(serializers.HyperlinkedModelSerializer):
|
class MemberSerializer(serializers.HyperlinkedModelSerializer):
|
||||||
class Meta:
|
class Meta:
|
||||||
model = Member
|
model = Member
|
||||||
@@ -103,6 +115,7 @@ class MemberSerializer(serializers.HyperlinkedModelSerializer):
|
|||||||
'image'
|
'image'
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
class JobGroup(models.Model):
|
class JobGroup(models.Model):
|
||||||
name = models.CharField(max_length=128)
|
name = models.CharField(max_length=128)
|
||||||
shortterm = models.CharField(max_length=128)
|
shortterm = models.CharField(max_length=128)
|
||||||
@@ -111,6 +124,7 @@ class JobGroup(models.Model):
|
|||||||
def __str__(self):
|
def __str__(self):
|
||||||
return self.name
|
return self.name
|
||||||
|
|
||||||
|
|
||||||
class Job(models.Model):
|
class Job(models.Model):
|
||||||
name = models.CharField(max_length=128)
|
name = models.CharField(max_length=128)
|
||||||
shortterm = models.CharField(max_length=128)
|
shortterm = models.CharField(max_length=128)
|
||||||
@@ -139,6 +153,7 @@ class Job(models.Model):
|
|||||||
def __str__(self):
|
def __str__(self):
|
||||||
return self.shortterm
|
return self.shortterm
|
||||||
|
|
||||||
|
|
||||||
class JobMember(models.Model):
|
class JobMember(models.Model):
|
||||||
member = models.ForeignKey(
|
member = models.ForeignKey(
|
||||||
Member,
|
Member,
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
from django.test import TestCase
|
# from django.test import TestCase
|
||||||
|
|
||||||
# Create your tests here.
|
# Create your tests here.
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
from django.shortcuts import render
|
from django.shortcuts import render
|
||||||
from django.http import HttpResponse
|
# from django.http import HttpResponse
|
||||||
|
|
||||||
from collections import deque
|
from collections import deque
|
||||||
|
|
||||||
@@ -7,11 +7,11 @@ from .models import Member, Job, JobMember, JobGroup, MemberSerializer
|
|||||||
|
|
||||||
from rest_framework import viewsets
|
from rest_framework import viewsets
|
||||||
from rest_framework import permissions
|
from rest_framework import permissions
|
||||||
from django_filters.rest_framework import DjangoFilterBackend
|
# from django_filters.rest_framework import DjangoFilterBackend
|
||||||
|
|
||||||
|
|
||||||
def index(request):
|
def index(request):
|
||||||
#members = deque(Member.all_members.all())
|
# members = deque(Member.all_members.all())
|
||||||
members = deque(Member.all_members.all())
|
members = deque(Member.all_members.all())
|
||||||
jobmembers = deque(JobMember.jobmember.all())
|
jobmembers = deque(JobMember.jobmember.all())
|
||||||
jobs = deque(Job.objects.all())
|
jobs = deque(Job.objects.all())
|
||||||
@@ -19,13 +19,14 @@ def index(request):
|
|||||||
|
|
||||||
context = {
|
context = {
|
||||||
"members": members,
|
"members": members,
|
||||||
"jobmembers" : jobmembers,
|
"jobmembers": jobmembers,
|
||||||
"jobgroups" : jobgroups,
|
"jobgroups": jobgroups,
|
||||||
"jobs" : jobs,
|
"jobs": jobs,
|
||||||
}
|
}
|
||||||
|
|
||||||
return render(request, 'members/index.html', context)
|
return render(request, 'members/index.html', context)
|
||||||
|
|
||||||
|
|
||||||
class MemberViewSet(viewsets.ModelViewSet):
|
class MemberViewSet(viewsets.ModelViewSet):
|
||||||
"""
|
"""
|
||||||
API endpoint that allows users to be viewed or edited.
|
API endpoint that allows users to be viewed or edited.
|
||||||
@@ -34,9 +35,9 @@ class MemberViewSet(viewsets.ModelViewSet):
|
|||||||
serializer_class = MemberSerializer
|
serializer_class = MemberSerializer
|
||||||
|
|
||||||
permission_classes = [permissions.IsAuthenticated]
|
permission_classes = [permissions.IsAuthenticated]
|
||||||
#filter_backends = [DjangoFilterBackend]
|
# filter_backends = [DjangoFilterBackend]
|
||||||
#filterset_fields = ['legacy_id', 'slug','legacy_rubrik_id']
|
# filterset_fields = ['legacy_id', 'slug','legacy_rubrik_id']
|
||||||
lookup_field='name'
|
lookup_field = 'name'
|
||||||
|
|
||||||
def pre_save(self, obj):
|
def pre_save(self, obj):
|
||||||
obj.image = self.request.FILES.get('image')
|
obj.image = self.request.FILES.get('image')
|
||||||
Reference in New Issue
Block a user