[250] in BarnOwl Developers
[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