/** GSWMailDelivery.m -
GSWeb: Class GSWMailDelivery
Copyright (C) 1999-2003 Free Software Foundation, Inc.
Written by: Manuel Guesdon
Date: Feb 1999
$Revision$
$Date$
This file is part of the GNUstep Web Library.
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with this library; if not, write to the Free
Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
**/
#include "config.h"
RCS_ID("$Id$")
#include "GSWeb.h"
//====================================================================
@implementation GSWMailDelivery
static GSWMailDelivery *sharedInstance;
+ (void)initialize
{
sharedInstance = [GSWMailDelivery new];
}
+(GSWMailDelivery*)sharedInstance
{
return sharedInstance;
};
-(NSString*)composeEmailFrom:(NSString*)sender
to:(NSArray*)to
cc:(NSArray*)cc
subject:(NSString*)subject
plainText:(NSString*)plainTextMessage
send:(BOOL)sendNow
{
NSString* emailString=nil;
LOGObjectFnStart();
NSDebugMLog(@"sender=%@",sender);
NSDebugMLog(@"to=%@",to);
NSDebugMLog(@"cc=%@",cc);
NSDebugMLog(@"subject=%@",subject);
NSDebugMLog(@"plainTextMessage=%@",plainTextMessage);
NSDebugMLog(@"sendNow=%d",(int)sendNow);
emailString=[self composeEmailFrom:sender
to:to
cc:cc
bcc:nil
subject:subject
plainText:plainTextMessage
send:sendNow];
NSDebugMLog(@"emailString=%@",emailString);
LOGObjectFnStop();
return emailString;
};
-(NSString*)composeEmailFrom:(NSString*)sender
to:(NSArray*)to
cc:(NSArray*)cc
subject:(NSString*)subject
component:(GSWComponent*)component
send:(BOOL)sendNow
{
NSString* emailString=nil;
LOGObjectFnStart();
NSDebugMLog(@"sender=%@",sender);
NSDebugMLog(@"to=%@",to);
NSDebugMLog(@"cc=%@",cc);
NSDebugMLog(@"subject=%@",subject);
NSDebugMLog(@"component=%@",component);
NSDebugMLog(@"sendNow=%d",(int)sendNow);
emailString=[self composeEmailFrom:sender
to:to
cc:cc
bcc:nil
subject:subject
component:component
send:sendNow];
NSDebugMLog(@"emailString=%@",emailString);
LOGObjectFnStop();
return emailString;
};
//NDFN
-(NSString*)composeEmailFrom:(NSString*)sender
to:(NSArray*)to
cc:(NSArray*)cc
bcc:(NSArray*)bcc
subject:(NSString*)subject
plainText:(NSString*)plainTextMessage
send:(BOOL)sendNow
{
NSString* messageString=nil;
NSMutableString* toString=nil;
int i=0;
int count=0;
LOGObjectFnStart();
NSAssert1(!to || [to isKindOfClass:[NSArray class]],@"to is a %@, not a NSArray",[to class]);
NSAssert1(!cc || [cc isKindOfClass:[NSArray class]],@"cc is a %@, not a NSArray",[cc class]);
NSAssert1(!bcc || [bcc isKindOfClass:[NSArray class]],@"bcc is a %@, not a NSArray",[bcc class]);
count=[to count];
NSDebugMLog(@"sender=%@",sender);
NSDebugMLog(@"to=%@",to);
NSDebugMLog(@"cc=%@",cc);
NSDebugMLog(@"bcc=%@",bcc);
NSDebugMLog(@"subject=%@",subject);
NSDebugMLog(@"plainTextMessage=%@",plainTextMessage);
NSDebugMLog(@"sendNow=%d",(int)sendNow);
for(i=0;i