lib_plankton.zoo_page.register( "create", (parameters, target_element) => { const form = new lib_plankton.zoo_form.class_form< { membership_number : string; name_real_value : string; email_address_private : (null | string); }, { membership_number : string; name_real_value : string; email_address_private : string; } >( value => ({ "membership_number": value.membership_number, "name_real_value": value.name_real_value, "email_address_private": (value.email_address_private ?? ""), }), representation => ({ "membership_number": representation.membership_number, "name_real_value": representation.name_real_value, "email_address_private": representation.email_address_private, }), new lib_plankton.zoo_input.class_input_group( [ { "name": "name_real_value", "input": new lib_plankton.zoo_input.class_input_text(), "label": "Echter Name", }, { "name": "membership_number", "input": new lib_plankton.zoo_input.class_input_text(), "label": "Mitgliedsnummer", }, { "name": "email_address_private", "input": new lib_plankton.zoo_input.class_input_text(), "label": "Private E-Mail-Adresse", }, ] ), [ { "label": "Senden", "procedure": async (get_value, get_representation) => { const value = await get_value(); const id : int = await _espe.backend.member_project(value); lib_plankton.zoo_page.set({"name": "view", "parameters": {"id": id}}); }, } ] ); form.setup(target_element as HTMLElement); } );