Warning: session_start(): open(/var/lib/php/sessions/sess_ltsima8qps99num8vscbvn1n1p, 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
abstract sclass DynConvo > DynModule {
L posts = dm_synchroList(this);
S userInput;
transient JChatConvo view;
Pt minimumSize() { ret pt(300, 300); }
visualize {
view = swing(() -> new JChatConvo);
view.usePostsList(posts);
ret view;
}
void sendInput {
S s = trim(userInput);
if (nempty(s)) {
addPost(htmlEncode2(s), false);
vmBus_send chatUserInput(module(), s);
setField(userInput := "");
}
}
// API
void addPost(S html, bool right) swing {
posts.add(new JChatConvo.Post(html, right));
view?.updateAndScrollDown();
}
void clearPosts swing { posts.clear(); view?.updateAndScrollDown(); }
void reply(S s) {
if (empty(s = trim(s))) ret;
addPost(htmlEncode2(s), true);
}
}