Warning: session_start(): open(/var/lib/php/sessions/sess_e0j2enn9t8gbq6rb191i7vi0co, O_RDWR) failed: No space left on device (28) in /var/www/tb-usercake/models/config.php on line 51
Warning: session_start(): Failed to read session data: files (path: /var/lib/php/sessions) in /var/www/tb-usercake/models/config.php on line 51
sclass HMultiCRUD extends HAbstractRenderable {
Concepts cc = db_mainConcepts();
L> classes;
bool mutationRights;
*(S *baseLink, Class extends Concept>... classes) {
this(classes);
}
*(Class extends Concept>... classes) {
this.classes = asList(classes);
}
S renderNavi() {
ret p(joinWithVBar(map(classes, c -> ahref(baseLinkPlus(shortName(c)), shortName(c)))));
}
O renderPage(S uri, SS params) {
LS parts = tok_splitAtSlash_nempties(uri);
S html = renderNavi();
if (nempty(parts)) {
HCRUD crud = makeCRUD(first(parts));
if (crud != null) {
crud.mutationRights = mutationRights;
crud.makeFrame = (title, contents) -> h3(title) + contents;
html += crud.renderPage(params);
}
}
//ret "parts: " + sfu(parts);
ret html;
}
selfType mutationRights(bool mutationRights) {
this.mutationRights = mutationRights;
this;
}
// override me
HCRUD makeCRUD(S className) {
null;
}
}