[mod] conf:neuer Zweig settings.name_index
This commit is contained in:
parent
99d1e0eb6c
commit
2fb335cb5a
2 changed files with 33 additions and 2 deletions
|
@ -32,6 +32,7 @@ namespace _espe.conf
|
|||
};
|
||||
server : {
|
||||
port : int;
|
||||
path_base : string;
|
||||
};
|
||||
database : (
|
||||
{
|
||||
|
@ -101,6 +102,10 @@ namespace _espe.conf
|
|||
must_contain_number : boolean;
|
||||
must_contain_special_character : boolean;
|
||||
};
|
||||
name_index : {
|
||||
veil : boolean;
|
||||
salt : (null | string);
|
||||
};
|
||||
};
|
||||
// TODO: evtl. in Datenbank verlagern
|
||||
admins : Array<
|
||||
|
@ -152,6 +157,7 @@ namespace _espe.conf
|
|||
"server": (
|
||||
((node_server) => ({
|
||||
"port": (node_server["port"] ?? 7979),
|
||||
"path_base": (node_server["path_base"] ?? ""),
|
||||
})) (conf_raw["server"] ?? {})
|
||||
),
|
||||
"database": (
|
||||
|
@ -255,6 +261,12 @@ namespace _espe.conf
|
|||
"must_contain_special_character": (node_settings_password_policy["must_contain_special_character"] ?? true),
|
||||
})) (node_settings["password_policy"] ?? {})
|
||||
),
|
||||
"name_index": (
|
||||
((node_settings_password_policy) => ({
|
||||
"veil": (node_settings_password_policy["veil"] ?? false),
|
||||
"salt": (node_settings_password_policy["salt"] ?? null),
|
||||
})) (node_settings["name_index"] ?? {})
|
||||
),
|
||||
})) (conf_raw["settings"] ?? {})
|
||||
),
|
||||
"admins": (conf_raw["admins"] ?? []),
|
||||
|
|
|
@ -43,15 +43,33 @@ namespace _espe.repository.name_index
|
|||
}
|
||||
|
||||
|
||||
/**
|
||||
*/
|
||||
async function get_name_image(
|
||||
name : string
|
||||
) : Promise<string>
|
||||
{
|
||||
return (
|
||||
(! _espe.conf.get().settings.name_index.veil)
|
||||
? name
|
||||
: await lib_plankton.sha256.get(
|
||||
lib_plankton.json.encode(name),
|
||||
_espe.conf.get().settings.name_index.salt
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
*/
|
||||
export async function read(
|
||||
name : string
|
||||
) : Promise<int>
|
||||
{
|
||||
const name_image : string = await get_name_image(name);
|
||||
let row : Record<string, any>;
|
||||
try {
|
||||
row = await get_chest().read([name]);
|
||||
row = await get_chest().read([name_image]);
|
||||
return row["index"];
|
||||
}
|
||||
catch (error) {
|
||||
|
@ -67,7 +85,8 @@ namespace _espe.repository.name_index
|
|||
index : int
|
||||
) : Promise<void>
|
||||
{
|
||||
await get_chest().write([name], {"index": index});
|
||||
const name_image : string = await get_name_image(name);
|
||||
await get_chest().write([name_image], {"index": index});
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue