]>
jfr.im git - irc/quakenet/qwebirc.git/blob - js/ui/genericlogin.js
1 function GenericLoginBox(parentElement
, callback
, initialNickname
, initialChannels
, autoConnect
, autoNick
) {
3 ConfirmBox(parentElement
, callback
, initialNickname
, initialChannels
, autoNick
);
5 LoginBox(parentElement
, callback
, initialNickname
, initialChannels
);
9 function ConfirmBox(parentElement
, callback
, initialNickname
, initialChannels
, autoNick
) {
10 var box
= new Element("div");
11 box
.addStyle("confirmbox");
12 parentElement
.appendChild(box
);
14 var nick
= new Element("b");
15 nick
.set("text", initialNickname
);
17 var c
= initialChannels
.split(",");
22 ctext
= c
.join(", ") + " and " + last
;
27 var channels
= new Element("b");
28 channels
.set("text", ctext
);
30 var text
= new Element("div");
31 text
.appendChild(document
.createTextNode("To connect to IRC and join channels "));
32 text
.appendChild(channels
);
35 text
.appendChild(document
.createTextNode(" as "));
36 text
.appendChild(nick
);
38 text
.appendChild(document
.createTextNode(" click 'Connect'."));
40 box
.appendChild(text
);
42 var form
= new Element("form");
43 box
.appendChild(form
);
45 var yes
= new Element("input", {"type": "submit", "value": "Connect"});
46 form
.appendChild(yes
);
48 form
.addEvent("submit", function(e
) {
50 parentElement
.removeChild(box
);
51 callback({"nickname": initialNickname
, "autojoin": initialChannels
});
55 function LoginBox(parentElement
, callback
, initialNickname
, initialChannels
) {
56 var box
= new Element("div");
57 parentElement
.appendChild(box
);
58 box
.addStyle("loginbox");
60 var header
= new Element("h1");
61 header
.set("text", "Connect to IRC");
62 box
.appendChild(header
);
64 var form
= new Element("form");
65 box
.appendChild(form
);
67 var boxtable
= new Element("table");
68 form
.appendChild(boxtable
);
70 var tbody
= new Element("tbody");
71 boxtable
.appendChild(tbody
); /* stupid IE */
73 function createRow(label
, e2
) {
74 var r
= new Element("tr");
77 var d1
= new Element("td");
79 d1
.set("text", label
);
82 var d2
= new Element("td");
88 var nick
= new Element("input");
89 createRow("Nickname:", nick
);
90 var chan
= new Element("input");
91 createRow("Channels (comma seperated):", chan
);
93 var connbutton
= new Element("input", {"type": "submit"});
94 connbutton
.set("value", "Connect");
95 createRow(undefined, connbutton
)
97 form
.addEvent("submit", function(e
) {
99 var nickname
= nick
.value
;
100 var chans
= chan
.value
;
101 if(chans
== "#") /* sorry channel "#" :P */
105 alert("You must supply a nickname.");
110 parentElement
.removeChild(box
);
112 callback({"nickname": nickname
, "autojoin": chans
});
115 nick
.set("value", initialNickname
);
116 chan
.set("value", initialChannels
);