[interchange-cvs] interchange - ton modified
code/UserTag/email_raw.tag
interchange-cvs at icdevgroup.org
interchange-cvs at icdevgroup.org
Thu Feb 1 03:21:50 EST 2007
User: ton
Date: 2007-02-01 08:21:50 GMT
Modified: code/UserTag email_raw.tag
Log:
Added Net::SMTP support as per Peter's patch (Apr 29, 2005).
Seems this patch never made it to CVS.
Revision Changes Path
1.7 +21 -8 interchange/code/UserTag/email_raw.tag
rev 1.7, prev_rev 1.6
Index: email_raw.tag
===================================================================
RCS file: /var/cvs/interchange/code/UserTag/email_raw.tag,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- email_raw.tag 3 Nov 2005 05:16:55 -0000 1.6
+++ email_raw.tag 1 Feb 2007 08:21:50 -0000 1.7
@@ -1,11 +1,11 @@
# Copyright 2002-2005 Interchange Development Group (http://www.icdevgroup.org/)
# Licensed under the GNU GPL v2. See file LICENSE for details.
-# $Id: email_raw.tag,v 1.6 2005/11/03 05:16:55 jon Exp $
+# $Id: email_raw.tag,v 1.7 2007/02/01 08:21:50 ton Exp $
UserTag email-raw hasEndTag
UserTag email-raw addAttr
UserTag email-raw Interpolate
-UserTag email-raw Version $Revision: 1.6 $
+UserTag email-raw Version $Revision: 1.7 $
UserTag email-raw Routine <<EOR
sub {
my($opt, $body) = @_;
@@ -37,12 +37,25 @@
}
SEND: {
- open(Vend::MAIL,"|$Vend::Cfg->{SendMailProgram} -t") or last SEND;
- print Vend::MAIL $body
- or last SEND;
- close Vend::MAIL
- or last SEND;
- $ok = ($? == 0);
+ my $using = $Vend::Cfg->{SendMailProgram};
+
+ if (lc $using eq 'none') {
+ $ok = 1;
+ last SEND;
+ } elsif (lc $using eq 'net::smtp') {
+ $body =~ s/^(.+?)(?:\r?\n){2}//s;
+ my $headers = $1;
+ last SEND unless $headers;
+ my @head = split(/\r?\n/,$headers);
+ $ok = send_mail(\@head,$body);
+ } else {
+ open(Vend::MAIL,"|$using -t") or last SEND;
+ print Vend::MAIL $body
+ or last SEND;
+ close Vend::MAIL
+ or last SEND;
+ $ok = ($? == 0);
+ }
}
if (!$ok) {
More information about the interchange-cvs
mailing list