Skip to content

Commit

Permalink
Added index view (slowly migrating to realistic use)
Browse files Browse the repository at this point in the history
  • Loading branch information
onyxfish committed Sep 22, 2009
1 parent 65b9a01 commit b9ab465
Show file tree
Hide file tree
Showing 4 changed files with 108 additions and 2 deletions.
5 changes: 3 additions & 2 deletions api/views.py
Expand Up @@ -25,12 +25,13 @@ def get_query_options(request):
options = {}

try:
options['endkey'] = request.GET['start']
# String query parameters must be quoted for CouchDB
options['endkey'] = '"%s"' % request.GET['start']
except KeyError:
pass

try:
options['startkey'] = request.GET['end']
options['startkey'] = '"%s"' % request.GET['end']
except KeyError:
pass

Expand Down
56 changes: 56 additions & 0 deletions citizen/templates/index.html
@@ -0,0 +1,56 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Voter's Daily</title>
</head>
<body>
<h1>Voter's Daily</h1>
Total executive events: {{ executive_events|length }}
<table border="1" margin="0" padding="0">
<tbody>
{% for event in executive_events %}
<tr>
<td>{{ event.datetime }}</td>
<td>{{ event.title }}</td>
<td>{{ event.description }}</td>
<td>{{ event.end_datetime }}</td>
<td>{{ event.entity }}</td>
<td>{{ event.source_url }}</td>
</tr>
{% endfor %}
</tbody>
</table>

Total judicial events: {{ judicial_events|length }}
<table border="1" margin="0" padding="0">
<tbody>
{% for event in judicial_events %}
<tr>
<td>{{ event.datetime }}</td>
<td>{{ event.title }}</td>
<td>{{ event.description }}</td>
<td>{{ event.end_datetime }}</td>
<td>{{ event.entity }}</td>
<td>{{ event.source_url }}</td>
</tr>
{% endfor %}
</tbody>
</table>

Total legislative events: {{ legislative_events|length }}
<table border="1" margin="0" padding="0">
<tbody>
{% for event in legislative_events %}
<tr>
<td>{{ event.datetime }}</td>
<td>{{ event.title }}</td>
<td>{{ event.description }}</td>
<td>{{ event.end_datetime }}</td>
<td>{{ event.entity }}</td>
<td>{{ event.source_url }}</td>
</tr>
{% endfor %}
</tbody>
</table>
</body>
</html>
47 changes: 47 additions & 0 deletions citizen/views.py
@@ -1,3 +1,4 @@
import datetime
import json
import urllib
import urllib2
Expand Down Expand Up @@ -88,4 +89,50 @@ def entity(request, entity):
data = json.loads(api_result.read())

return render_to_response('entity.html', { 'documents': data['rows'] })

def index(request):
"""
Renders the public-facing front page.
"""
if request.method != 'GET':
raise Http404

utc_now = datetime.datetime.utcnow()
utc_today = datetime.date(utc_now.year, utc_now.month, utc_now.day)
utc_tomorrow = utc_today + datetime.timedelta(days=1)
start = utc_today.isoformat()
end = utc_tomorrow.isoformat()

#TEMP
start = '2009-09-01'
end = '2009-09-15'

options = {}
options['start'] = start
options['end'] = end
options['format'] = 'json'
query_string = urllib.urlencode(options)

api_url = settings.API_ROOT + reverse('api_events_all')
api_url = '%s?%s' % (api_url, query_string)

api_result = urllib2.urlopen(api_url)
data = json.loads(api_result.read())

executive_events = []
legislative_events = []
judicial_events = []

for key, value in data['results'].items():
if value['branch'] == 'Executive':
executive_events.append(value)
elif value['branch'] == 'Legislative':
legislative_events.append(value)
elif value['branch'] == 'Judicial':
judicial_events.append(value)

return render_to_response('index.html', {
'executive_events': executive_events,
'legislative_events': legislative_events,
'judicial_events': judicial_events })

2 changes: 2 additions & 0 deletions urls.py
Expand Up @@ -8,4 +8,6 @@
url(r'^events/all', 'votersdaily_web.citizen.views.all', name='events_all'),
url(r'^events/branch/(?P<branch>.*)', 'votersdaily_web.citizen.views.branch', name='events_branch'),
url(r'^events/entity/(?P<entity>.*)', 'votersdaily_web.citizen.views.entity', name='events_entity'),

url(r'', 'votersdaily_web.citizen.views.index', name='index')
)

0 comments on commit b9ab465

Please sign in to comment.