working about page with templating and clean up formatting

This commit is contained in:
William Zhang 2018-05-26 18:20:42 -04:00
parent 3713afb653
commit 54acb32241
5 changed files with 47 additions and 84 deletions

1
.gitignore vendored
View File

@ -18,3 +18,4 @@ settings.py
env/
db.sqlite3
*.json
admin/

View File

@ -16,14 +16,6 @@ class Member(models.Model):
def __str__(self):
return self.first_name + ' ' + self.last_name
def username(self):
if self.first_name and self.last_name:
if self.year > 0:
return str(year) + first_name[:1] + last_name[:7]
else:
return first_name[:1] + last_name[:7]
return None
class Resource(models.Model):
name = models.CharField(max_length=50)

View File

@ -1,10 +1,14 @@
from django.shortcuts import render
from django.template.defaulttags import register
from .models import Member, Resource
from django.contrib.staticfiles.storage import staticfiles_storage
import os
def index(request):
return render(request, 'index.html')
def about(request):
categories = list(Member.CATEGORIES)
orgs = [c[0] for c in list(Member.CATEGORIES)]
@ -18,12 +22,38 @@ def about(request):
context['data'] = data
return render(request, 'about.html', context)
@register.filter
def get_item(dictionary, key):
return dictionary.get(key)
@register.filter
def username(obj):
if obj.first_name and obj.last_name:
if obj.year > 0:
return str(str(obj.year) +
obj.first_name[:1] +
obj.last_name[:7]).lower()
else:
return str(obj.first_name[:1] + obj.last_name[:7]).lower()
return None
@register.filter
def filename(obj):
uname = username(obj)
folder = 'img'
filepath = os.path.join(folder, 'people', uname + '.jpg')
if uname is not None and staticfiles_storage.exists(filepath):
return os.path.join('static', filepath)
else:
return os.path.join('static', folder, 'profile.jpg')
def resources(request):
return render(request, 'resources.html')
def events(request):
return render(request, 'events.html')

View File

@ -26,13 +26,25 @@
{% for org in categories %}
<section id="{{ org.0 }}">
<h2>{{ org.1 }}</h2>
<div class="{{ org.username }}-intro">
{% with key=data|get_item:org.0 %}
{% for member in key %}
<div class="{{ org.0 }}-intro">
{% with year=member.year first=member.first_name last=member.last_name %}
{{ first }} {{ last }} {{ year }}
{% endwith %}
<div class="{{ org.0 }}-image">
<img src="{{ member|filename }}" />
</div>
<div class="{{ org.0 }}-text">
<span>{{ member.first_name }} {{ member.last_name }}</span>
{% if member.category != 'sponsors' and member.category != 'senators' %}
<span>{{ member.year }}</span>
{% endif %}
</div>
{% if member.category != "officers" %}
<span>{{ member.title }}</span>
{% endif %}
{% if member.category == "officers" and member.intro != '' %}
<p>{{ member.intro }}</p>
{% endif %}
</div>
{% endfor %}
{% endwith %}

View File

@ -1,72 +0,0 @@
<!DOCTYPE html>
<html>
{% load static %}
<head>
<link href="{% static 'css/about.css' %}" rel="stylesheet" />
{% include 'head.html' %}
<title>About - TJSGA</title>
</head>
<body>
{% include 'header.html' %}
<div id="wrapper" class="fluid">
<section id="contact">
<h2>Contact Us!</h2>
<div class="desc">
<span class="quote">
"The world is moved not only by the mighty shoves of the heroes, but also by the aggregate of the tiny pushes of each honest worker." - Helen Keller
</span>
</div>
<div class="desc">
Contact us at
<a href="mailto:sga.tjhsst@gmail.com">sga.tjhsst@gmail.com</a>. We would love to answer questions or hear
about how you think we can improve TJ!
</div>
</section>
<hr />
{{ categories }}
<!--
{% for org in categories %}
<section id="{{ org[0] }}">
<h2>{{ org[1] }}</h2>
{% for member in org.members %}
<div class="{{ org.username }}-intro">
{% assign year = member.year | downcase %}
{% assign first = member.first | slice: 0 %}
{% assign last = member.last | slice: 0,7 %}
{% if org['username'] != "sponsors" %}
{% capture filename %}img/people/{{ year }}{{ first }}{{ last }}.jpg{% endcapture %}
{% else %}
{% capture filename %}img/people/{{ first }}{{ last }}.jpg{% endcapture %}
{% endif %}
{% capture exists %}
{% file_exists {{ path }} %}
{% endcapture %}
{% if exists == false %}
{% capture filename %}img/profile.jpg{% endcapture %}
{% endif %}
<div class="{{ org.username }}-image">
<img src="{{ filename | strip_newlines | downcase }}" />
</div>
<div class="{{ org.username }}-text">
<span>{{ member.first }} {{ member.last }}</span>
{% if org['username'] != "sponsors" and org['username'] != "senators" %}
<span>{{ year }}</span>
{% endif %}
{% if org['username'] != "officers" %}
<span>{{ member.title }}</span>
{% endif %}
{% if org['username'] == "officers" %}
<p>{{ member.intro }}</p>
{% endif %}
</div>
</div>
{% endfor %}
</section>
{% endfor %}
-->
</div>
{% include 'footer.html' %}
</body>
</html>