Ticket #166: privatechat.py.diff
| File privatechat.py.diff, 3.1 kB (added by gallows, 20 months ago) |
|---|
-
privatechat.py
111 111 self.chats = chats 112 112 self.frame = chats.frame 113 113 self.logfile = None 114 self.reopened = False 115 self.temp_logsdir = os.path.join(os.path.dirname(self.frame.np.config.filename), "logs") 116 self.temp_logfile = None 114 117 self.autoreplied = 0 115 118 self.offlinemessage = 0 116 119 self.status = -1 … … 178 181 179 182 self.UpdateColours() 180 183 181 # Read log file 182 log = os.path.join(self.frame.np.config.sections["logging"]["logsdir"], fixpath(self.user.replace(os.sep, "-")) + ".log") 183 try: 184 f = open(log, "r") 185 d = f.read() 186 f.close() 187 s = d.split("\n") 188 for l in s[-8:-1]: 189 AppendLine(self.ChatScroll, l + "\n", self.tag_hilite, "", username=self.user, usertag=self.tag_hilite) 184 previous_log = os.path.join(self.temp_logsdir, self.user.replace(os.sep, "-") + ".log") 185 186 if os.path.exists(previous_log): 187 self.reopened = True 188 189 try: 190 f = open(previous_log, 'r') 191 d = f.read() 192 f.close() 193 s = d.split('\n') 194 for l in s: 195 AppendLine(self.ChatScroll, l + '\n', self.tag_hilite, "", self.user, self.tag_hilite) 196 197 198 except IOError, e: 199 pass 200 201 else: 202 # Read log file 203 log = os.path.join(self.frame.np.config.sections["logging"]["logsdir"], self.user.replace(os.sep, "-") + ".log") 204 try: 205 f = open(log, "r") 206 d = f.read() 207 f.close() 208 s = d.split("\n") 209 for l in s[-8:-1]: 210 AppendLine(self.ChatScroll, l + "\n", self.tag_hilite, "", username=self.user, usertag=self.tag_hilite) 190 211 191 except IOError, e:192 pass212 except IOError, e: 213 pass 193 214 194 195 215 def destroy(self): 196 216 if self.frame.translux: 197 217 self.frame.translux.unsubscribe(self.tlux_chat) … … 250 270 AppendLine(self.ChatScroll, line, tag, "%c", username=self.user, usertag=self.tag_my_username) 251 271 if self.Log.get_active(): 252 272 self.logfile = WriteLog(self.logfile, self.frame.np.config.sections["logging"]["logsdir"], self.user, line) 273 274 self.temp_logfile = WriteLog(self.temp_logfile, self.temp_logsdir, self.user, line) 253 275 254 276 autoreply = self.frame.np.config.sections["server"]["autoreply"] 255 277 if self.frame.away and not self.autoreplied and autoreply: … … 279 301 AppendLine(self.ChatScroll, message, tag, "%c", username=my_username, usertag=usertag) 280 302 if self.Log.get_active(): 281 303 self.logfile = WriteLog(self.logfile, self.frame.np.config.sections["logging"]["logsdir"], self.user, message) 304 self.temp_logfile = WriteLog(self.temp_logfile, self.temp_logsdir, self.user, message) 282 305 283 306 if self.PeerPrivateMessages.get_active(): 284 307 # not in the soulseek protocol … … 540 563 self.chats.RemoveTab(self) 541 564 self.destroy() 542 565 566 if self.reopened: 567 if self.temp_logfile is not None: 568 self.temp_logfile.close() 569 try: 570 os.remove(os.path.join(self.temp_logsdir, self.user.replace(os.sep, "-") + ".log")) 571 except: 572 pass 573 543 574 def OnKeyPress(self, widget, event): 544 575 if event.keyval == gtk.gdk.keyval_from_name("Prior"): 545 576 scrolled = self.ChatScroll.get_parent()
