]>
git.mar77i.info Git - hublib/blob - webroot/first/index.js
03b1f4990d8e5ebfeff5e696b42d5f7e094beafe
7 input_div
=== null ? document
.body : input_div
.previousSibling
, msg
11 function change_name_button(hub
) {
15 "event_click": function () {
16 setup_change_name(hub
);
20 btn
.append(document
.createTextNode("change name"));
24 function setup_chat(hub
) {
25 input_div
= common
.tag("div");
27 common
.input_with_keydown_event(
28 function (event
, target
, keycode
) {
29 if (keycode
!== "Enter" && keycode
!== "NumpadEnter") {
32 hub
.send(JSON
.stringify({"data": target
.value
}));
37 input_div
.append(document
.createTextNode(" "));
38 input_div
.append(change_name_button(hub
));
40 document
.body
.append(common
.tag("div"));
41 document
.body
.append(input_div
);
44 function setup_change_name(hub
) {
45 var div
= common
.tag("div");
46 div
.append(document
.createTextNode("Enter name: "));
48 common
.input_with_keydown_event(
49 function (event
, target
, keycode
) {
50 if (keycode
!== "Enter" && keycode
!== "NumpadEnter") {
53 if (input_div
.childNodes
[0] !== input_div
.children
[0]) {
54 input_div
.childNodes
[0].remove();
56 input_div
.insertBefore(
57 document
.createTextNode(target
.value
+ " "), input_div
.children
[0]
59 hub
.send(JSON
.stringify({"action": "set_name", "name": target
.value
}));
61 input_div
.style
.display
= "";
62 input_div
.children
[0].focus();
66 document
.body
.append(div
);
67 input_div
.style
.display
= "none";
68 div
.children
[0].focus();
73 write("connected to " + ws_uri
);
74 setup_change_name(this);
78 write("connection lost");
79 if (input_div
!== null) {
85 function message(msg
) {
86 var obj
= JSON
.parse(msg
.data
);
87 if (obj
.action
=== "join" || obj
.action
=== "leave") {
88 write("[action]: " + obj
.name
+ " " + obj
.action
+ "s");
89 } else if (obj
.action
== "set_name") {
96 } else if (obj
.hasOwnProperty("data")) {
97 write(obj
.name
+ ": " + obj
.data
);
101 common
.setup(function () {new common
.HubClient(ws_uri
, open
, close
, message
)});