]> gitweb.factorcode.org Git - factor.git/commitdiff
Merge branch 'irc' of git://tiodante.com/git/factor
authorSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Thu, 30 Jul 2009 00:27:41 +0000 (19:27 -0500)
committerSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Thu, 30 Jul 2009 00:27:41 +0000 (19:27 -0500)
extra/irc/client/internals/internals.factor
extra/irc/logbot/logbot.factor

index 1b4a4550dc5503547de2f9eed6434b483639e577..b065dfe2f0b22168193b7f6014c50b90e0805853 100644 (file)
@@ -75,8 +75,9 @@ M: to-many-chats message-forwards sender>> participant-chats ;
 GENERIC: process-message ( irc-message -- )
 M: object process-message drop ;
 M: ping   process-message trailing>> /PONG ;
-M: join   process-message [ sender>> ] [ chat> ] bi join-participant ;
-M: part   process-message [ sender>> ] [ chat> ] bi part-participant ;
+! FIXME: it shouldn't be checking for the presence of chat here...
+M: join   process-message [ sender>> ] [ chat> ] bi [ join-participant ] [ drop ] if* ;
+M: part   process-message [ sender>> ] [ chat> ] bi [ part-participant ] [ drop ] if* ;
 M: quit   process-message sender>> quit-participant ;
 M: nick   process-message [ trailing>> ] [ sender>> ] bi rename-participant* ;
 M: rpl-nickname-in-use process-message name>> "_" append /NICK ;
index ff8085a9a9c5dc99a1191916056c346c3c0cf8cb..976a3832f47fdbe0b210bafe651e1c345357f8e1 100644 (file)
@@ -21,15 +21,17 @@ SYMBOL: current-stream
 : timestamp-path ( timestamp -- path )
     timestamp>ymd ".log" append log-directory prepend-path ;
 
+: update-current-stream ( timestamp -- )
+    current-stream get [ dispose ] when*
+    [ day-of-year current-day set ]
+    [ timestamp-path latin1 <file-appender> ] bi
+    current-stream set ;
+
+: same-day? ( timestamp -- ? ) day-of-year current-day get = ;
+
 : timestamp>stream ( timestamp  -- stream )
-    dup day-of-year current-day get = [
-        drop
-    ] [
-        current-stream get [ dispose ] when*
-        [ day-of-year current-day set ]
-        [ timestamp-path latin1 <file-appender> ] bi
-        current-stream set
-    ] if current-stream get ;
+    dup same-day? [ drop ] [ update-current-stream ] if
+    current-stream get ;
 
 : log-message ( string timestamp -- )
     [ add-timestamp ] [ timestamp>stream ] bi