public program: no header menu

This commit is contained in:
Élie Bouttier 2016-10-24 23:24:33 +02:00
parent 726f20df71
commit be789c90a6
6 changed files with 83 additions and 62 deletions

View File

@ -0,0 +1,10 @@
{% extends '_base.html' %}
{% load i18n %}
{% block content %}
<h1>{{ site.name }} {% trans "Program" %}</h1>
{{ program }}
{% endblock %}

View File

@ -19,6 +19,7 @@ Event = namedtuple('Event', ['talk', 'row', 'rowcount'])
class Program:
def __init__(self, site, pending=False, empty_rooms=False, talk_filter=None):
self.site = site
self.conference = Conference.objects.get(site=self.site)
self.talks = Talk.objects.\
filter(site=site, room__isnull=False, start_date__isnull=False).\
filter(Q(duration__gt=0) | Q(event__duration__gt=0))
@ -175,7 +176,6 @@ class Program:
if not len(self.days):
return result % {'conference': '', 'days': ''}
conference = Conference.objects.get(site=self.site)
conference_xml = """<conference>
<title>%(title)s</title>
<subtitle></subtitle>
@ -189,8 +189,8 @@ class Program:
</conference>
""" % {
'title': self.site.name,
'venue': ', '.join(map(lambda x: x.strip(), conference.venue.split('\n'))),
'city': conference.city,
'venue': ', '.join(map(lambda x: x.strip(), self.conference.venue.split('\n'))),
'city': self.conference.city,
'start_date': sorted(self.days.keys())[0].strftime('%Y-%m-%d'),
'end_date': sorted(self.days.keys(), reverse=True)[0].strftime('%Y-%m-%d'),
'days_count': len(self.days),

View File

@ -41,17 +41,17 @@ class RoomDetail(StaffRequiredMixin, RoomMixin, DetailView):
@staff_required
def program_pending(request):
output = request.GET.get('format', 'html')
return program(request, pending=True, output=output)
return program(request, pending=True, output=output, html_template='pending-program.html')
def program_public(request):
output = request.GET.get('format', 'html')
return program(request, pending=False, output=output)
def program(request, pending, output):
def program(request, pending=False, output='html', html_template='public-program.html'):
program = Program(site=get_current_site(request), pending=pending)
if output == 'html':
return render(request, 'planning/program.html', {'program': program})
return render(request, 'planning/' + html_template, {'program': program})
elif output == 'xml':
return HttpResponse(program.as_xml(), content_type="application/xml")
else:

View File

@ -0,0 +1,57 @@
{% load staticfiles bootstrap3 %}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="">
<meta name="author" content="">
<link rel="shortcut icon" type="image/png" href="{% static 'img/favicon.ico' %}"/>
{% comment %}<link rel="icon" href="{% static 'favicon.ico' %}">{% endcomment %}
<!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
<![endif]-->
<title>{% block title %}{{ site.name }}{% endblock %}</title>
{% bootstrap_css %}
<link href="{% static 'css/ponyconf.css' %}" rel="stylesheet">
{% block css %}{% endblock %}
{% block js %}{% endblock %}
</head>
<body>
{% block pageheader %}
{% endblock %}
<div class="container">
<div class="row">
<div class="col-md-12">
{% bootstrap_messages %}
{% block content %}{% endblock %}
</div> <!-- /col -->
</div> <!-- /row -->
{% block pagefooter %}
{% endblock %}
</div> <!-- /container -->
<script src="{% bootstrap_jquery_url %}"></script>
{% bootstrap_javascript %}
<script src="{% static 'js/ponyconf.js' %}"></script>
{% block js_end %}{% endblock %}
</body>
</html>

View File

@ -1,32 +1,7 @@
{% load staticfiles bootstrap3 accounts_tags i18n %}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="">
<meta name="author" content="">
<link rel="shortcut icon" type="image/png" href="{% static 'img/favicon.ico' %}"/>
{% comment %}<link rel="icon" href="{% static 'favicon.ico' %}">{% endcomment %}
<!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
<![endif]-->
<title>{% block title %}{{ site.name }}{% endblock %}</title>
{% bootstrap_css %}
<link href="{% static 'css/ponyconf.css' %}" rel="stylesheet">
{% block css %}{% endblock %}
{% block js %}{% endblock %}
</head>
<body>
{% extends '_base.html' %}
{% load accounts_tags i18n %}
{% block pageheader %}
<!-- Static navbar -->
<div class="navbar navbar-default navbar-static-top" role="navigation">
<div class="container">
@ -117,32 +92,11 @@
</div><!--/.nav-collapse -->
</div><!--/.container-fluid -->
</div>
{% endblock %}
<div class="container">
<div class="row">
<div class="col-md-12">
{% bootstrap_messages %}
{% block content %}{% endblock %}
</div> <!-- /col -->
</div> <!-- /row -->
<hr>
<footer>
<p class="text-muted">{% trans "Powered by" %} <a href="https://github.com/toulibre/ponyconf">PonyConf</a></p>
</footer>
</div> <!-- /container -->
<script src="{% bootstrap_jquery_url %}"></script>
{% bootstrap_javascript %}
<script src="{% static 'js/ponyconf.js' %}"></script>
{% block js_end %}{% endblock %}
</body>
</html>
{% block pagefooter %}
<hr>
<footer>
<p class="text-muted">{% trans "Powered by" %} <a href="https://github.com/toulibre/ponyconf">PonyConf</a></p>
</footer>
{% endblock %}