Member filters and templates added

This commit is contained in:
2020-08-16 07:05:45 +00:00
parent 41deac2ee3
commit 7fa09b1351
6 changed files with 75 additions and 13 deletions

View File

@@ -141,8 +141,10 @@ class Job(models.Model):
@property
def active_members(self):
"Active Members for this job"
date_today = timezone.now().date()
def sorted_jobmembers():
return sorted(list(self.jobmembers.all()), # filter active fehlt noch
return sorted(list(self.jobmembers.filter(Q(member__role ='A') &
(Q(job_end__gt=date_today) | Q(job_end__isnull=True))).all()), # filter active fehlt noch
key=lambda x: (JobMember._role_sort[x.job_role], JobMember.job_start))
m =[jm.member_with_role for jm in sorted_jobmembers()]
@@ -151,12 +153,17 @@ class Job(models.Model):
@property
def active_members_count(self):
"Count Active Members"
return self.jobmembers.count()
date_today = timezone.now().date()
return self.jobmembers.filter(Q(member__role ='A') &
(Q(job_end__gt=date_today) | Q(job_end__isnull=True))).count()
@property
def inactive_members(self):
"return the inactive members"
return [jm.member for jm in self.jobmembers.all()] # filter inactive fehlt noch
date_today = timezone.now().date()
return [jm.member for jm in self.jobmembers.filter(~Q(member__role ='A') |
(Q(job_end__lt=date_today) & Q(job_end__isnull=False))).all()] # filter inactive fehlt noch
class Meta:
verbose_name = "Tätigkeit"

File diff suppressed because one or more lines are too long

View File

@@ -2,7 +2,9 @@
{% block content %}
<div class="grid-container">
<a href="{% url 'members.list' 'A' %}">
Aktive Mitglieder
</a>
{% for job in jobs %}
<a href="{% url 'members.show_job' job.slug %}">
{{job.name}}

View File

@@ -1,18 +1,26 @@
{% extends 'layout.html' %}
{% block content %}
<h1> GRID </h1>
<div class="grid-container">
<h1> Mitarbeiter Liste </h1>
<h2> Grid Style</h2>
<div class="grid-x">
{% for member in members %}
<div class="medium-3 large-2 small-6 cell">
{% include 'members/partials/_member.html' %}
</div>
{% endfor %}
</div>
<h2> Grid Style 2</h2>
<div class="grid-x">
{% for member in members %}
{% include 'members/partials/_member.html' %}
{% endfor %}
</div>
<h2>Detail List</h2>
<div class="grid-container">
{% for member in members %}
{% include 'members/partials/_member_details.html' %}

View File

@@ -1,7 +1,8 @@
{# only thumb and name of member #}
{% if member.image %}
<img src="{{member.image.url}}" class="thumbnail" style="width:150px;height:150px"/> </br>
{% endif %}
Name: {{member.firstname}} {{member.surname}} </br>
Spitzname: {{member.nickname}} </br>
<a class="thumbnail member-thumb" style="width:150px;height:150px">
{% if member.image %}<img src="{{member.image.url}}" />{% endif %}
<div class="thumb-layer"><div><h1>{{member.nickname}}</h1> <p>{{member.firstname}} {{member.surname}}</p></div></div>
</a>

View File

@@ -20,4 +20,9 @@ Aktuelle Mitglieder {{ job.active_members_count}}:
</div>
Vergangene Mitglieder:
<div class="grid-x">
{% for member in job.inactive_members %}
{% include 'members/partials/_member.html' %}
{% endfor %}
</div>
{% endblock %}