def METHOD_NAME(request, slug=None):
    schedule = fetch_schedule(slug)
    if not schedule.published and not request.user.is_staff:
        raise Http404()
    presentations = Presentation.objects.filter(section=schedule.section)
    presentations = presentations.exclude(cancelled=True).order_by("id")
    response = HttpResponse(content_type="text/csv")
    if slug:
        file_slug = slug
    else:
        file_slug = "presentations"
    response["Content-Disposition"] = (
        'attachment; filename="%s.csv"' % file_slug
    )
    response.write(
        loader.get_template("symposion/schedule/schedule_list.csv").render(
            {"presentations": presentations}
        )
    )
    return response