[mod] namespace

This commit is contained in:
fenris 2025-09-25 17:54:20 +02:00
parent 9f4227ffbb
commit e1d0b17016
17 changed files with 243 additions and 243 deletions

View file

@ -1,6 +1,6 @@
/** /**
*/ */
namespace _zeitbild.frontend_web.backend namespace _dali.backend
{ {
/** /**
@ -15,14 +15,14 @@ namespace _zeitbild.frontend_web.backend
/** /**
*/ */
function access_level_encode( function access_level_encode(
access_level : _zeitbild.frontend_web.type.enum_access_level access_level : _dali.type.enum_access_level
) : ("none" | "view" | "edit" | "admin") ) : ("none" | "view" | "edit" | "admin")
{ {
switch (access_level) { switch (access_level) {
case _zeitbild.frontend_web.type.enum_access_level.none: return "none"; case _dali.type.enum_access_level.none: return "none";
case _zeitbild.frontend_web.type.enum_access_level.view: return "view"; case _dali.type.enum_access_level.view: return "view";
case _zeitbild.frontend_web.type.enum_access_level.edit: return "edit"; case _dali.type.enum_access_level.edit: return "edit";
case _zeitbild.frontend_web.type.enum_access_level.admin: return "admin"; case _dali.type.enum_access_level.admin: return "admin";
} }
} }
@ -31,13 +31,13 @@ namespace _zeitbild.frontend_web.backend
*/ */
function access_level_decode( function access_level_decode(
access_level_encoded : ("none" | "view" | "edit" | "admin") access_level_encoded : ("none" | "view" | "edit" | "admin")
) : _zeitbild.frontend_web.type.enum_access_level ) : _dali.type.enum_access_level
{ {
switch (access_level_encoded) { switch (access_level_encoded) {
case "none": return _zeitbild.frontend_web.type.enum_access_level.none; case "none": return _dali.type.enum_access_level.none;
case "view": return _zeitbild.frontend_web.type.enum_access_level.view; case "view": return _dali.type.enum_access_level.view;
case "edit": return _zeitbild.frontend_web.type.enum_access_level.edit; case "edit": return _dali.type.enum_access_level.edit;
case "admin": return _zeitbild.frontend_web.type.enum_access_level.admin; case "admin": return _dali.type.enum_access_level.admin;
} }
} }
@ -98,7 +98,7 @@ namespace _zeitbild.frontend_web.backend
const http_request : lib_plankton.http.type_request = { const http_request : lib_plankton.http.type_request = {
"version": "HTTP/2", "version": "HTTP/2",
"scheme": ( "scheme": (
(_zeitbild.frontend_web.conf.get()["backend"]["scheme"] === "http") (_dali.conf.get()["backend"]["scheme"] === "http")
? ?
"http" "http"
: :
@ -107,14 +107,14 @@ namespace _zeitbild.frontend_web.backend
"host": lib_plankton.string.coin( "host": lib_plankton.string.coin(
"{{host}}:{{port}}", "{{host}}:{{port}}",
{ {
"host": _zeitbild.frontend_web.conf.get()["backend"]["host"], "host": _dali.conf.get()["backend"]["host"],
"port": _zeitbild.frontend_web.conf.get()["backend"]["port"].toFixed(0), "port": _dali.conf.get()["backend"]["port"].toFixed(0),
} }
), ),
"path": lib_plankton.string.coin( "path": lib_plankton.string.coin(
"{{base}}{{action}}", "{{base}}{{action}}",
{ {
"base": _zeitbild.frontend_web.conf.get()["backend"]["path"], "base": _dali.conf.get()["backend"]["path"],
"action": action, "action": action,
} }
), ),
@ -300,7 +300,7 @@ namespace _zeitbild.frontend_web.backend
{ {
id : int; id : int;
name : string; name : string;
access_level : _zeitbild.frontend_web.type.enum_access_level; access_level : _dali.type.enum_access_level;
} }
> >
> >
@ -330,9 +330,9 @@ namespace _zeitbild.frontend_web.backend
/** /**
*/ */
export async function calendar_get( export async function calendar_get(
calendar_id : _zeitbild.frontend_web.type.calendar_id calendar_id : _dali.type.calendar_id
) : Promise< ) : Promise<
_zeitbild.frontend_web.type.calendar_object _dali.type.calendar_object
> >
{ {
return ( return (
@ -388,9 +388,9 @@ namespace _zeitbild.frontend_web.backend
/** /**
*/ */
export async function calendar_add( export async function calendar_add(
calendar_object : _zeitbild.frontend_web.type.calendar_object calendar_object : _dali.type.calendar_object
) : Promise< ) : Promise<
_zeitbild.frontend_web.type.calendar_id _dali.type.calendar_id
> >
{ {
return call( return call(
@ -424,8 +424,8 @@ namespace _zeitbild.frontend_web.backend
/** /**
*/ */
export async function calendar_change( export async function calendar_change(
calendar_id : _zeitbild.frontend_web.type.calendar_id, calendar_id : _dali.type.calendar_id,
calendar_object : _zeitbild.frontend_web.type.calendar_object calendar_object : _dali.type.calendar_object
) : Promise< ) : Promise<
void void
> >
@ -462,7 +462,7 @@ namespace _zeitbild.frontend_web.backend
/** /**
*/ */
export async function calendar_remove( export async function calendar_remove(
calendar_id : _zeitbild.frontend_web.type.calendar_id calendar_id : _dali.type.calendar_id
) : Promise< ) : Promise<
void void
> >
@ -483,9 +483,9 @@ namespace _zeitbild.frontend_web.backend
/** /**
*/ */
export async function calendar_event_get( export async function calendar_event_get(
calendar_id : _zeitbild.frontend_web.type.calendar_id, calendar_id : _dali.type.calendar_id,
event_id : _zeitbild.frontend_web.type.local_resource_event_id event_id : _dali.type.local_resource_event_id
) : Promise<_zeitbild.frontend_web.type.event_object> ) : Promise<_dali.type.event_object>
{ {
return call( return call(
lib_plankton.http.enum_method.get, lib_plankton.http.enum_method.get,
@ -504,8 +504,8 @@ namespace _zeitbild.frontend_web.backend
/** /**
*/ */
export async function calendar_event_add( export async function calendar_event_add(
calendar_id : _zeitbild.frontend_web.type.calendar_id, calendar_id : _dali.type.calendar_id,
event_object : _zeitbild.frontend_web.type.event_object event_object : _dali.type.event_object
) : Promise<void> ) : Promise<void>
{ {
return call( return call(
@ -524,9 +524,9 @@ namespace _zeitbild.frontend_web.backend
/** /**
*/ */
export async function calendar_event_change( export async function calendar_event_change(
calendar_id : _zeitbild.frontend_web.type.calendar_id, calendar_id : _dali.type.calendar_id,
event_id : _zeitbild.frontend_web.type.local_resource_event_id, event_id : _dali.type.local_resource_event_id,
event_object : _zeitbild.frontend_web.type.event_object event_object : _dali.type.event_object
) : Promise<void> ) : Promise<void>
{ {
return call( return call(
@ -546,8 +546,8 @@ namespace _zeitbild.frontend_web.backend
/** /**
*/ */
export async function calendar_event_remove( export async function calendar_event_remove(
calendar_id : _zeitbild.frontend_web.type.calendar_id, calendar_id : _dali.type.calendar_id,
event_id : _zeitbild.frontend_web.type.local_resource_event_id event_id : _dali.type.local_resource_event_id
) : Promise<void> ) : Promise<void>
{ {
return call( return call(
@ -571,16 +571,16 @@ namespace _zeitbild.frontend_web.backend
from_pit : lib_plankton.pit.type_pit, from_pit : lib_plankton.pit.type_pit,
to_pit : lib_plankton.pit.type_pit, to_pit : lib_plankton.pit.type_pit,
options : { options : {
calendar_ids ?: (null | Array<_zeitbild.frontend_web.type.calendar_id>); calendar_ids ?: (null | Array<_dali.type.calendar_id>);
} = {} } = {}
) : Promise< ) : Promise<
Array< Array<
{ {
calendar_id : _zeitbild.frontend_web.type.calendar_id; calendar_id : _dali.type.calendar_id;
calendar_name : string; calendar_name : string;
access_level : _zeitbild.frontend_web.type.enum_access_level; access_level : _dali.type.enum_access_level;
event_id : (null | _zeitbild.frontend_web.type.local_resource_event_id); event_id : (null | _dali.type.local_resource_event_id);
event_object : _zeitbild.frontend_web.type.event_object; event_object : _dali.type.event_object;
} }
> >
> >

View file

@ -1,5 +1,5 @@
namespace _zeitbild.frontend_web.conf namespace _dali.conf
{ {
/** /**

View file

@ -1,7 +1,7 @@
/** /**
*/ */
namespace _zeitbild.frontend_web.helpers namespace _dali.helpers
{ {
/** /**
@ -78,12 +78,12 @@ namespace _zeitbild.frontend_web.helpers
/** /**
*/ */
export function input_access_level( export function input_access_level(
) : lib_plankton.zoo_input.interface_input<_zeitbild.frontend_web.type.enum_access_level> ) : lib_plankton.zoo_input.interface_input<_dali.type.enum_access_level>
{ {
return ( return (
new lib_plankton.zoo_input.class_input_wrapped< new lib_plankton.zoo_input.class_input_wrapped<
/*("none" | "view" | "edit" | "admin")*/string, /*("none" | "view" | "edit" | "admin")*/string,
_zeitbild.frontend_web.type.enum_access_level _dali.type.enum_access_level
>( >(
new lib_plankton.zoo_input.class_input_selection( new lib_plankton.zoo_input.class_input_selection(
[ [
@ -107,18 +107,18 @@ namespace _zeitbild.frontend_web.helpers
), ),
(raw) => { (raw) => {
switch (raw) { switch (raw) {
case "none": return _zeitbild.frontend_web.type.enum_access_level.none; case "none": return _dali.type.enum_access_level.none;
case "view": return _zeitbild.frontend_web.type.enum_access_level.view; case "view": return _dali.type.enum_access_level.view;
case "edit": return _zeitbild.frontend_web.type.enum_access_level.edit; case "edit": return _dali.type.enum_access_level.edit;
case "admin": return _zeitbild.frontend_web.type.enum_access_level.admin; case "admin": return _dali.type.enum_access_level.admin;
} }
}, },
(access_level) => { (access_level) => {
switch (access_level) { switch (access_level) {
case _zeitbild.frontend_web.type.enum_access_level.none: return "none"; case _dali.type.enum_access_level.none: return "none";
case _zeitbild.frontend_web.type.enum_access_level.view: return "view"; case _dali.type.enum_access_level.view: return "view";
case _zeitbild.frontend_web.type.enum_access_level.edit: return "edit"; case _dali.type.enum_access_level.edit: return "edit";
case _zeitbild.frontend_web.type.enum_access_level.admin: return "admin"; case _dali.type.enum_access_level.admin: return "admin";
} }
}, },
) )
@ -129,12 +129,12 @@ namespace _zeitbild.frontend_web.helpers
/** /**
*/ */
export async function input_attributed_access( export async function input_attributed_access(
) : Promise<lib_plankton.zoo_input.class_input_hashmap<_zeitbild.frontend_web.type.user_id, _zeitbild.frontend_web.type.enum_access_level>> ) : Promise<lib_plankton.zoo_input.class_input_hashmap<_dali.type.user_id, _dali.type.enum_access_level>>
{ {
const users : Array<{id : _zeitbild.frontend_web.type.user_id; name : string;}> = await _zeitbild.frontend_web.backend.user_list( const users : Array<{id : _dali.type.user_id; name : string;}> = await _dali.backend.user_list(
); );
return Promise.resolve( return Promise.resolve(
new lib_plankton.zoo_input.class_input_hashmap<_zeitbild.frontend_web.type.user_id, _zeitbild.frontend_web.type.enum_access_level>( new lib_plankton.zoo_input.class_input_hashmap<_dali.type.user_id, _dali.type.enum_access_level>(
// hash_key // hash_key
(user_id) => user_id.toFixed(0), (user_id) => user_id.toFixed(0),
// key_input_factory // key_input_factory
@ -164,7 +164,7 @@ namespace _zeitbild.frontend_web.helpers
) : lib_plankton.zoo_input.interface_input<lib_plankton.pit.type_datetime> ) : lib_plankton.zoo_input.interface_input<lib_plankton.pit.type_datetime>
{ {
return ( return (
_zeitbild.frontend_web.conf.get().misc.use_central_europe_specific_datetime_inputs _dali.conf.get().misc.use_central_europe_specific_datetime_inputs
? ?
new lib_plankton.zoo_input.class_input_datetime_central_europe( new lib_plankton.zoo_input.class_input_datetime_central_europe(
{ {

View file

@ -1,7 +1,7 @@
/** /**
*/ */
namespace _zeitbild.frontend_web namespace _dali
{ {
/** /**
@ -10,7 +10,7 @@ namespace _zeitbild.frontend_web
) : Promise<void> ) : Promise<void>
{ {
// conf // conf
await _zeitbild.frontend_web.conf.init( await _dali.conf.init(
"conf.json" "conf.json"
); );
@ -20,7 +20,7 @@ namespace _zeitbild.frontend_web
{"kind": "console", "data": {"threshold": "info"}}, {"kind": "console", "data": {"threshold": "info"}},
] ]
); );
await _zeitbild.frontend_web.backend.init( await _dali.backend.init(
); );
await lib_plankton.translate.initialize( await lib_plankton.translate.initialize(
{ {

View file

@ -1,7 +1,7 @@
/** /**
*/ */
namespace _zeitbild.frontend_web.type namespace _dali.type
{ {
/** /**

View file

@ -1,4 +1,4 @@
namespace _zeitbild.frontend_web.pages namespace _dali.pages
{ {
/** /**
@ -7,8 +7,8 @@ namespace _zeitbild.frontend_web.pages
"caldav", "caldav",
async (parameters, target_element) => { async (parameters, target_element) => {
target_element.innerHTML = ""; target_element.innerHTML = "";
const conf = await _zeitbild.frontend_web.backend.user_dav_conf(); const conf = await _dali.backend.user_dav_conf();
target_element.innerHTML = await _zeitbild.frontend_web.helpers.template_coin( target_element.innerHTML = await _dali.helpers.template_coin(
"caldav", "caldav",
"main", "main",
{ {
@ -16,7 +16,7 @@ namespace _zeitbild.frontend_web.pages
"content": ( "content": (
(conf === null) (conf === null)
? ?
await _zeitbild.frontend_web.helpers.template_coin( await _dali.helpers.template_coin(
"caldav", "caldav",
"unavailable", "unavailable",
{ {
@ -24,7 +24,7 @@ namespace _zeitbild.frontend_web.pages
} }
) )
: :
await _zeitbild.frontend_web.helpers.template_coin( await _dali.helpers.template_coin(
"caldav", "caldav",
"available", "available",
{ {
@ -32,7 +32,7 @@ namespace _zeitbild.frontend_web.pages
"conf_content": ( "conf_content": (
(conf.password === null) (conf.password === null)
? ?
await _zeitbild.frontend_web.helpers.template_coin( await _dali.helpers.template_coin(
"caldav", "caldav",
"conf-token_unset", "conf-token_unset",
{ {
@ -40,7 +40,7 @@ namespace _zeitbild.frontend_web.pages
} }
) )
: :
await _zeitbild.frontend_web.helpers.template_coin( await _dali.helpers.template_coin(
"caldav", "caldav",
"conf-token_set", "conf-token_set",
{ {
@ -55,7 +55,7 @@ namespace _zeitbild.frontend_web.pages
await lib_plankton.call.promise_condense<string, unknown>( await lib_plankton.call.promise_condense<string, unknown>(
conf.setup_hints conf.setup_hints
.map( .map(
entry => () => _zeitbild.frontend_web.helpers.template_coin( entry => () => _dali.helpers.template_coin(
"caldav", "caldav",
"conf-setup_hint_entry", "conf-setup_hint_entry",
{ {
@ -104,7 +104,7 @@ namespace _zeitbild.frontend_web.pages
document.querySelector("#caldav-set_token > button").addEventListener( document.querySelector("#caldav-set_token > button").addEventListener(
"click", "click",
async () => { async () => {
await _zeitbild.frontend_web.backend.user_dav_token(); await _dali.backend.user_dav_token();
lib_plankton.zoo_page.reload(); lib_plankton.zoo_page.reload();
} }
); );

View file

@ -1,4 +1,4 @@
namespace _zeitbild.frontend_web.pages namespace _dali.pages
{ {
/** /**
@ -7,7 +7,7 @@ namespace _zeitbild.frontend_web.pages
"calendar_add", "calendar_add",
async (parameters, target_element) => { async (parameters, target_element) => {
target_element.innerHTML = ""; target_element.innerHTML = "";
target_element.innerHTML = await _zeitbild.frontend_web.helpers.template_coin( target_element.innerHTML = await _dali.helpers.template_coin(
"calendar_add", "calendar_add",
"default", "default",
{ {
@ -15,29 +15,29 @@ namespace _zeitbild.frontend_web.pages
} }
); );
const form : lib_plankton.zoo_form.class_form< const form : lib_plankton.zoo_form.class_form<
_zeitbild.frontend_web.type.calendar_object, _dali.type.calendar_object,
{ {
name : string; name : string;
access : { access : {
public : boolean; public : boolean;
default_level : _zeitbild.frontend_web.type.enum_access_level; default_level : _dali.type.enum_access_level;
attributed : lib_plankton.map.type_map< attributed : lib_plankton.map.type_map<
_zeitbild.frontend_web.type.user_id, _dali.type.user_id,
_zeitbild.frontend_web.type.enum_access_level _dali.type.enum_access_level
>; >;
}; };
resource_kind : string; resource_kind : string;
} }
> = new lib_plankton.zoo_form.class_form< > = new lib_plankton.zoo_form.class_form<
_zeitbild.frontend_web.type.calendar_object, _dali.type.calendar_object,
{ {
name : string; name : string;
access : { access : {
public : boolean; public : boolean;
default_level : _zeitbild.frontend_web.type.enum_access_level; default_level : _dali.type.enum_access_level;
attributed : lib_plankton.map.type_map< attributed : lib_plankton.map.type_map<
_zeitbild.frontend_web.type.user_id, _dali.type.user_id,
_zeitbild.frontend_web.type.enum_access_level _dali.type.enum_access_level
>; >;
}; };
resource_kind : string; resource_kind : string;
@ -97,12 +97,12 @@ namespace _zeitbild.frontend_web.pages
}, },
{ {
"name": "default_level", "name": "default_level",
"input": _zeitbild.frontend_web.helpers.input_access_level(), "input": _dali.helpers.input_access_level(),
"label": lib_plankton.translate.get("calendar.access.default_level"), "label": lib_plankton.translate.get("calendar.access.default_level"),
}, },
{ {
"name": "attributed", "name": "attributed",
"input": await _zeitbild.frontend_web.helpers.input_attributed_access(), "input": await _dali.helpers.input_attributed_access(),
"label": lib_plankton.translate.get("calendar.access.attributed"), "label": lib_plankton.translate.get("calendar.access.attributed"),
}, },
] ]
@ -134,7 +134,7 @@ namespace _zeitbild.frontend_web.pages
"procedure": async (get_value, get_representation) => { "procedure": async (get_value, get_representation) => {
const value : any = await get_value(); const value : any = await get_value();
try { try {
await _zeitbild.frontend_web.backend.calendar_add( await _dali.backend.calendar_add(
value value
); );
lib_plankton.zoo_page.set( lib_plankton.zoo_page.set(

View file

@ -1,4 +1,4 @@
namespace _zeitbild.frontend_web.pages namespace _dali.pages
{ {
/** /**
@ -9,7 +9,7 @@ namespace _zeitbild.frontend_web.pages
const read_only : boolean = ((parameters["read_only"] ?? "yes") === "yes"); const read_only : boolean = ((parameters["read_only"] ?? "yes") === "yes");
const calendar_id : int = parseInt(parameters["calendar_id"]); const calendar_id : int = parseInt(parameters["calendar_id"]);
target_element.innerHTML = ""; target_element.innerHTML = "";
target_element.innerHTML = await _zeitbild.frontend_web.helpers.template_coin( target_element.innerHTML = await _dali.helpers.template_coin(
"calendar_edit", "calendar_edit",
"default", "default",
{ {
@ -17,28 +17,28 @@ namespace _zeitbild.frontend_web.pages
} }
); );
const form : lib_plankton.zoo_form.class_form< const form : lib_plankton.zoo_form.class_form<
_zeitbild.frontend_web.type.calendar_object, _dali.type.calendar_object,
{ {
name : string; name : string;
access : { access : {
public : boolean; public : boolean;
default_level : _zeitbild.frontend_web.type.enum_access_level; default_level : _dali.type.enum_access_level;
attributed : lib_plankton.map.type_map< attributed : lib_plankton.map.type_map<
_zeitbild.frontend_web.type.user_id, _dali.type.user_id,
_zeitbild.frontend_web.type.enum_access_level _dali.type.enum_access_level
>; >;
}; };
} }
> = new lib_plankton.zoo_form.class_form< > = new lib_plankton.zoo_form.class_form<
_zeitbild.frontend_web.type.calendar_object, _dali.type.calendar_object,
{ {
name : string; name : string;
access : { access : {
public : boolean; public : boolean;
default_level : _zeitbild.frontend_web.type.enum_access_level; default_level : _dali.type.enum_access_level;
attributed : lib_plankton.map.type_map< attributed : lib_plankton.map.type_map<
_zeitbild.frontend_web.type.user_id, _dali.type.user_id,
_zeitbild.frontend_web.type.enum_access_level _dali.type.enum_access_level
>; >;
}; };
} }
@ -75,12 +75,12 @@ namespace _zeitbild.frontend_web.pages
}, },
{ {
"name": "default_level", "name": "default_level",
"input": _zeitbild.frontend_web.helpers.input_access_level(), "input": _dali.helpers.input_access_level(),
"label": lib_plankton.translate.get("calendar.access.default_level"), "label": lib_plankton.translate.get("calendar.access.default_level"),
}, },
{ {
"name": "attributed", "name": "attributed",
"input": await _zeitbild.frontend_web.helpers.input_attributed_access(), "input": await _dali.helpers.input_attributed_access(),
"label": lib_plankton.translate.get("calendar.access.attributed"), "label": lib_plankton.translate.get("calendar.access.attributed"),
}, },
] ]
@ -102,7 +102,7 @@ namespace _zeitbild.frontend_web.pages
"procedure": async (get_value, get_representation) => { "procedure": async (get_value, get_representation) => {
const value : any = await get_value(); const value : any = await get_value();
try { try {
await _zeitbild.frontend_web.backend.calendar_change( await _dali.backend.calendar_change(
calendar_id, calendar_id,
value value
); );
@ -132,7 +132,7 @@ namespace _zeitbild.frontend_web.pages
"target": "submit", "target": "submit",
"procedure": async (get_value, get_representation) => { "procedure": async (get_value, get_representation) => {
try { try {
await _zeitbild.frontend_web.backend.calendar_remove( await _dali.backend.calendar_remove(
calendar_id calendar_id
); );
lib_plankton.zoo_page.set( lib_plankton.zoo_page.set(
@ -160,7 +160,7 @@ namespace _zeitbild.frontend_web.pages
) )
); );
await form.setup(document.querySelector("#calendar_edit_form")); await form.setup(document.querySelector("#calendar_edit_form"));
const calendar_object : _zeitbild.frontend_web.type.calendar_object = await _zeitbild.frontend_web.backend.calendar_get( const calendar_object : _dali.type.calendar_object = await _dali.backend.calendar_get(
calendar_id calendar_id
); );
await form.input_write(calendar_object); await form.input_write(calendar_object);

View file

@ -1,4 +1,4 @@
namespace _zeitbild.frontend_web.pages namespace _dali.pages
{ {
/** /**
@ -52,7 +52,7 @@ namespace _zeitbild.frontend_web.pages
lib_plankton.pit.to_datetime(lib_plankton.pit.now()).date lib_plankton.pit.to_datetime(lib_plankton.pit.now()).date
); );
target_element.innerHTML = ""; target_element.innerHTML = "";
target_element.innerHTML = await _zeitbild.frontend_web.helpers.template_coin( target_element.innerHTML = await _dali.helpers.template_coin(
"event_add", "event_add",
"default", "default",
{ {
@ -61,8 +61,8 @@ namespace _zeitbild.frontend_web.pages
); );
const form : lib_plankton.zoo_form.class_form< const form : lib_plankton.zoo_form.class_form<
{ {
calendar_id : _zeitbild.frontend_web.type.calendar_id; calendar_id : _dali.type.calendar_id;
event_object : _zeitbild.frontend_web.type.event_object; event_object : _dali.type.event_object;
}, },
{ {
calendar_id : string; calendar_id : string;
@ -75,8 +75,8 @@ namespace _zeitbild.frontend_web.pages
} }
> = new lib_plankton.zoo_form.class_form< > = new lib_plankton.zoo_form.class_form<
{ {
calendar_id : _zeitbild.frontend_web.type.calendar_id; calendar_id : _dali.type.calendar_id;
event_object : _zeitbild.frontend_web.type.event_object; event_object : _dali.type.event_object;
}, },
{ {
calendar_id : string; calendar_id : string;
@ -114,12 +114,12 @@ namespace _zeitbild.frontend_web.pages
"name": "calendar_id", "name": "calendar_id",
"input": new lib_plankton.zoo_input.class_input_selection( "input": new lib_plankton.zoo_input.class_input_selection(
( (
(await _zeitbild.frontend_web.backend.calendar_list()) (await _dali.backend.calendar_list())
.filter( .filter(
(entry) => ( (entry) => (
(entry.access_level === _zeitbild.frontend_web.type.enum_access_level.edit) (entry.access_level === _dali.type.enum_access_level.edit)
|| ||
(entry.access_level === _zeitbild.frontend_web.type.enum_access_level.admin) (entry.access_level === _dali.type.enum_access_level.admin)
) )
) )
.map( .map(
@ -140,13 +140,13 @@ namespace _zeitbild.frontend_web.pages
}, },
{ {
"name": "begin", "name": "begin",
"input": _zeitbild.frontend_web.helpers.datetime_input(), "input": _dali.helpers.datetime_input(),
"label": lib_plankton.translate.get("event.begin") "label": lib_plankton.translate.get("event.begin")
}, },
{ {
"name": "end", "name": "end",
"input": new lib_plankton.zoo_input.class_input_soft<lib_plankton.pit.type_datetime>( "input": new lib_plankton.zoo_input.class_input_soft<lib_plankton.pit.type_datetime>(
_zeitbild.frontend_web.helpers.datetime_input() _dali.helpers.datetime_input()
), ),
"label": lib_plankton.translate.get("event.end") "label": lib_plankton.translate.get("event.end")
}, },
@ -183,7 +183,7 @@ namespace _zeitbild.frontend_web.pages
"procedure": async (get_value, get_representation) => { "procedure": async (get_value, get_representation) => {
const value : any = await get_value(); const value : any = await get_value();
try { try {
await _zeitbild.frontend_web.backend.calendar_event_add( await _dali.backend.calendar_event_add(
value.calendar_id, value.calendar_id,
value.event_object value.event_object
); );

View file

@ -1,4 +1,4 @@
namespace _zeitbild.frontend_web.pages namespace _dali.pages
{ {
/** /**
@ -10,7 +10,7 @@ namespace _zeitbild.frontend_web.pages
const calendar_id : int = parseInt(parameters["calendar_id"]); const calendar_id : int = parseInt(parameters["calendar_id"]);
const event_id : int = parseInt(parameters["event_id"]); const event_id : int = parseInt(parameters["event_id"]);
target_element.innerHTML = ""; target_element.innerHTML = "";
target_element.innerHTML = await _zeitbild.frontend_web.helpers.template_coin( target_element.innerHTML = await _dali.helpers.template_coin(
"event_edit", "event_edit",
"default", "default",
{ {
@ -24,7 +24,7 @@ namespace _zeitbild.frontend_web.pages
} }
); );
const form : lib_plankton.zoo_form.class_form< const form : lib_plankton.zoo_form.class_form<
_zeitbild.frontend_web.type.event_object, _dali.type.event_object,
{ {
name : string; name : string;
begin : lib_plankton.pit.type_datetime; begin : lib_plankton.pit.type_datetime;
@ -34,7 +34,7 @@ namespace _zeitbild.frontend_web.pages
description : (null | string); description : (null | string);
} }
> = new lib_plankton.zoo_form.class_form< > = new lib_plankton.zoo_form.class_form<
_zeitbild.frontend_web.type.event_object, _dali.type.event_object,
{ {
name : string; name : string;
begin : lib_plankton.pit.type_datetime; begin : lib_plankton.pit.type_datetime;
@ -70,13 +70,13 @@ namespace _zeitbild.frontend_web.pages
}, },
{ {
"name": "begin", "name": "begin",
"input": _zeitbild.frontend_web.helpers.datetime_input(), "input": _dali.helpers.datetime_input(),
"label": lib_plankton.translate.get("event.begin") "label": lib_plankton.translate.get("event.begin")
}, },
{ {
"name": "end", "name": "end",
"input": new lib_plankton.zoo_input.class_input_soft<lib_plankton.pit.type_datetime>( "input": new lib_plankton.zoo_input.class_input_soft<lib_plankton.pit.type_datetime>(
_zeitbild.frontend_web.helpers.datetime_input() _dali.helpers.datetime_input()
), ),
"label": lib_plankton.translate.get("event.end") "label": lib_plankton.translate.get("event.end")
}, },
@ -119,7 +119,7 @@ namespace _zeitbild.frontend_web.pages
"procedure": async (get_value, get_representation) => { "procedure": async (get_value, get_representation) => {
const value : any = await get_value(); const value : any = await get_value();
try { try {
await _zeitbild.frontend_web.backend.calendar_event_change( await _dali.backend.calendar_event_change(
calendar_id, calendar_id,
event_id, event_id,
value value
@ -151,7 +151,7 @@ namespace _zeitbild.frontend_web.pages
"target": "submit", "target": "submit",
"procedure": async (get_value, get_representation) => { "procedure": async (get_value, get_representation) => {
try { try {
await _zeitbild.frontend_web.backend.calendar_event_remove( await _dali.backend.calendar_event_remove(
calendar_id, calendar_id,
event_id event_id
); );
@ -181,7 +181,7 @@ namespace _zeitbild.frontend_web.pages
) )
); );
await form.setup(document.querySelector("#event_edit_form")); await form.setup(document.querySelector("#event_edit_form"));
const event_object : _zeitbild.frontend_web.type.event_object = await _zeitbild.frontend_web.backend.calendar_event_get( const event_object : _dali.type.event_object = await _dali.backend.calendar_event_get(
calendar_id, calendar_id,
event_id event_id
); );

View file

@ -1,4 +1,4 @@
namespace _zeitbild.frontend_web.pages namespace _dali.pages
{ {
/** /**
@ -7,14 +7,14 @@ namespace _zeitbild.frontend_web.pages
"login", "login",
async (parameters, target_element) => { async (parameters, target_element) => {
target_element.innerHTML = ""; target_element.innerHTML = "";
const preparation : {kind : string; data : any;} = await _zeitbild.frontend_web.backend.session_prepare( const preparation : {kind : string; data : any;} = await _dali.backend.session_prepare(
{ {
"oidc_redirect_uri_template": _zeitbild.frontend_web.conf.get()["misc"]["oidc_redirect_uri_template"], "oidc_redirect_uri_template": _dali.conf.get()["misc"]["oidc_redirect_uri_template"],
} }
); );
switch (preparation.kind) { switch (preparation.kind) {
case "internal": { case "internal": {
target_element.innerHTML = await _zeitbild.frontend_web.helpers.template_coin( target_element.innerHTML = await _dali.helpers.template_coin(
"login", "login",
"default", "default",
{ {
@ -52,7 +52,7 @@ namespace _zeitbild.frontend_web.pages
"procedure": async (get_value, get_representation) => { "procedure": async (get_value, get_representation) => {
const value : any = await get_value(); const value : any = await get_value();
try { try {
await _zeitbild.frontend_web.backend.session_begin( await _dali.backend.session_begin(
value.name, value.name,
value.password value.password
); );

View file

@ -1,4 +1,4 @@
namespace _zeitbild.frontend_web.pages namespace _dali.pages
{ {
/** /**
@ -7,7 +7,7 @@ namespace _zeitbild.frontend_web.pages
"logout", "logout",
async (parameters, target_element) => { async (parameters, target_element) => {
target_element.innerHTML = ""; target_element.innerHTML = "";
await _zeitbild.frontend_web.backend.session_end( await _dali.backend.session_end(
); );
lib_plankton.zoo_page.set( lib_plankton.zoo_page.set(
{ {

View file

@ -1,4 +1,4 @@
namespace _zeitbild.frontend_web.pages namespace _dali.pages
{ {
/** /**
@ -7,7 +7,7 @@ namespace _zeitbild.frontend_web.pages
"oidc_finish", "oidc_finish",
async (parameters, target_element) => { async (parameters, target_element) => {
target_element.innerHTML = ""; target_element.innerHTML = "";
await _zeitbild.frontend_web.backend.set_session_key(parameters["session_key"]); await _dali.backend.set_session_key(parameters["session_key"]);
lib_plankton.zoo_page.set( lib_plankton.zoo_page.set(
{ {
"name": "overview", "name": "overview",

View file

@ -1,4 +1,4 @@
namespace _zeitbild.frontend_web.pages.overview namespace _dali.pages.overview
{ {
/** /**
@ -24,18 +24,18 @@ namespace _zeitbild.frontend_web.pages.overview
); );
// exec // exec
target_element.innerHTML = await _zeitbild.frontend_web.helpers.template_coin( target_element.innerHTML = await _dali.helpers.template_coin(
"overview", "overview",
"default", "default",
{ {
} }
); );
target_element.querySelector("#overview").classList.toggle("overview-compact", compact); target_element.querySelector("#overview").classList.toggle("overview-compact", compact);
let widget_weekview : _zeitbild.frontend_web.widgets.weekview.class_widget_weekview; let widget_weekview : _dali.widgets.weekview.class_widget_weekview;
let widget_listview : _zeitbild.frontend_web.widgets.listview.class_widget_listview; let widget_listview : _dali.widgets.listview.class_widget_listview;
// hint // hint
{ {
if (! await _zeitbild.frontend_web.backend.is_logged_in()) { if (! await _dali.backend.is_logged_in()) {
target_element.querySelector("#overview-head").textContent = lib_plankton.translate.get("page.overview.login_hint"); target_element.querySelector("#overview-head").textContent = lib_plankton.translate.get("page.overview.login_hint");
} }
else { else {
@ -46,23 +46,23 @@ namespace _zeitbild.frontend_web.pages.overview
{ {
const data : Array< const data : Array<
{ {
id : _zeitbild.frontend_web.type.calendar_id; id : _dali.type.calendar_id;
name : string; name : string;
access_level : _zeitbild.frontend_web.type.enum_access_level; access_level : _dali.type.enum_access_level;
} }
> = await _zeitbild.frontend_web.backend.calendar_list( > = await _dali.backend.calendar_list(
); );
const widget_sources = new _zeitbild.frontend_web.widgets.sources.class_widget_sources( const widget_sources = new _dali.widgets.sources.class_widget_sources(
data, data,
{ {
"action_open": (entry) => { "action_open": (entry) => {
switch (entry.access_level) { switch (entry.access_level) {
case _zeitbild.frontend_web.type.enum_access_level.none: { case _dali.type.enum_access_level.none: {
throw (new Error("this event should not be visible")); throw (new Error("this event should not be visible"));
break; break;
} }
case _zeitbild.frontend_web.type.enum_access_level.edit: case _dali.type.enum_access_level.edit:
case _zeitbild.frontend_web.type.enum_access_level.view: { case _dali.type.enum_access_level.view: {
lib_plankton.zoo_page.set( lib_plankton.zoo_page.set(
{ {
"name": "calendar_edit", "name": "calendar_edit",
@ -74,7 +74,7 @@ namespace _zeitbild.frontend_web.pages.overview
); );
break; break;
} }
case _zeitbild.frontend_web.type.enum_access_level.admin: { case _dali.type.enum_access_level.admin: {
lib_plankton.zoo_page.set( lib_plankton.zoo_page.set(
{ {
"name": "calendar_edit", "name": "calendar_edit",
@ -97,7 +97,7 @@ namespace _zeitbild.frontend_web.pages.overview
} }
// events // events
{ {
const get_entries = (from_pit, to_pit, calendar_ids) => _zeitbild.frontend_web.backend.events( const get_entries = (from_pit, to_pit, calendar_ids) => _dali.backend.events(
from_pit, from_pit,
to_pit, to_pit,
{ {
@ -106,11 +106,11 @@ namespace _zeitbild.frontend_web.pages.overview
); );
const action_select_event = (calendar_id, access_level, event_id) => { const action_select_event = (calendar_id, access_level, event_id) => {
switch (access_level) { switch (access_level) {
case _zeitbild.frontend_web.type.enum_access_level.none: { case _dali.type.enum_access_level.none: {
throw (new Error("this event should not be visible")); throw (new Error("this event should not be visible"));
break; break;
} }
case _zeitbild.frontend_web.type.enum_access_level.view: { case _dali.type.enum_access_level.view: {
lib_plankton.zoo_page.set( lib_plankton.zoo_page.set(
{ {
"name": "event_edit", "name": "event_edit",
@ -123,8 +123,8 @@ namespace _zeitbild.frontend_web.pages.overview
); );
break; break;
} }
case _zeitbild.frontend_web.type.enum_access_level.edit: case _dali.type.enum_access_level.edit:
case _zeitbild.frontend_web.type.enum_access_level.admin: { case _dali.type.enum_access_level.admin: {
lib_plankton.zoo_page.set( lib_plankton.zoo_page.set(
{ {
"name": "event_edit", "name": "event_edit",
@ -142,7 +142,7 @@ namespace _zeitbild.frontend_web.pages.overview
// listview // listview
{ {
widget_listview = ( widget_listview = (
new _zeitbild.frontend_web.widgets.listview.class_widget_listview( new _dali.widgets.listview.class_widget_listview(
get_entries, get_entries,
{ {
"action_select_event": action_select_event, "action_select_event": action_select_event,
@ -167,7 +167,7 @@ namespace _zeitbild.frontend_web.pages.overview
// weekview // weekview
{ {
widget_weekview = ( widget_weekview = (
new _zeitbild.frontend_web.widgets.weekview.class_widget_weekview( new _dali.widgets.weekview.class_widget_weekview(
get_entries, get_entries,
{ {
"action_select_event": action_select_event, "action_select_event": action_select_event,

View file

@ -1,14 +1,14 @@
namespace _zeitbild.frontend_web.widgets.listview namespace _dali.widgets.listview
{ {
/** /**
*/ */
type type_entry = { type type_entry = {
calendar_id : _zeitbild.frontend_web.type.calendar_id; calendar_id : _dali.type.calendar_id;
calendar_name : string; calendar_name : string;
access_level : _zeitbild.frontend_web.type.enum_access_level; access_level : _dali.type.enum_access_level;
event_id : (null | _zeitbild.frontend_web.type.local_resource_event_id); event_id : (null | _dali.type.local_resource_event_id);
event_object : _zeitbild.frontend_web.type.event_object; event_object : _dali.type.event_object;
}; };
@ -18,7 +18,7 @@ namespace _zeitbild.frontend_web.widgets.listview
( (
from_pit : lib_plankton.pit.type_pit, from_pit : lib_plankton.pit.type_pit,
to_pit : lib_plankton.pit.type_pit, to_pit : lib_plankton.pit.type_pit,
calendar_ids : Array<_zeitbild.frontend_web.type.calendar_id> calendar_ids : Array<_dali.type.calendar_id>
) )
=> =>
Promise<Array<type_entry>> Promise<Array<type_entry>>
@ -39,9 +39,9 @@ namespace _zeitbild.frontend_web.widgets.listview
*/ */
private action_select_event : ( private action_select_event : (
( (
calendar_id : _zeitbild.frontend_web.type.calendar_id, calendar_id : _dali.type.calendar_id,
access_level : _zeitbild.frontend_web.type.enum_access_level, access_level : _dali.type.enum_access_level,
event_id : _zeitbild.frontend_web.type.local_resource_event_id event_id : _dali.type.local_resource_event_id
) )
=> =>
void void
@ -65,9 +65,9 @@ namespace _zeitbild.frontend_web.widgets.listview
options : { options : {
action_select_event ?: ( action_select_event ?: (
( (
calendar_id : _zeitbild.frontend_web.type.calendar_id, calendar_id : _dali.type.calendar_id,
access_level : _zeitbild.frontend_web.type.enum_access_level, access_level : _dali.type.enum_access_level,
event_id : _zeitbild.frontend_web.type.local_resource_event_id event_id : _dali.type.local_resource_event_id
) )
=> =>
void void
@ -120,14 +120,14 @@ namespace _zeitbild.frontend_web.widgets.listview
// view // view
{ {
target_element.innerHTML = await _zeitbild.frontend_web.helpers.template_coin( target_element.innerHTML = await _dali.helpers.template_coin(
"widget-listview", "widget-listview",
"main", "main",
{ {
"add_href": "", "add_href": "",
"add_label": lib_plankton.translate.get("widget.listview.add"), "add_label": lib_plankton.translate.get("widget.listview.add"),
"add_extra_classes": ( "add_extra_classes": (
(! await _zeitbild.frontend_web.backend.is_logged_in()) (! await _dali.backend.is_logged_in())
? ?
" listview-add-hidden" " listview-add-hidden"
: :
@ -135,10 +135,10 @@ namespace _zeitbild.frontend_web.widgets.listview
), ),
"entries": ( "entries": (
( (
await _zeitbild.frontend_web.helpers.promise_row<string>( await _dali.helpers.promise_row<string>(
entries entries
.map( .map(
(entry) => () => _zeitbild.frontend_web.helpers.template_coin( (entry) => () => _dali.helpers.template_coin(
"widget-listview", "widget-listview",
"entry", "entry",
{ {
@ -222,10 +222,10 @@ namespace _zeitbild.frontend_web.widgets.listview
), ),
"access_level": (() => { "access_level": (() => {
switch (entry.access_level) { switch (entry.access_level) {
case _zeitbild.frontend_web.type.enum_access_level.none: return "none"; case _dali.type.enum_access_level.none: return "none";
case _zeitbild.frontend_web.type.enum_access_level.view: return "view"; case _dali.type.enum_access_level.view: return "view";
case _zeitbild.frontend_web.type.enum_access_level.edit: return "edit"; case _dali.type.enum_access_level.edit: return "edit";
case _zeitbild.frontend_web.type.enum_access_level.admin: return "admin"; case _dali.type.enum_access_level.admin: return "admin";
} }
}) (), }) (),
} }
@ -261,20 +261,20 @@ namespace _zeitbild.frontend_web.widgets.listview
else { else {
const rel : string = element.getAttribute("rel"); const rel : string = element.getAttribute("rel");
const parts : Array<string> = rel.split("/"); const parts : Array<string> = rel.split("/");
const calendar_id : _zeitbild.frontend_web.type.calendar_id = parseInt(parts[0]); const calendar_id : _dali.type.calendar_id = parseInt(parts[0]);
const event_id : (null | _zeitbild.frontend_web.type.local_resource_event_id) = ( const event_id : (null | _dali.type.local_resource_event_id) = (
parts[1] === "-" parts[1] === "-"
? ?
null null
: :
parseInt(parts[1]) parseInt(parts[1])
); );
const access_level : _zeitbild.frontend_web.type.enum_access_level = (() => { const access_level : _dali.type.enum_access_level = (() => {
switch (parts[2]) { switch (parts[2]) {
case "none": return _zeitbild.frontend_web.type.enum_access_level.none; case "none": return _dali.type.enum_access_level.none;
case "view": return _zeitbild.frontend_web.type.enum_access_level.view; case "view": return _dali.type.enum_access_level.view;
case "edit": return _zeitbild.frontend_web.type.enum_access_level.edit; case "edit": return _dali.type.enum_access_level.edit;
case "admin": return _zeitbild.frontend_web.type.enum_access_level.admin; case "admin": return _dali.type.enum_access_level.admin;
} }
}) (); }) ();
this.action_select_event( this.action_select_event(

View file

@ -1,12 +1,12 @@
namespace _zeitbild.frontend_web.widgets.sources namespace _dali.widgets.sources
{ {
/** /**
*/ */
type type_entry = { type type_entry = {
id : _zeitbild.frontend_web.type.calendar_id; id : _dali.type.calendar_id;
name : string; name : string;
access_level : _zeitbild.frontend_web.type.enum_access_level; access_level : _dali.type.enum_access_level;
}; };
@ -74,18 +74,18 @@ namespace _zeitbild.frontend_web.widgets.sources
target_element : Element target_element : Element
) : Promise<void> ) : Promise<void>
{ {
target_element.innerHTML = await _zeitbild.frontend_web.helpers.template_coin( target_element.innerHTML = await _dali.helpers.template_coin(
"widget-sources", "widget-sources",
"main", "main",
{ {
"entries": ( "entries": (
( (
await _zeitbild.frontend_web.helpers.promise_row<string>( await _dali.helpers.promise_row<string>(
this.keys this.keys
.map( .map(
(key) => () => { (key) => () => {
const entry : type_entry = this.data[key]; const entry : type_entry = this.data[key];
return _zeitbild.frontend_web.helpers.template_coin( return _dali.helpers.template_coin(
"widget-sources", "widget-sources",
"entry", "entry",
{ {

View file

@ -1,14 +1,14 @@
namespace _zeitbild.frontend_web.widgets.weekview namespace _dali.widgets.weekview
{ {
/** /**
*/ */
type type_entry = { type type_entry = {
calendar_id : _zeitbild.frontend_web.type.calendar_id; calendar_id : _dali.type.calendar_id;
calendar_name : string; calendar_name : string;
access_level : _zeitbild.frontend_web.type.enum_access_level; access_level : _dali.type.enum_access_level;
event_id : (null | _zeitbild.frontend_web.type.local_resource_event_id); event_id : (null | _dali.type.local_resource_event_id);
event_object : _zeitbild.frontend_web.type.event_object; event_object : _dali.type.event_object;
}; };
@ -18,7 +18,7 @@ namespace _zeitbild.frontend_web.widgets.weekview
( (
from_pit : lib_plankton.pit.type_pit, from_pit : lib_plankton.pit.type_pit,
to_pit : lib_plankton.pit.type_pit, to_pit : lib_plankton.pit.type_pit,
calendar_ids : Array<_zeitbild.frontend_web.type.calendar_id> calendar_ids : Array<_dali.type.calendar_id>
) )
=> =>
Promise<Array<type_entry>> Promise<Array<type_entry>>
@ -44,9 +44,9 @@ namespace _zeitbild.frontend_web.widgets.weekview
*/ */
private action_select_event : ( private action_select_event : (
( (
calendar_id : _zeitbild.frontend_web.type.calendar_id, calendar_id : _dali.type.calendar_id,
access_level : _zeitbild.frontend_web.type.enum_access_level, access_level : _dali.type.enum_access_level,
event_id : _zeitbild.frontend_web.type.local_resource_event_id event_id : _dali.type.local_resource_event_id
) )
=> =>
void void
@ -71,9 +71,9 @@ namespace _zeitbild.frontend_web.widgets.weekview
options : { options : {
action_select_event ?: ( action_select_event ?: (
( (
calendar_id : _zeitbild.frontend_web.type.calendar_id, calendar_id : _dali.type.calendar_id,
access_level : _zeitbild.frontend_web.type.enum_access_level, access_level : _dali.type.enum_access_level,
event_id : _zeitbild.frontend_web.type.local_resource_event_id event_id : _dali.type.local_resource_event_id
) )
=> =>
void void
@ -107,7 +107,7 @@ namespace _zeitbild.frontend_web.widgets.weekview
*/ */
private static event_generate_tooltip( private static event_generate_tooltip(
calendar_name : string, calendar_name : string,
event_object : _zeitbild.frontend_web.type.event_object event_object : _dali.type.event_object
) : string ) : string
{ {
return ( return (
@ -205,7 +205,7 @@ namespace _zeitbild.frontend_web.widgets.weekview
calendar_ids : ( calendar_ids : (
null null
| |
Array<_zeitbild.frontend_web.type.calendar_id> Array<_dali.type.calendar_id>
), ),
from : { from : {
year : int; year : int;
@ -219,10 +219,10 @@ namespace _zeitbild.frontend_web.widgets.weekview
) : Promise< ) : Promise<
{ {
sources : lib_plankton.map.type_map< sources : lib_plankton.map.type_map<
_zeitbild.frontend_web.type.calendar_id, _dali.type.calendar_id,
{ {
name : string; name : string;
access_level : _zeitbild.frontend_web.type.enum_access_level; access_level : _dali.type.enum_access_level;
} }
>; >;
rows : Array< rows : Array<
@ -233,9 +233,9 @@ namespace _zeitbild.frontend_web.widgets.weekview
pit : lib_plankton.pit.type_pit; pit : lib_plankton.pit.type_pit;
entries : Array< entries : Array<
{ {
calendar_id : _zeitbild.frontend_web.type.calendar_id; calendar_id : _dali.type.calendar_id;
event_id : (null | _zeitbild.frontend_web.type.local_resource_event_id); event_id : (null | _dali.type.local_resource_event_id);
event_object : _zeitbild.frontend_web.type.event_object; event_object : _dali.type.event_object;
} }
>; >;
today : boolean; today : boolean;
@ -276,10 +276,10 @@ namespace _zeitbild.frontend_web.widgets.weekview
); );
let result : { let result : {
sources : lib_plankton.map.type_map< sources : lib_plankton.map.type_map<
_zeitbild.frontend_web.type.calendar_id, _dali.type.calendar_id,
{ {
name : string; name : string;
access_level : _zeitbild.frontend_web.type.enum_access_level; access_level : _dali.type.enum_access_level;
} }
>; >;
rows : Array< rows : Array<
@ -290,9 +290,9 @@ namespace _zeitbild.frontend_web.widgets.weekview
pit : lib_plankton.pit.type_pit; pit : lib_plankton.pit.type_pit;
entries : Array< entries : Array<
{ {
calendar_id : _zeitbild.frontend_web.type.calendar_id; calendar_id : _dali.type.calendar_id;
event_id : (null | _zeitbild.frontend_web.type.local_resource_event_id); event_id : (null | _dali.type.local_resource_event_id);
event_object : _zeitbild.frontend_web.type.event_object; event_object : _dali.type.event_object;
} }
>; >;
today : boolean; today : boolean;
@ -329,9 +329,9 @@ namespace _zeitbild.frontend_web.widgets.weekview
pit : lib_plankton.pit.type_pit; pit : lib_plankton.pit.type_pit;
entries : Array< entries : Array<
{ {
calendar_id : _zeitbild.frontend_web.type.calendar_id; calendar_id : _dali.type.calendar_id;
event_id : (null | _zeitbild.frontend_web.type.local_resource_event_id); event_id : (null | _dali.type.local_resource_event_id);
event_object : _zeitbild.frontend_web.type.event_object; event_object : _dali.type.event_object;
} }
>; >;
today : boolean; today : boolean;
@ -456,7 +456,7 @@ namespace _zeitbild.frontend_web.widgets.weekview
calendar_ids ?: ( calendar_ids ?: (
null null
| |
Array<_zeitbild.frontend_web.type.calendar_id> Array<_dali.type.calendar_id>
); );
from ?: { from ?: {
year : int; year : int;
@ -469,8 +469,8 @@ namespace _zeitbild.frontend_web.widgets.weekview
timezone_shift ?: int; timezone_shift ?: int;
action_select ?: ( action_select ?: (
( (
calendar_id : _zeitbild.frontend_web.type.calendar_id, calendar_id : _dali.type.calendar_id,
event_id : _zeitbild.frontend_web.type.local_resource_event_id event_id : _dali.type.local_resource_event_id
) )
=> =>
void void
@ -504,10 +504,10 @@ namespace _zeitbild.frontend_web.widgets.weekview
); );
const stuff : { const stuff : {
sources : lib_plankton.map.type_map< sources : lib_plankton.map.type_map<
_zeitbild.frontend_web.type.calendar_id, _dali.type.calendar_id,
{ {
name : string; name : string;
access_level : _zeitbild.frontend_web.type.enum_access_level; access_level : _dali.type.enum_access_level;
} }
>; >;
rows : Array< rows : Array<
@ -518,9 +518,9 @@ namespace _zeitbild.frontend_web.widgets.weekview
pit : lib_plankton.pit.type_pit; pit : lib_plankton.pit.type_pit;
entries : Array< entries : Array<
{ {
calendar_id : _zeitbild.frontend_web.type.calendar_id; calendar_id : _dali.type.calendar_id;
event_id : (null | _zeitbild.frontend_web.type.local_resource_event_id); event_id : (null | _dali.type.local_resource_event_id);
event_object : _zeitbild.frontend_web.type.event_object; event_object : _dali.type.event_object;
} }
>; >;
today : boolean; today : boolean;
@ -535,10 +535,10 @@ namespace _zeitbild.frontend_web.widgets.weekview
options.timezone_shift options.timezone_shift
); );
const sources : lib_plankton.map.type_map< const sources : lib_plankton.map.type_map<
_zeitbild.frontend_web.type.calendar_id, _dali.type.calendar_id,
{ {
name : string; name : string;
access_level : _zeitbild.frontend_web.type.enum_access_level; access_level : _dali.type.enum_access_level;
color : lib_plankton.color.type_color; color : lib_plankton.color.type_color;
} }
> = lib_plankton.map.hashmap.implementation_map( > = lib_plankton.map.hashmap.implementation_map(
@ -570,19 +570,19 @@ namespace _zeitbild.frontend_web.widgets.weekview
) )
); );
return ( return (
await _zeitbild.frontend_web.helpers.promise_row<string>( await _dali.helpers.promise_row<string>(
stuff.rows stuff.rows
.map( .map(
(row) => async () => _zeitbild.frontend_web.helpers.template_coin( (row) => async () => _dali.helpers.template_coin(
"widget-weekview", "widget-weekview",
"tableview-row", "tableview-row",
{ {
"week": row.week.toFixed(0).padStart(2, "0"), "week": row.week.toFixed(0).padStart(2, "0"),
"cells": ( "cells": (
await _zeitbild.frontend_web.helpers.promise_row<string>( await _dali.helpers.promise_row<string>(
row.data row.data
.map( .map(
(cell) => async () => _zeitbild.frontend_web.helpers.template_coin( (cell) => async () => _dali.helpers.template_coin(
"widget-weekview", "widget-weekview",
"tableview-cell", "tableview-cell",
{ {
@ -634,10 +634,10 @@ namespace _zeitbild.frontend_web.widgets.weekview
] ]
), ),
"entries": ( "entries": (
await _zeitbild.frontend_web.helpers.promise_row<string>( await _dali.helpers.promise_row<string>(
cell.entries cell.entries
.map( .map(
(entry) => () => _zeitbild.frontend_web.helpers.template_coin( (entry) => () => _dali.helpers.template_coin(
"widget-weekview", "widget-weekview",
"tableview-cell-entry", "tableview-cell-entry",
{ {
@ -665,12 +665,12 @@ namespace _zeitbild.frontend_web.widgets.weekview
entry.event_id.toFixed(0) entry.event_id.toFixed(0)
), ),
"access_level": (() => { "access_level": (() => {
const access_level : _zeitbild.frontend_web.type.enum_access_level = sources.get(entry.calendar_id).access_level; const access_level : _dali.type.enum_access_level = sources.get(entry.calendar_id).access_level;
switch (access_level) { switch (access_level) {
case _zeitbild.frontend_web.type.enum_access_level.none: return "none"; case _dali.type.enum_access_level.none: return "none";
case _zeitbild.frontend_web.type.enum_access_level.view: return "view"; case _dali.type.enum_access_level.view: return "view";
case _zeitbild.frontend_web.type.enum_access_level.edit: return "edit"; case _dali.type.enum_access_level.edit: return "edit";
case _zeitbild.frontend_web.type.enum_access_level.admin: return "admin"; case _dali.type.enum_access_level.admin: return "admin";
} }
}) (), }) (),
} }
@ -679,12 +679,12 @@ namespace _zeitbild.frontend_web.widgets.weekview
" access_level-{{access_level}}", " access_level-{{access_level}}",
{ {
"access_level": (() => { "access_level": (() => {
const access_level : _zeitbild.frontend_web.type.enum_access_level = sources.get(entry.calendar_id).access_level; const access_level : _dali.type.enum_access_level = sources.get(entry.calendar_id).access_level;
switch (access_level) { switch (access_level) {
case _zeitbild.frontend_web.type.enum_access_level.none: return "none"; case _dali.type.enum_access_level.none: return "none";
case _zeitbild.frontend_web.type.enum_access_level.view: return "view"; case _dali.type.enum_access_level.view: return "view";
case _zeitbild.frontend_web.type.enum_access_level.edit: return "edit"; case _dali.type.enum_access_level.edit: return "edit";
case _zeitbild.frontend_web.type.enum_access_level.admin: return "admin"; case _dali.type.enum_access_level.admin: return "admin";
} }
}) (), }) (),
} }
@ -756,7 +756,7 @@ namespace _zeitbild.frontend_web.widgets.weekview
); );
// cells // cells
{ {
if (! await _zeitbild.frontend_web.backend.is_logged_in()) { if (! await _dali.backend.is_logged_in()) {
// do nothing // do nothing
} }
else { else {
@ -786,7 +786,7 @@ namespace _zeitbild.frontend_web.widgets.weekview
} }
// events // events
{ {
if (! await _zeitbild.frontend_web.backend.is_logged_in()) { if (! await _dali.backend.is_logged_in()) {
// do nothing // do nothing
} }
else { else {
@ -797,20 +797,20 @@ namespace _zeitbild.frontend_web.widgets.weekview
() => { () => {
const rel : string = element.getAttribute("rel"); const rel : string = element.getAttribute("rel");
const parts : Array<string> = rel.split("/"); const parts : Array<string> = rel.split("/");
const calendar_id : _zeitbild.frontend_web.type.calendar_id = parseInt(parts[0]); const calendar_id : _dali.type.calendar_id = parseInt(parts[0]);
const event_id : (null | _zeitbild.frontend_web.type.local_resource_event_id) = ( const event_id : (null | _dali.type.local_resource_event_id) = (
(parts[1] === "-") (parts[1] === "-")
? ?
null null
: :
parseInt(parts[1]) parseInt(parts[1])
); );
const access_level : _zeitbild.frontend_web.type.enum_access_level = (() => { const access_level : _dali.type.enum_access_level = (() => {
switch (parts[2]) { switch (parts[2]) {
case "none": return _zeitbild.frontend_web.type.enum_access_level.none; case "none": return _dali.type.enum_access_level.none;
case "view": return _zeitbild.frontend_web.type.enum_access_level.view; case "view": return _dali.type.enum_access_level.view;
case "edit": return _zeitbild.frontend_web.type.enum_access_level.edit; case "edit": return _dali.type.enum_access_level.edit;
case "admin": return _zeitbild.frontend_web.type.enum_access_level.admin; case "admin": return _dali.type.enum_access_level.admin;
} }
}) (); }) ();
this.action_select_event( this.action_select_event(
@ -832,14 +832,14 @@ namespace _zeitbild.frontend_web.widgets.weekview
/** /**
*/ */
public toggle_visibility( public toggle_visibility(
calendar_id: _zeitbild.frontend_web.type.calendar_id calendar_id: _dali.type.calendar_id
) : void ) : void
{ {
this.container.querySelectorAll(".weekview-event_entry").forEach( this.container.querySelectorAll(".weekview-event_entry").forEach(
(element) => { (element) => {
const rel : string = element.getAttribute("rel"); const rel : string = element.getAttribute("rel");
const parts : Array<string> = rel.split("/"); const parts : Array<string> = rel.split("/");
const calendar_id_ : _zeitbild.frontend_web.type.calendar_id = parseInt(parts[0]); const calendar_id_ : _dali.type.calendar_id = parseInt(parts[0]);
if (! (calendar_id === calendar_id_)) { if (! (calendar_id === calendar_id_)) {
// do nothing // do nothing
} }
@ -858,7 +858,7 @@ namespace _zeitbild.frontend_web.widgets.weekview
target_element : Element target_element : Element
) : Promise<void> ) : Promise<void>
{ {
target_element.innerHTML = await _zeitbild.frontend_web.helpers.template_coin( target_element.innerHTML = await _dali.helpers.template_coin(
"widget-weekview", "widget-weekview",
"main", "main",
{ {