3 <title>tic tac toe</title>
6 border: 1px solid black;
11 align-content: center;
14 border: 1px solid black;
22 <script type="text/javascript" src="AFB.js"></script>
23 <script type="text/javascript">
24 var afb = new AFB("api", "HELLO");
27 function $(x) { return document.getElementById(x); }
30 function replyok(obj) {
31 $("id").innerHTML = obj.response.boardid;
33 for (var i = 0 ; i < 9 ; i++)
34 $("cell-" + i).innerHTML = obj.response.board[i];
36 function replyerr(obj) {
38 function gotevent(obj) {
39 ws.call("tictactoe/board").then(replyok, replyerr);
43 $("main").style.visibility = "visible";
44 $("connected").innerHTML = "Connected to WebSocket server";
45 ws.onevent("tictactoe/board", gotevent);
46 ws.call("tictactoe/new").then(gotevent, replyerr);
49 $("main").style.visibility = "hidden";
50 $("connected").innerHTML = "Connected Closed";
54 ws = new afb.ws(onopen, onabort);
59 <body onload="init();">
61 <div id="connected">Not Connected</div>
62 <div id="main" style="visibility:hidden">
63 <div>board id <span id="id"></span></div>
67 <td id="cell-0" onclick="javascript: ws.call('tictactoe/move',{'index':0})"> </td>
68 <td id="cell-1" onclick="javascript: ws.call('tictactoe/move',{'index':1})"> </td>
69 <td id="cell-2" onclick="javascript: ws.call('tictactoe/move',{'index':2})"> </td>
72 <td id="cell-3" onclick="javascript: ws.call('tictactoe/move',{'index':3})"> </td>
73 <td id="cell-4" onclick="javascript: ws.call('tictactoe/move',{'index':4})"> </td>
74 <td id="cell-5" onclick="javascript: ws.call('tictactoe/move',{'index':5})"> </td>
77 <td id="cell-6" onclick="javascript: ws.call('tictactoe/move',{'index':6})"> </td>
78 <td id="cell-7" onclick="javascript: ws.call('tictactoe/move',{'index':7})"> </td>
79 <td id="cell-8" onclick="javascript: ws.call('tictactoe/move',{'index':8})"> </td>
83 <div><span class="button" id="play" onclick="javascript: ws.call('tictactoe/play')">play</span></div>
84 <div><span class="button" id="undo" onclick="javascript: ws.call('tictactoe/undo')">undo</span></div>
85 <div><span class="button" id="new" onclick="javascript: ws.call('tictactoe/new')">new</span></div>