Skip to content

Commit c4b59f0

Browse files
committed
Added personal photo+bio pages.
- Legacy-Id: 11278
1 parent 5159349 commit c4b59f0

6 files changed

Lines changed: 41 additions & 5 deletions

File tree

ietf/person/urls.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
from django.conf.urls import patterns
2-
from ietf.person import ajax
2+
from ietf.person import views, ajax
33

44
urlpatterns = patterns('',
55
(r'^search/(?P<model_name>(person|email))/$', "ietf.person.views.ajax_select2_search", None, 'ajax_select2_search_person_email'),
66
(r'^(?P<personid>[a-z0-9]+).json$', ajax.person_json),
7+
(ur'^(?P<email_or_name>[\w\s]+)', views.profile),
78
)

ietf/person/views.py

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
1-
from django.http import HttpResponse
1+
22
from django.db.models import Q
3+
from django.http import HttpResponse
4+
from django.shortcuts import render, get_object_or_404
35

4-
from ietf.person.models import Email, Person
6+
from ietf.person.models import Email, Person, Alias
57
from ietf.person.fields import select2_id_name_json
68

79
def ajax_select2_search(request, model_name):
@@ -47,3 +49,11 @@ def ajax_select2_search(request, model_name):
4749
objs = objs.distinct()[page:page + 10]
4850

4951
return HttpResponse(select2_id_name_json(objs), content_type='application/json')
52+
53+
def profile(request, email_or_name):
54+
person = None
55+
if '@' in email_or_name:
56+
person = get_object_or_404(Email, address=email_or_name).person
57+
else:
58+
person = get_object_or_404(Alias, name=email_or_name).person
59+
return render(request, 'person/profile.html', {'person': person})

ietf/static/ietf/css/ietf.css

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -464,6 +464,14 @@ label#list-feeds {
464464
height: 3em;
465465
}
466466

467+
.bio-text {
468+
max-width: 85ex;
469+
}
470+
.bio-photo {
471+
float: left;
472+
margin: 0.3em 1em 0.5em 0.1em;
473+
max-width: 200px;
474+
}
467475

468476
.nav-tabs > li > a {
469477
background-color: #f8f8f8;

ietf/templates/group/photos.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ <h1>{{ group_type | upper }} {{ role }} Photos</h1>
3939
</div>
4040
<div class="photo-name">
4141
{% if person_with_groups.grouper.photo %}
42-
<a href="{{person_with_groups.grouper.photo.url}}"><strong>{{person_with_groups.grouper.plain_name}}</strong></a>
42+
<a href="{% url 'ietf.person.views.profile' email_or_name=person_with_groups.grouper.name %}"><strong>{{person_with_groups.grouper.plain_name}}</strong></a>
4343
{% else %}
4444
<strong>{{person_with_groups.grouper.plain_name}}</strong>
4545
{% endif %}

ietf/templates/iesg/photos.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ <h1>{{ group_type | upper }} {{ role }} Photos</h1>
4848
</div>
4949
<div class="photo-name">
5050
{% if person_with_groups.grouper.photo %}
51-
<a href="{{person_with_groups.grouper.photo.url}}"><strong>{{person_with_groups.grouper.plain_name}}</strong></a>
51+
<a href="{% url 'ietf.person.views.profile' email_or_name=person_with_groups.grouper.name %}"><strong>{{person_with_groups.grouper.plain_name}}</strong></a>
5252
{% else %}
5353
<strong>{{person_with_groups.grouper.plain_name}}</strong>
5454
{% endif %}

ietf/templates/person/profile.html

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
{% extends "base.html" %}
2+
{# Copyright The IETF Trust 2015, All Rights Reserved #}
3+
{% load origin %}
4+
5+
{% block title %}Profile for {{ person }}{% endblock %}
6+
7+
{% block content %}
8+
9+
{% origin %}
10+
<h1>{{ person }}</h1>
11+
12+
<div class="bio-text">
13+
<img class="bio-photo" src="{{ person.photo.url }}" alt="Photo of {{ person }}" />
14+
{{ person.biography }}
15+
</div>
16+
17+
{% endblock %}

0 commit comments

Comments
 (0)