Added direct sendmail support.
This commit is contained in:
parent
6f6a946daf
commit
497a951ec4
2 changed files with 30 additions and 22 deletions
|
|
@ -19,26 +19,34 @@ use WebGUI::Session;
|
|||
#eg: send("jt@jt.com","hi, how are you","this is my message","bob@bob.com");
|
||||
#eg: send(to,subject,message,cc);
|
||||
sub send {
|
||||
my ($smtp);
|
||||
$smtp = Net::SMTP->new($session{setting}{smtpServer}); # connect to an SMTP server
|
||||
if (defined $smtp) {
|
||||
$smtp->mail($session{setting}{companyEmail}); # use the sender's address here
|
||||
$smtp->to($_[0]); # recipient's address
|
||||
$smtp->data(); # Start the mail
|
||||
# Send the header.
|
||||
$smtp->datasend("To: ".$_[0]."\n");
|
||||
$smtp->datasend("From: $session{setting}{companyName} <$session{setting}{companyEmail}>\n");
|
||||
$smtp->datasend("CC: $_[3]\n") if ($_[3]);
|
||||
$smtp->datasend("Subject: ".$_[1]."\n");
|
||||
$smtp->datasend("\n");
|
||||
# Send the body.
|
||||
$smtp->datasend($_[2]);
|
||||
$smtp->datasend("\n\n $session{setting}{companyName}\n $session{setting}{companyEmail}\n $session{setting}{companyURL}\n");
|
||||
$smtp->dataend(); # Finish sending the mail
|
||||
$smtp->quit; # Close the SMTP connection
|
||||
} else {
|
||||
WebGUI::ErrorHandler::warn("Couldn't connect to mail server: ".$session{setting}{smtpServer});
|
||||
}
|
||||
my ($smtp, $message);
|
||||
#header
|
||||
$message = "To: ".$_[0]."\n";
|
||||
$message .= "From: $session{setting}{companyName} <$session{setting}{companyEmail}>\n";
|
||||
$message .= "CC: $_[3]\n" if ($_[3]);
|
||||
$message .= "Subject: ".$_[1]."\n";
|
||||
$message .= "\n";
|
||||
#body
|
||||
$message .= $_[2]."\n";
|
||||
#footer
|
||||
$message .= "\n $session{setting}{companyName}\n $session{setting}{companyEmail}\n $session{setting}{companyURL}\n";
|
||||
if ($session{setting}{smtpServer} =~ /\/sendmail/) {
|
||||
open(MAIL,'| '.$session{setting}{smtpServer}.' -t -oi') or WebGUI::ErrorHandler::warn("Couldn't connect to mail server: ".$session{setting}{smtpServer});
|
||||
print MAIL $message;
|
||||
close(MAIL);
|
||||
} else {
|
||||
$smtp = Net::SMTP->new($session{setting}{smtpServer}); # connect to an SMTP server
|
||||
if (defined $smtp) {
|
||||
$smtp->mail($session{setting}{companyEmail}); # use the sender's address here
|
||||
$smtp->to($_[0]); # recipient's address
|
||||
$smtp->data(); # Start the mail
|
||||
$smtp->datasend($message);
|
||||
$smtp->dataend(); # Finish sending the mail
|
||||
$smtp->quit; # Close the SMTP connection
|
||||
} else {
|
||||
WebGUI::ErrorHandler::warn("Couldn't connect to mail server: ".$session{setting}{smtpServer});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -39,13 +39,13 @@ sub www_editUserSettings {
|
|||
$output .= '<h1>'.WebGUI::International::get(117).'</h1>';
|
||||
$f = WebGUI::HTMLForm->new;
|
||||
$f->hidden("op","editUserSettingsSave");
|
||||
$f->integer("sessionTimeout",WebGUI::International::get(142),$session{setting}{sessionTimeout});
|
||||
$f->yesNo("anonymousRegistration",WebGUI::International::get(118),$session{setting}{anonymousRegistration});
|
||||
$f->yesNo("alertOnNewUser",WebGUI::International::get(534),$session{setting}{alertOnNewUser});
|
||||
$f->text("runOnRegistration",WebGUI::International::get(559),$session{setting}{runOnRegistration});
|
||||
$f->yesNo("alertOnNewUser",WebGUI::International::get(534),$session{setting}{alertOnNewUser});
|
||||
$f->group("onNewUserAlertGroup",WebGUI::International::get(535),[$session{setting}{onNewUserAlertGroup}]);
|
||||
$f->yesNo("useKarma",WebGUI::International::get(539),$session{setting}{useKarma});
|
||||
$f->integer("karmaPerLogin",WebGUI::International::get(540),$session{setting}{karmaPerLogin});
|
||||
$f->integer("sessionTimeout",WebGUI::International::get(142),$session{setting}{sessionTimeout});
|
||||
$f->select("authMethod",\%authMethod,WebGUI::International::get(119),[$session{setting}{authMethod}]);
|
||||
$f->yesNo("usernameBinding",WebGUI::International::get(306),$session{setting}{usernameBinding});
|
||||
$f->url("ldapURL",WebGUI::International::get(120),$session{setting}{ldapURL});
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue