For a complete introduction to Interchange variables, please see the variable glossary entry.
Table of Contents
ACTIVE_SESSION_MINUTES — specify maximum session age for [dump-session]
This variable specifies the maximum session age in minutes and is used
only by the dump_session tag.
Interchange 5.7.0:
Source: code/UI_Tag/dump_session.coretag
Line 41 (context shows lines 31-45 in show_part():14)
my ($name, $opt) = @_;
my $joiner = $opt->{joiner} || ' ';
return "Cannot dump or find sessions with session type $Vend::Cfg->{SessionType}."
if ($Vend::Cfg->{SessionType} ne 'File' && $Vend::Cfg->{SessionType} ne 'DBI');
if ($Vend::Cfg->{SessionType} eq 'File') {
if($opt->{find}) {
require File::Find;
my $expire = $Vend::Cfg->{SessionExpire};
if( int($::Variable->{ACTIVE_SESSION_MINUTES}) ) {
$expire = $::Variable->{ACTIVE_SESSION_MINUTES} * 60;
}
my $now = time();
$expire = $now - $expire;
Source: code/UI_Tag/dump_session.coretag
Line 78 (context shows lines 68-82 in show_part():14)
$out = Vend::Util::uneval($ref);
};
return uneval($ref) if $@;
return $out;
}
}
if ($Vend::Cfg->{SessionType} eq 'DBI') {
if($opt->{find}) {
my $expire = $Vend::Cfg->{SessionExpire};
if( int($::Variable->{ACTIVE_SESSION_MINUTES}) ) {
$expire = $::Variable->{ACTIVE_SESSION_MINUTES} * 60;
}
my $now = time();
$expire = $now - $expire;
BACKUP_DIRECTORY — specify directory used to dump database backups
Interchange 5.7.0:
Source: code/UI_Tag/backup_database.coretag
Line 18 (context shows lines 8-22)
# $Id: backup_database.coretag,v 1.10 2008-08-12 22:02:57 jon Exp $
UserTag backup-database Order tables
UserTag backup-database AddAttr
UserTag backup-database Version $Revision: 1.10 $
UserTag backup-database Routine <<EOR
sub {
my ($tables, $opt) = @_;
my (@tables) = grep /\S/, split /['\s\0]+/, $tables;
my $backup_dir = $opt->{dir}
|| $::Variable->{BACKUP_DIRECTORY}
|| "$Vend::Cfg->{VendRoot}/backup";
my $gnum = $opt->{gnumeric};
my $agg = "$backup_dir/DBDOWNLOAD.all";
BREADCRUMB_EXCLUDE
Interchange 5.7.0:
Source: dist/standard/config/breadcrumbs.tag
Line 18 (context shows lines 8-22)
# $Id: breadcrumbs.tag,v 1.5 2007/08/09 13:40:53 pajamian Exp $
UserTag breadcrumbs Order number
UserTag breadcrumbs addAttr
UserTag breadcrumbs Routine <<EOR
sub {
my ($number, $opt) = @_;
use vars qw/$Tag $Scratch $CGI $Session $Variable/;
my $only_last = $::Variable->{BREADCRUMB_ONLY_LAST} || 'ord/basket login';
my $exclude = $::Variable->{BREADCRUMB_EXCLUDE};
my $max = $number || $::Variable->{BREADCRUMB_MAX} || 6;
my %exclude;
my %only_last;
BREADCRUMB_MAX
Interchange 5.7.0:
Source: dist/standard/config/breadcrumbs.tag
Line 19 (context shows lines 9-23)
UserTag breadcrumbs Order number
UserTag breadcrumbs addAttr
UserTag breadcrumbs Routine <<EOR
sub {
my ($number, $opt) = @_;
use vars qw/$Tag $Scratch $CGI $Session $Variable/;
my $only_last = $::Variable->{BREADCRUMB_ONLY_LAST} || 'ord/basket login';
my $exclude = $::Variable->{BREADCRUMB_EXCLUDE};
my $max = $number || $::Variable->{BREADCRUMB_MAX} || 6;
my %exclude;
my %only_last;
BREADCRUMB_ONLY_LAST
Interchange 5.7.0:
Source: dist/standard/config/breadcrumbs.tag
Line 17 (context shows lines 7-21)
#
# $Id: breadcrumbs.tag,v 1.5 2007/08/09 13:40:53 pajamian Exp $
UserTag breadcrumbs Order number
UserTag breadcrumbs addAttr
UserTag breadcrumbs Routine <<EOR
sub {
my ($number, $opt) = @_;
use vars qw/$Tag $Scratch $CGI $Session $Variable/;
my $only_last = $::Variable->{BREADCRUMB_ONLY_LAST} || 'ord/basket login';
my $exclude = $::Variable->{BREADCRUMB_EXCLUDE};
my $max = $number || $::Variable->{BREADCRUMB_MAX} || 6;
my %exclude;
CAPTCHA_IMAGE_LOCATION — specify directory containing generated "captcha" images
The variable specifies a directory where the generated captcha
image files should be saved to.
This directory must also be available as a web server location.
Interchange 5.7.0:
Source: code/SystemTag/captcha.coretag
Line 50 (context shows lines 40-54)
$opt->{length} ||= 4;
my $en = $opt->{error_name} || 'captcha';
my $subdir = $opt->{image_subdir}
|| $::Variable->{CAPTCHA_IMAGE_SUBDIR}
|| 'captcha';
my $tmpdir = "$Vend::Cfg->{ScratchDir}/$subdir";
mkdir($tmpdir) unless -d $tmpdir;
my $imgdir = $opt->{image_location} || $::Variable->{CAPTCHA_IMAGE_LOCATION};
unless ($imgdir ) {
if(! $Global::NoAbsolute and $::Variable->{DOCROOT}) {
$imgdir = "$::Variable->{DOCROOT}$::Variable->{IMAGE_DIR}/$subdir";
CAPTCHA_IMAGE_PATH — specify web server path containing "captcha" images
The variable specifies a web server location where the generated
captcha image files are found, and from where they can
be requested by clients.
Interchange 5.7.0:
Source: code/SystemTag/captcha.coretag
Line 62 (context shows lines 52-66)
unless ($imgdir ) {
if(! $Global::NoAbsolute and $::Variable->{DOCROOT}) {
$imgdir = "$::Variable->{DOCROOT}$::Variable->{IMAGE_DIR}/$subdir";
}
else {
$imgdir = "images/$subdir";
}
}
my $imgpath = $opt->{image_path}
|| $::Variable->{CAPTCHA_IMAGE_PATH}
|| "$::Variable->{IMAGE_DIR}/$subdir";
my $captcha = Authen::Captcha->new(
CAPTCHA_IMAGE_SUBDIR — specify subdirectory containing "captcha" images
The variable specifies just a subdirectory name where the generated
captcha image are to be saved, and from where they can
be requested by clients.
Interchange 5.7.0:
Source: code/SystemTag/captcha.coretag
Line 44 (context shows lines 34-48)
$func =~ s/[^a-z]+//g;
my $result = '';
if($func eq 'code') {
$result = $Vend::Session->{captcha};
}
$opt->{length} ||= 4;
my $en = $opt->{error_name} || 'captcha';
my $subdir = $opt->{image_subdir}
|| $::Variable->{CAPTCHA_IMAGE_SUBDIR}
|| 'captcha';
my $tmpdir = "$Vend::Cfg->{ScratchDir}/$subdir";
mkdir($tmpdir) unless -d $tmpdir;
CAPTCHA_UMASK
Interchange 5.7.0:
Source: code/SystemTag/captcha.coretag
Line 99 (context shows lines 89-103)
elsif($status == -2) {
$Tag->error( { name => $en, set => "Code never generated" });
return 0;
}
elsif($status == -3) {
$Tag->error( { name => $en, set => "Code doesn't match" });
return 0;
}
}
else {
my $save_u = umask($::Variable->{CAPTCHA_UMASK} || 2);
if($opt->{reset}) {
undef $Vend::Captcha;
delete $Vend::Session->{captcha};
CGIWRAP_WORKAROUND — fix Cobalt CGIWrap problem
The variable controls the behavior of the Cobalt CGIwrap problem work-around code. When set, causes the script name to be removed from the URL pathinfo.
Example: Turn on the workaround code
Add the following to interchange.cfg:
Variable CGIWRAP_WORKAROUND 1
Interchange 5.7.0:
Source: lib/Vend/Dispatch.pm (rev. 1.103 from Sat Oct 11 00:01:22 2008)
Line 914 (context shows lines 904-918 in adjust_cgi():879)
$host = $Global::IpQuad == 0 ? 'nobody' : '';
my @ip;
@ip = split /\./, $CGI::ip;
$CGI::ip = '';
$CGI::ip = join ".", @ip[0 .. ($Global::IpQuad - 1)] if $Global::IpQuad;
}
#
# end AOL fix
# Fix Cobalt/CGIwrap problem
if($Global::Variable->{CGIWRAP_WORKAROUND}) {
$CGI::path_info =~ s!^$CGI::script_name!!;
}
$CGI::host = $host || $CGI::ip;
COMPANY — specify company or entity name
Interchange 5.7.0:
Source: lib/Vend/Util.pm (rev. 2.120 from Sat Sep 27 00:01:21 2008)
Line 1171 (context shows lines 1161-1175 in readin():1090)
if(-f "$dir/.autoload") {
my $status = ::interpolate_html( readfile("$dir/.autoload") );
$status =~ s/\s+//g;
undef $level if $status;
}
$gate = check_gate($file,$dir)
if defined $level;
}
if( defined $level and ! check_security($file, $level, $gate) ){
my $realm = $::Variable->{COMPANY} || $Vend::Cat;
if(-f "$try/violation$suffix") {
$fn = "$try/violation$suffix";
}
else {
Source: lib/Vend/Payment/iTransact.pm (rev. 2.8 from Sat Aug 18 14:18:37 2007)
Line 224 (context shows lines 214-228 in itransact():219)
}
package Vend::Payment;
sub itransact {
my ($opt, $amount) = @_;
my $user = $opt->{id} || charge_param('id');
my $company = $opt->{company} || "$::Variable->{COMPANY} Order";
my %actual;
if($opt->{actual}) {
%actual = %{$opt->{actual}};
Source: lib/Vend/Payment/Protx2.pm (rev. 1.2 from Thu Apr 10 23:44:45 2008)
Line 569 (context shows lines 559-573 in protx():525)
::logError("%s: using logdir %s instead of disallowed %s", __PACKAGE__, \
$default_logdir, $logdir);
$logdir = $default_logdir;
}
$logdir = Vend::File::make_absolute_file($logdir);
my $logzero = charge_param('logzero') || 'no';
my $available = charge_param('available') || 'no';
my $logempty = $::Values->{logempty} || charge_param('logempty') || 'no';
my $double_pay = $::Values->{double_pay} || charge_param('double_pay') || 'no';
my $findcard = charge_param('find_card_type') || 'no'; # yes for \
auto, page for input, no for IC
my $description = charge_param('description') || $::Variable->{COMPANY};
$description = substr($description,0,99);
my $applyAVSCV2 = $::Values->{applyavscv2} || charge_param('applyavscv2') || '0';
# if payment is logged as made, raise an error message and exit
Source: dist/standard/config/breadcrumbs.tag
Line 119 (context shows lines 109-123)
key => $record->{category},
title => $record->{category},
description => undef,
url => $Tag->area({ search => join "\n", @parms }),
};
}
}
if(! $ptitle) {
$ptitle = $Scratch->{page_title};
$ptitle =~ s/(\s*\W+\s*)?$Variable->{COMPANY}(\s*\W+\s*)?//;
}
$ptitle =~ s/^\s+//;
$ptitle =~ s/\s+$//;
CONTRAST
Interchange 5.7.0:
Source: lib/Vend/Options/Simple.pm (rev. 1.9 from Sat Aug 18 14:18:37 2007)
Line 341 (context shows lines 331-345 in admin_page():255)
return ''; [/perl] [/if] <form action="[area @@MV_PAGE@@]" method="post"> [if scratch ui_failure] <p> <blockquote> <font color="__CONTRAST__">[scratch ui_failure][set ui_failure][/set]</font> </blockquote> <p> [/if]
Source: lib/Vend/Options/Simple.pm (rev. 1.9 from Sat Aug 18 14:18:37 2007)
Line 349 (context shows lines 339-353 in admin_page():255)
<p> <blockquote> <font color="__CONTRAST__">[scratch ui_failure][set ui_failure][/set]</font> </blockquote> <p> [/if] [if scratch ui_message] <p> <blockquote> <font color="__CONTRAST__">[scratch ui_message][set ui_message][/set]</font> </blockquote> <p> [/if]
COUNTRY — (obsolete)
Interchange 5.4.0:
Source: code/UserTag/fedex_query.tag
Line 230 (context shows lines 220-234)
my $die = sub {
my ($msg, @args) = @_;
$msg = ::errmsg($msg, @args);
$Vend::Session->{ship_message} .= " $msg";
return 0;
};
my $fed;
$opt->{target_url} ||= 'http://grd.fedex.com/cgi-bin/rrr2010.exe';
$opt->{origin_country} ||= $::Variable->{COUNTRY} || 'US';
$opt->{origin} ||= $::Variable->{UPS_ORIGIN};
$opt->{zip} ||= $::Values->{$::Variable->{UPS_POSTCODE_FIELD}};
$opt->{country} ||= $::Values->{$::Variable->{UPS_COUNTRY_FIELD}};
$opt->{country} = uc $opt->{country};
CSS_CONTRAST — CSS class to designate problems
CSS_CONTRAST is used by error and formel to
designate problems. Both use mv_contrast as default if
CSS_CONTRAST has no value.
Interchange 5.7.0:
Source: code/UserTag/formel.tag
Line 41 (context shows lines 31-45)
}
else {
$error = $Tag->error({name => $checkfor, keep => $keep});
}
if ($error) {
if ($opt->{signal}) {
sprintf($opt->{signal}, $label);
}
else {
my $contrast = $::Variable->{CSS_CONTRAST} || 'mv_contrast';
qq{<span class="$contrast">$label</span>};
}
}
else {
Source: code/SystemTag/error.coretag
Line 133 (context shows lines 123-137 in tag_error():33)
# store the error label in user's session for later
# possible use in [error show_label=1] calls
$Vend::Session->{errorlabels}{$var} = $opt->{std_label};
if($text) {
# do nothing
}
elsif(defined $::Variable->{MV_ERROR_STD_LABEL}) {
$text = $::Variable->{MV_ERROR_STD_LABEL};
}
else {
my $contrast = $::Variable->{CSS_CONTRAST} || 'mv_contrast';
$text = <<EOF;
<span class="$contrast">{LABEL} <small><i>(%s)</i></small></span>
[else]{REQUIRED <b>}{LABEL}{REQUIRED </b>}[/else]
EOF
CYBER_CONFIGFILE
Interchange 4.6.0:
Source: lib/Vend/Order.pm (rev. 1.20 from Tue Mar 6 17:24:20 2001)
Line 652 (context shows lines 642-656 in charge():579)
$Vend::Session->{payment_result} =
$Vend::Session->{cybercash_result} = \%result;
}
elsif ($actual{cyber_mode} =~ /^minivend_test(?:_(.*))?/) {
my $status = $1 || 'success';
# Interchange test mode
my %payment = (
'host' => $::Variable->{CYBER_HOST} || 'localhost',
'port' => $::Variable->{CYBER_PORT} || 8000,
'secret' => $::Variable->{CYBER_SECRET} || '',
'config' => $::Variable->{CYBER_CONFIGFILE} || '',
);
&testSetServer ( %payment );
%result = testsendmserver(
$actual{cyber_mode},
Source: lib/Vend/Order.pm (rev. 1.20 from Tue Mar 6 17:24:20 2001)
Line 678 (context shows lines 668-682 in charge():579)
$result{MStatus} = $status;
$Vend::Session->{payment_result} =
$Vend::Session->{cybercash_result} = \%result;
}
elsif ($Vend::CC3) {
# Live interface operations follow
$Vend::CC3server = 1;
# Cybercash 3.x libraries to be used.
# Initialize the merchant configuration file
my $status = InitConfig($::Variable->{CYBER_CONFIGFILE});
if ($status != 0) {
$Vend::Session->{cybercash_error} = MCKGetErrorMessage($status);
::logError(
"Failed to initialize CyberCash from file %s: %s",
Source: lib/Vend/Order.pm (rev. 1.20 from Tue Mar 6 17:24:20 2001)
Line 683 (context shows lines 673-687 in charge():579)
# Live interface operations follow
$Vend::CC3server = 1;
# Cybercash 3.x libraries to be used.
# Initialize the merchant configuration file
my $status = InitConfig($::Variable->{CYBER_CONFIGFILE});
if ($status != 0) {
$Vend::Session->{cybercash_error} = MCKGetErrorMessage($status);
::logError(
"Failed to initialize CyberCash from file %s: %s",
$Variable->{CYBER_CONFIGFILE},
$Vend::Session->{cybercash_error},
);
return undef;
}
CYBER_CURRENCY
Interchange 4.6.0:
Source: lib/Vend/Order.pm (rev. 1.20 from Tue Mar 6 17:24:20 2001)
Line 585 (context shows lines 575-589 in charge():579)
}
return %actual;
}
sub charge {
my ($charge_type) = @_;
my (%actual) = map_actual();
#::logDebug ("cyber_charge, mode val=$::Values->{mv_cyber_mode} cgi=$CGI::values{mv_cyber_mode} \
\
actual=$actual{cyber_mode}");
my $currency = $::Variable->{MV_PAYMENT_CURRENCY}
|| $::Variable->{CYBER_CURRENCY}
|| 'usd';
$actual{mv_credit_card_exp_month} =~ s/\D//g;
$actual{mv_credit_card_exp_month} =~ s/^0+//;
$actual{mv_credit_card_exp_year} =~ s/\D//g;
CYBER_HOST
Interchange 4.6.0:
Source: lib/Vend/Order.pm (rev. 1.20 from Tue Mar 6 17:24:20 2001)
Line 649 (context shows lines 639-653 in charge():579)
return undef;
}
%result = $sub->(@args);
$Vend::Session->{payment_result} =
$Vend::Session->{cybercash_result} = \%result;
}
elsif ($actual{cyber_mode} =~ /^minivend_test(?:_(.*))?/) {
my $status = $1 || 'success';
# Interchange test mode
my %payment = (
'host' => $::Variable->{CYBER_HOST} || 'localhost',
'port' => $::Variable->{CYBER_PORT} || 8000,
'secret' => $::Variable->{CYBER_SECRET} || '',
'config' => $::Variable->{CYBER_CONFIGFILE} || '',
);
Source: lib/Vend/Order.pm (rev. 1.20 from Tue Mar 6 17:24:20 2001)
Line 689 (context shows lines 679-693 in charge():579)
if ($status != 0) {
$Vend::Session->{cybercash_error} = MCKGetErrorMessage($status);
::logError(
"Failed to initialize CyberCash from file %s: %s",
$Variable->{CYBER_CONFIGFILE},
$Vend::Session->{cybercash_error},
);
return undef;
}
unless($::Variable->{CYBER_HOST}) {
$::Variable->{CYBER_HOST} = $Config{CCPS_HOST};
}
if($Vend::CC3server) {
# Cybercash 3.x server and libraries to be used.
Source: lib/Vend/Order.pm (rev. 1.20 from Tue Mar 6 17:24:20 2001)
Line 699 (context shows lines 689-703 in charge():579)
unless($::Variable->{CYBER_HOST}) {
$::Variable->{CYBER_HOST} = $Config{CCPS_HOST};
}
if($Vend::CC3server) {
# Cybercash 3.x server and libraries to be used.
if ($status != 0) {
$Vend::Session->{cybercash_error} = MCKGetErrorMessage($status);
return undef;
}
$sendurl = $::Variable->{CYBER_HOST} . 'directcardpayment.cgi';
my %paymentNVList;
$paymentNVList{'mo.cybercash-id'} = $Config{CYBERCASH_ID};
$paymentNVList{'mo.version'} = $MCKversion;
CYBER_ID — specify ID for communication with selected payment gateways
Interchange 5.7.0:
Source: lib/Vend/Payment/ECHO.pm (rev. 1.9 from Fri Mar 30 11:39:52 2007)
Line 303 (context shows lines 293-307 in echo():276)
my (%actual) = map_actual();
my @errMsgs = ();
# Required for validation
if (! $user) {
$user = $opt->{id} ||
charge_param('id') ||
$::Variable->{ECHO_PAYMENT_ID} ||
$::Variable->{MV_PAYMENT_ID} ||
$::Variable->{CYBER_ID}
or push @errMsgs, "No payment ID found.";
}
# Required for validation
CYBER_PORT — specify port for communication with selected payment gateways
The variable specifies the port over which to communicate with the payment gateway server.
Interchange 4.6.0:
Source: lib/Vend/Order.pm (rev. 1.20 from Tue Mar 6 17:24:20 2001)
Line 650 (context shows lines 640-654 in charge():579)
}
%result = $sub->(@args);
$Vend::Session->{payment_result} =
$Vend::Session->{cybercash_result} = \%result;
}
elsif ($actual{cyber_mode} =~ /^minivend_test(?:_(.*))?/) {
my $status = $1 || 'success';
# Interchange test mode
my %payment = (
'host' => $::Variable->{CYBER_HOST} || 'localhost',
'port' => $::Variable->{CYBER_PORT} || 8000,
'secret' => $::Variable->{CYBER_SECRET} || '',
'config' => $::Variable->{CYBER_CONFIGFILE} || '',
);
&testSetServer ( %payment );
CYBER_PRECISION — specify precision to be used with selected payment gateways
The variable defines the precision (number of decimal places) to be used with selected payment gateways.
CYBER_PRECISION is available in Interchange versions:
4.6.0, 5.0.1, 5.2.0, 5.4.0, 5.6.0, 5.7.0 (cvs-head)
Interchange 5.7.0:
Source: lib/Vend/Payment/ECHO.pm (rev. 1.9 from Fri Mar 30 11:39:52 2007)
Line 336 (context shows lines 326-340 in echo():276)
charge_param('server') ||
$::Variable->{ECHO_PAYMENT_SERVER} ||
$::Variable->{MV_PAYMENT_SERVER} ||
$::Variable->{CYBER_SERVER} ||
'https://wwws.echo-inc.com/scripts/INR200.EXE';
my $precision = $opt->{precision} ||
charge_param('precision') ||
$::Variable->{ECHO_PAYMENT_PRECISION} ||
$::Variable->{MV_PAYMENT_PRECISION} ||
$::Variable->{CYBER_PRECISION} ||
2;
##### ECHO SPECIFIC VARIABLES #####
CYBER_SECRET — (partly documented)
CYBER_SECRET is available in Interchange versions:
4.6.0, 5.0.1, 5.2.0, 5.4.0, 5.6.0, 5.7.0 (cvs-head)
Interchange 5.7.0:
Source: lib/Vend/Payment/ECHO.pm (rev. 1.9 from Fri Mar 30 11:39:52 2007)
Line 313 (context shows lines 303-317 in echo():276)
$::Variable->{CYBER_ID}
or push @errMsgs, "No payment ID found.";
}
# Required for validation
if (! $secret) {
$secret = $opt->{secret} ||
charge_param('secret') ||
$::Variable->{ECHO_PAYMENT_SECRET} ||
$::Variable->{MV_PAYMENT_SECRET} ||
$::Variable->{CYBER_SECRET}
or push @errMsgs, "No payment secret found.";
}
if (scalar @errMsgs) {
CYBER_SERVER — (partly documented)
Interchange 5.7.0:
Source: lib/Vend/Payment/ECHO.pm (rev. 1.9 from Fri Mar 30 11:39:52 2007)
Line 329 (context shows lines 319-333 in echo():276)
::logError($_);
}
return 0;
}
@errMsgs = ();
my $server = $opt->{server} ||
charge_param('server') ||
$::Variable->{ECHO_PAYMENT_SERVER} ||
$::Variable->{MV_PAYMENT_SERVER} ||
$::Variable->{CYBER_SERVER} ||
'https://wwws.echo-inc.com/scripts/INR200.EXE';
my $precision = $opt->{precision} ||
charge_param('precision') ||
DEBUG — enable Interchange debugging
Interchange 5.7.0:
Source: lib/Vend/Util.pm (rev. 2.120 from Sat Sep 27 00:01:21 2008)
Line 2017 (context shows lines 2007-2021 in send_mail():1899)
last SMTP unless $none and $mhost;
eval {
require Net::SMTP;
};
last SMTP if $@;
$ok = 0;
$using = "Net::SMTP (mail server $mhost)";
#::logDebug("using $using");
undef $none;
my $smtp = Net::SMTP->new($mhost, Debug => $Global::Variable->{DEBUG}, \
Hello => $helo) or last SMTP;
#::logDebug("smtp object $smtp");
my $from = $::Variable->{MV_MAILFROM}
|| $Global::Variable->{MV_MAILFROM}
Source: lib/Vend/Email.pm (rev. 1.11 from Sat Dec 29 06:03:43 2007)
Line 679 (context shows lines 669-683 in send_mail_legacy():561)
last SMTP unless $none and $mhost;
eval {
require Net::SMTP;
};
last SMTP if $@;
$ok = 0;
$using = "Net::SMTP (mail server $mhost)";
#::logDebug("using $using");
undef $none;
my $smtp = Net::SMTP->new($mhost, Debug => $Global::Variable->{DEBUG}, Hello => $helo);
#::logDebug("smtp object $smtp");
my $from = $::Variable->{MV_MAILFROM}
|| $Global::Variable->{MV_MAILFROM}
DESCRIPTIONFIELDS
Interchange 5.7.0:
Source: code/SystemTag/image.tag
Line 22 (context shows lines 12-26)
UserTag image AttrAlias resize makesize
UserTag image AddAttr
UserTag image Version $Revision: 1.24 $
UserTag image Routine <<EOR
sub {
my ($src, $opt) = @_;
my ($image, $path, $secure, $sku);
my ($imagedircurrent, $imagedir, $imagedirsecure);
my @descriptionfields = grep /\S/, split /\s+/,
$opt->{descriptionfields} || $::Variable->{DESCRIPTIONFIELDS} || $Vend::Cfg->{DescriptionField};
@descriptionfields = qw( description ) if ! @descriptionfields;
my @imagefields = grep /\S/, split /\s+/,
$opt->{imagefields} || $::Variable->{IMAGEFIELDS};
DOCROOT — filesystem path to catalog's document root
Interchange 5.7.0:
Source: code/UserTag/button.tag
Line 38 (context shows lines 28-42)
my @js;
my $image;
my @from_html = qw/class id style/;
if($src) {
if( $opt->{srcliteral} || $src =~ m{^https?://}i ) {
$image = $src;
}
else {
my $dr = $::Variable->{DOCROOT};
my $id = $Tag->image( { dir_only => 1 } );
$id =~ s:/+$::;
$id =~ s:/~[^/]+::;
Source: code/SystemTag/image.tag
Line 124 (context shows lines 114-128)
}
}
}
}
push @srclist, $sku if $sku;
push @srclist, $opt->{default} if $opt->{default};
if ($opt->{imagesubdir}) {
$opt->{imagesubdir} .= '/' unless $opt->{imagesubdir} =~ m:/$:;
}
my $dr = $::Variable->{DOCROOT};
my $id = $imagedircurrent;
$id =~ s:/+$::;
$id =~ s:/~[^/]+::;
Source: code/SystemTag/captcha.coretag
Line 53 (context shows lines 43-57)
my $subdir = $opt->{image_subdir}
|| $::Variable->{CAPTCHA_IMAGE_SUBDIR}
|| 'captcha';
my $tmpdir = "$Vend::Cfg->{ScratchDir}/$subdir";
mkdir($tmpdir) unless -d $tmpdir;
my $imgdir = $opt->{image_location} || $::Variable->{CAPTCHA_IMAGE_LOCATION};
unless ($imgdir ) {
if(! $Global::NoAbsolute and $::Variable->{DOCROOT}) {
$imgdir = "$::Variable->{DOCROOT}$::Variable->{IMAGE_DIR}/$subdir";
}
else {
$imgdir = "images/$subdir";
ECHO_PAYMENT_DEBUG
Interchange 5.7.0:
Source: lib/Vend/Payment/ECHO.pm (rev. 1.9 from Fri Mar 30 11:39:52 2007)
Line 348 (context shows lines 338-352 in echo():276)
##### ECHO SPECIFIC VARIABLES #####
my $order_type = $::Variable->{ECHO_PAYMENT_ORDER_TYPE} || 'S';
my $isp_echo_id = $::Variable->{ECHO_PAYMENT_ISP_ECHO_ID};
my $isp_pin = $::Variable->{ECHO_PAYMENT_ISP_PIN};
my $merchant_email = $::Variable->{ECHO_PAYMENT_MERCHANT_EMAIL};
# Set to 'C' for Certify mode to check compliance with the ECHO spec on a
# transaction-by-transaction basis. 'T' or 'TRUE' for full ECHO debugging.
my $debug = $::Variable->{ECHO_PAYMENT_DEBUG};
##########################
$actual{mv_credit_card_exp_month} =~ s/\D//g;
ECHO_PAYMENT_ID — (partly documented)
Interchange 5.7.0:
Source: lib/Vend/Payment/ECHO.pm (rev. 1.9 from Fri Mar 30 11:39:52 2007)
Line 301 (context shows lines 291-305 in echo():276)
#::logDebug("echo called, args=" . ::uneval(\@_));
my (%actual) = map_actual();
my @errMsgs = ();
# Required for validation
if (! $user) {
$user = $opt->{id} ||
charge_param('id') ||
$::Variable->{ECHO_PAYMENT_ID} ||
$::Variable->{MV_PAYMENT_ID} ||
$::Variable->{CYBER_ID}
or push @errMsgs, "No payment ID found.";
}
ECHO_PAYMENT_ISP_ECHO_ID
Interchange 5.7.0:
Source: lib/Vend/Payment/ECHO.pm (rev. 1.9 from Fri Mar 30 11:39:52 2007)
Line 342 (context shows lines 332-346 in echo():276)
my $precision = $opt->{precision} ||
charge_param('precision') ||
$::Variable->{ECHO_PAYMENT_PRECISION} ||
$::Variable->{MV_PAYMENT_PRECISION} ||
$::Variable->{CYBER_PRECISION} ||
2;
##### ECHO SPECIFIC VARIABLES #####
my $order_type = $::Variable->{ECHO_PAYMENT_ORDER_TYPE} || 'S';
my $isp_echo_id = $::Variable->{ECHO_PAYMENT_ISP_ECHO_ID};
my $isp_pin = $::Variable->{ECHO_PAYMENT_ISP_PIN};
my $merchant_email = $::Variable->{ECHO_PAYMENT_MERCHANT_EMAIL};
# Set to 'C' for Certify mode to check compliance with the ECHO spec on a
ECHO_PAYMENT_ISP_PIN
Interchange 5.7.0:
Source: lib/Vend/Payment/ECHO.pm (rev. 1.9 from Fri Mar 30 11:39:52 2007)
Line 343 (context shows lines 333-347 in echo():276)
charge_param('precision') ||
$::Variable->{ECHO_PAYMENT_PRECISION} ||
$::Variable->{MV_PAYMENT_PRECISION} ||
$::Variable->{CYBER_PRECISION} ||
2;
##### ECHO SPECIFIC VARIABLES #####
my $order_type = $::Variable->{ECHO_PAYMENT_ORDER_TYPE} || 'S';
my $isp_echo_id = $::Variable->{ECHO_PAYMENT_ISP_ECHO_ID};
my $isp_pin = $::Variable->{ECHO_PAYMENT_ISP_PIN};
my $merchant_email = $::Variable->{ECHO_PAYMENT_MERCHANT_EMAIL};
# Set to 'C' for Certify mode to check compliance with the ECHO spec on a
# transaction-by-transaction basis. 'T' or 'TRUE' for full ECHO debugging.
ECHO_PAYMENT_MERCHANT_EMAIL
ECHO_PAYMENT_MERCHANT_EMAIL is available in Interchange versions:
5.0.1-5.7.0 (cvs-head)
Interchange 5.7.0:
Source: lib/Vend/Payment/ECHO.pm (rev. 1.9 from Fri Mar 30 11:39:52 2007)
Line 344 (context shows lines 334-348 in echo():276)
$::Variable->{ECHO_PAYMENT_PRECISION} ||
$::Variable->{MV_PAYMENT_PRECISION} ||
$::Variable->{CYBER_PRECISION} ||
2;
##### ECHO SPECIFIC VARIABLES #####
my $order_type = $::Variable->{ECHO_PAYMENT_ORDER_TYPE} || 'S';
my $isp_echo_id = $::Variable->{ECHO_PAYMENT_ISP_ECHO_ID};
my $isp_pin = $::Variable->{ECHO_PAYMENT_ISP_PIN};
my $merchant_email = $::Variable->{ECHO_PAYMENT_MERCHANT_EMAIL};
# Set to 'C' for Certify mode to check compliance with the ECHO spec on a
# transaction-by-transaction basis. 'T' or 'TRUE' for full ECHO debugging.
my $debug = $::Variable->{ECHO_PAYMENT_DEBUG};
ECHO_PAYMENT_ORDER_TYPE
Interchange 5.7.0:
Source: lib/Vend/Payment/ECHO.pm (rev. 1.9 from Fri Mar 30 11:39:52 2007)
Line 341 (context shows lines 331-345 in echo():276)
my $precision = $opt->{precision} ||
charge_param('precision') ||
$::Variable->{ECHO_PAYMENT_PRECISION} ||
$::Variable->{MV_PAYMENT_PRECISION} ||
$::Variable->{CYBER_PRECISION} ||
2;
##### ECHO SPECIFIC VARIABLES #####
my $order_type = $::Variable->{ECHO_PAYMENT_ORDER_TYPE} || 'S';
my $isp_echo_id = $::Variable->{ECHO_PAYMENT_ISP_ECHO_ID};
my $isp_pin = $::Variable->{ECHO_PAYMENT_ISP_PIN};
my $merchant_email = $::Variable->{ECHO_PAYMENT_MERCHANT_EMAIL};
ECHO_PAYMENT_PRECISION — (partly documented)
The variable specifies the precision (number of decimal places) to use with the ECHO gateway.