]>
jfr.im git - irc/quakenet/qwebirc.git/blob - js/ui/genericlogin.js
1cf4756c229887dd11ba8489561d1679be36ad80
1 qwebirc
.ui
.GenericLoginBox = function(parentElement
, callback
, initialNickname
, initialChannels
, autoConnect
, autoNick
) {
3 qwebirc
.ui
.ConfirmBox(parentElement
, callback
, initialNickname
, initialChannels
, autoNick
);
5 qwebirc
.ui
.LoginBox(parentElement
, callback
, initialNickname
, initialChannels
);
9 qwebirc
.ui
.ConfirmBox = function(parentElement
, callback
, initialNickname
, initialChannels
, autoNick
) {
10 var box
= new Element("table");
11 box
.addClass("confirmbox");
12 parentElement
.appendChild(box
);
14 var tbody
= new Element("tbody");
15 box
.appendChild(tbody
);
17 var tr
= new Element("tr");
18 tbody
.appendChild(tr
);
21 var text
= new Element("td");
24 var nick
= new Element("b");
25 nick
.set("text", initialNickname
);
27 var c
= initialChannels
.split(" ")[0].split(",");
29 text
.appendChild(document
.createTextNode("To connect to IRC and join channel" + ((c
.length
>1)?"s":"") + " "));
31 for(var i
=0;i
<c
.length
;i
++) {
32 if((c
.length
> 1) && (i
== c
.length
- 1)) {
33 text
.appendChild(document
.createTextNode(" and "));
35 text
.appendChild(document
.createTextNode(", "));
37 text
.appendChild(new Element("b").set("text", c
[i
]));
42 text
.appendChild(document
.createTextNode(" as "));
43 text
.appendChild(nick
);
45 text
.appendChild(document
.createTextNode(" click 'Connect'."));
47 var tr
= new Element("tr");
48 tbody
.appendChild(tr
);
51 var td
= new Element("td");
54 var form
= new Element("form");
57 var yes
= new Element("input", {"type": "submit", "value": "Connect"});
58 form
.appendChild(yes
);
61 form
.addEvent("submit", function(e
) {
63 parentElement
.removeChild(box
);
64 callback({"nickname": initialNickname
, "autojoin": initialChannels
});
68 qwebirc
.ui
.LoginBox = function(parentElement
, callback
, initialNickname
, initialChannels
) {
69 var box
= new Element("table");
70 parentElement
.appendChild(box
);
71 box
.addClass("loginbox");
73 var tbody
= new Element("tbody");
74 box
.appendChild(tbody
);
76 var tr
= new Element("tr");
77 tbody
.appendChild(tr
);
80 var td
= new Element("td");
82 td
.set("html", "<h1>Connect to IRC</h1>");
84 var tr
= new Element("tr");
85 tbody
.appendChild(tr
);
88 var td
= new Element("td");
91 var form
= new Element("form");
94 var boxtable
= new Element("table");
95 form
.appendChild(boxtable
);
97 var tbody
= new Element("tbody");
98 boxtable
.appendChild(tbody
); /* stupid IE */
100 function createRow(label
, e2
) {
101 var r
= new Element("tr");
102 tbody
.appendChild(r
);
104 var d1
= new Element("td");
106 d1
.set("text", label
);
109 var d2
= new Element("td");
115 var nick
= new Element("input");
116 createRow("Nickname:", nick
);
117 var chan
= new Element("input");
118 createRow("Channels:", chan
);
120 var connbutton
= new Element("input", {"type": "submit"});
121 connbutton
.set("value", "Connect");
122 createRow(undefined, connbutton
)
124 form
.addEvent("submit", function(e
) {
126 var nickname
= nick
.value
;
127 var chans
= chan
.value
;
128 if(chans
== "#") /* sorry channel "#" :P */
132 alert("You must supply a nickname.");
137 parentElement
.removeChild(box
);
139 callback({"nickname": nickname
, "autojoin": chans
});
142 nick
.set("value", initialNickname
);
143 chan
.set("value", initialChannels
);