101 if self.__server: |
102 if self.__server: |
102 ok = E5MessageBox.yesNo(self, |
103 ok = E5MessageBox.yesNo(self, |
103 self.trUtf8("Disconnect from Server"), |
104 self.trUtf8("Disconnect from Server"), |
104 self.trUtf8("""<p>Do you really want to disconnect from""" |
105 self.trUtf8("""<p>Do you really want to disconnect from""" |
105 """ <b>{0}</b>?</p><p>All channels will be closed.</p>""")\ |
106 """ <b>{0}</b>?</p><p>All channels will be closed.</p>""")\ |
106 .format(self.__server.getServer())) |
107 .format(self.__server.getName())) |
107 if ok: |
108 if ok: |
108 self.__socket.blockSignals(True) |
109 self.__socket.blockSignals(True) |
109 |
110 |
110 self.__send("QUIT :" + self.trUtf8("IRC for eric IDE")) |
111 self.__send("QUIT :" + self.trUtf8("IRC for eric IDE")) |
111 self.__socket.close() |
112 self.__socket.close() |
125 @param connect flag indicating to connect (boolean) |
126 @param connect flag indicating to connect (boolean) |
126 """ |
127 """ |
127 if connect: |
128 if connect: |
128 network = self.__ircNetworkManager.getNetwork(name) |
129 network = self.__ircNetworkManager.getNetwork(name) |
129 if network: |
130 if network: |
130 self.__server = self.__ircNetworkManager.getServer( |
131 self.__server = network.getServer(network.getServerNames()[0]) |
131 network.getServerName()) |
132 self.__identityName = network.getIdentityName() |
132 self.__userName = network.getIdentityName() |
133 identity = self.__ircNetworkManager.getIdentity(self.__identityName) |
|
134 self.__userName = identity.getIdent() |
133 if self.__server: |
135 if self.__server: |
134 self.networkWidget.addServerMessage(self.trUtf8("Info"), |
136 self.networkWidget.addServerMessage(self.trUtf8("Info"), |
135 self.trUtf8("Looking for server {0} (port {1})...").format( |
137 self.trUtf8("Looking for server {0} (port {1})...").format( |
136 self.__server.getServer(), self.__server.getPort())) |
138 self.__server.getName(), self.__server.getPort())) |
137 self.__socket.connectToHost(self.__server.getServer(), |
139 self.__socket.connectToHost(self.__server.getName(), |
138 self.__server.getPort()) |
140 self.__server.getPort()) |
139 else: |
141 else: |
140 ok = E5MessageBox.yesNo(self, |
142 ok = E5MessageBox.yesNo(self, |
141 self.trUtf8("Disconnect from Server"), |
143 self.trUtf8("Disconnect from Server"), |
142 self.trUtf8("""<p>Do you really want to disconnect from""" |
144 self.trUtf8("""<p>Do you really want to disconnect from""" |
143 """ <b>{0}</b>?</p><p>All channels will be closed.</p>""")\ |
145 """ <b>{0}</b>?</p><p>All channels will be closed.</p>""")\ |
144 .format(self.__server.getServer())) |
146 .format(self.__server.getName())) |
145 if ok: |
147 if ok: |
146 self.networkWidget.addServerMessage(self.trUtf8("Info"), |
148 self.networkWidget.addServerMessage(self.trUtf8("Info"), |
147 self.trUtf8("Disconnecting from server {0}...").format( |
149 self.trUtf8("Disconnecting from server {0}...").format( |
148 self.__server.getServer())) |
150 self.__server.getName())) |
149 while self.__channelList: |
151 while self.__channelList: |
150 channel = self.__channelList.pop() |
152 channel = self.__channelList.pop() |
151 self.channelsWidget.removeTab(self.channelsWidget.indexOf(channel)) |
153 self.channelsWidget.removeTab(self.channelsWidget.indexOf(channel)) |
152 channel.deleteLater() |
154 channel.deleteLater() |
153 channel = None |
155 channel = None |
154 self.__send("QUIT :" + self.trUtf8("IRC for eric IDE")) |
156 self.__send("QUIT :" + self.trUtf8("IRC for eric IDE")) |
155 self.__socket.close() |
157 self.__socket.close() |
|
158 self.__userName = "" |
|
159 self.__identityName = "" |
156 |
160 |
157 def __editNetwork(self, name): |
161 def __editNetwork(self, name): |
158 """ |
162 """ |
159 Private slot to edit the network configuration. |
163 Private slot to edit the network configuration. |
160 |
164 |
161 @param name name of the network to edit (string) |
165 @param name name of the network to edit (string) |
162 """ |
166 """ |
163 # TODO: implement this |
|
164 dlg = IrcNetworkListDialog(self.__ircNetworkManager, self) |
167 dlg = IrcNetworkListDialog(self.__ircNetworkManager, self) |
165 dlg.exec_() |
168 dlg.exec_() |
166 |
169 |
167 def __joinChannel(self, name, key=""): |
170 def __joinChannel(self, name, key=""): |
168 """ |
171 """ |
262 self.__send("PASS " + serverPassword) |
265 self.__send("PASS " + serverPassword) |
263 nick = self.networkWidget.getNickname() |
266 nick = self.networkWidget.getNickname() |
264 if not nick: |
267 if not nick: |
265 self.__nickIndex = 0 |
268 self.__nickIndex = 0 |
266 try: |
269 try: |
267 nick = self.__ircNetworkManager.getIdentity(self.__userName)\ |
270 nick = self.__ircNetworkManager.getIdentity(self.__identityName)\ |
268 .getNickNames()[self.__nickIndex] |
271 .getNickNames()[self.__nickIndex] |
269 except IndexError: |
272 except IndexError: |
270 nick = "" |
273 nick = "" |
271 if not nick: |
274 if not nick: |
272 nick = self.__userName |
275 nick = self.__userName |
273 self.__nickName = nick |
276 self.__nickName = nick |
274 self.networkWidget.setNickName(nick) |
277 self.networkWidget.setNickName(nick) |
|
278 realName = self.__ircNetworkManager.getIdentity(self.__identityName).getRealName() |
|
279 if not realName: |
|
280 realName = "eric IDE chat" |
275 self.__send("NICK " + nick) |
281 self.__send("NICK " + nick) |
276 self.__send("USER " + self.__userName + " 0 * :eric IDE chat") |
282 self.__send("USER " + self.__userName + " 0 * :" + realName) |
277 |
283 |
278 def __hostDisconnected(self): |
284 def __hostDisconnected(self): |
279 """ |
285 """ |
280 Private slot to indicate the host was disconnected. |
286 Private slot to indicate the host was disconnected. |
281 """ |
287 """ |
561 """ |
567 """ |
562 Private method to handle a 443 server error at login. |
568 Private method to handle a 443 server error at login. |
563 """ |
569 """ |
564 self.__nickIndex += 1 |
570 self.__nickIndex += 1 |
565 try: |
571 try: |
566 nick = self.__ircNetworkManager.getIdentity(self.__userName)\ |
572 nick = self.__ircNetworkManager.getIdentity(self.__identityName)\ |
567 .getNickNames()[self.__nickIndex] |
573 .getNickNames()[self.__nickIndex] |
568 self.__nickName = nick |
574 self.__nickName = nick |
569 except IndexError: |
575 except IndexError: |
570 self.networkWidget.addServerMessage(self.trUtf8("Critical"), |
576 self.networkWidget.addServerMessage(self.trUtf8("Critical"), |
571 self.trUtf8("No nickname acceptable to the server configured" |
577 self.trUtf8("No nickname acceptable to the server configured" |