Subversion Repositories VORC

Rev

Rev 64 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

package RCMailer;

use strict;
use Exporter 'import';
use Net::SMTPS;
use Email::Simple;
#use Email::MessageID;

our @EXPORT = qw( EmailUser );

my $server   = "smtp.gmail.com";
my $port     = 587;
my $user     = 'rollercon.vorc@gmail.com';
my $password = 'outzhzjacukfrggo';
#my $server   = "newer-media.com";
#my $port     = 587;
#my $user     = 'vorc@rollercon.com';
#my $password = '2Rf94*5#Odgn';

#warn "loaded RCMailer...";

sub EmailUser {
        my $email = shift;
        my $subject = shift;
        my $body = shift;
        
        my $dev = $ENV{SERVER_NAME} eq "volunteers.rollercon.com" ? "" : '[DEV] ';

#warn "DEBUG: Emailing $email...";

## the rollercon mail server's cert doesn't match it's name. (the first block ignores any mismatching name)
#  IO::Socket::SSL::set_defaults (
#    SSL_verify_mode => IO::Socket::SSL::SSL_VERIFY_NONE,
#  );
#  IO::Socket::SSL::set_client_defaults(
#    SSL_verifycn_name => 'p3plmcpnl496538.prod.phx3.secureserver.net',
#  );
  IO::Socket::SSL::set_client_defaults(
    SSL_verifycn_name => 'smtp.gmail.com',
  );
  
  my $smtp = Net::SMTPS->new(
    $server,
    Hello => 'gmail.com',
#    Hello => 'newer-media.com',
    Port => $port,
    doSSL => 'starttls',
    Timeout => 15,
    Debug => 0
  );
  die "Could not connect to SMTP server!" unless $smtp;
  
        my $msg = Email::Simple->create(
          header => [
            To             => $email,
#           Bcc            => $user,
            From           => $user,
            Subject        => $dev.$subject,
#           'Message-Id'   => Email::MessageID->new->in_brackets,
            'Content-type' => 'text/html',
    ],
          body => $body,
        );

  $smtp->auth ($user, $password);
  $smtp->mail ($user);
  $smtp->to ($email);
#  $smtp->bcc ($user);
  $smtp->data ();
  $smtp->datasend ($msg->as_string);
  $smtp->quit;
        
}


#------------------------------------------------------------------------
#
#use Email::Sender::Simple qw(sendmail);
#use Email::Sender::Transport::SMTPS;
#use Email::Simple ();
#use Email::Simple::Creator ();
#
##my $smtpserver = 'smtp.gmail.com';
##my $smtpport = 587;
##my $smtpuser   = 'officials.rollercon.schedule@gmail.com';
##my $smtppassword = '0rc_T00l';
#
#my $transport = Email::Sender::Transport::SMTPS->new({
#                                   host => $server,
#                                   ssl  => 'starttls',
#                                   port => $port,
#                          sasl_username => $user,
#                          sasl_password => $password,
#                                 debug => 1,
#                                        });
#
#       my $email = shift;
#       my $subject = shift;
#       my $body = shift;
#
#       my $msg = Email::Simple->create(
#                      header => [
#                         To      => $email,
#                         From    => $user,
#                         Subject => $subject,
#                             ],
#                        body => $body,
#                             );
#
#       sendmail($msg, { transport => $transport });


1;