diff --git a/ietf/agenda/models.py b/ietf/agenda/models.py index 71a836239..cff65c809 100644 --- a/ietf/agenda/models.py +++ b/ietf/agenda/models.py @@ -1,3 +1,5 @@ from django.db import models - +from ietf.proceedings.models import Meeting, MeetingVenue, WgMeetingSession, WgAgenda # Create your models here. +from ietf.idtracker.models import Acronym, PersonOrOrgInfo, IRTF +import datetime diff --git a/ietf/meeting/__init__.py b/ietf/meeting/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/ietf/meeting/__init__.pyc b/ietf/meeting/__init__.pyc new file mode 100644 index 000000000..3146663b7 Binary files /dev/null and b/ietf/meeting/__init__.pyc differ diff --git a/ietf/meeting/models.py b/ietf/meeting/models.py new file mode 100644 index 000000000..a4426df42 --- /dev/null +++ b/ietf/meeting/models.py @@ -0,0 +1,11 @@ +from django.db import models +#from django.db import models + +from ietf.proceedings import models +#from ietf.proceedings.models import Meeting, MeetingVenue, WgMeetingSession, WgAgenda +#from ietf.proceedings.models import NonSession, NonSessionRef,SessionName + +import datetime + + +# Create your models here. diff --git a/ietf/meeting/models.pyc b/ietf/meeting/models.pyc new file mode 100644 index 000000000..38e9f0a51 Binary files /dev/null and b/ietf/meeting/models.pyc differ diff --git a/ietf/meeting/urls.py b/ietf/meeting/urls.py new file mode 100644 index 000000000..d0e4279dd --- /dev/null +++ b/ietf/meeting/urls.py @@ -0,0 +1,24 @@ +from django.conf.urls.defaults import * +from ietf.meeting import models, views + +urlpatterns = patterns('', + (r'^$', views.showlist), + + (r'^(?P\d+)/$', views.show), + (r'^(?P\d+)/agenda.html$', views.show_html_agenda), + (r'^(?P\d+)/materials.html$', views.show_html_materials), + + +# (r'^update/(?P\d+)/$', views.update), +# (r'^new-(?P(specific|generic|thirdpty))/$', views.new), +) + +#queryset = models.IprDetail.objects.all() +#archive = {'queryset':queryset, 'date_field': 'submitted_date', 'allow_empty':True } + +#urlpatterns += patterns('django.views.generic.date_based', +# (r'^(?P\d{4})/$', 'archive_year', archive), +# (r'^(?P\d{4})/(?P[a-z]{3})/$', 'archive_month', archive), +#) + + diff --git a/ietf/meeting/urls.pyc b/ietf/meeting/urls.pyc new file mode 100644 index 000000000..a7de1fe6e Binary files /dev/null and b/ietf/meeting/urls.pyc differ diff --git a/ietf/meeting/views.py b/ietf/meeting/views.py new file mode 100644 index 000000000..c19c635d6 --- /dev/null +++ b/ietf/meeting/views.py @@ -0,0 +1,81 @@ +# Create your views here. +import models +from django.shortcuts import render_to_response as render +import django.newforms as forms +from django.utils.html import escape, linebreaks +import ietf.utils +from ietf.proceedings import models + +def default(request): + """Default page, with links to sub-pages""" + return render("meeting/list.html", {}) + +def showlist(request): + """Display a list of existing disclosures""" + return list(request, 'meeting/list.html') + + +def list(request, template): + """ Get A List of All Meetings That are in the system """ + meetings = models.Meeting.objects.all() + + return render(template, + { + 'meetings' : meetings.order_by(* ['-start_date', ] ), + } ) + +# Details views + +def show_html_materials(request, meeting_num=None): + return render("meeting/list.html",{}) + +def show_html_agenda(request, meeting_num=None): + #a=models.MeetingTime.objects.all().filter(meeting=68,day_id=0) + #print a + session = models.WgMeetingSession.objects.all() + +# There has to be a better way to do this, than the way i'm doing it here.. +# I'm copying the formula from the cgi script.. + sessions = session.filter(meeting=meeting_num) +# First we get the non sessions lines 98 - 100 from the cgi.. +# non_sessions = models.NonSession.objects.filter(meeting_num=meeting_num) + cbreak_time = models.NonSession.objects.filter( + meeting_num=meeting_num).filter(non_session_ref=2)[0] + break_time = models.NonSession.objects.filter( + meeting_num=meeting_num).filter(non_session_ref=3)[0] + fbreak_time = models.NonSession.objects.filter( + meeting_num=meeting_num).filter(non_session_ref=6)[0] + abreak_time1 = models.NonSession.objects.filter( + meeting_num=meeting_num).filter(non_session_ref=6)[0] + abreak_time2 = models.NonSession.objects.filter( + meeting_num=meeting_num).filter(non_session_ref=6)[0] + reg_time = models.NonSession.objects.filter(meeting_num=meeting_num).filter(non_session_ref=1) + + meeting = models.Meeting.objects.filter(meeting_num=meeting_num)[0] + + return render("meeting/agenda.html", + { + "all_sessions": sessions, + "meeting_num": meeting_num, + "meeting": meeting, + "cbreak_time": cbreak_time, + "break_time": break_time, + "fbreak_time": fbreak_time + + } ) + + +def show(request, meeting_num=None): + """Show a specific IPR disclosure""" + assert meeting_num != None + meeting = models.Meeting.objects.filter(meeting_num=meeting_num)[0] + meeting.p_notes = linebreaks(escape(meeting.p_notes)) + meeting.discloser_identify = linebreaks(escape(meeting.discloser_identify)) + meeting.comments = linebreaks(escape(meeting.comments)) + meeting.other_notes = linebreaks(escape(meeting.other_notes)) + opt = meeting.licensing_option + meeting.licensing_option = dict(models.LICENSE_CHOICES)[meeting.licensing_option] + meeting.selecttype = dict(models.SELECT_CHOICES)[meeting.selecttype] + if meeting.selectowned: + meeting.selectowned = dict(models.SELECT_CHOICES)[meeting.selectowned] + return render("meeting/details.html", {"meeting": meeting, "section_list": section_list}) diff --git a/ietf/meeting/views.pyc b/ietf/meeting/views.pyc new file mode 100644 index 000000000..8985ba961 Binary files /dev/null and b/ietf/meeting/views.pyc differ diff --git a/ietf/proceedings/models.py b/ietf/proceedings/models.py index 0b36f4e80..4c456dafc 100644 --- a/ietf/proceedings/models.py +++ b/ietf/proceedings/models.py @@ -59,12 +59,13 @@ class NonSessionRef(models.Model): db_table = 'non_session_ref' class NonSession(models.Model): - day_id = models.IntegerField() - non_session_ref = models.ForeignKey(NonSessionRef) - meeting_num = models.ForeignKey(Meeting, db_column='meeting_num', unique=True) - time_desc = models.CharField(blank=True, maxlength=75) - class Meta: - db_table = 'non_session' + non_session_id = models.IntegerField(primary_key=True) + day_id = models.IntegerField() + non_session_ref = models.ForeignKey(NonSessionRef) + meeting_num = models.ForeignKey(Meeting, db_column='meeting_num', unique=True) + time_desc = models.CharField(blank=True, maxlength=75) + class Meta: + db_table = 'non_session' class Proceeding(models.Model): meeting_num = models.ForeignKey(Meeting, db_column='meeting_num', unique=True, primary_key=True) diff --git a/ietf/templates/meeting/agenda.html b/ietf/templates/meeting/agenda.html new file mode 100644 index 000000000..b7eb5ff34 --- /dev/null +++ b/ietf/templates/meeting/agenda.html @@ -0,0 +1,30 @@ +{% extends "base.html" %} +{% block title %} Meeting Agenda {% endblock %} +{% block content %} + +
+ Agenda of the {{ meeting_num }}th IETF Meeting
+ Date of Meeting {{ meeting.start_date }} - {{ meeting.end_date }}
+Updated As of :
+
+ + Text Format of the Agenda
+

+*** Click on an acronym of the group to get a charter page ***
+*** Click on a name of the group to get a meeting agenda ***
+

+ + +{{ cbreak_time.time_desc }} +
+{% for session in all_sessions %} + +The sessions are: +{{ session.num_session }} + + +
+{% endfor %} + + +{% endblock %} diff --git a/ietf/templates/meeting/index.html b/ietf/templates/meeting/index.html new file mode 100644 index 000000000..e69de29bb diff --git a/ietf/templates/meeting/list.html b/ietf/templates/meeting/list.html new file mode 100644 index 000000000..cec5d5343 --- /dev/null +++ b/ietf/templates/meeting/list.html @@ -0,0 +1,22 @@ +{% extends "base.html" %} +{% block title %} Meetings {% endblock %} +{% block content %} + +

The following meeting are in chronological order

+ + + + +{% for meeting in meetings %} + + + + +{% endfor %} + +{% endblock %} diff --git a/ietf/urls.py b/ietf/urls.py index ec964c32d..f35bba794 100644 --- a/ietf/urls.py +++ b/ietf/urls.py @@ -23,6 +23,8 @@ urlpatterns = patterns('', (r'^mailinglists/', include('ietf.mailinglists.urls')), (r'^(?Ppublic|cgi-bin)/', include('ietf.redirects.urls')), (r'^ipr/', include('ietf.ipr.urls')), + (r'^meeting/', include('ietf.meeting.urls')), + (r'^$', ietf.views.apps), # Uncomment this for admin:
Meeting City Agenda Minutes
{{ meeting.city}} ({{ meeting.meeting_num }}) HTML · + Text + + HTML · + Text +