Knowledgebase
How to configure the Actinic Shopping Cart software
Posted by - NA - on 2006-10-16 12:59:48 PM

To use Actinic Catalog software (a very popular Windows based ecommerce software package) on our Linux Cpanel servers, it needs to be configured thusly.

Network Settings
These can be found at the following locations:
Actinic V3: View->Preferences->Network
Actinic V4+: Advanced->Network Settings
The details you will need to enter are:
  • CGI Script ID Number: 1

  • Extension: .pl

  • Mail [SMTP] Server: localhost
  • CGI-Bin: http://www.example.com/cgi-bin/]http://www.example.com/cgi-bin/ (replacing example.com with your domain name)
  • CodeBase: /public_html/

  • Path from CGI-BIN to Catalog Directory: ../acatalog

  • Path to the Perl Script: /usr/bin/perl

  • FTP Server Host: ftp.example.com (replacing example.com with your domain name)

  • FTP username: (your control panel username)

  • FTP password: (your control panel password)

  • Path to CGI-Bin: /public_html/cgi-bin/

Emails from the catalog software

Due to the fact Actinic tries to connect directly to port 25 to send outbound email via SMTP (which is restricted for anti-spam reasons), you need to make the following modifications as created by Norman Rouxel (therefore, we can not take any responsibility for these instructions) - this information can also be found on the Actinic website at http://www.actinic.co.uk/hosting/docs/v6-usingsendmailinsteadoofsmtp.txt
Sending e-mail via sendmail (or whatever the host supports) instead of SMTP (should also work with V5)
This needs a host with Perl that supports the Mail::Mailer module (Easy Internet Solutions does).
Patching instructions for Actinic.pm (back it up first - use a text editor - not a word processor):-
Look about 25 lines down from the top. You should see a line

use strict;

ADD the following line immediately after this
use Mail::Mailer;

Search for the line (there is only one instance)
sub SendRichMail
  • If using V6 - DELETE the above line and everything following it down to the line above the following fragment
    ######################################
    #
    # GetScriptUrl - retrieve an url to the specified script


  • If using V5 - DELETE the above line and everything following it down to the line above the following fragment
    ######################################
    #
    # GetCookie - retrieve the actinic cookie


REPLACE the stuff you just deleted with the following new routine:-

sub SendRichMail {
#? ACTINIC::ASSERT($#_ >= 4, "Invalid argument count in SendRichMail ($#_)", __LINE__, __FILE__);
#
# !!!!!! This is a function commonly used by many utilities. Any changes to its interface will
# !!!!!! need to be verified with the various utility scripts.
#
if ($#_ < 4) {
return($::FAILURE, GetPhrase(-1, 12, 'Actinic::SendRichMail'), 0, 0);
}
my ($sSmtpServer, $sEmailAddress, $sLocalError, $sSubjectText, $sMessageText, $sMessageHTML, $sBoundary, $sReturnAddress);
($sSmtpServer, $sEmailAddress, $sSubjectText, $sMessageText, $sMessageHTML, $sReturnAddress) = @_;
#
# Check message content for bare LFs and repair if there are some
#
$sMessageText =~ s/\r\n/\n/g; # CRLF -> LF
$sMessageText =~ s/\r/\n/g; # remaining CR -> LF
$sMessageText =~ s/\n/\r\n/g; # all LF -> CRLF
# and check the HTML content as well
$sMessageHTML =~ s/\r\n/\n/g; # CRLF -> LF
$sMessageHTML =~ s/\r/\n/g; # remaining CR -> LF
$sMessageHTML =~ s/\n/\r\n/g; # all LF -> CRLF
#
# Check the return address
#
if (!$sReturnAddress) # if no return address defined
{
$sReturnAddress = $sEmailAddress; # use the destination email address
}
# use systems sendmail program
my $mailer = Mail::Mailer->new();
$mailer->open({ From => $sReturnAddress,
To => $sEmailAddress,
Subject => $sSubjectText,
})
or die "Can't open: $!\n";

print $mailer $sMessageText;
$mailer->close();
return($::SUCCESS, '', 0, 0);
}

Save and do a site update and that's that.
Bugs / Quirks

Some users have reported that the e-mail is sent on one long line. If this happens open the (patched)Actinic.pm and look for the line

$sMessageText =~ s/\n/\r\n/g; # all LF -> CRLF


and comment it out by adding "#" at the beginning. I.e.
# $sMessageText =~ s/\n/\r\n/g; # all LF -> CRLF


Save and see if that fixes it.

Remember that if you update Actinic the updater will overwrite patched scripts with new version and you'll have to redo the patch.

(7 vote(s))
Helpful
Not helpful

Comments (0)
Post a new comment
 
 
Full Name:
Email:
Comments:
CAPTCHA Verification 
 
Please enter the text you see in the image into the textbox below (we use this to prevent automated submissions).