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_value : (null | string); }, { membership_number : string; name_real_value : string; email_address_private_value : string; } >( value => ({ "membership_number": value.membership_number, "name_real_value": value.name_real_value, "email_address_private_value": (value.email_address_private_value ?? ""), }), representation => ({ "membership_number": representation.membership_number, "name_real_value": representation.name_real_value, "email_address_private_value": representation.email_address_private_value, }), new lib_plankton.zoo_input.class_input_group( [ { "name": "membership_number", "input": new lib_plankton.zoo_input.class_input_text(), "label": "Mitgliedsnummer", }, { "name": "name_real_value", "input": new lib_plankton.zoo_input.class_input_text(), "label": "Echter Name", }, { "name": "email_address_private_value", "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 = await _aum.backend.member_add( { "membership_number": value.membership_number, "name_real_value": value.name_real_value, "email_address_private_value": value.email_address_private_value, "name_real_extension": null, "name_display": null, "name_login": null, "salutation": null, "password_image": null, "email_address_numberbased_use": false, "email_address_namebased_use": false, "email_redirect_to_private": false, } ); lib_plankton.zoo_page.set({"name": "view", "parameters": {"id": id}}); }, } ] ); form.setup(target_element as HTMLElement); } );