[250] in BarnOwl Developers

home help back first fref pref prev next nref lref last post

[D-O-H] r425 - trunk/conf.asedeno/owl/modules

daemon@ATHENA.MIT.EDU (asedeno@MIT.EDU)
Thu Oct 29 18:04:08 2009

Resent-From: nelhage@mit.edu
Resent-To: barnowl-dev-mtg@charon.mit.edu
To: dirty-owl-hackers@mit.edu
From: asedeno@MIT.EDU
Reply-to: dirty-owl-hackers@MIT.EDU
Date: Sun, 29 Oct 2006 18:12:00 -0500 (EST)

Author: asedeno
Date: 2006-10-29 18:11:59 -0500 (Sun, 29 Oct 2006)
New Revision: 425

Modified:
   trunk/conf.asedeno/owl/modules/VT-asedeno.pl
Log:
Make my style work a little better with jabber. This still needs work.



Modified: trunk/conf.asedeno/owl/modules/VT-asedeno.pl
===================================================================
--- trunk/conf.asedeno/owl/modules/VT-asedeno.pl	2006-10-29 22:50:41 UTC (rev 424)
+++ trunk/conf.asedeno/owl/modules/VT-asedeno.pl	2006-10-29 23:11:59 UTC (rev 425)
@@ -53,11 +53,15 @@
     {
 	return format_VT_AIM($m);
     }
+    elsif ($m->is_jabber)
+    {
+	return format_VT_jabber($m);
+    }
     elsif ($m->is_admin)
     {
 	return "\@bold(OWL ADMIN):\t".$m->body;
     }
-    elsif ($m->type eq 'loopback')
+    elsif ($m->is_loopback)
     {
 	return "\@bold(loopback):  ".$m->body;
     }
@@ -328,6 +332,65 @@
 }
 
 ################################################################################
+# Functions to format jabber messages.
+################################################################################
+sub format_VT_jabber($)
+{
+    my $m = shift;
+
+    # Extract time from message
+    my ($time) = $m->time =~ /(\d\d:\d\d)/;
+   
+    # Deal with login/logout messages
+    if ($m->is_login())
+    {
+	return sprintf("\@b(%-10.10s) %s \@b(%s)",
+		       "Jabber LOGIN",
+		       $time,
+		       $m->sender);
+    }
+
+    if ($m->is_logout())
+    {
+	return sprintf("\@b(%-10.10s) %s \@b(%s)",
+		       "Jabber LOGOUT",
+		       $time,
+		       $m->sender);
+    }
+
+    # Extract destination from message
+    my $dest = $m->recipient;
+    $dest =~ s/\@mit.edu$//;
+    # Extract user information from the message.
+    my $user = $m->sender;
+    $user =~ s/\@mit.edu$//;
+
+    my $dir = (lc($m->direction) eq 'out') ? '>' : '<';
+    
+    my ($body, $hostSep) = format_body($m);
+    
+    # Now build the message.
+    my $zVT = "";
+    if (owl::getnumcols() < $VT_Options{"narrowMode"})
+    {
+	$zVT = sprintf("From: %-16.16s To: %-16.16s %5s\n %s",
+		       $user,
+		       $dest,
+		       $time,
+		       $body);
+    }
+    else
+    {
+	$zVT = sprintf("%-10.10s %5s %-18.18s $dir%s",
+		       $user,
+		       $time,
+		       $dest,
+		       $body);
+    }
+    return boldify($zVT);
+}
+
+################################################################################
 # Universal body formatter.
 ################################################################################
 sub format_body


home help back first fref pref prev next nref lref last post