Example #1
0
def idml(request, object_id):
    g = get_object_or_404(Grid, pk=object_id)
    c = {'object': g}
    response = HttpResponse(
        content_type='application/vnd.adobe.indesign-idml-package')
    response['Content-Disposition'] = 'attachment; filename=' + slugify(
        g.name) + '.idml'
    idml_container = TemplateZipFile(response,
                                     mode='w',
                                     compression=ZIP_DEFLATED,
                                     template_root='gridder/idml/')

    idml_container.write_template('mimetype')
    idml_container.write_template('designmap.xml')
    idml_container.write_template('META-INF/container.xml')
    idml_container.write_template('Resources/Preferences.xml', context=c)
    idml_container.write_template('Spreads/Spread_uba.xml', context=c)
    idml_container.write_template('MasterSpreads/MasterSpread_uc1.xml',
                                  context=c)

    idml_container.close()
    return response