[int]
This commit is contained in:
parent
46ee340e17
commit
5f79d2566d
6 changed files with 103 additions and 4 deletions
|
@ -66,6 +66,7 @@ namespace _espe.api
|
||||||
"email_address_namebased_use": input["email_address_namebased_use"],
|
"email_address_namebased_use": input["email_address_namebased_use"],
|
||||||
"email_redirect_to_private": input["email_redirect_to_private"],
|
"email_redirect_to_private": input["email_redirect_to_private"],
|
||||||
"salutation": input["salutation"],
|
"salutation": input["salutation"],
|
||||||
|
"registered": false,
|
||||||
};
|
};
|
||||||
const member_id : _espe.service.member.type_id = await _espe.service.member.add(member_value);
|
const member_id : _espe.service.member.type_id = await _espe.service.member.add(member_value);
|
||||||
return Promise.resolve({
|
return Promise.resolve({
|
||||||
|
|
67
source/api/actions/member_get.ts
Normal file
67
source/api/actions/member_get.ts
Normal file
|
@ -0,0 +1,67 @@
|
||||||
|
namespace _espe.api
|
||||||
|
{
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @todo types
|
||||||
|
* @todo restriction
|
||||||
|
*/
|
||||||
|
export function register_member_get(
|
||||||
|
rest_subject : lib_plankton.rest.type_rest
|
||||||
|
) : void
|
||||||
|
{
|
||||||
|
lib_plankton.rest.register<
|
||||||
|
int,
|
||||||
|
(
|
||||||
|
null
|
||||||
|
|
|
||||||
|
{
|
||||||
|
name_real : string;
|
||||||
|
name_login : string;
|
||||||
|
email_address_numerical_value : string;
|
||||||
|
email_address_namely_value : string;
|
||||||
|
}
|
||||||
|
)
|
||||||
|
>(
|
||||||
|
rest_subject,
|
||||||
|
lib_plankton.http.enum_method.get,
|
||||||
|
"/member/get/:id",
|
||||||
|
{
|
||||||
|
"description": "gibt Angaben über ein Mitglied aus, die für die Registrierung verwendet werden dürfen",
|
||||||
|
"query_parameters": [
|
||||||
|
{
|
||||||
|
"name": "key",
|
||||||
|
"required": true,
|
||||||
|
"description": "Zugriffs-Schlüssel",
|
||||||
|
},
|
||||||
|
],
|
||||||
|
"restriction": restriction_none,
|
||||||
|
"execution": async ({"path_parameters": path_parameters, "query_parameters": query_parameters, "input": input}) => {
|
||||||
|
const key : string = query_parameters["key"];
|
||||||
|
const member_id : _espe.service.member.type_id = parseInt(path_parameters["id"]);
|
||||||
|
const member_value : _espe.service.member.type_value = await _espe.service.member.get(member_id);
|
||||||
|
|
||||||
|
if (member_value.registered) {
|
||||||
|
return Promise.resolve({
|
||||||
|
"status_code": 409,
|
||||||
|
"data": /*"bereits registriert"*/null,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
return Promise.resolve({
|
||||||
|
"status_code": 200,
|
||||||
|
"data": {
|
||||||
|
"name_real": member_value.name_real_value,
|
||||||
|
"name_login": _espe.service.member.derive_login_name(member_value),
|
||||||
|
// TODO
|
||||||
|
"email_address_numerical_value": _espe.service.member.derive_email_address_numerical(member_value),
|
||||||
|
// TODO
|
||||||
|
"email_address_namely_value": _espe.service.member.derive_email_address_namely(member_value),
|
||||||
|
},
|
||||||
|
});
|
||||||
|
}
|
||||||
|
},
|
||||||
|
}
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -30,6 +30,7 @@ namespace _espe.api
|
||||||
"email_address_namebased_use": input["email_address_namebased_use"],
|
"email_address_namebased_use": input["email_address_namebased_use"],
|
||||||
"email_redirect_to_private": input["email_redirect_to_private"],
|
"email_redirect_to_private": input["email_redirect_to_private"],
|
||||||
"salutation": input["salutation"],
|
"salutation": input["salutation"],
|
||||||
|
"registered": /*input["registered"]*/member_value_old.registered,
|
||||||
};
|
};
|
||||||
await _espe.service.member.modify(member_id, member_value_new);
|
await _espe.service.member.modify(member_id, member_value_new);
|
||||||
return Promise.resolve({
|
return Promise.resolve({
|
||||||
|
|
|
@ -37,6 +37,7 @@ namespace _espe.api
|
||||||
_espe.api.register_member_create(rest_subject);
|
_espe.api.register_member_create(rest_subject);
|
||||||
_espe.api.register_member_update(rest_subject);
|
_espe.api.register_member_update(rest_subject);
|
||||||
// _espe.api.register_member_delete(rest_subject);
|
// _espe.api.register_member_delete(rest_subject);
|
||||||
|
_espe.api.register_member_get(rest_subject);
|
||||||
_espe.api.register_member_register(rest_subject);
|
_espe.api.register_member_register(rest_subject);
|
||||||
_espe.api.register_member_urge_for_registration(rest_subject);
|
_espe.api.register_member_urge_for_registration(rest_subject);
|
||||||
}
|
}
|
||||||
|
|
|
@ -21,6 +21,7 @@ namespace _espe.service.member
|
||||||
email_address_namebased_use : boolean;
|
email_address_namebased_use : boolean;
|
||||||
email_redirect_to_private : boolean;
|
email_redirect_to_private : boolean;
|
||||||
salutation : (null | string);
|
salutation : (null | string);
|
||||||
|
registered : boolean;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@ -87,6 +88,7 @@ namespace _espe.service.member
|
||||||
"email_address_namebased_use": (value.email_address_namebased_use ? 1 : 0),
|
"email_address_namebased_use": (value.email_address_namebased_use ? 1 : 0),
|
||||||
"email_redirect_to_private": (value.email_redirect_to_private ? 1 : 0),
|
"email_redirect_to_private": (value.email_redirect_to_private ? 1 : 0),
|
||||||
"salutation": value.salutation,
|
"salutation": value.salutation,
|
||||||
|
"registered": (value.registered ? 1 : 0),
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -110,6 +112,7 @@ namespace _espe.service.member
|
||||||
"email_address_namebased_use": (row["email_address_namebased_use"] > 0),
|
"email_address_namebased_use": (row["email_address_namebased_use"] > 0),
|
||||||
"email_redirect_to_private": (row["email_redirect_to_private"] > 0),
|
"email_redirect_to_private": (row["email_redirect_to_private"] > 0),
|
||||||
"salutation": row["salutation"],
|
"salutation": row["salutation"],
|
||||||
|
"registered": (row["registered"] > 0),
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -246,6 +249,7 @@ namespace _espe.service.member
|
||||||
member.email_address_namebased_use = data.email_address_namebased_use
|
member.email_address_namebased_use = data.email_address_namebased_use
|
||||||
member.email_redirect_to_private = data.email_redirect_to_private;
|
member.email_redirect_to_private = data.email_redirect_to_private;
|
||||||
member.password_image = await _espe.helpers.bcrypt_compute(data.password);
|
member.password_image = await _espe.helpers.bcrypt_compute(data.password);
|
||||||
|
member.registered = true;
|
||||||
|
|
||||||
await modify(id, member);
|
await modify(id, member);
|
||||||
}
|
}
|
||||||
|
@ -254,7 +258,31 @@ namespace _espe.service.member
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
function derive_email_address_namebased(
|
export function derive_login_name(
|
||||||
|
value : type_value
|
||||||
|
) : string
|
||||||
|
{
|
||||||
|
return lib_plankton.string.coin(
|
||||||
|
"{{value}}{{extension}}",
|
||||||
|
{
|
||||||
|
"value": value.name_real_value.toLowerCase().replace(new RegExp(" ", "g"), "."),
|
||||||
|
"extension": (
|
||||||
|
(
|
||||||
|
(value.name_real_extension === null)
|
||||||
|
||
|
||||||
|
(value.name_real_extension === "")
|
||||||
|
)
|
||||||
|
? ""
|
||||||
|
: ("." + value.name_real_extension)
|
||||||
|
),
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
*/
|
||||||
|
export function derive_email_address_namely(
|
||||||
value : type_value
|
value : type_value
|
||||||
) : string
|
) : string
|
||||||
{
|
{
|
||||||
|
@ -279,7 +307,7 @@ namespace _espe.service.member
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
function derive_email_address_numberbased(
|
export function derive_email_address_numerical(
|
||||||
value : type_value
|
value : type_value
|
||||||
) : string
|
) : string
|
||||||
{
|
{
|
||||||
|
@ -302,10 +330,10 @@ namespace _espe.service.member
|
||||||
{
|
{
|
||||||
return (
|
return (
|
||||||
value.email_address_namebased_use
|
value.email_address_namebased_use
|
||||||
? derive_email_address_namebased(value)
|
? derive_email_address_namely(value)
|
||||||
: (
|
: (
|
||||||
value.email_address_numberbased_use
|
value.email_address_numberbased_use
|
||||||
? derive_email_address_numberbased(value)
|
? derive_email_address_numerical(value)
|
||||||
: value.email_address_private_value
|
: value.email_address_private_value
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
|
@ -41,6 +41,7 @@ ${dir_temp}/espe-unlinked.js: \
|
||||||
${dir_source}/api/actions/member_create.ts \
|
${dir_source}/api/actions/member_create.ts \
|
||||||
${dir_source}/api/actions/member_update.ts \
|
${dir_source}/api/actions/member_update.ts \
|
||||||
${dir_source}/api/actions/member_delete.ts \
|
${dir_source}/api/actions/member_delete.ts \
|
||||||
|
${dir_source}/api/actions/member_get.ts \
|
||||||
${dir_source}/api/actions/member_urge_for_registration.ts \
|
${dir_source}/api/actions/member_urge_for_registration.ts \
|
||||||
${dir_source}/api/actions/member_register.ts \
|
${dir_source}/api/actions/member_register.ts \
|
||||||
${dir_source}/api/functions.ts \
|
${dir_source}/api/functions.ts \
|
||||||
|
|
Loading…
Add table
Reference in a new issue