Ficha del invitado
Este enlace no es válido o ha caducado. Escríbenos a andaquenosabesnada@gmail.com y te mandamos uno nuevo.
{esc(F['description'])}
"""Genera public/invitados.html a partir de guest_form.json (copia de las preguntas del formulario de Google).""" import html, json esc = html.escape F = json.load(open('guest_form.json', encoding='utf-8')) secciones, actual, nq = [], None, 0 consent = None for it in F['items']: t = it['type'] if t == 8: actual = {'titulo': it['title'], 'nota': it['desc'], 'preguntas': []} secciones.append(actual) elif t in (0, 1): nq += 1 actual['preguntas'].append({'id': f'q{nq:02d}', 'titulo': it['title'], 'desc': it['desc'], 'req': it['required'], 'largo': t == 1}) elif t == 4: consent = {'titulo': it['title'], 'opcion': it['options'][0], 'req': it['required']} consent_text = secciones[-1]['nota'] secciones.pop() # la última sección solo contiene las condiciones def pregunta(q): mark = ' *' if q['req'] else '' campo = (f'' if q['largo'] else f'') d = f'{esc(q["desc"])}' if q['desc'] else '' return f' ' bloques = [] for s in secciones: nota = f'\n
{esc(s["nota"])}
' if s['nota'] else '' bloques.append(f' ') page = f'''Este enlace no es válido o ha caducado. Escríbenos a andaquenosabesnada@gmail.com y te mandamos uno nuevo.
{esc(F['description'])}