]>
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
);
10 function ConfirmBox(parentElement
, callback
, initialNickname
, initialChannels
, autoNick
) {
11 var box
= new Element("table");
12 box
.addClass("confirmbox");
13 parentElement
.appendChild(box
);
15 var tbody
= new Element("tbody");
16 box
.appendChild(tbody
);
18 var tr
= new Element("tr");
19 tbody
.appendChild(tr
);
22 var text
= new Element("td");
25 var nick
= new Element("b");
26 nick
.set("text", initialNickname
);
28 var c
= initialChannels
.split(",");
33 ctext
= c
.join(", ") + " and " + last
;
38 var channels
= new Element("b");
39 channels
.set("text", ctext
);
41 text
.appendChild(document
.createTextNode("To connect to IRC and join channels "));
42 text
.appendChild(channels
);
45 text
.appendChild(document
.createTextNode(" as "));
46 text
.appendChild(nick
);
48 text
.appendChild(document
.createTextNode(" click 'Connect'."));
50 var tr
= new Element("tr");
51 tbody
.appendChild(tr
);
54 var td
= new Element("td");
57 var form
= new Element("form");
60 var yes
= new Element("input", {"type": "submit", "value": "Connect"});
61 form
.appendChild(yes
);
63 form
.addEvent("submit", function(e
) {
65 parentElement
.removeChild(box
);
66 callback({"nickname": initialNickname
, "autojoin": initialChannels
});
70 function LoginBox(parentElement
, callback
, initialNickname
, initialChannels
) {
71 var box
= new Element("table");
72 parentElement
.appendChild(box
);
73 box
.addClass("loginbox");
75 var tbody
= new Element("tbody");
76 box
.appendChild(tbody
);
78 var tr
= new Element("tr");
79 tbody
.appendChild(tr
);
82 var td
= new Element("td");
84 td
.set("html", "<h1>Connect to IRC</h1>");
86 var tr
= new Element("tr");
87 tbody
.appendChild(tr
);
90 var td
= new Element("td");
93 var form
= new Element("form");
96 var boxtable
= new Element("table");
97 form
.appendChild(boxtable
);
99 var tbody
= new Element("tbody");
100 boxtable
.appendChild(tbody
); /* stupid IE */
102 function createRow(label
, e2
) {
103 var r
= new Element("tr");
104 tbody
.appendChild(r
);
106 var d1
= new Element("td");
108 d1
.set("text", label
);
111 var d2
= new Element("td");
117 var nick
= new Element("input");
118 createRow("Nickname:", nick
);
119 var chan
= new Element("input");
120 createRow("Channels:", chan
);
122 var connbutton
= new Element("input", {"type": "submit"});
123 connbutton
.set("value", "Connect");
124 createRow(undefined, connbutton
)
126 form
.addEvent("submit", function(e
) {
128 var nickname
= nick
.value
;
129 var chans
= chan
.value
;
130 if(chans
== "#") /* sorry channel "#" :P */
134 alert("You must supply a nickname.");
139 parentElement
.removeChild(box
);
141 callback({"nickname": nickname
, "autojoin": chans
});
144 nick
.set("value", initialNickname
);
145 chan
.set("value", initialChannels
);