Add support for an iPhone specific agenda format. Remove hardcoded agenda path, use settings.py setting instead.
- Legacy-Id: 1503
This commit is contained in:
parent
0a285b84a5
commit
46cda1d9b1
|
@ -11,3 +11,6 @@
|
|||
|
||||
|
||||
# Create your models here.
|
||||
|
||||
|
||||
# Meeting models can be found under ../proceedings/
|
|
@ -6,6 +6,8 @@ from ietf.meeting import views
|
|||
urlpatterns = patterns('',
|
||||
(r'^(?P<meeting_num>\d+)/materials.html$', views.show_html_materials),
|
||||
(r'^agenda/$', views.html_agenda),
|
||||
(r'^agenda.html$', views.html_agenda),
|
||||
(r'^agenda.txt$', views.text_agenda),
|
||||
(r'^(?P<num>\d+)/agenda.html$', views.html_agenda),
|
||||
(r'^(?P<num>\d+)/agenda.txt$', views.text_agenda),
|
||||
(r'^$', views.current_materials),
|
||||
|
|
|
@ -10,6 +10,7 @@ from django.core.urlresolvers import reverse
|
|||
from django.db.models import Q
|
||||
from django.template import RequestContext
|
||||
from django.template.loader import render_to_string
|
||||
from django.conf import settings
|
||||
import datetime
|
||||
|
||||
def show_html_materials(request, meeting_num=None):
|
||||
|
@ -43,7 +44,7 @@ def current_materials(request):
|
|||
|
||||
def get_plenary_agenda(meeting_num, id):
|
||||
try:
|
||||
plenary_agenda_file = "/a/www/ietf/proceedings/%s" % WgMeetingSession.objects.get(meeting=meeting_num,group_acronym_id=id).agenda_file()
|
||||
plenary_agenda_file = settings.AGENDA_PATH + WgMeetingSession.objects.get(meeting=meeting_num,group_acronym_id=id).agenda_file()
|
||||
try:
|
||||
f = open(plenary_agenda_file)
|
||||
plenary_agenda = f.read()
|
||||
|
@ -54,7 +55,7 @@ def get_plenary_agenda(meeting_num, id):
|
|||
except WgMeetingSession.DoesNotExist:
|
||||
return "The Plenary has not been scheduled"
|
||||
|
||||
def html_agenda(request, num=None):
|
||||
def agenda_info(num=None):
|
||||
if not num:
|
||||
num = list(Meeting.objects.all())[-1].meeting_num
|
||||
timeslots = MeetingTime.objects.filter(meeting=num).order_by("day_id", "time_desc")
|
||||
|
@ -67,22 +68,26 @@ def html_agenda(request, num=None):
|
|||
ads.sort(key=(lambda item: item.area.area_acronym.acronym))
|
||||
plenaryw_agenda = get_plenary_agenda(num, -1)
|
||||
plenaryt_agenda = get_plenary_agenda(num, -2)
|
||||
return render("meeting/agenda.html",
|
||||
{"timeslots":timeslots, "update":update, "meeting":meeting, "venue":venue, "ads":ads,
|
||||
"ops_plenary_agenda":plenaryw_agenda, "tech_plenary_agenda":plenaryt_agenda, },
|
||||
RequestContext(request))
|
||||
|
||||
def text_agenda(request, num):
|
||||
timeslots = MeetingTime.objects.filter(meeting=num).order_by("day_id", "time_desc")
|
||||
update = get_object_or_404(Switches,id=1)
|
||||
meeting=get_object_or_404(Meeting, meeting_num=num)
|
||||
venue = get_object_or_404(MeetingVenue, meeting_num=num)
|
||||
ads = list(IESGHistory.objects.filter(meeting=num))
|
||||
if not ads:
|
||||
ads = list(IESGHistory.objects.filter(meeting=str(int(num)-1)))
|
||||
ads.sort(key=(lambda item: item.area.area_acronym.acronym))
|
||||
plenaryw_agenda = " "+get_plenary_agenda(num, -1).strip().replace("\n", "\n ")
|
||||
plenaryt_agenda = " "+get_plenary_agenda(num, -2).strip().replace("\n", "\n ")
|
||||
return timeslots, update, meeting, venue, ads, plenaryw_agenda, plenaryt_agenda
|
||||
|
||||
def html_agenda(request, num=None):
|
||||
timeslots, update, meeting, venue, ads, plenaryw_agenda, plenaryt_agenda = agenda_info(num)
|
||||
user_agent = request.META["HTTP_USER_AGENT"]
|
||||
print user_agent
|
||||
if "iPhone" in user_agent:
|
||||
template = "meeting/m_agenda.html"
|
||||
else:
|
||||
template = "meeting/agenda.html"
|
||||
return render(template,
|
||||
{"timeslots":timeslots, "update":update, "meeting":meeting, "venue":venue, "ads":ads,
|
||||
"plenaryw_agenda":plenaryw_agenda, "plenaryt_agenda":plenaryt_agenda, },
|
||||
RequestContext(request))
|
||||
|
||||
def text_agenda(request, num=None):
|
||||
timeslots, update, meeting, venue, ads, plenaryw_agenda, plenaryt_agenda = agenda_info(num)
|
||||
plenaryw_agenda = " "+plenaryw_agenda.strip().replace("\n", "\n ")
|
||||
plenaryt_agenda = " "+plenaryt_agenda.strip().replace("\n", "\n ")
|
||||
return HttpResponse(render_to_string("meeting/agenda.txt",
|
||||
{"timeslots":timeslots, "update":update, "meeting":meeting, "venue":venue, "ads":ads,
|
||||
"plenaryw_agenda":plenaryw_agenda, "plenaryt_agenda":plenaryt_agenda, },
|
||||
|
|
|
@ -177,8 +177,8 @@ body {
|
|||
|
||||
/*XXX announcement tool additions - may need to be new-css-i-fied? */
|
||||
input {
|
||||
display: block
|
||||
width: 95%
|
||||
display: block;
|
||||
width: 95%;
|
||||
}
|
||||
|
||||
span.form-required {
|
||||
|
|
Loading…
Reference in a new issue