Warning: session_start(): open(/var/lib/php/sessions/sess_h7119iaiu8bmvdu39l4m9b3023, 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
!7
static Web web;
static Canvas canvas;
p-subst {
web = persistentObject("Web", Web);
web.useCLParse = false;
web.onNewLabel.add(voidfunc(WebNode node, O label) {
processNode(node);
});
initWeb();
printStruct(web.relations);
canvas = showCAL(diagram(), 650, 450);
calcOnConceptChanges(1000, r { canvas = showCAL(diagram(), canvas) }, false);
bot("Every Day Bot.");
showCommandList();
}
static CirclesAndLines diagram() { ret webToCAL(web); }
svoid initWeb {
web.node("Every day");
change();
}
answer {
if "every day *" {
web.relation("Every day", "I should", $1);
change(); ret "OK";
}
if "clear" { web.clear(); initWeb(); change(); ret "OK"; }
if "add day *" { web.node($1).addLabel("Day"); change(); ret "OK"; }
if "process" { processAllNodes(); ret "OK"; }
}
svoid processAllNodes {
for (WebNode node : web.nodes) processNode(node);
}
svoid processNode(WebNode node) {
if (node.hasLabel("Day"))
processDay(node);
}
svoid processDay(WebNode day) {
print("Processing day " + day);
for (WebNode action : web_allForwardRelated(web, web.findNode("Every day"), "I should")) {
print("Action=" + action);
web.getRelation(day, action).addLabel("I should");
change();
}
}