# Perl Support File # WebStore Order Form Variables # Variables used by all scripts: /Web_store/ws_global.setup # File Permissions: 644 -rw-r--r-- # NOTE: If you change the filename of this file, change the value of # $demo_form_file in outlet.setup to reflect the file's new name. ############################################################################ # Demo.OrderForm.CreditFaxMail.setup # #==========================================================================# # Copyright (c) 1996 - 2002, RDC Software # # WebStore@ratite.com http://www.ratite.com/Perl/WebStore.shtml # # Version: 4.15.00 Date: 01/01/2002 # # # # Full copyright notice can be found in the following files for the # # listed license type: # # # # Single User License: /Docs/Copyright_SingleUser.html # # Server License: /Docs/Copyright_Server.html # # # # This copyright notification can not be altered or removed from this file.# #==========================================================================# # Backslash all @ signs --> \@ <-- Perl 5 compatibility. # # Variables containing @ signs must be enclosed in " (double quotes). # # # # All other variables are enclosed in ' (single quotes). # # # # If the value you store in a variable enclosed in single quotes requires # # the use of a single quote, backslash the imbedded single quote. # ############################################################################ #--------------------------------------------------------------------------# # Demonstration Order Form: Credit Card, Fax, or Mail Payment #--------------------------------------------------------------------------# # Determine the use of frames to set table widths in $OrderForm{0}. # $frameset_file is defined in outlet.setup. # $use_ssl is defined in ws_global.setup. # When $use_ssl = '3', WebStore TARGETS _top and and exits frames. # Using frames if ($frameset_file && $use_ssl ne '3') { # 95% for vertical frames, 575 for horizontal frames $Form0_4 = '95%'; # Table width: Page header $Form0_5 = '500'; # Table width: Section headers } # Not using frames else { $Form0_4 = '575'; # Table width: Page header $Form0_5 = '500'; # Table width: Section headers } # Develop drop down select of order forms defined in %form_files of the # store's setup file. # Print $Form0_3 in $OrderForm{0}[3] (below). # $Form0_3 = '' when only one order form is defined in %form_files. # No additional HTML is added to $OrderForm{0}[3]. $Form0_3 = &form_links($in{'formfile'}); $Form0_3 = "\n\t$SPACE". "\n\t$nc_fnt_tagThis form is for Credit Card Payment of your order.". "\n\t${nc_fnt_tag}Alternative Payment Methods:". "\n\t$nc_fnt_tag$Form0_3" if $Form0_3; # %OrderForm is a hash of arrays listing all form input fields for # WebStore's order form. # Refer to /Docs/OrderForm.html for %OrderForm configuration details. %OrderForm = ( # Field 0: Form Page Header '0' => ['center', $global_page_title.' - Order Form', # '0' => ['center', 'RDC Software - Order Form', # Same as above # Comments below page header 'center', qq! $Form0_3
${nc_fnt_tag}Orders are processed within one business day of receipt.
${nc_fnt_tag}Fields marked Required must be completed before submitting your order.
!, $Form0_4, # Table width: Page header $Form0_5, # Table width: Section headers '425'], # Table width: Form fields (decimal only) # Field 10H: Section Header '10H' => ['center', 'Billing Address'], '11' => ['name', 'Name', 'text', 'SIZE="35" MAXLENGTH="100"', 'R'], '12' => ['company', 'Company', 'text', 'SIZE="35" MAXLENGTH="100"'], '13' => ['addr1', 'Address 1', 'text', 'SIZE="35" MAXLENGTH="100"', 'R'], '14' => ['addr2', 'Address 2', 'text', 'SIZE="35" MAXLENGTH="100"'], # '15' => ['addr3', 'Address 3', 'text', 'SIZE="35" MAXLENGTH="100"'], '16' => ['city', 'City', 'text', 'SIZE="35" MAXLENGTH="100"', 'R'], '17' => ['province', 'Province', 'select', '', 'Canada only'], '18' => ['state', 'State', 'select', '', 'US citizens only'], '19' => ['country', 'Country', 'select', 'SELECTED~319', 'R'], '20' => ['zip', 'Zip/Postal Code', 'text', 'SIZE="25" MAXLENGTH="30"', 'R'], '21' => ['phone', 'Phone Number', 'text', 'SIZE="25" MAXLENGTH="30"', 'R'], '22' => ['fax', 'Fax Number', 'text', 'SIZE="25" MAXLENGTH="30"'], '23' => ['email', 'E-mail Address', 'text', 'SIZE="35" MAXLENGTH="100"', 'R', 'Receipt is mailed to this address'], '24' => ['joinlist', 'Mailing List', 'checkbox', 'Add me to your mailing list'], '25C' => [], '40H' => ['center', 'Credit Card Details', 'center', qq!
American Express Discover Mastercard Visa
!], '41' => ['ccType', 'Type of Card', 'select', 'American Express:Discover:SELECTED~Mastercard:Visa', 'R'], '42' => ['ccName', 'Name on Card', 'text', 'SIZE="35" MAXLENGTH="100" VALUE="Jane Doe"', 'R'], '43' => ['ccNumber', 'Card Number', 'text', 'SIZE="25" MAXLENGTH="30" VALUE="4111 1111 1111 1111"', 'R'], '44' => ['ccMonth', 'Expiration Month', 'select', 'January:February:March:April:May:June:July:August:September:October:November:SELECTED~December', 'R'], '45' => ['ccYear', 'Expiration Year', 'select', '', 'R'], # '46' => ['ccPhone', 'Cardholder Phone', 'text', 'SIZE="25" MAXLENGTH="30"', ''], '46C' => [], '47C' => ['left', qq! For fax and mail orders, WebStore performs checks on fields containing data at the time of submission. To test Submit Credit Card Order in this demo, use Mastercard/Visa, card number 4111 1111 1111 1111. !], '50H' => ['center', 'Shipping Address', 'left', '

Please enter your shipping address if different than the address you entered in the Billing Address section.

If you enter information in any field between Name and Phone, all fields must be completed.

Address 2 and Shipping Instructions fields are always optional. '], '51' => ['shpName', 'Name', 'text', 'SIZE="35" MAXLENGTH="100"'], '52' => ['shpAddr1', 'Address 1', 'text', 'SIZE="35" MAXLENGTH="100"'], '53' => ['shpAddr2', 'Address 2', 'text', 'SIZE="35" MAXLENGTH="100"', 'Optional'], # '54' => ['shpAddr3', 'Address 3', 'text', 'SIZE="35" MAXLENGTH="100"', 'Optional'], '55' => ['shpCity', 'City', 'text', 'SIZE="35" MAXLENGTH="100"'], '56' => ['shpProvince', 'Province', 'select', '', 'Canada only'], '57' => ['shpState', 'State', 'select', '', 'US citizens only'], '58' => ['shpCountry', 'Country', 'select', ''], '59' => ['shpZip', 'Zip/Postal Code', 'text', 'SIZE="25" MAXLENGTH="30"'], '60' => ['shpPhone', 'Phone', 'text', 'SIZE="25" MAXLENGTH="30"'], '61' => ['shpIns', 'Shipping Instructions', 'textarea', 'ROWS="6" COLS="50" WRAP=PHYSICAL', 'Optional'], '90H' => ['center', 'Submit Credit Card Order'], '91S' => ['center', ' ' ], '92C' => ['center', qq!

Credit Card Details (above) are required.

Receipt is sent to the e-mail address you entered on the order form. !], '93H' => ['center', 'Fax or Mail Order'], '93S' => ['center', '' ], '94C' => ['left', qq!

If you prefer to pay by check, or you do not feel comfortable transmitting credit card information over the Internet, you may send your order to your web browser for printing.
$SPACE
After printing, please be certain to fill in credit card information before faxing or mailing your order. Phone numbers will be printed at the top of your order.
$SPACE
Orders paid by check must be mailed to the address printed at the top of your order.
$SPACE
No e-mail receipt is generated using this submission method.
!], ); # DO NOT REMOVE - terminates %OrderForm # @opt_shipping is a list of the KEYS in %OrderForm which correspond to the # optionally required shipping fields. If any field listed in @opt_shipping # is completed by the client, all fields listed in @opt_shipping must be # completed. @opt_shipping = ('51', '52', '55', '56', '57', '58', '59', '60'); # @credit_card is a list of the KEYS in %OrderForm which correspond to all # required credit card fields. @credit_card is used for switching credit card # fields from "Required" to "Optional" for fax orders. @credit_card = ('41', '42', '43', '44', '45', '46'); # Section header rows (xxH) are printed using one of the following color # combinations for the row's background color and font color. # Setting $header_colors = '0' uses $header_bkg_clr for the row's # background color and $header_fnt_clr for the row's font color. # Setting $header_colors = '1' uses $dsc_hr_bkg_clr for the row's # background color and $dsc_hr_fnt_clr for the row's font color. # Setting $header_colors = '2' uses $data_bkg_clr for the row's # background color and $data_fnt_clr for the row's font color. # Setting $header_colors = '3' uses $modify_bkg_clr for the row's # background color and $modify_fnt_clr for the row's font color. # Setting $header_colors = '' disables header background color and # header font color. Colors default to and # attributes. # $header_colors defaults to '' for values other than 0, 1, 2, or 3. # $header_bkg_clr, $header_fnt_clr, $dsc_hr_bkg_clr, $dsc_hr_fnt_clr, # $data_bkg_clr, $data_fnt_clr, $modify_bkg_clr, and $modify_fnt_clr # are defined in outlet.setup. $header_colors = '0'; #--------------------------------------------------------------------------# # Subroutines: Display Additional HTML #--------------------------------------------------------------------------# # If $pre_form = 1, preface the order form with the contents of # sub pre_form_html. Design the HTML code, copy and paste it below the # PRINTED FROM: hidden comment line in sub pre_form_html. # Setting $pre_form = '' disables access to # sub pre_form_html. Nothing is printed at the top of the order form. $pre_form = '1'; # 1 = Access sub pre_form_html sub pre_form_html { # Images must be placed in the /Graphics sub-directory and must be # referenced using $graphics_url: # # WebStore sets the value of $graphics_url based on the use of SSL. print qq! <\!-- PRINTED FROM: sub pre_form_html in $form_file --> !; # DO NOT REMOVE - terminates "print qq!" command above # Access sub pre_view_modify_html in outlet.setup &pre_view_modify_html if $pre_view_modify eq '2'; if (!$in{'c_file'} && !$in{'chkForm'} && !$in{'faxOrder'} && !$in{'chgShip'}) { my $file = $libr_directory.'/'.'Demo.form_input.cfg'; if (-e $file) { &read_open($file); while () { s/^\s+//; next if /^$|^#/; s/#.*//; s/\s+$//; my ($a,$b) = split(/\s+/,$_,2); next if defined($in{$a}) && defined($in{'name_vals'}) && $in{'name_vals'} =~ /\|*$a\|*/; $b =~ s/\s+/ /g; $in{$a} = $b if $a && (!defined($in{$a}) || $in{$a} !~ /\S+/); } close(FILE); } } } # DO NOT REMOVE - End of sub pre_form_html #-----------------------------------------------# # If $form_trailer = 1, append the order form with the contents of # sub form_trailer_html. Design the HTML code, copy and paste it below the # PRINTED FROM: hidden comment line in sub form_trailer_html. # Setting $form_trailer = '' disables access to # sub form_trailer_html. Nothing is printed at the bottom of the order form. $form_trailer = '1'; # 1 = Access sub form_trailer_html sub form_trailer_html { # Images must be placed in the /Graphics sub-directory and must be # referenced using $graphics_url: # # WebStore sets the value of $graphics_url based on the use of SSL. print qq! <\!-- PRINTED FROM: sub form_trailer_html in $form_file --> !; # DO NOT REMOVE - terminates "print qq!" command above } # DO NOT REMOVE - End of sub form_trailer_html # Undefine variables used only in this file. # The WebStore script and it's program libraries never use uppercase and # _ (underscore) in a variable name. foreach ($Form0_3, $Form0_4, $Form0_5) { undef $_ if defined($_) } 1; # DO NOT REMOVE # End of file