[int]
This commit is contained in:
parent
bba17fbc97
commit
172f3f2c1f
5 changed files with 117 additions and 42 deletions
|
@ -47,7 +47,7 @@ lib_plankton.zoo_page.register(
|
|||
"label": "Senden",
|
||||
"procedure": async (get_value, get_representation) => {
|
||||
const value = await get_value();
|
||||
const id = await _espe.backend.member_add(
|
||||
const id : int = await _espe.backend.member_add(
|
||||
{
|
||||
"membership_number": value.membership_number,
|
||||
"name_real_value": value.name_real_value,
|
||||
|
@ -62,11 +62,11 @@ lib_plankton.zoo_page.register(
|
|||
"email_redirect_to_private": false,
|
||||
}
|
||||
);
|
||||
lib_plankton.zoo_page.set({"name": "members", "parameters": {}});
|
||||
lib_plankton.zoo_page.set({"name": "view", "parameters": {"id": id}});
|
||||
},
|
||||
}
|
||||
]
|
||||
);
|
||||
form.setup(target_element as HTMLElement);
|
||||
form.setup(target_element as HTMLElement);
|
||||
}
|
||||
);
|
||||
|
|
|
@ -170,34 +170,5 @@ lib_plankton.zoo_page.register(
|
|||
)
|
||||
)
|
||||
);
|
||||
|
||||
target_element.querySelector(".members-urge_for_registration").addEventListener(
|
||||
"click",
|
||||
async () => {
|
||||
// const verification : string = await _espe.backend.verification_get(_id);
|
||||
const url : string = (
|
||||
window.location.href.split("#")[0]
|
||||
+
|
||||
lib_plankton.zoo_page.encode(
|
||||
{
|
||||
"name": "register",
|
||||
"parameters": {
|
||||
"id": _id,
|
||||
"verification": "{{verification}}",
|
||||
}
|
||||
}
|
||||
)
|
||||
);
|
||||
|
||||
await _espe.backend.member_urge_for_registration(_id, url);
|
||||
|
||||
lib_plankton.zoo_page.set(
|
||||
{
|
||||
"name": "index",
|
||||
"parameters": {},
|
||||
}
|
||||
);
|
||||
}
|
||||
);
|
||||
}
|
||||
);
|
||||
|
|
112
source/logic/pages/view.ts
Normal file
112
source/logic/pages/view.ts
Normal file
|
@ -0,0 +1,112 @@
|
|||
lib_plankton.zoo_page.register(
|
||||
"view",
|
||||
async (parameters, target_element) => {
|
||||
const id : int = parseInt(parameters["id"]);
|
||||
|
||||
const form = new lib_plankton.zoo_form.class_form<any, any>(
|
||||
value => value,
|
||||
representation => representation,
|
||||
new lib_plankton.zoo_input.class_input_group(
|
||||
[
|
||||
{
|
||||
"name": "membership_number",
|
||||
"input": new lib_plankton.zoo_input.class_input_text({"read_only": true}),
|
||||
"label": "Mitgliedsnummer",
|
||||
},
|
||||
{
|
||||
"name": "name_real_value",
|
||||
"input": new lib_plankton.zoo_input.class_input_text({"read_only": true}),
|
||||
"label": "Echter Name",
|
||||
},
|
||||
{
|
||||
"name": "email_address_private_value",
|
||||
"input": new lib_plankton.zoo_input.class_input_text({"read_only": true}),
|
||||
"label": "Private E-Mail-Adresse",
|
||||
},
|
||||
{
|
||||
"name": "email_address_numberbased_use",
|
||||
"input": new lib_plankton.zoo_input.class_input_checkbox(/*{"read_only": true}*/),
|
||||
"label": "Nummernbasierte E-Mail-Adresse verwenden",
|
||||
},
|
||||
{
|
||||
"name": "email_address_namebased_use",
|
||||
"input": new lib_plankton.zoo_input.class_input_checkbox(/*{"read_only": true}*/),
|
||||
"label": "Namensbasierte E-Mail-Adresse verwenden",
|
||||
},
|
||||
{
|
||||
"name": "email_redirect",
|
||||
"input": new lib_plankton.zoo_input.class_input_checkbox(/*{"read_only": true}*/),
|
||||
"label": "eingehende E-Mails zu privater Adresse umleiten",
|
||||
},
|
||||
{
|
||||
"name": "name_display",
|
||||
"input": new lib_plankton.zoo_input.class_input_text({"read_only": true}),
|
||||
"label": "Anzeigename",
|
||||
},
|
||||
{
|
||||
"name": "salutation",
|
||||
"input": new lib_plankton.zoo_input.class_input_text({"read_only": true}),
|
||||
"label": "Anrede/Pronomen",
|
||||
},
|
||||
{
|
||||
"name": "name_login",
|
||||
"input": new lib_plankton.zoo_input.class_input_text(
|
||||
{
|
||||
"pattern": "^[0-9a-zA-Z_]+$",
|
||||
"read_only": true,
|
||||
}
|
||||
),
|
||||
"label": "Anmeldename",
|
||||
},
|
||||
]
|
||||
),
|
||||
[
|
||||
{
|
||||
"label": "Zur Registrierung auffordern",
|
||||
"procedure": async (get_value, get_representation) => {
|
||||
const url : string = (
|
||||
window.location.href.split("#")[0]
|
||||
+
|
||||
lib_plankton.zoo_page.encode(
|
||||
{
|
||||
"name": "register",
|
||||
"parameters": {
|
||||
"id": id,
|
||||
"verification": "{{verification}}",
|
||||
}
|
||||
}
|
||||
)
|
||||
);
|
||||
|
||||
await _espe.backend.member_urge_for_registration(id, url);
|
||||
|
||||
/*
|
||||
lib_plankton.zoo_page.set(
|
||||
{
|
||||
"name": "index",
|
||||
"parameters": {},
|
||||
}
|
||||
);
|
||||
*/
|
||||
alert("Benachrichtigung verschickt");
|
||||
},
|
||||
},
|
||||
]
|
||||
);
|
||||
|
||||
let dom_fragment : DocumentFragment = template_request("view");
|
||||
Promise.all(
|
||||
[
|
||||
form.setup(dom_fragment.querySelector(".view-form") as HTMLElement),
|
||||
_espe.backend.member_get(id),
|
||||
]
|
||||
)
|
||||
.then(
|
||||
([_, member]) => {
|
||||
form.input_write(member);
|
||||
}
|
||||
)
|
||||
|
||||
target_element.appendChild(dom_fragment);
|
||||
},
|
||||
);
|
|
@ -16,13 +16,8 @@
|
|||
<template id="view">
|
||||
<section class="view">
|
||||
<h2>Mitglied</h2>
|
||||
<pre class="view-data">
|
||||
</pre>
|
||||
<hr/>
|
||||
<div>
|
||||
<button class="view-urge_for_registration">Zur Registrierung auffordern</button>
|
||||
<div class="view-form">
|
||||
</div>
|
||||
<a class="view-result">Registrierung</a>
|
||||
</section>
|
||||
</template>
|
||||
<template id="members">
|
||||
|
@ -31,10 +26,6 @@
|
|||
<div class="members-editor">
|
||||
</div>
|
||||
<hr/>
|
||||
<div class="members-extras">
|
||||
<button class="members-urge_for_registration">Zur Registrierung auffordern</button>
|
||||
<a class="members-result">Registrierung</a>
|
||||
</div>
|
||||
</section>
|
||||
</template>
|
||||
<template id="register">
|
||||
|
|
|
@ -31,6 +31,7 @@ ${dir_temp}/logic-unlinked.js: \
|
|||
${dir_source}/logic/pages/logout.ts \
|
||||
${dir_source}/logic/pages/members.ts \
|
||||
${dir_source}/logic/pages/create.ts \
|
||||
${dir_source}/logic/pages/view.ts \
|
||||
${dir_source}/logic/pages/register.ts \
|
||||
${dir_source}/logic/main.ts
|
||||
@ ${cmd_log} "logic | compile …"
|
||||
|
|
Loading…
Add table
Reference in a new issue